@cloudscape-design/components-themeable 3.0.373 → 3.0.375
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/template/alert/actions-wrapper/styles.css.js +1 -1
- package/lib/internal/template/alert/actions-wrapper/styles.scoped.css +3 -3
- package/lib/internal/template/alert/actions-wrapper/styles.selectors.js +1 -1
- package/lib/internal/template/alert/styles.css.js +25 -25
- package/lib/internal/template/alert/styles.scoped.css +81 -81
- package/lib/internal/template/alert/styles.selectors.js +25 -25
- package/lib/internal/template/annotation-context/annotation/styles.css.js +24 -24
- package/lib/internal/template/annotation-context/annotation/styles.scoped.css +46 -46
- package/lib/internal/template/annotation-context/annotation/styles.selectors.js +24 -24
- package/lib/internal/template/app-layout/content-wrapper/styles.css.js +3 -3
- package/lib/internal/template/app-layout/content-wrapper/styles.scoped.css +10 -10
- package/lib/internal/template/app-layout/content-wrapper/styles.selectors.js +3 -3
- package/lib/internal/template/app-layout/drawer/styles.css.js +10 -10
- package/lib/internal/template/app-layout/drawer/styles.scoped.css +28 -28
- package/lib/internal/template/app-layout/drawer/styles.selectors.js +10 -10
- package/lib/internal/template/app-layout/index.d.ts.map +1 -1
- package/lib/internal/template/app-layout/index.js +4 -5
- package/lib/internal/template/app-layout/index.js.map +1 -1
- package/lib/internal/template/app-layout/mobile-toolbar/styles.css.js +8 -8
- package/lib/internal/template/app-layout/mobile-toolbar/styles.scoped.css +18 -18
- package/lib/internal/template/app-layout/mobile-toolbar/styles.selectors.js +8 -8
- package/lib/internal/template/app-layout/notifications/styles.css.js +3 -3
- package/lib/internal/template/app-layout/notifications/styles.scoped.css +7 -7
- package/lib/internal/template/app-layout/notifications/styles.selectors.js +3 -3
- package/lib/internal/template/app-layout/styles.css.js +17 -17
- package/lib/internal/template/app-layout/styles.scoped.css +30 -30
- package/lib/internal/template/app-layout/styles.selectors.js +17 -17
- package/lib/internal/template/app-layout/toggles/styles.css.js +2 -2
- package/lib/internal/template/app-layout/toggles/styles.scoped.css +16 -16
- package/lib/internal/template/app-layout/toggles/styles.selectors.js +2 -2
- package/lib/internal/template/app-layout/utils/use-content-width.js +1 -1
- package/lib/internal/template/app-layout/utils/use-content-width.js.map +1 -1
- package/lib/internal/template/app-layout/utils/use-observed-element.js +1 -1
- package/lib/internal/template/app-layout/utils/use-observed-element.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 +267 -267
- package/lib/internal/template/app-layout/visual-refresh/styles.selectors.js +69 -69
- package/lib/internal/template/area-chart/model/use-chart-model.d.ts.map +1 -1
- package/lib/internal/template/area-chart/model/use-chart-model.js +2 -2
- package/lib/internal/template/area-chart/model/use-chart-model.js.map +1 -1
- package/lib/internal/template/area-chart/styles.css.js +6 -6
- package/lib/internal/template/area-chart/styles.scoped.css +16 -16
- package/lib/internal/template/area-chart/styles.selectors.js +6 -6
- package/lib/internal/template/attribute-editor/styles.css.js +14 -14
- package/lib/internal/template/attribute-editor/styles.scoped.css +43 -43
- package/lib/internal/template/attribute-editor/styles.selectors.js +14 -14
- package/lib/internal/template/badge/styles.css.js +5 -5
- package/lib/internal/template/badge/styles.scoped.css +20 -20
- package/lib/internal/template/badge/styles.selectors.js +5 -5
- package/lib/internal/template/box/styles.css.js +190 -190
- package/lib/internal/template/box/styles.scoped.css +420 -420
- package/lib/internal/template/box/styles.selectors.js +190 -190
- package/lib/internal/template/breadcrumb-group/item/styles.css.js +9 -9
- package/lib/internal/template/breadcrumb-group/item/styles.scoped.css +28 -28
- package/lib/internal/template/breadcrumb-group/item/styles.selectors.js +9 -9
- package/lib/internal/template/breadcrumb-group/styles.css.js +7 -7
- package/lib/internal/template/breadcrumb-group/styles.scoped.css +22 -22
- package/lib/internal/template/breadcrumb-group/styles.selectors.js +7 -7
- package/lib/internal/template/button/styles.css.js +20 -20
- package/lib/internal/template/button/styles.scoped.css +472 -472
- package/lib/internal/template/button/styles.selectors.js +20 -20
- package/lib/internal/template/button-dropdown/category-elements/styles.css.js +13 -13
- package/lib/internal/template/button-dropdown/category-elements/styles.scoped.css +50 -50
- package/lib/internal/template/button-dropdown/category-elements/styles.selectors.js +13 -13
- package/lib/internal/template/button-dropdown/item-element/styles.css.js +15 -15
- package/lib/internal/template/button-dropdown/item-element/styles.scoped.css +42 -42
- package/lib/internal/template/button-dropdown/item-element/styles.selectors.js +15 -15
- 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 +10 -10
- package/lib/internal/template/button-dropdown/mobile-expandable-group/styles.selectors.js +5 -5
- package/lib/internal/template/button-dropdown/styles.css.js +14 -14
- package/lib/internal/template/button-dropdown/styles.scoped.css +32 -32
- package/lib/internal/template/button-dropdown/styles.selectors.js +14 -14
- package/lib/internal/template/calendar/styles.css.js +18 -18
- package/lib/internal/template/calendar/styles.scoped.css +89 -89
- package/lib/internal/template/calendar/styles.selectors.js +18 -18
- package/lib/internal/template/cards/styles.css.js +38 -38
- package/lib/internal/template/cards/styles.scoped.css +99 -99
- 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 +16 -16
- package/lib/internal/template/checkbox/styles.selectors.js +3 -3
- package/lib/internal/template/code-editor/listeners.js +2 -2
- package/lib/internal/template/code-editor/listeners.js.map +1 -1
- package/lib/internal/template/code-editor/resizable-box/index.js +2 -2
- package/lib/internal/template/code-editor/resizable-box/index.js.map +1 -1
- package/lib/internal/template/code-editor/resizable-box/styles.css.js +3 -3
- package/lib/internal/template/code-editor/resizable-box/styles.scoped.css +11 -11
- package/lib/internal/template/code-editor/resizable-box/styles.selectors.js +3 -3
- package/lib/internal/template/code-editor/styles.css.js +32 -32
- package/lib/internal/template/code-editor/styles.scoped.css +270 -270
- 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 +42 -42
- 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 +81 -81
- package/lib/internal/template/collection-preferences/styles.selectors.js +37 -37
- package/lib/internal/template/column-layout/flexible-column-layout/styles.css.js +5 -5
- package/lib/internal/template/column-layout/flexible-column-layout/styles.scoped.css +8 -8
- package/lib/internal/template/column-layout/flexible-column-layout/styles.selectors.js +5 -5
- package/lib/internal/template/column-layout/styles.css.js +13 -13
- package/lib/internal/template/column-layout/styles.scoped.css +55 -55
- 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 +94 -94
- package/lib/internal/template/container/styles.selectors.js +28 -28
- package/lib/internal/template/content-layout/styles.css.js +7 -7
- package/lib/internal/template/content-layout/styles.scoped.css +17 -17
- package/lib/internal/template/content-layout/styles.selectors.js +7 -7
- package/lib/internal/template/date-picker/styles.css.js +7 -7
- package/lib/internal/template/date-picker/styles.scoped.css +16 -16
- package/lib/internal/template/date-picker/styles.selectors.js +7 -7
- package/lib/internal/template/date-range-picker/calendar/grids/styles.css.js +25 -25
- package/lib/internal/template/date-range-picker/calendar/grids/styles.scoped.css +95 -95
- package/lib/internal/template/date-range-picker/calendar/grids/styles.selectors.js +25 -25
- package/lib/internal/template/date-range-picker/relative-range/styles.css.js +9 -9
- package/lib/internal/template/date-range-picker/relative-range/styles.scoped.css +16 -16
- package/lib/internal/template/date-range-picker/relative-range/styles.selectors.js +9 -9
- package/lib/internal/template/date-range-picker/styles.css.js +38 -38
- package/lib/internal/template/date-range-picker/styles.scoped.css +76 -76
- 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 +108 -108
- package/lib/internal/template/expandable-section/styles.selectors.js +29 -29
- package/lib/internal/template/file-upload/dropzone/styles.css.js +2 -2
- package/lib/internal/template/file-upload/dropzone/styles.scoped.css +9 -9
- package/lib/internal/template/file-upload/dropzone/styles.selectors.js +2 -2
- package/lib/internal/template/file-upload/file-input/styles.css.js +4 -4
- package/lib/internal/template/file-upload/file-input/styles.scoped.css +14 -14
- package/lib/internal/template/file-upload/file-input/styles.selectors.js +4 -4
- package/lib/internal/template/file-upload/file-option/styles.css.js +7 -7
- package/lib/internal/template/file-upload/file-option/styles.scoped.css +10 -10
- package/lib/internal/template/file-upload/file-option/styles.selectors.js +7 -7
- package/lib/internal/template/file-upload/styles.css.js +2 -2
- package/lib/internal/template/file-upload/styles.scoped.css +4 -4
- package/lib/internal/template/file-upload/styles.selectors.js +2 -2
- package/lib/internal/template/flashbar/styles.css.js +47 -47
- package/lib/internal/template/flashbar/styles.scoped.css +249 -249
- package/lib/internal/template/flashbar/styles.selectors.js +47 -47
- package/lib/internal/template/form/styles.css.js +9 -9
- package/lib/internal/template/form/styles.scoped.css +20 -20
- package/lib/internal/template/form/styles.selectors.js +9 -9
- package/lib/internal/template/form-field/styles.css.js +19 -19
- package/lib/internal/template/form-field/styles.scoped.css +52 -52
- 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 +60 -60
- package/lib/internal/template/grid/styles.selectors.js +53 -53
- package/lib/internal/template/header/styles.css.js +33 -33
- package/lib/internal/template/header/styles.scoped.css +114 -114
- package/lib/internal/template/header/styles.selectors.js +33 -33
- package/lib/internal/template/help-panel/styles.css.js +4 -4
- package/lib/internal/template/help-panel/styles.scoped.css +167 -167
- package/lib/internal/template/help-panel/styles.selectors.js +4 -4
- package/lib/internal/template/hotspot/styles.css.js +7 -7
- package/lib/internal/template/hotspot/styles.scoped.css +10 -10
- package/lib/internal/template/hotspot/styles.selectors.js +7 -7
- package/lib/internal/template/icon/styles.css.js +21 -21
- package/lib/internal/template/icon/styles.scoped.css +81 -81
- 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 +73 -73
- package/lib/internal/template/input/styles.selectors.js +12 -12
- package/lib/internal/template/internal/base-component/styles.scoped.css +3177 -3105
- package/lib/internal/template/internal/components/abstract-switch/styles.css.js +13 -13
- package/lib/internal/template/internal/components/abstract-switch/styles.scoped.css +26 -26
- package/lib/internal/template/internal/components/abstract-switch/styles.selectors.js +13 -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 +63 -63
- package/lib/internal/template/internal/components/button-trigger/styles.selectors.js +9 -9
- package/lib/internal/template/internal/components/cartesian-chart/styles.css.js +27 -27
- package/lib/internal/template/internal/components/cartesian-chart/styles.scoped.css +41 -41
- package/lib/internal/template/internal/components/cartesian-chart/styles.selectors.js +27 -27
- package/lib/internal/template/internal/components/chart-filter/styles.css.js +3 -3
- package/lib/internal/template/internal/components/chart-filter/styles.scoped.css +7 -7
- 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 +23 -23
- package/lib/internal/template/internal/components/chart-legend/styles.selectors.js +6 -6
- package/lib/internal/template/internal/components/chart-plot/styles.css.js +5 -5
- package/lib/internal/template/internal/components/chart-plot/styles.scoped.css +6 -6
- package/lib/internal/template/internal/components/chart-plot/styles.selectors.js +5 -5
- package/lib/internal/template/internal/components/chart-popover/styles.css.js +3 -3
- package/lib/internal/template/internal/components/chart-popover/styles.scoped.css +9 -9
- 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 +20 -20
- 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 +14 -14
- package/lib/internal/template/internal/components/chart-series-marker/styles.selectors.js +5 -5
- package/lib/internal/template/internal/components/chart-status-container/styles.css.js +2 -2
- package/lib/internal/template/internal/components/chart-status-container/styles.scoped.css +3 -3
- package/lib/internal/template/internal/components/chart-status-container/styles.selectors.js +2 -2
- package/lib/internal/template/internal/components/chart-wrapper/styles.css.js +9 -9
- package/lib/internal/template/internal/components/chart-wrapper/styles.scoped.css +15 -15
- package/lib/internal/template/internal/components/chart-wrapper/styles.selectors.js +9 -9
- package/lib/internal/template/internal/components/checkbox-icon/styles.css.js +7 -7
- package/lib/internal/template/internal/components/checkbox-icon/styles.scoped.css +18 -18
- package/lib/internal/template/internal/components/checkbox-icon/styles.selectors.js +7 -7
- package/lib/internal/template/internal/components/dark-ribbon/index.js +2 -2
- package/lib/internal/template/internal/components/dark-ribbon/index.js.map +1 -1
- package/lib/internal/template/internal/components/dark-ribbon/styles.css.js +2 -2
- package/lib/internal/template/internal/components/dark-ribbon/styles.scoped.css +4 -4
- package/lib/internal/template/internal/components/dark-ribbon/styles.selectors.js +2 -2
- package/lib/internal/template/internal/components/dropdown/styles.css.js +21 -21
- package/lib/internal/template/internal/components/dropdown/styles.scoped.css +52 -52
- package/lib/internal/template/internal/components/dropdown/styles.selectors.js +21 -21
- package/lib/internal/template/internal/components/dropdown-footer/styles.css.js +3 -3
- package/lib/internal/template/internal/components/dropdown-footer/styles.scoped.css +9 -9
- package/lib/internal/template/internal/components/dropdown-footer/styles.selectors.js +3 -3
- package/lib/internal/template/internal/components/dropdown-status/styles.css.js +2 -2
- package/lib/internal/template/internal/components/dropdown-status/styles.scoped.css +8 -8
- package/lib/internal/template/internal/components/dropdown-status/styles.selectors.js +2 -2
- package/lib/internal/template/internal/components/filtering-token/styles.css.js +7 -7
- package/lib/internal/template/internal/components/filtering-token/styles.scoped.css +34 -34
- package/lib/internal/template/internal/components/filtering-token/styles.selectors.js +7 -7
- package/lib/internal/template/internal/components/handle/styles.css.js +2 -2
- package/lib/internal/template/internal/components/handle/styles.scoped.css +12 -12
- package/lib/internal/template/internal/components/handle/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 +32 -32
- 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 +47 -47
- package/lib/internal/template/internal/components/option/styles.selectors.js +17 -17
- package/lib/internal/template/internal/components/options-list/index.d.ts.map +1 -1
- package/lib/internal/template/internal/components/options-list/index.js +2 -2
- package/lib/internal/template/internal/components/options-list/index.js.map +1 -1
- package/lib/internal/template/internal/components/options-list/styles.css.js +2 -2
- package/lib/internal/template/internal/components/options-list/styles.scoped.css +7 -7
- 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 +70 -70
- 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 +40 -40
- 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/environment.json +1 -1
- package/lib/internal/template/internal/generated/styles/tokens.js +1 -1
- package/lib/internal/template/internal/generated/theming/index.cjs +25 -23
- package/lib/internal/template/internal/generated/theming/index.js +25 -23
- package/lib/internal/template/internal/hooks/container-queries/index.d.ts +0 -1
- package/lib/internal/template/internal/hooks/container-queries/index.d.ts.map +1 -1
- package/lib/internal/template/internal/hooks/container-queries/index.js +0 -1
- package/lib/internal/template/internal/hooks/container-queries/index.js.map +1 -1
- package/lib/internal/template/internal/hooks/container-queries/use-height-measure.js +1 -1
- package/lib/internal/template/internal/hooks/container-queries/use-height-measure.js.map +1 -1
- package/lib/internal/template/internal/hooks/use-dynamic-overlap/index.js +1 -1
- package/lib/internal/template/internal/hooks/use-dynamic-overlap/index.js.map +1 -1
- package/lib/internal/template/internal/hooks/use-mobile/index.js +1 -1
- package/lib/internal/template/internal/hooks/use-mobile/index.js.map +1 -1
- package/lib/internal/template/internal/hooks/use-mouse-down-target.js +1 -1
- package/lib/internal/template/internal/hooks/use-mouse-down-target.js.map +1 -1
- package/lib/internal/template/internal/hooks/use-mutation-observer/index.d.ts.map +1 -1
- package/lib/internal/template/internal/hooks/use-mutation-observer/index.js +2 -3
- package/lib/internal/template/internal/hooks/use-mutation-observer/index.js.map +1 -1
- package/lib/internal/template/link/styles.css.js +20 -20
- package/lib/internal/template/link/styles.scoped.css +158 -158
- package/lib/internal/template/link/styles.selectors.js +20 -20
- package/lib/internal/template/mixed-line-bar-chart/styles.css.js +11 -11
- package/lib/internal/template/mixed-line-bar-chart/styles.scoped.css +24 -24
- package/lib/internal/template/mixed-line-bar-chart/styles.selectors.js +11 -11
- package/lib/internal/template/modal/styles.css.js +23 -23
- package/lib/internal/template/modal/styles.scoped.css +67 -67
- 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 +5 -5
- 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 +47 -47
- package/lib/internal/template/pagination/styles.selectors.js +9 -9
- package/lib/internal/template/pie-chart/labels.js +1 -1
- package/lib/internal/template/pie-chart/labels.js.map +1 -1
- package/lib/internal/template/pie-chart/styles.css.js +27 -27
- package/lib/internal/template/pie-chart/styles.scoped.css +63 -63
- package/lib/internal/template/pie-chart/styles.selectors.js +27 -27
- package/lib/internal/template/popover/container.d.ts.map +1 -1
- package/lib/internal/template/popover/container.js +1 -1
- package/lib/internal/template/popover/container.js.map +1 -1
- package/lib/internal/template/popover/styles.css.js +50 -50
- package/lib/internal/template/popover/styles.scoped.css +104 -104
- 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 +58 -58
- package/lib/internal/template/progress-bar/styles.selectors.js +18 -18
- package/lib/internal/template/property-filter/styles.css.js +29 -29
- package/lib/internal/template/property-filter/styles.scoped.css +52 -52
- package/lib/internal/template/property-filter/styles.selectors.js +29 -29
- package/lib/internal/template/radio-group/styles.css.js +9 -9
- package/lib/internal/template/radio-group/styles.scoped.css +37 -37
- 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 +12 -12
- package/lib/internal/template/s3-resource-selector/s3-in-context/styles.selectors.js +7 -7
- package/lib/internal/template/s3-resource-selector/s3-in-context/use-versions-fetch.d.ts.map +1 -1
- package/lib/internal/template/s3-resource-selector/s3-in-context/use-versions-fetch.js +2 -2
- package/lib/internal/template/s3-resource-selector/s3-in-context/use-versions-fetch.js.map +1 -1
- package/lib/internal/template/s3-resource-selector/s3-modal/basic-table.d.ts.map +1 -1
- package/lib/internal/template/s3-resource-selector/s3-modal/basic-table.js +2 -2
- package/lib/internal/template/s3-resource-selector/s3-modal/basic-table.js.map +1 -1
- package/lib/internal/template/segmented-control/styles.css.js +14 -14
- package/lib/internal/template/segmented-control/styles.scoped.css +78 -78
- package/lib/internal/template/segmented-control/styles.selectors.js +14 -14
- package/lib/internal/template/select/parts/styles.css.js +9 -9
- package/lib/internal/template/select/parts/styles.scoped.css +17 -17
- package/lib/internal/template/select/parts/styles.selectors.js +9 -9
- package/lib/internal/template/select/styles.css.js +1 -1
- package/lib/internal/template/select/styles.scoped.css +5 -5
- package/lib/internal/template/select/styles.selectors.js +1 -1
- package/lib/internal/template/side-navigation/styles.css.js +28 -28
- package/lib/internal/template/side-navigation/styles.scoped.css +92 -92
- package/lib/internal/template/side-navigation/styles.selectors.js +28 -28
- package/lib/internal/template/space-between/styles.css.js +23 -23
- package/lib/internal/template/space-between/styles.scoped.css +40 -40
- package/lib/internal/template/space-between/styles.selectors.js +23 -23
- package/lib/internal/template/spinner/styles.css.js +13 -13
- package/lib/internal/template/spinner/styles.scoped.css +35 -35
- package/lib/internal/template/spinner/styles.selectors.js +13 -13
- package/lib/internal/template/split-panel/bottom.js +1 -1
- package/lib/internal/template/split-panel/bottom.js.map +1 -1
- package/lib/internal/template/split-panel/styles.css.js +56 -56
- package/lib/internal/template/split-panel/styles.scoped.css +146 -146
- package/lib/internal/template/split-panel/styles.selectors.js +56 -56
- package/lib/internal/template/status-indicator/styles.css.js +22 -22
- package/lib/internal/template/status-indicator/styles.scoped.css +46 -46
- package/lib/internal/template/status-indicator/styles.selectors.js +22 -22
- package/lib/internal/template/table/body-cell/click-away.js +2 -2
- package/lib/internal/template/table/body-cell/click-away.js.map +1 -1
- package/lib/internal/template/table/body-cell/styles.css.js +28 -28
- package/lib/internal/template/table/body-cell/styles.scoped.css +155 -155
- package/lib/internal/template/table/body-cell/styles.selectors.js +28 -28
- package/lib/internal/template/table/header-cell/styles.css.js +24 -24
- package/lib/internal/template/table/header-cell/styles.scoped.css +93 -93
- package/lib/internal/template/table/header-cell/styles.selectors.js +24 -24
- package/lib/internal/template/table/resizer/index.js +3 -3
- package/lib/internal/template/table/resizer/index.js.map +1 -1
- package/lib/internal/template/table/resizer/styles.css.js +6 -6
- package/lib/internal/template/table/resizer/styles.scoped.css +27 -27
- package/lib/internal/template/table/resizer/styles.selectors.js +6 -6
- package/lib/internal/template/table/selection-control/styles.css.js +3 -3
- package/lib/internal/template/table/selection-control/styles.scoped.css +4 -4
- package/lib/internal/template/table/selection-control/styles.selectors.js +3 -3
- package/lib/internal/template/table/sticky-columns/use-sticky-columns.d.ts.map +1 -1
- package/lib/internal/template/table/sticky-columns/use-sticky-columns.js +2 -3
- package/lib/internal/template/table/sticky-columns/use-sticky-columns.js.map +1 -1
- package/lib/internal/template/table/sticky-scrollbar/styles.css.js +6 -6
- package/lib/internal/template/table/sticky-scrollbar/styles.scoped.css +10 -10
- package/lib/internal/template/table/sticky-scrollbar/styles.selectors.js +6 -6
- package/lib/internal/template/table/styles.css.js +34 -34
- package/lib/internal/template/table/styles.scoped.css +84 -84
- package/lib/internal/template/table/styles.selectors.js +34 -34
- package/lib/internal/template/table/use-sticky-header.js +1 -1
- package/lib/internal/template/table/use-sticky-header.js.map +1 -1
- package/lib/internal/template/tabs/styles.css.js +21 -21
- package/lib/internal/template/tabs/styles.scoped.css +86 -86
- package/lib/internal/template/tabs/styles.selectors.js +21 -21
- package/lib/internal/template/tag-editor/index.d.ts.map +1 -1
- package/lib/internal/template/tag-editor/index.js +6 -6
- package/lib/internal/template/tag-editor/index.js.map +1 -1
- package/lib/internal/template/tag-editor/styles.css.js +3 -3
- package/lib/internal/template/tag-editor/styles.scoped.css +24 -24
- package/lib/internal/template/tag-editor/styles.selectors.js +3 -3
- package/lib/internal/template/text-content/styles.css.js +1 -1
- package/lib/internal/template/text-content/styles.scoped.css +120 -120
- 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 +10 -10
- 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 +40 -40
- package/lib/internal/template/textarea/styles.selectors.js +4 -4
- package/lib/internal/template/tiles/styles.css.js +29 -29
- package/lib/internal/template/tiles/styles.scoped.css +128 -128
- package/lib/internal/template/tiles/styles.selectors.js +29 -29
- package/lib/internal/template/toggle/styles.css.js +8 -8
- package/lib/internal/template/toggle/styles.scoped.css +27 -27
- 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 +42 -42
- 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 +84 -84
- package/lib/internal/template/top-navigation/1.0-beta/styles.selectors.js +25 -25
- package/lib/internal/template/top-navigation/styles.css.js +47 -47
- package/lib/internal/template/top-navigation/styles.scoped.css +148 -148
- package/lib/internal/template/top-navigation/styles.selectors.js +47 -47
- 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 +43 -43
- 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 +50 -50
- 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 +6 -6
- 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 +124 -124
- package/lib/internal/template/wizard/styles.selectors.js +31 -31
- package/package.json +1 -1
- package/lib/internal/template/internal/hooks/container-queries/use-resize-observer.d.ts +0 -21
- package/lib/internal/template/internal/hooks/container-queries/use-resize-observer.d.ts.map +0 -1
- package/lib/internal/template/internal/hooks/container-queries/use-resize-observer.js +0 -54
- package/lib/internal/template/internal/hooks/container-queries/use-resize-observer.js.map +0 -1
- package/lib/internal/template/internal/hooks/container-queries/utils.d.ts +0 -4
- package/lib/internal/template/internal/hooks/container-queries/utils.d.ts.map +0 -1
- package/lib/internal/template/internal/hooks/container-queries/utils.js +0 -10
- package/lib/internal/template/internal/hooks/container-queries/utils.js.map +0 -1
- package/lib/internal/template/internal/hooks/use-singleton-handler/index.d.ts +0 -11
- package/lib/internal/template/internal/hooks/use-singleton-handler/index.d.ts.map +0 -1
- package/lib/internal/template/internal/hooks/use-singleton-handler/index.js +0 -45
- package/lib/internal/template/internal/hooks/use-singleton-handler/index.js.map +0 -1
- package/lib/internal/template/internal/hooks/use-stable-event-handler/index.d.ts +0 -10
- package/lib/internal/template/internal/hooks/use-stable-event-handler/index.d.ts.map +0 -1
- package/lib/internal/template/internal/hooks/use-stable-event-handler/index.js +0 -19
- package/lib/internal/template/internal/hooks/use-stable-event-handler/index.js.map +0 -1
|
@@ -2,8 +2,8 @@
|
|
|
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
|
-
"label": "
|
|
7
|
-
"stud": "
|
|
5
|
+
"root": "awsui_root_1ut8b_1ox2w_93",
|
|
6
|
+
"label": "awsui_label_1ut8b_1ox2w_97",
|
|
7
|
+
"stud": "awsui_stud_1ut8b_1ox2w_111"
|
|
8
8
|
};
|
|
9
9
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-sticky-columns.d.ts","sourceRoot":"lib/default/","sources":["table/sticky-columns/use-sticky-columns.ts"],"names":[],"mappings":"AAGA,OAAO,KAAkD,MAAM,OAAO,CAAC;AACvE,OAAO,UAAU,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"use-sticky-columns.d.ts","sourceRoot":"lib/default/","sources":["table/sticky-columns/use-sticky-columns.ts"],"names":[],"mappings":"AAGA,OAAO,KAAkD,MAAM,OAAO,CAAC;AACvE,OAAO,UAAU,MAAM,8BAA8B,CAAC;AAGtD,OAAO,EAEL,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,EAEnB,MAAM,cAAc,CAAC;AAOtB,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,kBAAkB,CAAC;IAC1B,KAAK,EAAE;QACL,OAAO,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;KAC/B,CAAC;IACF,IAAI,EAAE;QACJ,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QACtC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QACxC,IAAI,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,GAAG,WAAW,KAAK,IAAI,CAAC;KACjE,CAAC;CACH;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,cAAc,EACd,kBAAkB,EAClB,iBAAiB,GAClB,EAAE,kBAAkB,GAAG,kBAAkB,CAgGzC;AAED,UAAU,wBAAwB;IAChC,aAAa,EAAE,kBAAkB,CAAC;IAClC,QAAQ,EAAE,WAAW,CAAC;IACtB,YAAY,EAAE,CAAC,MAAM,EAAE,IAAI,GAAG,sBAAsB,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClF;AAED,UAAU,gBAAgB;IACxB,GAAG,EAAE,KAAK,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B;AAED,wBAAgB,mBAAmB,CAAC,EAClC,aAAa,EACb,QAAQ,EACR,YAAY,GACb,EAAE,wBAAwB,GAAG,gBAAgB,CA4D7C;AAED,UAAU,qBAAqB;IAC7B,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,WAAW,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACxC,cAAc,EAAE,SAAS,WAAW,EAAE,CAAC;IACvC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,UAAU,CAAC,kBAAkB,CAAC;IAC5E,OAAO,CAAC,WAAW,CAIjB;IACF,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,OAAO,CAAS;;IAMjB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB;IAiBpD,OAAO,CAAC,YAAY;IAgBpB,OAAO,CAAC,kBAAkB,CAkCxB;IAEF,OAAO,CAAC,iBAAiB,CAEvB;IAEF,OAAO,CAAC,SAAS,CAuBf;CACH"}
|
|
@@ -2,9 +2,8 @@
|
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
import { useCallback, useEffect, useMemo, useRef } from 'react';
|
|
4
4
|
import AsyncStore from '../../area-chart/async-store';
|
|
5
|
-
import { useStableEventHandler } from '../../internal/hooks/use-stable-event-handler';
|
|
6
|
-
import { useResizeObserver } from '../../internal/hooks/container-queries';
|
|
7
5
|
import clsx from 'clsx';
|
|
6
|
+
import { useResizeObserver, useStableCallback } from '@cloudscape-design/component-toolkit/internal';
|
|
8
7
|
import { isCellStatesEqual, isWrapperStatesEqual, updateCellOffsets } from './utils';
|
|
9
8
|
// We allow the table to have a minimum of 148px of available space besides the sum of the widths of the sticky columns
|
|
10
9
|
// This value is an UX recommendation and is approximately 1/3 of our smallest breakpoint (465px)
|
|
@@ -15,7 +14,7 @@ export function useStickyColumns({ visibleColumns, stickyColumnsFirst, stickyCol
|
|
|
15
14
|
const tableRef = useRef(null);
|
|
16
15
|
const cellsRef = useRef({});
|
|
17
16
|
const hasStickyColumns = stickyColumnsFirst + stickyColumnsLast > 0;
|
|
18
|
-
const updateStickyStyles =
|
|
17
|
+
const updateStickyStyles = useStableCallback(() => {
|
|
19
18
|
if (wrapperRef.current && tableRef.current) {
|
|
20
19
|
store.updateCellStyles({
|
|
21
20
|
wrapper: wrapperRef.current,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-sticky-columns.js","sourceRoot":"lib/default/","sources":["table/sticky-columns/use-sticky-columns.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\n\nimport React, { useCallback, useEffect, useMemo, useRef } from 'react';\nimport AsyncStore from '../../area-chart/async-store';\nimport { useStableEventHandler } from '../../internal/hooks/use-stable-event-handler';\nimport { useResizeObserver } from '../../internal/hooks/container-queries';\nimport clsx from 'clsx';\nimport {\n CellOffsets,\n StickyColumnsCellState,\n StickyColumnsProps,\n StickyColumnsState,\n StickyColumnsWrapperState,\n} from './interfaces';\nimport { isCellStatesEqual, isWrapperStatesEqual, updateCellOffsets } from './utils';\n\n// We allow the table to have a minimum of 148px of available space besides the sum of the widths of the sticky columns\n// This value is an UX recommendation and is approximately 1/3 of our smallest breakpoint (465px)\nconst MINIMUM_SCROLLABLE_SPACE = 148;\n\nexport interface StickyColumnsModel {\n store: StickyColumnsStore;\n style: {\n wrapper?: React.CSSProperties;\n };\n refs: {\n table: React.RefCallback<HTMLElement>;\n wrapper: React.RefCallback<HTMLElement>;\n cell: (columnId: PropertyKey, node: null | HTMLElement) => void;\n };\n}\n\nexport function useStickyColumns({\n visibleColumns,\n stickyColumnsFirst,\n stickyColumnsLast,\n}: StickyColumnsProps): StickyColumnsModel {\n const store = useMemo(() => new StickyColumnsStore(), []);\n const wrapperRef = useRef<HTMLElement>(null) as React.MutableRefObject<null | HTMLElement>;\n const tableRef = useRef<HTMLElement>(null) as React.MutableRefObject<null | HTMLElement>;\n const cellsRef = useRef<Record<PropertyKey, HTMLElement>>({});\n\n const hasStickyColumns = stickyColumnsFirst + stickyColumnsLast > 0;\n\n const updateStickyStyles = useStableEventHandler(() => {\n if (wrapperRef.current && tableRef.current) {\n store.updateCellStyles({\n wrapper: wrapperRef.current,\n table: tableRef.current,\n cells: cellsRef.current,\n visibleColumns,\n stickyColumnsFirst,\n stickyColumnsLast,\n });\n }\n });\n\n useResizeObserver(wrapperRef, updateStickyStyles);\n\n useResizeObserver(tableRef, updateStickyStyles);\n\n useEffect(() => {\n if (wrapperRef.current && tableRef.current) {\n store.updateCellStyles({\n wrapper: wrapperRef.current,\n table: tableRef.current,\n cells: cellsRef.current,\n visibleColumns,\n stickyColumnsFirst,\n stickyColumnsLast,\n });\n }\n }, [store, stickyColumnsFirst, stickyColumnsLast, visibleColumns]);\n\n // Update wrapper styles imperatively to avoid unnecessary re-renders.\n useEffect(() => {\n if (!hasStickyColumns) {\n return;\n }\n\n const selector = (state: StickyColumnsState) => state.wrapperState;\n\n const updateWrapperStyles = (state: StickyColumnsWrapperState, prev: StickyColumnsWrapperState) => {\n if (isWrapperStatesEqual(state, prev)) {\n return;\n }\n\n if (wrapperRef.current) {\n wrapperRef.current.style.scrollPaddingLeft = state.scrollPaddingLeft + 'px';\n wrapperRef.current.style.scrollPaddingRight = state.scrollPaddingRight + 'px';\n }\n };\n\n const unsubscribe = store.subscribe(selector, (newState, prevState) =>\n updateWrapperStyles(selector(newState), selector(prevState))\n );\n return unsubscribe;\n }, [store, hasStickyColumns]);\n\n const setWrapper = useCallback(\n (node: null | HTMLElement) => {\n if (wrapperRef.current) {\n wrapperRef.current.removeEventListener('scroll', updateStickyStyles);\n }\n if (node && hasStickyColumns) {\n node.addEventListener('scroll', updateStickyStyles);\n }\n wrapperRef.current = node;\n },\n [hasStickyColumns, updateStickyStyles]\n );\n\n const setTable = useCallback((node: null | HTMLElement) => {\n tableRef.current = node;\n }, []);\n\n const setCell = useCallback((columnId: PropertyKey, node: null | HTMLElement) => {\n if (node) {\n cellsRef.current[columnId] = node;\n } else {\n delete cellsRef.current[columnId];\n }\n }, []);\n\n return {\n store,\n style: {\n // Provide wrapper styles as props so that a re-render won't cause invalidation.\n wrapper: hasStickyColumns ? { ...store.get().wrapperState } : undefined,\n },\n refs: { wrapper: setWrapper, table: setTable, cell: setCell },\n };\n}\n\ninterface UseStickyCellStylesProps {\n stickyColumns: StickyColumnsModel;\n columnId: PropertyKey;\n getClassName: (styles: null | StickyColumnsCellState) => Record<string, boolean>;\n}\n\ninterface StickyCellStyles {\n ref: React.RefCallback<HTMLElement>;\n className?: string;\n style?: React.CSSProperties;\n}\n\nexport function useStickyCellStyles({\n stickyColumns,\n columnId,\n getClassName,\n}: UseStickyCellStylesProps): StickyCellStyles {\n const setCell = stickyColumns.refs.cell;\n\n // unsubscribeRef to hold the function to unsubscribe from the store's updates\n const unsubscribeRef = useRef<null | (() => void)>(null);\n\n // refCallback updates the cell ref and sets up the store subscription\n const refCallback = useCallback(\n cellElement => {\n if (unsubscribeRef.current) {\n // Unsubscribe before we do any updates to avoid leaving any subscriptions hanging\n unsubscribeRef.current();\n }\n\n // Update cellRef and the store's state to point to the new DOM node\n setCell(columnId, cellElement);\n\n // Update cell styles imperatively to avoid unnecessary re-renders.\n const selector = (state: StickyColumnsState) => state.cellState[columnId];\n\n const updateCellStyles = (state: null | StickyColumnsCellState, prev: null | StickyColumnsCellState) => {\n if (isCellStatesEqual(state, prev)) {\n return;\n }\n\n const className = getClassName(state);\n if (cellElement) {\n Object.keys(className).forEach(key => {\n if (className[key]) {\n cellElement.classList.add(key);\n } else {\n cellElement.classList.remove(key);\n }\n });\n cellElement.style.left = state?.offset.left !== undefined ? `${state.offset.left}px` : '';\n cellElement.style.right = state?.offset.right !== undefined ? `${state.offset.right}px` : '';\n }\n };\n\n // If the node is not null (i.e., the table cell is being mounted or updated, not unmounted),\n // set up a new subscription to the store's updates\n if (cellElement) {\n unsubscribeRef.current = stickyColumns.store.subscribe(selector, (newState, prevState) => {\n updateCellStyles(selector(newState), selector(prevState));\n });\n }\n },\n\n // getClassName is expected to be pure\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [columnId, setCell, stickyColumns.store]\n );\n\n // Provide cell styles as props so that a re-render won't cause invalidation.\n const cellStyles = stickyColumns.store.get().cellState[columnId];\n return {\n ref: refCallback,\n className: cellStyles ? clsx(getClassName(cellStyles)) : undefined,\n style: cellStyles?.offset ?? undefined,\n };\n}\n\ninterface UpdateCellStylesProps {\n wrapper: HTMLElement;\n table: HTMLElement;\n cells: Record<PropertyKey, HTMLElement>;\n visibleColumns: readonly PropertyKey[];\n stickyColumnsFirst: number;\n stickyColumnsLast: number;\n}\n\nexport default class StickyColumnsStore extends AsyncStore<StickyColumnsState> {\n private cellOffsets: CellOffsets = {\n offsets: new Map(),\n stickyWidthLeft: 0,\n stickyWidthRight: 0,\n };\n private isStuckToTheLeft = false;\n private isStuckToTheRight = false;\n private padLeft = false;\n\n constructor() {\n super({ cellState: {}, wrapperState: { scrollPaddingLeft: 0, scrollPaddingRight: 0 } });\n }\n\n public updateCellStyles(props: UpdateCellStylesProps) {\n const hasStickyColumns = props.stickyColumnsFirst + props.stickyColumnsLast > 0;\n const hadStickyColumns = this.cellOffsets.offsets.size > 0;\n\n if (hasStickyColumns || hadStickyColumns) {\n this.updateScroll(props);\n this.updateCellOffsets(props);\n this.set(() => ({\n cellState: this.generateCellStyles(props),\n wrapperState: {\n scrollPaddingLeft: this.cellOffsets.stickyWidthLeft,\n scrollPaddingRight: this.cellOffsets.stickyWidthRight,\n },\n }));\n }\n }\n\n private updateScroll(props: UpdateCellStylesProps) {\n const wrapperScrollLeft = props.wrapper.scrollLeft;\n const wrapperScrollWidth = props.wrapper.scrollWidth;\n const wrapperClientWidth = props.wrapper.clientWidth;\n const tablePaddingLeft = parseFloat(getComputedStyle(props.table).paddingLeft) || 0;\n const tablePaddingRight = parseFloat(getComputedStyle(props.table).paddingRight) || 0;\n\n this.isStuckToTheLeft = wrapperScrollLeft > tablePaddingLeft;\n\n // Math.ceil() is used here to address an edge-case in certain browsers, where they return non-integer wrapperScrollLeft values\n // which are lower than expected (sub-pixel difference), resulting in the table always being in the \"stuck to the right\" state\n this.isStuckToTheRight = Math.ceil(wrapperScrollLeft) < wrapperScrollWidth - wrapperClientWidth - tablePaddingRight;\n\n this.padLeft = tablePaddingLeft !== 0 && this.isStuckToTheLeft;\n }\n\n private generateCellStyles = (props: UpdateCellStylesProps): Record<PropertyKey, null | StickyColumnsCellState> => {\n const isEnabled = this.isEnabled(props);\n const lastLeftStickyColumnIndex = props.stickyColumnsFirst - 1;\n const lastRightStickyColumnIndex = props.visibleColumns.length - props.stickyColumnsLast;\n\n return props.visibleColumns.reduce((acc, columnId, index) => {\n let stickySide = 'non-sticky';\n if (index < props.stickyColumnsFirst) {\n stickySide = 'left';\n } else if (index >= props.visibleColumns.length - props.stickyColumnsLast) {\n stickySide = 'right';\n }\n\n if (!isEnabled || stickySide === 'non-sticky') {\n acc[columnId] = null;\n return acc;\n }\n\n // Determine the offset of the sticky column using the `cellOffsets` state object\n const isFirstColumn = index === 0;\n const stickyColumnOffsetLeft = this.cellOffsets.offsets.get(columnId)?.first ?? 0;\n const stickyColumnOffsetRight = this.cellOffsets.offsets.get(columnId)?.last ?? 0;\n\n acc[columnId] = {\n padLeft: isFirstColumn && this.padLeft,\n lastLeft: this.isStuckToTheLeft && lastLeftStickyColumnIndex === index,\n lastRight: this.isStuckToTheRight && lastRightStickyColumnIndex === index,\n offset: {\n left: stickySide === 'left' ? stickyColumnOffsetLeft : undefined,\n right: stickySide === 'right' ? stickyColumnOffsetRight : undefined,\n },\n };\n return acc;\n }, {} as Record<PropertyKey, null | StickyColumnsCellState>);\n };\n\n private updateCellOffsets = (props: UpdateCellStylesProps): void => {\n this.cellOffsets = updateCellOffsets(props.cells, props);\n };\n\n private isEnabled = (props: UpdateCellStylesProps): boolean => {\n const noStickyColumns = props.stickyColumnsFirst + props.stickyColumnsLast === 0;\n if (noStickyColumns) {\n return false;\n }\n\n const wrapperWidth = props.wrapper.getBoundingClientRect().width;\n const tableWidth = props.table.getBoundingClientRect().width;\n const isWrapperScrollable = tableWidth > wrapperWidth;\n if (!isWrapperScrollable) {\n return false;\n }\n\n const totalStickySpace = this.cellOffsets.stickyWidthLeft + this.cellOffsets.stickyWidthRight;\n const tablePaddingLeft = parseFloat(getComputedStyle(props.table).paddingLeft) || 0;\n const tablePaddingRight = parseFloat(getComputedStyle(props.table).paddingRight) || 0;\n const hasEnoughScrollableSpace =\n totalStickySpace + MINIMUM_SCROLLABLE_SPACE + tablePaddingLeft + tablePaddingRight < wrapperWidth;\n if (!hasEnoughScrollableSpace) {\n return false;\n }\n\n return true;\n };\n}\n"]}
|
|
1
|
+
{"version":3,"file":"use-sticky-columns.js","sourceRoot":"lib/default/","sources":["table/sticky-columns/use-sticky-columns.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\n\nimport React, { useCallback, useEffect, useMemo, useRef } from 'react';\nimport AsyncStore from '../../area-chart/async-store';\nimport clsx from 'clsx';\nimport { useResizeObserver, useStableCallback } from '@cloudscape-design/component-toolkit/internal';\nimport {\n CellOffsets,\n StickyColumnsCellState,\n StickyColumnsProps,\n StickyColumnsState,\n StickyColumnsWrapperState,\n} from './interfaces';\nimport { isCellStatesEqual, isWrapperStatesEqual, updateCellOffsets } from './utils';\n\n// We allow the table to have a minimum of 148px of available space besides the sum of the widths of the sticky columns\n// This value is an UX recommendation and is approximately 1/3 of our smallest breakpoint (465px)\nconst MINIMUM_SCROLLABLE_SPACE = 148;\n\nexport interface StickyColumnsModel {\n store: StickyColumnsStore;\n style: {\n wrapper?: React.CSSProperties;\n };\n refs: {\n table: React.RefCallback<HTMLElement>;\n wrapper: React.RefCallback<HTMLElement>;\n cell: (columnId: PropertyKey, node: null | HTMLElement) => void;\n };\n}\n\nexport function useStickyColumns({\n visibleColumns,\n stickyColumnsFirst,\n stickyColumnsLast,\n}: StickyColumnsProps): StickyColumnsModel {\n const store = useMemo(() => new StickyColumnsStore(), []);\n const wrapperRef = useRef<HTMLElement>(null) as React.MutableRefObject<null | HTMLElement>;\n const tableRef = useRef<HTMLElement>(null) as React.MutableRefObject<null | HTMLElement>;\n const cellsRef = useRef<Record<PropertyKey, HTMLElement>>({});\n\n const hasStickyColumns = stickyColumnsFirst + stickyColumnsLast > 0;\n\n const updateStickyStyles = useStableCallback(() => {\n if (wrapperRef.current && tableRef.current) {\n store.updateCellStyles({\n wrapper: wrapperRef.current,\n table: tableRef.current,\n cells: cellsRef.current,\n visibleColumns,\n stickyColumnsFirst,\n stickyColumnsLast,\n });\n }\n });\n\n useResizeObserver(wrapperRef, updateStickyStyles);\n\n useResizeObserver(tableRef, updateStickyStyles);\n\n useEffect(() => {\n if (wrapperRef.current && tableRef.current) {\n store.updateCellStyles({\n wrapper: wrapperRef.current,\n table: tableRef.current,\n cells: cellsRef.current,\n visibleColumns,\n stickyColumnsFirst,\n stickyColumnsLast,\n });\n }\n }, [store, stickyColumnsFirst, stickyColumnsLast, visibleColumns]);\n\n // Update wrapper styles imperatively to avoid unnecessary re-renders.\n useEffect(() => {\n if (!hasStickyColumns) {\n return;\n }\n\n const selector = (state: StickyColumnsState) => state.wrapperState;\n\n const updateWrapperStyles = (state: StickyColumnsWrapperState, prev: StickyColumnsWrapperState) => {\n if (isWrapperStatesEqual(state, prev)) {\n return;\n }\n\n if (wrapperRef.current) {\n wrapperRef.current.style.scrollPaddingLeft = state.scrollPaddingLeft + 'px';\n wrapperRef.current.style.scrollPaddingRight = state.scrollPaddingRight + 'px';\n }\n };\n\n const unsubscribe = store.subscribe(selector, (newState, prevState) =>\n updateWrapperStyles(selector(newState), selector(prevState))\n );\n return unsubscribe;\n }, [store, hasStickyColumns]);\n\n const setWrapper = useCallback(\n (node: null | HTMLElement) => {\n if (wrapperRef.current) {\n wrapperRef.current.removeEventListener('scroll', updateStickyStyles);\n }\n if (node && hasStickyColumns) {\n node.addEventListener('scroll', updateStickyStyles);\n }\n wrapperRef.current = node;\n },\n [hasStickyColumns, updateStickyStyles]\n );\n\n const setTable = useCallback((node: null | HTMLElement) => {\n tableRef.current = node;\n }, []);\n\n const setCell = useCallback((columnId: PropertyKey, node: null | HTMLElement) => {\n if (node) {\n cellsRef.current[columnId] = node;\n } else {\n delete cellsRef.current[columnId];\n }\n }, []);\n\n return {\n store,\n style: {\n // Provide wrapper styles as props so that a re-render won't cause invalidation.\n wrapper: hasStickyColumns ? { ...store.get().wrapperState } : undefined,\n },\n refs: { wrapper: setWrapper, table: setTable, cell: setCell },\n };\n}\n\ninterface UseStickyCellStylesProps {\n stickyColumns: StickyColumnsModel;\n columnId: PropertyKey;\n getClassName: (styles: null | StickyColumnsCellState) => Record<string, boolean>;\n}\n\ninterface StickyCellStyles {\n ref: React.RefCallback<HTMLElement>;\n className?: string;\n style?: React.CSSProperties;\n}\n\nexport function useStickyCellStyles({\n stickyColumns,\n columnId,\n getClassName,\n}: UseStickyCellStylesProps): StickyCellStyles {\n const setCell = stickyColumns.refs.cell;\n\n // unsubscribeRef to hold the function to unsubscribe from the store's updates\n const unsubscribeRef = useRef<null | (() => void)>(null);\n\n // refCallback updates the cell ref and sets up the store subscription\n const refCallback = useCallback(\n cellElement => {\n if (unsubscribeRef.current) {\n // Unsubscribe before we do any updates to avoid leaving any subscriptions hanging\n unsubscribeRef.current();\n }\n\n // Update cellRef and the store's state to point to the new DOM node\n setCell(columnId, cellElement);\n\n // Update cell styles imperatively to avoid unnecessary re-renders.\n const selector = (state: StickyColumnsState) => state.cellState[columnId];\n\n const updateCellStyles = (state: null | StickyColumnsCellState, prev: null | StickyColumnsCellState) => {\n if (isCellStatesEqual(state, prev)) {\n return;\n }\n\n const className = getClassName(state);\n if (cellElement) {\n Object.keys(className).forEach(key => {\n if (className[key]) {\n cellElement.classList.add(key);\n } else {\n cellElement.classList.remove(key);\n }\n });\n cellElement.style.left = state?.offset.left !== undefined ? `${state.offset.left}px` : '';\n cellElement.style.right = state?.offset.right !== undefined ? `${state.offset.right}px` : '';\n }\n };\n\n // If the node is not null (i.e., the table cell is being mounted or updated, not unmounted),\n // set up a new subscription to the store's updates\n if (cellElement) {\n unsubscribeRef.current = stickyColumns.store.subscribe(selector, (newState, prevState) => {\n updateCellStyles(selector(newState), selector(prevState));\n });\n }\n },\n\n // getClassName is expected to be pure\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [columnId, setCell, stickyColumns.store]\n );\n\n // Provide cell styles as props so that a re-render won't cause invalidation.\n const cellStyles = stickyColumns.store.get().cellState[columnId];\n return {\n ref: refCallback,\n className: cellStyles ? clsx(getClassName(cellStyles)) : undefined,\n style: cellStyles?.offset ?? undefined,\n };\n}\n\ninterface UpdateCellStylesProps {\n wrapper: HTMLElement;\n table: HTMLElement;\n cells: Record<PropertyKey, HTMLElement>;\n visibleColumns: readonly PropertyKey[];\n stickyColumnsFirst: number;\n stickyColumnsLast: number;\n}\n\nexport default class StickyColumnsStore extends AsyncStore<StickyColumnsState> {\n private cellOffsets: CellOffsets = {\n offsets: new Map(),\n stickyWidthLeft: 0,\n stickyWidthRight: 0,\n };\n private isStuckToTheLeft = false;\n private isStuckToTheRight = false;\n private padLeft = false;\n\n constructor() {\n super({ cellState: {}, wrapperState: { scrollPaddingLeft: 0, scrollPaddingRight: 0 } });\n }\n\n public updateCellStyles(props: UpdateCellStylesProps) {\n const hasStickyColumns = props.stickyColumnsFirst + props.stickyColumnsLast > 0;\n const hadStickyColumns = this.cellOffsets.offsets.size > 0;\n\n if (hasStickyColumns || hadStickyColumns) {\n this.updateScroll(props);\n this.updateCellOffsets(props);\n this.set(() => ({\n cellState: this.generateCellStyles(props),\n wrapperState: {\n scrollPaddingLeft: this.cellOffsets.stickyWidthLeft,\n scrollPaddingRight: this.cellOffsets.stickyWidthRight,\n },\n }));\n }\n }\n\n private updateScroll(props: UpdateCellStylesProps) {\n const wrapperScrollLeft = props.wrapper.scrollLeft;\n const wrapperScrollWidth = props.wrapper.scrollWidth;\n const wrapperClientWidth = props.wrapper.clientWidth;\n const tablePaddingLeft = parseFloat(getComputedStyle(props.table).paddingLeft) || 0;\n const tablePaddingRight = parseFloat(getComputedStyle(props.table).paddingRight) || 0;\n\n this.isStuckToTheLeft = wrapperScrollLeft > tablePaddingLeft;\n\n // Math.ceil() is used here to address an edge-case in certain browsers, where they return non-integer wrapperScrollLeft values\n // which are lower than expected (sub-pixel difference), resulting in the table always being in the \"stuck to the right\" state\n this.isStuckToTheRight = Math.ceil(wrapperScrollLeft) < wrapperScrollWidth - wrapperClientWidth - tablePaddingRight;\n\n this.padLeft = tablePaddingLeft !== 0 && this.isStuckToTheLeft;\n }\n\n private generateCellStyles = (props: UpdateCellStylesProps): Record<PropertyKey, null | StickyColumnsCellState> => {\n const isEnabled = this.isEnabled(props);\n const lastLeftStickyColumnIndex = props.stickyColumnsFirst - 1;\n const lastRightStickyColumnIndex = props.visibleColumns.length - props.stickyColumnsLast;\n\n return props.visibleColumns.reduce((acc, columnId, index) => {\n let stickySide = 'non-sticky';\n if (index < props.stickyColumnsFirst) {\n stickySide = 'left';\n } else if (index >= props.visibleColumns.length - props.stickyColumnsLast) {\n stickySide = 'right';\n }\n\n if (!isEnabled || stickySide === 'non-sticky') {\n acc[columnId] = null;\n return acc;\n }\n\n // Determine the offset of the sticky column using the `cellOffsets` state object\n const isFirstColumn = index === 0;\n const stickyColumnOffsetLeft = this.cellOffsets.offsets.get(columnId)?.first ?? 0;\n const stickyColumnOffsetRight = this.cellOffsets.offsets.get(columnId)?.last ?? 0;\n\n acc[columnId] = {\n padLeft: isFirstColumn && this.padLeft,\n lastLeft: this.isStuckToTheLeft && lastLeftStickyColumnIndex === index,\n lastRight: this.isStuckToTheRight && lastRightStickyColumnIndex === index,\n offset: {\n left: stickySide === 'left' ? stickyColumnOffsetLeft : undefined,\n right: stickySide === 'right' ? stickyColumnOffsetRight : undefined,\n },\n };\n return acc;\n }, {} as Record<PropertyKey, null | StickyColumnsCellState>);\n };\n\n private updateCellOffsets = (props: UpdateCellStylesProps): void => {\n this.cellOffsets = updateCellOffsets(props.cells, props);\n };\n\n private isEnabled = (props: UpdateCellStylesProps): boolean => {\n const noStickyColumns = props.stickyColumnsFirst + props.stickyColumnsLast === 0;\n if (noStickyColumns) {\n return false;\n }\n\n const wrapperWidth = props.wrapper.getBoundingClientRect().width;\n const tableWidth = props.table.getBoundingClientRect().width;\n const isWrapperScrollable = tableWidth > wrapperWidth;\n if (!isWrapperScrollable) {\n return false;\n }\n\n const totalStickySpace = this.cellOffsets.stickyWidthLeft + this.cellOffsets.stickyWidthRight;\n const tablePaddingLeft = parseFloat(getComputedStyle(props.table).paddingLeft) || 0;\n const tablePaddingRight = parseFloat(getComputedStyle(props.table).paddingRight) || 0;\n const hasEnoughScrollableSpace =\n totalStickySpace + MINIMUM_SCROLLABLE_SPACE + tablePaddingLeft + tablePaddingRight < wrapperWidth;\n if (!hasEnoughScrollableSpace) {\n return false;\n }\n\n return true;\n };\n}\n"]}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
|
|
2
2
|
import './styles.scoped.css';
|
|
3
3
|
export default {
|
|
4
|
-
"sticky-scrollbar": "awsui_sticky-
|
|
5
|
-
"sticky-scrollbar-content": "awsui_sticky-scrollbar-
|
|
6
|
-
"sticky-scrollbar-visible": "awsui_sticky-scrollbar-
|
|
7
|
-
"sticky-scrollbar-native-invisible": "awsui_sticky-scrollbar-native-
|
|
8
|
-
"sticky-scrollbar-offset": "awsui_sticky-scrollbar-
|
|
9
|
-
"is-visual-refresh": "awsui_is-visual-
|
|
4
|
+
"sticky-scrollbar": "awsui_sticky-scrollbar_faqt8_1wexl_93",
|
|
5
|
+
"sticky-scrollbar-content": "awsui_sticky-scrollbar-content_faqt8_1wexl_102",
|
|
6
|
+
"sticky-scrollbar-visible": "awsui_sticky-scrollbar-visible_faqt8_1wexl_105",
|
|
7
|
+
"sticky-scrollbar-native-invisible": "awsui_sticky-scrollbar-native-invisible_faqt8_1wexl_108",
|
|
8
|
+
"sticky-scrollbar-offset": "awsui_sticky-scrollbar-offset_faqt8_1wexl_111",
|
|
9
|
+
"is-visual-refresh": "awsui_is-visual-refresh_faqt8_1wexl_114"
|
|
10
10
|
};
|
|
11
11
|
|
|
@@ -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_sticky-
|
|
93
|
+
.awsui_sticky-scrollbar_faqt8_1wexl_93:not(#\9) {
|
|
94
94
|
height: 15px;
|
|
95
95
|
position: sticky;
|
|
96
96
|
display: none;
|
|
@@ -99,24 +99,24 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
99
99
|
bottom: 0;
|
|
100
100
|
width: 100%;
|
|
101
101
|
}
|
|
102
|
-
.awsui_sticky-scrollbar-
|
|
102
|
+
.awsui_sticky-scrollbar-content_faqt8_1wexl_102:not(#\9) {
|
|
103
103
|
height: 15px;
|
|
104
104
|
}
|
|
105
|
-
.awsui_sticky-scrollbar-
|
|
105
|
+
.awsui_sticky-scrollbar-visible_faqt8_1wexl_105:not(#\9) {
|
|
106
106
|
display: block;
|
|
107
107
|
}
|
|
108
|
-
.awsui_sticky-scrollbar-native-
|
|
108
|
+
.awsui_sticky-scrollbar-native-invisible_faqt8_1wexl_108:not(#\9) {
|
|
109
109
|
margin-top: -15px;
|
|
110
110
|
}
|
|
111
|
-
.awsui_sticky-scrollbar-
|
|
111
|
+
.awsui_sticky-scrollbar-offset_faqt8_1wexl_111:not(#\9) {
|
|
112
112
|
z-index: 800;
|
|
113
113
|
}
|
|
114
|
-
.awsui_sticky-scrollbar-
|
|
115
|
-
background-color: var(--color-background-container-content-
|
|
114
|
+
.awsui_sticky-scrollbar-offset_faqt8_1wexl_111:not(#\9):not(.awsui_is-visual-refresh_faqt8_1wexl_114) {
|
|
115
|
+
background-color: var(--color-background-container-content-il2pe5, #ffffff);
|
|
116
116
|
height: 15px;
|
|
117
|
-
margin-top: calc(-1 * var(--border-divider-section-width-
|
|
118
|
-
border-top: var(--border-divider-section-width-
|
|
117
|
+
margin-top: calc(-1 * var(--border-divider-section-width-4ozgf3, 1px));
|
|
118
|
+
border-top: var(--border-divider-section-width-4ozgf3, 1px) solid var(--color-border-divider-default-cr3oi6, #eaeded);
|
|
119
119
|
}
|
|
120
|
-
.awsui_sticky-scrollbar-
|
|
120
|
+
.awsui_sticky-scrollbar-offset_faqt8_1wexl_111.awsui_is-visual-refresh_faqt8_1wexl_114:not(#\9) {
|
|
121
121
|
margin-top: -5px;
|
|
122
122
|
}
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
// es-module interop with Babel and Typescript
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
module.exports.default = {
|
|
5
|
-
"sticky-scrollbar": "awsui_sticky-
|
|
6
|
-
"sticky-scrollbar-content": "awsui_sticky-scrollbar-
|
|
7
|
-
"sticky-scrollbar-visible": "awsui_sticky-scrollbar-
|
|
8
|
-
"sticky-scrollbar-native-invisible": "awsui_sticky-scrollbar-native-
|
|
9
|
-
"sticky-scrollbar-offset": "awsui_sticky-scrollbar-
|
|
10
|
-
"is-visual-refresh": "awsui_is-visual-
|
|
5
|
+
"sticky-scrollbar": "awsui_sticky-scrollbar_faqt8_1wexl_93",
|
|
6
|
+
"sticky-scrollbar-content": "awsui_sticky-scrollbar-content_faqt8_1wexl_102",
|
|
7
|
+
"sticky-scrollbar-visible": "awsui_sticky-scrollbar-visible_faqt8_1wexl_105",
|
|
8
|
+
"sticky-scrollbar-native-invisible": "awsui_sticky-scrollbar-native-invisible_faqt8_1wexl_108",
|
|
9
|
+
"sticky-scrollbar-offset": "awsui_sticky-scrollbar-offset_faqt8_1wexl_111",
|
|
10
|
+
"is-visual-refresh": "awsui_is-visual-refresh_faqt8_1wexl_114"
|
|
11
11
|
};
|
|
12
12
|
|
|
@@ -1,39 +1,39 @@
|
|
|
1
1
|
|
|
2
2
|
import './styles.scoped.css';
|
|
3
3
|
export default {
|
|
4
|
-
"root": "
|
|
5
|
-
"tools": "
|
|
6
|
-
"tools-filtering": "awsui_tools-
|
|
7
|
-
"tools-align-right": "awsui_tools-align-
|
|
8
|
-
"tools-pagination": "awsui_tools-
|
|
9
|
-
"tools-preferences": "awsui_tools-
|
|
10
|
-
"tools-small": "awsui_tools-
|
|
11
|
-
"table": "
|
|
12
|
-
"table-layout-fixed": "awsui_table-layout-
|
|
13
|
-
"wrapper": "
|
|
14
|
-
"variant-stacked": "awsui_variant-
|
|
15
|
-
"variant-container": "awsui_variant-
|
|
16
|
-
"has-footer": "awsui_has-
|
|
17
|
-
"has-header": "awsui_has-
|
|
18
|
-
"cell-merged": "awsui_cell-
|
|
19
|
-
"cell-merged-content": "awsui_cell-merged-
|
|
20
|
-
"empty": "
|
|
21
|
-
"loading": "
|
|
22
|
-
"selection-control": "awsui_selection-
|
|
23
|
-
"selection-control-header": "awsui_selection-control-
|
|
24
|
-
"dark-header": "awsui_dark-
|
|
25
|
-
"header-secondary": "awsui_header-
|
|
26
|
-
"table-has-header": "awsui_table-has-
|
|
27
|
-
"header-controls": "awsui_header-
|
|
28
|
-
"variant-full-page": "awsui_variant-full-
|
|
29
|
-
"variant-embedded": "awsui_variant-
|
|
30
|
-
"variant-borderless": "awsui_variant-
|
|
31
|
-
"footer-wrapper": "awsui_footer-
|
|
32
|
-
"footer": "
|
|
33
|
-
"footer-with-pagination": "awsui_footer-with-
|
|
34
|
-
"footer-pagination": "awsui_footer-
|
|
35
|
-
"thead-active": "awsui_thead-
|
|
36
|
-
"row": "
|
|
37
|
-
"row-selected": "awsui_row-
|
|
4
|
+
"root": "awsui_root_wih1l_18u8t_97",
|
|
5
|
+
"tools": "awsui_tools_wih1l_18u8t_108",
|
|
6
|
+
"tools-filtering": "awsui_tools-filtering_wih1l_18u8t_114",
|
|
7
|
+
"tools-align-right": "awsui_tools-align-right_wih1l_18u8t_128",
|
|
8
|
+
"tools-pagination": "awsui_tools-pagination_wih1l_18u8t_132",
|
|
9
|
+
"tools-preferences": "awsui_tools-preferences_wih1l_18u8t_132",
|
|
10
|
+
"tools-small": "awsui_tools-small_wih1l_18u8t_138",
|
|
11
|
+
"table": "awsui_table_wih1l_18u8t_144",
|
|
12
|
+
"table-layout-fixed": "awsui_table-layout-fixed_wih1l_18u8t_150",
|
|
13
|
+
"wrapper": "awsui_wrapper_wih1l_18u8t_154",
|
|
14
|
+
"variant-stacked": "awsui_variant-stacked_wih1l_18u8t_161",
|
|
15
|
+
"variant-container": "awsui_variant-container_wih1l_18u8t_161",
|
|
16
|
+
"has-footer": "awsui_has-footer_wih1l_18u8t_165",
|
|
17
|
+
"has-header": "awsui_has-header_wih1l_18u8t_168",
|
|
18
|
+
"cell-merged": "awsui_cell-merged_wih1l_18u8t_182",
|
|
19
|
+
"cell-merged-content": "awsui_cell-merged-content_wih1l_18u8t_193",
|
|
20
|
+
"empty": "awsui_empty_wih1l_18u8t_208",
|
|
21
|
+
"loading": "awsui_loading_wih1l_18u8t_212",
|
|
22
|
+
"selection-control": "awsui_selection-control_wih1l_18u8t_221",
|
|
23
|
+
"selection-control-header": "awsui_selection-control-header_wih1l_18u8t_228",
|
|
24
|
+
"dark-header": "awsui_dark-header_wih1l_18u8t_237",
|
|
25
|
+
"header-secondary": "awsui_header-secondary_wih1l_18u8t_242",
|
|
26
|
+
"table-has-header": "awsui_table-has-header_wih1l_18u8t_258",
|
|
27
|
+
"header-controls": "awsui_header-controls_wih1l_18u8t_262",
|
|
28
|
+
"variant-full-page": "awsui_variant-full-page_wih1l_18u8t_266",
|
|
29
|
+
"variant-embedded": "awsui_variant-embedded_wih1l_18u8t_274",
|
|
30
|
+
"variant-borderless": "awsui_variant-borderless_wih1l_18u8t_274",
|
|
31
|
+
"footer-wrapper": "awsui_footer-wrapper_wih1l_18u8t_280",
|
|
32
|
+
"footer": "awsui_footer_wih1l_18u8t_280",
|
|
33
|
+
"footer-with-pagination": "awsui_footer-with-pagination_wih1l_18u8t_288",
|
|
34
|
+
"footer-pagination": "awsui_footer-pagination_wih1l_18u8t_296",
|
|
35
|
+
"thead-active": "awsui_thead-active_wih1l_18u8t_300",
|
|
36
|
+
"row": "awsui_row_wih1l_18u8t_301",
|
|
37
|
+
"row-selected": "awsui_row-selected_wih1l_18u8t_302"
|
|
38
38
|
};
|
|
39
39
|
|
|
@@ -94,122 +94,122 @@ 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
|
-
.
|
|
98
|
-
font-size: var(--font-body-m-size-
|
|
99
|
-
line-height: var(--font-body-m-line-height-
|
|
100
|
-
color: var(--color-text-body-default-
|
|
97
|
+
.awsui_root_wih1l_18u8t_97:not(#\9) {
|
|
98
|
+
font-size: var(--font-body-m-size-bf8hby, 14px);
|
|
99
|
+
line-height: var(--font-body-m-line-height-wmg6vk, 22px);
|
|
100
|
+
color: var(--color-text-body-default-ki9w9u, #16191f);
|
|
101
101
|
font-weight: 400;
|
|
102
|
-
font-family: var(--font-family-base-
|
|
102
|
+
font-family: var(--font-family-base-0nmw8v, "Noto Sans", "Helvetica Neue", Roboto, Arial, sans-serif);
|
|
103
103
|
-webkit-font-smoothing: auto;
|
|
104
104
|
-moz-osx-font-smoothing: auto;
|
|
105
105
|
width: 100%;
|
|
106
106
|
}
|
|
107
107
|
|
|
108
|
-
.
|
|
108
|
+
.awsui_tools_wih1l_18u8t_108:not(#\9) {
|
|
109
109
|
display: flex;
|
|
110
110
|
align-items: flex-end;
|
|
111
111
|
flex-wrap: wrap;
|
|
112
|
-
padding: var(--space-scaled-xs-
|
|
112
|
+
padding: var(--space-scaled-xs-x91h81, 8px) 0 var(--space-table-header-tools-bottom-8i4ihz, 4px);
|
|
113
113
|
}
|
|
114
|
-
.awsui_tools-
|
|
114
|
+
.awsui_tools-filtering_wih1l_18u8t_114:not(#\9) {
|
|
115
115
|
max-width: 100%;
|
|
116
|
-
margin-right: var(--space-l-
|
|
116
|
+
margin-right: var(--space-l-xu1x80, 20px);
|
|
117
117
|
}
|
|
118
118
|
@supports (flex-basis: fit-content) {
|
|
119
|
-
.awsui_tools-
|
|
119
|
+
.awsui_tools-filtering_wih1l_18u8t_114:not(#\9) {
|
|
120
120
|
flex: 1 1 fit-content;
|
|
121
121
|
}
|
|
122
122
|
}
|
|
123
123
|
@supports not (flex-basis: fit-content) {
|
|
124
|
-
.awsui_tools-
|
|
124
|
+
.awsui_tools-filtering_wih1l_18u8t_114:not(#\9) {
|
|
125
125
|
flex: 1 1 auto;
|
|
126
126
|
}
|
|
127
127
|
}
|
|
128
|
-
.awsui_tools-align-
|
|
128
|
+
.awsui_tools-align-right_wih1l_18u8t_128:not(#\9) {
|
|
129
129
|
display: flex;
|
|
130
130
|
margin-left: auto;
|
|
131
131
|
}
|
|
132
|
-
.awsui_tools-
|
|
133
|
-
border-left: var(--border-divider-section-width-
|
|
132
|
+
.awsui_tools-pagination_wih1l_18u8t_132 + .awsui_tools-preferences_wih1l_18u8t_132:not(#\9) {
|
|
133
|
+
border-left: var(--border-divider-section-width-4ozgf3, 1px) solid var(--color-border-divider-default-cr3oi6, #eaeded);
|
|
134
134
|
box-sizing: border-box;
|
|
135
|
-
margin-left: var(--space-xs-
|
|
136
|
-
padding-left: var(--space-xs-
|
|
135
|
+
margin-left: var(--space-xs-xf5ch3, 8px);
|
|
136
|
+
padding-left: var(--space-xs-xf5ch3, 8px);
|
|
137
137
|
}
|
|
138
|
-
.awsui_tools-
|
|
138
|
+
.awsui_tools-small_wih1l_18u8t_138 > .awsui_tools-filtering_wih1l_18u8t_114:not(#\9) {
|
|
139
139
|
margin-right: 0;
|
|
140
|
-
margin-bottom: var(--space-scaled-xs-
|
|
140
|
+
margin-bottom: var(--space-scaled-xs-x91h81, 8px);
|
|
141
141
|
flex-basis: 100%;
|
|
142
142
|
}
|
|
143
143
|
|
|
144
|
-
.
|
|
144
|
+
.awsui_table_wih1l_18u8t_144:not(#\9) {
|
|
145
145
|
width: 100%;
|
|
146
146
|
border-spacing: 0;
|
|
147
147
|
position: relative;
|
|
148
148
|
box-sizing: border-box;
|
|
149
149
|
}
|
|
150
|
-
.awsui_table-layout-
|
|
150
|
+
.awsui_table-layout-fixed_wih1l_18u8t_150:not(#\9) {
|
|
151
151
|
table-layout: fixed;
|
|
152
152
|
}
|
|
153
153
|
|
|
154
|
-
.
|
|
154
|
+
.awsui_wrapper_wih1l_18u8t_154:not(#\9) {
|
|
155
155
|
position: relative;
|
|
156
156
|
box-sizing: border-box;
|
|
157
157
|
width: 100%;
|
|
158
158
|
overflow-x: auto;
|
|
159
159
|
scrollbar-width: none; /* Hide scrollbar in Firefox */
|
|
160
160
|
}
|
|
161
|
-
.
|
|
162
|
-
padding-left: var(--space-table-horizontal-
|
|
163
|
-
padding-right: var(--space-table-horizontal-
|
|
161
|
+
.awsui_wrapper_wih1l_18u8t_154.awsui_variant-stacked_wih1l_18u8t_161 > .awsui_table_wih1l_18u8t_144:not(#\9), .awsui_wrapper_wih1l_18u8t_154.awsui_variant-container_wih1l_18u8t_161 > .awsui_table_wih1l_18u8t_144:not(#\9) {
|
|
162
|
+
padding-left: var(--space-table-horizontal-ciak0s, 0px);
|
|
163
|
+
padding-right: var(--space-table-horizontal-ciak0s, 0px);
|
|
164
164
|
}
|
|
165
|
-
.
|
|
166
|
-
padding-bottom: var(--space-table-content-bottom-
|
|
165
|
+
.awsui_wrapper_wih1l_18u8t_154.awsui_variant-container_wih1l_18u8t_161:not(#\9):not(.awsui_has-footer_wih1l_18u8t_165) {
|
|
166
|
+
padding-bottom: var(--space-table-content-bottom-r9l1c2, 0px);
|
|
167
167
|
}
|
|
168
|
-
.
|
|
169
|
-
border-top-right-radius: var(--border-radius-container-
|
|
170
|
-
border-top-left-radius: var(--border-radius-container-
|
|
168
|
+
.awsui_wrapper_wih1l_18u8t_154:not(#\9):not(.awsui_has-header_wih1l_18u8t_168) {
|
|
169
|
+
border-top-right-radius: var(--border-radius-container-jm6teg, 0px);
|
|
170
|
+
border-top-left-radius: var(--border-radius-container-jm6teg, 0px);
|
|
171
171
|
}
|
|
172
|
-
.
|
|
172
|
+
.awsui_wrapper_wih1l_18u8t_154:not(#\9)::-webkit-scrollbar {
|
|
173
173
|
display: none; /* Hide scrollbar in Safari and Chrome */
|
|
174
174
|
}
|
|
175
|
-
body[data-awsui-focus-visible=true] .
|
|
175
|
+
body[data-awsui-focus-visible=true] .awsui_wrapper_wih1l_18u8t_154:not(#\9):focus {
|
|
176
176
|
outline: 2px dotted transparent;
|
|
177
177
|
outline-offset: 2px;
|
|
178
|
-
border-radius: var(--border-radius-container-
|
|
179
|
-
box-shadow: 0 0 0 2px var(--color-border-item-focused-
|
|
178
|
+
border-radius: var(--border-radius-container-jm6teg, 0px);
|
|
179
|
+
box-shadow: 0 0 0 2px var(--color-border-item-focused-v8nq2m, #0073bb);
|
|
180
180
|
}
|
|
181
181
|
|
|
182
|
-
.awsui_cell-
|
|
182
|
+
.awsui_cell-merged_wih1l_18u8t_182:not(#\9) {
|
|
183
183
|
text-align: center;
|
|
184
184
|
padding: 0;
|
|
185
185
|
}
|
|
186
|
-
.awsui_cell-
|
|
186
|
+
.awsui_cell-merged_wih1l_18u8t_182.awsui_has-footer_wih1l_18u8t_165:not(#\9) {
|
|
187
187
|
/*
|
|
188
188
|
Add a bottom border to the body cell of an empty table as a separator between the
|
|
189
189
|
table and the footer
|
|
190
190
|
*/
|
|
191
|
-
border-bottom: var(--border-divider-section-width-
|
|
191
|
+
border-bottom: var(--border-divider-section-width-4ozgf3, 1px) solid var(--color-border-divider-default-cr3oi6, #eaeded);
|
|
192
192
|
}
|
|
193
|
-
.awsui_cell-merged-
|
|
193
|
+
.awsui_cell-merged-content_wih1l_18u8t_193:not(#\9) {
|
|
194
194
|
box-sizing: border-box;
|
|
195
195
|
width: 100%;
|
|
196
|
-
padding: var(--space-scaled-m-
|
|
196
|
+
padding: var(--space-scaled-m-er48cl, 16px) var(--space-l-xu1x80, 20px) var(--space-scaled-l-08jb88, 20px);
|
|
197
197
|
/* stylelint-disable plugin/no-unsupported-browser-features */
|
|
198
198
|
/* stylelint-enable plugin/no-unsupported-browser-features */
|
|
199
199
|
}
|
|
200
200
|
@supports (position: sticky) {
|
|
201
|
-
.awsui_cell-merged-
|
|
201
|
+
.awsui_cell-merged-content_wih1l_18u8t_193:not(#\9) {
|
|
202
202
|
position: sticky;
|
|
203
203
|
left: 0;
|
|
204
|
-
margin: 0 calc(-2 * var(--space-table-horizontal-
|
|
204
|
+
margin: 0 calc(-2 * var(--space-table-horizontal-ciak0s, 0px));
|
|
205
205
|
}
|
|
206
206
|
}
|
|
207
207
|
|
|
208
|
-
.
|
|
209
|
-
color: var(--color-text-empty-
|
|
208
|
+
.awsui_empty_wih1l_18u8t_208:not(#\9) {
|
|
209
|
+
color: var(--color-text-empty-jskpnv, #687078);
|
|
210
210
|
}
|
|
211
211
|
|
|
212
|
-
.
|
|
212
|
+
.awsui_loading_wih1l_18u8t_212:not(#\9) {
|
|
213
213
|
/* used in test-utils */
|
|
214
214
|
}
|
|
215
215
|
|
|
@@ -218,87 +218,87 @@ The min/max/width token values in Visual Refresh should align
|
|
|
218
218
|
the table header and body cells selection control with the table
|
|
219
219
|
filter search icon.
|
|
220
220
|
*/
|
|
221
|
-
.awsui_selection-
|
|
221
|
+
.awsui_selection-control_wih1l_18u8t_221:not(#\9) {
|
|
222
222
|
box-sizing: border-box;
|
|
223
|
-
max-width: var(--size-table-selection-horizontal-
|
|
224
|
-
min-width: var(--size-table-selection-horizontal-
|
|
223
|
+
max-width: var(--size-table-selection-horizontal-8ncv96, 54px);
|
|
224
|
+
min-width: var(--size-table-selection-horizontal-8ncv96, 54px);
|
|
225
225
|
position: relative;
|
|
226
|
-
width: var(--size-table-selection-horizontal-
|
|
226
|
+
width: var(--size-table-selection-horizontal-8ncv96, 54px);
|
|
227
227
|
}
|
|
228
|
-
.awsui_selection-
|
|
229
|
-
padding: var(--space-scaled-xs-
|
|
230
|
-
border-left: var(--border-item-width-
|
|
228
|
+
.awsui_selection-control_wih1l_18u8t_221.awsui_selection-control-header_wih1l_18u8t_228:not(#\9) {
|
|
229
|
+
padding: var(--space-scaled-xs-x91h81, 8px) var(--space-scaled-l-08jb88, 20px);
|
|
230
|
+
border-left: var(--border-item-width-0zxiwv, 1px) solid transparent;
|
|
231
231
|
}
|
|
232
232
|
|
|
233
233
|
/*
|
|
234
234
|
The dynamic height dark header needs a background that will cover
|
|
235
235
|
the default white background of the container component.
|
|
236
236
|
*/
|
|
237
|
-
.awsui_dark-
|
|
238
|
-
background-color: var(--color-background-layout-main-
|
|
239
|
-
color: var(--color-text-body-default-
|
|
237
|
+
.awsui_dark-header_wih1l_18u8t_237:not(#\9) {
|
|
238
|
+
background-color: var(--color-background-layout-main-td853a, #f2f3f3);
|
|
239
|
+
color: var(--color-text-body-default-ki9w9u, #16191f);
|
|
240
240
|
}
|
|
241
241
|
|
|
242
|
-
.awsui_header-
|
|
242
|
+
.awsui_header-secondary_wih1l_18u8t_242:not(#\9) {
|
|
243
243
|
overflow: auto;
|
|
244
244
|
-ms-overflow-style: none; /* Internet Explorer 10+ */
|
|
245
245
|
scrollbar-width: none; /* Firefox */
|
|
246
246
|
box-sizing: border-box;
|
|
247
247
|
width: 100%;
|
|
248
248
|
border-radius: 0;
|
|
249
|
-
background: var(--color-background-table-header-
|
|
249
|
+
background: var(--color-background-table-header-ly5ewp, #fafafa);
|
|
250
250
|
}
|
|
251
|
-
.awsui_header-
|
|
252
|
-
padding-left: var(--space-table-horizontal-
|
|
253
|
-
padding-right: var(--space-table-horizontal-
|
|
251
|
+
.awsui_header-secondary_wih1l_18u8t_242.awsui_variant-stacked_wih1l_18u8t_161 > .awsui_table_wih1l_18u8t_144:not(#\9), .awsui_header-secondary_wih1l_18u8t_242.awsui_variant-container_wih1l_18u8t_161 > .awsui_table_wih1l_18u8t_144:not(#\9) {
|
|
252
|
+
padding-left: var(--space-table-horizontal-ciak0s, 0px);
|
|
253
|
+
padding-right: var(--space-table-horizontal-ciak0s, 0px);
|
|
254
254
|
}
|
|
255
|
-
.awsui_header-
|
|
255
|
+
.awsui_header-secondary_wih1l_18u8t_242:not(#\9)::-webkit-scrollbar {
|
|
256
256
|
display: none; /* Safari and Chrome */
|
|
257
257
|
}
|
|
258
|
-
.awsui_header-
|
|
259
|
-
border-top: var(--border-divider-list-width-
|
|
258
|
+
.awsui_header-secondary_wih1l_18u8t_242.awsui_table-has-header_wih1l_18u8t_258:not(#\9) {
|
|
259
|
+
border-top: var(--border-divider-list-width-471u6a, 1px) solid var(--color-border-container-divider-gl15p9, #eaeded);
|
|
260
260
|
}
|
|
261
261
|
|
|
262
|
-
.awsui_header-
|
|
263
|
-
padding-top: var(--space-container-header-top-
|
|
264
|
-
padding-bottom: var(--space-container-header-bottom-
|
|
262
|
+
.awsui_header-controls_wih1l_18u8t_262:not(#\9) {
|
|
263
|
+
padding-top: var(--space-container-header-top-bomjbu, 12px);
|
|
264
|
+
padding-bottom: var(--space-container-header-bottom-qqnwwz, 12px);
|
|
265
265
|
}
|
|
266
|
-
.awsui_header-
|
|
266
|
+
.awsui_header-controls_wih1l_18u8t_262.awsui_variant-full-page_wih1l_18u8t_266:not(#\9) {
|
|
267
267
|
padding-top: 0;
|
|
268
|
-
padding-bottom: calc(var(--space-container-header-bottom-
|
|
268
|
+
padding-bottom: calc(var(--space-container-header-bottom-qqnwwz, 12px) + var(--space-table-header-tools-full-page-bottom-dmyrgq, 4px));
|
|
269
269
|
}
|
|
270
|
-
.awsui_header-
|
|
271
|
-
padding-left: calc(var(--space-table-horizontal-
|
|
272
|
-
padding-right: calc(var(--space-table-horizontal-
|
|
270
|
+
.awsui_header-controls_wih1l_18u8t_262.awsui_variant-stacked_wih1l_18u8t_161:not(#\9), .awsui_header-controls_wih1l_18u8t_262.awsui_variant-container_wih1l_18u8t_161:not(#\9) {
|
|
271
|
+
padding-left: calc(var(--space-table-horizontal-ciak0s, 0px) + var(--space-table-header-horizontal-vhrx2d, 20px));
|
|
272
|
+
padding-right: calc(var(--space-table-horizontal-ciak0s, 0px) + var(--space-table-header-horizontal-vhrx2d, 20px));
|
|
273
273
|
}
|
|
274
|
-
.awsui_header-
|
|
275
|
-
padding-left: var(--space-table-header-horizontal-
|
|
276
|
-
padding-right: var(--space-table-header-horizontal-
|
|
277
|
-
padding-top: var(--space-table-embedded-header-top-
|
|
274
|
+
.awsui_header-controls_wih1l_18u8t_262.awsui_variant-embedded_wih1l_18u8t_274:not(#\9), .awsui_header-controls_wih1l_18u8t_262.awsui_variant-borderless_wih1l_18u8t_274:not(#\9) {
|
|
275
|
+
padding-left: var(--space-table-header-horizontal-vhrx2d, 20px);
|
|
276
|
+
padding-right: var(--space-table-header-horizontal-vhrx2d, 20px);
|
|
277
|
+
padding-top: var(--space-table-embedded-header-top-u7x1ax, 12px);
|
|
278
278
|
}
|
|
279
279
|
|
|
280
|
-
.awsui_footer-
|
|
281
|
-
padding-left: var(--space-table-horizontal-
|
|
282
|
-
padding-right: var(--space-table-horizontal-
|
|
280
|
+
.awsui_footer-wrapper_wih1l_18u8t_280.awsui_variant-stacked_wih1l_18u8t_161:not(#\9), .awsui_footer-wrapper_wih1l_18u8t_280.awsui_variant-container_wih1l_18u8t_161:not(#\9) {
|
|
281
|
+
padding-left: var(--space-table-horizontal-ciak0s, 0px);
|
|
282
|
+
padding-right: var(--space-table-horizontal-ciak0s, 0px);
|
|
283
283
|
}
|
|
284
284
|
|
|
285
|
-
.
|
|
286
|
-
padding: var(--space-scaled-s-
|
|
285
|
+
.awsui_footer_wih1l_18u8t_280:not(#\9) {
|
|
286
|
+
padding: var(--space-scaled-s-9q8n2q, 12px) var(--space-table-footer-horizontal-t5rbr4, 20px);
|
|
287
287
|
}
|
|
288
|
-
.awsui_footer-with-
|
|
288
|
+
.awsui_footer-with-pagination_wih1l_18u8t_288:not(#\9) {
|
|
289
289
|
display: flex;
|
|
290
290
|
flex-direction: row;
|
|
291
291
|
justify-content: space-between;
|
|
292
292
|
align-items: center;
|
|
293
293
|
flex-wrap: wrap;
|
|
294
|
-
gap: var(--space-scaled-s-
|
|
294
|
+
gap: var(--space-scaled-s-9q8n2q, 12px);
|
|
295
295
|
}
|
|
296
|
-
.awsui_footer-
|
|
296
|
+
.awsui_footer-pagination_wih1l_18u8t_296:not(#\9) {
|
|
297
297
|
margin-left: auto;
|
|
298
298
|
}
|
|
299
299
|
|
|
300
|
-
.awsui_thead-
|
|
301
|
-
.
|
|
302
|
-
.awsui_row-
|
|
300
|
+
.awsui_thead-active_wih1l_18u8t_300:not(#\9),
|
|
301
|
+
.awsui_row_wih1l_18u8t_301:not(#\9),
|
|
302
|
+
.awsui_row-selected_wih1l_18u8t_302:not(#\9) {
|
|
303
303
|
/* used in test-utils */
|
|
304
304
|
}
|