353a2bdb58
* add size prop to icon component * use size instead of css classes to adjust Icons * add knobs for icon stories
107 lines
3.6 KiB
Handlebars
107 lines
3.6 KiB
Handlebars
{{#if (and (or @model.isNew @canEditV2Secret) @isV2 (not @model.failedServerRead))}}
|
|
<div data-test-metadata-fields class="form-section box is-shadowless is-fullwidth">
|
|
<label class="title is-5">
|
|
Secret metadata
|
|
</label>
|
|
{{#each @model.fields as |attr|}}
|
|
<FormField data-test-field @attr={{attr}} @model={{this.model}} />
|
|
{{/each}}
|
|
</div>
|
|
{{/if}}
|
|
|
|
{{#if @showWriteWithoutReadWarning}}
|
|
{{#if (and @isV2 @model.failedServerRead)}}
|
|
<AlertBanner
|
|
@type="warning"
|
|
@message="Your policies prevent you from reading metadata for this secret and the current version's data. Creating a new version of the secret with this form will not be able to use the check-and-set mechanism. If this is required on the secret, then you will need access to read the secret's metadata."
|
|
@class="is-marginless"
|
|
data-test-v2-no-cas-warning
|
|
/>
|
|
{{else if @isV2}}
|
|
<AlertBanner
|
|
@type="warning"
|
|
@message="Your policies prevent you from reading the current secret version. Saving this form will create a new version of the secret and will utilize the available check-and-set mechanism."
|
|
@class="is-marginless"
|
|
data-test-v2-write-without-read
|
|
/>
|
|
{{else}}
|
|
<AlertBanner
|
|
@type="warning"
|
|
@message="Your policies prevent you from reading the current secret data. Saving using this form will overwrite the existing values."
|
|
@class="is-marginless"
|
|
data-test-v1-write-without-read
|
|
/>
|
|
{{/if}}
|
|
{{/if}}
|
|
|
|
{{#if @showAdvancedMode}}
|
|
<div class="form-section">
|
|
<label class="title is-5">
|
|
{{#if isV2}}
|
|
Version data
|
|
{{else}}
|
|
Secret data
|
|
{{/if}}
|
|
</label>
|
|
<JsonEditor
|
|
@value={{@codemirrorString}}
|
|
@valueUpdated={{@editActions.codemirrorUpdated}}
|
|
@onFocusOut={{@editActions.formatJSON}}
|
|
/>
|
|
</div>
|
|
{{else}}
|
|
<div class="form-section">
|
|
<label class="title is-5">
|
|
{{#if isV2}}
|
|
Version data
|
|
{{else}}
|
|
Secret data
|
|
{{/if}}
|
|
</label>
|
|
{{#each @secretData as |secret index|}}
|
|
<div class="info-table-row">
|
|
<div class="column is-one-quarter info-table-row-edit">
|
|
{{input
|
|
data-test-secret-key=true
|
|
value=secret.name
|
|
placeholder="key"
|
|
change=(action @editActions.handleChange)
|
|
class="input"
|
|
autocomplete="off"
|
|
spellcheck="false"
|
|
}}
|
|
</div>
|
|
<div class="column info-table-row-edit">
|
|
<MaskedInput
|
|
@name={{secret.name}}
|
|
@onKeyDown={{@editActions.handleKeyDown}}
|
|
@onChange={{@editActions.handleChange}}
|
|
@value={{secret.value}}
|
|
data-test-secret-value="true"
|
|
/>
|
|
</div>
|
|
<div class="column is-narrow info-table-row-edit">
|
|
{{#if (eq @secretData.length (inc index))}}
|
|
<button type="button" {{action @editActions.addRow}} class="button is-outlined is-primary" data-test-secret-add-row="true">
|
|
Add
|
|
</button>
|
|
{{else}}
|
|
<button
|
|
class="button has-text-grey is-expanded is-icon"
|
|
type="button"
|
|
{{action @editActions.deleteRow secret.name}}
|
|
aria-label="Delete row"
|
|
>
|
|
<Icon
|
|
@glyph="trash"
|
|
@size="l"
|
|
class="has-text-grey-light"
|
|
/>
|
|
</button>
|
|
{{/if}}
|
|
</div>
|
|
</div>
|
|
{{/each}}
|
|
</div>
|
|
{{/if}}
|