@cloudscape-design/components 3.0.1365 → 3.0.1367

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (500) hide show
  1. package/action-card/internal.d.ts.map +1 -1
  2. package/action-card/internal.js +5 -2
  3. package/action-card/internal.js.map +1 -1
  4. package/action-card/styles.css.js +17 -17
  5. package/action-card/styles.scoped.css +117 -117
  6. package/action-card/styles.selectors.js +17 -17
  7. package/alert/actions-wrapper/styles.css.js +1 -1
  8. package/alert/actions-wrapper/styles.scoped.css +3 -3
  9. package/alert/actions-wrapper/styles.selectors.js +1 -1
  10. package/alert/styles.css.js +27 -27
  11. package/alert/styles.scoped.css +67 -67
  12. package/alert/styles.selectors.js +27 -27
  13. package/anchor-navigation/styles.css.js +8 -8
  14. package/anchor-navigation/styles.scoped.css +22 -22
  15. package/anchor-navigation/styles.selectors.js +8 -8
  16. package/annotation-context/annotation/styles.css.js +13 -13
  17. package/annotation-context/annotation/styles.scoped.css +23 -23
  18. package/annotation-context/annotation/styles.selectors.js +13 -13
  19. package/app-layout/content-wrapper/styles.css.js +3 -3
  20. package/app-layout/content-wrapper/styles.scoped.css +10 -10
  21. package/app-layout/content-wrapper/styles.selectors.js +3 -3
  22. package/app-layout/drawer/styles.css.js +14 -14
  23. package/app-layout/drawer/styles.scoped.css +25 -25
  24. package/app-layout/drawer/styles.selectors.js +14 -14
  25. package/app-layout/mobile-toolbar/styles.css.js +8 -8
  26. package/app-layout/mobile-toolbar/styles.scoped.css +13 -13
  27. package/app-layout/mobile-toolbar/styles.selectors.js +8 -8
  28. package/app-layout/notifications/styles.css.js +3 -3
  29. package/app-layout/notifications/styles.scoped.css +7 -7
  30. package/app-layout/notifications/styles.selectors.js +3 -3
  31. package/app-layout/resize/styles.css.js +5 -5
  32. package/app-layout/resize/styles.scoped.css +14 -14
  33. package/app-layout/resize/styles.selectors.js +5 -5
  34. package/app-layout/styles.css.js +12 -12
  35. package/app-layout/styles.scoped.css +18 -18
  36. package/app-layout/styles.selectors.js +12 -12
  37. package/app-layout/toggles/index.d.ts.map +1 -1
  38. package/app-layout/toggles/index.js +1 -1
  39. package/app-layout/toggles/index.js.map +1 -1
  40. package/app-layout/toggles/styles.css.js +2 -2
  41. package/app-layout/toggles/styles.scoped.css +15 -15
  42. package/app-layout/toggles/styles.selectors.js +2 -2
  43. package/app-layout/visual-refresh/styles.css.js +86 -86
  44. package/app-layout/visual-refresh/styles.scoped.css +288 -288
  45. package/app-layout/visual-refresh/styles.selectors.js +86 -86
  46. package/app-layout/visual-refresh/trigger-button.d.ts.map +1 -1
  47. package/app-layout/visual-refresh/trigger-button.js +1 -1
  48. package/app-layout/visual-refresh/trigger-button.js.map +1 -1
  49. package/app-layout/visual-refresh-toolbar/drawer/styles.css.js +32 -32
  50. package/app-layout/visual-refresh-toolbar/drawer/styles.scoped.css +112 -112
  51. package/app-layout/visual-refresh-toolbar/drawer/styles.selectors.js +32 -32
  52. package/app-layout/visual-refresh-toolbar/navigation/styles.css.js +6 -6
  53. package/app-layout/visual-refresh-toolbar/navigation/styles.scoped.css +15 -15
  54. package/app-layout/visual-refresh-toolbar/navigation/styles.selectors.js +6 -6
  55. package/app-layout/visual-refresh-toolbar/notifications/styles.css.js +3 -3
  56. package/app-layout/visual-refresh-toolbar/notifications/styles.scoped.css +4 -4
  57. package/app-layout/visual-refresh-toolbar/notifications/styles.selectors.js +3 -3
  58. package/app-layout/visual-refresh-toolbar/skeleton/styles.css.js +30 -30
  59. package/app-layout/visual-refresh-toolbar/skeleton/styles.scoped.css +74 -74
  60. package/app-layout/visual-refresh-toolbar/skeleton/styles.selectors.js +30 -30
  61. package/app-layout/visual-refresh-toolbar/toolbar/styles.css.js +14 -14
  62. package/app-layout/visual-refresh-toolbar/toolbar/styles.scoped.css +44 -44
  63. package/app-layout/visual-refresh-toolbar/toolbar/styles.selectors.js +14 -14
  64. package/app-layout/visual-refresh-toolbar/toolbar/trigger-button/index.d.ts.map +1 -1
  65. package/app-layout/visual-refresh-toolbar/toolbar/trigger-button/index.js +1 -1
  66. package/app-layout/visual-refresh-toolbar/toolbar/trigger-button/index.js.map +1 -1
  67. package/area-chart/styles.css.js +6 -6
  68. package/area-chart/styles.scoped.css +11 -11
  69. package/area-chart/styles.selectors.js +6 -6
  70. package/attribute-editor/styles.css.js +15 -15
  71. package/attribute-editor/styles.scoped.css +32 -32
  72. package/attribute-editor/styles.selectors.js +15 -15
  73. package/badge/styles.css.js +10 -10
  74. package/badge/styles.scoped.css +11 -11
  75. package/badge/styles.selectors.js +10 -10
  76. package/box/styles.css.js +220 -220
  77. package/box/styles.scoped.css +433 -433
  78. package/box/styles.selectors.js +220 -220
  79. package/breadcrumb-group/all-items-dropdown.js +2 -2
  80. package/breadcrumb-group/all-items-dropdown.js.map +1 -1
  81. package/breadcrumb-group/item/styles.css.js +7 -7
  82. package/breadcrumb-group/item/styles.scoped.css +30 -30
  83. package/breadcrumb-group/item/styles.selectors.js +7 -7
  84. package/breadcrumb-group/styles.css.js +14 -14
  85. package/breadcrumb-group/styles.scoped.css +32 -32
  86. package/breadcrumb-group/styles.selectors.js +14 -14
  87. package/button/internal.d.ts.map +1 -1
  88. package/button/internal.js +2 -0
  89. package/button/internal.js.map +1 -1
  90. package/button/styles.css.js +23 -23
  91. package/button/styles.scoped.css +295 -295
  92. package/button/styles.selectors.js +23 -23
  93. package/button-dropdown/category-elements/expandable-category-element.d.ts.map +1 -1
  94. package/button-dropdown/category-elements/expandable-category-element.js +2 -2
  95. package/button-dropdown/category-elements/expandable-category-element.js.map +1 -1
  96. package/button-dropdown/category-elements/styles.css.js +18 -18
  97. package/button-dropdown/category-elements/styles.scoped.css +37 -37
  98. package/button-dropdown/category-elements/styles.selectors.js +18 -18
  99. package/button-dropdown/filter.d.ts +1 -1
  100. package/button-dropdown/filter.d.ts.map +1 -1
  101. package/button-dropdown/internal.d.ts.map +1 -1
  102. package/button-dropdown/internal.js +9 -3
  103. package/button-dropdown/internal.js.map +1 -1
  104. package/button-dropdown/item-element/index.d.ts.map +1 -1
  105. package/button-dropdown/item-element/index.js +2 -2
  106. package/button-dropdown/item-element/index.js.map +1 -1
  107. package/button-dropdown/item-element/styles.css.js +21 -21
  108. package/button-dropdown/item-element/styles.scoped.css +45 -45
  109. package/button-dropdown/item-element/styles.selectors.js +21 -21
  110. package/button-dropdown/styles.css.js +23 -23
  111. package/button-dropdown/styles.scoped.css +40 -40
  112. package/button-dropdown/styles.selectors.js +23 -23
  113. package/button-dropdown/utils/use-button-dropdown.d.ts +5 -2
  114. package/button-dropdown/utils/use-button-dropdown.d.ts.map +1 -1
  115. package/button-dropdown/utils/use-button-dropdown.js +14 -2
  116. package/button-dropdown/utils/use-button-dropdown.js.map +1 -1
  117. package/button-group/styles.css.js +4 -4
  118. package/button-group/styles.scoped.css +6 -6
  119. package/button-group/styles.selectors.js +4 -4
  120. package/calendar/styles.css.js +21 -21
  121. package/calendar/styles.scoped.css +62 -62
  122. package/calendar/styles.selectors.js +21 -21
  123. package/cards/styles.css.js +39 -38
  124. package/cards/styles.scoped.css +54 -51
  125. package/cards/styles.selectors.js +39 -38
  126. package/checkbox/styles.css.js +3 -3
  127. package/checkbox/styles.scoped.css +16 -16
  128. package/checkbox/styles.selectors.js +3 -3
  129. package/code-editor/resizable-box/styles.css.js +4 -4
  130. package/code-editor/resizable-box/styles.scoped.css +9 -9
  131. package/code-editor/resizable-box/styles.selectors.js +4 -4
  132. package/code-editor/styles.css.js +33 -33
  133. package/code-editor/styles.scoped.css +159 -159
  134. package/code-editor/styles.selectors.js +33 -33
  135. package/code-editor/tab-button.d.ts.map +1 -1
  136. package/code-editor/tab-button.js +1 -1
  137. package/code-editor/tab-button.js.map +1 -1
  138. package/collection-preferences/styles.css.js +38 -38
  139. package/collection-preferences/styles.scoped.css +52 -52
  140. package/collection-preferences/styles.selectors.js +38 -38
  141. package/column-layout/flexible-column-layout/styles.css.js +5 -5
  142. package/column-layout/flexible-column-layout/styles.scoped.css +12 -12
  143. package/column-layout/flexible-column-layout/styles.selectors.js +5 -5
  144. package/column-layout/styles.css.js +13 -13
  145. package/column-layout/styles.scoped.css +51 -51
  146. package/column-layout/styles.selectors.js +13 -13
  147. package/container/styles.css.js +33 -33
  148. package/container/styles.scoped.css +73 -72
  149. package/container/styles.selectors.js +33 -33
  150. package/content-layout/styles.css.js +14 -14
  151. package/content-layout/styles.scoped.css +30 -30
  152. package/content-layout/styles.selectors.js +14 -14
  153. package/copy-to-clipboard/styles.css.js +5 -5
  154. package/copy-to-clipboard/styles.scoped.css +7 -7
  155. package/copy-to-clipboard/styles.selectors.js +5 -5
  156. package/date-picker/styles.css.js +7 -7
  157. package/date-picker/styles.scoped.css +10 -10
  158. package/date-picker/styles.selectors.js +7 -7
  159. package/date-range-picker/calendar/grids/styles.css.js +30 -30
  160. package/date-range-picker/calendar/grids/styles.scoped.css +69 -69
  161. package/date-range-picker/calendar/grids/styles.selectors.js +30 -30
  162. package/date-range-picker/relative-range/styles.css.js +6 -6
  163. package/date-range-picker/relative-range/styles.scoped.css +13 -13
  164. package/date-range-picker/relative-range/styles.selectors.js +6 -6
  165. package/date-range-picker/styles.css.js +23 -23
  166. package/date-range-picker/styles.scoped.css +46 -46
  167. package/date-range-picker/styles.selectors.js +23 -23
  168. package/divider/styles.css.js +6 -6
  169. package/divider/styles.scoped.css +8 -8
  170. package/divider/styles.selectors.js +6 -6
  171. package/drawer/styles.css.js +29 -29
  172. package/drawer/styles.scoped.css +47 -47
  173. package/drawer/styles.selectors.js +29 -29
  174. package/dropdown/styles.css.js +20 -20
  175. package/dropdown/styles.scoped.css +54 -54
  176. package/dropdown/styles.selectors.js +20 -20
  177. package/expandable-section/expandable-section-header.d.ts.map +1 -1
  178. package/expandable-section/expandable-section-header.js +13 -7
  179. package/expandable-section/expandable-section-header.js.map +1 -1
  180. package/expandable-section/styles.css.js +43 -43
  181. package/expandable-section/styles.scoped.css +129 -129
  182. package/expandable-section/styles.selectors.js +43 -43
  183. package/file-dropzone/styles.css.js +3 -3
  184. package/file-dropzone/styles.scoped.css +6 -6
  185. package/file-dropzone/styles.selectors.js +3 -3
  186. package/file-input/styles.css.js +5 -5
  187. package/file-input/styles.scoped.css +18 -18
  188. package/file-input/styles.selectors.js +5 -5
  189. package/file-token-group/styles.css.js +23 -23
  190. package/file-token-group/styles.scoped.css +52 -52
  191. package/file-token-group/styles.selectors.js +23 -23
  192. package/file-upload/styles.css.js +2 -2
  193. package/file-upload/styles.scoped.css +4 -4
  194. package/file-upload/styles.selectors.js +2 -2
  195. package/flashbar/collapsible-flashbar.d.ts.map +1 -1
  196. package/flashbar/collapsible-flashbar.js +3 -3
  197. package/flashbar/collapsible-flashbar.js.map +1 -1
  198. package/flashbar/styles.css.js +50 -50
  199. package/flashbar/styles.scoped.css +249 -249
  200. package/flashbar/styles.selectors.js +50 -50
  201. package/form/styles.css.js +8 -8
  202. package/form/styles.scoped.css +16 -16
  203. package/form/styles.selectors.js +8 -8
  204. package/form-field/styles.css.js +24 -24
  205. package/form-field/styles.scoped.css +44 -44
  206. package/form-field/styles.selectors.js +24 -24
  207. package/grid/styles.css.js +53 -53
  208. package/grid/styles.scoped.css +58 -58
  209. package/grid/styles.selectors.js +53 -53
  210. package/header/styles.css.js +35 -35
  211. package/header/styles.scoped.css +83 -83
  212. package/header/styles.selectors.js +35 -35
  213. package/help-panel/styles.css.js +6 -6
  214. package/help-panel/styles.scoped.css +100 -100
  215. package/help-panel/styles.selectors.js +6 -6
  216. package/hotspot/styles.css.js +7 -7
  217. package/hotspot/styles.scoped.css +10 -10
  218. package/hotspot/styles.selectors.js +7 -7
  219. package/icon/styles.css.js +42 -42
  220. package/icon/styles.scoped.css +118 -118
  221. package/icon/styles.selectors.js +42 -42
  222. package/input/index.d.ts.map +1 -1
  223. package/input/index.js +3 -2
  224. package/input/index.js.map +1 -1
  225. package/input/interfaces.d.ts +6 -0
  226. package/input/interfaces.d.ts.map +1 -1
  227. package/input/interfaces.js.map +1 -1
  228. package/input/internal.d.ts +0 -1
  229. package/input/internal.d.ts.map +1 -1
  230. package/input/internal.js +26 -12
  231. package/input/internal.js.map +1 -1
  232. package/input/styles.css.js +29 -28
  233. package/input/styles.scoped.css +159 -156
  234. package/input/styles.selectors.js +29 -28
  235. package/internal/base-component/styles.scoped.css +2 -2
  236. package/internal/base-theme/styles.scoped.css +319 -319
  237. package/internal/components/abstract-switch/styles.css.js +13 -13
  238. package/internal/components/abstract-switch/styles.scoped.css +22 -22
  239. package/internal/components/abstract-switch/styles.selectors.js +13 -13
  240. package/internal/components/button-trigger/index.d.ts.map +1 -1
  241. package/internal/components/button-trigger/index.js +2 -2
  242. package/internal/components/button-trigger/index.js.map +1 -1
  243. package/internal/components/button-trigger/styles.css.js +14 -14
  244. package/internal/components/button-trigger/styles.scoped.css +43 -43
  245. package/internal/components/button-trigger/styles.selectors.js +14 -14
  246. package/internal/components/chart-legend/styles.css.js +6 -6
  247. package/internal/components/chart-legend/styles.scoped.css +16 -16
  248. package/internal/components/chart-legend/styles.selectors.js +6 -6
  249. package/internal/components/chart-popover/styles.css.js +3 -3
  250. package/internal/components/chart-popover/styles.scoped.css +6 -6
  251. package/internal/components/chart-popover/styles.selectors.js +3 -3
  252. package/internal/components/chart-series-details/styles.css.js +19 -19
  253. package/internal/components/chart-series-details/styles.scoped.css +39 -39
  254. package/internal/components/chart-series-details/styles.selectors.js +19 -19
  255. package/internal/components/chart-series-marker/styles.css.js +5 -5
  256. package/internal/components/chart-series-marker/styles.scoped.css +9 -9
  257. package/internal/components/chart-series-marker/styles.selectors.js +5 -5
  258. package/internal/components/checkbox-icon/styles.css.js +9 -9
  259. package/internal/components/checkbox-icon/styles.scoped.css +10 -10
  260. package/internal/components/checkbox-icon/styles.selectors.js +9 -9
  261. package/internal/components/drag-handle/button.d.ts.map +1 -1
  262. package/internal/components/drag-handle/button.js +3 -1
  263. package/internal/components/drag-handle/button.js.map +1 -1
  264. package/internal/components/drag-handle/styles.css.js +14 -14
  265. package/internal/components/drag-handle/styles.scoped.css +21 -21
  266. package/internal/components/drag-handle/styles.selectors.js +14 -14
  267. package/internal/components/drag-handle-wrapper/index.d.ts.map +1 -1
  268. package/internal/components/drag-handle-wrapper/index.js +2 -1
  269. package/internal/components/drag-handle-wrapper/index.js.map +1 -1
  270. package/internal/components/drag-handle-wrapper/styles.css.js +30 -30
  271. package/internal/components/drag-handle-wrapper/styles.scoped.css +84 -84
  272. package/internal/components/drag-handle-wrapper/styles.selectors.js +30 -30
  273. package/internal/components/dropdown-status/styles.css.js +2 -2
  274. package/internal/components/dropdown-status/styles.scoped.css +5 -5
  275. package/internal/components/dropdown-status/styles.selectors.js +2 -2
  276. package/internal/components/expand-toggle-button/index.d.ts.map +1 -1
  277. package/internal/components/expand-toggle-button/index.js +1 -1
  278. package/internal/components/expand-toggle-button/index.js.map +1 -1
  279. package/internal/components/expand-toggle-button/styles.css.js +4 -4
  280. package/internal/components/expand-toggle-button/styles.scoped.css +21 -21
  281. package/internal/components/expand-toggle-button/styles.selectors.js +4 -4
  282. package/internal/components/menu-dropdown/index.d.ts.map +1 -1
  283. package/internal/components/menu-dropdown/index.js +1 -1
  284. package/internal/components/menu-dropdown/index.js.map +1 -1
  285. package/internal/components/menu-dropdown/styles.css.js +7 -7
  286. package/internal/components/menu-dropdown/styles.scoped.css +18 -18
  287. package/internal/components/menu-dropdown/styles.selectors.js +7 -7
  288. package/internal/components/option/styles.css.js +17 -17
  289. package/internal/components/option/styles.scoped.css +34 -34
  290. package/internal/components/option/styles.selectors.js +17 -17
  291. package/internal/components/radio-button/styles.css.js +7 -7
  292. package/internal/components/radio-button/styles.scoped.css +24 -24
  293. package/internal/components/radio-button/styles.selectors.js +7 -7
  294. package/internal/components/selectable-item/styles.css.js +22 -22
  295. package/internal/components/selectable-item/styles.scoped.css +66 -66
  296. package/internal/components/selectable-item/styles.selectors.js +22 -22
  297. package/internal/components/sortable-area/styles.css.js +8 -8
  298. package/internal/components/sortable-area/styles.scoped.css +17 -17
  299. package/internal/components/sortable-area/styles.selectors.js +8 -8
  300. package/internal/components/structured-item/styles.css.js +7 -7
  301. package/internal/components/structured-item/styles.scoped.css +11 -11
  302. package/internal/components/structured-item/styles.selectors.js +7 -7
  303. package/internal/components/token-list/styles.css.js +10 -10
  304. package/internal/components/token-list/styles.scoped.css +33 -33
  305. package/internal/components/token-list/styles.selectors.js +10 -10
  306. package/internal/components/token-list/token-limit-toggle.d.ts.map +1 -1
  307. package/internal/components/token-list/token-limit-toggle.js +2 -2
  308. package/internal/components/token-list/token-limit-toggle.js.map +1 -1
  309. package/internal/environment.js +2 -2
  310. package/internal/environment.json +2 -2
  311. package/internal/generated/custom-css-properties/index.d.ts +1 -0
  312. package/internal/generated/custom-css-properties/index.d.ts.map +1 -1
  313. package/internal/generated/custom-css-properties/index.js +174 -173
  314. package/internal/generated/custom-css-properties/index.js.map +1 -1
  315. package/internal/generated/styles/tokens.js +200 -200
  316. package/internal/generated/theming/index.cjs +200 -200
  317. package/internal/generated/theming/index.js +200 -200
  318. package/internal/manifest.json +1 -1
  319. package/internal/utils/focus-visible.d.ts +14 -0
  320. package/internal/utils/focus-visible.d.ts.map +1 -0
  321. package/internal/utils/focus-visible.js +21 -0
  322. package/internal/utils/focus-visible.js.map +1 -0
  323. package/item-card/styles.css.js +14 -14
  324. package/item-card/styles.scoped.css +94 -94
  325. package/item-card/styles.selectors.js +14 -14
  326. package/key-value-pairs/styles.css.js +8 -8
  327. package/key-value-pairs/styles.scoped.css +14 -14
  328. package/key-value-pairs/styles.selectors.js +8 -8
  329. package/link/internal.d.ts.map +1 -1
  330. package/link/internal.js +2 -0
  331. package/link/internal.js.map +1 -1
  332. package/link/styles.css.js +21 -21
  333. package/link/styles.scoped.css +112 -112
  334. package/link/styles.selectors.js +21 -21
  335. package/list/styles.css.js +5 -5
  336. package/list/styles.scoped.css +9 -9
  337. package/list/styles.selectors.js +5 -5
  338. package/manifest.json +2 -2
  339. package/mixed-line-bar-chart/styles.css.js +11 -11
  340. package/mixed-line-bar-chart/styles.scoped.css +18 -18
  341. package/mixed-line-bar-chart/styles.selectors.js +11 -11
  342. package/modal/styles.css.js +31 -31
  343. package/modal/styles.scoped.css +65 -65
  344. package/modal/styles.selectors.js +31 -31
  345. package/multiselect/styles.css.js +5 -5
  346. package/multiselect/styles.scoped.css +6 -6
  347. package/multiselect/styles.selectors.js +5 -5
  348. package/package.json +1 -1
  349. package/pagination/internal.d.ts.map +1 -1
  350. package/pagination/internal.js +4 -4
  351. package/pagination/internal.js.map +1 -1
  352. package/pagination/styles.css.js +12 -12
  353. package/pagination/styles.scoped.css +36 -36
  354. package/pagination/styles.selectors.js +12 -12
  355. package/pie-chart/styles.css.js +27 -27
  356. package/pie-chart/styles.scoped.css +58 -58
  357. package/pie-chart/styles.selectors.js +27 -27
  358. package/popover/styles.css.js +58 -58
  359. package/popover/styles.scoped.css +102 -102
  360. package/popover/styles.selectors.js +58 -58
  361. package/progress-bar/styles.css.js +19 -19
  362. package/progress-bar/styles.scoped.css +64 -64
  363. package/progress-bar/styles.selectors.js +19 -19
  364. package/prompt-input/styles.css.js +26 -26
  365. package/prompt-input/styles.scoped.css +127 -127
  366. package/prompt-input/styles.selectors.js +26 -26
  367. package/property-filter/filtering-token/index.js +4 -4
  368. package/property-filter/filtering-token/index.js.map +1 -1
  369. package/property-filter/filtering-token/styles.css.js +18 -18
  370. package/property-filter/filtering-token/styles.scoped.css +54 -54
  371. package/property-filter/filtering-token/styles.selectors.js +18 -18
  372. package/property-filter/styles.css.js +39 -39
  373. package/property-filter/styles.scoped.css +75 -75
  374. package/property-filter/styles.selectors.js +39 -39
  375. package/radio-group/styles.css.js +5 -5
  376. package/radio-group/styles.scoped.css +10 -10
  377. package/radio-group/styles.selectors.js +5 -5
  378. package/s3-resource-selector/s3-in-context/styles.css.js +7 -7
  379. package/s3-resource-selector/s3-in-context/styles.scoped.css +13 -13
  380. package/s3-resource-selector/s3-in-context/styles.selectors.js +7 -7
  381. package/segmented-control/segment.d.ts.map +1 -1
  382. package/segmented-control/segment.js +1 -1
  383. package/segmented-control/segment.js.map +1 -1
  384. package/segmented-control/styles.css.js +16 -16
  385. package/segmented-control/styles.scoped.css +67 -67
  386. package/segmented-control/styles.selectors.js +16 -16
  387. package/select/parts/filter.d.ts +1 -1
  388. package/select/parts/filter.d.ts.map +1 -1
  389. package/select/parts/styles.css.js +21 -21
  390. package/select/parts/styles.scoped.css +38 -38
  391. package/select/parts/styles.selectors.js +21 -21
  392. package/side-navigation/parts.js +3 -3
  393. package/side-navigation/parts.js.map +1 -1
  394. package/side-navigation/styles.css.js +64 -64
  395. package/side-navigation/styles.scoped.css +162 -162
  396. package/side-navigation/styles.selectors.js +64 -64
  397. package/slider/styles.css.js +26 -26
  398. package/slider/styles.scoped.css +205 -205
  399. package/slider/styles.selectors.js +26 -26
  400. package/space-between/styles.css.js +23 -23
  401. package/space-between/styles.scoped.css +40 -40
  402. package/space-between/styles.selectors.js +23 -23
  403. package/spinner/styles.css.js +14 -14
  404. package/spinner/styles.scoped.css +55 -55
  405. package/spinner/styles.selectors.js +14 -14
  406. package/split-panel/styles.css.js +38 -38
  407. package/split-panel/styles.scoped.css +84 -84
  408. package/split-panel/styles.selectors.js +38 -38
  409. package/status-indicator/styles.css.js +25 -25
  410. package/status-indicator/styles.scoped.css +50 -50
  411. package/status-indicator/styles.selectors.js +25 -25
  412. package/steps/styles.css.js +17 -17
  413. package/steps/styles.scoped.css +51 -51
  414. package/steps/styles.selectors.js +17 -17
  415. package/table/body-cell/styles.css.js +48 -48
  416. package/table/body-cell/styles.scoped.css +816 -816
  417. package/table/body-cell/styles.selectors.js +48 -48
  418. package/table/header-cell/index.d.ts.map +1 -1
  419. package/table/header-cell/index.js +2 -1
  420. package/table/header-cell/index.js.map +1 -1
  421. package/table/header-cell/styles.css.js +38 -38
  422. package/table/header-cell/styles.scoped.css +156 -156
  423. package/table/header-cell/styles.selectors.js +38 -38
  424. package/table/resizer/styles.css.js +17 -17
  425. package/table/resizer/styles.scoped.css +39 -39
  426. package/table/resizer/styles.selectors.js +17 -17
  427. package/table/selection/styles.css.js +4 -4
  428. package/table/selection/styles.scoped.css +6 -6
  429. package/table/selection/styles.selectors.js +4 -4
  430. package/table/styles.css.js +37 -37
  431. package/table/styles.scoped.css +73 -70
  432. package/table/styles.selectors.js +37 -37
  433. package/tabs/styles.css.js +30 -30
  434. package/tabs/styles.scoped.css +105 -105
  435. package/tabs/styles.selectors.js +30 -30
  436. package/tabs/tab-header-bar.d.ts.map +1 -1
  437. package/tabs/tab-header-bar.js +1 -1
  438. package/tabs/tab-header-bar.js.map +1 -1
  439. package/tag-editor/styles.css.js +3 -3
  440. package/tag-editor/styles.scoped.css +14 -14
  441. package/tag-editor/styles.selectors.js +3 -3
  442. package/test-utils/dom/input/index.d.ts +1 -0
  443. package/test-utils/dom/input/index.js +3 -0
  444. package/test-utils/dom/input/index.js.map +1 -1
  445. package/test-utils/selectors/input/index.d.ts +1 -0
  446. package/test-utils/selectors/input/index.js +3 -0
  447. package/test-utils/selectors/input/index.js.map +1 -1
  448. package/text-content/styles.css.js +1 -1
  449. package/text-content/styles.scoped.css +73 -73
  450. package/text-content/styles.selectors.js +1 -1
  451. package/text-filter/styles.css.js +3 -3
  452. package/text-filter/styles.scoped.css +5 -5
  453. package/text-filter/styles.selectors.js +3 -3
  454. package/textarea/styles.css.js +9 -9
  455. package/textarea/styles.scoped.css +55 -55
  456. package/textarea/styles.selectors.js +9 -9
  457. package/tiles/styles.css.js +30 -30
  458. package/tiles/styles.scoped.css +123 -123
  459. package/tiles/styles.selectors.js +30 -30
  460. package/toggle/styles.css.js +10 -10
  461. package/toggle/styles.scoped.css +24 -24
  462. package/toggle/styles.selectors.js +10 -10
  463. package/token/dismiss-button.js +2 -2
  464. package/token/dismiss-button.js.map +1 -1
  465. package/token/styles.css.js +14 -14
  466. package/token/styles.scoped.css +58 -58
  467. package/token/styles.selectors.js +14 -14
  468. package/token-group/styles.css.js +5 -5
  469. package/token-group/styles.scoped.css +5 -5
  470. package/token-group/styles.selectors.js +5 -5
  471. package/tooltip/styles.css.js +2 -2
  472. package/tooltip/styles.scoped.css +5 -5
  473. package/tooltip/styles.selectors.js +2 -2
  474. package/top-navigation/parts/overflow-menu/menu-item.d.ts.map +1 -1
  475. package/top-navigation/parts/overflow-menu/menu-item.js +5 -5
  476. package/top-navigation/parts/overflow-menu/menu-item.js.map +1 -1
  477. package/top-navigation/styles.css.js +47 -47
  478. package/top-navigation/styles.scoped.css +97 -97
  479. package/top-navigation/styles.selectors.js +47 -47
  480. package/tree-view/styles.css.js +2 -2
  481. package/tree-view/styles.scoped.css +4 -4
  482. package/tree-view/styles.selectors.js +2 -2
  483. package/tree-view/tree-item/styles.css.js +10 -10
  484. package/tree-view/tree-item/styles.scoped.css +15 -15
  485. package/tree-view/tree-item/styles.selectors.js +10 -10
  486. package/tree-view/vertical-connector/styles.css.js +3 -3
  487. package/tree-view/vertical-connector/styles.scoped.css +4 -4
  488. package/tree-view/vertical-connector/styles.selectors.js +3 -3
  489. package/tutorial-panel/components/tutorial-detail-view/styles.css.js +20 -20
  490. package/tutorial-panel/components/tutorial-detail-view/styles.scoped.css +26 -26
  491. package/tutorial-panel/components/tutorial-detail-view/styles.selectors.js +20 -20
  492. package/tutorial-panel/components/tutorial-list/styles.css.js +18 -18
  493. package/tutorial-panel/components/tutorial-list/styles.scoped.css +33 -33
  494. package/tutorial-panel/components/tutorial-list/styles.selectors.js +18 -18
  495. package/tutorial-panel/styles.css.js +1 -1
  496. package/tutorial-panel/styles.scoped.css +7 -7
  497. package/tutorial-panel/styles.selectors.js +1 -1
  498. package/wizard/styles.css.js +30 -30
  499. package/wizard/styles.scoped.css +79 -79
  500. package/wizard/styles.selectors.js +30 -30
