@cloudscape-design/components 3.0.220 → 3.0.222

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 (1000) hide show
  1. package/alert/index.js +4 -4
  2. package/alert/index.js.map +1 -1
  3. package/alert/internal.js +14 -15
  4. package/alert/internal.js.map +1 -1
  5. package/annotation-context/annotation/annotation-icon.js +1 -2
  6. package/annotation-context/annotation/annotation-icon.js.map +1 -1
  7. package/annotation-context/annotation/annotation-popover.js +6 -7
  8. package/annotation-context/annotation/annotation-popover.js.map +1 -1
  9. package/annotation-context/annotation/annotation-trigger.js +4 -6
  10. package/annotation-context/annotation/annotation-trigger.js.map +1 -1
  11. package/annotation-context/annotation/closed-annotation.js +4 -5
  12. package/annotation-context/annotation/closed-annotation.js.map +1 -1
  13. package/annotation-context/annotation/open-annotation.js +2 -3
  14. package/annotation-context/annotation/open-annotation.js.map +1 -1
  15. package/annotation-context/context.js +7 -7
  16. package/annotation-context/context.js.map +1 -1
  17. package/annotation-context/index.js +62 -69
  18. package/annotation-context/index.js.map +1 -1
  19. package/app-layout/content-wrapper/index.js +2 -3
  20. package/app-layout/content-wrapper/index.js.map +1 -1
  21. package/app-layout/defaults.js +13 -14
  22. package/app-layout/defaults.js.map +1 -1
  23. package/app-layout/drawer.js +16 -18
  24. package/app-layout/drawer.js.map +1 -1
  25. package/app-layout/index.js +111 -113
  26. package/app-layout/index.js.map +1 -1
  27. package/app-layout/mobile-toolbar/index.js +7 -9
  28. package/app-layout/mobile-toolbar/index.js.map +1 -1
  29. package/app-layout/navigation-panel.js +5 -8
  30. package/app-layout/navigation-panel.js.map +1 -1
  31. package/app-layout/notifications/index.js +2 -2
  32. package/app-layout/notifications/index.js.map +1 -1
  33. package/app-layout/toggles/index.js +14 -22
  34. package/app-layout/toggles/index.js.map +1 -1
  35. package/app-layout/tools-and-split-panel.js +6 -9
  36. package/app-layout/tools-and-split-panel.js.map +1 -1
  37. package/app-layout/utils/use-content-height.js +14 -15
  38. package/app-layout/utils/use-content-height.js.map +1 -1
  39. package/app-layout/utils/use-content-width.js +8 -8
  40. package/app-layout/utils/use-content-width.js.map +1 -1
  41. package/app-layout/utils/use-focus-control.js +7 -8
  42. package/app-layout/utils/use-focus-control.js.map +1 -1
  43. package/app-layout/utils/use-observed-element.js +3 -3
  44. package/app-layout/utils/use-observed-element.js.map +1 -1
  45. package/app-layout/utils/use-window-width.js +4 -4
  46. package/app-layout/utils/use-window-width.js.map +1 -1
  47. package/app-layout/visual-refresh/app-bar.js +19 -20
  48. package/app-layout/visual-refresh/app-bar.js.map +1 -1
  49. package/app-layout/visual-refresh/background.js +9 -10
  50. package/app-layout/visual-refresh/background.js.map +1 -1
  51. package/app-layout/visual-refresh/context.js +101 -59
  52. package/app-layout/visual-refresh/context.js.map +1 -1
  53. package/app-layout/visual-refresh/header.js +6 -7
  54. package/app-layout/visual-refresh/header.js.map +1 -1
  55. package/app-layout/visual-refresh/index.js +3 -4
  56. package/app-layout/visual-refresh/index.js.map +1 -1
  57. package/app-layout/visual-refresh/layout.js +18 -21
  58. package/app-layout/visual-refresh/layout.js.map +1 -1
  59. package/app-layout/visual-refresh/main.js +17 -18
  60. package/app-layout/visual-refresh/main.js.map +1 -1
  61. package/app-layout/visual-refresh/navigation.js +22 -24
  62. package/app-layout/visual-refresh/navigation.js.map +1 -1
  63. package/app-layout/visual-refresh/notifications.js +6 -7
  64. package/app-layout/visual-refresh/notifications.js.map +1 -1
  65. package/app-layout/visual-refresh/split-panel.js +36 -43
  66. package/app-layout/visual-refresh/split-panel.js.map +1 -1
  67. package/app-layout/visual-refresh/tools.js +32 -34
  68. package/app-layout/visual-refresh/tools.js.map +1 -1
  69. package/app-layout/visual-refresh/trigger-button.js +5 -8
  70. package/app-layout/visual-refresh/trigger-button.js.map +1 -1
  71. package/area-chart/chart-container.js +18 -19
  72. package/area-chart/chart-container.js.map +1 -1
  73. package/area-chart/elements/area-chart-filter.js +7 -8
  74. package/area-chart/elements/area-chart-filter.js.map +1 -1
  75. package/area-chart/elements/area-chart-legend.js +6 -9
  76. package/area-chart/elements/area-chart-legend.js.map +1 -1
  77. package/area-chart/elements/area-series.js +12 -13
  78. package/area-chart/elements/area-series.js.map +1 -1
  79. package/area-chart/elements/chart-popover.js +4 -6
  80. package/area-chart/elements/chart-popover.js.map +1 -1
  81. package/area-chart/elements/data-series.js +14 -17
  82. package/area-chart/elements/data-series.js.map +1 -1
  83. package/area-chart/elements/highlighted-point.js +6 -7
  84. package/area-chart/elements/highlighted-point.js.map +1 -1
  85. package/area-chart/elements/threshold-series.js +5 -7
  86. package/area-chart/elements/threshold-series.js.map +1 -1
  87. package/area-chart/elements/use-highlight-details.js +28 -30
  88. package/area-chart/elements/use-highlight-details.js.map +1 -1
  89. package/area-chart/elements/vertical-marker.js +6 -7
  90. package/area-chart/elements/vertical-marker.js.map +1 -1
  91. package/area-chart/index.js +4 -4
  92. package/area-chart/index.js.map +1 -1
  93. package/area-chart/internal.js +40 -41
  94. package/area-chart/internal.js.map +1 -1
  95. package/area-chart/model/async-store.js +23 -30
  96. package/area-chart/model/async-store.js.map +1 -1
  97. package/area-chart/model/compute-chart-props.js +11 -12
  98. package/area-chart/model/compute-chart-props.js.map +1 -1
  99. package/area-chart/model/create-series-decorator.js +11 -13
  100. package/area-chart/model/create-series-decorator.js.map +1 -1
  101. package/area-chart/model/interactions-store.js +47 -54
  102. package/area-chart/model/interactions-store.js.map +1 -1
  103. package/area-chart/model/use-chart-model.js +85 -89
  104. package/area-chart/model/use-chart-model.js.map +1 -1
  105. package/area-chart/model/use-filter-props.js +6 -6
  106. package/area-chart/model/use-filter-props.js.map +1 -1
  107. package/area-chart/model/use-highlight-props.js +6 -6
  108. package/area-chart/model/use-highlight-props.js.map +1 -1
  109. package/area-chart/model/utils.js +46 -59
  110. package/area-chart/model/utils.js.map +1 -1
  111. package/attribute-editor/additional-info.js +2 -5
  112. package/attribute-editor/additional-info.js.map +1 -1
  113. package/attribute-editor/index.js +5 -5
  114. package/attribute-editor/index.js.map +1 -1
  115. package/attribute-editor/internal.js +20 -20
  116. package/attribute-editor/internal.js.map +1 -1
  117. package/attribute-editor/row.js +17 -25
  118. package/attribute-editor/row.js.map +1 -1
  119. package/autosuggest/autosuggest-option.js +12 -12
  120. package/autosuggest/autosuggest-option.js.map +1 -1
  121. package/autosuggest/index.js +6 -6
  122. package/autosuggest/index.js.map +1 -1
  123. package/autosuggest/internal.js +39 -39
  124. package/autosuggest/internal.js.map +1 -1
  125. package/autosuggest/load-more-controller.js +10 -14
  126. package/autosuggest/load-more-controller.js.map +1 -1
  127. package/autosuggest/options-controller.js +31 -32
  128. package/autosuggest/options-controller.js.map +1 -1
  129. package/autosuggest/options-list.js +12 -13
  130. package/autosuggest/options-list.js.map +1 -1
  131. package/autosuggest/plain-list.js +15 -17
  132. package/autosuggest/plain-list.js.map +1 -1
  133. package/autosuggest/utils/utils.js +12 -12
  134. package/autosuggest/utils/utils.js.map +1 -1
  135. package/autosuggest/virtual-list.js +14 -16
  136. package/autosuggest/virtual-list.js.map +1 -1
  137. package/badge/index.js +6 -6
  138. package/badge/index.js.map +1 -1
  139. package/bar-chart/index.js +6 -6
  140. package/bar-chart/index.js.map +1 -1
  141. package/box/index.js +4 -4
  142. package/box/index.js.map +1 -1
  143. package/box/internal.js +12 -12
  144. package/box/internal.js.map +1 -1
  145. package/breadcrumb-group/index.js +4 -4
  146. package/breadcrumb-group/index.js.map +1 -1
  147. package/breadcrumb-group/internal.js +24 -25
  148. package/breadcrumb-group/internal.js.map +1 -1
  149. package/breadcrumb-group/item/item.js +32 -34
  150. package/breadcrumb-group/item/item.js.map +1 -1
  151. package/button/icon-helper.js +6 -6
  152. package/button/icon-helper.js.map +1 -1
  153. package/button/index.js +6 -6
  154. package/button/index.js.map +1 -1
  155. package/button/internal.js +32 -33
  156. package/button/internal.js.map +1 -1
  157. package/button-dropdown/category-elements/category-element.js +3 -5
  158. package/button-dropdown/category-elements/category-element.js.map +1 -1
  159. package/button-dropdown/category-elements/expandable-category-element.js +23 -26
  160. package/button-dropdown/category-elements/expandable-category-element.js.map +1 -1
  161. package/button-dropdown/category-elements/mobile-expandable-category-element.js +27 -30
  162. package/button-dropdown/category-elements/mobile-expandable-category-element.js.map +1 -1
  163. package/button-dropdown/index.js +6 -6
  164. package/button-dropdown/index.js.map +1 -1
  165. package/button-dropdown/internal.js +28 -29
  166. package/button-dropdown/internal.js.map +1 -1
  167. package/button-dropdown/item-element/index.js +30 -36
  168. package/button-dropdown/item-element/index.js.map +1 -1
  169. package/button-dropdown/items-list.js +3 -4
  170. package/button-dropdown/items-list.js.map +1 -1
  171. package/button-dropdown/mobile-expandable-group/mobile-expandable-group.js +2 -4
  172. package/button-dropdown/mobile-expandable-group/mobile-expandable-group.js.map +1 -1
  173. package/button-dropdown/tooltip.js +22 -24
  174. package/button-dropdown/tooltip.js.map +1 -1
  175. package/button-dropdown/utils/create-items-tree.js +21 -23
  176. package/button-dropdown/utils/create-items-tree.js.map +1 -1
  177. package/button-dropdown/utils/menu-item.js +6 -9
  178. package/button-dropdown/utils/menu-item.js.map +1 -1
  179. package/button-dropdown/utils/move-highlight.js +3 -4
  180. package/button-dropdown/utils/move-highlight.js.map +1 -1
  181. package/button-dropdown/utils/use-button-dropdown.js +31 -33
  182. package/button-dropdown/utils/use-button-dropdown.js.map +1 -1
  183. package/button-dropdown/utils/use-hidden-description.js +3 -3
  184. package/button-dropdown/utils/use-hidden-description.js.map +1 -1
  185. package/button-dropdown/utils/use-highlighted-menu.js +40 -42
  186. package/button-dropdown/utils/use-highlighted-menu.js.map +1 -1
  187. package/button-dropdown/utils/utils.js +5 -9
  188. package/button-dropdown/utils/utils.js.map +1 -1
  189. package/calendar/grid/index.js +25 -28
  190. package/calendar/grid/index.js.map +1 -1
  191. package/calendar/header/header-button.js +4 -6
  192. package/calendar/header/header-button.js.map +1 -1
  193. package/calendar/header/index.js +1 -2
  194. package/calendar/header/index.js.map +1 -1
  195. package/calendar/index.js +4 -4
  196. package/calendar/index.js.map +1 -1
  197. package/calendar/internal.js +27 -27
  198. package/calendar/internal.js.map +1 -1
  199. package/calendar/utils/intl.js +12 -13
  200. package/calendar/utils/intl.js.map +1 -1
  201. package/calendar/utils/navigation.js +3 -3
  202. package/calendar/utils/navigation.js.map +1 -1
  203. package/cards/cards-layout-helper.js +12 -12
  204. package/cards/cards-layout-helper.js.map +1 -1
  205. package/cards/index.js +53 -63
  206. package/cards/index.js.map +1 -1
  207. package/checkbox/index.js +4 -4
  208. package/checkbox/index.js.map +1 -1
  209. package/checkbox/internal.d.ts +1 -0
  210. package/checkbox/internal.d.ts.map +1 -1
  211. package/checkbox/internal.js +9 -9
  212. package/checkbox/internal.js.map +1 -1
  213. package/code-editor/ace-modes.js +1 -1
  214. package/code-editor/ace-modes.js.map +1 -1
  215. package/code-editor/ace-themes.js +2 -2
  216. package/code-editor/ace-themes.js.map +1 -1
  217. package/code-editor/error-screen.js +3 -4
  218. package/code-editor/error-screen.js.map +1 -1
  219. package/code-editor/index.js +61 -65
  220. package/code-editor/index.js.map +1 -1
  221. package/code-editor/listeners.js +5 -5
  222. package/code-editor/listeners.js.map +1 -1
  223. package/code-editor/loading-screen.js +2 -2
  224. package/code-editor/loading-screen.js.map +1 -1
  225. package/code-editor/pane.js +21 -25
  226. package/code-editor/pane.js.map +1 -1
  227. package/code-editor/preferences-modal.js +12 -13
  228. package/code-editor/preferences-modal.js.map +1 -1
  229. package/code-editor/resizable-box/index.js +14 -15
  230. package/code-editor/resizable-box/index.js.map +1 -1
  231. package/code-editor/setup-editor.js +20 -20
  232. package/code-editor/setup-editor.js.map +1 -1
  233. package/code-editor/status-bar.js +19 -22
  234. package/code-editor/status-bar.js.map +1 -1
  235. package/code-editor/tab-button.js +7 -10
  236. package/code-editor/tab-button.js.map +1 -1
  237. package/code-editor/util.js +6 -6
  238. package/code-editor/util.js.map +1 -1
  239. package/collection-preferences/index.js +21 -23
  240. package/collection-preferences/index.js.map +1 -1
  241. package/collection-preferences/utils.js +25 -57
  242. package/collection-preferences/utils.js.map +1 -1
  243. package/collection-preferences/visible-content.js +23 -27
  244. package/collection-preferences/visible-content.js.map +1 -1
  245. package/column-layout/index.js +6 -6
  246. package/column-layout/index.js.map +1 -1
  247. package/column-layout/internal.js +20 -21
  248. package/column-layout/internal.js.map +1 -1
  249. package/column-layout/util.js +2 -2
  250. package/column-layout/util.js.map +1 -1
  251. package/container/index.js +5 -5
  252. package/container/index.js.map +1 -1
  253. package/container/internal.js +30 -31
  254. package/container/internal.js.map +1 -1
  255. package/container/use-sticky-header.js +25 -25
  256. package/container/use-sticky-header.js.map +1 -1
  257. package/content-layout/index.js +2 -3
  258. package/content-layout/index.js.map +1 -1
  259. package/content-layout/internal.js +15 -16
  260. package/content-layout/internal.js.map +1 -1
  261. package/date-input/index.js +3 -4
  262. package/date-input/index.js.map +1 -1
  263. package/date-input/internal.js +8 -8
  264. package/date-input/internal.js.map +1 -1
  265. package/date-picker/index.js +28 -28
  266. package/date-picker/index.js.map +1 -1
  267. package/date-range-picker/calendar/grids/grid.js +54 -57
  268. package/date-range-picker/calendar/grids/grid.js.map +1 -1
  269. package/date-range-picker/calendar/grids/index.js +27 -28
  270. package/date-range-picker/calendar/grids/index.js.map +1 -1
  271. package/date-range-picker/calendar/header/header-button.js +4 -6
  272. package/date-range-picker/calendar/header/header-button.js.map +1 -1
  273. package/date-range-picker/calendar/header/index.js +6 -7
  274. package/date-range-picker/calendar/header/index.js.map +1 -1
  275. package/date-range-picker/calendar/index.js +40 -45
  276. package/date-range-picker/calendar/index.js.map +1 -1
  277. package/date-range-picker/calendar/range-inputs.js +5 -6
  278. package/date-range-picker/calendar/range-inputs.js.map +1 -1
  279. package/date-range-picker/calendar/utils.js +2 -2
  280. package/date-range-picker/calendar/utils.js.map +1 -1
  281. package/date-range-picker/dropdown.js +29 -34
  282. package/date-range-picker/dropdown.js.map +1 -1
  283. package/date-range-picker/index.js +40 -43
  284. package/date-range-picker/index.js.map +1 -1
  285. package/date-range-picker/mode-switcher.js +2 -3
  286. package/date-range-picker/mode-switcher.js.map +1 -1
  287. package/date-range-picker/relative-range/index.js +36 -40
  288. package/date-range-picker/relative-range/index.js.map +1 -1
  289. package/date-range-picker/time-offset.js +5 -5
  290. package/date-range-picker/time-offset.js.map +1 -1
  291. package/date-range-picker/utils.js +4 -5
  292. package/date-range-picker/utils.js.map +1 -1
  293. package/expandable-section/expandable-section-container.js +5 -5
  294. package/expandable-section/expandable-section-container.js.map +1 -1
  295. package/expandable-section/expandable-section-header.js +18 -23
  296. package/expandable-section/expandable-section-header.js.map +1 -1
  297. package/expandable-section/index.js +4 -4
  298. package/expandable-section/index.js.map +1 -1
  299. package/expandable-section/internal.js +22 -22
  300. package/expandable-section/internal.js.map +1 -1
  301. package/flashbar/collapsible-flashbar.js +103 -118
  302. package/flashbar/collapsible-flashbar.js.map +1 -1
  303. package/flashbar/common.js +26 -35
  304. package/flashbar/common.js.map +1 -1
  305. package/flashbar/constant.js +1 -1
  306. package/flashbar/constant.js.map +1 -1
  307. package/flashbar/flash.js +23 -26
  308. package/flashbar/flash.js.map +1 -1
  309. package/flashbar/index.js +3 -4
  310. package/flashbar/index.js.map +1 -1
  311. package/flashbar/internal/analytics.js +12 -12
  312. package/flashbar/internal/analytics.js.map +1 -1
  313. package/flashbar/non-collapsible-flashbar.js +10 -10
  314. package/flashbar/non-collapsible-flashbar.js.map +1 -1
  315. package/flashbar/utils.js +25 -27
  316. package/flashbar/utils.js.map +1 -1
  317. package/form/index.js +4 -4
  318. package/form/index.js.map +1 -1
  319. package/form/internal.js +5 -6
  320. package/form/internal.js.map +1 -1
  321. package/form-field/index.js +4 -4
  322. package/form-field/index.js.map +1 -1
  323. package/form-field/internal.js +20 -23
  324. package/form-field/internal.js.map +1 -1
  325. package/form-field/util.js +9 -10
  326. package/form-field/util.js.map +1 -1
  327. package/grid/index.js +6 -6
  328. package/grid/index.js.map +1 -1
  329. package/grid/internal.js +14 -15
  330. package/grid/internal.js.map +1 -1
  331. package/header/index.js +4 -4
  332. package/header/index.js.map +1 -1
  333. package/header/internal.js +15 -15
  334. package/header/internal.js.map +1 -1
  335. package/help-panel/index.js +7 -7
  336. package/help-panel/index.js.map +1 -1
  337. package/hotspot/index.js +12 -12
  338. package/hotspot/index.js.map +1 -1
  339. package/icon/icons.js +1 -1
  340. package/icon/index.js +4 -4
  341. package/icon/index.js.map +1 -1
  342. package/icon/internal.js +18 -18
  343. package/icon/internal.js.map +1 -1
  344. package/input/index.js +36 -17
  345. package/input/index.js.map +1 -1
  346. package/input/internal.js +30 -25
  347. package/input/internal.js.map +1 -1
  348. package/input/utils.js +4 -5
  349. package/input/utils.js.map +1 -1
  350. package/internal/animate.js +27 -32
  351. package/internal/animate.js.map +1 -1
  352. package/internal/base-component/index.js +2 -2
  353. package/internal/base-component/index.js.map +1 -1
  354. package/internal/breakpoints.js +7 -12
  355. package/internal/breakpoints.js.map +1 -1
  356. package/internal/components/abstract-switch/index.d.ts +2 -1
  357. package/internal/components/abstract-switch/index.d.ts.map +1 -1
  358. package/internal/components/abstract-switch/index.js +19 -19
  359. package/internal/components/abstract-switch/index.js.map +1 -1
  360. package/internal/components/abstract-switch/styles.css.js +13 -12
  361. package/internal/components/abstract-switch/styles.scoped.css +21 -21
  362. package/internal/components/abstract-switch/styles.selectors.js +13 -12
  363. package/internal/components/autosuggest-input/index.js +38 -38
  364. package/internal/components/autosuggest-input/index.js.map +1 -1
  365. package/internal/components/button-trigger/index.js +7 -7
  366. package/internal/components/button-trigger/index.js.map +1 -1
  367. package/internal/components/cartesian-chart/axis-label.js +1 -2
  368. package/internal/components/cartesian-chart/axis-label.js.map +1 -1
  369. package/internal/components/cartesian-chart/bottom-labels.js +20 -26
  370. package/internal/components/cartesian-chart/bottom-labels.js.map +1 -1
  371. package/internal/components/cartesian-chart/constants.js +5 -5
  372. package/internal/components/cartesian-chart/constants.js.map +1 -1
  373. package/internal/components/cartesian-chart/emphasized-baseline.js +4 -5
  374. package/internal/components/cartesian-chart/emphasized-baseline.js.map +1 -1
  375. package/internal/components/cartesian-chart/highlighted-point.js +1 -2
  376. package/internal/components/cartesian-chart/highlighted-point.js.map +1 -1
  377. package/internal/components/cartesian-chart/label-utils.js +20 -24
  378. package/internal/components/cartesian-chart/label-utils.js.map +1 -1
  379. package/internal/components/cartesian-chart/labels-measure.js +6 -7
  380. package/internal/components/cartesian-chart/labels-measure.js.map +1 -1
  381. package/internal/components/cartesian-chart/left-labels.js +13 -17
  382. package/internal/components/cartesian-chart/left-labels.js.map +1 -1
  383. package/internal/components/cartesian-chart/scales.js +21 -26
  384. package/internal/components/cartesian-chart/scales.js.map +1 -1
  385. package/internal/components/cartesian-chart/ticks.js +9 -10
  386. package/internal/components/cartesian-chart/ticks.js.map +1 -1
  387. package/internal/components/cartesian-chart/vertical-grid-lines.js +3 -4
  388. package/internal/components/cartesian-chart/vertical-grid-lines.js.map +1 -1
  389. package/internal/components/cartesian-chart/vertical-marker.js +3 -4
  390. package/internal/components/cartesian-chart/vertical-marker.js.map +1 -1
  391. package/internal/components/chart-filter/index.js +13 -14
  392. package/internal/components/chart-filter/index.js.map +1 -1
  393. package/internal/components/chart-legend/index.js +26 -29
  394. package/internal/components/chart-legend/index.js.map +1 -1
  395. package/internal/components/chart-plot/application-controller.js +21 -25
  396. package/internal/components/chart-plot/application-controller.js.map +1 -1
  397. package/internal/components/chart-plot/focus-outline.js +7 -8
  398. package/internal/components/chart-plot/focus-outline.js.map +1 -1
  399. package/internal/components/chart-plot/index.js +33 -34
  400. package/internal/components/chart-plot/index.js.map +1 -1
  401. package/internal/components/chart-popover/index.js +11 -12
  402. package/internal/components/chart-popover/index.js.map +1 -1
  403. package/internal/components/chart-series-details/index.js +13 -17
  404. package/internal/components/chart-series-details/index.js.map +1 -1
  405. package/internal/components/chart-series-marker/index.js +2 -3
  406. package/internal/components/chart-series-marker/index.js.map +1 -1
  407. package/internal/components/chart-status-container/index.js +8 -10
  408. package/internal/components/chart-status-container/index.js.map +1 -1
  409. package/internal/components/checkbox-icon/index.js +18 -19
  410. package/internal/components/checkbox-icon/index.js.map +1 -1
  411. package/internal/components/dark-ribbon/index.js +13 -14
  412. package/internal/components/dark-ribbon/index.js.map +1 -1
  413. package/internal/components/dropdown/context.js +4 -5
  414. package/internal/components/dropdown/context.js.map +1 -1
  415. package/internal/components/dropdown/dropdown-fit-handler.js +74 -81
  416. package/internal/components/dropdown/dropdown-fit-handler.js.map +1 -1
  417. package/internal/components/dropdown/index.js +57 -65
  418. package/internal/components/dropdown/index.js.map +1 -1
  419. package/internal/components/dropdown-footer/index.js +2 -6
  420. package/internal/components/dropdown-footer/index.js.map +1 -1
  421. package/internal/components/dropdown-status/index.js +5 -7
  422. package/internal/components/dropdown-status/index.js.map +1 -1
  423. package/internal/components/filtering-token/index.js +4 -6
  424. package/internal/components/filtering-token/index.js.map +1 -1
  425. package/internal/components/focus-lock/index.js +10 -11
  426. package/internal/components/focus-lock/index.js.map +1 -1
  427. package/internal/components/focus-lock/utils.js +4 -4
  428. package/internal/components/focus-lock/utils.js.map +1 -1
  429. package/internal/components/live-region/index.js +10 -10
  430. package/internal/components/live-region/index.js.map +1 -1
  431. package/internal/components/masked-input/index.js +22 -24
  432. package/internal/components/masked-input/index.js.map +1 -1
  433. package/internal/components/masked-input/keyboard-handler.js +18 -18
  434. package/internal/components/masked-input/keyboard-handler.js.map +1 -1
  435. package/internal/components/masked-input/use-mask.js +24 -28
  436. package/internal/components/masked-input/use-mask.js.map +1 -1
  437. package/internal/components/masked-input/utils/keys.js +4 -6
  438. package/internal/components/masked-input/utils/keys.js.map +1 -1
  439. package/internal/components/masked-input/utils/mask-format.js +103 -113
  440. package/internal/components/masked-input/utils/mask-format.js.map +1 -1
  441. package/internal/components/masked-input/utils/strings.js +1 -4
  442. package/internal/components/masked-input/utils/strings.js.map +1 -1
  443. package/internal/components/menu-dropdown/index.js +10 -12
  444. package/internal/components/menu-dropdown/index.js.map +1 -1
  445. package/internal/components/option/highlight-match.js +14 -18
  446. package/internal/components/option/highlight-match.js.map +1 -1
  447. package/internal/components/option/index.js +13 -13
  448. package/internal/components/option/index.js.map +1 -1
  449. package/internal/components/option/option-announcer.js +1 -1
  450. package/internal/components/option/option-announcer.js.map +1 -1
  451. package/internal/components/option/option-parts.js +28 -45
  452. package/internal/components/option/option-parts.js.map +1 -1
  453. package/internal/components/option/utils/filter-options.js +16 -19
  454. package/internal/components/option/utils/filter-options.js.map +1 -1
  455. package/internal/components/option/utils/flatten-options.js +15 -15
  456. package/internal/components/option/utils/flatten-options.js.map +1 -1
  457. package/internal/components/option/utils/prepare-options.js +3 -3
  458. package/internal/components/option/utils/prepare-options.js.map +1 -1
  459. package/internal/components/options-list/index.js +19 -20
  460. package/internal/components/options-list/index.js.map +1 -1
  461. package/internal/components/options-list/utils/test-indexes.js +11 -11
  462. package/internal/components/options-list/utils/test-indexes.js.map +1 -1
  463. package/internal/components/options-list/utils/use-highlight-option.js +17 -21
  464. package/internal/components/options-list/utils/use-highlight-option.js.map +1 -1
  465. package/internal/components/options-list/utils/use-ids.js +2 -2
  466. package/internal/components/options-list/utils/use-ids.js.map +1 -1
  467. package/internal/components/options-list/utils/use-keyboard.js +6 -8
  468. package/internal/components/options-list/utils/use-keyboard.js.map +1 -1
  469. package/internal/components/options-list/utils/use-open-state.js +6 -7
  470. package/internal/components/options-list/utils/use-open-state.js.map +1 -1
  471. package/internal/components/portal/index.js +5 -6
  472. package/internal/components/portal/index.js.map +1 -1
  473. package/internal/components/screenreader-only/index.js +1 -2
  474. package/internal/components/screenreader-only/index.js.map +1 -1
  475. package/internal/components/selectable-item/index.js +25 -26
  476. package/internal/components/selectable-item/index.js.map +1 -1
  477. package/internal/components/tab-trap/index.js +1 -2
  478. package/internal/components/tab-trap/index.js.map +1 -1
  479. package/internal/components/transition/index.js +16 -16
  480. package/internal/components/transition/index.js.map +1 -1
  481. package/internal/components/visual-context/index.js +6 -7
  482. package/internal/components/visual-context/index.js.map +1 -1
  483. package/internal/context/app-layout-context.js +2 -2
  484. package/internal/context/app-layout-context.js.map +1 -1
  485. package/internal/context/form-field-context.js +4 -4
  486. package/internal/context/form-field-context.js.map +1 -1
  487. package/internal/context/split-panel-context.js +3 -3
  488. package/internal/context/split-panel-context.js.map +1 -1
  489. package/internal/debounce.js +6 -11
  490. package/internal/debounce.js.map +1 -1
  491. package/internal/environment.js +1 -1
  492. package/internal/events/index.js +12 -16
  493. package/internal/events/index.js.map +1 -1
  494. package/internal/focus-tracker.js +22 -27
  495. package/internal/focus-tracker.js.map +1 -1
  496. package/internal/generated/custom-css-properties/index.js +2 -2
  497. package/internal/generated/custom-css-properties/index.js.map +1 -1
  498. package/internal/hooks/check-controlled/index.js +1 -1
  499. package/internal/hooks/check-controlled/index.js.map +1 -1
  500. package/internal/hooks/container-queries/use-container-breakpoints.js +2 -2
  501. package/internal/hooks/container-queries/use-container-breakpoints.js.map +1 -1
  502. package/internal/hooks/container-queries/use-container-query.js +5 -6
  503. package/internal/hooks/container-queries/use-container-query.js.map +1 -1
  504. package/internal/hooks/container-queries/use-resize-observer.js +13 -13
  505. package/internal/hooks/container-queries/use-resize-observer.js.map +1 -1
  506. package/internal/hooks/focus-visible/index.js +8 -8
  507. package/internal/hooks/focus-visible/index.js.map +1 -1
  508. package/internal/hooks/forward-focus/index.js +5 -9
  509. package/internal/hooks/forward-focus/index.js.map +1 -1
  510. package/internal/hooks/forward-focus/radio-group.js +7 -7
  511. package/internal/hooks/forward-focus/radio-group.js.map +1 -1
  512. package/internal/hooks/use-base-component/component-metadata.js +5 -5
  513. package/internal/hooks/use-base-component/component-metadata.js.map +1 -1
  514. package/internal/hooks/use-base-component/index.js +1 -1
  515. package/internal/hooks/use-base-component/index.js.map +1 -1
  516. package/internal/hooks/use-controllable/index.js +16 -17
  517. package/internal/hooks/use-controllable/index.js.map +1 -1
  518. package/internal/hooks/use-date-cache/index.js +2 -2
  519. package/internal/hooks/use-date-cache/index.js.map +1 -1
  520. package/internal/hooks/use-debounce-callback/index.js +3 -7
  521. package/internal/hooks/use-debounce-callback/index.js.map +1 -1
  522. package/internal/hooks/use-dynamic-overlap/index.js +4 -4
  523. package/internal/hooks/use-dynamic-overlap/index.js.map +1 -1
  524. package/internal/hooks/use-effect-on-update.js +2 -2
  525. package/internal/hooks/use-effect-on-update.js.map +1 -1
  526. package/internal/hooks/use-focus-tracker.js +7 -8
  527. package/internal/hooks/use-focus-tracker.js.map +1 -1
  528. package/internal/hooks/use-has-rendered/index.js +6 -6
  529. package/internal/hooks/use-has-rendered/index.js.map +1 -1
  530. package/internal/hooks/use-merge-refs/index.js +5 -9
  531. package/internal/hooks/use-merge-refs/index.js.map +1 -1
  532. package/internal/hooks/use-mobile/index.js +7 -7
  533. package/internal/hooks/use-mobile/index.js.map +1 -1
  534. package/internal/hooks/use-mouse-down-target.js +5 -5
  535. package/internal/hooks/use-mouse-down-target.js.map +1 -1
  536. package/internal/hooks/use-mutation-observer/index.js +5 -5
  537. package/internal/hooks/use-mutation-observer/index.js.map +1 -1
  538. package/internal/hooks/use-portal-mode-classes/index.js +10 -12
  539. package/internal/hooks/use-portal-mode-classes/index.js.map +1 -1
  540. package/internal/hooks/use-previous/index.js +3 -3
  541. package/internal/hooks/use-previous/index.js.map +1 -1
  542. package/internal/hooks/use-scroll-sync/index.js +8 -9
  543. package/internal/hooks/use-scroll-sync/index.js.map +1 -1
  544. package/internal/hooks/use-singleton-handler/index.js +12 -14
  545. package/internal/hooks/use-singleton-handler/index.js.map +1 -1
  546. package/internal/hooks/use-stable-event-handler/index.js +3 -10
  547. package/internal/hooks/use-stable-event-handler/index.js.map +1 -1
  548. package/internal/hooks/use-telemetry/index.js +2 -2
  549. package/internal/hooks/use-telemetry/index.js.map +1 -1
  550. package/internal/hooks/use-telemetry/telemetry.js +3 -4
  551. package/internal/hooks/use-telemetry/telemetry.js.map +1 -1
  552. package/internal/hooks/use-unique-id/index.js +3 -3
  553. package/internal/hooks/use-unique-id/index.js.map +1 -1
  554. package/internal/hooks/use-visual-mode/index.js +11 -11
  555. package/internal/hooks/use-visual-mode/index.js.map +1 -1
  556. package/internal/is-development.js +1 -1
  557. package/internal/is-development.js.map +1 -1
  558. package/internal/logging.js +2 -2
  559. package/internal/logging.js.map +1 -1
  560. package/internal/manifest.json +1 -1
  561. package/internal/metrics/log-clients.js +18 -27
  562. package/internal/metrics/log-clients.js.map +1 -1
  563. package/internal/metrics/metrics-formatters.js +11 -14
  564. package/internal/metrics/metrics-formatters.js.map +1 -1
  565. package/internal/metrics/metrics.js +27 -33
  566. package/internal/metrics/metrics.js.map +1 -1
  567. package/internal/motion.js +2 -2
  568. package/internal/motion.js.map +1 -1
  569. package/internal/styles/colors.js +1 -1
  570. package/internal/styles/colors.js.map +1 -1
  571. package/internal/utils/browser-scrollbar-size.js +5 -5
  572. package/internal/utils/browser-scrollbar-size.js.map +1 -1
  573. package/internal/utils/calculate-once.js +2 -2
  574. package/internal/utils/calculate-once.js.map +1 -1
  575. package/internal/utils/check-safe-url.js +4 -4
  576. package/internal/utils/check-safe-url.js.map +1 -1
  577. package/internal/utils/create-category-color-scale.js +6 -9
  578. package/internal/utils/create-category-color-scale.js.map +1 -1
  579. package/internal/utils/date-time/format-date-range.js +3 -3
  580. package/internal/utils/date-time/format-date-range.js.map +1 -1
  581. package/internal/utils/date-time/format-date.js +4 -4
  582. package/internal/utils/date-time/format-date.js.map +1 -1
  583. package/internal/utils/date-time/format-time.js +5 -5
  584. package/internal/utils/date-time/format-time.js.map +1 -1
  585. package/internal/utils/date-time/format-timezone-offset.js +4 -4
  586. package/internal/utils/date-time/format-timezone-offset.js.map +1 -1
  587. package/internal/utils/date-time/is-iso-date-only.js +1 -1
  588. package/internal/utils/date-time/is-iso-date-only.js.map +1 -1
  589. package/internal/utils/date-time/join-date-time.js +3 -3
  590. package/internal/utils/date-time/join-date-time.js.map +1 -1
  591. package/internal/utils/date-time/parse-date.js +5 -6
  592. package/internal/utils/date-time/parse-date.js.map +1 -1
  593. package/internal/utils/date-time/parse-timezone-offset.js +5 -5
  594. package/internal/utils/date-time/parse-timezone-offset.js.map +1 -1
  595. package/internal/utils/date-time/shift-timezone-offset.js +6 -6
  596. package/internal/utils/date-time/shift-timezone-offset.js.map +1 -1
  597. package/internal/utils/dom.js +12 -12
  598. package/internal/utils/dom.js.map +1 -1
  599. package/internal/utils/external-props.js +3 -3
  600. package/internal/utils/external-props.js.map +1 -1
  601. package/internal/utils/focus-svg-element.js +1 -1
  602. package/internal/utils/focus-svg-element.js.map +1 -1
  603. package/internal/utils/locale/merge-locales.js +1 -1
  604. package/internal/utils/locale/merge-locales.js.map +1 -1
  605. package/internal/utils/locale/normalize-locale.js +3 -3
  606. package/internal/utils/locale/normalize-locale.js.map +1 -1
  607. package/internal/utils/promises.js +7 -11
  608. package/internal/utils/promises.js.map +1 -1
  609. package/internal/utils/scrollable-containers.js +14 -18
  610. package/internal/utils/scrollable-containers.js.map +1 -1
  611. package/internal/utils/strings/join-strings.js +1 -5
  612. package/internal/utils/strings/join-strings.js.map +1 -1
  613. package/internal/utils/strings/pad-left-zeros.js +1 -1
  614. package/internal/utils/strings/pad-left-zeros.js.map +1 -1
  615. package/internal/utils/throttle.js +10 -15
  616. package/internal/utils/throttle.js.map +1 -1
  617. package/internal/utils/use-container-width.js +3 -5
  618. package/internal/utils/use-container-width.js.map +1 -1
  619. package/line-chart/index.js +6 -6
  620. package/line-chart/index.js.map +1 -1
  621. package/link/index.js +5 -5
  622. package/link/index.js.map +1 -1
  623. package/link/internal.js +25 -25
  624. package/link/internal.js.map +1 -1
  625. package/mixed-line-bar-chart/bar-groups.js +3 -4
  626. package/mixed-line-bar-chart/bar-groups.js.map +1 -1
  627. package/mixed-line-bar-chart/bar-series.js +24 -33
  628. package/mixed-line-bar-chart/bar-series.js.map +1 -1
  629. package/mixed-line-bar-chart/chart-container.js +123 -138
  630. package/mixed-line-bar-chart/chart-container.js.map +1 -1
  631. package/mixed-line-bar-chart/chart-filters.js +10 -17
  632. package/mixed-line-bar-chart/chart-filters.js.map +1 -1
  633. package/mixed-line-bar-chart/chart-legend.js +9 -13
  634. package/mixed-line-bar-chart/chart-legend.js.map +1 -1
  635. package/mixed-line-bar-chart/chart-popover.js +3 -4
  636. package/mixed-line-bar-chart/chart-popover.js.map +1 -1
  637. package/mixed-line-bar-chart/data-series.js +13 -17
  638. package/mixed-line-bar-chart/data-series.js.map +1 -1
  639. package/mixed-line-bar-chart/domain.js +32 -39
  640. package/mixed-line-bar-chart/domain.js.map +1 -1
  641. package/mixed-line-bar-chart/format-highlighted.js +13 -14
  642. package/mixed-line-bar-chart/format-highlighted.js.map +1 -1
  643. package/mixed-line-bar-chart/hooks/use-mouse-hover.js +32 -34
  644. package/mixed-line-bar-chart/hooks/use-mouse-hover.js.map +1 -1
  645. package/mixed-line-bar-chart/hooks/use-navigation.js +48 -57
  646. package/mixed-line-bar-chart/hooks/use-navigation.js.map +1 -1
  647. package/mixed-line-bar-chart/hooks/use-popover.js +7 -7
  648. package/mixed-line-bar-chart/hooks/use-popover.js.map +1 -1
  649. package/mixed-line-bar-chart/index.js +4 -4
  650. package/mixed-line-bar-chart/index.js.map +1 -1
  651. package/mixed-line-bar-chart/internal.js +47 -49
  652. package/mixed-line-bar-chart/internal.js.map +1 -1
  653. package/mixed-line-bar-chart/line-series.js +19 -24
  654. package/mixed-line-bar-chart/line-series.js.map +1 -1
  655. package/mixed-line-bar-chart/make-scaled-bar-groups.js +10 -11
  656. package/mixed-line-bar-chart/make-scaled-bar-groups.js.map +1 -1
  657. package/mixed-line-bar-chart/make-scaled-series.js +30 -38
  658. package/mixed-line-bar-chart/make-scaled-series.js.map +1 -1
  659. package/mixed-line-bar-chart/utils.js +18 -21
  660. package/mixed-line-bar-chart/utils.js.map +1 -1
  661. package/modal/body-scroll.js +4 -4
  662. package/modal/body-scroll.js.map +1 -1
  663. package/modal/index.js +4 -4
  664. package/modal/index.js.map +1 -1
  665. package/modal/internal.js +24 -25
  666. package/modal/internal.js.map +1 -1
  667. package/multiselect/index.js +5 -5
  668. package/multiselect/index.js.map +1 -1
  669. package/multiselect/internal.js +81 -88
  670. package/multiselect/internal.js.map +1 -1
  671. package/package.json +1 -1
  672. package/pagination/index.js +2 -3
  673. package/pagination/index.js.map +1 -1
  674. package/pagination/internal.js +16 -17
  675. package/pagination/internal.js.map +1 -1
  676. package/pagination/utils.js +12 -12
  677. package/pagination/utils.js.map +1 -1
  678. package/pie-chart/index.js +38 -39
  679. package/pie-chart/index.js.map +1 -1
  680. package/pie-chart/labels.js +38 -42
  681. package/pie-chart/labels.js.map +1 -1
  682. package/pie-chart/pie-chart.js +65 -67
  683. package/pie-chart/pie-chart.js.map +1 -1
  684. package/pie-chart/responsive-text.js +9 -10
  685. package/pie-chart/responsive-text.js.map +1 -1
  686. package/pie-chart/segments.js +27 -31
  687. package/pie-chart/segments.js.map +1 -1
  688. package/pie-chart/utils.js +32 -35
  689. package/pie-chart/utils.js.map +1 -1
  690. package/popover/arrow.js +2 -2
  691. package/popover/arrow.js.map +1 -1
  692. package/popover/body.js +16 -19
  693. package/popover/body.js.map +1 -1
  694. package/popover/container.js +52 -55
  695. package/popover/container.js.map +1 -1
  696. package/popover/index.js +6 -6
  697. package/popover/index.js.map +1 -1
  698. package/popover/internal.js +28 -28
  699. package/popover/internal.js.map +1 -1
  700. package/popover/utils/positions.js +54 -66
  701. package/popover/utils/positions.js.map +1 -1
  702. package/progress-bar/index.js +17 -17
  703. package/progress-bar/index.js.map +1 -1
  704. package/progress-bar/internal.js +12 -16
  705. package/progress-bar/internal.js.map +1 -1
  706. package/property-filter/controller.js +117 -125
  707. package/property-filter/controller.js.map +1 -1
  708. package/property-filter/filter-options.js +8 -11
  709. package/property-filter/filter-options.js.map +1 -1
  710. package/property-filter/index.js +50 -50
  711. package/property-filter/index.js.map +1 -1
  712. package/property-filter/property-editor.js +4 -5
  713. package/property-filter/property-editor.js.map +1 -1
  714. package/property-filter/property-filter-autosuggest.js +39 -39
  715. package/property-filter/property-filter-autosuggest.js.map +1 -1
  716. package/property-filter/token-editor.js +55 -66
  717. package/property-filter/token-editor.js.map +1 -1
  718. package/property-filter/token.js +9 -11
  719. package/property-filter/token.js.map +1 -1
  720. package/property-filter/use-load-items.js +8 -12
  721. package/property-filter/use-load-items.js.map +1 -1
  722. package/property-filter/utils.js +13 -18
  723. package/property-filter/utils.js.map +1 -1
  724. package/radio-group/index.js +3 -4
  725. package/radio-group/index.js.map +1 -1
  726. package/radio-group/internal.js +9 -9
  727. package/radio-group/internal.js.map +1 -1
  728. package/radio-group/radio-button.js +12 -15
  729. package/radio-group/radio-button.js.map +1 -1
  730. package/s3-resource-selector/index.js +29 -29
  731. package/s3-resource-selector/index.js.map +1 -1
  732. package/s3-resource-selector/s3-in-context/index.js +16 -18
  733. package/s3-resource-selector/s3-in-context/index.js.map +1 -1
  734. package/s3-resource-selector/s3-in-context/search-input.js +3 -4
  735. package/s3-resource-selector/s3-in-context/search-input.js.map +1 -1
  736. package/s3-resource-selector/s3-in-context/use-versions-fetch.js +16 -16
  737. package/s3-resource-selector/s3-in-context/use-versions-fetch.js.map +1 -1
  738. package/s3-resource-selector/s3-in-context/validation.js +6 -6
  739. package/s3-resource-selector/s3-in-context/validation.js.map +1 -1
  740. package/s3-resource-selector/s3-modal/basic-table.js +19 -20
  741. package/s3-resource-selector/s3-modal/basic-table.js.map +1 -1
  742. package/s3-resource-selector/s3-modal/buckets-table.js +11 -13
  743. package/s3-resource-selector/s3-modal/buckets-table.js.map +1 -1
  744. package/s3-resource-selector/s3-modal/column-formats.js +5 -5
  745. package/s3-resource-selector/s3-modal/column-formats.js.map +1 -1
  746. package/s3-resource-selector/s3-modal/empty-state.js +1 -2
  747. package/s3-resource-selector/s3-modal/empty-state.js.map +1 -1
  748. package/s3-resource-selector/s3-modal/index.js +37 -43
  749. package/s3-resource-selector/s3-modal/index.js.map +1 -1
  750. package/s3-resource-selector/s3-modal/objects-table.js +12 -14
  751. package/s3-resource-selector/s3-modal/objects-table.js.map +1 -1
  752. package/s3-resource-selector/s3-modal/table-utils.js +9 -12
  753. package/s3-resource-selector/s3-modal/table-utils.js.map +1 -1
  754. package/s3-resource-selector/s3-modal/versions-table.js +10 -12
  755. package/s3-resource-selector/s3-modal/versions-table.js.map +1 -1
  756. package/s3-resource-selector/utils.js +1 -1
  757. package/s3-resource-selector/utils.js.map +1 -1
  758. package/segmented-control/index.js +2 -3
  759. package/segmented-control/index.js.map +1 -1
  760. package/segmented-control/internal-segmented-control.js +16 -17
  761. package/segmented-control/internal-segmented-control.js.map +1 -1
  762. package/segmented-control/internal.js +14 -14
  763. package/segmented-control/internal.js.map +1 -1
  764. package/segmented-control/segment.js +3 -6
  765. package/segmented-control/segment.js.map +1 -1
  766. package/select/index.js +6 -6
  767. package/select/index.js.map +1 -1
  768. package/select/internal.js +58 -58
  769. package/select/internal.js.map +1 -1
  770. package/select/parts/filter.js +4 -4
  771. package/select/parts/filter.js.map +1 -1
  772. package/select/parts/item.js +10 -10
  773. package/select/parts/item.js.map +1 -1
  774. package/select/parts/multiselect-item.js +13 -14
  775. package/select/parts/multiselect-item.js.map +1 -1
  776. package/select/parts/plain-list.js +13 -15
  777. package/select/parts/plain-list.js.map +1 -1
  778. package/select/parts/trigger.js +7 -9
  779. package/select/parts/trigger.js.map +1 -1
  780. package/select/parts/virtual-list.js +27 -33
  781. package/select/parts/virtual-list.js.map +1 -1
  782. package/select/utils/check-option-value-field.js +2 -2
  783. package/select/utils/check-option-value-field.js.map +1 -1
  784. package/select/utils/connect-options.js +6 -7
  785. package/select/utils/connect-options.js.map +1 -1
  786. package/select/utils/get-item-props.js +4 -7
  787. package/select/utils/get-item-props.js.map +1 -1
  788. package/select/utils/render-options.js +13 -15
  789. package/select/utils/render-options.js.map +1 -1
  790. package/select/utils/use-announcement.js +10 -11
  791. package/select/utils/use-announcement.js.map +1 -1
  792. package/select/utils/use-load-items.js +16 -19
  793. package/select/utils/use-load-items.js.map +1 -1
  794. package/select/utils/use-native-search.js +20 -29
  795. package/select/utils/use-native-search.js.map +1 -1
  796. package/select/utils/use-select.js +89 -96
  797. package/select/utils/use-select.js.map +1 -1
  798. package/side-navigation/index.js +10 -10
  799. package/side-navigation/index.js.map +1 -1
  800. package/side-navigation/internal.js +35 -46
  801. package/side-navigation/internal.js.map +1 -1
  802. package/side-navigation/util.js +9 -12
  803. package/side-navigation/util.js.map +1 -1
  804. package/space-between/index.js +4 -4
  805. package/space-between/index.js.map +1 -1
  806. package/space-between/internal.js +7 -7
  807. package/space-between/internal.js.map +1 -1
  808. package/spinner/index.js +4 -4
  809. package/spinner/index.js.map +1 -1
  810. package/spinner/internal.js +4 -4
  811. package/spinner/internal.js.map +1 -1
  812. package/split-panel/bottom.js +22 -25
  813. package/split-panel/bottom.js.map +1 -1
  814. package/split-panel/icons/bottom-icon-refresh.js +11 -13
  815. package/split-panel/icons/bottom-icon-refresh.js.map +1 -1
  816. package/split-panel/icons/bottom-icon.js +1 -1
  817. package/split-panel/icons/bottom-icon.js.map +1 -1
  818. package/split-panel/icons/resize-handler.js +3 -6
  819. package/split-panel/icons/resize-handler.js.map +1 -1
  820. package/split-panel/icons/side-position-refresh.js +12 -14
  821. package/split-panel/icons/side-position-refresh.js.map +1 -1
  822. package/split-panel/icons/side-position.js +1 -1
  823. package/split-panel/icons/side-position.js.map +1 -1
  824. package/split-panel/index.js +65 -65
  825. package/split-panel/index.js.map +1 -1
  826. package/split-panel/preferences-modal.js +9 -9
  827. package/split-panel/preferences-modal.js.map +1 -1
  828. package/split-panel/side.js +12 -15
  829. package/split-panel/side.js.map +1 -1
  830. package/split-panel/utils/size-utils.js +3 -3
  831. package/split-panel/utils/size-utils.js.map +1 -1
  832. package/split-panel/utils/use-keyboard-events.js +13 -17
  833. package/split-panel/utils/use-keyboard-events.js.map +1 -1
  834. package/split-panel/utils/use-pointer-events.js +12 -13
  835. package/split-panel/utils/use-pointer-events.js.map +1 -1
  836. package/status-indicator/index.js +4 -4
  837. package/status-indicator/index.js.map +1 -1
  838. package/status-indicator/internal.js +9 -10
  839. package/status-indicator/internal.js.map +1 -1
  840. package/table/body-cell/click-away.js +9 -10
  841. package/table/body-cell/click-away.js.map +1 -1
  842. package/table/body-cell/index.js +18 -18
  843. package/table/body-cell/index.js.map +1 -1
  844. package/table/body-cell/inline-editor.js +32 -46
  845. package/table/body-cell/inline-editor.js.map +1 -1
  846. package/table/body-cell/td-element.js +2 -4
  847. package/table/body-cell/td-element.js.map +1 -1
  848. package/table/body-cell/use-stable-scroll-position.js +10 -13
  849. package/table/body-cell/use-stable-scroll-position.js.map +1 -1
  850. package/table/header-cell/index.d.ts +4 -2
  851. package/table/header-cell/index.d.ts.map +1 -1
  852. package/table/header-cell/index.js +33 -34
  853. package/table/header-cell/index.js.map +1 -1
  854. package/table/header-cell/utils.js +10 -12
  855. package/table/header-cell/utils.js.map +1 -1
  856. package/table/index.js +5 -5
  857. package/table/index.js.map +1 -1
  858. package/table/internal.d.ts.map +1 -1
  859. package/table/internal.js +94 -118
  860. package/table/internal.js.map +1 -1
  861. package/table/resizer/index.d.ts +5 -1
  862. package/table/resizer/index.d.ts.map +1 -1
  863. package/table/resizer/index.js +40 -39
  864. package/table/resizer/index.js.map +1 -1
  865. package/table/selection-control/index.d.ts +4 -1
  866. package/table/selection-control/index.d.ts.map +1 -1
  867. package/table/selection-control/index.js +11 -11
  868. package/table/selection-control/index.js.map +1 -1
  869. package/table/sticky-header.d.ts +2 -2
  870. package/table/sticky-header.d.ts.map +1 -1
  871. package/table/sticky-header.js +16 -15
  872. package/table/sticky-header.js.map +1 -1
  873. package/table/sticky-scrollbar.js +5 -6
  874. package/table/sticky-scrollbar.js.map +1 -1
  875. package/table/sticky-scrolling.js +10 -10
  876. package/table/sticky-scrolling.js.map +1 -1
  877. package/table/thead.d.ts +11 -3
  878. package/table/thead.d.ts.map +1 -1
  879. package/table/thead.js +13 -13
  880. package/table/thead.js.map +1 -1
  881. package/table/tools-header.js +4 -5
  882. package/table/tools-header.js.map +1 -1
  883. package/table/use-column-widths.js +34 -44
  884. package/table/use-column-widths.js.map +1 -1
  885. package/table/use-row-events.js +10 -11
  886. package/table/use-row-events.js.map +1 -1
  887. package/table/use-selection.js +75 -81
  888. package/table/use-selection.js.map +1 -1
  889. package/table/use-sticky-header.js +16 -16
  890. package/table/use-sticky-header.js.map +1 -1
  891. package/table/use-sticky-scrollbar.js +42 -42
  892. package/table/use-sticky-scrollbar.js.map +1 -1
  893. package/table/use-table-focus-navigation.js +27 -28
  894. package/table/use-table-focus-navigation.js.map +1 -1
  895. package/table/utils.js +7 -7
  896. package/table/utils.js.map +1 -1
  897. package/tabs/index.js +30 -33
  898. package/tabs/index.js.map +1 -1
  899. package/tabs/scroll-utils.js +12 -13
  900. package/tabs/scroll-utils.js.map +1 -1
  901. package/tabs/smooth-scroll.js +17 -17
  902. package/tabs/smooth-scroll.js.map +1 -1
  903. package/tabs/tab-header-bar.js +61 -66
  904. package/tabs/tab-header-bar.js.map +1 -1
  905. package/tag-editor/index.js +59 -72
  906. package/tag-editor/index.js.map +1 -1
  907. package/tag-editor/internal.js +21 -29
  908. package/tag-editor/internal.js.map +1 -1
  909. package/tag-editor/utils.js +7 -8
  910. package/tag-editor/utils.js.map +1 -1
  911. package/tag-editor/validation.js +16 -18
  912. package/tag-editor/validation.js.map +1 -1
  913. package/text-content/index.js +6 -6
  914. package/text-content/index.js.map +1 -1
  915. package/text-filter/index.js +3 -4
  916. package/text-filter/index.js.map +1 -1
  917. package/text-filter/internal.js +10 -10
  918. package/text-filter/internal.js.map +1 -1
  919. package/textarea/index.js +23 -24
  920. package/textarea/index.js.map +1 -1
  921. package/theming/index.js +2 -3
  922. package/theming/index.js.map +1 -1
  923. package/tiles/index.js +3 -4
  924. package/tiles/index.js.map +1 -1
  925. package/tiles/internal.js +17 -17
  926. package/tiles/internal.js.map +1 -1
  927. package/tiles/tile.js +7 -9
  928. package/tiles/tile.js.map +1 -1
  929. package/time-input/index.js +5 -5
  930. package/time-input/index.js.map +1 -1
  931. package/time-input/internal.js +9 -9
  932. package/time-input/internal.js.map +1 -1
  933. package/toggle/index.js +3 -4
  934. package/toggle/index.js.map +1 -1
  935. package/toggle/internal.js +15 -16
  936. package/toggle/internal.js.map +1 -1
  937. package/token-group/dismiss-button.js +5 -7
  938. package/token-group/dismiss-button.js.map +1 -1
  939. package/token-group/index.js +4 -4
  940. package/token-group/index.js.map +1 -1
  941. package/token-group/internal.js +14 -14
  942. package/token-group/internal.js.map +1 -1
  943. package/token-group/toggle.js +7 -9
  944. package/token-group/toggle.js.map +1 -1
  945. package/top-navigation/1.0-beta/index.js +4 -4
  946. package/top-navigation/1.0-beta/index.js.map +1 -1
  947. package/top-navigation/1.0-beta/internal.js +43 -46
  948. package/top-navigation/1.0-beta/internal.js.map +1 -1
  949. package/top-navigation/1.0-beta/parts/overflow-menu.js +16 -17
  950. package/top-navigation/1.0-beta/parts/overflow-menu.js.map +1 -1
  951. package/top-navigation/1.0-beta/parts/utility.js +9 -12
  952. package/top-navigation/1.0-beta/parts/utility.js.map +1 -1
  953. package/top-navigation/1.0-beta/use-top-navigation.js +46 -54
  954. package/top-navigation/1.0-beta/use-top-navigation.js.map +1 -1
  955. package/top-navigation/index.js +4 -4
  956. package/top-navigation/index.js.map +1 -1
  957. package/top-navigation/internal.js +64 -71
  958. package/top-navigation/internal.js.map +1 -1
  959. package/top-navigation/parts/overflow-menu/header.js +3 -4
  960. package/top-navigation/parts/overflow-menu/header.js.map +1 -1
  961. package/top-navigation/parts/overflow-menu/index.js +4 -5
  962. package/top-navigation/parts/overflow-menu/index.js.map +1 -1
  963. package/top-navigation/parts/overflow-menu/menu-item.js +56 -61
  964. package/top-navigation/parts/overflow-menu/menu-item.js.map +1 -1
  965. package/top-navigation/parts/overflow-menu/router.js +11 -13
  966. package/top-navigation/parts/overflow-menu/router.js.map +1 -1
  967. package/top-navigation/parts/overflow-menu/views/submenu.js +6 -8
  968. package/top-navigation/parts/overflow-menu/views/submenu.js.map +1 -1
  969. package/top-navigation/parts/overflow-menu/views/utilities.js +5 -7
  970. package/top-navigation/parts/overflow-menu/views/utilities.js.map +1 -1
  971. package/top-navigation/parts/utility.js +12 -15
  972. package/top-navigation/parts/utility.js.map +1 -1
  973. package/top-navigation/use-top-navigation.js +52 -59
  974. package/top-navigation/use-top-navigation.js.map +1 -1
  975. package/tutorial-panel/components/tutorial-detail-view/congratulation-screen.js +5 -7
  976. package/tutorial-panel/components/tutorial-detail-view/congratulation-screen.js.map +1 -1
  977. package/tutorial-panel/components/tutorial-detail-view/index.js +6 -7
  978. package/tutorial-panel/components/tutorial-detail-view/index.js.map +1 -1
  979. package/tutorial-panel/components/tutorial-detail-view/task-list.js +8 -15
  980. package/tutorial-panel/components/tutorial-detail-view/task-list.js.map +1 -1
  981. package/tutorial-panel/components/tutorial-detail-view/task.js +5 -6
  982. package/tutorial-panel/components/tutorial-detail-view/task.js.map +1 -1
  983. package/tutorial-panel/components/tutorial-list/index.js +19 -22
  984. package/tutorial-panel/components/tutorial-list/index.js.map +1 -1
  985. package/tutorial-panel/index.js +8 -8
  986. package/tutorial-panel/index.js.map +1 -1
  987. package/wizard/index.js +28 -28
  988. package/wizard/index.js.map +1 -1
  989. package/wizard/internal/analytics.js +32 -42
  990. package/wizard/internal/analytics.js.map +1 -1
  991. package/wizard/unmount.js +6 -13
  992. package/wizard/unmount.js.map +1 -1
  993. package/wizard/wizard-actions.js +7 -8
  994. package/wizard/wizard-actions.js.map +1 -1
  995. package/wizard/wizard-form-header.js +2 -3
  996. package/wizard/wizard-form-header.js.map +1 -1
  997. package/wizard/wizard-form.js +14 -16
  998. package/wizard/wizard-form.js.map +1 -1
  999. package/wizard/wizard-navigation.js +19 -25
  1000. package/wizard/wizard-navigation.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"filter-options.js","sourceRoot":"","sources":["../../../../../../src/internal/components/option/utils/filter-options.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { DropdownOption, OptionDefinition, OptionGroup } from '../interfaces';\n\ntype SearchableField = 'value' | 'label' | 'description' | 'labelTag';\ntype SearchableTagField = 'tags' | 'filteringTags';\n\nconst searchableFields: SearchableField[] = ['value', 'label', 'description', 'labelTag'];\n\nexport const matchesString = (value: string | undefined, searchText: string, strictMatching: boolean): boolean => {\n if (!value) {\n return false;\n }\n const index = value.toLowerCase().indexOf(searchText);\n return strictMatching ? index === 0 : index > -1;\n};\n\nconst matchesSingleOption = (dropdownOption: DropdownOption, text: string, strictMatching: boolean): boolean => {\n const searchText = text.toLowerCase();\n\n const option: OptionDefinition = dropdownOption.option;\n const searchStrFields = (attr: SearchableField) => matchesString(option[attr], searchText, strictMatching);\n const searchTagsFields = (attr: SearchableTagField) =>\n option[attr]?.some(value => matchesString(value, searchText, strictMatching));\n\n const searchableTagFields: SearchableTagField[] = ['tags'];\n if (!strictMatching) {\n searchableTagFields.push('filteringTags');\n }\n\n return searchableFields.some(searchStrFields) || searchableTagFields.some(searchTagsFields);\n};\n\nexport const filterOptions = (\n options: ReadonlyArray<DropdownOption>,\n searchText: string,\n strictMatching = false\n): ReadonlyArray<DropdownOption> => {\n if (searchText === '') {\n return options;\n }\n\n let currentGroup: DropdownOption | null = null;\n let parentMatched = false;\n return options.reduce<DropdownOption[]>((acc, option) => {\n if (option.type === 'parent') {\n parentMatched = false;\n currentGroup = option;\n if (matchesSingleOption(option, searchText, strictMatching)) {\n parentMatched = true;\n acc.push(currentGroup);\n }\n return acc;\n }\n if (option.type !== 'child') {\n currentGroup = null;\n parentMatched = false;\n }\n if (parentMatched) {\n acc.push(option);\n } else if (matchesSingleOption(option, searchText, strictMatching)) {\n if (currentGroup) {\n acc.push(currentGroup);\n currentGroup = null;\n }\n acc.push(option);\n }\n return acc;\n }, []);\n};\n\nexport const isInteractive = (option?: DropdownOption) => !!option && !option.disabled && option.type !== 'parent';\n\nexport const isGroupInteractive = (option?: DropdownOption) => !!option && !option.disabled;\n\nexport const isGroup = (option?: OptionDefinition | OptionGroup): option is OptionGroup =>\n !!option && 'options' in option;\n"]}
