open-vault/ui/app/templates/components/secret-edit.hbs

85 lines
2.8 KiB
Handlebars

<div {{did-insert this.createKvData @model}}>
<PageHeader as |p|>
<p.top>
<KeyValueHeader
@baseKey={{@baseKey}}
@path="vault.cluster.secrets.backend.list"
@mode={{@mode}}
@root={{@root}}
@showCurrent={{true}}
/>
</p.top>
<p.levelLeft>
<h1 class="title is-3">
{{#if (eq @mode "create")}}
Create secret
{{else if (and this.isV2 (eq @mode "edit"))}}
Create new version
{{else if (eq @mode "edit")}}
Edit secret
{{else}}
{{@key.id}}
{{/if}}
</h1>
</p.levelLeft>
</PageHeader>
{{! tabs for show only }}
{{#if (eq @mode "show")}}
<div class="tabs-container box is-bottomless is-marginless is-fullwidth is-paddingless">
<nav class="tabs">
<ul>
<LinkTo @route="vault.cluster.secrets.backend.show" @model={{@key.id}} data-test-secret-tab>
Secret
</LinkTo>
{{! must have read access to /metadata see tab or update to update metadata}}
{{#if (or this.canReadSecretMetadata this.canUpdateSecretMetadata)}}
<LinkTo @route="vault.cluster.secrets.backend.metadata" @model={{@key.id}} data-test-secret-metadata-tab>
Metadata
</LinkTo>
{{/if}}
</ul>
</nav>
</div>
{{/if}}
{{#if (and @model (not-eq this.secretData null))}}
<SecretEditToolbar
@mode={{@mode}}
@model={{@model}}
@isV2={{this.isV2}}
@isWriteWithoutRead={{this.isWriteWithoutRead}}
@secretDataIsAdvanced={{this.secretDataIsAdvanced}}
@showAdvancedMode={{this.showAdvancedMode}}
@modelForData={{this.modelForData}}
@canUpdateSecretData={{this.canUpdateSecretData}}
@canReadSecretMetadata={{this.canReadSecretMetadata}}
@codemirrorString={{this.codemirrorString}}
@editActions={{hash toggleAdvanced=(action "toggleAdvanced") refresh=(action "refresh")}}
/>
{{#if (or (eq @mode "create") (eq @mode "edit"))}}
<SecretCreateOrUpdate
@mode={{@mode}}
@model={{@model}}
@showAdvancedMode={{this.showAdvancedMode}}
@modelForData={{this.modelForData}}
@error={{this.error}}
@isV2={{this.isV2}}
@secretData={{this.secretData}}
@buttonDisabled={{this.buttonDisabled}}
@canUpdateSecretMetadata={{this.canUpdateSecretMetadata}}
@canReadSecretData={{this.canReadSecretData}}
@canReadSecretMetadata={{this.canReadSecretMetadata}}
/>
{{else if (eq @mode "show")}}
<SecretFormShow
@isV2={{this.isV2}}
@modelForData={{this.modelForData}}
@isWriteWithoutRead={{this.isWriteWithoutRead}}
@showAdvancedMode={{this.showAdvancedMode}}
/>
{{else}}
<EmptyState @title="No secret view was selected" />
{{/if}}
{{/if}}
</div>