@hashicorp/mds-react 0.9.1 → 0.9.2
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.d.ts +1 -1
- package/components/accordion/item/index.d.ts +1 -1
- package/components/alert/icon.d.ts +2 -2
- package/components/alert/index.d.ts +6 -6
- package/components/badge/index.d.ts +1 -1
- package/components/badge-count/index.d.ts +1 -1
- package/components/breadcrumbs/index.d.ts +2 -2
- package/components/breadcrumbs/item/index.d.ts +1 -1
- package/components/breadcrumbs/truncation-button/index.d.ts +1 -1
- package/components/breadcrumbs/types/index.d.ts +1 -1
- package/components/button/index.d.ts +2 -2
- package/components/card/card-thumbnail/index.d.ts +1 -1
- package/components/card/index.d.ts +2 -2
- package/components/card/types.d.ts +3 -3
- package/components/code-block/code-lines/index.d.ts +8 -1
- package/components/code-block/code-lines/utils/split-html-into-lines.d.ts +1 -1
- package/components/code-block/code-lines/utils/split-jsx-into-lines.d.ts +1 -1
- package/components/code-block/hidden-copy-content/index.d.ts +3 -3
- package/components/code-block/index.d.ts +1 -1
- package/components/combo-box-primitive/index.d.ts +0 -1
- package/components/dialog-primitive/index.d.ts +1 -1
- package/components/disclosure-primitive/index.d.ts +2 -1
- package/components/disclosure-primitive/use-disclosure-primitive.d.ts +2 -2
- package/components/dismiss-button/index.d.ts +0 -1
- package/components/dropdown/index.d.ts +6 -6
- package/components/dropdown/list-item/custom.d.ts +1 -1
- package/components/dropdown/list-item/index.d.ts +4 -4
- package/components/dropdown/list-item/interactive.d.ts +1 -1
- package/components/dropdown/list-item/separator.d.ts +1 -1
- package/components/dropdown/list-item/title.d.ts +1 -1
- package/components/dropdown/toggle-button/index.d.ts +2 -2
- package/components/flight-icon/index.d.ts +2 -2
- package/components/form/checkbox/index.d.ts +1 -1
- package/components/form/error/index.d.ts +1 -1
- package/components/form/field/index.d.ts +1 -1
- package/components/form/fieldset/index.d.ts +1 -1
- package/components/form/file-input/index.d.ts +1 -1
- package/components/form/helper-text/index.d.ts +1 -1
- package/components/form/label/index.d.ts +1 -1
- package/components/form/legend/index.d.ts +1 -1
- package/components/form/radio/index.d.ts +1 -1
- package/components/form/radio-card/group.d.ts +1 -1
- package/components/form/radio-card/index.d.ts +2 -2
- package/components/form/select/index.d.ts +1 -1
- package/components/form/super-select/index.d.ts +2 -2
- package/components/form/text-input/index.d.ts +1 -1
- package/components/form/textarea/index.d.ts +1 -1
- package/components/form/toggle/index.d.ts +1 -1
- package/components/hds/wrappers/tooltip.d.ts +4 -3
- package/components/icon-tile/index.d.ts +1 -1
- package/components/index.js +73 -115
- package/components/index.js.map +1 -1
- package/components/inline-link/index.d.ts +1 -1
- package/components/interactive/index.d.ts +4 -3
- package/components/legacy-button/index.d.ts +3 -3
- package/components/legacy-button/types.d.ts +1 -1
- package/components/legacy-button/utils.d.ts +1 -1
- package/components/menu-primitive/index.d.ts +1 -1
- package/components/menu-primitive/use-menu-primitive.d.ts +2 -2
- package/components/modal/index.d.ts +1 -1
- package/components/modal/use-modal.d.ts +2 -2
- package/components/separator/index.d.ts +1 -1
- package/components/standalone-link/index.d.ts +2 -2
- package/components/table/index.d.ts +5 -5
- package/components/table/td.d.ts +2 -2
- package/components/table/th.d.ts +2 -2
- package/components/table/tr.d.ts +1 -1
- package/components/tabs/index.d.ts +3 -3
- package/components/tabs/tab-panel.d.ts +1 -1
- package/components/tabs/tab.d.ts +2 -2
- package/components/tabs/use-tabs-context.d.ts +2 -2
- package/components/text/index.d.ts +6 -6
- package/components/visualizations/bar-chart/horizontal-chart/index.d.ts +0 -1
- package/components/visualizations/bar-chart/index.d.ts +1 -1
- package/components/visualizations/donut-chart/components/arc-tooltip/index.d.ts +2 -2
- package/components/visualizations/donut-chart/components/external-arc-label/index.d.ts +2 -2
- package/components/visualizations/donut-chart/components/internal-arc-label/index.d.ts +2 -2
- package/components/visualizations/donut-chart/index.d.ts +1 -1
- package/index-B9mPJh9w.js +579 -0
- package/index-B9mPJh9w.js.map +1 -0
- package/index-BHBlMMNF.js +16 -0
- package/index-BHBlMMNF.js.map +1 -0
- package/index-C4GBbW3N.js +3567 -0
- package/index-C4GBbW3N.js.map +1 -0
- package/{utils/mds-context/index.js → index-DBjAbGt7.js} +19 -20
- package/index-DBjAbGt7.js.map +1 -0
- package/index-WkGIywHj.js +767 -0
- package/index-WkGIywHj.js.map +1 -0
- package/index.js +100 -153
- package/index.js.map +1 -1
- package/package.json +1 -1
- package/patterns/card/newsroom-card/index.d.ts +1 -1
- package/patterns/card/partner-card/index.d.ts +2 -2
- package/patterns/card/person-card/index.d.ts +1 -1
- package/patterns/card/primitives.d.ts +5 -5
- package/patterns/card/promo-card/index.d.ts +1 -1
- package/patterns/card/resource-card/index.d.ts +1 -1
- package/patterns/card/thumbnails/index.d.ts +1 -1
- package/patterns/card/types.d.ts +6 -6
- package/patterns/card/unified-card/index.d.ts +1 -1
- package/patterns/copy-button/clipboard.d.ts +1 -1
- package/patterns/copy-button/index.d.ts +1 -1
- package/patterns/index.js +22 -32
- package/patterns/index.js.map +1 -1
- package/patterns/layout/index.d.ts +20 -20
- package/patterns/product-logo/index.d.ts +15 -15
- package/patterns/related-content/index.d.ts +1 -1
- package/patterns/related-content/types.d.ts +1 -1
- package/style.css +1 -0
- package/use-screen-size-BOnkX_K-.js +9 -0
- package/use-screen-size-BOnkX_K-.js.map +1 -0
- package/utils/i18n/index.d.ts +1 -1
- package/utils/index.js +7 -7
- package/utils/make-normalizer/index.d.ts +6 -6
- package/utils/mds-context/index.d.ts +1 -1
- package/assets/style-DD7hNwDr.css +0 -1
- package/components/accordion/index.js +0 -9
- package/components/accordion/index.js.map +0 -1
- package/components/accordion/item/button.js +0 -44
- package/components/accordion/item/button.js.map +0 -1
- package/components/accordion/item/index.js +0 -59
- package/components/accordion/item/index.js.map +0 -1
- package/components/accordion/style.module.scss.js +0 -24
- package/components/accordion/style.module.scss.js.map +0 -1
- package/components/alert/alert.module.scss.js +0 -29
- package/components/alert/alert.module.scss.js.map +0 -1
- package/components/alert/icon.js +0 -34
- package/components/alert/icon.js.map +0 -1
- package/components/alert/index.js +0 -97
- package/components/alert/index.js.map +0 -1
- package/components/badge/index.js +0 -53
- package/components/badge/index.js.map +0 -1
- package/components/badge/style.module.scss.js +0 -22
- package/components/badge/style.module.scss.js.map +0 -1
- package/components/badge-count/index.js +0 -29
- package/components/badge-count/index.js.map +0 -1
- package/components/badge-count/style.module.scss.js +0 -15
- package/components/badge-count/style.module.scss.js.map +0 -1
- package/components/breadcrumbs/index.js +0 -38
- package/components/breadcrumbs/index.js.map +0 -1
- package/components/breadcrumbs/item/index.js +0 -32
- package/components/breadcrumbs/item/index.js.map +0 -1
- package/components/breadcrumbs/style.module.scss.js +0 -27
- package/components/breadcrumbs/style.module.scss.js.map +0 -1
- package/components/breadcrumbs/truncation-button/index.js +0 -25
- package/components/breadcrumbs/truncation-button/index.js.map +0 -1
- package/components/button/index.js +0 -119
- package/components/button/index.js.map +0 -1
- package/components/button/styles.module.scss.js +0 -32
- package/components/button/styles.module.scss.js.map +0 -1
- package/components/card/card-thumbnail/card-thumbnail.module.css.js +0 -8
- package/components/card/card-thumbnail/card-thumbnail.module.css.js.map +0 -1
- package/components/card/card-thumbnail/index.js +0 -23
- package/components/card/card-thumbnail/index.js.map +0 -1
- package/components/card/index.js +0 -157
- package/components/card/index.js.map +0 -1
- package/components/card/styles.module.css.js +0 -29
- package/components/card/styles.module.css.js.map +0 -1
- package/components/code-block/code-block.module.scss.js +0 -34
- package/components/code-block/code-block.module.scss.js.map +0 -1
- package/components/code-block/code-lines/index.js +0 -59
- package/components/code-block/code-lines/index.js.map +0 -1
- package/components/code-block/code-lines/utils/split-html-into-lines.js +0 -19
- package/components/code-block/code-lines/utils/split-html-into-lines.js.map +0 -1
- package/components/code-block/code-lines/utils/split-jsx-into-lines.js +0 -31
- package/components/code-block/code-lines/utils/split-jsx-into-lines.js.map +0 -1
- package/components/code-block/hidden-copy-content/index.js +0 -13
- package/components/code-block/hidden-copy-content/index.js.map +0 -1
- package/components/code-block/index.js +0 -88
- package/components/code-block/index.js.map +0 -1
- package/components/code-block/utils/parse-highlighted-lines.js +0 -39
- package/components/code-block/utils/parse-highlighted-lines.js.map +0 -1
- package/components/code-block/utils/process-snippet.js +0 -20
- package/components/code-block/utils/process-snippet.js.map +0 -1
- package/components/code-block/utils/shellwords.js +0 -33
- package/components/code-block/utils/shellwords.js.map +0 -1
- package/components/combo-box-primitive/index.js +0 -302
- package/components/combo-box-primitive/index.js.map +0 -1
- package/components/dialog-primitive/dialog.module.scss.js +0 -12
- package/components/dialog-primitive/dialog.module.scss.js.map +0 -1
- package/components/dialog-primitive/index.js +0 -15
- package/components/dialog-primitive/index.js.map +0 -1
- package/components/disclosure-primitive/index.js +0 -57
- package/components/disclosure-primitive/index.js.map +0 -1
- package/components/disclosure-primitive/styles.module.css.js +0 -7
- package/components/disclosure-primitive/styles.module.css.js.map +0 -1
- package/components/disclosure-primitive/use-disclosure-primitive.js +0 -17
- package/components/disclosure-primitive/use-disclosure-primitive.js.map +0 -1
- package/components/dismiss-button/index.js +0 -22
- package/components/dismiss-button/index.js.map +0 -1
- package/components/dismiss-button/styles.module.scss.js +0 -7
- package/components/dismiss-button/styles.module.scss.js.map +0 -1
- package/components/dropdown/index.js +0 -79
- package/components/dropdown/index.js.map +0 -1
- package/components/dropdown/list-item/custom.js +0 -9
- package/components/dropdown/list-item/custom.js.map +0 -1
- package/components/dropdown/list-item/index.js +0 -14
- package/components/dropdown/list-item/index.js.map +0 -1
- package/components/dropdown/list-item/interactive.js +0 -49
- package/components/dropdown/list-item/interactive.js.map +0 -1
- package/components/dropdown/list-item/separator.js +0 -17
- package/components/dropdown/list-item/separator.js.map +0 -1
- package/components/dropdown/list-item/styles.module.css.js +0 -26
- package/components/dropdown/list-item/styles.module.css.js.map +0 -1
- package/components/dropdown/list-item/title.js +0 -9
- package/components/dropdown/list-item/title.js.map +0 -1
- package/components/dropdown/styles.module.css.js +0 -24
- package/components/dropdown/styles.module.css.js.map +0 -1
- package/components/dropdown/toggle-button/index.js +0 -54
- package/components/dropdown/toggle-button/index.js.map +0 -1
- package/components/dropdown/toggle-button/styles.module.scss.js +0 -14
- package/components/dropdown/toggle-button/styles.module.scss.js.map +0 -1
- package/components/flight-icon/flight-icon.module.css.js +0 -12
- package/components/flight-icon/flight-icon.module.css.js.map +0 -1
- package/components/flight-icon/index.js +0 -58
- package/components/flight-icon/index.js.map +0 -1
- package/components/form/checkbox/form-checkbox.module.css.js +0 -8
- package/components/form/checkbox/form-checkbox.module.css.js.map +0 -1
- package/components/form/checkbox/index.js +0 -109
- package/components/form/checkbox/index.js.map +0 -1
- package/components/form/error/form-error.module.css.js +0 -14
- package/components/form/error/form-error.module.css.js.map +0 -1
- package/components/form/error/index.js +0 -22
- package/components/form/error/index.js.map +0 -1
- package/components/form/field/form-field.module.css.js +0 -17
- package/components/form/field/form-field.module.css.js.map +0 -1
- package/components/form/field/index.js +0 -46
- package/components/form/field/index.js.map +0 -1
- package/components/form/fieldset/form-fieldset.module.css.js +0 -19
- package/components/form/fieldset/form-fieldset.module.css.js.map +0 -1
- package/components/form/fieldset/index.js +0 -65
- package/components/form/fieldset/index.js.map +0 -1
- package/components/form/file-input/form-file-input.module.scss.js +0 -7
- package/components/form/file-input/form-file-input.module.scss.js.map +0 -1
- package/components/form/file-input/index.js +0 -68
- package/components/form/file-input/index.js.map +0 -1
- package/components/form/helper-text/form-helper-text.module.css.js +0 -7
- package/components/form/helper-text/form-helper-text.module.css.js.map +0 -1
- package/components/form/helper-text/index.js +0 -22
- package/components/form/helper-text/index.js.map +0 -1
- package/components/form/indicator/form-indicator.module.css.js +0 -8
- package/components/form/indicator/form-indicator.module.css.js.map +0 -1
- package/components/form/indicator/index.js +0 -23
- package/components/form/indicator/index.js.map +0 -1
- package/components/form/label/form-label.module.css.js +0 -10
- package/components/form/label/form-label.module.css.js.map +0 -1
- package/components/form/label/index.js +0 -33
- package/components/form/label/index.js.map +0 -1
- package/components/form/legend/form-legend.module.css.js +0 -10
- package/components/form/legend/form-legend.module.css.js.map +0 -1
- package/components/form/legend/index.js +0 -19
- package/components/form/legend/index.js.map +0 -1
- package/components/form/radio/form-radio.module.scss.js +0 -8
- package/components/form/radio/form-radio.module.scss.js.map +0 -1
- package/components/form/radio/index.js +0 -100
- package/components/form/radio/index.js.map +0 -1
- package/components/form/radio-card/description.js +0 -10
- package/components/form/radio-card/description.js.map +0 -1
- package/components/form/radio-card/form-radio-card.module.css.js +0 -30
- package/components/form/radio-card/form-radio-card.module.css.js.map +0 -1
- package/components/form/radio-card/group.js +0 -31
- package/components/form/radio-card/group.js.map +0 -1
- package/components/form/radio-card/index.js +0 -67
- package/components/form/radio-card/index.js.map +0 -1
- package/components/form/radio-card/label.js +0 -10
- package/components/form/radio-card/label.js.map +0 -1
- package/components/form/select/form-select.module.css.js +0 -14
- package/components/form/select/form-select.module.css.js.map +0 -1
- package/components/form/select/index.js +0 -79
- package/components/form/select/index.js.map +0 -1
- package/components/form/super-select/form-super-select.module.css.js +0 -22
- package/components/form/super-select/form-super-select.module.css.js.map +0 -1
- package/components/form/super-select/index.js +0 -170
- package/components/form/super-select/index.js.map +0 -1
- package/components/form/text-input/index.js +0 -91
- package/components/form/text-input/index.js.map +0 -1
- package/components/form/text-input/styles.module.css.js +0 -15
- package/components/form/text-input/styles.module.css.js.map +0 -1
- package/components/form/textarea/form-textarea.module.css.js +0 -14
- package/components/form/textarea/form-textarea.module.css.js.map +0 -1
- package/components/form/textarea/index.js +0 -74
- package/components/form/textarea/index.js.map +0 -1
- package/components/form/toggle/form-toggle.module.scss.js +0 -12
- package/components/form/toggle/form-toggle.module.scss.js.map +0 -1
- package/components/form/toggle/index.js +0 -102
- package/components/form/toggle/index.js.map +0 -1
- package/components/hds/wrappers/tooltip.js +0 -51
- package/components/hds/wrappers/tooltip.js.map +0 -1
- package/components/icon-tile/index.js +0 -50
- package/components/icon-tile/index.js.map +0 -1
- package/components/icon-tile/style.module.scss.js +0 -29
- package/components/icon-tile/style.module.scss.js.map +0 -1
- package/components/inline-link/index.js +0 -33
- package/components/inline-link/index.js.map +0 -1
- package/components/inline-link/inline-link.module.css.js +0 -11
- package/components/inline-link/inline-link.module.css.js.map +0 -1
- package/components/interactive/index.js +0 -59
- package/components/interactive/index.js.map +0 -1
- package/components/legacy-button/index.js +0 -65
- package/components/legacy-button/index.js.map +0 -1
- package/components/legacy-button/utils.js +0 -39
- package/components/legacy-button/utils.js.map +0 -1
- package/components/menu-primitive/index.js +0 -68
- package/components/menu-primitive/index.js.map +0 -1
- package/components/menu-primitive/styles.module.css.js +0 -12
- package/components/menu-primitive/styles.module.css.js.map +0 -1
- package/components/menu-primitive/use-menu-primitive.js +0 -17
- package/components/menu-primitive/use-menu-primitive.js.map +0 -1
- package/components/modal/index.js +0 -61
- package/components/modal/index.js.map +0 -1
- package/components/modal/modal.module.css.js +0 -8
- package/components/modal/modal.module.css.js.map +0 -1
- package/components/modal/use-modal.js +0 -17
- package/components/modal/use-modal.js.map +0 -1
- package/components/separator/index.js +0 -15
- package/components/separator/index.js.map +0 -1
- package/components/separator/separator.module.css.js +0 -10
- package/components/separator/separator.module.css.js.map +0 -1
- package/components/standalone-link/index.js +0 -54
- package/components/standalone-link/index.js.map +0 -1
- package/components/standalone-link/styles.module.scss.js +0 -17
- package/components/standalone-link/styles.module.scss.js.map +0 -1
- package/components/table/index.js +0 -52
- package/components/table/index.js.map +0 -1
- package/components/table/table.module.scss.js +0 -33
- package/components/table/table.module.scss.js.map +0 -1
- package/components/table/td.js +0 -28
- package/components/table/td.js.map +0 -1
- package/components/table/th-button-tooltip.js +0 -24
- package/components/table/th-button-tooltip.js.map +0 -1
- package/components/table/th.js +0 -43
- package/components/table/th.js.map +0 -1
- package/components/table/tr.js +0 -9
- package/components/table/tr.js.map +0 -1
- package/components/table/utils.js +0 -28
- package/components/table/utils.js.map +0 -1
- package/components/tabs/index.js +0 -117
- package/components/tabs/index.js.map +0 -1
- package/components/tabs/tab-panel.js +0 -35
- package/components/tabs/tab-panel.js.map +0 -1
- package/components/tabs/tab.js +0 -70
- package/components/tabs/tab.js.map +0 -1
- package/components/tabs/tabs.module.scss.js +0 -22
- package/components/tabs/tabs.module.scss.js.map +0 -1
- package/components/tabs/use-tabs-context.js +0 -16
- package/components/tabs/use-tabs-context.js.map +0 -1
- package/components/text/index.js +0 -112
- package/components/text/index.js.map +0 -1
- package/components/text/style.module.scss.js +0 -9
- package/components/text/style.module.scss.js.map +0 -1
- package/components/visualizations/bar-chart/horizontal-chart/dataset-value/index.js +0 -62
- package/components/visualizations/bar-chart/horizontal-chart/dataset-value/index.js.map +0 -1
- package/components/visualizations/bar-chart/horizontal-chart/dataset-value/style.module.css.js +0 -20
- package/components/visualizations/bar-chart/horizontal-chart/dataset-value/style.module.css.js.map +0 -1
- package/components/visualizations/bar-chart/horizontal-chart/index.js +0 -104
- package/components/visualizations/bar-chart/horizontal-chart/index.js.map +0 -1
- package/components/visualizations/bar-chart/horizontal-chart/legend/index.js +0 -13
- package/components/visualizations/bar-chart/horizontal-chart/legend/index.js.map +0 -1
- package/components/visualizations/bar-chart/horizontal-chart/legend/style.module.css.js +0 -14
- package/components/visualizations/bar-chart/horizontal-chart/legend/style.module.css.js.map +0 -1
- package/components/visualizations/bar-chart/horizontal-chart/style.module.css.js +0 -28
- package/components/visualizations/bar-chart/horizontal-chart/style.module.css.js.map +0 -1
- package/components/visualizations/bar-chart/index.js +0 -37
- package/components/visualizations/bar-chart/index.js.map +0 -1
- package/components/visualizations/bar-chart/style.module.css.js +0 -12
- package/components/visualizations/bar-chart/style.module.css.js.map +0 -1
- package/components/visualizations/donut-chart/components/arc-tooltip/index.js +0 -14
- package/components/visualizations/donut-chart/components/arc-tooltip/index.js.map +0 -1
- package/components/visualizations/donut-chart/components/arc-tooltip/styles.module.css.js +0 -10
- package/components/visualizations/donut-chart/components/arc-tooltip/styles.module.css.js.map +0 -1
- package/components/visualizations/donut-chart/components/external-arc-label/index.js +0 -58
- package/components/visualizations/donut-chart/components/external-arc-label/index.js.map +0 -1
- package/components/visualizations/donut-chart/components/external-arc-label/styles.module.css.js +0 -16
- package/components/visualizations/donut-chart/components/external-arc-label/styles.module.css.js.map +0 -1
- package/components/visualizations/donut-chart/components/internal-arc-label/index.js +0 -42
- package/components/visualizations/donut-chart/components/internal-arc-label/index.js.map +0 -1
- package/components/visualizations/donut-chart/components/internal-arc-label/styles.module.css.js +0 -14
- package/components/visualizations/donut-chart/components/internal-arc-label/styles.module.css.js.map +0 -1
- package/components/visualizations/donut-chart/index.js +0 -90
- package/components/visualizations/donut-chart/index.js.map +0 -1
- package/components/visualizations/donut-chart/styles.module.css.js +0 -20
- package/components/visualizations/donut-chart/styles.module.css.js.map +0 -1
- package/hooks/use-media-query/index.js +0 -16
- package/hooks/use-media-query/index.js.map +0 -1
- package/patterns/card/newsroom-card/index.js +0 -26
- package/patterns/card/newsroom-card/index.js.map +0 -1
- package/patterns/card/newsroom-card/style.module.css.js +0 -8
- package/patterns/card/newsroom-card/style.module.css.js.map +0 -1
- package/patterns/card/partner-card/index.js +0 -42
- package/patterns/card/partner-card/index.js.map +0 -1
- package/patterns/card/partner-card/style.module.css.js +0 -12
- package/patterns/card/partner-card/style.module.css.js.map +0 -1
- package/patterns/card/person-card/index.js +0 -52
- package/patterns/card/person-card/index.js.map +0 -1
- package/patterns/card/person-card/style.module.css.js +0 -12
- package/patterns/card/person-card/style.module.css.js.map +0 -1
- package/patterns/card/primitives.js +0 -77
- package/patterns/card/primitives.js.map +0 -1
- package/patterns/card/promo-card/index.js +0 -36
- package/patterns/card/promo-card/index.js.map +0 -1
- package/patterns/card/resource-card/index.js +0 -26
- package/patterns/card/resource-card/index.js.map +0 -1
- package/patterns/card/style.module.css.js +0 -30
- package/patterns/card/style.module.css.js.map +0 -1
- package/patterns/card/thumbnails/index.js +0 -25
- package/patterns/card/thumbnails/index.js.map +0 -1
- package/patterns/card/unified-card/index.js +0 -37
- package/patterns/card/unified-card/index.js.map +0 -1
- package/patterns/copy-button/clipboard.js +0 -78
- package/patterns/copy-button/clipboard.js.map +0 -1
- package/patterns/copy-button/index.js +0 -57
- package/patterns/copy-button/index.js.map +0 -1
- package/patterns/copy-button/style.module.css.js +0 -13
- package/patterns/copy-button/style.module.css.js.map +0 -1
- package/patterns/layout/index.js +0 -47
- package/patterns/layout/index.js.map +0 -1
- package/patterns/layout/layout.module.css.js +0 -20
- package/patterns/layout/layout.module.css.js.map +0 -1
- package/patterns/product-badge/index.js +0 -22
- package/patterns/product-badge/index.js.map +0 -1
- package/patterns/product-badge/style.module.css.js +0 -8
- package/patterns/product-badge/style.module.css.js.map +0 -1
- package/patterns/product-logo/index.js +0 -130
- package/patterns/product-logo/index.js.map +0 -1
- package/patterns/product-logo/product-logo.module.css.js +0 -13
- package/patterns/product-logo/product-logo.module.css.js.map +0 -1
- package/patterns/related-content/index.js +0 -65
- package/patterns/related-content/index.js.map +0 -1
- package/patterns/related-content/style.module.css.js +0 -22
- package/patterns/related-content/style.module.css.js.map +0 -1
- package/utils/get-contrast-yiq.js +0 -13
- package/utils/get-contrast-yiq.js.map +0 -1
- package/utils/hooks/use-screen-size.js +0 -10
- package/utils/hooks/use-screen-size.js.map +0 -1
- package/utils/i18n/constants/index.js +0 -98
- package/utils/i18n/constants/index.js.map +0 -1
- package/utils/i18n/helpers/locale-provider.js +0 -9
- package/utils/i18n/helpers/locale-provider.js.map +0 -1
- package/utils/i18n/helpers/to-smart-sentence-case.js +0 -12
- package/utils/i18n/helpers/to-smart-sentence-case.js.map +0 -1
- package/utils/i18n/helpers/to-smart-title-case.js +0 -10
- package/utils/i18n/helpers/to-smart-title-case.js.map +0 -1
- package/utils/i18n/helpers/use-locale.js +0 -14
- package/utils/i18n/helpers/use-locale.js.map +0 -1
- package/utils/i18n/index.js +0 -41
- package/utils/i18n/index.js.map +0 -1
- package/utils/i18n/index2.js +0 -33
- package/utils/i18n/index2.js.map +0 -1
- package/utils/make-normalizer/index.js +0 -34
- package/utils/make-normalizer/index.js.map +0 -1
- package/utils/mds-context/index.js.map +0 -1
|
@@ -0,0 +1,579 @@
|
|
|
1
|
+
import { jsx as t, jsxs as d, Fragment as q } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as J, memo as X } from "react";
|
|
3
|
+
import { c as w, T as u, C as R, h as Z } from "./index-WkGIywHj.js";
|
|
4
|
+
import { IconGithub16 as Q } from "@hashicorp/flight-icons/svg-react/github-16";
|
|
5
|
+
import { IconTwitter16 as W } from "@hashicorp/flight-icons/svg-react/twitter-16";
|
|
6
|
+
import { IconLinkedin16 as aa } from "@hashicorp/flight-icons/svg-react/linkedin-16";
|
|
7
|
+
import { IconLink16 as ta } from "@hashicorp/flight-icons/svg-react/link-16";
|
|
8
|
+
import { IconMail16 as na } from "@hashicorp/flight-icons/svg-react/mail-16";
|
|
9
|
+
import { a as P, u as ea } from "./index-DBjAbGt7.js";
|
|
10
|
+
import { IconArrowRight24 as oa } from "@hashicorp/flight-icons/svg-react/arrow-right-24";
|
|
11
|
+
import y from "classnames";
|
|
12
|
+
const ra = "badge__w7lpk", sa = {
|
|
13
|
+
badge: ra
|
|
14
|
+
}, E = ({ productName: a, hasDot: e }) => {
|
|
15
|
+
const n = a.replace("hashicorp", "HashiCorp"), o = n === "HashiCorp cloud platform" ? "hashicorp" : a;
|
|
16
|
+
return /* @__PURE__ */ t(
|
|
17
|
+
w,
|
|
18
|
+
{
|
|
19
|
+
className: sa.badge,
|
|
20
|
+
text: n,
|
|
21
|
+
...e && {
|
|
22
|
+
icon: "dot",
|
|
23
|
+
iconColor: `var(--mds-color-${o}-brand)`
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
);
|
|
27
|
+
};
|
|
28
|
+
E.displayName = "ProductBadge";
|
|
29
|
+
const ia = "card__zxzJV", la = "cta__mJ6Xp", ca = "thumbnail__10HM7", da = "image__zuf44", ma = "personThumbnail__ALced thumbnail__10HM7", pa = "logoThumbnail__OyvYI thumbnail__10HM7", ua = "meta__IBDgS", ha = "metaSeparator__40Llq", ga = "content__m6Hih", _a = "heading__uNTzq", ba = "description__c-x42", Na = "productBadges__bdjlp", m = {
|
|
30
|
+
card: ia,
|
|
31
|
+
cta: la,
|
|
32
|
+
thumbnail: ca,
|
|
33
|
+
image: da,
|
|
34
|
+
personThumbnail: ma,
|
|
35
|
+
logoThumbnail: pa,
|
|
36
|
+
meta: ua,
|
|
37
|
+
metaSeparator: ha,
|
|
38
|
+
content: ga,
|
|
39
|
+
heading: _a,
|
|
40
|
+
description: ba,
|
|
41
|
+
productBadges: Na
|
|
42
|
+
}, I = ({ src: a, alt: e }) => {
|
|
43
|
+
const n = P();
|
|
44
|
+
return /* @__PURE__ */ t("div", { className: m.thumbnail, "data-testid": "wpl-card-thumbnail", children: /* @__PURE__ */ t("div", { className: m.image, children: /* @__PURE__ */ t(n, { src: a, alt: e, width: 800, height: 450 }) }) });
|
|
45
|
+
};
|
|
46
|
+
I.displayName = "Thumbnail";
|
|
47
|
+
const S = ({ src: a, alt: e }) => {
|
|
48
|
+
const n = P();
|
|
49
|
+
return /* @__PURE__ */ t("div", { className: m.personThumbnail, "data-testid": "wpl-card-thumbnail", children: /* @__PURE__ */ t("div", { className: m.image, children: /* @__PURE__ */ t(n, { src: a, alt: e, width: 800, height: 450 }) }) });
|
|
50
|
+
};
|
|
51
|
+
S.displayName = "PersonThumbnail";
|
|
52
|
+
const U = ({ src: a, alt: e }) => {
|
|
53
|
+
const n = P();
|
|
54
|
+
return /* @__PURE__ */ t("div", { className: m.logoThumbnail, "data-testid": "wpl-card-logo-thumbnail", children: /* @__PURE__ */ t("div", { className: m.image, children: /* @__PURE__ */ t(n, { src: a, alt: e, width: 800, height: 450 }) }) });
|
|
55
|
+
};
|
|
56
|
+
U.displayName = "LogoThumbnail";
|
|
57
|
+
const x = J((a, e) => {
|
|
58
|
+
const {
|
|
59
|
+
withArrow: n = !0,
|
|
60
|
+
link: o,
|
|
61
|
+
clickHandler: r,
|
|
62
|
+
isExternal: s,
|
|
63
|
+
children: i,
|
|
64
|
+
className: c,
|
|
65
|
+
"aria-label": p
|
|
66
|
+
} = a;
|
|
67
|
+
return /* @__PURE__ */ d(
|
|
68
|
+
R,
|
|
69
|
+
{
|
|
70
|
+
className: y(m.card, c),
|
|
71
|
+
href: o,
|
|
72
|
+
onClickCapture: r,
|
|
73
|
+
isExternal: s,
|
|
74
|
+
ref: e,
|
|
75
|
+
"aria-label": p,
|
|
76
|
+
children: [
|
|
77
|
+
i,
|
|
78
|
+
/* @__PURE__ */ t("div", { className: m.cta, children: n ? /* @__PURE__ */ t(oa, {}) : null })
|
|
79
|
+
]
|
|
80
|
+
}
|
|
81
|
+
);
|
|
82
|
+
});
|
|
83
|
+
x.displayName = "CardPrimitives.Root";
|
|
84
|
+
const H = ({ items: a }) => /* @__PURE__ */ t("div", { className: m.meta, "data-testid": "wpl-card-meta", children: /* @__PURE__ */ t(u.Label, { children: a.map((e, n) => {
|
|
85
|
+
const o = n === a.length - 1;
|
|
86
|
+
return /* @__PURE__ */ d(q, { children: [
|
|
87
|
+
e,
|
|
88
|
+
o ? null : /* @__PURE__ */ t("span", { className: m.metaSeparator, "aria-hidden": !0, children: "|" })
|
|
89
|
+
] });
|
|
90
|
+
}) }) });
|
|
91
|
+
H.displayName = "Meta";
|
|
92
|
+
const B = ({ children: a }) => /* @__PURE__ */ t("div", { className: m.content, "data-testid": "wpl-card-content", children: a });
|
|
93
|
+
B.displayName = "Content";
|
|
94
|
+
const M = ({ as: a = "h2", children: e }) => /* @__PURE__ */ t(u.DisplayExpressive, { tag: a, size: "200", className: m.heading, children: e });
|
|
95
|
+
M.displayName = "Heading";
|
|
96
|
+
const $ = ({ badges: a, children: e }) => /* @__PURE__ */ d("div", { className: m.productBadges, "data-testid": "wpl-card-badges", children: [
|
|
97
|
+
a.map((n, o) => /* @__PURE__ */ t(
|
|
98
|
+
E,
|
|
99
|
+
{
|
|
100
|
+
productName: n,
|
|
101
|
+
hasDot: !0
|
|
102
|
+
},
|
|
103
|
+
`product-badge-${o}`
|
|
104
|
+
)),
|
|
105
|
+
e
|
|
106
|
+
] });
|
|
107
|
+
$.displayName = "ProductBadges";
|
|
108
|
+
const z = ({ children: a }) => /* @__PURE__ */ t(u.Body, { tag: "p", size: "200", className: m.description, children: a });
|
|
109
|
+
z.displayName = "Description";
|
|
110
|
+
const l = {
|
|
111
|
+
Root: x,
|
|
112
|
+
Thumbnail: I,
|
|
113
|
+
PersonThumbnail: S,
|
|
114
|
+
LogoThumbnail: U,
|
|
115
|
+
Meta: H,
|
|
116
|
+
Content: B,
|
|
117
|
+
Heading: M,
|
|
118
|
+
Description: z,
|
|
119
|
+
ProductBadges: $
|
|
120
|
+
}, L = ({
|
|
121
|
+
heading: a,
|
|
122
|
+
meta: e,
|
|
123
|
+
link: n,
|
|
124
|
+
productBadges: o,
|
|
125
|
+
badges: r,
|
|
126
|
+
thumbnail: s,
|
|
127
|
+
withArrow: i = !1,
|
|
128
|
+
isExternal: c = !1,
|
|
129
|
+
className: p,
|
|
130
|
+
"aria-label": N
|
|
131
|
+
}) => /* @__PURE__ */ d(
|
|
132
|
+
l.Root,
|
|
133
|
+
{
|
|
134
|
+
link: n,
|
|
135
|
+
withArrow: i,
|
|
136
|
+
isExternal: c,
|
|
137
|
+
className: p,
|
|
138
|
+
"aria-label": N || a,
|
|
139
|
+
children: [
|
|
140
|
+
s ? /* @__PURE__ */ t(l.Thumbnail, { ...s }) : null,
|
|
141
|
+
/* @__PURE__ */ d(l.Content, { children: [
|
|
142
|
+
e && e.length > 0 ? /* @__PURE__ */ t(l.Meta, { items: e }) : null,
|
|
143
|
+
/* @__PURE__ */ t(l.Heading, { children: a }),
|
|
144
|
+
o && o?.length > 0 ? /* @__PURE__ */ t(l.ProductBadges, { badges: o, children: r && r.length > 0 ? r.map((h, g) => Array.isArray(h) ? /* @__PURE__ */ t(w, { icon: h[0], text: h[1] }, g) : /* @__PURE__ */ t(w, { text: h }, g)) : null }) : null
|
|
145
|
+
] })
|
|
146
|
+
]
|
|
147
|
+
}
|
|
148
|
+
);
|
|
149
|
+
L.displayName = "UnifiedCard";
|
|
150
|
+
const Ca = "newsroomCard__5Rb0H", fa = {
|
|
151
|
+
newsroomCard: Ca
|
|
152
|
+
}, va = ({
|
|
153
|
+
heading: a,
|
|
154
|
+
date: e,
|
|
155
|
+
category: n,
|
|
156
|
+
link: o,
|
|
157
|
+
thumbnail: r,
|
|
158
|
+
withArrow: s = !1
|
|
159
|
+
}) => /* @__PURE__ */ t(
|
|
160
|
+
L,
|
|
161
|
+
{
|
|
162
|
+
heading: a,
|
|
163
|
+
meta: [e, n],
|
|
164
|
+
link: o,
|
|
165
|
+
thumbnail: r,
|
|
166
|
+
withArrow: s,
|
|
167
|
+
className: fa.newsroomCard
|
|
168
|
+
}
|
|
169
|
+
);
|
|
170
|
+
va.displayName = "NewsroomCard";
|
|
171
|
+
const wa = "location__OjUu5", Pa = "thumbnailContainer__ATYhC", ya = "thumbnailIcon__Sx-P-", D = {
|
|
172
|
+
location: wa,
|
|
173
|
+
thumbnailContainer: Pa,
|
|
174
|
+
thumbnailIcon: ya
|
|
175
|
+
}, Ta = /* @__PURE__ */ new Map([
|
|
176
|
+
// null signals that we don't want to render any icon
|
|
177
|
+
["hashicorp.com", null],
|
|
178
|
+
[
|
|
179
|
+
"twitter.com",
|
|
180
|
+
/* @__PURE__ */ t(W, { "data-testid": "wpl-personcard-twitter-icon" })
|
|
181
|
+
],
|
|
182
|
+
["github.com", /* @__PURE__ */ t(Q, { "data-testid": "wpl-personcard-github-icon" })],
|
|
183
|
+
[
|
|
184
|
+
"linkedin.com",
|
|
185
|
+
/* @__PURE__ */ t(aa, { "data-testid": "wpl-personcard-linkedin-icon" })
|
|
186
|
+
],
|
|
187
|
+
["mailto:", /* @__PURE__ */ t(na, { "data-testid": "wpl-personcard-mail-icon" })]
|
|
188
|
+
]), ka = X(function({ url: e }) {
|
|
189
|
+
const { protocol: n, host: o } = new URL(e), r = Ta.get(n === "mailto:" ? "mailto:" : o);
|
|
190
|
+
return r === null ? null : /* @__PURE__ */ t("div", { className: D.thumbnailIcon, children: r ?? /* @__PURE__ */ t(ta, { "data-testid": "wpl-personcard-link-icon" }) });
|
|
191
|
+
}), Da = ({
|
|
192
|
+
link: a,
|
|
193
|
+
thumbnail: e,
|
|
194
|
+
name: n,
|
|
195
|
+
location: o,
|
|
196
|
+
bio: r,
|
|
197
|
+
productBadges: s
|
|
198
|
+
}) => /* @__PURE__ */ d(l.Root, { link: a, withArrow: !1, "aria-label": n, children: [
|
|
199
|
+
/* @__PURE__ */ d("div", { className: D.thumbnailContainer, children: [
|
|
200
|
+
/* @__PURE__ */ t(l.PersonThumbnail, { ...e }),
|
|
201
|
+
/* @__PURE__ */ t(ka, { url: a })
|
|
202
|
+
] }),
|
|
203
|
+
/* @__PURE__ */ d(l.Content, { children: [
|
|
204
|
+
/* @__PURE__ */ d("div", { children: [
|
|
205
|
+
/* @__PURE__ */ t(l.Heading, { children: n }),
|
|
206
|
+
o ? /* @__PURE__ */ t(u.Body, { tag: "p", size: "200", className: D.location, children: o }) : null
|
|
207
|
+
] }),
|
|
208
|
+
r ? /* @__PURE__ */ t(l.Description, { children: r }) : null,
|
|
209
|
+
s && s?.length > 0 ? /* @__PURE__ */ t(l.ProductBadges, { badges: s }) : null
|
|
210
|
+
] })
|
|
211
|
+
] });
|
|
212
|
+
Da.displayName = "PersonCard";
|
|
213
|
+
const La = ({
|
|
214
|
+
heading: a,
|
|
215
|
+
date: e,
|
|
216
|
+
category: n,
|
|
217
|
+
link: o,
|
|
218
|
+
productBadges: r,
|
|
219
|
+
thumbnail: s,
|
|
220
|
+
isExternal: i
|
|
221
|
+
}) => /* @__PURE__ */ t(
|
|
222
|
+
L,
|
|
223
|
+
{
|
|
224
|
+
link: o,
|
|
225
|
+
meta: e ? [e, n] : [n],
|
|
226
|
+
productBadges: r,
|
|
227
|
+
thumbnail: s,
|
|
228
|
+
isExternal: i,
|
|
229
|
+
heading: a
|
|
230
|
+
}
|
|
231
|
+
);
|
|
232
|
+
La.displayName = "ResourceCard";
|
|
233
|
+
const Oa = ({
|
|
234
|
+
heading: a,
|
|
235
|
+
description: e,
|
|
236
|
+
eyebrow: n,
|
|
237
|
+
link: o,
|
|
238
|
+
clickHandler: r,
|
|
239
|
+
thumbnail: s,
|
|
240
|
+
withArrow: i = !1,
|
|
241
|
+
isExternal: c = !1,
|
|
242
|
+
className: p
|
|
243
|
+
}) => /* @__PURE__ */ d(
|
|
244
|
+
l.Root,
|
|
245
|
+
{
|
|
246
|
+
link: o,
|
|
247
|
+
withArrow: i,
|
|
248
|
+
isExternal: c,
|
|
249
|
+
className: p,
|
|
250
|
+
clickHandler: r,
|
|
251
|
+
"aria-label": a,
|
|
252
|
+
children: [
|
|
253
|
+
s ? /* @__PURE__ */ t(l.Thumbnail, { ...s }) : null,
|
|
254
|
+
/* @__PURE__ */ d(l.Content, { children: [
|
|
255
|
+
n ? /* @__PURE__ */ t(l.Meta, { items: [n] }) : null,
|
|
256
|
+
/* @__PURE__ */ t(l.Heading, { children: a }),
|
|
257
|
+
e ? /* @__PURE__ */ t(l.Description, { children: e }) : null
|
|
258
|
+
] })
|
|
259
|
+
]
|
|
260
|
+
}
|
|
261
|
+
);
|
|
262
|
+
Oa.displayName = "PromoCard";
|
|
263
|
+
const Aa = "description__-1CDK", Ra = "logoContainer__9VUWm", Ea = "logo__E1-po", T = {
|
|
264
|
+
description: Aa,
|
|
265
|
+
logoContainer: Ra,
|
|
266
|
+
logo: Ea
|
|
267
|
+
}, Ia = ({
|
|
268
|
+
heading: a,
|
|
269
|
+
description: e,
|
|
270
|
+
meta: n,
|
|
271
|
+
link: o,
|
|
272
|
+
productBadges: r,
|
|
273
|
+
competencyBadges: s,
|
|
274
|
+
logo: i,
|
|
275
|
+
className: c
|
|
276
|
+
}) => {
|
|
277
|
+
const p = P(), N = r && r.length > 0, h = s && s.length > 0;
|
|
278
|
+
return /* @__PURE__ */ d(
|
|
279
|
+
l.Root,
|
|
280
|
+
{
|
|
281
|
+
link: o,
|
|
282
|
+
withArrow: !1,
|
|
283
|
+
isExternal: !1,
|
|
284
|
+
className: c,
|
|
285
|
+
"aria-label": a,
|
|
286
|
+
children: [
|
|
287
|
+
/* @__PURE__ */ t("div", { className: T.logoContainer, children: /* @__PURE__ */ t(p, { ...i, alt: i.alt, className: T.logo }) }),
|
|
288
|
+
/* @__PURE__ */ d(l.Content, { children: [
|
|
289
|
+
/* @__PURE__ */ t(l.Meta, { items: n }),
|
|
290
|
+
/* @__PURE__ */ t(u.Body, { tag: "p", size: "200", className: T.description, children: e }),
|
|
291
|
+
N || h ? /* @__PURE__ */ t(l.ProductBadges, { badges: r || [], children: h && s.map((g, f) => /* @__PURE__ */ t(w, { text: g, icon: "dot" }, f)) }) : null
|
|
292
|
+
] })
|
|
293
|
+
]
|
|
294
|
+
}
|
|
295
|
+
);
|
|
296
|
+
};
|
|
297
|
+
Ia.displayName = "PartnerCard";
|
|
298
|
+
function b(a, e) {
|
|
299
|
+
const n = a, o = e.aliases ?? Object.fromEntries(n.map((i) => [i, i])), r = e.transform ?? ((i) => i.trim().toLowerCase()), s = (i, c) => {
|
|
300
|
+
const p = { ...o, ...c?.aliases ?? {} }, N = c?.fallback ?? e.fallback, h = c?.transform ?? r;
|
|
301
|
+
if (typeof i != "string") return N;
|
|
302
|
+
const g = h(i), f = p[g] ?? g;
|
|
303
|
+
return n.includes(f) ? f : N;
|
|
304
|
+
};
|
|
305
|
+
return s.with = (i) => (c, p) => s(c, { ...i, ...p ?? {} }), s;
|
|
306
|
+
}
|
|
307
|
+
function O(a) {
|
|
308
|
+
const e = (n, o) => {
|
|
309
|
+
const r = {};
|
|
310
|
+
for (const s in a) {
|
|
311
|
+
if (!Object.prototype.hasOwnProperty.call(a, s)) continue;
|
|
312
|
+
const i = s, c = a[i], p = o?.all ? c.with(o.all) : c;
|
|
313
|
+
r[i] = p(n?.[i], o?.each?.[i]);
|
|
314
|
+
}
|
|
315
|
+
return r;
|
|
316
|
+
};
|
|
317
|
+
return e.with = (n) => {
|
|
318
|
+
const o = {};
|
|
319
|
+
for (const r in a) {
|
|
320
|
+
if (!Object.prototype.hasOwnProperty.call(a, r)) continue;
|
|
321
|
+
const s = r;
|
|
322
|
+
o[s] = a[s].with(n);
|
|
323
|
+
}
|
|
324
|
+
return O(o);
|
|
325
|
+
}, e;
|
|
326
|
+
}
|
|
327
|
+
const Sa = "layout__bSrhA", Ua = "faint__Z2ywD", xa = "transparent__9mJjZ", v = {
|
|
328
|
+
layout: Sa,
|
|
329
|
+
faint: Ua,
|
|
330
|
+
transparent: xa,
|
|
331
|
+
"padding-top-none": "padding-top-none__9PeMj",
|
|
332
|
+
"padding-top-small": "padding-top-small__bSFSb",
|
|
333
|
+
"padding-top-medium": "padding-top-medium__GrQm5",
|
|
334
|
+
"padding-top-large": "padding-top-large__mDeeb",
|
|
335
|
+
"padding-bottom-none": "padding-bottom-none__G-i6w",
|
|
336
|
+
"padding-bottom-small": "padding-bottom-small__LraeK",
|
|
337
|
+
"padding-bottom-medium": "padding-bottom-medium__PswfC",
|
|
338
|
+
"padding-bottom-large": "padding-bottom-large__0VyXJ"
|
|
339
|
+
}, j = "light", G = "primary", F = "medium", K = "medium", Ha = ["light", "dark"], Ba = ["primary", "faint", "transparent"], A = ["none", "small", "medium", "large"], _t = O({
|
|
340
|
+
appearance: b(Ha, {
|
|
341
|
+
fallback: j
|
|
342
|
+
}),
|
|
343
|
+
background: b(Ba, {
|
|
344
|
+
fallback: G
|
|
345
|
+
}),
|
|
346
|
+
paddingTop: b(A, {
|
|
347
|
+
fallback: F
|
|
348
|
+
}),
|
|
349
|
+
paddingBottom: b(A, {
|
|
350
|
+
fallback: K
|
|
351
|
+
})
|
|
352
|
+
}), Ma = ({
|
|
353
|
+
className: a,
|
|
354
|
+
children: e,
|
|
355
|
+
appearance: n = j,
|
|
356
|
+
background: o = G,
|
|
357
|
+
paddingBottom: r = F,
|
|
358
|
+
paddingTop: s = K
|
|
359
|
+
}) => /* @__PURE__ */ t(
|
|
360
|
+
"div",
|
|
361
|
+
{
|
|
362
|
+
className: y([
|
|
363
|
+
v.layout,
|
|
364
|
+
{ "mds-dark-mode": n === "dark" },
|
|
365
|
+
v[o],
|
|
366
|
+
v[`padding-top-${s}`],
|
|
367
|
+
v[`padding-bottom-${r}`],
|
|
368
|
+
a
|
|
369
|
+
]),
|
|
370
|
+
children: e
|
|
371
|
+
}
|
|
372
|
+
);
|
|
373
|
+
Ma.displayName = "Layout";
|
|
374
|
+
const $a = "small__Y58kj", za = "medium__2A1Tv", ja = "large__ho0Xp", C = {
|
|
375
|
+
"product-logo": "product-logo__moaPv",
|
|
376
|
+
small: $a,
|
|
377
|
+
medium: za,
|
|
378
|
+
large: ja
|
|
379
|
+
};
|
|
380
|
+
function Ga(a) {
|
|
381
|
+
return a.charAt(0).toUpperCase() + a.slice(1);
|
|
382
|
+
}
|
|
383
|
+
const V = "small", Y = "primary", Fa = "hcp", Ka = [
|
|
384
|
+
"vault-radar",
|
|
385
|
+
"vault-secrets",
|
|
386
|
+
"vault-dedicated"
|
|
387
|
+
], Va = ["small", "medium", "large"], Ya = ["primary", "strong"], qa = [
|
|
388
|
+
"hcp",
|
|
389
|
+
"hashicorp",
|
|
390
|
+
"boundary",
|
|
391
|
+
"consul",
|
|
392
|
+
"nomad",
|
|
393
|
+
"packer",
|
|
394
|
+
"terraform",
|
|
395
|
+
"vault",
|
|
396
|
+
"vault-dedicated",
|
|
397
|
+
"vault-enterprise",
|
|
398
|
+
"vault-radar",
|
|
399
|
+
"vault-secrets",
|
|
400
|
+
"vagrant",
|
|
401
|
+
"waypoint"
|
|
402
|
+
], bt = O({
|
|
403
|
+
size: b(Va, {
|
|
404
|
+
fallback: V
|
|
405
|
+
}),
|
|
406
|
+
color: b(Ya, {
|
|
407
|
+
fallback: Y
|
|
408
|
+
}),
|
|
409
|
+
product: b(qa, {
|
|
410
|
+
fallback: Fa
|
|
411
|
+
})
|
|
412
|
+
}), Ja = ({
|
|
413
|
+
size: a = V,
|
|
414
|
+
color: e = Y,
|
|
415
|
+
product: n
|
|
416
|
+
}) => {
|
|
417
|
+
const o = k[n]?.name ?? Ga(n);
|
|
418
|
+
return /* @__PURE__ */ d("div", { className: y(C["product-logo"], C[a]), children: [
|
|
419
|
+
/* @__PURE__ */ t(
|
|
420
|
+
Z,
|
|
421
|
+
{
|
|
422
|
+
size: a === "small" ? 16 : 24,
|
|
423
|
+
name: k[n]?.icon ?? `${n}-color`,
|
|
424
|
+
color: k[n]?.color
|
|
425
|
+
}
|
|
426
|
+
),
|
|
427
|
+
Ka.includes(n) ? /* @__PURE__ */ d("div", { children: [
|
|
428
|
+
/* @__PURE__ */ d(
|
|
429
|
+
u.DisplayExpressive,
|
|
430
|
+
{
|
|
431
|
+
className: C[a],
|
|
432
|
+
color: e,
|
|
433
|
+
weight: "semibold",
|
|
434
|
+
children: [
|
|
435
|
+
o.split(" ").slice(0, 2).join(" "),
|
|
436
|
+
" "
|
|
437
|
+
]
|
|
438
|
+
}
|
|
439
|
+
),
|
|
440
|
+
/* @__PURE__ */ t(
|
|
441
|
+
u.DisplayExpressive,
|
|
442
|
+
{
|
|
443
|
+
className: C[a],
|
|
444
|
+
color: e,
|
|
445
|
+
weight: "regular",
|
|
446
|
+
children: o.split(" ").slice(2)[0]
|
|
447
|
+
}
|
|
448
|
+
)
|
|
449
|
+
] }) : (
|
|
450
|
+
// Default to unmodified display of the product name
|
|
451
|
+
/* @__PURE__ */ t(
|
|
452
|
+
u.DisplayExpressive,
|
|
453
|
+
{
|
|
454
|
+
className: C[a],
|
|
455
|
+
color: e,
|
|
456
|
+
weight: "semibold",
|
|
457
|
+
children: o
|
|
458
|
+
}
|
|
459
|
+
)
|
|
460
|
+
)
|
|
461
|
+
] });
|
|
462
|
+
};
|
|
463
|
+
Ja.displayName = "ProductLogo";
|
|
464
|
+
const k = {
|
|
465
|
+
hcp: {
|
|
466
|
+
icon: "hashicorp-square",
|
|
467
|
+
color: "var(--mds-color-hcp-brand)",
|
|
468
|
+
name: "HashiCorp Cloud Platform"
|
|
469
|
+
},
|
|
470
|
+
hashicorp: {
|
|
471
|
+
icon: "hashicorp",
|
|
472
|
+
color: "var(--mds-color-hashicorp-brand)",
|
|
473
|
+
name: "HashiCorp"
|
|
474
|
+
},
|
|
475
|
+
"vault-radar": {
|
|
476
|
+
icon: "vault-square",
|
|
477
|
+
color: "var(--mds-color-vault-radar-brand)",
|
|
478
|
+
name: "HCP Vault Radar"
|
|
479
|
+
},
|
|
480
|
+
"vault-secrets": {
|
|
481
|
+
icon: "vault-square",
|
|
482
|
+
color: "var(--mds-color-vault-secrets-brand)",
|
|
483
|
+
name: "HCP Vault Secrets"
|
|
484
|
+
},
|
|
485
|
+
"vault-dedicated": {
|
|
486
|
+
icon: "vault-fill",
|
|
487
|
+
color: "var(--mds-color-vault-secrets-brand)",
|
|
488
|
+
name: "HCP Vault Dedicated"
|
|
489
|
+
},
|
|
490
|
+
"vault-enterprise": {
|
|
491
|
+
icon: "vault-fill",
|
|
492
|
+
color: "var(--mds-color-vault-secrets-brand)",
|
|
493
|
+
name: "Vault Enterprise"
|
|
494
|
+
}
|
|
495
|
+
}, Xa = "root__wY2Kw", Za = "transparent__oS97K", Qa = "wrapper__z6E7B g-grid g-grid-container", Wa = "textStack__T-LcO", at = "headline__Msi9v", tt = "cards__RaaoR", nt = "cta__bp4JK", et = "dark__ccH93", _ = {
|
|
496
|
+
root: Xa,
|
|
497
|
+
transparent: Za,
|
|
498
|
+
wrapper: Qa,
|
|
499
|
+
textStack: Wa,
|
|
500
|
+
headline: at,
|
|
501
|
+
cards: tt,
|
|
502
|
+
cta: nt,
|
|
503
|
+
dark: et
|
|
504
|
+
}, ot = ({
|
|
505
|
+
appearance: a = "transparent",
|
|
506
|
+
headline: e,
|
|
507
|
+
description: n,
|
|
508
|
+
cards: o,
|
|
509
|
+
cta: r
|
|
510
|
+
}) => {
|
|
511
|
+
const s = ea();
|
|
512
|
+
return /* @__PURE__ */ t(
|
|
513
|
+
"div",
|
|
514
|
+
{
|
|
515
|
+
className: y(_.root, _[a], {
|
|
516
|
+
"mds-dark-mode": a === "dark"
|
|
517
|
+
}),
|
|
518
|
+
children: /* @__PURE__ */ d("div", { className: _.wrapper, children: [
|
|
519
|
+
/* @__PURE__ */ d("div", { className: _.textStack, children: [
|
|
520
|
+
/* @__PURE__ */ t(
|
|
521
|
+
u.DisplayExpressive,
|
|
522
|
+
{
|
|
523
|
+
tag: "h2",
|
|
524
|
+
color: "primary",
|
|
525
|
+
className: _.headline,
|
|
526
|
+
size: "400",
|
|
527
|
+
children: e
|
|
528
|
+
}
|
|
529
|
+
),
|
|
530
|
+
n ? /* @__PURE__ */ t(u.Body, { size: "300", color: "faint", tag: "p", children: n }) : null
|
|
531
|
+
] }),
|
|
532
|
+
/* @__PURE__ */ t("div", { className: _.cards, "data-testid": "wpl-cards-container", children: o.map((i, c) => /* @__PURE__ */ t(
|
|
533
|
+
R,
|
|
534
|
+
{
|
|
535
|
+
href: i.link,
|
|
536
|
+
content: {
|
|
537
|
+
...i.thumbnail && {
|
|
538
|
+
thumbnail: {
|
|
539
|
+
alt: i.thumbnail.alt,
|
|
540
|
+
src: i.thumbnail.src,
|
|
541
|
+
aspectRatio: "16/9"
|
|
542
|
+
}
|
|
543
|
+
},
|
|
544
|
+
eyebrow: i.meta,
|
|
545
|
+
heading: i.heading,
|
|
546
|
+
description: i.description,
|
|
547
|
+
showArrow: !0
|
|
548
|
+
}
|
|
549
|
+
},
|
|
550
|
+
c
|
|
551
|
+
)) }),
|
|
552
|
+
r ? /* @__PURE__ */ t("div", { className: _.cta, "data-testid": "wpl-cta-container", children: /* @__PURE__ */ t(s, { href: r.href, children: r.text }) }) : null
|
|
553
|
+
] })
|
|
554
|
+
}
|
|
555
|
+
);
|
|
556
|
+
};
|
|
557
|
+
ot.displayName = "RelatedContent";
|
|
558
|
+
export {
|
|
559
|
+
l as C,
|
|
560
|
+
Ma as L,
|
|
561
|
+
va as N,
|
|
562
|
+
Da as P,
|
|
563
|
+
La as R,
|
|
564
|
+
L as U,
|
|
565
|
+
Oa as a,
|
|
566
|
+
Ia as b,
|
|
567
|
+
Ha as c,
|
|
568
|
+
Ba as d,
|
|
569
|
+
A as e,
|
|
570
|
+
E as f,
|
|
571
|
+
Ja as g,
|
|
572
|
+
Ya as h,
|
|
573
|
+
qa as i,
|
|
574
|
+
Va as j,
|
|
575
|
+
bt as k,
|
|
576
|
+
ot as l,
|
|
577
|
+
_t as n
|
|
578
|
+
};
|
|
579
|
+
//# sourceMappingURL=index-B9mPJh9w.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-B9mPJh9w.js","sources":["../src/patterns/product-badge/index.tsx","../src/patterns/card/thumbnails/index.tsx","../src/patterns/card/primitives.tsx","../src/patterns/card/unified-card/index.tsx","../src/patterns/card/newsroom-card/index.tsx","../src/patterns/card/person-card/index.tsx","../src/patterns/card/resource-card/index.tsx","../src/patterns/card/promo-card/index.tsx","../src/patterns/card/partner-card/index.tsx","../src/utils/make-normalizer/index.tsx","../src/patterns/layout/index.tsx","../src/patterns/product-logo/index.tsx","../src/patterns/related-content/index.tsx"],"sourcesContent":["import { Badge } from '../../components/badge'\nimport s from './style.module.css'\n\ntype Products =\n\t| 'hashicorp'\n\t| 'boundary'\n\t| 'consul'\n\t| 'nomad'\n\t| 'packer'\n\t| 'terraform'\n\t| 'vault'\n\t| 'vagrant'\n\t| 'waypoint'\n\ninterface ProductBadgeProps {\n\tproductName: Products\n\thasDot?: boolean\n}\n\nconst ProductBadge = ({ productName, hasDot }: ProductBadgeProps) => {\n\tconst finalProductName = productName.replace('hashicorp', 'HashiCorp')\n\n\tconst productBrand =\n\t\tfinalProductName === 'HashiCorp cloud platform' ? 'hashicorp' : productName\n\n\treturn (\n\t\t<Badge\n\t\t\tclassName={s.badge}\n\t\t\ttext={finalProductName}\n\t\t\t{...(hasDot && {\n\t\t\t\ticon: 'dot',\n\t\t\t\ticonColor: `var(--mds-color-${productBrand}-brand)`,\n\t\t\t})}\n\t\t/>\n\t)\n}\n\nProductBadge.displayName = 'ProductBadge'\n\nexport type { ProductBadgeProps }\nexport { ProductBadge }\n","'use client'\n\nimport type { ThumbnailProps } from '../types'\nimport { useMDSImage } from '../../../utils/mds-context'\nimport s from '../style.module.css'\n\nexport const Thumbnail = ({ src, alt }: ThumbnailProps) => {\n\tconst Image = useMDSImage()\n\n\treturn (\n\t\t<div className={s.thumbnail} data-testid=\"wpl-card-thumbnail\">\n\t\t\t<div className={s.image}>\n\t\t\t\t<Image src={src} alt={alt} width={800} height={450} />\n\t\t\t</div>\n\t\t</div>\n\t)\n}\n\nThumbnail.displayName = 'Thumbnail'\n\nexport const PersonThumbnail = ({ src, alt }: ThumbnailProps) => {\n\tconst Image = useMDSImage()\n\n\treturn (\n\t\t<div className={s.personThumbnail} data-testid=\"wpl-card-thumbnail\">\n\t\t\t<div className={s.image}>\n\t\t\t\t<Image src={src} alt={alt} width={800} height={450} />\n\t\t\t</div>\n\t\t</div>\n\t)\n}\n\nPersonThumbnail.displayName = 'PersonThumbnail'\n\nexport const LogoThumbnail = ({ src, alt }: ThumbnailProps) => {\n\tconst Image = useMDSImage()\n\n\treturn (\n\t\t<div className={s.logoThumbnail} data-testid=\"wpl-card-logo-thumbnail\">\n\t\t\t<div className={s.image}>\n\t\t\t\t<Image src={src} alt={alt} width={800} height={450} />\n\t\t\t</div>\n\t\t</div>\n\t)\n}\n\nLogoThumbnail.displayName = 'LogoThumbnail'\n","import { forwardRef } from 'react'\nimport { Card as MDSCard } from '../../components/card'\nimport { Text } from '../../components/text'\nimport { IconArrowRight24 } from '@hashicorp/flight-icons/svg-react/arrow-right-24'\nimport { ProductBadge } from '../product-badge'\nimport { Thumbnail, PersonThumbnail, LogoThumbnail } from './thumbnails'\nimport type {\n\tCardPrimitiveProps,\n\tMetaProps,\n\tContentProps,\n\tHeadingProps,\n\tProductBadgesProps,\n\tDescriptionProps,\n} from './types'\nimport s from './style.module.css'\nimport classNames from 'classnames'\n\nconst Root = forwardRef<HTMLDivElement, CardPrimitiveProps>((props, ref) => {\n\tconst {\n\t\twithArrow = true,\n\t\tlink,\n\t\tclickHandler,\n\t\tisExternal,\n\t\tchildren,\n\t\tclassName,\n\t\t'aria-label': ariaLabel,\n\t} = props\n\n\treturn (\n\t\t<MDSCard\n\t\t\tclassName={classNames(s.card, className)}\n\t\t\thref={link}\n\t\t\tonClickCapture={clickHandler}\n\t\t\tisExternal={isExternal}\n\t\t\tref={ref}\n\t\t\taria-label={ariaLabel}\n\t\t>\n\t\t\t{children}\n\t\t\t<div className={s.cta}>{withArrow ? <IconArrowRight24 /> : null}</div>\n\t\t</MDSCard>\n\t)\n})\n\nRoot.displayName = 'CardPrimitives.Root'\n\nconst Meta = ({ items }: MetaProps) => {\n\treturn (\n\t\t<div className={s.meta} data-testid=\"wpl-card-meta\">\n\t\t\t<Text.Label>\n\t\t\t\t{items.map((item, stableIdx) => {\n\t\t\t\t\tconst isLastItem = stableIdx === items.length - 1\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{item}\n\t\t\t\t\t\t\t{!isLastItem ? (\n\t\t\t\t\t\t\t\t<span className={s.metaSeparator} aria-hidden={true}>\n\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t</>\n\t\t\t\t\t)\n\t\t\t\t})}\n\t\t\t</Text.Label>\n\t\t</div>\n\t)\n}\n\nMeta.displayName = 'Meta'\n\nconst Content = ({ children }: ContentProps) => {\n\treturn (\n\t\t<div className={s.content} data-testid=\"wpl-card-content\">\n\t\t\t{children}\n\t\t</div>\n\t)\n}\n\nContent.displayName = 'Content'\n\nconst Heading = ({ as = 'h2', children }: HeadingProps) => {\n\treturn (\n\t\t<Text.DisplayExpressive tag={as} size=\"200\" className={s.heading}>\n\t\t\t{children}\n\t\t</Text.DisplayExpressive>\n\t)\n}\n\nHeading.displayName = 'Heading'\n\nconst ProductBadges = ({ badges, children }: ProductBadgesProps) => {\n\treturn (\n\t\t<div className={s.productBadges} data-testid=\"wpl-card-badges\">\n\t\t\t{badges.map((badge, stableIdx) => {\n\t\t\t\treturn (\n\t\t\t\t\t<ProductBadge\n\t\t\t\t\t\t// eslint-disable-next-line react/no-array-index-key\n\t\t\t\t\t\tkey={`product-badge-${stableIdx}`}\n\t\t\t\t\t\tproductName={badge}\n\t\t\t\t\t\thasDot={true}\n\t\t\t\t\t/>\n\t\t\t\t)\n\t\t\t})}\n\t\t\t{children}\n\t\t</div>\n\t)\n}\n\nProductBadges.displayName = 'ProductBadges'\n\nconst Description = ({ children }: DescriptionProps) => {\n\treturn (\n\t\t<Text.Body tag=\"p\" size=\"200\" className={s.description}>\n\t\t\t{children}\n\t\t</Text.Body>\n\t)\n}\n\nDescription.displayName = 'Description'\n\nconst CardPrimitives = {\n\tRoot,\n\tThumbnail,\n\tPersonThumbnail,\n\tLogoThumbnail,\n\tMeta,\n\tContent,\n\tHeading,\n\tDescription,\n\tProductBadges,\n}\n\nexport { CardPrimitives }\n","import { Badge } from '../../../components/badge'\nimport { CardPrimitives } from '../primitives'\nimport type { CardPatternProps } from '../types'\n\ninterface UnifiedCardProps extends CardPatternProps {\n\tbadges?: (string | string[])[]\n}\n\nconst UnifiedCard = ({\n\theading,\n\tmeta,\n\tlink,\n\tproductBadges,\n\tbadges,\n\tthumbnail,\n\twithArrow = false,\n\tisExternal = false,\n\tclassName,\n\t'aria-label': ariaLabel,\n}: UnifiedCardProps) => {\n\treturn (\n\t\t<CardPrimitives.Root\n\t\t\tlink={link}\n\t\t\twithArrow={withArrow}\n\t\t\tisExternal={isExternal}\n\t\t\tclassName={className}\n\t\t\taria-label={ariaLabel || heading}\n\t\t>\n\t\t\t{thumbnail ? <CardPrimitives.Thumbnail {...thumbnail} /> : null}\n\t\t\t<CardPrimitives.Content>\n\t\t\t\t{meta && meta.length > 0 ? <CardPrimitives.Meta items={meta} /> : null}\n\t\t\t\t<CardPrimitives.Heading>{heading}</CardPrimitives.Heading>\n\t\t\t\t{productBadges && productBadges?.length > 0 ? (\n\t\t\t\t\t<CardPrimitives.ProductBadges badges={productBadges}>\n\t\t\t\t\t\t{badges && badges.length > 0\n\t\t\t\t\t\t\t? badges.map((badge, stableIdx) => {\n\t\t\t\t\t\t\t\t\tif (Array.isArray(badge)) {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<Badge key={stableIdx} icon={badge[0]} text={badge[1]} />\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\treturn <Badge key={stableIdx} text={badge} />\n\t\t\t\t\t\t\t })\n\t\t\t\t\t\t\t: null}\n\t\t\t\t\t</CardPrimitives.ProductBadges>\n\t\t\t\t) : null}\n\t\t\t</CardPrimitives.Content>\n\t\t</CardPrimitives.Root>\n\t)\n}\n\nUnifiedCard.displayName = 'UnifiedCard'\n\nexport type { UnifiedCardProps }\nexport { UnifiedCard }\n","import type { ThumbnailProps } from '../types'\nimport { UnifiedCard } from '../unified-card'\nimport s from './style.module.css'\n\ninterface NewsroomCardProps {\n\theading: string\n\tdate: string\n\tcategory: string\n\tlink: string\n\tthumbnail?: ThumbnailProps\n\twithArrow?: boolean\n}\n\nconst NewsroomCard = ({\n\theading,\n\tdate,\n\tcategory,\n\tlink,\n\tthumbnail,\n\twithArrow = false,\n}: NewsroomCardProps) => {\n\treturn (\n\t\t<UnifiedCard\n\t\t\theading={heading}\n\t\t\tmeta={[date, category]}\n\t\t\tlink={link}\n\t\t\tthumbnail={thumbnail}\n\t\t\twithArrow={withArrow}\n\t\t\tclassName={s.newsroomCard}\n\t\t/>\n\t)\n}\n\nNewsroomCard.displayName = 'NewsroomCard'\n\nexport type { NewsroomCardProps }\nexport { NewsroomCard }\n","import { memo, type ReactNode } from 'react'\nimport { Text } from '../../../components/text'\nimport { IconGithub16 } from '@hashicorp/flight-icons/svg-react/github-16'\nimport { IconTwitter16 } from '@hashicorp/flight-icons/svg-react/twitter-16'\nimport { IconLinkedin16 } from '@hashicorp/flight-icons/svg-react/linkedin-16'\nimport { IconLink16 } from '@hashicorp/flight-icons/svg-react/link-16'\nimport { IconMail16 } from '@hashicorp/flight-icons/svg-react/mail-16'\nimport type { ProductBadgesProps, ThumbnailProps } from '../types'\nimport { CardPrimitives } from '../primitives'\nimport s from './style.module.css'\n\ninterface PersonCardProps {\n\tthumbnail: ThumbnailProps\n\tlink: string\n\tname: string\n\tlocation?: string\n\tbio?: string\n\tproductBadges?: ProductBadgesProps['badges']\n}\n\n// Map of hostnames to icons.\n/* eslint-disable react/jsx-key */\nconst iconMap = new Map<string, ReactNode>([\n\t// null signals that we don't want to render any icon\n\t['hashicorp.com', null],\n\t[\n\t\t'twitter.com',\n\t\t<IconTwitter16 data-testid={'wpl-personcard-twitter-icon'} />,\n\t],\n\t['github.com', <IconGithub16 data-testid={'wpl-personcard-github-icon'} />],\n\t[\n\t\t'linkedin.com',\n\t\t<IconLinkedin16 data-testid={'wpl-personcard-linkedin-icon'} />,\n\t],\n\t['mailto:', <IconMail16 data-testid={'wpl-personcard-mail-icon'} />],\n])\n/* eslint-enable react/jsx-key */\n\nconst Icon = memo(function Icon({ url }: { url: string }) {\n\tconst { protocol, host } = new URL(url)\n\tconst icon = iconMap.get(protocol === 'mailto:' ? 'mailto:' : host)\n\n\t// If the icon value is null, don't render an icon\n\tif (icon === null) {\n\t\treturn null\n\t}\n\n\t// Render the icon or the default icon if the icon value is undefined\n\treturn (\n\t\t<div className={s.thumbnailIcon}>\n\t\t\t{icon ?? <IconLink16 data-testid={'wpl-personcard-link-icon'} />}\n\t\t</div>\n\t)\n})\n\nconst PersonCard = ({\n\tlink,\n\tthumbnail,\n\tname,\n\tlocation,\n\tbio,\n\tproductBadges,\n}: PersonCardProps) => {\n\treturn (\n\t\t<CardPrimitives.Root link={link} withArrow={false} aria-label={name}>\n\t\t\t<div className={s.thumbnailContainer}>\n\t\t\t\t<CardPrimitives.PersonThumbnail {...thumbnail} />\n\t\t\t\t<Icon url={link} />\n\t\t\t</div>\n\t\t\t<CardPrimitives.Content>\n\t\t\t\t<div>\n\t\t\t\t\t<CardPrimitives.Heading>{name}</CardPrimitives.Heading>\n\t\t\t\t\t{location ? (\n\t\t\t\t\t\t<Text.Body tag=\"p\" size=\"200\" className={s.location}>\n\t\t\t\t\t\t\t{location}\n\t\t\t\t\t\t</Text.Body>\n\t\t\t\t\t) : null}\n\t\t\t\t</div>\n\t\t\t\t{bio ? (\n\t\t\t\t\t<CardPrimitives.Description>{bio}</CardPrimitives.Description>\n\t\t\t\t) : null}\n\t\t\t\t{productBadges && productBadges?.length > 0 ? (\n\t\t\t\t\t<CardPrimitives.ProductBadges badges={productBadges} />\n\t\t\t\t) : null}\n\t\t\t</CardPrimitives.Content>\n\t\t</CardPrimitives.Root>\n\t)\n}\n\nPersonCard.displayName = 'PersonCard'\n\nexport type { PersonCardProps }\nexport { PersonCard }\n","import type { CardPatternProps, ThumbnailProps } from '../types'\nimport { UnifiedCard } from '../unified-card'\n\ninterface ResourceCardProps {\n\theading: string\n\tdate?: string\n\tcategory: string\n\tlink: string\n\tproductBadges?: CardPatternProps['productBadges']\n\tthumbnail: ThumbnailProps\n\tisExternal?: CardPatternProps['isExternal']\n}\n\nconst ResourceCard = ({\n\theading,\n\tdate,\n\tcategory,\n\tlink,\n\tproductBadges,\n\tthumbnail,\n\tisExternal,\n}: ResourceCardProps) => {\n\tconst meta: string[] = date ? [date, category] : [category]\n\n\treturn (\n\t\t<UnifiedCard\n\t\t\tlink={link}\n\t\t\tmeta={meta}\n\t\t\tproductBadges={productBadges}\n\t\t\tthumbnail={thumbnail}\n\t\t\tisExternal={isExternal}\n\t\t\theading={heading}\n\t\t/>\n\t)\n}\n\nResourceCard.displayName = 'ResourceCard'\n\nexport type { ResourceCardProps }\nexport { ResourceCard }\n","import { CardPrimitives } from '../primitives'\nimport type { ThumbnailProps } from '../types'\n\ninterface PromoCardProps {\n\theading: string\n\tdescription?: string\n\teyebrow?: string\n\tlink: string\n\tclickHandler?: () => void\n\tthumbnail?: ThumbnailProps\n\twithArrow?: boolean\n\tisExternal?: boolean\n\tclassName?: string\n}\n\nconst PromoCard = ({\n\theading,\n\tdescription,\n\teyebrow,\n\tlink,\n\tclickHandler,\n\tthumbnail,\n\twithArrow = false,\n\tisExternal = false,\n\tclassName,\n}: PromoCardProps) => {\n\treturn (\n\t\t<CardPrimitives.Root\n\t\t\tlink={link}\n\t\t\twithArrow={withArrow}\n\t\t\tisExternal={isExternal}\n\t\t\tclassName={className}\n\t\t\tclickHandler={clickHandler}\n\t\t\taria-label={heading}\n\t\t>\n\t\t\t{thumbnail ? <CardPrimitives.Thumbnail {...thumbnail} /> : null}\n\t\t\t<CardPrimitives.Content>\n\t\t\t\t{eyebrow ? <CardPrimitives.Meta items={[eyebrow]} /> : null}\n\t\t\t\t<CardPrimitives.Heading>{heading}</CardPrimitives.Heading>\n\t\t\t\t{description ? (\n\t\t\t\t\t<CardPrimitives.Description>{description}</CardPrimitives.Description>\n\t\t\t\t) : null}\n\t\t\t</CardPrimitives.Content>\n\t\t</CardPrimitives.Root>\n\t)\n}\n\nPromoCard.displayName = 'PromoCard'\n\nexport type { PromoCardProps }\nexport { PromoCard }\n","'use client'\n\nimport type { MDSImageProps } from '../../../utils/mds-context'\nimport { useMDSImage } from '../../../utils/mds-context'\nimport { Badge } from '../../../components/badge'\nimport { Text } from '../../../components/text'\nimport { CardPrimitives } from '../primitives'\nimport type { CardPatternProps } from '../types'\nimport s from './style.module.css'\n\ninterface PartnerCardProps {\n\theading: string\n\tdescription: string\n\tmeta: string[]\n\tlink: string\n\tproductBadges?: CardPatternProps['productBadges']\n\tcompetencyBadges?: string[]\n\tlogo: MDSImageProps\n\tclassName?: string\n}\n\nconst PartnerCard = ({\n\theading,\n\tdescription,\n\tmeta,\n\tlink,\n\tproductBadges,\n\tcompetencyBadges,\n\tlogo,\n\tclassName,\n}: PartnerCardProps) => {\n\tconst Image = useMDSImage()\n\n\tconst hasProductBadges = productBadges && productBadges.length > 0\n\tconst hasCompetencyBadges = competencyBadges && competencyBadges.length > 0\n\n\treturn (\n\t\t<CardPrimitives.Root\n\t\t\tlink={link}\n\t\t\twithArrow={false}\n\t\t\tisExternal={false}\n\t\t\tclassName={className}\n\t\t\taria-label={heading}\n\t\t>\n\t\t\t<div className={s.logoContainer}>\n\t\t\t\t<Image {...logo} alt={logo.alt} className={s.logo} />\n\t\t\t</div>\n\t\t\t<CardPrimitives.Content>\n\t\t\t\t<CardPrimitives.Meta items={meta} />\n\t\t\t\t<Text.Body tag=\"p\" size=\"200\" className={s.description}>\n\t\t\t\t\t{description}\n\t\t\t\t</Text.Body>\n\t\t\t\t{hasProductBadges || hasCompetencyBadges ? (\n\t\t\t\t\t<CardPrimitives.ProductBadges badges={productBadges || []}>\n\t\t\t\t\t\t{hasCompetencyBadges &&\n\t\t\t\t\t\t\tcompetencyBadges.map((competencyBadge, stableIdx) => (\n\t\t\t\t\t\t\t\t<Badge key={stableIdx} text={competencyBadge} icon=\"dot\" />\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t</CardPrimitives.ProductBadges>\n\t\t\t\t) : null}\n\t\t\t</CardPrimitives.Content>\n\t\t</CardPrimitives.Root>\n\t)\n}\n\nPartnerCard.displayName = 'PartnerCard'\n\nexport type { PartnerCardProps }\nexport { PartnerCard }\n","export type NormalizerOpts<TOut extends string> = {\n\taliases?: Record<string, TOut>\n\tfallback?: TOut\n\ttransform?: (raw: string) => string\n}\n\nexport type Normalizer<TOut extends string> = {\n\t(input: unknown, opts?: NormalizerOpts<TOut>): TOut\n\twith(bound: NormalizerOpts<TOut>): Normalizer<TOut>\n}\n\nexport function makeNormalizer<\n\tTAllowed extends readonly string[],\n\tTOut extends TAllowed[number]\n>(\n\tallowed: TAllowed,\n\tdefaults: {\n\t\tfallback: TOut\n\t\taliases?: Record<string, TOut>\n\t\ttransform?: (raw: string) => string\n\t}\n): Normalizer<TOut> {\n\tconst list = allowed as readonly string[]\n\n\tconst defaultAliases: Record<string, TOut> =\n\t\tdefaults.aliases ??\n\t\t(Object.fromEntries(list.map((v) => [v, v])) as Record<string, TOut>)\n\n\tconst defaultTransform =\n\t\tdefaults.transform ?? ((s: string) => s.trim().toLowerCase())\n\n\tconst core = ((input: unknown, opts?: NormalizerOpts<TOut>): TOut => {\n\t\tconst aliases = { ...defaultAliases, ...(opts?.aliases ?? {}) }\n\t\tconst fallback = opts?.fallback ?? defaults.fallback\n\t\tconst transform = opts?.transform ?? defaultTransform\n\n\t\tif (typeof input !== 'string') return fallback\n\n\t\tconst s = transform(input)\n\t\tconst candidate = (aliases[s] ?? s) as string\n\t\treturn list.includes(candidate) ? (candidate as TOut) : fallback\n\t}) as Normalizer<TOut>\n\n\tcore.with = (bound: NormalizerOpts<TOut>) =>\n\t\t((input: unknown, opts?: NormalizerOpts<TOut>) =>\n\t\t\tcore(input, { ...bound, ...(opts ?? {}) })) as Normalizer<TOut>\n\n\treturn core\n}\n\n/**\n * Group helper: normalize a whole props object in one call.\n * - `all.transform` applies to every normalizer in the set (safe cross-type).\n * - `each[key]` lets you override per-key opts (aliases/fallback/transform).\n */\nexport function makeNormalizerSet<TOuts extends Record<string, string>>(map: {\n\t[K in keyof TOuts]: Normalizer<TOuts[K]>\n}) {\n\ttype In = { [K in keyof TOuts]?: unknown | null }\n\ttype Out = { [K in keyof TOuts]: TOuts[K] }\n\ttype All = Pick<NormalizerOpts<string>, 'transform'> // safe cross-prop\n\ttype Each = { [K in keyof TOuts]?: NormalizerOpts<TOuts[K]> }\n\ttype Call = (input: In, opts?: { all?: All; each?: Each }) => Out\n\n\tconst call = ((input: In, opts?: { all?: All; each?: Each }) => {\n\t\tconst out = {} as Out\n\t\tfor (const k in map) {\n\t\t\tif (!Object.prototype.hasOwnProperty.call(map, k)) continue\n\t\t\tconst key = k as keyof TOuts\n\t\t\tconst n = map[key]\n\t\t\tconst base = opts?.all ? n.with(opts.all as any) : n\n\t\t\tout[key] = base(input?.[key], opts?.each?.[key]) as TOuts[typeof key]\n\t\t}\n\t\treturn out\n\t}) as Call & { with(all: All): Call }\n\n\tcall.with = (all: All) => {\n\t\tconst bound = {} as { [K in keyof TOuts]: Normalizer<TOuts[K]> }\n\t\tfor (const k in map) {\n\t\t\tif (!Object.prototype.hasOwnProperty.call(map, k)) continue\n\t\t\tconst key = k as keyof TOuts\n\t\t\tbound[key] = map[key].with(all as any)\n\t\t}\n\t\treturn makeNormalizerSet(bound)\n\t}\n\n\treturn call\n}\n","import type { PropsWithChildren } from 'react'\nimport { makeNormalizer, makeNormalizerSet } from '../../utils/make-normalizer'\nimport classNames from 'classnames'\nimport s from './layout.module.css'\n\nconst DEFAULT_APPEARANCE = 'light'\nconst DEFAULT_BACKGROUND = 'primary'\nconst DEFAULT_PADDING_TOP = 'medium'\nconst DEFAULT_PADDING_BOTTOM = 'medium'\n\nexport const LAYOUT_APPEARANCES = ['light', 'dark'] as const\nexport const LAYOUT_BACKGROUNDS = ['primary', 'faint', 'transparent'] as const\nexport const LAYOUT_PADDING = ['none', 'small', 'medium', 'large'] as const\n\nexport type LayoutAppearance = (typeof LAYOUT_APPEARANCES)[number]\nexport type LayoutBackground = (typeof LAYOUT_BACKGROUNDS)[number]\nexport type LayoutPadding = (typeof LAYOUT_PADDING)[number]\n\nexport const normalizeLayoutProps = makeNormalizerSet({\n\tappearance: makeNormalizer(LAYOUT_APPEARANCES, {\n\t\tfallback: DEFAULT_APPEARANCE,\n\t}),\n\tbackground: makeNormalizer(LAYOUT_BACKGROUNDS, {\n\t\tfallback: DEFAULT_BACKGROUND,\n\t}),\n\tpaddingTop: makeNormalizer(LAYOUT_PADDING, {\n\t\tfallback: DEFAULT_PADDING_TOP,\n\t}),\n\tpaddingBottom: makeNormalizer(LAYOUT_PADDING, {\n\t\tfallback: DEFAULT_PADDING_BOTTOM,\n\t}),\n})\n\nexport interface LayoutProps extends PropsWithChildren {\n\tclassName?: string\n\t/**\n\t * The appearance of the layout\n\t */\n\tappearance?: LayoutAppearance\n\t/**\n\t * The color token used for the background. The color value changes based on `appearance`\n\t */\n\tbackground?: LayoutBackground\n\t/**\n\t * The space between the layout component's content and its top border\n\t */\n\tpaddingTop?: LayoutPadding\n\t/**\n\t * The space between the layout component's content and its bottom border\n\t */\n\tpaddingBottom?: LayoutPadding\n}\n\nexport const Layout = ({\n\tclassName,\n\tchildren,\n\tappearance = DEFAULT_APPEARANCE,\n\tbackground = DEFAULT_BACKGROUND,\n\tpaddingBottom = DEFAULT_PADDING_TOP,\n\tpaddingTop = DEFAULT_PADDING_BOTTOM,\n}: LayoutProps) => {\n\treturn (\n\t\t<div\n\t\t\tclassName={classNames([\n\t\t\t\ts.layout,\n\t\t\t\t{ ['mds-dark-mode']: appearance === 'dark' },\n\t\t\t\ts[background],\n\t\t\t\ts[`padding-top-${paddingTop}`],\n\t\t\t\ts[`padding-bottom-${paddingBottom}`],\n\t\t\t\tclassName,\n\t\t\t])}\n\t\t>\n\t\t\t{children}\n\t\t</div>\n\t)\n}\n\nLayout.displayName = 'Layout'\n","import classNames from 'classnames'\nimport { makeNormalizer, makeNormalizerSet } from '../../utils/make-normalizer'\nimport { FlightIcon } from '../../components/flight-icon'\nimport { Text } from '../../components/text'\nimport s from './product-logo.module.css'\n\nfunction capitalize(value: string) {\n\treturn value.charAt(0).toUpperCase() + value.slice(1)\n}\n\nconst DEFAULT_SIZE = 'small'\nconst DEFAULT_COLOR = 'primary'\nconst DEFAULT_PRODUCT = 'hcp'\n\nconst HCP_PRODUCT_EXCEPTIONS = [\n\t'vault-radar',\n\t'vault-secrets',\n\t'vault-dedicated',\n]\n\nexport const PRODUCT_LOGO_SIZES = ['small', 'medium', 'large'] as const\nexport const PRODUCT_LOGO_COLORS = ['primary', 'strong'] as const\nexport const PRODUCT_LOGO_PRODUCTS = [\n\t'hcp',\n\t'hashicorp',\n\t'boundary',\n\t'consul',\n\t'nomad',\n\t'packer',\n\t'terraform',\n\t'vault',\n\t'vault-dedicated',\n\t'vault-enterprise',\n\t'vault-radar',\n\t'vault-secrets',\n\t'vagrant',\n\t'waypoint',\n] as const\n\nexport type ProductLogoSize = (typeof PRODUCT_LOGO_SIZES)[number]\nexport type ProductLogoColor = (typeof PRODUCT_LOGO_COLORS)[number]\nexport type ProductLogoProduct = (typeof PRODUCT_LOGO_PRODUCTS)[number]\n\nexport const normalizeProductLogoProps = makeNormalizerSet({\n\tsize: makeNormalizer(PRODUCT_LOGO_SIZES, {\n\t\tfallback: DEFAULT_SIZE,\n\t}),\n\tcolor: makeNormalizer(PRODUCT_LOGO_COLORS, {\n\t\tfallback: DEFAULT_COLOR,\n\t}),\n\tproduct: makeNormalizer(PRODUCT_LOGO_PRODUCTS, {\n\t\tfallback: DEFAULT_PRODUCT,\n\t}),\n})\n\nexport interface ProductLogoProps {\n\tsize?: ProductLogoSize\n\tcolor?: ProductLogoColor\n\tproduct: ProductLogoProduct\n}\n\nexport const ProductLogo = ({\n\tsize = DEFAULT_SIZE,\n\tcolor = DEFAULT_COLOR,\n\tproduct,\n}: ProductLogoProps) => {\n\tconst productName = PRODUCT_LOGO_MAP[product]?.name ?? capitalize(product)\n\n\treturn (\n\t\t<div className={classNames(s['product-logo'], s[size])}>\n\t\t\t<FlightIcon\n\t\t\t\tsize={size === 'small' ? 16 : 24}\n\t\t\t\tname={PRODUCT_LOGO_MAP[product]?.icon ?? `${product}-color`}\n\t\t\t\tcolor={PRODUCT_LOGO_MAP[product]?.color}\n\t\t\t/>\n\t\t\t{HCP_PRODUCT_EXCEPTIONS.includes(product) ? (\n\t\t\t\t<div>\n\t\t\t\t\t{/* Always bold \"HCP [Product]\"... */}\n\t\t\t\t\t<Text.DisplayExpressive\n\t\t\t\t\t\tclassName={s[size]}\n\t\t\t\t\t\tcolor={color}\n\t\t\t\t\t\tweight=\"semibold\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{productName.split(' ').slice(0, 2).join(' ')}{' '}\n\t\t\t\t\t</Text.DisplayExpressive>\n\t\t\t\t\t{/* ...But display the sub-product in regular weight */}\n\t\t\t\t\t<Text.DisplayExpressive\n\t\t\t\t\t\tclassName={s[size]}\n\t\t\t\t\t\tcolor={color}\n\t\t\t\t\t\tweight=\"regular\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{productName.split(' ').slice(2)[0]}\n\t\t\t\t\t</Text.DisplayExpressive>\n\t\t\t\t</div>\n\t\t\t) : (\n\t\t\t\t// Default to unmodified display of the product name\n\t\t\t\t<Text.DisplayExpressive\n\t\t\t\t\tclassName={s[size]}\n\t\t\t\t\tcolor={color}\n\t\t\t\t\tweight=\"semibold\"\n\t\t\t\t>\n\t\t\t\t\t{productName}\n\t\t\t\t</Text.DisplayExpressive>\n\t\t\t)}\n\t\t</div>\n\t)\n}\n\nProductLogo.displayName = 'ProductLogo'\n\nconst PRODUCT_LOGO_MAP: Record<\n\tstring,\n\t{ icon: string; name: string; color: string }\n> = {\n\thcp: {\n\t\ticon: 'hashicorp-square',\n\t\tcolor: 'var(--mds-color-hcp-brand)',\n\t\tname: 'HashiCorp Cloud Platform',\n\t},\n\thashicorp: {\n\t\ticon: 'hashicorp',\n\t\tcolor: 'var(--mds-color-hashicorp-brand)',\n\t\tname: 'HashiCorp',\n\t},\n\t'vault-radar': {\n\t\ticon: 'vault-square',\n\t\tcolor: 'var(--mds-color-vault-radar-brand)',\n\t\tname: 'HCP Vault Radar',\n\t},\n\t'vault-secrets': {\n\t\ticon: 'vault-square',\n\t\tcolor: 'var(--mds-color-vault-secrets-brand)',\n\t\tname: 'HCP Vault Secrets',\n\t},\n\t'vault-dedicated': {\n\t\ticon: 'vault-fill',\n\t\tcolor: 'var(--mds-color-vault-secrets-brand)',\n\t\tname: 'HCP Vault Dedicated',\n\t},\n\t'vault-enterprise': {\n\t\ticon: 'vault-fill',\n\t\tcolor: 'var(--mds-color-vault-secrets-brand)',\n\t\tname: 'Vault Enterprise',\n\t},\n}\n","'use client'\n\nimport { Card } from '../../components/card'\nimport classNames from 'classnames'\nimport type { RelatedContentProps } from './types'\nimport { useMDSLink } from '../../utils/mds-context'\nimport s from './style.module.css'\nimport { Text } from '../../components'\n\nconst RelatedContent = ({\n\tappearance = 'transparent',\n\theadline,\n\tdescription,\n\tcards,\n\tcta,\n}: RelatedContentProps) => {\n\tconst Link = useMDSLink()\n\n\treturn (\n\t\t<div\n\t\t\tclassName={classNames(s.root, s[appearance], {\n\t\t\t\t['mds-dark-mode']: appearance === 'dark',\n\t\t\t})}\n\t\t>\n\t\t\t<div className={s.wrapper}>\n\t\t\t\t<div className={s.textStack}>\n\t\t\t\t\t<Text.DisplayExpressive\n\t\t\t\t\t\ttag=\"h2\"\n\t\t\t\t\t\tcolor=\"primary\"\n\t\t\t\t\t\tclassName={s.headline}\n\t\t\t\t\t\tsize=\"400\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{headline}\n\t\t\t\t\t</Text.DisplayExpressive>\n\t\t\t\t\t{description ? (\n\t\t\t\t\t\t<Text.Body size=\"300\" color=\"faint\" tag=\"p\">\n\t\t\t\t\t\t\t{description}\n\t\t\t\t\t\t</Text.Body>\n\t\t\t\t\t) : null}\n\t\t\t\t</div>\n\t\t\t\t<div className={s.cards} data-testid=\"wpl-cards-container\">\n\t\t\t\t\t{cards.map((card, i) => (\n\t\t\t\t\t\t<Card\n\t\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\t\thref={card.link}\n\t\t\t\t\t\t\tcontent={{\n\t\t\t\t\t\t\t\t...(card.thumbnail && {\n\t\t\t\t\t\t\t\t\tthumbnail: {\n\t\t\t\t\t\t\t\t\t\talt: card.thumbnail.alt,\n\t\t\t\t\t\t\t\t\t\tsrc: card.thumbnail.src,\n\t\t\t\t\t\t\t\t\t\taspectRatio: '16/9',\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\teyebrow: card.meta,\n\t\t\t\t\t\t\t\theading: card.heading,\n\t\t\t\t\t\t\t\tdescription: card.description,\n\t\t\t\t\t\t\t\tshowArrow: true,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t))}\n\t\t\t\t</div>\n\n\t\t\t\t{cta ? (\n\t\t\t\t\t<div className={s.cta} data-testid=\"wpl-cta-container\">\n\t\t\t\t\t\t<Link href={cta.href}>{cta.text}</Link>\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\nRelatedContent.displayName = 'RelatedContent'\n\nexport { RelatedContent }\n"],"names":["ProductBadge","productName","hasDot","finalProductName","productBrand","jsx","Badge","s","Thumbnail","src","alt","Image","useMDSImage","PersonThumbnail","LogoThumbnail","Root","forwardRef","props","ref","withArrow","link","clickHandler","isExternal","children","className","ariaLabel","jsxs","MDSCard","classNames","IconArrowRight24","Meta","items","Text","item","stableIdx","isLastItem","Fragment","Content","Heading","as","ProductBadges","badges","badge","Description","CardPrimitives","UnifiedCard","heading","meta","productBadges","thumbnail","NewsroomCard","date","category","iconMap","IconTwitter16","IconGithub16","IconLinkedin16","IconMail16","Icon","memo","url","protocol","host","icon","IconLink16","PersonCard","name","location","bio","ResourceCard","PromoCard","description","eyebrow","PartnerCard","competencyBadges","logo","hasProductBadges","hasCompetencyBadges","competencyBadge","makeNormalizer","allowed","defaults","list","defaultAliases","v","defaultTransform","core","input","opts","aliases","fallback","transform","candidate","bound","makeNormalizerSet","map","call","out","k","key","n","base","all","DEFAULT_APPEARANCE","DEFAULT_BACKGROUND","DEFAULT_PADDING_TOP","DEFAULT_PADDING_BOTTOM","LAYOUT_APPEARANCES","LAYOUT_BACKGROUNDS","LAYOUT_PADDING","normalizeLayoutProps","Layout","appearance","background","paddingBottom","paddingTop","capitalize","value","DEFAULT_SIZE","DEFAULT_COLOR","DEFAULT_PRODUCT","HCP_PRODUCT_EXCEPTIONS","PRODUCT_LOGO_SIZES","PRODUCT_LOGO_COLORS","PRODUCT_LOGO_PRODUCTS","normalizeProductLogoProps","ProductLogo","size","color","product","PRODUCT_LOGO_MAP","FlightIcon","RelatedContent","headline","cards","cta","Link","useMDSLink","card","i","Card"],"mappings":"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"}
|