@cloudscape-design/components-themeable 3.0.344 → 3.0.346
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/lib/internal/manifest.json +1 -1
- package/lib/internal/scss/button-dropdown/styles.scss +42 -0
- package/lib/internal/scss/help-panel/styles.scss +6 -5
- package/lib/internal/scss/internal/components/option/styles.scss +1 -1
- package/lib/internal/scss/status-indicator/styles.scss +8 -1
- package/lib/internal/scss/table/sticky-scrollbar/styles.scss +0 -1
- package/lib/internal/scss/text-content/styles.scss +2 -2
- package/lib/internal/template/alert/styles.css.js +19 -19
- package/lib/internal/template/alert/styles.scoped.css +33 -33
- package/lib/internal/template/alert/styles.selectors.js +19 -19
- package/lib/internal/template/annotation-context/annotation/styles.css.js +24 -24
- package/lib/internal/template/annotation-context/annotation/styles.scoped.css +30 -30
- package/lib/internal/template/annotation-context/annotation/styles.selectors.js +24 -24
- package/lib/internal/template/app-layout/index.js +3 -3
- package/lib/internal/template/app-layout/index.js.map +1 -1
- package/lib/internal/template/app-layout/visual-refresh/context.d.ts.map +1 -1
- package/lib/internal/template/app-layout/visual-refresh/context.js +3 -3
- package/lib/internal/template/app-layout/visual-refresh/context.js.map +1 -1
- package/lib/internal/template/app-layout/visual-refresh/styles.css.js +69 -69
- package/lib/internal/template/app-layout/visual-refresh/styles.scoped.css +168 -168
- package/lib/internal/template/app-layout/visual-refresh/styles.selectors.js +69 -69
- package/lib/internal/template/attribute-editor/styles.css.js +14 -14
- package/lib/internal/template/attribute-editor/styles.scoped.css +27 -27
- package/lib/internal/template/attribute-editor/styles.selectors.js +14 -14
- package/lib/internal/template/autosuggest/virtual-list.d.ts.map +1 -1
- package/lib/internal/template/autosuggest/virtual-list.js +2 -2
- package/lib/internal/template/autosuggest/virtual-list.js.map +1 -1
- package/lib/internal/template/badge/styles.css.js +5 -5
- package/lib/internal/template/badge/styles.scoped.css +7 -7
- package/lib/internal/template/badge/styles.selectors.js +5 -5
- package/lib/internal/template/box/styles.css.js +189 -189
- package/lib/internal/template/box/styles.scoped.css +238 -238
- package/lib/internal/template/box/styles.selectors.js +189 -189
- package/lib/internal/template/breadcrumb-group/styles.css.js +7 -7
- package/lib/internal/template/breadcrumb-group/styles.scoped.css +14 -14
- package/lib/internal/template/breadcrumb-group/styles.selectors.js +7 -7
- package/lib/internal/template/button/internal.d.ts.map +1 -1
- package/lib/internal/template/button/internal.js +12 -1
- package/lib/internal/template/button/internal.js.map +1 -1
- package/lib/internal/template/button/styles.css.js +20 -20
- package/lib/internal/template/button/styles.scoped.css +154 -154
- package/lib/internal/template/button/styles.selectors.js +20 -20
- package/lib/internal/template/button-dropdown/index.d.ts.map +1 -1
- package/lib/internal/template/button-dropdown/index.js +2 -2
- package/lib/internal/template/button-dropdown/index.js.map +1 -1
- package/lib/internal/template/button-dropdown/interfaces.d.ts +31 -0
- package/lib/internal/template/button-dropdown/interfaces.d.ts.map +1 -1
- package/lib/internal/template/button-dropdown/interfaces.js.map +1 -1
- package/lib/internal/template/button-dropdown/internal.d.ts.map +1 -1
- package/lib/internal/template/button-dropdown/internal.js +64 -8
- package/lib/internal/template/button-dropdown/internal.js.map +1 -1
- package/lib/internal/template/button-dropdown/mobile-expandable-group/styles.css.js +5 -5
- package/lib/internal/template/button-dropdown/mobile-expandable-group/styles.scoped.css +6 -6
- package/lib/internal/template/button-dropdown/mobile-expandable-group/styles.selectors.js +5 -5
- package/lib/internal/template/button-dropdown/styles.css.js +14 -8
- package/lib/internal/template/button-dropdown/styles.scoped.css +44 -14
- package/lib/internal/template/button-dropdown/styles.selectors.js +14 -8
- package/lib/internal/template/button-dropdown/utils/use-button-dropdown.d.ts +1 -0
- package/lib/internal/template/button-dropdown/utils/use-button-dropdown.d.ts.map +1 -1
- package/lib/internal/template/button-dropdown/utils/use-button-dropdown.js +1 -0
- package/lib/internal/template/button-dropdown/utils/use-button-dropdown.js.map +1 -1
- package/lib/internal/template/calendar/styles.css.js +18 -18
- package/lib/internal/template/calendar/styles.scoped.css +40 -40
- package/lib/internal/template/calendar/styles.selectors.js +18 -18
- package/lib/internal/template/cards/index.js +5 -4
- package/lib/internal/template/cards/index.js.map +1 -1
- package/lib/internal/template/cards/styles.css.js +38 -38
- package/lib/internal/template/cards/styles.scoped.css +55 -55
- package/lib/internal/template/cards/styles.selectors.js +38 -38
- package/lib/internal/template/checkbox/styles.css.js +3 -3
- package/lib/internal/template/checkbox/styles.scoped.css +7 -7
- package/lib/internal/template/checkbox/styles.selectors.js +3 -3
- package/lib/internal/template/code-editor/index.js +2 -2
- package/lib/internal/template/code-editor/index.js.map +1 -1
- package/lib/internal/template/code-editor/status-bar.d.ts.map +1 -1
- package/lib/internal/template/code-editor/status-bar.js +3 -3
- package/lib/internal/template/code-editor/status-bar.js.map +1 -1
- package/lib/internal/template/code-editor/styles.css.js +32 -32
- package/lib/internal/template/code-editor/styles.scoped.css +177 -177
- package/lib/internal/template/code-editor/styles.selectors.js +32 -32
- package/lib/internal/template/collection-preferences/content-display/styles.css.js +11 -11
- package/lib/internal/template/collection-preferences/content-display/styles.scoped.css +19 -19
- package/lib/internal/template/collection-preferences/content-display/styles.selectors.js +11 -11
- package/lib/internal/template/collection-preferences/styles.css.js +37 -37
- package/lib/internal/template/collection-preferences/styles.scoped.css +47 -47
- package/lib/internal/template/collection-preferences/styles.selectors.js +37 -37
- package/lib/internal/template/column-layout/flexible-column-layout/index.d.ts.map +1 -1
- package/lib/internal/template/column-layout/flexible-column-layout/index.js +2 -2
- package/lib/internal/template/column-layout/flexible-column-layout/index.js.map +1 -1
- package/lib/internal/template/column-layout/styles.css.js +13 -13
- package/lib/internal/template/column-layout/styles.scoped.css +44 -44
- package/lib/internal/template/column-layout/styles.selectors.js +13 -13
- package/lib/internal/template/container/styles.css.js +28 -28
- package/lib/internal/template/container/styles.scoped.css +52 -52
- package/lib/internal/template/container/styles.selectors.js +28 -28
- package/lib/internal/template/date-picker/styles.css.js +7 -7
- package/lib/internal/template/date-picker/styles.scoped.css +10 -10
- package/lib/internal/template/date-picker/styles.selectors.js +7 -7
- package/lib/internal/template/date-range-picker/styles.css.js +38 -38
- package/lib/internal/template/date-range-picker/styles.scoped.css +48 -48
- package/lib/internal/template/date-range-picker/styles.selectors.js +38 -38
- package/lib/internal/template/expandable-section/styles.css.js +29 -29
- package/lib/internal/template/expandable-section/styles.scoped.css +65 -65
- package/lib/internal/template/expandable-section/styles.selectors.js +29 -29
- package/lib/internal/template/flashbar/styles.css.js +46 -46
- package/lib/internal/template/flashbar/styles.scoped.css +160 -160
- package/lib/internal/template/flashbar/styles.selectors.js +46 -46
- package/lib/internal/template/form/internal.d.ts.map +1 -1
- package/lib/internal/template/form/internal.js +7 -2
- package/lib/internal/template/form/internal.js.map +1 -1
- package/lib/internal/template/form/styles.css.js +9 -9
- package/lib/internal/template/form/styles.scoped.css +9 -9
- package/lib/internal/template/form/styles.selectors.js +9 -9
- package/lib/internal/template/form-field/internal.d.ts.map +1 -1
- package/lib/internal/template/form-field/internal.js +8 -3
- package/lib/internal/template/form-field/internal.js.map +1 -1
- package/lib/internal/template/form-field/styles.css.js +19 -19
- package/lib/internal/template/form-field/styles.scoped.css +31 -31
- package/lib/internal/template/form-field/styles.selectors.js +19 -19
- package/lib/internal/template/grid/styles.css.js +53 -53
- package/lib/internal/template/grid/styles.scoped.css +55 -55
- package/lib/internal/template/grid/styles.selectors.js +53 -53
- package/lib/internal/template/header/styles.css.js +44 -44
- package/lib/internal/template/header/styles.scoped.css +50 -50
- package/lib/internal/template/header/styles.selectors.js +44 -44
- package/lib/internal/template/help-panel/styles.css.js +4 -4
- package/lib/internal/template/help-panel/styles.scoped.css +70 -69
- package/lib/internal/template/help-panel/styles.selectors.js +4 -4
- package/lib/internal/template/icon/styles.css.js +21 -21
- package/lib/internal/template/icon/styles.scoped.css +50 -50
- package/lib/internal/template/icon/styles.selectors.js +21 -21
- package/lib/internal/template/input/styles.css.js +12 -12
- package/lib/internal/template/input/styles.scoped.css +35 -35
- package/lib/internal/template/input/styles.selectors.js +12 -12
- package/lib/internal/template/internal/analytics/components/analytics-funnel.d.ts.map +1 -1
- package/lib/internal/template/internal/analytics/components/analytics-funnel.js +58 -11
- package/lib/internal/template/internal/analytics/components/analytics-funnel.js.map +1 -1
- package/lib/internal/template/internal/analytics/context/analytics-context.d.ts +5 -1
- package/lib/internal/template/internal/analytics/context/analytics-context.d.ts.map +1 -1
- package/lib/internal/template/internal/analytics/context/analytics-context.js +3 -0
- package/lib/internal/template/internal/analytics/context/analytics-context.js.map +1 -1
- package/lib/internal/template/internal/analytics/hooks/use-funnel.d.ts +3 -0
- package/lib/internal/template/internal/analytics/hooks/use-funnel.d.ts.map +1 -1
- package/lib/internal/template/internal/analytics/hooks/use-funnel.js +7 -2
- package/lib/internal/template/internal/analytics/hooks/use-funnel.js.map +1 -1
- package/lib/internal/template/internal/base-component/styles.scoped.css +12 -13
- package/lib/internal/template/internal/components/button-trigger/styles.css.js +9 -9
- package/lib/internal/template/internal/components/button-trigger/styles.scoped.css +26 -26
- package/lib/internal/template/internal/components/button-trigger/styles.selectors.js +9 -9
- package/lib/internal/template/internal/components/cartesian-chart/labels-measure.d.ts.map +1 -1
- package/lib/internal/template/internal/components/cartesian-chart/labels-measure.js +2 -2
- package/lib/internal/template/internal/components/cartesian-chart/labels-measure.js.map +1 -1
- package/lib/internal/template/internal/components/chart-filter/styles.css.js +3 -3
- package/lib/internal/template/internal/components/chart-filter/styles.scoped.css +4 -4
- package/lib/internal/template/internal/components/chart-filter/styles.selectors.js +3 -3
- package/lib/internal/template/internal/components/chart-legend/styles.css.js +6 -6
- package/lib/internal/template/internal/components/chart-legend/styles.scoped.css +16 -16
- package/lib/internal/template/internal/components/chart-legend/styles.selectors.js +6 -6
- package/lib/internal/template/internal/components/chart-popover/styles.css.js +3 -3
- package/lib/internal/template/internal/components/chart-popover/styles.scoped.css +4 -4
- package/lib/internal/template/internal/components/chart-popover/styles.selectors.js +3 -3
- package/lib/internal/template/internal/components/chart-series-details/styles.css.js +5 -5
- package/lib/internal/template/internal/components/chart-series-details/styles.scoped.css +10 -10
- package/lib/internal/template/internal/components/chart-series-details/styles.selectors.js +5 -5
- package/lib/internal/template/internal/components/chart-series-marker/styles.css.js +5 -5
- package/lib/internal/template/internal/components/chart-series-marker/styles.scoped.css +8 -8
- package/lib/internal/template/internal/components/chart-series-marker/styles.selectors.js +5 -5
- package/lib/internal/template/internal/components/chart-wrapper/styles.css.js +6 -6
- package/lib/internal/template/internal/components/chart-wrapper/styles.scoped.css +9 -9
- package/lib/internal/template/internal/components/chart-wrapper/styles.selectors.js +6 -6
- package/lib/internal/template/internal/components/dropdown/styles.css.js +20 -20
- package/lib/internal/template/internal/components/dropdown/styles.scoped.css +36 -36
- package/lib/internal/template/internal/components/dropdown/styles.selectors.js +20 -20
- package/lib/internal/template/internal/components/dropdown-footer/styles.css.js +3 -3
- package/lib/internal/template/internal/components/dropdown-footer/styles.scoped.css +4 -4
- package/lib/internal/template/internal/components/dropdown-footer/styles.selectors.js +3 -3
- package/lib/internal/template/internal/components/dropdown-status/index.d.ts.map +1 -1
- package/lib/internal/template/internal/components/dropdown-status/index.js +1 -1
- package/lib/internal/template/internal/components/dropdown-status/index.js.map +1 -1
- package/lib/internal/template/internal/components/dropdown-status/styles.css.js +2 -2
- package/lib/internal/template/internal/components/dropdown-status/styles.scoped.css +3 -3
- package/lib/internal/template/internal/components/dropdown-status/styles.selectors.js +2 -2
- package/lib/internal/template/internal/components/menu-dropdown/styles.css.js +7 -7
- package/lib/internal/template/internal/components/menu-dropdown/styles.scoped.css +14 -14
- package/lib/internal/template/internal/components/menu-dropdown/styles.selectors.js +7 -7
- package/lib/internal/template/internal/components/option/styles.css.js +17 -17
- package/lib/internal/template/internal/components/option/styles.scoped.css +31 -31
- package/lib/internal/template/internal/components/option/styles.selectors.js +17 -17
- package/lib/internal/template/internal/components/options-list/styles.css.js +2 -2
- package/lib/internal/template/internal/components/options-list/styles.scoped.css +3 -3
- package/lib/internal/template/internal/components/options-list/styles.selectors.js +2 -2
- package/lib/internal/template/internal/components/selectable-item/styles.css.js +16 -16
- package/lib/internal/template/internal/components/selectable-item/styles.scoped.css +29 -29
- package/lib/internal/template/internal/components/selectable-item/styles.selectors.js +16 -16
- package/lib/internal/template/internal/components/token-list/styles.css.js +9 -9
- package/lib/internal/template/internal/components/token-list/styles.scoped.css +21 -21
- package/lib/internal/template/internal/components/token-list/styles.selectors.js +9 -9
- package/lib/internal/template/internal/environment.js +1 -1
- package/lib/internal/template/internal/generated/theming/index.cjs +24 -13
- package/lib/internal/template/internal/generated/theming/index.js +24 -13
- package/lib/internal/template/internal/hooks/container-queries/index.d.ts +0 -2
- package/lib/internal/template/internal/hooks/container-queries/index.d.ts.map +1 -1
- package/lib/internal/template/internal/hooks/container-queries/index.js +2 -1
- package/lib/internal/template/internal/hooks/container-queries/index.js.map +1 -1
- package/lib/internal/template/internal/hooks/container-queries/use-container-breakpoints.d.ts.map +1 -1
- package/lib/internal/template/internal/hooks/container-queries/use-container-breakpoints.js +2 -2
- package/lib/internal/template/internal/hooks/container-queries/use-container-breakpoints.js.map +1 -1
- package/lib/internal/template/internal/hooks/container-queries/use-resize-observer.d.ts +1 -1
- package/lib/internal/template/internal/hooks/container-queries/use-resize-observer.d.ts.map +1 -1
- package/lib/internal/template/internal/hooks/container-queries/use-resize-observer.js +0 -2
- package/lib/internal/template/internal/hooks/container-queries/use-resize-observer.js.map +1 -1
- package/lib/internal/template/internal/hooks/use-dynamic-overlap/index.js +2 -2
- package/lib/internal/template/internal/hooks/use-dynamic-overlap/index.js.map +1 -1
- package/lib/internal/template/internal/utils/use-container-width.d.ts.map +1 -1
- package/lib/internal/template/internal/utils/use-container-width.js +5 -3
- package/lib/internal/template/internal/utils/use-container-width.js.map +1 -1
- package/lib/internal/template/link/styles.css.js +20 -20
- package/lib/internal/template/link/styles.scoped.css +73 -73
- package/lib/internal/template/link/styles.selectors.js +20 -20
- package/lib/internal/template/modal/internal.d.ts.map +1 -1
- package/lib/internal/template/modal/internal.js +2 -1
- package/lib/internal/template/modal/internal.js.map +1 -1
- package/lib/internal/template/modal/styles.css.js +23 -23
- package/lib/internal/template/modal/styles.scoped.css +40 -40
- package/lib/internal/template/modal/styles.selectors.js +23 -23
- package/lib/internal/template/multiselect/styles.css.js +1 -1
- package/lib/internal/template/multiselect/styles.scoped.css +2 -2
- package/lib/internal/template/multiselect/styles.selectors.js +1 -1
- package/lib/internal/template/pagination/styles.css.js +9 -9
- package/lib/internal/template/pagination/styles.scoped.css +24 -24
- package/lib/internal/template/pagination/styles.selectors.js +9 -9
- package/lib/internal/template/pie-chart/styles.css.js +23 -23
- package/lib/internal/template/pie-chart/styles.scoped.css +42 -42
- package/lib/internal/template/pie-chart/styles.selectors.js +23 -23
- package/lib/internal/template/popover/styles.css.js +50 -50
- package/lib/internal/template/popover/styles.scoped.css +66 -66
- package/lib/internal/template/popover/styles.selectors.js +50 -50
- package/lib/internal/template/progress-bar/styles.css.js +18 -18
- package/lib/internal/template/progress-bar/styles.scoped.css +35 -35
- package/lib/internal/template/progress-bar/styles.selectors.js +18 -18
- package/lib/internal/template/property-filter/index.d.ts.map +1 -1
- package/lib/internal/template/property-filter/index.js +2 -3
- package/lib/internal/template/property-filter/index.js.map +1 -1
- package/lib/internal/template/property-filter/styles.css.js +29 -29
- package/lib/internal/template/property-filter/styles.scoped.css +32 -32
- package/lib/internal/template/property-filter/styles.selectors.js +29 -29
- package/lib/internal/template/property-filter/token-editor.d.ts.map +1 -1
- package/lib/internal/template/property-filter/token-editor.js +2 -2
- package/lib/internal/template/property-filter/token-editor.js.map +1 -1
- package/lib/internal/template/radio-group/styles.css.js +9 -9
- package/lib/internal/template/radio-group/styles.scoped.css +17 -17
- package/lib/internal/template/radio-group/styles.selectors.js +9 -9
- package/lib/internal/template/s3-resource-selector/s3-in-context/styles.css.js +7 -7
- package/lib/internal/template/s3-resource-selector/s3-in-context/styles.scoped.css +9 -9
- package/lib/internal/template/s3-resource-selector/s3-in-context/styles.selectors.js +7 -7
- package/lib/internal/template/segmented-control/styles.css.js +14 -14
- package/lib/internal/template/segmented-control/styles.scoped.css +35 -35
- package/lib/internal/template/segmented-control/styles.selectors.js +14 -14
- package/lib/internal/template/select/parts/virtual-list.js +2 -2
- package/lib/internal/template/select/parts/virtual-list.js.map +1 -1
- package/lib/internal/template/select/styles.css.js +1 -1
- package/lib/internal/template/select/styles.scoped.css +2 -2
- package/lib/internal/template/select/styles.selectors.js +1 -1
- package/lib/internal/template/side-navigation/styles.css.js +27 -27
- package/lib/internal/template/side-navigation/styles.scoped.css +39 -39
- package/lib/internal/template/side-navigation/styles.selectors.js +27 -27
- package/lib/internal/template/spinner/styles.css.js +13 -13
- package/lib/internal/template/spinner/styles.scoped.css +20 -20
- package/lib/internal/template/spinner/styles.selectors.js +13 -13
- package/lib/internal/template/split-panel/styles.css.js +56 -56
- package/lib/internal/template/split-panel/styles.scoped.css +78 -78
- package/lib/internal/template/split-panel/styles.selectors.js +56 -56
- package/lib/internal/template/status-indicator/internal.d.ts +6 -3
- package/lib/internal/template/status-indicator/internal.d.ts.map +1 -1
- package/lib/internal/template/status-indicator/internal.js +2 -2
- package/lib/internal/template/status-indicator/internal.js.map +1 -1
- package/lib/internal/template/status-indicator/styles.css.js +22 -20
- package/lib/internal/template/status-indicator/styles.scoped.css +33 -28
- package/lib/internal/template/status-indicator/styles.selectors.js +22 -20
- package/lib/internal/template/table/internal.d.ts.map +1 -1
- package/lib/internal/template/table/internal.js +6 -4
- package/lib/internal/template/table/internal.js.map +1 -1
- package/lib/internal/template/table/sticky-scrollbar/styles.css.js +4 -4
- package/lib/internal/template/table/sticky-scrollbar/styles.scoped.css +4 -5
- package/lib/internal/template/table/sticky-scrollbar/styles.selectors.js +4 -4
- package/lib/internal/template/table/styles.css.js +34 -34
- package/lib/internal/template/table/styles.scoped.css +43 -43
- package/lib/internal/template/table/styles.selectors.js +34 -34
- package/lib/internal/template/tabs/styles.css.js +21 -21
- package/lib/internal/template/tabs/styles.scoped.css +39 -39
- package/lib/internal/template/tabs/styles.selectors.js +21 -21
- package/lib/internal/template/tabs/tab-header-bar.js +2 -2
- package/lib/internal/template/tabs/tab-header-bar.js.map +1 -1
- package/lib/internal/template/test-utils/dom/button-dropdown/index.d.ts +2 -0
- package/lib/internal/template/test-utils/dom/button-dropdown/index.js +6 -1
- package/lib/internal/template/test-utils/dom/button-dropdown/index.js.map +1 -1
- package/lib/internal/template/test-utils/selectors/button-dropdown/index.d.ts +2 -0
- package/lib/internal/template/test-utils/selectors/button-dropdown/index.js +6 -1
- package/lib/internal/template/test-utils/selectors/button-dropdown/index.js.map +1 -1
- package/lib/internal/template/test-utils/tsconfig.tsbuildinfo +1 -1
- package/lib/internal/template/text-content/styles.css.js +1 -1
- package/lib/internal/template/text-content/styles.scoped.css +64 -64
- package/lib/internal/template/text-content/styles.selectors.js +1 -1
- package/lib/internal/template/text-filter/styles.css.js +3 -3
- package/lib/internal/template/text-filter/styles.scoped.css +4 -4
- package/lib/internal/template/text-filter/styles.selectors.js +3 -3
- package/lib/internal/template/textarea/styles.css.js +4 -4
- package/lib/internal/template/textarea/styles.scoped.css +14 -14
- package/lib/internal/template/textarea/styles.selectors.js +4 -4
- package/lib/internal/template/tiles/styles.css.js +28 -28
- package/lib/internal/template/tiles/styles.scoped.css +70 -70
- package/lib/internal/template/tiles/styles.selectors.js +28 -28
- package/lib/internal/template/toggle/styles.css.js +8 -8
- package/lib/internal/template/toggle/styles.scoped.css +15 -15
- package/lib/internal/template/toggle/styles.selectors.js +8 -8
- package/lib/internal/template/token-group/styles.css.js +7 -7
- package/lib/internal/template/token-group/styles.scoped.css +17 -17
- package/lib/internal/template/token-group/styles.selectors.js +7 -7
- package/lib/internal/template/top-navigation/1.0-beta/styles.css.js +25 -25
- package/lib/internal/template/top-navigation/1.0-beta/styles.scoped.css +43 -43
- package/lib/internal/template/top-navigation/1.0-beta/styles.selectors.js +25 -25
- package/lib/internal/template/top-navigation/1.0-beta/use-top-navigation.d.ts.map +1 -1
- package/lib/internal/template/top-navigation/1.0-beta/use-top-navigation.js +2 -1
- package/lib/internal/template/top-navigation/1.0-beta/use-top-navigation.js.map +1 -1
- package/lib/internal/template/top-navigation/styles.css.js +47 -47
- package/lib/internal/template/top-navigation/styles.scoped.css +70 -70
- package/lib/internal/template/top-navigation/styles.selectors.js +47 -47
- package/lib/internal/template/top-navigation/use-top-navigation.d.ts.map +1 -1
- package/lib/internal/template/top-navigation/use-top-navigation.js +2 -1
- package/lib/internal/template/top-navigation/use-top-navigation.js.map +1 -1
- package/lib/internal/template/tutorial-panel/components/tutorial-detail-view/styles.css.js +20 -20
- package/lib/internal/template/tutorial-panel/components/tutorial-detail-view/styles.scoped.css +23 -23
- package/lib/internal/template/tutorial-panel/components/tutorial-detail-view/styles.selectors.js +20 -20
- package/lib/internal/template/tutorial-panel/components/tutorial-list/styles.css.js +18 -18
- package/lib/internal/template/tutorial-panel/components/tutorial-list/styles.scoped.css +30 -30
- package/lib/internal/template/tutorial-panel/components/tutorial-list/styles.selectors.js +18 -18
- package/lib/internal/template/tutorial-panel/styles.css.js +1 -1
- package/lib/internal/template/tutorial-panel/styles.scoped.css +2 -2
- package/lib/internal/template/tutorial-panel/styles.selectors.js +1 -1
- package/lib/internal/template/wizard/styles.css.js +31 -31
- package/lib/internal/template/wizard/styles.scoped.css +63 -63
- package/lib/internal/template/wizard/styles.selectors.js +31 -31
- package/package.json +1 -1
- package/lib/internal/template/internal/hooks/container-queries/interfaces.d.ts +0 -10
- package/lib/internal/template/internal/hooks/container-queries/interfaces.d.ts.map +0 -1
- package/lib/internal/template/internal/hooks/container-queries/interfaces.js +0 -4
- package/lib/internal/template/internal/hooks/container-queries/interfaces.js.map +0 -1
- package/lib/internal/template/internal/hooks/container-queries/use-container-query.d.ts +0 -22
- package/lib/internal/template/internal/hooks/container-queries/use-container-query.d.ts.map +0 -1
- package/lib/internal/template/internal/hooks/container-queries/use-container-query.js +0 -32
- package/lib/internal/template/internal/hooks/container-queries/use-container-query.js.map +0 -1
|
@@ -94,7 +94,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
94
94
|
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
95
95
|
SPDX-License-Identifier: Apache-2.0
|
|
96
96
|
*/
|
|
97
|
-
.
|
|
97
|
+
.awsui_root_dm8gx_14yza_97:not(#\9) {
|
|
98
98
|
/* stylelint-disable-next-line plugin/no-unsupported-browser-features */
|
|
99
99
|
border-collapse: separate;
|
|
100
100
|
border-spacing: 0;
|
|
@@ -125,32 +125,32 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
125
125
|
word-spacing: normal;
|
|
126
126
|
box-sizing: border-box;
|
|
127
127
|
font-size: var(--font-body-m-size-0qqejn, 14px);
|
|
128
|
-
line-height: var(--font-body-m-line-height-
|
|
128
|
+
line-height: var(--font-body-m-line-height-43ichb, 22px);
|
|
129
129
|
color: var(--color-text-body-default-4colr5, #16191f);
|
|
130
130
|
font-weight: 400;
|
|
131
131
|
font-family: var(--font-family-base-nzcxu9, "Noto Sans", "Helvetica Neue", Roboto, Arial, sans-serif);
|
|
132
132
|
-webkit-font-smoothing: auto;
|
|
133
133
|
-moz-osx-font-smoothing: auto;
|
|
134
134
|
}
|
|
135
|
-
.
|
|
135
|
+
.awsui_root_dm8gx_14yza_97.awsui_has-items_dm8gx_14yza_109:not(#\9) {
|
|
136
136
|
padding-top: var(--space-xs-7veqkr, 8px);
|
|
137
137
|
}
|
|
138
138
|
|
|
139
|
-
.awsui_dismiss-
|
|
139
|
+
.awsui_dismiss-button_dm8gx_14yza_113:not(#\9) {
|
|
140
140
|
margin: -1px -1px 0 var(--space-xxs-xx079q, 4px);
|
|
141
141
|
border: 1px solid transparent;
|
|
142
142
|
padding: 0 var(--space-xxs-xx079q, 4px);
|
|
143
143
|
color: var(--color-text-button-inline-icon-default-au9sza, #545b64);
|
|
144
144
|
background-color: transparent;
|
|
145
145
|
}
|
|
146
|
-
body[data-awsui-focus-visible=true] .awsui_dismiss-
|
|
146
|
+
body[data-awsui-focus-visible=true] .awsui_dismiss-button_dm8gx_14yza_113:not(#\9):focus {
|
|
147
147
|
position: relative;
|
|
148
148
|
}
|
|
149
|
-
body[data-awsui-focus-visible=true] .awsui_dismiss-
|
|
149
|
+
body[data-awsui-focus-visible=true] .awsui_dismiss-button_dm8gx_14yza_113:not(#\9):focus {
|
|
150
150
|
outline: 2px dotted transparent;
|
|
151
151
|
outline-offset: calc(0px - 1px);
|
|
152
152
|
}
|
|
153
|
-
body[data-awsui-focus-visible=true] .awsui_dismiss-
|
|
153
|
+
body[data-awsui-focus-visible=true] .awsui_dismiss-button_dm8gx_14yza_113:not(#\9):focus::before {
|
|
154
154
|
content: " ";
|
|
155
155
|
display: block;
|
|
156
156
|
position: absolute;
|
|
@@ -161,23 +161,23 @@ body[data-awsui-focus-visible=true] .awsui_dismiss-button_dm8gx_177wh_113:not(#\
|
|
|
161
161
|
border-radius: var(--border-radius-control-default-focus-ring-uu8qi4, 2px);
|
|
162
162
|
box-shadow: 0 0 0 2px var(--color-border-item-focused-4clyb1, #0073bb);
|
|
163
163
|
}
|
|
164
|
-
.awsui_dismiss-
|
|
164
|
+
.awsui_dismiss-button_dm8gx_14yza_113:not(#\9):focus {
|
|
165
165
|
outline: none;
|
|
166
166
|
text-decoration: none;
|
|
167
167
|
}
|
|
168
|
-
.awsui_dismiss-
|
|
168
|
+
.awsui_dismiss-button_dm8gx_14yza_113:not(#\9):hover {
|
|
169
169
|
cursor: pointer;
|
|
170
170
|
color: var(--color-text-button-inline-icon-hover-3vml1m, #16191f);
|
|
171
171
|
}
|
|
172
172
|
|
|
173
|
-
.
|
|
173
|
+
.awsui_token_dm8gx_14yza_147:not(#\9) {
|
|
174
174
|
height: 100%;
|
|
175
175
|
display: flex;
|
|
176
176
|
flex-direction: column;
|
|
177
177
|
gap: var(--space-xxs-xx079q, 4px);
|
|
178
178
|
}
|
|
179
179
|
|
|
180
|
-
.awsui_token-
|
|
180
|
+
.awsui_token-box_dm8gx_14yza_154:not(#\9) {
|
|
181
181
|
height: 100%;
|
|
182
182
|
border: var(--border-field-width-gmdyxy, 1px) solid var(--color-border-item-selected-044zoh, #0073bb);
|
|
183
183
|
padding: var(--space-scaled-xxs-gmgwxk, 4px) var(--space-xxs-xx079q, 4px) var(--space-scaled-xxs-gmgwxk, 4px) var(--space-field-horizontal-xg7uom, 8px);
|
|
@@ -189,27 +189,27 @@ body[data-awsui-focus-visible=true] .awsui_dismiss-button_dm8gx_177wh_113:not(#\
|
|
|
189
189
|
box-sizing: border-box;
|
|
190
190
|
}
|
|
191
191
|
|
|
192
|
-
.awsui_token-box-
|
|
192
|
+
.awsui_token-box-error_dm8gx_14yza_166:not(#\9) {
|
|
193
193
|
border-color: var(--color-border-status-error-jb9vli, #d13212);
|
|
194
194
|
border-left-width: var(--border-invalid-width-6tnuc9, 4px);
|
|
195
195
|
}
|
|
196
|
-
.awsui_token-box-
|
|
196
|
+
.awsui_token-box-error_dm8gx_14yza_166 > .awsui_dismiss-button_dm8gx_14yza_113:not(#\9) {
|
|
197
197
|
color: var(--color-text-interactive-default-9x433a, #545b64);
|
|
198
198
|
}
|
|
199
|
-
.awsui_token-box-
|
|
199
|
+
.awsui_token-box-error_dm8gx_14yza_166 > .awsui_dismiss-button_dm8gx_14yza_113:not(#\9):hover {
|
|
200
200
|
color: var(--color-text-interactive-hover-6fw5y8, #16191f);
|
|
201
201
|
}
|
|
202
202
|
|
|
203
|
-
.awsui_token-box-
|
|
203
|
+
.awsui_token-box-disabled_dm8gx_14yza_177.awsui_token-box-disabled_dm8gx_14yza_177:not(#\9) {
|
|
204
204
|
border-color: var(--color-border-control-disabled-p74xpm, #d5dbdb);
|
|
205
205
|
background-color: var(--color-background-container-content-xlzim4, #ffffff);
|
|
206
206
|
color: var(--color-text-disabled-uznqkj, #aab7b8);
|
|
207
207
|
pointer-events: none;
|
|
208
208
|
}
|
|
209
|
-
.awsui_token-box-
|
|
209
|
+
.awsui_token-box-disabled_dm8gx_14yza_177.awsui_token-box-disabled_dm8gx_14yza_177 > .awsui_dismiss-button_dm8gx_14yza_113:not(#\9) {
|
|
210
210
|
color: var(--color-text-button-inline-icon-disabled-320glj, #aab7b8);
|
|
211
211
|
}
|
|
212
|
-
.awsui_token-box-
|
|
212
|
+
.awsui_token-box-disabled_dm8gx_14yza_177.awsui_token-box-disabled_dm8gx_14yza_177 > .awsui_dismiss-button_dm8gx_14yza_113:not(#\9):hover {
|
|
213
213
|
/* stylelint-disable-next-line plugin/no-unsupported-browser-features */
|
|
214
214
|
cursor: auto;
|
|
215
215
|
color: var(--color-text-button-inline-icon-disabled-320glj, #aab7b8);
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
// es-module interop with Babel and Typescript
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
module.exports.default = {
|
|
5
|
-
"root": "
|
|
6
|
-
"has-items": "awsui_has-
|
|
7
|
-
"dismiss-button": "awsui_dismiss-
|
|
8
|
-
"token": "
|
|
9
|
-
"token-box": "awsui_token-
|
|
10
|
-
"token-box-error": "awsui_token-box-
|
|
11
|
-
"token-box-disabled": "awsui_token-box-
|
|
5
|
+
"root": "awsui_root_dm8gx_14yza_97",
|
|
6
|
+
"has-items": "awsui_has-items_dm8gx_14yza_109",
|
|
7
|
+
"dismiss-button": "awsui_dismiss-button_dm8gx_14yza_113",
|
|
8
|
+
"token": "awsui_token_dm8gx_14yza_147",
|
|
9
|
+
"token-box": "awsui_token-box_dm8gx_14yza_154",
|
|
10
|
+
"token-box-error": "awsui_token-box-error_dm8gx_14yza_166",
|
|
11
|
+
"token-box-disabled": "awsui_token-box-disabled_dm8gx_14yza_177"
|
|
12
12
|
};
|
|
13
13
|
|
|
@@ -1,30 +1,30 @@
|
|
|
1
1
|
|
|
2
2
|
import './styles.scoped.css';
|
|
3
3
|
export default {
|
|
4
|
-
"top-navigation": "awsui_top-
|
|
5
|
-
"padding-box": "awsui_padding-
|
|
6
|
-
"medium": "
|
|
7
|
-
"narrow": "
|
|
8
|
-
"hidden": "
|
|
9
|
-
"\t": "awsui_\
|
|
10
|
-
"identity": "
|
|
11
|
-
"identity-link": "awsui_identity-
|
|
12
|
-
"no-logo": "awsui_no-
|
|
13
|
-
"logo": "
|
|
14
|
-
"title": "
|
|
15
|
-
"inputs": "
|
|
16
|
-
"search": "
|
|
17
|
-
"search-expanded": "awsui_search-
|
|
18
|
-
"utilities": "
|
|
19
|
-
"utility-wrapper": "awsui_utility-
|
|
20
|
-
"utility-wrapper-last": "awsui_utility-wrapper-
|
|
21
|
-
"utility-type-button-primary-button": "awsui_utility-type-button-primary-
|
|
22
|
-
"utility-type-menu-dropdown": "awsui_utility-type-menu-
|
|
23
|
-
"utility-type-button-link": "awsui_utility-type-button-
|
|
24
|
-
"utility-link-icon": "awsui_utility-link-
|
|
25
|
-
"utility-button-external-icon": "awsui_utility-button-external-
|
|
26
|
-
"trigger": "
|
|
27
|
-
"rotate-up": "awsui_rotate-
|
|
28
|
-
"rotate-down": "awsui_rotate-
|
|
4
|
+
"top-navigation": "awsui_top-navigation_1ca1i_1ep6t_93",
|
|
5
|
+
"padding-box": "awsui_padding-box_1ca1i_1ep6t_106",
|
|
6
|
+
"medium": "awsui_medium_1ca1i_1ep6t_116",
|
|
7
|
+
"narrow": "awsui_narrow_1ca1i_1ep6t_116",
|
|
8
|
+
"hidden": "awsui_hidden_1ca1i_1ep6t_124",
|
|
9
|
+
"\t": "awsui_\t_1ca1i_1ep6t_1",
|
|
10
|
+
"identity": "awsui_identity_1ca1i_1ep6t_137",
|
|
11
|
+
"identity-link": "awsui_identity-link_1ca1i_1ep6t_137",
|
|
12
|
+
"no-logo": "awsui_no-logo_1ca1i_1ep6t_154",
|
|
13
|
+
"logo": "awsui_logo_1ca1i_1ep6t_158",
|
|
14
|
+
"title": "awsui_title_1ca1i_1ep6t_169",
|
|
15
|
+
"inputs": "awsui_inputs_1ca1i_1ep6t_185",
|
|
16
|
+
"search": "awsui_search_1ca1i_1ep6t_192",
|
|
17
|
+
"search-expanded": "awsui_search-expanded_1ca1i_1ep6t_197",
|
|
18
|
+
"utilities": "awsui_utilities_1ca1i_1ep6t_202",
|
|
19
|
+
"utility-wrapper": "awsui_utility-wrapper_1ca1i_1ep6t_214",
|
|
20
|
+
"utility-wrapper-last": "awsui_utility-wrapper-last_1ca1i_1ep6t_230",
|
|
21
|
+
"utility-type-button-primary-button": "awsui_utility-type-button-primary-button_1ca1i_1ep6t_230",
|
|
22
|
+
"utility-type-menu-dropdown": "awsui_utility-type-menu-dropdown_1ca1i_1ep6t_244",
|
|
23
|
+
"utility-type-button-link": "awsui_utility-type-button-link_1ca1i_1ep6t_259",
|
|
24
|
+
"utility-link-icon": "awsui_utility-link-icon_1ca1i_1ep6t_272",
|
|
25
|
+
"utility-button-external-icon": "awsui_utility-button-external-icon_1ca1i_1ep6t_276",
|
|
26
|
+
"trigger": "awsui_trigger_1ca1i_1ep6t_280",
|
|
27
|
+
"rotate-up": "awsui_rotate-up_1ca1i_1ep6t_284",
|
|
28
|
+
"rotate-down": "awsui_rotate-down_1ca1i_1ep6t_299"
|
|
29
29
|
};
|
|
30
30
|
|
|
@@ -90,7 +90,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
90
90
|
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
91
91
|
SPDX-License-Identifier: Apache-2.0
|
|
92
92
|
*/
|
|
93
|
-
.awsui_top-
|
|
93
|
+
.awsui_top-navigation_1ca1i_1ep6t_93:not(#\9) {
|
|
94
94
|
/* stylelint-disable-next-line plugin/no-unsupported-browser-features */
|
|
95
95
|
border-collapse: separate;
|
|
96
96
|
border-spacing: 0;
|
|
@@ -121,7 +121,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
121
121
|
word-spacing: normal;
|
|
122
122
|
box-sizing: border-box;
|
|
123
123
|
font-size: var(--font-body-m-size-0qqejn, 14px);
|
|
124
|
-
line-height: var(--font-body-m-line-height-
|
|
124
|
+
line-height: var(--font-body-m-line-height-43ichb, 22px);
|
|
125
125
|
color: var(--color-text-body-default-4colr5, #16191f);
|
|
126
126
|
font-weight: 400;
|
|
127
127
|
font-family: var(--font-family-base-nzcxu9, "Noto Sans", "Helvetica Neue", Roboto, Arial, sans-serif);
|
|
@@ -129,7 +129,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
129
129
|
-moz-osx-font-smoothing: auto;
|
|
130
130
|
background: var(--color-background-container-content-xlzim4, #ffffff);
|
|
131
131
|
}
|
|
132
|
-
.awsui_top-
|
|
132
|
+
.awsui_top-navigation_1ca1i_1ep6t_93 > .awsui_padding-box_1ca1i_1ep6t_106:not(#\9) {
|
|
133
133
|
display: flex;
|
|
134
134
|
flex-direction: row;
|
|
135
135
|
flex-wrap: nowrap;
|
|
@@ -139,15 +139,15 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
139
139
|
height: calc(var(--space-xxxl-ecj2b1, 40px) + var(--space-scaled-m-5caa5e, 16px));
|
|
140
140
|
padding: 0 0 0 var(--space-l-z6h7qi, 20px);
|
|
141
141
|
}
|
|
142
|
-
.awsui_top-
|
|
142
|
+
.awsui_top-navigation_1ca1i_1ep6t_93.awsui_medium_1ca1i_1ep6t_116 > .awsui_padding-box_1ca1i_1ep6t_106:not(#\9), .awsui_top-navigation_1ca1i_1ep6t_93.awsui_narrow_1ca1i_1ep6t_116 > .awsui_padding-box_1ca1i_1ep6t_106:not(#\9) {
|
|
143
143
|
height: calc(var(--space-xxxl-ecj2b1, 40px) + var(--space-scaled-xs-sg3tfb, 8px));
|
|
144
144
|
}
|
|
145
|
-
.awsui_top-
|
|
145
|
+
.awsui_top-navigation_1ca1i_1ep6t_93.awsui_narrow_1ca1i_1ep6t_116 > .awsui_padding-box_1ca1i_1ep6t_106:not(#\9) {
|
|
146
146
|
height: var(--space-xxxl-ecj2b1, 40px);
|
|
147
147
|
padding: 0 0 0 var(--space-xs-7veqkr, 8px);
|
|
148
148
|
}
|
|
149
149
|
|
|
150
|
-
.
|
|
150
|
+
.awsui_hidden_1ca1i_1ep6t_124:not(#\9) {
|
|
151
151
|
position: absolute !important;
|
|
152
152
|
top: -9999px !important;
|
|
153
153
|
left: -9999px !important;
|
|
@@ -156,20 +156,20 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
156
156
|
}
|
|
157
157
|
|
|
158
158
|
/* stylelint-disable-next-line selector-combinator-disallowed-list, selector-max-universal */
|
|
159
|
-
.
|
|
159
|
+
.awsui_hidden_1ca1i_1ep6t_124 *:not(#\9):not(#awsui_\9 _1ca1i_1ep6t_1) {
|
|
160
160
|
visibility: hidden;
|
|
161
161
|
}
|
|
162
162
|
|
|
163
|
-
.
|
|
163
|
+
.awsui_identity_1ca1i_1ep6t_137 > .awsui_identity-link_1ca1i_1ep6t_137:not(#\9) {
|
|
164
164
|
display: flex;
|
|
165
165
|
align-items: center;
|
|
166
166
|
text-decoration: none;
|
|
167
167
|
color: var(--color-text-top-navigation-title-rfejca, #16191f);
|
|
168
168
|
}
|
|
169
|
-
.
|
|
169
|
+
.awsui_identity_1ca1i_1ep6t_137 > .awsui_identity-link_1ca1i_1ep6t_137:not(#\9):hover {
|
|
170
170
|
color: var(--color-text-accent-exu66k, #0073bb);
|
|
171
171
|
}
|
|
172
|
-
body[data-awsui-focus-visible=true] .
|
|
172
|
+
body[data-awsui-focus-visible=true] .awsui_identity_1ca1i_1ep6t_137 > .awsui_identity-link_1ca1i_1ep6t_137:not(#\9):focus {
|
|
173
173
|
outline: thin dotted;
|
|
174
174
|
outline: var(--border-link-focus-ring-outline-e033ba, 5px auto Highlight);
|
|
175
175
|
outline-offset: 2px;
|
|
@@ -177,22 +177,22 @@ body[data-awsui-focus-visible=true] .awsui_identity_1ca1i_wm2uf_137 > .awsui_ide
|
|
|
177
177
|
border-radius: var(--border-radius-control-default-focus-ring-uu8qi4, 2px);
|
|
178
178
|
box-shadow: 0 0 0 var(--border-link-focus-ring-shadow-spread-3gfzjd, 0px) var(--color-border-item-focused-4clyb1, #0073bb);
|
|
179
179
|
}
|
|
180
|
-
.
|
|
180
|
+
.awsui_identity_1ca1i_1ep6t_137.awsui_no-logo_1ca1i_1ep6t_154:not(#\9) {
|
|
181
181
|
min-width: 100px;
|
|
182
182
|
}
|
|
183
183
|
|
|
184
|
-
.
|
|
184
|
+
.awsui_logo_1ca1i_1ep6t_158:not(#\9) {
|
|
185
185
|
display: block;
|
|
186
186
|
max-height: var(--space-xxl-y3qgr4, 32px);
|
|
187
187
|
margin-left: var(--space-s-o95p2n, 12px);
|
|
188
188
|
width: auto;
|
|
189
189
|
min-width: 10px;
|
|
190
190
|
}
|
|
191
|
-
.
|
|
191
|
+
.awsui_logo_1ca1i_1ep6t_158.awsui_narrow_1ca1i_1ep6t_116:not(#\9) {
|
|
192
192
|
max-height: var(--space-xl-uesynn, 24px);
|
|
193
193
|
}
|
|
194
194
|
|
|
195
|
-
.
|
|
195
|
+
.awsui_title_1ca1i_1ep6t_169:not(#\9) {
|
|
196
196
|
font-size: var(--font-heading-m-size-bwdbnx, 18px);
|
|
197
197
|
line-height: var(--font-heading-m-line-height-ahaded, 22px);
|
|
198
198
|
letter-spacing: var(--font-heading-m-letter-spacing-t3csz2, normal);
|
|
@@ -204,28 +204,28 @@ body[data-awsui-focus-visible=true] .awsui_identity_1ca1i_wm2uf_137 > .awsui_ide
|
|
|
204
204
|
overflow: hidden;
|
|
205
205
|
text-overflow: ellipsis;
|
|
206
206
|
}
|
|
207
|
-
.awsui_no-
|
|
207
|
+
.awsui_no-logo_1ca1i_1ep6t_154 > .awsui_identity-link_1ca1i_1ep6t_137 > .awsui_title_1ca1i_1ep6t_169:not(#\9) {
|
|
208
208
|
font-weight: 700;
|
|
209
209
|
}
|
|
210
210
|
|
|
211
|
-
.
|
|
211
|
+
.awsui_inputs_1ca1i_1ep6t_185:not(#\9) {
|
|
212
212
|
flex: 1;
|
|
213
213
|
min-width: 0;
|
|
214
214
|
display: flex;
|
|
215
215
|
justify-content: center;
|
|
216
216
|
}
|
|
217
217
|
|
|
218
|
-
.
|
|
218
|
+
.awsui_search_1ca1i_1ep6t_192:not(#\9) {
|
|
219
219
|
width: 100%;
|
|
220
220
|
max-width: 340px;
|
|
221
221
|
padding-left: var(--space-xxxl-ecj2b1, 40px);
|
|
222
222
|
}
|
|
223
|
-
.awsui_search-
|
|
223
|
+
.awsui_search-expanded_1ca1i_1ep6t_197:not(#\9) {
|
|
224
224
|
max-width: none;
|
|
225
225
|
padding-left: var(--space-s-o95p2n, 12px);
|
|
226
226
|
}
|
|
227
227
|
|
|
228
|
-
.
|
|
228
|
+
.awsui_utilities_1ca1i_1ep6t_202:not(#\9) {
|
|
229
229
|
display: flex;
|
|
230
230
|
flex-shrink: 0;
|
|
231
231
|
flex-direction: row;
|
|
@@ -233,17 +233,17 @@ body[data-awsui-focus-visible=true] .awsui_identity_1ca1i_wm2uf_137 > .awsui_ide
|
|
|
233
233
|
padding-left: var(--space-m-2wfcpy, 16px);
|
|
234
234
|
height: 100%;
|
|
235
235
|
}
|
|
236
|
-
.
|
|
236
|
+
.awsui_medium_1ca1i_1ep6t_116 > .awsui_padding-box_1ca1i_1ep6t_106 > .awsui_utilities_1ca1i_1ep6t_202:not(#\9), .awsui_narrow_1ca1i_1ep6t_116 > .awsui_padding-box_1ca1i_1ep6t_106 > .awsui_utilities_1ca1i_1ep6t_202:not(#\9) {
|
|
237
237
|
padding-left: 0;
|
|
238
238
|
}
|
|
239
239
|
|
|
240
|
-
.awsui_utility-
|
|
240
|
+
.awsui_utility-wrapper_1ca1i_1ep6t_214:not(#\9) {
|
|
241
241
|
display: flex;
|
|
242
242
|
position: relative;
|
|
243
243
|
flex-shrink: 0;
|
|
244
244
|
align-items: center;
|
|
245
245
|
}
|
|
246
|
-
.awsui_utility-
|
|
246
|
+
.awsui_utility-wrapper_1ca1i_1ep6t_214:not(#\9)::after {
|
|
247
247
|
display: block;
|
|
248
248
|
position: absolute;
|
|
249
249
|
content: "";
|
|
@@ -253,86 +253,86 @@ body[data-awsui-focus-visible=true] .awsui_identity_1ca1i_wm2uf_137 > .awsui_ide
|
|
|
253
253
|
bottom: var(--space-s-o95p2n, 12px);
|
|
254
254
|
background: var(--color-border-divider-default-uqjcpn, #eaeded);
|
|
255
255
|
}
|
|
256
|
-
.awsui_utility-
|
|
256
|
+
.awsui_utility-wrapper_1ca1i_1ep6t_214.awsui_utility-wrapper-last_1ca1i_1ep6t_230:not(#\9):not(.awsui_utility-type-button-primary-button_1ca1i_1ep6t_230) {
|
|
257
257
|
padding-right: 0;
|
|
258
258
|
}
|
|
259
|
-
.awsui_utility-
|
|
259
|
+
.awsui_utility-wrapper_1ca1i_1ep6t_214.awsui_utility-wrapper-last_1ca1i_1ep6t_230:not(#\9):not(.awsui_utility-type-button-primary-button_1ca1i_1ep6t_230)::after {
|
|
260
260
|
display: none;
|
|
261
261
|
}
|
|
262
|
-
.
|
|
262
|
+
.awsui_medium_1ca1i_1ep6t_116 > .awsui_padding-box_1ca1i_1ep6t_106 > .awsui_utilities_1ca1i_1ep6t_202 > .awsui_utility-wrapper_1ca1i_1ep6t_214:not(#\9)::after, .awsui_narrow_1ca1i_1ep6t_116 > .awsui_padding-box_1ca1i_1ep6t_106 > .awsui_utilities_1ca1i_1ep6t_202 > .awsui_utility-wrapper_1ca1i_1ep6t_214:not(#\9)::after {
|
|
263
263
|
top: var(--space-xs-7veqkr, 8px);
|
|
264
264
|
bottom: var(--space-xs-7veqkr, 8px);
|
|
265
265
|
}
|
|
266
266
|
|
|
267
|
-
.awsui_utility-wrapper-
|
|
267
|
+
.awsui_utility-wrapper-last_1ca1i_1ep6t_230:not(#\9) {
|
|
268
268
|
margin-right: var(--space-s-o95p2n, 12px);
|
|
269
269
|
}
|
|
270
|
-
.awsui_utility-wrapper-
|
|
270
|
+
.awsui_utility-wrapper-last_1ca1i_1ep6t_230.awsui_utility-type-menu-dropdown_1ca1i_1ep6t_244:not(#\9) {
|
|
271
271
|
margin-right: 0;
|
|
272
272
|
}
|
|
273
|
-
.
|
|
273
|
+
.awsui_narrow_1ca1i_1ep6t_116 > .awsui_padding-box_1ca1i_1ep6t_106 > .awsui_utilities_1ca1i_1ep6t_202 > .awsui_utility-wrapper-last_1ca1i_1ep6t_230:not(#\9) {
|
|
274
274
|
margin-right: 0;
|
|
275
275
|
}
|
|
276
|
-
.
|
|
276
|
+
.awsui_narrow_1ca1i_1ep6t_116 > .awsui_padding-box_1ca1i_1ep6t_106 > .awsui_utilities_1ca1i_1ep6t_202 > .awsui_utility-wrapper-last_1ca1i_1ep6t_230.awsui_utility-type-button-primary-button_1ca1i_1ep6t_230:not(#\9) {
|
|
277
277
|
padding-right: var(--space-l-z6h7qi, 20px);
|
|
278
278
|
}
|
|
279
279
|
|
|
280
|
-
.awsui_utility-type-menu-
|
|
280
|
+
.awsui_utility-type-menu-dropdown_1ca1i_1ep6t_244:not(#\9) {
|
|
281
281
|
padding: 0 var(--space-s-o95p2n, 12px);
|
|
282
282
|
align-items: stretch;
|
|
283
283
|
}
|
|
284
284
|
|
|
285
|
-
.awsui_utility-type-button-
|
|
286
|
-
.awsui_utility-type-button-primary-
|
|
285
|
+
.awsui_utility-type-button-link_1ca1i_1ep6t_259:not(#\9),
|
|
286
|
+
.awsui_utility-type-button-primary-button_1ca1i_1ep6t_230:not(#\9) {
|
|
287
287
|
padding: 0 var(--space-m-2wfcpy, 16px);
|
|
288
288
|
}
|
|
289
289
|
|
|
290
|
-
.awsui_utility-type-button-primary-
|
|
290
|
+
.awsui_utility-type-button-primary-button_1ca1i_1ep6t_230:not(#\9) {
|
|
291
291
|
left: -1px;
|
|
292
292
|
border-left: 1px solid var(--color-background-container-content-xlzim4, #ffffff);
|
|
293
293
|
}
|
|
294
|
-
.awsui_utility-type-button-primary-
|
|
294
|
+
.awsui_utility-type-button-primary-button_1ca1i_1ep6t_230:not(#\9)::after {
|
|
295
295
|
display: none;
|
|
296
296
|
}
|
|
297
297
|
|
|
298
|
-
.awsui_utility-link-
|
|
298
|
+
.awsui_utility-link-icon_1ca1i_1ep6t_272:not(#\9) {
|
|
299
299
|
margin-right: var(--space-xxs-xx079q, 4px);
|
|
300
300
|
}
|
|
301
301
|
|
|
302
|
-
.awsui_utility-button-external-
|
|
302
|
+
.awsui_utility-button-external-icon_1ca1i_1ep6t_276:not(#\9) {
|
|
303
303
|
display: inline-block;
|
|
304
304
|
}
|
|
305
305
|
|
|
306
|
-
.
|
|
306
|
+
.awsui_trigger_1ca1i_1ep6t_280:not(#\9) {
|
|
307
307
|
/*used in test-utils*/
|
|
308
308
|
}
|
|
309
309
|
|
|
310
|
-
.awsui_rotate-
|
|
310
|
+
.awsui_rotate-up_1ca1i_1ep6t_284:not(#\9) {
|
|
311
311
|
transform: rotate(-180deg);
|
|
312
312
|
transition: transform var(--motion-duration-rotate-180-ur235g, 135ms) var(--motion-easing-rotate-180-eilno1, cubic-bezier(0.165, 0.84, 0.44, 1));
|
|
313
313
|
}
|
|
314
314
|
@media (prefers-reduced-motion: reduce) {
|
|
315
|
-
.awsui_rotate-
|
|
315
|
+
.awsui_rotate-up_1ca1i_1ep6t_284:not(#\9) {
|
|
316
316
|
animation: none;
|
|
317
317
|
transition: none;
|
|
318
318
|
}
|
|
319
319
|
}
|
|
320
|
-
.awsui-motion-disabled .awsui_rotate-
|
|
320
|
+
.awsui-motion-disabled .awsui_rotate-up_1ca1i_1ep6t_284:not(#\9), .awsui-mode-entering .awsui_rotate-up_1ca1i_1ep6t_284:not(#\9) {
|
|
321
321
|
animation: none;
|
|
322
322
|
transition: none;
|
|
323
323
|
}
|
|
324
324
|
|
|
325
|
-
.awsui_rotate-
|
|
325
|
+
.awsui_rotate-down_1ca1i_1ep6t_299:not(#\9) {
|
|
326
326
|
transform: rotate(0deg);
|
|
327
327
|
transition: transform var(--motion-duration-rotate-180-ur235g, 135ms) var(--motion-easing-rotate-180-eilno1, cubic-bezier(0.165, 0.84, 0.44, 1));
|
|
328
328
|
}
|
|
329
329
|
@media (prefers-reduced-motion: reduce) {
|
|
330
|
-
.awsui_rotate-
|
|
330
|
+
.awsui_rotate-down_1ca1i_1ep6t_299:not(#\9) {
|
|
331
331
|
animation: none;
|
|
332
332
|
transition: none;
|
|
333
333
|
}
|
|
334
334
|
}
|
|
335
|
-
.awsui-motion-disabled .awsui_rotate-
|
|
335
|
+
.awsui-motion-disabled .awsui_rotate-down_1ca1i_1ep6t_299:not(#\9), .awsui-mode-entering .awsui_rotate-down_1ca1i_1ep6t_299:not(#\9) {
|
|
336
336
|
animation: none;
|
|
337
337
|
transition: none;
|
|
338
338
|
}
|
|
@@ -2,30 +2,30 @@
|
|
|
2
2
|
// es-module interop with Babel and Typescript
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
module.exports.default = {
|
|
5
|
-
"top-navigation": "awsui_top-
|
|
6
|
-
"padding-box": "awsui_padding-
|
|
7
|
-
"medium": "
|
|
8
|
-
"narrow": "
|
|
9
|
-
"hidden": "
|
|
10
|
-
"\t": "awsui_\
|
|
11
|
-
"identity": "
|
|
12
|
-
"identity-link": "awsui_identity-
|
|
13
|
-
"no-logo": "awsui_no-
|
|
14
|
-
"logo": "
|
|
15
|
-
"title": "
|
|
16
|
-
"inputs": "
|
|
17
|
-
"search": "
|
|
18
|
-
"search-expanded": "awsui_search-
|
|
19
|
-
"utilities": "
|
|
20
|
-
"utility-wrapper": "awsui_utility-
|
|
21
|
-
"utility-wrapper-last": "awsui_utility-wrapper-
|
|
22
|
-
"utility-type-button-primary-button": "awsui_utility-type-button-primary-
|
|
23
|
-
"utility-type-menu-dropdown": "awsui_utility-type-menu-
|
|
24
|
-
"utility-type-button-link": "awsui_utility-type-button-
|
|
25
|
-
"utility-link-icon": "awsui_utility-link-
|
|
26
|
-
"utility-button-external-icon": "awsui_utility-button-external-
|
|
27
|
-
"trigger": "
|
|
28
|
-
"rotate-up": "awsui_rotate-
|
|
29
|
-
"rotate-down": "awsui_rotate-
|
|
5
|
+
"top-navigation": "awsui_top-navigation_1ca1i_1ep6t_93",
|
|
6
|
+
"padding-box": "awsui_padding-box_1ca1i_1ep6t_106",
|
|
7
|
+
"medium": "awsui_medium_1ca1i_1ep6t_116",
|
|
8
|
+
"narrow": "awsui_narrow_1ca1i_1ep6t_116",
|
|
9
|
+
"hidden": "awsui_hidden_1ca1i_1ep6t_124",
|
|
10
|
+
"\t": "awsui_\t_1ca1i_1ep6t_1",
|
|
11
|
+
"identity": "awsui_identity_1ca1i_1ep6t_137",
|
|
12
|
+
"identity-link": "awsui_identity-link_1ca1i_1ep6t_137",
|
|
13
|
+
"no-logo": "awsui_no-logo_1ca1i_1ep6t_154",
|
|
14
|
+
"logo": "awsui_logo_1ca1i_1ep6t_158",
|
|
15
|
+
"title": "awsui_title_1ca1i_1ep6t_169",
|
|
16
|
+
"inputs": "awsui_inputs_1ca1i_1ep6t_185",
|
|
17
|
+
"search": "awsui_search_1ca1i_1ep6t_192",
|
|
18
|
+
"search-expanded": "awsui_search-expanded_1ca1i_1ep6t_197",
|
|
19
|
+
"utilities": "awsui_utilities_1ca1i_1ep6t_202",
|
|
20
|
+
"utility-wrapper": "awsui_utility-wrapper_1ca1i_1ep6t_214",
|
|
21
|
+
"utility-wrapper-last": "awsui_utility-wrapper-last_1ca1i_1ep6t_230",
|
|
22
|
+
"utility-type-button-primary-button": "awsui_utility-type-button-primary-button_1ca1i_1ep6t_230",
|
|
23
|
+
"utility-type-menu-dropdown": "awsui_utility-type-menu-dropdown_1ca1i_1ep6t_244",
|
|
24
|
+
"utility-type-button-link": "awsui_utility-type-button-link_1ca1i_1ep6t_259",
|
|
25
|
+
"utility-link-icon": "awsui_utility-link-icon_1ca1i_1ep6t_272",
|
|
26
|
+
"utility-button-external-icon": "awsui_utility-button-external-icon_1ca1i_1ep6t_276",
|
|
27
|
+
"trigger": "awsui_trigger_1ca1i_1ep6t_280",
|
|
28
|
+
"rotate-up": "awsui_rotate-up_1ca1i_1ep6t_284",
|
|
29
|
+
"rotate-down": "awsui_rotate-down_1ca1i_1ep6t_299"
|
|
30
30
|
};
|
|
31
31
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-top-navigation.d.ts","sourceRoot":"lib/default/","sources":["top-navigation/1.0-beta/use-top-navigation.ts"],"names":[],"mappings":"AAEA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAIpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"use-top-navigation.d.ts","sourceRoot":"lib/default/","sources":["top-navigation/1.0-beta/use-top-navigation.ts"],"names":[],"mappings":"AAEA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAIpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAIlD,MAAM,WAAW,sBAAsB;IACrC,iBAAiB,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;IAC/D,QAAQ,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACzC,MAAM,EAAE,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACrC,SAAS,EAAE,WAAW,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,eAAe;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,8BAA8B;IAC7C,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,yBAAyB,EAAE,MAAM,EAAE,CAAC;IACpC,uBAAuB,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC/B,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAEtC,eAAe,EAAE,eAAe,CAAC;IACjC,UAAU,EAAE,SAAS,GAAG,KAAK,GAAG,GAAG,CAAC;IACpC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,oBAAoB,EAAE,MAAM,IAAI,CAAC;CAClC;AAKD,wBAAgB,gBAAgB,CAAC,EAC/B,iBAAiB,EAAE,OAAO,EAC1B,QAAQ,EACR,MAAM,EACN,SAAS,GACV,EAAE,sBAAsB,GAAG,gBAAgB,CA0F3C;AAUD;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,aAAa,CAAC,kBAAkB,CAAC,OAAO,CAAC,EACpD,aAAa,EAAE,OAAO,EACtB,YAAY,EAAE,OAAO,GACpB,aAAa,CAAC,eAAe,CAAC,CA+BhC;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAC1C,cAAc,EAAE,aAAa,CAAC,eAAe,CAAC,EAC9C,KAAK,EAAE,8BAA8B,GACpC,eAAe,CA6BjB"}
|
|
@@ -2,8 +2,9 @@
|
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
import { useEffect, useMemo, useRef, useState } from 'react';
|
|
4
4
|
import { useMergeRefs } from '../../internal/hooks/use-merge-refs';
|
|
5
|
-
import { useContainerBreakpoints
|
|
5
|
+
import { useContainerBreakpoints } from '../../internal/hooks/container-queries';
|
|
6
6
|
import styles from './styles.css.js';
|
|
7
|
+
import { useContainerQuery } from '@cloudscape-design/component-toolkit';
|
|
7
8
|
// A small buffer to make calculations more lenient against browser lag or padding adjustments.
|
|
8
9
|
const RESPONSIVENESS_BUFFER = 20;
|
|
9
10
|
export function useTopNavigation({ __internalRootRef: mainRef, identity, search, utilities, }) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-top-navigation.js","sourceRoot":"lib/default/","sources":["top-navigation/1.0-beta/use-top-navigation.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAc,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAEnE,OAAO,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAEpG,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAuCrC,+FAA+F;AAC/F,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAEjC,MAAM,UAAU,gBAAgB,CAAC,EAC/B,iBAAiB,EAAE,OAAO,EAC1B,QAAQ,EACR,MAAM,EACN,SAAS,GACc;IACvB,uBAAuB;IACvB,MAAM,UAAU,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IACvD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,uBAAuB,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;IAE1E,uBAAuB;IACvB,4EAA4E;IAC5E,8EAA8E;IAC9E,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3B,MAAM,gBAAgB,GAAG,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;IACzE,MAAM,gBAAgB,GAAG,OAAO,CAAiC,GAAG,EAAE;QACpE,OAAO,2BAA2B,CAAC,SAAS,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC;IAC7E,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAE7C,kFAAkF;IAClF,qFAAqF;IACrF,wFAAwF;IACxF,uFAAuF;IACvF,uDAAuD;IACvD,EAAE;IACF,qFAAqF;IACrF,mFAAmF;IACnF,sDAAsD;IACtD,EAAE;IACF,8DAA8D;IAC9D,MAAM,CAAC,eAAe,EAAE,iBAAiB,CAAC,GAAG,iBAAiB,CAAkB,GAAG,EAAE;;QACnF,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAA,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE;YAC5C,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC;SAC5B;QAED,MAAM,iBAAiB,GAAG;YACxB,SAAS,EAAE,CAAC,CAAC,MAAM;YAEnB,0DAA0D;YAC1D,cAAc,EAAE,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC,aAAa,CAAC,EAAE,CAAE,CAAC;YAC/F,oBAAoB,EAAE,UAAU,CAC9B,gBAAgB,CAAC,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC,SAAS,EAAE,CAAE,CAAC,CAAC,WAAW,CACxF;YAED,4CAA4C;YAC5C,iBAAiB,EAAE,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAE,CAAC,qBAAqB,EAAE,CAAC,KAAK;YACzG,UAAU,EAAE,MAAA,MAAA,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC,0CAAE,qBAAqB,GAAG,KAAK,mCAAI,CAAC;YACpG,eAAe,EAAE,MAAA,MAAA,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,0CAAE,qBAAqB,GAAG,KAAK,mCAAI,CAAC;YAC1G,kBAAkB,EAAE,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,iCAAiC,CAAE,CAAC,qBAAqB,EAAE;iBAC7G,KAAK;YACR,sBAAsB,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK;iBAC1C,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,gBAAgB,CAAC,6BAA6B,CAAC,CAAC;iBACxE,GAAG,CAAC,CAAC,OAAgB,EAAE,EAAE,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC;YACnE,yBAAyB,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK;iBAC7C,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,CAAC;iBACvE,GAAG,CAAC,CAAC,OAAgB,EAAE,EAAE,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC;YACnE,uBAAuB,EAAE,UAAU,CAAC,OAAO;iBACxC,aAAa,CAAC,uCAAuC,CAAE;iBACvD,qBAAqB,EAAE,CAAC,KAAK;SACjC,CAAC;QAEF,OAAO,4BAA4B,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;IAC3E,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAExC,yCAAyC;IACzC,MAAM,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/D,MAAM,gBAAgB,GAAG,CAAC,iBAAiB,IAAI,UAAU,KAAK,GAAG,IAAI,SAAS,KAAI,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,UAAU,CAAA,CAAC;IAE9G,sEAAsE;IACtE,kEAAkE;IAClE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,CAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,UAAU,CAAA,EAAE;YAChC,kBAAkB,CAAC,IAAI,CAAC,CAAC;SAC1B;IACH,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAEtB,uEAAuE;IACvE,2EAA2E;IAC3E,uEAAuE;IACvE,SAAS,CAAC,GAAG,EAAE;;QACb,IAAI,gBAAgB,EAAE;YACpB,MAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,0CAAE,aAAa,CAAmB,IAAI,MAAM,CAAC,MAAM,QAAQ,CAAC,0CAAE,KAAK,EAAE,CAAC;SACvF;IACH,CAAC,EAAE,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC;IAEhC,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,iBAAiB,EAAE,aAAa,CAAC,CAAC;IAEhG,OAAO;QACL,GAAG,EAAE,SAAS;QACd,UAAU,EAAE,UAAU;QACtB,eAAe,EAAE,eAAe,aAAf,eAAe,cAAf,eAAe,GAAI,gBAAgB,CAAC,CAAC,CAAC;QACvD,UAAU,EAAE,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,SAAS;QACnC,gBAAgB,EAAE,CAAC,CAAC,gBAAgB;QACpC,oBAAoB,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,iBAAiB,CAAC;KACxF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,OAAgB;IAC1C,MAAM,KAAK,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACxC,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;AAClG,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2BAA2B,CACzC,SAAoD,EACpD,aAAsB,EACtB,YAAqB;IAErB,MAAM,MAAM,GAAsB,CAAC,EAAE,CAAC,CAAC;IACvC,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QAC3C,MAAM,CAAC,IAAI,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;KACxC;IACD,IAAI,aAAa,EAAE;QACjB,MAAM,CAAC,IAAI,CAAC;YACV,eAAe,EAAE,IAAI;YACrB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;KACJ;IACD,MAAM,cAAc,GAAG,EAAE,CAAC;IAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACzC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,sBAAsB,EAAE;YACxC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC;gBACV,eAAe,EAAE,IAAI;gBACrB,UAAU,EAAE,aAAa,IAAI,SAAS;gBACtC,aAAa,EAAE,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS;aAC9E,CAAC,CAAC;SACJ;KACF;IACD,IAAI,YAAY,EAAE;QAChB,MAAM,CAAC,IAAI,CAAC;YACV,eAAe,EAAE,IAAI;YACrB,UAAU,EAAE,aAAa,IAAI,SAAS;YACtC,aAAa,EAAE,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS;YAC7E,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;KACJ;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,4BAA4B,CAC1C,cAA8C,EAC9C,KAAqC;IAErC,MAAM,EACJ,SAAS,EACT,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,UAAU,EACV,eAAe,EACf,kBAAkB,EAClB,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,GACxB,GAAG,KAAK,CAAC;IACV,wEAAwE;IACxE,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE;QAClC,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9F,MAAM,cAAc,GAAW,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,sBAAsB,CAAC;aACxG,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;aACpF,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC;QAC1C,MAAM,gBAAgB,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,MAAM,aAAa,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,GAAG,UAAU,CAAC,CAAC,CAAC,iBAAiB,CAAC;QAC3F,MAAM,kBAAkB,GAAG,aAAa,GAAG,WAAW,GAAG,oBAAoB,GAAG,cAAc,GAAG,gBAAgB,CAAC;QAClH,IAAI,kBAAkB,IAAI,cAAc,GAAG,qBAAqB,EAAE;YAChE,OAAO,KAAK,CAAC;SACd;KACF;IAED,wDAAwD;IACxD,OAAO,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACnD,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useEffect, useMemo, useRef, useState } from 'react';\nimport { useMergeRefs } from '../../internal/hooks/use-merge-refs';\n\nimport { useContainerBreakpoints, useContainerQuery } from '../../internal/hooks/container-queries';\nimport { TopNavigationProps } from './interfaces';\nimport styles from './styles.css.js';\n\nexport interface UseTopNavigationParams {\n __internalRootRef?: React.MutableRefObject<HTMLElement> | null;\n identity: TopNavigationProps['identity'];\n search: TopNavigationProps['search'];\n utilities: NonNullable<TopNavigationProps['utilities']>;\n}\n\nexport interface ResponsiveState {\n hideUtilityText?: boolean;\n hideSearch?: boolean;\n hideUtilities?: number[];\n hideTitle?: boolean;\n}\n\nexport interface TopNavigationSizeConfiguration {\n hasSearch: boolean;\n availableWidth: number;\n utilitiesLeftPadding: number;\n fullIdentityWidth: number;\n titleWidth: number;\n searchSlotWidth: number;\n searchUtilityWidth: number;\n utilityWithLabelWidths: number[];\n utilityWithoutLabelWidths: number[];\n menuTriggerUtilityWidth: number;\n}\n\nexport interface UseTopNavigation {\n ref: React.Ref<HTMLDivElement>;\n virtualRef: React.Ref<HTMLDivElement>;\n\n responsiveState: ResponsiveState;\n breakpoint: 'default' | 'xxs' | 's';\n isSearchExpanded: boolean;\n onSearchUtilityClick: () => void;\n}\n\n// A small buffer to make calculations more lenient against browser lag or padding adjustments.\nconst RESPONSIVENESS_BUFFER = 20;\n\nexport function useTopNavigation({\n __internalRootRef: mainRef,\n identity,\n search,\n utilities,\n}: UseTopNavigationParams): UseTopNavigation {\n // Refs and breakpoints\n const virtualRef = useRef<HTMLDivElement | null>(null);\n const [breakpoint, breakpointRef] = useContainerBreakpoints(['xxs', 's']);\n\n // Responsiveness state\n // The component works by calculating the possible resize states that it can\n // be in, and having a state variable to track which state we're currently in.\n const hasSearch = !!search;\n const hasTitleWithLogo = identity && !!identity.logo && !!identity.title;\n const responsiveStates = useMemo<ReadonlyArray<ResponsiveState>>(() => {\n return generateResponsiveStateKeys(utilities, hasSearch, hasTitleWithLogo);\n }, [utilities, hasSearch, hasTitleWithLogo]);\n\n // To hide/show elements dynamically, we need to know how much space they take up,\n // even if they're not being rendered. The top navigation elements are hidden/resized\n // based on the available size or if a search bar is open, and they need to be available\n // for calculations so we know where to toggle them. So we render a second, more stable\n // top-nav off screen to do these calculations against.\n //\n // We can't \"affix\" these values to pixels because they can depend on spacing tokens.\n // It's easier to render all of these utilities separately rather than figuring out\n // spacing token values, icon sizes, text widths, etc.\n //\n // TODO: Some of these values can be memoized to improve perf.\n const [responsiveState, containerQueryRef] = useContainerQuery<ResponsiveState>(() => {\n if (!mainRef?.current || !virtualRef.current) {\n return responsiveStates[0];\n }\n\n const sizeConfiguration = {\n hasSearch: !!search,\n\n // Get widths and paddings from the visible top navigation\n availableWidth: getContentBoxWidth(mainRef.current.querySelector(`.${styles['padding-box']}`)!),\n utilitiesLeftPadding: parseFloat(\n getComputedStyle(virtualRef.current.querySelector(`.${styles.utilities}`)!).paddingLeft\n ),\n\n // Get widths from the hidden top navigation\n fullIdentityWidth: virtualRef.current.querySelector(`.${styles.identity}`)!.getBoundingClientRect().width,\n titleWidth: virtualRef.current.querySelector(`.${styles.title}`)?.getBoundingClientRect().width ?? 0,\n searchSlotWidth: virtualRef.current.querySelector(`.${styles.search}`)?.getBoundingClientRect().width ?? 0,\n searchUtilityWidth: virtualRef.current.querySelector('[data-utility-special=\"search\"]')!.getBoundingClientRect()\n .width,\n utilityWithLabelWidths: Array.prototype.slice\n .call(virtualRef.current.querySelectorAll(`[data-utility-hide=\"false\"]`))\n .map((element: Element) => element.getBoundingClientRect().width),\n utilityWithoutLabelWidths: Array.prototype.slice\n .call(virtualRef.current.querySelectorAll(`[data-utility-hide=\"true\"]`))\n .map((element: Element) => element.getBoundingClientRect().width),\n menuTriggerUtilityWidth: virtualRef.current\n .querySelector('[data-utility-special=\"menu-trigger\"]')!\n .getBoundingClientRect().width,\n };\n\n return determineBestResponsiveState(responsiveStates, sizeConfiguration);\n }, [mainRef, search, responsiveStates]);\n\n // Search slot expansion on small screens\n const [isSearchMinimized, setSearchMinimized] = useState(true);\n const isSearchExpanded = !isSearchMinimized && breakpoint !== 's' && hasSearch && responsiveState?.hideSearch;\n\n // If the search was expanded, and then the screen resized so that the\n // expansion is no longer necessary. So we implicitly minimize it.\n useEffect(() => {\n if (!responsiveState?.hideSearch) {\n setSearchMinimized(true);\n }\n }, [responsiveState]);\n\n // If the search is expanded after clicking on the search utility, move\n // the focus to the input. Since this is a user-controlled slot, we're just\n // assuming that it contains an input, though it's a pretty safe guess.\n useEffect(() => {\n if (isSearchExpanded) {\n mainRef?.current?.querySelector<HTMLInputElement>(`.${styles.search} input`)?.focus();\n }\n }, [isSearchExpanded, mainRef]);\n\n const mergedRef = useMergeRefs(...(mainRef ? [mainRef] : []), containerQueryRef, breakpointRef);\n\n return {\n ref: mergedRef,\n virtualRef: virtualRef,\n responsiveState: responsiveState ?? responsiveStates[0],\n breakpoint: breakpoint ?? 'default',\n isSearchExpanded: !!isSearchExpanded,\n onSearchUtilityClick: () => setSearchMinimized(isSearchMinimized => !isSearchMinimized),\n };\n}\n\n/**\n * Get the width of the content box (assuming the element's box-sizing is border-box).\n */\nfunction getContentBoxWidth(element: Element): number {\n const style = getComputedStyle(element);\n return parseFloat(style.width) - parseFloat(style.paddingLeft) - parseFloat(style.paddingRight);\n}\n\n/**\n * Generates the series of responsive steps that can be performed on the header in order.\n */\nexport function generateResponsiveStateKeys(\n utilities: ReadonlyArray<TopNavigationProps.Utility>,\n canHideSearch: boolean,\n canHideTitle: boolean\n): ReadonlyArray<ResponsiveState> {\n const states: ResponsiveState[] = [{}];\n if (utilities.some(utility => utility.text)) {\n states.push({ hideUtilityText: true });\n }\n if (canHideSearch) {\n states.push({\n hideUtilityText: true,\n hideSearch: true,\n });\n }\n const hiddenUtilties = [];\n for (let i = 0; i < utilities.length; i++) {\n if (!utilities[i].disableUtilityCollapse) {\n hiddenUtilties.push(i);\n states.push({\n hideUtilityText: true,\n hideSearch: canHideSearch || undefined,\n hideUtilities: hiddenUtilties.length > 0 ? hiddenUtilties.slice() : undefined,\n });\n }\n }\n if (canHideTitle) {\n states.push({\n hideUtilityText: true,\n hideSearch: canHideSearch || undefined,\n hideUtilities: hiddenUtilties.length > 0 ? hiddenUtilties.slice() : undefined,\n hideTitle: true,\n });\n }\n return states;\n}\n\n/**\n * Determines the best responsive state configuration of the top navigation, based on the given list of possible responsive states\n * and the current sizes of all elements inside the navigation bar.\n */\nexport function determineBestResponsiveState(\n possibleStates: ReadonlyArray<ResponsiveState>,\n sizes: TopNavigationSizeConfiguration\n): ResponsiveState {\n const {\n hasSearch,\n availableWidth,\n utilitiesLeftPadding,\n fullIdentityWidth,\n titleWidth,\n searchSlotWidth,\n searchUtilityWidth,\n utilityWithLabelWidths,\n utilityWithoutLabelWidths,\n menuTriggerUtilityWidth,\n } = sizes;\n // Iterate through each state and calculate its expected required width.\n for (const state of possibleStates) {\n const searchWidth = hasSearch ? (state.hideSearch ? searchUtilityWidth : searchSlotWidth) : 0;\n const utilitiesWidth: number = (state.hideUtilityText ? utilityWithoutLabelWidths : utilityWithLabelWidths)\n .filter((_width, i) => !state.hideUtilities || state.hideUtilities.indexOf(i) === -1)\n .reduce((sum, width) => sum + width, 0);\n const menuTriggerWidth = state.hideUtilities ? menuTriggerUtilityWidth : 0;\n const identityWidth = state.hideTitle ? fullIdentityWidth - titleWidth : fullIdentityWidth;\n const expectedInnerWidth = identityWidth + searchWidth + utilitiesLeftPadding + utilitiesWidth + menuTriggerWidth;\n if (expectedInnerWidth <= availableWidth - RESPONSIVENESS_BUFFER) {\n return state;\n }\n }\n\n // If nothing matches, pick the smallest possible state.\n return possibleStates[possibleStates.length - 1];\n}\n"]}
|
|
1
|
+
{"version":3,"file":"use-top-navigation.js","sourceRoot":"lib/default/","sources":["top-navigation/1.0-beta/use-top-navigation.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useEffect, useMemo, useRef, useState } from 'react';\nimport { useMergeRefs } from '../../internal/hooks/use-merge-refs';\n\nimport { useContainerBreakpoints } from '../../internal/hooks/container-queries';\nimport { TopNavigationProps } from './interfaces';\nimport styles from './styles.css.js';\nimport { useContainerQuery } from '@cloudscape-design/component-toolkit';\n\nexport interface UseTopNavigationParams {\n __internalRootRef?: React.MutableRefObject<HTMLElement> | null;\n identity: TopNavigationProps['identity'];\n search: TopNavigationProps['search'];\n utilities: NonNullable<TopNavigationProps['utilities']>;\n}\n\nexport interface ResponsiveState {\n hideUtilityText?: boolean;\n hideSearch?: boolean;\n hideUtilities?: number[];\n hideTitle?: boolean;\n}\n\nexport interface TopNavigationSizeConfiguration {\n hasSearch: boolean;\n availableWidth: number;\n utilitiesLeftPadding: number;\n fullIdentityWidth: number;\n titleWidth: number;\n searchSlotWidth: number;\n searchUtilityWidth: number;\n utilityWithLabelWidths: number[];\n utilityWithoutLabelWidths: number[];\n menuTriggerUtilityWidth: number;\n}\n\nexport interface UseTopNavigation {\n ref: React.Ref<HTMLDivElement>;\n virtualRef: React.Ref<HTMLDivElement>;\n\n responsiveState: ResponsiveState;\n breakpoint: 'default' | 'xxs' | 's';\n isSearchExpanded: boolean;\n onSearchUtilityClick: () => void;\n}\n\n// A small buffer to make calculations more lenient against browser lag or padding adjustments.\nconst RESPONSIVENESS_BUFFER = 20;\n\nexport function useTopNavigation({\n __internalRootRef: mainRef,\n identity,\n search,\n utilities,\n}: UseTopNavigationParams): UseTopNavigation {\n // Refs and breakpoints\n const virtualRef = useRef<HTMLDivElement | null>(null);\n const [breakpoint, breakpointRef] = useContainerBreakpoints(['xxs', 's']);\n\n // Responsiveness state\n // The component works by calculating the possible resize states that it can\n // be in, and having a state variable to track which state we're currently in.\n const hasSearch = !!search;\n const hasTitleWithLogo = identity && !!identity.logo && !!identity.title;\n const responsiveStates = useMemo<ReadonlyArray<ResponsiveState>>(() => {\n return generateResponsiveStateKeys(utilities, hasSearch, hasTitleWithLogo);\n }, [utilities, hasSearch, hasTitleWithLogo]);\n\n // To hide/show elements dynamically, we need to know how much space they take up,\n // even if they're not being rendered. The top navigation elements are hidden/resized\n // based on the available size or if a search bar is open, and they need to be available\n // for calculations so we know where to toggle them. So we render a second, more stable\n // top-nav off screen to do these calculations against.\n //\n // We can't \"affix\" these values to pixels because they can depend on spacing tokens.\n // It's easier to render all of these utilities separately rather than figuring out\n // spacing token values, icon sizes, text widths, etc.\n //\n // TODO: Some of these values can be memoized to improve perf.\n const [responsiveState, containerQueryRef] = useContainerQuery<ResponsiveState>(() => {\n if (!mainRef?.current || !virtualRef.current) {\n return responsiveStates[0];\n }\n\n const sizeConfiguration = {\n hasSearch: !!search,\n\n // Get widths and paddings from the visible top navigation\n availableWidth: getContentBoxWidth(mainRef.current.querySelector(`.${styles['padding-box']}`)!),\n utilitiesLeftPadding: parseFloat(\n getComputedStyle(virtualRef.current.querySelector(`.${styles.utilities}`)!).paddingLeft\n ),\n\n // Get widths from the hidden top navigation\n fullIdentityWidth: virtualRef.current.querySelector(`.${styles.identity}`)!.getBoundingClientRect().width,\n titleWidth: virtualRef.current.querySelector(`.${styles.title}`)?.getBoundingClientRect().width ?? 0,\n searchSlotWidth: virtualRef.current.querySelector(`.${styles.search}`)?.getBoundingClientRect().width ?? 0,\n searchUtilityWidth: virtualRef.current.querySelector('[data-utility-special=\"search\"]')!.getBoundingClientRect()\n .width,\n utilityWithLabelWidths: Array.prototype.slice\n .call(virtualRef.current.querySelectorAll(`[data-utility-hide=\"false\"]`))\n .map((element: Element) => element.getBoundingClientRect().width),\n utilityWithoutLabelWidths: Array.prototype.slice\n .call(virtualRef.current.querySelectorAll(`[data-utility-hide=\"true\"]`))\n .map((element: Element) => element.getBoundingClientRect().width),\n menuTriggerUtilityWidth: virtualRef.current\n .querySelector('[data-utility-special=\"menu-trigger\"]')!\n .getBoundingClientRect().width,\n };\n\n return determineBestResponsiveState(responsiveStates, sizeConfiguration);\n }, [mainRef, search, responsiveStates]);\n\n // Search slot expansion on small screens\n const [isSearchMinimized, setSearchMinimized] = useState(true);\n const isSearchExpanded = !isSearchMinimized && breakpoint !== 's' && hasSearch && responsiveState?.hideSearch;\n\n // If the search was expanded, and then the screen resized so that the\n // expansion is no longer necessary. So we implicitly minimize it.\n useEffect(() => {\n if (!responsiveState?.hideSearch) {\n setSearchMinimized(true);\n }\n }, [responsiveState]);\n\n // If the search is expanded after clicking on the search utility, move\n // the focus to the input. Since this is a user-controlled slot, we're just\n // assuming that it contains an input, though it's a pretty safe guess.\n useEffect(() => {\n if (isSearchExpanded) {\n mainRef?.current?.querySelector<HTMLInputElement>(`.${styles.search} input`)?.focus();\n }\n }, [isSearchExpanded, mainRef]);\n\n const mergedRef = useMergeRefs(...(mainRef ? [mainRef] : []), containerQueryRef, breakpointRef);\n\n return {\n ref: mergedRef,\n virtualRef: virtualRef,\n responsiveState: responsiveState ?? responsiveStates[0],\n breakpoint: breakpoint ?? 'default',\n isSearchExpanded: !!isSearchExpanded,\n onSearchUtilityClick: () => setSearchMinimized(isSearchMinimized => !isSearchMinimized),\n };\n}\n\n/**\n * Get the width of the content box (assuming the element's box-sizing is border-box).\n */\nfunction getContentBoxWidth(element: Element): number {\n const style = getComputedStyle(element);\n return parseFloat(style.width) - parseFloat(style.paddingLeft) - parseFloat(style.paddingRight);\n}\n\n/**\n * Generates the series of responsive steps that can be performed on the header in order.\n */\nexport function generateResponsiveStateKeys(\n utilities: ReadonlyArray<TopNavigationProps.Utility>,\n canHideSearch: boolean,\n canHideTitle: boolean\n): ReadonlyArray<ResponsiveState> {\n const states: ResponsiveState[] = [{}];\n if (utilities.some(utility => utility.text)) {\n states.push({ hideUtilityText: true });\n }\n if (canHideSearch) {\n states.push({\n hideUtilityText: true,\n hideSearch: true,\n });\n }\n const hiddenUtilties = [];\n for (let i = 0; i < utilities.length; i++) {\n if (!utilities[i].disableUtilityCollapse) {\n hiddenUtilties.push(i);\n states.push({\n hideUtilityText: true,\n hideSearch: canHideSearch || undefined,\n hideUtilities: hiddenUtilties.length > 0 ? hiddenUtilties.slice() : undefined,\n });\n }\n }\n if (canHideTitle) {\n states.push({\n hideUtilityText: true,\n hideSearch: canHideSearch || undefined,\n hideUtilities: hiddenUtilties.length > 0 ? hiddenUtilties.slice() : undefined,\n hideTitle: true,\n });\n }\n return states;\n}\n\n/**\n * Determines the best responsive state configuration of the top navigation, based on the given list of possible responsive states\n * and the current sizes of all elements inside the navigation bar.\n */\nexport function determineBestResponsiveState(\n possibleStates: ReadonlyArray<ResponsiveState>,\n sizes: TopNavigationSizeConfiguration\n): ResponsiveState {\n const {\n hasSearch,\n availableWidth,\n utilitiesLeftPadding,\n fullIdentityWidth,\n titleWidth,\n searchSlotWidth,\n searchUtilityWidth,\n utilityWithLabelWidths,\n utilityWithoutLabelWidths,\n menuTriggerUtilityWidth,\n } = sizes;\n // Iterate through each state and calculate its expected required width.\n for (const state of possibleStates) {\n const searchWidth = hasSearch ? (state.hideSearch ? searchUtilityWidth : searchSlotWidth) : 0;\n const utilitiesWidth: number = (state.hideUtilityText ? utilityWithoutLabelWidths : utilityWithLabelWidths)\n .filter((_width, i) => !state.hideUtilities || state.hideUtilities.indexOf(i) === -1)\n .reduce((sum, width) => sum + width, 0);\n const menuTriggerWidth = state.hideUtilities ? menuTriggerUtilityWidth : 0;\n const identityWidth = state.hideTitle ? fullIdentityWidth - titleWidth : fullIdentityWidth;\n const expectedInnerWidth = identityWidth + searchWidth + utilitiesLeftPadding + utilitiesWidth + menuTriggerWidth;\n if (expectedInnerWidth <= availableWidth - RESPONSIVENESS_BUFFER) {\n return state;\n }\n }\n\n // If nothing matches, pick the smallest possible state.\n return possibleStates[possibleStates.length - 1];\n}\n"]}
|