@cloudscape-design/components 3.0.1365 → 3.0.1367
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/action-card/internal.d.ts.map +1 -1
- package/action-card/internal.js +5 -2
- package/action-card/internal.js.map +1 -1
- package/action-card/styles.css.js +17 -17
- package/action-card/styles.scoped.css +117 -117
- package/action-card/styles.selectors.js +17 -17
- package/alert/actions-wrapper/styles.css.js +1 -1
- package/alert/actions-wrapper/styles.scoped.css +3 -3
- package/alert/actions-wrapper/styles.selectors.js +1 -1
- package/alert/styles.css.js +27 -27
- package/alert/styles.scoped.css +67 -67
- package/alert/styles.selectors.js +27 -27
- package/anchor-navigation/styles.css.js +8 -8
- package/anchor-navigation/styles.scoped.css +22 -22
- package/anchor-navigation/styles.selectors.js +8 -8
- package/annotation-context/annotation/styles.css.js +13 -13
- package/annotation-context/annotation/styles.scoped.css +23 -23
- package/annotation-context/annotation/styles.selectors.js +13 -13
- package/app-layout/content-wrapper/styles.css.js +3 -3
- package/app-layout/content-wrapper/styles.scoped.css +10 -10
- package/app-layout/content-wrapper/styles.selectors.js +3 -3
- package/app-layout/drawer/styles.css.js +14 -14
- package/app-layout/drawer/styles.scoped.css +25 -25
- package/app-layout/drawer/styles.selectors.js +14 -14
- package/app-layout/mobile-toolbar/styles.css.js +8 -8
- package/app-layout/mobile-toolbar/styles.scoped.css +13 -13
- package/app-layout/mobile-toolbar/styles.selectors.js +8 -8
- package/app-layout/notifications/styles.css.js +3 -3
- package/app-layout/notifications/styles.scoped.css +7 -7
- package/app-layout/notifications/styles.selectors.js +3 -3
- package/app-layout/resize/styles.css.js +5 -5
- package/app-layout/resize/styles.scoped.css +14 -14
- package/app-layout/resize/styles.selectors.js +5 -5
- package/app-layout/styles.css.js +12 -12
- package/app-layout/styles.scoped.css +18 -18
- package/app-layout/styles.selectors.js +12 -12
- package/app-layout/toggles/index.d.ts.map +1 -1
- package/app-layout/toggles/index.js +1 -1
- package/app-layout/toggles/index.js.map +1 -1
- package/app-layout/toggles/styles.css.js +2 -2
- package/app-layout/toggles/styles.scoped.css +15 -15
- package/app-layout/toggles/styles.selectors.js +2 -2
- package/app-layout/visual-refresh/styles.css.js +86 -86
- package/app-layout/visual-refresh/styles.scoped.css +288 -288
- package/app-layout/visual-refresh/styles.selectors.js +86 -86
- package/app-layout/visual-refresh/trigger-button.d.ts.map +1 -1
- package/app-layout/visual-refresh/trigger-button.js +1 -1
- package/app-layout/visual-refresh/trigger-button.js.map +1 -1
- package/app-layout/visual-refresh-toolbar/drawer/styles.css.js +32 -32
- package/app-layout/visual-refresh-toolbar/drawer/styles.scoped.css +112 -112
- package/app-layout/visual-refresh-toolbar/drawer/styles.selectors.js +32 -32
- package/app-layout/visual-refresh-toolbar/navigation/styles.css.js +6 -6
- package/app-layout/visual-refresh-toolbar/navigation/styles.scoped.css +15 -15
- package/app-layout/visual-refresh-toolbar/navigation/styles.selectors.js +6 -6
- package/app-layout/visual-refresh-toolbar/notifications/styles.css.js +3 -3
- package/app-layout/visual-refresh-toolbar/notifications/styles.scoped.css +4 -4
- package/app-layout/visual-refresh-toolbar/notifications/styles.selectors.js +3 -3
- package/app-layout/visual-refresh-toolbar/skeleton/styles.css.js +30 -30
- package/app-layout/visual-refresh-toolbar/skeleton/styles.scoped.css +74 -74
- package/app-layout/visual-refresh-toolbar/skeleton/styles.selectors.js +30 -30
- package/app-layout/visual-refresh-toolbar/toolbar/styles.css.js +14 -14
- package/app-layout/visual-refresh-toolbar/toolbar/styles.scoped.css +44 -44
- package/app-layout/visual-refresh-toolbar/toolbar/styles.selectors.js +14 -14
- package/app-layout/visual-refresh-toolbar/toolbar/trigger-button/index.d.ts.map +1 -1
- package/app-layout/visual-refresh-toolbar/toolbar/trigger-button/index.js +1 -1
- package/app-layout/visual-refresh-toolbar/toolbar/trigger-button/index.js.map +1 -1
- package/area-chart/styles.css.js +6 -6
- package/area-chart/styles.scoped.css +11 -11
- package/area-chart/styles.selectors.js +6 -6
- package/attribute-editor/styles.css.js +15 -15
- package/attribute-editor/styles.scoped.css +32 -32
- package/attribute-editor/styles.selectors.js +15 -15
- package/badge/styles.css.js +10 -10
- package/badge/styles.scoped.css +11 -11
- package/badge/styles.selectors.js +10 -10
- package/box/styles.css.js +220 -220
- package/box/styles.scoped.css +433 -433
- package/box/styles.selectors.js +220 -220
- package/breadcrumb-group/all-items-dropdown.js +2 -2
- package/breadcrumb-group/all-items-dropdown.js.map +1 -1
- package/breadcrumb-group/item/styles.css.js +7 -7
- package/breadcrumb-group/item/styles.scoped.css +30 -30
- package/breadcrumb-group/item/styles.selectors.js +7 -7
- package/breadcrumb-group/styles.css.js +14 -14
- package/breadcrumb-group/styles.scoped.css +32 -32
- package/breadcrumb-group/styles.selectors.js +14 -14
- package/button/internal.d.ts.map +1 -1
- package/button/internal.js +2 -0
- package/button/internal.js.map +1 -1
- package/button/styles.css.js +23 -23
- package/button/styles.scoped.css +295 -295
- package/button/styles.selectors.js +23 -23
- package/button-dropdown/category-elements/expandable-category-element.d.ts.map +1 -1
- package/button-dropdown/category-elements/expandable-category-element.js +2 -2
- package/button-dropdown/category-elements/expandable-category-element.js.map +1 -1
- package/button-dropdown/category-elements/styles.css.js +18 -18
- package/button-dropdown/category-elements/styles.scoped.css +37 -37
- package/button-dropdown/category-elements/styles.selectors.js +18 -18
- package/button-dropdown/filter.d.ts +1 -1
- package/button-dropdown/filter.d.ts.map +1 -1
- package/button-dropdown/internal.d.ts.map +1 -1
- package/button-dropdown/internal.js +9 -3
- package/button-dropdown/internal.js.map +1 -1
- package/button-dropdown/item-element/index.d.ts.map +1 -1
- package/button-dropdown/item-element/index.js +2 -2
- package/button-dropdown/item-element/index.js.map +1 -1
- package/button-dropdown/item-element/styles.css.js +21 -21
- package/button-dropdown/item-element/styles.scoped.css +45 -45
- package/button-dropdown/item-element/styles.selectors.js +21 -21
- package/button-dropdown/styles.css.js +23 -23
- package/button-dropdown/styles.scoped.css +40 -40
- package/button-dropdown/styles.selectors.js +23 -23
- package/button-dropdown/utils/use-button-dropdown.d.ts +5 -2
- package/button-dropdown/utils/use-button-dropdown.d.ts.map +1 -1
- package/button-dropdown/utils/use-button-dropdown.js +14 -2
- package/button-dropdown/utils/use-button-dropdown.js.map +1 -1
- package/button-group/styles.css.js +4 -4
- package/button-group/styles.scoped.css +6 -6
- package/button-group/styles.selectors.js +4 -4
- package/calendar/styles.css.js +21 -21
- package/calendar/styles.scoped.css +62 -62
- package/calendar/styles.selectors.js +21 -21
- package/cards/styles.css.js +39 -38
- package/cards/styles.scoped.css +54 -51
- package/cards/styles.selectors.js +39 -38
- package/checkbox/styles.css.js +3 -3
- package/checkbox/styles.scoped.css +16 -16
- package/checkbox/styles.selectors.js +3 -3
- package/code-editor/resizable-box/styles.css.js +4 -4
- package/code-editor/resizable-box/styles.scoped.css +9 -9
- package/code-editor/resizable-box/styles.selectors.js +4 -4
- package/code-editor/styles.css.js +33 -33
- package/code-editor/styles.scoped.css +159 -159
- package/code-editor/styles.selectors.js +33 -33
- package/code-editor/tab-button.d.ts.map +1 -1
- package/code-editor/tab-button.js +1 -1
- package/code-editor/tab-button.js.map +1 -1
- package/collection-preferences/styles.css.js +38 -38
- package/collection-preferences/styles.scoped.css +52 -52
- package/collection-preferences/styles.selectors.js +38 -38
- package/column-layout/flexible-column-layout/styles.css.js +5 -5
- package/column-layout/flexible-column-layout/styles.scoped.css +12 -12
- package/column-layout/flexible-column-layout/styles.selectors.js +5 -5
- package/column-layout/styles.css.js +13 -13
- package/column-layout/styles.scoped.css +51 -51
- package/column-layout/styles.selectors.js +13 -13
- package/container/styles.css.js +33 -33
- package/container/styles.scoped.css +73 -72
- package/container/styles.selectors.js +33 -33
- package/content-layout/styles.css.js +14 -14
- package/content-layout/styles.scoped.css +30 -30
- package/content-layout/styles.selectors.js +14 -14
- package/copy-to-clipboard/styles.css.js +5 -5
- package/copy-to-clipboard/styles.scoped.css +7 -7
- package/copy-to-clipboard/styles.selectors.js +5 -5
- package/date-picker/styles.css.js +7 -7
- package/date-picker/styles.scoped.css +10 -10
- package/date-picker/styles.selectors.js +7 -7
- package/date-range-picker/calendar/grids/styles.css.js +30 -30
- package/date-range-picker/calendar/grids/styles.scoped.css +69 -69
- package/date-range-picker/calendar/grids/styles.selectors.js +30 -30
- package/date-range-picker/relative-range/styles.css.js +6 -6
- package/date-range-picker/relative-range/styles.scoped.css +13 -13
- package/date-range-picker/relative-range/styles.selectors.js +6 -6
- package/date-range-picker/styles.css.js +23 -23
- package/date-range-picker/styles.scoped.css +46 -46
- package/date-range-picker/styles.selectors.js +23 -23
- package/divider/styles.css.js +6 -6
- package/divider/styles.scoped.css +8 -8
- package/divider/styles.selectors.js +6 -6
- package/drawer/styles.css.js +29 -29
- package/drawer/styles.scoped.css +47 -47
- package/drawer/styles.selectors.js +29 -29
- package/dropdown/styles.css.js +20 -20
- package/dropdown/styles.scoped.css +54 -54
- package/dropdown/styles.selectors.js +20 -20
- package/expandable-section/expandable-section-header.d.ts.map +1 -1
- package/expandable-section/expandable-section-header.js +13 -7
- package/expandable-section/expandable-section-header.js.map +1 -1
- package/expandable-section/styles.css.js +43 -43
- package/expandable-section/styles.scoped.css +129 -129
- package/expandable-section/styles.selectors.js +43 -43
- package/file-dropzone/styles.css.js +3 -3
- package/file-dropzone/styles.scoped.css +6 -6
- package/file-dropzone/styles.selectors.js +3 -3
- package/file-input/styles.css.js +5 -5
- package/file-input/styles.scoped.css +18 -18
- package/file-input/styles.selectors.js +5 -5
- package/file-token-group/styles.css.js +23 -23
- package/file-token-group/styles.scoped.css +52 -52
- package/file-token-group/styles.selectors.js +23 -23
- package/file-upload/styles.css.js +2 -2
- package/file-upload/styles.scoped.css +4 -4
- package/file-upload/styles.selectors.js +2 -2
- package/flashbar/collapsible-flashbar.d.ts.map +1 -1
- package/flashbar/collapsible-flashbar.js +3 -3
- package/flashbar/collapsible-flashbar.js.map +1 -1
- package/flashbar/styles.css.js +50 -50
- package/flashbar/styles.scoped.css +249 -249
- package/flashbar/styles.selectors.js +50 -50
- package/form/styles.css.js +8 -8
- package/form/styles.scoped.css +16 -16
- package/form/styles.selectors.js +8 -8
- package/form-field/styles.css.js +24 -24
- package/form-field/styles.scoped.css +44 -44
- package/form-field/styles.selectors.js +24 -24
- package/grid/styles.css.js +53 -53
- package/grid/styles.scoped.css +58 -58
- package/grid/styles.selectors.js +53 -53
- package/header/styles.css.js +35 -35
- package/header/styles.scoped.css +83 -83
- package/header/styles.selectors.js +35 -35
- package/help-panel/styles.css.js +6 -6
- package/help-panel/styles.scoped.css +100 -100
- package/help-panel/styles.selectors.js +6 -6
- package/hotspot/styles.css.js +7 -7
- package/hotspot/styles.scoped.css +10 -10
- package/hotspot/styles.selectors.js +7 -7
- package/icon/styles.css.js +42 -42
- package/icon/styles.scoped.css +118 -118
- package/icon/styles.selectors.js +42 -42
- package/input/index.d.ts.map +1 -1
- package/input/index.js +3 -2
- package/input/index.js.map +1 -1
- package/input/interfaces.d.ts +6 -0
- package/input/interfaces.d.ts.map +1 -1
- package/input/interfaces.js.map +1 -1
- package/input/internal.d.ts +0 -1
- package/input/internal.d.ts.map +1 -1
- package/input/internal.js +26 -12
- package/input/internal.js.map +1 -1
- package/input/styles.css.js +29 -28
- package/input/styles.scoped.css +159 -156
- package/input/styles.selectors.js +29 -28
- package/internal/base-component/styles.scoped.css +2 -2
- package/internal/base-theme/styles.scoped.css +319 -319
- package/internal/components/abstract-switch/styles.css.js +13 -13
- package/internal/components/abstract-switch/styles.scoped.css +22 -22
- package/internal/components/abstract-switch/styles.selectors.js +13 -13
- package/internal/components/button-trigger/index.d.ts.map +1 -1
- package/internal/components/button-trigger/index.js +2 -2
- package/internal/components/button-trigger/index.js.map +1 -1
- package/internal/components/button-trigger/styles.css.js +14 -14
- package/internal/components/button-trigger/styles.scoped.css +43 -43
- package/internal/components/button-trigger/styles.selectors.js +14 -14
- package/internal/components/chart-legend/styles.css.js +6 -6
- package/internal/components/chart-legend/styles.scoped.css +16 -16
- package/internal/components/chart-legend/styles.selectors.js +6 -6
- package/internal/components/chart-popover/styles.css.js +3 -3
- package/internal/components/chart-popover/styles.scoped.css +6 -6
- package/internal/components/chart-popover/styles.selectors.js +3 -3
- package/internal/components/chart-series-details/styles.css.js +19 -19
- package/internal/components/chart-series-details/styles.scoped.css +39 -39
- package/internal/components/chart-series-details/styles.selectors.js +19 -19
- package/internal/components/chart-series-marker/styles.css.js +5 -5
- package/internal/components/chart-series-marker/styles.scoped.css +9 -9
- package/internal/components/chart-series-marker/styles.selectors.js +5 -5
- package/internal/components/checkbox-icon/styles.css.js +9 -9
- package/internal/components/checkbox-icon/styles.scoped.css +10 -10
- package/internal/components/checkbox-icon/styles.selectors.js +9 -9
- package/internal/components/drag-handle/button.d.ts.map +1 -1
- package/internal/components/drag-handle/button.js +3 -1
- package/internal/components/drag-handle/button.js.map +1 -1
- package/internal/components/drag-handle/styles.css.js +14 -14
- package/internal/components/drag-handle/styles.scoped.css +21 -21
- package/internal/components/drag-handle/styles.selectors.js +14 -14
- package/internal/components/drag-handle-wrapper/index.d.ts.map +1 -1
- package/internal/components/drag-handle-wrapper/index.js +2 -1
- package/internal/components/drag-handle-wrapper/index.js.map +1 -1
- package/internal/components/drag-handle-wrapper/styles.css.js +30 -30
- package/internal/components/drag-handle-wrapper/styles.scoped.css +84 -84
- package/internal/components/drag-handle-wrapper/styles.selectors.js +30 -30
- package/internal/components/dropdown-status/styles.css.js +2 -2
- package/internal/components/dropdown-status/styles.scoped.css +5 -5
- package/internal/components/dropdown-status/styles.selectors.js +2 -2
- package/internal/components/expand-toggle-button/index.d.ts.map +1 -1
- package/internal/components/expand-toggle-button/index.js +1 -1
- package/internal/components/expand-toggle-button/index.js.map +1 -1
- package/internal/components/expand-toggle-button/styles.css.js +4 -4
- package/internal/components/expand-toggle-button/styles.scoped.css +21 -21
- package/internal/components/expand-toggle-button/styles.selectors.js +4 -4
- package/internal/components/menu-dropdown/index.d.ts.map +1 -1
- package/internal/components/menu-dropdown/index.js +1 -1
- package/internal/components/menu-dropdown/index.js.map +1 -1
- package/internal/components/menu-dropdown/styles.css.js +7 -7
- package/internal/components/menu-dropdown/styles.scoped.css +18 -18
- package/internal/components/menu-dropdown/styles.selectors.js +7 -7
- package/internal/components/option/styles.css.js +17 -17
- package/internal/components/option/styles.scoped.css +34 -34
- package/internal/components/option/styles.selectors.js +17 -17
- package/internal/components/radio-button/styles.css.js +7 -7
- package/internal/components/radio-button/styles.scoped.css +24 -24
- package/internal/components/radio-button/styles.selectors.js +7 -7
- package/internal/components/selectable-item/styles.css.js +22 -22
- package/internal/components/selectable-item/styles.scoped.css +66 -66
- package/internal/components/selectable-item/styles.selectors.js +22 -22
- package/internal/components/sortable-area/styles.css.js +8 -8
- package/internal/components/sortable-area/styles.scoped.css +17 -17
- package/internal/components/sortable-area/styles.selectors.js +8 -8
- package/internal/components/structured-item/styles.css.js +7 -7
- package/internal/components/structured-item/styles.scoped.css +11 -11
- package/internal/components/structured-item/styles.selectors.js +7 -7
- package/internal/components/token-list/styles.css.js +10 -10
- package/internal/components/token-list/styles.scoped.css +33 -33
- package/internal/components/token-list/styles.selectors.js +10 -10
- package/internal/components/token-list/token-limit-toggle.d.ts.map +1 -1
- package/internal/components/token-list/token-limit-toggle.js +2 -2
- package/internal/components/token-list/token-limit-toggle.js.map +1 -1
- package/internal/environment.js +2 -2
- package/internal/environment.json +2 -2
- package/internal/generated/custom-css-properties/index.d.ts +1 -0
- package/internal/generated/custom-css-properties/index.d.ts.map +1 -1
- package/internal/generated/custom-css-properties/index.js +174 -173
- package/internal/generated/custom-css-properties/index.js.map +1 -1
- package/internal/generated/styles/tokens.js +200 -200
- package/internal/generated/theming/index.cjs +200 -200
- package/internal/generated/theming/index.js +200 -200
- package/internal/manifest.json +1 -1
- package/internal/utils/focus-visible.d.ts +14 -0
- package/internal/utils/focus-visible.d.ts.map +1 -0
- package/internal/utils/focus-visible.js +21 -0
- package/internal/utils/focus-visible.js.map +1 -0
- package/item-card/styles.css.js +14 -14
- package/item-card/styles.scoped.css +94 -94
- package/item-card/styles.selectors.js +14 -14
- package/key-value-pairs/styles.css.js +8 -8
- package/key-value-pairs/styles.scoped.css +14 -14
- package/key-value-pairs/styles.selectors.js +8 -8
- package/link/internal.d.ts.map +1 -1
- package/link/internal.js +2 -0
- package/link/internal.js.map +1 -1
- package/link/styles.css.js +21 -21
- package/link/styles.scoped.css +112 -112
- package/link/styles.selectors.js +21 -21
- package/list/styles.css.js +5 -5
- package/list/styles.scoped.css +9 -9
- package/list/styles.selectors.js +5 -5
- package/manifest.json +2 -2
- package/mixed-line-bar-chart/styles.css.js +11 -11
- package/mixed-line-bar-chart/styles.scoped.css +18 -18
- package/mixed-line-bar-chart/styles.selectors.js +11 -11
- package/modal/styles.css.js +31 -31
- package/modal/styles.scoped.css +65 -65
- package/modal/styles.selectors.js +31 -31
- package/multiselect/styles.css.js +5 -5
- package/multiselect/styles.scoped.css +6 -6
- package/multiselect/styles.selectors.js +5 -5
- package/package.json +1 -1
- package/pagination/internal.d.ts.map +1 -1
- package/pagination/internal.js +4 -4
- package/pagination/internal.js.map +1 -1
- package/pagination/styles.css.js +12 -12
- package/pagination/styles.scoped.css +36 -36
- package/pagination/styles.selectors.js +12 -12
- package/pie-chart/styles.css.js +27 -27
- package/pie-chart/styles.scoped.css +58 -58
- package/pie-chart/styles.selectors.js +27 -27
- package/popover/styles.css.js +58 -58
- package/popover/styles.scoped.css +102 -102
- package/popover/styles.selectors.js +58 -58
- package/progress-bar/styles.css.js +19 -19
- package/progress-bar/styles.scoped.css +64 -64
- package/progress-bar/styles.selectors.js +19 -19
- package/prompt-input/styles.css.js +26 -26
- package/prompt-input/styles.scoped.css +127 -127
- package/prompt-input/styles.selectors.js +26 -26
- package/property-filter/filtering-token/index.js +4 -4
- package/property-filter/filtering-token/index.js.map +1 -1
- package/property-filter/filtering-token/styles.css.js +18 -18
- package/property-filter/filtering-token/styles.scoped.css +54 -54
- package/property-filter/filtering-token/styles.selectors.js +18 -18
- package/property-filter/styles.css.js +39 -39
- package/property-filter/styles.scoped.css +75 -75
- package/property-filter/styles.selectors.js +39 -39
- package/radio-group/styles.css.js +5 -5
- package/radio-group/styles.scoped.css +10 -10
- package/radio-group/styles.selectors.js +5 -5
- package/s3-resource-selector/s3-in-context/styles.css.js +7 -7
- package/s3-resource-selector/s3-in-context/styles.scoped.css +13 -13
- package/s3-resource-selector/s3-in-context/styles.selectors.js +7 -7
- package/segmented-control/segment.d.ts.map +1 -1
- package/segmented-control/segment.js +1 -1
- package/segmented-control/segment.js.map +1 -1
- package/segmented-control/styles.css.js +16 -16
- package/segmented-control/styles.scoped.css +67 -67
- package/segmented-control/styles.selectors.js +16 -16
- package/select/parts/filter.d.ts +1 -1
- package/select/parts/filter.d.ts.map +1 -1
- package/select/parts/styles.css.js +21 -21
- package/select/parts/styles.scoped.css +38 -38
- package/select/parts/styles.selectors.js +21 -21
- package/side-navigation/parts.js +3 -3
- package/side-navigation/parts.js.map +1 -1
- package/side-navigation/styles.css.js +64 -64
- package/side-navigation/styles.scoped.css +162 -162
- package/side-navigation/styles.selectors.js +64 -64
- package/slider/styles.css.js +26 -26
- package/slider/styles.scoped.css +205 -205
- package/slider/styles.selectors.js +26 -26
- package/space-between/styles.css.js +23 -23
- package/space-between/styles.scoped.css +40 -40
- package/space-between/styles.selectors.js +23 -23
- package/spinner/styles.css.js +14 -14
- package/spinner/styles.scoped.css +55 -55
- package/spinner/styles.selectors.js +14 -14
- package/split-panel/styles.css.js +38 -38
- package/split-panel/styles.scoped.css +84 -84
- package/split-panel/styles.selectors.js +38 -38
- package/status-indicator/styles.css.js +25 -25
- package/status-indicator/styles.scoped.css +50 -50
- package/status-indicator/styles.selectors.js +25 -25
- package/steps/styles.css.js +17 -17
- package/steps/styles.scoped.css +51 -51
- package/steps/styles.selectors.js +17 -17
- package/table/body-cell/styles.css.js +48 -48
- package/table/body-cell/styles.scoped.css +816 -816
- package/table/body-cell/styles.selectors.js +48 -48
- package/table/header-cell/index.d.ts.map +1 -1
- package/table/header-cell/index.js +2 -1
- package/table/header-cell/index.js.map +1 -1
- package/table/header-cell/styles.css.js +38 -38
- package/table/header-cell/styles.scoped.css +156 -156
- package/table/header-cell/styles.selectors.js +38 -38
- package/table/resizer/styles.css.js +17 -17
- package/table/resizer/styles.scoped.css +39 -39
- package/table/resizer/styles.selectors.js +17 -17
- package/table/selection/styles.css.js +4 -4
- package/table/selection/styles.scoped.css +6 -6
- package/table/selection/styles.selectors.js +4 -4
- package/table/styles.css.js +37 -37
- package/table/styles.scoped.css +73 -70
- package/table/styles.selectors.js +37 -37
- package/tabs/styles.css.js +30 -30
- package/tabs/styles.scoped.css +105 -105
- package/tabs/styles.selectors.js +30 -30
- package/tabs/tab-header-bar.d.ts.map +1 -1
- package/tabs/tab-header-bar.js +1 -1
- package/tabs/tab-header-bar.js.map +1 -1
- package/tag-editor/styles.css.js +3 -3
- package/tag-editor/styles.scoped.css +14 -14
- package/tag-editor/styles.selectors.js +3 -3
- package/test-utils/dom/input/index.d.ts +1 -0
- package/test-utils/dom/input/index.js +3 -0
- package/test-utils/dom/input/index.js.map +1 -1
- package/test-utils/selectors/input/index.d.ts +1 -0
- package/test-utils/selectors/input/index.js +3 -0
- package/test-utils/selectors/input/index.js.map +1 -1
- package/text-content/styles.css.js +1 -1
- package/text-content/styles.scoped.css +73 -73
- package/text-content/styles.selectors.js +1 -1
- package/text-filter/styles.css.js +3 -3
- package/text-filter/styles.scoped.css +5 -5
- package/text-filter/styles.selectors.js +3 -3
- package/textarea/styles.css.js +9 -9
- package/textarea/styles.scoped.css +55 -55
- package/textarea/styles.selectors.js +9 -9
- package/tiles/styles.css.js +30 -30
- package/tiles/styles.scoped.css +123 -123
- package/tiles/styles.selectors.js +30 -30
- package/toggle/styles.css.js +10 -10
- package/toggle/styles.scoped.css +24 -24
- package/toggle/styles.selectors.js +10 -10
- package/token/dismiss-button.js +2 -2
- package/token/dismiss-button.js.map +1 -1
- package/token/styles.css.js +14 -14
- package/token/styles.scoped.css +58 -58
- package/token/styles.selectors.js +14 -14
- package/token-group/styles.css.js +5 -5
- package/token-group/styles.scoped.css +5 -5
- package/token-group/styles.selectors.js +5 -5
- package/tooltip/styles.css.js +2 -2
- package/tooltip/styles.scoped.css +5 -5
- package/tooltip/styles.selectors.js +2 -2
- package/top-navigation/parts/overflow-menu/menu-item.d.ts.map +1 -1
- package/top-navigation/parts/overflow-menu/menu-item.js +5 -5
- package/top-navigation/parts/overflow-menu/menu-item.js.map +1 -1
- package/top-navigation/styles.css.js +47 -47
- package/top-navigation/styles.scoped.css +97 -97
- package/top-navigation/styles.selectors.js +47 -47
- package/tree-view/styles.css.js +2 -2
- package/tree-view/styles.scoped.css +4 -4
- package/tree-view/styles.selectors.js +2 -2
- package/tree-view/tree-item/styles.css.js +10 -10
- package/tree-view/tree-item/styles.scoped.css +15 -15
- package/tree-view/tree-item/styles.selectors.js +10 -10
- package/tree-view/vertical-connector/styles.css.js +3 -3
- package/tree-view/vertical-connector/styles.scoped.css +4 -4
- package/tree-view/vertical-connector/styles.selectors.js +3 -3
- package/tutorial-panel/components/tutorial-detail-view/styles.css.js +20 -20
- package/tutorial-panel/components/tutorial-detail-view/styles.scoped.css +26 -26
- package/tutorial-panel/components/tutorial-detail-view/styles.selectors.js +20 -20
- package/tutorial-panel/components/tutorial-list/styles.css.js +18 -18
- package/tutorial-panel/components/tutorial-list/styles.scoped.css +33 -33
- package/tutorial-panel/components/tutorial-list/styles.selectors.js +18 -18
- package/tutorial-panel/styles.css.js +1 -1
- package/tutorial-panel/styles.scoped.css +7 -7
- package/tutorial-panel/styles.selectors.js +1 -1
- package/wizard/styles.css.js +30 -30
- package/wizard/styles.scoped.css +79 -79
- package/wizard/styles.selectors.js +30 -30
|
@@ -2,26 +2,26 @@
|
|
|
2
2
|
// es-module interop with Babel and Typescript
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
module.exports.default = {
|
|
5
|
-
"item-element": "awsui_item-
|
|
6
|
-
"no-content-styling": "awsui_no-content-
|
|
7
|
-
"disabled": "
|
|
8
|
-
"show-divider": "awsui_show-
|
|
9
|
-
"highlighted": "
|
|
10
|
-
"is-focused": "awsui_is-
|
|
11
|
-
"visual-refresh": "awsui_visual-
|
|
12
|
-
"menu-item": "awsui_menu-
|
|
13
|
-
"link-style": "awsui_link-
|
|
14
|
-
"current-breadcrumb": "awsui_current-
|
|
15
|
-
"link-style-highlighted": "awsui_link-style-
|
|
16
|
-
"has-category-header": "awsui_has-category-
|
|
17
|
-
"item-tooltip-wrapper": "awsui_item-tooltip-
|
|
18
|
-
"has-checkmark": "awsui_has-
|
|
19
|
-
"icon": "
|
|
20
|
-
"checkmark": "
|
|
21
|
-
"external-icon": "awsui_external-
|
|
22
|
-
"content-wrapper": "awsui_content-
|
|
23
|
-
"main-row": "awsui_main-
|
|
24
|
-
"label-tag": "awsui_label-
|
|
25
|
-
"secondary-text": "awsui_secondary-
|
|
5
|
+
"item-element": "awsui_item-element_93a1u_d5fl3_9",
|
|
6
|
+
"no-content-styling": "awsui_no-content-styling_93a1u_d5fl3_21",
|
|
7
|
+
"disabled": "awsui_disabled_93a1u_d5fl3_26",
|
|
8
|
+
"show-divider": "awsui_show-divider_93a1u_d5fl3_33",
|
|
9
|
+
"highlighted": "awsui_highlighted_93a1u_d5fl3_36",
|
|
10
|
+
"is-focused": "awsui_is-focused_93a1u_d5fl3_51",
|
|
11
|
+
"visual-refresh": "awsui_visual-refresh_93a1u_d5fl3_54",
|
|
12
|
+
"menu-item": "awsui_menu-item_93a1u_d5fl3_58",
|
|
13
|
+
"link-style": "awsui_link-style_93a1u_d5fl3_75",
|
|
14
|
+
"current-breadcrumb": "awsui_current-breadcrumb_93a1u_d5fl3_112",
|
|
15
|
+
"link-style-highlighted": "awsui_link-style-highlighted_93a1u_d5fl3_120",
|
|
16
|
+
"has-category-header": "awsui_has-category-header_93a1u_d5fl3_126",
|
|
17
|
+
"item-tooltip-wrapper": "awsui_item-tooltip-wrapper_93a1u_d5fl3_126",
|
|
18
|
+
"has-checkmark": "awsui_has-checkmark_93a1u_d5fl3_126",
|
|
19
|
+
"icon": "awsui_icon_93a1u_d5fl3_133",
|
|
20
|
+
"checkmark": "awsui_checkmark_93a1u_d5fl3_137",
|
|
21
|
+
"external-icon": "awsui_external-icon_93a1u_d5fl3_144",
|
|
22
|
+
"content-wrapper": "awsui_content-wrapper_93a1u_d5fl3_148",
|
|
23
|
+
"main-row": "awsui_main-row_93a1u_d5fl3_154",
|
|
24
|
+
"label-tag": "awsui_label-tag_93a1u_d5fl3_161",
|
|
25
|
+
"secondary-text": "awsui_secondary-text_93a1u_d5fl3_168"
|
|
26
26
|
};
|
|
27
27
|
|
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
|
|
2
2
|
import './styles.scoped.css';
|
|
3
3
|
export default {
|
|
4
|
-
"button-dropdown": "awsui_button-
|
|
5
|
-
"full-width": "awsui_full-
|
|
6
|
-
"items-list-container": "awsui_items-list-
|
|
7
|
-
"awsui-motion-fade-in-0": "awsui_awsui-motion-fade-in-
|
|
8
|
-
"rotate": "
|
|
9
|
-
"rotate-open": "awsui_rotate-
|
|
10
|
-
"header": "
|
|
11
|
-
"title": "
|
|
12
|
-
"description": "
|
|
13
|
-
"trigger-button": "awsui_trigger-
|
|
14
|
-
"loading": "
|
|
15
|
-
"split-trigger-wrapper": "awsui_split-trigger-
|
|
16
|
-
"trigger-item": "awsui_trigger-
|
|
17
|
-
"has-no-text": "awsui_has-no-
|
|
18
|
-
"visual-refresh": "awsui_visual-
|
|
19
|
-
"has-trigger-text": "awsui_has-trigger-
|
|
20
|
-
"variant-normal": "awsui_variant-
|
|
21
|
-
"split-trigger": "awsui_split-
|
|
22
|
-
"dropdown-trigger": "awsui_dropdown-
|
|
23
|
-
"main-action-full-width": "awsui_main-action-full-
|
|
24
|
-
"main-action-trigger-full-width": "awsui_main-action-trigger-full-
|
|
25
|
-
"filter": "
|
|
26
|
-
"test-utils-button-trigger": "awsui_test-utils-button-
|
|
4
|
+
"button-dropdown": "awsui_button-dropdown_sne0l_15v7y_9",
|
|
5
|
+
"full-width": "awsui_full-width_sne0l_15v7y_12",
|
|
6
|
+
"items-list-container": "awsui_items-list-container_sne0l_15v7y_17",
|
|
7
|
+
"awsui-motion-fade-in-0": "awsui_awsui-motion-fade-in-0_sne0l_15v7y_1",
|
|
8
|
+
"rotate": "awsui_rotate_sne0l_15v7y_36",
|
|
9
|
+
"rotate-open": "awsui_rotate-open_sne0l_15v7y_50",
|
|
10
|
+
"header": "awsui_header_sne0l_15v7y_54",
|
|
11
|
+
"title": "awsui_title_sne0l_15v7y_65",
|
|
12
|
+
"description": "awsui_description_sne0l_15v7y_66",
|
|
13
|
+
"trigger-button": "awsui_trigger-button_sne0l_15v7y_70",
|
|
14
|
+
"loading": "awsui_loading_sne0l_15v7y_74",
|
|
15
|
+
"split-trigger-wrapper": "awsui_split-trigger-wrapper_sne0l_15v7y_78",
|
|
16
|
+
"trigger-item": "awsui_trigger-item_sne0l_15v7y_81",
|
|
17
|
+
"has-no-text": "awsui_has-no-text_sne0l_15v7y_90",
|
|
18
|
+
"visual-refresh": "awsui_visual-refresh_sne0l_15v7y_93",
|
|
19
|
+
"has-trigger-text": "awsui_has-trigger-text_sne0l_15v7y_104",
|
|
20
|
+
"variant-normal": "awsui_variant-normal_sne0l_15v7y_107",
|
|
21
|
+
"split-trigger": "awsui_split-trigger_sne0l_15v7y_78",
|
|
22
|
+
"dropdown-trigger": "awsui_dropdown-trigger_sne0l_15v7y_118",
|
|
23
|
+
"main-action-full-width": "awsui_main-action-full-width_sne0l_15v7y_122",
|
|
24
|
+
"main-action-trigger-full-width": "awsui_main-action-trigger-full-width_sne0l_15v7y_126",
|
|
25
|
+
"filter": "awsui_filter_sne0l_15v7y_130",
|
|
26
|
+
"test-utils-button-trigger": "awsui_test-utils-button-trigger_sne0l_15v7y_136"
|
|
27
27
|
};
|
|
28
28
|
|
|
@@ -6,133 +6,133 @@
|
|
|
6
6
|
/* stylelint-enable @cloudscape-design/no-motion-outside-of-mixin, selector-combinator-disallowed-list, selector-pseudo-class-no-unknown, selector-class-pattern */
|
|
7
7
|
/* Style used for links in slots/components that are text heavy, to help links stand out among
|
|
8
8
|
surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F73#description */
|
|
9
|
-
.awsui_button-
|
|
9
|
+
.awsui_button-dropdown_sne0l_15v7y_9:not(#\9) {
|
|
10
10
|
display: inline-block;
|
|
11
11
|
}
|
|
12
|
-
.awsui_button-
|
|
12
|
+
.awsui_button-dropdown_sne0l_15v7y_9.awsui_full-width_sne0l_15v7y_12:not(#\9) {
|
|
13
13
|
inline-size: 100%;
|
|
14
14
|
display: block;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
-
.awsui_items-list-
|
|
17
|
+
.awsui_items-list-container_sne0l_15v7y_17:not(#\9) {
|
|
18
18
|
padding-block: 0;
|
|
19
19
|
padding-inline: 0;
|
|
20
20
|
margin-block: 0;
|
|
21
21
|
margin-inline: 0;
|
|
22
|
-
animation: awsui_awsui-motion-fade-in-
|
|
22
|
+
animation: awsui_awsui-motion-fade-in-0_sne0l_15v7y_1 500ms var(--motion-easing-show-quick-gb8584, ease-out);
|
|
23
23
|
animation-fill-mode: none;
|
|
24
24
|
}
|
|
25
25
|
@media (prefers-reduced-motion: reduce) {
|
|
26
|
-
.awsui_items-list-
|
|
26
|
+
.awsui_items-list-container_sne0l_15v7y_17:not(#\9) {
|
|
27
27
|
animation: none;
|
|
28
28
|
transition: none;
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
|
-
.awsui-motion-disabled .awsui_items-list-
|
|
31
|
+
.awsui-motion-disabled .awsui_items-list-container_sne0l_15v7y_17:not(#\9), .awsui-mode-entering .awsui_items-list-container_sne0l_15v7y_17:not(#\9) {
|
|
32
32
|
animation: none;
|
|
33
33
|
transition: none;
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
-
.
|
|
36
|
+
.awsui_rotate_sne0l_15v7y_36:not(#\9) {
|
|
37
37
|
transform: rotate(0deg);
|
|
38
|
-
transition: transform var(--motion-duration-rotate-180-
|
|
38
|
+
transition: transform var(--motion-duration-rotate-180-69rh8b, 135ms) var(--motion-easing-rotate-180-nmpsiw, cubic-bezier(0.165, 0.84, 0.44, 1));
|
|
39
39
|
}
|
|
40
40
|
@media (prefers-reduced-motion: reduce) {
|
|
41
|
-
.
|
|
41
|
+
.awsui_rotate_sne0l_15v7y_36:not(#\9) {
|
|
42
42
|
animation: none;
|
|
43
43
|
transition: none;
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
|
-
.awsui-motion-disabled .
|
|
46
|
+
.awsui-motion-disabled .awsui_rotate_sne0l_15v7y_36:not(#\9), .awsui-mode-entering .awsui_rotate_sne0l_15v7y_36:not(#\9) {
|
|
47
47
|
animation: none;
|
|
48
48
|
transition: none;
|
|
49
49
|
}
|
|
50
|
-
.awsui_rotate-
|
|
50
|
+
.awsui_rotate-open_sne0l_15v7y_50:not(#\9) {
|
|
51
51
|
transform: rotate(-180deg);
|
|
52
52
|
}
|
|
53
53
|
|
|
54
|
-
.
|
|
54
|
+
.awsui_header_sne0l_15v7y_54:not(#\9) {
|
|
55
55
|
display: flex;
|
|
56
56
|
flex-direction: column;
|
|
57
57
|
list-style: none;
|
|
58
|
-
padding-block: var(--space-s-
|
|
59
|
-
padding-inline: var(--space-l-
|
|
58
|
+
padding-block: var(--space-s-kll7oj, 12px);
|
|
59
|
+
padding-inline: var(--space-l-dpyxli, 20px);
|
|
60
60
|
border-block-start: var(--border-width-dropdown-4gpjx5, 2px) solid transparent;
|
|
61
61
|
border-block-end: var(--border-width-dropdown-4gpjx5, 2px) solid var(--color-border-dropdown-group-0ocu9j, #c6c6cd);
|
|
62
62
|
border-inline: var(--border-width-dropdown-4gpjx5, 2px) solid transparent;
|
|
63
63
|
}
|
|
64
64
|
|
|
65
|
-
.
|
|
66
|
-
.
|
|
65
|
+
.awsui_title_sne0l_15v7y_65:not(#\9),
|
|
66
|
+
.awsui_description_sne0l_15v7y_66:not(#\9) {
|
|
67
67
|
color: var(--color-text-top-navigation-title-kiop92, #0f141a);
|
|
68
68
|
}
|
|
69
69
|
|
|
70
|
-
.awsui_trigger-
|
|
70
|
+
.awsui_trigger-button_sne0l_15v7y_70.awsui_full-width_sne0l_15v7y_12:not(#\9) {
|
|
71
71
|
display: grid;
|
|
72
72
|
grid-template-columns: 1fr auto;
|
|
73
73
|
}
|
|
74
|
-
.awsui_trigger-
|
|
74
|
+
.awsui_trigger-button_sne0l_15v7y_70.awsui_full-width_sne0l_15v7y_12.awsui_loading_sne0l_15v7y_74:not(#\9) {
|
|
75
75
|
grid-template-columns: auto 1fr auto;
|
|
76
76
|
}
|
|
77
77
|
|
|
78
|
-
.awsui_split-trigger-
|
|
78
|
+
.awsui_split-trigger-wrapper_sne0l_15v7y_78:not(#\9) {
|
|
79
79
|
display: flex;
|
|
80
80
|
}
|
|
81
|
-
.awsui_split-trigger-
|
|
81
|
+
.awsui_split-trigger-wrapper_sne0l_15v7y_78 > .awsui_trigger-item_sne0l_15v7y_81 > .awsui_trigger-button_sne0l_15v7y_70:not(#\9):focus, .awsui_split-trigger-wrapper_sne0l_15v7y_78 > .awsui_trigger-item_sne0l_15v7y_81 > .awsui_trigger-button_sne0l_15v7y_70:not(#\9):hover {
|
|
82
82
|
z-index: 1;
|
|
83
83
|
}
|
|
84
|
-
.awsui_split-trigger-
|
|
84
|
+
.awsui_split-trigger-wrapper_sne0l_15v7y_78 > .awsui_trigger-item_sne0l_15v7y_81:not(#\9):not(:last-child) > .awsui_trigger-button_sne0l_15v7y_70 {
|
|
85
85
|
border-start-end-radius: 0;
|
|
86
86
|
border-end-end-radius: 0;
|
|
87
|
-
padding-inline-end: var(--space-m-
|
|
88
|
-
margin-inline-end: var(--space-xxxs-
|
|
87
|
+
padding-inline-end: var(--space-m-n8iq8o, 16px);
|
|
88
|
+
margin-inline-end: var(--space-xxxs-3ulqs3, 2px);
|
|
89
89
|
}
|
|
90
|
-
.awsui_split-trigger-
|
|
91
|
-
padding-inline: var(--space-button-icon-only-horizontal-
|
|
90
|
+
.awsui_split-trigger-wrapper_sne0l_15v7y_78 > .awsui_trigger-item_sne0l_15v7y_81:not(#\9):not(:last-child) > .awsui_trigger-button_sne0l_15v7y_70.awsui_has-no-text_sne0l_15v7y_90 {
|
|
91
|
+
padding-inline: var(--space-button-icon-only-horizontal-p5zb7m, 6px);
|
|
92
92
|
}
|
|
93
|
-
.awsui_split-trigger-
|
|
94
|
-
padding-inline-start: calc(var(--space-s-
|
|
93
|
+
.awsui_split-trigger-wrapper_sne0l_15v7y_78 > .awsui_trigger-item_sne0l_15v7y_81:not(#\9):not(:last-child) > .awsui_trigger-button_sne0l_15v7y_70.awsui_has-no-text_sne0l_15v7y_90.awsui_visual-refresh_sne0l_15v7y_93 {
|
|
94
|
+
padding-inline-start: calc(var(--space-s-kll7oj, 12px) - 2px);
|
|
95
95
|
}
|
|
96
|
-
.awsui_split-trigger-
|
|
96
|
+
.awsui_split-trigger-wrapper_sne0l_15v7y_78 > .awsui_trigger-item_sne0l_15v7y_81:not(#\9):not(:first-child) > .awsui_trigger-button_sne0l_15v7y_70 {
|
|
97
97
|
border-start-start-radius: 0;
|
|
98
98
|
border-end-start-radius: 0;
|
|
99
|
-
padding-inline: calc(var(--space-xs-
|
|
99
|
+
padding-inline: calc(var(--space-xs-m9b7jf, 8px) - 2px);
|
|
100
100
|
}
|
|
101
|
-
.awsui_split-trigger-
|
|
102
|
-
padding-inline-end: calc(var(--space-s-
|
|
101
|
+
.awsui_split-trigger-wrapper_sne0l_15v7y_78 > .awsui_trigger-item_sne0l_15v7y_81:not(#\9):not(:first-child).awsui_visual-refresh_sne0l_15v7y_93 > .awsui_trigger-button_sne0l_15v7y_70 {
|
|
102
|
+
padding-inline-end: calc(var(--space-s-kll7oj, 12px) - 2px);
|
|
103
103
|
}
|
|
104
|
-
.awsui_split-trigger-
|
|
104
|
+
.awsui_split-trigger-wrapper_sne0l_15v7y_78 > .awsui_trigger-item_sne0l_15v7y_81:not(#\9):not(:first-child).awsui_has-trigger-text_sne0l_15v7y_104 {
|
|
105
105
|
/* this comment keeps the class in the style sheet */
|
|
106
106
|
}
|
|
107
|
-
.awsui_split-trigger-
|
|
107
|
+
.awsui_split-trigger-wrapper_sne0l_15v7y_78 > .awsui_trigger-item_sne0l_15v7y_81.awsui_variant-normal_sne0l_15v7y_107:not(#\9):not(:last-child) > .awsui_trigger-button_sne0l_15v7y_70 {
|
|
108
108
|
margin-inline-end: 0;
|
|
109
109
|
}
|
|
110
|
-
.awsui_split-trigger-
|
|
110
|
+
.awsui_split-trigger-wrapper_sne0l_15v7y_78 > .awsui_trigger-item_sne0l_15v7y_81.awsui_variant-normal_sne0l_15v7y_107:not(#\9):not(:first-child) > .awsui_trigger-button_sne0l_15v7y_70 {
|
|
111
111
|
margin-inline-start: calc(var(--border-width-button-lffd4t, 2px) * -1);
|
|
112
112
|
}
|
|
113
113
|
|
|
114
|
-
.awsui_split-
|
|
114
|
+
.awsui_split-trigger_sne0l_15v7y_78:not(#\9) {
|
|
115
115
|
display: contents;
|
|
116
116
|
}
|
|
117
117
|
|
|
118
|
-
.awsui_dropdown-
|
|
118
|
+
.awsui_dropdown-trigger_sne0l_15v7y_118:not(#\9) {
|
|
119
119
|
display: contents;
|
|
120
120
|
}
|
|
121
121
|
|
|
122
|
-
.awsui_main-action-full-
|
|
122
|
+
.awsui_main-action-full-width_sne0l_15v7y_122:not(#\9) {
|
|
123
123
|
flex: 1 1 0;
|
|
124
124
|
}
|
|
125
125
|
|
|
126
|
-
.awsui_main-action-trigger-full-
|
|
126
|
+
.awsui_main-action-trigger-full-width_sne0l_15v7y_126:not(#\9) {
|
|
127
127
|
flex: 0 0 auto;
|
|
128
128
|
}
|
|
129
129
|
|
|
130
|
-
.
|
|
130
|
+
.awsui_filter_sne0l_15v7y_130:not(#\9) {
|
|
131
131
|
position: relative;
|
|
132
132
|
z-index: 4;
|
|
133
133
|
flex-shrink: 0;
|
|
134
134
|
}
|
|
135
135
|
|
|
136
|
-
.awsui_test-utils-button-
|
|
136
|
+
.awsui_test-utils-button-trigger_sne0l_15v7y_136:not(#\9) {
|
|
137
137
|
/* used in test-utils */
|
|
138
138
|
}
|
|
@@ -2,28 +2,28 @@
|
|
|
2
2
|
// es-module interop with Babel and Typescript
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
module.exports.default = {
|
|
5
|
-
"button-dropdown": "awsui_button-
|
|
6
|
-
"full-width": "awsui_full-
|
|
7
|
-
"items-list-container": "awsui_items-list-
|
|
8
|
-
"awsui-motion-fade-in-0": "awsui_awsui-motion-fade-in-
|
|
9
|
-
"rotate": "
|
|
10
|
-
"rotate-open": "awsui_rotate-
|
|
11
|
-
"header": "
|
|
12
|
-
"title": "
|
|
13
|
-
"description": "
|
|
14
|
-
"trigger-button": "awsui_trigger-
|
|
15
|
-
"loading": "
|
|
16
|
-
"split-trigger-wrapper": "awsui_split-trigger-
|
|
17
|
-
"trigger-item": "awsui_trigger-
|
|
18
|
-
"has-no-text": "awsui_has-no-
|
|
19
|
-
"visual-refresh": "awsui_visual-
|
|
20
|
-
"has-trigger-text": "awsui_has-trigger-
|
|
21
|
-
"variant-normal": "awsui_variant-
|
|
22
|
-
"split-trigger": "awsui_split-
|
|
23
|
-
"dropdown-trigger": "awsui_dropdown-
|
|
24
|
-
"main-action-full-width": "awsui_main-action-full-
|
|
25
|
-
"main-action-trigger-full-width": "awsui_main-action-trigger-full-
|
|
26
|
-
"filter": "
|
|
27
|
-
"test-utils-button-trigger": "awsui_test-utils-button-
|
|
5
|
+
"button-dropdown": "awsui_button-dropdown_sne0l_15v7y_9",
|
|
6
|
+
"full-width": "awsui_full-width_sne0l_15v7y_12",
|
|
7
|
+
"items-list-container": "awsui_items-list-container_sne0l_15v7y_17",
|
|
8
|
+
"awsui-motion-fade-in-0": "awsui_awsui-motion-fade-in-0_sne0l_15v7y_1",
|
|
9
|
+
"rotate": "awsui_rotate_sne0l_15v7y_36",
|
|
10
|
+
"rotate-open": "awsui_rotate-open_sne0l_15v7y_50",
|
|
11
|
+
"header": "awsui_header_sne0l_15v7y_54",
|
|
12
|
+
"title": "awsui_title_sne0l_15v7y_65",
|
|
13
|
+
"description": "awsui_description_sne0l_15v7y_66",
|
|
14
|
+
"trigger-button": "awsui_trigger-button_sne0l_15v7y_70",
|
|
15
|
+
"loading": "awsui_loading_sne0l_15v7y_74",
|
|
16
|
+
"split-trigger-wrapper": "awsui_split-trigger-wrapper_sne0l_15v7y_78",
|
|
17
|
+
"trigger-item": "awsui_trigger-item_sne0l_15v7y_81",
|
|
18
|
+
"has-no-text": "awsui_has-no-text_sne0l_15v7y_90",
|
|
19
|
+
"visual-refresh": "awsui_visual-refresh_sne0l_15v7y_93",
|
|
20
|
+
"has-trigger-text": "awsui_has-trigger-text_sne0l_15v7y_104",
|
|
21
|
+
"variant-normal": "awsui_variant-normal_sne0l_15v7y_107",
|
|
22
|
+
"split-trigger": "awsui_split-trigger_sne0l_15v7y_78",
|
|
23
|
+
"dropdown-trigger": "awsui_dropdown-trigger_sne0l_15v7y_118",
|
|
24
|
+
"main-action-full-width": "awsui_main-action-full-width_sne0l_15v7y_122",
|
|
25
|
+
"main-action-trigger-full-width": "awsui_main-action-trigger-full-width_sne0l_15v7y_126",
|
|
26
|
+
"filter": "awsui_filter_sne0l_15v7y_130",
|
|
27
|
+
"test-utils-button-trigger": "awsui_test-utils-button-trigger_sne0l_15v7y_136"
|
|
28
28
|
};
|
|
29
29
|
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { CancelableEventHandler } from '../../types/events';
|
|
2
|
+
import { CancelableEventHandler, NonCancelableCustomEvent } from '../../types/events';
|
|
3
3
|
import { ButtonDropdownProps, ButtonDropdownSettings, GroupToggle, HighlightProps, ItemActivate } from '../interfaces';
|
|
4
|
+
type DropdownFocusLeaveEvent = NonCancelableCustomEvent<Pick<React.FocusEvent, 'target' | 'relatedTarget'>>;
|
|
4
5
|
interface UseButtonDropdownOptions extends ButtonDropdownSettings {
|
|
5
6
|
items: ButtonDropdownProps.Items;
|
|
6
7
|
onItemClick?: CancelableEventHandler<ButtonDropdownProps.ItemClickDetails>;
|
|
7
8
|
onItemFollow?: CancelableEventHandler<ButtonDropdownProps.ItemClickDetails>;
|
|
8
9
|
onReturnFocus: () => void;
|
|
10
|
+
isTriggerElement: (element: Element) => boolean;
|
|
9
11
|
expandToViewport?: boolean;
|
|
10
12
|
hasFiltering: boolean;
|
|
11
13
|
}
|
|
@@ -15,7 +17,7 @@ interface UseButtonDropdownApi extends HighlightProps {
|
|
|
15
17
|
onKeyUp: (event: React.KeyboardEvent) => void;
|
|
16
18
|
onItemActivate: ItemActivate;
|
|
17
19
|
onGroupToggle: GroupToggle;
|
|
18
|
-
onDropdownFocusLeave: () => void;
|
|
20
|
+
onDropdownFocusLeave: (event: DropdownFocusLeaveEvent) => void;
|
|
19
21
|
onDropdownBlur: () => void;
|
|
20
22
|
toggleDropdown: (options?: {
|
|
21
23
|
moveHighlightOnOpen?: boolean;
|
|
@@ -32,6 +34,7 @@ export declare function useButtonDropdown({
|
|
|
32
34
|
onItemClick,
|
|
33
35
|
onItemFollow,
|
|
34
36
|
onReturnFocus,
|
|
37
|
+
isTriggerElement,
|
|
35
38
|
hasExpandableGroups,
|
|
36
39
|
isInRestrictedView,
|
|
37
40
|
expandToViewport,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-button-dropdown.d.ts","sourceRoot":"","sources":["../../../../src/button-dropdown/utils/use-button-dropdown.ts"],"names":[],"mappings":"AAEA,OAAO,KAA+C,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"use-button-dropdown.d.ts","sourceRoot":"","sources":["../../../../src/button-dropdown/utils/use-button-dropdown.ts"],"names":[],"mappings":"AAEA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAOpE,OAAO,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AACtF,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAKvH,KAAK,uBAAuB,GAAG,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,QAAQ,GAAG,eAAe,CAAC,CAAC,CAAC;AAE5G,UAAU,wBAAyB,SAAQ,sBAAsB;IAC/D,KAAK,EAAE,mBAAmB,CAAC,KAAK,CAAC;IACjC,WAAW,CAAC,EAAE,sBAAsB,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;IAC3E,YAAY,CAAC,EAAE,sBAAsB,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;IAC5E,aAAa,EAAE,MAAM,IAAI,CAAC;IAE1B,gBAAgB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC;IAChD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,UAAU,oBAAqB,SAAQ,cAAc;IACnD,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,KAAK,IAAI,CAAC;IAChD,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,KAAK,IAAI,CAAC;IAC9C,cAAc,EAAE,YAAY,CAAC;IAC7B,aAAa,EAAE,WAAW,CAAC;IAC3B,oBAAoB,EAAE,CAAC,KAAK,EAAE,uBAAuB,KAAK,IAAI,CAAC;IAC/D,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,cAAc,EAAE,CAAC,OAAO,CAAC,EAAE;QAAE,mBAAmB,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IACtE,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,eAAe,EAAE,CAAC,YAAY,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,aAAa,EAAE,mBAAmB,CAAC,KAAK,CAAC;IACzC,oBAAoB,EAAE,OAAO,CAAC;CAC/B;AAED,wBAAgB,iBAAiB,CAAC,EAChC,KAAK,EACL,WAAW,EACX,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACnB,kBAA0B,EAC1B,gBAAwB,EACxB,YAAY,GACb,EAAE,wBAAwB,GAAG,oBAAoB,CAuQjD"}
|
|
@@ -4,10 +4,12 @@ import { useEffect, useMemo, useRef, useState } from 'react';
|
|
|
4
4
|
import { useOpenState } from '../../internal/components/options-list/utils/use-open-state';
|
|
5
5
|
import { fireCancelableEvent, isPlainLeftClick } from '../../internal/events';
|
|
6
6
|
import { KeyCode } from '../../internal/keycode';
|
|
7
|
+
import { isElement } from '../../internal/utils/dom';
|
|
8
|
+
import { isKeyboardInteraction } from '../../internal/utils/focus-visible';
|
|
7
9
|
import { filterItems } from './filter-items';
|
|
8
10
|
import useHighlightedMenu from './use-highlighted-menu';
|
|
9
11
|
import { getItemTarget, isCheckboxItem, isItemGroup, isLinkItem } from './utils';
|
|
10
|
-
export function useButtonDropdown({ items, onItemClick, onItemFollow, onReturnFocus, hasExpandableGroups, isInRestrictedView = false, expandToViewport = false, hasFiltering, }) {
|
|
12
|
+
export function useButtonDropdown({ items, onItemClick, onItemFollow, onReturnFocus, isTriggerElement, hasExpandableGroups, isInRestrictedView = false, expandToViewport = false, hasFiltering, }) {
|
|
11
13
|
const [filteringValue, setFilteringValue] = useState('');
|
|
12
14
|
const filteredItems = useMemo(() => (hasFiltering && filteringValue ? filterItems(items, filteringValue) : items), [hasFiltering, filteringValue, items]);
|
|
13
15
|
const showExpandableGroups = hasExpandableGroups && !filteringValue;
|
|
@@ -41,8 +43,18 @@ export function useButtonDropdown({ items, onItemClick, onItemFollow, onReturnFo
|
|
|
41
43
|
}
|
|
42
44
|
openStateProps.toggleDropdown();
|
|
43
45
|
};
|
|
44
|
-
const onDropdownFocusLeave = () => {
|
|
46
|
+
const onDropdownFocusLeave = (event) => {
|
|
45
47
|
if (hasFiltering && isOpen) {
|
|
48
|
+
const { relatedTarget } = event.detail;
|
|
49
|
+
// When focus moves from the filter input to the trigger via a mouse click, the trigger's
|
|
50
|
+
// own click handler already closes the dropdown.
|
|
51
|
+
const clickedTrigger = !!relatedTarget &&
|
|
52
|
+
isElement(relatedTarget) &&
|
|
53
|
+
isTriggerElement(relatedTarget) &&
|
|
54
|
+
!isKeyboardInteraction(relatedTarget);
|
|
55
|
+
if (clickedTrigger) {
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
46
58
|
if (expandToViewport) {
|
|
47
59
|
// When expanded to viewport the focus can't move naturally to the next element.
|
|
48
60
|
// Returning the focus to the trigger instead.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-button-dropdown.js","sourceRoot":"","sources":["../../../../src/button-dropdown/utils/use-button-dropdown.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';\n\nimport { useOpenState } from '../../internal/components/options-list/utils/use-open-state';\nimport { fireCancelableEvent, isPlainLeftClick } from '../../internal/events';\nimport { KeyCode } from '../../internal/keycode';\nimport { CancelableEventHandler } from '../../types/events';\nimport { ButtonDropdownProps, ButtonDropdownSettings, GroupToggle, HighlightProps, ItemActivate } from '../interfaces';\nimport { filterItems } from './filter-items';\nimport useHighlightedMenu from './use-highlighted-menu';\nimport { getItemTarget, isCheckboxItem, isItemGroup, isLinkItem } from './utils';\n\ninterface UseButtonDropdownOptions extends ButtonDropdownSettings {\n items: ButtonDropdownProps.Items;\n onItemClick?: CancelableEventHandler<ButtonDropdownProps.ItemClickDetails>;\n onItemFollow?: CancelableEventHandler<ButtonDropdownProps.ItemClickDetails>;\n onReturnFocus: () => void;\n expandToViewport?: boolean;\n hasFiltering: boolean;\n}\n\ninterface UseButtonDropdownApi extends HighlightProps {\n isOpen: boolean;\n onKeyDown: (event: React.KeyboardEvent) => void;\n onKeyUp: (event: React.KeyboardEvent) => void;\n onItemActivate: ItemActivate;\n onGroupToggle: GroupToggle;\n onDropdownFocusLeave: () => void;\n onDropdownBlur: () => void;\n toggleDropdown: (options?: { moveHighlightOnOpen?: boolean }) => void;\n closeDropdown: () => void;\n setIsUsingMouse: (isUsingMouse: boolean) => void;\n filteringValue: string;\n setFilteringValue: (value: string) => void;\n filteredItems: ButtonDropdownProps.Items;\n showExpandableGroups: boolean;\n}\n\nexport function useButtonDropdown({\n items,\n onItemClick,\n onItemFollow,\n onReturnFocus,\n hasExpandableGroups,\n isInRestrictedView = false,\n expandToViewport = false,\n hasFiltering,\n}: UseButtonDropdownOptions): UseButtonDropdownApi {\n const [filteringValue, setFilteringValue] = useState('');\n\n const filteredItems = useMemo(\n () => (hasFiltering && filteringValue ? filterItems(items, filteringValue) : items),\n [hasFiltering, filteringValue, items]\n );\n\n const showExpandableGroups = hasExpandableGroups && !filteringValue;\n\n const {\n targetItem,\n isHighlighted,\n isKeyboardHighlight,\n isExpanded,\n highlightItem,\n moveHighlight,\n expandGroup,\n collapseGroup,\n reset,\n setIsUsingMouse,\n } = useHighlightedMenu({\n items: filteredItems,\n hasExpandableGroups: showExpandableGroups,\n isInRestrictedView,\n });\n\n // If the filtering input changes, the options list also changes,\n // so the highlight isn't valid anymore.\n const prevFilteringValue = useRef(filteringValue);\n useEffect(() => {\n if (prevFilteringValue.current !== filteringValue) {\n prevFilteringValue.current = filteringValue;\n reset();\n }\n }, [filteringValue, reset]);\n\n const { isOpen, closeDropdown: closeDropdownState, ...openStateProps } = useOpenState({ onClose: reset });\n\n const closeDropdown = () => {\n setFilteringValue('');\n closeDropdownState();\n };\n\n const toggleDropdown = (options: { moveHighlightOnOpen?: boolean } = {}) => {\n const moveHighlightOnOpen = options.moveHighlightOnOpen ?? true;\n if (!isOpen && moveHighlightOnOpen && !hasFiltering) {\n moveHighlight(1);\n }\n if (isOpen) {\n setFilteringValue('');\n }\n openStateProps.toggleDropdown();\n };\n\n const onDropdownFocusLeave = () => {\n if (hasFiltering && isOpen) {\n if (expandToViewport) {\n // When expanded to viewport the focus can't move naturally to the next element.\n // Returning the focus to the trigger instead.\n onReturnFocus();\n }\n closeDropdown();\n }\n };\n\n // Close when focus leaves the entire widget (trigger and menu), for example when focus\n // moves to an app layout drawer or an element in a different frame. The filtering variant\n // keeps focus inside the dropdown content and closes via onDropdownFocusLeave instead.\n const onDropdownBlur = () => {\n if (isOpen && !hasFiltering) {\n closeDropdown();\n }\n };\n\n const onGroupToggle: GroupToggle = item => (!isExpanded(item) ? expandGroup(item) : collapseGroup());\n\n const onItemActivate: ItemActivate = (item, event) => {\n const isCheckbox = isCheckboxItem(item);\n const isLink = isLinkItem(item);\n const details = {\n id: item.id || 'undefined',\n href: isLink ? item.href : undefined,\n external: isLink ? item.external : undefined,\n target: isLink ? getItemTarget(item) : undefined,\n checked: isCheckbox ? !item.checked : undefined,\n };\n onReturnFocus();\n if (onItemFollow && isLink && isPlainLeftClick(event)) {\n fireCancelableEvent(onItemFollow, details, event);\n }\n if (onItemClick) {\n fireCancelableEvent(onItemClick, details, event);\n }\n closeDropdown();\n };\n\n const openAndSelectFirst = (event: React.KeyboardEvent) => {\n toggleDropdown();\n event.preventDefault();\n };\n\n const actOnParentDropdown = (event: React.KeyboardEvent) => {\n // if there is no highlighted item we act on the trigger by opening or closing dropdown\n if (!targetItem) {\n if (isOpen && !isInRestrictedView) {\n toggleDropdown();\n } else {\n openAndSelectFirst(event);\n }\n } else {\n if (isItemGroup(targetItem)) {\n onGroupToggle(targetItem, event);\n } else {\n onItemActivate(targetItem, event);\n }\n }\n };\n\n const activate = (event: React.KeyboardEvent, isEnter?: boolean) => {\n setIsUsingMouse(false);\n\n // if item is a link we rely on default behavior of an anchor, no need to prevent\n if (targetItem && isLinkItem(targetItem) && isEnter) {\n return;\n }\n\n event.preventDefault();\n actOnParentDropdown(event);\n };\n\n const onKeyDown = (event: React.KeyboardEvent) => {\n setIsUsingMouse(false);\n switch (event.keyCode) {\n case KeyCode.down: {\n if (!isOpen) {\n toggleDropdown();\n if (!hasFiltering) {\n moveHighlight(1, true);\n }\n } else {\n moveHighlight(1);\n }\n event.preventDefault();\n break;\n }\n case KeyCode.up: {\n if (!isOpen) {\n toggleDropdown();\n if (!hasFiltering) {\n moveHighlight(-1, true);\n }\n } else {\n moveHighlight(-1);\n }\n event.preventDefault();\n break;\n }\n case KeyCode.space: {\n // Prevent scrolling the list of items and highlighting the trigger when filtering\n // isn't active. Hitting space when filtering is active should just type a space\n // character into the input, or activate the clear button.\n if (!hasFiltering && !isOpen) {\n event.preventDefault();\n }\n break;\n }\n case KeyCode.enter: {\n // While filtering, pressing Enter without a highlighted item should not select\n // any item or close the dropdown.\n if (isOpen && hasFiltering && !targetItem) {\n break;\n }\n if (!targetItem?.disabled) {\n activate(event, true);\n }\n break;\n }\n case KeyCode.left:\n case KeyCode.right: {\n // When filtering is enabled and there's text in the filter input, left/right\n // arrow keys should move the caret between the characters.\n if (hasFiltering && filteringValue) {\n break;\n }\n if (targetItem && !targetItem.disabled && isItemGroup(targetItem) && !isExpanded(targetItem)) {\n expandGroup();\n } else if (hasExpandableGroups) {\n collapseGroup();\n }\n\n event.preventDefault();\n break;\n }\n case KeyCode.escape: {\n onReturnFocus();\n closeDropdown();\n event.preventDefault();\n if (isOpen) {\n event.stopPropagation();\n }\n break;\n }\n case KeyCode.tab: {\n // In filtering mode the dropdown contains multiple focusable elements (the filter\n // input and its clear button). Tabbing between them must not close the dropdown, so\n // closing on Tab is handled by onDropdownFocusLeave instead, which only fires once\n // focus actually leaves the dropdown.\n if (hasFiltering) {\n break;\n }\n // When expanded to viewport the focus can't move naturally to the next element.\n // Returning the focus to the trigger instead.\n if (expandToViewport) {\n onReturnFocus();\n }\n closeDropdown();\n break;\n }\n }\n };\n const onKeyUp = (event: React.KeyboardEvent) => {\n // When using a roving tabindex (filtering disabled), we need to handle activating items\n // with Space separately because there is a bug in Firefox where changing the focus during\n // a Space keydown event it will trigger unexpected click events on the new element.\n // See https://bugzilla.mozilla.org/show_bug.cgi?id=1220143\n if (event.keyCode === KeyCode.space && !targetItem?.disabled && !hasFiltering) {\n activate(event);\n }\n };\n\n return {\n isOpen,\n targetItem,\n isHighlighted,\n isKeyboardHighlight,\n isExpanded,\n highlightItem,\n onKeyDown,\n onKeyUp,\n onItemActivate,\n onGroupToggle,\n onDropdownFocusLeave,\n onDropdownBlur,\n toggleDropdown,\n closeDropdown,\n setIsUsingMouse,\n filteringValue,\n setFilteringValue,\n filteredItems,\n showExpandableGroups,\n };\n}\n"]}
|
|
1
|
+
{"version":3,"file":"use-button-dropdown.js","sourceRoot":"","sources":["../../../../src/button-dropdown/utils/use-button-dropdown.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';\n\nimport { useOpenState } from '../../internal/components/options-list/utils/use-open-state';\nimport { fireCancelableEvent, isPlainLeftClick } from '../../internal/events';\nimport { KeyCode } from '../../internal/keycode';\nimport { isElement } from '../../internal/utils/dom';\nimport { isKeyboardInteraction } from '../../internal/utils/focus-visible';\nimport { CancelableEventHandler, NonCancelableCustomEvent } from '../../types/events';\nimport { ButtonDropdownProps, ButtonDropdownSettings, GroupToggle, HighlightProps, ItemActivate } from '../interfaces';\nimport { filterItems } from './filter-items';\nimport useHighlightedMenu from './use-highlighted-menu';\nimport { getItemTarget, isCheckboxItem, isItemGroup, isLinkItem } from './utils';\n\ntype DropdownFocusLeaveEvent = NonCancelableCustomEvent<Pick<React.FocusEvent, 'target' | 'relatedTarget'>>;\n\ninterface UseButtonDropdownOptions extends ButtonDropdownSettings {\n items: ButtonDropdownProps.Items;\n onItemClick?: CancelableEventHandler<ButtonDropdownProps.ItemClickDetails>;\n onItemFollow?: CancelableEventHandler<ButtonDropdownProps.ItemClickDetails>;\n onReturnFocus: () => void;\n // Returns whether the given element is (or is inside) the dropdown trigger.\n isTriggerElement: (element: Element) => boolean;\n expandToViewport?: boolean;\n hasFiltering: boolean;\n}\n\ninterface UseButtonDropdownApi extends HighlightProps {\n isOpen: boolean;\n onKeyDown: (event: React.KeyboardEvent) => void;\n onKeyUp: (event: React.KeyboardEvent) => void;\n onItemActivate: ItemActivate;\n onGroupToggle: GroupToggle;\n onDropdownFocusLeave: (event: DropdownFocusLeaveEvent) => void;\n onDropdownBlur: () => void;\n toggleDropdown: (options?: { moveHighlightOnOpen?: boolean }) => void;\n closeDropdown: () => void;\n setIsUsingMouse: (isUsingMouse: boolean) => void;\n filteringValue: string;\n setFilteringValue: (value: string) => void;\n filteredItems: ButtonDropdownProps.Items;\n showExpandableGroups: boolean;\n}\n\nexport function useButtonDropdown({\n items,\n onItemClick,\n onItemFollow,\n onReturnFocus,\n isTriggerElement,\n hasExpandableGroups,\n isInRestrictedView = false,\n expandToViewport = false,\n hasFiltering,\n}: UseButtonDropdownOptions): UseButtonDropdownApi {\n const [filteringValue, setFilteringValue] = useState('');\n\n const filteredItems = useMemo(\n () => (hasFiltering && filteringValue ? filterItems(items, filteringValue) : items),\n [hasFiltering, filteringValue, items]\n );\n\n const showExpandableGroups = hasExpandableGroups && !filteringValue;\n\n const {\n targetItem,\n isHighlighted,\n isKeyboardHighlight,\n isExpanded,\n highlightItem,\n moveHighlight,\n expandGroup,\n collapseGroup,\n reset,\n setIsUsingMouse,\n } = useHighlightedMenu({\n items: filteredItems,\n hasExpandableGroups: showExpandableGroups,\n isInRestrictedView,\n });\n\n // If the filtering input changes, the options list also changes,\n // so the highlight isn't valid anymore.\n const prevFilteringValue = useRef(filteringValue);\n useEffect(() => {\n if (prevFilteringValue.current !== filteringValue) {\n prevFilteringValue.current = filteringValue;\n reset();\n }\n }, [filteringValue, reset]);\n\n const { isOpen, closeDropdown: closeDropdownState, ...openStateProps } = useOpenState({ onClose: reset });\n\n const closeDropdown = () => {\n setFilteringValue('');\n closeDropdownState();\n };\n\n const toggleDropdown = (options: { moveHighlightOnOpen?: boolean } = {}) => {\n const moveHighlightOnOpen = options.moveHighlightOnOpen ?? true;\n if (!isOpen && moveHighlightOnOpen && !hasFiltering) {\n moveHighlight(1);\n }\n if (isOpen) {\n setFilteringValue('');\n }\n openStateProps.toggleDropdown();\n };\n\n const onDropdownFocusLeave = (event: DropdownFocusLeaveEvent) => {\n if (hasFiltering && isOpen) {\n const { relatedTarget } = event.detail;\n // When focus moves from the filter input to the trigger via a mouse click, the trigger's\n // own click handler already closes the dropdown.\n const clickedTrigger =\n !!relatedTarget &&\n isElement(relatedTarget) &&\n isTriggerElement(relatedTarget) &&\n !isKeyboardInteraction(relatedTarget);\n if (clickedTrigger) {\n return;\n }\n if (expandToViewport) {\n // When expanded to viewport the focus can't move naturally to the next element.\n // Returning the focus to the trigger instead.\n onReturnFocus();\n }\n closeDropdown();\n }\n };\n\n // Close when focus leaves the entire widget (trigger and menu), for example when focus\n // moves to an app layout drawer or an element in a different frame. The filtering variant\n // keeps focus inside the dropdown content and closes via onDropdownFocusLeave instead.\n const onDropdownBlur = () => {\n if (isOpen && !hasFiltering) {\n closeDropdown();\n }\n };\n\n const onGroupToggle: GroupToggle = item => (!isExpanded(item) ? expandGroup(item) : collapseGroup());\n\n const onItemActivate: ItemActivate = (item, event) => {\n const isCheckbox = isCheckboxItem(item);\n const isLink = isLinkItem(item);\n const details = {\n id: item.id || 'undefined',\n href: isLink ? item.href : undefined,\n external: isLink ? item.external : undefined,\n target: isLink ? getItemTarget(item) : undefined,\n checked: isCheckbox ? !item.checked : undefined,\n };\n onReturnFocus();\n if (onItemFollow && isLink && isPlainLeftClick(event)) {\n fireCancelableEvent(onItemFollow, details, event);\n }\n if (onItemClick) {\n fireCancelableEvent(onItemClick, details, event);\n }\n closeDropdown();\n };\n\n const openAndSelectFirst = (event: React.KeyboardEvent) => {\n toggleDropdown();\n event.preventDefault();\n };\n\n const actOnParentDropdown = (event: React.KeyboardEvent) => {\n // if there is no highlighted item we act on the trigger by opening or closing dropdown\n if (!targetItem) {\n if (isOpen && !isInRestrictedView) {\n toggleDropdown();\n } else {\n openAndSelectFirst(event);\n }\n } else {\n if (isItemGroup(targetItem)) {\n onGroupToggle(targetItem, event);\n } else {\n onItemActivate(targetItem, event);\n }\n }\n };\n\n const activate = (event: React.KeyboardEvent, isEnter?: boolean) => {\n setIsUsingMouse(false);\n\n // if item is a link we rely on default behavior of an anchor, no need to prevent\n if (targetItem && isLinkItem(targetItem) && isEnter) {\n return;\n }\n\n event.preventDefault();\n actOnParentDropdown(event);\n };\n\n const onKeyDown = (event: React.KeyboardEvent) => {\n setIsUsingMouse(false);\n switch (event.keyCode) {\n case KeyCode.down: {\n if (!isOpen) {\n toggleDropdown();\n if (!hasFiltering) {\n moveHighlight(1, true);\n }\n } else {\n moveHighlight(1);\n }\n event.preventDefault();\n break;\n }\n case KeyCode.up: {\n if (!isOpen) {\n toggleDropdown();\n if (!hasFiltering) {\n moveHighlight(-1, true);\n }\n } else {\n moveHighlight(-1);\n }\n event.preventDefault();\n break;\n }\n case KeyCode.space: {\n // Prevent scrolling the list of items and highlighting the trigger when filtering\n // isn't active. Hitting space when filtering is active should just type a space\n // character into the input, or activate the clear button.\n if (!hasFiltering && !isOpen) {\n event.preventDefault();\n }\n break;\n }\n case KeyCode.enter: {\n // While filtering, pressing Enter without a highlighted item should not select\n // any item or close the dropdown.\n if (isOpen && hasFiltering && !targetItem) {\n break;\n }\n if (!targetItem?.disabled) {\n activate(event, true);\n }\n break;\n }\n case KeyCode.left:\n case KeyCode.right: {\n // When filtering is enabled and there's text in the filter input, left/right\n // arrow keys should move the caret between the characters.\n if (hasFiltering && filteringValue) {\n break;\n }\n if (targetItem && !targetItem.disabled && isItemGroup(targetItem) && !isExpanded(targetItem)) {\n expandGroup();\n } else if (hasExpandableGroups) {\n collapseGroup();\n }\n\n event.preventDefault();\n break;\n }\n case KeyCode.escape: {\n onReturnFocus();\n closeDropdown();\n event.preventDefault();\n if (isOpen) {\n event.stopPropagation();\n }\n break;\n }\n case KeyCode.tab: {\n // In filtering mode the dropdown contains multiple focusable elements (the filter\n // input and its clear button). Tabbing between them must not close the dropdown, so\n // closing on Tab is handled by onDropdownFocusLeave instead, which only fires once\n // focus actually leaves the dropdown.\n if (hasFiltering) {\n break;\n }\n // When expanded to viewport the focus can't move naturally to the next element.\n // Returning the focus to the trigger instead.\n if (expandToViewport) {\n onReturnFocus();\n }\n closeDropdown();\n break;\n }\n }\n };\n const onKeyUp = (event: React.KeyboardEvent) => {\n // When using a roving tabindex (filtering disabled), we need to handle activating items\n // with Space separately because there is a bug in Firefox where changing the focus during\n // a Space keydown event it will trigger unexpected click events on the new element.\n // See https://bugzilla.mozilla.org/show_bug.cgi?id=1220143\n if (event.keyCode === KeyCode.space && !targetItem?.disabled && !hasFiltering) {\n activate(event);\n }\n };\n\n return {\n isOpen,\n targetItem,\n isHighlighted,\n isKeyboardHighlight,\n isExpanded,\n highlightItem,\n onKeyDown,\n onKeyUp,\n onItemActivate,\n onGroupToggle,\n onDropdownFocusLeave,\n onDropdownBlur,\n toggleDropdown,\n closeDropdown,\n setIsUsingMouse,\n filteringValue,\n setFilteringValue,\n filteredItems,\n showExpandableGroups,\n };\n}\n"]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
|
|
2
2
|
import './styles.scoped.css';
|
|
3
3
|
export default {
|
|
4
|
-
"root": "
|
|
5
|
-
"item-wrapper": "awsui_item-
|
|
6
|
-
"group": "
|
|
7
|
-
"divider": "
|
|
4
|
+
"root": "awsui_root_vdkpj_fthxc_9",
|
|
5
|
+
"item-wrapper": "awsui_item-wrapper_vdkpj_fthxc_45",
|
|
6
|
+
"group": "awsui_group_vdkpj_fthxc_49",
|
|
7
|
+
"divider": "awsui_divider_vdkpj_fthxc_53"
|
|
8
8
|
};
|
|
9
9
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
/* stylelint-enable @cloudscape-design/no-motion-outside-of-mixin, selector-combinator-disallowed-list, selector-pseudo-class-no-unknown, selector-class-pattern */
|
|
7
7
|
/* Style used for links in slots/components that are text heavy, to help links stand out among
|
|
8
8
|
surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F73#description */
|
|
9
|
-
.
|
|
9
|
+
.awsui_root_vdkpj_fthxc_9:not(#\9) {
|
|
10
10
|
border-collapse: separate;
|
|
11
11
|
border-spacing: 0;
|
|
12
12
|
box-sizing: border-box;
|
|
@@ -39,19 +39,19 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
39
39
|
display: flex;
|
|
40
40
|
flex-direction: row;
|
|
41
41
|
flex-wrap: wrap;
|
|
42
|
-
gap: var(--space-scaled-xs-
|
|
42
|
+
gap: var(--space-scaled-xs-pajbd1, 8px);
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
-
.awsui_item-
|
|
45
|
+
.awsui_item-wrapper_vdkpj_fthxc_45:not(#\9) {
|
|
46
46
|
display: inline-block;
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
-
.
|
|
49
|
+
.awsui_group_vdkpj_fthxc_49:not(#\9) {
|
|
50
50
|
display: contents;
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
-
.
|
|
53
|
+
.awsui_divider_vdkpj_fthxc_53:not(#\9) {
|
|
54
54
|
background-color: var(--color-border-divider-default-0de9c8, #c6c6cd);
|
|
55
55
|
inline-size: var(--border-divider-section-width-dlkb8v, 1px);
|
|
56
|
-
margin-block: var(--space-static-xs-
|
|
56
|
+
margin-block: var(--space-static-xs-789l1l, 8px);
|
|
57
57
|
}
|
|
@@ -2,9 +2,9 @@
|
|
|
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
|
-
"item-wrapper": "awsui_item-
|
|
7
|
-
"group": "
|
|
8
|
-
"divider": "
|
|
5
|
+
"root": "awsui_root_vdkpj_fthxc_9",
|
|
6
|
+
"item-wrapper": "awsui_item-wrapper_vdkpj_fthxc_45",
|
|
7
|
+
"group": "awsui_group_vdkpj_fthxc_49",
|
|
8
|
+
"divider": "awsui_divider_vdkpj_fthxc_53"
|
|
9
9
|
};
|
|
10
10
|
|
package/calendar/styles.css.js
CHANGED
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
|
|
2
2
|
import './styles.scoped.css';
|
|
3
3
|
export default {
|
|
4
|
-
"calendar": "
|
|
5
|
-
"awsui-motion-fade-in-0": "awsui_awsui-motion-fade-in-
|
|
6
|
-
"root": "
|
|
7
|
-
"calendar-inner": "awsui_calendar-
|
|
8
|
-
"calendar-header": "awsui_calendar-
|
|
9
|
-
"calendar-header-title": "awsui_calendar-header-
|
|
10
|
-
"calendar-next-btn": "awsui_calendar-next-
|
|
11
|
-
"calendar-prev-btn": "awsui_calendar-prev-
|
|
12
|
-
"calendar-grid": "awsui_calendar-
|
|
13
|
-
"calendar-grid-dense": "awsui_calendar-grid-
|
|
14
|
-
"calendar-grid-cell": "awsui_calendar-grid-
|
|
15
|
-
"calendar-date-header": "awsui_calendar-date-
|
|
16
|
-
"calendar-date": "awsui_calendar-
|
|
17
|
-
"calendar-date-enabled": "awsui_calendar-date-
|
|
18
|
-
"calendar-date-current-page": "awsui_calendar-date-current-
|
|
19
|
-
"calendar-date-selected": "awsui_calendar-date-
|
|
20
|
-
"calendar-date-current": "awsui_calendar-date-
|
|
21
|
-
"calendar-date-dense": "awsui_calendar-date-
|
|
22
|
-
"date-inner": "awsui_date-
|
|
23
|
-
"calendar-row": "awsui_calendar-
|
|
24
|
-
"disabled-reason-tooltip": "awsui_disabled-reason-
|
|
4
|
+
"calendar": "awsui_calendar_1ykar_137uj_13",
|
|
5
|
+
"awsui-motion-fade-in-0": "awsui_awsui-motion-fade-in-0_1ykar_137uj_1",
|
|
6
|
+
"root": "awsui_root_1ykar_137uj_36",
|
|
7
|
+
"calendar-inner": "awsui_calendar-inner_1ykar_137uj_74",
|
|
8
|
+
"calendar-header": "awsui_calendar-header_1ykar_137uj_78",
|
|
9
|
+
"calendar-header-title": "awsui_calendar-header-title_1ykar_137uj_83",
|
|
10
|
+
"calendar-next-btn": "awsui_calendar-next-btn_1ykar_137uj_91",
|
|
11
|
+
"calendar-prev-btn": "awsui_calendar-prev-btn_1ykar_137uj_94",
|
|
12
|
+
"calendar-grid": "awsui_calendar-grid_1ykar_137uj_97",
|
|
13
|
+
"calendar-grid-dense": "awsui_calendar-grid-dense_1ykar_137uj_101",
|
|
14
|
+
"calendar-grid-cell": "awsui_calendar-grid-cell_1ykar_137uj_109",
|
|
15
|
+
"calendar-date-header": "awsui_calendar-date-header_1ykar_137uj_114",
|
|
16
|
+
"calendar-date": "awsui_calendar-date_1ykar_137uj_114",
|
|
17
|
+
"calendar-date-enabled": "awsui_calendar-date-enabled_1ykar_137uj_134",
|
|
18
|
+
"calendar-date-current-page": "awsui_calendar-date-current-page_1ykar_137uj_144",
|
|
19
|
+
"calendar-date-selected": "awsui_calendar-date-selected_1ykar_137uj_155",
|
|
20
|
+
"calendar-date-current": "awsui_calendar-date-current_1ykar_137uj_144",
|
|
21
|
+
"calendar-date-dense": "awsui_calendar-date-dense_1ykar_137uj_176",
|
|
22
|
+
"date-inner": "awsui_date-inner_1ykar_137uj_184",
|
|
23
|
+
"calendar-row": "awsui_calendar-row_1ykar_137uj_259",
|
|
24
|
+
"disabled-reason-tooltip": "awsui_disabled-reason-tooltip_1ykar_137uj_263"
|
|
25
25
|
};
|
|
26
26
|
|