44 lines
1.4 KiB
TypeScript
44 lines
1.4 KiB
TypeScript
import { Component } from "preact";
|
|
import { DefaultPageProps } from "../../../../types/DefaultPageProps";
|
|
import { SecretTitleElement } from "../SecretTitleElement";
|
|
import { kvListURL, kvViewURL } from "../../pageLinks";
|
|
import { route } from "preact-router";
|
|
import i18next from "i18next";
|
|
|
|
export class KeyValueDelete extends Component<DefaultPageProps> {
|
|
render() {
|
|
const baseMount = this.props.matches["baseMount"];
|
|
const secretPath = this.props.matches["secretPath"].split("/");
|
|
const item = this.props.matches["item"];
|
|
const version = this.props.matches["version"];
|
|
|
|
return (
|
|
<>
|
|
<SecretTitleElement
|
|
type="kv"
|
|
baseMount={baseMount}
|
|
secretPath={secretPath}
|
|
item={item}
|
|
suffix={i18next.t("kv_delete_suffix")}
|
|
/>
|
|
<div>
|
|
<h5>{i18next.t("kv_delete_text")}</h5>
|
|
<button
|
|
class="uk-button uk-button-danger"
|
|
onClick={async () => {
|
|
await this.props.api.deleteSecret(baseMount, secretPath, item, version);
|
|
if (version == "null") {
|
|
route(kvListURL(baseMount, secretPath));
|
|
} else {
|
|
route(kvViewURL(baseMount, secretPath, item, "null"));
|
|
}
|
|
}}
|
|
>
|
|
{i18next.t("common_delete")}
|
|
</button>
|
|
</div>
|
|
</>
|
|
);
|
|
}
|
|
}
|