vault/ui/app/components/transform-edit-form.hbs
2025-08-01 10:04:25 -06:00

56 lines
1.9 KiB
Handlebars

{{!
Copyright (c) HashiCorp, Inc.
SPDX-License-Identifier: BUSL-1.1
}}
<form onsubmit={{action "createOrUpdate" "create"}}>
<div class="box is-sideless is-fullwidth is-marginless">
<MessageError @model={{this.model}} />
<NamespaceReminder @mode={{this.mode}} @noun="transformation" />
{{#each this.model.transformFieldAttrs as |attr|}}
{{#if (or (eq attr.name "name") (eq attr.name "type"))}}
<label for={{attr.name}} class="is-label">
{{attr.options.label}}
</label>
{{#if attr.options.subText}}
<p class="sub-text">{{attr.options.subText}}</p>
{{/if}}
{{#if attr.options.possibleValues}}
<div class="control is-expanded field is-readOnly">
<div class="select is-fullwidth">
<select name={{attr.name}} id={{attr.name}} disabled data-test-input={{attr.name}}>
<option selected={{get this.model attr.name}} value={{get this.model attr.name}}>
{{get this.model attr.name}}
</option>
</select>
</div>
</div>
{{else}}
<input
data-test-input={{attr.name}}
id={{attr.name}}
autocomplete="off"
spellcheck="false"
value={{or (get this.model attr.name) attr.options.defaultValue}}
readonly
class="field input is-readOnly"
type={{attr.type}}
/>
{{/if}}
{{else}}
<FormField data-test-field @attr={{attr}} @model={{this.model}} />
{{/if}}
{{/each}}
</div>
<div class="field is-grouped-split box is-fullwidth is-bottomless">
<Hds::ButtonSet>
<Hds::Button @text="Save" type="submit" data-test-submit />
<Hds::Button
@text="Cancel"
@color="secondary"
@route="vault.cluster.secrets.backend.show"
@models={{array this.model.backend this.model.id}}
/>
</Hds::ButtonSet>
</div>
</form>