@hashicorp/design-system-components
Version:
Helios Design System Components
36 lines (33 loc) • 1.36 kB
JavaScript
import Component from '@glimmer/component';
import { on } from '@ember/modifier';
import HdsButton from '../button/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 HdsCodeEditorFullScreenButton extends Component {
get state() {
return this.args.isFullScreen ? 'minimize' : 'maximize';
}
get className() {
const classes = ['hds-code-editor__full-screen-button', 'hds-code-editor__button'];
const stateClass = `hds-code-editor__full-screen-button--${this.state}`;
classes.push(stateClass);
return classes.join(' ');
}
static {
setComponentTemplate(precompileTemplate("<HdsButton class={{this.className}} aria-pressed={{@isFullScreen}} @isIconOnly={{true}} @color=\"secondary\" @size=\"small\" @icon={{this.state}} @text={{hdsT \"hds.components.code-editor.full-screen-button.text\" default=\"Toggle full screen view\"}} {{on \"click\" @onToggleFullScreen}} ...attributes />", {
strictMode: true,
scope: () => ({
HdsButton,
hdsT: HdsTHelper,
on
})
}), this);
}
}
export { HdsCodeEditorFullScreenButton as default };
//# sourceMappingURL=full-screen-button.js.map