@@ -1 +1 @@
1
- {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../../src/button-dropdown/internal.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, { useEffect, useImperativeHandle, useMemo, useRef } from 'react';\nimport clsx from 'clsx';\n\nimport { isThemeActive, Theme, useUniqueId, warnOnce } from '@cloudscape-design/component-toolkit/internal';\nimport { getAnalyticsMetadataAttribute } from '@cloudscape-design/component-toolkit/internal/analytics-metadata';\n\nimport InternalBox from '../box/internal';\nimport { ButtonProps } from '../button/interfaces';\nimport { InternalButton, InternalButtonProps } from '../button/internal';\nimport Dropdown from '../dropdown/internal';\nimport { IconProps } from '../icon/interfaces';\nimport { useFunnel } from '../internal/analytics/hooks/use-funnel.js';\nimport { getBaseProps } from '../internal/base-component';\nimport DropdownFooter from '../internal/components/dropdown-footer';\nimport { useDropdownStatus } from '../internal/components/dropdown-status';\nimport OptionsList from '../internal/components/options-list';\nimport useHiddenDescription from '../internal/hooks/use-hidden-description';\nimport { useMobile } from '../internal/hooks/use-mobile';\nimport { useVisualRefresh } from '../internal/hooks/use-visual-mode/index.js';\nimport { isDevelopment } from '../internal/is-development';\nimport { spinWhenOpen } from '../internal/styles/motion/utils';\nimport { checkSafeUrl } from '../internal/utils/check-safe-url';\nimport {\n GeneratedAnalyticsMetadataButtonDropdownCollapse,\n GeneratedAnalyticsMetadataButtonDropdownExpand,\n} from './analytics-metadata/interfaces.js';\nimport ButtonDropdownFilter from './filter';\nimport { ButtonDropdownProps } from './interfaces';\nimport { InternalButtonDropdownProps, InternalItem } from './internal-interfaces';\nimport ItemsList from './items-list';\nimport { countLeafItems } from './utils/filter-items';\nimport { useButtonDropdown } from './utils/use-button-dropdown';\nimport { isLinkItem } from './utils/utils.js';\n\nimport analyticsSelectors from './analytics-metadata/styles.css.js';\nimport styles from './styles.css.js';\n\nconst InternalButtonDropdown = React.forwardRef(\n (\n {\n items,\n variant = 'normal',\n loading = false,\n loadingText,\n disabled = false,\n disabledReason,\n expandableGroups = false,\n children,\n onItemClick,\n onItemFollow,\n customTriggerBuilder,\n expandToViewport,\n ariaLabel,\n iconName,\n iconAlt,\n iconUrl,\n iconSvg,\n title,\n description,\n preferCenter,\n mainAction,\n showMainActionOnly,\n __internalRootRef,\n analyticsMetadataTransformer,\n linkStyle,\n fullWidth,\n position,\n nativeMainActionAttributes,\n nativeTriggerAttributes,\n renderItem,\n filteringType,\n filteringPlaceholder,\n filteringAriaLabel,\n filteringClearAriaLabel,\n filteringResultsText,\n noMatch,\n i18nStrings,\n compactTrigger,\n ariaDescribedby,\n ...props\n }: InternalButtonDropdownProps,\n ref: React.Ref<ButtonDropdownProps.Ref>\n ) => {\n const isInRestrictedView = useMobile();\n const dropdownId = useUniqueId('dropdown');\n const menuId = useUniqueId('button-dropdown-menu');\n const hasFiltering = filteringType === 'auto';\n for (const item of items) {\n if (isLinkItem(item)) {\n checkSafeUrl('ButtonDropdown', item.href);\n }\n }\n if (mainAction) {\n checkSafeUrl('ButtonDropdown', mainAction.href);\n }\n\n const hasCustomTriggerIcon = !!(iconName || iconUrl || iconSvg);\n\n if (isDevelopment) {\n if (mainAction && variant !== 'primary' && variant !== 'normal') {\n warnOnce('ButtonDropdown', 'Main action is only supported for \"primary\" and \"normal\" component variant.');\n }\n if (hasCustomTriggerIcon && variant !== 'icon' && variant !== 'inline-icon') {\n warnOnce('ButtonDropdown', 'Custom icon is only supported for \"icon\" and \"inline-icon\" component variant.');\n }\n }\n const hasMainAction = mainAction && (variant === 'primary' || variant === 'normal');\n const isVisualRefresh = useVisualRefresh();\n const isOneTheme = isThemeActive(Theme.OneTheme);\n\n const {\n isOpen,\n targetItem,\n isHighlighted,\n isKeyboardHighlight,\n isExpanded,\n highlightItem,\n onKeyDown,\n onKeyUp,\n onItemActivate,\n onGroupToggle,\n onDropdownFocusLeave,\n onDropdownBlur,\n toggleDropdown,\n closeDropdown,\n setIsUsingMouse,\n filteringValue,\n setFilteringValue,\n filteredItems,\n showExpandableGroups,\n } = useButtonDropdown({\n items,\n onItemClick,\n onItemFollow,\n // Scroll is unnecessary when moving focus back to the dropdown trigger.\n onReturnFocus: () => triggerRef.current?.focus({ preventScroll: true }),\n expandToViewport,\n hasExpandableGroups: expandableGroups,\n isInRestrictedView,\n hasFiltering,\n });\n\n const filterRef = useRef<HTMLInputElement>(null);\n\n useEffect(() => {\n // Focus the filter input when it opens.\n if (isOpen && hasFiltering) {\n filterRef.current?.focus();\n }\n }, [isOpen, hasFiltering]);\n\n const handleMouseEvent = () => {\n setIsUsingMouse(true);\n };\n\n const baseProps = getBaseProps(props);\n\n const mainActionRef = useRef<HTMLElement>(null);\n const triggerRef = useRef<HTMLElement>(null);\n\n useImperativeHandle(\n ref,\n () => ({\n focus(...args) {\n (hasMainAction ? mainActionRef : triggerRef).current?.focus(...args);\n },\n focusDropdownTrigger(...args) {\n triggerRef.current?.focus(...args);\n },\n }),\n [mainActionRef, triggerRef, hasMainAction]\n );\n\n const clickHandler = () => {\n if (!loading && !disabled) {\n // Prevent moving highlight on mobiles to avoid disabled state reason popup if defined.\n toggleDropdown({ moveHighlightOnOpen: !isInRestrictedView });\n }\n };\n\n const canBeOpened = !loading && !disabled;\n\n const canBeFullWidth = !!fullWidth && (variant === 'primary' || variant === 'normal');\n\n const triggerVariant = variant === 'navigation' ? undefined : variant === 'inline-icon' ? 'inline-icon' : variant;\n const iconProps: Partial<ButtonProps & { __iconClass?: string; __iconSize?: IconProps.Size }> =\n variant === 'icon' || variant === 'inline-icon'\n ? {\n iconName: hasCustomTriggerIcon ? iconName : 'ellipsis',\n iconAlt,\n iconUrl,\n iconSvg,\n }\n : {\n iconName: isOneTheme ? 'angle-down' : 'caret-down-filled',\n __iconSize: isOneTheme ? 'x-small' : 'normal',\n iconAlign: 'right',\n __iconClass: spinWhenOpen(styles, 'rotate', canBeOpened && isOpen),\n };\n\n const baseTriggerProps: InternalButtonProps = {\n className: clsx(\n styles['trigger-button'],\n styles['test-utils-button-trigger'],\n analyticsSelectors['trigger-label']\n ),\n ...iconProps,\n variant: triggerVariant,\n loading,\n loadingText,\n disabled,\n disabledReason,\n onClick: (event: Event) => {\n event.preventDefault();\n clickHandler();\n },\n ariaLabel,\n ariaExpanded: canBeOpened && isOpen,\n ariaDescribedby,\n formAction: 'none',\n ariaHaspopup: hasFiltering ? 'dialog' : true,\n nativeButtonAttributes: nativeTriggerAttributes,\n };\n\n const triggerId = useUniqueId('awsui-button-dropdown__trigger');\n\n const triggerHasBadge = () => {\n const groupKey: keyof ButtonDropdownProps.ItemGroup = 'items';\n const flatItems = items.flatMap(item => {\n if (groupKey in item) {\n return item.items;\n }\n return item;\n });\n\n const badgeKey: keyof InternalItem = 'badge';\n return (\n variant === 'icon' &&\n !!flatItems?.find(item => {\n if (badgeKey in item) {\n return (item as InternalItem).badge;\n }\n })\n );\n };\n\n let trigger: React.ReactNode = null;\n\n const analyticsMetadata:\n | GeneratedAnalyticsMetadataButtonDropdownExpand\n | GeneratedAnalyticsMetadataButtonDropdownCollapse\n | Record<string, never> = disabled\n ? {}\n : {\n action: !isOpen ? 'expand' : 'collapse',\n detail: {\n label: `.${analyticsSelectors['trigger-label']}`,\n },\n };\n\n if (customTriggerBuilder) {\n trigger = (\n <div className={styles['dropdown-trigger']} {...getAnalyticsMetadataAttribute(analyticsMetadata)}>\n {customTriggerBuilder({\n testUtilsClass: styles['test-utils-button-trigger'],\n ariaExpanded: canBeOpened && isOpen,\n onClick: clickHandler,\n triggerRef,\n ariaLabel,\n disabled,\n disabledReason,\n isOpen,\n })}\n </div>\n );\n } else if (hasMainAction) {\n const { text, iconName, iconAlt, iconSvg, iconUrl, external, externalIconAriaLabel, ...mainActionProps } =\n mainAction;\n const mainActionIconProps = external\n ? ({ iconName: 'external', iconAlign: 'right', target: '_blank', rel: 'noopener noreferrer' } as const)\n : ({ iconName, iconAlt, iconSvg, iconUrl } as const);\n const mainActionAriaLabel = externalIconAriaLabel\n ? `${mainAction.ariaLabel ?? mainAction.text} ${mainAction.externalIconAriaLabel}`\n : mainAction.ariaLabel;\n const hasNoText = !text;\n const mainActionButton = (\n <InternalButton\n ref={mainActionRef}\n {...mainActionProps}\n {...mainActionIconProps}\n fullWidth={canBeFullWidth}\n className={clsx(\n styles['trigger-button'],\n hasNoText && styles['has-no-text'],\n isVisualRefresh && styles['visual-refresh'],\n canBeFullWidth && styles['main-action-full-width']\n )}\n variant={variant}\n ariaLabel={mainActionAriaLabel}\n formAction=\"none\"\n nativeAnchorAttributes={nativeMainActionAttributes?.anchor}\n nativeButtonAttributes={nativeMainActionAttributes?.button}\n >\n {text}\n </InternalButton>\n );\n trigger = (\n <div role=\"group\" aria-label={ariaLabel} className={styles['split-trigger-wrapper']}>\n <div\n className={clsx(\n styles['trigger-item'],\n styles['split-trigger'],\n styles[`variant-${variant}`],\n mainActionProps.loading && styles.loading\n )}\n // Close dropdown upon main action click unless event is cancelled.\n onClick={closeDropdown}\n // Prevent keyboard events from propagation to the button dropdown handler.\n onKeyDown={e => e.stopPropagation()}\n onKeyUp={e => e.stopPropagation()}\n {...getAnalyticsMetadataAttribute({\n action: 'click',\n detail: {\n label: `.${analyticsSelectors['main-action-label']}`,\n },\n })}\n >\n {mainActionButton}\n </div>\n {!showMainActionOnly && (\n <div\n className={clsx(\n styles['trigger-item'],\n styles['dropdown-trigger'],\n isVisualRefresh && styles['visual-refresh'],\n !!children && styles['has-trigger-text'],\n styles[`variant-${variant}`],\n baseTriggerProps.loading && styles.loading\n )}\n {...getAnalyticsMetadataAttribute(analyticsMetadata)}\n >\n <InternalButton\n ref={triggerRef}\n {...baseTriggerProps}\n className={clsx(baseTriggerProps.className, {\n [styles['main-action-trigger-full-width']]: canBeFullWidth,\n })}\n __emitPerformanceMarks={false}\n >\n {children}\n </InternalButton>\n </div>\n )}\n </div>\n );\n } else {\n trigger = (\n <div className={styles['dropdown-trigger']} {...getAnalyticsMetadataAttribute(analyticsMetadata)}>\n <InternalButton\n ref={triggerRef}\n id={triggerId}\n {...baseTriggerProps}\n className={clsx(baseTriggerProps.className, {\n [styles['full-width']]: canBeFullWidth,\n [styles.loading]: canBeFullWidth && !!loading,\n })}\n __compact={compactTrigger}\n badge={triggerHasBadge()}\n fullWidth={fullWidth}\n >\n {children}\n </InternalButton>\n </div>\n );\n }\n\n const hasHeader = title || description;\n const headerId = useUniqueId('awsui-button-dropdown__header');\n const footerId = useUniqueId('awsui-button-dropdown__footer');\n\n const isNoMatch = hasFiltering && !!filteringValue && filteredItems.length === 0;\n const isFiltered = hasFiltering && !!filteringValue && filteredItems.length > 0;\n\n const totalCount = useMemo(() => countLeafItems(items), [items]);\n const matchesCount = useMemo(() => countLeafItems(filteredItems), [filteredItems]);\n const filteredText = isFiltered ? filteringResultsText?.(matchesCount, totalCount) : undefined;\n\n const dropdownStatus = useDropdownStatus({\n statusType: 'finished',\n isNoMatch,\n noMatch,\n filteringResultsText: filteredText,\n });\n\n // Only create a filteringDescription element if filtering is actually enabled,\n // not just if the string is provided.\n const filteringItemDescription = hasFiltering ? i18nStrings?.filteringItemAriaDescription : undefined;\n const { descriptionEl: filteringDescriptionEl, descriptionId: filteringDescriptionId } = useHiddenDescription(\n hasFiltering ? i18nStrings?.filteringItemAriaDescription : undefined\n );\n\n const shouldLabelWithTrigger = !ariaLabel && !mainAction && variant !== 'icon' && variant !== 'inline-icon';\n\n const highlightedItemId = targetItem && targetItem.id ? `${menuId}-${targetItem.id}` : undefined;\n\n const filterElement = hasFiltering ? (\n <ButtonDropdownFilter\n ref={filterRef}\n value={filteringValue}\n onChange={event => setFilteringValue(event.detail.value)}\n placeholder={filteringPlaceholder}\n ariaLabel={filteringAriaLabel}\n clearAriaLabel={filteringClearAriaLabel}\n nativeInputAttributes={{\n 'aria-activedescendant': highlightedItemId ?? '',\n 'aria-owns': menuId,\n 'aria-controls': menuId,\n }}\n />\n ) : null;\n\n const { loadingButtonCount } = useFunnel();\n useEffect(() => {\n if (loading) {\n loadingButtonCount.current++;\n return () => {\n // eslint-disable-next-line react-hooks/exhaustive-deps\n loadingButtonCount.current--;\n };\n }\n }, [loading, loadingButtonCount]);\n\n return (\n <div\n {...baseProps}\n onKeyDown={onKeyDown}\n onKeyUp={onKeyUp}\n onMouseDown={handleMouseEvent}\n onMouseMove={handleMouseEvent}\n className={clsx(\n styles['button-dropdown'],\n styles[`variant-${variant}`],\n canBeFullWidth && styles['full-width'],\n baseProps.className\n )}\n aria-owns={expandToViewport && isOpen ? dropdownId : undefined}\n ref={__internalRootRef}\n >\n <Dropdown\n open={canBeOpened && isOpen}\n stretchTriggerHeight={variant === 'navigation'}\n minWidth={expandToViewport ? undefined : 'trigger'}\n hideBlockBorder={false}\n expandToViewport={expandToViewport}\n preferredAlignment={preferCenter ? 'center' : 'start'}\n onOutsideClick={() => toggleDropdown()}\n onFocusLeave={onDropdownFocusLeave}\n onBlur={onDropdownBlur}\n trigger={trigger}\n dropdownId={dropdownId}\n header={filterElement}\n ariaRole={hasFiltering ? 'dialog' : undefined}\n ariaLabel={hasFiltering ? ariaLabel : undefined}\n footer={\n dropdownStatus.content ? (\n <DropdownFooter content={isOpen ? dropdownStatus.content : null} id={footerId} hasItems={!isNoMatch} />\n ) : null\n }\n content={\n <>\n {hasHeader && (\n <div className={styles.header} id={headerId}>\n {title && (\n <div className={styles.title}>\n <InternalBox\n fontSize=\"heading-s\"\n fontWeight=\"bold\"\n color=\"inherit\"\n tagOverride=\"h2\"\n margin={{ vertical: 'n', horizontal: 'n' }}\n >\n {title}\n </InternalBox>\n </div>\n )}\n {description && (\n <InternalBox fontSize=\"body-s\">\n <span className={styles.description}>{description}</span>\n </InternalBox>\n )}\n </div>\n )}\n <OptionsList\n open={canBeOpened && isOpen}\n position=\"static\"\n role=\"menu\"\n nativeAttributes={{ id: menuId }}\n tagOverride=\"ul\"\n decreaseBlockMargin={true}\n ariaLabel={ariaLabel}\n ariaLabelledby={hasHeader ? headerId : shouldLabelWithTrigger ? triggerId : undefined}\n ariaDescribedby={dropdownStatus.content ? footerId : undefined}\n statusType=\"finished\"\n >\n <ItemsList\n items={filteredItems}\n onItemActivate={onItemActivate}\n onGroupToggle={onGroupToggle}\n hasExpandableGroups={showExpandableGroups}\n targetItem={targetItem}\n isHighlighted={isHighlighted}\n isKeyboardHighlight={isKeyboardHighlight}\n isExpanded={isExpanded}\n lastInDropdown={true}\n highlightItem={highlightItem}\n expandToViewport={expandToViewport}\n variant={variant}\n analyticsMetadataTransformer={analyticsMetadataTransformer}\n linkStyle={linkStyle}\n position={position}\n renderItem={renderItem}\n filteringText={filteringValue}\n filteringEnabled={hasFiltering}\n menuId={hasFiltering ? menuId : undefined}\n filteringDescriptionId={filteringItemDescription ? filteringDescriptionId : undefined}\n />\n </OptionsList>\n {filteringDescriptionEl}\n </>\n }\n />\n </div>\n );\n }\n);\n\nexport default InternalButtonDropdown;\n"]}
1
+ {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../../src/button-dropdown/internal.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, { useEffect, useImperativeHandle, useMemo, useRef } from 'react';\nimport clsx from 'clsx';\n\nimport { isThemeActive, Theme, useUniqueId, warnOnce } from '@cloudscape-design/component-toolkit/internal';\nimport { getAnalyticsMetadataAttribute } from '@cloudscape-design/component-toolkit/internal/analytics-metadata';\n\nimport InternalBox from '../box/internal';\nimport { ButtonProps } from '../button/interfaces';\nimport { InternalButton, InternalButtonProps } from '../button/internal';\nimport Dropdown from '../dropdown/internal';\nimport { IconProps } from '../icon/interfaces';\nimport { useFunnel } from '../internal/analytics/hooks/use-funnel.js';\nimport { getBaseProps } from '../internal/base-component';\nimport DropdownFooter from '../internal/components/dropdown-footer';\nimport { useDropdownStatus } from '../internal/components/dropdown-status';\nimport OptionsList from '../internal/components/options-list';\nimport useHiddenDescription from '../internal/hooks/use-hidden-description';\nimport { useMobile } from '../internal/hooks/use-mobile';\nimport { useVisualRefresh } from '../internal/hooks/use-visual-mode/index.js';\nimport { isDevelopment } from '../internal/is-development';\nimport { spinWhenOpen } from '../internal/styles/motion/utils';\nimport { checkSafeUrl } from '../internal/utils/check-safe-url';\nimport {\n GeneratedAnalyticsMetadataButtonDropdownCollapse,\n GeneratedAnalyticsMetadataButtonDropdownExpand,\n} from './analytics-metadata/interfaces.js';\nimport ButtonDropdownFilter from './filter';\nimport { ButtonDropdownProps } from './interfaces';\nimport { InternalButtonDropdownProps, InternalItem } from './internal-interfaces';\nimport ItemsList from './items-list';\nimport { countLeafItems } from './utils/filter-items';\nimport { useButtonDropdown } from './utils/use-button-dropdown';\nimport { isLinkItem } from './utils/utils.js';\n\nimport analyticsSelectors from './analytics-metadata/styles.css.js';\nimport styles from './styles.css.js';\n\nconst InternalButtonDropdown = React.forwardRef(\n (\n {\n items,\n variant = 'normal',\n loading = false,\n loadingText,\n disabled = false,\n disabledReason,\n expandableGroups = false,\n children,\n onItemClick,\n onItemFollow,\n customTriggerBuilder,\n expandToViewport,\n ariaLabel,\n iconName,\n iconAlt,\n iconUrl,\n iconSvg,\n title,\n description,\n preferCenter,\n mainAction,\n showMainActionOnly,\n __internalRootRef,\n analyticsMetadataTransformer,\n linkStyle,\n fullWidth,\n position,\n nativeMainActionAttributes,\n nativeTriggerAttributes,\n renderItem,\n filteringType,\n filteringPlaceholder,\n filteringAriaLabel,\n filteringClearAriaLabel,\n filteringResultsText,\n noMatch,\n i18nStrings,\n compactTrigger,\n ariaDescribedby,\n ...props\n }: InternalButtonDropdownProps,\n ref: React.Ref<ButtonDropdownProps.Ref>\n ) => {\n const isInRestrictedView = useMobile();\n const dropdownId = useUniqueId('dropdown');\n const menuId = useUniqueId('button-dropdown-menu');\n const hasFiltering = filteringType === 'auto';\n for (const item of items) {\n if (isLinkItem(item)) {\n checkSafeUrl('ButtonDropdown', item.href);\n }\n }\n if (mainAction) {\n checkSafeUrl('ButtonDropdown', mainAction.href);\n }\n\n const hasCustomTriggerIcon = !!(iconName || iconUrl || iconSvg);\n\n if (isDevelopment) {\n if (mainAction && variant !== 'primary' && variant !== 'normal') {\n warnOnce('ButtonDropdown', 'Main action is only supported for \"primary\" and \"normal\" component variant.');\n }\n if (hasCustomTriggerIcon && variant !== 'icon' && variant !== 'inline-icon') {\n warnOnce('ButtonDropdown', 'Custom icon is only supported for \"icon\" and \"inline-icon\" component variant.');\n }\n }\n const hasMainAction = mainAction && (variant === 'primary' || variant === 'normal');\n const isVisualRefresh = useVisualRefresh();\n const isOneTheme = isThemeActive(Theme.OneTheme);\n\n const {\n isOpen,\n targetItem,\n isHighlighted,\n isKeyboardHighlight,\n isExpanded,\n highlightItem,\n onKeyDown,\n onKeyUp,\n onItemActivate,\n onGroupToggle,\n onDropdownFocusLeave,\n onDropdownBlur,\n toggleDropdown,\n closeDropdown,\n setIsUsingMouse,\n filteringValue,\n setFilteringValue,\n filteredItems,\n showExpandableGroups,\n } = useButtonDropdown({\n items,\n onItemClick,\n onItemFollow,\n // Scroll is unnecessary when moving focus back to the dropdown trigger.\n onReturnFocus: () => triggerRef.current?.focus({ preventScroll: true }),\n // Whether the given element is (or is inside) the dropdown trigger.\n isTriggerElement: element => !!triggerWrapperRef.current?.contains(element),\n expandToViewport,\n hasExpandableGroups: expandableGroups,\n isInRestrictedView,\n hasFiltering,\n });\n\n const filterRef = useRef<HTMLInputElement>(null);\n\n useEffect(() => {\n // Focus the filter input when it opens.\n if (isOpen && hasFiltering) {\n filterRef.current?.focus();\n }\n }, [isOpen, hasFiltering]);\n\n const handleMouseEvent = () => {\n setIsUsingMouse(true);\n };\n\n const baseProps = getBaseProps(props);\n\n const mainActionRef = useRef<HTMLElement>(null);\n const triggerRef = useRef<HTMLElement>(null);\n // Wraps the dropdown trigger button (all trigger variants). InternalButton exposes an\n // imperative handle rather than a DOM node, so trigger containment is tested against this\n // wrapper element instead of triggerRef.\n const triggerWrapperRef = useRef<HTMLDivElement>(null);\n\n useImperativeHandle(\n ref,\n () => ({\n focus(...args) {\n (hasMainAction ? mainActionRef : triggerRef).current?.focus(...args);\n },\n focusDropdownTrigger(...args) {\n triggerRef.current?.focus(...args);\n },\n }),\n [mainActionRef, triggerRef, hasMainAction]\n );\n\n const clickHandler = () => {\n if (!loading && !disabled) {\n // Prevent moving highlight on mobiles to avoid disabled state reason popup if defined.\n toggleDropdown({ moveHighlightOnOpen: !isInRestrictedView });\n }\n };\n\n const canBeOpened = !loading && !disabled;\n\n const canBeFullWidth = !!fullWidth && (variant === 'primary' || variant === 'normal');\n\n const triggerVariant = variant === 'navigation' ? undefined : variant === 'inline-icon' ? 'inline-icon' : variant;\n const iconProps: Partial<ButtonProps & { __iconClass?: string; __iconSize?: IconProps.Size }> =\n variant === 'icon' || variant === 'inline-icon'\n ? {\n iconName: hasCustomTriggerIcon ? iconName : 'ellipsis',\n iconAlt,\n iconUrl,\n iconSvg,\n }\n : {\n iconName: isOneTheme ? 'angle-down' : 'caret-down-filled',\n __iconSize: isOneTheme ? 'x-small' : 'normal',\n iconAlign: 'right',\n __iconClass: spinWhenOpen(styles, 'rotate', canBeOpened && isOpen),\n };\n\n const baseTriggerProps: InternalButtonProps = {\n className: clsx(\n styles['trigger-button'],\n styles['test-utils-button-trigger'],\n analyticsSelectors['trigger-label']\n ),\n ...iconProps,\n variant: triggerVariant,\n loading,\n loadingText,\n disabled,\n disabledReason,\n onClick: (event: Event) => {\n event.preventDefault();\n clickHandler();\n },\n ariaLabel,\n ariaExpanded: canBeOpened && isOpen,\n ariaDescribedby,\n formAction: 'none',\n ariaHaspopup: hasFiltering ? 'dialog' : true,\n nativeButtonAttributes: nativeTriggerAttributes,\n };\n\n const triggerId = useUniqueId('awsui-button-dropdown__trigger');\n\n const triggerHasBadge = () => {\n const groupKey: keyof ButtonDropdownProps.ItemGroup = 'items';\n const flatItems = items.flatMap(item => {\n if (groupKey in item) {\n return item.items;\n }\n return item;\n });\n\n const badgeKey: keyof InternalItem = 'badge';\n return (\n variant === 'icon' &&\n !!flatItems?.find(item => {\n if (badgeKey in item) {\n return (item as InternalItem).badge;\n }\n })\n );\n };\n\n let trigger: React.ReactNode = null;\n\n const analyticsMetadata:\n | GeneratedAnalyticsMetadataButtonDropdownExpand\n | GeneratedAnalyticsMetadataButtonDropdownCollapse\n | Record<string, never> = disabled\n ? {}\n : {\n action: !isOpen ? 'expand' : 'collapse',\n detail: {\n label: `.${analyticsSelectors['trigger-label']}`,\n },\n };\n\n if (customTriggerBuilder) {\n trigger = (\n <div\n ref={triggerWrapperRef}\n className={styles['dropdown-trigger']}\n {...getAnalyticsMetadataAttribute(analyticsMetadata)}\n >\n {customTriggerBuilder({\n testUtilsClass: styles['test-utils-button-trigger'],\n ariaExpanded: canBeOpened && isOpen,\n onClick: clickHandler,\n triggerRef,\n ariaLabel,\n disabled,\n disabledReason,\n isOpen,\n })}\n </div>\n );\n } else if (hasMainAction) {\n const { text, iconName, iconAlt, iconSvg, iconUrl, external, externalIconAriaLabel, ...mainActionProps } =\n mainAction;\n const mainActionIconProps = external\n ? ({ iconName: 'external', iconAlign: 'right', target: '_blank', rel: 'noopener noreferrer' } as const)\n : ({ iconName, iconAlt, iconSvg, iconUrl } as const);\n const mainActionAriaLabel = externalIconAriaLabel\n ? `${mainAction.ariaLabel ?? mainAction.text} ${mainAction.externalIconAriaLabel}`\n : mainAction.ariaLabel;\n const hasNoText = !text;\n const mainActionButton = (\n <InternalButton\n ref={mainActionRef}\n {...mainActionProps}\n {...mainActionIconProps}\n fullWidth={canBeFullWidth}\n className={clsx(\n styles['trigger-button'],\n hasNoText && styles['has-no-text'],\n isVisualRefresh && styles['visual-refresh'],\n canBeFullWidth && styles['main-action-full-width']\n )}\n variant={variant}\n ariaLabel={mainActionAriaLabel}\n formAction=\"none\"\n nativeAnchorAttributes={nativeMainActionAttributes?.anchor}\n nativeButtonAttributes={nativeMainActionAttributes?.button}\n >\n {text}\n </InternalButton>\n );\n trigger = (\n <div role=\"group\" aria-label={ariaLabel} className={styles['split-trigger-wrapper']}>\n <div\n className={clsx(\n styles['trigger-item'],\n styles['split-trigger'],\n styles[`variant-${variant}`],\n mainActionProps.loading && styles.loading\n )}\n // Close dropdown upon main action click unless event is cancelled.\n onClick={closeDropdown}\n // Prevent keyboard events from propagation to the button dropdown handler.\n onKeyDown={e => e.stopPropagation()}\n onKeyUp={e => e.stopPropagation()}\n {...getAnalyticsMetadataAttribute({\n action: 'click',\n detail: {\n label: `.${analyticsSelectors['main-action-label']}`,\n },\n })}\n >\n {mainActionButton}\n </div>\n {!showMainActionOnly && (\n <div\n ref={triggerWrapperRef}\n className={clsx(\n styles['trigger-item'],\n styles['dropdown-trigger'],\n isVisualRefresh && styles['visual-refresh'],\n !!children && styles['has-trigger-text'],\n styles[`variant-${variant}`],\n baseTriggerProps.loading && styles.loading\n )}\n {...getAnalyticsMetadataAttribute(analyticsMetadata)}\n >\n <InternalButton\n ref={triggerRef}\n {...baseTriggerProps}\n className={clsx(baseTriggerProps.className, {\n [styles['main-action-trigger-full-width']]: canBeFullWidth,\n })}\n __emitPerformanceMarks={false}\n >\n {children}\n </InternalButton>\n </div>\n )}\n </div>\n );\n } else {\n trigger = (\n <div\n ref={triggerWrapperRef}\n className={styles['dropdown-trigger']}\n {...getAnalyticsMetadataAttribute(analyticsMetadata)}\n >\n <InternalButton\n ref={triggerRef}\n id={triggerId}\n {...baseTriggerProps}\n className={clsx(baseTriggerProps.className, {\n [styles['full-width']]: canBeFullWidth,\n [styles.loading]: canBeFullWidth && !!loading,\n })}\n __compact={compactTrigger}\n badge={triggerHasBadge()}\n fullWidth={fullWidth}\n >\n {children}\n </InternalButton>\n </div>\n );\n }\n\n const hasHeader = title || description;\n const headerId = useUniqueId('awsui-button-dropdown__header');\n const footerId = useUniqueId('awsui-button-dropdown__footer');\n\n const isNoMatch = hasFiltering && !!filteringValue && filteredItems.length === 0;\n const isFiltered = hasFiltering && !!filteringValue && filteredItems.length > 0;\n\n const totalCount = useMemo(() => countLeafItems(items), [items]);\n const matchesCount = useMemo(() => countLeafItems(filteredItems), [filteredItems]);\n const filteredText = isFiltered ? filteringResultsText?.(matchesCount, totalCount) : undefined;\n\n const dropdownStatus = useDropdownStatus({\n statusType: 'finished',\n isNoMatch,\n noMatch,\n filteringResultsText: filteredText,\n });\n\n // Only create a filteringDescription element if filtering is actually enabled,\n // not just if the string is provided.\n const filteringItemDescription = hasFiltering ? i18nStrings?.filteringItemAriaDescription : undefined;\n const { descriptionEl: filteringDescriptionEl, descriptionId: filteringDescriptionId } = useHiddenDescription(\n hasFiltering ? i18nStrings?.filteringItemAriaDescription : undefined\n );\n\n const shouldLabelWithTrigger = !ariaLabel && !mainAction && variant !== 'icon' && variant !== 'inline-icon';\n\n const highlightedItemId = targetItem && targetItem.id ? `${menuId}-${targetItem.id}` : undefined;\n\n const filterElement = hasFiltering ? (\n <ButtonDropdownFilter\n ref={filterRef}\n value={filteringValue}\n onChange={event => setFilteringValue(event.detail.value)}\n placeholder={filteringPlaceholder}\n ariaLabel={filteringAriaLabel}\n clearAriaLabel={filteringClearAriaLabel}\n nativeInputAttributes={{\n 'aria-activedescendant': highlightedItemId ?? '',\n 'aria-owns': menuId,\n 'aria-controls': menuId,\n }}\n />\n ) : null;\n\n const { loadingButtonCount } = useFunnel();\n useEffect(() => {\n if (loading) {\n loadingButtonCount.current++;\n return () => {\n // eslint-disable-next-line react-hooks/exhaustive-deps\n loadingButtonCount.current--;\n };\n }\n }, [loading, loadingButtonCount]);\n\n return (\n <div\n {...baseProps}\n onKeyDown={onKeyDown}\n onKeyUp={onKeyUp}\n onMouseDown={handleMouseEvent}\n onMouseMove={handleMouseEvent}\n className={clsx(\n styles['button-dropdown'],\n styles[`variant-${variant}`],\n canBeFullWidth && styles['full-width'],\n baseProps.className\n )}\n aria-owns={expandToViewport && isOpen ? dropdownId : undefined}\n ref={__internalRootRef}\n >\n <Dropdown\n open={canBeOpened && isOpen}\n stretchTriggerHeight={variant === 'navigation'}\n minWidth={expandToViewport ? undefined : 'trigger'}\n hideBlockBorder={false}\n expandToViewport={expandToViewport}\n preferredAlignment={preferCenter ? 'center' : 'start'}\n onOutsideClick={() => toggleDropdown()}\n onFocusLeave={onDropdownFocusLeave}\n onBlur={onDropdownBlur}\n trigger={trigger}\n dropdownId={dropdownId}\n header={filterElement}\n ariaRole={hasFiltering ? 'dialog' : undefined}\n ariaLabel={hasFiltering ? ariaLabel : undefined}\n footer={\n dropdownStatus.content ? (\n <DropdownFooter content={isOpen ? dropdownStatus.content : null} id={footerId} hasItems={!isNoMatch} />\n ) : null\n }\n content={\n <>\n {hasHeader && (\n <div className={styles.header} id={headerId}>\n {title && (\n <div className={styles.title}>\n <InternalBox\n fontSize=\"heading-s\"\n fontWeight=\"bold\"\n color=\"inherit\"\n tagOverride=\"h2\"\n margin={{ vertical: 'n', horizontal: 'n' }}\n >\n {title}\n </InternalBox>\n </div>\n )}\n {description && (\n <InternalBox fontSize=\"body-s\">\n <span className={styles.description}>{description}</span>\n </InternalBox>\n )}\n </div>\n )}\n <OptionsList\n open={canBeOpened && isOpen}\n position=\"static\"\n role=\"menu\"\n nativeAttributes={{ id: menuId }}\n tagOverride=\"ul\"\n decreaseBlockMargin={true}\n ariaLabel={ariaLabel}\n ariaLabelledby={hasHeader ? headerId : shouldLabelWithTrigger ? triggerId : undefined}\n ariaDescribedby={dropdownStatus.content ? footerId : undefined}\n statusType=\"finished\"\n >\n <ItemsList\n items={filteredItems}\n onItemActivate={onItemActivate}\n onGroupToggle={onGroupToggle}\n hasExpandableGroups={showExpandableGroups}\n targetItem={targetItem}\n isHighlighted={isHighlighted}\n isKeyboardHighlight={isKeyboardHighlight}\n isExpanded={isExpanded}\n lastInDropdown={true}\n highlightItem={highlightItem}\n expandToViewport={expandToViewport}\n variant={variant}\n analyticsMetadataTransformer={analyticsMetadataTransformer}\n linkStyle={linkStyle}\n position={position}\n renderItem={renderItem}\n filteringText={filteringValue}\n filteringEnabled={hasFiltering}\n menuId={hasFiltering ? menuId : undefined}\n filteringDescriptionId={filteringItemDescription ? filteringDescriptionId : undefined}\n />\n </OptionsList>\n {filteringDescriptionEl}\n </>\n }\n />\n </div>\n );\n }\n);\n\nexport default InternalButtonDropdown;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/button-dropdown/item-element/index.tsx"],"names":[],"mappings":"AAoBA,OAAO,EAAsC,SAAS,EAAE,MAAM,wBAAwB,CAAC;AASvF,QAAA,MAAM,WAAW,GAAI,qRAoBlB,SAAS,gBAoEX,CAAC;AAqOF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/button-dropdown/item-element/index.tsx"],"names":[],"mappings":"AAoBA,OAAO,EAAsC,SAAS,EAAE,MAAM,wBAAwB,CAAC;AASvF,QAAA,MAAM,WAAW,GAAI,qRAoBlB,SAAS,gBAoEX,CAAC;AA4OF,eAAe,WAAW,CAAC"}
@@ -122,7 +122,7 @@ function MenuItem({ index, item, disabled, highlighted, linkStyle, renderItem, p
122
122
  tabIndex: filteringEnabled ? -1 : highlighted ? 0 : -1,
123
123
  ...(isCheckbox ? getMenuItemCheckboxProps({ disabled, checked: item.checked }) : getMenuItemProps({ disabled })),
124
124
  };
125
- const menuItem = isLinkItem(item) ? (React.createElement("a", { ...menuItemProps, href: !disabled ? item.href : undefined, download: !disabled && item.download ? item.download : undefined, target: getItemTarget(item), rel: item.external ? 'noopener noreferrer' : undefined }, renderResult ? (renderResult) : (React.createElement(MenuItemContent, { item: item, disabled: disabled, highlighted: highlighted, filteringText: filteringText })))) : (React.createElement("span", { ...menuItemProps }, renderResult ? (renderResult) : (React.createElement(MenuItemContent, { item: item, disabled: disabled, highlighted: highlighted, filteringText: filteringText }))));
125
+ const menuItem = isLinkItem(item) ? (React.createElement("a", { ...menuItemProps, href: !disabled ? item.href : undefined, download: !disabled && item.download ? item.download : undefined, target: getItemTarget(item), rel: item.external ? 'noopener noreferrer' : undefined, "data-awsui-motion-trigger": "hover" }, renderResult ? (renderResult) : (React.createElement(MenuItemContent, { item: item, disabled: disabled, highlighted: highlighted, filteringText: filteringText })))) : (React.createElement("span", { ...menuItemProps }, renderResult ? (renderResult) : (React.createElement(MenuItemContent, { item: item, disabled: disabled, highlighted: highlighted, filteringText: filteringText }))));
126
126
  const { position } = useDropdownContext();
127
127
  const tooltipPosition = position === 'bottom-left' || position === 'top-left' ? 'left' : 'right';
128
128
  return isDisabledWithReason ? (React.createElement(Tooltip, { content: item.disabledReason, position: tooltipPosition, className: styles['item-tooltip-wrapper'], controlledOpen: filteringEnabled ? highlighted : undefined },
@@ -156,7 +156,7 @@ const MenuItemCheckmark = ({ disabled, checked }) => {
156
156
  return (React.createElement("span", { className: clsx(styles.icon, styles.checkmark, { [styles.disabled]: disabled }), "aria-hidden": "true", style: { visibility: checked ? 'visible' : 'hidden' } }, checkmark));
157
157
  };
158
158
  const ExternalIcon = ({ disabled, ariaLabel }) => {
159
- const icon = React.createElement(InternalIcon, { variant: disabled ? 'disabled' : 'normal', name: "external" });
159
+ const icon = (React.createElement(InternalIcon, { variant: disabled ? 'disabled' : 'normal', name: "external", nativeAttributes: { 'data-awsui-motion-target': '' } }));
160
160
  return (React.createElement("span", { className: styles['external-icon'], role: ariaLabel ? 'img' : undefined, "aria-label": ariaLabel }, icon));
161
161
  };
162
162
  export default ItemElement;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/button-dropdown/item-element/index.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, { useEffect, useRef } from 'react';\nimport clsx from 'clsx';\n\nimport {\n GeneratedAnalyticsMetadataFragment,\n getAnalyticsMetadataAttribute,\n} from '@cloudscape-design/component-toolkit/internal/analytics-metadata';\n\nimport { useDropdownContext } from '../../dropdown/context';\nimport InternalIcon, { InternalIconProps } from '../../icon/internal';\nimport HighlightMatch from '../../internal/components/option/highlight-match';\nimport useHiddenDescription from '../../internal/hooks/use-hidden-description';\nimport { useVisualRefresh } from '../../internal/hooks/use-visual-mode';\nimport { getDataAttributes } from '../../internal/utils/data-attributes';\nimport { scrollElementIntoView } from '../../internal/utils/scrollable-containers';\nimport { joinStrings } from '../../internal/utils/strings';\nimport { GeneratedAnalyticsMetadataButtonDropdownClick } from '../analytics-metadata/interfaces';\nimport { ButtonDropdownProps, LinkItem } from '../interfaces';\nimport { InternalCheckboxItem, InternalItem, ItemProps } from '../internal-interfaces';\nimport Tooltip from '../tooltip';\nimport { getMenuItemCheckboxProps, getMenuItemProps } from '../utils/menu-item';\nimport { isCheckboxItem, isLinkItem } from '../utils/utils';\nimport { getItemTarget } from '../utils/utils';\n\nimport analyticsLabels from '../analytics-metadata/styles.css.js';\nimport styles from './styles.css.js';\n\nconst ItemElement = ({\n position = '1',\n index,\n item,\n disabled,\n onItemActivate,\n highlighted,\n highlightItem,\n showDivider,\n hasCategoryHeader,\n isKeyboardHighlighted = false,\n analyticsMetadataTransformer = (metadata: GeneratedAnalyticsMetadataFragment) => metadata,\n variant = 'normal',\n linkStyle,\n renderItem,\n parentProps,\n filteringText,\n filteringEnabled,\n menuId,\n filteringDescriptionId,\n}: ItemProps) => {\n const isLink = isLinkItem(item);\n const isCheckbox = isCheckboxItem(item);\n const onClick = (event: React.MouseEvent) => {\n // Stop propagation to parent node and handle event exclusively in here. This ensures\n // that no group will interfere with the default behavior of links\n event.stopPropagation();\n if (!isLink) {\n event.preventDefault();\n }\n if (!disabled) {\n onItemActivate(item, event);\n }\n };\n\n const onHover = () => {\n highlightItem(item);\n };\n\n const isVisualRefresh = useVisualRefresh();\n\n return (\n <li\n className={clsx(styles['item-element'], styles[`variant-${variant}`], {\n [styles.highlighted]: highlighted,\n [styles.disabled]: disabled,\n [styles['has-category-header']]: hasCategoryHeader,\n [styles['has-checkmark']]: isCheckbox,\n [styles['show-divider']]: showDivider,\n [styles['is-focused']]: isKeyboardHighlighted,\n [styles['visual-refresh']]: isVisualRefresh,\n })}\n role=\"presentation\"\n data-testid={item.id}\n data-description={item.description}\n {...getDataAttributes(item.dataAttributes, ['testid'])}\n onClick={onClick}\n onMouseEnter={onHover}\n onTouchStart={onHover}\n {...getAnalyticsMetadataAttribute(\n disabled\n ? {}\n : (analyticsMetadataTransformer!({\n action: 'click',\n detail: {\n position,\n id: item.id,\n label: `.${analyticsLabels['menu-item']}`,\n href: (item as LinkItem).href || '',\n },\n }) as GeneratedAnalyticsMetadataButtonDropdownClick)\n )}\n >\n <MenuItem\n index={index}\n item={item}\n disabled={disabled}\n highlighted={highlighted}\n linkStyle={linkStyle}\n renderItem={renderItem}\n parentProps={parentProps}\n filteringText={filteringText}\n filteringEnabled={filteringEnabled}\n menuId={menuId}\n filteringDescriptionId={filteringDescriptionId}\n />\n </li>\n );\n};\n\ninterface MenuItemProps {\n index?: number;\n item: InternalItem | InternalCheckboxItem;\n disabled: boolean;\n highlighted: boolean;\n linkStyle?: boolean;\n renderItem?: ButtonDropdownProps.ItemRenderer;\n parentProps?: ButtonDropdownProps.GroupRenderItem;\n filteringText?: string;\n filteringEnabled?: boolean;\n menuId?: string;\n filteringDescriptionId?: string;\n}\n\nfunction MenuItem({\n index,\n item,\n disabled,\n highlighted,\n linkStyle,\n renderItem,\n parentProps,\n filteringText,\n filteringEnabled,\n menuId,\n filteringDescriptionId,\n}: MenuItemProps) {\n const menuItemRef = useRef<(HTMLSpanElement & HTMLAnchorElement) | null>(null);\n const isCheckbox = isCheckboxItem(item);\n const isCurrentBreadcrumb = !isCheckbox && item.isCurrentBreadcrumb;\n\n useEffect(() => {\n if (highlighted && menuItemRef.current) {\n if (filteringEnabled) {\n // In filtering mode focus stays on the filter input, so we scroll the\n // highlighted item into view manually instead of relying on focus().\n scrollElementIntoView(menuItemRef.current);\n } else {\n menuItemRef.current.focus();\n }\n }\n }, [highlighted, filteringEnabled]);\n\n let itemProps: { item: ButtonDropdownProps.RenderItem; filterText?: string };\n\n if (isCheckbox) {\n itemProps = {\n item: {\n index: index ?? 0,\n type: 'checkbox',\n option: item as ButtonDropdownProps.CheckboxItem,\n disabled: disabled,\n highlighted: highlighted,\n checked: item.checked,\n parent: parentProps ?? null,\n },\n filterText: filteringText,\n };\n } else {\n itemProps = {\n item: {\n index: index ?? 0,\n type: 'action',\n option: item as ButtonDropdownProps.Item,\n disabled: disabled,\n highlighted: highlighted,\n parent: parentProps ?? null,\n },\n filterText: filteringText,\n };\n }\n\n const renderResult = renderItem?.(itemProps) ?? null;\n\n const isDisabledWithReason = disabled && item.disabledReason;\n const { targetProps, descriptionEl } = useHiddenDescription(item.disabledReason);\n const itemDomId = menuId && item.id ? `${menuId}-${item.id}` : undefined;\n const ariaDescribedby = joinStrings(\n isDisabledWithReason ? targetProps['aria-describedby'] : undefined,\n filteringDescriptionId\n );\n const menuItemProps: React.HTMLAttributes<HTMLSpanElement & HTMLAnchorElement> = {\n id: itemDomId,\n 'aria-label': item.ariaLabel,\n 'aria-describedby': ariaDescribedby,\n className: clsx(\n styles['menu-item'],\n !!renderResult && styles['no-content-styling'],\n analyticsLabels['menu-item'],\n linkStyle && styles['link-style'],\n linkStyle && highlighted && styles['link-style-highlighted'],\n isCurrentBreadcrumb && styles['current-breadcrumb']\n ),\n 'aria-current': isCurrentBreadcrumb,\n lang: item.lang,\n ref: menuItemRef,\n // When filtering is enabled, we use aria-activedescendant on the filter input and provide\n // the `id` of the item to select it. When filtering is disabled, we are using the roving\n // tabindex technique to manage the focus state of the dropdown. The current element will\n // have tabindex=0 which means that it can be tabbed to, while all other items have\n // tabindex=-1 so we can focus them when necessary.\n tabIndex: filteringEnabled ? -1 : highlighted ? 0 : -1,\n ...(isCheckbox ? getMenuItemCheckboxProps({ disabled, checked: item.checked }) : getMenuItemProps({ disabled })),\n };\n\n const menuItem = isLinkItem(item) ? (\n <a\n {...menuItemProps}\n href={!disabled ? item.href : undefined}\n download={!disabled && item.download ? item.download : undefined}\n target={getItemTarget(item)}\n rel={item.external ? 'noopener noreferrer' : undefined}\n >\n {renderResult ? (\n renderResult\n ) : (\n <MenuItemContent item={item} disabled={disabled} highlighted={highlighted} filteringText={filteringText} />\n )}\n </a>\n ) : (\n <span {...menuItemProps}>\n {renderResult ? (\n renderResult\n ) : (\n <MenuItemContent item={item} disabled={disabled} highlighted={highlighted} filteringText={filteringText} />\n )}\n </span>\n );\n\n const { position } = useDropdownContext();\n const tooltipPosition = position === 'bottom-left' || position === 'top-left' ? 'left' : 'right';\n return isDisabledWithReason ? (\n <Tooltip\n content={item.disabledReason}\n position={tooltipPosition}\n className={styles['item-tooltip-wrapper']}\n controlledOpen={filteringEnabled ? highlighted : undefined}\n >\n {menuItem}\n {descriptionEl}\n </Tooltip>\n ) : (\n menuItem\n );\n}\n\nconst MenuItemContent = ({\n item,\n disabled,\n highlighted,\n filteringText,\n}: {\n item: InternalItem | InternalCheckboxItem;\n disabled: boolean;\n highlighted: boolean;\n filteringText?: string;\n}) => {\n const hasIcon = !!(item.iconName || item.iconUrl || item.iconSvg);\n const hasExternal = isLinkItem(item) && item.external;\n const isCheckbox = isCheckboxItem(item);\n return (\n <>\n {isCheckbox && <MenuItemCheckmark checked={item.checked} disabled={disabled} />}\n {hasIcon && (\n <MenuItemIcon\n name={item.iconName}\n url={item.iconUrl}\n svg={item.iconSvg}\n alt={item.iconAlt}\n badge={item.badge}\n />\n )}\n <div className={styles['content-wrapper']}>\n <div className={styles['main-row']}>\n <div>\n <HighlightMatch str={item.text} highlightText={filteringText} />\n {hasExternal && <ExternalIcon disabled={disabled} ariaLabel={item.externalIconAriaLabel} />}\n </div>\n {item.labelTag && (\n <div className={clsx(styles['label-tag'], disabled && styles.disabled)}>\n <HighlightMatch str={item.labelTag} highlightText={filteringText} />\n </div>\n )}\n </div>\n {item.secondaryText && (\n <div\n className={clsx(styles['secondary-text'], highlighted && styles.highlighted, disabled && styles.disabled)}\n >\n <HighlightMatch str={item.secondaryText} highlightText={filteringText} />\n </div>\n )}\n </div>\n </>\n );\n};\n\nconst MenuItemIcon = (props: InternalIconProps) => (\n <span className={styles.icon}>\n <InternalIcon {...props} />\n </span>\n);\n\n// Toggle has aria-hidden set because it's just used as a graphical element,\n// a11y attributes for the checkmark are communicated through the role and aria-checked state\n// of the menu element item.\nconst MenuItemCheckmark = ({ disabled, checked }: { disabled: boolean; checked: boolean }) => {\n const checkmark = <InternalIcon variant={disabled ? 'disabled' : 'normal'} name=\"check\" />;\n return (\n <span\n className={clsx(styles.icon, styles.checkmark, { [styles.disabled]: disabled })}\n aria-hidden=\"true\"\n style={{ visibility: checked ? 'visible' : 'hidden' }}\n >\n {checkmark}\n </span>\n );\n};\n\nconst ExternalIcon = ({ disabled, ariaLabel }: { disabled: boolean; ariaLabel?: string }) => {\n const icon = <InternalIcon variant={disabled ? 'disabled' : 'normal'} name=\"external\" />;\n return (\n <span className={styles['external-icon']} role={ariaLabel ? 'img' : undefined} aria-label={ariaLabel}>\n {icon}\n </span>\n );\n};\n\nexport default ItemElement;\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/button-dropdown/item-element/index.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAEL,6BAA6B,GAC9B,MAAM,kEAAkE,CAAC;AAE1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,YAAmC,MAAM,qBAAqB,CAAC;AACtE,OAAO,cAAc,MAAM,kDAAkD,CAAC;AAC9E,OAAO,oBAAoB,MAAM,6CAA6C,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAI3D,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,OAAO,eAAe,MAAM,qCAAqC,CAAC;AAClE,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAErC,MAAM,WAAW,GAAG,CAAC,EACnB,QAAQ,GAAG,GAAG,EACd,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,cAAc,EACd,WAAW,EACX,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,qBAAqB,GAAG,KAAK,EAC7B,4BAA4B,GAAG,CAAC,QAA4C,EAAE,EAAE,CAAC,QAAQ,EACzF,OAAO,GAAG,QAAQ,EAClB,SAAS,EACT,UAAU,EACV,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,MAAM,EACN,sBAAsB,GACZ,EAAE,EAAE;IACd,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,OAAO,GAAG,CAAC,KAAuB,EAAE,EAAE;QAC1C,qFAAqF;QACrF,kEAAkE;QAClE,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,KAAK,CAAC,cAAc,EAAE,CAAC;QACzB,CAAC;QACD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,aAAa,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,gBAAgB,EAAE,CAAC;IAE3C,OAAO,CACL,4BACE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,WAAW,OAAO,EAAE,CAAC,EAAE;YACpE,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,WAAW;YACjC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,QAAQ;YAC3B,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,EAAE,iBAAiB;YAClD,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,UAAU;YACrC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,WAAW;YACrC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,qBAAqB;YAC7C,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,EAAE,eAAe;SAC5C,CAAC,EACF,IAAI,EAAC,cAAc,iBACN,IAAI,CAAC,EAAE,sBACF,IAAI,CAAC,WAAW,KAC9B,iBAAiB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC,CAAC,EACtD,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,OAAO,EACrB,YAAY,EAAE,OAAO,KACjB,6BAA6B,CAC/B,QAAQ;YACN,CAAC,CAAC,EAAE;YACJ,CAAC,CAAE,4BAA6B,CAAC;gBAC7B,MAAM,EAAE,OAAO;gBACf,MAAM,EAAE;oBACN,QAAQ;oBACR,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,KAAK,EAAE,IAAI,eAAe,CAAC,WAAW,CAAC,EAAE;oBACzC,IAAI,EAAG,IAAiB,CAAC,IAAI,IAAI,EAAE;iBACpC;aACF,CAAmD,CACzD;QAED,oBAAC,QAAQ,IACP,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,UAAU,EACtB,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,aAAa,EAC5B,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,MAAM,EACd,sBAAsB,EAAE,sBAAsB,GAC9C,CACC,CACN,CAAC;AACJ,CAAC,CAAC;AAgBF,SAAS,QAAQ,CAAC,EAChB,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,SAAS,EACT,UAAU,EACV,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,MAAM,EACN,sBAAsB,GACR;;IACd,MAAM,WAAW,GAAG,MAAM,CAA+C,IAAI,CAAC,CAAC;IAC/E,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,mBAAmB,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,mBAAmB,CAAC;IAEpE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,WAAW,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;YACvC,IAAI,gBAAgB,EAAE,CAAC;gBACrB,sEAAsE;gBACtE,qEAAqE;gBACrE,qBAAqB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAC9B,CAAC;QACH,CAAC;IACH,CAAC,EAAE,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAEpC,IAAI,SAAwE,CAAC;IAE7E,IAAI,UAAU,EAAE,CAAC;QACf,SAAS,GAAG;YACV,IAAI,EAAE;gBACJ,KAAK,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,CAAC;gBACjB,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,IAAwC;gBAChD,QAAQ,EAAE,QAAQ;gBAClB,WAAW,EAAE,WAAW;gBACxB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,MAAM,EAAE,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,IAAI;aAC5B;YACD,UAAU,EAAE,aAAa;SAC1B,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,SAAS,GAAG;YACV,IAAI,EAAE;gBACJ,KAAK,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,CAAC;gBACjB,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,IAAgC;gBACxC,QAAQ,EAAE,QAAQ;gBAClB,WAAW,EAAE,WAAW;gBACxB,MAAM,EAAE,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,IAAI;aAC5B;YACD,UAAU,EAAE,aAAa;SAC1B,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAG,SAAS,CAAC,mCAAI,IAAI,CAAC;IAErD,MAAM,oBAAoB,GAAG,QAAQ,IAAI,IAAI,CAAC,cAAc,CAAC;IAC7D,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,GAAG,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACjF,MAAM,SAAS,GAAG,MAAM,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACzE,MAAM,eAAe,GAAG,WAAW,CACjC,oBAAoB,CAAC,CAAC,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,EAClE,sBAAsB,CACvB,CAAC;IACF,MAAM,aAAa,GAA8D;QAC/E,EAAE,EAAE,SAAS;QACb,YAAY,EAAE,IAAI,CAAC,SAAS;QAC5B,kBAAkB,EAAE,eAAe;QACnC,SAAS,EAAE,IAAI,CACb,MAAM,CAAC,WAAW,CAAC,EACnB,CAAC,CAAC,YAAY,IAAI,MAAM,CAAC,oBAAoB,CAAC,EAC9C,eAAe,CAAC,WAAW,CAAC,EAC5B,SAAS,IAAI,MAAM,CAAC,YAAY,CAAC,EACjC,SAAS,IAAI,WAAW,IAAI,MAAM,CAAC,wBAAwB,CAAC,EAC5D,mBAAmB,IAAI,MAAM,CAAC,oBAAoB,CAAC,CACpD;QACD,cAAc,EAAE,mBAAmB;QACnC,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,GAAG,EAAE,WAAW;QAChB,0FAA0F;QAC1F,yFAAyF;QACzF,yFAAyF;QACzF,mFAAmF;QACnF,mDAAmD;QACnD,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtD,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,wBAAwB,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;KACjH,CAAC;IAEF,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAClC,8BACM,aAAa,EACjB,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EACvC,QAAQ,EAAE,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAChE,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,EAC3B,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,+BAC5B,OAAO,IAEhC,YAAY,CAAC,CAAC,CAAC,CACd,YAAY,CACb,CAAC,CAAC,CAAC,CACF,oBAAC,eAAe,IAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,GAAI,CAC5G,CACC,CACL,CAAC,CAAC,CAAC,CACF,iCAAU,aAAa,IACpB,YAAY,CAAC,CAAC,CAAC,CACd,YAAY,CACb,CAAC,CAAC,CAAC,CACF,oBAAC,eAAe,IAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,GAAI,CAC5G,CACI,CACR,CAAC;IAEF,MAAM,EAAE,QAAQ,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAC1C,MAAM,eAAe,GAAG,QAAQ,KAAK,aAAa,IAAI,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;IACjG,OAAO,oBAAoB,CAAC,CAAC,CAAC,CAC5B,oBAAC,OAAO,IACN,OAAO,EAAE,IAAI,CAAC,cAAc,EAC5B,QAAQ,EAAE,eAAe,EACzB,SAAS,EAAE,MAAM,CAAC,sBAAsB,CAAC,EACzC,cAAc,EAAE,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;QAEzD,QAAQ;QACR,aAAa,CACN,CACX,CAAC,CAAC,CAAC,CACF,QAAQ,CACT,CAAC;AACJ,CAAC;AAED,MAAM,eAAe,GAAG,CAAC,EACvB,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,aAAa,GAMd,EAAE,EAAE;IACH,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;IAClE,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC;IACtD,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IACxC,OAAO,CACL;QACG,UAAU,IAAI,oBAAC,iBAAiB,IAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,GAAI;QAC9E,OAAO,IAAI,CACV,oBAAC,YAAY,IACX,IAAI,EAAE,IAAI,CAAC,QAAQ,EACnB,GAAG,EAAE,IAAI,CAAC,OAAO,EACjB,GAAG,EAAE,IAAI,CAAC,OAAO,EACjB,GAAG,EAAE,IAAI,CAAC,OAAO,EACjB,KAAK,EAAE,IAAI,CAAC,KAAK,GACjB,CACH;QACD,6BAAK,SAAS,EAAE,MAAM,CAAC,iBAAiB,CAAC;YACvC,6BAAK,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC;gBAChC;oBACE,oBAAC,cAAc,IAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,aAAa,GAAI;oBAC/D,WAAW,IAAI,oBAAC,YAAY,IAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,qBAAqB,GAAI,CACvF;gBACL,IAAI,CAAC,QAAQ,IAAI,CAChB,6BAAK,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC;oBACpE,oBAAC,cAAc,IAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,aAAa,EAAE,aAAa,GAAI,CAChE,CACP,CACG;YACL,IAAI,CAAC,aAAa,IAAI,CACrB,6BACE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,WAAW,IAAI,MAAM,CAAC,WAAW,EAAE,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC;gBAEzG,oBAAC,cAAc,IAAC,GAAG,EAAE,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,aAAa,GAAI,CACrE,CACP,CACG,CACL,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,KAAwB,EAAE,EAAE,CAAC,CACjD,8BAAM,SAAS,EAAE,MAAM,CAAC,IAAI;IAC1B,oBAAC,YAAY,OAAK,KAAK,GAAI,CACtB,CACR,CAAC;AAEF,4EAA4E;AAC5E,6FAA6F;AAC7F,4BAA4B;AAC5B,MAAM,iBAAiB,GAAG,CAAC,EAAE,QAAQ,EAAE,OAAO,EAA2C,EAAE,EAAE;IAC3F,MAAM,SAAS,GAAG,oBAAC,YAAY,IAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAC,OAAO,GAAG,CAAC;IAC3F,OAAO,CACL,8BACE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC,iBACnE,MAAM,EAClB,KAAK,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,IAEpD,SAAS,CACL,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,EAA6C,EAAE,EAAE;IAC1F,MAAM,IAAI,GAAG,CACX,oBAAC,YAAY,IACX,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,EACzC,IAAI,EAAC,UAAU,EACf,gBAAgB,EAAE,EAAE,0BAA0B,EAAE,EAAE,EAAE,GACpD,CACH,CAAC;IACF,OAAO,CACL,8BAAM,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,gBAAc,SAAS,IACjG,IAAI,CACA,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useEffect, useRef } from 'react';\nimport clsx from 'clsx';\n\nimport {\n GeneratedAnalyticsMetadataFragment,\n getAnalyticsMetadataAttribute,\n} from '@cloudscape-design/component-toolkit/internal/analytics-metadata';\n\nimport { useDropdownContext } from '../../dropdown/context';\nimport InternalIcon, { InternalIconProps } from '../../icon/internal';\nimport HighlightMatch from '../../internal/components/option/highlight-match';\nimport useHiddenDescription from '../../internal/hooks/use-hidden-description';\nimport { useVisualRefresh } from '../../internal/hooks/use-visual-mode';\nimport { getDataAttributes } from '../../internal/utils/data-attributes';\nimport { scrollElementIntoView } from '../../internal/utils/scrollable-containers';\nimport { joinStrings } from '../../internal/utils/strings';\nimport { GeneratedAnalyticsMetadataButtonDropdownClick } from '../analytics-metadata/interfaces';\nimport { ButtonDropdownProps, LinkItem } from '../interfaces';\nimport { InternalCheckboxItem, InternalItem, ItemProps } from '../internal-interfaces';\nimport Tooltip from '../tooltip';\nimport { getMenuItemCheckboxProps, getMenuItemProps } from '../utils/menu-item';\nimport { isCheckboxItem, isLinkItem } from '../utils/utils';\nimport { getItemTarget } from '../utils/utils';\n\nimport analyticsLabels from '../analytics-metadata/styles.css.js';\nimport styles from './styles.css.js';\n\nconst ItemElement = ({\n position = '1',\n index,\n item,\n disabled,\n onItemActivate,\n highlighted,\n highlightItem,\n showDivider,\n hasCategoryHeader,\n isKeyboardHighlighted = false,\n analyticsMetadataTransformer = (metadata: GeneratedAnalyticsMetadataFragment) => metadata,\n variant = 'normal',\n linkStyle,\n renderItem,\n parentProps,\n filteringText,\n filteringEnabled,\n menuId,\n filteringDescriptionId,\n}: ItemProps) => {\n const isLink = isLinkItem(item);\n const isCheckbox = isCheckboxItem(item);\n const onClick = (event: React.MouseEvent) => {\n // Stop propagation to parent node and handle event exclusively in here. This ensures\n // that no group will interfere with the default behavior of links\n event.stopPropagation();\n if (!isLink) {\n event.preventDefault();\n }\n if (!disabled) {\n onItemActivate(item, event);\n }\n };\n\n const onHover = () => {\n highlightItem(item);\n };\n\n const isVisualRefresh = useVisualRefresh();\n\n return (\n <li\n className={clsx(styles['item-element'], styles[`variant-${variant}`], {\n [styles.highlighted]: highlighted,\n [styles.disabled]: disabled,\n [styles['has-category-header']]: hasCategoryHeader,\n [styles['has-checkmark']]: isCheckbox,\n [styles['show-divider']]: showDivider,\n [styles['is-focused']]: isKeyboardHighlighted,\n [styles['visual-refresh']]: isVisualRefresh,\n })}\n role=\"presentation\"\n data-testid={item.id}\n data-description={item.description}\n {...getDataAttributes(item.dataAttributes, ['testid'])}\n onClick={onClick}\n onMouseEnter={onHover}\n onTouchStart={onHover}\n {...getAnalyticsMetadataAttribute(\n disabled\n ? {}\n : (analyticsMetadataTransformer!({\n action: 'click',\n detail: {\n position,\n id: item.id,\n label: `.${analyticsLabels['menu-item']}`,\n href: (item as LinkItem).href || '',\n },\n }) as GeneratedAnalyticsMetadataButtonDropdownClick)\n )}\n >\n <MenuItem\n index={index}\n item={item}\n disabled={disabled}\n highlighted={highlighted}\n linkStyle={linkStyle}\n renderItem={renderItem}\n parentProps={parentProps}\n filteringText={filteringText}\n filteringEnabled={filteringEnabled}\n menuId={menuId}\n filteringDescriptionId={filteringDescriptionId}\n />\n </li>\n );\n};\n\ninterface MenuItemProps {\n index?: number;\n item: InternalItem | InternalCheckboxItem;\n disabled: boolean;\n highlighted: boolean;\n linkStyle?: boolean;\n renderItem?: ButtonDropdownProps.ItemRenderer;\n parentProps?: ButtonDropdownProps.GroupRenderItem;\n filteringText?: string;\n filteringEnabled?: boolean;\n menuId?: string;\n filteringDescriptionId?: string;\n}\n\nfunction MenuItem({\n index,\n item,\n disabled,\n highlighted,\n linkStyle,\n renderItem,\n parentProps,\n filteringText,\n filteringEnabled,\n menuId,\n filteringDescriptionId,\n}: MenuItemProps) {\n const menuItemRef = useRef<(HTMLSpanElement & HTMLAnchorElement) | null>(null);\n const isCheckbox = isCheckboxItem(item);\n const isCurrentBreadcrumb = !isCheckbox && item.isCurrentBreadcrumb;\n\n useEffect(() => {\n if (highlighted && menuItemRef.current) {\n if (filteringEnabled) {\n // In filtering mode focus stays on the filter input, so we scroll the\n // highlighted item into view manually instead of relying on focus().\n scrollElementIntoView(menuItemRef.current);\n } else {\n menuItemRef.current.focus();\n }\n }\n }, [highlighted, filteringEnabled]);\n\n let itemProps: { item: ButtonDropdownProps.RenderItem; filterText?: string };\n\n if (isCheckbox) {\n itemProps = {\n item: {\n index: index ?? 0,\n type: 'checkbox',\n option: item as ButtonDropdownProps.CheckboxItem,\n disabled: disabled,\n highlighted: highlighted,\n checked: item.checked,\n parent: parentProps ?? null,\n },\n filterText: filteringText,\n };\n } else {\n itemProps = {\n item: {\n index: index ?? 0,\n type: 'action',\n option: item as ButtonDropdownProps.Item,\n disabled: disabled,\n highlighted: highlighted,\n parent: parentProps ?? null,\n },\n filterText: filteringText,\n };\n }\n\n const renderResult = renderItem?.(itemProps) ?? null;\n\n const isDisabledWithReason = disabled && item.disabledReason;\n const { targetProps, descriptionEl } = useHiddenDescription(item.disabledReason);\n const itemDomId = menuId && item.id ? `${menuId}-${item.id}` : undefined;\n const ariaDescribedby = joinStrings(\n isDisabledWithReason ? targetProps['aria-describedby'] : undefined,\n filteringDescriptionId\n );\n const menuItemProps: React.HTMLAttributes<HTMLSpanElement & HTMLAnchorElement> = {\n id: itemDomId,\n 'aria-label': item.ariaLabel,\n 'aria-describedby': ariaDescribedby,\n className: clsx(\n styles['menu-item'],\n !!renderResult && styles['no-content-styling'],\n analyticsLabels['menu-item'],\n linkStyle && styles['link-style'],\n linkStyle && highlighted && styles['link-style-highlighted'],\n isCurrentBreadcrumb && styles['current-breadcrumb']\n ),\n 'aria-current': isCurrentBreadcrumb,\n lang: item.lang,\n ref: menuItemRef,\n // When filtering is enabled, we use aria-activedescendant on the filter input and provide\n // the `id` of the item to select it. When filtering is disabled, we are using the roving\n // tabindex technique to manage the focus state of the dropdown. The current element will\n // have tabindex=0 which means that it can be tabbed to, while all other items have\n // tabindex=-1 so we can focus them when necessary.\n tabIndex: filteringEnabled ? -1 : highlighted ? 0 : -1,\n ...(isCheckbox ? getMenuItemCheckboxProps({ disabled, checked: item.checked }) : getMenuItemProps({ disabled })),\n };\n\n const menuItem = isLinkItem(item) ? (\n <a\n {...menuItemProps}\n href={!disabled ? item.href : undefined}\n download={!disabled && item.download ? item.download : undefined}\n target={getItemTarget(item)}\n rel={item.external ? 'noopener noreferrer' : undefined}\n data-awsui-motion-trigger=\"hover\"\n >\n {renderResult ? (\n renderResult\n ) : (\n <MenuItemContent item={item} disabled={disabled} highlighted={highlighted} filteringText={filteringText} />\n )}\n </a>\n ) : (\n <span {...menuItemProps}>\n {renderResult ? (\n renderResult\n ) : (\n <MenuItemContent item={item} disabled={disabled} highlighted={highlighted} filteringText={filteringText} />\n )}\n </span>\n );\n\n const { position } = useDropdownContext();\n const tooltipPosition = position === 'bottom-left' || position === 'top-left' ? 'left' : 'right';\n return isDisabledWithReason ? (\n <Tooltip\n content={item.disabledReason}\n position={tooltipPosition}\n className={styles['item-tooltip-wrapper']}\n controlledOpen={filteringEnabled ? highlighted : undefined}\n >\n {menuItem}\n {descriptionEl}\n </Tooltip>\n ) : (\n menuItem\n );\n}\n\nconst MenuItemContent = ({\n item,\n disabled,\n highlighted,\n filteringText,\n}: {\n item: InternalItem | InternalCheckboxItem;\n disabled: boolean;\n highlighted: boolean;\n filteringText?: string;\n}) => {\n const hasIcon = !!(item.iconName || item.iconUrl || item.iconSvg);\n const hasExternal = isLinkItem(item) && item.external;\n const isCheckbox = isCheckboxItem(item);\n return (\n <>\n {isCheckbox && <MenuItemCheckmark checked={item.checked} disabled={disabled} />}\n {hasIcon && (\n <MenuItemIcon\n name={item.iconName}\n url={item.iconUrl}\n svg={item.iconSvg}\n alt={item.iconAlt}\n badge={item.badge}\n />\n )}\n <div className={styles['content-wrapper']}>\n <div className={styles['main-row']}>\n <div>\n <HighlightMatch str={item.text} highlightText={filteringText} />\n {hasExternal && <ExternalIcon disabled={disabled} ariaLabel={item.externalIconAriaLabel} />}\n </div>\n {item.labelTag && (\n <div className={clsx(styles['label-tag'], disabled && styles.disabled)}>\n <HighlightMatch str={item.labelTag} highlightText={filteringText} />\n </div>\n )}\n </div>\n {item.secondaryText && (\n <div\n className={clsx(styles['secondary-text'], highlighted && styles.highlighted, disabled && styles.disabled)}\n >\n <HighlightMatch str={item.secondaryText} highlightText={filteringText} />\n </div>\n )}\n </div>\n </>\n );\n};\n\nconst MenuItemIcon = (props: InternalIconProps) => (\n <span className={styles.icon}>\n <InternalIcon {...props} />\n </span>\n);\n\n// Toggle has aria-hidden set because it's just used as a graphical element,\n// a11y attributes for the checkmark are communicated through the role and aria-checked state\n// of the menu element item.\nconst MenuItemCheckmark = ({ disabled, checked }: { disabled: boolean; checked: boolean }) => {\n const checkmark = <InternalIcon variant={disabled ? 'disabled' : 'normal'} name=\"check\" />;\n return (\n <span\n className={clsx(styles.icon, styles.checkmark, { [styles.disabled]: disabled })}\n aria-hidden=\"true\"\n style={{ visibility: checked ? 'visible' : 'hidden' }}\n >\n {checkmark}\n </span>\n );\n};\n\nconst ExternalIcon = ({ disabled, ariaLabel }: { disabled: boolean; ariaLabel?: string }) => {\n const icon = (\n <InternalIcon\n variant={disabled ? 'disabled' : 'normal'}\n name=\"external\"\n nativeAttributes={{ 'data-awsui-motion-target': '' }}\n />\n );\n return (\n <span className={styles['external-icon']} role={ariaLabel ? 'img' : undefined} aria-label={ariaLabel}>\n {icon}\n </span>\n );\n};\n\nexport default ItemElement;\n"]}
@@ -1,26 +1,26 @@
1
1
 
2
2
  import './styles.scoped.css';
3
3
  export default {
4
- "item-element": "awsui_item-element_93a1u_3ap91_9",
5
- "no-content-styling": "awsui_no-content-styling_93a1u_3ap91_21",
6
- "disabled": "awsui_disabled_93a1u_3ap91_26",
7
- "show-divider": "awsui_show-divider_93a1u_3ap91_33",
8
- "highlighted": "awsui_highlighted_93a1u_3ap91_36",
9
- "is-focused": "awsui_is-focused_93a1u_3ap91_51",
10
- "visual-refresh": "awsui_visual-refresh_93a1u_3ap91_54",
11
- "menu-item": "awsui_menu-item_93a1u_3ap91_58",
12
- "link-style": "awsui_link-style_93a1u_3ap91_75",
13
- "current-breadcrumb": "awsui_current-breadcrumb_93a1u_3ap91_112",
14
- "link-style-highlighted": "awsui_link-style-highlighted_93a1u_3ap91_120",
15
- "has-category-header": "awsui_has-category-header_93a1u_3ap91_126",
16
- "item-tooltip-wrapper": "awsui_item-tooltip-wrapper_93a1u_3ap91_126",
17
- "has-checkmark": "awsui_has-checkmark_93a1u_3ap91_126",
18
- "icon": "awsui_icon_93a1u_3ap91_133",
19
- "checkmark": "awsui_checkmark_93a1u_3ap91_137",
20
- "external-icon": "awsui_external-icon_93a1u_3ap91_144",
21
- "content-wrapper": "awsui_content-wrapper_93a1u_3ap91_148",
22
- "main-row": "awsui_main-row_93a1u_3ap91_154",
23
- "label-tag": "awsui_label-tag_93a1u_3ap91_161",
24
- "secondary-text": "awsui_secondary-text_93a1u_3ap91_168"
4
+ "item-element": "awsui_item-element_93a1u_d5fl3_9",
5
+ "no-content-styling": "awsui_no-content-styling_93a1u_d5fl3_21",
6
+ "disabled": "awsui_disabled_93a1u_d5fl3_26",
7
+ "show-divider": "awsui_show-divider_93a1u_d5fl3_33",
8
+ "highlighted": "awsui_highlighted_93a1u_d5fl3_36",
9
+ "is-focused": "awsui_is-focused_93a1u_d5fl3_51",
10
+ "visual-refresh": "awsui_visual-refresh_93a1u_d5fl3_54",
11
+ "menu-item": "awsui_menu-item_93a1u_d5fl3_58",
12
+ "link-style": "awsui_link-style_93a1u_d5fl3_75",
13
+ "current-breadcrumb": "awsui_current-breadcrumb_93a1u_d5fl3_112",
14
+ "link-style-highlighted": "awsui_link-style-highlighted_93a1u_d5fl3_120",
15
+ "has-category-header": "awsui_has-category-header_93a1u_d5fl3_126",
16
+ "item-tooltip-wrapper": "awsui_item-tooltip-wrapper_93a1u_d5fl3_126",
17
+ "has-checkmark": "awsui_has-checkmark_93a1u_d5fl3_126",
18
+ "icon": "awsui_icon_93a1u_d5fl3_133",
19
+ "checkmark": "awsui_checkmark_93a1u_d5fl3_137",
20
+ "external-icon": "awsui_external-icon_93a1u_d5fl3_144",
21
+ "content-wrapper": "awsui_content-wrapper_93a1u_d5fl3_148",
22
+ "main-row": "awsui_main-row_93a1u_d5fl3_154",
23
+ "label-tag": "awsui_label-tag_93a1u_d5fl3_161",
24
+ "secondary-text": "awsui_secondary-text_93a1u_d5fl3_168"
25
25
  };
26
26
 
@@ -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_item-element_93a1u_3ap91_9:not(#\9) {
9
+ .awsui_item-element_93a1u_d5fl3_9:not(#\9) {
10
10
  position: relative;
11
11
  z-index: 1;
12
12
  border-block: var(--border-item-width-pyfg4s, 2px) solid transparent;
@@ -18,22 +18,22 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
18
18
  margin-block-start: calc(-1 * var(--border-width-dropdown-4gpjx5, 2px));
19
19
  cursor: pointer;
20
20
  }
21
- .awsui_item-element_93a1u_3ap91_9.awsui_no-content-styling_93a1u_3ap91_21:not(#\9) {
21
+ .awsui_item-element_93a1u_d5fl3_9.awsui_no-content-styling_93a1u_d5fl3_21:not(#\9) {
22
22
  padding-block: 0;
23
23
  padding-inline: 0;
24
24
  color: var(--color-text-dropdown-item-default-zani00, #0f141a);
25
25
  }
26
- .awsui_item-element_93a1u_3ap91_9.awsui_disabled_93a1u_3ap91_26:not(#\9) {
26
+ .awsui_item-element_93a1u_d5fl3_9.awsui_disabled_93a1u_d5fl3_26:not(#\9) {
27
27
  cursor: default;
28
28
  color: var(--color-text-dropdown-item-disabled-pl4fy2, #b4b4bb);
29
29
  }
30
- .awsui_item-element_93a1u_3ap91_9:not(#\9):first-child {
30
+ .awsui_item-element_93a1u_d5fl3_9:not(#\9):first-child {
31
31
  margin-block-start: 0;
32
32
  }
33
- .awsui_item-element_93a1u_3ap91_9.awsui_show-divider_93a1u_3ap91_33:not(#\9) {
33
+ .awsui_item-element_93a1u_d5fl3_9.awsui_show-divider_93a1u_d5fl3_33:not(#\9) {
34
34
  border-block-end: var(--border-item-width-pyfg4s, 2px) solid var(--color-border-dropdown-group-0ocu9j, #c6c6cd);
35
35
  }
36
- .awsui_item-element_93a1u_3ap91_9.awsui_highlighted_93a1u_3ap91_36:not(#\9) {
36
+ .awsui_item-element_93a1u_d5fl3_9.awsui_highlighted_93a1u_d5fl3_36:not(#\9) {
37
37
  color: var(--color-text-dropdown-item-highlighted-q6vxih, #0f141a);
38
38
  z-index: 2;
39
39
  background-color: var(--color-background-dropdown-item-hover-wyujnt, #f3f3f7);
@@ -43,41 +43,41 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
43
43
  border-end-start-radius: var(--border-radius-item-mitz8h, 8px);
44
44
  border-end-end-radius: var(--border-radius-item-mitz8h, 8px);
45
45
  }
46
- .awsui_item-element_93a1u_3ap91_9.awsui_highlighted_93a1u_3ap91_36.awsui_disabled_93a1u_3ap91_26:not(#\9) {
46
+ .awsui_item-element_93a1u_d5fl3_9.awsui_highlighted_93a1u_d5fl3_36.awsui_disabled_93a1u_d5fl3_26:not(#\9) {
47
47
  color: var(--color-text-dropdown-item-dimmed-iy2k20, #b4b4bb);
48
48
  border-color: var(--color-border-dropdown-item-dimmed-hover-ga9sch, #8c8c94);
49
49
  background-color: var(--color-background-dropdown-item-dimmed-dhho03, transparent);
50
50
  }
51
- .awsui_item-element_93a1u_3ap91_9.awsui_highlighted_93a1u_3ap91_36.awsui_is-focused_93a1u_3ap91_51:not(#\9) {
51
+ .awsui_item-element_93a1u_d5fl3_9.awsui_highlighted_93a1u_d5fl3_36.awsui_is-focused_93a1u_d5fl3_51:not(#\9) {
52
52
  border-color: var(--color-border-dropdown-item-focused-k9miqq, #424650);
53
53
  }
54
- .awsui_item-element_93a1u_3ap91_9.awsui_highlighted_93a1u_3ap91_36.awsui_is-focused_93a1u_3ap91_51:not(#\9):not(.awsui_visual-refresh_93a1u_3ap91_54) {
54
+ .awsui_item-element_93a1u_d5fl3_9.awsui_highlighted_93a1u_d5fl3_36.awsui_is-focused_93a1u_d5fl3_51:not(#\9):not(.awsui_visual-refresh_93a1u_d5fl3_54) {
55
55
  box-shadow: inset 0 0 0 var(--border-control-focus-ring-shadow-spread-iijyo6, 1px) var(--color-border-item-focused-ditkrb, #006ce0);
56
56
  }
57
57
 
58
- .awsui_menu-item_93a1u_3ap91_58:not(#\9) {
58
+ .awsui_menu-item_93a1u_d5fl3_58:not(#\9) {
59
59
  min-inline-size: 0;
60
60
  word-break: break-word;
61
61
  display: flex;
62
62
  align-items: flex-start;
63
- padding-block: var(--space-option-padding-vertical-d2srv9, 4px);
64
- padding-inline: var(--space-option-padding-horizontal-4taa4b, 20px);
63
+ padding-block: var(--space-option-padding-vertical-hggcse, 4px);
64
+ padding-inline: var(--space-option-padding-horizontal-5om7we, 20px);
65
65
  color: inherit;
66
66
  text-decoration: none;
67
67
  /* stylelint-disable selector-max-type */
68
68
  /* stylelint-enable selector-max-type */
69
69
  }
70
- .awsui_menu-item_93a1u_3ap91_58.awsui_no-content-styling_93a1u_3ap91_21:not(#\9) {
70
+ .awsui_menu-item_93a1u_d5fl3_58.awsui_no-content-styling_93a1u_d5fl3_21:not(#\9) {
71
71
  padding-block: 0;
72
72
  padding-inline: 0;
73
73
  color: var(--color-text-dropdown-item-default-zani00, #0f141a);
74
74
  }
75
- .awsui_menu-item_93a1u_3ap91_58.awsui_link-style_93a1u_3ap91_75:not(#\9) {
76
- padding-block-end: calc(var(--space-option-padding-vertical-d2srv9, 4px) + var(--space-xxxs-pajhad, 2px));
75
+ .awsui_menu-item_93a1u_d5fl3_58.awsui_link-style_93a1u_d5fl3_75:not(#\9) {
76
+ padding-block-end: calc(var(--space-option-padding-vertical-hggcse, 4px) + var(--space-xxxs-3ulqs3, 2px));
77
77
  text-underline-offset: 0.25em;
78
78
  text-decoration-thickness: var(--font-decoration-thickness-link-n3u7wl, 1px);
79
79
  text-decoration-style: var(--font-decoration-style-link-lw1s9g, solid);
80
- color: var(--awsui-style-color-default-esndbs, var(--color-text-link-default-rhby5q, #006ce0));
80
+ color: var(--awsui-style-color-default-66120l, var(--color-text-link-default-rhby5q, #006ce0));
81
81
  font-weight: inherit;
82
82
  letter-spacing: normal;
83
83
  text-decoration-line: underline;
@@ -85,33 +85,33 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
85
85
  transition-property: color, -webkit-text-decoration;
86
86
  transition-property: color, text-decoration;
87
87
  transition-property: color, text-decoration, -webkit-text-decoration;
88
- transition-duration: var(--motion-duration-refresh-only-medium-5rbn3k, 165ms);
88
+ transition-duration: var(--motion-duration-refresh-only-medium-s8g1xv, 165ms);
89
89
  }
90
90
  @media (prefers-reduced-motion: reduce) {
91
- .awsui_menu-item_93a1u_3ap91_58.awsui_link-style_93a1u_3ap91_75:not(#\9) {
91
+ .awsui_menu-item_93a1u_d5fl3_58.awsui_link-style_93a1u_d5fl3_75:not(#\9) {
92
92
  animation: none;
93
93
  transition: none;
94
94
  }
95
95
  }
96
- .awsui-motion-disabled .awsui_menu-item_93a1u_3ap91_58.awsui_link-style_93a1u_3ap91_75:not(#\9), .awsui-mode-entering .awsui_menu-item_93a1u_3ap91_58.awsui_link-style_93a1u_3ap91_75:not(#\9) {
96
+ .awsui-motion-disabled .awsui_menu-item_93a1u_d5fl3_58.awsui_link-style_93a1u_d5fl3_75:not(#\9), .awsui-mode-entering .awsui_menu-item_93a1u_d5fl3_58.awsui_link-style_93a1u_d5fl3_75:not(#\9) {
97
97
  animation: none;
98
98
  transition: none;
99
99
  }
100
- .awsui_menu-item_93a1u_3ap91_58.awsui_link-style_93a1u_3ap91_75:not(#\9):hover {
100
+ .awsui_menu-item_93a1u_d5fl3_58.awsui_link-style_93a1u_d5fl3_75:not(#\9):hover {
101
101
  cursor: pointer;
102
- color: var(--awsui-style-color-hover-esndbs, var(--color-text-link-hover-br6snu, #002b66));
102
+ color: var(--awsui-style-color-hover-66120l, var(--color-text-link-hover-br6snu, #002b66));
103
103
  }
104
- .awsui_menu-item_93a1u_3ap91_58.awsui_link-style_93a1u_3ap91_75:not(#\9):focus {
104
+ .awsui_menu-item_93a1u_d5fl3_58.awsui_link-style_93a1u_d5fl3_75:not(#\9):focus {
105
105
  outline: none;
106
106
  }
107
- .awsui_menu-item_93a1u_3ap91_58.awsui_link-style_93a1u_3ap91_75:not(#\9):active {
108
- color: var(--awsui-style-color-active-esndbs, var(--color-text-link-hover-br6snu, #002b66));
107
+ .awsui_menu-item_93a1u_d5fl3_58.awsui_link-style_93a1u_d5fl3_75:not(#\9):active {
108
+ color: var(--awsui-style-color-active-66120l, var(--color-text-link-hover-br6snu, #002b66));
109
109
  }
110
- .awsui_menu-item_93a1u_3ap91_58.awsui_link-style_93a1u_3ap91_75:not(#\9):active, .awsui_menu-item_93a1u_3ap91_58.awsui_link-style_93a1u_3ap91_75:not(#\9):focus, .awsui_menu-item_93a1u_3ap91_58.awsui_link-style_93a1u_3ap91_75:not(#\9):hover {
110
+ .awsui_menu-item_93a1u_d5fl3_58.awsui_link-style_93a1u_d5fl3_75:not(#\9):active, .awsui_menu-item_93a1u_d5fl3_58.awsui_link-style_93a1u_d5fl3_75:not(#\9):focus, .awsui_menu-item_93a1u_d5fl3_58.awsui_link-style_93a1u_d5fl3_75:not(#\9):hover {
111
111
  text-decoration-line: underline;
112
112
  text-decoration-color: var(--color-text-link-decoration-hover-kui2t9, currentColor);
113
113
  }
114
- .awsui_menu-item_93a1u_3ap91_58.awsui_link-style_93a1u_3ap91_75.awsui_current-breadcrumb_93a1u_3ap91_112:not(#\9) {
114
+ .awsui_menu-item_93a1u_d5fl3_58.awsui_link-style_93a1u_d5fl3_75.awsui_current-breadcrumb_93a1u_d5fl3_112:not(#\9) {
115
115
  font-weight: var(--font-weight-button-2p3grf, 700);
116
116
  -webkit-font-smoothing: var(--font-smoothing-webkit-dpz0hr, antialiased);
117
117
  -moz-osx-font-smoothing: var(--font-smoothing-moz-osx-kjlydy, grayscale);
@@ -119,63 +119,63 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
119
119
  font-weight: var(--font-weight-bold-xpar9m, 700);
120
120
  text-decoration: none;
121
121
  }
122
- .awsui_menu-item_93a1u_3ap91_58.awsui_link-style_93a1u_3ap91_75.awsui_link-style-highlighted_93a1u_3ap91_120:not(#\9) {
122
+ .awsui_menu-item_93a1u_d5fl3_58.awsui_link-style_93a1u_d5fl3_75.awsui_link-style-highlighted_93a1u_d5fl3_120:not(#\9) {
123
123
  color: var(--color-text-link-hover-br6snu, #002b66);
124
124
  }
125
- .awsui_menu-item_93a1u_3ap91_58:not(#\9):focus {
125
+ .awsui_menu-item_93a1u_d5fl3_58:not(#\9):focus {
126
126
  outline: none;
127
127
  }
128
- .awsui_has-category-header_93a1u_3ap91_126 > .awsui_menu-item_93a1u_3ap91_58:not(#\9), .awsui_has-category-header_93a1u_3ap91_126 > .awsui_item-tooltip-wrapper_93a1u_3ap91_126 > .awsui_menu-item_93a1u_3ap91_58:not(#\9), .awsui_has-category-header_93a1u_3ap91_126:not(#\9):not(.awsui_has-checkmark_93a1u_3ap91_126) > span > .awsui_menu-item_93a1u_3ap91_58 {
129
- padding-inline-start: calc(var(--space-xs-ymlm0b, 8px) + var(--space-option-padding-horizontal-4taa4b, 20px));
128
+ .awsui_has-category-header_93a1u_d5fl3_126 > .awsui_menu-item_93a1u_d5fl3_58:not(#\9), .awsui_has-category-header_93a1u_d5fl3_126 > .awsui_item-tooltip-wrapper_93a1u_d5fl3_126 > .awsui_menu-item_93a1u_d5fl3_58:not(#\9), .awsui_has-category-header_93a1u_d5fl3_126:not(#\9):not(.awsui_has-checkmark_93a1u_d5fl3_126) > span > .awsui_menu-item_93a1u_d5fl3_58 {
129
+ padding-inline-start: calc(var(--space-xs-m9b7jf, 8px) + var(--space-option-padding-horizontal-5om7we, 20px));
130
130
  }
131
- .awsui_has-category-header_93a1u_3ap91_126 > .awsui_menu-item_93a1u_3ap91_58.awsui_no-content-styling_93a1u_3ap91_21:not(#\9), .awsui_has-category-header_93a1u_3ap91_126 > .awsui_item-tooltip-wrapper_93a1u_3ap91_126 > .awsui_menu-item_93a1u_3ap91_58.awsui_no-content-styling_93a1u_3ap91_21:not(#\9), .awsui_has-category-header_93a1u_3ap91_126:not(#\9):not(.awsui_has-checkmark_93a1u_3ap91_126) > span > .awsui_menu-item_93a1u_3ap91_58.awsui_no-content-styling_93a1u_3ap91_21 {
131
+ .awsui_has-category-header_93a1u_d5fl3_126 > .awsui_menu-item_93a1u_d5fl3_58.awsui_no-content-styling_93a1u_d5fl3_21:not(#\9), .awsui_has-category-header_93a1u_d5fl3_126 > .awsui_item-tooltip-wrapper_93a1u_d5fl3_126 > .awsui_menu-item_93a1u_d5fl3_58.awsui_no-content-styling_93a1u_d5fl3_21:not(#\9), .awsui_has-category-header_93a1u_d5fl3_126:not(#\9):not(.awsui_has-checkmark_93a1u_d5fl3_126) > span > .awsui_menu-item_93a1u_d5fl3_58.awsui_no-content-styling_93a1u_d5fl3_21 {
132
132
  padding-inline-start: 0;
133
133
  }
134
134
 
135
- .awsui_icon_93a1u_3ap91_133:not(#\9) {
136
- padding-inline-end: var(--space-xxs-hwfkai, 4px);
135
+ .awsui_icon_93a1u_d5fl3_133:not(#\9) {
136
+ padding-inline-end: var(--space-xxs-3o1yoq, 4px);
137
137
  flex-shrink: 0;
138
138
  }
139
- .awsui_icon_93a1u_3ap91_133.awsui_checkmark_93a1u_3ap91_137:not(#\9) {
139
+ .awsui_icon_93a1u_d5fl3_133.awsui_checkmark_93a1u_d5fl3_137:not(#\9) {
140
140
  color: var(--color-item-selected-rz6ktw, #006ce0);
141
141
  }
142
- .awsui_icon_93a1u_3ap91_133.awsui_disabled_93a1u_3ap91_26:not(#\9) {
142
+ .awsui_icon_93a1u_d5fl3_133.awsui_disabled_93a1u_d5fl3_26:not(#\9) {
143
143
  color: var(--color-text-interactive-disabled-bhh1zo, #b4b4bb);
144
144
  }
145
145
 
146
- .awsui_external-icon_93a1u_3ap91_144:not(#\9) {
147
- margin-inline-start: var(--space-xxs-hwfkai, 4px);
146
+ .awsui_external-icon_93a1u_d5fl3_144:not(#\9) {
147
+ margin-inline-start: var(--space-xxs-3o1yoq, 4px);
148
148
  }
149
149
 
150
- .awsui_content-wrapper_93a1u_3ap91_148:not(#\9) {
150
+ .awsui_content-wrapper_93a1u_d5fl3_148:not(#\9) {
151
151
  flex: 1;
152
152
  display: flex;
153
153
  flex-direction: column;
154
154
  }
155
155
 
156
- .awsui_main-row_93a1u_3ap91_154:not(#\9) {
156
+ .awsui_main-row_93a1u_d5fl3_154:not(#\9) {
157
157
  display: flex;
158
158
  justify-content: space-between;
159
159
  align-items: center;
160
- gap: var(--space-s-tvghoh, 12px);
160
+ gap: var(--space-s-kll7oj, 12px);
161
161
  }
162
162
 
163
- .awsui_label-tag_93a1u_3ap91_161:not(#\9) {
163
+ .awsui_label-tag_93a1u_d5fl3_161:not(#\9) {
164
164
  color: var(--color-text-body-default-gtm97i, #0f141a);
165
165
  }
166
- .awsui_label-tag_93a1u_3ap91_161.awsui_disabled_93a1u_3ap91_26:not(#\9) {
166
+ .awsui_label-tag_93a1u_d5fl3_161.awsui_disabled_93a1u_d5fl3_26:not(#\9) {
167
167
  color: var(--color-text-interactive-disabled-bhh1zo, #b4b4bb);
168
168
  }
169
169
 
170
- .awsui_secondary-text_93a1u_3ap91_168:not(#\9) {
170
+ .awsui_secondary-text_93a1u_d5fl3_168:not(#\9) {
171
171
  font-size: var(--font-size-body-s-89y7qg, 12px);
172
172
  line-height: var(--line-height-body-s-gako33, 16px);
173
173
  letter-spacing: var(--letter-spacing-body-s-dzcybc, 0.005em);
174
174
  color: var(--color-text-dropdown-item-secondary-77b2z6, #656871);
175
175
  }
176
- .awsui_secondary-text_93a1u_3ap91_168.awsui_highlighted_93a1u_3ap91_36:not(#\9) {
176
+ .awsui_secondary-text_93a1u_d5fl3_168.awsui_highlighted_93a1u_d5fl3_36:not(#\9) {
177
177
  color: var(--color-text-dropdown-item-highlighted-q6vxih, #0f141a);
178
178
  }
179
- .awsui_secondary-text_93a1u_3ap91_168.awsui_disabled_93a1u_3ap91_26:not(#\9) {
179
+ .awsui_secondary-text_93a1u_d5fl3_168.awsui_disabled_93a1u_d5fl3_26:not(#\9) {
180
180
  color: var(--color-text-interactive-disabled-bhh1zo, #b4b4bb);
181
181
  }