@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.
Files changed (258) hide show
  1. package/lib/internal/manifest.json +1 -1
  2. package/lib/internal/scss/alert/styles.scss +13 -12
  3. package/lib/internal/scss/badge/styles.scss +38 -49
  4. package/lib/internal/scss/button/styles.scss +51 -51
  5. package/lib/internal/scss/cards/styles.scss +4 -0
  6. package/lib/internal/scss/container/styles.scss +2 -0
  7. package/lib/internal/scss/icon/hover-motion.scss +24 -12
  8. package/lib/internal/scss/input/styles.scss +4 -0
  9. package/lib/internal/scss/internal/generated/custom-css-properties/index.scss +175 -174
  10. package/lib/internal/scss/internal/styles/forms/mixins.scss +11 -2
  11. package/lib/internal/scss/internal/styles/style-api.scss +60 -10
  12. package/lib/internal/scss/pagination/styles.scss +3 -1
  13. package/lib/internal/scss/table/styles.scss +5 -0
  14. package/lib/internal/template/action-card/internal.d.ts.map +1 -1
  15. package/lib/internal/template/action-card/internal.js +5 -2
  16. package/lib/internal/template/action-card/internal.js.map +1 -1
  17. package/lib/internal/template/alert/styles.css.js +27 -27
  18. package/lib/internal/template/alert/styles.scoped.css +50 -50
  19. package/lib/internal/template/alert/styles.selectors.js +27 -27
  20. package/lib/internal/template/annotation-context/annotation/styles.css.js +13 -13
  21. package/lib/internal/template/annotation-context/annotation/styles.scoped.css +21 -21
  22. package/lib/internal/template/annotation-context/annotation/styles.selectors.js +13 -13
  23. package/lib/internal/template/app-layout/notifications/styles.css.js +3 -3
  24. package/lib/internal/template/app-layout/notifications/styles.scoped.css +7 -7
  25. package/lib/internal/template/app-layout/notifications/styles.selectors.js +3 -3
  26. package/lib/internal/template/app-layout/toggles/index.d.ts.map +1 -1
  27. package/lib/internal/template/app-layout/toggles/index.js +1 -1
  28. package/lib/internal/template/app-layout/toggles/index.js.map +1 -1
  29. package/lib/internal/template/app-layout/visual-refresh/styles.css.js +86 -86
  30. package/lib/internal/template/app-layout/visual-refresh/styles.scoped.css +258 -258
  31. package/lib/internal/template/app-layout/visual-refresh/styles.selectors.js +86 -86
  32. package/lib/internal/template/app-layout/visual-refresh/trigger-button.d.ts.map +1 -1
  33. package/lib/internal/template/app-layout/visual-refresh/trigger-button.js +1 -1
  34. package/lib/internal/template/app-layout/visual-refresh/trigger-button.js.map +1 -1
  35. package/lib/internal/template/app-layout/visual-refresh-toolbar/drawer/styles.css.js +32 -32
  36. package/lib/internal/template/app-layout/visual-refresh-toolbar/drawer/styles.scoped.css +89 -89
  37. package/lib/internal/template/app-layout/visual-refresh-toolbar/drawer/styles.selectors.js +32 -32
  38. package/lib/internal/template/app-layout/visual-refresh-toolbar/navigation/styles.css.js +6 -6
  39. package/lib/internal/template/app-layout/visual-refresh-toolbar/navigation/styles.scoped.css +13 -13
  40. package/lib/internal/template/app-layout/visual-refresh-toolbar/navigation/styles.selectors.js +6 -6
  41. package/lib/internal/template/app-layout/visual-refresh-toolbar/skeleton/styles.css.js +30 -30
  42. package/lib/internal/template/app-layout/visual-refresh-toolbar/skeleton/styles.scoped.css +68 -68
  43. package/lib/internal/template/app-layout/visual-refresh-toolbar/skeleton/styles.selectors.js +30 -30
  44. package/lib/internal/template/app-layout/visual-refresh-toolbar/toolbar/trigger-button/index.d.ts.map +1 -1
  45. package/lib/internal/template/app-layout/visual-refresh-toolbar/toolbar/trigger-button/index.js +1 -1
  46. package/lib/internal/template/app-layout/visual-refresh-toolbar/toolbar/trigger-button/index.js.map +1 -1
  47. package/lib/internal/template/attribute-editor/styles.css.js +15 -15
  48. package/lib/internal/template/attribute-editor/styles.scoped.css +28 -28
  49. package/lib/internal/template/attribute-editor/styles.selectors.js +15 -15
  50. package/lib/internal/template/breadcrumb-group/all-items-dropdown.js +2 -2
  51. package/lib/internal/template/breadcrumb-group/all-items-dropdown.js.map +1 -1
  52. package/lib/internal/template/breadcrumb-group/item/styles.css.js +7 -7
  53. package/lib/internal/template/breadcrumb-group/item/styles.scoped.css +28 -28
  54. package/lib/internal/template/breadcrumb-group/item/styles.selectors.js +7 -7
  55. package/lib/internal/template/button/internal.d.ts.map +1 -1
  56. package/lib/internal/template/button/internal.js +2 -0
  57. package/lib/internal/template/button/internal.js.map +1 -1
  58. package/lib/internal/template/button/styles.css.js +23 -23
  59. package/lib/internal/template/button/styles.scoped.css +261 -261
  60. package/lib/internal/template/button/styles.selectors.js +23 -23
  61. package/lib/internal/template/button-dropdown/category-elements/expandable-category-element.d.ts.map +1 -1
  62. package/lib/internal/template/button-dropdown/category-elements/expandable-category-element.js +2 -2
  63. package/lib/internal/template/button-dropdown/category-elements/expandable-category-element.js.map +1 -1
  64. package/lib/internal/template/button-dropdown/filter.d.ts +1 -1
  65. package/lib/internal/template/button-dropdown/filter.d.ts.map +1 -1
  66. package/lib/internal/template/button-dropdown/internal.d.ts.map +1 -1
  67. package/lib/internal/template/button-dropdown/internal.js +9 -3
  68. package/lib/internal/template/button-dropdown/internal.js.map +1 -1
  69. package/lib/internal/template/button-dropdown/item-element/index.d.ts.map +1 -1
  70. package/lib/internal/template/button-dropdown/item-element/index.js +2 -2
  71. package/lib/internal/template/button-dropdown/item-element/index.js.map +1 -1
  72. package/lib/internal/template/button-dropdown/item-element/styles.css.js +21 -21
  73. package/lib/internal/template/button-dropdown/item-element/styles.scoped.css +37 -37
  74. package/lib/internal/template/button-dropdown/item-element/styles.selectors.js +21 -21
  75. package/lib/internal/template/button-dropdown/utils/use-button-dropdown.d.ts +5 -3
  76. package/lib/internal/template/button-dropdown/utils/use-button-dropdown.d.ts.map +1 -1
  77. package/lib/internal/template/button-dropdown/utils/use-button-dropdown.js +14 -2
  78. package/lib/internal/template/button-dropdown/utils/use-button-dropdown.js.map +1 -1
  79. package/lib/internal/template/cards/styles.css.js +39 -38
  80. package/lib/internal/template/cards/styles.scoped.css +42 -39
  81. package/lib/internal/template/cards/styles.selectors.js +39 -38
  82. package/lib/internal/template/checkbox/styles.css.js +3 -3
  83. package/lib/internal/template/checkbox/styles.scoped.css +11 -11
  84. package/lib/internal/template/checkbox/styles.selectors.js +3 -3
  85. package/lib/internal/template/code-editor/tab-button.d.ts.map +1 -1
  86. package/lib/internal/template/code-editor/tab-button.js +1 -1
  87. package/lib/internal/template/code-editor/tab-button.js.map +1 -1
  88. package/lib/internal/template/container/styles.css.js +33 -33
  89. package/lib/internal/template/container/styles.scoped.css +57 -56
  90. package/lib/internal/template/container/styles.selectors.js +33 -33
  91. package/lib/internal/template/content-layout/styles.css.js +14 -14
  92. package/lib/internal/template/content-layout/styles.scoped.css +27 -27
  93. package/lib/internal/template/content-layout/styles.selectors.js +14 -14
  94. package/lib/internal/template/dropdown/styles.css.js +20 -20
  95. package/lib/internal/template/dropdown/styles.scoped.css +49 -49
  96. package/lib/internal/template/dropdown/styles.selectors.js +20 -20
  97. package/lib/internal/template/expandable-section/expandable-section-header.d.ts.map +1 -1
  98. package/lib/internal/template/expandable-section/expandable-section-header.js +13 -7
  99. package/lib/internal/template/expandable-section/expandable-section-header.js.map +1 -1
  100. package/lib/internal/template/file-token-group/styles.css.js +23 -23
  101. package/lib/internal/template/file-token-group/styles.scoped.css +36 -36
  102. package/lib/internal/template/file-token-group/styles.selectors.js +23 -23
  103. package/lib/internal/template/flashbar/collapsible-flashbar.d.ts.map +1 -1
  104. package/lib/internal/template/flashbar/collapsible-flashbar.js +3 -3
  105. package/lib/internal/template/flashbar/collapsible-flashbar.js.map +1 -1
  106. package/lib/internal/template/flashbar/styles.css.js +50 -50
  107. package/lib/internal/template/flashbar/styles.scoped.css +192 -192
  108. package/lib/internal/template/flashbar/styles.selectors.js +50 -50
  109. package/lib/internal/template/help-panel/styles.css.js +6 -6
  110. package/lib/internal/template/help-panel/styles.scoped.css +72 -72
  111. package/lib/internal/template/help-panel/styles.selectors.js +6 -6
  112. package/lib/internal/template/input/index.d.ts.map +1 -1
  113. package/lib/internal/template/input/index.js +3 -2
  114. package/lib/internal/template/input/index.js.map +1 -1
  115. package/lib/internal/template/input/interfaces.d.ts +6 -0
  116. package/lib/internal/template/input/interfaces.d.ts.map +1 -1
  117. package/lib/internal/template/input/interfaces.js.map +1 -1
  118. package/lib/internal/template/input/internal.d.ts +0 -1
  119. package/lib/internal/template/input/internal.d.ts.map +1 -1
  120. package/lib/internal/template/input/internal.js +26 -12
  121. package/lib/internal/template/input/internal.js.map +1 -1
  122. package/lib/internal/template/input/styles.css.js +29 -28
  123. package/lib/internal/template/input/styles.scoped.css +134 -131
  124. package/lib/internal/template/input/styles.selectors.js +29 -28
  125. package/lib/internal/template/internal/base-component/styles.scoped.css +1 -1
  126. package/lib/internal/template/internal/components/button-trigger/index.d.ts.map +1 -1
  127. package/lib/internal/template/internal/components/button-trigger/index.js +2 -2
  128. package/lib/internal/template/internal/components/button-trigger/index.js.map +1 -1
  129. package/lib/internal/template/internal/components/drag-handle/button.d.ts.map +1 -1
  130. package/lib/internal/template/internal/components/drag-handle/button.js +3 -1
  131. package/lib/internal/template/internal/components/drag-handle/button.js.map +1 -1
  132. package/lib/internal/template/internal/components/drag-handle-wrapper/index.d.ts.map +1 -1
  133. package/lib/internal/template/internal/components/drag-handle-wrapper/index.js +2 -1
  134. package/lib/internal/template/internal/components/drag-handle-wrapper/index.js.map +1 -1
  135. package/lib/internal/template/internal/components/drag-handle-wrapper/styles.css.js +30 -30
  136. package/lib/internal/template/internal/components/drag-handle-wrapper/styles.scoped.css +58 -58
  137. package/lib/internal/template/internal/components/drag-handle-wrapper/styles.selectors.js +30 -30
  138. package/lib/internal/template/internal/components/expand-toggle-button/index.d.ts.map +1 -1
  139. package/lib/internal/template/internal/components/expand-toggle-button/index.js +1 -1
  140. package/lib/internal/template/internal/components/expand-toggle-button/index.js.map +1 -1
  141. package/lib/internal/template/internal/components/menu-dropdown/index.d.ts.map +1 -1
  142. package/lib/internal/template/internal/components/menu-dropdown/index.js +1 -1
  143. package/lib/internal/template/internal/components/menu-dropdown/index.js.map +1 -1
  144. package/lib/internal/template/internal/components/option/styles.css.js +17 -17
  145. package/lib/internal/template/internal/components/option/styles.scoped.css +31 -31
  146. package/lib/internal/template/internal/components/option/styles.selectors.js +17 -17
  147. package/lib/internal/template/internal/components/radio-button/styles.css.js +7 -7
  148. package/lib/internal/template/internal/components/radio-button/styles.scoped.css +18 -18
  149. package/lib/internal/template/internal/components/radio-button/styles.selectors.js +7 -7
  150. package/lib/internal/template/internal/components/selectable-item/styles.css.js +22 -22
  151. package/lib/internal/template/internal/components/selectable-item/styles.scoped.css +57 -57
  152. package/lib/internal/template/internal/components/selectable-item/styles.selectors.js +22 -22
  153. package/lib/internal/template/internal/components/token-list/styles.css.js +10 -10
  154. package/lib/internal/template/internal/components/token-list/styles.scoped.css +25 -25
  155. package/lib/internal/template/internal/components/token-list/styles.selectors.js +10 -10
  156. package/lib/internal/template/internal/components/token-list/token-limit-toggle.d.ts.map +1 -1
  157. package/lib/internal/template/internal/components/token-list/token-limit-toggle.js +2 -2
  158. package/lib/internal/template/internal/components/token-list/token-limit-toggle.js.map +1 -1
  159. package/lib/internal/template/internal/environment.js +2 -2
  160. package/lib/internal/template/internal/environment.json +2 -2
  161. package/lib/internal/template/internal/generated/custom-css-properties/index.d.ts +1 -0
  162. package/lib/internal/template/internal/generated/custom-css-properties/index.d.ts.map +1 -1
  163. package/lib/internal/template/internal/generated/custom-css-properties/index.js +174 -173
  164. package/lib/internal/template/internal/generated/custom-css-properties/index.js.map +1 -1
  165. package/lib/internal/template/internal/generated/styles/tokens.js +200 -200
  166. package/lib/internal/template/internal/generated/theming/index.cjs +200 -200
  167. package/lib/internal/template/internal/generated/theming/index.js +200 -200
  168. package/lib/internal/template/internal/utils/focus-visible.d.ts +15 -0
  169. package/lib/internal/template/internal/utils/focus-visible.d.ts.map +1 -0
  170. package/lib/internal/template/internal/utils/focus-visible.js +21 -0
  171. package/lib/internal/template/internal/utils/focus-visible.js.map +1 -0
  172. package/lib/internal/template/item-card/styles.css.js +14 -14
  173. package/lib/internal/template/item-card/styles.scoped.css +63 -63
  174. package/lib/internal/template/item-card/styles.selectors.js +14 -14
  175. package/lib/internal/template/link/internal.d.ts.map +1 -1
  176. package/lib/internal/template/link/internal.js +2 -0
  177. package/lib/internal/template/link/internal.js.map +1 -1
  178. package/lib/internal/template/link/styles.css.js +21 -21
  179. package/lib/internal/template/link/styles.scoped.css +104 -104
  180. package/lib/internal/template/link/styles.selectors.js +21 -21
  181. package/lib/internal/template/modal/styles.css.js +31 -31
  182. package/lib/internal/template/modal/styles.scoped.css +48 -48
  183. package/lib/internal/template/modal/styles.selectors.js +31 -31
  184. package/lib/internal/template/pagination/internal.d.ts.map +1 -1
  185. package/lib/internal/template/pagination/internal.js +4 -4
  186. package/lib/internal/template/pagination/internal.js.map +1 -1
  187. package/lib/internal/template/pagination/styles.css.js +12 -12
  188. package/lib/internal/template/pagination/styles.scoped.css +31 -31
  189. package/lib/internal/template/pagination/styles.selectors.js +12 -12
  190. package/lib/internal/template/progress-bar/styles.css.js +19 -19
  191. package/lib/internal/template/progress-bar/styles.scoped.css +58 -58
  192. package/lib/internal/template/progress-bar/styles.selectors.js +19 -19
  193. package/lib/internal/template/prompt-input/styles.css.js +26 -26
  194. package/lib/internal/template/prompt-input/styles.scoped.css +105 -105
  195. package/lib/internal/template/prompt-input/styles.selectors.js +26 -26
  196. package/lib/internal/template/property-filter/filtering-token/index.js +4 -4
  197. package/lib/internal/template/property-filter/filtering-token/index.js.map +1 -1
  198. package/lib/internal/template/segmented-control/segment.d.ts.map +1 -1
  199. package/lib/internal/template/segmented-control/segment.js +1 -1
  200. package/lib/internal/template/segmented-control/segment.js.map +1 -1
  201. package/lib/internal/template/segmented-control/styles.css.js +16 -16
  202. package/lib/internal/template/segmented-control/styles.scoped.css +46 -46
  203. package/lib/internal/template/segmented-control/styles.selectors.js +16 -16
  204. package/lib/internal/template/select/parts/filter.d.ts +1 -1
  205. package/lib/internal/template/select/parts/filter.d.ts.map +1 -1
  206. package/lib/internal/template/select/parts/styles.css.js +21 -21
  207. package/lib/internal/template/select/parts/styles.scoped.css +24 -24
  208. package/lib/internal/template/select/parts/styles.selectors.js +21 -21
  209. package/lib/internal/template/side-navigation/parts.js +3 -3
  210. package/lib/internal/template/side-navigation/parts.js.map +1 -1
  211. package/lib/internal/template/side-navigation/styles.css.js +64 -64
  212. package/lib/internal/template/side-navigation/styles.scoped.css +111 -111
  213. package/lib/internal/template/side-navigation/styles.selectors.js +64 -64
  214. package/lib/internal/template/slider/styles.css.js +26 -26
  215. package/lib/internal/template/slider/styles.scoped.css +165 -165
  216. package/lib/internal/template/slider/styles.selectors.js +26 -26
  217. package/lib/internal/template/spinner/styles.css.js +14 -14
  218. package/lib/internal/template/spinner/styles.scoped.css +40 -40
  219. package/lib/internal/template/spinner/styles.selectors.js +14 -14
  220. package/lib/internal/template/table/header-cell/index.d.ts.map +1 -1
  221. package/lib/internal/template/table/header-cell/index.js +2 -1
  222. package/lib/internal/template/table/header-cell/index.js.map +1 -1
  223. package/lib/internal/template/table/styles.css.js +37 -37
  224. package/lib/internal/template/table/styles.scoped.css +47 -44
  225. package/lib/internal/template/table/styles.selectors.js +37 -37
  226. package/lib/internal/template/tabs/styles.css.js +30 -30
  227. package/lib/internal/template/tabs/styles.scoped.css +76 -76
  228. package/lib/internal/template/tabs/styles.selectors.js +30 -30
  229. package/lib/internal/template/tabs/tab-header-bar.d.ts.map +1 -1
  230. package/lib/internal/template/tabs/tab-header-bar.js +1 -1
  231. package/lib/internal/template/tabs/tab-header-bar.js.map +1 -1
  232. package/lib/internal/template/tag-editor/styles.css.js +3 -3
  233. package/lib/internal/template/tag-editor/styles.scoped.css +13 -13
  234. package/lib/internal/template/tag-editor/styles.selectors.js +3 -3
  235. package/lib/internal/template/test-utils/dom/input/index.d.ts +1 -0
  236. package/lib/internal/template/test-utils/dom/input/index.js +3 -0
  237. package/lib/internal/template/test-utils/dom/input/index.js.map +1 -1
  238. package/lib/internal/template/test-utils/selectors/input/index.d.ts +1 -0
  239. package/lib/internal/template/test-utils/selectors/input/index.js +3 -0
  240. package/lib/internal/template/test-utils/selectors/input/index.js.map +1 -1
  241. package/lib/internal/template/text-content/styles.css.js +1 -1
  242. package/lib/internal/template/text-content/styles.scoped.css +66 -66
  243. package/lib/internal/template/text-content/styles.selectors.js +1 -1
  244. package/lib/internal/template/textarea/styles.css.js +9 -9
  245. package/lib/internal/template/textarea/styles.scoped.css +51 -51
  246. package/lib/internal/template/textarea/styles.selectors.js +9 -9
  247. package/lib/internal/template/toggle/styles.css.js +10 -10
  248. package/lib/internal/template/toggle/styles.scoped.css +23 -23
  249. package/lib/internal/template/toggle/styles.selectors.js +10 -10
  250. package/lib/internal/template/token/dismiss-button.js +2 -2
  251. package/lib/internal/template/token/dismiss-button.js.map +1 -1
  252. package/lib/internal/template/token/styles.css.js +14 -14
  253. package/lib/internal/template/token/styles.scoped.css +46 -46
  254. package/lib/internal/template/token/styles.selectors.js +14 -14
  255. package/lib/internal/template/top-navigation/parts/overflow-menu/menu-item.d.ts.map +1 -1
  256. package/lib/internal/template/top-navigation/parts/overflow-menu/menu-item.js +5 -5
  257. package/lib/internal/template/top-navigation/parts/overflow-menu/menu-item.js.map +1 -1
  258. 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