1
+ {"version":3,"file":"filter-options.js","sourceRoot":"","sources":["../../../../../../src/internal/components/option/utils/filter-options.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { DropdownOption, OptionDefinition, OptionGroup } from '../interfaces';\n\ntype SearchableField = 'value' | 'label' | 'description' | 'labelTag';\ntype SearchableTagField = 'tags' | 'filteringTags';\n\nconst searchableFields: SearchableField[] = ['value', 'label', 'description', 'labelTag'];\n\nexport const matchesString = (value: string | undefined, searchText: string, strictMatching: boolean): boolean => {\n if (!value) {\n return false;\n }\n const index = value.toLowerCase().indexOf(searchText);\n return strictMatching ? index === 0 : index > -1;\n};\n\nconst matchesSingleOption = (dropdownOption: DropdownOption, text: string, strictMatching: boolean): boolean => {\n const searchText = text.toLowerCase();\n\n const option: OptionDefinition = dropdownOption.option;\n const searchStrFields = (attr: SearchableField) => matchesString(option[attr], searchText, strictMatching);\n const searchTagsFields = (attr: SearchableTagField) =>\n option[attr]?.some(value => matchesString(value, searchText, strictMatching));\n\n const searchableTagFields: SearchableTagField[] = ['tags'];\n if (!strictMatching) {\n searchableTagFields.push('filteringTags');\n }\n\n return searchableFields.some(searchStrFields) || searchableTagFields.some(searchTagsFields);\n};\n\nexport const filterOptions = (\n options: ReadonlyArray<DropdownOption>,\n searchText: string,\n strictMatching = false\n): ReadonlyArray<DropdownOption> => {\n if (searchText === '') {\n return options;\n }\n\n let currentGroup: DropdownOption | null = null;\n let parentMatched = false;\n return options.reduce<DropdownOption[]>((acc, option) => {\n if (option.type === 'parent') {\n parentMatched = false;\n currentGroup = option;\n if (matchesSingleOption(option, searchText, strictMatching)) {\n parentMatched = true;\n acc.push(currentGroup);\n }\n return acc;\n }\n if (option.type !== 'child') {\n currentGroup = null;\n parentMatched = false;\n }\n if (parentMatched) {\n acc.push(option);\n } else if (matchesSingleOption(option, searchText, strictMatching)) {\n if (currentGroup) {\n acc.push(currentGroup);\n currentGroup = null;\n }\n acc.push(option);\n }\n return acc;\n }, []);\n};\n\nexport const isInteractive = (option?: DropdownOption) => !!option && !option.disabled && option.type !== 'parent';\n\nexport const isGroupInteractive = (option?: DropdownOption) => !!option && !option.disabled;\n\nexport const isGroup = (option?: OptionDefinition | OptionGroup): option is OptionGroup =>\n !!option && 'options' in option;\n"]}
@@ -1,26 +1,26 @@
1
1
  import { __rest } from "tslib";
