open-vault/ui/app/templates/partials/secret-backend-settings/ssh.hbs
Angel Garbarino 2e35e9578c
UI/obscure secret on input (#11284)
* new font and add as font-family to be used in masked-input

* clean up logic

* refactor for displayOnly

* start cert masking

* work on certificates

* upload cert work

* fix global styling

* fix styling for class no longer used

* make mask by default and remove option

* glimmerize start and certificate on LDAP a file field

* glimmerize actions

* first part of glimmerizing text-file still need to do some clean up

* not doing awesome over here

* getting ready to un-glimmer

* unglimmerize

* remove placeholder based on conversations with design

* clean up text-file

* cleanup

* fix class bindings

* handle class binding

* set up for test

* fix elementId

* track down index

* update masked-input test

* add more to the masked-input test

* test-file test

* fix broken test

* clear old style

* clean up

* remove pgp key masked font, this really needs to be refactored to text-file component

* changelog

* cover other certificate view

* add allowCopy

* address some pr styling comments

* improve test coverage

* fix some issues

* add attr.options.masked
2021-04-22 08:58:37 -06:00

80 lines
2.6 KiB
Handlebars

{{#if configured}}
<div class="box is-fullwidth is-sideless is-marginless">
<div class="field">
<label for="publicKey" class="is-label">
Public key
</label>
<div class="control">
<MaskedInput
@name="publickey"
@id="publicKey"
@value={{model.publicKey}}
@displayOnly={{true}}
@allowCopy={{true}}
data-test-ssh-input="public-key"
/>
</div>
</div>
</div>
<div class="field is-grouped-split box is-fullwidth is-bottomless">
<div class="control">
<CopyButton @clipboardText={{model.publicKey}} @class="button is-primary" @buttonType="button" @success={{action (set-flash-message "Public Key copied!")}}>
Copy
</CopyButton>
</div>
<div class="control">
<ConfirmAction
@buttonClasses="button"
@confirmMessage="This will remove the CA certificate information."
@onConfirmAction={{action "saveConfig" (hash delete=true)}}
>
Delete
</ConfirmAction>
</div>
</div>
{{else}}
<form {{action "saveConfig" on="submit"}} data-test-ssh-configure-form="true">
<div class="box is-fullwidth is-sideless is-marginless">
<NamespaceReminder @mode="save" @noun="configuration" />
<div class="field">
<label for="privateKey" class="is-label">
Private key
</label>
<div class="control">
<Textarea @name="privateKey" @id="privateKey" class="input" @value={{model.privateKey}} />
</div>
</div>
<div class="field">
<label for="publicKey" class="is-label">
Public key
</label>
<div class="control">
<Textarea @name="publicKey" @id="publicKey" class="input" @value={{model.publicKey}} />
</div>
</div>
<div class="b-checkbox">
<input type="checkbox"
id="generateSigningKey"
class="styled"
checked={{model.generateSigningKey}}
onchange={{action (mut model.generateSigningKey) value="target.checked"}}
data-test-ssh-input={{generateSigningKey}}
/>
<label for="generateSigningKey" class="is-label">
Generate signing key
<InfoTooltip>
Specifies if Vault should generate the signing key pair internally
</InfoTooltip>
</label>
</div>
</div>
<div class="field box is-fullwidth is-bottomless is-marginless">
<div class="control">
<button type="submit" class="button is-primary {{if loading 'is-loading'}}" disabled={{loading}} data-test-ssh-input="configure-submit">
Save
</button>
</div>
</div>
</form>
{{/if}}