@cloudscape-design/components-themeable 3.0.1360 → 3.0.1362
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/internal/manifest.json +1 -1
- package/lib/internal/scss/alert/styles.scss +13 -12
- package/lib/internal/scss/badge/styles.scss +38 -49
- package/lib/internal/scss/button/styles.scss +51 -51
- package/lib/internal/scss/cards/styles.scss +4 -0
- package/lib/internal/scss/container/styles.scss +2 -0
- package/lib/internal/scss/icon/hover-motion.scss +24 -12
- package/lib/internal/scss/input/styles.scss +4 -0
- package/lib/internal/scss/internal/generated/custom-css-properties/index.scss +175 -174
- package/lib/internal/scss/internal/styles/forms/mixins.scss +11 -2
- package/lib/internal/scss/internal/styles/style-api.scss +60 -10
- package/lib/internal/scss/pagination/styles.scss +3 -1
- package/lib/internal/scss/table/styles.scss +5 -0
- package/lib/internal/template/action-card/internal.d.ts.map +1 -1
- package/lib/internal/template/action-card/internal.js +5 -2
- package/lib/internal/template/action-card/internal.js.map +1 -1
- package/lib/internal/template/alert/styles.css.js +27 -27
- package/lib/internal/template/alert/styles.scoped.css +50 -50
- package/lib/internal/template/alert/styles.selectors.js +27 -27
- package/lib/internal/template/annotation-context/annotation/styles.css.js +13 -13
- package/lib/internal/template/annotation-context/annotation/styles.scoped.css +21 -21
- package/lib/internal/template/annotation-context/annotation/styles.selectors.js +13 -13
- 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/toggles/index.d.ts.map +1 -1
- package/lib/internal/template/app-layout/toggles/index.js +1 -1
- package/lib/internal/template/app-layout/toggles/index.js.map +1 -1
- package/lib/internal/template/app-layout/visual-refresh/styles.css.js +86 -86
- package/lib/internal/template/app-layout/visual-refresh/styles.scoped.css +258 -258
- package/lib/internal/template/app-layout/visual-refresh/styles.selectors.js +86 -86
- package/lib/internal/template/app-layout/visual-refresh/trigger-button.d.ts.map +1 -1
- package/lib/internal/template/app-layout/visual-refresh/trigger-button.js +1 -1
- package/lib/internal/template/app-layout/visual-refresh/trigger-button.js.map +1 -1
- package/lib/internal/template/app-layout/visual-refresh-toolbar/drawer/styles.css.js +32 -32
- package/lib/internal/template/app-layout/visual-refresh-toolbar/drawer/styles.scoped.css +89 -89
- package/lib/internal/template/app-layout/visual-refresh-toolbar/drawer/styles.selectors.js +32 -32
- package/lib/internal/template/app-layout/visual-refresh-toolbar/navigation/styles.css.js +6 -6
- package/lib/internal/template/app-layout/visual-refresh-toolbar/navigation/styles.scoped.css +13 -13
- package/lib/internal/template/app-layout/visual-refresh-toolbar/navigation/styles.selectors.js +6 -6
- package/lib/internal/template/app-layout/visual-refresh-toolbar/skeleton/styles.css.js +30 -30
- package/lib/internal/template/app-layout/visual-refresh-toolbar/skeleton/styles.scoped.css +68 -68
- package/lib/internal/template/app-layout/visual-refresh-toolbar/skeleton/styles.selectors.js +30 -30
- package/lib/internal/template/app-layout/visual-refresh-toolbar/toolbar/trigger-button/index.d.ts.map +1 -1
- package/lib/internal/template/app-layout/visual-refresh-toolbar/toolbar/trigger-button/index.js +1 -1
- package/lib/internal/template/app-layout/visual-refresh-toolbar/toolbar/trigger-button/index.js.map +1 -1
- package/lib/internal/template/attribute-editor/styles.css.js +15 -15
- package/lib/internal/template/attribute-editor/styles.scoped.css +28 -28
- package/lib/internal/template/attribute-editor/styles.selectors.js +15 -15
- package/lib/internal/template/breadcrumb-group/all-items-dropdown.js +2 -2
- package/lib/internal/template/breadcrumb-group/all-items-dropdown.js.map +1 -1
- package/lib/internal/template/breadcrumb-group/item/styles.css.js +7 -7
- package/lib/internal/template/breadcrumb-group/item/styles.scoped.css +28 -28
- package/lib/internal/template/breadcrumb-group/item/styles.selectors.js +7 -7
- package/lib/internal/template/button/internal.d.ts.map +1 -1
- package/lib/internal/template/button/internal.js +2 -0
- package/lib/internal/template/button/internal.js.map +1 -1
- package/lib/internal/template/button/styles.css.js +23 -23
- package/lib/internal/template/button/styles.scoped.css +261 -261
- package/lib/internal/template/button/styles.selectors.js +23 -23
- package/lib/internal/template/button-dropdown/category-elements/expandable-category-element.d.ts.map +1 -1
- package/lib/internal/template/button-dropdown/category-elements/expandable-category-element.js +2 -2
- package/lib/internal/template/button-dropdown/category-elements/expandable-category-element.js.map +1 -1
- package/lib/internal/template/button-dropdown/filter.d.ts +1 -1
- package/lib/internal/template/button-dropdown/filter.d.ts.map +1 -1
- package/lib/internal/template/button-dropdown/internal.d.ts.map +1 -1
- package/lib/internal/template/button-dropdown/internal.js +9 -3
- package/lib/internal/template/button-dropdown/internal.js.map +1 -1
- package/lib/internal/template/button-dropdown/item-element/index.d.ts.map +1 -1
- package/lib/internal/template/button-dropdown/item-element/index.js +2 -2
- package/lib/internal/template/button-dropdown/item-element/index.js.map +1 -1
- package/lib/internal/template/button-dropdown/item-element/styles.css.js +21 -21
- package/lib/internal/template/button-dropdown/item-element/styles.scoped.css +37 -37
- package/lib/internal/template/button-dropdown/item-element/styles.selectors.js +21 -21
- package/lib/internal/template/button-dropdown/utils/use-button-dropdown.d.ts +5 -3
- package/lib/internal/template/button-dropdown/utils/use-button-dropdown.d.ts.map +1 -1
- package/lib/internal/template/button-dropdown/utils/use-button-dropdown.js +14 -2
- package/lib/internal/template/button-dropdown/utils/use-button-dropdown.js.map +1 -1
- package/lib/internal/template/cards/styles.css.js +39 -38
- package/lib/internal/template/cards/styles.scoped.css +42 -39
- package/lib/internal/template/cards/styles.selectors.js +39 -38
- package/lib/internal/template/checkbox/styles.css.js +3 -3
- package/lib/internal/template/checkbox/styles.scoped.css +11 -11
- package/lib/internal/template/checkbox/styles.selectors.js +3 -3
- package/lib/internal/template/code-editor/tab-button.d.ts.map +1 -1
- package/lib/internal/template/code-editor/tab-button.js +1 -1
- package/lib/internal/template/code-editor/tab-button.js.map +1 -1
- package/lib/internal/template/container/styles.css.js +33 -33
- package/lib/internal/template/container/styles.scoped.css +57 -56
- package/lib/internal/template/container/styles.selectors.js +33 -33
- package/lib/internal/template/content-layout/styles.css.js +14 -14
- package/lib/internal/template/content-layout/styles.scoped.css +27 -27
- package/lib/internal/template/content-layout/styles.selectors.js +14 -14
- package/lib/internal/template/dropdown/styles.css.js +20 -20
- package/lib/internal/template/dropdown/styles.scoped.css +49 -49
- package/lib/internal/template/dropdown/styles.selectors.js +20 -20
- package/lib/internal/template/expandable-section/expandable-section-header.d.ts.map +1 -1
- package/lib/internal/template/expandable-section/expandable-section-header.js +13 -7
- package/lib/internal/template/expandable-section/expandable-section-header.js.map +1 -1
- package/lib/internal/template/file-token-group/styles.css.js +23 -23
- package/lib/internal/template/file-token-group/styles.scoped.css +36 -36
- package/lib/internal/template/file-token-group/styles.selectors.js +23 -23
- package/lib/internal/template/flashbar/collapsible-flashbar.d.ts.map +1 -1
- package/lib/internal/template/flashbar/collapsible-flashbar.js +3 -3
- package/lib/internal/template/flashbar/collapsible-flashbar.js.map +1 -1
- package/lib/internal/template/flashbar/styles.css.js +50 -50
- package/lib/internal/template/flashbar/styles.scoped.css +192 -192
- package/lib/internal/template/flashbar/styles.selectors.js +50 -50
- package/lib/internal/template/help-panel/styles.css.js +6 -6
- package/lib/internal/template/help-panel/styles.scoped.css +72 -72
- package/lib/internal/template/help-panel/styles.selectors.js +6 -6
- package/lib/internal/template/input/index.d.ts.map +1 -1
- package/lib/internal/template/input/index.js +3 -2
- package/lib/internal/template/input/index.js.map +1 -1
- package/lib/internal/template/input/interfaces.d.ts +6 -0
- package/lib/internal/template/input/interfaces.d.ts.map +1 -1
- package/lib/internal/template/input/interfaces.js.map +1 -1
- package/lib/internal/template/input/internal.d.ts +0 -1
- package/lib/internal/template/input/internal.d.ts.map +1 -1
- package/lib/internal/template/input/internal.js +26 -12
- package/lib/internal/template/input/internal.js.map +1 -1
- package/lib/internal/template/input/styles.css.js +29 -28
- package/lib/internal/template/input/styles.scoped.css +134 -131
- package/lib/internal/template/input/styles.selectors.js +29 -28
- package/lib/internal/template/internal/base-component/styles.scoped.css +1 -1
- package/lib/internal/template/internal/components/button-trigger/index.d.ts.map +1 -1
- package/lib/internal/template/internal/components/button-trigger/index.js +2 -2
- package/lib/internal/template/internal/components/button-trigger/index.js.map +1 -1
- package/lib/internal/template/internal/components/drag-handle/button.d.ts.map +1 -1
- package/lib/internal/template/internal/components/drag-handle/button.js +3 -1
- package/lib/internal/template/internal/components/drag-handle/button.js.map +1 -1
- package/lib/internal/template/internal/components/drag-handle-wrapper/index.d.ts.map +1 -1
- package/lib/internal/template/internal/components/drag-handle-wrapper/index.js +2 -1
- package/lib/internal/template/internal/components/drag-handle-wrapper/index.js.map +1 -1
- package/lib/internal/template/internal/components/drag-handle-wrapper/styles.css.js +30 -30
- package/lib/internal/template/internal/components/drag-handle-wrapper/styles.scoped.css +58 -58
- package/lib/internal/template/internal/components/drag-handle-wrapper/styles.selectors.js +30 -30
- package/lib/internal/template/internal/components/expand-toggle-button/index.d.ts.map +1 -1
- package/lib/internal/template/internal/components/expand-toggle-button/index.js +1 -1
- package/lib/internal/template/internal/components/expand-toggle-button/index.js.map +1 -1
- package/lib/internal/template/internal/components/menu-dropdown/index.d.ts.map +1 -1
- package/lib/internal/template/internal/components/menu-dropdown/index.js +1 -1
- package/lib/internal/template/internal/components/menu-dropdown/index.js.map +1 -1
- package/lib/internal/template/internal/components/option/styles.css.js +17 -17
- package/lib/internal/template/internal/components/option/styles.scoped.css +31 -31
- package/lib/internal/template/internal/components/option/styles.selectors.js +17 -17
- package/lib/internal/template/internal/components/radio-button/styles.css.js +7 -7
- package/lib/internal/template/internal/components/radio-button/styles.scoped.css +18 -18
- package/lib/internal/template/internal/components/radio-button/styles.selectors.js +7 -7
- package/lib/internal/template/internal/components/selectable-item/styles.css.js +22 -22
- package/lib/internal/template/internal/components/selectable-item/styles.scoped.css +57 -57
- package/lib/internal/template/internal/components/selectable-item/styles.selectors.js +22 -22
- package/lib/internal/template/internal/components/token-list/styles.css.js +10 -10
- package/lib/internal/template/internal/components/token-list/styles.scoped.css +25 -25
- package/lib/internal/template/internal/components/token-list/styles.selectors.js +10 -10
- package/lib/internal/template/internal/components/token-list/token-limit-toggle.d.ts.map +1 -1
- package/lib/internal/template/internal/components/token-list/token-limit-toggle.js +2 -2
- package/lib/internal/template/internal/components/token-list/token-limit-toggle.js.map +1 -1
- package/lib/internal/template/internal/environment.js +2 -2
- package/lib/internal/template/internal/environment.json +2 -2
- package/lib/internal/template/internal/generated/custom-css-properties/index.d.ts +1 -0
- package/lib/internal/template/internal/generated/custom-css-properties/index.d.ts.map +1 -1
- package/lib/internal/template/internal/generated/custom-css-properties/index.js +174 -173
- package/lib/internal/template/internal/generated/custom-css-properties/index.js.map +1 -1
- package/lib/internal/template/internal/generated/styles/tokens.js +200 -200
- package/lib/internal/template/internal/generated/theming/index.cjs +200 -200
- package/lib/internal/template/internal/generated/theming/index.js +200 -200
- package/lib/internal/template/internal/utils/focus-visible.d.ts +15 -0
- package/lib/internal/template/internal/utils/focus-visible.d.ts.map +1 -0
- package/lib/internal/template/internal/utils/focus-visible.js +21 -0
- package/lib/internal/template/internal/utils/focus-visible.js.map +1 -0
- package/lib/internal/template/item-card/styles.css.js +14 -14
- package/lib/internal/template/item-card/styles.scoped.css +63 -63
- package/lib/internal/template/item-card/styles.selectors.js +14 -14
- package/lib/internal/template/link/internal.d.ts.map +1 -1
- package/lib/internal/template/link/internal.js +2 -0
- package/lib/internal/template/link/internal.js.map +1 -1
- package/lib/internal/template/link/styles.css.js +21 -21
- package/lib/internal/template/link/styles.scoped.css +104 -104
- package/lib/internal/template/link/styles.selectors.js +21 -21
- package/lib/internal/template/modal/styles.css.js +31 -31
- package/lib/internal/template/modal/styles.scoped.css +48 -48
- package/lib/internal/template/modal/styles.selectors.js +31 -31
- package/lib/internal/template/pagination/internal.d.ts.map +1 -1
- package/lib/internal/template/pagination/internal.js +4 -4
- package/lib/internal/template/pagination/internal.js.map +1 -1
- package/lib/internal/template/pagination/styles.css.js +12 -12
- package/lib/internal/template/pagination/styles.scoped.css +31 -31
- package/lib/internal/template/pagination/styles.selectors.js +12 -12
- package/lib/internal/template/progress-bar/styles.css.js +19 -19
- package/lib/internal/template/progress-bar/styles.scoped.css +58 -58
- package/lib/internal/template/progress-bar/styles.selectors.js +19 -19
- package/lib/internal/template/prompt-input/styles.css.js +26 -26
- package/lib/internal/template/prompt-input/styles.scoped.css +105 -105
- package/lib/internal/template/prompt-input/styles.selectors.js +26 -26
- package/lib/internal/template/property-filter/filtering-token/index.js +4 -4
- package/lib/internal/template/property-filter/filtering-token/index.js.map +1 -1
- package/lib/internal/template/segmented-control/segment.d.ts.map +1 -1
- package/lib/internal/template/segmented-control/segment.js +1 -1
- package/lib/internal/template/segmented-control/segment.js.map +1 -1
- package/lib/internal/template/segmented-control/styles.css.js +16 -16
- package/lib/internal/template/segmented-control/styles.scoped.css +46 -46
- package/lib/internal/template/segmented-control/styles.selectors.js +16 -16
- package/lib/internal/template/select/parts/filter.d.ts +1 -1
- package/lib/internal/template/select/parts/filter.d.ts.map +1 -1
- package/lib/internal/template/select/parts/styles.css.js +21 -21
- package/lib/internal/template/select/parts/styles.scoped.css +24 -24
- package/lib/internal/template/select/parts/styles.selectors.js +21 -21
- package/lib/internal/template/side-navigation/parts.js +3 -3
- package/lib/internal/template/side-navigation/parts.js.map +1 -1
- package/lib/internal/template/side-navigation/styles.css.js +64 -64
- package/lib/internal/template/side-navigation/styles.scoped.css +111 -111
- package/lib/internal/template/side-navigation/styles.selectors.js +64 -64
- package/lib/internal/template/slider/styles.css.js +26 -26
- package/lib/internal/template/slider/styles.scoped.css +165 -165
- package/lib/internal/template/slider/styles.selectors.js +26 -26
- package/lib/internal/template/spinner/styles.css.js +14 -14
- package/lib/internal/template/spinner/styles.scoped.css +40 -40
- package/lib/internal/template/spinner/styles.selectors.js +14 -14
- package/lib/internal/template/table/header-cell/index.d.ts.map +1 -1
- package/lib/internal/template/table/header-cell/index.js +2 -1
- package/lib/internal/template/table/header-cell/index.js.map +1 -1
- package/lib/internal/template/table/styles.css.js +37 -37
- package/lib/internal/template/table/styles.scoped.css +47 -44
- package/lib/internal/template/table/styles.selectors.js +37 -37
- package/lib/internal/template/tabs/styles.css.js +30 -30
- package/lib/internal/template/tabs/styles.scoped.css +76 -76
- package/lib/internal/template/tabs/styles.selectors.js +30 -30
- package/lib/internal/template/tabs/tab-header-bar.d.ts.map +1 -1
- package/lib/internal/template/tabs/tab-header-bar.js +1 -1
- package/lib/internal/template/tabs/tab-header-bar.js.map +1 -1
- package/lib/internal/template/tag-editor/styles.css.js +3 -3
- package/lib/internal/template/tag-editor/styles.scoped.css +13 -13
- package/lib/internal/template/tag-editor/styles.selectors.js +3 -3
- package/lib/internal/template/test-utils/dom/input/index.d.ts +1 -0
- package/lib/internal/template/test-utils/dom/input/index.js +3 -0
- package/lib/internal/template/test-utils/dom/input/index.js.map +1 -1
- package/lib/internal/template/test-utils/selectors/input/index.d.ts +1 -0
- package/lib/internal/template/test-utils/selectors/input/index.js +3 -0
- package/lib/internal/template/test-utils/selectors/input/index.js.map +1 -1
- package/lib/internal/template/text-content/styles.css.js +1 -1
- package/lib/internal/template/text-content/styles.scoped.css +66 -66
- package/lib/internal/template/text-content/styles.selectors.js +1 -1
- package/lib/internal/template/textarea/styles.css.js +9 -9
- package/lib/internal/template/textarea/styles.scoped.css +51 -51
- package/lib/internal/template/textarea/styles.selectors.js +9 -9
- package/lib/internal/template/toggle/styles.css.js +10 -10
- package/lib/internal/template/toggle/styles.scoped.css +23 -23
- package/lib/internal/template/toggle/styles.selectors.js +10 -10
- package/lib/internal/template/token/dismiss-button.js +2 -2
- package/lib/internal/template/token/dismiss-button.js.map +1 -1
- package/lib/internal/template/token/styles.css.js +14 -14
- package/lib/internal/template/token/styles.scoped.css +46 -46
- package/lib/internal/template/token/styles.selectors.js +14 -14
- package/lib/internal/template/top-navigation/parts/overflow-menu/menu-item.d.ts.map +1 -1
- package/lib/internal/template/top-navigation/parts/overflow-menu/menu-item.js +5 -5
- package/lib/internal/template/top-navigation/parts/overflow-menu/menu-item.js.map +1 -1
- package/package.json +1 -1
|
@@ -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_4yi2u_1x2rl_9:not(#\9) {
|
|
10
10
|
border-collapse: separate;
|
|
11
11
|
border-spacing: 0;
|
|
12
12
|
box-sizing: border-box;
|
|
@@ -39,15 +39,15 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
39
39
|
display: flex;
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
.
|
|
43
|
-
--awsui-style-focus-ring-box-shadow-
|
|
42
|
+
.awsui_outline_4yi2u_1x2rl_42:not(#\9) {
|
|
43
|
+
--awsui-style-focus-ring-box-shadow-66120l: 0 0 0 var(--awsui-style-focus-ring-border-width-66120l, 2px) var(--awsui-style-focus-ring-border-color-66120l, var(--color-border-item-focused-sewkzn, #0073bb));
|
|
44
44
|
position: relative;
|
|
45
45
|
}
|
|
46
|
-
.
|
|
46
|
+
.awsui_outline_4yi2u_1x2rl_42:not(#\9) {
|
|
47
47
|
outline: 2px dotted transparent;
|
|
48
48
|
outline-offset: calc(2px - 1px);
|
|
49
49
|
}
|
|
50
|
-
.
|
|
50
|
+
.awsui_outline_4yi2u_1x2rl_42:not(#\9)::before {
|
|
51
51
|
content: " ";
|
|
52
52
|
display: block;
|
|
53
53
|
position: absolute;
|
|
@@ -55,14 +55,14 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
55
55
|
inset-block-start: calc(-1 * 2px);
|
|
56
56
|
inline-size: calc(100% + 2px + 2px);
|
|
57
57
|
block-size: calc(100% + 2px + 2px);
|
|
58
|
-
border-start-start-radius: var(--awsui-style-focus-ring-border-radius-
|
|
59
|
-
border-start-end-radius: var(--awsui-style-focus-ring-border-radius-
|
|
60
|
-
border-end-start-radius: var(--awsui-style-focus-ring-border-radius-
|
|
61
|
-
border-end-end-radius: var(--awsui-style-focus-ring-border-radius-
|
|
62
|
-
box-shadow: var(--awsui-style-focus-ring-box-shadow-
|
|
58
|
+
border-start-start-radius: var(--awsui-style-focus-ring-border-radius-66120l, var(--border-radius-control-default-focus-ring-akwhsf, 2px));
|
|
59
|
+
border-start-end-radius: var(--awsui-style-focus-ring-border-radius-66120l, var(--border-radius-control-default-focus-ring-akwhsf, 2px));
|
|
60
|
+
border-end-start-radius: var(--awsui-style-focus-ring-border-radius-66120l, var(--border-radius-control-default-focus-ring-akwhsf, 2px));
|
|
61
|
+
border-end-end-radius: var(--awsui-style-focus-ring-border-radius-66120l, var(--border-radius-control-default-focus-ring-akwhsf, 2px));
|
|
62
|
+
box-shadow: var(--awsui-style-focus-ring-box-shadow-66120l);
|
|
63
63
|
}
|
|
64
64
|
|
|
65
|
-
.awsui_toggle-
|
|
65
|
+
.awsui_toggle-control_4yi2u_1x2rl_65:not(#\9) {
|
|
66
66
|
forced-color-adjust: none;
|
|
67
67
|
margin-block-start: calc((var(--line-height-body-m-5xw6xo, 22px) - 16px) / 2);
|
|
68
68
|
min-block-size: 16px;
|
|
@@ -75,20 +75,20 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
75
75
|
border-end-start-radius: 8px;
|
|
76
76
|
border-end-end-radius: 8px;
|
|
77
77
|
}
|
|
78
|
-
.awsui_toggle-control-
|
|
78
|
+
.awsui_toggle-control-checked_4yi2u_1x2rl_78:not(#\9) {
|
|
79
79
|
background: var(--color-background-control-checked-ksqwhc, #0073bb);
|
|
80
80
|
}
|
|
81
|
-
.awsui_toggle-control-
|
|
81
|
+
.awsui_toggle-control-disabled_4yi2u_1x2rl_81:not(#\9) {
|
|
82
82
|
background: var(--color-background-control-disabled-m61b8s, #d5dbdb);
|
|
83
83
|
}
|
|
84
|
-
.awsui_toggle-control-
|
|
84
|
+
.awsui_toggle-control-disabled_4yi2u_1x2rl_81.awsui_toggle-control-checked_4yi2u_1x2rl_78:not(#\9) {
|
|
85
85
|
background: var(--color-background-toggle-checked-disabled-81loy3, #99cbe4);
|
|
86
86
|
}
|
|
87
|
-
.awsui_toggle-control-
|
|
87
|
+
.awsui_toggle-control-readonly_4yi2u_1x2rl_87:not(#\9) {
|
|
88
88
|
background: var(--color-background-control-disabled-m61b8s, #d5dbdb);
|
|
89
89
|
}
|
|
90
90
|
|
|
91
|
-
.awsui_toggle-
|
|
91
|
+
.awsui_toggle-handle_4yi2u_1x2rl_91:not(#\9) {
|
|
92
92
|
display: block;
|
|
93
93
|
position: absolute;
|
|
94
94
|
border-start-start-radius: 6px;
|
|
@@ -104,29 +104,29 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
104
104
|
transition: transform var(--motion-duration-fast-yb0m8k, 90ms) var(--motion-easing-ease-out-quart-k5q7pi, cubic-bezier(0.165, 0.84, 0.44, 1)), background-color var(--motion-duration-fast-yb0m8k, 90ms) var(--motion-easing-ease-out-quart-k5q7pi, cubic-bezier(0.165, 0.84, 0.44, 1));
|
|
105
105
|
}
|
|
106
106
|
@media (prefers-reduced-motion: reduce) {
|
|
107
|
-
.awsui_toggle-
|
|
107
|
+
.awsui_toggle-handle_4yi2u_1x2rl_91:not(#\9) {
|
|
108
108
|
animation: none;
|
|
109
109
|
transition: none;
|
|
110
110
|
}
|
|
111
111
|
}
|
|
112
|
-
.awsui-motion-disabled .awsui_toggle-
|
|
112
|
+
.awsui-motion-disabled .awsui_toggle-handle_4yi2u_1x2rl_91:not(#\9), .awsui-mode-entering .awsui_toggle-handle_4yi2u_1x2rl_91:not(#\9) {
|
|
113
113
|
animation: none;
|
|
114
114
|
transition: none;
|
|
115
115
|
}
|
|
116
|
-
.awsui_toggle-handle-
|
|
116
|
+
.awsui_toggle-handle-checked_4yi2u_1x2rl_116:not(#\9) {
|
|
117
117
|
transform: translateX(8px);
|
|
118
118
|
/* stylelint-disable-next-line plugin/no-unsupported-browser-features */
|
|
119
119
|
}
|
|
120
|
-
.awsui_toggle-handle-
|
|
120
|
+
.awsui_toggle-handle-checked_4yi2u_1x2rl_116:not(#\9):dir(rtl) {
|
|
121
121
|
transform: translateX(-8px);
|
|
122
122
|
}
|
|
123
|
-
.awsui_toggle-handle-
|
|
123
|
+
.awsui_toggle-handle-disabled_4yi2u_1x2rl_123:not(#\9) {
|
|
124
124
|
background: var(--color-foreground-control-disabled-bikivj, #ffffff);
|
|
125
125
|
box-shadow: none;
|
|
126
126
|
}
|
|
127
|
-
.awsui_toggle-handle-
|
|
127
|
+
.awsui_toggle-handle-readonly_4yi2u_1x2rl_127:not(#\9):not(.awsui_toggle-handle-disabled_4yi2u_1x2rl_123) {
|
|
128
128
|
box-shadow: none;
|
|
129
129
|
}
|
|
130
|
-
.awsui_toggle-handle-
|
|
130
|
+
.awsui_toggle-handle-readonly_4yi2u_1x2rl_127:not(#\9):not(.awsui_toggle-handle-disabled_4yi2u_1x2rl_123).awsui_toggle-handle-checked_4yi2u_1x2rl_116 {
|
|
131
131
|
background: var(--color-foreground-control-read-only-8sqxyy, #687078);
|
|
132
132
|
}
|
|
@@ -2,15 +2,15 @@
|
|
|
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
|
-
"outline": "
|
|
7
|
-
"toggle-control": "awsui_toggle-
|
|
8
|
-
"toggle-control-checked": "awsui_toggle-control-
|
|
9
|
-
"toggle-control-disabled": "awsui_toggle-control-
|
|
10
|
-
"toggle-control-readonly": "awsui_toggle-control-
|
|
11
|
-
"toggle-handle": "awsui_toggle-
|
|
12
|
-
"toggle-handle-checked": "awsui_toggle-handle-
|
|
13
|
-
"toggle-handle-disabled": "awsui_toggle-handle-
|
|
14
|
-
"toggle-handle-readonly": "awsui_toggle-handle-
|
|
5
|
+
"root": "awsui_root_4yi2u_1x2rl_9",
|
|
6
|
+
"outline": "awsui_outline_4yi2u_1x2rl_42",
|
|
7
|
+
"toggle-control": "awsui_toggle-control_4yi2u_1x2rl_65",
|
|
8
|
+
"toggle-control-checked": "awsui_toggle-control-checked_4yi2u_1x2rl_78",
|
|
9
|
+
"toggle-control-disabled": "awsui_toggle-control-disabled_4yi2u_1x2rl_81",
|
|
10
|
+
"toggle-control-readonly": "awsui_toggle-control-readonly_4yi2u_1x2rl_87",
|
|
11
|
+
"toggle-handle": "awsui_toggle-handle_4yi2u_1x2rl_91",
|
|
12
|
+
"toggle-handle-checked": "awsui_toggle-handle-checked_4yi2u_1x2rl_116",
|
|
13
|
+
"toggle-handle-disabled": "awsui_toggle-handle-disabled_4yi2u_1x2rl_123",
|
|
14
|
+
"toggle-handle-readonly": "awsui_toggle-handle-readonly_4yi2u_1x2rl_127"
|
|
15
15
|
};
|
|
16
16
|
|
|
@@ -23,7 +23,7 @@ function DismissButton({ disabled, dismissLabel, onDismiss, readOnly, inline },
|
|
|
23
23
|
return;
|
|
24
24
|
}
|
|
25
25
|
fireNonCancelableEvent(onDismiss);
|
|
26
|
-
}, "aria-label": dismissLabel, ...(disabled || readOnly ? {} : getAnalyticsMetadataAttribute(analyticsMetadata)) },
|
|
27
|
-
React.createElement(InternalIcon, { name: "close", size: isOneTheme ? 'x-small' : undefined })));
|
|
26
|
+
}, "aria-label": dismissLabel, "data-awsui-motion-trigger": "hover", ...(disabled || readOnly ? {} : getAnalyticsMetadataAttribute(analyticsMetadata)) },
|
|
27
|
+
React.createElement(InternalIcon, { name: "close", size: isOneTheme ? 'x-small' : undefined, nativeAttributes: { 'data-awsui-motion-target': '' } })));
|
|
28
28
|
}
|
|
29
29
|
//# sourceMappingURL=dismiss-button.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dismiss-button.js","sourceRoot":"","sources":["../../../src/token/dismiss-button.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,EAAE,EAAE,UAAU,EAAO,MAAM,OAAO,CAAC;AAC/C,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,+CAA+C,CAAC;AACrF,OAAO,EAAE,6BAA6B,EAAE,MAAM,kEAAkE,CAAC;AAEjH,OAAO,YAAY,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAI5D,OAAO,mBAAmB,MAAM,8BAA8B,CAAC;AAC/D,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAU1D,eAAe,UAAU,CAAC,aAAa,CAAC,CAAC;AAEzC,SAAS,aAAa,CACpB,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAsB,EAC3E,GAA2B;IAE3B,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,iBAAiB,GAA2C;QAChE,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE;YACN,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;SACxB;KACF,CAAC;IACF,OAAO,CACL,gCACE,GAAG,EAAE,GAAG,EACR,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,IAAI,CACb,MAAM,CAAC,gBAAgB,CAAC,EACxB,mBAAmB,CAAC,gBAAgB,CAAC,EACrC,cAAc,CAAC,gBAAgB,CAAC,EAChC,MAAM,IAAI,MAAM,CAAC,uBAAuB,CAAC,CAC1C,mBACc,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EACtD,OAAO,EAAE,GAAG,EAAE;YACZ,IAAI,QAAQ,IAAI,QAAQ,IAAI,CAAC,SAAS,EAAE,CAAC;gBACvC,OAAO;YACT,CAAC;YAED,sBAAsB,CAAC,SAAS,CAAC,CAAC;QACpC,CAAC,gBACW,YAAY,
|
|
1
|
+
{"version":3,"file":"dismiss-button.js","sourceRoot":"","sources":["../../../src/token/dismiss-button.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,EAAE,EAAE,UAAU,EAAO,MAAM,OAAO,CAAC;AAC/C,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,+CAA+C,CAAC;AACrF,OAAO,EAAE,6BAA6B,EAAE,MAAM,kEAAkE,CAAC;AAEjH,OAAO,YAAY,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAI5D,OAAO,mBAAmB,MAAM,8BAA8B,CAAC;AAC/D,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAU1D,eAAe,UAAU,CAAC,aAAa,CAAC,CAAC;AAEzC,SAAS,aAAa,CACpB,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAsB,EAC3E,GAA2B;IAE3B,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,iBAAiB,GAA2C;QAChE,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE;YACN,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;SACxB;KACF,CAAC;IACF,OAAO,CACL,gCACE,GAAG,EAAE,GAAG,EACR,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,IAAI,CACb,MAAM,CAAC,gBAAgB,CAAC,EACxB,mBAAmB,CAAC,gBAAgB,CAAC,EACrC,cAAc,CAAC,gBAAgB,CAAC,EAChC,MAAM,IAAI,MAAM,CAAC,uBAAuB,CAAC,CAC1C,mBACc,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EACtD,OAAO,EAAE,GAAG,EAAE;YACZ,IAAI,QAAQ,IAAI,QAAQ,IAAI,CAAC,SAAS,EAAE,CAAC;gBACvC,OAAO;YACT,CAAC;YAED,sBAAsB,CAAC,SAAS,CAAC,CAAC;QACpC,CAAC,gBACW,YAAY,+BACE,OAAO,KAC7B,CAAC,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,6BAA6B,CAAC,iBAAiB,CAAC,CAAC;QAElF,oBAAC,YAAY,IACX,IAAI,EAAC,OAAO,EACZ,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EACxC,gBAAgB,EAAE,EAAE,0BAA0B,EAAE,EAAE,EAAE,GACpD,CACK,CACV,CAAC;AACJ,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { forwardRef, Ref } from 'react';\nimport clsx from 'clsx';\n\nimport { isThemeActive, Theme } from '@cloudscape-design/component-toolkit/internal';\nimport { getAnalyticsMetadataAttribute } from '@cloudscape-design/component-toolkit/internal/analytics-metadata';\n\nimport InternalIcon from '../icon/internal';\nimport { fireNonCancelableEvent } from '../internal/events';\nimport { NonCancelableEventHandler } from '../types/events';\nimport { GeneratedAnalyticsMetadataTokenDismiss } from './analytics-metadata/interfaces';\n\nimport legacyTestingStyles from '../token-group/styles.css.js';\nimport styles from './styles.css.js';\nimport testUtilStyles from './test-classes/styles.css.js';\n\ninterface DismissButtonProps {\n disabled?: boolean;\n readOnly?: boolean;\n onDismiss?: NonCancelableEventHandler;\n dismissLabel?: string;\n inline?: boolean;\n}\n\nexport default forwardRef(DismissButton);\n\nfunction DismissButton(\n { disabled, dismissLabel, onDismiss, readOnly, inline }: DismissButtonProps,\n ref: Ref<HTMLButtonElement>\n) {\n const isOneTheme = isThemeActive(Theme.OneTheme);\n const analyticsMetadata: GeneratedAnalyticsMetadataTokenDismiss = {\n action: 'dismiss',\n detail: {\n label: { root: 'self' },\n },\n };\n return (\n <button\n ref={ref}\n type=\"button\"\n className={clsx(\n styles['dismiss-button'],\n legacyTestingStyles['dismiss-button'],\n testUtilStyles['dismiss-button'],\n inline && styles['dismiss-button-inline']\n )}\n aria-disabled={disabled || readOnly ? true : undefined}\n onClick={() => {\n if (disabled || readOnly || !onDismiss) {\n return;\n }\n\n fireNonCancelableEvent(onDismiss);\n }}\n aria-label={dismissLabel}\n data-awsui-motion-trigger=\"hover\"\n {...(disabled || readOnly ? {} : getAnalyticsMetadataAttribute(analyticsMetadata))}\n >\n <InternalIcon\n name=\"close\"\n size={isOneTheme ? 'x-small' : undefined}\n nativeAttributes={{ 'data-awsui-motion-target': '' }}\n />\n </button>\n );\n}\n"]}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
|
|
2
2
|
import './styles.scoped.css';
|
|
3
3
|
export default {
|
|
4
|
-
"root": "
|
|
5
|
-
"dismiss-button": "awsui_dismiss-
|
|
6
|
-
"dismiss-button-inline": "awsui_dismiss-button-
|
|
7
|
-
"icon": "
|
|
8
|
-
"icon-inline": "awsui_icon-
|
|
9
|
-
"token-normal": "awsui_token-
|
|
10
|
-
"token-inline": "awsui_token-
|
|
11
|
-
"token-option-inline": "awsui_token-option-
|
|
12
|
-
"token-box": "awsui_token-
|
|
13
|
-
"token-box-without-dismiss": "awsui_token-box-without-
|
|
14
|
-
"token-box-inline": "awsui_token-box-
|
|
15
|
-
"disable-padding": "awsui_disable-
|
|
16
|
-
"token-box-readonly": "awsui_token-box-
|
|
17
|
-
"token-box-disabled": "awsui_token-box-
|
|
4
|
+
"root": "awsui_root_1i2wg_rrrrt_17",
|
|
5
|
+
"dismiss-button": "awsui_dismiss-button_1i2wg_rrrrt_49",
|
|
6
|
+
"dismiss-button-inline": "awsui_dismiss-button-inline_1i2wg_rrrrt_90",
|
|
7
|
+
"icon": "awsui_icon_1i2wg_rrrrt_96",
|
|
8
|
+
"icon-inline": "awsui_icon-inline_1i2wg_rrrrt_102",
|
|
9
|
+
"token-normal": "awsui_token-normal_1i2wg_rrrrt_107",
|
|
10
|
+
"token-inline": "awsui_token-inline_1i2wg_rrrrt_114",
|
|
11
|
+
"token-option-inline": "awsui_token-option-inline_1i2wg_rrrrt_140",
|
|
12
|
+
"token-box": "awsui_token-box_1i2wg_rrrrt_144",
|
|
13
|
+
"token-box-without-dismiss": "awsui_token-box-without-dismiss_1i2wg_rrrrt_163",
|
|
14
|
+
"token-box-inline": "awsui_token-box-inline_1i2wg_rrrrt_167",
|
|
15
|
+
"disable-padding": "awsui_disable-padding_1i2wg_rrrrt_187",
|
|
16
|
+
"token-box-readonly": "awsui_token-box-readonly_1i2wg_rrrrt_194",
|
|
17
|
+
"token-box-disabled": "awsui_token-box-disabled_1i2wg_rrrrt_195"
|
|
18
18
|
};
|
|
19
19
|
|
|
@@ -14,7 +14,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
14
14
|
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
15
15
|
SPDX-License-Identifier: Apache-2.0
|
|
16
16
|
*/
|
|
17
|
-
.
|
|
17
|
+
.awsui_root_1i2wg_rrrrt_17:not(#\9) {
|
|
18
18
|
border-collapse: separate;
|
|
19
19
|
border-spacing: 0;
|
|
20
20
|
box-sizing: border-box;
|
|
@@ -46,7 +46,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
46
46
|
-moz-osx-font-smoothing: auto;
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
-
.awsui_dismiss-
|
|
49
|
+
.awsui_dismiss-button_1i2wg_rrrrt_49:not(#\9) {
|
|
50
50
|
align-self: flex-start;
|
|
51
51
|
margin-block-end: 0;
|
|
52
52
|
margin-inline-start: var(--space-xxs-3o1yoq, 4px);
|
|
@@ -54,19 +54,19 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
54
54
|
border-inline: var(--border-width-field-2365x3, 1px) solid transparent;
|
|
55
55
|
padding-block: 0;
|
|
56
56
|
padding-inline: var(--space-xxs-3o1yoq, 4px);
|
|
57
|
-
color: var(--awsui-token-style-dismiss-color-default-
|
|
57
|
+
color: var(--awsui-token-style-dismiss-color-default-66120l, var(--color-text-button-inline-icon-default-yujzfi, #545b64));
|
|
58
58
|
background-color: transparent;
|
|
59
59
|
cursor: pointer;
|
|
60
|
-
--awsui-style-focus-ring-box-shadow-
|
|
60
|
+
--awsui-style-focus-ring-box-shadow-66120l: 0 0 0 var(--awsui-style-focus-ring-border-width-66120l, 2px) var(--awsui-style-focus-ring-border-color-66120l, var(--color-border-item-focused-sewkzn, #0073bb));
|
|
61
61
|
}
|
|
62
|
-
body[data-awsui-focus-visible=true] .awsui_dismiss-
|
|
62
|
+
body[data-awsui-focus-visible=true] .awsui_dismiss-button_1i2wg_rrrrt_49:not(#\9):focus {
|
|
63
63
|
position: relative;
|
|
64
64
|
}
|
|
65
|
-
body[data-awsui-focus-visible=true] .awsui_dismiss-
|
|
65
|
+
body[data-awsui-focus-visible=true] .awsui_dismiss-button_1i2wg_rrrrt_49:not(#\9):focus {
|
|
66
66
|
outline: 2px dotted transparent;
|
|
67
67
|
outline-offset: calc(0px - 1px);
|
|
68
68
|
}
|
|
69
|
-
body[data-awsui-focus-visible=true] .awsui_dismiss-
|
|
69
|
+
body[data-awsui-focus-visible=true] .awsui_dismiss-button_1i2wg_rrrrt_49:not(#\9):focus::before {
|
|
70
70
|
content: " ";
|
|
71
71
|
display: block;
|
|
72
72
|
position: absolute;
|
|
@@ -74,55 +74,55 @@ body[data-awsui-focus-visible=true] .awsui_dismiss-button_1i2wg_1tahk_49:not(#\9
|
|
|
74
74
|
inset-block-start: calc(-1 * 0px);
|
|
75
75
|
inline-size: calc(100% + 0px + 0px);
|
|
76
76
|
block-size: calc(100% + 0px + 0px);
|
|
77
|
-
border-start-start-radius: var(--awsui-style-focus-ring-border-radius-
|
|
78
|
-
border-start-end-radius: var(--awsui-style-focus-ring-border-radius-
|
|
79
|
-
border-end-start-radius: var(--awsui-style-focus-ring-border-radius-
|
|
80
|
-
border-end-end-radius: var(--awsui-style-focus-ring-border-radius-
|
|
81
|
-
box-shadow: var(--awsui-style-focus-ring-box-shadow-
|
|
77
|
+
border-start-start-radius: var(--awsui-style-focus-ring-border-radius-66120l, var(--border-radius-control-default-focus-ring-akwhsf, 2px));
|
|
78
|
+
border-start-end-radius: var(--awsui-style-focus-ring-border-radius-66120l, var(--border-radius-control-default-focus-ring-akwhsf, 2px));
|
|
79
|
+
border-end-start-radius: var(--awsui-style-focus-ring-border-radius-66120l, var(--border-radius-control-default-focus-ring-akwhsf, 2px));
|
|
80
|
+
border-end-end-radius: var(--awsui-style-focus-ring-border-radius-66120l, var(--border-radius-control-default-focus-ring-akwhsf, 2px));
|
|
81
|
+
box-shadow: var(--awsui-style-focus-ring-box-shadow-66120l);
|
|
82
82
|
}
|
|
83
|
-
.awsui_dismiss-
|
|
83
|
+
.awsui_dismiss-button_1i2wg_rrrrt_49:not(#\9):focus {
|
|
84
84
|
outline: none;
|
|
85
85
|
text-decoration: none;
|
|
86
86
|
}
|
|
87
|
-
.awsui_dismiss-
|
|
88
|
-
color: var(--awsui-token-style-dismiss-color-hover-
|
|
87
|
+
.awsui_dismiss-button_1i2wg_rrrrt_49:not(#\9):hover {
|
|
88
|
+
color: var(--awsui-token-style-dismiss-color-hover-66120l, var(--color-text-button-inline-icon-hover-kxgkw7, #16191f));
|
|
89
89
|
}
|
|
90
|
-
.awsui_dismiss-button-
|
|
90
|
+
.awsui_dismiss-button-inline_1i2wg_rrrrt_90:not(#\9) {
|
|
91
91
|
padding-inline: 0;
|
|
92
92
|
display: flex;
|
|
93
93
|
align-items: center;
|
|
94
94
|
align-self: center;
|
|
95
95
|
}
|
|
96
|
-
.
|
|
96
|
+
.awsui_icon_1i2wg_rrrrt_96:not(#\9) {
|
|
97
97
|
padding-inline-end: var(--space-xs-m9b7jf, 8px);
|
|
98
98
|
align-self: flex-start;
|
|
99
99
|
display: flex;
|
|
100
100
|
flex-shrink: 0;
|
|
101
101
|
}
|
|
102
|
-
.awsui_icon-
|
|
102
|
+
.awsui_icon-inline_1i2wg_rrrrt_102:not(#\9) {
|
|
103
103
|
padding-inline-end: var(--space-xxs-3o1yoq, 4px);
|
|
104
104
|
align-self: center;
|
|
105
105
|
}
|
|
106
106
|
|
|
107
|
-
.awsui_token-
|
|
107
|
+
.awsui_token-normal_1i2wg_rrrrt_107:not(#\9) {
|
|
108
108
|
block-size: 100%;
|
|
109
109
|
display: flex;
|
|
110
110
|
flex-direction: column;
|
|
111
111
|
gap: var(--space-xxs-3o1yoq, 4px);
|
|
112
112
|
}
|
|
113
113
|
|
|
114
|
-
.awsui_token-
|
|
114
|
+
.awsui_token-inline_1i2wg_rrrrt_114:not(#\9) {
|
|
115
115
|
display: inline-flex;
|
|
116
116
|
max-inline-size: 100%;
|
|
117
117
|
}
|
|
118
|
-
body[data-awsui-focus-visible=true] .awsui_token-
|
|
118
|
+
body[data-awsui-focus-visible=true] .awsui_token-inline_1i2wg_rrrrt_114:not(#\9):focus {
|
|
119
119
|
position: relative;
|
|
120
120
|
}
|
|
121
|
-
body[data-awsui-focus-visible=true] .awsui_token-
|
|
121
|
+
body[data-awsui-focus-visible=true] .awsui_token-inline_1i2wg_rrrrt_114:not(#\9):focus {
|
|
122
122
|
outline: 2px dotted transparent;
|
|
123
123
|
outline-offset: calc(0px - 1px);
|
|
124
124
|
}
|
|
125
|
-
body[data-awsui-focus-visible=true] .awsui_token-
|
|
125
|
+
body[data-awsui-focus-visible=true] .awsui_token-inline_1i2wg_rrrrt_114:not(#\9):focus::before {
|
|
126
126
|
content: " ";
|
|
127
127
|
display: block;
|
|
128
128
|
position: absolute;
|
|
@@ -137,22 +137,22 @@ body[data-awsui-focus-visible=true] .awsui_token-inline_1i2wg_1tahk_114:not(#\9)
|
|
|
137
137
|
box-shadow: 0 0 0 2px var(--color-border-item-focused-sewkzn, #0073bb);
|
|
138
138
|
}
|
|
139
139
|
|
|
140
|
-
.awsui_token-option-
|
|
140
|
+
.awsui_token-option-inline_1i2wg_rrrrt_140:not(#\9) {
|
|
141
141
|
max-block-size: 20px;
|
|
142
142
|
}
|
|
143
143
|
|
|
144
|
-
.awsui_token-
|
|
144
|
+
.awsui_token-box_1i2wg_rrrrt_144:not(#\9) {
|
|
145
145
|
position: relative;
|
|
146
146
|
block-size: 100%;
|
|
147
|
-
border-block: var(--border-width-token-p4a0gu, 1px) solid var(--awsui-token-style-border-color-default-
|
|
148
|
-
border-inline: var(--border-width-token-p4a0gu, 1px) solid var(--awsui-token-style-border-color-default-
|
|
147
|
+
border-block: var(--border-width-token-p4a0gu, 1px) solid var(--awsui-token-style-border-color-default-66120l, var(--color-border-item-selected-7104rh, #0073bb));
|
|
148
|
+
border-inline: var(--border-width-token-p4a0gu, 1px) solid var(--awsui-token-style-border-color-default-66120l, var(--color-border-item-selected-7104rh, #0073bb));
|
|
149
149
|
padding-block-start: var(--space-token-vertical-zoq8xd, 4px);
|
|
150
150
|
padding-block-end: var(--space-token-vertical-zoq8xd, 4px);
|
|
151
151
|
padding-inline-start: var(--space-field-horizontal-anki5k, 8px);
|
|
152
152
|
padding-inline-end: var(--space-xxs-3o1yoq, 4px);
|
|
153
153
|
display: flex;
|
|
154
154
|
align-items: flex-start;
|
|
155
|
-
background: var(--awsui-token-style-background-default-
|
|
155
|
+
background: var(--awsui-token-style-background-default-66120l, var(--color-background-item-selected-dotkup, #f1faff));
|
|
156
156
|
border-start-start-radius: var(--border-radius-token-dnq13z, 2px);
|
|
157
157
|
border-start-end-radius: var(--border-radius-token-dnq13z, 2px);
|
|
158
158
|
border-end-start-radius: var(--border-radius-token-dnq13z, 2px);
|
|
@@ -160,21 +160,21 @@ body[data-awsui-focus-visible=true] .awsui_token-inline_1i2wg_1tahk_114:not(#\9)
|
|
|
160
160
|
color: var(--color-text-body-default-b2us04, #16191f);
|
|
161
161
|
box-sizing: border-box;
|
|
162
162
|
}
|
|
163
|
-
.awsui_token-box-without-
|
|
163
|
+
.awsui_token-box-without-dismiss_1i2wg_rrrrt_163:not(#\9) {
|
|
164
164
|
padding-inline-end: var(--space-field-horizontal-anki5k, 8px);
|
|
165
165
|
}
|
|
166
166
|
|
|
167
|
-
.awsui_token-box-
|
|
167
|
+
.awsui_token-box-inline_1i2wg_rrrrt_167:not(#\9) {
|
|
168
168
|
position: relative;
|
|
169
169
|
block-size: 20px;
|
|
170
170
|
max-block-size: 20px;
|
|
171
|
-
border-block: var(--border-width-field-2365x3, 1px) solid var(--awsui-token-style-border-color-default-
|
|
172
|
-
border-inline: var(--border-width-field-2365x3, 1px) solid var(--awsui-token-style-border-color-default-
|
|
171
|
+
border-block: var(--border-width-field-2365x3, 1px) solid var(--awsui-token-style-border-color-default-66120l, var(--color-border-item-selected-7104rh, #0073bb));
|
|
172
|
+
border-inline: var(--border-width-field-2365x3, 1px) solid var(--awsui-token-style-border-color-default-66120l, var(--color-border-item-selected-7104rh, #0073bb));
|
|
173
173
|
padding-inline-start: var(--space-scaled-xxs-j00t0m, 4px);
|
|
174
174
|
padding-inline-end: var(--space-scaled-xxs-j00t0m, 4px);
|
|
175
175
|
display: flex;
|
|
176
176
|
align-items: center;
|
|
177
|
-
background: var(--awsui-token-style-background-default-
|
|
177
|
+
background: var(--awsui-token-style-background-default-66120l, var(--color-background-item-selected-dotkup, #f1faff));
|
|
178
178
|
border-start-start-radius: var(--border-radius-token-inline-09715z, 2px);
|
|
179
179
|
border-start-end-radius: var(--border-radius-token-inline-09715z, 2px);
|
|
180
180
|
border-end-start-radius: var(--border-radius-token-inline-09715z, 2px);
|
|
@@ -184,33 +184,33 @@ body[data-awsui-focus-visible=true] .awsui_token-inline_1i2wg_1tahk_114:not(#\9)
|
|
|
184
184
|
max-inline-size: 100%;
|
|
185
185
|
}
|
|
186
186
|
|
|
187
|
-
.awsui_disable-
|
|
187
|
+
.awsui_disable-padding_1i2wg_rrrrt_187:not(#\9) {
|
|
188
188
|
padding-block-start: 0;
|
|
189
189
|
padding-block-end: 0;
|
|
190
190
|
padding-inline-start: 0;
|
|
191
191
|
padding-inline-end: 0;
|
|
192
192
|
}
|
|
193
193
|
|
|
194
|
-
.awsui_token-box-
|
|
195
|
-
.awsui_token-box-
|
|
194
|
+
.awsui_token-box-readonly_1i2wg_rrrrt_194 > .awsui_dismiss-button_1i2wg_rrrrt_49:not(#\9),
|
|
195
|
+
.awsui_token-box-disabled_1i2wg_rrrrt_195 > .awsui_dismiss-button_1i2wg_rrrrt_49:not(#\9) {
|
|
196
196
|
cursor: initial;
|
|
197
197
|
pointer-events: none;
|
|
198
198
|
}
|
|
199
199
|
|
|
200
|
-
.awsui_token-box-
|
|
201
|
-
border-color: var(--awsui-token-style-border-color-read-only-
|
|
202
|
-
background: var(--awsui-token-style-background-read-only-
|
|
200
|
+
.awsui_token-box-readonly_1i2wg_rrrrt_194:not(#\9) {
|
|
201
|
+
border-color: var(--awsui-token-style-border-color-read-only-66120l, var(--color-border-input-disabled-5m31k6, #eaeded));
|
|
202
|
+
background: var(--awsui-token-style-background-read-only-66120l, var(--color-background-container-content-mjfil9, #ffffff));
|
|
203
203
|
}
|
|
204
|
-
.awsui_token-box-
|
|
205
|
-
color: var(--awsui-token-style-dismiss-color-read-only-
|
|
204
|
+
.awsui_token-box-readonly_1i2wg_rrrrt_194 > .awsui_dismiss-button_1i2wg_rrrrt_49:not(#\9) {
|
|
205
|
+
color: var(--awsui-token-style-dismiss-color-read-only-66120l, var(--color-text-button-inline-icon-disabled-yeab6p, #aab7b8));
|
|
206
206
|
}
|
|
207
207
|
|
|
208
|
-
.awsui_token-box-
|
|
208
|
+
.awsui_token-box-disabled_1i2wg_rrrrt_195:not(#\9) {
|
|
209
209
|
pointer-events: none;
|
|
210
|
-
border-color: var(--awsui-token-style-border-color-disabled-
|
|
211
|
-
background: var(--awsui-token-style-background-disabled-
|
|
210
|
+
border-color: var(--awsui-token-style-border-color-disabled-66120l, var(--color-border-control-disabled-dh8zaw, #d5dbdb));
|
|
211
|
+
background: var(--awsui-token-style-background-disabled-66120l, var(--color-background-container-content-mjfil9, #ffffff));
|
|
212
212
|
color: var(--color-text-disabled-ybqlwm, #aab7b8);
|
|
213
213
|
}
|
|
214
|
-
.awsui_token-box-
|
|
215
|
-
color: var(--awsui-token-style-dismiss-color-disabled-
|
|
214
|
+
.awsui_token-box-disabled_1i2wg_rrrrt_195 > .awsui_dismiss-button_1i2wg_rrrrt_49:not(#\9) {
|
|
215
|
+
color: var(--awsui-token-style-dismiss-color-disabled-66120l, var(--color-text-button-inline-icon-disabled-yeab6p, #aab7b8));
|
|
216
216
|
}
|
|
@@ -2,19 +2,19 @@
|
|
|
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
|
-
"dismiss-button": "awsui_dismiss-
|
|
7
|
-
"dismiss-button-inline": "awsui_dismiss-button-
|
|
8
|
-
"icon": "
|
|
9
|
-
"icon-inline": "awsui_icon-
|
|
10
|
-
"token-normal": "awsui_token-
|
|
11
|
-
"token-inline": "awsui_token-
|
|
12
|
-
"token-option-inline": "awsui_token-option-
|
|
13
|
-
"token-box": "awsui_token-
|
|
14
|
-
"token-box-without-dismiss": "awsui_token-box-without-
|
|
15
|
-
"token-box-inline": "awsui_token-box-
|
|
16
|
-
"disable-padding": "awsui_disable-
|
|
17
|
-
"token-box-readonly": "awsui_token-box-
|
|
18
|
-
"token-box-disabled": "awsui_token-box-
|
|
5
|
+
"root": "awsui_root_1i2wg_rrrrt_17",
|
|
6
|
+
"dismiss-button": "awsui_dismiss-button_1i2wg_rrrrt_49",
|
|
7
|
+
"dismiss-button-inline": "awsui_dismiss-button-inline_1i2wg_rrrrt_90",
|
|
8
|
+
"icon": "awsui_icon_1i2wg_rrrrt_96",
|
|
9
|
+
"icon-inline": "awsui_icon-inline_1i2wg_rrrrt_102",
|
|
10
|
+
"token-normal": "awsui_token-normal_1i2wg_rrrrt_107",
|
|
11
|
+
"token-inline": "awsui_token-inline_1i2wg_rrrrt_114",
|
|
12
|
+
"token-option-inline": "awsui_token-option-inline_1i2wg_rrrrt_140",
|
|
13
|
+
"token-box": "awsui_token-box_1i2wg_rrrrt_144",
|
|
14
|
+
"token-box-without-dismiss": "awsui_token-box-without-dismiss_1i2wg_rrrrt_163",
|
|
15
|
+
"token-box-inline": "awsui_token-box-inline_1i2wg_rrrrt_167",
|
|
16
|
+
"disable-padding": "awsui_disable-padding_1i2wg_rrrrt_187",
|
|
17
|
+
"token-box-readonly": "awsui_token-box-readonly_1i2wg_rrrrt_194",
|
|
18
|
+
"token-box-disabled": "awsui_token-box-disabled_1i2wg_rrrrt_195"
|
|
19
19
|
};
|
|
20
20
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu-item.d.ts","sourceRoot":"","sources":["../../../../../src/top-navigation/parts/overflow-menu/menu-item.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAKpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAM1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"menu-item.d.ts","sourceRoot":"","sources":["../../../../../src/top-navigation/parts/overflow-menu/menu-item.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAKpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAM1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AA0RtD,KAAK,oBAAoB,GAAG,kBAAkB,CAAC,OAAO,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CAAE,CAAC;AAEjG,eAAO,MAAM,eAAe,oHAQ3B,CAAC;AAEF,KAAK,gBAAgB,GAAG,mBAAmB,CAAC,WAAW,GAAG;IACxD,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,IAAI,EAAE,mBAAmB,CAAC,IAAI,KAAK,IAAI,CAAC;CAC5E,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,OAAO,gBAAgB,gBAclD,CAAC"}
|
|
@@ -19,16 +19,16 @@ const LinkItem = forwardRef(({ children, external, href, target, rel, startIcon,
|
|
|
19
19
|
const anchorTarget = target !== null && target !== void 0 ? target : (external ? '_blank' : undefined);
|
|
20
20
|
const anchorRel = rel !== null && rel !== void 0 ? rel : (anchorTarget === '_blank' ? 'noopener noreferrer' : undefined);
|
|
21
21
|
const role = !href ? 'button' : undefined;
|
|
22
|
-
return (React.createElement("a", { ref: ref, onClick: onClick, className: clsx(styles['overflow-menu-control'], styles['overflow-menu-control-link'], context && styles[`overflow-menu-control-${context}`]), role: role, tabIndex: 0, href: href, target: anchorTarget, rel: anchorRel, ...(testId ? { 'data-testid': testId } : {}) },
|
|
22
|
+
return (React.createElement("a", { ref: ref, onClick: onClick, className: clsx(styles['overflow-menu-control'], styles['overflow-menu-control-link'], context && styles[`overflow-menu-control-${context}`]), role: role, tabIndex: 0, href: href, target: anchorTarget, rel: anchorRel, "data-awsui-motion-trigger": "hover", ...(testId ? { 'data-testid': testId } : {}) },
|
|
23
23
|
React.createElement(ListItem, { startIcon: startIcon, endIcon: endIcon }, children)));
|
|
24
24
|
});
|
|
25
25
|
const ButtonItem = forwardRef(({ children, startIcon, endIcon, onClick, testId }, ref) => {
|
|
26
|
-
return (React.createElement("button", { ref: ref, className: styles['overflow-menu-control'], onClick: onClick, ...(typeof testId === 'string' ? { 'data-testid': testId } : {}) },
|
|
26
|
+
return (React.createElement("button", { ref: ref, className: styles['overflow-menu-control'], onClick: onClick, "data-awsui-motion-trigger": "hover", ...(typeof testId === 'string' ? { 'data-testid': testId } : {}) },
|
|
27
27
|
React.createElement(ListItem, { startIcon: startIcon, endIcon: endIcon }, children)));
|
|
28
28
|
});
|
|
29
29
|
const NavigationItem = forwardRef(({ startIcon, children, index, testId, ...definition }, ref) => {
|
|
30
30
|
const navigate = useNavigate();
|
|
31
|
-
return (React.createElement(ButtonItem, { ref: ref, startIcon: startIcon, endIcon: React.createElement(InternalIcon, { name: "angle-right" }), testId: testId, onClick: () => navigate('dropdown-menu', {
|
|
31
|
+
return (React.createElement(ButtonItem, { ref: ref, startIcon: startIcon, endIcon: React.createElement(InternalIcon, { name: "angle-right", nativeAttributes: { 'data-awsui-motion-target': '' } }), testId: testId, onClick: () => navigate('dropdown-menu', {
|
|
32
32
|
definition,
|
|
33
33
|
headerText: definition.text || definition.title,
|
|
34
34
|
headerSecondaryText: definition.description,
|
|
@@ -39,9 +39,9 @@ const ExpandableItem = ({ children, onItemClick, ...definition }) => {
|
|
|
39
39
|
const [expanded, setExpanded] = useState(false);
|
|
40
40
|
const headerId = useUniqueId('overflow-menu-item');
|
|
41
41
|
return (React.createElement(React.Fragment, null,
|
|
42
|
-
React.createElement("button", { className: clsx(styles['overflow-menu-control'], styles['overflow-menu-control-expandable-menu-trigger']), onClick: () => setExpanded(value => !value), "aria-expanded": expanded },
|
|
42
|
+
React.createElement("button", { className: clsx(styles['overflow-menu-control'], styles['overflow-menu-control-expandable-menu-trigger']), onClick: () => setExpanded(value => !value), "aria-expanded": expanded, "data-awsui-motion-trigger": "hover" },
|
|
43
43
|
React.createElement(ListItem, { endIcon: React.createElement("span", { className: spinWhenOpen(styles, 'icon', expanded) },
|
|
44
|
-
React.createElement(InternalIcon, { name: "caret-down-filled" })) },
|
|
44
|
+
React.createElement(InternalIcon, { name: "caret-down-filled", nativeAttributes: { 'data-awsui-motion-target': '' } })) },
|
|
45
45
|
React.createElement("span", { id: headerId }, children))),
|
|
46
46
|
expanded && (React.createElement("ul", { className: clsx(styles['overflow-menu-list'], styles['overflow-menu-list-submenu']), "aria-labelledby": headerId }, definition.items.map((item, index) => {
|
|
47
47
|
const isGroup = typeof item.items !== 'undefined';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu-item.js","sourceRoot":"","sources":["../../../../../src/top-navigation/parts/overflow-menu/menu-item.tsx"],"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, { forwardRef, useState } from 'react';\nimport clsx from 'clsx';\n\nimport { useUniqueId } from '@cloudscape-design/component-toolkit/internal';\n\nimport { ButtonDropdownProps } from '../../../button-dropdown/interfaces';\nimport { isLinkItem } from '../../../button-dropdown/utils/utils';\nimport InternalIcon from '../../../icon/internal';\nimport { fireCancelableEvent, isPlainLeftClick } from '../../../internal/events';\nimport { spinWhenOpen } from '../../../internal/styles/motion/utils';\nimport { LinkProps } from '../../../link/interfaces';\nimport { TopNavigationProps } from '../../interfaces';\nimport { useNavigate } from './router';\n\nimport styles from '../../styles.css.js';\n\ninterface ListItemProps {\n startIcon?: React.ReactNode;\n endIcon?: React.ReactNode;\n context?: 'dropdown-menu';\n children?: React.ReactNode;\n testId?: string;\n}\n\nconst ListItem = ({ children, startIcon, endIcon }: ListItemProps) => {\n return (\n <>\n {startIcon && <span className={styles['overflow-menu-list-item-icon']}>{startIcon}</span>}\n <span className={styles['overflow-menu-list-item-text']}>{children}</span>\n {endIcon && endIcon}\n </>\n );\n};\n\ninterface LinkItemProps extends ButtonItemProps, Pick<LinkProps, 'href' | 'external' | 'target' | 'rel'> {}\n\nconst LinkItem = forwardRef(\n (\n { children, external, href, target, rel, startIcon, endIcon, onClick, context, testId }: LinkItemProps,\n ref: React.Ref<HTMLAnchorElement & HTMLButtonElement>\n ) => {\n const anchorTarget = target ?? (external ? '_blank' : undefined);\n const anchorRel = rel ?? (anchorTarget === '_blank' ? 'noopener noreferrer' : undefined);\n const role = !href ? 'button' : undefined;\n\n return (\n <a\n ref={ref}\n onClick={onClick}\n className={clsx(\n styles['overflow-menu-control'],\n styles['overflow-menu-control-link'],\n context && styles[`overflow-menu-control-${context}`]\n )}\n role={role}\n tabIndex={0}\n href={href}\n target={anchorTarget}\n rel={anchorRel}\n {...(testId ? { 'data-testid': testId } : {})}\n >\n <ListItem startIcon={startIcon} endIcon={endIcon}>\n {children}\n </ListItem>\n </a>\n );\n }\n);\n\ninterface ButtonItemProps extends ListItemProps {\n onClick?: (event: React.MouseEvent) => void;\n}\n\nconst ButtonItem = forwardRef(\n (\n { children, startIcon, endIcon, onClick, testId }: ButtonItemProps & { testId?: string },\n ref: React.Ref<HTMLButtonElement>\n ) => {\n return (\n <button\n ref={ref}\n className={styles['overflow-menu-control']}\n onClick={onClick}\n {...(typeof testId === 'string' ? { 'data-testid': testId } : {})}\n >\n <ListItem startIcon={startIcon} endIcon={endIcon}>\n {children}\n </ListItem>\n </button>\n );\n }\n);\n\nconst NavigationItem = forwardRef(\n (\n {\n startIcon,\n children,\n index,\n testId,\n ...definition\n }: ButtonItemProps & TopNavigationProps.MenuDropdownUtility & { index: number; testId?: string },\n ref: React.Ref<HTMLButtonElement>\n ) => {\n const navigate = useNavigate();\n return (\n <ButtonItem\n ref={ref}\n startIcon={startIcon}\n endIcon={<InternalIcon name=\"angle-right\" />}\n testId={testId}\n onClick={() =>\n navigate('dropdown-menu', {\n definition,\n headerText: definition.text || definition.title,\n headerSecondaryText: definition.description,\n utilityIndex: index,\n })\n }\n >\n {children}\n </ButtonItem>\n );\n }\n);\n\nconst ExpandableItem: React.FC<\n ButtonItemProps &\n ButtonDropdownProps.ItemGroup & { onItemClick: (event: React.MouseEvent, item: ButtonDropdownProps.Item) => void }\n> = ({ children, onItemClick, ...definition }) => {\n const [expanded, setExpanded] = useState(false);\n const headerId = useUniqueId('overflow-menu-item');\n\n return (\n <>\n <button\n className={clsx(styles['overflow-menu-control'], styles['overflow-menu-control-expandable-menu-trigger'])}\n onClick={() => setExpanded(value => !value)}\n aria-expanded={expanded}\n >\n <ListItem\n endIcon={\n <span className={spinWhenOpen(styles, 'icon', expanded)}>\n <InternalIcon name=\"caret-down-filled\" />\n </span>\n }\n >\n <span id={headerId}>{children}</span>\n </ListItem>\n </button>\n {expanded && (\n <ul\n className={clsx(styles['overflow-menu-list'], styles['overflow-menu-list-submenu'])}\n aria-labelledby={headerId}\n >\n {definition.items.map((item, index) => {\n const isGroup = typeof (item as ButtonDropdownProps.ItemGroup).items !== 'undefined';\n\n return (\n <li\n key={index}\n className={clsx(styles[`overflow-menu-list-item`], styles[`overflow-menu-list-item-dropdown-menu`])}\n >\n {dropdownComponentFactory(item, isGroup, onItemClick)}\n </li>\n );\n })}\n </ul>\n )}\n </>\n );\n};\n\nfunction utilityComponentFactory(\n utility: TopNavigationProps.Utility & { onClose?: () => void },\n index: number,\n ref?: React.Ref<HTMLAnchorElement & HTMLButtonElement>\n) {\n const label = utility.text || utility.title;\n const hasIcon = !!utility.iconName || !!utility.iconUrl || !!utility.iconAlt || !!utility.iconSvg;\n const startIcon = hasIcon && (\n <InternalIcon name={utility.iconName} url={utility.iconUrl} alt={utility.iconAlt} svg={utility.iconSvg} />\n );\n\n switch (utility.type) {\n case 'button': {\n const handleClick = (event: React.MouseEvent) => {\n if (Boolean(utility.href) && isPlainLeftClick(event)) {\n fireCancelableEvent(utility.onFollow, { href: utility.href, target: utility.target }, event);\n }\n\n fireCancelableEvent(utility.onClick, {}, event);\n utility.onClose?.();\n };\n\n const content = (\n <>\n {label}\n {utility.external && (\n <>\n {' '}\n <span aria-label={utility.externalIconAriaLabel} role={utility.externalIconAriaLabel ? 'img' : undefined}>\n <InternalIcon name=\"external\" size=\"normal\" />\n </span>\n </>\n )}\n </>\n );\n\n if (!utility.href) {\n return (\n <ButtonItem ref={ref} startIcon={startIcon} onClick={handleClick} testId={`__${index}`}>\n {content}\n </ButtonItem>\n );\n }\n\n return (\n <LinkItem\n ref={ref}\n startIcon={startIcon}\n href={utility.href}\n external={utility.external}\n target={utility.target}\n rel={utility.rel}\n testId={`__${index}`}\n onClick={handleClick}\n >\n {content}\n </LinkItem>\n );\n }\n case 'menu-dropdown': {\n return (\n <NavigationItem\n ref={ref}\n startIcon={startIcon}\n index={index}\n {...(utility as TopNavigationProps.MenuDropdownUtility)}\n testId={`__${index}`}\n >\n {label}\n </NavigationItem>\n );\n }\n }\n}\n\nfunction dropdownComponentFactory(\n item: ButtonDropdownProps.ItemOrGroup,\n expandable: boolean,\n onItemClick: (event: React.MouseEvent, item: ButtonDropdownProps.Item) => void\n) {\n const label = item.text;\n const hasIcon = !!item.iconName || !!item.iconUrl || !!item.iconAlt || !!item.iconSvg;\n const isLink = isLinkItem(item);\n const startIcon = hasIcon && (\n <InternalIcon name={item.iconName} url={item.iconUrl} alt={item.iconAlt} svg={item.iconSvg} />\n );\n\n if (expandable) {\n return (\n <ExpandableItem {...(item as ButtonDropdownProps.ItemGroup)} onItemClick={onItemClick}>\n {label}\n </ExpandableItem>\n );\n }\n\n return (\n <LinkItem\n startIcon={startIcon}\n href={isLink ? item.href : undefined}\n external={isLink ? item.external : undefined}\n context=\"dropdown-menu\"\n testId={item.id}\n onClick={event => onItemClick(event, item as ButtonDropdownProps.Item)}\n >\n {label}\n {isLink && item.external && (\n <>\n {' '}\n <span aria-label={item.externalIconAriaLabel} role={item.externalIconAriaLabel ? 'img' : undefined}>\n <InternalIcon name=\"external\" size=\"normal\" />\n </span>\n </>\n )}\n </LinkItem>\n );\n}\n\ntype UtilityMenuItemProps = TopNavigationProps.Utility & { index: number; onClose?: () => void };\n\nexport const UtilityMenuItem = forwardRef(\n ({ index, ...props }: UtilityMenuItemProps, ref: React.Ref<HTMLAnchorElement & HTMLButtonElement>) => {\n return (\n <li className={clsx(styles[`overflow-menu-list-item`], styles[`overflow-menu-list-item-utility`])}>\n {utilityComponentFactory(props, index, ref)}\n </li>\n );\n }\n);\n\ntype SubmenuItemProps = ButtonDropdownProps.ItemOrGroup & {\n onClick: (event: React.MouseEvent, item: ButtonDropdownProps.Item) => void;\n};\n\nexport const SubmenuItem = (props: SubmenuItemProps) => {\n const expandable = typeof (props as ButtonDropdownProps.ItemGroup).items !== 'undefined';\n\n return (\n <li\n className={clsx(\n styles[`overflow-menu-list-item`],\n styles[`overflow-menu-list-item-submenu`],\n expandable && styles[`overflow-menu-list-item-expandable`]\n )}\n >\n {dropdownComponentFactory(props, expandable, props.onClick)}\n </li>\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"menu-item.js","sourceRoot":"","sources":["../../../../../src/top-navigation/parts/overflow-menu/menu-item.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAG5E,OAAO,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAClE,OAAO,YAAY,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAGrE,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,OAAO,MAAM,MAAM,qBAAqB,CAAC;AAUzC,MAAM,QAAQ,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAiB,EAAE,EAAE;IACnE,OAAO,CACL;QACG,SAAS,IAAI,8BAAM,SAAS,EAAE,MAAM,CAAC,8BAA8B,CAAC,IAAG,SAAS,CAAQ;QACzF,8BAAM,SAAS,EAAE,MAAM,CAAC,8BAA8B,CAAC,IAAG,QAAQ,CAAQ;QACzE,OAAO,IAAI,OAAO,CAClB,CACJ,CAAC;AACJ,CAAC,CAAC;AAIF,MAAM,QAAQ,GAAG,UAAU,CACzB,CACE,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAiB,EACtG,GAAqD,EACrD,EAAE;IACF,MAAM,YAAY,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACzF,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IAE1C,OAAO,CACL,2BACE,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,IAAI,CACb,MAAM,CAAC,uBAAuB,CAAC,EAC/B,MAAM,CAAC,4BAA4B,CAAC,EACpC,OAAO,IAAI,MAAM,CAAC,yBAAyB,OAAO,EAAE,CAAC,CACtD,EACD,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,CAAC,EACX,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,YAAY,EACpB,GAAG,EAAE,SAAS,+BACY,OAAO,KAC7B,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAE7C,oBAAC,QAAQ,IAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,IAC7C,QAAQ,CACA,CACT,CACL,CAAC;AACJ,CAAC,CACF,CAAC;AAMF,MAAM,UAAU,GAAG,UAAU,CAC3B,CACE,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAyC,EACxF,GAAiC,EACjC,EAAE;IACF,OAAO,CACL,gCACE,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,MAAM,CAAC,uBAAuB,CAAC,EAC1C,OAAO,EAAE,OAAO,+BACU,OAAO,KAC7B,CAAC,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAEjE,oBAAC,QAAQ,IAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,IAC7C,QAAQ,CACA,CACJ,CACV,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,cAAc,GAAG,UAAU,CAC/B,CACE,EACE,SAAS,EACT,QAAQ,EACR,KAAK,EACL,MAAM,EACN,GAAG,UAAU,EACiF,EAChG,GAAiC,EACjC,EAAE;IACF,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,OAAO,CACL,oBAAC,UAAU,IACT,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,oBAAC,YAAY,IAAC,IAAI,EAAC,aAAa,EAAC,gBAAgB,EAAE,EAAE,0BAA0B,EAAE,EAAE,EAAE,GAAI,EAClG,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,GAAG,EAAE,CACZ,QAAQ,CAAC,eAAe,EAAE;YACxB,UAAU;YACV,UAAU,EAAE,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,KAAK;YAC/C,mBAAmB,EAAE,UAAU,CAAC,WAAW;YAC3C,YAAY,EAAE,KAAK;SACpB,CAAC,IAGH,QAAQ,CACE,CACd,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,cAAc,GAGhB,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,UAAU,EAAE,EAAE,EAAE;IAC/C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,QAAQ,GAAG,WAAW,CAAC,oBAAoB,CAAC,CAAC;IAEnD,OAAO,CACL;QACE,gCACE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,EAAE,MAAM,CAAC,+CAA+C,CAAC,CAAC,EACzG,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,mBAC5B,QAAQ,+BACG,OAAO;YAEjC,oBAAC,QAAQ,IACP,OAAO,EACL,8BAAM,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC;oBACrD,oBAAC,YAAY,IAAC,IAAI,EAAC,mBAAmB,EAAC,gBAAgB,EAAE,EAAE,0BAA0B,EAAE,EAAE,EAAE,GAAI,CAC1F;gBAGT,8BAAM,EAAE,EAAE,QAAQ,IAAG,QAAQ,CAAQ,CAC5B,CACJ;QACR,QAAQ,IAAI,CACX,4BACE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC,4BAA4B,CAAC,CAAC,qBAClE,QAAQ,IAExB,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YACpC,MAAM,OAAO,GAAG,OAAQ,IAAsC,CAAC,KAAK,KAAK,WAAW,CAAC;YAErF,OAAO,CACL,4BACE,GAAG,EAAE,KAAK,EACV,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC,EAAE,MAAM,CAAC,uCAAuC,CAAC,CAAC,IAElG,wBAAwB,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,CAAC,CAClD,CACN,CAAC;QACJ,CAAC,CAAC,CACC,CACN,CACA,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,SAAS,uBAAuB,CAC9B,OAA8D,EAC9D,KAAa,EACb,GAAsD;IAEtD,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC;IAC5C,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClG,MAAM,SAAS,GAAG,OAAO,IAAI,CAC3B,oBAAC,YAAY,IAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,OAAO,GAAI,CAC3G,CAAC;IAEF,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,WAAW,GAAG,CAAC,KAAuB,EAAE,EAAE;;gBAC9C,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;oBACrD,mBAAmB,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,CAAC,CAAC;gBAC/F,CAAC;gBAED,mBAAmB,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;gBAChD,MAAA,OAAO,CAAC,OAAO,uDAAI,CAAC;YACtB,CAAC,CAAC;YAEF,MAAM,OAAO,GAAG,CACd;gBACG,KAAK;gBACL,OAAO,CAAC,QAAQ,IAAI,CACnB;oBACG,GAAG;oBACJ,4CAAkB,OAAO,CAAC,qBAAqB,EAAE,IAAI,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;wBACtG,oBAAC,YAAY,IAAC,IAAI,EAAC,UAAU,EAAC,IAAI,EAAC,QAAQ,GAAG,CACzC,CACN,CACJ,CACA,CACJ,CAAC;YAEF,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAClB,OAAO,CACL,oBAAC,UAAU,IAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,KAAK,EAAE,IACnF,OAAO,CACG,CACd,CAAC;YACJ,CAAC;YAED,OAAO,CACL,oBAAC,QAAQ,IACP,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,OAAO,CAAC,IAAI,EAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAC1B,MAAM,EAAE,OAAO,CAAC,MAAM,EACtB,GAAG,EAAE,OAAO,CAAC,GAAG,EAChB,MAAM,EAAE,KAAK,KAAK,EAAE,EACpB,OAAO,EAAE,WAAW,IAEnB,OAAO,CACC,CACZ,CAAC;QACJ,CAAC;QACD,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,OAAO,CACL,oBAAC,cAAc,IACb,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,KACP,OAAkD,EACvD,MAAM,EAAE,KAAK,KAAK,EAAE,IAEnB,KAAK,CACS,CAClB,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,wBAAwB,CAC/B,IAAqC,EACrC,UAAmB,EACnB,WAA8E;IAE9E,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC;IACxB,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;IACtF,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,SAAS,GAAG,OAAO,IAAI,CAC3B,oBAAC,YAAY,IAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,OAAO,GAAI,CAC/F,CAAC;IAEF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,CACL,oBAAC,cAAc,OAAM,IAAsC,EAAE,WAAW,EAAE,WAAW,IAClF,KAAK,CACS,CAClB,CAAC;IACJ,CAAC;IAED,OAAO,CACL,oBAAC,QAAQ,IACP,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EACpC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAC5C,OAAO,EAAC,eAAe,EACvB,MAAM,EAAE,IAAI,CAAC,EAAE,EACf,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,IAAgC,CAAC;QAErE,KAAK;QACL,MAAM,IAAI,IAAI,CAAC,QAAQ,IAAI,CAC1B;YACG,GAAG;YACJ,4CAAkB,IAAI,CAAC,qBAAqB,EAAE,IAAI,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;gBAChG,oBAAC,YAAY,IAAC,IAAI,EAAC,UAAU,EAAC,IAAI,EAAC,QAAQ,GAAG,CACzC,CACN,CACJ,CACQ,CACZ,CAAC;AACJ,CAAC;AAID,MAAM,CAAC,MAAM,eAAe,GAAG,UAAU,CACvC,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAwB,EAAE,GAAqD,EAAE,EAAE;IACnG,OAAO,CACL,4BAAI,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC,EAAE,MAAM,CAAC,iCAAiC,CAAC,CAAC,IAC9F,uBAAuB,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,CACxC,CACN,CAAC;AACJ,CAAC,CACF,CAAC;AAMF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAuB,EAAE,EAAE;IACrD,MAAM,UAAU,GAAG,OAAQ,KAAuC,CAAC,KAAK,KAAK,WAAW,CAAC;IAEzF,OAAO,CACL,4BACE,SAAS,EAAE,IAAI,CACb,MAAM,CAAC,yBAAyB,CAAC,EACjC,MAAM,CAAC,iCAAiC,CAAC,EACzC,UAAU,IAAI,MAAM,CAAC,oCAAoC,CAAC,CAC3D,IAEA,wBAAwB,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CACxD,CACN,CAAC;AACJ,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { forwardRef, useState } from 'react';\nimport clsx from 'clsx';\n\nimport { useUniqueId } from '@cloudscape-design/component-toolkit/internal';\n\nimport { ButtonDropdownProps } from '../../../button-dropdown/interfaces';\nimport { isLinkItem } from '../../../button-dropdown/utils/utils';\nimport InternalIcon from '../../../icon/internal';\nimport { fireCancelableEvent, isPlainLeftClick } from '../../../internal/events';\nimport { spinWhenOpen } from '../../../internal/styles/motion/utils';\nimport { LinkProps } from '../../../link/interfaces';\nimport { TopNavigationProps } from '../../interfaces';\nimport { useNavigate } from './router';\n\nimport styles from '../../styles.css.js';\n\ninterface ListItemProps {\n startIcon?: React.ReactNode;\n endIcon?: React.ReactNode;\n context?: 'dropdown-menu';\n children?: React.ReactNode;\n testId?: string;\n}\n\nconst ListItem = ({ children, startIcon, endIcon }: ListItemProps) => {\n return (\n <>\n {startIcon && <span className={styles['overflow-menu-list-item-icon']}>{startIcon}</span>}\n <span className={styles['overflow-menu-list-item-text']}>{children}</span>\n {endIcon && endIcon}\n </>\n );\n};\n\ninterface LinkItemProps extends ButtonItemProps, Pick<LinkProps, 'href' | 'external' | 'target' | 'rel'> {}\n\nconst LinkItem = forwardRef(\n (\n { children, external, href, target, rel, startIcon, endIcon, onClick, context, testId }: LinkItemProps,\n ref: React.Ref<HTMLAnchorElement & HTMLButtonElement>\n ) => {\n const anchorTarget = target ?? (external ? '_blank' : undefined);\n const anchorRel = rel ?? (anchorTarget === '_blank' ? 'noopener noreferrer' : undefined);\n const role = !href ? 'button' : undefined;\n\n return (\n <a\n ref={ref}\n onClick={onClick}\n className={clsx(\n styles['overflow-menu-control'],\n styles['overflow-menu-control-link'],\n context && styles[`overflow-menu-control-${context}`]\n )}\n role={role}\n tabIndex={0}\n href={href}\n target={anchorTarget}\n rel={anchorRel}\n data-awsui-motion-trigger=\"hover\"\n {...(testId ? { 'data-testid': testId } : {})}\n >\n <ListItem startIcon={startIcon} endIcon={endIcon}>\n {children}\n </ListItem>\n </a>\n );\n }\n);\n\ninterface ButtonItemProps extends ListItemProps {\n onClick?: (event: React.MouseEvent) => void;\n}\n\nconst ButtonItem = forwardRef(\n (\n { children, startIcon, endIcon, onClick, testId }: ButtonItemProps & { testId?: string },\n ref: React.Ref<HTMLButtonElement>\n ) => {\n return (\n <button\n ref={ref}\n className={styles['overflow-menu-control']}\n onClick={onClick}\n data-awsui-motion-trigger=\"hover\"\n {...(typeof testId === 'string' ? { 'data-testid': testId } : {})}\n >\n <ListItem startIcon={startIcon} endIcon={endIcon}>\n {children}\n </ListItem>\n </button>\n );\n }\n);\n\nconst NavigationItem = forwardRef(\n (\n {\n startIcon,\n children,\n index,\n testId,\n ...definition\n }: ButtonItemProps & TopNavigationProps.MenuDropdownUtility & { index: number; testId?: string },\n ref: React.Ref<HTMLButtonElement>\n ) => {\n const navigate = useNavigate();\n return (\n <ButtonItem\n ref={ref}\n startIcon={startIcon}\n endIcon={<InternalIcon name=\"angle-right\" nativeAttributes={{ 'data-awsui-motion-target': '' }} />}\n testId={testId}\n onClick={() =>\n navigate('dropdown-menu', {\n definition,\n headerText: definition.text || definition.title,\n headerSecondaryText: definition.description,\n utilityIndex: index,\n })\n }\n >\n {children}\n </ButtonItem>\n );\n }\n);\n\nconst ExpandableItem: React.FC<\n ButtonItemProps &\n ButtonDropdownProps.ItemGroup & { onItemClick: (event: React.MouseEvent, item: ButtonDropdownProps.Item) => void }\n> = ({ children, onItemClick, ...definition }) => {\n const [expanded, setExpanded] = useState(false);\n const headerId = useUniqueId('overflow-menu-item');\n\n return (\n <>\n <button\n className={clsx(styles['overflow-menu-control'], styles['overflow-menu-control-expandable-menu-trigger'])}\n onClick={() => setExpanded(value => !value)}\n aria-expanded={expanded}\n data-awsui-motion-trigger=\"hover\"\n >\n <ListItem\n endIcon={\n <span className={spinWhenOpen(styles, 'icon', expanded)}>\n <InternalIcon name=\"caret-down-filled\" nativeAttributes={{ 'data-awsui-motion-target': '' }} />\n </span>\n }\n >\n <span id={headerId}>{children}</span>\n </ListItem>\n </button>\n {expanded && (\n <ul\n className={clsx(styles['overflow-menu-list'], styles['overflow-menu-list-submenu'])}\n aria-labelledby={headerId}\n >\n {definition.items.map((item, index) => {\n const isGroup = typeof (item as ButtonDropdownProps.ItemGroup).items !== 'undefined';\n\n return (\n <li\n key={index}\n className={clsx(styles[`overflow-menu-list-item`], styles[`overflow-menu-list-item-dropdown-menu`])}\n >\n {dropdownComponentFactory(item, isGroup, onItemClick)}\n </li>\n );\n })}\n </ul>\n )}\n </>\n );\n};\n\nfunction utilityComponentFactory(\n utility: TopNavigationProps.Utility & { onClose?: () => void },\n index: number,\n ref?: React.Ref<HTMLAnchorElement & HTMLButtonElement>\n) {\n const label = utility.text || utility.title;\n const hasIcon = !!utility.iconName || !!utility.iconUrl || !!utility.iconAlt || !!utility.iconSvg;\n const startIcon = hasIcon && (\n <InternalIcon name={utility.iconName} url={utility.iconUrl} alt={utility.iconAlt} svg={utility.iconSvg} />\n );\n\n switch (utility.type) {\n case 'button': {\n const handleClick = (event: React.MouseEvent) => {\n if (Boolean(utility.href) && isPlainLeftClick(event)) {\n fireCancelableEvent(utility.onFollow, { href: utility.href, target: utility.target }, event);\n }\n\n fireCancelableEvent(utility.onClick, {}, event);\n utility.onClose?.();\n };\n\n const content = (\n <>\n {label}\n {utility.external && (\n <>\n {' '}\n <span aria-label={utility.externalIconAriaLabel} role={utility.externalIconAriaLabel ? 'img' : undefined}>\n <InternalIcon name=\"external\" size=\"normal\" />\n </span>\n </>\n )}\n </>\n );\n\n if (!utility.href) {\n return (\n <ButtonItem ref={ref} startIcon={startIcon} onClick={handleClick} testId={`__${index}`}>\n {content}\n </ButtonItem>\n );\n }\n\n return (\n <LinkItem\n ref={ref}\n startIcon={startIcon}\n href={utility.href}\n external={utility.external}\n target={utility.target}\n rel={utility.rel}\n testId={`__${index}`}\n onClick={handleClick}\n >\n {content}\n </LinkItem>\n );\n }\n case 'menu-dropdown': {\n return (\n <NavigationItem\n ref={ref}\n startIcon={startIcon}\n index={index}\n {...(utility as TopNavigationProps.MenuDropdownUtility)}\n testId={`__${index}`}\n >\n {label}\n </NavigationItem>\n );\n }\n }\n}\n\nfunction dropdownComponentFactory(\n item: ButtonDropdownProps.ItemOrGroup,\n expandable: boolean,\n onItemClick: (event: React.MouseEvent, item: ButtonDropdownProps.Item) => void\n) {\n const label = item.text;\n const hasIcon = !!item.iconName || !!item.iconUrl || !!item.iconAlt || !!item.iconSvg;\n const isLink = isLinkItem(item);\n const startIcon = hasIcon && (\n <InternalIcon name={item.iconName} url={item.iconUrl} alt={item.iconAlt} svg={item.iconSvg} />\n );\n\n if (expandable) {\n return (\n <ExpandableItem {...(item as ButtonDropdownProps.ItemGroup)} onItemClick={onItemClick}>\n {label}\n </ExpandableItem>\n );\n }\n\n return (\n <LinkItem\n startIcon={startIcon}\n href={isLink ? item.href : undefined}\n external={isLink ? item.external : undefined}\n context=\"dropdown-menu\"\n testId={item.id}\n onClick={event => onItemClick(event, item as ButtonDropdownProps.Item)}\n >\n {label}\n {isLink && item.external && (\n <>\n {' '}\n <span aria-label={item.externalIconAriaLabel} role={item.externalIconAriaLabel ? 'img' : undefined}>\n <InternalIcon name=\"external\" size=\"normal\" />\n </span>\n </>\n )}\n </LinkItem>\n );\n}\n\ntype UtilityMenuItemProps = TopNavigationProps.Utility & { index: number; onClose?: () => void };\n\nexport const UtilityMenuItem = forwardRef(\n ({ index, ...props }: UtilityMenuItemProps, ref: React.Ref<HTMLAnchorElement & HTMLButtonElement>) => {\n return (\n <li className={clsx(styles[`overflow-menu-list-item`], styles[`overflow-menu-list-item-utility`])}>\n {utilityComponentFactory(props, index, ref)}\n </li>\n );\n }\n);\n\ntype SubmenuItemProps = ButtonDropdownProps.ItemOrGroup & {\n onClick: (event: React.MouseEvent, item: ButtonDropdownProps.Item) => void;\n};\n\nexport const SubmenuItem = (props: SubmenuItemProps) => {\n const expandable = typeof (props as ButtonDropdownProps.ItemGroup).items !== 'undefined';\n\n return (\n <li\n className={clsx(\n styles[`overflow-menu-list-item`],\n styles[`overflow-menu-list-item-submenu`],\n expandable && styles[`overflow-menu-list-item-expandable`]\n )}\n >\n {dropdownComponentFactory(props, expandable, props.onClick)}\n </li>\n );\n};\n"]}
|