2
- export var flattenOptions = function (options) {
3
- var parentMap = new Map();
4
- var flatOptions = options.reduce(function (acc, option) {
2
+ export const flattenOptions = (options) => {
3
+ const parentMap = new Map();
4
+ const flatOptions = options.reduce((acc, option) => {
5
5
  if ('options' in option) {
6
- var options_1 = option.options, rest_1 = __rest(option, ["options"]);
7
- var parentDropdownOption_1 = { type: 'parent', option: option };
8
- var allOptionsDisabled = options_1.every(function (option) { return option.disabled; });
6
+ const { options } = option, rest = __rest(option, ["options"]);
7
+ const parentDropdownOption = { type: 'parent', option };
8
+ const allOptionsDisabled = options.every(option => option.disabled);
9
9
  if (option.disabled || allOptionsDisabled) {
10
- parentDropdownOption_1.disabled = true;
10
+ parentDropdownOption.disabled = true;
11
11
  }
12
- acc.push(parentDropdownOption_1);
13
- options_1.forEach(function (child) {
14
- var childDropdownOption = { type: 'child', option: child };
15
- if (rest_1.disabled || child.disabled) {
12
+ acc.push(parentDropdownOption);
13
+ options.forEach(child => {
14
+ const childDropdownOption = { type: 'child', option: child };
15
+ if (rest.disabled || child.disabled) {
16
16
  childDropdownOption.disabled = true;
17
17
  }
18
18
  acc.push(childDropdownOption);
19
- parentMap.set(childDropdownOption, parentDropdownOption_1);
19
+ parentMap.set(childDropdownOption, parentDropdownOption);
20
20
  });
21
21
  }
22
22
  else {
23
- var dropdownOption = { option: option };
23
+ const dropdownOption = { option };
24
24
  if (option.disabled) {
25
25
  dropdownOption.disabled = true;
26
26
  }
@@ -29,8 +29,8 @@ export var flattenOptions = function (options) {
29
29
  return acc;
30
30
  }, []);
31
31
  return {
32
- flatOptions: flatOptions,
33
- parentMap: parentMap
32
+ flatOptions,
33
+ parentMap,
34
34
  };
35
35
  };
36
36
  //# sourceMappingURL=flatten-options.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flatten-options.js","sourceRoot":"","sources":["../../../../../../src/internal/components/option/utils/flatten-options.ts"],"names":[],"mappings":";AAIA,MAAM,CAAC,IAAM,cAAc,GAAG,UAAC,OAAsD;IACnF,IAAM,SAAS,GAAG,IAAI,GAAG,EAAkC,CAAC;IAE5D,IAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAmB,UAAC,GAAG,EAAE,MAAM;QAC/D,IAAI,SAAS,IAAI,MAAM,EAAE;YACf,IAAA,SAAO,GAAc,MAAM,QAApB,EAAK,MAAI,UAAK,MAAM,EAA7B,WAAoB,CAAF,CAAY;YACpC,IAAM,sBAAoB,GAAmB,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,QAAA,EAAE,CAAC;YACxE,IAAM,kBAAkB,GAAG,SAAO,CAAC,KAAK,CAAC,UAAA,MAAM,IAAI,OAAA,MAAM,CAAC,QAAQ,EAAf,CAAe,CAAC,CAAC;YACpE,IAAI,MAAM,CAAC,QAAQ,IAAI,kBAAkB,EAAE;gBACzC,sBAAoB,CAAC,QAAQ,GAAG,IAAI,CAAC;aACtC;YACD,GAAG,CAAC,IAAI,CAAC,sBAAoB,CAAC,CAAC;YAC/B,SAAO,CAAC,OAAO,CAAC,UAAA,KAAK;gBACnB,IAAM,mBAAmB,GAAmB,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;gBAC7E,IAAI,MAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,EAAE;oBACnC,mBAAmB,CAAC,QAAQ,GAAG,IAAI,CAAC;iBACrC;gBACD,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBAC9B,SAAS,CAAC,GAAG,CAAC,mBAAmB,EAAE,sBAAoB,CAAC,CAAC;YAC3D,CAAC,CAAC,CAAC;SACJ;aAAM;YACL,IAAM,cAAc,GAAmB,EAAE,MAAM,QAAA,EAAE,CAAC;YAClD,IAAI,MAAM,CAAC,QAAQ,EAAE;gBACnB,cAAc,CAAC,QAAQ,GAAG,IAAI,CAAC;aAChC;YACD,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SAC1B;QAED,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO;QACL,WAAW,aAAA;QACX,SAAS,WAAA;KACV,CAAC;AACJ,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { OptionGroup, OptionDefinition, DropdownOption } from '../interfaces';\n\nexport const flattenOptions = (options: ReadonlyArray<OptionDefinition | OptionGroup>) => {\n const parentMap = new Map<DropdownOption, DropdownOption>();\n\n const flatOptions = options.reduce<DropdownOption[]>((acc, option) => {\n if ('options' in option) {\n const { options, ...rest } = option;\n const parentDropdownOption: DropdownOption = { type: 'parent', option };\n const allOptionsDisabled = options.every(option => option.disabled);\n if (option.disabled || allOptionsDisabled) {\n parentDropdownOption.disabled = true;\n }\n acc.push(parentDropdownOption);\n options.forEach(child => {\n const childDropdownOption: DropdownOption = { type: 'child', option: child };\n if (rest.disabled || child.disabled) {\n childDropdownOption.disabled = true;\n }\n acc.push(childDropdownOption);\n parentMap.set(childDropdownOption, parentDropdownOption);\n });\n } else {\n const dropdownOption: DropdownOption = { option };\n if (option.disabled) {\n dropdownOption.disabled = true;\n }\n acc.push(dropdownOption);\n }\n\n return acc;\n }, []);\n\n return {\n flatOptions,\n parentMap,\n };\n};\n"]}
1
+ {"version":3,"file":"flatten-options.js","sourceRoot":"","sources":["../../../../../../src/internal/components/option/utils/flatten-options.ts"],"names":[],"mappings":";AAIA,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,OAAsD,EAAE,EAAE;IACvF,MAAM,SAAS,GAAG,IAAI,GAAG,EAAkC,CAAC;IAE5D,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;QACnE,IAAI,SAAS,IAAI,MAAM,EAAE;YACvB,MAAM,EAAE,OAAO,KAAc,MAAM,EAAf,IAAI,UAAK,MAAM,EAA7B,WAAoB,CAAS,CAAC;YACpC,MAAM,oBAAoB,GAAmB,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;YACxE,MAAM,kBAAkB,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACpE,IAAI,MAAM,CAAC,QAAQ,IAAI,kBAAkB,EAAE;gBACzC,oBAAoB,CAAC,QAAQ,GAAG,IAAI,CAAC;aACtC;YACD,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YAC/B,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gBACtB,MAAM,mBAAmB,GAAmB,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;gBAC7E,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,EAAE;oBACnC,mBAAmB,CAAC,QAAQ,GAAG,IAAI,CAAC;iBACrC;gBACD,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBAC9B,SAAS,CAAC,GAAG,CAAC,mBAAmB,EAAE,oBAAoB,CAAC,CAAC;YAC3D,CAAC,CAAC,CAAC;SACJ;aAAM;YACL,MAAM,cAAc,GAAmB,EAAE,MAAM,EAAE,CAAC;YAClD,IAAI,MAAM,CAAC,QAAQ,EAAE;gBACnB,cAAc,CAAC,QAAQ,GAAG,IAAI,CAAC;aAChC;YACD,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SAC1B;QAED,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO;QACL,WAAW;QACX,SAAS;KACV,CAAC;AACJ,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { OptionGroup, OptionDefinition, DropdownOption } from '../interfaces';\n\nexport const flattenOptions = (options: ReadonlyArray<OptionDefinition | OptionGroup>) => {\n const parentMap = new Map<DropdownOption, DropdownOption>();\n\n const flatOptions = options.reduce<DropdownOption[]>((acc, option) => {\n if ('options' in option) {\n const { options, ...rest } = option;\n const parentDropdownOption: DropdownOption = { type: 'parent', option };\n const allOptionsDisabled = options.every(option => option.disabled);\n if (option.disabled || allOptionsDisabled) {\n parentDropdownOption.disabled = true;\n }\n acc.push(parentDropdownOption);\n options.forEach(child => {\n const childDropdownOption: DropdownOption = { type: 'child', option: child };\n if (rest.disabled || child.disabled) {\n childDropdownOption.disabled = true;\n }\n acc.push(childDropdownOption);\n parentMap.set(childDropdownOption, parentDropdownOption);\n });\n } else {\n const dropdownOption: DropdownOption = { option };\n if (option.disabled) {\n dropdownOption.disabled = true;\n }\n acc.push(dropdownOption);\n }\n\n return acc;\n }, []);\n\n return {\n flatOptions,\n parentMap,\n };\n};\n"]}
@@ -4,9 +4,9 @@ import { flattenOptions } from './flatten-options';
4
4
  import { filterOptions } from './filter-options';
5
5
  import { generateTestIndexes } from '../../options-list/utils/test-indexes';
6
6
  export function prepareOptions(options, filteringType, filteringText) {
7
- var _a = flattenOptions(options), flatOptions = _a.flatOptions, parentMap = _a.parentMap;
8
- var filteredOptions = filteringType !== 'auto' ? flatOptions : filterOptions(flatOptions, filteringText);
7
+ const { flatOptions, parentMap } = flattenOptions(options);
8
+ const filteredOptions = filteringType !== 'auto' ? flatOptions : filterOptions(flatOptions, filteringText);
9
9
  generateTestIndexes(filteredOptions, parentMap.get.bind(parentMap));
10
- return { filteredOptions: filteredOptions, parentMap: parentMap };
10
+ return { filteredOptions, parentMap };
11
11
  }
12
12
  //# sourceMappingURL=prepare-options.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prepare-options.js","sourceRoot":"","sources":["../../../../../../src/internal/components/option/utils/prepare-options.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAG5E,MAAM,UAAU,cAAc,CAC5B,OAA4B,EAC5B,aAAwC,EACxC,aAAqB;IAEf,IAAA,KAA6B,cAAc,CAAC,OAAO,CAAC,EAAlD,WAAW,iBAAA,EAAE,SAAS,eAA4B,CAAC;IAC3D,IAAM,eAAe,GAAG,aAAa,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAC3G,mBAAmB,CAAC,eAAe,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACpE,OAAO,EAAE,eAAe,iBAAA,EAAE,SAAS,WAAA,EAAE,CAAC;AACxC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { flattenOptions } from './flatten-options';\nimport { filterOptions } from './filter-options';\nimport { generateTestIndexes } from '../../options-list/utils/test-indexes';\nimport { SelectProps } from '../../../../select/interfaces';\n\nexport function prepareOptions(\n options: SelectProps.Options,\n filteringType: SelectProps.FilteringType,\n filteringText: string\n) {\n const { flatOptions, parentMap } = flattenOptions(options);\n const filteredOptions = filteringType !== 'auto' ? flatOptions : filterOptions(flatOptions, filteringText);\n generateTestIndexes(filteredOptions, parentMap.get.bind(parentMap));\n return { filteredOptions, parentMap };\n}\n"]}
1
+ {"version":3,"file":"prepare-options.js","sourceRoot":"","sources":["../../../../../../src/internal/components/option/utils/prepare-options.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAG5E,MAAM,UAAU,cAAc,CAC5B,OAA4B,EAC5B,aAAwC,EACxC,aAAqB;IAErB,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IAC3D,MAAM,eAAe,GAAG,aAAa,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAC3G,mBAAmB,CAAC,eAAe,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACpE,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,CAAC;AACxC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { flattenOptions } from './flatten-options';\nimport { filterOptions } from './filter-options';\nimport { generateTestIndexes } from '../../options-list/utils/test-indexes';\nimport { SelectProps } from '../../../../select/interfaces';\n\nexport function prepareOptions(\n options: SelectProps.Options,\n filteringType: SelectProps.FilteringType,\n filteringText: string\n) {\n const { flatOptions, parentMap } = flattenOptions(options);\n const filteredOptions = filteringType !== 'auto' ? flatOptions : filterOptions(flatOptions, filteringText);\n generateTestIndexes(filteredOptions, parentMap.get.bind(parentMap));\n return { filteredOptions, parentMap };\n}\n"]}
@@ -1,4 +1,4 @@
1
- import { __assign, __rest } from "tslib";
1
+ import { __rest } from "tslib";
2
2
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
3
  // SPDX-License-Identifier: Apache-2.0
4
4
  import clsx from 'clsx';
@@ -8,38 +8,37 @@ import { getBaseProps } from '../../base-component';
8
8
  import { fireNonCancelableEvent, fireKeyboardEvent, } from '../../events';
9
9
  import { findUpUntil } from '../../utils/dom';
10
10
  import styles from './styles.css.js';
11
- var BOTTOM_TRIGGER_OFFSET = 80;
12
- var getItemIndex = function (containerRef, event) {
13
- var target = findUpUntil(event.target, function (element) { return element === containerRef.current || !!element.dataset.mouseTarget; });
14
- var mouseTarget = target === null || target === void 0 ? void 0 : target.dataset.mouseTarget;
11
+ const BOTTOM_TRIGGER_OFFSET = 80;
12
+ const getItemIndex = (containerRef, event) => {
13
+ const target = findUpUntil(event.target, element => element === containerRef.current || !!element.dataset.mouseTarget);
14
+ const mouseTarget = target === null || target === void 0 ? void 0 : target.dataset.mouseTarget;
15
15
  return mouseTarget ? parseInt(mouseTarget) : -1;
16
16
  };
17
- var OptionsList = function (_a, ref) {
18
- var _b;
19
- var open = _a.open, children = _a.children, _c = _a.nativeAttributes, nativeAttributes = _c === void 0 ? {} : _c, onKeyDown = _a.onKeyDown, onBlur = _a.onBlur, onFocus = _a.onFocus, onLoadMore = _a.onLoadMore, onMouseUp = _a.onMouseUp, onMouseMove = _a.onMouseMove, _d = _a.position, position = _d === void 0 ? 'relative' : _d, _e = _a.role, role = _e === void 0 ? 'listbox' : _e, _f = _a.decreaseTopMargin, decreaseTopMargin = _f === void 0 ? false : _f, ariaLabelledby = _a.ariaLabelledby, restProps = __rest(_a, ["open", "children", "nativeAttributes", "onKeyDown", "onBlur", "onFocus", "onLoadMore", "onMouseUp", "onMouseMove", "position", "role", "decreaseTopMargin", "ariaLabelledby"]);
20
- var baseProps = getBaseProps(restProps);
21
- var menuRef = useRef(null);
22
- var handleScroll = function () {
23
- var scrollContainer = menuRef === null || menuRef === void 0 ? void 0 : menuRef.current;
17
+ const OptionsList = (_a, ref) => {
18
+ var { open, children, nativeAttributes = {}, onKeyDown, onBlur, onFocus, onLoadMore, onMouseUp, onMouseMove, position = 'relative', role = 'listbox', decreaseTopMargin = false, ariaLabelledby } = _a, restProps = __rest(_a, ["open", "children", "nativeAttributes", "onKeyDown", "onBlur", "onFocus", "onLoadMore", "onMouseUp", "onMouseMove", "position", "role", "decreaseTopMargin", "ariaLabelledby"]);
19
+ const baseProps = getBaseProps(restProps);
20
+ const menuRef = useRef(null);
21
+ const handleScroll = () => {
22
+ const scrollContainer = menuRef === null || menuRef === void 0 ? void 0 : menuRef.current;
24
23
  if (scrollContainer) {
25
- var bottomEdgePosition = scrollContainer.scrollTop + scrollContainer.clientHeight;
26
- var remainingScrollHeight = scrollContainer.scrollHeight - bottomEdgePosition;
24
+ const bottomEdgePosition = scrollContainer.scrollTop + scrollContainer.clientHeight;
25
+ const remainingScrollHeight = scrollContainer.scrollHeight - bottomEdgePosition;
27
26
  if (remainingScrollHeight < BOTTOM_TRIGGER_OFFSET) {
28
27
  fireNonCancelableEvent(onLoadMore);
29
28
  }
30
29
  }
31
30
  };
32
- useEffect(function () {
31
+ useEffect(() => {
33
32
  if (!open) {
34
33
  return;
35
34
  }
36
35
  handleScroll();
37
36
  });
38
- var className = clsx(styles['options-list'], (_b = {},
39
- _b[styles['decrease-top-margin']] = decreaseTopMargin,
40
- _b));
41
- var mergedRef = useMergeRefs(ref, menuRef);
42
- return (React.createElement("ul", __assign({}, baseProps, nativeAttributes, { className: className, ref: mergedRef, style: { position: position }, role: role, onScroll: handleScroll, onKeyDown: function (event) { return onKeyDown && fireKeyboardEvent(onKeyDown, event); }, onMouseMove: function (event) { return onMouseMove === null || onMouseMove === void 0 ? void 0 : onMouseMove(getItemIndex(menuRef, event)); }, onMouseUp: function (event) { return onMouseUp === null || onMouseUp === void 0 ? void 0 : onMouseUp(getItemIndex(menuRef, event)); }, onBlur: function (event) { return fireNonCancelableEvent(onBlur, { relatedTarget: event.relatedTarget }); }, onFocus: function () { return fireNonCancelableEvent(onFocus); }, tabIndex: -1, "aria-labelledby": ariaLabelledby }), open && children));
37
+ const className = clsx(styles['options-list'], {
38
+ [styles['decrease-top-margin']]: decreaseTopMargin,
39
+ });
40
+ const mergedRef = useMergeRefs(ref, menuRef);
41
+ return (React.createElement("ul", Object.assign({}, baseProps, nativeAttributes, { className: className, ref: mergedRef, style: { position }, role: role, onScroll: handleScroll, onKeyDown: event => onKeyDown && fireKeyboardEvent(onKeyDown, event), onMouseMove: event => onMouseMove === null || onMouseMove === void 0 ? void 0 : onMouseMove(getItemIndex(menuRef, event)), onMouseUp: event => onMouseUp === null || onMouseUp === void 0 ? void 0 : onMouseUp(getItemIndex(menuRef, event)), onBlur: event => fireNonCancelableEvent(onBlur, { relatedTarget: event.relatedTarget }), onFocus: () => fireNonCancelableEvent(onFocus), tabIndex: -1, "aria-labelledby": ariaLabelledby }), open && children));
43
42
  };
44
43
  export default React.forwardRef(OptionsList);
45
44
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/components/options-list/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 clsx from 'clsx';\nimport { useMergeRefs } from '../../hooks/use-merge-refs';\nimport React, { useEffect, useRef } from 'react';\nimport { BaseComponentProps, getBaseProps } from '../../base-component';\nimport {\n fireNonCancelableEvent,\n NonCancelableEventHandler,\n CancelableEventHandler,\n BaseKeyDetail,\n fireKeyboardEvent,\n} from '../../events';\nimport { findUpUntil } from '../../utils/dom';\nimport styles from './styles.css.js';\n\nexport interface OptionsListProps extends BaseComponentProps {\n open?: boolean;\n /**\n * Options list\n */\n children: React.ReactNode;\n nativeAttributes?: Record<string, any>;\n /**\n * Called when more items need to be loaded.\n */\n onLoadMore?: NonCancelableEventHandler;\n onKeyDown?: CancelableEventHandler<BaseKeyDetail>;\n onBlur?: NonCancelableEventHandler<{ relatedTarget: Node | null }>;\n onFocus?: NonCancelableEventHandler;\n onMouseUp?: (itemIndex: number) => void;\n onMouseMove?: (itemIndex: number) => void;\n position?: React.CSSProperties['position'];\n role?: 'listbox' | 'list' | 'menu';\n ariaLabelledby?: string;\n decreaseTopMargin?: boolean;\n}\n\nconst BOTTOM_TRIGGER_OFFSET = 80;\n\nconst getItemIndex = (containerRef: React.RefObject<HTMLElement>, event: React.MouseEvent) => {\n const target = findUpUntil(\n event.target as HTMLElement,\n element => element === containerRef.current || !!element.dataset.mouseTarget\n );\n const mouseTarget = target?.dataset.mouseTarget;\n return mouseTarget ? parseInt(mouseTarget) : -1;\n};\n\nconst OptionsList = (\n {\n open,\n children,\n nativeAttributes = {},\n onKeyDown,\n onBlur,\n onFocus,\n onLoadMore,\n onMouseUp,\n onMouseMove,\n position = 'relative',\n role = 'listbox',\n decreaseTopMargin = false,\n ariaLabelledby,\n ...restProps\n }: OptionsListProps,\n ref: React.Ref<HTMLUListElement>\n) => {\n const baseProps = getBaseProps(restProps);\n const menuRef = useRef<HTMLUListElement>(null);\n\n const handleScroll = () => {\n const scrollContainer = menuRef?.current;\n if (scrollContainer) {\n const bottomEdgePosition = scrollContainer.scrollTop + scrollContainer.clientHeight;\n const remainingScrollHeight = scrollContainer.scrollHeight - bottomEdgePosition;\n if (remainingScrollHeight < BOTTOM_TRIGGER_OFFSET) {\n fireNonCancelableEvent(onLoadMore);\n }\n }\n };\n\n useEffect(() => {\n if (!open) {\n return;\n }\n handleScroll();\n });\n\n const className = clsx(styles['options-list'], {\n [styles['decrease-top-margin']]: decreaseTopMargin,\n });\n\n const mergedRef = useMergeRefs(ref, menuRef);\n\n return (\n <ul\n {...baseProps}\n {...nativeAttributes}\n className={className}\n ref={mergedRef}\n style={{ position }}\n role={role}\n onScroll={handleScroll}\n onKeyDown={event => onKeyDown && fireKeyboardEvent(onKeyDown, event)}\n onMouseMove={event => onMouseMove?.(getItemIndex(menuRef, event))}\n onMouseUp={event => onMouseUp?.(getItemIndex(menuRef, event))}\n onBlur={event => fireNonCancelableEvent(onBlur, { relatedTarget: event.relatedTarget })}\n onFocus={() => fireNonCancelableEvent(onFocus)}\n tabIndex={-1}\n aria-labelledby={ariaLabelledby}\n >\n {open && children}\n </ul>\n );\n};\n\nexport default React.forwardRef(OptionsList);\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/components/options-list/index.tsx"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,EAAsB,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EACL,sBAAsB,EAItB,iBAAiB,GAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAwBrC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAEjC,MAAM,YAAY,GAAG,CAAC,YAA0C,EAAE,KAAuB,EAAE,EAAE;IAC3F,MAAM,MAAM,GAAG,WAAW,CACxB,KAAK,CAAC,MAAqB,EAC3B,OAAO,CAAC,EAAE,CAAC,OAAO,KAAK,YAAY,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAC7E,CAAC;IACF,MAAM,WAAW,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,CAAC,WAAW,CAAC;IAChD,OAAO,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAClB,EAemB,EACnB,GAAgC,EAChC,EAAE;QAjBF,EACE,IAAI,EACJ,QAAQ,EACR,gBAAgB,GAAG,EAAE,EACrB,SAAS,EACT,MAAM,EACN,OAAO,EACP,UAAU,EACV,SAAS,EACT,WAAW,EACX,QAAQ,GAAG,UAAU,EACrB,IAAI,GAAG,SAAS,EAChB,iBAAiB,GAAG,KAAK,EACzB,cAAc,OAEG,EADd,SAAS,cAdd,+KAeC,CADa;IAId,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,MAAM,CAAmB,IAAI,CAAC,CAAC;IAE/C,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,MAAM,eAAe,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC;QACzC,IAAI,eAAe,EAAE;YACnB,MAAM,kBAAkB,GAAG,eAAe,CAAC,SAAS,GAAG,eAAe,CAAC,YAAY,CAAC;YACpF,MAAM,qBAAqB,GAAG,eAAe,CAAC,YAAY,GAAG,kBAAkB,CAAC;YAChF,IAAI,qBAAqB,GAAG,qBAAqB,EAAE;gBACjD,sBAAsB,CAAC,UAAU,CAAC,CAAC;aACpC;SACF;IACH,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,IAAI,EAAE;YACT,OAAO;SACR;QACD,YAAY,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE;QAC7C,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,EAAE,iBAAiB;KACnD,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAE7C,OAAO,CACL,4CACM,SAAS,EACT,gBAAgB,IACpB,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,SAAS,EACd,KAAK,EAAE,EAAE,QAAQ,EAAE,EACnB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,YAAY,EACtB,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,IAAI,iBAAiB,CAAC,SAAS,EAAE,KAAK,CAAC,EACpE,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAG,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EACjE,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAG,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAC7D,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAAC,MAAM,EAAE,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,CAAC,EACvF,OAAO,EAAE,GAAG,EAAE,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAC9C,QAAQ,EAAE,CAAC,CAAC,qBACK,cAAc,KAE9B,IAAI,IAAI,QAAQ,CACd,CACN,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport clsx from 'clsx';\nimport { useMergeRefs } from '../../hooks/use-merge-refs';\nimport React, { useEffect, useRef } from 'react';\nimport { BaseComponentProps, getBaseProps } from '../../base-component';\nimport {\n fireNonCancelableEvent,\n NonCancelableEventHandler,\n CancelableEventHandler,\n BaseKeyDetail,\n fireKeyboardEvent,\n} from '../../events';\nimport { findUpUntil } from '../../utils/dom';\nimport styles from './styles.css.js';\n\nexport interface OptionsListProps extends BaseComponentProps {\n open?: boolean;\n /**\n * Options list\n */\n children: React.ReactNode;\n nativeAttributes?: Record<string, any>;\n /**\n * Called when more items need to be loaded.\n */\n onLoadMore?: NonCancelableEventHandler;\n onKeyDown?: CancelableEventHandler<BaseKeyDetail>;\n onBlur?: NonCancelableEventHandler<{ relatedTarget: Node | null }>;\n onFocus?: NonCancelableEventHandler;\n onMouseUp?: (itemIndex: number) => void;\n onMouseMove?: (itemIndex: number) => void;\n position?: React.CSSProperties['position'];\n role?: 'listbox' | 'list' | 'menu';\n ariaLabelledby?: string;\n decreaseTopMargin?: boolean;\n}\n\nconst BOTTOM_TRIGGER_OFFSET = 80;\n\nconst getItemIndex = (containerRef: React.RefObject<HTMLElement>, event: React.MouseEvent) => {\n const target = findUpUntil(\n event.target as HTMLElement,\n element => element === containerRef.current || !!element.dataset.mouseTarget\n );\n const mouseTarget = target?.dataset.mouseTarget;\n return mouseTarget ? parseInt(mouseTarget) : -1;\n};\n\nconst OptionsList = (\n {\n open,\n children,\n nativeAttributes = {},\n onKeyDown,\n onBlur,\n onFocus,\n onLoadMore,\n onMouseUp,\n onMouseMove,\n position = 'relative',\n role = 'listbox',\n decreaseTopMargin = false,\n ariaLabelledby,\n ...restProps\n }: OptionsListProps,\n ref: React.Ref<HTMLUListElement>\n) => {\n const baseProps = getBaseProps(restProps);\n const menuRef = useRef<HTMLUListElement>(null);\n\n const handleScroll = () => {\n const scrollContainer = menuRef?.current;\n if (scrollContainer) {\n const bottomEdgePosition = scrollContainer.scrollTop + scrollContainer.clientHeight;\n const remainingScrollHeight = scrollContainer.scrollHeight - bottomEdgePosition;\n if (remainingScrollHeight < BOTTOM_TRIGGER_OFFSET) {\n fireNonCancelableEvent(onLoadMore);\n }\n }\n };\n\n useEffect(() => {\n if (!open) {\n return;\n }\n handleScroll();\n });\n\n const className = clsx(styles['options-list'], {\n [styles['decrease-top-margin']]: decreaseTopMargin,\n });\n\n const mergedRef = useMergeRefs(ref, menuRef);\n\n return (\n <ul\n {...baseProps}\n {...nativeAttributes}\n className={className}\n ref={mergedRef}\n style={{ position }}\n role={role}\n onScroll={handleScroll}\n onKeyDown={event => onKeyDown && fireKeyboardEvent(onKeyDown, event)}\n onMouseMove={event => onMouseMove?.(getItemIndex(menuRef, event))}\n onMouseUp={event => onMouseUp?.(getItemIndex(menuRef, event))}\n onBlur={event => fireNonCancelableEvent(onBlur, { relatedTarget: event.relatedTarget })}\n onFocus={() => fireNonCancelableEvent(onFocus)}\n tabIndex={-1}\n aria-labelledby={ariaLabelledby}\n >\n {open && children}\n </ul>\n );\n};\n\nexport default React.forwardRef(OptionsList);\n"]}
@@ -1,28 +1,28 @@
1
- var testIndexMap = new WeakMap();
1
+ const testIndexMap = new WeakMap();
2
2
  //retrieves the test indexes of the option for the findOption and findOptionInGroup test-utils
3
- export var getTestOptionIndexes = function (item) { return testIndexMap.get(item); };
4
- export var generateTestIndexes = function (filteredItems, getParentGroup) {
5
- var throughIndex = 1;
6
- var groupIndex = 0;
7
- var inGroupIndex = 1;
8
- var currentGroup = null;
9
- filteredItems.forEach(function (item) {
3
+ export const getTestOptionIndexes = (item) => testIndexMap.get(item);
4
+ export const generateTestIndexes = (filteredItems, getParentGroup) => {
5
+ let throughIndex = 1;
6
+ let groupIndex = 0;
7
+ let inGroupIndex = 1;
8
+ let currentGroup = null;
9
+ filteredItems.forEach(item => {
10
10
  if (!('type' in item)) {
11
11
  testIndexMap.set(item, { throughIndex: throughIndex++ });
12
12
  }
13
13
  else if (item.type === 'child') {
14
- var parentGroup = getParentGroup(item);
14
+ const parentGroup = getParentGroup(item);
15
15
  if (parentGroup && parentGroup !== currentGroup) {
16
16
  currentGroup = parentGroup;
17
17
  inGroupIndex = 1;
18
18
  testIndexMap.set(item, {
19
19
  throughIndex: throughIndex++,
20
20
  groupIndex: ++groupIndex,
21
- inGroupIndex: inGroupIndex++
21
+ inGroupIndex: inGroupIndex++,
22
22
  });
23
23
  }
24
24
  else {
25
- testIndexMap.set(item, { throughIndex: throughIndex++, groupIndex: groupIndex, inGroupIndex: inGroupIndex++ });
25
+ testIndexMap.set(item, { throughIndex: throughIndex++, groupIndex, inGroupIndex: inGroupIndex++ });
26
26
  }
27
27
  }
28
28
  });
@@ -1 +1 @@
1
- {"version":3,"file":"test-indexes.js","sourceRoot":"","sources":["../../../../../../src/internal/components/options-list/utils/test-indexes.ts"],"names":[],"mappings":"AAUA,IAAM,YAAY,GAAG,IAAI,OAAO,EAAyB,CAAC;AAC1D,8FAA8F;AAC9F,MAAM,CAAC,IAAM,oBAAoB,GAAG,UAAqB,IAAO,IAAK,OAAA,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAtB,CAAsB,CAAC;AAC5F,MAAM,CAAC,IAAM,mBAAmB,GAAG,UACjC,aAA+B,EAC/B,cAA0C;IAE1C,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,YAAY,GAAa,IAAI,CAAC;IAClC,aAAa,CAAC,OAAO,CAAC,UAAA,IAAI;QACxB,IAAI,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,EAAE;YACrB,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;SAC1D;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;YAChC,IAAM,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,WAAW,IAAI,WAAW,KAAK,YAAY,EAAE;gBAC/C,YAAY,GAAG,WAAW,CAAC;gBAC3B,YAAY,GAAG,CAAC,CAAC;gBACjB,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE;oBACrB,YAAY,EAAE,YAAY,EAAE;oBAC5B,UAAU,EAAE,EAAE,UAAU;oBACxB,YAAY,EAAE,YAAY,EAAE;iBAC7B,CAAC,CAAC;aACJ;iBAAM;gBACL,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE,EAAE,UAAU,YAAA,EAAE,YAAY,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;aACpG;SACF;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\ninterface ListItem {\n type?: string;\n}\ninterface TestIndexes {\n throughIndex?: number;\n groupIndex?: number;\n inGroupIndex?: number;\n}\nconst testIndexMap = new WeakMap<ListItem, TestIndexes>();\n//retrieves the test indexes of the option for the findOption and findOptionInGroup test-utils\nexport const getTestOptionIndexes = <T extends ListItem>(item: T) => testIndexMap.get(item);\nexport const generateTestIndexes = <T extends ListItem>(\n filteredItems: ReadonlyArray<T>,\n getParentGroup: (item: T) => T | undefined\n) => {\n let throughIndex = 1;\n let groupIndex = 0;\n let inGroupIndex = 1;\n let currentGroup: T | null = null;\n filteredItems.forEach(item => {\n if (!('type' in item)) {\n testIndexMap.set(item, { throughIndex: throughIndex++ });\n } else if (item.type === 'child') {\n const parentGroup = getParentGroup(item);\n if (parentGroup && parentGroup !== currentGroup) {\n currentGroup = parentGroup;\n inGroupIndex = 1;\n testIndexMap.set(item, {\n throughIndex: throughIndex++,\n groupIndex: ++groupIndex,\n inGroupIndex: inGroupIndex++,\n });\n } else {\n testIndexMap.set(item, { throughIndex: throughIndex++, groupIndex, inGroupIndex: inGroupIndex++ });\n }\n }\n });\n};\n"]}
1
+ {"version":3,"file":"test-indexes.js","sourceRoot":"","sources":["../../../../../../src/internal/components/options-list/utils/test-indexes.ts"],"names":[],"mappings":"AAUA,MAAM,YAAY,GAAG,IAAI,OAAO,EAAyB,CAAC;AAC1D,8FAA8F;AAC9F,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAqB,IAAO,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC5F,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,aAA+B,EAC/B,cAA0C,EAC1C,EAAE;IACF,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,YAAY,GAAa,IAAI,CAAC;IAClC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QAC3B,IAAI,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,EAAE;YACrB,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;SAC1D;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;YAChC,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,WAAW,IAAI,WAAW,KAAK,YAAY,EAAE;gBAC/C,YAAY,GAAG,WAAW,CAAC;gBAC3B,YAAY,GAAG,CAAC,CAAC;gBACjB,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE;oBACrB,YAAY,EAAE,YAAY,EAAE;oBAC5B,UAAU,EAAE,EAAE,UAAU;oBACxB,YAAY,EAAE,YAAY,EAAE;iBAC7B,CAAC,CAAC;aACJ;iBAAM;gBACL,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;aACpG;SACF;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\ninterface ListItem {\n type?: string;\n}\ninterface TestIndexes {\n throughIndex?: number;\n groupIndex?: number;\n inGroupIndex?: number;\n}\nconst testIndexMap = new WeakMap<ListItem, TestIndexes>();\n//retrieves the test indexes of the option for the findOption and findOptionInGroup test-utils\nexport const getTestOptionIndexes = <T extends ListItem>(item: T) => testIndexMap.get(item);\nexport const generateTestIndexes = <T extends ListItem>(\n filteredItems: ReadonlyArray<T>,\n getParentGroup: (item: T) => T | undefined\n) => {\n let throughIndex = 1;\n let groupIndex = 0;\n let inGroupIndex = 1;\n let currentGroup: T | null = null;\n filteredItems.forEach(item => {\n if (!('type' in item)) {\n testIndexMap.set(item, { throughIndex: throughIndex++ });\n } else if (item.type === 'child') {\n const parentGroup = getParentGroup(item);\n if (parentGroup && parentGroup !== currentGroup) {\n currentGroup = parentGroup;\n inGroupIndex = 1;\n testIndexMap.set(item, {\n throughIndex: throughIndex++,\n groupIndex: ++groupIndex,\n inGroupIndex: inGroupIndex++,\n });\n } else {\n testIndexMap.set(item, { throughIndex: throughIndex++, groupIndex, inGroupIndex: inGroupIndex++ });\n }\n }\n });\n};\n"]}
@@ -1,18 +1,16 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
  import { useCallback, useState } from 'react';
4
- export function useHighlightedOption(_a) {
5
- var options = _a.options, isHighlightable = _a.isHighlightable;
6
- var _b = useState(-1), highlightedIndex = _b[0], setHighlightedIndexState = _b[1];
7
- var _c = useState('keyboard'), highlightType = _c[0], setHighlightType = _c[1];
8
- var setHighlightedIndex = useCallback(function (index, highlightType) {
4
+ export function useHighlightedOption({ options, isHighlightable, }) {
5
+ const [highlightedIndex, setHighlightedIndexState] = useState(-1);
6
+ const [highlightType, setHighlightType] = useState('keyboard');
7
+ const setHighlightedIndex = useCallback((index, highlightType) => {
9
8
  setHighlightedIndexState(index);
10
9
  setHighlightType(highlightType);
11
10
  }, []);
12
- var highlightedOption = options[highlightedIndex] && isHighlightable(options[highlightedIndex]) ? options[highlightedIndex] : undefined;
13
- var moveHighlightFrom = function (direction, startIndex, highlightType) {
14
- if (startIndex === void 0) { startIndex = highlightedIndex; }
15
- var newIndex = startIndex;
11
+ const highlightedOption = options[highlightedIndex] && isHighlightable(options[highlightedIndex]) ? options[highlightedIndex] : undefined;
12
+ const moveHighlightFrom = (direction, startIndex = highlightedIndex, highlightType) => {
13
+ let newIndex = startIndex;
16
14
  do {
17
15
  newIndex += direction;
18
16
  } while (options[newIndex] && !isHighlightable(options[newIndex]));
@@ -20,22 +18,20 @@ export function useHighlightedOption(_a) {
20
18
  setHighlightedIndex(newIndex, highlightType);
21
19
  }
22
20
  };
23
- var moveHighlight = function (direction, highlightType) {
24
- return moveHighlightFrom(direction, highlightedIndex, highlightType);
25
- };
26
- var highlightOption = useCallback(function (option, highlightType) {
27
- var index = options.indexOf(option);
21
+ const moveHighlight = (direction, highlightType) => moveHighlightFrom(direction, highlightedIndex, highlightType);
22
+ const highlightOption = useCallback((option, highlightType) => {
23
+ const index = options.indexOf(option);
28
24
  setHighlightedIndex(index, highlightType);
29
25
  }, [options, setHighlightedIndex]);
30
26
  return [
31
- { highlightType: highlightType, highlightedIndex: highlightedIndex, highlightedOption: highlightedOption },
27
+ { highlightType, highlightedIndex, highlightedOption },
32
28
  {
33
- setHighlightedIndexWithMouse: function (index) { return setHighlightedIndex(index, 'mouse'); },
34
- moveHighlightWithKeyboard: function (direction) { return moveHighlight(direction, 'keyboard'); },
35
- highlightOptionWithKeyboard: function (option) { return highlightOption(option, 'keyboard'); },
36
- resetHighlightWithKeyboard: function () { return setHighlightedIndex(-1, 'keyboard'); },
37
- goHomeWithKeyboard: function () { return moveHighlightFrom(1, -1, 'keyboard'); },
38
- goEndWithKeyboard: function () { return moveHighlightFrom(-1, options.length, 'keyboard'); }
29
+ setHighlightedIndexWithMouse: (index) => setHighlightedIndex(index, 'mouse'),
30
+ moveHighlightWithKeyboard: (direction) => moveHighlight(direction, 'keyboard'),
31
+ highlightOptionWithKeyboard: (option) => highlightOption(option, 'keyboard'),
32
+ resetHighlightWithKeyboard: () => setHighlightedIndex(-1, 'keyboard'),
33
+ goHomeWithKeyboard: () => moveHighlightFrom(1, -1, 'keyboard'),
34
+ goEndWithKeyboard: () => moveHighlightFrom(-1, options.length, 'keyboard'),
39
35
  },
40
36
  ];
41
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"use-highlight-option.js","sourceRoot":"","sources":["../../../../../../src/internal/components/options-list/utils/use-highlight-option.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AA0B9C,MAAM,UAAU,oBAAoB,CAAa,EAGZ;QAFnC,OAAO,aAAA,EACP,eAAe,qBAAA;IAET,IAAA,KAA+C,QAAQ,CAAC,CAAC,CAAC,CAAC,EAA1D,gBAAgB,QAAA,EAAE,wBAAwB,QAAgB,CAAC;IAC5D,IAAA,KAAoC,QAAQ,CAAgB,UAAU,CAAC,EAAtE,aAAa,QAAA,EAAE,gBAAgB,QAAuC,CAAC;IAC9E,IAAM,mBAAmB,GAAG,WAAW,CAAC,UAAC,KAAa,EAAE,aAA4B;QAClF,wBAAwB,CAAC,KAAK,CAAC,CAAC;QAChC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAM,iBAAiB,GACrB,OAAO,CAAC,gBAAgB,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAElH,IAAM,iBAAiB,GAAG,UAAC,SAAiB,EAAE,UAA6B,EAAE,aAA4B;QAA3D,2BAAA,EAAA,6BAA6B;QACzE,IAAI,QAAQ,GAAG,UAAU,CAAC;QAC1B,GAAG;YACD,QAAQ,IAAI,SAAS,CAAC;SACvB,QAAQ,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE;QAEnE,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE;YACrB,mBAAmB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;SAC9C;IACH,CAAC,CAAC;IAEF,IAAM,aAAa,GAAG,UAAC,SAAiB,EAAE,aAA4B;QACpE,OAAA,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,EAAE,aAAa,CAAC;IAA7D,CAA6D,CAAC;IAEhE,IAAM,eAAe,GAAG,WAAW,CACjC,UAAC,MAAkB,EAAE,aAA4B;QAC/C,IAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACtC,mBAAmB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAC5C,CAAC,EACD,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAC/B,CAAC;IAEF,OAAO;QACL,EAAE,aAAa,eAAA,EAAE,gBAAgB,kBAAA,EAAE,iBAAiB,mBAAA,EAAE;QACtD;YACE,4BAA4B,EAAE,UAAC,KAAa,IAAK,OAAA,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,EAAnC,CAAmC;YACpF,yBAAyB,EAAE,UAAC,SAAiB,IAAK,OAAA,aAAa,CAAC,SAAS,EAAE,UAAU,CAAC,EAApC,CAAoC;YACtF,2BAA2B,EAAE,UAAC,MAAkB,IAAK,OAAA,eAAe,CAAC,MAAM,EAAE,UAAU,CAAC,EAAnC,CAAmC;YACxF,0BAA0B,EAAE,cAAM,OAAA,mBAAmB,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,EAAnC,CAAmC;YACrE,kBAAkB,EAAE,cAAM,OAAA,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC,EAApC,CAAoC;YAC9D,iBAAiB,EAAE,cAAM,OAAA,iBAAiB,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,EAAjD,CAAiD;SAC3E;KACF,CAAC;AACJ,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { useCallback, useState } from 'react';\n\nexport type HighlightType = 'keyboard' | 'mouse';\n\nexport interface HighlightedOptionProps<OptionType> {\n options: readonly OptionType[];\n isHighlightable: (option: OptionType) => boolean;\n}\n\nexport interface HighlightedOptionState<OptionType> {\n highlightType: HighlightType;\n highlightedIndex: number;\n highlightedOption?: OptionType;\n}\n\nexport interface HighlightedOptionHandlers<OptionType> {\n // Mouse handlers\n setHighlightedIndexWithMouse(index: number): void;\n // Keyboard handlers\n moveHighlightWithKeyboard(direction: -1 | 1): void;\n highlightOptionWithKeyboard(option: OptionType): void;\n resetHighlightWithKeyboard(): void;\n goHomeWithKeyboard(): void;\n goEndWithKeyboard(): void;\n}\n\nexport function useHighlightedOption<OptionType>({\n options,\n isHighlightable,\n}: HighlightedOptionProps<OptionType>): [HighlightedOptionState<OptionType>, HighlightedOptionHandlers<OptionType>] {\n const [highlightedIndex, setHighlightedIndexState] = useState(-1);\n const [highlightType, setHighlightType] = useState<HighlightType>('keyboard');\n const setHighlightedIndex = useCallback((index: number, highlightType: HighlightType) => {\n setHighlightedIndexState(index);\n setHighlightType(highlightType);\n }, []);\n\n const highlightedOption =\n options[highlightedIndex] && isHighlightable(options[highlightedIndex]) ? options[highlightedIndex] : undefined;\n\n const moveHighlightFrom = (direction: -1 | 1, startIndex = highlightedIndex, highlightType: HighlightType) => {\n let newIndex = startIndex;\n do {\n newIndex += direction;\n } while (options[newIndex] && !isHighlightable(options[newIndex]));\n\n if (options[newIndex]) {\n setHighlightedIndex(newIndex, highlightType);\n }\n };\n\n const moveHighlight = (direction: -1 | 1, highlightType: HighlightType) =>\n moveHighlightFrom(direction, highlightedIndex, highlightType);\n\n const highlightOption = useCallback(\n (option: OptionType, highlightType: HighlightType) => {\n const index = options.indexOf(option);\n setHighlightedIndex(index, highlightType);\n },\n [options, setHighlightedIndex]\n );\n\n return [\n { highlightType, highlightedIndex, highlightedOption },\n {\n setHighlightedIndexWithMouse: (index: number) => setHighlightedIndex(index, 'mouse'),\n moveHighlightWithKeyboard: (direction: -1 | 1) => moveHighlight(direction, 'keyboard'),\n highlightOptionWithKeyboard: (option: OptionType) => highlightOption(option, 'keyboard'),\n resetHighlightWithKeyboard: () => setHighlightedIndex(-1, 'keyboard'),\n goHomeWithKeyboard: () => moveHighlightFrom(1, -1, 'keyboard'),\n goEndWithKeyboard: () => moveHighlightFrom(-1, options.length, 'keyboard'),\n },\n ];\n}\n"]}
1
+ {"version":3,"file":"use-highlight-option.js","sourceRoot":"","sources":["../../../../../../src/internal/components/options-list/utils/use-highlight-option.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AA0B9C,MAAM,UAAU,oBAAoB,CAAa,EAC/C,OAAO,EACP,eAAe,GACoB;IACnC,MAAM,CAAC,gBAAgB,EAAE,wBAAwB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAgB,UAAU,CAAC,CAAC;IAC9E,MAAM,mBAAmB,GAAG,WAAW,CAAC,CAAC,KAAa,EAAE,aAA4B,EAAE,EAAE;QACtF,wBAAwB,CAAC,KAAK,CAAC,CAAC;QAChC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,iBAAiB,GACrB,OAAO,CAAC,gBAAgB,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAElH,MAAM,iBAAiB,GAAG,CAAC,SAAiB,EAAE,UAAU,GAAG,gBAAgB,EAAE,aAA4B,EAAE,EAAE;QAC3G,IAAI,QAAQ,GAAG,UAAU,CAAC;QAC1B,GAAG;YACD,QAAQ,IAAI,SAAS,CAAC;SACvB,QAAQ,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE;QAEnE,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE;YACrB,mBAAmB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;SAC9C;IACH,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,CAAC,SAAiB,EAAE,aAA4B,EAAE,EAAE,CACxE,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAC;IAEhE,MAAM,eAAe,GAAG,WAAW,CACjC,CAAC,MAAkB,EAAE,aAA4B,EAAE,EAAE;QACnD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACtC,mBAAmB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAC5C,CAAC,EACD,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAC/B,CAAC;IAEF,OAAO;QACL,EAAE,aAAa,EAAE,gBAAgB,EAAE,iBAAiB,EAAE;QACtD;YACE,4BAA4B,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC;YACpF,yBAAyB,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,UAAU,CAAC;YACtF,2BAA2B,EAAE,CAAC,MAAkB,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,UAAU,CAAC;YACxF,0BAA0B,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC;YACrE,kBAAkB,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC;YAC9D,iBAAiB,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC;SAC3E;KACF,CAAC;AACJ,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { useCallback, useState } from 'react';\n\nexport type HighlightType = 'keyboard' | 'mouse';\n\nexport interface HighlightedOptionProps<OptionType> {\n options: readonly OptionType[];\n isHighlightable: (option: OptionType) => boolean;\n}\n\nexport interface HighlightedOptionState<OptionType> {\n highlightType: HighlightType;\n highlightedIndex: number;\n highlightedOption?: OptionType;\n}\n\nexport interface HighlightedOptionHandlers<OptionType> {\n // Mouse handlers\n setHighlightedIndexWithMouse(index: number): void;\n // Keyboard handlers\n moveHighlightWithKeyboard(direction: -1 | 1): void;\n highlightOptionWithKeyboard(option: OptionType): void;\n resetHighlightWithKeyboard(): void;\n goHomeWithKeyboard(): void;\n goEndWithKeyboard(): void;\n}\n\nexport function useHighlightedOption<OptionType>({\n options,\n isHighlightable,\n}: HighlightedOptionProps<OptionType>): [HighlightedOptionState<OptionType>, HighlightedOptionHandlers<OptionType>] {\n const [highlightedIndex, setHighlightedIndexState] = useState(-1);\n const [highlightType, setHighlightType] = useState<HighlightType>('keyboard');\n const setHighlightedIndex = useCallback((index: number, highlightType: HighlightType) => {\n setHighlightedIndexState(index);\n setHighlightType(highlightType);\n }, []);\n\n const highlightedOption =\n options[highlightedIndex] && isHighlightable(options[highlightedIndex]) ? options[highlightedIndex] : undefined;\n\n const moveHighlightFrom = (direction: -1 | 1, startIndex = highlightedIndex, highlightType: HighlightType) => {\n let newIndex = startIndex;\n do {\n newIndex += direction;\n } while (options[newIndex] && !isHighlightable(options[newIndex]));\n\n if (options[newIndex]) {\n setHighlightedIndex(newIndex, highlightType);\n }\n };\n\n const moveHighlight = (direction: -1 | 1, highlightType: HighlightType) =>\n moveHighlightFrom(direction, highlightedIndex, highlightType);\n\n const highlightOption = useCallback(\n (option: OptionType, highlightType: HighlightType) => {\n const index = options.indexOf(option);\n setHighlightedIndex(index, highlightType);\n },\n [options, setHighlightedIndex]\n );\n\n return [\n { highlightType, highlightedIndex, highlightedOption },\n {\n setHighlightedIndexWithMouse: (index: number) => setHighlightedIndex(index, 'mouse'),\n moveHighlightWithKeyboard: (direction: -1 | 1) => moveHighlight(direction, 'keyboard'),\n highlightOptionWithKeyboard: (option: OptionType) => highlightOption(option, 'keyboard'),\n resetHighlightWithKeyboard: () => setHighlightedIndex(-1, 'keyboard'),\n goHomeWithKeyboard: () => moveHighlightFrom(1, -1, 'keyboard'),\n goEndWithKeyboard: () => moveHighlightFrom(-1, options.length, 'keyboard'),\n },\n ];\n}\n"]}
@@ -1,9 +1,9 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
- export var getOptionId = function (menuId, index) {
3
+ export const getOptionId = (menuId, index) => {
4
4
  if (index < 0) {
5
5
  return undefined;
6
6
  }
7
- return "".concat(menuId, "-option-").concat(index);
7
+ return `${menuId}-option-${index}`;
8
8
  };
9
9
  //# sourceMappingURL=use-ids.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-ids.js","sourceRoot":"","sources":["../../../../../../src/internal/components/options-list/utils/use-ids.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,MAAM,CAAC,IAAM,WAAW,GAAG,UAAC,MAAc,EAAE,KAAa;IACvD,IAAI,KAAK,GAAG,CAAC,EAAE;QACb,OAAO,SAAS,CAAC;KAClB;IACD,OAAO,UAAG,MAAM,qBAAW,KAAK,CAAE,CAAC;AACrC,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const getOptionId = (menuId: string, index: number) => {\n if (index < 0) {\n return undefined;\n }\n return `${menuId}-option-${index}`;\n};\n"]}
1
+ {"version":3,"file":"use-ids.js","sourceRoot":"","sources":["../../../../../../src/internal/components/options-list/utils/use-ids.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,KAAa,EAAE,EAAE;IAC3D,IAAI,KAAK,GAAG,CAAC,EAAE;QACb,OAAO,SAAS,CAAC;KAClB;IACD,OAAO,GAAG,MAAM,WAAW,KAAK,EAAE,CAAC;AACrC,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const getOptionId = (menuId: string, index: number) => {\n if (index < 0) {\n return undefined;\n }\n return `${menuId}-option-${index}`;\n};\n"]}
@@ -2,11 +2,10 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
  import { useCallback } from 'react';
4
4
  import { KeyCode } from '../../../keycode';
5
- var HOME = 36;
6
- var END = 35;
7
- export var useMenuKeyboard = function (_a) {
8
- var moveHighlight = _a.moveHighlight, selectOption = _a.selectOption, goHome = _a.goHome, goEnd = _a.goEnd, closeDropdown = _a.closeDropdown, isSelectingUsingSpace = _a.isSelectingUsingSpace, _b = _a.preventNativeSpace, preventNativeSpace = _b === void 0 ? false : _b;
9
- return useCallback(function (e) {
5
+ const HOME = 36;
6
+ const END = 35;
7
+ export const useMenuKeyboard = ({ moveHighlight, selectOption, goHome, goEnd, closeDropdown, isSelectingUsingSpace, preventNativeSpace = false, }) => {
8
+ return useCallback((e) => {
10
9
  switch (e.detail.keyCode) {
11
10
  case KeyCode.up:
12
11
  e.preventDefault();
@@ -38,9 +37,8 @@ export var useMenuKeyboard = function (_a) {
38
37
  }
39
38
  }, [moveHighlight, selectOption, goHome, goEnd, closeDropdown, isSelectingUsingSpace, preventNativeSpace]);
40
39
  };
41
- export var useTriggerKeyboard = function (_a) {
42
- var openDropdown = _a.openDropdown, goHome = _a.goHome;
43
- return useCallback(function (e) {
40
+ export const useTriggerKeyboard = ({ openDropdown, goHome }) => {
41
+ return useCallback((e) => {
44
42
  switch (e.detail.keyCode) {
45
43
  case KeyCode.up:
46
44
  case KeyCode.down:
@@ -1 +1 @@
1
- {"version":3,"file":"use-keyboard.js","sourceRoot":"","sources":["../../../../../../src/internal/components/options-list/utils/use-keyboard.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,EAAE,WAAW,EAAoB,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAG3C,IAAM,IAAI,GAAG,EAAE,CAAC;AAChB,IAAM,GAAG,GAAG,EAAE,CAAC;AAcf,MAAM,CAAC,IAAM,eAAe,GAAoB,UAAC,EAQhD;QAPC,aAAa,mBAAA,EACb,YAAY,kBAAA,EACZ,MAAM,YAAA,EACN,KAAK,WAAA,EACL,aAAa,mBAAA,EACb,qBAAqB,2BAAA,EACrB,0BAA0B,EAA1B,kBAAkB,mBAAG,KAAK,KAAA;IAE1B,OAAO,WAAW,CAChB,UAAC,CAA6B;QAC5B,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE;YACxB,KAAK,OAAO,CAAC,EAAE;gBACb,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;gBAClB,MAAM;YACR,KAAK,OAAO,CAAC,IAAI;gBACf,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,aAAa,CAAC,CAAC,CAAC,CAAC;gBACjB,MAAM;YACR,KAAK,IAAI;gBACP,MAAM,EAAE,CAAC;gBACT,MAAM;YACR,KAAK,GAAG;gBACN,KAAK,EAAE,CAAC;gBACR,MAAM;YACR,KAAK,OAAO,CAAC,MAAM;gBACjB,aAAa,EAAE,CAAC;gBAChB,MAAM;YACR,KAAK,OAAO,CAAC,KAAK;gBAChB,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,YAAY,EAAE,CAAC;gBACf,MAAM;YACR,KAAK,OAAO,CAAC,KAAK;gBAChB,IAAI,kBAAkB,EAAE;oBACtB,CAAC,CAAC,cAAc,EAAE,CAAC;oBACnB,YAAY,EAAE,CAAC;oBACf,qBAAqB,CAAC,OAAO,GAAG,IAAI,CAAC;iBACtC;SACJ;IACH,CAAC,EACD,CAAC,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,kBAAkB,CAAC,CACvG,CAAC;AACJ,CAAC,CAAC;AAMF,MAAM,CAAC,IAAM,kBAAkB,GAAuB,UAAC,EAAwB;QAAtB,YAAY,kBAAA,EAAE,MAAM,YAAA;IAC3E,OAAO,WAAW,CAChB,UAAC,CAA6B;QAC5B,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE;YACxB,KAAK,OAAO,CAAC,EAAE,CAAC;YAChB,KAAK,OAAO,CAAC,IAAI;gBACf,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,MAAM,EAAE,CAAC;gBACT,YAAY,EAAE,CAAC;gBACf,MAAM;YACR,KAAK,OAAO,CAAC,KAAK,CAAC;YACnB,KAAK,OAAO,CAAC,KAAK;gBAChB,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,YAAY,EAAE,CAAC;gBACf,MAAM;SACT;IACH,CAAC,EACD,CAAC,YAAY,EAAE,MAAM,CAAC,CACvB,CAAC;AACJ,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { useCallback, MutableRefObject } from 'react';\nimport { KeyCode } from '../../../keycode';\nimport { BaseKeyDetail, CancelableEventHandler } from '../../../events';\n\nconst HOME = 36;\nconst END = 35;\n\ninterface UseMenuKeyboard {\n (inputProps: {\n moveHighlight: (direction: -1 | 1, startIndex?: number) => void;\n selectOption: () => void;\n goHome: () => void;\n goEnd: () => void;\n closeDropdown: () => void;\n isSelectingUsingSpace: MutableRefObject<boolean>;\n preventNativeSpace?: boolean;\n }): CancelableEventHandler<BaseKeyDetail>;\n}\n\nexport const useMenuKeyboard: UseMenuKeyboard = ({\n moveHighlight,\n selectOption,\n goHome,\n goEnd,\n closeDropdown,\n isSelectingUsingSpace,\n preventNativeSpace = false,\n}) => {\n return useCallback(\n (e: CustomEvent<BaseKeyDetail>) => {\n switch (e.detail.keyCode) {\n case KeyCode.up:\n e.preventDefault();\n moveHighlight(-1);\n break;\n case KeyCode.down:\n e.preventDefault();\n moveHighlight(1);\n break;\n case HOME:\n goHome();\n break;\n case END:\n goEnd();\n break;\n case KeyCode.escape:\n closeDropdown();\n break;\n case KeyCode.enter:\n e.preventDefault();\n selectOption();\n break;\n case KeyCode.space:\n if (preventNativeSpace) {\n e.preventDefault();\n selectOption();\n isSelectingUsingSpace.current = true;\n }\n }\n },\n [moveHighlight, selectOption, goHome, goEnd, closeDropdown, isSelectingUsingSpace, preventNativeSpace]\n );\n};\n\ninterface UseTriggerKeyboard {\n (inputProps: { openDropdown: () => void; goHome: () => void }): CancelableEventHandler<BaseKeyDetail>;\n}\n\nexport const useTriggerKeyboard: UseTriggerKeyboard = ({ openDropdown, goHome }) => {\n return useCallback(\n (e: CustomEvent<BaseKeyDetail>) => {\n switch (e.detail.keyCode) {\n case KeyCode.up:\n case KeyCode.down:\n e.preventDefault();\n goHome();\n openDropdown();\n break;\n case KeyCode.space:\n case KeyCode.enter:\n e.preventDefault();\n openDropdown();\n break;\n }\n },\n [openDropdown, goHome]\n );\n};\n"]}
1
+ {"version":3,"file":"use-keyboard.js","sourceRoot":"","sources":["../../../../../../src/internal/components/options-list/utils/use-keyboard.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,EAAE,WAAW,EAAoB,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAG3C,MAAM,IAAI,GAAG,EAAE,CAAC;AAChB,MAAM,GAAG,GAAG,EAAE,CAAC;AAcf,MAAM,CAAC,MAAM,eAAe,GAAoB,CAAC,EAC/C,aAAa,EACb,YAAY,EACZ,MAAM,EACN,KAAK,EACL,aAAa,EACb,qBAAqB,EACrB,kBAAkB,GAAG,KAAK,GAC3B,EAAE,EAAE;IACH,OAAO,WAAW,CAChB,CAAC,CAA6B,EAAE,EAAE;QAChC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE;YACxB,KAAK,OAAO,CAAC,EAAE;gBACb,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;gBAClB,MAAM;YACR,KAAK,OAAO,CAAC,IAAI;gBACf,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,aAAa,CAAC,CAAC,CAAC,CAAC;gBACjB,MAAM;YACR,KAAK,IAAI;gBACP,MAAM,EAAE,CAAC;gBACT,MAAM;YACR,KAAK,GAAG;gBACN,KAAK,EAAE,CAAC;gBACR,MAAM;YACR,KAAK,OAAO,CAAC,MAAM;gBACjB,aAAa,EAAE,CAAC;gBAChB,MAAM;YACR,KAAK,OAAO,CAAC,KAAK;gBAChB,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,YAAY,EAAE,CAAC;gBACf,MAAM;YACR,KAAK,OAAO,CAAC,KAAK;gBAChB,IAAI,kBAAkB,EAAE;oBACtB,CAAC,CAAC,cAAc,EAAE,CAAC;oBACnB,YAAY,EAAE,CAAC;oBACf,qBAAqB,CAAC,OAAO,GAAG,IAAI,CAAC;iBACtC;SACJ;IACH,CAAC,EACD,CAAC,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,kBAAkB,CAAC,CACvG,CAAC;AACJ,CAAC,CAAC;AAMF,MAAM,CAAC,MAAM,kBAAkB,GAAuB,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE;IACjF,OAAO,WAAW,CAChB,CAAC,CAA6B,EAAE,EAAE;QAChC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE;YACxB,KAAK,OAAO,CAAC,EAAE,CAAC;YAChB,KAAK,OAAO,CAAC,IAAI;gBACf,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,MAAM,EAAE,CAAC;gBACT,YAAY,EAAE,CAAC;gBACf,MAAM;YACR,KAAK,OAAO,CAAC,KAAK,CAAC;YACnB,KAAK,OAAO,CAAC,KAAK;gBAChB,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,YAAY,EAAE,CAAC;gBACf,MAAM;SACT;IACH,CAAC,EACD,CAAC,YAAY,EAAE,MAAM,CAAC,CACvB,CAAC;AACJ,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { useCallback, MutableRefObject } from 'react';\nimport { KeyCode } from '../../../keycode';\nimport { BaseKeyDetail, CancelableEventHandler } from '../../../events';\n\nconst HOME = 36;\nconst END = 35;\n\ninterface UseMenuKeyboard {\n (inputProps: {\n moveHighlight: (direction: -1 | 1, startIndex?: number) => void;\n selectOption: () => void;\n goHome: () => void;\n goEnd: () => void;\n closeDropdown: () => void;\n isSelectingUsingSpace: MutableRefObject<boolean>;\n preventNativeSpace?: boolean;\n }): CancelableEventHandler<BaseKeyDetail>;\n}\n\nexport const useMenuKeyboard: UseMenuKeyboard = ({\n moveHighlight,\n selectOption,\n goHome,\n goEnd,\n closeDropdown,\n isSelectingUsingSpace,\n preventNativeSpace = false,\n}) => {\n return useCallback(\n (e: CustomEvent<BaseKeyDetail>) => {\n switch (e.detail.keyCode) {\n case KeyCode.up:\n e.preventDefault();\n moveHighlight(-1);\n break;\n case KeyCode.down:\n e.preventDefault();\n moveHighlight(1);\n break;\n case HOME:\n goHome();\n break;\n case END:\n goEnd();\n break;\n case KeyCode.escape:\n closeDropdown();\n break;\n case KeyCode.enter:\n e.preventDefault();\n selectOption();\n break;\n case KeyCode.space:\n if (preventNativeSpace) {\n e.preventDefault();\n selectOption();\n isSelectingUsingSpace.current = true;\n }\n }\n },\n [moveHighlight, selectOption, goHome, goEnd, closeDropdown, isSelectingUsingSpace, preventNativeSpace]\n );\n};\n\ninterface UseTriggerKeyboard {\n (inputProps: { openDropdown: () => void; goHome: () => void }): CancelableEventHandler<BaseKeyDetail>;\n}\n\nexport const useTriggerKeyboard: UseTriggerKeyboard = ({ openDropdown, goHome }) => {\n return useCallback(\n (e: CustomEvent<BaseKeyDetail>) => {\n switch (e.detail.keyCode) {\n case KeyCode.up:\n case KeyCode.down:\n e.preventDefault();\n goHome();\n openDropdown();\n break;\n case KeyCode.space:\n case KeyCode.enter:\n e.preventDefault();\n openDropdown();\n break;\n }\n },\n [openDropdown, goHome]\n );\n};\n"]}
@@ -1,22 +1,21 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
  import { useState } from 'react';
4
- export var useOpenState = function (_a) {
5
- var onOpen = _a.onOpen, onClose = _a.onClose;
6
- var _b = useState(false), isOpen = _b[0], setIsOpen = _b[1];
7
- var openDropdown = function () {
4
+ export const useOpenState = ({ onOpen, onClose }) => {
5
+ const [isOpen, setIsOpen] = useState(false);
6
+ const openDropdown = () => {
8
7
  if (!isOpen) {
9
8
  setIsOpen(true);
10
9
  onOpen === null || onOpen === void 0 ? void 0 : onOpen();
11
10
  }
12
11
  };
13
- var closeDropdown = function () {
12
+ const closeDropdown = () => {
14
13
  if (isOpen) {
15
14
  setIsOpen(false);
16
15
  onClose === null || onClose === void 0 ? void 0 : onClose();
17
16
  }
18
17
  };
19
- var toggleDropdown = function () {
18
+ const toggleDropdown = () => {
20
19
  if (isOpen) {
21
20
  closeDropdown();
22
21
  }
@@ -24,6 +23,6 @@ export var useOpenState = function (_a) {
24
23
  openDropdown();
25
24
  }
26
25
  };
27
- return { isOpen: isOpen, openDropdown: openDropdown, closeDropdown: closeDropdown, toggleDropdown: toggleDropdown };
26
+ return { isOpen, openDropdown, closeDropdown, toggleDropdown };
28
27
  };
29
28
  //# sourceMappingURL=use-open-state.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-open-state.js","sourceRoot":"","sources":["../../../../../../src/internal/components/options-list/utils/use-open-state.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAOjC,MAAM,CAAC,IAAM,YAAY,GAAG,UAAC,EAAmC;QAAjC,MAAM,YAAA,EAAE,OAAO,aAAA;IACtC,IAAA,KAAsB,QAAQ,CAAC,KAAK,CAAC,EAApC,MAAM,QAAA,EAAE,SAAS,QAAmB,CAAC;IAE5C,IAAM,YAAY,GAAG;QACnB,IAAI,CAAC,MAAM,EAAE;YACX,SAAS,CAAC,IAAI,CAAC,CAAC;YAChB,MAAM,aAAN,MAAM,uBAAN,MAAM,EAAI,CAAC;SACZ;IACH,CAAC,CAAC;IAEF,IAAM,aAAa,GAAG;QACpB,IAAI,MAAM,EAAE;YACV,SAAS,CAAC,KAAK,CAAC,CAAC;YACjB,OAAO,aAAP,OAAO,uBAAP,OAAO,EAAI,CAAC;SACb;IACH,CAAC,CAAC;IAEF,IAAM,cAAc,GAAG;QACrB,IAAI,MAAM,EAAE;YACV,aAAa,EAAE,CAAC;SACjB;aAAM;YACL,YAAY,EAAE,CAAC;SAChB;IACH,CAAC,CAAC;IAEF,OAAO,EAAE,MAAM,QAAA,EAAE,YAAY,cAAA,EAAE,aAAa,eAAA,EAAE,cAAc,gBAAA,EAAE,CAAC;AACjE,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { useState } from 'react';\n\ninterface OpenStateProps {\n onOpen?: () => void;\n onClose?: () => void;\n}\n\nexport const useOpenState = ({ onOpen, onClose }: OpenStateProps) => {\n const [isOpen, setIsOpen] = useState(false);\n\n const openDropdown = () => {\n if (!isOpen) {\n setIsOpen(true);\n onOpen?.();\n }\n };\n\n const closeDropdown = () => {\n if (isOpen) {\n setIsOpen(false);\n onClose?.();\n }\n };\n\n const toggleDropdown = () => {\n if (isOpen) {\n closeDropdown();\n } else {\n openDropdown();\n }\n };\n\n return { isOpen, openDropdown, closeDropdown, toggleDropdown };\n};\n"]}
1
+ {"version":3,"file":"use-open-state.js","sourceRoot":"","sources":["../../../../../../src/internal/components/options-list/utils/use-open-state.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAOjC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAkB,EAAE,EAAE;IAClE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5C,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,IAAI,CAAC,MAAM,EAAE;YACX,SAAS,CAAC,IAAI,CAAC,CAAC;YAChB,MAAM,aAAN,MAAM,uBAAN,MAAM,EAAI,CAAC;SACZ;IACH,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,IAAI,MAAM,EAAE;YACV,SAAS,CAAC,KAAK,CAAC,CAAC;YACjB,OAAO,aAAP,OAAO,uBAAP,OAAO,EAAI,CAAC;SACb;IACH,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,GAAG,EAAE;QAC1B,IAAI,MAAM,EAAE;YACV,aAAa,EAAE,CAAC;SACjB;aAAM;YACL,YAAY,EAAE,CAAC;SAChB;IACH,CAAC,CAAC;IAEF,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,CAAC;AACjE,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { useState } from 'react';\n\ninterface OpenStateProps {\n onOpen?: () => void;\n onClose?: () => void;\n}\n\nexport const useOpenState = ({ onOpen, onClose }: OpenStateProps) => {\n const [isOpen, setIsOpen] = useState(false);\n\n const openDropdown = () => {\n if (!isOpen) {\n setIsOpen(true);\n onOpen?.();\n }\n };\n\n const closeDropdown = () => {\n if (isOpen) {\n setIsOpen(false);\n onClose?.();\n }\n };\n\n const toggleDropdown = () => {\n if (isOpen) {\n closeDropdown();\n } else {\n openDropdown();\n }\n };\n\n return { isOpen, openDropdown, closeDropdown, toggleDropdown };\n};\n"]}
@@ -6,18 +6,17 @@ import { createPortal } from 'react-dom';
6
6
  * A safe react portal component that renders to a provided node.
7
7
  * If a node isn't provided, it creates one under document.body.
8
8
  */
9
- export default function Portal(_a) {
10
- var container = _a.container, children = _a.children;
11
- var _b = useState(container !== null && container !== void 0 ? container : null), activeContainer = _b[0], setActiveContainer = _b[1];
12
- useLayoutEffect(function () {
9
+ export default function Portal({ container, children }) {
10
+ const [activeContainer, setActiveContainer] = useState(container !== null && container !== void 0 ? container : null);
11
+ useLayoutEffect(() => {
13
12
  if (container) {
14
13
  setActiveContainer(container);
15
14
  return;
16
15
  }
17
- var newContainer = document.createElement('div');
16
+ const newContainer = document.createElement('div');
18
17
  document.body.appendChild(newContainer);
19
18
  setActiveContainer(newContainer);
20
- return function () {
19
+ return () => {
21
20
  document.body.removeChild(newContainer);
22
21
  setActiveContainer(null);
23
22
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/components/portal/index.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAc,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAOzC;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAAoC;QAAlC,SAAS,eAAA,EAAE,QAAQ,cAAA;IAC5C,IAAA,KAAwC,QAAQ,CAAiB,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,IAAI,CAAC,EAAlF,eAAe,QAAA,EAAE,kBAAkB,QAA+C,CAAC;IAE1F,eAAe,CAAC;QACd,IAAI,SAAS,EAAE;YACb,kBAAkB,CAAC,SAAS,CAAC,CAAC;YAC9B,OAAO;SACR;QACD,IAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACnD,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QACxC,kBAAkB,CAAC,YAAY,CAAC,CAAC;QACjC,OAAO;YACL,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YACxC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,OAAO,eAAe,IAAI,YAAY,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;AACpE,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useLayoutEffect, useState } from 'react';\nimport { createPortal } from 'react-dom';\n\nexport interface PortalProps {\n container?: Element;\n children: React.ReactNode;\n}\n\n/**\n * A safe react portal component that renders to a provided node.\n * If a node isn't provided, it creates one under document.body.\n */\nexport default function Portal({ container, children }: PortalProps) {\n const [activeContainer, setActiveContainer] = useState<Element | null>(container ?? null);\n\n useLayoutEffect(() => {\n if (container) {\n setActiveContainer(container);\n return;\n }\n const newContainer = document.createElement('div');\n document.body.appendChild(newContainer);\n setActiveContainer(newContainer);\n return () => {\n document.body.removeChild(newContainer);\n setActiveContainer(null);\n };\n }, [container]);\n\n return activeContainer && createPortal(children, activeContainer);\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/components/portal/index.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAc,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAOzC;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAe;IACjE,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAiB,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,IAAI,CAAC,CAAC;IAE1F,eAAe,CAAC,GAAG,EAAE;QACnB,IAAI,SAAS,EAAE;YACb,kBAAkB,CAAC,SAAS,CAAC,CAAC;YAC9B,OAAO;SACR;QACD,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACnD,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QACxC,kBAAkB,CAAC,YAAY,CAAC,CAAC;QACjC,OAAO,GAAG,EAAE;YACV,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YACxC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,OAAO,eAAe,IAAI,YAAY,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;AACpE,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useLayoutEffect, useState } from 'react';\nimport { createPortal } from 'react-dom';\n\nexport interface PortalProps {\n container?: Element;\n children: React.ReactNode;\n}\n\n/**\n * A safe react portal component that renders to a provided node.\n * If a node isn't provided, it creates one under document.body.\n */\nexport default function Portal({ container, children }: PortalProps) {\n const [activeContainer, setActiveContainer] = useState<Element | null>(container ?? null);\n\n useLayoutEffect(() => {\n if (container) {\n setActiveContainer(container);\n return;\n }\n const newContainer = document.createElement('div');\n document.body.appendChild(newContainer);\n setActiveContainer(newContainer);\n return () => {\n document.body.removeChild(newContainer);\n setActiveContainer(null);\n };\n }, [container]);\n\n return activeContainer && createPortal(children, activeContainer);\n}\n"]}
@@ -1,6 +1,5 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
- import { __assign } from "tslib";
4
3
  import clsx from 'clsx';
5
4
  import React from 'react';
6
5
  import styles from './styles.css.js';
@@ -19,6 +18,6 @@ import styles from './styles.css.js';
19
18
  * ```
20
19
  */
21
20
  export default function ScreenreaderOnly(props) {
22
- return React.createElement("span", __assign({}, props, { className: clsx(styles.root, props.className) }));
21
+ return React.createElement("span", Object.assign({}, props, { className: clsx(styles.root, props.className) }));
23
22
  }
24
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/components/screenreader-only/index.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;;AAEtC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAQrC;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,KAA4B;IACnE,OAAO,yCAAU,KAAK,IAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC;AAC5E,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport clsx from 'clsx';\nimport React from 'react';\nimport styles from './styles.css.js';\n\nexport interface ScreenreaderOnlyProps {\n id?: string;\n className?: string;\n children: React.ReactNode;\n}\n\n/**\n * Makes content now shown on a screen but still announced by screen-reader users.\n * The component is suitable when the aria-label cannot be used, e.g. to avoid elemnts being announced as \"blank\".\n *\n * To exclude screenreader-only content use `:not(.${screenreaderOnlyStyles.root})` selector, for example:\n *\n * ```\n * import screenreaderOnlyStyles from '~internal/components/screenreader-only/styles.css.js'\n *\n * let visibleContent = wrapper.find(`${styles.label}`).find(`:not(.${screenreaderOnlyStyles.root})`).getElement().textContent\n *\n * let screenreaderContent = wrapper.find(`${styles.label}`).find(`.${screenreaderOnlyStyles.root}`).getElement().textContent\n * ```\n */\nexport default function ScreenreaderOnly(props: ScreenreaderOnlyProps) {\n return <span {...props} className={clsx(styles.root, props.className)} />;\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/components/screenreader-only/index.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AAEtC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAQrC;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,KAA4B;IACnE,OAAO,8CAAU,KAAK,IAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC;AAC5E,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport clsx from 'clsx';\nimport React from 'react';\nimport styles from './styles.css.js';\n\nexport interface ScreenreaderOnlyProps {\n id?: string;\n className?: string;\n children: React.ReactNode;\n}\n\n/**\n * Makes content now shown on a screen but still announced by screen-reader users.\n * The component is suitable when the aria-label cannot be used, e.g. to avoid elemnts being announced as \"blank\".\n *\n * To exclude screenreader-only content use `:not(.${screenreaderOnlyStyles.root})` selector, for example:\n *\n * ```\n * import screenreaderOnlyStyles from '~internal/components/screenreader-only/styles.css.js'\n *\n * let visibleContent = wrapper.find(`${styles.label}`).find(`:not(.${screenreaderOnlyStyles.root})`).getElement().textContent\n *\n * let screenreaderContent = wrapper.find(`${styles.label}`).find(`.${screenreaderOnlyStyles.root}`).getElement().textContent\n * ```\n */\nexport default function ScreenreaderOnly(props: ScreenreaderOnlyProps) {\n return <span {...props} className={clsx(styles.root, props.className)} />;\n}\n"]}