@hashicorp/design-system-components 4.16.0 → 4.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -8
- package/declarations/components/hds/advanced-table/expandable-tr-group.d.ts +2 -1
- package/declarations/components/hds/advanced-table/expandable-tr-group.d.ts.map +1 -1
- package/declarations/components/hds/advanced-table/index.d.ts +1 -2
- package/declarations/components/hds/advanced-table/index.d.ts.map +1 -1
- package/declarations/components/hds/advanced-table/td.d.ts +1 -3
- package/declarations/components/hds/advanced-table/td.d.ts.map +1 -1
- package/declarations/components/hds/advanced-table/th-sort.d.ts +1 -3
- package/declarations/components/hds/advanced-table/th-sort.d.ts.map +1 -1
- package/declarations/components/hds/advanced-table/th.d.ts +1 -3
- package/declarations/components/hds/advanced-table/th.d.ts.map +1 -1
- package/declarations/components/hds/alert/index.d.ts +2 -1
- package/declarations/components/hds/alert/index.d.ts.map +1 -1
- package/declarations/components/hds/app-footer/status-link.d.ts +3 -2
- package/declarations/components/hds/app-footer/status-link.d.ts.map +1 -1
- package/declarations/components/hds/app-header/index.d.ts +2 -1
- package/declarations/components/hds/app-header/index.d.ts.map +1 -1
- package/declarations/components/hds/app-side-nav/index.d.ts +2 -1
- package/declarations/components/hds/app-side-nav/index.d.ts.map +1 -1
- package/declarations/components/hds/app-side-nav/portal/target.d.ts.map +1 -1
- package/declarations/components/hds/breadcrumb/item.d.ts +1 -1
- package/declarations/components/hds/breadcrumb/item.d.ts.map +1 -1
- package/declarations/components/hds/code-block/copy-button.d.ts +5 -2
- package/declarations/components/hds/code-block/copy-button.d.ts.map +1 -1
- package/declarations/components/hds/code-block/index.d.ts +3 -0
- package/declarations/components/hds/code-block/index.d.ts.map +1 -1
- package/declarations/components/hds/code-editor/index.d.ts +6 -2
- package/declarations/components/hds/code-editor/index.d.ts.map +1 -1
- package/declarations/components/hds/code-editor/title.d.ts +1 -1
- package/declarations/components/hds/code-editor/title.d.ts.map +1 -1
- package/declarations/components/hds/dropdown/list-item/interactive.d.ts +2 -1
- package/declarations/components/hds/dropdown/list-item/interactive.d.ts.map +1 -1
- package/declarations/components/hds/dropdown/toggle/icon.d.ts +2 -1
- package/declarations/components/hds/dropdown/toggle/icon.d.ts.map +1 -1
- package/declarations/components/hds/flyout/body.d.ts +2 -1
- package/declarations/components/hds/flyout/body.d.ts.map +1 -1
- package/declarations/components/hds/flyout/description.d.ts +2 -1
- package/declarations/components/hds/flyout/description.d.ts.map +1 -1
- package/declarations/components/hds/flyout/footer.d.ts +2 -1
- package/declarations/components/hds/flyout/footer.d.ts.map +1 -1
- package/declarations/components/hds/flyout/header.d.ts +2 -1
- package/declarations/components/hds/flyout/header.d.ts.map +1 -1
- package/declarations/components/hds/form/masked-input/base.d.ts +5 -2
- package/declarations/components/hds/form/masked-input/base.d.ts.map +1 -1
- package/declarations/components/hds/form/super-select/multiple/base.d.ts +1 -1
- package/declarations/components/hds/form/super-select/multiple/base.d.ts.map +1 -1
- package/declarations/components/hds/form/super-select/single/base.d.ts +1 -1
- package/declarations/components/hds/form/super-select/single/base.d.ts.map +1 -1
- package/declarations/components/hds/form/text-input/field.d.ts +3 -2
- package/declarations/components/hds/form/text-input/field.d.ts.map +1 -1
- package/declarations/components/hds/icon/index.d.ts +2 -1
- package/declarations/components/hds/icon/index.d.ts.map +1 -1
- package/declarations/components/hds/interactive/index.d.ts +1 -1
- package/declarations/components/hds/interactive/index.d.ts.map +1 -1
- package/declarations/components/hds/link/inline.d.ts +2 -1
- package/declarations/components/hds/link/inline.d.ts.map +1 -1
- package/declarations/components/hds/link/standalone.d.ts +2 -1
- package/declarations/components/hds/link/standalone.d.ts.map +1 -1
- package/declarations/components/hds/menu-primitive/index.d.ts +2 -1
- package/declarations/components/hds/menu-primitive/index.d.ts.map +1 -1
- package/declarations/components/hds/modal/body.d.ts +2 -1
- package/declarations/components/hds/modal/body.d.ts.map +1 -1
- package/declarations/components/hds/modal/footer.d.ts +2 -1
- package/declarations/components/hds/modal/footer.d.ts.map +1 -1
- package/declarations/components/hds/modal/header.d.ts +2 -1
- package/declarations/components/hds/modal/header.d.ts.map +1 -1
- package/declarations/components/hds/pagination/compact/index.d.ts +2 -1
- package/declarations/components/hds/pagination/compact/index.d.ts.map +1 -1
- package/declarations/components/hds/pagination/numbered/index.d.ts +3 -2
- package/declarations/components/hds/pagination/numbered/index.d.ts.map +1 -1
- package/declarations/components/hds/popover-primitive/index.d.ts +2 -1
- package/declarations/components/hds/popover-primitive/index.d.ts.map +1 -1
- package/declarations/components/hds/side-nav/header/icon-button.d.ts +2 -1
- package/declarations/components/hds/side-nav/header/icon-button.d.ts.map +1 -1
- package/declarations/components/hds/side-nav/index.d.ts +2 -1
- package/declarations/components/hds/side-nav/index.d.ts.map +1 -1
- package/declarations/components/hds/side-nav/portal/target.d.ts.map +1 -1
- package/declarations/components/hds/stepper/task/indicator.d.ts +1 -1
- package/declarations/components/hds/table/index.d.ts +2 -1
- package/declarations/components/hds/table/index.d.ts.map +1 -1
- package/declarations/components/hds/table/th-selectable.d.ts +3 -3
- package/declarations/components/hds/table/th-selectable.d.ts.map +1 -1
- package/declarations/components/hds/tabs/index.d.ts +2 -1
- package/declarations/components/hds/tabs/index.d.ts.map +1 -1
- package/declarations/components/hds/tag/index.d.ts +16 -0
- package/declarations/components/hds/tag/index.d.ts.map +1 -1
- package/declarations/components/hds/tag/types.d.ts +15 -0
- package/declarations/components/hds/tag/types.d.ts.map +1 -1
- package/declarations/components/hds/time/index.d.ts.map +1 -1
- package/declarations/helpers/hds-format-date.d.ts +16 -3
- package/declarations/helpers/hds-format-date.d.ts.map +1 -1
- package/declarations/helpers/hds-format-relative.d.ts +9 -3
- package/declarations/helpers/hds-format-relative.d.ts.map +1 -1
- package/declarations/helpers/hds-link-to-models.d.ts +7 -1
- package/declarations/helpers/hds-link-to-models.d.ts.map +1 -1
- package/declarations/helpers/hds-link-to-query.d.ts +7 -1
- package/declarations/helpers/hds-link-to-query.d.ts.map +1 -1
- package/declarations/instance-initializers/load-sprite.d.ts.map +1 -1
- package/declarations/{components/hds/advanced-table/helpers.d.ts → modifiers/hds-advanced-table-cell/dom-management.d.ts} +3 -4
- package/declarations/modifiers/hds-advanced-table-cell/dom-management.d.ts.map +1 -0
- package/declarations/modifiers/hds-advanced-table-cell/keyboard-navigation.d.ts +6 -0
- package/declarations/modifiers/hds-advanced-table-cell/keyboard-navigation.d.ts.map +1 -0
- package/declarations/modifiers/hds-advanced-table-cell.d.ts +26 -0
- package/declarations/modifiers/hds-advanced-table-cell.d.ts.map +1 -0
- package/declarations/modifiers/hds-clipboard.d.ts.map +1 -1
- package/declarations/modifiers/hds-code-editor/languages/rego.d.ts +48 -0
- package/declarations/modifiers/hds-code-editor/languages/rego.d.ts.map +1 -0
- package/declarations/modifiers/hds-code-editor/languages/sentinel.d.ts +4 -0
- package/declarations/modifiers/hds-code-editor/languages/sentinel.d.ts.map +1 -1
- package/declarations/modifiers/hds-code-editor/types.d.ts +2 -0
- package/declarations/modifiers/hds-code-editor/types.d.ts.map +1 -1
- package/declarations/modifiers/hds-code-editor.d.ts +9 -5
- package/declarations/modifiers/hds-code-editor.d.ts.map +1 -1
- package/declarations/modifiers/hds-tooltip.d.ts +4 -2
- package/declarations/modifiers/hds-tooltip.d.ts.map +1 -1
- package/declarations/services/hds-time-types.d.ts +7 -7
- package/declarations/services/hds-time-types.d.ts.map +1 -1
- package/declarations/services/hds-time.d.ts +3 -3
- package/declarations/services/hds-time.d.ts.map +1 -1
- package/declarations/template-registry.d.ts +2 -0
- package/declarations/template-registry.d.ts.map +1 -1
- package/dist/README.md +4 -8
- package/dist/_app_/modifiers/hds-advanced-table-cell/dom-management.js +1 -0
- package/dist/_app_/modifiers/hds-advanced-table-cell/keyboard-navigation.js +1 -0
- package/dist/_app_/modifiers/hds-advanced-table-cell.js +1 -0
- package/dist/_app_/modifiers/hds-code-editor/languages/rego.js +1 -0
- package/dist/components/hds/accordion/index.js.map +1 -1
- package/dist/components/hds/accordion/item/button.js +11 -4
- package/dist/components/hds/accordion/item/button.js.map +1 -1
- package/dist/components/hds/accordion/item/index.js +12 -11
- package/dist/components/hds/accordion/item/index.js.map +1 -1
- package/dist/components/hds/advanced-table/expandable-tr-group.js +16 -12
- package/dist/components/hds/advanced-table/expandable-tr-group.js.map +1 -1
- package/dist/components/hds/advanced-table/index.js +69 -53
- package/dist/components/hds/advanced-table/index.js.map +1 -1
- package/dist/components/hds/advanced-table/td.js +30 -36
- package/dist/components/hds/advanced-table/td.js.map +1 -1
- package/dist/components/hds/advanced-table/th-button-expand.js +13 -9
- package/dist/components/hds/advanced-table/th-button-expand.js.map +1 -1
- package/dist/components/hds/advanced-table/th-button-sort.js +8 -7
- package/dist/components/hds/advanced-table/th-button-sort.js.map +1 -1
- package/dist/components/hds/advanced-table/th-button-tooltip.js +7 -6
- package/dist/components/hds/advanced-table/th-button-tooltip.js.map +1 -1
- package/dist/components/hds/advanced-table/th-selectable.js +25 -17
- package/dist/components/hds/advanced-table/th-selectable.js.map +1 -1
- package/dist/components/hds/advanced-table/th-sort.js +30 -37
- package/dist/components/hds/advanced-table/th-sort.js.map +1 -1
- package/dist/components/hds/advanced-table/th.js +29 -36
- package/dist/components/hds/advanced-table/th.js.map +1 -1
- package/dist/components/hds/advanced-table/tr.js.map +1 -1
- package/dist/components/hds/alert/description.js.map +1 -1
- package/dist/components/hds/alert/index.js +19 -16
- package/dist/components/hds/alert/index.js.map +1 -1
- package/dist/components/hds/alert/title.js.map +1 -1
- package/dist/components/hds/app-footer/copyright.js.map +1 -1
- package/dist/components/hds/app-footer/index.js.map +1 -1
- package/dist/components/hds/app-footer/item.js.map +1 -1
- package/dist/components/hds/app-footer/legal-links.js.map +1 -1
- package/dist/components/hds/app-footer/link.js.map +1 -1
- package/dist/components/hds/app-footer/status-link.js.map +1 -1
- package/dist/components/hds/app-frame/index.js.map +1 -1
- package/dist/components/hds/app-frame/parts/footer.js.map +1 -1
- package/dist/components/hds/app-frame/parts/header.js.map +1 -1
- package/dist/components/hds/app-frame/parts/main.js.map +1 -1
- package/dist/components/hds/app-frame/parts/modals.js.map +1 -1
- package/dist/components/hds/app-frame/parts/sidebar.js.map +1 -1
- package/dist/components/hds/app-header/home-link.js.map +1 -1
- package/dist/components/hds/app-header/index.js +42 -34
- package/dist/components/hds/app-header/index.js.map +1 -1
- package/dist/components/hds/app-header/menu-button.js +11 -4
- package/dist/components/hds/app-header/menu-button.js.map +1 -1
- package/dist/components/hds/app-side-nav/index.js +44 -31
- package/dist/components/hds/app-side-nav/index.js.map +1 -1
- package/dist/components/hds/app-side-nav/list/back-link.js.map +1 -1
- package/dist/components/hds/app-side-nav/list/index.js +15 -13
- package/dist/components/hds/app-side-nav/list/index.js.map +1 -1
- package/dist/components/hds/app-side-nav/list/item.js.map +1 -1
- package/dist/components/hds/app-side-nav/list/link.js.map +1 -1
- package/dist/components/hds/app-side-nav/list/title.js +13 -9
- package/dist/components/hds/app-side-nav/list/title.js.map +1 -1
- package/dist/components/hds/app-side-nav/portal/index.js.map +1 -1
- package/dist/components/hds/app-side-nav/portal/target.js +31 -28
- package/dist/components/hds/app-side-nav/portal/target.js.map +1 -1
- package/dist/components/hds/app-side-nav/toggle-button.js.map +1 -1
- package/dist/components/hds/application-state/body.js.map +1 -1
- package/dist/components/hds/application-state/footer.js.map +1 -1
- package/dist/components/hds/application-state/header.js.map +1 -1
- package/dist/components/hds/application-state/index.js.map +1 -1
- package/dist/components/hds/application-state/media.js.map +1 -1
- package/dist/components/hds/badge/index.js.map +1 -1
- package/dist/components/hds/badge-count/index.js.map +1 -1
- package/dist/components/hds/breadcrumb/index.js.map +1 -1
- package/dist/components/hds/breadcrumb/item.js +1 -1
- package/dist/components/hds/breadcrumb/item.js.map +1 -1
- package/dist/components/hds/breadcrumb/truncation.js.map +1 -1
- package/dist/components/hds/button/index.js.map +1 -1
- package/dist/components/hds/button-set/index.js.map +1 -1
- package/dist/components/hds/card/container.js.map +1 -1
- package/dist/components/hds/code-block/copy-button.js +9 -5
- package/dist/components/hds/code-block/copy-button.js.map +1 -1
- package/dist/components/hds/code-block/description.js.map +1 -1
- package/dist/components/hds/code-block/index.js +27 -21
- package/dist/components/hds/code-block/index.js.map +1 -1
- package/dist/components/hds/code-block/title.js.map +1 -1
- package/dist/components/hds/code-editor/description.js +6 -5
- package/dist/components/hds/code-editor/description.js.map +1 -1
- package/dist/components/hds/code-editor/full-screen-button.js.map +1 -1
- package/dist/components/hds/code-editor/generic.js.map +1 -1
- package/dist/components/hds/code-editor/index.js +67 -52
- package/dist/components/hds/code-editor/index.js.map +1 -1
- package/dist/components/hds/code-editor/title.js +6 -5
- package/dist/components/hds/code-editor/title.js.map +1 -1
- package/dist/components/hds/copy/button/index.js +23 -20
- package/dist/components/hds/copy/button/index.js.map +1 -1
- package/dist/components/hds/copy/snippet/index.js +23 -20
- package/dist/components/hds/copy/snippet/index.js.map +1 -1
- package/dist/components/hds/dialog-primitive/body.js.map +1 -1
- package/dist/components/hds/dialog-primitive/description.js.map +1 -1
- package/dist/components/hds/dialog-primitive/footer.js.map +1 -1
- package/dist/components/hds/dialog-primitive/header.js.map +1 -1
- package/dist/components/hds/dialog-primitive/overlay.js.map +1 -1
- package/dist/components/hds/dialog-primitive/wrapper.js.map +1 -1
- package/dist/components/hds/disclosure-primitive/index.js +27 -21
- package/dist/components/hds/disclosure-primitive/index.js.map +1 -1
- package/dist/components/hds/dismiss-button/index.js.map +1 -1
- package/dist/components/hds/dropdown/footer.js.map +1 -1
- package/dist/components/hds/dropdown/header.js.map +1 -1
- package/dist/components/hds/dropdown/index.js +12 -5
- package/dist/components/hds/dropdown/index.js.map +1 -1
- package/dist/components/hds/dropdown/list-item/checkbox.js.map +1 -1
- package/dist/components/hds/dropdown/list-item/checkmark.js.map +1 -1
- package/dist/components/hds/dropdown/list-item/copy-item.js.map +1 -1
- package/dist/components/hds/dropdown/list-item/description.js.map +1 -1
- package/dist/components/hds/dropdown/list-item/generic.js.map +1 -1
- package/dist/components/hds/dropdown/list-item/interactive.js.map +1 -1
- package/dist/components/hds/dropdown/list-item/radio.js.map +1 -1
- package/dist/components/hds/dropdown/list-item/separator.js.map +1 -1
- package/dist/components/hds/dropdown/list-item/title.js.map +1 -1
- package/dist/components/hds/dropdown/toggle/button.js +12 -10
- package/dist/components/hds/dropdown/toggle/button.js.map +1 -1
- package/dist/components/hds/dropdown/toggle/chevron.js.map +1 -1
- package/dist/components/hds/dropdown/toggle/icon.js +20 -12
- package/dist/components/hds/dropdown/toggle/icon.js.map +1 -1
- package/dist/components/hds/flyout/body.js +2 -1
- package/dist/components/hds/flyout/body.js.map +1 -1
- package/dist/components/hds/flyout/description.js +1 -0
- package/dist/components/hds/flyout/description.js.map +1 -1
- package/dist/components/hds/flyout/footer.js +2 -1
- package/dist/components/hds/flyout/footer.js.map +1 -1
- package/dist/components/hds/flyout/header.js +2 -1
- package/dist/components/hds/flyout/header.js.map +1 -1
- package/dist/components/hds/flyout/index.js +33 -18
- package/dist/components/hds/flyout/index.js.map +1 -1
- package/dist/components/hds/form/character-count/index.js.map +1 -1
- package/dist/components/hds/form/checkbox/base.js.map +1 -1
- package/dist/components/hds/form/checkbox/field.js.map +1 -1
- package/dist/components/hds/form/checkbox/group.js.map +1 -1
- package/dist/components/hds/form/error/index.js.map +1 -1
- package/dist/components/hds/form/error/message.js.map +1 -1
- package/dist/components/hds/form/field/index.js +15 -7
- package/dist/components/hds/form/field/index.js.map +1 -1
- package/dist/components/hds/form/fieldset/index.js +15 -7
- package/dist/components/hds/form/fieldset/index.js.map +1 -1
- package/dist/components/hds/form/file-input/base.js.map +1 -1
- package/dist/components/hds/form/file-input/field.js.map +1 -1
- package/dist/components/hds/form/helper-text/index.js.map +1 -1
- package/dist/components/hds/form/indicator/index.js.map +1 -1
- package/dist/components/hds/form/label/index.js.map +1 -1
- package/dist/components/hds/form/legend/index.js.map +1 -1
- package/dist/components/hds/form/masked-input/base.js +45 -15
- package/dist/components/hds/form/masked-input/base.js.map +1 -1
- package/dist/components/hds/form/masked-input/field.js.map +1 -1
- package/dist/components/hds/form/radio/base.js.map +1 -1
- package/dist/components/hds/form/radio/field.js.map +1 -1
- package/dist/components/hds/form/radio/group.js.map +1 -1
- package/dist/components/hds/form/radio-card/description.js.map +1 -1
- package/dist/components/hds/form/radio-card/group.js.map +1 -1
- package/dist/components/hds/form/radio-card/index.js.map +1 -1
- package/dist/components/hds/form/radio-card/label.js.map +1 -1
- package/dist/components/hds/form/select/base.js.map +1 -1
- package/dist/components/hds/form/select/field.js.map +1 -1
- package/dist/components/hds/form/super-select/after-options.js.map +1 -1
- package/dist/components/hds/form/super-select/multiple/base.js +38 -28
- package/dist/components/hds/form/super-select/multiple/base.js.map +1 -1
- package/dist/components/hds/form/super-select/multiple/field.js.map +1 -1
- package/dist/components/hds/form/super-select/option-group.js +11 -10
- package/dist/components/hds/form/super-select/option-group.js.map +1 -1
- package/dist/components/hds/form/super-select/placeholder.js.map +1 -1
- package/dist/components/hds/form/super-select/single/base.js +17 -12
- package/dist/components/hds/form/super-select/single/base.js.map +1 -1
- package/dist/components/hds/form/super-select/single/field.js.map +1 -1
- package/dist/components/hds/form/text-input/base.js.map +1 -1
- package/dist/components/hds/form/text-input/field.js +21 -18
- package/dist/components/hds/form/text-input/field.js.map +1 -1
- package/dist/components/hds/form/textarea/base.js.map +1 -1
- package/dist/components/hds/form/textarea/field.js.map +1 -1
- package/dist/components/hds/form/toggle/base.js.map +1 -1
- package/dist/components/hds/form/toggle/field.js.map +1 -1
- package/dist/components/hds/form/toggle/group.js.map +1 -1
- package/dist/components/hds/form/visibility-toggle/index.js.map +1 -1
- package/dist/components/hds/icon/index.js +7 -3
- package/dist/components/hds/icon/index.js.map +1 -1
- package/dist/components/hds/icon-tile/index.js.map +1 -1
- package/dist/components/hds/interactive/index.js +12 -5
- package/dist/components/hds/interactive/index.js.map +1 -1
- package/dist/components/hds/link/inline.js.map +1 -1
- package/dist/components/hds/link/standalone.js.map +1 -1
- package/dist/components/hds/menu-primitive/index.js +37 -24
- package/dist/components/hds/menu-primitive/index.js.map +1 -1
- package/dist/components/hds/modal/body.js +1 -0
- package/dist/components/hds/modal/body.js.map +1 -1
- package/dist/components/hds/modal/footer.js +2 -1
- package/dist/components/hds/modal/footer.js.map +1 -1
- package/dist/components/hds/modal/header.js +1 -0
- package/dist/components/hds/modal/header.js.map +1 -1
- package/dist/components/hds/modal/index.js +30 -16
- package/dist/components/hds/modal/index.js.map +1 -1
- package/dist/components/hds/page-header/actions.js.map +1 -1
- package/dist/components/hds/page-header/badges.js.map +1 -1
- package/dist/components/hds/page-header/description.js.map +1 -1
- package/dist/components/hds/page-header/index.js.map +1 -1
- package/dist/components/hds/page-header/subtitle.js.map +1 -1
- package/dist/components/hds/page-header/title.js.map +1 -1
- package/dist/components/hds/pagination/compact/index.js +31 -28
- package/dist/components/hds/pagination/compact/index.js.map +1 -1
- package/dist/components/hds/pagination/info/index.js.map +1 -1
- package/dist/components/hds/pagination/nav/arrow.js +10 -4
- package/dist/components/hds/pagination/nav/arrow.js.map +1 -1
- package/dist/components/hds/pagination/nav/ellipsis.js.map +1 -1
- package/dist/components/hds/pagination/nav/number.js +10 -4
- package/dist/components/hds/pagination/nav/number.js.map +1 -1
- package/dist/components/hds/pagination/numbered/index.js +44 -47
- package/dist/components/hds/pagination/numbered/index.js.map +1 -1
- package/dist/components/hds/pagination/size-selector/index.js +12 -8
- package/dist/components/hds/pagination/size-selector/index.js.map +1 -1
- package/dist/components/hds/popover-primitive/index.js +130 -103
- package/dist/components/hds/popover-primitive/index.js.map +1 -1
- package/dist/components/hds/reveal/index.js +26 -24
- package/dist/components/hds/reveal/index.js.map +1 -1
- package/dist/components/hds/reveal/toggle/button.js.map +1 -1
- package/dist/components/hds/rich-tooltip/bubble.js.map +1 -1
- package/dist/components/hds/rich-tooltip/index.js +8 -7
- package/dist/components/hds/rich-tooltip/index.js.map +1 -1
- package/dist/components/hds/rich-tooltip/toggle.js.map +1 -1
- package/dist/components/hds/segmented-group/index.js.map +1 -1
- package/dist/components/hds/separator/index.js.map +1 -1
- package/dist/components/hds/side-nav/base.js.map +1 -1
- package/dist/components/hds/side-nav/header/home-link.js.map +1 -1
- package/dist/components/hds/side-nav/header/icon-button.js +1 -0
- package/dist/components/hds/side-nav/header/icon-button.js.map +1 -1
- package/dist/components/hds/side-nav/header/index.js.map +1 -1
- package/dist/components/hds/side-nav/index.js +47 -34
- package/dist/components/hds/side-nav/index.js.map +1 -1
- package/dist/components/hds/side-nav/list/back-link.js.map +1 -1
- package/dist/components/hds/side-nav/list/index.js +15 -13
- package/dist/components/hds/side-nav/list/index.js.map +1 -1
- package/dist/components/hds/side-nav/list/item.js.map +1 -1
- package/dist/components/hds/side-nav/list/link.js.map +1 -1
- package/dist/components/hds/side-nav/list/title.js +13 -9
- package/dist/components/hds/side-nav/list/title.js.map +1 -1
- package/dist/components/hds/side-nav/portal/index.js.map +1 -1
- package/dist/components/hds/side-nav/portal/target.js +31 -28
- package/dist/components/hds/side-nav/portal/target.js.map +1 -1
- package/dist/components/hds/side-nav/toggle-button.js.map +1 -1
- package/dist/components/hds/stepper/step/indicator.js.map +1 -1
- package/dist/components/hds/stepper/task/indicator.js.map +1 -1
- package/dist/components/hds/table/index.js +54 -40
- package/dist/components/hds/table/index.js.map +1 -1
- package/dist/components/hds/table/td.js.map +1 -1
- package/dist/components/hds/table/th-button-sort.js +8 -7
- package/dist/components/hds/table/th-button-sort.js.map +1 -1
- package/dist/components/hds/table/th-button-tooltip.js +7 -6
- package/dist/components/hds/table/th-button-tooltip.js.map +1 -1
- package/dist/components/hds/table/th-selectable.js +24 -25
- package/dist/components/hds/table/th-selectable.js.map +1 -1
- package/dist/components/hds/table/th-sort.js +12 -10
- package/dist/components/hds/table/th-sort.js.map +1 -1
- package/dist/components/hds/table/th.js +12 -10
- package/dist/components/hds/table/th.js.map +1 -1
- package/dist/components/hds/table/tr.js.map +1 -1
- package/dist/components/hds/tabs/index.js +77 -54
- package/dist/components/hds/tabs/index.js.map +1 -1
- package/dist/components/hds/tabs/panel.js +21 -14
- package/dist/components/hds/tabs/panel.js.map +1 -1
- package/dist/components/hds/tabs/tab.js +29 -13
- package/dist/components/hds/tabs/tab.js.map +1 -1
- package/dist/components/hds/tag/index.js +43 -3
- package/dist/components/hds/tag/index.js.map +1 -1
- package/dist/components/hds/tag/types.js +16 -1
- package/dist/components/hds/tag/types.js.map +1 -1
- package/dist/components/hds/text/body.js.map +1 -1
- package/dist/components/hds/text/code.js.map +1 -1
- package/dist/components/hds/text/display.js.map +1 -1
- package/dist/components/hds/text/index.js.map +1 -1
- package/dist/components/hds/time/index.js +19 -14
- package/dist/components/hds/time/index.js.map +1 -1
- package/dist/components/hds/time/range.js +11 -12
- package/dist/components/hds/time/range.js.map +1 -1
- package/dist/components/hds/time/single.js.map +1 -1
- package/dist/components/hds/toast/index.js.map +1 -1
- package/dist/components/hds/tooltip-button/index.js.map +1 -1
- package/dist/components/hds/yield/index.js.map +1 -1
- package/dist/components.js +1 -1
- package/dist/helpers/hds-format-date.js.map +1 -1
- package/dist/helpers/hds-format-relative.js.map +1 -1
- package/dist/instance-initializers/load-sprite.js +3 -1
- package/dist/instance-initializers/load-sprite.js.map +1 -1
- package/dist/modifiers/hds-advanced-table-cell/dom-management.js +51 -0
- package/dist/modifiers/hds-advanced-table-cell/dom-management.js.map +1 -0
- package/dist/{components/hds/advanced-table/helpers.js → modifiers/hds-advanced-table-cell/keyboard-navigation.js} +5 -44
- package/dist/modifiers/hds-advanced-table-cell/keyboard-navigation.js.map +1 -0
- package/dist/modifiers/hds-advanced-table-cell.js +55 -0
- package/dist/modifiers/hds-advanced-table-cell.js.map +1 -0
- package/dist/modifiers/hds-clipboard.js +29 -35
- package/dist/modifiers/hds-clipboard.js.map +1 -1
- package/dist/modifiers/hds-code-editor/languages/rego.js +191 -0
- package/dist/modifiers/hds-code-editor/languages/rego.js.map +1 -0
- package/dist/modifiers/hds-code-editor/languages/sentinel.js +5 -0
- package/dist/modifiers/hds-code-editor/languages/sentinel.js.map +1 -1
- package/dist/modifiers/hds-code-editor/types.js +2 -0
- package/dist/modifiers/hds-code-editor/types.js.map +1 -1
- package/dist/modifiers/hds-code-editor.js +182 -155
- package/dist/modifiers/hds-code-editor.js.map +1 -1
- package/dist/modifiers/hds-tooltip.js +128 -108
- package/dist/modifiers/hds-tooltip.js.map +1 -1
- package/dist/services/hds-time.js +29 -23
- package/dist/services/hds-time.js.map +1 -1
- package/dist/styles/@hashicorp/design-system-components.css +94 -3
- package/dist/styles/components/advanced-table.scss +4 -0
- package/dist/styles/components/badge-count.scss +1 -1
- package/dist/styles/components/badge.scss +11 -1
- package/dist/styles/components/rich-tooltip.scss +3 -1
- package/dist/styles/components/tag.scss +28 -0
- package/dist/styles/components/time.scss +7 -0
- package/dist/styles/components/tooltip.scss +49 -0
- package/dist/utils/hds-aria-described-by.js +14 -17
- package/dist/utils/hds-aria-described-by.js.map +1 -1
- package/package.json +30 -31
- package/declarations/components/hds/advanced-table/helpers.d.ts.map +0 -1
- package/dist/_app_/components/hds/advanced-table/helpers.js +0 -1
- package/dist/_rollupPluginBabelHelpers-C_TsMG3M.js +0 -57
- package/dist/_rollupPluginBabelHelpers-C_TsMG3M.js.map +0 -1
- package/dist/components/hds/advanced-table/helpers.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"th-button-sort.js","sources":["../../../../src/components/hds/advanced-table/th-button-sort.
|
|
1
|
+
{"version":3,"file":"th-button-sort.js","sources":["../../../../src/components/hds/advanced-table/th-button-sort.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { guidFor } from '@ember/object/internals';\n\nimport {\n HdsAdvancedTableThSortOrderIconValues,\n HdsAdvancedTableThSortOrderLabelValues,\n HdsAdvancedTableThSortOrderValues,\n} from './types.ts';\nimport type {\n HdsAdvancedTableThSortOrder,\n HdsAdvancedTableThSortOrderIcons,\n HdsAdvancedTableThSortOrderLabels,\n} from './types.ts';\nexport interface HdsAdvancedTableThButtonSortSignature {\n Args: {\n labelId?: string;\n onClick?: () => void;\n sortOrder?: HdsAdvancedTableThSortOrder;\n };\n Element: HTMLButtonElement;\n}\n\nconst NOOP = () => {};\n\nexport default class HdsAdvancedTableThButtonSort extends Component<HdsAdvancedTableThButtonSortSignature> {\n // Generates a unique ID for the (hidden) \"label prefix/suffix\" <span> elements\n private _prefixLabelId = 'prefix-' + guidFor(this);\n private _suffixLabelId = 'suffix-' + guidFor(this);\n\n get icon(): HdsAdvancedTableThSortOrderIcons {\n switch (this.args.sortOrder) {\n case HdsAdvancedTableThSortOrderValues.Asc:\n return HdsAdvancedTableThSortOrderIconValues.ArrowUp;\n case HdsAdvancedTableThSortOrderValues.Desc:\n return HdsAdvancedTableThSortOrderIconValues.ArrowDown;\n default:\n return HdsAdvancedTableThSortOrderIconValues.SwapVertical;\n }\n }\n\n // Determines the label (suffix) to use in the `aria-labelledby` attribute of the button,\n // used to indicate what will happen if the user clicks on the button\n get sortOrderLabel(): HdsAdvancedTableThSortOrderLabels {\n return this.args.sortOrder === HdsAdvancedTableThSortOrderValues.Asc\n ? HdsAdvancedTableThSortOrderLabelValues.Desc\n : HdsAdvancedTableThSortOrderLabelValues.Asc;\n }\n\n get onClick(): () => void {\n const { onClick } = this.args;\n\n if (typeof onClick === 'function') {\n return onClick;\n } else {\n return NOOP;\n }\n }\n\n get classNames(): string {\n const classes = [\n 'hds-advanced-table__th-button',\n 'hds-advanced-table__th-button--sort',\n ];\n\n // add a class based on the @sortOrder argument\n if (\n this.args.sortOrder === HdsAdvancedTableThSortOrderValues.Asc ||\n this.args.sortOrder === HdsAdvancedTableThSortOrderValues.Desc\n ) {\n classes.push(`hds-advanced-table__th-button--is-sorted`);\n }\n\n return classes.join(' ');\n }\n}\n"],"names":["NOOP","HdsAdvancedTableThButtonSort","Component","_prefixLabelId","guidFor","_suffixLabelId","icon","args","sortOrder","HdsAdvancedTableThSortOrderValues","Asc","HdsAdvancedTableThSortOrderIconValues","ArrowUp","Desc","ArrowDown","SwapVertical","sortOrderLabel","HdsAdvancedTableThSortOrderLabelValues","onClick","classNames","classes","push","join","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;;;AAAA;AACA;AACA;AACA;;AAwBA,MAAMA,IAAI,GAAGA,MAAM,EAAE;AAEN,MAAMC,4BAA4B,SAASC,SAAS,CAAwC;AACzG;AACQC,EAAAA,cAAc,GAAG,SAAS,GAAGC,OAAO,CAAC,IAAI,CAAC;AAC1CC,EAAAA,cAAc,GAAG,SAAS,GAAGD,OAAO,CAAC,IAAI,CAAC;EAElD,IAAIE,IAAIA,GAAqC;AAC3C,IAAA,QAAQ,IAAI,CAACC,IAAI,CAACC,SAAS;MACzB,KAAKC,iCAAiC,CAACC,GAAG;QACxC,OAAOC,qCAAqC,CAACC,OAAO;MACtD,KAAKH,iCAAiC,CAACI,IAAI;QACzC,OAAOF,qCAAqC,CAACG,SAAS;AACxD,MAAA;QACE,OAAOH,qCAAqC,CAACI,YAAY;AAC7D;AACF;;AAEA;AACA;EACA,IAAIC,cAAcA,GAAsC;AACtD,IAAA,OAAO,IAAI,CAACT,IAAI,CAACC,SAAS,KAAKC,iCAAiC,CAACC,GAAG,GAChEO,sCAAsC,CAACJ,IAAI,GAC3CI,sCAAsC,CAACP,GAAG;AAChD;EAEA,IAAIQ,OAAOA,GAAe;IACxB,MAAM;AAAEA,MAAAA;KAAS,GAAG,IAAI,CAACX,IAAI;AAE7B,IAAA,IAAI,OAAOW,OAAO,KAAK,UAAU,EAAE;AACjC,MAAA,OAAOA,OAAO;AAChB,KAAC,MAAM;AACL,MAAA,OAAOlB,IAAI;AACb;AACF;EAEA,IAAImB,UAAUA,GAAW;AACvB,IAAA,MAAMC,OAAO,GAAG,CACd,+BAA+B,EAC/B,qCAAqC,CACtC;;AAED;AACA,IAAA,IACE,IAAI,CAACb,IAAI,CAACC,SAAS,KAAKC,iCAAiC,CAACC,GAAG,IAC7D,IAAI,CAACH,IAAI,CAACC,SAAS,KAAKC,iCAAiC,CAACI,IAAI,EAC9D;AACAO,MAAAA,OAAO,CAACC,IAAI,CAAC,CAAA,wCAAA,CAA0C,CAAC;AAC1D;AAEA,IAAA,OAAOD,OAAO,CAACE,IAAI,CAAC,GAAG,CAAC;AAC1B;AACF;AAACC,oBAAA,CAAAC,QAAA,EAlDoBvB,4BAA4B,CAAA;;;;"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { a as _defineProperty } from '../../../_rollupPluginBabelHelpers-C_TsMG3M.js';
|
|
2
1
|
import Component from '@glimmer/component';
|
|
3
2
|
import { assert } from '@ember/debug';
|
|
4
3
|
import { guidFor } from '@ember/object/internals';
|
|
@@ -7,12 +6,14 @@ import { setComponentTemplate } from '@ember/component';
|
|
|
7
6
|
|
|
8
7
|
var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n\n<button\n type=\"button\"\n class={{this.classNames}}\n {{hds-tooltip this.tooltip}}\n aria-labelledby=\"{{this._prefixLabelId}} {{@labelId}}\"\n ...attributes\n>\n <span id={{this._prefixLabelId}} class=\"hds-advanced-table__th-button-aria-label-hidden-segment\">More information for</span>\n <Hds::Icon @name=\"info\" />\n</button>");
|
|
9
8
|
|
|
9
|
+
/**
|
|
10
|
+
* Copyright (c) HashiCorp, Inc.
|
|
11
|
+
* SPDX-License-Identifier: MPL-2.0
|
|
12
|
+
*/
|
|
13
|
+
|
|
10
14
|
class HdsAdvancedTableThButtonTooltip extends Component {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
// Generates a unique ID for the (hidden) "label prefix" <span> element
|
|
14
|
-
_defineProperty(this, "_prefixLabelId", guidFor(this));
|
|
15
|
-
}
|
|
15
|
+
// Generates a unique ID for the (hidden) "label prefix" <span> element
|
|
16
|
+
_prefixLabelId = guidFor(this);
|
|
16
17
|
get tooltip() {
|
|
17
18
|
assert(`@tooltip for "HdsAdvancedTableThButtonTooltip" must be a string`, typeof this.args.tooltip === 'string');
|
|
18
19
|
return this.args.tooltip;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"th-button-tooltip.js","sources":["../../../../src/components/hds/advanced-table/th-button-tooltip.
|
|
1
|
+
{"version":3,"file":"th-button-tooltip.js","sources":["../../../../src/components/hds/advanced-table/th-button-tooltip.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\nimport { guidFor } from '@ember/object/internals';\n\nexport interface HdsAdvancedTableThButtonTooltipSignature {\n Args: {\n labelId?: string;\n tooltip: string;\n };\n Element: HTMLButtonElement;\n}\n\nexport default class HdsAdvancedTableThButtonTooltip extends Component<HdsAdvancedTableThButtonTooltipSignature> {\n // Generates a unique ID for the (hidden) \"label prefix\" <span> element\n private _prefixLabelId = guidFor(this);\n\n get tooltip(): string {\n assert(\n `@tooltip for \"HdsAdvancedTableThButtonTooltip\" must be a string`,\n typeof this.args.tooltip === 'string'\n );\n return this.args.tooltip;\n }\n\n get classNames(): string {\n const classes = [\n 'hds-advanced-table__th-button',\n 'hds-advanced-table__th-button--tooltip',\n ];\n\n return classes.join(' ');\n }\n}\n"],"names":["HdsAdvancedTableThButtonTooltip","Component","_prefixLabelId","guidFor","tooltip","assert","args","classNames","classes","join","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;;;AAAA;AACA;AACA;AACA;;AAce,MAAMA,+BAA+B,SAASC,SAAS,CAA2C;AAC/G;AACQC,EAAAA,cAAc,GAAGC,OAAO,CAAC,IAAI,CAAC;EAEtC,IAAIC,OAAOA,GAAW;IACpBC,MAAM,CACJ,CAAiE,+DAAA,CAAA,EACjE,OAAO,IAAI,CAACC,IAAI,CAACF,OAAO,KAAK,QAC/B,CAAC;AACD,IAAA,OAAO,IAAI,CAACE,IAAI,CAACF,OAAO;AAC1B;EAEA,IAAIG,UAAUA,GAAW;AACvB,IAAA,MAAMC,OAAO,GAAG,CACd,+BAA+B,EAC/B,wCAAwC,CACzC;AAED,IAAA,OAAOA,OAAO,CAACC,IAAI,CAAC,GAAG,CAAC;AAC1B;AACF;AAACC,oBAAA,CAAAC,QAAA,EApBoBX,+BAA+B,CAAA;;;;"}
|
|
@@ -1,23 +1,29 @@
|
|
|
1
|
-
import { _ as _applyDecoratedDescriptor, b as _initializerDefineProperty, a as _defineProperty } from '../../../_rollupPluginBabelHelpers-C_TsMG3M.js';
|
|
2
1
|
import Component from '@glimmer/component';
|
|
3
2
|
import { action } from '@ember/object';
|
|
4
3
|
import { guidFor } from '@ember/object/internals';
|
|
5
4
|
import { tracked } from '@glimmer/tracking';
|
|
6
5
|
import { HdsAdvancedTableThSortOrderLabelValues, HdsAdvancedTableThSortOrderValues } from './types.js';
|
|
7
6
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
7
|
+
import { g, i, n } from 'decorator-transforms/runtime';
|
|
8
8
|
import { setComponentTemplate } from '@ember/component';
|
|
9
9
|
|
|
10
10
|
var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n\n<Hds::AdvancedTable::Th\n class=\"hds-advanced-table__th--is-selectable\"\n aria-sort={{if this.isSortable this.ariaSort}}\n @scope={{@selectionScope}}\n ...attributes\n>\n <div class=\"hds-advanced-table__th-content\">\n <Hds::Form::Checkbox::Base\n id={{this._checkboxId}}\n class=\"hds-advanced-table__checkbox\"\n checked={{@isSelected}}\n aria-label={{this.ariaLabel}}\n {{did-insert this.didInsertCheckbox}}\n {{will-destroy this.willDestroyNode}}\n {{on \"change\" this.onSelectionChange}}\n />\n {{#if this.isSortable}}\n <span id={{this._labelId}} class=\"sr-only\">selection state</span>\n <Hds::AdvancedTable::ThButtonSort\n @sortOrder={{@sortBySelectedOrder}}\n @onClick={{@onClickSortBySelected}}\n @labelId={{this._labelId}}\n />\n {{/if}}\n </div>\n</Hds::AdvancedTable::Th>");
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
12
|
+
/**
|
|
13
|
+
* Copyright (c) HashiCorp, Inc.
|
|
14
|
+
* SPDX-License-Identifier: MPL-2.0
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
class HdsAdvancedTableThSelectable extends Component {
|
|
18
|
+
static {
|
|
19
|
+
g(this.prototype, "_isSelected", [tracked], function () {
|
|
20
|
+
return this.args.isSelected ?? false;
|
|
21
|
+
});
|
|
20
22
|
}
|
|
23
|
+
#_isSelected = (i(this, "_isSelected"), undefined);
|
|
24
|
+
_guid = guidFor(this);
|
|
25
|
+
_checkboxId = `checkbox-${this._guid}`;
|
|
26
|
+
_labelId = `label-${this._guid}`;
|
|
21
27
|
get isSortable() {
|
|
22
28
|
return this.args.onClickSortBySelected !== undefined;
|
|
23
29
|
}
|
|
@@ -50,6 +56,9 @@ let HdsAdvancedTableThSelectable = (_class = class HdsAdvancedTableThSelectable
|
|
|
50
56
|
checkbox.addEventListener('toggle', this.updateAriaLabel.bind(this), true);
|
|
51
57
|
}
|
|
52
58
|
}
|
|
59
|
+
static {
|
|
60
|
+
n(this.prototype, "didInsertCheckbox", [action]);
|
|
61
|
+
}
|
|
53
62
|
willDestroyNode(checkbox) {
|
|
54
63
|
super.willDestroy();
|
|
55
64
|
const {
|
|
@@ -62,6 +71,9 @@ let HdsAdvancedTableThSelectable = (_class = class HdsAdvancedTableThSelectable
|
|
|
62
71
|
}
|
|
63
72
|
}
|
|
64
73
|
}
|
|
74
|
+
static {
|
|
75
|
+
n(this.prototype, "willDestroyNode", [action]);
|
|
76
|
+
}
|
|
65
77
|
onSelectionChange(event) {
|
|
66
78
|
// Assert event.target as HdsFormCheckboxBaseSignature['Element'] to access the 'checked' property
|
|
67
79
|
const target = event.target;
|
|
@@ -73,19 +85,15 @@ let HdsAdvancedTableThSelectable = (_class = class HdsAdvancedTableThSelectable
|
|
|
73
85
|
onSelectionChange(target, this.args.selectionKey);
|
|
74
86
|
}
|
|
75
87
|
}
|
|
88
|
+
static {
|
|
89
|
+
n(this.prototype, "onSelectionChange", [action]);
|
|
90
|
+
}
|
|
76
91
|
updateAriaLabel(event) {
|
|
77
92
|
// Assert event.target as HTMLInputElement to access the 'checked' property
|
|
78
93
|
const target = event.target;
|
|
79
94
|
this._isSelected = target.checked;
|
|
80
95
|
}
|
|
81
|
-
}
|
|
82
|
-
configurable: true,
|
|
83
|
-
enumerable: true,
|
|
84
|
-
writable: true,
|
|
85
|
-
initializer: function () {
|
|
86
|
-
return this.args.isSelected ?? false;
|
|
87
|
-
}
|
|
88
|
-
}), _applyDecoratedDescriptor(_class.prototype, "didInsertCheckbox", [action], Object.getOwnPropertyDescriptor(_class.prototype, "didInsertCheckbox"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "willDestroyNode", [action], Object.getOwnPropertyDescriptor(_class.prototype, "willDestroyNode"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "onSelectionChange", [action], Object.getOwnPropertyDescriptor(_class.prototype, "onSelectionChange"), _class.prototype), _class);
|
|
96
|
+
}
|
|
89
97
|
setComponentTemplate(TEMPLATE, HdsAdvancedTableThSelectable);
|
|
90
98
|
|
|
91
99
|
export { HdsAdvancedTableThSelectable as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"th-selectable.js","sources":["../../../../src/components/hds/advanced-table/th-selectable.
|
|
1
|
+
{"version":3,"file":"th-selectable.js","sources":["../../../../src/components/hds/advanced-table/th-selectable.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { action } from '@ember/object';\nimport { guidFor } from '@ember/object/internals';\nimport { tracked } from '@glimmer/tracking';\n\nimport {\n HdsAdvancedTableThSortOrderValues,\n HdsAdvancedTableThSortOrderLabelValues,\n} from './types.ts';\nimport type { HdsFormCheckboxBaseSignature } from '../form/checkbox/base';\nimport type {\n HdsAdvancedTableScope,\n HdsAdvancedTableThSortOrder,\n HdsAdvancedTableThSortOrderLabels,\n} from './types.ts';\nimport type { HdsAdvancedTableThSignature } from './th.ts';\n\nexport interface HdsAdvancedTableThSelectableSignature {\n Args: {\n didInsert?: (\n checkbox: HdsFormCheckboxBaseSignature['Element'],\n selectionKey?: string\n ) => void;\n isSelected?: boolean;\n onClickSortBySelected?: () => void;\n onSelectionChange?: (\n target: HdsFormCheckboxBaseSignature['Element'],\n selectionKey: string | undefined\n ) => void;\n selectionAriaLabelSuffix?: string;\n selectionKey?: string;\n selectionScope?: HdsAdvancedTableScope;\n sortBySelectedOrder?: HdsAdvancedTableThSortOrder;\n willDestroy?: (selectionKey?: string) => void;\n };\n Element: HdsAdvancedTableThSignature['Element'];\n}\n\nexport default class HdsAdvancedTableThSelectable extends Component<HdsAdvancedTableThSelectableSignature> {\n @tracked private _isSelected = this.args.isSelected ?? false;\n\n private _guid = guidFor(this);\n private _checkboxId = `checkbox-${this._guid}`;\n private _labelId = `label-${this._guid}`;\n\n get isSortable(): boolean {\n return this.args.onClickSortBySelected !== undefined;\n }\n\n get ariaLabel(): string {\n const { selectionAriaLabelSuffix = 'row' } = this.args;\n return `Select ${selectionAriaLabelSuffix}`;\n }\n\n get ariaSort(): HdsAdvancedTableThSortOrderLabels | undefined {\n switch (this.args.sortBySelectedOrder) {\n case HdsAdvancedTableThSortOrderValues.Asc:\n return HdsAdvancedTableThSortOrderLabelValues.Asc;\n case HdsAdvancedTableThSortOrderValues.Desc:\n return HdsAdvancedTableThSortOrderLabelValues.Desc;\n default:\n // none is the default per the spec.\n return HdsAdvancedTableThSortOrderLabelValues.None;\n }\n }\n\n @action\n didInsertCheckbox(checkbox: HdsFormCheckboxBaseSignature['Element']): void {\n const { didInsert } = this.args;\n if (typeof didInsert === 'function') {\n didInsert(checkbox, this.args.selectionKey);\n // we need to use a custom event listener here because changing the `checked` value via JS\n // (and this happens with the \"select all\") doesn't trigger the `change` event\n // and consequently the `aria-label` won't be automatically updated (and so we have to force it)\n checkbox.addEventListener(\n 'toggle',\n this.updateAriaLabel.bind(this),\n true\n );\n }\n }\n\n @action\n willDestroyNode(checkbox: HdsFormCheckboxBaseSignature['Element']): void {\n super.willDestroy();\n const { willDestroy } = this.args;\n if (typeof willDestroy === 'function') {\n willDestroy(this.args.selectionKey);\n if (checkbox) {\n checkbox.removeEventListener(\n 'toggle',\n this.updateAriaLabel.bind(this),\n true\n );\n }\n }\n }\n\n @action\n onSelectionChange(event: Event): void {\n // Assert event.target as HdsFormCheckboxBaseSignature['Element'] to access the 'checked' property\n const target = event.target as HdsFormCheckboxBaseSignature['Element'];\n this._isSelected = target.checked;\n const { onSelectionChange } = this.args;\n if (typeof onSelectionChange === 'function') {\n onSelectionChange(target, this.args.selectionKey);\n }\n }\n\n updateAriaLabel(event: Event): void {\n // Assert event.target as HTMLInputElement to access the 'checked' property\n const target = event.target as HdsFormCheckboxBaseSignature['Element'];\n this._isSelected = target.checked;\n }\n}\n"],"names":["HdsAdvancedTableThSelectable","Component","g","prototype","tracked","args","isSelected","i","void 0","_guid","guidFor","_checkboxId","_labelId","isSortable","onClickSortBySelected","undefined","ariaLabel","selectionAriaLabelSuffix","ariaSort","sortBySelectedOrder","HdsAdvancedTableThSortOrderValues","Asc","HdsAdvancedTableThSortOrderLabelValues","Desc","None","didInsertCheckbox","checkbox","didInsert","selectionKey","addEventListener","updateAriaLabel","bind","n","action","willDestroyNode","willDestroy","removeEventListener","onSelectionChange","event","target","_isSelected","checked","setComponentTemplate","TEMPLATE"],"mappings":"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"}
|
|
@@ -1,28 +1,33 @@
|
|
|
1
|
-
import { _ as _applyDecoratedDescriptor, a as _defineProperty, b as _initializerDefineProperty } from '../../../_rollupPluginBabelHelpers-C_TsMG3M.js';
|
|
2
1
|
import Component from '@glimmer/component';
|
|
3
2
|
import { guidFor } from '@ember/object/internals';
|
|
4
3
|
import { assert } from '@ember/debug';
|
|
5
4
|
import { action } from '@ember/object';
|
|
6
5
|
import { tracked } from '@glimmer/tracking';
|
|
7
6
|
import { focusable } from 'tabbable';
|
|
8
|
-
import {
|
|
9
|
-
import { onFocusTrapDeactivate
|
|
7
|
+
import { HdsAdvancedTableThSortOrderLabelValues, HdsAdvancedTableThSortOrderValues, HdsAdvancedTableHorizontalAlignmentValues } from './types.js';
|
|
8
|
+
import { onFocusTrapDeactivate } from '../../../modifiers/hds-advanced-table-cell/dom-management.js';
|
|
10
9
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
10
|
+
import { g, i, n } from 'decorator-transforms/runtime';
|
|
11
11
|
import { setComponentTemplate } from '@ember/component';
|
|
12
12
|
|
|
13
|
-
var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<div\n class={{this.classNames}}\n aria-sort={{this.ariaSort}}\n role=\"columnheader\"\n aria-rowspan={{@rowspan}}\n aria-colspan={{@colspan}}\n {{
|
|
13
|
+
var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<div\n class={{this.classNames}}\n aria-sort={{this.ariaSort}}\n role=\"columnheader\"\n aria-rowspan={{@rowspan}}\n aria-colspan={{@colspan}}\n {{hds-advanced-table-cell\n handleEnableFocusTrap=this.enableFocusTrap\n shouldTrapFocus=this._shouldTrapFocus\n setCellElement=this.setElement\n }}\n {{! @glint-expect-error - https://github.com/josemarluedke/ember-focus-trap/issues/86 }}\n {{focus-trap\n isActive=this._shouldTrapFocus\n focusTrapOptions=(hash\n onDeactivate=this.onFocusTrapDeactivate initialFocus=this.getInitialFocus clickOutsideDeactivates=true\n )\n }}\n ...attributes\n>\n <div class=\"hds-advanced-table__th-content\">\n <span id={{this._labelId}} class=\"hds-typography-body-200 hds-font-weight-semibold\">{{yield}}</span>\n {{#if @tooltip}}\n <Hds::AdvancedTable::ThButtonTooltip @tooltip={{@tooltip}} @labelId={{this._labelId}} />\n {{/if}}\n <Hds::AdvancedTable::ThButtonSort @sortOrder={{@sortOrder}} @onClick={{@onClickSort}} @labelId={{this._labelId}} />\n </div>\n</div>");
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Copyright (c) HashiCorp, Inc.
|
|
17
|
+
* SPDX-License-Identifier: MPL-2.0
|
|
18
|
+
*/
|
|
14
19
|
|
|
15
|
-
var _class, _descriptor;
|
|
16
20
|
const ALIGNMENTS = Object.values(HdsAdvancedTableHorizontalAlignmentValues);
|
|
17
21
|
const DEFAULT_ALIGN = HdsAdvancedTableHorizontalAlignmentValues.Left;
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
22
|
+
class HdsAdvancedTableThSort extends Component {
|
|
23
|
+
_labelId = guidFor(this);
|
|
24
|
+
_element;
|
|
25
|
+
static {
|
|
26
|
+
g(this.prototype, "_shouldTrapFocus", [tracked], function () {
|
|
27
|
+
return false;
|
|
28
|
+
});
|
|
25
29
|
}
|
|
30
|
+
#_shouldTrapFocus = (i(this, "_shouldTrapFocus"), undefined);
|
|
26
31
|
get ariaSort() {
|
|
27
32
|
switch (this.args.sortOrder) {
|
|
28
33
|
case HdsAdvancedTableThSortOrderValues.Asc:
|
|
@@ -54,41 +59,29 @@ let HdsAdvancedTableThSort = (_class = class HdsAdvancedTableThSort extends Comp
|
|
|
54
59
|
this._shouldTrapFocus = false;
|
|
55
60
|
onFocusTrapDeactivate(this._element);
|
|
56
61
|
}
|
|
62
|
+
static {
|
|
63
|
+
n(this.prototype, "onFocusTrapDeactivate", [action]);
|
|
64
|
+
}
|
|
57
65
|
enableFocusTrap() {
|
|
58
66
|
this._shouldTrapFocus = true;
|
|
59
67
|
}
|
|
68
|
+
static {
|
|
69
|
+
n(this.prototype, "enableFocusTrap", [action]);
|
|
70
|
+
}
|
|
60
71
|
getInitialFocus() {
|
|
61
72
|
const cellFocusableElements = focusable(this._element);
|
|
62
73
|
return cellFocusableElements[0];
|
|
63
74
|
}
|
|
64
|
-
|
|
65
|
-
this.
|
|
66
|
-
didInsertGridCell(element);
|
|
67
|
-
element.addEventListener('keydown', event => {
|
|
68
|
-
handleGridCellKeyPress(event, this.enableFocusTrap);
|
|
69
|
-
});
|
|
70
|
-
this._observer = new MutationObserver(() => {
|
|
71
|
-
updateTabbableChildren(this._element, this._shouldTrapFocus);
|
|
72
|
-
});
|
|
73
|
-
this._observer.observe(this._element, {
|
|
74
|
-
childList: true,
|
|
75
|
-
subtree: true
|
|
76
|
-
});
|
|
75
|
+
static {
|
|
76
|
+
n(this.prototype, "getInitialFocus", [action]);
|
|
77
77
|
}
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
if (this._observer) {
|
|
81
|
-
this._observer.disconnect();
|
|
82
|
-
}
|
|
78
|
+
setElement(element) {
|
|
79
|
+
this._element = element;
|
|
83
80
|
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
enumerable: true,
|
|
87
|
-
writable: true,
|
|
88
|
-
initializer: function () {
|
|
89
|
-
return false;
|
|
81
|
+
static {
|
|
82
|
+
n(this.prototype, "setElement", [action]);
|
|
90
83
|
}
|
|
91
|
-
}
|
|
84
|
+
}
|
|
92
85
|
setComponentTemplate(TEMPLATE, HdsAdvancedTableThSort);
|
|
93
86
|
|
|
94
87
|
export { ALIGNMENTS, DEFAULT_ALIGN, HdsAdvancedTableThSort as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"th-sort.js","sources":["../../../../src/components/hds/advanced-table/th-sort.
|
|
1
|
+
{"version":3,"file":"th-sort.js","sources":["../../../../src/components/hds/advanced-table/th-sort.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { guidFor } from '@ember/object/internals';\nimport { assert } from '@ember/debug';\nimport { action } from '@ember/object';\nimport { tracked } from '@glimmer/tracking';\nimport { focusable, type FocusableElement } from 'tabbable';\n\nimport {\n HdsAdvancedTableHorizontalAlignmentValues,\n HdsAdvancedTableThSortOrderValues,\n HdsAdvancedTableThSortOrderLabelValues,\n} from './types.ts';\nimport type {\n HdsAdvancedTableHorizontalAlignment,\n HdsAdvancedTableThSortOrder,\n HdsAdvancedTableThSortOrderLabels,\n} from './types.ts';\nimport type { HdsAdvancedTableThButtonSortSignature } from './th-button-sort.ts';\nimport { onFocusTrapDeactivate } from '../../../modifiers/hds-advanced-table-cell/dom-management.ts';\n\nexport const ALIGNMENTS: string[] = Object.values(\n HdsAdvancedTableHorizontalAlignmentValues\n);\nexport const DEFAULT_ALIGN = HdsAdvancedTableHorizontalAlignmentValues.Left;\n\nexport interface HdsAdvancedTableThSortSignature {\n Args: {\n align?: HdsAdvancedTableHorizontalAlignment;\n onClickSort?: HdsAdvancedTableThButtonSortSignature['Args']['onClick'];\n sortOrder?: HdsAdvancedTableThSortOrder;\n tooltip?: string;\n rowspan?: number;\n colspan?: number;\n };\n Blocks: {\n default?: [];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsAdvancedTableThSort extends Component<HdsAdvancedTableThSortSignature> {\n private _labelId = guidFor(this);\n private _element!: HTMLDivElement;\n @tracked private _shouldTrapFocus = false;\n\n get ariaSort(): HdsAdvancedTableThSortOrderLabels {\n switch (this.args.sortOrder) {\n case HdsAdvancedTableThSortOrderValues.Asc:\n return HdsAdvancedTableThSortOrderLabelValues.Asc;\n case HdsAdvancedTableThSortOrderValues.Desc:\n return HdsAdvancedTableThSortOrderLabelValues.Desc;\n default:\n // none is the default per the spec.\n return HdsAdvancedTableThSortOrderLabelValues.None;\n }\n }\n\n get align(): HdsAdvancedTableHorizontalAlignment {\n const { align = DEFAULT_ALIGN } = this.args;\n\n assert(\n `@align for \"Hds::Table\" must be one of the following: ${ALIGNMENTS.join(\n ', '\n )}; received: ${align}`,\n ALIGNMENTS.includes(align)\n );\n return align;\n }\n\n get classNames(): string {\n const classes = ['hds-advanced-table__th', 'hds-advanced-table__th--sort'];\n\n // add a class based on the @align argument\n if (this.align) {\n classes.push(`hds-advanced-table__th--align-${this.align}`);\n }\n\n return classes.join(' ');\n }\n\n @action onFocusTrapDeactivate(): void {\n this._shouldTrapFocus = false;\n onFocusTrapDeactivate(this._element);\n }\n\n @action enableFocusTrap(): void {\n this._shouldTrapFocus = true;\n }\n\n @action getInitialFocus(): FocusableElement | undefined {\n const cellFocusableElements = focusable(this._element);\n return cellFocusableElements[0];\n }\n\n @action setElement(element: HTMLDivElement): void {\n this._element = element;\n }\n}\n"],"names":["ALIGNMENTS","Object","values","HdsAdvancedTableHorizontalAlignmentValues","DEFAULT_ALIGN","Left","HdsAdvancedTableThSort","Component","_labelId","guidFor","_element","g","prototype","tracked","i","void 0","ariaSort","args","sortOrder","HdsAdvancedTableThSortOrderValues","Asc","HdsAdvancedTableThSortOrderLabelValues","Desc","None","align","assert","join","includes","classNames","classes","push","onFocusTrapDeactivate","_shouldTrapFocus","n","action","enableFocusTrap","getInitialFocus","cellFocusableElements","focusable","setElement","element","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;;AAsBO,MAAMA,UAAoB,GAAGC,MAAM,CAACC,MAAM,CAC/CC,yCACF;AACaC,MAAAA,aAAa,GAAGD,yCAAyC,CAACE;AAiBxD,MAAMC,sBAAsB,SAASC,SAAS,CAAkC;AACrFC,EAAAA,QAAQ,GAAGC,OAAO,CAAC,IAAI,CAAC;EACxBC,QAAQ;AAAkB,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,kBAAA,EAAA,CACjCC,OAAO,CAAA,EAAA,YAAA;AAAA,MAAA,OAA4B,KAAK;AAAA,KAAA,CAAA;AAAA;AAAA,EAAA,iBAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,kBAAA,CAAA,EAAAC,SAAA;EAEzC,IAAIC,QAAQA,GAAsC;AAChD,IAAA,QAAQ,IAAI,CAACC,IAAI,CAACC,SAAS;MACzB,KAAKC,iCAAiC,CAACC,GAAG;QACxC,OAAOC,sCAAsC,CAACD,GAAG;MACnD,KAAKD,iCAAiC,CAACG,IAAI;QACzC,OAAOD,sCAAsC,CAACC,IAAI;AACpD,MAAA;AACE;QACA,OAAOD,sCAAsC,CAACE,IAAI;AACtD;AACF;EAEA,IAAIC,KAAKA,GAAwC;IAC/C,MAAM;AAAEA,MAAAA,KAAK,GAAGpB;KAAe,GAAG,IAAI,CAACa,IAAI;AAE3CQ,IAAAA,MAAM,CACJ,CAAyDzB,sDAAAA,EAAAA,UAAU,CAAC0B,IAAI,CACtE,IACF,CAAC,CAAA,YAAA,EAAeF,KAAK,CAAA,CAAE,EACvBxB,UAAU,CAAC2B,QAAQ,CAACH,KAAK,CAC3B,CAAC;AACD,IAAA,OAAOA,KAAK;AACd;EAEA,IAAII,UAAUA,GAAW;AACvB,IAAA,MAAMC,OAAO,GAAG,CAAC,wBAAwB,EAAE,8BAA8B,CAAC;;AAE1E;IACA,IAAI,IAAI,CAACL,KAAK,EAAE;MACdK,OAAO,CAACC,IAAI,CAAC,CAAA,8BAAA,EAAiC,IAAI,CAACN,KAAK,EAAE,CAAC;AAC7D;AAEA,IAAA,OAAOK,OAAO,CAACH,IAAI,CAAC,GAAG,CAAC;AAC1B;AAEQK,EAAAA,qBAAqBA,GAAS;IACpC,IAAI,CAACC,gBAAgB,GAAG,KAAK;AAC7BD,IAAAA,qBAAqB,CAAC,IAAI,CAACrB,QAAQ,CAAC;AACtC;AAAC,EAAA;IAAAuB,CAAA,CAAA,IAAA,CAAArB,SAAA,EAAA,uBAAA,EAAA,CAHAsB,MAAM,CAAA,CAAA;AAAA;AAKCC,EAAAA,eAAeA,GAAS;IAC9B,IAAI,CAACH,gBAAgB,GAAG,IAAI;AAC9B;AAAC,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAArB,SAAA,EAAA,iBAAA,EAAA,CAFAsB,MAAM,CAAA,CAAA;AAAA;AAICE,EAAAA,eAAeA,GAAiC;AACtD,IAAA,MAAMC,qBAAqB,GAAGC,SAAS,CAAC,IAAI,CAAC5B,QAAQ,CAAC;IACtD,OAAO2B,qBAAqB,CAAC,CAAC,CAAC;AACjC;AAAC,EAAA;IAAAJ,CAAA,CAAA,IAAA,CAAArB,SAAA,EAAA,iBAAA,EAAA,CAHAsB,MAAM,CAAA,CAAA;AAAA;EAKCK,UAAUA,CAACC,OAAuB,EAAQ;IAChD,IAAI,CAAC9B,QAAQ,GAAG8B,OAAO;AACzB;AAAC,EAAA;IAAAP,CAAA,CAAA,IAAA,CAAArB,SAAA,EAAA,YAAA,EAAA,CAFAsB,MAAM,CAAA,CAAA;AAAA;AAGT;AAACO,oBAAA,CAAAC,QAAA,EAzDoBpC,sBAAsB,CAAA;;;;"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { _ as _applyDecoratedDescriptor, a as _defineProperty, b as _initializerDefineProperty } from '../../../_rollupPluginBabelHelpers-C_TsMG3M.js';
|
|
2
1
|
import Component from '@glimmer/component';
|
|
3
2
|
import { guidFor } from '@ember/object/internals';
|
|
4
3
|
import { assert } from '@ember/debug';
|
|
@@ -6,23 +5,29 @@ import { action } from '@ember/object';
|
|
|
6
5
|
import { tracked } from '@glimmer/tracking';
|
|
7
6
|
import { focusable } from 'tabbable';
|
|
8
7
|
import { HdsAdvancedTableHorizontalAlignmentValues } from './types.js';
|
|
9
|
-
import { onFocusTrapDeactivate
|
|
8
|
+
import { onFocusTrapDeactivate } from '../../../modifiers/hds-advanced-table-cell/dom-management.js';
|
|
10
9
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
10
|
+
import { g, i, n } from 'decorator-transforms/runtime';
|
|
11
11
|
import { setComponentTemplate } from '@ember/component';
|
|
12
12
|
|
|
13
|
-
var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<div\n class={{this.classNames}}\n role={{this.role}}\n aria-rowspan={{@rowspan}}\n aria-colspan={{@colspan}}\n aria-describedby={{@parentId}}\n {{style grid-row=this.rowspan grid-column=this.colspan padding-left=this.paddingLeft}}\n {{
|
|
13
|
+
var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<div\n class={{this.classNames}}\n role={{this.role}}\n aria-rowspan={{@rowspan}}\n aria-colspan={{@colspan}}\n aria-describedby={{@parentId}}\n {{style grid-row=this.rowspan grid-column=this.colspan padding-left=this.paddingLeft}}\n {{hds-advanced-table-cell\n handleEnableFocusTrap=this.enableFocusTrap\n shouldTrapFocus=this._shouldTrapFocus\n setCellElement=this.setElement\n }}\n {{! @glint-expect-error - https://github.com/josemarluedke/ember-focus-trap/issues/86 }}\n {{focus-trap\n isActive=this._shouldTrapFocus\n focusTrapOptions=(hash\n onDeactivate=this.onFocusTrapDeactivate initialFocus=this.getInitialFocus clickOutsideDeactivates=true\n )\n }}\n ...attributes\n>\n {{#if @isVisuallyHidden}}\n <span class=\"sr-only\">{{yield}}</span>\n {{else}}\n {{#if @tooltip}}\n <div class=\"hds-advanced-table__th-content\">\n {{#if @isExpandable}}\n <Hds::AdvancedTable::ThButtonExpand\n @labelId={{this._labelId}}\n @onToggle={{@onClickToggle}}\n @isExpanded={{@isExpanded}}\n />\n {{/if}}\n <span id={{this._labelId}} class=\"hds-typography-body-200 hds-font-weight-semibold\">{{yield}}</span>\n <Hds::AdvancedTable::ThButtonTooltip @tooltip={{@tooltip}} @labelId={{this._labelId}} />\n </div>\n {{else}}\n <div class=\"hds-advanced-table__th-content\">\n {{#if @isExpandable}}\n <Hds::AdvancedTable::ThButtonExpand\n @labelId={{this._labelId}}\n @onToggle={{@onClickToggle}}\n @isExpanded={{@isExpanded}}\n />\n {{/if}}\n <span class=\"hds-typography-body-200 hds-font-weight-semibold\" id={{this._labelId}}>{{yield}}</span>\n </div>\n {{/if}}\n {{/if}}\n</div>");
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Copyright (c) HashiCorp, Inc.
|
|
17
|
+
* SPDX-License-Identifier: MPL-2.0
|
|
18
|
+
*/
|
|
14
19
|
|
|
15
|
-
var _class, _descriptor;
|
|
16
20
|
const ALIGNMENTS = Object.values(HdsAdvancedTableHorizontalAlignmentValues);
|
|
17
21
|
const DEFAULT_ALIGN = HdsAdvancedTableHorizontalAlignmentValues.Left;
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
22
|
+
class HdsAdvancedTableTh extends Component {
|
|
23
|
+
_labelId = this.args.newLabel ? this.args.newLabel : guidFor(this);
|
|
24
|
+
_element;
|
|
25
|
+
static {
|
|
26
|
+
g(this.prototype, "_shouldTrapFocus", [tracked], function () {
|
|
27
|
+
return false;
|
|
28
|
+
});
|
|
25
29
|
}
|
|
30
|
+
#_shouldTrapFocus = (i(this, "_shouldTrapFocus"), undefined);
|
|
26
31
|
get scope() {
|
|
27
32
|
const {
|
|
28
33
|
scope = 'col'
|
|
@@ -71,41 +76,29 @@ let HdsAdvancedTableTh = (_class = class HdsAdvancedTableTh extends Component {
|
|
|
71
76
|
this._shouldTrapFocus = false;
|
|
72
77
|
onFocusTrapDeactivate(this._element);
|
|
73
78
|
}
|
|
79
|
+
static {
|
|
80
|
+
n(this.prototype, "onFocusTrapDeactivate", [action]);
|
|
81
|
+
}
|
|
74
82
|
enableFocusTrap() {
|
|
75
83
|
this._shouldTrapFocus = true;
|
|
76
84
|
}
|
|
85
|
+
static {
|
|
86
|
+
n(this.prototype, "enableFocusTrap", [action]);
|
|
87
|
+
}
|
|
77
88
|
getInitialFocus() {
|
|
78
89
|
const cellFocusableElements = focusable(this._element);
|
|
79
90
|
return cellFocusableElements[0];
|
|
80
91
|
}
|
|
81
|
-
|
|
82
|
-
this.
|
|
83
|
-
didInsertGridCell(element);
|
|
84
|
-
element.addEventListener('keydown', event => {
|
|
85
|
-
handleGridCellKeyPress(event, this.enableFocusTrap);
|
|
86
|
-
});
|
|
87
|
-
this._observer = new MutationObserver(() => {
|
|
88
|
-
updateTabbableChildren(this._element, this._shouldTrapFocus);
|
|
89
|
-
});
|
|
90
|
-
this._observer.observe(this._element, {
|
|
91
|
-
childList: true,
|
|
92
|
-
subtree: true
|
|
93
|
-
});
|
|
92
|
+
static {
|
|
93
|
+
n(this.prototype, "getInitialFocus", [action]);
|
|
94
94
|
}
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
if (this._observer) {
|
|
98
|
-
this._observer.disconnect();
|
|
99
|
-
}
|
|
95
|
+
setElement(element) {
|
|
96
|
+
this._element = element;
|
|
100
97
|
}
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
enumerable: true,
|
|
104
|
-
writable: true,
|
|
105
|
-
initializer: function () {
|
|
106
|
-
return false;
|
|
98
|
+
static {
|
|
99
|
+
n(this.prototype, "setElement", [action]);
|
|
107
100
|
}
|
|
108
|
-
}
|
|
101
|
+
}
|
|
109
102
|
setComponentTemplate(TEMPLATE, HdsAdvancedTableTh);
|
|
110
103
|
|
|
111
104
|
export { ALIGNMENTS, DEFAULT_ALIGN, HdsAdvancedTableTh as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"th.js","sources":["../../../../src/components/hds/advanced-table/th.hbs","../../../../src/components/hds/advanced-table/th.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<div\\n class={{this.classNames}}\\n role={{this.role}}\\n aria-rowspan={{@rowspan}}\\n aria-colspan={{@colspan}}\\n aria-describedby={{@parentId}}\\n {{style grid-row=this.rowspan grid-column=this.colspan padding-left=this.paddingLeft}}\\n {{did-insert this.didInsert}}\\n {{will-destroy this.willDestroy}}\\n {{! @glint-expect-error - https://github.com/josemarluedke/ember-focus-trap/issues/86 }}\\n {{focus-trap\\n isActive=this._shouldTrapFocus\\n shouldSelfFocus=true\\n focusTrapOptions=(hash\\n onDeactivate=this.onFocusTrapDeactivate initialFocus=this.getInitialFocus clickOutsideDeactivates=true\\n )\\n }}\\n ...attributes\\n>\\n {{#if @isVisuallyHidden}}\\n <span class=\\\"sr-only\\\">{{yield}}</span>\\n {{else}}\\n {{#if @tooltip}}\\n <div class=\\\"hds-advanced-table__th-content\\\">\\n {{#if @isExpandable}}\\n <Hds::AdvancedTable::ThButtonExpand\\n @labelId={{this._labelId}}\\n @onToggle={{@onClickToggle}}\\n @isExpanded={{@isExpanded}}\\n />\\n {{/if}}\\n <span id={{this._labelId}} class=\\\"hds-typography-body-200 hds-font-weight-semibold\\\">{{yield}}</span>\\n <Hds::AdvancedTable::ThButtonTooltip @tooltip={{@tooltip}} @labelId={{this._labelId}} />\\n </div>\\n {{else}}\\n <div class=\\\"hds-advanced-table__th-content\\\">\\n {{#if @isExpandable}}\\n <Hds::AdvancedTable::ThButtonExpand\\n @labelId={{this._labelId}}\\n @onToggle={{@onClickToggle}}\\n @isExpanded={{@isExpanded}}\\n />\\n {{/if}}\\n <span class=\\\"hds-typography-body-200 hds-font-weight-semibold\\\" id={{this._labelId}}>{{yield}}</span>\\n </div>\\n {{/if}}\\n {{/if}}\\n</div>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { guidFor } from '@ember/object/internals';\nimport { assert } from '@ember/debug';\nimport { action } from '@ember/object';\nimport { tracked } from '@glimmer/tracking';\nimport { focusable, type FocusableElement } from 'tabbable';\n\nimport type {\n HdsAdvancedTableHorizontalAlignment,\n HdsAdvancedTableScope,\n} from './types.ts';\nimport { HdsAdvancedTableHorizontalAlignmentValues } from './types.ts';\nimport {\n didInsertGridCell,\n handleGridCellKeyPress,\n onFocusTrapDeactivate,\n updateTabbableChildren,\n} from './helpers.ts';\n\nexport const ALIGNMENTS: string[] = Object.values(\n HdsAdvancedTableHorizontalAlignmentValues\n);\nexport const DEFAULT_ALIGN = HdsAdvancedTableHorizontalAlignmentValues.Left;\n\nexport interface HdsAdvancedTableThSignature {\n Args: {\n align?: HdsAdvancedTableHorizontalAlignment;\n isVisuallyHidden?: boolean;\n scope?: HdsAdvancedTableScope;\n tooltip?: string;\n rowspan?: number;\n colspan?: number;\n newLabel?: string;\n isExpandable?: boolean;\n parentId?: string;\n onClickToggle?: () => void;\n isExpanded?: boolean;\n depth?: number;\n };\n Blocks: {\n default?: [];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsAdvancedTableTh extends Component<HdsAdvancedTableThSignature> {\n private _labelId = this.args.newLabel ? this.args.newLabel : guidFor(this);\n private _element!: HTMLDivElement;\n @tracked private _shouldTrapFocus = false;\n private _observer: MutationObserver | undefined = undefined;\n\n get scope(): HdsAdvancedTableScope {\n const { scope = 'col' } = this.args;\n return scope;\n }\n\n get role(): string {\n if (this.scope === 'col') return 'columnheader';\n else return 'rowheader';\n }\n\n get align(): HdsAdvancedTableHorizontalAlignment {\n const { align = DEFAULT_ALIGN } = this.args;\n\n assert(\n `@align for \"Hds::Table::Th\" must be one of the following: ${ALIGNMENTS.join(\n ', '\n )}; received: ${align}`,\n ALIGNMENTS.includes(align)\n );\n return align;\n }\n\n // rowspan and colspan have to return 'auto' if not defined because otherwise the style modifier sets grid-area: undefined on the cell, which breaks the grid styles\n get rowspan(): string {\n if (this.args.rowspan) {\n return `span ${this.args.rowspan}`;\n }\n return 'auto';\n }\n\n get colspan(): string | undefined {\n if (this.args.colspan) {\n return `span ${this.args.colspan}`;\n }\n return 'auto';\n }\n\n get paddingLeft(): string | undefined {\n if (this.args.depth) {\n return `calc(${this.args.depth} * 32px + 16px)`;\n }\n }\n\n get classNames(): string {\n const classes = ['hds-advanced-table__th'];\n\n // add a class based on the @align argument\n if (this.align) {\n classes.push(`hds-advanced-table__th--align-${this.align}`);\n }\n\n return classes.join(' ');\n }\n\n @action onFocusTrapDeactivate(): void {\n this._shouldTrapFocus = false;\n onFocusTrapDeactivate(this._element);\n }\n\n @action enableFocusTrap(): void {\n this._shouldTrapFocus = true;\n }\n\n @action getInitialFocus(): FocusableElement | undefined {\n const cellFocusableElements = focusable(this._element);\n return cellFocusableElements[0];\n }\n\n @action\n didInsert(element: HTMLDivElement): void {\n this._element = element;\n didInsertGridCell(element);\n element.addEventListener('keydown', (event: KeyboardEvent) => {\n handleGridCellKeyPress(event, this.enableFocusTrap);\n });\n\n this._observer = new MutationObserver(() => {\n updateTabbableChildren(this._element, this._shouldTrapFocus);\n });\n\n this._observer.observe(this._element, {\n childList: true,\n subtree: true,\n });\n }\n\n @action willDestroy() {\n super.willDestroy();\n if (this._observer) {\n this._observer.disconnect();\n }\n }\n}\n"],"names":["ALIGNMENTS","Object","values","HdsAdvancedTableHorizontalAlignmentValues","DEFAULT_ALIGN","Left","HdsAdvancedTableTh","_class","Component","constructor","args","_defineProperty","newLabel","guidFor","_initializerDefineProperty","_descriptor","undefined","scope","role","align","assert","join","includes","rowspan","colspan","paddingLeft","depth","classNames","classes","push","onFocusTrapDeactivate","_shouldTrapFocus","_element","enableFocusTrap","getInitialFocus","cellFocusableElements","focusable","didInsert","element","didInsertGridCell","addEventListener","event","handleGridCellKeyPress","_observer","MutationObserver","updateTabbableChildren","observe","childList","subtree","willDestroy","disconnect","_applyDecoratedDescriptor","prototype","tracked","configurable","enumerable","writable","initializer","action","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"th.js","sources":["../../../../src/components/hds/advanced-table/th.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { guidFor } from '@ember/object/internals';\nimport { assert } from '@ember/debug';\nimport { action } from '@ember/object';\nimport { tracked } from '@glimmer/tracking';\nimport { focusable, type FocusableElement } from 'tabbable';\n\nimport type {\n HdsAdvancedTableHorizontalAlignment,\n HdsAdvancedTableScope,\n} from './types.ts';\nimport { HdsAdvancedTableHorizontalAlignmentValues } from './types.ts';\nimport { onFocusTrapDeactivate } from '../../../modifiers/hds-advanced-table-cell/dom-management.ts';\n\nexport const ALIGNMENTS: string[] = Object.values(\n HdsAdvancedTableHorizontalAlignmentValues\n);\nexport const DEFAULT_ALIGN = HdsAdvancedTableHorizontalAlignmentValues.Left;\n\nexport interface HdsAdvancedTableThSignature {\n Args: {\n align?: HdsAdvancedTableHorizontalAlignment;\n isVisuallyHidden?: boolean;\n scope?: HdsAdvancedTableScope;\n tooltip?: string;\n rowspan?: number;\n colspan?: number;\n newLabel?: string;\n isExpandable?: boolean;\n parentId?: string;\n onClickToggle?: () => void;\n isExpanded?: boolean;\n depth?: number;\n };\n Blocks: {\n default?: [];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsAdvancedTableTh extends Component<HdsAdvancedTableThSignature> {\n private _labelId = this.args.newLabel ? this.args.newLabel : guidFor(this);\n private _element!: HTMLDivElement;\n @tracked private _shouldTrapFocus = false;\n\n get scope(): HdsAdvancedTableScope {\n const { scope = 'col' } = this.args;\n return scope;\n }\n\n get role(): string {\n if (this.scope === 'col') return 'columnheader';\n else return 'rowheader';\n }\n\n get align(): HdsAdvancedTableHorizontalAlignment {\n const { align = DEFAULT_ALIGN } = this.args;\n\n assert(\n `@align for \"Hds::Table::Th\" must be one of the following: ${ALIGNMENTS.join(\n ', '\n )}; received: ${align}`,\n ALIGNMENTS.includes(align)\n );\n return align;\n }\n\n // rowspan and colspan have to return 'auto' if not defined because otherwise the style modifier sets grid-area: undefined on the cell, which breaks the grid styles\n get rowspan(): string {\n if (this.args.rowspan) {\n return `span ${this.args.rowspan}`;\n }\n return 'auto';\n }\n\n get colspan(): string | undefined {\n if (this.args.colspan) {\n return `span ${this.args.colspan}`;\n }\n return 'auto';\n }\n\n get paddingLeft(): string | undefined {\n if (this.args.depth) {\n return `calc(${this.args.depth} * 32px + 16px)`;\n }\n }\n\n get classNames(): string {\n const classes = ['hds-advanced-table__th'];\n\n // add a class based on the @align argument\n if (this.align) {\n classes.push(`hds-advanced-table__th--align-${this.align}`);\n }\n\n return classes.join(' ');\n }\n\n @action onFocusTrapDeactivate(): void {\n this._shouldTrapFocus = false;\n onFocusTrapDeactivate(this._element);\n }\n\n @action enableFocusTrap(): void {\n this._shouldTrapFocus = true;\n }\n\n @action getInitialFocus(): FocusableElement | undefined {\n const cellFocusableElements = focusable(this._element);\n return cellFocusableElements[0];\n }\n\n @action setElement(element: HTMLDivElement): void {\n this._element = element;\n }\n}\n"],"names":["ALIGNMENTS","Object","values","HdsAdvancedTableHorizontalAlignmentValues","DEFAULT_ALIGN","Left","HdsAdvancedTableTh","Component","_labelId","args","newLabel","guidFor","_element","g","prototype","tracked","i","void 0","scope","role","align","assert","join","includes","rowspan","colspan","paddingLeft","depth","classNames","classes","push","onFocusTrapDeactivate","_shouldTrapFocus","n","action","enableFocusTrap","getInitialFocus","cellFocusableElements","focusable","setElement","element","setComponentTemplate","TEMPLATE"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tr.js","sources":["../../../../src/components/hds/advanced-table/tr.
|
|
1
|
+
{"version":3,"file":"tr.js","sources":["../../../../src/components/hds/advanced-table/tr.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\n\nimport { HdsAdvancedTableScopeValues } from './types.ts';\nimport type {\n HdsAdvancedTableScope,\n HdsAdvancedTableThSortOrder,\n} from './types.ts';\nimport type { HdsFormCheckboxBaseSignature } from '../form/checkbox/base.ts';\nimport type { HdsAdvancedTableSignature } from './index.ts';\nimport type { HdsAdvancedTableThSelectableSignature } from './th-selectable.ts';\n\nexport interface BaseHdsAdvancedTableTrSignature {\n Args: {\n selectableColumnKey?: HdsAdvancedTableSignature['Args']['selectableColumnKey'];\n isSelectable?: boolean;\n isSelected?: false;\n isParentRow?: boolean;\n selectionAriaLabelSuffix?: string;\n selectionKey?: string;\n selectionScope?: HdsAdvancedTableScope;\n sortBySelectedOrder?: HdsAdvancedTableThSortOrder;\n depth?: number;\n didInsert?: (\n checkbox: HdsFormCheckboxBaseSignature['Element'],\n selectionKey?: string\n ) => void;\n onSelectionChange?: (\n checkbox?: HdsFormCheckboxBaseSignature['Element'],\n selectionKey?: string\n ) => void;\n willDestroy?: () => void;\n onClickSortBySelected?: HdsAdvancedTableThSelectableSignature['Args']['onClickSortBySelected'];\n };\n Blocks: {\n default?: [];\n };\n Element: HTMLDivElement;\n}\n\n// Extended interface for selectable rows\nexport interface SelectableHdsAdvancedTableTrArgs\n extends BaseHdsAdvancedTableTrSignature {\n Args: BaseHdsAdvancedTableTrSignature['Args'] & {\n isSelectable: true;\n selectionScope?: HdsAdvancedTableScopeValues.Row;\n selectionKey: string; // Now required for selectable rows\n };\n}\n\n// Union type to combine both possible states\nexport type HdsAdvancedTableTrSignature =\n | BaseHdsAdvancedTableTrSignature\n | SelectableHdsAdvancedTableTrArgs;\nexport default class HdsAdvancedTableTr extends Component<HdsAdvancedTableTrSignature> {\n get selectionKey(): string | undefined {\n if (this.args.isSelectable && this.args.selectionScope === 'row') {\n assert(\n `@selectionKey must be defined on Table::Tr or B.Tr when @isSelectable is true`,\n this.args.selectionKey\n );\n return this.args.selectionKey;\n }\n return undefined;\n }\n\n get classNames(): string {\n const { depth, isParentRow } = this.args;\n const classes = ['hds-advanced-table__tr'];\n\n if (depth && depth > 0) {\n classes.push('hds-advanced-table__tr--nested');\n }\n\n if (isParentRow) {\n classes.push('hds-advanced-table__tr--parent-row');\n }\n\n return classes.join(' ');\n }\n}\n"],"names":["HdsAdvancedTableTr","Component","selectionKey","args","isSelectable","selectionScope","assert","undefined","classNames","depth","isParentRow","classes","push","join","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;;AAwDe,MAAMA,kBAAkB,SAASC,SAAS,CAA8B;EACrF,IAAIC,YAAYA,GAAuB;AACrC,IAAA,IAAI,IAAI,CAACC,IAAI,CAACC,YAAY,IAAI,IAAI,CAACD,IAAI,CAACE,cAAc,KAAK,KAAK,EAAE;MAChEC,MAAM,CACJ,+EAA+E,EAC/E,IAAI,CAACH,IAAI,CAACD,YACZ,CAAC;AACD,MAAA,OAAO,IAAI,CAACC,IAAI,CAACD,YAAY;AAC/B;AACA,IAAA,OAAOK,SAAS;AAClB;EAEA,IAAIC,UAAUA,GAAW;IACvB,MAAM;MAAEC,KAAK;AAAEC,MAAAA;KAAa,GAAG,IAAI,CAACP,IAAI;AACxC,IAAA,MAAMQ,OAAO,GAAG,CAAC,wBAAwB,CAAC;AAE1C,IAAA,IAAIF,KAAK,IAAIA,KAAK,GAAG,CAAC,EAAE;AACtBE,MAAAA,OAAO,CAACC,IAAI,CAAC,gCAAgC,CAAC;AAChD;AAEA,IAAA,IAAIF,WAAW,EAAE;AACfC,MAAAA,OAAO,CAACC,IAAI,CAAC,oCAAoC,CAAC;AACpD;AAEA,IAAA,OAAOD,OAAO,CAACE,IAAI,CAAC,GAAG,CAAC;AAC1B;AACF;AAACC,oBAAA,CAAAC,QAAA,EA1BoBf,kBAAkB,CAAA;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"description.js","sources":["../../../../src/components/hds/alert/description.
|
|
1
|
+
{"version":3,"file":"description.js","sources":["../../../../src/components/hds/alert/description.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport TemplateOnlyComponent from '@ember/component/template-only';\n\nexport interface HdsAlertDescriptionSignature {\n Blocks: {\n default: [];\n };\n Element: HTMLDivElement;\n}\n\nconst HdsAlertDescription =\n TemplateOnlyComponent<HdsAlertDescriptionSignature>();\n\nexport default HdsAlertDescription;\n"],"names":["HdsAlertDescription","TemplateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;;AAWA,MAAMA,mBAAmB,GACvBC,qBAAqB,EAAgC;AAEvD,kBAAAC,oBAAA,CAAAC,QAAA,EAAeH,mBAAmB,CAAA;;;;"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { _ as _applyDecoratedDescriptor, b as _initializerDefineProperty } from '../../../_rollupPluginBabelHelpers-C_TsMG3M.js';
|
|
2
1
|
import Component from '@glimmer/component';
|
|
3
2
|
import { action } from '@ember/object';
|
|
4
3
|
import { assert } from '@ember/debug';
|
|
@@ -6,11 +5,16 @@ import { guidFor } from '@ember/object/internals';
|
|
|
6
5
|
import { tracked } from '@glimmer/tracking';
|
|
7
6
|
import { HdsAlertTypeValues, HdsAlertColorValues } from './types.js';
|
|
8
7
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
8
|
+
import { g, i, n } from 'decorator-transforms/runtime';
|
|
9
9
|
import { setComponentTemplate } from '@ember/component';
|
|
10
10
|
|
|
11
11
|
var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<div\n class={{this.classNames}}\n role={{this._role}}\n aria-live={{if this._role \"polite\"}}\n aria-labelledby={{this._ariaLabelledBy}}\n {{did-insert this.didInsert}}\n ...attributes\n>\n {{#if this.icon}}\n <div class=\"hds-alert__icon\">\n <Hds::Icon @name={{this.icon}} @size={{this.iconSize}} @stretched={{true}} />\n </div>\n {{/if}}\n\n <div class=\"hds-alert__content\">\n <div class=\"hds-alert__text {{if (eq @type \'compact\') \'hds-typography-body-100\' \'hds-typography-body-200\'}}\">\n {{yield (hash Title=(component \"hds/alert/title\"))}}\n {{yield (hash Description=(component \"hds/alert/description\"))}}\n </div>\n\n <div class=\"hds-alert__actions\">\n {{yield\n (hash\n Button=(component \"hds/button\" size=\"small\") LinkStandalone=(component \"hds/link/standalone\" size=\"small\")\n )\n }}\n </div>\n {{yield (hash Generic=(component \"hds/yield\"))}}\n </div>\n\n {{#if this.onDismiss}}\n <Hds::DismissButton class=\"hds-alert__dismiss\" {{on \"click\" this.onDismiss}} />\n {{/if}}\n</div>");
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
/**
|
|
14
|
+
* Copyright (c) HashiCorp, Inc.
|
|
15
|
+
* SPDX-License-Identifier: MPL-2.0
|
|
16
|
+
*/
|
|
17
|
+
|
|
14
18
|
const TYPES = Object.values(HdsAlertTypeValues);
|
|
15
19
|
const DEFAULT_COLOR = HdsAlertColorValues.Neutral;
|
|
16
20
|
const COLORS = Object.values(HdsAlertColorValues);
|
|
@@ -24,11 +28,17 @@ const MAPPING_COLORS_TO_ICONS = {
|
|
|
24
28
|
const CONTENT_ELEMENT_SELECTOR = '.hds-alert__content';
|
|
25
29
|
const TITLE_ELEMENT_SELECTOR = '.hds-alert__title';
|
|
26
30
|
const DESCRIPTION_ELEMENT_SELECTOR = '.hds-alert__description';
|
|
27
|
-
|
|
31
|
+
class HdsAlert extends Component {
|
|
32
|
+
static {
|
|
33
|
+
g(this.prototype, "_role", [tracked]);
|
|
34
|
+
}
|
|
35
|
+
#_role = (i(this, "_role"), undefined);
|
|
36
|
+
static {
|
|
37
|
+
g(this.prototype, "_ariaLabelledBy", [tracked]);
|
|
38
|
+
}
|
|
39
|
+
#_ariaLabelledBy = (i(this, "_ariaLabelledBy"), undefined);
|
|
28
40
|
constructor(owner, args) {
|
|
29
41
|
super(owner, args);
|
|
30
|
-
_initializerDefineProperty(this, "_role", _descriptor, this);
|
|
31
|
-
_initializerDefineProperty(this, "_ariaLabelledBy", _descriptor2, this);
|
|
32
42
|
assert(`@type for "Hds::Alert" must be one of the following: ${TYPES.join(', ')}; received: ${this.args.type}`, TYPES.includes(this.args.type));
|
|
33
43
|
}
|
|
34
44
|
|
|
@@ -116,17 +126,10 @@ let HdsAlert = (_class = class HdsAlert extends Component {
|
|
|
116
126
|
this._ariaLabelledBy = labelId;
|
|
117
127
|
}
|
|
118
128
|
}
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
initializer: null
|
|
124
|
-
}), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, "_ariaLabelledBy", [tracked], {
|
|
125
|
-
configurable: true,
|
|
126
|
-
enumerable: true,
|
|
127
|
-
writable: true,
|
|
128
|
-
initializer: null
|
|
129
|
-
}), _applyDecoratedDescriptor(_class.prototype, "didInsert", [action], Object.getOwnPropertyDescriptor(_class.prototype, "didInsert"), _class.prototype), _class);
|
|
129
|
+
static {
|
|
130
|
+
n(this.prototype, "didInsert", [action]);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
130
133
|
setComponentTemplate(TEMPLATE, HdsAlert);
|
|
131
134
|
|
|
132
135
|
export { COLORS, DEFAULT_COLOR, MAPPING_COLORS_TO_ICONS, TYPES, HdsAlert as default };
|