FEATURE: custom flag can require additional message (#27706)

Allow admin to create custom flag which requires an additional message.

I decided to rename the old `custom_flag` into `require_message` as it is more descriptive.
This commit is contained in:
Krzysztof Kotlarek
2024-07-15 08:48:01 +10:00
committed by GitHub
parent 63ca30ccb4
commit c0bcd979e3
29 changed files with 186 additions and 94 deletions

View File

@@ -23,6 +23,7 @@ export default class AdminFlagsForm extends Component {
@service site;
@tracked enabled = true;
@tracked require_message = false;
@tracked name;
@tracked description;
@tracked appliesTo;
@@ -33,6 +34,7 @@ export default class AdminFlagsForm extends Component {
this.name = this.args.flag.name;
this.description = this.args.flag.description;
this.appliesTo = this.args.flag.applies_to;
this.require_message = this.args.flag.require_message;
this.enabled = this.args.flag.enabled;
}
}
@@ -98,6 +100,7 @@ export default class AdminFlagsForm extends Component {
this.args.flag.name = response.flag.name;
this.args.flag.description = response.flag.description;
this.args.flag.applies_to = response.flag.applies_to;
this.args.flag.require_message = response.flag.require_message;
this.args.flag.enabled = response.flag.enabled;
this.router.transitionTo("adminConfig.flags");
})
@@ -112,6 +115,7 @@ export default class AdminFlagsForm extends Component {
name: this.name,
description: this.description,
applies_to: this.appliesTo,
require_message: this.require_message,
enabled: this.enabled,
};
}
@@ -164,6 +168,20 @@ export default class AdminFlagsForm extends Component {
/>
</div>
<div class="control-group">
<label class="checkbox-label admin-flag-form__require-reason">
<Input @type="checkbox" @checked={{this.require_message}} />
<div>
{{i18n "admin.config_areas.flags.form.require_message"}}
<div class="admin-flag-form__require-message-description">
{{i18n
"admin.config_areas.flags.form.require_message_description"
}}
</div>
</div>
</label>
</div>
<div class="control-group">
<label class="checkbox-label admin-flag-form__enabled">
<Input @type="checkbox" @checked={{this.enabled}} />