@hashicorp/design-system-components
Version:
Helios Design System Components
35 lines (32 loc) • 1.41 kB
JavaScript
import Component from '@glimmer/component';
import HdsTextBody from '../../text/body.js';
import HdsBadge from '../../badge/index.js';
import HdsTHelper from '../../../../helpers/hds-t.js';
import { precompileTemplate } from '@ember/template-compilation';
import { setComponentTemplate } from '@ember/component';
/**
* Copyright IBM Corp. 2021, 2025
* SPDX-License-Identifier: MPL-2.0
*/
class HdsFormIndicator extends Component {
get classNames() {
const classes = ['hds-form-indicator'];
if (this.args.isOptional) {
// add speficic class for "optional" indicator
classes.push('hds-form-indicator--optional');
}
return classes.join(' ');
}
static {
setComponentTemplate(precompileTemplate("{{#if @isOptional}}\n <HdsTextBody class={{this.classNames}} @tag=\"span\" @size=\"100\" @weight=\"regular\">\n ({{hdsT \"hds.components.form.common.optional_field_indicator\" default=\"Optional\"}})\n </HdsTextBody>\n{{/if}}\n{{#if @isRequired}}\n <HdsBadge aria-hidden=\"true\" class={{this.classNames}} @size=\"small\" @color=\"neutral\" @text={{hdsT \"hds.components.form.common.required_field_indicator\" default=\"Required\"}} />\n{{/if}}", {
strictMode: true,
scope: () => ({
HdsTextBody,
hdsT: HdsTHelper,
HdsBadge
})
}), this);
}
}
export { HdsFormIndicator as default };
//# sourceMappingURL=index.js.map