- .awsui_root_4yi2u_7q95s_9:not(#\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
- .awsui_outline_4yi2u_7q95s_42:not(#\9) {
43
- --awsui-style-focus-ring-box-shadow-esndbs: 0 0 0 var(--awsui-style-focus-ring-border-width-esndbs, 2px) var(--awsui-style-focus-ring-border-color-esndbs, var(--color-border-item-focused-sewkzn, #0073bb));
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
- .awsui_outline_4yi2u_7q95s_42:not(#\9) {
46
+ .awsui_outline_4yi2u_1x2rl_42:not(#\9) {
47
47
  outline: 2px dotted transparent;
48
48
  outline-offset: calc(2px - 1px);
49
49
  }
50
- .awsui_outline_4yi2u_7q95s_42:not(#\9)::before {
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-esndbs, var(--border-radius-control-default-focus-ring-akwhsf, 2px));
59
- border-start-end-radius: var(--awsui-style-focus-ring-border-radius-esndbs, var(--border-radius-control-default-focus-ring-akwhsf, 2px));
60
- border-end-start-radius: var(--awsui-style-focus-ring-border-radius-esndbs, var(--border-radius-control-default-focus-ring-akwhsf, 2px));
61
- border-end-end-radius: var(--awsui-style-focus-ring-border-radius-esndbs, var(--border-radius-control-default-focus-ring-akwhsf, 2px));
62
- box-shadow: var(--awsui-style-focus-ring-box-shadow-esndbs);
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-control_4yi2u_7q95s_65:not(#\9) {
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-checked_4yi2u_7q95s_78:not(#\9) {
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-disabled_4yi2u_7q95s_81:not(#\9) {
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-disabled_4yi2u_7q95s_81.awsui_toggle-control-checked_4yi2u_7q95s_78:not(#\9) {
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-readonly_4yi2u_7q95s_87:not(#\9) {
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-handle_4yi2u_7q95s_91:not(#\9) {
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-handle_4yi2u_7q95s_91:not(#\9) {
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-handle_4yi2u_7q95s_91:not(#\9), .awsui-mode-entering .awsui_toggle-handle_4yi2u_7q95s_91:not(#\9) {
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-checked_4yi2u_7q95s_116:not(#\9) {
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-checked_4yi2u_7q95s_116:not(#\9):dir(rtl) {
120
+ .awsui_toggle-handle-checked_4yi2u_1x2rl_116:not(#\9):dir(rtl) {
121
121
  transform: translateX(-8px);
122
122
  }
123
- .awsui_toggle-handle-disabled_4yi2u_7q95s_123:not(#\9) {
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-readonly_4yi2u_7q95s_127:not(#\9):not(.awsui_toggle-handle-disabled_4yi2u_7q95s_123) {
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-readonly_4yi2u_7q95s_127:not(#\9):not(.awsui_toggle-handle-disabled_4yi2u_7q95s_123).awsui_toggle-handle-checked_4yi2u_7q95s_116 {
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": "awsui_root_4yi2u_7q95s_9",
6
- "outline": "awsui_outline_4yi2u_7q95s_42",
7
- "toggle-control": "awsui_toggle-control_4yi2u_7q95s_65",
8
- "toggle-control-checked": "awsui_toggle-control-checked_4yi2u_7q95s_78",
9
- "toggle-control-disabled": "awsui_toggle-control-disabled_4yi2u_7q95s_81",
10
- "toggle-control-readonly": "awsui_toggle-control-readonly_4yi2u_7q95s_87",
11
- "toggle-handle": "awsui_toggle-handle_4yi2u_7q95s_91",
12
- "toggle-handle-checked": "awsui_toggle-handle-checked_4yi2u_7q95s_116",
13
- "toggle-handle-disabled": "awsui_toggle-handle-disabled_4yi2u_7q95s_123",
14
- "toggle-handle-readonly": "awsui_toggle-handle-readonly_4yi2u_7q95s_127"
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,KACpB,CAAC,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,6BAA6B,CAAC,iBAAiB,CAAC,CAAC;QAElF,oBAAC,YAAY,IAAC,IAAI,EAAC,OAAO,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,GAAI,CAChE,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 {...(disabled || readOnly ? {} : getAnalyticsMetadataAttribute(analyticsMetadata))}\n >\n <InternalIcon name=\"close\" size={isOneTheme ? 'x-small' : undefined} />\n </button>\n );\n}\n"]}
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": "awsui_root_1i2wg_1tahk_17",
5
- "dismiss-button": "awsui_dismiss-button_1i2wg_1tahk_49",
6
- "dismiss-button-inline": "awsui_dismiss-button-inline_1i2wg_1tahk_90",
7
- "icon": "awsui_icon_1i2wg_1tahk_96",
8
- "icon-inline": "awsui_icon-inline_1i2wg_1tahk_102",
9
- "token-normal": "awsui_token-normal_1i2wg_1tahk_107",
10
- "token-inline": "awsui_token-inline_1i2wg_1tahk_114",
11
- "token-option-inline": "awsui_token-option-inline_1i2wg_1tahk_140",
12
- "token-box": "awsui_token-box_1i2wg_1tahk_144",
13
- "token-box-without-dismiss": "awsui_token-box-without-dismiss_1i2wg_1tahk_163",
14
- "token-box-inline": "awsui_token-box-inline_1i2wg_1tahk_167",
15
- "disable-padding": "awsui_disable-padding_1i2wg_1tahk_187",
16
- "token-box-readonly": "awsui_token-box-readonly_1i2wg_1tahk_194",
17
- "token-box-disabled": "awsui_token-box-disabled_1i2wg_1tahk_195"
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
- .awsui_root_1i2wg_1tahk_17:not(#\9) {
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-button_1i2wg_1tahk_49:not(#\9) {
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-esndbs, var(--color-text-button-inline-icon-default-yujzfi, #545b64));
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-esndbs: 0 0 0 var(--awsui-style-focus-ring-border-width-esndbs, 2px) var(--awsui-style-focus-ring-border-color-esndbs, var(--color-border-item-focused-sewkzn, #0073bb));
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-button_1i2wg_1tahk_49:not(#\9):focus {
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-button_1i2wg_1tahk_49:not(#\9):focus {
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-button_1i2wg_1tahk_49:not(#\9):focus::before {
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-esndbs, var(--border-radius-control-default-focus-ring-akwhsf, 2px));
78
- border-start-end-radius: var(--awsui-style-focus-ring-border-radius-esndbs, var(--border-radius-control-default-focus-ring-akwhsf, 2px));
79
- border-end-start-radius: var(--awsui-style-focus-ring-border-radius-esndbs, var(--border-radius-control-default-focus-ring-akwhsf, 2px));
80
- border-end-end-radius: var(--awsui-style-focus-ring-border-radius-esndbs, var(--border-radius-control-default-focus-ring-akwhsf, 2px));
81
- box-shadow: var(--awsui-style-focus-ring-box-shadow-esndbs);
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-button_1i2wg_1tahk_49:not(#\9):focus {
83
+ .awsui_dismiss-button_1i2wg_rrrrt_49:not(#\9):focus {
84
84
  outline: none;
85
85
  text-decoration: none;
86
86
  }
87
- .awsui_dismiss-button_1i2wg_1tahk_49:not(#\9):hover {
88
- color: var(--awsui-token-style-dismiss-color-hover-esndbs, var(--color-text-button-inline-icon-hover-kxgkw7, #16191f));
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-inline_1i2wg_1tahk_90:not(#\9) {
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
- .awsui_icon_1i2wg_1tahk_96:not(#\9) {
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-inline_1i2wg_1tahk_102:not(#\9) {
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-normal_1i2wg_1tahk_107:not(#\9) {
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-inline_1i2wg_1tahk_114:not(#\9) {
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-inline_1i2wg_1tahk_114:not(#\9):focus {
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-inline_1i2wg_1tahk_114:not(#\9):focus {
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-inline_1i2wg_1tahk_114:not(#\9):focus::before {
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-inline_1i2wg_1tahk_140:not(#\9) {
140
+ .awsui_token-option-inline_1i2wg_rrrrt_140:not(#\9) {
141
141
  max-block-size: 20px;
142
142
  }
143
143
 
144
- .awsui_token-box_1i2wg_1tahk_144:not(#\9) {
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-esndbs, var(--color-border-item-selected-7104rh, #0073bb));
148
- border-inline: var(--border-width-token-p4a0gu, 1px) solid var(--awsui-token-style-border-color-default-esndbs, var(--color-border-item-selected-7104rh, #0073bb));
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-esndbs, var(--color-background-item-selected-dotkup, #f1faff));
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-dismiss_1i2wg_1tahk_163:not(#\9) {
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-inline_1i2wg_1tahk_167:not(#\9) {
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-esndbs, var(--color-border-item-selected-7104rh, #0073bb));
172
- border-inline: var(--border-width-field-2365x3, 1px) solid var(--awsui-token-style-border-color-default-esndbs, var(--color-border-item-selected-7104rh, #0073bb));
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-esndbs, var(--color-background-item-selected-dotkup, #f1faff));
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-padding_1i2wg_1tahk_187:not(#\9) {
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-readonly_1i2wg_1tahk_194 > .awsui_dismiss-button_1i2wg_1tahk_49:not(#\9),
195
- .awsui_token-box-disabled_1i2wg_1tahk_195 > .awsui_dismiss-button_1i2wg_1tahk_49:not(#\9) {
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-readonly_1i2wg_1tahk_194:not(#\9) {
201
- border-color: var(--awsui-token-style-border-color-read-only-esndbs, var(--color-border-input-disabled-5m31k6, #eaeded));
202
- background: var(--awsui-token-style-background-read-only-esndbs, var(--color-background-container-content-mjfil9, #ffffff));
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-readonly_1i2wg_1tahk_194 > .awsui_dismiss-button_1i2wg_1tahk_49:not(#\9) {
205
- color: var(--awsui-token-style-dismiss-color-read-only-esndbs, var(--color-text-button-inline-icon-disabled-yeab6p, #aab7b8));
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-disabled_1i2wg_1tahk_195:not(#\9) {
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-esndbs, var(--color-border-control-disabled-dh8zaw, #d5dbdb));
211
- background: var(--awsui-token-style-background-disabled-esndbs, var(--color-background-container-content-mjfil9, #ffffff));
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-disabled_1i2wg_1tahk_195 > .awsui_dismiss-button_1i2wg_1tahk_49:not(#\9) {
215
- color: var(--awsui-token-style-dismiss-color-disabled-esndbs, var(--color-text-button-inline-icon-disabled-yeab6p, #aab7b8));
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": "awsui_root_1i2wg_1tahk_17",
6
- "dismiss-button": "awsui_dismiss-button_1i2wg_1tahk_49",
7
- "dismiss-button-inline": "awsui_dismiss-button-inline_1i2wg_1tahk_90",
8
- "icon": "awsui_icon_1i2wg_1tahk_96",
9
- "icon-inline": "awsui_icon-inline_1i2wg_1tahk_102",
10
- "token-normal": "awsui_token-normal_1i2wg_1tahk_107",
11
- "token-inline": "awsui_token-inline_1i2wg_1tahk_114",
12
- "token-option-inline": "awsui_token-option-inline_1i2wg_1tahk_140",
13
- "token-box": "awsui_token-box_1i2wg_1tahk_144",
14
- "token-box-without-dismiss": "awsui_token-box-without-dismiss_1i2wg_1tahk_163",
15
- "token-box-inline": "awsui_token-box-inline_1i2wg_1tahk_167",
16
- "disable-padding": "awsui_disable-padding_1i2wg_1tahk_187",
17
- "token-box-readonly": "awsui_token-box-readonly_1i2wg_1tahk_194",
18
- "token-box-disabled": "awsui_token-box-disabled_1i2wg_1tahk_195"
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;AAuRtD,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"}
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"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cloudscape-design/components-themeable",
3
- "version": "3.0.1360",
3
+ "version": "3.0.1362",
4
4
  "files": [
5
5
  "lib"
6
6
  ],