@hashicorp/mds-react 0.9.3 → 0.9.5
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/components/accordion/index.js +9 -0
- package/components/accordion/index.js.map +1 -0
- package/components/accordion/item/button.js +44 -0
- package/components/accordion/item/button.js.map +1 -0
- package/components/accordion/item/index.js +59 -0
- package/components/accordion/item/index.js.map +1 -0
- package/components/accordion/style.module.scss.js +24 -0
- package/components/accordion/style.module.scss.js.map +1 -0
- package/components/alert/alert.module.scss.js +29 -0
- package/components/alert/alert.module.scss.js.map +1 -0
- package/components/alert/icon.js +34 -0
- package/components/alert/icon.js.map +1 -0
- package/components/alert/index.js +97 -0
- package/components/alert/index.js.map +1 -0
- package/components/badge/index.js +50 -0
- package/components/badge/index.js.map +1 -0
- package/components/badge/style.module.scss +8 -6
- package/components/badge/style.module.scss.js +22 -0
- package/components/badge/style.module.scss.js.map +1 -0
- package/components/badge-count/index.js +29 -0
- package/components/badge-count/index.js.map +1 -0
- package/components/badge-count/style.module.scss +7 -6
- package/components/badge-count/style.module.scss.js +15 -0
- package/components/badge-count/style.module.scss.js.map +1 -0
- package/components/breadcrumbs/index.js +38 -0
- package/components/breadcrumbs/index.js.map +1 -0
- package/components/breadcrumbs/item/index.js +32 -0
- package/components/breadcrumbs/item/index.js.map +1 -0
- package/components/breadcrumbs/style.module.scss.js +27 -0
- package/components/breadcrumbs/style.module.scss.js.map +1 -0
- package/components/breadcrumbs/truncation-button/index.js +25 -0
- package/components/breadcrumbs/truncation-button/index.js.map +1 -0
- package/components/button/button-primitive.d.ts +5 -0
- package/components/button/button-primitive.js +59 -0
- package/components/button/button-primitive.js.map +1 -0
- package/components/button/index.d.ts +4 -5
- package/components/button/index.js +69 -0
- package/components/button/index.js.map +1 -0
- package/components/button/styles.module.scss.js +32 -0
- package/components/button/styles.module.scss.js.map +1 -0
- package/components/card/card-thumbnail/card-thumbnail.module.css.js +8 -0
- package/components/card/card-thumbnail/card-thumbnail.module.css.js.map +1 -0
- package/components/card/card-thumbnail/index.js +23 -0
- package/components/card/card-thumbnail/index.js.map +1 -0
- package/components/card/index.d.ts +2 -1
- package/components/card/index.js +160 -0
- package/components/card/index.js.map +1 -0
- package/components/card/styles.module.css.js +29 -0
- package/components/card/styles.module.css.js.map +1 -0
- package/components/card/types.d.ts +1 -0
- package/components/code-block/code-block.module.scss.js +34 -0
- package/components/code-block/code-block.module.scss.js.map +1 -0
- package/components/code-block/code-lines/index.js +59 -0
- package/components/code-block/code-lines/index.js.map +1 -0
- package/components/code-block/code-lines/utils/split-html-into-lines.js +19 -0
- package/components/code-block/code-lines/utils/split-html-into-lines.js.map +1 -0
- package/components/code-block/code-lines/utils/split-jsx-into-lines.js +31 -0
- package/components/code-block/code-lines/utils/split-jsx-into-lines.js.map +1 -0
- package/components/code-block/hidden-copy-content/index.js +13 -0
- package/components/code-block/hidden-copy-content/index.js.map +1 -0
- package/components/code-block/index.js +88 -0
- package/components/code-block/index.js.map +1 -0
- package/components/code-block/utils/parse-highlighted-lines.js +39 -0
- package/components/code-block/utils/parse-highlighted-lines.js.map +1 -0
- package/components/code-block/utils/process-snippet.js +20 -0
- package/components/code-block/utils/process-snippet.js.map +1 -0
- package/components/code-block/utils/shellwords.js +33 -0
- package/components/code-block/utils/shellwords.js.map +1 -0
- package/components/combo-box-primitive/index.js +302 -0
- package/components/combo-box-primitive/index.js.map +1 -0
- package/components/dialog-primitive/dialog.module.scss.js +12 -0
- package/components/dialog-primitive/dialog.module.scss.js.map +1 -0
- package/components/dialog-primitive/index.js +15 -0
- package/components/dialog-primitive/index.js.map +1 -0
- package/components/disclosure-primitive/index.js +57 -0
- package/components/disclosure-primitive/index.js.map +1 -0
- package/components/disclosure-primitive/styles.module.css.js +7 -0
- package/components/disclosure-primitive/styles.module.css.js.map +1 -0
- package/components/disclosure-primitive/use-disclosure-primitive.js +17 -0
- package/components/disclosure-primitive/use-disclosure-primitive.js.map +1 -0
- package/components/dismiss-button/index.js +22 -0
- package/components/dismiss-button/index.js.map +1 -0
- package/components/dismiss-button/styles.module.scss.js +7 -0
- package/components/dismiss-button/styles.module.scss.js.map +1 -0
- package/components/dropdown/index.js +79 -0
- package/components/dropdown/index.js.map +1 -0
- package/components/dropdown/list-item/custom.js +9 -0
- package/components/dropdown/list-item/custom.js.map +1 -0
- package/components/dropdown/list-item/index.js +14 -0
- package/components/dropdown/list-item/index.js.map +1 -0
- package/components/dropdown/list-item/interactive.js +49 -0
- package/components/dropdown/list-item/interactive.js.map +1 -0
- package/components/dropdown/list-item/separator.js +17 -0
- package/components/dropdown/list-item/separator.js.map +1 -0
- package/components/dropdown/list-item/styles.module.css.js +26 -0
- package/components/dropdown/list-item/styles.module.css.js.map +1 -0
- package/components/dropdown/list-item/title.js +9 -0
- package/components/dropdown/list-item/title.js.map +1 -0
- package/components/dropdown/styles.module.css.js +24 -0
- package/components/dropdown/styles.module.css.js.map +1 -0
- package/components/dropdown/toggle-button/index.js +54 -0
- package/components/dropdown/toggle-button/index.js.map +1 -0
- package/components/dropdown/toggle-button/styles.module.scss.js +14 -0
- package/components/dropdown/toggle-button/styles.module.scss.js.map +1 -0
- package/components/flight-icon/flight-icon.module.css.js +12 -0
- package/components/flight-icon/flight-icon.module.css.js.map +1 -0
- package/components/flight-icon/index.js +58 -0
- package/components/flight-icon/index.js.map +1 -0
- package/components/form/checkbox/form-checkbox.module.css.js +8 -0
- package/components/form/checkbox/form-checkbox.module.css.js.map +1 -0
- package/components/form/checkbox/index.js +109 -0
- package/components/form/checkbox/index.js.map +1 -0
- package/components/form/error/form-error.module.css.js +14 -0
- package/components/form/error/form-error.module.css.js.map +1 -0
- package/components/form/error/index.js +22 -0
- package/components/form/error/index.js.map +1 -0
- package/components/form/field/form-field.module.css.js +17 -0
- package/components/form/field/form-field.module.css.js.map +1 -0
- package/components/form/field/index.js +46 -0
- package/components/form/field/index.js.map +1 -0
- package/components/form/fieldset/form-fieldset.module.css.js +19 -0
- package/components/form/fieldset/form-fieldset.module.css.js.map +1 -0
- package/components/form/fieldset/index.d.ts +1 -2
- package/components/form/fieldset/index.js +65 -0
- package/components/form/fieldset/index.js.map +1 -0
- package/components/form/file-input/form-file-input.module.scss +2 -2
- package/components/form/file-input/form-file-input.module.scss.js +7 -0
- package/components/form/file-input/form-file-input.module.scss.js.map +1 -0
- package/components/form/file-input/index.js +68 -0
- package/components/form/file-input/index.js.map +1 -0
- package/components/form/helper-text/form-helper-text.module.css.js +7 -0
- package/components/form/helper-text/form-helper-text.module.css.js.map +1 -0
- package/components/form/helper-text/index.js +22 -0
- package/components/form/helper-text/index.js.map +1 -0
- package/components/form/indicator/form-indicator.module.css.js +8 -0
- package/components/form/indicator/form-indicator.module.css.js.map +1 -0
- package/components/form/indicator/index.js +23 -0
- package/components/form/indicator/index.js.map +1 -0
- package/components/form/label/form-label.module.css.js +10 -0
- package/components/form/label/form-label.module.css.js.map +1 -0
- package/components/form/label/index.js +33 -0
- package/components/form/label/index.js.map +1 -0
- package/components/form/legend/form-legend.module.css.js +10 -0
- package/components/form/legend/form-legend.module.css.js.map +1 -0
- package/components/form/legend/index.js +19 -0
- package/components/form/legend/index.js.map +1 -0
- package/components/form/radio/form-radio.module.scss.js +8 -0
- package/components/form/radio/form-radio.module.scss.js.map +1 -0
- package/components/form/radio/index.d.ts +3 -5
- package/components/form/radio/index.js +100 -0
- package/components/form/radio/index.js.map +1 -0
- package/components/form/radio-card/RadioCardStory.css +21 -0
- package/components/form/radio-card/description.js +10 -0
- package/components/form/radio-card/description.js.map +1 -0
- package/components/form/radio-card/form-radio-card.module.css.js +30 -0
- package/components/form/radio-card/form-radio-card.module.css.js.map +1 -0
- package/components/form/radio-card/group.js +31 -0
- package/components/form/radio-card/group.js.map +1 -0
- package/components/form/radio-card/index.js +67 -0
- package/components/form/radio-card/index.js.map +1 -0
- package/components/form/radio-card/label.js +10 -0
- package/components/form/radio-card/label.js.map +1 -0
- package/components/form/select/form-select.module.css.js +14 -0
- package/components/form/select/form-select.module.css.js.map +1 -0
- package/components/form/select/index.js +79 -0
- package/components/form/select/index.js.map +1 -0
- package/components/form/super-select/form-super-select.module.css.js +22 -0
- package/components/form/super-select/form-super-select.module.css.js.map +1 -0
- package/components/form/super-select/index.js +170 -0
- package/components/form/super-select/index.js.map +1 -0
- package/components/form/text-input/index.js +91 -0
- package/components/form/text-input/index.js.map +1 -0
- package/components/form/text-input/styles.module.css.js +15 -0
- package/components/form/text-input/styles.module.css.js.map +1 -0
- package/components/form/textarea/form-textarea.module.css.js +14 -0
- package/components/form/textarea/form-textarea.module.css.js.map +1 -0
- package/components/form/textarea/index.js +74 -0
- package/components/form/textarea/index.js.map +1 -0
- package/components/form/toggle/form-toggle.module.scss.js +12 -0
- package/components/form/toggle/form-toggle.module.scss.js.map +1 -0
- package/components/form/toggle/index.js +102 -0
- package/components/form/toggle/index.js.map +1 -0
- package/components/hds/wrappers/tooltip.js +51 -0
- package/components/hds/wrappers/tooltip.js.map +1 -0
- package/components/icon-tile/index.js +50 -0
- package/components/icon-tile/index.js.map +1 -0
- package/components/icon-tile/style.module.scss +12 -10
- package/components/icon-tile/style.module.scss.js +29 -0
- package/components/icon-tile/style.module.scss.js.map +1 -0
- package/components/index.d.ts +1 -1
- package/components/index.js +116 -73
- package/components/index.js.map +1 -1
- package/components/inline-link/index.js +34 -0
- package/components/inline-link/index.js.map +1 -0
- package/components/inline-link/inline-link.module.css.js +11 -0
- package/components/inline-link/inline-link.module.css.js.map +1 -0
- package/components/interactive/index.js +59 -0
- package/components/interactive/index.js.map +1 -0
- package/components/legacy-button/index.js +65 -0
- package/components/legacy-button/index.js.map +1 -0
- package/components/legacy-button/utils.js +39 -0
- package/components/legacy-button/utils.js.map +1 -0
- package/components/menu-primitive/index.js +68 -0
- package/components/menu-primitive/index.js.map +1 -0
- package/components/menu-primitive/styles.module.css.js +12 -0
- package/components/menu-primitive/styles.module.css.js.map +1 -0
- package/components/menu-primitive/use-menu-primitive.js +17 -0
- package/components/menu-primitive/use-menu-primitive.js.map +1 -0
- package/components/modal/index.js +61 -0
- package/components/modal/index.js.map +1 -0
- package/components/modal/modal.module.css +5 -0
- package/components/modal/modal.module.css.js +8 -0
- package/components/modal/modal.module.css.js.map +1 -0
- package/components/modal/use-modal.js +17 -0
- package/components/modal/use-modal.js.map +1 -0
- package/components/separator/index.js +15 -0
- package/components/separator/index.js.map +1 -0
- package/components/separator/separator.module.css.js +10 -0
- package/components/separator/separator.module.css.js.map +1 -0
- package/components/standalone-link/index.js +54 -0
- package/components/standalone-link/index.js.map +1 -0
- package/components/standalone-link/styles.module.scss.js +17 -0
- package/components/standalone-link/styles.module.scss.js.map +1 -0
- package/components/table/index.js +52 -0
- package/components/table/index.js.map +1 -0
- package/components/table/table.module.scss.js +33 -0
- package/components/table/table.module.scss.js.map +1 -0
- package/components/table/td.js +28 -0
- package/components/table/td.js.map +1 -0
- package/components/table/th-button-tooltip.js +24 -0
- package/components/table/th-button-tooltip.js.map +1 -0
- package/components/table/th.js +43 -0
- package/components/table/th.js.map +1 -0
- package/components/table/tr.js +9 -0
- package/components/table/tr.js.map +1 -0
- package/components/table/utils.js +28 -0
- package/components/table/utils.js.map +1 -0
- package/components/tabs/index.js +115 -0
- package/components/tabs/index.js.map +1 -0
- package/components/tabs/tab-panel.js +35 -0
- package/components/tabs/tab-panel.js.map +1 -0
- package/components/tabs/tab.js +70 -0
- package/components/tabs/tab.js.map +1 -0
- package/components/tabs/tabs.module.scss.js +22 -0
- package/components/tabs/tabs.module.scss.js.map +1 -0
- package/components/tabs/use-tabs-context.js +16 -0
- package/components/tabs/use-tabs-context.js.map +1 -0
- package/components/text/index.js +112 -0
- package/components/text/index.js.map +1 -0
- package/components/text/style.module.scss.js +9 -0
- package/components/text/style.module.scss.js.map +1 -0
- package/components/visualizations/bar-chart/horizontal-chart/dataset-value/index.js +62 -0
- package/components/visualizations/bar-chart/horizontal-chart/dataset-value/index.js.map +1 -0
- package/components/visualizations/bar-chart/horizontal-chart/dataset-value/style.module.css.js +20 -0
- package/components/visualizations/bar-chart/horizontal-chart/dataset-value/style.module.css.js.map +1 -0
- package/components/visualizations/bar-chart/horizontal-chart/index.js +104 -0
- package/components/visualizations/bar-chart/horizontal-chart/index.js.map +1 -0
- package/components/visualizations/bar-chart/horizontal-chart/legend/index.js +13 -0
- package/components/visualizations/bar-chart/horizontal-chart/legend/index.js.map +1 -0
- package/components/visualizations/bar-chart/horizontal-chart/legend/style.module.css.js +14 -0
- package/components/visualizations/bar-chart/horizontal-chart/legend/style.module.css.js.map +1 -0
- package/components/visualizations/bar-chart/horizontal-chart/style.module.css.js +28 -0
- package/components/visualizations/bar-chart/horizontal-chart/style.module.css.js.map +1 -0
- package/components/visualizations/bar-chart/index.js +37 -0
- package/components/visualizations/bar-chart/index.js.map +1 -0
- package/components/visualizations/bar-chart/style.module.css.js +12 -0
- package/components/visualizations/bar-chart/style.module.css.js.map +1 -0
- package/components/visualizations/donut-chart/components/arc-tooltip/index.js +14 -0
- package/components/visualizations/donut-chart/components/arc-tooltip/index.js.map +1 -0
- package/components/visualizations/donut-chart/components/arc-tooltip/styles.module.css.js +10 -0
- package/components/visualizations/donut-chart/components/arc-tooltip/styles.module.css.js.map +1 -0
- package/components/visualizations/donut-chart/components/external-arc-label/index.js +58 -0
- package/components/visualizations/donut-chart/components/external-arc-label/index.js.map +1 -0
- package/components/visualizations/donut-chart/components/external-arc-label/styles.module.css.js +16 -0
- package/components/visualizations/donut-chart/components/external-arc-label/styles.module.css.js.map +1 -0
- package/components/visualizations/donut-chart/components/internal-arc-label/index.js +42 -0
- package/components/visualizations/donut-chart/components/internal-arc-label/index.js.map +1 -0
- package/components/visualizations/donut-chart/components/internal-arc-label/styles.module.css.js +14 -0
- package/components/visualizations/donut-chart/components/internal-arc-label/styles.module.css.js.map +1 -0
- package/components/visualizations/donut-chart/index.js +90 -0
- package/components/visualizations/donut-chart/index.js.map +1 -0
- package/components/visualizations/donut-chart/styles.module.css.js +20 -0
- package/components/visualizations/donut-chart/styles.module.css.js.map +1 -0
- package/hooks/use-media-query/index.js +16 -0
- package/hooks/use-media-query/index.js.map +1 -0
- package/index.js +155 -101
- package/index.js.map +1 -1
- package/package.json +1 -1
- package/patterns/card/newsroom-card/index.js +26 -0
- package/patterns/card/newsroom-card/index.js.map +1 -0
- package/patterns/card/newsroom-card/style.module.css.js +8 -0
- package/patterns/card/newsroom-card/style.module.css.js.map +1 -0
- package/patterns/card/partner-card/index.js +42 -0
- package/patterns/card/partner-card/index.js.map +1 -0
- package/patterns/card/partner-card/style.module.css.js +12 -0
- package/patterns/card/partner-card/style.module.css.js.map +1 -0
- package/patterns/card/person-card/index.js +54 -0
- package/patterns/card/person-card/index.js.map +1 -0
- package/patterns/card/person-card/style.module.css.js +12 -0
- package/patterns/card/person-card/style.module.css.js.map +1 -0
- package/patterns/card/primitives.js +77 -0
- package/patterns/card/primitives.js.map +1 -0
- package/patterns/card/promo-card/index.js +36 -0
- package/patterns/card/promo-card/index.js.map +1 -0
- package/patterns/card/resource-card/index.js +26 -0
- package/patterns/card/resource-card/index.js.map +1 -0
- package/patterns/card/style.module.css.js +30 -0
- package/patterns/card/style.module.css.js.map +1 -0
- package/patterns/card/thumbnails/index.js +25 -0
- package/patterns/card/thumbnails/index.js.map +1 -0
- package/patterns/card/unified-card/index.js +37 -0
- package/patterns/card/unified-card/index.js.map +1 -0
- package/patterns/copy-button/clipboard.js +78 -0
- package/patterns/copy-button/clipboard.js.map +1 -0
- package/patterns/copy-button/index.js +57 -0
- package/patterns/copy-button/index.js.map +1 -0
- package/patterns/copy-button/style.module.css.js +13 -0
- package/patterns/copy-button/style.module.css.js.map +1 -0
- package/patterns/index.js +32 -22
- package/patterns/index.js.map +1 -1
- package/patterns/layout/index.js +47 -0
- package/patterns/layout/index.js.map +1 -0
- package/patterns/layout/layout.module.css.js +20 -0
- package/patterns/layout/layout.module.css.js.map +1 -0
- package/patterns/product-badge/index.js +22 -0
- package/patterns/product-badge/index.js.map +1 -0
- package/patterns/product-badge/style.module.css.js +8 -0
- package/patterns/product-badge/style.module.css.js.map +1 -0
- package/patterns/product-logo/index.js +130 -0
- package/patterns/product-logo/index.js.map +1 -0
- package/patterns/product-logo/product-logo.module.css.js +13 -0
- package/patterns/product-logo/product-logo.module.css.js.map +1 -0
- package/patterns/related-content/index.js +65 -0
- package/patterns/related-content/index.js.map +1 -0
- package/patterns/related-content/style.module.css.js +22 -0
- package/patterns/related-content/style.module.css.js.map +1 -0
- package/style.css +1 -1
- package/utils/get-contrast-yiq.js +13 -0
- package/utils/get-contrast-yiq.js.map +1 -0
- package/utils/hooks/use-screen-size.js +10 -0
- package/utils/hooks/use-screen-size.js.map +1 -0
- package/utils/i18n/constants/index.js +98 -0
- package/utils/i18n/constants/index.js.map +1 -0
- package/utils/i18n/helpers/locale-provider.js +9 -0
- package/utils/i18n/helpers/locale-provider.js.map +1 -0
- package/utils/i18n/helpers/to-smart-sentence-case.js +12 -0
- package/utils/i18n/helpers/to-smart-sentence-case.js.map +1 -0
- package/utils/i18n/helpers/to-smart-title-case.js +10 -0
- package/utils/i18n/helpers/to-smart-title-case.js.map +1 -0
- package/utils/i18n/helpers/use-locale.js +14 -0
- package/utils/i18n/helpers/use-locale.js.map +1 -0
- package/utils/i18n/index.js +41 -0
- package/utils/i18n/index.js.map +1 -0
- package/utils/i18n/index2.js +33 -0
- package/utils/i18n/index2.js.map +1 -0
- package/utils/index.js +7 -7
- package/utils/make-normalizer/index.js +34 -0
- package/utils/make-normalizer/index.js.map +1 -0
- package/{index-DBjAbGt7.js → utils/mds-context/index.js} +20 -19
- package/utils/mds-context/index.js.map +1 -0
- package/index-B9mPJh9w.js +0 -579
- package/index-B9mPJh9w.js.map +0 -1
- package/index-BHBlMMNF.js +0 -16
- package/index-BHBlMMNF.js.map +0 -1
- package/index-C4GBbW3N.js +0 -3567
- package/index-C4GBbW3N.js.map +0 -1
- package/index-DBjAbGt7.js.map +0 -1
- package/index-WkGIywHj.js +0 -767
- package/index-WkGIywHj.js.map +0 -1
- package/use-screen-size-BOnkX_K-.js +0 -9
- package/use-screen-size-BOnkX_K-.js.map +0 -1
package/index-WkGIywHj.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-WkGIywHj.js","sources":["../src/components/flight-icon/index.tsx","../src/components/text/index.tsx","../src/components/badge/index.tsx","../src/components/interactive/index.tsx","../src/components/standalone-link/index.tsx","../src/components/button/index.tsx","../src/components/card/card-thumbnail/index.tsx","../src/components/card/index.tsx","../src/patterns/copy-button/clipboard.ts","../src/patterns/copy-button/index.tsx"],"sourcesContent":["'use client'\n\nimport svgSprite from '@hashicorp/flight-icons/svg-sprite/svg-sprite.svg'\nimport classNames from 'classnames'\nimport { useId, type SVGProps } from 'react'\nimport type { IconName } from '@hashicorp/flight-icons/svg'\nimport s from './flight-icon.module.css'\n\nconst FLIGHT_ICON_SIZES = [12, 16, 24, 32] as const\ntype FlightIconSize = (typeof FLIGHT_ICON_SIZES)[number]\n\nconst SPRITE_SIZE_MAP = {\n\t12: 16,\n\t16: 16,\n\t24: 24,\n\t32: 24,\n} as const\n\ntype FlightIconName = IconName | (string & Record<never, never>)\n\ninterface FlightIconProps extends SVGProps<SVGSVGElement> {\n\t/**\n\t * The name of the icon you wish to use. Search for existing icon\n\t * names in the Icon library.\n\t */\n\tname: FlightIconName\n\n\t/**\n\t * The `color` prop can be used to change the color. It works by setting\n\t * the value of the icon SVG’s fill property.\n\t */\n\tcolor?: string\n\n\t/**\n\t * The `size` prop can be used to change the size.\n\t */\n\tsize?: FlightIconSize\n\n\t/**\n\t * Determines whether the icon will stretch to fill the parent container.\n\t * Setting it to `true` will make the icon have a height and width of 100%\n\t * and a display of `block`.\n\t */\n\tstretched?: boolean\n\n\t/**\n\t * Sets the `display` style for the icon. Setting it to `false` will make\n\t * the icon have a display of `block`.\n\t */\n\tisInlineBlock?: boolean\n\n\t/**\n\t * Use to add accessible text to standalone icons. This will also change\n\t * the `aria-hidden` value to `false` instead of the default value of `true`.\n\t */\n\ttitle?: string\n\tclassName?: string\n}\n\n// When an SVG file is imported in Next.js, it is an object with a `src`\n// property. However, tools like Webpack and Vite default to returning a URL.\n// This runtime check allows the component to work in all of these cases.\nconst svgSpriteSrc =\n\ttypeof svgSprite === 'string' ? svgSprite : (svgSprite as { src: string }).src\n\nconst FlightIcon = ({\n\tname,\n\tcolor = 'currentColor',\n\tsize = 16,\n\tstretched = false,\n\tisInlineBlock = true,\n\ttitle,\n\tclassName,\n\t...rest\n}: FlightIconProps) => {\n\tconst iconId = useId()\n\tconst titleId = useId()\n\n\tconst spriteSize = SPRITE_SIZE_MAP[size]\n\n\treturn (\n\t\t<svg\n\t\t\tclassName={classNames(\n\t\t\t\ts['flight-icon'],\n\t\t\t\t`flight-icon-${name}`,\n\t\t\t\t{\n\t\t\t\t\t[s['display-inline']]: isInlineBlock && !stretched,\n\t\t\t\t\t[s['loading']]: name === 'loading',\n\t\t\t\t\t[s['running']]: name === 'running',\n\t\t\t\t},\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...rest}\n\t\t\taria-hidden={title ? 'false' : 'true'}\n\t\t\taria-labelledby={title ? titleId : undefined}\n\t\t\tfill={color}\n\t\t\tid={iconId}\n\t\t\trole={title ? 'img' : undefined}\n\t\t\twidth={stretched ? '100%' : size}\n\t\t\theight={stretched ? '100%' : size}\n\t\t\tviewBox={`0 0 ${spriteSize} ${spriteSize}`}\n\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t>\n\t\t\t{title ? (\n\t\t\t\t<>\n\t\t\t\t\t<title id={titleId}>{title}</title>\n\t\t\t\t\t<g role=\"presentation\">\n\t\t\t\t\t\t<use href={`${svgSpriteSrc}#flight-${name}-${spriteSize}`}></use>\n\t\t\t\t\t</g>\n\t\t\t\t</>\n\t\t\t) : (\n\t\t\t\t<use href={`${svgSpriteSrc}#flight-${name}-${spriteSize}`}></use>\n\t\t\t)}\n\t\t</svg>\n\t)\n}\n\nFlightIcon.displayName = 'FlightIcon'\n\nexport type { FlightIconProps, FlightIconSize, FlightIconName }\nexport { FlightIcon, FLIGHT_ICON_SIZES }\n","import classNames from 'classnames'\nimport {\n\tcreateElement,\n\ttype ComponentPropsWithRef,\n\ttype ElementType,\n} from 'react'\nimport s from './style.module.scss'\n\nconst TEXT_COLORS = [\n\t'primary',\n\t'strong',\n\t'faint',\n\t'disabled',\n\t'high-contrast',\n\t'action',\n\t'action-hover',\n\t'action-active',\n\t'highlight',\n\t'highlight-on-surface',\n\t'highlight-high-contrast',\n\t'success',\n\t'success-on-surface',\n\t'success-high-contrast',\n\t'warning',\n\t'warning-on-surface',\n\t'warning-high-contrast',\n\t'critical',\n\t'critical-on-surface',\n\t'critical-high-contrast',\n] as const\n\nconst TEXT_GROUPS = [\n\t'hds-body',\n\t'code',\n\t'body',\n\t'display-expressive',\n\t'label',\n] as const\n\nconst TEXT_SIZES = [\n\t'100',\n\t'200',\n\t'300',\n\t'400',\n\t'500',\n\t'600',\n\t'700',\n\t'800',\n] as const\n\nconst TEXT_WEIGHTS = ['regular', 'medium', 'semibold', 'bold'] as const\n\ntype TextColor = (typeof TEXT_COLORS)[number]\ntype TextWeight = (typeof TEXT_WEIGHTS)[number]\ntype TextGroup = (typeof TEXT_GROUPS)[number]\ntype TextSize = (typeof TEXT_SIZES)[number]\n\n// small typescript hack to support autocomplete and arbitrary strings\ntype HexColor = string & { hexish?: unknown }\n\ninterface BaseTextProps<T extends ElementType> {\n\ttag?: T\n\tsize?: TextSize\n\tweight?: TextWeight\n\talign?: 'left' | 'center' | 'right'\n\tcolor?: TextColor | HexColor\n\tclassName?: string\n}\n\ninterface TextImplProps<T extends ElementType> extends BaseTextProps<T> {\n\tgroup: TextGroup\n}\n\nfunction getTypographyToken(group: TextGroup, size: TextSize): string {\n\tconst groupToTokenMap: Record<TextGroup, string> = {\n\t\t'hds-body': `mds-typography-legacy-body-${size}`,\n\t\tcode: `mds-typography-code-${size}`,\n\t\t'display-expressive': `mds-typography-display-expressive-${size}`,\n\t\tlabel: `mds-typography-label`,\n\t\tbody: `mds-typography-body-${size}`,\n\t}\n\n\treturn groupToTokenMap[group]\n}\n\nconst TextImpl = <T extends ElementType = 'span'>({\n\ttag,\n\tgroup,\n\tsize = '200',\n\tweight,\n\talign,\n\tcolor,\n\tchildren,\n\tclassName,\n\t...rest\n}: TextImplProps<T> &\n\tOmit<ComponentPropsWithRef<T>, keyof TextImplProps<T>>) => {\n\tconst Component = tag ?? 'span'\n\tconst variant = getTypographyToken(group, size)\n\n\tconst usesPredefinedColor = TEXT_COLORS.includes(color as TextColor)\n\n\treturn (\n\t\t<Component\n\t\t\tclassName={classNames(\n\t\t\t\tvariant,\n\t\t\t\t{\n\t\t\t\t\t[s[`align-${align}`]]: align,\n\t\t\t\t\t[`mds-typography-font-weight-${weight}`]: weight,\n\t\t\t\t\t[`mds-foreground-${color}`]: color && usesPredefinedColor,\n\t\t\t\t},\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\tstyle={color && !usesPredefinedColor ? { color } : {}}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{children}\n\t\t</Component>\n\t)\n}\n\ninterface BodyProps<T extends ElementType> extends BaseTextProps<T> {\n\tsize?: '200' | '300' | '400'\n}\n\nconst Body = <T extends ElementType>({\n\tsize = '300',\n\t...rest\n}: BodyProps<T> & Omit<ComponentPropsWithRef<T>, keyof BodyProps<T>>) => {\n\treturn createElement(TextImpl, {\n\t\t...rest,\n\t\tsize,\n\t\tgroup: 'body',\n\t})\n}\n\ninterface DisplayExpressiveProps<T extends ElementType>\n\textends BaseTextProps<T> {\n\tsize?: '100' | '200' | '300' | '400' | '500' | '600' | '700' | '800'\n}\n\nconst DisplayExpressive = <T extends ElementType>({\n\tsize = '200',\n\t...rest\n}: DisplayExpressiveProps<T> &\n\tOmit<ComponentPropsWithRef<T>, keyof DisplayExpressiveProps<T>>) => {\n\treturn createElement(TextImpl, {\n\t\t...rest,\n\t\tsize,\n\t\tgroup: 'display-expressive',\n\t})\n}\n\ntype LabelProps<T extends ElementType> = Omit<BaseTextProps<T>, 'size'>\n\nconst Label = <T extends ElementType>(\n\tprops: LabelProps<T> & Omit<ComponentPropsWithRef<T>, keyof LabelProps<T>>\n) => {\n\treturn createElement(TextImpl, {\n\t\t...props,\n\t\tgroup: 'label',\n\t})\n}\n\ninterface HDSBodyProps<T extends ElementType> extends BaseTextProps<T> {\n\tsize?: '100' | '200' | '300'\n}\n\nconst HDSBody = <T extends ElementType>({\n\tsize = '200',\n\tweight = 'regular',\n\t...rest\n}: HDSBodyProps<T> & Omit<ComponentPropsWithRef<T>, keyof HDSBodyProps<T>>) => {\n\treturn createElement(TextImpl, {\n\t\t...rest,\n\t\tsize,\n\t\tweight,\n\t\tgroup: 'hds-body',\n\t})\n}\n\ninterface CodeProps<T extends ElementType> extends BaseTextProps<T> {\n\tsize?: '100' | '200' | '300'\n}\n\nconst Code = <T extends ElementType>({\n\tsize = '200',\n\tweight = 'regular',\n\t...rest\n}: CodeProps<T> & Omit<ComponentPropsWithRef<T>, keyof CodeProps<T>>) => {\n\treturn createElement(TextImpl, {\n\t\t...rest,\n\t\tsize,\n\t\tweight,\n\t\tgroup: 'code',\n\t})\n}\n\nconst Text = {\n\tBody,\n\tDisplayExpressive,\n\tLabel,\n\tHDSBody,\n\tCode,\n}\n\nexport { Text, TEXT_COLORS, TEXT_WEIGHTS }\n","import classNames from 'classnames'\nimport type { FlightIconName, FlightIconSize } from '../flight-icon'\nimport { FlightIcon } from '../flight-icon'\nimport s from './style.module.scss'\n\nconst BADGE_SIZES = ['small', 'medium', 'large'] as const\ntype BadgeSize = (typeof BADGE_SIZES)[number]\n\nconst BADGE_TYPES = ['filled', 'inverted', 'outlined'] as const\ntype BadgeType = (typeof BADGE_TYPES)[number]\n\nconst BADGE_COLORS = [\n\t'neutral',\n\t'neutral-dark-mode',\n\t'highlight',\n\t'success',\n\t'warning',\n\t'critical',\n] as const\ntype BadgeColor = (typeof BADGE_COLORS)[number]\n\nconst ICON_SIZE_MAP = {\n\tsmall: 12,\n\tmedium: 16,\n\tlarge: 16,\n} as const satisfies Record<'small' | 'medium' | 'large', FlightIconSize>\n\ninterface BadgeProps {\n\t/** Use this parameter to show an icon. */\n\ticon?: FlightIconName\n\n\t/**\n\t * The `iconColor` prop can be used to change the icon color. It works by setting\n\t * the value of the icon SVG’s fill property.\n\t */\n\ticonColor?: string\n\n\t/** This indicates if the button will only contain an icon. An internal check is in place to ensure that accessible text is still applied to the component. */\n\ticonOnly?: boolean\n\n\t/** The text of the Badge or value of the screen-reader only element if isIconOnly is set to true. If no text value is defined an error will be thrown. */\n\ttext: string\n\n\tsize?: BadgeSize\n\ttype?: BadgeType\n\tcolor?: BadgeColor\n\tclassName?: string\n}\n\nconst Badge = ({\n\ticon,\n\ticonColor,\n\ticonOnly,\n\ttext,\n\tsize = 'medium',\n\ttype = 'filled',\n\tcolor = 'neutral',\n\tclassName,\n\t...rest\n}: BadgeProps) => {\n\treturn (\n\t\t<div\n\t\t\tclassName={classNames(\n\t\t\t\ts.badge,\n\t\t\t\ts[`size-${size}`],\n\t\t\t\ts[`type-${type}`],\n\t\t\t\ts[`color-${color}`],\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{icon && (\n\t\t\t\t<FlightIcon name={icon} color={iconColor} size={ICON_SIZE_MAP[size]} />\n\t\t\t)}\n\t\t\t{iconOnly && icon ? (\n\t\t\t\t<span className=\"sr-only\">{text}</span>\n\t\t\t) : (\n\t\t\t\t<div className={s.text}>{text}</div>\n\t\t\t)}\n\t\t</div>\n\t)\n}\n\nBadge.displayName = 'Badge'\n\nexport type { BadgeProps, BadgeColor, BadgeSize, BadgeType }\nexport { Badge, BADGE_COLORS, BADGE_SIZES, BADGE_TYPES }\n","'use client'\n\nimport { forwardRef, type ForwardRefExoticComponent } from 'react'\nimport type { ButtonHTMLAttributes, MouseEventHandler } from 'react'\nimport { useMDSLink } from '../../utils/mds-context'\n\ninterface InteractiveProps extends React.HTMLAttributes<HTMLElement> {\n\tisHrefExternal?: boolean\n\thref?: string\n\tonClick?: MouseEventHandler\n\ttype?: ButtonHTMLAttributes<HTMLButtonElement>['type']\n\tprefetch?: boolean\n\tlocale?: string\n}\n\nconst Interactive = forwardRef<\n\tHTMLAnchorElement | HTMLButtonElement,\n\tInteractiveProps\n>((props, ref) => {\n\tconst Link = useMDSLink()\n\tconst {\n\t\thref,\n\t\tclassName,\n\t\tisHrefExternal,\n\t\tonClick,\n\t\tchildren,\n\t\tlocale,\n\t\t...rest\n\t} = props\n\n\t// TODO: trigger link on space key up\n\tif (href) {\n\t\treturn (\n\t\t\t<Link\n\t\t\t\tclassName={className}\n\t\t\t\ttarget={isHrefExternal ? '_blank' : undefined}\n\t\t\t\trel={isHrefExternal ? 'noopener noreferrer' : undefined}\n\t\t\t\tonClick={onClick}\n\t\t\t\t{...getLocalizedLinkProps(href, locale, isHrefExternal)}\n\t\t\t\t{...rest}\n\t\t\t\tref={ref as ForwardRefExoticComponent<HTMLAnchorElement>}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</Link>\n\t\t)\n\t} else {\n\t\treturn (\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\tclassName={className}\n\t\t\t\tonClick={onClick}\n\t\t\t\t{...rest}\n\t\t\t\tref={ref as ForwardRefExoticComponent<HTMLButtonElement>}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</button>\n\t\t)\n\t}\n})\nInteractive.displayName = 'Interactive'\n\n/**\n * Smaller, local version of our getLocalizedLinkProps util,\n * cloned here to work around a cyclic dependency issue\n * with the main @web/utils package.\n *\n * @param url An internal URL path\n * @param locale A supported locale\n * @returns A prefixed URL if locale is defined, otherwise the URL without prefix\n */\nexport const getLocalizedLinkProps = (\n\thref: string,\n\tlocale?: string,\n\tisHrefExternal?: boolean\n): {\n\thref: string\n\threfLang: string | undefined\n\tisHrefExternal?: boolean\n} => {\n\tif (isHrefExternal) {\n\t\treturn {\n\t\t\thref: href,\n\t\t\threfLang: undefined,\n\t\t}\n\t}\n\n\tif (\n\t\t['en', 'de', 'es', 'fr', 'ja', 'ko', 'pt', 'id'].includes(\n\t\t\thref.substring(1, 3)\n\t\t)\n\t) {\n\t\t// Don't localize if the href is already localized\n\t\treturn {\n\t\t\thref: href,\n\t\t\threfLang: href.substring(1, 3),\n\t\t}\n\t}\n\n\tif (href.startsWith('/') && locale) {\n\t\treturn {\n\t\t\thref: `/${locale}${href}`,\n\t\t\threfLang: locale,\n\t\t}\n\t}\n\n\treturn {\n\t\thref: href,\n\t\threfLang: undefined,\n\t}\n}\n\nexport type { InteractiveProps }\nexport { Interactive }\n","import { forwardRef } from 'react'\nimport classNames from 'classnames'\nimport type { InteractiveProps } from '../interactive'\nimport { Interactive } from '../interactive'\nimport { FlightIcon } from '../flight-icon'\nimport s from './styles.module.scss'\n\nconst STANDALONE_LINK_SIZES = ['small', 'medium', 'large'] as const\ntype StandaloneLinkSize = (typeof STANDALONE_LINK_SIZES)[number]\n\nconst STANDALONE_LINK_COLORS = [\n\t'primary',\n\t'secondary',\n\t'secondary-inverted',\n] as const\ntype StandaloneLinkColor = (typeof STANDALONE_LINK_COLORS)[number]\n\nconst STANDALONE_LINK_ICON_POSITIONS = ['leading', 'trailing'] as const\ntype StandaloneLinkIconPosition =\n\t(typeof STANDALONE_LINK_ICON_POSITIONS)[number]\n\ninterface StandaloneLinkProps extends Omit<InteractiveProps, 'color' | 'size'> {\n\ttext: string\n\tsize?: StandaloneLinkSize\n\tcolor?: StandaloneLinkColor\n\ticon?: string\n\ticonPosition?: StandaloneLinkIconPosition\n\thref?: string\n\tlocale?: string\n\tisHrefExternal?: boolean\n\tonClick?: () => void\n\tclassName?: string\n\t'data-testid'?: string\n}\n\nconst StandaloneLink = forwardRef<\n\tHTMLAnchorElement | HTMLButtonElement,\n\tStandaloneLinkProps\n>(\n\t(\n\t\t{\n\t\t\ttext,\n\t\t\tsize = 'medium',\n\t\t\tcolor = 'primary',\n\t\t\ticon,\n\t\t\ticonPosition = 'leading',\n\t\t\tclassName,\n\t\t\t'data-testid': dataTestId,\n\t\t\tlocale,\n\t\t\t...props\n\t\t},\n\t\tref\n\t) => {\n\t\tconst iconElement = icon && <FlightIcon name={icon} size={16} />\n\n\t\treturn (\n\t\t\t<Interactive\n\t\t\t\t{...props}\n\t\t\t\tref={ref}\n\t\t\t\tclassName={classNames(\n\t\t\t\t\ts['standalone-link'],\n\t\t\t\t\ts[`size-${size}`],\n\t\t\t\t\ts[`color-${color}`],\n\t\t\t\t\ts[`icon-position-${iconPosition}`],\n\t\t\t\t\tclassName\n\t\t\t\t)}\n\t\t\t\tdata-testid={dataTestId}\n\t\t\t\tlocale={locale}\n\t\t\t>\n\t\t\t\t{iconElement && iconPosition === 'leading' && iconElement}\n\t\t\t\t<span className={s.text}>{text}</span>\n\t\t\t\t{iconElement && iconPosition === 'trailing' && iconElement}\n\t\t\t</Interactive>\n\t\t)\n\t}\n)\n\nStandaloneLink.displayName = 'StandaloneLink'\n\nexport type {\n\tStandaloneLinkSize,\n\tStandaloneLinkColor,\n\tStandaloneLinkIconPosition,\n\tStandaloneLinkProps,\n}\nexport {\n\tSTANDALONE_LINK_SIZES,\n\tSTANDALONE_LINK_COLORS,\n\tSTANDALONE_LINK_ICON_POSITIONS,\n\tStandaloneLink,\n}\n","import type { ForwardRefExoticComponent } from 'react'\nimport { forwardRef } from 'react'\nimport classNames from 'classnames'\nimport { Interactive } from '../interactive'\nimport type { FlightIconSize } from '../flight-icon'\nimport { FlightIcon } from '../flight-icon'\nimport s from './styles.module.scss'\n\nexport const BUTTON_SIZES = ['small', 'medium', 'large'] as const\nexport type ButtonSize = (typeof BUTTON_SIZES)[number]\n\nexport const BUTTON_ICON_POSITIONS = ['leading', 'trailing'] as const\nexport type ButtonIconPosition = (typeof BUTTON_ICON_POSITIONS)[number]\n\nexport const BUTTON_COLORS = [\n\t'primary',\n\t'primary-black',\n\t'primary-white',\n\t'secondary', // deprecated; maps to secondary-white\n\t'secondary-high-contrast', // alternates based on theme\n\t'secondary-white',\n\t'secondary-black',\n\t'tertiary',\n\t'critical',\n\t'boundary',\n\t'consul',\n\t'nomad',\n\t'packer',\n\t'terraform',\n\t'vagrant',\n\t'vault',\n\t'waypoint',\n\t'hashicorp', // alias to primary\n] as const\nexport type ButtonColor = (typeof BUTTON_COLORS)[number]\n\n// These are the only “real” colors our legacy button knows about\nconst LEGACY_COLORS = [\n\t'primary',\n\t'secondary',\n\t'tertiary',\n\t'critical',\n\t'custom',\n] as const\ntype LegacyButtonColor = (typeof LEGACY_COLORS)[number]\n\n// map HDS “super-set” colors down to our legacy ones\nconst COLOR_MAP: Record<ButtonColor, LegacyButtonColor> = {\n\tprimary: 'primary',\n\t'primary-black': 'custom',\n\t'primary-white': 'custom',\n\tsecondary: 'custom',\n\t'secondary-high-contrast': 'custom',\n\t'secondary-white': 'custom',\n\t'secondary-black': 'custom',\n\ttertiary: 'tertiary',\n\tcritical: 'critical',\n\tboundary: 'custom',\n\tconsul: 'custom',\n\tnomad: 'custom',\n\tpacker: 'custom',\n\tterraform: 'custom',\n\tvagrant: 'custom',\n\tvault: 'custom',\n\twaypoint: 'custom',\n\thashicorp: 'primary',\n}\n\ninterface ButtonPrimitiveProps {\n\tsize?: ButtonSize\n\tcolor?: LegacyButtonColor\n\tisFullWidth?: boolean\n\tisIconOnly?: boolean\n\ticon?: string\n\ticonPosition?: ButtonIconPosition\n\ttext?: string\n\thref?: string\n\tisHrefExternal?: boolean\n\tonClick?: React.MouseEventHandler<HTMLButtonElement>\n\tclassName?: string\n\tlocale?: string\n\tdisabled?: boolean\n\tautoFocus?: boolean\n\ttype?: 'button' | 'submit' | 'reset'\n}\n\nconst ICON_SIZE_MAP = {\n\tsmall: 12,\n\tmedium: 16,\n\tlarge: 24,\n} as const satisfies Record<'small' | 'medium' | 'large', FlightIconSize>\n\nconst ButtonPrimitive = forwardRef<HTMLButtonElement, ButtonPrimitiveProps>(\n\t(\n\t\t{\n\t\t\tsize = 'medium',\n\t\t\tcolor = 'primary',\n\t\t\tisFullWidth,\n\t\t\tisIconOnly,\n\t\t\ticon,\n\t\t\ticonPosition = 'leading',\n\t\t\ttext,\n\t\t\thref,\n\t\t\tisHrefExternal,\n\t\t\tclassName,\n\t\t\tlocale,\n\t\t\t...rest\n\t\t},\n\t\tref\n\t) => {\n\t\tconst hasIcon = Boolean(icon)\n\t\tconst showIconOnly = isIconOnly && hasIcon\n\n\t\tconst iconElement = icon && (\n\t\t\t<FlightIcon name={icon} size={ICON_SIZE_MAP[size]} />\n\t\t)\n\n\t\treturn (\n\t\t\t<Interactive\n\t\t\t\tclassName={classNames(\n\t\t\t\t\ts.button,\n\t\t\t\t\ts[`size-${size}`],\n\t\t\t\t\t{\n\t\t\t\t\t\t[s['width-full']]: isFullWidth,\n\t\t\t\t\t\t[s['icon-only']]: showIconOnly,\n\t\t\t\t\t},\n\t\t\t\t\tcolor !== 'custom' && s[`color-${color}`],\n\t\t\t\t\tclassName\n\t\t\t\t)}\n\t\t\t\thref={rest.disabled ? '' : href}\n\t\t\t\tisHrefExternal={isHrefExternal}\n\t\t\t\taria-label={showIconOnly ? text : undefined}\n\t\t\t\tlocale={locale}\n\t\t\t\t{...rest}\n\t\t\t\tref={ref}\n\t\t\t>\n\t\t\t\t{showIconOnly && icon ? (\n\t\t\t\t\ticonElement\n\t\t\t\t) : (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{icon && iconPosition === 'leading' && iconElement}\n\t\t\t\t\t\t<div className={s.text}>{text}</div>\n\t\t\t\t\t\t{icon && iconPosition === 'trailing' && iconElement}\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t</Interactive>\n\t\t)\n\t}\n)\nButtonPrimitive.displayName = 'ButtonPrimitive'\n\nexport interface ButtonProps extends Omit<ButtonPrimitiveProps, 'color'> {\n\tcolor?: ButtonColor\n}\n\nexport const Button = forwardRef<\n\tHTMLAnchorElement | HTMLButtonElement,\n\tButtonProps\n>(({ color = 'primary', className, ...rest }, ref) => {\n\tconst legacyColor = COLOR_MAP[color]\n\n\tconst remappedColors: Partial<Record<ButtonColor, ButtonColor>> = {\n\t\thashicorp: 'primary',\n\t\tsecondary: 'secondary-white',\n\t}\n\n\tconst customClass =\n\t\tlegacyColor === 'custom'\n\t\t\t? s[`color-${remappedColors[color] ?? color}`]\n\t\t\t: undefined\n\n\treturn (\n\t\t<ButtonPrimitive\n\t\t\t{...rest}\n\t\t\tcolor={legacyColor}\n\t\t\tclassName={classNames(customClass, className)}\n\t\t\tref={ref as ForwardRefExoticComponent<HTMLButtonElement>}\n\t\t/>\n\t)\n})\n\nButton.displayName = 'Button'\n","'use client'\n\nimport { useMDSImage } from '../../../utils/mds-context'\nimport type { CardThumbnailProps } from '../types'\nimport s from './card-thumbnail.module.css'\n\nexport const CardThumbnail = ({\n\talt,\n\taspectRatio,\n\tsrc,\n}: CardThumbnailProps) => {\n\tconst Image = useMDSImage()\n\treturn src ? (\n\t\t<div\n\t\t\tclassName={s.thumbnail}\n\t\t\tstyle={{ ['--aspect-ratio' as string]: aspectRatio }}\n\t\t>\n\t\t\t<Image fill alt={alt} src={src} />\n\t\t</div>\n\t) : null\n}\n","'use client'\n\nimport { forwardRef, type PropsWithChildren } from 'react'\nimport type { CardContentProps, CardProps, CardCtaProps } from './types'\nimport { CardThumbnail } from './card-thumbnail'\nimport { useMDSLink } from '../../utils/mds-context'\nimport { Text } from '../text'\nimport classNames from 'classnames'\nimport { Badge } from '../badge'\nimport { StandaloneLink } from '../standalone-link'\nimport { IconArrowRight24 } from '@hashicorp/flight-icons/svg-react/arrow-right-24'\nimport s from './styles.module.css'\n\nconst Card = forwardRef<HTMLDivElement, CardProps>(\n\t(\n\t\t{\n\t\t\tchildren,\n\t\t\tclassName,\n\t\t\tcontent,\n\t\t\tctaLabel,\n\t\t\thref,\n\t\t\tstandaloneLink,\n\t\t\tisExternal,\n\t\t\tonClickCapture,\n\t\t\t'aria-label': ariaLabel,\n\t\t},\n\t\tref\n\t) => {\n\t\tconst Link = useMDSLink()\n\n\t\tconst isCardLink = href && !ctaLabel\n\n\t\tconst linkProps = isExternal\n\t\t\t? { target: '_blank', rel: 'noopener noreferrer' }\n\t\t\t: {}\n\n\t\treturn (\n\t\t\t<div\n\t\t\t\tref={ref}\n\t\t\t\tclassName={classNames(\n\t\t\t\t\ts.card,\n\t\t\t\t\t{ [s.interactive]: isCardLink },\n\t\t\t\t\tclassName\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t{isCardLink && (\n\t\t\t\t\t<Link\n\t\t\t\t\t\thref={href}\n\t\t\t\t\t\tclassName={s.link}\n\t\t\t\t\t\tdraggable=\"false\"\n\t\t\t\t\t\tonClickCapture={onClickCapture}\n\t\t\t\t\t\taria-label={ariaLabel}\n\t\t\t\t\t\t{...linkProps}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t\t{content && (\n\t\t\t\t\t<CardContent\n\t\t\t\t\t\tbadges={content.badges}\n\t\t\t\t\t\tdescription={content.description}\n\t\t\t\t\t\teyebrow={content.eyebrow}\n\t\t\t\t\t\theading={content.heading}\n\t\t\t\t\t\tsubheading={content.subheading}\n\t\t\t\t\t\tthumbnail={content.thumbnail}\n\t\t\t\t\t\tshowArrow={content.showArrow && !!isCardLink}\n\t\t\t\t\t\tcta={{\n\t\t\t\t\t\t\tctaLabel,\n\t\t\t\t\t\t\thref,\n\t\t\t\t\t\t\tstandaloneLink,\n\t\t\t\t\t\t\tonClickCapture,\n\t\t\t\t\t\t\tisExternal,\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t\t{children}\n\t\t\t\t{children && (\n\t\t\t\t\t<CardCta\n\t\t\t\t\t\tctaLabel={ctaLabel}\n\t\t\t\t\t\thref={href}\n\t\t\t\t\t\tstandaloneLink={standaloneLink}\n\t\t\t\t\t\tonClickCapture={onClickCapture}\n\t\t\t\t\t\tisExternal={isExternal}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t)\n\t}\n)\n\nCard.displayName = 'Card'\n\nconst CardContent = ({\n\tbadges,\n\tdescription,\n\teyebrow,\n\theading,\n\tthumbnail,\n\tsubheading,\n\tcta,\n\tshowArrow,\n}: CardContentProps) => {\n\treturn (\n\t\t<div className={classNames(s.content, { [s['has-thumbnail']]: thumbnail })}>\n\t\t\t{thumbnail && <CardThumbnail {...thumbnail} />}\n\t\t\t<div className={s.contentLockup}>\n\t\t\t\t<CardEyebrow>{eyebrow}</CardEyebrow>\n\t\t\t\t<CardHeading>{heading}</CardHeading>\n\t\t\t\t<CardSubheading>{subheading}</CardSubheading>\n\t\t\t\t<CardDescription>{description}</CardDescription>\n\t\t\t\t<Badges badges={badges} />\n\t\t\t\t{cta && (\n\t\t\t\t\t<CardCta\n\t\t\t\t\t\tctaLabel={cta.ctaLabel}\n\t\t\t\t\t\thref={cta.href}\n\t\t\t\t\t\tstandaloneLink={cta.standaloneLink}\n\t\t\t\t\t\tisExternal={cta.isExternal}\n\t\t\t\t\t\tonClickCapture={cta.onClickCapture}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t\t{showArrow ? (\n\t\t\t\t\t<div className={s.arrow}>\n\t\t\t\t\t\t<IconArrowRight24 />\n\t\t\t\t\t</div>\n\t\t\t\t) : null}\n\t\t\t</div>\n\t\t</div>\n\t)\n}\n\nconst CardCta = ({\n\thref,\n\tctaLabel,\n\tstandaloneLink,\n\tisExternal,\n\tonClickCapture,\n}: CardCtaProps) => {\n\tconst isCardLink = href && !ctaLabel\n\n\tif (standaloneLink) {\n\t\tconst standaloneLinkProps = {\n\t\t\t...standaloneLink,\n\t\t\ticon: standaloneLink.icon || 'chevron-right',\n\t\t\ticonPosition: standaloneLink.iconPosition || 'trailing',\n\t\t}\n\n\t\treturn <StandaloneLink className={s.cta} {...standaloneLinkProps} />\n\t}\n\n\tif (href && !isCardLink && ctaLabel) {\n\t\treturn (\n\t\t\t<StandaloneLink\n\t\t\t\tclassName={s.cta}\n\t\t\t\ttext={ctaLabel}\n\t\t\t\thref={href}\n\t\t\t\ticon=\"chevron-right\"\n\t\t\t\ticonPosition=\"trailing\"\n\t\t\t\tcolor=\"secondary\"\n\t\t\t\tonClickCapture={onClickCapture}\n\t\t\t\tisHrefExternal={isExternal}\n\t\t\t/>\n\t\t)\n\t}\n\n\treturn null\n}\n\nconst CardEyebrow = ({ children }: PropsWithChildren) => {\n\tif (!children) {\n\t\treturn null\n\t}\n\n\tif (Array.isArray(children)) {\n\t\treturn <CardEyebrowList items={Array.from(children)} />\n\t}\n\n\treturn <CardEyebrowText>{children}</CardEyebrowText>\n}\n\nconst CardEyebrowList = ({ items }: { items: string[] }) => (\n\t<ul className={s.meta}>\n\t\t{items.map((item, idx) => (\n\t\t\t<li key={item}>\n\t\t\t\t<CardEyebrowText>{item}</CardEyebrowText>\n\t\t\t\t{idx < items.length - 1 ? (\n\t\t\t\t\t<span className={s.metaSeparator} aria-hidden={true}>\n\t\t\t\t\t\t|\n\t\t\t\t\t</span>\n\t\t\t\t) : null}\n\t\t\t</li>\n\t\t))}\n\t</ul>\n)\n\nconst CardEyebrowText = ({ children }: PropsWithChildren) =>\n\tchildren ? (\n\t\t<Text.Label color=\"faint\" weight=\"medium\">\n\t\t\t{children}\n\t\t</Text.Label>\n\t) : null\n\nconst CardHeading = ({ children }: PropsWithChildren) =>\n\tchildren ? (\n\t\t<Text.DisplayExpressive\n\t\t\ttag=\"span\"\n\t\t\tsize=\"200\"\n\t\t\tweight=\"semibold\"\n\t\t\tcolor=\"strong\"\n\t\t>\n\t\t\t{children}\n\t\t</Text.DisplayExpressive>\n\t) : null\n\nconst CardSubheading = ({ children }: PropsWithChildren) =>\n\tchildren ? (\n\t\t<Text.Body tag=\"span\" size=\"200\" className={s.subheading} color=\"primary\">\n\t\t\t{children}\n\t\t</Text.Body>\n\t) : null\n\nconst CardDescription = ({ children }: PropsWithChildren) => {\n\tif (!children) {\n\t\treturn null\n\t}\n\n\tif (typeof children === 'string') {\n\t\treturn (\n\t\t\t<Text.Body tag=\"span\" size=\"200\" color=\"primary\">\n\t\t\t\t{children}\n\t\t\t</Text.Body>\n\t\t)\n\t}\n\n\treturn <>{children}</>\n}\n\nconst Badges = ({ badges }: { badges: CardContentProps['badges'] }) =>\n\tbadges && badges.length > 0 ? (\n\t\t<div className={s.badges}>\n\t\t\t{badges.map((badge) => (\n\t\t\t\t<Badge key={badge.text} {...badge} />\n\t\t\t))}\n\t\t</div>\n\t) : null\n\nCard.displayName = 'Card'\nexport { Card }\n","import type { MouseEvent } from 'react'\n\nconst getTextToCopy = (text: string | number | bigint) => {\n\tlet textToCopy: string\n\n\tif (text) {\n\t\tif (typeof text === 'string') {\n\t\t\ttextToCopy = text\n\t\t} else if (\n\t\t\t// context: https://github.com/hashicorp/design-system/pull/1564\n\t\t\ttypeof text === 'number' ||\n\t\t\ttypeof text === 'bigint'\n\t\t) {\n\t\t\ttextToCopy = text.toString()\n\t\t} else {\n\t\t\tthrow new Error(\n\t\t\t\t`\\`hds-clipboard\\` modifier - \\`text\\` argument must be a string - provided: ${typeof text}`\n\t\t\t)\n\t\t}\n\t}\n\treturn textToCopy!\n}\n\nconst getTargetElement = (target: string | Element) => {\n\tlet targetElement: Element | null\n\tif (typeof target === 'string') {\n\t\ttargetElement = document.querySelector(target)\n\n\t\tif (!targetElement) {\n\t\t\tconsole.error(\n\t\t\t\t'`hds-clipboard` modifier - `target` selector provided does not point to an existing DOM node, check your selector string',\n\t\t\t\ttargetElement\n\t\t\t)\n\t\t\treturn\n\t\t}\n\t} else if (target instanceof Node && target.nodeType === Node.ELEMENT_NODE) {\n\t\ttargetElement = target\n\t} else {\n\t\tif (target instanceof NodeList) {\n\t\t\tthrow new Error(\n\t\t\t\t'`hds-clipboard` modifier - `target` argument must be a string or a DOM node - provided: a list of DOM nodes'\n\t\t\t)\n\t\t} else {\n\t\t\tthrow new Error(\n\t\t\t\t`\\`hds-clipboard\\` modifier - \\`target\\` argument must be a string or a DOM node - provided: ${typeof target}`\n\t\t\t)\n\t\t}\n\t}\n\treturn targetElement\n}\n\nconst getTextToCopyFromTargetElement = (targetElement: Element | undefined) => {\n\tlet textToCopy: string | undefined\n\tif (\n\t\ttargetElement instanceof Node &&\n\t\ttargetElement.nodeType === Node.ELEMENT_NODE\n\t) {\n\t\tif (\n\t\t\ttargetElement instanceof HTMLInputElement || // targetElement.nodeName === 'INPUT' ||\n\t\t\ttargetElement instanceof HTMLTextAreaElement || // targetElement.nodeName === 'TEXTAREA' ||\n\t\t\ttargetElement instanceof HTMLSelectElement // targetElement.nodeName === 'SELECT'\n\t\t) {\n\t\t\ttextToCopy = targetElement.value\n\t\t} else {\n\t\t\t// simplest approach\n\t\t\ttextToCopy = (targetElement as HTMLElement).innerText\n\n\t\t\t// approach based on text selection (left for backup just in case)\n\t\t\t// var selection = window.getSelection();\n\t\t\t// var range = document.createRange();\n\t\t\t// selection.removeAllRanges();\n\t\t\t// range.selectNodeContents(targetElement);\n\t\t\t// selection.addRange(range);\n\t\t\t// textToCopy = selection.toString();\n\t\t\t// selection.removeAllRanges();\n\t\t}\n\t}\n\treturn textToCopy\n}\n\nconst writeTextToClipboard = async (textToCopy: string | undefined) => {\n\t// finally copy the text to the clipboard using the Clipboard API\n\t// https://developer.mozilla.org/en-US/docs/Web/API/Clipboard_API\n\tif (textToCopy) {\n\t\ttry {\n\t\t\t// notice: the \"clipboard-write\" permission is granted automatically to pages when they are in the active tab\n\t\t\t// https://developer.mozilla.org/en-US/docs/Web/API/Clipboard/write\n\t\t\tawait navigator.clipboard.writeText(textToCopy)\n\t\t\t// DEBUG uncomment this for easy debugging\n\t\t\t// console.log('success', textToCopy);\n\t\t\treturn true\n\t\t} catch (error) {\n\t\t\t// clipboard write failed\n\t\t\t// this probably never happens (see comment above) or happens only for very old browsers that don't for which `navigator.clipboard` is undefined\n\t\t\tconsole.warn(\n\t\t\t\t'copy action failed, please check your browser‘s permissions',\n\t\t\t\t{\n\t\t\t\t\tid: 'hds-clipboard.write-text-to-clipboard.catch-error',\n\t\t\t\t}\n\t\t\t)\n\t\t\treturn false\n\t\t}\n\t} else {\n\t\treturn false\n\t}\n}\n\nconst copyToClipboard = async (\n\ttext: string | number | bigint | undefined,\n\ttarget: string | Element | undefined,\n\tgetTextFn: (() => string) | undefined\n) => {\n\tlet textToCopy: string | undefined\n\n\tif (getTextFn) {\n\t\ttextToCopy = getTextFn()\n\t} else if (text) {\n\t\ttextToCopy = getTextToCopy(text)\n\t} else if (target) {\n\t\tconst targetElement = getTargetElement(target)\n\t\ttextToCopy = getTextToCopyFromTargetElement(targetElement)\n\t} else {\n\t\tthrow new Error(\n\t\t\t'`hds-clipboard` modifier - either a `getTextFn`, `text`, or a `target` argument is required'\n\t\t)\n\t}\n\tconst success = await writeTextToClipboard(textToCopy)\n\treturn success\n}\n\ntype HandlerArgs = {\n\ttrigger: Element\n\ttext: string | number | bigint | undefined\n\ttarget: string | Element | undefined\n}\n\nconst onClickHandler = (named: {\n\ttext: string | number | bigint | undefined\n\ttarget: string | Element | undefined\n\tgetTextFn: (() => string) | undefined\n\tonSuccess: (args: HandlerArgs) => void\n\tonError: (args: HandlerArgs) => void\n}) => {\n\tconst { text, target, getTextFn, onSuccess, onError } = named\n\n\tconst onClick = async (event: MouseEvent<HTMLButtonElement>) => {\n\t\tconst trigger = event.currentTarget\n\t\tconst success = await copyToClipboard(text, target, getTextFn)\n\n\t\t// fire the `onSuccess/onError` callbacks (if provided)\n\t\tif (success) {\n\t\t\tif (typeof onSuccess === 'function') {\n\t\t\t\tonSuccess({ trigger, text, target })\n\t\t\t}\n\t\t} else {\n\t\t\tif (typeof onError === 'function') {\n\t\t\t\tonError({ trigger, text, target })\n\t\t\t}\n\t\t}\n\t}\n\n\treturn { onClick }\n}\n\nexport { onClickHandler, type HandlerArgs }\n","'use client'\n\nimport { useRef, useState } from 'react'\nimport { onClickHandler, type HandlerArgs } from './clipboard'\nimport classNames from 'classnames'\nimport { Button } from '../../components/button'\nimport s from './style.module.css'\n\nexport interface CopyButtonProps {\n\tsize?: 'small' | 'medium'\n\tisIconOnly?: boolean\n\tisFullWidth?: boolean\n\ttext: string\n\ttextToCopy?: string\n\tgetTextFn?: () => string\n\ttargetToCopy?: string | Element\n\tonSuccess?: (args: HandlerArgs) => void\n\tonError?: (args: HandlerArgs) => void\n\tclassName?: string\n\tdefaultIcon?: string\n}\n\nconst DEFAULT_ICON = 'clipboard-copy'\nconst SUCCESS_ICON = 'clipboard-checked'\nconst ERROR_ICON = 'clipboard-x'\nconst DEFAULT_STATUS = 'idle'\n\nconst CopyButton = ({\n\tsize = 'medium',\n\tisIconOnly = false,\n\tisFullWidth = false,\n\ttext,\n\ttextToCopy,\n\tgetTextFn,\n\ttargetToCopy,\n\tonSuccess,\n\tonError,\n\tclassName,\n\tdefaultIcon,\n\t...rest\n}: CopyButtonProps) => {\n\tconst [status, setStatus] = useState(DEFAULT_STATUS)\n\tconst timer = useRef<ReturnType<typeof setTimeout> | null>(null)\n\tconst icon =\n\t\tstatus === 'idle'\n\t\t\t? defaultIcon || DEFAULT_ICON\n\t\t\t: status === 'success'\n\t\t\t? SUCCESS_ICON\n\t\t\t: ERROR_ICON\n\n\tconst resetStatusDelayed = () => {\n\t\tif (timer.current) {\n\t\t\tclearTimeout(timer.current)\n\t\t}\n\t\ttimer.current = setTimeout(() => {\n\t\t\tsetStatus(DEFAULT_STATUS)\n\t\t}, 1500)\n\t}\n\n\tconst _onSuccess = (args: HandlerArgs) => {\n\t\tsetStatus('success')\n\t\tresetStatusDelayed()\n\n\t\tif (onSuccess) {\n\t\t\tonSuccess(args)\n\t\t}\n\t}\n\n\tconst _onError = (args: HandlerArgs) => {\n\t\tsetStatus('error')\n\t\tresetStatusDelayed()\n\n\t\tif (onError) {\n\t\t\tonError(args)\n\t\t}\n\t}\n\n\treturn (\n\t\t<Button\n\t\t\tclassName={classNames(s['copy-button'], s[status], className)}\n\t\t\tsize={size}\n\t\t\tisFullWidth={isFullWidth}\n\t\t\ttext={text}\n\t\t\ticon={icon}\n\t\t\tisIconOnly={isIconOnly}\n\t\t\tcolor=\"secondary\"\n\t\t\ticonPosition=\"trailing\"\n\t\t\t{...onClickHandler({\n\t\t\t\ttext: textToCopy,\n\t\t\t\tgetTextFn: getTextFn,\n\t\t\t\ttarget: targetToCopy,\n\t\t\t\tonSuccess: _onSuccess,\n\t\t\t\tonError: _onError,\n\t\t\t})}\n\t\t\t{...rest}\n\t\t/>\n\t)\n}\n\nCopyButton.displayName = 'CopyButton'\n\nexport { CopyButton }\n"],"names":["FLIGHT_ICON_SIZES","SPRITE_SIZE_MAP","svgSpriteSrc","svgSprite","FlightIcon","name","color","size","stretched","isInlineBlock","title","className","rest","iconId","useId","titleId","spriteSize","jsx","classNames","s","jsxs","Fragment","TEXT_COLORS","TEXT_WEIGHTS","getTypographyToken","group","TextImpl","tag","weight","align","children","Component","variant","usesPredefinedColor","Body","createElement","DisplayExpressive","Label","props","HDSBody","Code","Text","BADGE_SIZES","BADGE_TYPES","BADGE_COLORS","ICON_SIZE_MAP","Badge","icon","iconColor","iconOnly","text","type","Interactive","forwardRef","ref","Link","useMDSLink","href","isHrefExternal","onClick","locale","getLocalizedLinkProps","STANDALONE_LINK_SIZES","STANDALONE_LINK_COLORS","STANDALONE_LINK_ICON_POSITIONS","StandaloneLink","iconPosition","dataTestId","iconElement","BUTTON_SIZES","BUTTON_ICON_POSITIONS","BUTTON_COLORS","COLOR_MAP","ButtonPrimitive","isFullWidth","isIconOnly","showIconOnly","Button","legacyColor","customClass","CardThumbnail","alt","aspectRatio","src","Image","useMDSImage","Card","content","ctaLabel","standaloneLink","isExternal","onClickCapture","ariaLabel","isCardLink","linkProps","CardContent","CardCta","badges","description","eyebrow","heading","thumbnail","subheading","cta","showArrow","CardEyebrow","CardHeading","CardSubheading","CardDescription","Badges","IconArrowRight24","standaloneLinkProps","CardEyebrowList","CardEyebrowText","items","item","idx","badge","getTextToCopy","textToCopy","getTargetElement","target","targetElement","getTextToCopyFromTargetElement","writeTextToClipboard","copyToClipboard","getTextFn","onClickHandler","named","onSuccess","onError","event","trigger","DEFAULT_ICON","SUCCESS_ICON","ERROR_ICON","DEFAULT_STATUS","CopyButton","targetToCopy","defaultIcon","status","setStatus","useState","timer","useRef","resetStatusDelayed","_onSuccess","args","_onError"],"mappings":"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"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { u as s } from "./index-BHBlMMNF.js";
|
|
2
|
-
const i = () => s("(max-width: 768px)"), e = () => s("(min-width: 768px) and (max-width: 1119px)"), t = () => s("(min-width: 768px)"), m = () => s("(min-width: 1120px)");
|
|
3
|
-
export {
|
|
4
|
-
e as a,
|
|
5
|
-
t as b,
|
|
6
|
-
i as c,
|
|
7
|
-
m as u
|
|
8
|
-
};
|
|
9
|
-
//# sourceMappingURL=use-screen-size-BOnkX_K-.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"use-screen-size-BOnkX_K-.js","sources":["../src/utils/hooks/use-screen-size.ts"],"sourcesContent":["'use client'\n\nimport { useMediaQuery } from '@web/hooks/use-media-query'\n\n// ref: https://github.com/hashicorp/web/blob/main/packages/mds-tokens/src/custom-media.css\nconst useSmall = () => useMediaQuery('(max-width: 768px)')\nconst useMedium = () =>\n\tuseMediaQuery('(min-width: 768px) and (max-width: 1119px)')\nconst useMediumUp = () => useMediaQuery('(min-width: 768px)')\nconst useLarge = () => useMediaQuery('(min-width: 1120px)')\n\nexport { useSmall, useMedium, useMediumUp, useLarge }\n"],"names":["useSmall","useMediaQuery","useMedium","useMediumUp","useLarge"],"mappings":";AAKA,MAAMA,IAAW,MAAMC,EAAc,oBAAoB,GACnDC,IAAY,MACjBD,EAAc,4CAA4C,GACrDE,IAAc,MAAMF,EAAc,oBAAoB,GACtDG,IAAW,MAAMH,EAAc,qBAAqB;"}
|