* feat: 🎸 initial secret editor * feat: 🎸 Create Secret Editor for JSON Credentials ✅ Closes: ICU-6680 * style: 💄 Fix sass lint errors * style: 💄 Appease sass-lint rule for using --size in stylesheet * refactor: 💡 Set Icon size via component attribute * refactor: 💡 remove computed decorators for Secret Editor * refactor: 💡 update editor styles to using sizing variables * refactor: 💡 update styles and add comments * refactor: 💡 clean up styling for secret editor * refactor: 💡 update class names to be more verbose * chore: 🤖 move jsonlint import to rose index.js * refactor: 💡 remove duplicate margin style for skeleton body * refactor: 💡 add comments to SecretEditor component class * refactor: 💡 large updates to secret json editor * refactor: 💡 Move JSON Secret to form/field/ directory * style: 💄 fix padding for Secret Editor line numbers * chore: 🤖 disable property-sort-oder in .sasslintrc * refactor: 💡 reorder app.scss styles * test: 💍 Add integration tests for JSON Secret and Skeleton
44 lines
1.1 KiB
JavaScript
44 lines
1.1 KiB
JavaScript
import Component from '@glimmer/component';
|
|
import { tracked } from '@glimmer/tracking';
|
|
import { action } from '@ember/object';
|
|
|
|
export default class FormFieldJsonSecretComponent extends Component {
|
|
// =properties
|
|
|
|
/**
|
|
* Tracks when editor should be displayed
|
|
* @type {boolean}
|
|
*/
|
|
@tracked editing = false;
|
|
|
|
/**
|
|
* True if viewing the resource after it has been created but not editing it
|
|
* and displays as a read only state. Since this is a secret editor the secret
|
|
* value is not displayed and a skeleton view is shown.
|
|
* @type {boolean}
|
|
*/
|
|
get isDisabled() {
|
|
return this.args.disabled;
|
|
}
|
|
|
|
/**
|
|
* True if editing the resource after it has been created but not editing
|
|
* the secret value in the Secret Editor. This will present the Secret
|
|
* Editor as a read only state even when the form is editing the resource.
|
|
* @type {boolean}
|
|
*/
|
|
get isActionable() {
|
|
return this.args.showEditButton && !this.editing;
|
|
}
|
|
|
|
// =actions
|
|
|
|
/**
|
|
* Sets editing to true when Secret Editor
|
|
* button is clicked in Actionable view
|
|
*/
|
|
@action
|
|
enableEditing() {
|
|
if (!this.args.disabled) this.editing = true;
|
|
}
|
|
} |