@hashicorp/design-system-components 4.6.0 → 4.7.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/addon-main.cjs +16 -1
- package/declarations/components/hds/app-footer/status-link.d.ts +1 -1
- package/declarations/components/hds/badge/index.d.ts +2 -2
- package/declarations/components/hds/badge/index.d.ts.map +1 -1
- package/declarations/components/hds/button/index.d.ts +1 -1
- package/declarations/components/hds/button/index.d.ts.map +1 -1
- package/declarations/components/hds/dialog-primitive/body.d.ts +17 -0
- package/declarations/components/hds/dialog-primitive/body.d.ts.map +1 -0
- package/declarations/components/hds/dialog-primitive/description.d.ts +17 -0
- package/declarations/components/hds/dialog-primitive/description.d.ts.map +1 -0
- package/declarations/components/hds/dialog-primitive/footer.d.ts +22 -0
- package/declarations/components/hds/dialog-primitive/footer.d.ts.map +1 -0
- package/declarations/components/hds/dialog-primitive/header.d.ts +28 -0
- package/declarations/components/hds/dialog-primitive/header.d.ts.map +1 -0
- package/declarations/components/hds/dialog-primitive/overlay.d.ts +14 -0
- package/declarations/components/hds/dialog-primitive/overlay.d.ts.map +1 -0
- package/declarations/components/hds/dialog-primitive/wrapper.d.ts +16 -0
- package/declarations/components/hds/dialog-primitive/wrapper.d.ts.map +1 -0
- package/declarations/components/hds/dropdown/list-item/checkbox.d.ts +1 -1
- package/declarations/components/hds/dropdown/list-item/checkbox.d.ts.map +1 -1
- package/declarations/components/hds/dropdown/list-item/radio.d.ts +1 -1
- package/declarations/components/hds/dropdown/list-item/radio.d.ts.map +1 -1
- package/declarations/components/hds/flyout/body.d.ts +14 -1
- package/declarations/components/hds/flyout/body.d.ts.map +1 -1
- package/declarations/components/hds/flyout/description.d.ts +15 -0
- package/declarations/components/hds/flyout/description.d.ts.map +1 -1
- package/declarations/components/hds/flyout/footer.d.ts +19 -0
- package/declarations/components/hds/flyout/footer.d.ts.map +1 -1
- package/declarations/components/hds/flyout/header.d.ts +21 -1
- package/declarations/components/hds/flyout/header.d.ts.map +1 -1
- package/declarations/components/hds/flyout/index.d.ts +42 -12
- package/declarations/components/hds/flyout/index.d.ts.map +1 -1
- package/declarations/components/hds/flyout/types.d.ts +6 -0
- package/declarations/components/hds/flyout/types.d.ts.map +1 -0
- package/declarations/components/hds/form/character-count/index.d.ts +37 -10
- package/declarations/components/hds/form/character-count/index.d.ts.map +1 -1
- package/declarations/components/hds/form/checkbox/base.d.ts +13 -1
- package/declarations/components/hds/form/checkbox/base.d.ts.map +1 -1
- package/declarations/components/hds/form/checkbox/field.d.ts +28 -1
- package/declarations/components/hds/form/checkbox/field.d.ts.map +1 -1
- package/declarations/components/hds/form/checkbox/group.d.ts +29 -1
- package/declarations/components/hds/form/checkbox/group.d.ts.map +1 -1
- package/declarations/components/hds/form/error/index.d.ts +27 -6
- package/declarations/components/hds/form/error/index.d.ts.map +1 -1
- package/declarations/components/hds/form/error/message.d.ts +14 -1
- package/declarations/components/hds/form/error/message.d.ts.map +1 -1
- package/declarations/components/hds/form/field/index.d.ts +50 -15
- package/declarations/components/hds/form/field/index.d.ts.map +1 -1
- package/declarations/components/hds/form/field/types.d.ts +10 -0
- package/declarations/components/hds/form/field/types.d.ts.map +1 -0
- package/declarations/components/hds/form/fieldset/index.d.ts +43 -14
- package/declarations/components/hds/form/fieldset/index.d.ts.map +1 -1
- package/declarations/components/hds/form/fieldset/types.d.ts +10 -0
- package/declarations/components/hds/form/fieldset/types.d.ts.map +1 -0
- package/declarations/components/hds/form/file-input/base.d.ts +10 -1
- package/declarations/components/hds/form/file-input/base.d.ts.map +1 -1
- package/declarations/components/hds/form/file-input/field.d.ts +25 -1
- package/declarations/components/hds/form/file-input/field.d.ts.map +1 -1
- package/declarations/components/hds/form/helper-text/index.d.ts +20 -5
- package/declarations/components/hds/form/helper-text/index.d.ts.map +1 -1
- package/declarations/components/hds/form/indicator/index.d.ts +15 -3
- package/declarations/components/hds/form/indicator/index.d.ts.map +1 -1
- package/declarations/components/hds/form/label/index.d.ts +20 -4
- package/declarations/components/hds/form/label/index.d.ts.map +1 -1
- package/declarations/components/hds/form/legend/index.d.ts +18 -3
- package/declarations/components/hds/form/legend/index.d.ts.map +1 -1
- package/declarations/components/hds/form/masked-input/base.d.ts +26 -5
- package/declarations/components/hds/form/masked-input/base.d.ts.map +1 -1
- package/declarations/components/hds/form/masked-input/field.d.ts +28 -1
- package/declarations/components/hds/form/masked-input/field.d.ts.map +1 -1
- package/declarations/components/hds/form/radio/base.d.ts +13 -1
- package/declarations/components/hds/form/radio/base.d.ts.map +1 -1
- package/declarations/components/hds/form/radio/field.d.ts +28 -1
- package/declarations/components/hds/form/radio/field.d.ts.map +1 -1
- package/declarations/components/hds/form/radio/group.d.ts +29 -1
- package/declarations/components/hds/form/radio/group.d.ts.map +1 -1
- package/declarations/components/hds/form/radio-card/description.d.ts +14 -1
- package/declarations/components/hds/form/radio-card/description.d.ts.map +1 -1
- package/declarations/components/hds/form/radio-card/group.d.ts +32 -1
- package/declarations/components/hds/form/radio-card/group.d.ts.map +1 -1
- package/declarations/components/hds/form/radio-card/index.d.ts +45 -9
- package/declarations/components/hds/form/radio-card/index.d.ts.map +1 -1
- package/declarations/components/hds/form/radio-card/label.d.ts +14 -1
- package/declarations/components/hds/form/radio-card/label.d.ts.map +1 -1
- package/declarations/components/hds/form/radio-card/types.d.ts +15 -0
- package/declarations/components/hds/form/radio-card/types.d.ts.map +1 -0
- package/declarations/components/hds/form/select/base.d.ts +22 -3
- package/declarations/components/hds/form/select/base.d.ts.map +1 -1
- package/declarations/components/hds/form/select/field.d.ts +28 -1
- package/declarations/components/hds/form/select/field.d.ts.map +1 -1
- package/declarations/components/hds/form/text-input/base.d.ts +22 -6
- package/declarations/components/hds/form/text-input/base.d.ts.map +1 -1
- package/declarations/components/hds/form/text-input/field.d.ts +36 -7
- package/declarations/components/hds/form/text-input/field.d.ts.map +1 -1
- package/declarations/components/hds/form/text-input/types.d.ts +19 -0
- package/declarations/components/hds/form/text-input/types.d.ts.map +1 -0
- package/declarations/components/hds/form/textarea/base.d.ts +15 -3
- package/declarations/components/hds/form/textarea/base.d.ts.map +1 -1
- package/declarations/components/hds/form/textarea/field.d.ts +28 -1
- package/declarations/components/hds/form/textarea/field.d.ts.map +1 -1
- package/declarations/components/hds/form/toggle/base.d.ts +13 -1
- package/declarations/components/hds/form/toggle/base.d.ts.map +1 -1
- package/declarations/components/hds/form/toggle/field.d.ts +27 -1
- package/declarations/components/hds/form/toggle/field.d.ts.map +1 -1
- package/declarations/components/hds/form/toggle/group.d.ts +29 -1
- package/declarations/components/hds/form/toggle/group.d.ts.map +1 -1
- package/declarations/components/hds/form/visibility-toggle/index.d.ts +15 -1
- package/declarations/components/hds/form/visibility-toggle/index.d.ts.map +1 -1
- package/declarations/components/hds/modal/body.d.ts +14 -1
- package/declarations/components/hds/modal/body.d.ts.map +1 -1
- package/declarations/components/hds/modal/footer.d.ts +19 -1
- package/declarations/components/hds/modal/footer.d.ts.map +1 -1
- package/declarations/components/hds/modal/header.d.ts +21 -1
- package/declarations/components/hds/modal/header.d.ts.map +1 -1
- package/declarations/components/hds/modal/index.d.ts +44 -15
- package/declarations/components/hds/modal/index.d.ts.map +1 -1
- package/declarations/components/hds/modal/types.d.ts +17 -0
- package/declarations/components/hds/modal/types.d.ts.map +1 -0
- package/declarations/components/hds/stepper/task/indicator.d.ts +1 -1
- package/declarations/components/hds/stepper/task/indicator.d.ts.map +1 -1
- package/declarations/components.d.ts +57 -1
- package/declarations/components.d.ts.map +1 -1
- package/declarations/instance-initializers/load-sprite.d.ts +13 -0
- package/declarations/instance-initializers/load-sprite.d.ts.map +1 -0
- package/declarations/modifiers/hds-clipboard.d.ts +2 -2
- package/declarations/modifiers/hds-clipboard.d.ts.map +1 -1
- package/declarations/template-registry.d.ts +144 -0
- package/declarations/template-registry.d.ts.map +1 -1
- package/declarations/utils/hds-aria-described-by.d.ts +6 -8
- package/declarations/utils/hds-aria-described-by.d.ts.map +1 -1
- package/declarations/utils/hds-get-element-id.d.ts +5 -1
- package/declarations/utils/hds-get-element-id.d.ts.map +1 -1
- package/dist/_app_/components/hds/dialog-primitive/body.js +1 -0
- package/dist/_app_/components/hds/dialog-primitive/description.js +1 -0
- package/dist/_app_/components/hds/dialog-primitive/footer.js +1 -0
- package/dist/_app_/components/hds/dialog-primitive/header.js +1 -0
- package/dist/_app_/components/hds/dialog-primitive/overlay.js +1 -0
- package/dist/_app_/components/hds/dialog-primitive/wrapper.js +1 -0
- package/dist/components/hds/alert/description.js +2 -2
- package/dist/components/hds/alert/description.js.map +1 -1
- package/dist/components/hds/alert/title.js +2 -2
- package/dist/components/hds/alert/title.js.map +1 -1
- package/dist/components/hds/application-state/body.js +2 -2
- package/dist/components/hds/application-state/body.js.map +1 -1
- package/dist/components/hds/application-state/header.js +2 -2
- package/dist/components/hds/application-state/header.js.map +1 -1
- package/dist/components/hds/application-state/index.js +2 -2
- package/dist/components/hds/application-state/index.js.map +1 -1
- package/dist/components/hds/badge/index.js.map +1 -1
- package/dist/components/hds/button-set/index.js +2 -2
- package/dist/components/hds/button-set/index.js.map +1 -1
- package/dist/components/hds/code-block/copy-button.js +2 -2
- package/dist/components/hds/code-block/copy-button.js.map +1 -1
- package/dist/components/hds/code-block/description.js +2 -2
- package/dist/components/hds/code-block/description.js.map +1 -1
- package/dist/components/hds/code-block/title.js +2 -2
- package/dist/components/hds/code-block/title.js.map +1 -1
- package/dist/components/hds/dialog-primitive/body.js +16 -0
- package/dist/components/hds/dialog-primitive/body.js.map +1 -0
- package/dist/components/hds/dialog-primitive/description.js +16 -0
- package/dist/components/hds/dialog-primitive/description.js.map +1 -0
- package/dist/components/hds/dialog-primitive/footer.js +16 -0
- package/dist/components/hds/dialog-primitive/footer.js.map +1 -0
- package/dist/components/hds/dialog-primitive/header.js +37 -0
- package/dist/components/hds/dialog-primitive/header.js.map +1 -0
- package/dist/components/hds/dialog-primitive/overlay.js +16 -0
- package/dist/components/hds/dialog-primitive/overlay.js.map +1 -0
- package/dist/components/hds/dialog-primitive/wrapper.js +16 -0
- package/dist/components/hds/dialog-primitive/wrapper.js.map +1 -0
- package/dist/components/hds/dropdown/footer.js +2 -2
- package/dist/components/hds/dropdown/footer.js.map +1 -1
- package/dist/components/hds/dropdown/header.js +2 -2
- package/dist/components/hds/dropdown/header.js.map +1 -1
- package/dist/components/hds/dropdown/list-item/checkbox.js.map +1 -1
- package/dist/components/hds/dropdown/list-item/generic.js +2 -2
- package/dist/components/hds/dropdown/list-item/generic.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 +2 -2
- package/dist/components/hds/dropdown/list-item/separator.js.map +1 -1
- package/dist/components/hds/dropdown/toggle/chevron.js +2 -2
- package/dist/components/hds/dropdown/toggle/chevron.js.map +1 -1
- package/dist/components/hds/flyout/body.js +24 -4
- package/dist/components/hds/flyout/body.js.map +1 -1
- package/dist/components/hds/flyout/description.js +24 -4
- package/dist/components/hds/flyout/description.js.map +1 -1
- package/dist/components/hds/flyout/footer.js +24 -4
- package/dist/components/hds/flyout/footer.js.map +1 -1
- package/dist/components/hds/flyout/header.js +24 -4
- package/dist/components/hds/flyout/header.js.map +1 -1
- package/dist/components/hds/flyout/index.js +19 -11
- package/dist/components/hds/flyout/index.js.map +1 -1
- package/dist/components/hds/flyout/types.js +8 -0
- package/dist/components/hds/flyout/types.js.map +1 -0
- package/dist/components/hds/form/character-count/index.js +27 -22
- package/dist/components/hds/form/character-count/index.js.map +1 -1
- package/dist/components/hds/form/checkbox/base.js +9 -3
- package/dist/components/hds/form/checkbox/base.js.map +1 -1
- package/dist/components/hds/form/checkbox/field.js +9 -3
- package/dist/components/hds/form/checkbox/field.js.map +1 -1
- package/dist/components/hds/form/checkbox/group.js +9 -3
- package/dist/components/hds/form/checkbox/group.js.map +1 -1
- package/dist/components/hds/form/error/index.js +10 -8
- package/dist/components/hds/form/error/index.js.map +1 -1
- package/dist/components/hds/form/error/message.js +9 -3
- package/dist/components/hds/form/error/message.js.map +1 -1
- package/dist/components/hds/form/field/index.js +34 -29
- package/dist/components/hds/form/field/index.js.map +1 -1
- package/dist/components/hds/form/field/types.js +13 -0
- package/dist/components/hds/form/field/types.js.map +1 -0
- package/dist/components/hds/form/fieldset/index.js +29 -25
- package/dist/components/hds/form/fieldset/index.js.map +1 -1
- package/dist/components/hds/form/fieldset/types.js +13 -0
- package/dist/components/hds/form/fieldset/types.js.map +1 -0
- package/dist/components/hds/form/file-input/base.js +9 -3
- package/dist/components/hds/form/file-input/base.js.map +1 -1
- package/dist/components/hds/form/file-input/field.js +9 -3
- package/dist/components/hds/form/file-input/field.js.map +1 -1
- package/dist/components/hds/form/helper-text/index.js +8 -7
- package/dist/components/hds/form/helper-text/index.js.map +1 -1
- package/dist/components/hds/form/indicator/index.js +5 -5
- package/dist/components/hds/form/indicator/index.js.map +1 -1
- package/dist/components/hds/form/label/index.js +6 -6
- package/dist/components/hds/form/label/index.js.map +1 -1
- package/dist/components/hds/form/legend/index.js +5 -5
- package/dist/components/hds/form/legend/index.js.map +1 -1
- package/dist/components/hds/form/masked-input/base.js +2 -2
- package/dist/components/hds/form/masked-input/base.js.map +1 -1
- package/dist/components/hds/form/masked-input/field.js +9 -3
- package/dist/components/hds/form/masked-input/field.js.map +1 -1
- package/dist/components/hds/form/radio/base.js +9 -3
- package/dist/components/hds/form/radio/base.js.map +1 -1
- package/dist/components/hds/form/radio/field.js +9 -3
- package/dist/components/hds/form/radio/field.js.map +1 -1
- package/dist/components/hds/form/radio/group.js +9 -3
- package/dist/components/hds/form/radio/group.js.map +1 -1
- package/dist/components/hds/form/radio-card/description.js +9 -3
- package/dist/components/hds/form/radio-card/description.js.map +1 -1
- package/dist/components/hds/form/radio-card/group.js +9 -3
- package/dist/components/hds/form/radio-card/group.js.map +1 -1
- package/dist/components/hds/form/radio-card/index.js +12 -11
- package/dist/components/hds/form/radio-card/index.js.map +1 -1
- package/dist/components/hds/form/radio-card/label.js +9 -3
- package/dist/components/hds/form/radio-card/label.js.map +1 -1
- package/dist/components/hds/form/radio-card/types.js +18 -0
- package/dist/components/hds/form/radio-card/types.js.map +1 -0
- package/dist/components/hds/form/select/base.js +2 -2
- package/dist/components/hds/form/select/base.js.map +1 -1
- package/dist/components/hds/form/select/field.js +9 -3
- package/dist/components/hds/form/select/field.js.map +1 -1
- package/dist/components/hds/form/super-select/after-options.js +2 -2
- package/dist/components/hds/form/super-select/after-options.js.map +1 -1
- package/dist/components/hds/form/super-select/multiple/field.js.map +1 -1
- package/dist/components/hds/form/super-select/placeholder.js +2 -2
- package/dist/components/hds/form/super-select/placeholder.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 +8 -5
- package/dist/components/hds/form/text-input/base.js.map +1 -1
- package/dist/components/hds/form/text-input/field.js +2 -1
- package/dist/components/hds/form/text-input/field.js.map +1 -1
- package/dist/components/hds/form/text-input/types.js +22 -0
- package/dist/components/hds/form/text-input/types.js.map +1 -0
- package/dist/components/hds/form/textarea/base.js +2 -2
- package/dist/components/hds/form/textarea/base.js.map +1 -1
- package/dist/components/hds/form/textarea/field.js +9 -3
- package/dist/components/hds/form/textarea/field.js.map +1 -1
- package/dist/components/hds/form/toggle/base.js +9 -3
- package/dist/components/hds/form/toggle/base.js.map +1 -1
- package/dist/components/hds/form/toggle/field.js +9 -3
- package/dist/components/hds/form/toggle/field.js.map +1 -1
- package/dist/components/hds/form/toggle/group.js +9 -3
- package/dist/components/hds/form/toggle/group.js.map +1 -1
- package/dist/components/hds/form/visibility-toggle/index.js +9 -3
- package/dist/components/hds/form/visibility-toggle/index.js.map +1 -1
- package/dist/components/hds/modal/body.js +24 -4
- package/dist/components/hds/modal/body.js.map +1 -1
- package/dist/components/hds/modal/footer.js +24 -4
- package/dist/components/hds/modal/footer.js.map +1 -1
- package/dist/components/hds/modal/header.js +24 -4
- package/dist/components/hds/modal/header.js.map +1 -1
- package/dist/components/hds/modal/index.js +21 -14
- package/dist/components/hds/modal/index.js.map +1 -1
- package/dist/components/hds/modal/types.js +20 -0
- package/dist/components/hds/modal/types.js.map +1 -0
- package/dist/components/hds/page-header/actions.js +2 -2
- package/dist/components/hds/page-header/actions.js.map +1 -1
- package/dist/components/hds/page-header/badges.js +2 -2
- package/dist/components/hds/page-header/badges.js.map +1 -1
- package/dist/components/hds/page-header/description.js +2 -2
- package/dist/components/hds/page-header/description.js.map +1 -1
- package/dist/components/hds/page-header/index.js +2 -2
- package/dist/components/hds/page-header/index.js.map +1 -1
- package/dist/components/hds/page-header/subtitle.js +2 -2
- package/dist/components/hds/page-header/subtitle.js.map +1 -1
- package/dist/components/hds/page-header/title.js +2 -2
- package/dist/components/hds/page-header/title.js.map +1 -1
- package/dist/components/hds/pagination/nav/ellipsis.js +2 -2
- package/dist/components/hds/pagination/nav/ellipsis.js.map +1 -1
- package/dist/components/hds/rich-tooltip/index.js.map +1 -1
- package/dist/components/hds/segmented-group/index.js +2 -2
- package/dist/components/hds/segmented-group/index.js.map +1 -1
- package/dist/components/hds/side-nav/base.js +2 -2
- package/dist/components/hds/side-nav/base.js.map +1 -1
- package/dist/components/hds/side-nav/header/index.js +2 -2
- package/dist/components/hds/side-nav/header/index.js.map +1 -1
- package/dist/components/hds/side-nav/list/back-link.js +2 -2
- package/dist/components/hds/side-nav/list/back-link.js.map +1 -1
- package/dist/components/hds/side-nav/list/index.js +2 -2
- package/dist/components/hds/side-nav/list/index.js.map +1 -1
- package/dist/components/hds/side-nav/list/item.js +2 -2
- package/dist/components/hds/side-nav/list/item.js.map +1 -1
- package/dist/components/hds/side-nav/list/link.js +2 -2
- package/dist/components/hds/side-nav/list/link.js.map +1 -1
- package/dist/components/hds/side-nav/list/title.js +2 -2
- package/dist/components/hds/side-nav/list/title.js.map +1 -1
- package/dist/components/hds/side-nav/toggle-button.js +2 -2
- package/dist/components/hds/side-nav/toggle-button.js.map +1 -1
- package/dist/components/hds/toast/index.js +2 -2
- package/dist/components/hds/toast/index.js.map +1 -1
- package/dist/components/hds/yield/index.js +2 -2
- package/dist/components/hds/yield/index.js.map +1 -1
- package/dist/components.js +56 -0
- package/dist/components.js.map +1 -1
- package/dist/instance-initializers/load-sprite.js +33 -0
- package/dist/instance-initializers/load-sprite.js.map +1 -0
- package/dist/modifiers/hds-clipboard.js.map +1 -1
- package/dist/styles/@hashicorp/design-system-components.css +118 -148
- package/dist/styles/@hashicorp/design-system-components.scss +1 -0
- package/dist/styles/components/dialog-primitive.scss +143 -0
- package/dist/styles/components/flyout.scss +8 -70
- package/dist/styles/components/form/text-input.scss +6 -2
- package/dist/styles/components/modal.scss +18 -84
- package/dist/utils/hds-aria-described-by.js +1 -0
- package/dist/utils/hds-aria-described-by.js.map +1 -1
- package/dist/utils/hds-get-element-id.js +2 -0
- package/dist/utils/hds-get-element-id.js.map +1 -1
- package/package.json +9 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"footer.js","sources":["../../../../src/components/hds/flyout/footer.hbs","../../../../src/components/hds/flyout/footer.
|
|
1
|
+
{"version":3,"file":"footer.js","sources":["../../../../src/components/hds/flyout/footer.hbs","../../../../src/components/hds/flyout/footer.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{{!\\n THIS SUBCOMPONENT IS NOW DEPRECATED\\n}}\\n<div class=\\\"hds-flyout__footer\\\" ...attributes>\\n {{yield (hash close=@onDismiss)}}\\n</div>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { deprecate } from '@ember/debug';\n\ninterface HdsFlyoutFooterSignature {\n Args: {\n onDismiss?: (event: MouseEvent) => void;\n };\n Blocks: {\n default: [{ close?: (event: MouseEvent) => void }];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsFlyoutFooterComponent extends Component<HdsFlyoutFooterSignature> {\n constructor(owner: unknown, args: HdsFlyoutFooterSignature['Args']) {\n super(owner, args);\n\n deprecate(\n 'The `Hds::Flyout::Footer` sub-component is now deprecated and will be removed in the next major version of `@hashicorp/design-system-components`. Use `Hds::DialogPrimitive::Footer` as one-to-one replacement.',\n false,\n {\n id: 'hds.components.flyout.footer',\n until: '5.0.0',\n url: 'https://helios.hashicorp.design/components/flyout?tab=version%20history#460',\n for: '@hashicorp/design-system-components',\n since: {\n enabled: '4.6.0',\n },\n }\n );\n }\n}\n"],"names":["HdsFlyoutFooterComponent","Component","constructor","owner","args","deprecate","id","until","url","for","since","enabled","setComponentTemplate","TEMPLATE"],"mappings":";;;;;AACA,eAAe,kBAAkB,CAAC,6NAA6N;;ACD/P;AACA;AACA;AACA;;AAee,MAAMA,wBAAwB,SAASC,SAAS,CAA2B;AACxFC,EAAAA,WAAWA,CAACC,KAAc,EAAEC,IAAsC,EAAE;AAClE,IAAA,KAAK,CAACD,KAAK,EAAEC,IAAI,CAAC,CAAA;AAElBC,IAAAA,SAAS,CACP,iNAAiN,EACjN,KAAK,EACL;AACEC,MAAAA,EAAE,EAAE,8BAA8B;AAClCC,MAAAA,KAAK,EAAE,OAAO;AACdC,MAAAA,GAAG,EAAE,6EAA6E;AAClFC,MAAAA,GAAG,EAAE,qCAAqC;AAC1CC,MAAAA,KAAK,EAAE;AACLC,QAAAA,OAAO,EAAE,OAAA;AACX,OAAA;AACF,KACF,CAAC,CAAA;AACH,GAAA;AACF,CAAA;AAACC,oBAAA,CAAAC,QAAA,EAlBoBb,wBAAwB,CAAA;;;;"}
|
|
@@ -1,10 +1,30 @@
|
|
|
1
|
-
import
|
|
1
|
+
import Component from '@glimmer/component';
|
|
2
|
+
import { deprecate } from '@ember/debug';
|
|
2
3
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
3
4
|
import { setComponentTemplate } from '@ember/component';
|
|
4
5
|
|
|
5
|
-
var TEMPLATE = precompileTemplate("{{
|
|
6
|
+
var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n{{!\n THIS SUBCOMPONENT IS NOW DEPRECATED\n}}\n<div class=\"hds-flyout__header\" ...attributes>\n {{#if @icon}}\n <FlightIcon class=\"hds-flyout__icon\" @name={{@icon}} @size=\"24\" @isInlineBlock={{false}} />\n {{/if}}\n <Hds::Text::Display class=\"hds-flyout__title\" @tag=\"div\" @size=\"300\" @weight=\"semibold\" id={{@id}}>\n {{#if @tagline}}\n <Hds::Text::Body class=\"hds-flyout__tagline\" @tag=\"div\" @size=\"100\" @weight=\"regular\" @color=\"faint\">\n {{@tagline}}\n </Hds::Text::Body>\n {{/if}}\n {{yield}}\n </Hds::Text::Display>\n <Hds::DismissButton class=\"hds-flyout__dismiss\" {{on \"click\" @onDismiss}} />\n</div>");
|
|
6
7
|
|
|
7
|
-
|
|
8
|
+
/**
|
|
9
|
+
* Copyright (c) HashiCorp, Inc.
|
|
10
|
+
* SPDX-License-Identifier: MPL-2.0
|
|
11
|
+
*/
|
|
8
12
|
|
|
9
|
-
|
|
13
|
+
class HdsFlyoutHeaderComponent extends Component {
|
|
14
|
+
constructor(owner, args) {
|
|
15
|
+
super(owner, args);
|
|
16
|
+
deprecate('The `Hds::Flyout::Header` sub-component is now deprecated and will be removed in the next major version of `@hashicorp/design-system-components`. Use `Hds::DialogPrimitive::Header` as one-to-one replacement.', false, {
|
|
17
|
+
id: 'hds.components.flyout.header',
|
|
18
|
+
until: '5.0.0',
|
|
19
|
+
url: 'https://helios.hashicorp.design/components/flyout?tab=version%20history#460',
|
|
20
|
+
for: '@hashicorp/design-system-components',
|
|
21
|
+
since: {
|
|
22
|
+
enabled: '4.6.0'
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
setComponentTemplate(TEMPLATE, HdsFlyoutHeaderComponent);
|
|
28
|
+
|
|
29
|
+
export { HdsFlyoutHeaderComponent as default };
|
|
10
30
|
//# sourceMappingURL=header.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"header.js","sources":["../../../../src/components/hds/flyout/header.hbs","../../../../src/components/hds/flyout/header.
|
|
1
|
+
{"version":3,"file":"header.js","sources":["../../../../src/components/hds/flyout/header.hbs","../../../../src/components/hds/flyout/header.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{{!\\n THIS SUBCOMPONENT IS NOW DEPRECATED\\n}}\\n<div class=\\\"hds-flyout__header\\\" ...attributes>\\n {{#if @icon}}\\n <FlightIcon class=\\\"hds-flyout__icon\\\" @name={{@icon}} @size=\\\"24\\\" @isInlineBlock={{false}} />\\n {{/if}}\\n <Hds::Text::Display class=\\\"hds-flyout__title\\\" @tag=\\\"div\\\" @size=\\\"300\\\" @weight=\\\"semibold\\\" id={{@id}}>\\n {{#if @tagline}}\\n <Hds::Text::Body class=\\\"hds-flyout__tagline\\\" @tag=\\\"div\\\" @size=\\\"100\\\" @weight=\\\"regular\\\" @color=\\\"faint\\\">\\n {{@tagline}}\\n </Hds::Text::Body>\\n {{/if}}\\n {{yield}}\\n </Hds::Text::Display>\\n <Hds::DismissButton class=\\\"hds-flyout__dismiss\\\" {{on \\\"click\\\" @onDismiss}} />\\n</div>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { deprecate } from '@ember/debug';\nimport type { FlightIconSignature } from '@hashicorp/ember-flight-icons/components/flight-icon';\n\nexport interface HdsFlyoutHeaderSignature {\n Args: {\n id?: string;\n tagline?: string;\n onDismiss: (event: MouseEvent) => void;\n icon?: FlightIconSignature['Args']['name'] | false;\n };\n Blocks: {\n default: [];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsFlyoutHeaderComponent extends Component<HdsFlyoutHeaderSignature> {\n constructor(owner: unknown, args: HdsFlyoutHeaderSignature['Args']) {\n super(owner, args);\n\n deprecate(\n 'The `Hds::Flyout::Header` sub-component is now deprecated and will be removed in the next major version of `@hashicorp/design-system-components`. Use `Hds::DialogPrimitive::Header` as one-to-one replacement.',\n false,\n {\n id: 'hds.components.flyout.header',\n until: '5.0.0',\n url: 'https://helios.hashicorp.design/components/flyout?tab=version%20history#460',\n for: '@hashicorp/design-system-components',\n since: {\n enabled: '4.6.0',\n },\n }\n );\n }\n}\n"],"names":["HdsFlyoutHeaderComponent","Component","constructor","owner","args","deprecate","id","until","url","for","since","enabled","setComponentTemplate","TEMPLATE"],"mappings":";;;;;AACA,eAAe,kBAAkB,CAAC,8uBAA8uB;;ACDhxB;AACA;AACA;AACA;;AAmBe,MAAMA,wBAAwB,SAASC,SAAS,CAA2B;AACxFC,EAAAA,WAAWA,CAACC,KAAc,EAAEC,IAAsC,EAAE;AAClE,IAAA,KAAK,CAACD,KAAK,EAAEC,IAAI,CAAC,CAAA;AAElBC,IAAAA,SAAS,CACP,iNAAiN,EACjN,KAAK,EACL;AACEC,MAAAA,EAAE,EAAE,8BAA8B;AAClCC,MAAAA,KAAK,EAAE,OAAO;AACdC,MAAAA,GAAG,EAAE,6EAA6E;AAClFC,MAAAA,GAAG,EAAE,qCAAqC;AAC1CC,MAAAA,KAAK,EAAE;AACLC,QAAAA,OAAO,EAAE,OAAA;AACX,OAAA;AACF,KACF,CAAC,CAAA;AACH,GAAA;AACF,CAAA;AAACC,oBAAA,CAAAC,QAAA,EAlBoBb,wBAAwB,CAAA;;;;"}
|
|
@@ -1,24 +1,32 @@
|
|
|
1
|
-
import { _ as _applyDecoratedDescriptor, b as _initializerDefineProperty } from '../../../_rollupPluginBabelHelpers-KIi_qCIU.js';
|
|
1
|
+
import { _ as _applyDecoratedDescriptor, b as _initializerDefineProperty, a as _defineProperty } from '../../../_rollupPluginBabelHelpers-KIi_qCIU.js';
|
|
2
2
|
import Component from '@glimmer/component';
|
|
3
3
|
import { tracked } from '@glimmer/tracking';
|
|
4
4
|
import { action } from '@ember/object';
|
|
5
5
|
import { assert } from '@ember/debug';
|
|
6
6
|
import { getElementId } from '../../../utils/hds-get-element-id.js';
|
|
7
7
|
import { buildWaiter } from '@ember/test-waiters';
|
|
8
|
+
import { HdsFlyoutSizesValues } from './types.js';
|
|
9
|
+
import '../dialog-primitive/body.js';
|
|
10
|
+
import '../dialog-primitive/description.js';
|
|
11
|
+
import '../dialog-primitive/footer.js';
|
|
12
|
+
import '../dialog-primitive/header.js';
|
|
8
13
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
9
14
|
import { setComponentTemplate } from '@ember/component';
|
|
10
15
|
|
|
11
|
-
var TEMPLATE = precompileTemplate("{{
|
|
16
|
+
var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<Hds::DialogPrimitive::Wrapper\n class={{this.classNames}}\n ...attributes\n aria-labelledby={{this.id}}\n {{did-insert this.didInsert}}\n {{will-destroy this.willDestroyNode}}\n {{! @glint-expect-error - https://github.com/josemarluedke/ember-focus-trap/issues/86 }}\n {{focus-trap isActive=this.isOpen focusTrapOptions=(hash onDeactivate=this.onDismiss clickOutsideDeactivates=true)}}\n>\n <:header>\n {{yield\n (hash\n Header=(component\n \"hds/dialog-primitive/header\" id=this.id onDismiss=this.onDismiss contextualClassPrefix=\"hds-flyout\"\n )\n Description=(component \"hds/dialog-primitive/description\" contextualClass=\"hds-flyout__description\")\n )\n }}\n </:header>\n <:body>\n {{yield (hash Body=(component \"hds/dialog-primitive/body\" contextualClass=\"hds-flyout__body\"))}}\n </:body>\n <:footer>\n {{yield\n (hash\n Footer=(component \"hds/dialog-primitive/footer\" onDismiss=this.onDismiss contextualClass=\"hds-flyout__footer\")\n )\n }}\n </:footer>\n</Hds::DialogPrimitive::Wrapper>\n\n{{#if this.isOpen}}\n <Hds::DialogPrimitive::Overlay @contextualClass=\"hds-flyout__overlay\" />\n{{/if}}");
|
|
12
17
|
|
|
13
18
|
var _class, _descriptor;
|
|
14
|
-
|
|
15
|
-
const DEFAULT_SIZE =
|
|
19
|
+
const waiter = buildWaiter('@hashicorp/design-system-components:flyout');
|
|
20
|
+
const DEFAULT_SIZE = HdsFlyoutSizesValues.Medium;
|
|
16
21
|
const DEFAULT_HAS_OVERLAY = true;
|
|
17
|
-
const SIZES =
|
|
22
|
+
const SIZES = Object.values(HdsFlyoutSizesValues);
|
|
18
23
|
let HdsFlyoutIndexComponent = (_class = class HdsFlyoutIndexComponent extends Component {
|
|
19
24
|
constructor(...args) {
|
|
20
25
|
super(...args);
|
|
21
26
|
_initializerDefineProperty(this, "isOpen", _descriptor, this);
|
|
27
|
+
_defineProperty(this, "element", void 0);
|
|
28
|
+
_defineProperty(this, "body", void 0);
|
|
29
|
+
_defineProperty(this, "bodyInitialOverflowValue", '');
|
|
22
30
|
}
|
|
23
31
|
/**
|
|
24
32
|
* Sets the size of the flyout
|
|
@@ -29,7 +37,7 @@ let HdsFlyoutIndexComponent = (_class = class HdsFlyoutIndexComponent extends Co
|
|
|
29
37
|
* @default 'medium'
|
|
30
38
|
*/
|
|
31
39
|
get size() {
|
|
32
|
-
|
|
40
|
+
const {
|
|
33
41
|
size = DEFAULT_SIZE
|
|
34
42
|
} = this.args;
|
|
35
43
|
assert(`@size for "Hds::Flyout" must be one of the following: ${SIZES.join(', ')}; received: ${size}`, SIZES.includes(size));
|
|
@@ -49,15 +57,15 @@ let HdsFlyoutIndexComponent = (_class = class HdsFlyoutIndexComponent extends Co
|
|
|
49
57
|
* @return {string} The "class" attribute to apply to the component.
|
|
50
58
|
*/
|
|
51
59
|
get classNames() {
|
|
52
|
-
|
|
60
|
+
const classes = ['hds-flyout'];
|
|
53
61
|
|
|
54
62
|
// add a class based on the @size argument
|
|
55
63
|
classes.push(`hds-flyout--size-${this.size}`);
|
|
56
64
|
return classes.join(' ');
|
|
57
65
|
}
|
|
58
|
-
registerOnCloseCallback() {
|
|
66
|
+
registerOnCloseCallback(event) {
|
|
59
67
|
if (this.args.onClose && typeof this.args.onClose === 'function') {
|
|
60
|
-
this.args.onClose();
|
|
68
|
+
this.args.onClose(event);
|
|
61
69
|
}
|
|
62
70
|
this.isOpen = false;
|
|
63
71
|
}
|
|
@@ -101,8 +109,8 @@ let HdsFlyoutIndexComponent = (_class = class HdsFlyoutIndexComponent extends Co
|
|
|
101
109
|
// when using `click` or other helpers from '@ember/test-helpers'
|
|
102
110
|
// Notice: this code will get stripped out in production builds (DEBUG evaluates to `true` in dev/test builds, but `false` in prod builds)
|
|
103
111
|
if (this.element.open) {
|
|
104
|
-
|
|
105
|
-
|
|
112
|
+
const token = waiter.beginAsync();
|
|
113
|
+
const listener = () => {
|
|
106
114
|
waiter.endAsync(token);
|
|
107
115
|
this.element.removeEventListener('close', listener);
|
|
108
116
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/components/hds/flyout/index.hbs","../../../../src/components/hds/flyout/index.js"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{! @glint-nocheck: not typesafe yet }}\\n{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<dialog\\n class={{this.classNames}}\\n ...attributes\\n aria-labelledby={{this.id}}\\n {{did-insert this.didInsert}}\\n {{will-destroy this.willDestroyNode}}\\n {{focus-trap isActive=this.isOpen focusTrapOptions=(hash onDeactivate=this.onDismiss clickOutsideDeactivates=true)}}\\n>\\n {{yield (hash Header=(component \\\"hds/flyout/header\\\" id=this.id onDismiss=this.onDismiss))}}\\n {{yield (hash Description=(component \\\"hds/flyout/description\\\"))}}\\n {{yield (hash Body=(component \\\"hds/flyout/body\\\"))}}\\n {{yield (hash Footer=(component \\\"hds/flyout/footer\\\" onDismiss=this.onDismiss))}}\\n</dialog>\\n{{#if this.isOpen}}\\n <div class=\\\"hds-flyout__overlay\\\"></div>\\n{{/if}}\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { action } from '@ember/object';\nimport { assert } from '@ember/debug';\nimport { getElementId } from '../../../utils/hds-get-element-id.js';\nimport { buildWaiter } from '@ember/test-waiters';\n\nlet waiter = buildWaiter('@hashicorp/design-system-components:flyout');\n\nexport const DEFAULT_SIZE = 'medium';\nexport const DEFAULT_HAS_OVERLAY = true;\nexport const SIZES = ['medium', 'large'];\n\nexport default class HdsFlyoutIndexComponent extends Component {\n @tracked isOpen = false;\n\n /**\n * Sets the size of the flyout\n * Accepted values: medium, large\n *\n * @param size\n * @type {string}\n * @default 'medium'\n */\n get size() {\n let { size = DEFAULT_SIZE } = this.args;\n\n assert(\n `@size for \"Hds::Flyout\" must be one of the following: ${SIZES.join(\n ', '\n )}; received: ${size}`,\n SIZES.includes(size)\n );\n\n return size;\n }\n\n /**\n * Calculates the unique ID to assign to the title\n */\n get id() {\n return getElementId(this);\n }\n\n /**\n * Get the class names to apply to the component.\n * @method classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames() {\n let classes = ['hds-flyout'];\n\n // add a class based on the @size argument\n classes.push(`hds-flyout--size-${this.size}`);\n\n return classes.join(' ');\n }\n\n @action registerOnCloseCallback() {\n if (this.args.onClose && typeof this.args.onClose === 'function') {\n this.args.onClose();\n }\n\n this.isOpen = false;\n }\n\n @action\n didInsert(element) {\n // Store references of `<dialog>` and `<body>` elements\n this.element = element;\n this.body = document.body;\n\n if (this.body) {\n // Store the initial `overflow` value of `<body>` so we can reset to it\n this.bodyInitialOverflowValue =\n this.body.style.getPropertyValue('overflow');\n }\n\n // Register \"onClose\" callback function to be called when a native 'close' event is dispatched\n this.element.addEventListener('close', this.registerOnCloseCallback, true);\n\n // If the flyout dialog is not already open\n if (!this.element.open) {\n this.open();\n }\n }\n\n @action\n willDestroyNode() {\n if (this.element) {\n this.element.removeEventListener(\n 'close',\n this.registerOnCloseCallback,\n true\n );\n }\n }\n\n @action\n open() {\n // Make flyout dialog visible using the native `showModal` method\n this.element.showModal();\n this.isOpen = true;\n\n // Prevent page from scrolling when the dialog is open\n if (this.body) this.body.style.setProperty('overflow', 'hidden');\n\n // Call \"onOpen\" callback function\n if (this.args.onOpen && typeof this.args.onOpen === 'function') {\n this.args.onOpen();\n }\n }\n\n @action\n async onDismiss() {\n // allow ember test helpers to be aware of when the `close` event fires\n // when using `click` or other helpers from '@ember/test-helpers'\n // Notice: this code will get stripped out in production builds (DEBUG evaluates to `true` in dev/test builds, but `false` in prod builds)\n if (this.element.open) {\n let token = waiter.beginAsync();\n let listener = () => {\n waiter.endAsync(token);\n this.element.removeEventListener('close', listener);\n };\n this.element.addEventListener('close', listener);\n }\n\n // Make flyout dialog invisible using the native `close` method\n this.element.close();\n\n // Reset page `overflow` property\n if (this.body) {\n this.body.style.removeProperty('overflow');\n if (this.bodyInitialOverflowValue === '') {\n if (this.body.style.length === 0) {\n this.body.removeAttribute('style');\n }\n } else {\n this.body.style.setProperty('overflow', this.bodyInitialOverflowValue);\n }\n }\n }\n}\n"],"names":["waiter","buildWaiter","DEFAULT_SIZE","DEFAULT_HAS_OVERLAY","SIZES","HdsFlyoutIndexComponent","_class","Component","constructor","args","_initializerDefineProperty","_descriptor","size","assert","join","includes","id","getElementId","classNames","classes","push","registerOnCloseCallback","onClose","isOpen","didInsert","element","body","document","bodyInitialOverflowValue","style","getPropertyValue","addEventListener","open","willDestroyNode","removeEventListener","showModal","setProperty","onOpen","onDismiss","token","beginAsync","listener","endAsync","close","removeProperty","length","removeAttribute","_applyDecoratedDescriptor","prototype","tracked","configurable","enumerable","writable","initializer","action","Object","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/components/hds/flyout/index.hbs","../../../../src/components/hds/flyout/index.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<Hds::DialogPrimitive::Wrapper\\n class={{this.classNames}}\\n ...attributes\\n aria-labelledby={{this.id}}\\n {{did-insert this.didInsert}}\\n {{will-destroy this.willDestroyNode}}\\n {{! @glint-expect-error - https://github.com/josemarluedke/ember-focus-trap/issues/86 }}\\n {{focus-trap isActive=this.isOpen focusTrapOptions=(hash onDeactivate=this.onDismiss clickOutsideDeactivates=true)}}\\n>\\n <:header>\\n {{yield\\n (hash\\n Header=(component\\n \\\"hds/dialog-primitive/header\\\" id=this.id onDismiss=this.onDismiss contextualClassPrefix=\\\"hds-flyout\\\"\\n )\\n Description=(component \\\"hds/dialog-primitive/description\\\" contextualClass=\\\"hds-flyout__description\\\")\\n )\\n }}\\n </:header>\\n <:body>\\n {{yield (hash Body=(component \\\"hds/dialog-primitive/body\\\" contextualClass=\\\"hds-flyout__body\\\"))}}\\n </:body>\\n <:footer>\\n {{yield\\n (hash\\n Footer=(component \\\"hds/dialog-primitive/footer\\\" onDismiss=this.onDismiss contextualClass=\\\"hds-flyout__footer\\\")\\n )\\n }}\\n </:footer>\\n</Hds::DialogPrimitive::Wrapper>\\n\\n{{#if this.isOpen}}\\n <Hds::DialogPrimitive::Overlay @contextualClass=\\\"hds-flyout__overlay\\\" />\\n{{/if}}\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { action } from '@ember/object';\nimport { assert } from '@ember/debug';\nimport { getElementId } from '../../../utils/hds-get-element-id.ts';\nimport { buildWaiter } from '@ember/test-waiters';\nimport type { WithBoundArgs } from '@glint/template';\n\nimport type { HdsFlyoutSizes } from './types.ts';\n\nimport { HdsFlyoutSizesValues } from './types.ts';\nimport HdsDialogPrimitiveBodyComponent from '../dialog-primitive/body.ts';\nimport HdsDialogPrimitiveDescriptionComponent from '../dialog-primitive/description.ts';\nimport HdsDialogPrimitiveFooterComponent from '../dialog-primitive/footer.ts';\nimport HdsDialogPrimitiveHeaderComponent from '../dialog-primitive/header.ts';\n\nconst waiter = buildWaiter('@hashicorp/design-system-components:flyout');\n\nexport const DEFAULT_SIZE = HdsFlyoutSizesValues.Medium;\nexport const DEFAULT_HAS_OVERLAY = true;\nexport const SIZES: string[] = Object.values(HdsFlyoutSizesValues);\n\nexport interface HdsFlyoutIndexSignature {\n Args: {\n isDismissDisabled?: boolean;\n size?: HdsFlyoutSizes;\n onOpen?: () => void;\n onClose?: (event: Event) => void;\n };\n Blocks: {\n default: [\n {\n Header?: WithBoundArgs<\n typeof HdsDialogPrimitiveHeaderComponent,\n 'id' | 'onDismiss' | 'contextualClassPrefix'\n >;\n Description?: WithBoundArgs<\n typeof HdsDialogPrimitiveDescriptionComponent,\n 'contextualClass'\n >;\n Body?: WithBoundArgs<\n typeof HdsDialogPrimitiveBodyComponent,\n 'contextualClass'\n >;\n Footer?: WithBoundArgs<\n typeof HdsDialogPrimitiveFooterComponent,\n 'onDismiss' | 'contextualClass'\n >;\n },\n ];\n };\n Element: HTMLDialogElement;\n}\n\nexport default class HdsFlyoutIndexComponent extends Component<HdsFlyoutIndexSignature> {\n @tracked isOpen = false;\n element!: HTMLDialogElement;\n body!: HTMLElement;\n bodyInitialOverflowValue = '';\n\n /**\n * Sets the size of the flyout\n * Accepted values: medium, large\n *\n * @param size\n * @type {string}\n * @default 'medium'\n */\n get size(): HdsFlyoutSizes {\n const { size = DEFAULT_SIZE } = this.args;\n\n assert(\n `@size for \"Hds::Flyout\" must be one of the following: ${SIZES.join(\n ', '\n )}; received: ${size}`,\n SIZES.includes(size)\n );\n\n return size;\n }\n\n /**\n * Calculates the unique ID to assign to the title\n */\n get id() {\n return getElementId(this);\n }\n\n /**\n * Get the class names to apply to the component.\n * @method classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames() {\n const classes = ['hds-flyout'];\n\n // add a class based on the @size argument\n classes.push(`hds-flyout--size-${this.size}`);\n\n return classes.join(' ');\n }\n\n @action registerOnCloseCallback(event: Event) {\n if (this.args.onClose && typeof this.args.onClose === 'function') {\n this.args.onClose(event);\n }\n\n this.isOpen = false;\n }\n\n @action\n didInsert(element: HTMLDialogElement) {\n // Store references of `<dialog>` and `<body>` elements\n this.element = element;\n this.body = document.body;\n\n if (this.body) {\n // Store the initial `overflow` value of `<body>` so we can reset to it\n this.bodyInitialOverflowValue =\n this.body.style.getPropertyValue('overflow');\n }\n\n // Register \"onClose\" callback function to be called when a native 'close' event is dispatched\n this.element.addEventListener('close', this.registerOnCloseCallback, true);\n\n // If the flyout dialog is not already open\n if (!this.element.open) {\n this.open();\n }\n }\n\n @action\n willDestroyNode() {\n if (this.element) {\n this.element.removeEventListener(\n 'close',\n this.registerOnCloseCallback,\n true\n );\n }\n }\n\n @action\n open() {\n // Make flyout dialog visible using the native `showModal` method\n this.element.showModal();\n this.isOpen = true;\n\n // Prevent page from scrolling when the dialog is open\n if (this.body) this.body.style.setProperty('overflow', 'hidden');\n\n // Call \"onOpen\" callback function\n if (this.args.onOpen && typeof this.args.onOpen === 'function') {\n this.args.onOpen();\n }\n }\n\n @action\n async onDismiss() {\n // allow ember test helpers to be aware of when the `close` event fires\n // when using `click` or other helpers from '@ember/test-helpers'\n // Notice: this code will get stripped out in production builds (DEBUG evaluates to `true` in dev/test builds, but `false` in prod builds)\n if (this.element.open) {\n const token = waiter.beginAsync();\n const listener = () => {\n waiter.endAsync(token);\n this.element.removeEventListener('close', listener);\n };\n this.element.addEventListener('close', listener);\n }\n\n // Make flyout dialog invisible using the native `close` method\n this.element.close();\n\n // Reset page `overflow` property\n if (this.body) {\n this.body.style.removeProperty('overflow');\n if (this.bodyInitialOverflowValue === '') {\n if (this.body.style.length === 0) {\n this.body.removeAttribute('style');\n }\n } else {\n this.body.style.setProperty('overflow', this.bodyInitialOverflowValue);\n }\n }\n }\n}\n"],"names":["waiter","buildWaiter","DEFAULT_SIZE","HdsFlyoutSizesValues","Medium","DEFAULT_HAS_OVERLAY","SIZES","Object","values","HdsFlyoutIndexComponent","_class","Component","constructor","args","_initializerDefineProperty","_descriptor","_defineProperty","size","assert","join","includes","id","getElementId","classNames","classes","push","registerOnCloseCallback","event","onClose","isOpen","didInsert","element","body","document","bodyInitialOverflowValue","style","getPropertyValue","addEventListener","open","willDestroyNode","removeEventListener","showModal","setProperty","onOpen","onDismiss","token","beginAsync","listener","endAsync","close","removeProperty","length","removeAttribute","_applyDecoratedDescriptor","prototype","tracked","configurable","enumerable","writable","initializer","action","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
let HdsFlyoutSizesValues = /*#__PURE__*/function (HdsFlyoutSizesValues) {
|
|
2
|
+
HdsFlyoutSizesValues["Medium"] = "medium";
|
|
3
|
+
HdsFlyoutSizesValues["Large"] = "large";
|
|
4
|
+
return HdsFlyoutSizesValues;
|
|
5
|
+
}({});
|
|
6
|
+
|
|
7
|
+
export { HdsFlyoutSizesValues };
|
|
8
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sources":["../../../../src/components/hds/flyout/types.ts"],"sourcesContent":["export enum HdsFlyoutSizesValues {\n Medium = 'medium',\n Large = 'large',\n}\n\nexport type HdsFlyoutSizes = `${HdsFlyoutSizesValues}`;\n"],"names":["HdsFlyoutSizesValues"],"mappings":"AAAYA,IAAAA,oBAAoB,0BAApBA,oBAAoB,EAAA;EAApBA,oBAAoB,CAAA,QAAA,CAAA,GAAA,QAAA,CAAA;EAApBA,oBAAoB,CAAA,OAAA,CAAA,GAAA,OAAA,CAAA;AAAA,EAAA,OAApBA,oBAAoB,CAAA;AAAA,CAAA,CAAA,EAAA;;;;"}
|
|
@@ -2,7 +2,7 @@ import Component from '@glimmer/component';
|
|
|
2
2
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
3
3
|
import { setComponentTemplate } from '@ember/component';
|
|
4
4
|
|
|
5
|
-
var TEMPLATE = precompileTemplate("{{
|
|
5
|
+
var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<Hds::Text::Body\n @tag=\"div\"\n @size=\"100\"\n class={{this.classNames}}\n id={{this.id}}\n {{did-insert this.onInsert}}\n ...attributes\n aria-live=\"polite\"\n>\n {{#if (has-block)}}\n {{yield\n (hash\n minLength=this.minLength\n maxLength=this.maxLength\n currentLength=this.currentLength\n remaining=this.remaining\n shortfall=this.shortfall\n )\n }}\n {{else}}\n {{this.message}}\n {{/if}}\n</Hds::Text::Body>");
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* Copyright (c) HashiCorp, Inc.
|
|
@@ -11,17 +11,17 @@ var TEMPLATE = precompileTemplate("{{! @glint-nocheck: not typesafe yet }}\n{{!\
|
|
|
11
11
|
|
|
12
12
|
const ID_PREFIX = 'character-count-';
|
|
13
13
|
const NOOP = () => {};
|
|
14
|
-
class
|
|
14
|
+
class HdsFormCharacterCountComponent extends Component {
|
|
15
15
|
// The current number of characters in @value
|
|
16
16
|
get currentLength() {
|
|
17
|
-
|
|
17
|
+
const {
|
|
18
18
|
value
|
|
19
19
|
} = this.args;
|
|
20
20
|
return value ? value.length : 0;
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
// Inflector utility function to determine plural or singular for 'character' noun
|
|
24
|
-
|
|
24
|
+
_pluralize(count, prefix = '', noun = 'character', suffix = 's') {
|
|
25
25
|
return `${count}${prefix ? ' ' + prefix : ''} ${noun}${count !== 1 ? suffix : ''}`;
|
|
26
26
|
}
|
|
27
27
|
|
|
@@ -32,10 +32,12 @@ class HdsFormCharacterCountIndexComponent extends Component {
|
|
|
32
32
|
* @description The maximum number of characters allowed.
|
|
33
33
|
*/
|
|
34
34
|
get maxLength() {
|
|
35
|
-
|
|
35
|
+
const {
|
|
36
36
|
maxLength
|
|
37
37
|
} = this.args;
|
|
38
|
-
|
|
38
|
+
if (maxLength) {
|
|
39
|
+
return typeof maxLength === 'number' ? maxLength : parseInt(maxLength);
|
|
40
|
+
}
|
|
39
41
|
}
|
|
40
42
|
|
|
41
43
|
/**
|
|
@@ -45,10 +47,12 @@ class HdsFormCharacterCountIndexComponent extends Component {
|
|
|
45
47
|
* @description The minimum number of characters allowed.
|
|
46
48
|
*/
|
|
47
49
|
get minLength() {
|
|
48
|
-
|
|
50
|
+
const {
|
|
49
51
|
minLength
|
|
50
52
|
} = this.args;
|
|
51
|
-
|
|
53
|
+
if (minLength) {
|
|
54
|
+
return typeof minLength === 'number' ? minLength : parseInt(minLength);
|
|
55
|
+
}
|
|
52
56
|
}
|
|
53
57
|
|
|
54
58
|
/**
|
|
@@ -58,7 +62,7 @@ class HdsFormCharacterCountIndexComponent extends Component {
|
|
|
58
62
|
* @description The remaining number of characters.
|
|
59
63
|
*/
|
|
60
64
|
get remaining() {
|
|
61
|
-
return this.maxLength - this.currentLength;
|
|
65
|
+
return this.maxLength ? this.maxLength - this.currentLength : undefined;
|
|
62
66
|
}
|
|
63
67
|
|
|
64
68
|
/**
|
|
@@ -68,7 +72,7 @@ class HdsFormCharacterCountIndexComponent extends Component {
|
|
|
68
72
|
* @description The number of characters the content is falling short of.
|
|
69
73
|
*/
|
|
70
74
|
get shortfall() {
|
|
71
|
-
return this.minLength - this.currentLength;
|
|
75
|
+
return this.minLength ? this.minLength - this.currentLength : undefined;
|
|
72
76
|
}
|
|
73
77
|
|
|
74
78
|
/**
|
|
@@ -80,17 +84,17 @@ class HdsFormCharacterCountIndexComponent extends Component {
|
|
|
80
84
|
get message() {
|
|
81
85
|
let messageText = '';
|
|
82
86
|
if (this.minLength && this.currentLength === 0) {
|
|
83
|
-
messageText = `${this.
|
|
87
|
+
messageText = `${this._pluralize(this.minLength)} required`;
|
|
84
88
|
} else if (this.minLength && this.currentLength < this.minLength) {
|
|
85
|
-
messageText = `${this.
|
|
89
|
+
messageText = `${this._pluralize(this.shortfall, 'more')} required`;
|
|
86
90
|
} else if (this.maxLength && this.currentLength === 0) {
|
|
87
|
-
messageText = `${this.
|
|
91
|
+
messageText = `${this._pluralize(this.maxLength)} allowed`;
|
|
88
92
|
} else if (this.maxLength && this.currentLength <= this.maxLength) {
|
|
89
|
-
messageText = `${this.
|
|
90
|
-
} else if (this.currentLength > this.maxLength) {
|
|
91
|
-
messageText = `Exceeded by ${this.
|
|
93
|
+
messageText = `${this._pluralize(this.remaining)} remaining`;
|
|
94
|
+
} else if (this.maxLength && this.remaining && this.currentLength > this.maxLength) {
|
|
95
|
+
messageText = `Exceeded by ${this._pluralize(-this.remaining)}`;
|
|
92
96
|
} else {
|
|
93
|
-
messageText = `${this.
|
|
97
|
+
messageText = `${this._pluralize(this.currentLength)} entered`;
|
|
94
98
|
}
|
|
95
99
|
return messageText;
|
|
96
100
|
}
|
|
@@ -101,7 +105,7 @@ class HdsFormCharacterCountIndexComponent extends Component {
|
|
|
101
105
|
* @return {(string|null)} The "id" attribute to apply to the element or null, if no controlId is provided
|
|
102
106
|
*/
|
|
103
107
|
get id() {
|
|
104
|
-
|
|
108
|
+
const {
|
|
105
109
|
controlId
|
|
106
110
|
} = this.args;
|
|
107
111
|
if (controlId) {
|
|
@@ -115,8 +119,9 @@ class HdsFormCharacterCountIndexComponent extends Component {
|
|
|
115
119
|
* @type {function}
|
|
116
120
|
* @default () => {}
|
|
117
121
|
*/
|
|
122
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
118
123
|
get onInsert() {
|
|
119
|
-
|
|
124
|
+
const {
|
|
120
125
|
onInsert
|
|
121
126
|
} = this.args;
|
|
122
127
|
// notice: this is a guard used to prevent triggering an error when the component is used as standalone element
|
|
@@ -132,7 +137,7 @@ class HdsFormCharacterCountIndexComponent extends Component {
|
|
|
132
137
|
* @return {string} The "class" attribute to apply to the component.
|
|
133
138
|
*/
|
|
134
139
|
get classNames() {
|
|
135
|
-
|
|
140
|
+
const classes = ['hds-form-character-count'];
|
|
136
141
|
|
|
137
142
|
// add a class based on the @contextualClass argument
|
|
138
143
|
// notice: this will *not* be documented for public use
|
|
@@ -143,7 +148,7 @@ class HdsFormCharacterCountIndexComponent extends Component {
|
|
|
143
148
|
return classes.join(' ');
|
|
144
149
|
}
|
|
145
150
|
}
|
|
146
|
-
setComponentTemplate(TEMPLATE,
|
|
151
|
+
setComponentTemplate(TEMPLATE, HdsFormCharacterCountComponent);
|
|
147
152
|
|
|
148
|
-
export {
|
|
153
|
+
export { HdsFormCharacterCountComponent as default };
|
|
149
154
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../src/components/hds/form/character-count/index.hbs","../../../../../src/components/hds/form/character-count/index.
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../src/components/hds/form/character-count/index.hbs","../../../../../src/components/hds/form/character-count/index.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<Hds::Text::Body\\n @tag=\\\"div\\\"\\n @size=\\\"100\\\"\\n class={{this.classNames}}\\n id={{this.id}}\\n {{did-insert this.onInsert}}\\n ...attributes\\n aria-live=\\\"polite\\\"\\n>\\n {{#if (has-block)}}\\n {{yield\\n (hash\\n minLength=this.minLength\\n maxLength=this.maxLength\\n currentLength=this.currentLength\\n remaining=this.remaining\\n shortfall=this.shortfall\\n )\\n }}\\n {{else}}\\n {{this.message}}\\n {{/if}}\\n</Hds::Text::Body>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport type { HdsTextBodySignature } from '../../text/body';\n\nconst ID_PREFIX = 'character-count-';\nconst NOOP = (): void => {};\n\ninterface HdsFormCharacterCountSignature {\n Args: {\n contextualClass?: string;\n controlId?: string;\n maxLength?: number | string;\n minLength?: number | string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onInsert?: (element: HTMLElement, ...args: any[]) => void;\n value?: string;\n };\n Blocks: {\n default?: [\n {\n minLength?: number;\n maxLength?: number;\n currentLength?: number;\n remaining?: number;\n shortfall?: number;\n },\n ];\n };\n Element: HdsTextBodySignature['Element'];\n}\n\nexport default class HdsFormCharacterCountComponent extends Component<HdsFormCharacterCountSignature> {\n // The current number of characters in @value\n get currentLength(): number {\n const { value } = this.args;\n return value ? value.length : 0;\n }\n\n // Inflector utility function to determine plural or singular for 'character' noun\n private _pluralize(\n count?: number,\n prefix = '',\n noun = 'character',\n suffix = 's'\n ): string {\n return `${count}${prefix ? ' ' + prefix : ''} ${noun}${\n count !== 1 ? suffix : ''\n }`;\n }\n\n /**\n * @param maxLength\n * @type {number}\n * @default null\n * @description The maximum number of characters allowed.\n */\n get maxLength(): number | undefined {\n const { maxLength } = this.args;\n if (maxLength) {\n return typeof maxLength === 'number' ? maxLength : parseInt(maxLength);\n }\n }\n\n /**\n * @param minLength\n * @type {number}\n * @default null\n * @description The minimum number of characters allowed.\n */\n get minLength(): number | undefined {\n const { minLength } = this.args;\n if (minLength) {\n return typeof minLength === 'number' ? minLength : parseInt(minLength);\n }\n }\n\n /**\n * @param remaining\n * @type {number}\n * @default null\n * @description The remaining number of characters.\n */\n get remaining(): number | undefined {\n return this.maxLength ? this.maxLength - this.currentLength : undefined;\n }\n\n /**\n * @param shortfall\n * @type {number}\n * @default null\n * @description The number of characters the content is falling short of.\n */\n get shortfall(): number | undefined {\n return this.minLength ? this.minLength - this.currentLength : undefined;\n }\n\n /**\n * @param message\n * @type {string}\n * @default null\n * @description The character count message presented to users\n */\n get message(): string {\n let messageText = '';\n if (this.minLength && this.currentLength === 0) {\n messageText = `${this._pluralize(this.minLength)} required`;\n } else if (this.minLength && this.currentLength < this.minLength) {\n messageText = `${this._pluralize(this.shortfall, 'more')} required`;\n } else if (this.maxLength && this.currentLength === 0) {\n messageText = `${this._pluralize(this.maxLength)} allowed`;\n } else if (this.maxLength && this.currentLength <= this.maxLength) {\n messageText = `${this._pluralize(this.remaining)} remaining`;\n } else if (\n this.maxLength &&\n this.remaining &&\n this.currentLength > this.maxLength\n ) {\n messageText = `Exceeded by ${this._pluralize(-this.remaining)}`;\n } else {\n messageText = `${this._pluralize(this.currentLength)} entered`;\n }\n return messageText;\n }\n\n /**\n * Determines the unique ID to assign to the element\n * @method id\n * @return {(string|null)} The \"id\" attribute to apply to the element or null, if no controlId is provided\n */\n get id(): string | null {\n const { controlId } = this.args;\n if (controlId) {\n return `${ID_PREFIX}${controlId}`;\n }\n return null;\n }\n\n /**\n * @param onInsert\n * @type {function}\n * @default () => {}\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n get onInsert(): (element: HTMLElement, ...args: any[]) => void {\n const { onInsert } = this.args;\n // notice: this is a guard used to prevent triggering an error when the component is used as standalone element\n if (typeof onInsert === 'function') {\n return onInsert;\n } else {\n return NOOP;\n }\n }\n /**\n * Get the class names to apply to the component.\n * @method classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames(): string {\n const classes = ['hds-form-character-count'];\n\n // add a class based on the @contextualClass argument\n // notice: this will *not* be documented for public use\n // the reason for this is that the contextual component declarations don't pass attributes to the component\n if (this.args.contextualClass) {\n classes.push(this.args.contextualClass);\n }\n\n return classes.join(' ');\n }\n}\n"],"names":["ID_PREFIX","NOOP","HdsFormCharacterCountComponent","Component","currentLength","value","args","length","_pluralize","count","prefix","noun","suffix","maxLength","parseInt","minLength","remaining","undefined","shortfall","message","messageText","id","controlId","onInsert","classNames","classes","contextualClass","push","join","setComponentTemplate","TEMPLATE"],"mappings":"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"}
|
|
@@ -1,10 +1,16 @@
|
|
|
1
|
-
import
|
|
1
|
+
import templateOnlyComponent from '@ember/component/template-only';
|
|
2
2
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
3
3
|
import { setComponentTemplate } from '@ember/component';
|
|
4
4
|
|
|
5
|
-
var TEMPLATE = precompileTemplate("{{
|
|
5
|
+
var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<input type=\"checkbox\" class=\"hds-form-checkbox\" ...attributes value={{@value}} />");
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
/**
|
|
8
|
+
* Copyright (c) HashiCorp, Inc.
|
|
9
|
+
* SPDX-License-Identifier: MPL-2.0
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
const HdsFormCheckboxBaseComponent = templateOnlyComponent();
|
|
13
|
+
var base = setComponentTemplate(TEMPLATE, HdsFormCheckboxBaseComponent);
|
|
8
14
|
|
|
9
15
|
export { base as default };
|
|
10
16
|
//# sourceMappingURL=base.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sources":["../../../../../src/components/hds/form/checkbox/base.hbs","../../../../../src/components/hds/form/checkbox/base.
|
|
1
|
+
{"version":3,"file":"base.js","sources":["../../../../../src/components/hds/form/checkbox/base.hbs","../../../../../src/components/hds/form/checkbox/base.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<input type=\\\"checkbox\\\" class=\\\"hds-form-checkbox\\\" ...attributes value={{@value}} />\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport templateOnlyComponent from '@ember/component/template-only';\n\ninterface HdsFormCheckboxBaseSignature {\n Args: {\n value?: string;\n };\n Element: HTMLInputElement;\n}\n\nconst HdsFormCheckboxBaseComponent =\n templateOnlyComponent<HdsFormCheckboxBaseSignature>();\n\nexport default HdsFormCheckboxBaseComponent;\n"],"names":["HdsFormCheckboxBaseComponent","templateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,sKAAsK;;ACDxM;AACA;AACA;AACA;;AAWA,MAAMA,4BAA4B,GAChCC,qBAAqB,EAAgC,CAAA;AAEvD,WAAAC,oBAAA,CAAAC,QAAA,EAAeH,4BAA4B,CAAA;;;;"}
|
|
@@ -1,10 +1,16 @@
|
|
|
1
|
-
import
|
|
1
|
+
import templateOnlyComponent from '@ember/component/template-only';
|
|
2
2
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
3
3
|
import { setComponentTemplate } from '@ember/component';
|
|
4
4
|
|
|
5
|
-
var TEMPLATE = precompileTemplate("{{
|
|
5
|
+
var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<Hds::Form::Field\n @layout=\"flag\"\n @contextualClass={{@contextualClass}}\n @extraAriaDescribedBy={{@extraAriaDescribedBy}}\n @id={{@id}}\n as |F|\n>\n {{! Notice: the order of the elements is not relevant here, because it\'s controlled at \"Hds::Form::Field\" component level }}\n {{yield (hash Label=F.Label HelperText=F.HelperText Error=F.Error)}}\n <F.Control>\n <Hds::Form::Checkbox::Base\n @value={{@value}}\n name={{@name}}\n required={{@isRequired}}\n ...attributes\n id={{F.id}}\n aria-describedby={{F.ariaDescribedBy}}\n />\n </F.Control>\n</Hds::Form::Field>");
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
/**
|
|
8
|
+
* Copyright (c) HashiCorp, Inc.
|
|
9
|
+
* SPDX-License-Identifier: MPL-2.0
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
const HdsFormCheckboxFieldComponent = templateOnlyComponent();
|
|
13
|
+
var field = setComponentTemplate(TEMPLATE, HdsFormCheckboxFieldComponent);
|
|
8
14
|
|
|
9
15
|
export { field as default };
|
|
10
16
|
//# sourceMappingURL=field.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field.js","sources":["../../../../../src/components/hds/form/checkbox/field.hbs","../../../../../src/components/hds/form/checkbox/field.
|
|
1
|
+
{"version":3,"file":"field.js","sources":["../../../../../src/components/hds/form/checkbox/field.hbs","../../../../../src/components/hds/form/checkbox/field.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<Hds::Form::Field\\n @layout=\\\"flag\\\"\\n @contextualClass={{@contextualClass}}\\n @extraAriaDescribedBy={{@extraAriaDescribedBy}}\\n @id={{@id}}\\n as |F|\\n>\\n {{! Notice: the order of the elements is not relevant here, because it\\'s controlled at \\\"Hds::Form::Field\\\" component level }}\\n {{yield (hash Label=F.Label HelperText=F.HelperText Error=F.Error)}}\\n <F.Control>\\n <Hds::Form::Checkbox::Base\\n @value={{@value}}\\n name={{@name}}\\n required={{@isRequired}}\\n ...attributes\\n id={{F.id}}\\n aria-describedby={{F.ariaDescribedBy}}\\n />\\n </F.Control>\\n</Hds::Form::Field>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport templateOnlyComponent from '@ember/component/template-only';\nimport type { HdsFormFieldSignature } from '../field';\nimport type { ComponentLike } from '@glint/template';\nimport type { HdsFormLabelSignature } from '../label';\nimport type { HdsFormHelperTextSignature } from '../helper-text';\nimport type { HdsFormErrorSignature } from '../error';\n\nexport interface HdsFormCheckboxFieldSignature {\n Args: Omit<HdsFormFieldSignature['Args'], 'isOptional'> & {\n value?: string;\n name?: string;\n };\n Blocks: {\n default: [\n {\n Label?: ComponentLike<HdsFormLabelSignature>;\n HelperText?: ComponentLike<HdsFormHelperTextSignature>;\n Error?: ComponentLike<HdsFormErrorSignature>;\n },\n ];\n };\n Element: HdsFormFieldSignature['Element'];\n}\n\nconst HdsFormCheckboxFieldComponent =\n templateOnlyComponent<HdsFormCheckboxFieldSignature>();\n\nexport default HdsFormCheckboxFieldComponent;\n"],"names":["HdsFormCheckboxFieldComponent","templateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,yrBAAyrB;;ACD3tB;AACA;AACA;AACA;;AA0BA,MAAMA,6BAA6B,GACjCC,qBAAqB,EAAiC,CAAA;AAExD,YAAAC,oBAAA,CAAAC,QAAA,EAAeH,6BAA6B,CAAA;;;;"}
|
|
@@ -1,10 +1,16 @@
|
|
|
1
|
-
import
|
|
1
|
+
import templateOnlyComponent from '@ember/component/template-only';
|
|
2
2
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
3
3
|
import { setComponentTemplate } from '@ember/component';
|
|
4
4
|
|
|
5
|
-
var TEMPLATE = precompileTemplate("{{
|
|
5
|
+
var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<Hds::Form::Fieldset @layout={{@layout}} @isRequired={{@isRequired}} @isOptional={{@isOptional}} ...attributes as |F|>\n {{! Notice: the order of the elements is not relevant here, because it\'s controlled at \"Hds::Form::Fieldset\" component level }}\n {{yield (hash Legend=F.Legend HelperText=F.HelperText Error=F.Error)}}\n <F.Control>\n {{yield\n (hash\n CheckboxField=(component\n \"hds/form/checkbox/field\"\n contextualClass=\"hds-form-group__control-field\"\n isRequired=@isRequired\n name=@name\n extraAriaDescribedBy=F.ariaDescribedBy\n )\n )\n }}\n </F.Control>\n</Hds::Form::Fieldset>");
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
/**
|
|
8
|
+
* Copyright (c) HashiCorp, Inc.
|
|
9
|
+
* SPDX-License-Identifier: MPL-2.0
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
const HdsFormCheckboxGroupComponent = templateOnlyComponent();
|
|
13
|
+
var group = setComponentTemplate(TEMPLATE, HdsFormCheckboxGroupComponent);
|
|
8
14
|
|
|
9
15
|
export { group as default };
|
|
10
16
|
//# sourceMappingURL=group.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"group.js","sources":["../../../../../src/components/hds/form/checkbox/group.hbs","../../../../../src/components/hds/form/checkbox/group.
|
|
1
|
+
{"version":3,"file":"group.js","sources":["../../../../../src/components/hds/form/checkbox/group.hbs","../../../../../src/components/hds/form/checkbox/group.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<Hds::Form::Fieldset @layout={{@layout}} @isRequired={{@isRequired}} @isOptional={{@isOptional}} ...attributes as |F|>\\n {{! Notice: the order of the elements is not relevant here, because it\\'s controlled at \\\"Hds::Form::Fieldset\\\" component level }}\\n {{yield (hash Legend=F.Legend HelperText=F.HelperText Error=F.Error)}}\\n <F.Control>\\n {{yield\\n (hash\\n CheckboxField=(component\\n \\\"hds/form/checkbox/field\\\"\\n contextualClass=\\\"hds-form-group__control-field\\\"\\n isRequired=@isRequired\\n name=@name\\n extraAriaDescribedBy=F.ariaDescribedBy\\n )\\n )\\n }}\\n </F.Control>\\n</Hds::Form::Fieldset>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport templateOnlyComponent from '@ember/component/template-only';\nimport type { HdsFormFieldsetSignature } from '../fieldset';\nimport type { ComponentLike } from '@glint/template';\nimport type { HdsFormLegendSignature } from '../legend';\nimport type { HdsFormHelperTextSignature } from '../helper-text';\nimport type { HdsFormCheckboxFieldSignature } from './field';\nimport type { HdsFormErrorSignature } from '../error';\n\ninterface HdsFormCheckboxGroupSignature {\n Args: HdsFormFieldsetSignature['Args'] & {\n name?: string;\n };\n Blocks: {\n default: [\n {\n Legend?: ComponentLike<HdsFormLegendSignature>;\n HelperText?: ComponentLike<HdsFormHelperTextSignature>;\n CheckboxField?: ComponentLike<HdsFormCheckboxFieldSignature>;\n Error?: ComponentLike<HdsFormErrorSignature>;\n },\n ];\n };\n Element: HdsFormFieldsetSignature['Element'];\n}\n\nconst HdsFormCheckboxGroupComponent =\n templateOnlyComponent<HdsFormCheckboxGroupSignature>();\n\nexport default HdsFormCheckboxGroupComponent;\n"],"names":["HdsFormCheckboxGroupComponent","templateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,mvBAAmvB;;ACDrxB;AACA;AACA;AACA;;AA2BA,MAAMA,6BAA6B,GACjCC,qBAAqB,EAAiC,CAAA;AAExD,YAAAC,oBAAA,CAAAC,QAAA,EAAeH,6BAA6B,CAAA;;;;"}
|
|
@@ -2,7 +2,7 @@ import Component from '@glimmer/component';
|
|
|
2
2
|
import { precompileTemplate } from '@ember/template-compilation';
|
|
3
3
|
import { setComponentTemplate } from '@ember/component';
|
|
4
4
|
|
|
5
|
-
var TEMPLATE = precompileTemplate("{{
|
|
5
|
+
var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<div class={{this.classNames}} id={{this.id}} {{did-insert this.onInsert}} {{will-destroy this.onRemove}} ...attributes>\n <FlightIcon class=\"hds-form-error__icon\" @name=\"alert-diamond-fill\" />\n <Hds::Text::Body class=\"hds-form-error__content\" @tag=\"div\" @size=\"100\" @weight=\"medium\">\n {{yield (hash Message=(component \"hds/form/error/message\"))}}\n </Hds::Text::Body>\n</div>");
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* Copyright (c) HashiCorp, Inc.
|
|
@@ -11,14 +11,14 @@ var TEMPLATE = precompileTemplate("{{! @glint-nocheck: not typesafe yet }}\n{{!\
|
|
|
11
11
|
|
|
12
12
|
const ID_PREFIX = 'error-';
|
|
13
13
|
const NOOP = () => {};
|
|
14
|
-
class
|
|
14
|
+
class HdsFormErrorComponent extends Component {
|
|
15
15
|
/**
|
|
16
16
|
* Determines the unique ID to assign to the element
|
|
17
17
|
* @method id
|
|
18
18
|
* @return {(string|null)} The "id" attribute to apply to the element or null, if no controlId is provided
|
|
19
19
|
*/
|
|
20
20
|
get id() {
|
|
21
|
-
|
|
21
|
+
const {
|
|
22
22
|
controlId
|
|
23
23
|
} = this.args;
|
|
24
24
|
if (controlId) {
|
|
@@ -32,8 +32,9 @@ class HdsFormErrorIndexComponent extends Component {
|
|
|
32
32
|
* @type {function}
|
|
33
33
|
* @default () => {}
|
|
34
34
|
*/
|
|
35
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
35
36
|
get onInsert() {
|
|
36
|
-
|
|
37
|
+
const {
|
|
37
38
|
onInsert
|
|
38
39
|
} = this.args;
|
|
39
40
|
|
|
@@ -50,8 +51,9 @@ class HdsFormErrorIndexComponent extends Component {
|
|
|
50
51
|
* @type {function}
|
|
51
52
|
* @default () => {}
|
|
52
53
|
*/
|
|
54
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
53
55
|
get onRemove() {
|
|
54
|
-
|
|
56
|
+
const {
|
|
55
57
|
onRemove
|
|
56
58
|
} = this.args;
|
|
57
59
|
|
|
@@ -68,7 +70,7 @@ class HdsFormErrorIndexComponent extends Component {
|
|
|
68
70
|
* @return {string} The "class" attribute to apply to the component.
|
|
69
71
|
*/
|
|
70
72
|
get classNames() {
|
|
71
|
-
|
|
73
|
+
const classes = ['hds-form-error'];
|
|
72
74
|
|
|
73
75
|
// add a class based on the @contextualClass argument
|
|
74
76
|
// notice: this will *not* be documented for public use
|
|
@@ -79,7 +81,7 @@ class HdsFormErrorIndexComponent extends Component {
|
|
|
79
81
|
return classes.join(' ');
|
|
80
82
|
}
|
|
81
83
|
}
|
|
82
|
-
setComponentTemplate(TEMPLATE,
|
|
84
|
+
setComponentTemplate(TEMPLATE, HdsFormErrorComponent);
|
|
83
85
|
|
|
84
|
-
export { ID_PREFIX,
|
|
86
|
+
export { ID_PREFIX, HdsFormErrorComponent as default };
|
|
85
87
|
//# sourceMappingURL=index.js.map
|