@cloudscape-design/components-themeable 3.0.226 → 3.0.228

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 (1001) hide show
  1. package/lib/internal/manifest.json +1 -1
  2. package/lib/internal/scss/internal/components/abstract-switch/styles.scss +3 -1
  3. package/lib/internal/template/alert/index.js +4 -4
  4. package/lib/internal/template/alert/index.js.map +1 -1
  5. package/lib/internal/template/alert/internal.js +14 -15
  6. package/lib/internal/template/alert/internal.js.map +1 -1
  7. package/lib/internal/template/annotation-context/annotation/annotation-icon.js +1 -2
  8. package/lib/internal/template/annotation-context/annotation/annotation-icon.js.map +1 -1
  9. package/lib/internal/template/annotation-context/annotation/annotation-popover.js +6 -7
  10. package/lib/internal/template/annotation-context/annotation/annotation-popover.js.map +1 -1
  11. package/lib/internal/template/annotation-context/annotation/annotation-trigger.js +4 -6
  12. package/lib/internal/template/annotation-context/annotation/annotation-trigger.js.map +1 -1
  13. package/lib/internal/template/annotation-context/annotation/closed-annotation.js +4 -5
  14. package/lib/internal/template/annotation-context/annotation/closed-annotation.js.map +1 -1
  15. package/lib/internal/template/annotation-context/annotation/open-annotation.js +2 -3
  16. package/lib/internal/template/annotation-context/annotation/open-annotation.js.map +1 -1
  17. package/lib/internal/template/annotation-context/context.js +7 -7
  18. package/lib/internal/template/annotation-context/context.js.map +1 -1
  19. package/lib/internal/template/annotation-context/index.js +62 -69
  20. package/lib/internal/template/annotation-context/index.js.map +1 -1
  21. package/lib/internal/template/app-layout/content-wrapper/index.js +2 -3
  22. package/lib/internal/template/app-layout/content-wrapper/index.js.map +1 -1
  23. package/lib/internal/template/app-layout/defaults.js +13 -14
  24. package/lib/internal/template/app-layout/defaults.js.map +1 -1
  25. package/lib/internal/template/app-layout/drawer.js +16 -18
  26. package/lib/internal/template/app-layout/drawer.js.map +1 -1
  27. package/lib/internal/template/app-layout/index.js +111 -113
  28. package/lib/internal/template/app-layout/index.js.map +1 -1
  29. package/lib/internal/template/app-layout/mobile-toolbar/index.js +7 -9
  30. package/lib/internal/template/app-layout/mobile-toolbar/index.js.map +1 -1
  31. package/lib/internal/template/app-layout/navigation-panel.js +5 -8
  32. package/lib/internal/template/app-layout/navigation-panel.js.map +1 -1
  33. package/lib/internal/template/app-layout/notifications/index.js +2 -2
  34. package/lib/internal/template/app-layout/notifications/index.js.map +1 -1
  35. package/lib/internal/template/app-layout/toggles/index.js +14 -22
  36. package/lib/internal/template/app-layout/toggles/index.js.map +1 -1
  37. package/lib/internal/template/app-layout/tools-and-split-panel.js +6 -9
  38. package/lib/internal/template/app-layout/tools-and-split-panel.js.map +1 -1
  39. package/lib/internal/template/app-layout/utils/use-content-height.js +14 -15
  40. package/lib/internal/template/app-layout/utils/use-content-height.js.map +1 -1
  41. package/lib/internal/template/app-layout/utils/use-content-width.js +8 -8
  42. package/lib/internal/template/app-layout/utils/use-content-width.js.map +1 -1
  43. package/lib/internal/template/app-layout/utils/use-focus-control.js +7 -8
  44. package/lib/internal/template/app-layout/utils/use-focus-control.js.map +1 -1
  45. package/lib/internal/template/app-layout/utils/use-observed-element.js +3 -3
  46. package/lib/internal/template/app-layout/utils/use-observed-element.js.map +1 -1
  47. package/lib/internal/template/app-layout/utils/use-window-width.js +4 -4
  48. package/lib/internal/template/app-layout/utils/use-window-width.js.map +1 -1
  49. package/lib/internal/template/app-layout/visual-refresh/app-bar.js +19 -20
  50. package/lib/internal/template/app-layout/visual-refresh/app-bar.js.map +1 -1
  51. package/lib/internal/template/app-layout/visual-refresh/background.js +9 -10
  52. package/lib/internal/template/app-layout/visual-refresh/background.js.map +1 -1
  53. package/lib/internal/template/app-layout/visual-refresh/context.js +101 -59
  54. package/lib/internal/template/app-layout/visual-refresh/context.js.map +1 -1
  55. package/lib/internal/template/app-layout/visual-refresh/header.js +6 -7
  56. package/lib/internal/template/app-layout/visual-refresh/header.js.map +1 -1
  57. package/lib/internal/template/app-layout/visual-refresh/index.js +3 -4
  58. package/lib/internal/template/app-layout/visual-refresh/index.js.map +1 -1
  59. package/lib/internal/template/app-layout/visual-refresh/layout.js +18 -21
  60. package/lib/internal/template/app-layout/visual-refresh/layout.js.map +1 -1
  61. package/lib/internal/template/app-layout/visual-refresh/main.js +17 -18
  62. package/lib/internal/template/app-layout/visual-refresh/main.js.map +1 -1
  63. package/lib/internal/template/app-layout/visual-refresh/navigation.js +22 -24
  64. package/lib/internal/template/app-layout/visual-refresh/navigation.js.map +1 -1
  65. package/lib/internal/template/app-layout/visual-refresh/notifications.js +6 -7
  66. package/lib/internal/template/app-layout/visual-refresh/notifications.js.map +1 -1
  67. package/lib/internal/template/app-layout/visual-refresh/split-panel.js +36 -43
  68. package/lib/internal/template/app-layout/visual-refresh/split-panel.js.map +1 -1
  69. package/lib/internal/template/app-layout/visual-refresh/tools.js +32 -34
  70. package/lib/internal/template/app-layout/visual-refresh/tools.js.map +1 -1
  71. package/lib/internal/template/app-layout/visual-refresh/trigger-button.js +5 -8
  72. package/lib/internal/template/app-layout/visual-refresh/trigger-button.js.map +1 -1
  73. package/lib/internal/template/area-chart/chart-container.js +18 -19
  74. package/lib/internal/template/area-chart/chart-container.js.map +1 -1
  75. package/lib/internal/template/area-chart/elements/area-chart-filter.js +7 -8
  76. package/lib/internal/template/area-chart/elements/area-chart-filter.js.map +1 -1
  77. package/lib/internal/template/area-chart/elements/area-chart-legend.js +6 -9
  78. package/lib/internal/template/area-chart/elements/area-chart-legend.js.map +1 -1
  79. package/lib/internal/template/area-chart/elements/area-series.js +12 -13
  80. package/lib/internal/template/area-chart/elements/area-series.js.map +1 -1
  81. package/lib/internal/template/area-chart/elements/chart-popover.js +4 -6
  82. package/lib/internal/template/area-chart/elements/chart-popover.js.map +1 -1
  83. package/lib/internal/template/area-chart/elements/data-series.js +14 -17
  84. package/lib/internal/template/area-chart/elements/data-series.js.map +1 -1
  85. package/lib/internal/template/area-chart/elements/highlighted-point.js +6 -7
  86. package/lib/internal/template/area-chart/elements/highlighted-point.js.map +1 -1
  87. package/lib/internal/template/area-chart/elements/threshold-series.js +5 -7
  88. package/lib/internal/template/area-chart/elements/threshold-series.js.map +1 -1
  89. package/lib/internal/template/area-chart/elements/use-highlight-details.js +28 -30
  90. package/lib/internal/template/area-chart/elements/use-highlight-details.js.map +1 -1
  91. package/lib/internal/template/area-chart/elements/vertical-marker.js +6 -7
  92. package/lib/internal/template/area-chart/elements/vertical-marker.js.map +1 -1
  93. package/lib/internal/template/area-chart/index.js +4 -4
  94. package/lib/internal/template/area-chart/index.js.map +1 -1
  95. package/lib/internal/template/area-chart/internal.js +40 -41
  96. package/lib/internal/template/area-chart/internal.js.map +1 -1
  97. package/lib/internal/template/area-chart/model/async-store.js +23 -30
  98. package/lib/internal/template/area-chart/model/async-store.js.map +1 -1
  99. package/lib/internal/template/area-chart/model/compute-chart-props.js +11 -12
  100. package/lib/internal/template/area-chart/model/compute-chart-props.js.map +1 -1
  101. package/lib/internal/template/area-chart/model/create-series-decorator.js +11 -13
  102. package/lib/internal/template/area-chart/model/create-series-decorator.js.map +1 -1
  103. package/lib/internal/template/area-chart/model/interactions-store.js +47 -54
  104. package/lib/internal/template/area-chart/model/interactions-store.js.map +1 -1
  105. package/lib/internal/template/area-chart/model/use-chart-model.js +85 -89
  106. package/lib/internal/template/area-chart/model/use-chart-model.js.map +1 -1
  107. package/lib/internal/template/area-chart/model/use-filter-props.js +6 -6
  108. package/lib/internal/template/area-chart/model/use-filter-props.js.map +1 -1
  109. package/lib/internal/template/area-chart/model/use-highlight-props.js +6 -6
  110. package/lib/internal/template/area-chart/model/use-highlight-props.js.map +1 -1
  111. package/lib/internal/template/area-chart/model/utils.js +46 -59
  112. package/lib/internal/template/area-chart/model/utils.js.map +1 -1
  113. package/lib/internal/template/attribute-editor/additional-info.js +2 -5
  114. package/lib/internal/template/attribute-editor/additional-info.js.map +1 -1
  115. package/lib/internal/template/attribute-editor/index.js +5 -5
  116. package/lib/internal/template/attribute-editor/index.js.map +1 -1
  117. package/lib/internal/template/attribute-editor/internal.js +20 -20
  118. package/lib/internal/template/attribute-editor/internal.js.map +1 -1
  119. package/lib/internal/template/attribute-editor/row.js +17 -25
  120. package/lib/internal/template/attribute-editor/row.js.map +1 -1
  121. package/lib/internal/template/autosuggest/autosuggest-option.js +12 -12
  122. package/lib/internal/template/autosuggest/autosuggest-option.js.map +1 -1
  123. package/lib/internal/template/autosuggest/index.js +6 -6
  124. package/lib/internal/template/autosuggest/index.js.map +1 -1
  125. package/lib/internal/template/autosuggest/internal.js +39 -39
  126. package/lib/internal/template/autosuggest/internal.js.map +1 -1
  127. package/lib/internal/template/autosuggest/load-more-controller.js +10 -14
  128. package/lib/internal/template/autosuggest/load-more-controller.js.map +1 -1
  129. package/lib/internal/template/autosuggest/options-controller.js +31 -32
  130. package/lib/internal/template/autosuggest/options-controller.js.map +1 -1
  131. package/lib/internal/template/autosuggest/options-list.js +12 -13
  132. package/lib/internal/template/autosuggest/options-list.js.map +1 -1
  133. package/lib/internal/template/autosuggest/plain-list.js +15 -17
  134. package/lib/internal/template/autosuggest/plain-list.js.map +1 -1
  135. package/lib/internal/template/autosuggest/utils/utils.js +12 -12
  136. package/lib/internal/template/autosuggest/utils/utils.js.map +1 -1
  137. package/lib/internal/template/autosuggest/virtual-list.js +14 -16
  138. package/lib/internal/template/autosuggest/virtual-list.js.map +1 -1
  139. package/lib/internal/template/badge/index.js +6 -6
  140. package/lib/internal/template/badge/index.js.map +1 -1
  141. package/lib/internal/template/bar-chart/index.js +6 -6
  142. package/lib/internal/template/bar-chart/index.js.map +1 -1
  143. package/lib/internal/template/box/index.js +4 -4
  144. package/lib/internal/template/box/index.js.map +1 -1
  145. package/lib/internal/template/box/internal.js +12 -12
  146. package/lib/internal/template/box/internal.js.map +1 -1
  147. package/lib/internal/template/breadcrumb-group/index.js +4 -4
  148. package/lib/internal/template/breadcrumb-group/index.js.map +1 -1
  149. package/lib/internal/template/breadcrumb-group/internal.js +24 -25
  150. package/lib/internal/template/breadcrumb-group/internal.js.map +1 -1
  151. package/lib/internal/template/breadcrumb-group/item/item.js +32 -34
  152. package/lib/internal/template/breadcrumb-group/item/item.js.map +1 -1
  153. package/lib/internal/template/button/icon-helper.js +6 -6
  154. package/lib/internal/template/button/icon-helper.js.map +1 -1
  155. package/lib/internal/template/button/index.js +6 -6
  156. package/lib/internal/template/button/index.js.map +1 -1
  157. package/lib/internal/template/button/internal.js +32 -33
  158. package/lib/internal/template/button/internal.js.map +1 -1
  159. package/lib/internal/template/button-dropdown/category-elements/category-element.js +3 -5
  160. package/lib/internal/template/button-dropdown/category-elements/category-element.js.map +1 -1
  161. package/lib/internal/template/button-dropdown/category-elements/expandable-category-element.js +23 -26
  162. package/lib/internal/template/button-dropdown/category-elements/expandable-category-element.js.map +1 -1
  163. package/lib/internal/template/button-dropdown/category-elements/mobile-expandable-category-element.js +27 -30
  164. package/lib/internal/template/button-dropdown/category-elements/mobile-expandable-category-element.js.map +1 -1
  165. package/lib/internal/template/button-dropdown/index.js +6 -6
  166. package/lib/internal/template/button-dropdown/index.js.map +1 -1
  167. package/lib/internal/template/button-dropdown/internal.js +28 -29
  168. package/lib/internal/template/button-dropdown/internal.js.map +1 -1
  169. package/lib/internal/template/button-dropdown/item-element/index.js +30 -36
  170. package/lib/internal/template/button-dropdown/item-element/index.js.map +1 -1
  171. package/lib/internal/template/button-dropdown/items-list.js +3 -4
  172. package/lib/internal/template/button-dropdown/items-list.js.map +1 -1
  173. package/lib/internal/template/button-dropdown/mobile-expandable-group/mobile-expandable-group.js +2 -4
  174. package/lib/internal/template/button-dropdown/mobile-expandable-group/mobile-expandable-group.js.map +1 -1
  175. package/lib/internal/template/button-dropdown/tooltip.js +22 -24
  176. package/lib/internal/template/button-dropdown/tooltip.js.map +1 -1
  177. package/lib/internal/template/button-dropdown/utils/create-items-tree.js +21 -23
  178. package/lib/internal/template/button-dropdown/utils/create-items-tree.js.map +1 -1
  179. package/lib/internal/template/button-dropdown/utils/menu-item.js +6 -9
  180. package/lib/internal/template/button-dropdown/utils/menu-item.js.map +1 -1
  181. package/lib/internal/template/button-dropdown/utils/move-highlight.js +3 -4
  182. package/lib/internal/template/button-dropdown/utils/move-highlight.js.map +1 -1
  183. package/lib/internal/template/button-dropdown/utils/use-button-dropdown.js +31 -33
  184. package/lib/internal/template/button-dropdown/utils/use-button-dropdown.js.map +1 -1
  185. package/lib/internal/template/button-dropdown/utils/use-hidden-description.js +3 -3
  186. package/lib/internal/template/button-dropdown/utils/use-hidden-description.js.map +1 -1
  187. package/lib/internal/template/button-dropdown/utils/use-highlighted-menu.js +40 -42
  188. package/lib/internal/template/button-dropdown/utils/use-highlighted-menu.js.map +1 -1
  189. package/lib/internal/template/button-dropdown/utils/utils.js +5 -9
  190. package/lib/internal/template/button-dropdown/utils/utils.js.map +1 -1
  191. package/lib/internal/template/calendar/grid/index.js +25 -28
  192. package/lib/internal/template/calendar/grid/index.js.map +1 -1
  193. package/lib/internal/template/calendar/header/header-button.js +4 -6
  194. package/lib/internal/template/calendar/header/header-button.js.map +1 -1
  195. package/lib/internal/template/calendar/header/index.js +1 -2
  196. package/lib/internal/template/calendar/header/index.js.map +1 -1
  197. package/lib/internal/template/calendar/index.js +4 -4
  198. package/lib/internal/template/calendar/index.js.map +1 -1
  199. package/lib/internal/template/calendar/internal.js +27 -27
  200. package/lib/internal/template/calendar/internal.js.map +1 -1
  201. package/lib/internal/template/calendar/utils/intl.js +12 -13
  202. package/lib/internal/template/calendar/utils/intl.js.map +1 -1
  203. package/lib/internal/template/calendar/utils/navigation.js +3 -3
  204. package/lib/internal/template/calendar/utils/navigation.js.map +1 -1
  205. package/lib/internal/template/cards/cards-layout-helper.js +12 -12
  206. package/lib/internal/template/cards/cards-layout-helper.js.map +1 -1
  207. package/lib/internal/template/cards/index.js +53 -63
  208. package/lib/internal/template/cards/index.js.map +1 -1
  209. package/lib/internal/template/checkbox/index.js +4 -4
  210. package/lib/internal/template/checkbox/index.js.map +1 -1
  211. package/lib/internal/template/checkbox/internal.d.ts +1 -0
  212. package/lib/internal/template/checkbox/internal.d.ts.map +1 -1
  213. package/lib/internal/template/checkbox/internal.js +9 -9
  214. package/lib/internal/template/checkbox/internal.js.map +1 -1
  215. package/lib/internal/template/code-editor/ace-modes.js +1 -1
  216. package/lib/internal/template/code-editor/ace-modes.js.map +1 -1
  217. package/lib/internal/template/code-editor/ace-themes.js +2 -2
  218. package/lib/internal/template/code-editor/ace-themes.js.map +1 -1
  219. package/lib/internal/template/code-editor/error-screen.js +3 -4
  220. package/lib/internal/template/code-editor/error-screen.js.map +1 -1
  221. package/lib/internal/template/code-editor/index.js +61 -65
  222. package/lib/internal/template/code-editor/index.js.map +1 -1
  223. package/lib/internal/template/code-editor/listeners.js +5 -5
  224. package/lib/internal/template/code-editor/listeners.js.map +1 -1
  225. package/lib/internal/template/code-editor/loading-screen.js +2 -2
  226. package/lib/internal/template/code-editor/loading-screen.js.map +1 -1
  227. package/lib/internal/template/code-editor/pane.js +21 -25
  228. package/lib/internal/template/code-editor/pane.js.map +1 -1
  229. package/lib/internal/template/code-editor/preferences-modal.js +12 -13
  230. package/lib/internal/template/code-editor/preferences-modal.js.map +1 -1
  231. package/lib/internal/template/code-editor/resizable-box/index.js +14 -15
  232. package/lib/internal/template/code-editor/resizable-box/index.js.map +1 -1
  233. package/lib/internal/template/code-editor/setup-editor.js +20 -20
  234. package/lib/internal/template/code-editor/setup-editor.js.map +1 -1
  235. package/lib/internal/template/code-editor/status-bar.js +19 -22
  236. package/lib/internal/template/code-editor/status-bar.js.map +1 -1
  237. package/lib/internal/template/code-editor/tab-button.js +7 -10
  238. package/lib/internal/template/code-editor/tab-button.js.map +1 -1
  239. package/lib/internal/template/code-editor/util.js +6 -6
  240. package/lib/internal/template/code-editor/util.js.map +1 -1
  241. package/lib/internal/template/collection-preferences/index.js +21 -23
  242. package/lib/internal/template/collection-preferences/index.js.map +1 -1
  243. package/lib/internal/template/collection-preferences/utils.js +25 -57
  244. package/lib/internal/template/collection-preferences/utils.js.map +1 -1
  245. package/lib/internal/template/collection-preferences/visible-content.js +23 -27
  246. package/lib/internal/template/collection-preferences/visible-content.js.map +1 -1
  247. package/lib/internal/template/column-layout/index.js +6 -6
  248. package/lib/internal/template/column-layout/index.js.map +1 -1
  249. package/lib/internal/template/column-layout/internal.js +20 -21
  250. package/lib/internal/template/column-layout/internal.js.map +1 -1
  251. package/lib/internal/template/column-layout/util.js +2 -2
  252. package/lib/internal/template/column-layout/util.js.map +1 -1
  253. package/lib/internal/template/container/index.js +5 -5
  254. package/lib/internal/template/container/index.js.map +1 -1
  255. package/lib/internal/template/container/internal.js +30 -31
  256. package/lib/internal/template/container/internal.js.map +1 -1
  257. package/lib/internal/template/container/use-sticky-header.js +25 -25
  258. package/lib/internal/template/container/use-sticky-header.js.map +1 -1
  259. package/lib/internal/template/content-layout/index.js +2 -3
  260. package/lib/internal/template/content-layout/index.js.map +1 -1
  261. package/lib/internal/template/content-layout/internal.js +15 -16
  262. package/lib/internal/template/content-layout/internal.js.map +1 -1
  263. package/lib/internal/template/date-input/index.js +3 -4
  264. package/lib/internal/template/date-input/index.js.map +1 -1
  265. package/lib/internal/template/date-input/internal.js +8 -8
  266. package/lib/internal/template/date-input/internal.js.map +1 -1
  267. package/lib/internal/template/date-picker/index.js +28 -28
  268. package/lib/internal/template/date-picker/index.js.map +1 -1
  269. package/lib/internal/template/date-range-picker/calendar/grids/grid.js +54 -57
  270. package/lib/internal/template/date-range-picker/calendar/grids/grid.js.map +1 -1
  271. package/lib/internal/template/date-range-picker/calendar/grids/index.js +27 -28
  272. package/lib/internal/template/date-range-picker/calendar/grids/index.js.map +1 -1
  273. package/lib/internal/template/date-range-picker/calendar/header/header-button.js +4 -6
  274. package/lib/internal/template/date-range-picker/calendar/header/header-button.js.map +1 -1
  275. package/lib/internal/template/date-range-picker/calendar/header/index.js +6 -7
  276. package/lib/internal/template/date-range-picker/calendar/header/index.js.map +1 -1
  277. package/lib/internal/template/date-range-picker/calendar/index.js +40 -45
  278. package/lib/internal/template/date-range-picker/calendar/index.js.map +1 -1
  279. package/lib/internal/template/date-range-picker/calendar/range-inputs.js +5 -6
  280. package/lib/internal/template/date-range-picker/calendar/range-inputs.js.map +1 -1
  281. package/lib/internal/template/date-range-picker/calendar/utils.js +2 -2
  282. package/lib/internal/template/date-range-picker/calendar/utils.js.map +1 -1
  283. package/lib/internal/template/date-range-picker/dropdown.js +29 -34
  284. package/lib/internal/template/date-range-picker/dropdown.js.map +1 -1
  285. package/lib/internal/template/date-range-picker/index.js +40 -43
  286. package/lib/internal/template/date-range-picker/index.js.map +1 -1
  287. package/lib/internal/template/date-range-picker/mode-switcher.js +2 -3
  288. package/lib/internal/template/date-range-picker/mode-switcher.js.map +1 -1
  289. package/lib/internal/template/date-range-picker/relative-range/index.js +36 -40
  290. package/lib/internal/template/date-range-picker/relative-range/index.js.map +1 -1
  291. package/lib/internal/template/date-range-picker/time-offset.js +5 -5
  292. package/lib/internal/template/date-range-picker/time-offset.js.map +1 -1
  293. package/lib/internal/template/date-range-picker/utils.js +4 -5
  294. package/lib/internal/template/date-range-picker/utils.js.map +1 -1
  295. package/lib/internal/template/expandable-section/expandable-section-container.js +5 -5
  296. package/lib/internal/template/expandable-section/expandable-section-container.js.map +1 -1
  297. package/lib/internal/template/expandable-section/expandable-section-header.js +18 -23
  298. package/lib/internal/template/expandable-section/expandable-section-header.js.map +1 -1
  299. package/lib/internal/template/expandable-section/index.js +4 -4
  300. package/lib/internal/template/expandable-section/index.js.map +1 -1
  301. package/lib/internal/template/expandable-section/internal.js +22 -22
  302. package/lib/internal/template/expandable-section/internal.js.map +1 -1
  303. package/lib/internal/template/flashbar/collapsible-flashbar.js +103 -118
  304. package/lib/internal/template/flashbar/collapsible-flashbar.js.map +1 -1
  305. package/lib/internal/template/flashbar/common.js +26 -35
  306. package/lib/internal/template/flashbar/common.js.map +1 -1
  307. package/lib/internal/template/flashbar/constant.js +1 -1
  308. package/lib/internal/template/flashbar/constant.js.map +1 -1
  309. package/lib/internal/template/flashbar/flash.js +23 -26
  310. package/lib/internal/template/flashbar/flash.js.map +1 -1
  311. package/lib/internal/template/flashbar/index.js +3 -4
  312. package/lib/internal/template/flashbar/index.js.map +1 -1
  313. package/lib/internal/template/flashbar/internal/analytics.js +12 -12
  314. package/lib/internal/template/flashbar/internal/analytics.js.map +1 -1
  315. package/lib/internal/template/flashbar/non-collapsible-flashbar.js +10 -10
  316. package/lib/internal/template/flashbar/non-collapsible-flashbar.js.map +1 -1
  317. package/lib/internal/template/flashbar/utils.js +25 -27
  318. package/lib/internal/template/flashbar/utils.js.map +1 -1
  319. package/lib/internal/template/form/index.js +4 -4
  320. package/lib/internal/template/form/index.js.map +1 -1
  321. package/lib/internal/template/form/internal.js +5 -6
  322. package/lib/internal/template/form/internal.js.map +1 -1
  323. package/lib/internal/template/form-field/index.js +4 -4
  324. package/lib/internal/template/form-field/index.js.map +1 -1
  325. package/lib/internal/template/form-field/internal.js +20 -23
  326. package/lib/internal/template/form-field/internal.js.map +1 -1
  327. package/lib/internal/template/form-field/util.js +9 -10
  328. package/lib/internal/template/form-field/util.js.map +1 -1
  329. package/lib/internal/template/grid/index.js +6 -6
  330. package/lib/internal/template/grid/index.js.map +1 -1
  331. package/lib/internal/template/grid/internal.js +14 -15
  332. package/lib/internal/template/grid/internal.js.map +1 -1
  333. package/lib/internal/template/header/index.js +4 -4
  334. package/lib/internal/template/header/index.js.map +1 -1
  335. package/lib/internal/template/header/internal.js +15 -15
  336. package/lib/internal/template/header/internal.js.map +1 -1
  337. package/lib/internal/template/help-panel/index.js +7 -7
  338. package/lib/internal/template/help-panel/index.js.map +1 -1
  339. package/lib/internal/template/hotspot/index.js +12 -12
  340. package/lib/internal/template/hotspot/index.js.map +1 -1
  341. package/lib/internal/template/icon/icons.js +1 -1
  342. package/lib/internal/template/icon/index.js +4 -4
  343. package/lib/internal/template/icon/index.js.map +1 -1
  344. package/lib/internal/template/icon/internal.js +18 -18
  345. package/lib/internal/template/icon/internal.js.map +1 -1
  346. package/lib/internal/template/input/index.js +36 -17
  347. package/lib/internal/template/input/index.js.map +1 -1
  348. package/lib/internal/template/input/internal.js +30 -25
  349. package/lib/internal/template/input/internal.js.map +1 -1
  350. package/lib/internal/template/input/utils.js +4 -5
  351. package/lib/internal/template/input/utils.js.map +1 -1
  352. package/lib/internal/template/internal/animate.js +27 -32
  353. package/lib/internal/template/internal/animate.js.map +1 -1
  354. package/lib/internal/template/internal/base-component/index.js +2 -2
  355. package/lib/internal/template/internal/base-component/index.js.map +1 -1
  356. package/lib/internal/template/internal/breakpoints.js +7 -12
  357. package/lib/internal/template/internal/breakpoints.js.map +1 -1
  358. package/lib/internal/template/internal/components/abstract-switch/index.d.ts +2 -1
  359. package/lib/internal/template/internal/components/abstract-switch/index.d.ts.map +1 -1
  360. package/lib/internal/template/internal/components/abstract-switch/index.js +19 -19
  361. package/lib/internal/template/internal/components/abstract-switch/index.js.map +1 -1
  362. package/lib/internal/template/internal/components/abstract-switch/styles.css.js +13 -12
  363. package/lib/internal/template/internal/components/abstract-switch/styles.scoped.css +21 -21
  364. package/lib/internal/template/internal/components/abstract-switch/styles.selectors.js +13 -12
  365. package/lib/internal/template/internal/components/autosuggest-input/index.js +38 -38
  366. package/lib/internal/template/internal/components/autosuggest-input/index.js.map +1 -1
  367. package/lib/internal/template/internal/components/button-trigger/index.js +7 -7
  368. package/lib/internal/template/internal/components/button-trigger/index.js.map +1 -1
  369. package/lib/internal/template/internal/components/cartesian-chart/axis-label.js +1 -2
  370. package/lib/internal/template/internal/components/cartesian-chart/axis-label.js.map +1 -1
  371. package/lib/internal/template/internal/components/cartesian-chart/bottom-labels.js +20 -26
  372. package/lib/internal/template/internal/components/cartesian-chart/bottom-labels.js.map +1 -1
  373. package/lib/internal/template/internal/components/cartesian-chart/constants.js +5 -5
  374. package/lib/internal/template/internal/components/cartesian-chart/constants.js.map +1 -1
  375. package/lib/internal/template/internal/components/cartesian-chart/emphasized-baseline.js +4 -5
  376. package/lib/internal/template/internal/components/cartesian-chart/emphasized-baseline.js.map +1 -1
  377. package/lib/internal/template/internal/components/cartesian-chart/highlighted-point.js +1 -2
  378. package/lib/internal/template/internal/components/cartesian-chart/highlighted-point.js.map +1 -1
  379. package/lib/internal/template/internal/components/cartesian-chart/label-utils.js +20 -24
  380. package/lib/internal/template/internal/components/cartesian-chart/label-utils.js.map +1 -1
  381. package/lib/internal/template/internal/components/cartesian-chart/labels-measure.js +6 -7
  382. package/lib/internal/template/internal/components/cartesian-chart/labels-measure.js.map +1 -1
  383. package/lib/internal/template/internal/components/cartesian-chart/left-labels.js +13 -17
  384. package/lib/internal/template/internal/components/cartesian-chart/left-labels.js.map +1 -1
  385. package/lib/internal/template/internal/components/cartesian-chart/scales.js +21 -26
  386. package/lib/internal/template/internal/components/cartesian-chart/scales.js.map +1 -1
  387. package/lib/internal/template/internal/components/cartesian-chart/ticks.js +9 -10
  388. package/lib/internal/template/internal/components/cartesian-chart/ticks.js.map +1 -1
  389. package/lib/internal/template/internal/components/cartesian-chart/vertical-grid-lines.js +3 -4
  390. package/lib/internal/template/internal/components/cartesian-chart/vertical-grid-lines.js.map +1 -1
  391. package/lib/internal/template/internal/components/cartesian-chart/vertical-marker.js +3 -4
  392. package/lib/internal/template/internal/components/cartesian-chart/vertical-marker.js.map +1 -1
  393. package/lib/internal/template/internal/components/chart-filter/index.js +13 -14
  394. package/lib/internal/template/internal/components/chart-filter/index.js.map +1 -1
  395. package/lib/internal/template/internal/components/chart-legend/index.js +26 -29
  396. package/lib/internal/template/internal/components/chart-legend/index.js.map +1 -1
  397. package/lib/internal/template/internal/components/chart-plot/application-controller.js +21 -25
  398. package/lib/internal/template/internal/components/chart-plot/application-controller.js.map +1 -1
  399. package/lib/internal/template/internal/components/chart-plot/focus-outline.js +7 -8
  400. package/lib/internal/template/internal/components/chart-plot/focus-outline.js.map +1 -1
  401. package/lib/internal/template/internal/components/chart-plot/index.js +33 -34
  402. package/lib/internal/template/internal/components/chart-plot/index.js.map +1 -1
  403. package/lib/internal/template/internal/components/chart-popover/index.js +11 -12
  404. package/lib/internal/template/internal/components/chart-popover/index.js.map +1 -1
  405. package/lib/internal/template/internal/components/chart-series-details/index.js +13 -17
  406. package/lib/internal/template/internal/components/chart-series-details/index.js.map +1 -1
  407. package/lib/internal/template/internal/components/chart-series-marker/index.js +2 -3
  408. package/lib/internal/template/internal/components/chart-series-marker/index.js.map +1 -1
  409. package/lib/internal/template/internal/components/chart-status-container/index.js +8 -10
  410. package/lib/internal/template/internal/components/chart-status-container/index.js.map +1 -1
  411. package/lib/internal/template/internal/components/checkbox-icon/index.js +18 -19
  412. package/lib/internal/template/internal/components/checkbox-icon/index.js.map +1 -1
  413. package/lib/internal/template/internal/components/dark-ribbon/index.js +13 -14
  414. package/lib/internal/template/internal/components/dark-ribbon/index.js.map +1 -1
  415. package/lib/internal/template/internal/components/dropdown/context.js +4 -5
  416. package/lib/internal/template/internal/components/dropdown/context.js.map +1 -1
  417. package/lib/internal/template/internal/components/dropdown/dropdown-fit-handler.js +74 -81
  418. package/lib/internal/template/internal/components/dropdown/dropdown-fit-handler.js.map +1 -1
  419. package/lib/internal/template/internal/components/dropdown/index.js +57 -65
  420. package/lib/internal/template/internal/components/dropdown/index.js.map +1 -1
  421. package/lib/internal/template/internal/components/dropdown-footer/index.js +2 -6
  422. package/lib/internal/template/internal/components/dropdown-footer/index.js.map +1 -1
  423. package/lib/internal/template/internal/components/dropdown-status/index.js +5 -7
  424. package/lib/internal/template/internal/components/dropdown-status/index.js.map +1 -1
  425. package/lib/internal/template/internal/components/filtering-token/index.js +4 -6
  426. package/lib/internal/template/internal/components/filtering-token/index.js.map +1 -1
  427. package/lib/internal/template/internal/components/focus-lock/index.js +10 -11
  428. package/lib/internal/template/internal/components/focus-lock/index.js.map +1 -1
  429. package/lib/internal/template/internal/components/focus-lock/utils.js +4 -4
  430. package/lib/internal/template/internal/components/focus-lock/utils.js.map +1 -1
  431. package/lib/internal/template/internal/components/live-region/index.js +10 -10
  432. package/lib/internal/template/internal/components/live-region/index.js.map +1 -1
  433. package/lib/internal/template/internal/components/masked-input/index.js +22 -24
  434. package/lib/internal/template/internal/components/masked-input/index.js.map +1 -1
  435. package/lib/internal/template/internal/components/masked-input/keyboard-handler.js +18 -18
  436. package/lib/internal/template/internal/components/masked-input/keyboard-handler.js.map +1 -1
  437. package/lib/internal/template/internal/components/masked-input/use-mask.js +24 -28
  438. package/lib/internal/template/internal/components/masked-input/use-mask.js.map +1 -1
  439. package/lib/internal/template/internal/components/masked-input/utils/keys.js +4 -6
  440. package/lib/internal/template/internal/components/masked-input/utils/keys.js.map +1 -1
  441. package/lib/internal/template/internal/components/masked-input/utils/mask-format.js +103 -113
  442. package/lib/internal/template/internal/components/masked-input/utils/mask-format.js.map +1 -1
  443. package/lib/internal/template/internal/components/masked-input/utils/strings.js +1 -4
  444. package/lib/internal/template/internal/components/masked-input/utils/strings.js.map +1 -1
  445. package/lib/internal/template/internal/components/menu-dropdown/index.js +10 -12
  446. package/lib/internal/template/internal/components/menu-dropdown/index.js.map +1 -1
  447. package/lib/internal/template/internal/components/option/highlight-match.js +14 -18
  448. package/lib/internal/template/internal/components/option/highlight-match.js.map +1 -1
  449. package/lib/internal/template/internal/components/option/index.js +13 -13
  450. package/lib/internal/template/internal/components/option/index.js.map +1 -1
  451. package/lib/internal/template/internal/components/option/option-announcer.js +1 -1
  452. package/lib/internal/template/internal/components/option/option-announcer.js.map +1 -1
  453. package/lib/internal/template/internal/components/option/option-parts.js +28 -45
  454. package/lib/internal/template/internal/components/option/option-parts.js.map +1 -1
  455. package/lib/internal/template/internal/components/option/utils/filter-options.js +16 -19
  456. package/lib/internal/template/internal/components/option/utils/filter-options.js.map +1 -1
  457. package/lib/internal/template/internal/components/option/utils/flatten-options.js +15 -15
  458. package/lib/internal/template/internal/components/option/utils/flatten-options.js.map +1 -1
  459. package/lib/internal/template/internal/components/option/utils/prepare-options.js +3 -3
  460. package/lib/internal/template/internal/components/option/utils/prepare-options.js.map +1 -1
  461. package/lib/internal/template/internal/components/options-list/index.js +19 -20
  462. package/lib/internal/template/internal/components/options-list/index.js.map +1 -1
  463. package/lib/internal/template/internal/components/options-list/utils/test-indexes.js +11 -11
  464. package/lib/internal/template/internal/components/options-list/utils/test-indexes.js.map +1 -1
  465. package/lib/internal/template/internal/components/options-list/utils/use-highlight-option.js +17 -21
  466. package/lib/internal/template/internal/components/options-list/utils/use-highlight-option.js.map +1 -1
  467. package/lib/internal/template/internal/components/options-list/utils/use-ids.js +2 -2
  468. package/lib/internal/template/internal/components/options-list/utils/use-ids.js.map +1 -1
  469. package/lib/internal/template/internal/components/options-list/utils/use-keyboard.js +6 -8
  470. package/lib/internal/template/internal/components/options-list/utils/use-keyboard.js.map +1 -1
  471. package/lib/internal/template/internal/components/options-list/utils/use-open-state.js +6 -7
  472. package/lib/internal/template/internal/components/options-list/utils/use-open-state.js.map +1 -1
  473. package/lib/internal/template/internal/components/portal/index.js +5 -6
  474. package/lib/internal/template/internal/components/portal/index.js.map +1 -1
  475. package/lib/internal/template/internal/components/screenreader-only/index.js +1 -2
  476. package/lib/internal/template/internal/components/screenreader-only/index.js.map +1 -1
  477. package/lib/internal/template/internal/components/selectable-item/index.js +25 -26
  478. package/lib/internal/template/internal/components/selectable-item/index.js.map +1 -1
  479. package/lib/internal/template/internal/components/tab-trap/index.js +1 -2
  480. package/lib/internal/template/internal/components/tab-trap/index.js.map +1 -1
  481. package/lib/internal/template/internal/components/transition/index.js +16 -16
  482. package/lib/internal/template/internal/components/transition/index.js.map +1 -1
  483. package/lib/internal/template/internal/components/visual-context/index.js +6 -7
  484. package/lib/internal/template/internal/components/visual-context/index.js.map +1 -1
  485. package/lib/internal/template/internal/context/app-layout-context.js +2 -2
  486. package/lib/internal/template/internal/context/app-layout-context.js.map +1 -1
  487. package/lib/internal/template/internal/context/form-field-context.js +4 -4
  488. package/lib/internal/template/internal/context/form-field-context.js.map +1 -1
  489. package/lib/internal/template/internal/context/split-panel-context.js +3 -3
  490. package/lib/internal/template/internal/context/split-panel-context.js.map +1 -1
  491. package/lib/internal/template/internal/debounce.js +6 -11
  492. package/lib/internal/template/internal/debounce.js.map +1 -1
  493. package/lib/internal/template/internal/environment.js +1 -1
  494. package/lib/internal/template/internal/events/index.js +12 -16
  495. package/lib/internal/template/internal/events/index.js.map +1 -1
  496. package/lib/internal/template/internal/focus-tracker.js +22 -27
  497. package/lib/internal/template/internal/focus-tracker.js.map +1 -1
  498. package/lib/internal/template/internal/generated/custom-css-properties/index.js +2 -2
  499. package/lib/internal/template/internal/generated/custom-css-properties/index.js.map +1 -1
  500. package/lib/internal/template/internal/hooks/check-controlled/index.js +1 -1
  501. package/lib/internal/template/internal/hooks/check-controlled/index.js.map +1 -1
  502. package/lib/internal/template/internal/hooks/container-queries/use-container-breakpoints.js +2 -2
  503. package/lib/internal/template/internal/hooks/container-queries/use-container-breakpoints.js.map +1 -1
  504. package/lib/internal/template/internal/hooks/container-queries/use-container-query.js +5 -6
  505. package/lib/internal/template/internal/hooks/container-queries/use-container-query.js.map +1 -1
  506. package/lib/internal/template/internal/hooks/container-queries/use-resize-observer.js +13 -13
  507. package/lib/internal/template/internal/hooks/container-queries/use-resize-observer.js.map +1 -1
  508. package/lib/internal/template/internal/hooks/focus-visible/index.js +8 -8
  509. package/lib/internal/template/internal/hooks/focus-visible/index.js.map +1 -1
  510. package/lib/internal/template/internal/hooks/forward-focus/index.js +5 -9
  511. package/lib/internal/template/internal/hooks/forward-focus/index.js.map +1 -1
  512. package/lib/internal/template/internal/hooks/forward-focus/radio-group.js +7 -7
  513. package/lib/internal/template/internal/hooks/forward-focus/radio-group.js.map +1 -1
  514. package/lib/internal/template/internal/hooks/use-base-component/component-metadata.js +5 -5
  515. package/lib/internal/template/internal/hooks/use-base-component/component-metadata.js.map +1 -1
  516. package/lib/internal/template/internal/hooks/use-base-component/index.js +1 -1
  517. package/lib/internal/template/internal/hooks/use-base-component/index.js.map +1 -1
  518. package/lib/internal/template/internal/hooks/use-controllable/index.js +16 -17
  519. package/lib/internal/template/internal/hooks/use-controllable/index.js.map +1 -1
  520. package/lib/internal/template/internal/hooks/use-date-cache/index.js +2 -2
  521. package/lib/internal/template/internal/hooks/use-date-cache/index.js.map +1 -1
  522. package/lib/internal/template/internal/hooks/use-debounce-callback/index.js +3 -7
  523. package/lib/internal/template/internal/hooks/use-debounce-callback/index.js.map +1 -1
  524. package/lib/internal/template/internal/hooks/use-dynamic-overlap/index.js +4 -4
  525. package/lib/internal/template/internal/hooks/use-dynamic-overlap/index.js.map +1 -1
  526. package/lib/internal/template/internal/hooks/use-effect-on-update.js +2 -2
  527. package/lib/internal/template/internal/hooks/use-effect-on-update.js.map +1 -1
  528. package/lib/internal/template/internal/hooks/use-focus-tracker.js +7 -8
  529. package/lib/internal/template/internal/hooks/use-focus-tracker.js.map +1 -1
  530. package/lib/internal/template/internal/hooks/use-has-rendered/index.js +6 -6
  531. package/lib/internal/template/internal/hooks/use-has-rendered/index.js.map +1 -1
  532. package/lib/internal/template/internal/hooks/use-merge-refs/index.js +5 -9
  533. package/lib/internal/template/internal/hooks/use-merge-refs/index.js.map +1 -1
  534. package/lib/internal/template/internal/hooks/use-mobile/index.js +7 -7
  535. package/lib/internal/template/internal/hooks/use-mobile/index.js.map +1 -1
  536. package/lib/internal/template/internal/hooks/use-mouse-down-target.js +5 -5
  537. package/lib/internal/template/internal/hooks/use-mouse-down-target.js.map +1 -1
  538. package/lib/internal/template/internal/hooks/use-mutation-observer/index.js +5 -5
  539. package/lib/internal/template/internal/hooks/use-mutation-observer/index.js.map +1 -1
  540. package/lib/internal/template/internal/hooks/use-portal-mode-classes/index.js +10 -12
  541. package/lib/internal/template/internal/hooks/use-portal-mode-classes/index.js.map +1 -1
  542. package/lib/internal/template/internal/hooks/use-previous/index.js +3 -3
  543. package/lib/internal/template/internal/hooks/use-previous/index.js.map +1 -1
  544. package/lib/internal/template/internal/hooks/use-scroll-sync/index.js +8 -9
  545. package/lib/internal/template/internal/hooks/use-scroll-sync/index.js.map +1 -1
  546. package/lib/internal/template/internal/hooks/use-singleton-handler/index.js +12 -14
  547. package/lib/internal/template/internal/hooks/use-singleton-handler/index.js.map +1 -1
  548. package/lib/internal/template/internal/hooks/use-stable-event-handler/index.js +3 -10
  549. package/lib/internal/template/internal/hooks/use-stable-event-handler/index.js.map +1 -1
  550. package/lib/internal/template/internal/hooks/use-telemetry/index.js +2 -2
  551. package/lib/internal/template/internal/hooks/use-telemetry/index.js.map +1 -1
  552. package/lib/internal/template/internal/hooks/use-telemetry/telemetry.js +3 -4
  553. package/lib/internal/template/internal/hooks/use-telemetry/telemetry.js.map +1 -1
  554. package/lib/internal/template/internal/hooks/use-unique-id/index.js +3 -3
  555. package/lib/internal/template/internal/hooks/use-unique-id/index.js.map +1 -1
  556. package/lib/internal/template/internal/hooks/use-visual-mode/index.js +11 -11
  557. package/lib/internal/template/internal/hooks/use-visual-mode/index.js.map +1 -1
  558. package/lib/internal/template/internal/is-development.js +1 -1
  559. package/lib/internal/template/internal/is-development.js.map +1 -1
  560. package/lib/internal/template/internal/logging.js +2 -2
  561. package/lib/internal/template/internal/logging.js.map +1 -1
  562. package/lib/internal/template/internal/metrics/log-clients.js +18 -27
  563. package/lib/internal/template/internal/metrics/log-clients.js.map +1 -1
  564. package/lib/internal/template/internal/metrics/metrics-formatters.js +11 -14
  565. package/lib/internal/template/internal/metrics/metrics-formatters.js.map +1 -1
  566. package/lib/internal/template/internal/metrics/metrics.js +27 -33
  567. package/lib/internal/template/internal/metrics/metrics.js.map +1 -1
  568. package/lib/internal/template/internal/motion.js +2 -2
  569. package/lib/internal/template/internal/motion.js.map +1 -1
  570. package/lib/internal/template/internal/styles/colors.js +1 -1
  571. package/lib/internal/template/internal/styles/colors.js.map +1 -1
  572. package/lib/internal/template/internal/utils/browser-scrollbar-size.js +5 -5
  573. package/lib/internal/template/internal/utils/browser-scrollbar-size.js.map +1 -1
  574. package/lib/internal/template/internal/utils/calculate-once.js +2 -2
  575. package/lib/internal/template/internal/utils/calculate-once.js.map +1 -1
  576. package/lib/internal/template/internal/utils/check-safe-url.js +4 -4
  577. package/lib/internal/template/internal/utils/check-safe-url.js.map +1 -1
  578. package/lib/internal/template/internal/utils/create-category-color-scale.js +6 -9
  579. package/lib/internal/template/internal/utils/create-category-color-scale.js.map +1 -1
  580. package/lib/internal/template/internal/utils/date-time/format-date-range.js +3 -3
  581. package/lib/internal/template/internal/utils/date-time/format-date-range.js.map +1 -1
  582. package/lib/internal/template/internal/utils/date-time/format-date.js +4 -4
  583. package/lib/internal/template/internal/utils/date-time/format-date.js.map +1 -1
  584. package/lib/internal/template/internal/utils/date-time/format-time.js +5 -5
  585. package/lib/internal/template/internal/utils/date-time/format-time.js.map +1 -1
  586. package/lib/internal/template/internal/utils/date-time/format-timezone-offset.js +4 -4
  587. package/lib/internal/template/internal/utils/date-time/format-timezone-offset.js.map +1 -1
  588. package/lib/internal/template/internal/utils/date-time/is-iso-date-only.js +1 -1
  589. package/lib/internal/template/internal/utils/date-time/is-iso-date-only.js.map +1 -1
  590. package/lib/internal/template/internal/utils/date-time/join-date-time.js +3 -3
  591. package/lib/internal/template/internal/utils/date-time/join-date-time.js.map +1 -1
  592. package/lib/internal/template/internal/utils/date-time/parse-date.js +5 -6
  593. package/lib/internal/template/internal/utils/date-time/parse-date.js.map +1 -1
  594. package/lib/internal/template/internal/utils/date-time/parse-timezone-offset.js +5 -5
  595. package/lib/internal/template/internal/utils/date-time/parse-timezone-offset.js.map +1 -1
  596. package/lib/internal/template/internal/utils/date-time/shift-timezone-offset.js +6 -6
  597. package/lib/internal/template/internal/utils/date-time/shift-timezone-offset.js.map +1 -1
  598. package/lib/internal/template/internal/utils/dom.js +12 -12
  599. package/lib/internal/template/internal/utils/dom.js.map +1 -1
  600. package/lib/internal/template/internal/utils/external-props.js +3 -3
  601. package/lib/internal/template/internal/utils/external-props.js.map +1 -1
  602. package/lib/internal/template/internal/utils/focus-svg-element.js +1 -1
  603. package/lib/internal/template/internal/utils/focus-svg-element.js.map +1 -1
  604. package/lib/internal/template/internal/utils/locale/merge-locales.js +1 -1
  605. package/lib/internal/template/internal/utils/locale/merge-locales.js.map +1 -1
  606. package/lib/internal/template/internal/utils/locale/normalize-locale.js +3 -3
  607. package/lib/internal/template/internal/utils/locale/normalize-locale.js.map +1 -1
  608. package/lib/internal/template/internal/utils/promises.js +7 -11
  609. package/lib/internal/template/internal/utils/promises.js.map +1 -1
  610. package/lib/internal/template/internal/utils/scrollable-containers.js +14 -18
  611. package/lib/internal/template/internal/utils/scrollable-containers.js.map +1 -1
  612. package/lib/internal/template/internal/utils/strings/join-strings.js +1 -5
  613. package/lib/internal/template/internal/utils/strings/join-strings.js.map +1 -1
  614. package/lib/internal/template/internal/utils/strings/pad-left-zeros.js +1 -1
  615. package/lib/internal/template/internal/utils/strings/pad-left-zeros.js.map +1 -1
  616. package/lib/internal/template/internal/utils/throttle.js +10 -15
  617. package/lib/internal/template/internal/utils/throttle.js.map +1 -1
  618. package/lib/internal/template/internal/utils/use-container-width.js +3 -5
  619. package/lib/internal/template/internal/utils/use-container-width.js.map +1 -1
  620. package/lib/internal/template/line-chart/index.js +6 -6
  621. package/lib/internal/template/line-chart/index.js.map +1 -1
  622. package/lib/internal/template/link/index.js +5 -5
  623. package/lib/internal/template/link/index.js.map +1 -1
  624. package/lib/internal/template/link/internal.js +25 -25
  625. package/lib/internal/template/link/internal.js.map +1 -1
  626. package/lib/internal/template/mixed-line-bar-chart/bar-groups.js +3 -4
  627. package/lib/internal/template/mixed-line-bar-chart/bar-groups.js.map +1 -1
  628. package/lib/internal/template/mixed-line-bar-chart/bar-series.js +24 -33
  629. package/lib/internal/template/mixed-line-bar-chart/bar-series.js.map +1 -1
  630. package/lib/internal/template/mixed-line-bar-chart/chart-container.js +123 -138
  631. package/lib/internal/template/mixed-line-bar-chart/chart-container.js.map +1 -1
  632. package/lib/internal/template/mixed-line-bar-chart/chart-filters.js +10 -17
  633. package/lib/internal/template/mixed-line-bar-chart/chart-filters.js.map +1 -1
  634. package/lib/internal/template/mixed-line-bar-chart/chart-legend.js +9 -13
  635. package/lib/internal/template/mixed-line-bar-chart/chart-legend.js.map +1 -1
  636. package/lib/internal/template/mixed-line-bar-chart/chart-popover.js +3 -4
  637. package/lib/internal/template/mixed-line-bar-chart/chart-popover.js.map +1 -1
  638. package/lib/internal/template/mixed-line-bar-chart/data-series.js +13 -17
  639. package/lib/internal/template/mixed-line-bar-chart/data-series.js.map +1 -1
  640. package/lib/internal/template/mixed-line-bar-chart/domain.js +32 -39
  641. package/lib/internal/template/mixed-line-bar-chart/domain.js.map +1 -1
  642. package/lib/internal/template/mixed-line-bar-chart/format-highlighted.js +13 -14
  643. package/lib/internal/template/mixed-line-bar-chart/format-highlighted.js.map +1 -1
  644. package/lib/internal/template/mixed-line-bar-chart/hooks/use-mouse-hover.js +32 -34
  645. package/lib/internal/template/mixed-line-bar-chart/hooks/use-mouse-hover.js.map +1 -1
  646. package/lib/internal/template/mixed-line-bar-chart/hooks/use-navigation.js +48 -57
  647. package/lib/internal/template/mixed-line-bar-chart/hooks/use-navigation.js.map +1 -1
  648. package/lib/internal/template/mixed-line-bar-chart/hooks/use-popover.js +7 -7
  649. package/lib/internal/template/mixed-line-bar-chart/hooks/use-popover.js.map +1 -1
  650. package/lib/internal/template/mixed-line-bar-chart/index.js +4 -4
  651. package/lib/internal/template/mixed-line-bar-chart/index.js.map +1 -1
  652. package/lib/internal/template/mixed-line-bar-chart/internal.js +47 -49
  653. package/lib/internal/template/mixed-line-bar-chart/internal.js.map +1 -1
  654. package/lib/internal/template/mixed-line-bar-chart/line-series.js +19 -24
  655. package/lib/internal/template/mixed-line-bar-chart/line-series.js.map +1 -1
  656. package/lib/internal/template/mixed-line-bar-chart/make-scaled-bar-groups.js +10 -11
  657. package/lib/internal/template/mixed-line-bar-chart/make-scaled-bar-groups.js.map +1 -1
  658. package/lib/internal/template/mixed-line-bar-chart/make-scaled-series.js +30 -38
  659. package/lib/internal/template/mixed-line-bar-chart/make-scaled-series.js.map +1 -1
  660. package/lib/internal/template/mixed-line-bar-chart/utils.js +18 -21
  661. package/lib/internal/template/mixed-line-bar-chart/utils.js.map +1 -1
  662. package/lib/internal/template/modal/body-scroll.js +4 -4
  663. package/lib/internal/template/modal/body-scroll.js.map +1 -1
  664. package/lib/internal/template/modal/index.js +4 -4
  665. package/lib/internal/template/modal/index.js.map +1 -1
  666. package/lib/internal/template/modal/internal.js +24 -25
  667. package/lib/internal/template/modal/internal.js.map +1 -1
  668. package/lib/internal/template/multiselect/index.js +5 -5
  669. package/lib/internal/template/multiselect/index.js.map +1 -1
  670. package/lib/internal/template/multiselect/internal.js +81 -88
  671. package/lib/internal/template/multiselect/internal.js.map +1 -1
  672. package/lib/internal/template/pagination/index.js +2 -3
  673. package/lib/internal/template/pagination/index.js.map +1 -1
  674. package/lib/internal/template/pagination/internal.js +16 -17
  675. package/lib/internal/template/pagination/internal.js.map +1 -1
  676. package/lib/internal/template/pagination/utils.js +12 -12
  677. package/lib/internal/template/pagination/utils.js.map +1 -1
  678. package/lib/internal/template/pie-chart/index.js +38 -39
  679. package/lib/internal/template/pie-chart/index.js.map +1 -1
  680. package/lib/internal/template/pie-chart/labels.js +38 -42
  681. package/lib/internal/template/pie-chart/labels.js.map +1 -1
  682. package/lib/internal/template/pie-chart/pie-chart.js +65 -67
  683. package/lib/internal/template/pie-chart/pie-chart.js.map +1 -1
  684. package/lib/internal/template/pie-chart/responsive-text.js +9 -10
  685. package/lib/internal/template/pie-chart/responsive-text.js.map +1 -1
  686. package/lib/internal/template/pie-chart/segments.js +27 -31
  687. package/lib/internal/template/pie-chart/segments.js.map +1 -1
  688. package/lib/internal/template/pie-chart/utils.js +32 -35
  689. package/lib/internal/template/pie-chart/utils.js.map +1 -1
  690. package/lib/internal/template/popover/arrow.js +2 -2
  691. package/lib/internal/template/popover/arrow.js.map +1 -1
  692. package/lib/internal/template/popover/body.js +16 -19
  693. package/lib/internal/template/popover/body.js.map +1 -1
  694. package/lib/internal/template/popover/container.js +52 -55
  695. package/lib/internal/template/popover/container.js.map +1 -1
  696. package/lib/internal/template/popover/index.js +6 -6
  697. package/lib/internal/template/popover/index.js.map +1 -1
  698. package/lib/internal/template/popover/internal.js +28 -28
  699. package/lib/internal/template/popover/internal.js.map +1 -1
  700. package/lib/internal/template/popover/utils/positions.js +54 -66
  701. package/lib/internal/template/popover/utils/positions.js.map +1 -1
  702. package/lib/internal/template/progress-bar/index.js +17 -17
  703. package/lib/internal/template/progress-bar/index.js.map +1 -1
  704. package/lib/internal/template/progress-bar/internal.js +12 -16
  705. package/lib/internal/template/progress-bar/internal.js.map +1 -1
  706. package/lib/internal/template/property-filter/controller.js +117 -125
  707. package/lib/internal/template/property-filter/controller.js.map +1 -1
  708. package/lib/internal/template/property-filter/filter-options.js +8 -11
  709. package/lib/internal/template/property-filter/filter-options.js.map +1 -1
  710. package/lib/internal/template/property-filter/index.js +50 -50
  711. package/lib/internal/template/property-filter/index.js.map +1 -1
  712. package/lib/internal/template/property-filter/property-editor.js +4 -5
  713. package/lib/internal/template/property-filter/property-editor.js.map +1 -1
  714. package/lib/internal/template/property-filter/property-filter-autosuggest.js +39 -39
  715. package/lib/internal/template/property-filter/property-filter-autosuggest.js.map +1 -1
  716. package/lib/internal/template/property-filter/token-editor.js +55 -66
  717. package/lib/internal/template/property-filter/token-editor.js.map +1 -1
  718. package/lib/internal/template/property-filter/token.js +9 -11
  719. package/lib/internal/template/property-filter/token.js.map +1 -1
  720. package/lib/internal/template/property-filter/use-load-items.js +8 -12
  721. package/lib/internal/template/property-filter/use-load-items.js.map +1 -1
  722. package/lib/internal/template/property-filter/utils.js +13 -18
  723. package/lib/internal/template/property-filter/utils.js.map +1 -1
  724. package/lib/internal/template/radio-group/index.js +3 -4
  725. package/lib/internal/template/radio-group/index.js.map +1 -1
  726. package/lib/internal/template/radio-group/internal.js +9 -9
  727. package/lib/internal/template/radio-group/internal.js.map +1 -1
  728. package/lib/internal/template/radio-group/radio-button.js +12 -15
  729. package/lib/internal/template/radio-group/radio-button.js.map +1 -1
  730. package/lib/internal/template/s3-resource-selector/index.js +29 -29
  731. package/lib/internal/template/s3-resource-selector/index.js.map +1 -1
  732. package/lib/internal/template/s3-resource-selector/s3-in-context/index.js +16 -18
  733. package/lib/internal/template/s3-resource-selector/s3-in-context/index.js.map +1 -1
  734. package/lib/internal/template/s3-resource-selector/s3-in-context/search-input.js +3 -4
  735. package/lib/internal/template/s3-resource-selector/s3-in-context/search-input.js.map +1 -1
  736. package/lib/internal/template/s3-resource-selector/s3-in-context/use-versions-fetch.js +16 -16
  737. package/lib/internal/template/s3-resource-selector/s3-in-context/use-versions-fetch.js.map +1 -1
  738. package/lib/internal/template/s3-resource-selector/s3-in-context/validation.js +6 -6
  739. package/lib/internal/template/s3-resource-selector/s3-in-context/validation.js.map +1 -1
  740. package/lib/internal/template/s3-resource-selector/s3-modal/basic-table.js +19 -20
  741. package/lib/internal/template/s3-resource-selector/s3-modal/basic-table.js.map +1 -1
  742. package/lib/internal/template/s3-resource-selector/s3-modal/buckets-table.js +11 -13
  743. package/lib/internal/template/s3-resource-selector/s3-modal/buckets-table.js.map +1 -1
  744. package/lib/internal/template/s3-resource-selector/s3-modal/column-formats.js +5 -5
  745. package/lib/internal/template/s3-resource-selector/s3-modal/column-formats.js.map +1 -1
  746. package/lib/internal/template/s3-resource-selector/s3-modal/empty-state.js +1 -2
  747. package/lib/internal/template/s3-resource-selector/s3-modal/empty-state.js.map +1 -1
  748. package/lib/internal/template/s3-resource-selector/s3-modal/index.js +37 -43
  749. package/lib/internal/template/s3-resource-selector/s3-modal/index.js.map +1 -1
  750. package/lib/internal/template/s3-resource-selector/s3-modal/objects-table.js +12 -14
  751. package/lib/internal/template/s3-resource-selector/s3-modal/objects-table.js.map +1 -1
  752. package/lib/internal/template/s3-resource-selector/s3-modal/table-utils.js +9 -12
  753. package/lib/internal/template/s3-resource-selector/s3-modal/table-utils.js.map +1 -1
  754. package/lib/internal/template/s3-resource-selector/s3-modal/versions-table.js +10 -12
  755. package/lib/internal/template/s3-resource-selector/s3-modal/versions-table.js.map +1 -1
  756. package/lib/internal/template/s3-resource-selector/utils.js +1 -1
  757. package/lib/internal/template/s3-resource-selector/utils.js.map +1 -1
  758. package/lib/internal/template/segmented-control/index.js +2 -3
  759. package/lib/internal/template/segmented-control/index.js.map +1 -1
  760. package/lib/internal/template/segmented-control/internal-segmented-control.js +16 -17
  761. package/lib/internal/template/segmented-control/internal-segmented-control.js.map +1 -1
  762. package/lib/internal/template/segmented-control/internal.js +14 -14
  763. package/lib/internal/template/segmented-control/internal.js.map +1 -1
  764. package/lib/internal/template/segmented-control/segment.js +3 -6
  765. package/lib/internal/template/segmented-control/segment.js.map +1 -1
  766. package/lib/internal/template/select/index.js +6 -6
  767. package/lib/internal/template/select/index.js.map +1 -1
  768. package/lib/internal/template/select/internal.js +58 -58
  769. package/lib/internal/template/select/internal.js.map +1 -1
  770. package/lib/internal/template/select/parts/filter.js +4 -4
  771. package/lib/internal/template/select/parts/filter.js.map +1 -1
  772. package/lib/internal/template/select/parts/item.js +10 -10
  773. package/lib/internal/template/select/parts/item.js.map +1 -1
  774. package/lib/internal/template/select/parts/multiselect-item.js +13 -14
  775. package/lib/internal/template/select/parts/multiselect-item.js.map +1 -1
  776. package/lib/internal/template/select/parts/plain-list.js +13 -15
  777. package/lib/internal/template/select/parts/plain-list.js.map +1 -1
  778. package/lib/internal/template/select/parts/trigger.js +7 -9
  779. package/lib/internal/template/select/parts/trigger.js.map +1 -1
  780. package/lib/internal/template/select/parts/virtual-list.js +27 -33
  781. package/lib/internal/template/select/parts/virtual-list.js.map +1 -1
  782. package/lib/internal/template/select/utils/check-option-value-field.js +2 -2
  783. package/lib/internal/template/select/utils/check-option-value-field.js.map +1 -1
  784. package/lib/internal/template/select/utils/connect-options.js +6 -7
  785. package/lib/internal/template/select/utils/connect-options.js.map +1 -1
  786. package/lib/internal/template/select/utils/get-item-props.js +4 -7
  787. package/lib/internal/template/select/utils/get-item-props.js.map +1 -1
  788. package/lib/internal/template/select/utils/render-options.js +13 -15
  789. package/lib/internal/template/select/utils/render-options.js.map +1 -1
  790. package/lib/internal/template/select/utils/use-announcement.js +10 -11
  791. package/lib/internal/template/select/utils/use-announcement.js.map +1 -1
  792. package/lib/internal/template/select/utils/use-load-items.js +16 -19
  793. package/lib/internal/template/select/utils/use-load-items.js.map +1 -1
  794. package/lib/internal/template/select/utils/use-native-search.js +20 -29
  795. package/lib/internal/template/select/utils/use-native-search.js.map +1 -1
  796. package/lib/internal/template/select/utils/use-select.js +89 -96
  797. package/lib/internal/template/select/utils/use-select.js.map +1 -1
  798. package/lib/internal/template/side-navigation/index.js +10 -10
  799. package/lib/internal/template/side-navigation/index.js.map +1 -1
  800. package/lib/internal/template/side-navigation/internal.js +35 -46
  801. package/lib/internal/template/side-navigation/internal.js.map +1 -1
  802. package/lib/internal/template/side-navigation/util.js +9 -12
  803. package/lib/internal/template/side-navigation/util.js.map +1 -1
  804. package/lib/internal/template/space-between/index.js +4 -4
  805. package/lib/internal/template/space-between/index.js.map +1 -1
  806. package/lib/internal/template/space-between/internal.js +7 -7
  807. package/lib/internal/template/space-between/internal.js.map +1 -1
  808. package/lib/internal/template/spinner/index.js +4 -4
  809. package/lib/internal/template/spinner/index.js.map +1 -1
  810. package/lib/internal/template/spinner/internal.js +4 -4
  811. package/lib/internal/template/spinner/internal.js.map +1 -1
  812. package/lib/internal/template/split-panel/bottom.js +22 -25
  813. package/lib/internal/template/split-panel/bottom.js.map +1 -1
  814. package/lib/internal/template/split-panel/icons/bottom-icon-refresh.js +11 -13
  815. package/lib/internal/template/split-panel/icons/bottom-icon-refresh.js.map +1 -1
  816. package/lib/internal/template/split-panel/icons/bottom-icon.js +1 -1
  817. package/lib/internal/template/split-panel/icons/bottom-icon.js.map +1 -1
  818. package/lib/internal/template/split-panel/icons/resize-handler.js +3 -6
  819. package/lib/internal/template/split-panel/icons/resize-handler.js.map +1 -1
  820. package/lib/internal/template/split-panel/icons/side-position-refresh.js +12 -14
  821. package/lib/internal/template/split-panel/icons/side-position-refresh.js.map +1 -1
  822. package/lib/internal/template/split-panel/icons/side-position.js +1 -1
  823. package/lib/internal/template/split-panel/icons/side-position.js.map +1 -1
  824. package/lib/internal/template/split-panel/index.js +65 -65
  825. package/lib/internal/template/split-panel/index.js.map +1 -1
  826. package/lib/internal/template/split-panel/preferences-modal.js +9 -9
  827. package/lib/internal/template/split-panel/preferences-modal.js.map +1 -1
  828. package/lib/internal/template/split-panel/side.js +12 -15
  829. package/lib/internal/template/split-panel/side.js.map +1 -1
  830. package/lib/internal/template/split-panel/utils/size-utils.js +3 -3
  831. package/lib/internal/template/split-panel/utils/size-utils.js.map +1 -1
  832. package/lib/internal/template/split-panel/utils/use-keyboard-events.js +13 -17
  833. package/lib/internal/template/split-panel/utils/use-keyboard-events.js.map +1 -1
  834. package/lib/internal/template/split-panel/utils/use-pointer-events.js +12 -13
  835. package/lib/internal/template/split-panel/utils/use-pointer-events.js.map +1 -1
  836. package/lib/internal/template/status-indicator/index.js +4 -4
  837. package/lib/internal/template/status-indicator/index.js.map +1 -1
  838. package/lib/internal/template/status-indicator/internal.js +9 -10
  839. package/lib/internal/template/status-indicator/internal.js.map +1 -1
  840. package/lib/internal/template/table/body-cell/click-away.js +9 -10
  841. package/lib/internal/template/table/body-cell/click-away.js.map +1 -1
  842. package/lib/internal/template/table/body-cell/index.js +18 -18
  843. package/lib/internal/template/table/body-cell/index.js.map +1 -1
  844. package/lib/internal/template/table/body-cell/inline-editor.js +32 -46
  845. package/lib/internal/template/table/body-cell/inline-editor.js.map +1 -1
  846. package/lib/internal/template/table/body-cell/td-element.js +2 -4
  847. package/lib/internal/template/table/body-cell/td-element.js.map +1 -1
  848. package/lib/internal/template/table/body-cell/use-stable-scroll-position.js +10 -13
  849. package/lib/internal/template/table/body-cell/use-stable-scroll-position.js.map +1 -1
  850. package/lib/internal/template/table/header-cell/index.d.ts +4 -2
  851. package/lib/internal/template/table/header-cell/index.d.ts.map +1 -1
  852. package/lib/internal/template/table/header-cell/index.js +33 -34
  853. package/lib/internal/template/table/header-cell/index.js.map +1 -1
  854. package/lib/internal/template/table/header-cell/utils.js +10 -12
  855. package/lib/internal/template/table/header-cell/utils.js.map +1 -1
  856. package/lib/internal/template/table/index.js +5 -5
  857. package/lib/internal/template/table/index.js.map +1 -1
  858. package/lib/internal/template/table/internal.d.ts.map +1 -1
  859. package/lib/internal/template/table/internal.js +94 -118
  860. package/lib/internal/template/table/internal.js.map +1 -1
  861. package/lib/internal/template/table/resizer/index.d.ts +5 -1
  862. package/lib/internal/template/table/resizer/index.d.ts.map +1 -1
  863. package/lib/internal/template/table/resizer/index.js +40 -39
  864. package/lib/internal/template/table/resizer/index.js.map +1 -1
  865. package/lib/internal/template/table/selection-control/index.d.ts +4 -1
  866. package/lib/internal/template/table/selection-control/index.d.ts.map +1 -1
  867. package/lib/internal/template/table/selection-control/index.js +11 -11
  868. package/lib/internal/template/table/selection-control/index.js.map +1 -1
  869. package/lib/internal/template/table/sticky-header.d.ts +2 -2
  870. package/lib/internal/template/table/sticky-header.d.ts.map +1 -1
  871. package/lib/internal/template/table/sticky-header.js +16 -15
  872. package/lib/internal/template/table/sticky-header.js.map +1 -1
  873. package/lib/internal/template/table/sticky-scrollbar.js +5 -6
  874. package/lib/internal/template/table/sticky-scrollbar.js.map +1 -1
  875. package/lib/internal/template/table/sticky-scrolling.js +10 -10
  876. package/lib/internal/template/table/sticky-scrolling.js.map +1 -1
  877. package/lib/internal/template/table/thead.d.ts +11 -3
  878. package/lib/internal/template/table/thead.d.ts.map +1 -1
  879. package/lib/internal/template/table/thead.js +13 -13
  880. package/lib/internal/template/table/thead.js.map +1 -1
  881. package/lib/internal/template/table/tools-header.js +4 -5
  882. package/lib/internal/template/table/tools-header.js.map +1 -1
  883. package/lib/internal/template/table/use-column-widths.js +34 -44
  884. package/lib/internal/template/table/use-column-widths.js.map +1 -1
  885. package/lib/internal/template/table/use-row-events.js +10 -11
  886. package/lib/internal/template/table/use-row-events.js.map +1 -1
  887. package/lib/internal/template/table/use-selection.js +75 -81
  888. package/lib/internal/template/table/use-selection.js.map +1 -1
  889. package/lib/internal/template/table/use-sticky-header.js +16 -16
  890. package/lib/internal/template/table/use-sticky-header.js.map +1 -1
  891. package/lib/internal/template/table/use-sticky-scrollbar.js +42 -42
  892. package/lib/internal/template/table/use-sticky-scrollbar.js.map +1 -1
  893. package/lib/internal/template/table/use-table-focus-navigation.js +27 -28
  894. package/lib/internal/template/table/use-table-focus-navigation.js.map +1 -1
  895. package/lib/internal/template/table/utils.js +7 -7
  896. package/lib/internal/template/table/utils.js.map +1 -1
  897. package/lib/internal/template/tabs/index.js +30 -33
  898. package/lib/internal/template/tabs/index.js.map +1 -1
  899. package/lib/internal/template/tabs/scroll-utils.js +12 -13
  900. package/lib/internal/template/tabs/scroll-utils.js.map +1 -1
  901. package/lib/internal/template/tabs/smooth-scroll.js +17 -17
  902. package/lib/internal/template/tabs/smooth-scroll.js.map +1 -1
  903. package/lib/internal/template/tabs/tab-header-bar.js +61 -66
  904. package/lib/internal/template/tabs/tab-header-bar.js.map +1 -1
  905. package/lib/internal/template/tag-editor/index.js +59 -72
  906. package/lib/internal/template/tag-editor/index.js.map +1 -1
  907. package/lib/internal/template/tag-editor/internal.js +21 -29
  908. package/lib/internal/template/tag-editor/internal.js.map +1 -1
  909. package/lib/internal/template/tag-editor/utils.js +7 -8
  910. package/lib/internal/template/tag-editor/utils.js.map +1 -1
  911. package/lib/internal/template/tag-editor/validation.js +16 -18
  912. package/lib/internal/template/tag-editor/validation.js.map +1 -1
  913. package/lib/internal/template/text-content/index.js +6 -6
  914. package/lib/internal/template/text-content/index.js.map +1 -1
  915. package/lib/internal/template/text-filter/index.js +3 -4
  916. package/lib/internal/template/text-filter/index.js.map +1 -1
  917. package/lib/internal/template/text-filter/internal.js +10 -10
  918. package/lib/internal/template/text-filter/internal.js.map +1 -1
  919. package/lib/internal/template/textarea/index.js +23 -24
  920. package/lib/internal/template/textarea/index.js.map +1 -1
  921. package/lib/internal/template/theming/index.js +2 -3
  922. package/lib/internal/template/theming/index.js.map +1 -1
  923. package/lib/internal/template/tiles/index.js +3 -4
  924. package/lib/internal/template/tiles/index.js.map +1 -1
  925. package/lib/internal/template/tiles/internal.js +17 -17
  926. package/lib/internal/template/tiles/internal.js.map +1 -1
  927. package/lib/internal/template/tiles/tile.js +7 -9
  928. package/lib/internal/template/tiles/tile.js.map +1 -1
  929. package/lib/internal/template/time-input/index.js +5 -5
  930. package/lib/internal/template/time-input/index.js.map +1 -1
  931. package/lib/internal/template/time-input/internal.js +9 -9
  932. package/lib/internal/template/time-input/internal.js.map +1 -1
  933. package/lib/internal/template/toggle/index.js +3 -4
  934. package/lib/internal/template/toggle/index.js.map +1 -1
  935. package/lib/internal/template/toggle/internal.js +15 -16
  936. package/lib/internal/template/toggle/internal.js.map +1 -1
  937. package/lib/internal/template/token-group/dismiss-button.js +5 -7
  938. package/lib/internal/template/token-group/dismiss-button.js.map +1 -1
  939. package/lib/internal/template/token-group/index.js +4 -4
  940. package/lib/internal/template/token-group/index.js.map +1 -1
  941. package/lib/internal/template/token-group/internal.js +14 -14
  942. package/lib/internal/template/token-group/internal.js.map +1 -1
  943. package/lib/internal/template/token-group/toggle.js +7 -9
  944. package/lib/internal/template/token-group/toggle.js.map +1 -1
  945. package/lib/internal/template/top-navigation/1.0-beta/index.js +4 -4
  946. package/lib/internal/template/top-navigation/1.0-beta/index.js.map +1 -1
  947. package/lib/internal/template/top-navigation/1.0-beta/internal.js +43 -46
  948. package/lib/internal/template/top-navigation/1.0-beta/internal.js.map +1 -1
  949. package/lib/internal/template/top-navigation/1.0-beta/parts/overflow-menu.js +16 -17
  950. package/lib/internal/template/top-navigation/1.0-beta/parts/overflow-menu.js.map +1 -1
  951. package/lib/internal/template/top-navigation/1.0-beta/parts/utility.js +9 -12
  952. package/lib/internal/template/top-navigation/1.0-beta/parts/utility.js.map +1 -1
  953. package/lib/internal/template/top-navigation/1.0-beta/use-top-navigation.js +46 -54
  954. package/lib/internal/template/top-navigation/1.0-beta/use-top-navigation.js.map +1 -1
  955. package/lib/internal/template/top-navigation/index.js +4 -4
  956. package/lib/internal/template/top-navigation/index.js.map +1 -1
  957. package/lib/internal/template/top-navigation/internal.js +64 -71
  958. package/lib/internal/template/top-navigation/internal.js.map +1 -1
  959. package/lib/internal/template/top-navigation/parts/overflow-menu/header.js +3 -4
  960. package/lib/internal/template/top-navigation/parts/overflow-menu/header.js.map +1 -1
  961. package/lib/internal/template/top-navigation/parts/overflow-menu/index.js +4 -5
  962. package/lib/internal/template/top-navigation/parts/overflow-menu/index.js.map +1 -1
  963. package/lib/internal/template/top-navigation/parts/overflow-menu/menu-item.js +56 -61
  964. package/lib/internal/template/top-navigation/parts/overflow-menu/menu-item.js.map +1 -1
  965. package/lib/internal/template/top-navigation/parts/overflow-menu/router.js +11 -13
  966. package/lib/internal/template/top-navigation/parts/overflow-menu/router.js.map +1 -1
  967. package/lib/internal/template/top-navigation/parts/overflow-menu/views/submenu.js +6 -8
  968. package/lib/internal/template/top-navigation/parts/overflow-menu/views/submenu.js.map +1 -1
  969. package/lib/internal/template/top-navigation/parts/overflow-menu/views/utilities.js +5 -7
  970. package/lib/internal/template/top-navigation/parts/overflow-menu/views/utilities.js.map +1 -1
  971. package/lib/internal/template/top-navigation/parts/utility.js +12 -15
  972. package/lib/internal/template/top-navigation/parts/utility.js.map +1 -1
  973. package/lib/internal/template/top-navigation/use-top-navigation.js +52 -59
  974. package/lib/internal/template/top-navigation/use-top-navigation.js.map +1 -1
  975. package/lib/internal/template/tutorial-panel/components/tutorial-detail-view/congratulation-screen.js +5 -7
  976. package/lib/internal/template/tutorial-panel/components/tutorial-detail-view/congratulation-screen.js.map +1 -1
  977. package/lib/internal/template/tutorial-panel/components/tutorial-detail-view/index.js +6 -7
  978. package/lib/internal/template/tutorial-panel/components/tutorial-detail-view/index.js.map +1 -1
  979. package/lib/internal/template/tutorial-panel/components/tutorial-detail-view/task-list.js +8 -15
  980. package/lib/internal/template/tutorial-panel/components/tutorial-detail-view/task-list.js.map +1 -1
  981. package/lib/internal/template/tutorial-panel/components/tutorial-detail-view/task.js +5 -6
  982. package/lib/internal/template/tutorial-panel/components/tutorial-detail-view/task.js.map +1 -1
  983. package/lib/internal/template/tutorial-panel/components/tutorial-list/index.js +19 -22
  984. package/lib/internal/template/tutorial-panel/components/tutorial-list/index.js.map +1 -1
  985. package/lib/internal/template/tutorial-panel/index.js +8 -8
  986. package/lib/internal/template/tutorial-panel/index.js.map +1 -1
  987. package/lib/internal/template/wizard/index.js +28 -28
  988. package/lib/internal/template/wizard/index.js.map +1 -1
  989. package/lib/internal/template/wizard/internal/analytics.js +32 -42
  990. package/lib/internal/template/wizard/internal/analytics.js.map +1 -1
  991. package/lib/internal/template/wizard/unmount.js +6 -13
  992. package/lib/internal/template/wizard/unmount.js.map +1 -1
  993. package/lib/internal/template/wizard/wizard-actions.js +7 -8
  994. package/lib/internal/template/wizard/wizard-actions.js.map +1 -1
  995. package/lib/internal/template/wizard/wizard-form-header.js +2 -3
  996. package/lib/internal/template/wizard/wizard-form-header.js.map +1 -1
  997. package/lib/internal/template/wizard/wizard-form.js +14 -16
  998. package/lib/internal/template/wizard/wizard-form.js.map +1 -1
  999. package/lib/internal/template/wizard/wizard-navigation.js +19 -25
  1000. package/lib/internal/template/wizard/wizard-navigation.js.map +1 -1
  1001. package/package.json +1 -1
@@ -2,85 +2,78 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
  import { getOverflowParents, getOverflowParentDimensions } from '../../utils/scrollable-containers';
4
4
  import styles from './styles.css.js';
5
- var AVAILABLE_SPACE_RESERVE_DEFAULT = 50;
6
- var AVAILABLE_SPACE_RESERVE_MOBILE_VERTICAL = 19; // 50 - 31
7
- var AVAILABLE_SPACE_RESERVE_MOBILE_HORIZONTAL = 20;
8
- var getClosestParentDimensions = function (element) {
9
- var parents = getOverflowParents(element).map(function (el) {
10
- var _a = el.getBoundingClientRect(), height = _a.height, width = _a.width, top = _a.top, left = _a.left;
5
+ const AVAILABLE_SPACE_RESERVE_DEFAULT = 50;
6
+ const AVAILABLE_SPACE_RESERVE_MOBILE_VERTICAL = 19; // 50 - 31
7
+ const AVAILABLE_SPACE_RESERVE_MOBILE_HORIZONTAL = 20;
8
+ const getClosestParentDimensions = (element) => {
9
+ const parents = getOverflowParents(element).map(el => {
10
+ const { height, width, top, left } = el.getBoundingClientRect();
11
11
  return {
12
- height: height,
13
- width: width,
14
- top: top,
15
- left: left
12
+ height,
13
+ width,
14
+ top,
15
+ left,
16
16
  };
17
17
  });
18
18
  return parents.shift();
19
19
  };
20
- export var getAvailableSpace = function (trigger, dropdown, overflowParents, stretchWidth, stretchHeight, isMobile) {
21
- if (stretchWidth === void 0) { stretchWidth = false; }
22
- if (stretchHeight === void 0) { stretchHeight = false; }
23
- var availableSpaceReserveVertical = stretchHeight
20
+ export const getAvailableSpace = (trigger, dropdown, overflowParents, stretchWidth = false, stretchHeight = false, isMobile) => {
21
+ const availableSpaceReserveVertical = stretchHeight
24
22
  ? 0
25
23
  : isMobile
26
24
  ? AVAILABLE_SPACE_RESERVE_MOBILE_VERTICAL
27
25
  : AVAILABLE_SPACE_RESERVE_DEFAULT;
28
- var availableSpaceReserveHorizontal = stretchWidth
26
+ const availableSpaceReserveHorizontal = stretchWidth
29
27
  ? 0
30
28
  : isMobile
31
29
  ? AVAILABLE_SPACE_RESERVE_MOBILE_HORIZONTAL
32
30
  : AVAILABLE_SPACE_RESERVE_DEFAULT;
33
- var _a = trigger.getBoundingClientRect(), triggerBottom = _a.bottom, triggerLeft = _a.left, triggerRight = _a.right;
34
- return overflowParents.reduce(function (_a, overflowParent) {
35
- var above = _a.above, below = _a.below, left = _a.left, right = _a.right;
36
- var offsetTop = triggerBottom - overflowParent.top;
37
- var currentAbove = offsetTop - trigger.offsetHeight - availableSpaceReserveVertical;
38
- var currentBelow = overflowParent.height - offsetTop - availableSpaceReserveVertical;
39
- var currentLeft = triggerRight - overflowParent.left - availableSpaceReserveHorizontal;
40
- var currentRight = overflowParent.left + overflowParent.width - triggerLeft - availableSpaceReserveHorizontal;
31
+ const { bottom: triggerBottom, left: triggerLeft, right: triggerRight } = trigger.getBoundingClientRect();
32
+ return overflowParents.reduce(({ above, below, left, right }, overflowParent) => {
33
+ const offsetTop = triggerBottom - overflowParent.top;
34
+ const currentAbove = offsetTop - trigger.offsetHeight - availableSpaceReserveVertical;
35
+ const currentBelow = overflowParent.height - offsetTop - availableSpaceReserveVertical;
36
+ const currentLeft = triggerRight - overflowParent.left - availableSpaceReserveHorizontal;
37
+ const currentRight = overflowParent.left + overflowParent.width - triggerLeft - availableSpaceReserveHorizontal;
41
38
  return {
42
39
  above: Math.min(above, currentAbove),
43
40
  below: Math.min(below, currentBelow),
44
41
  left: Math.min(left, currentLeft),
45
- right: Math.min(right, currentRight)
42
+ right: Math.min(right, currentRight),
46
43
  };
47
44
  }, { above: Number.MAX_VALUE, below: Number.MAX_VALUE, left: Number.MAX_VALUE, right: Number.MAX_VALUE });
48
45
  };
49
- export var getInteriorAvailableSpace = function (trigger, dropdown, overflowParents, isMobile) {
50
- var AVAILABLE_SPACE_RESERVE_VERTICAL = isMobile
46
+ export const getInteriorAvailableSpace = (trigger, dropdown, overflowParents, isMobile) => {
47
+ const AVAILABLE_SPACE_RESERVE_VERTICAL = isMobile
51
48
  ? AVAILABLE_SPACE_RESERVE_MOBILE_VERTICAL
52
49
  : AVAILABLE_SPACE_RESERVE_DEFAULT;
53
- var AVAILABLE_SPACE_RESERVE_HORIZONTAL = isMobile
50
+ const AVAILABLE_SPACE_RESERVE_HORIZONTAL = isMobile
54
51
  ? AVAILABLE_SPACE_RESERVE_MOBILE_HORIZONTAL
55
52
  : AVAILABLE_SPACE_RESERVE_DEFAULT;
56
- var _a = trigger.getBoundingClientRect(), triggerBottom = _a.bottom, triggerTop = _a.top, triggerLeft = _a.left, triggerRight = _a.right;
57
- return overflowParents.reduce(function (_a, overflowParent) {
58
- var above = _a.above, below = _a.below, left = _a.left, right = _a.right;
59
- var currentAbove = triggerBottom - overflowParent.top - AVAILABLE_SPACE_RESERVE_VERTICAL;
60
- var currentBelow = overflowParent.height - triggerTop + overflowParent.top - AVAILABLE_SPACE_RESERVE_VERTICAL;
61
- var currentLeft = triggerLeft - overflowParent.left - AVAILABLE_SPACE_RESERVE_HORIZONTAL;
62
- var currentRight = overflowParent.left + overflowParent.width - triggerRight - AVAILABLE_SPACE_RESERVE_HORIZONTAL;
53
+ const { bottom: triggerBottom, top: triggerTop, left: triggerLeft, right: triggerRight, } = trigger.getBoundingClientRect();
54
+ return overflowParents.reduce(({ above, below, left, right }, overflowParent) => {
55
+ const currentAbove = triggerBottom - overflowParent.top - AVAILABLE_SPACE_RESERVE_VERTICAL;
56
+ const currentBelow = overflowParent.height - triggerTop + overflowParent.top - AVAILABLE_SPACE_RESERVE_VERTICAL;
57
+ const currentLeft = triggerLeft - overflowParent.left - AVAILABLE_SPACE_RESERVE_HORIZONTAL;
58
+ const currentRight = overflowParent.left + overflowParent.width - triggerRight - AVAILABLE_SPACE_RESERVE_HORIZONTAL;
63
59
  return {
64
60
  above: Math.min(above, currentAbove),
65
61
  below: Math.min(below, currentBelow),
66
62
  left: Math.min(left, currentLeft),
67
- right: Math.min(right, currentRight)
63
+ right: Math.min(right, currentRight),
68
64
  };
69
65
  }, { above: Number.MAX_VALUE, below: Number.MAX_VALUE, left: Number.MAX_VALUE, right: Number.MAX_VALUE });
70
66
  };
71
- export var getDropdownPosition = function (trigger, dropdown, overflowParents, minWidth, preferCenter, stretchWidth, stretchHeight, isMobile) {
72
- if (preferCenter === void 0) { preferCenter = false; }
73
- if (stretchWidth === void 0) { stretchWidth = false; }
74
- if (stretchHeight === void 0) { stretchHeight = false; }
75
- var availableSpace = getAvailableSpace(trigger, dropdown, overflowParents, stretchWidth, stretchHeight, isMobile);
76
- var triggerWidth = trigger.getBoundingClientRect().width;
67
+ export const getDropdownPosition = (trigger, dropdown, overflowParents, minWidth, preferCenter = false, stretchWidth = false, stretchHeight = false, isMobile) => {
68
+ const availableSpace = getAvailableSpace(trigger, dropdown, overflowParents, stretchWidth, stretchHeight, isMobile);
69
+ const triggerWidth = trigger.getBoundingClientRect().width;
77
70
  minWidth = minWidth ? Math.min(triggerWidth, minWidth) : triggerWidth;
78
- var requiredWidth = dropdown.getBoundingClientRect().width;
71
+ const requiredWidth = dropdown.getBoundingClientRect().width;
79
72
  // dropdown should not be smaller than the trigger
80
- var idealWidth = Math.max(requiredWidth, minWidth);
81
- var dropLeft;
82
- var left = null;
83
- var width = idealWidth;
73
+ const idealWidth = Math.max(requiredWidth, minWidth);
74
+ let dropLeft;
75
+ let left = null;
76
+ let width = idealWidth;
84
77
  //1. Can it be positioned with ideal width to the right?
85
78
  if (idealWidth <= availableSpace.right) {
86
79
  dropLeft = false;
@@ -95,34 +88,34 @@ export var getDropdownPosition = function (trigger, dropdown, overflowParents, m
95
88
  width = Math.max(availableSpace.left, availableSpace.right, minWidth);
96
89
  }
97
90
  if (preferCenter) {
98
- var spillOver = (idealWidth - triggerWidth) / 2;
91
+ const spillOver = (idealWidth - triggerWidth) / 2;
99
92
  // availableSpace always includes the trigger width, but we want to exclude that
100
- var availableOutsideLeft = availableSpace.left - triggerWidth;
101
- var availableOutsideRight = availableSpace.right - triggerWidth;
102
- var fitsInCenter = availableOutsideLeft >= spillOver && availableOutsideRight >= spillOver;
93
+ const availableOutsideLeft = availableSpace.left - triggerWidth;
94
+ const availableOutsideRight = availableSpace.right - triggerWidth;
95
+ const fitsInCenter = availableOutsideLeft >= spillOver && availableOutsideRight >= spillOver;
103
96
  if (fitsInCenter) {
104
97
  left = -spillOver;
105
98
  }
106
99
  }
107
- var dropUp = availableSpace.below < dropdown.offsetHeight && availableSpace.above > availableSpace.below;
108
- var availableHeight = dropUp ? availableSpace.above : availableSpace.below;
100
+ const dropUp = availableSpace.below < dropdown.offsetHeight && availableSpace.above > availableSpace.below;
101
+ const availableHeight = dropUp ? availableSpace.above : availableSpace.below;
109
102
  // Try and crop the bottom item when all options can't be displayed, affordance for "there's more"
110
- var croppedHeight = stretchHeight ? availableHeight : Math.floor(availableHeight / 31) * 31 + 16;
103
+ const croppedHeight = stretchHeight ? availableHeight : Math.floor(availableHeight / 31) * 31 + 16;
111
104
  return {
112
- dropUp: dropUp,
113
- dropLeft: dropLeft,
114
- left: left === null ? 'auto' : "".concat(left, "px"),
115
- height: "".concat(croppedHeight, "px"),
116
- width: "".concat(width, "px")
105
+ dropUp,
106
+ dropLeft,
107
+ left: left === null ? 'auto' : `${left}px`,
108
+ height: `${croppedHeight}px`,
109
+ width: `${width}px`,
117
110
  };
118
111
  };
119
- export var getInteriorDropdownPosition = function (trigger, dropdown, overflowParents, isMobile) {
120
- var availableSpace = getInteriorAvailableSpace(trigger, dropdown, overflowParents, isMobile);
121
- var _a = trigger.getBoundingClientRect(), triggerBottom = _a.bottom, triggerTop = _a.top, triggerWidth = _a.width;
122
- var _b = getClosestParentDimensions(trigger), parentDropdownTop = _b.top, parentDropdownHeight = _b.height;
123
- var dropLeft;
124
- var width = dropdown.getBoundingClientRect().width;
125
- var top = triggerTop - parentDropdownTop;
112
+ export const getInteriorDropdownPosition = (trigger, dropdown, overflowParents, isMobile) => {
113
+ const availableSpace = getInteriorAvailableSpace(trigger, dropdown, overflowParents, isMobile);
114
+ const { bottom: triggerBottom, top: triggerTop, width: triggerWidth } = trigger.getBoundingClientRect();
115
+ const { top: parentDropdownTop, height: parentDropdownHeight } = getClosestParentDimensions(trigger);
116
+ let dropLeft;
117
+ let width = dropdown.getBoundingClientRect().width;
118
+ const top = triggerTop - parentDropdownTop;
126
119
  if (width <= availableSpace.right) {
127
120
  dropLeft = false;
128
121
  }
@@ -133,23 +126,23 @@ export var getInteriorDropdownPosition = function (trigger, dropdown, overflowPa
133
126
  dropLeft = availableSpace.left > availableSpace.right;
134
127
  width = Math.max(availableSpace.left, availableSpace.right);
135
128
  }
136
- var left = dropLeft ? 0 - width : triggerWidth;
137
- var dropUp = availableSpace.below < dropdown.offsetHeight && availableSpace.above > availableSpace.below;
138
- var bottom = dropUp ? parentDropdownTop + parentDropdownHeight - triggerBottom : 0;
139
- var availableHeight = dropUp ? availableSpace.above : availableSpace.below;
129
+ const left = dropLeft ? 0 - width : triggerWidth;
130
+ const dropUp = availableSpace.below < dropdown.offsetHeight && availableSpace.above > availableSpace.below;
131
+ const bottom = dropUp ? parentDropdownTop + parentDropdownHeight - triggerBottom : 0;
132
+ const availableHeight = dropUp ? availableSpace.above : availableSpace.below;
140
133
  // Try and crop the bottom item when all options can't be displayed, affordance for "there's more"
141
- var croppedHeight = Math.floor(availableHeight / 31) * 31 + 16;
134
+ const croppedHeight = Math.floor(availableHeight / 31) * 31 + 16;
142
135
  return {
143
- dropUp: dropUp,
144
- dropLeft: dropLeft,
145
- height: "".concat(croppedHeight, "px"),
146
- width: "".concat(width, "px"),
147
- top: "".concat(top, "px"),
148
- bottom: "".concat(bottom, "px"),
149
- left: "".concat(left, "px")
136
+ dropUp,
137
+ dropLeft,
138
+ height: `${croppedHeight}px`,
139
+ width: `${width}px`,
140
+ top: `${top}px`,
141
+ bottom: `${bottom}px`,
142
+ left: `${left}px`,
150
143
  };
151
144
  };
152
- export var calculatePosition = function (dropdownElement, triggerElement, verticalContainerElement, interior, expandToViewport, preferCenter, stretchWidth, stretchHeight, isMobile, minWidth) {
145
+ export const calculatePosition = (dropdownElement, triggerElement, verticalContainerElement, interior, expandToViewport, preferCenter, stretchWidth, stretchHeight, isMobile, minWidth) => {
153
146
  // cleaning previously assigned values,
154
147
  // so that they are not reused in case of screen resize and similar events
155
148
  verticalContainerElement.style.maxHeight = '';
@@ -160,11 +153,11 @@ export var calculatePosition = function (dropdownElement, triggerElement, vertic
160
153
  dropdownElement.classList.remove(styles['dropdown-drop-left']);
161
154
  dropdownElement.classList.remove(styles['dropdown-drop-right']);
162
155
  dropdownElement.classList.remove(styles['dropdown-drop-up']);
163
- var overflowParents = getOverflowParentDimensions(dropdownElement, interior, expandToViewport, stretchHeight);
164
- var position = interior
156
+ const overflowParents = getOverflowParentDimensions(dropdownElement, interior, expandToViewport, stretchHeight);
157
+ const position = interior
165
158
  ? getInteriorDropdownPosition(triggerElement, dropdownElement, overflowParents, isMobile)
166
159
  : getDropdownPosition(triggerElement, dropdownElement, overflowParents, minWidth, preferCenter, stretchWidth, stretchHeight, isMobile);
167
- var triggerBox = triggerElement.getBoundingClientRect();
160
+ const triggerBox = triggerElement.getBoundingClientRect();
168
161
  return [position, triggerBox];
169
162
  };
170
163
  //# sourceMappingURL=dropdown-fit-handler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-fit-handler.js","sourceRoot":"","sources":["../../../../../src/internal/components/dropdown/dropdown-fit-handler.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,EAAc,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChH,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAErC,IAAM,+BAA+B,GAAG,EAAE,CAAC;AAC3C,IAAM,uCAAuC,GAAG,EAAE,CAAC,CAAC,UAAU;AAC9D,IAAM,yCAAyC,GAAG,EAAE,CAAC;AAoBrD,IAAM,0BAA0B,GAAG,UAAC,OAAoB;IACtD,IAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,UAAA,EAAE;QAC1C,IAAA,KAA+B,EAAE,CAAC,qBAAqB,EAAE,EAAvD,MAAM,YAAA,EAAE,KAAK,WAAA,EAAE,GAAG,SAAA,EAAE,IAAI,UAA+B,CAAC;QAChE,OAAO;YACL,MAAM,QAAA;YACN,KAAK,OAAA;YACL,GAAG,KAAA;YACH,IAAI,MAAA;SACL,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC;AACzB,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,iBAAiB,GAAG,UAC/B,OAAoB,EACpB,QAAqB,EACrB,eAA0C,EAC1C,YAAoB,EACpB,aAAqB,EACrB,QAAkB;IAFlB,6BAAA,EAAA,oBAAoB;IACpB,8BAAA,EAAA,qBAAqB;IAGrB,IAAM,6BAA6B,GAAG,aAAa;QACjD,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,uCAAuC;YACzC,CAAC,CAAC,+BAA+B,CAAC;IACpC,IAAM,+BAA+B,GAAG,YAAY;QAClD,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,yCAAyC;YAC3C,CAAC,CAAC,+BAA+B,CAAC;IAC9B,IAAA,KAAoE,OAAO,CAAC,qBAAqB,EAAE,EAAzF,aAAa,YAAA,EAAQ,WAAW,UAAA,EAAS,YAAY,WAAoC,CAAC;IAE1G,OAAO,eAAe,CAAC,MAAM,CAC3B,UAAC,EAA6B,EAAE,cAAc;YAA3C,KAAK,WAAA,EAAE,KAAK,WAAA,EAAE,IAAI,UAAA,EAAE,KAAK,WAAA;QAC1B,IAAM,SAAS,GAAG,aAAa,GAAG,cAAc,CAAC,GAAG,CAAC;QACrD,IAAM,YAAY,GAAG,SAAS,GAAG,OAAO,CAAC,YAAY,GAAG,6BAA6B,CAAC;QACtF,IAAM,YAAY,GAAG,cAAc,CAAC,MAAM,GAAG,SAAS,GAAG,6BAA6B,CAAC;QACvF,IAAM,WAAW,GAAG,YAAY,GAAG,cAAc,CAAC,IAAI,GAAG,+BAA+B,CAAC;QACzF,IAAM,YAAY,GAAG,cAAc,CAAC,IAAI,GAAG,cAAc,CAAC,KAAK,GAAG,WAAW,GAAG,+BAA+B,CAAC;QAEhH,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,CAAC;YACpC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,CAAC;YACpC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC;YACjC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,CAAC;SACrC,CAAC;IACJ,CAAC,EACD,EAAE,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,CACtG,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,yBAAyB,GAAG,UACvC,OAAoB,EACpB,QAAqB,EACrB,eAA0C,EAC1C,QAAkB;IAElB,IAAM,gCAAgC,GAAG,QAAQ;QAC/C,CAAC,CAAC,uCAAuC;QACzC,CAAC,CAAC,+BAA+B,CAAC;IACpC,IAAM,kCAAkC,GAAG,QAAQ;QACjD,CAAC,CAAC,yCAAyC;QAC3C,CAAC,CAAC,+BAA+B,CAAC;IAC9B,IAAA,KAKF,OAAO,CAAC,qBAAqB,EAAE,EAJzB,aAAa,YAAA,EAChB,UAAU,SAAA,EACT,WAAW,UAAA,EACV,YAAY,WACc,CAAC;IAEpC,OAAO,eAAe,CAAC,MAAM,CAC3B,UAAC,EAA6B,EAAE,cAAc;YAA3C,KAAK,WAAA,EAAE,KAAK,WAAA,EAAE,IAAI,UAAA,EAAE,KAAK,WAAA;QAC1B,IAAM,YAAY,GAAG,aAAa,GAAG,cAAc,CAAC,GAAG,GAAG,gCAAgC,CAAC;QAC3F,IAAM,YAAY,GAAG,cAAc,CAAC,MAAM,GAAG,UAAU,GAAG,cAAc,CAAC,GAAG,GAAG,gCAAgC,CAAC;QAChH,IAAM,WAAW,GAAG,WAAW,GAAG,cAAc,CAAC,IAAI,GAAG,kCAAkC,CAAC;QAC3F,IAAM,YAAY,GAChB,cAAc,CAAC,IAAI,GAAG,cAAc,CAAC,KAAK,GAAG,YAAY,GAAG,kCAAkC,CAAC;QAEjG,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,CAAC;YACpC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,CAAC;YACpC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC;YACjC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,CAAC;SACrC,CAAC;IACJ,CAAC,EACD,EAAE,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,CACtG,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,mBAAmB,GAAG,UACjC,OAAoB,EACpB,QAAqB,EACrB,eAA0C,EAC1C,QAAiB,EACjB,YAAoB,EACpB,YAAoB,EACpB,aAAqB,EACrB,QAAkB;IAHlB,6BAAA,EAAA,oBAAoB;IACpB,6BAAA,EAAA,oBAAoB;IACpB,8BAAA,EAAA,qBAAqB;IAGrB,IAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,YAAY,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;IACpH,IAAM,YAAY,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC;IAC3D,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;IACtE,IAAM,aAAa,GAAG,QAAQ,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC;IAC7D,kDAAkD;IAClD,IAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IAErD,IAAI,QAAiB,CAAC;IACtB,IAAI,IAAI,GAAkB,IAAI,CAAC;IAC/B,IAAI,KAAK,GAAG,UAAU,CAAC;IAEvB,wDAAwD;IACxD,IAAI,UAAU,IAAI,cAAc,CAAC,KAAK,EAAE;QACtC,QAAQ,GAAG,KAAK,CAAC;QACjB,uDAAuD;KACxD;SAAM,IAAI,UAAU,IAAI,cAAc,CAAC,IAAI,EAAE;QAC5C,QAAQ,GAAG,IAAI,CAAC;QAChB,6DAA6D;KAC9D;SAAM;QACL,QAAQ,GAAG,cAAc,CAAC,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC;QACtD,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;KACvE;IAED,IAAI,YAAY,EAAE;QAChB,IAAM,SAAS,GAAG,CAAC,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QAElD,gFAAgF;QAChF,IAAM,oBAAoB,GAAG,cAAc,CAAC,IAAI,GAAG,YAAY,CAAC;QAChE,IAAM,qBAAqB,GAAG,cAAc,CAAC,KAAK,GAAG,YAAY,CAAC;QAElE,IAAM,YAAY,GAAG,oBAAoB,IAAI,SAAS,IAAI,qBAAqB,IAAI,SAAS,CAAC;QAC7F,IAAI,YAAY,EAAE;YAChB,IAAI,GAAG,CAAC,SAAS,CAAC;SACnB;KACF;IAED,IAAM,MAAM,GAAG,cAAc,CAAC,KAAK,GAAG,QAAQ,CAAC,YAAY,IAAI,cAAc,CAAC,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC;IAC3G,IAAM,eAAe,GAAG,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC;IAC7E,kGAAkG;IAClG,IAAM,aAAa,GAAG,aAAa,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IAEnG,OAAO;QACL,MAAM,QAAA;QACN,QAAQ,UAAA;QACR,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAG,IAAI,OAAI;QAC1C,MAAM,EAAE,UAAG,aAAa,OAAI;QAC5B,KAAK,EAAE,UAAG,KAAK,OAAI;KACpB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,2BAA2B,GAAG,UACzC,OAAoB,EACpB,QAAqB,EACrB,eAA0C,EAC1C,QAAkB;IAElB,IAAM,cAAc,GAAG,yBAAyB,CAAC,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC;IACzF,IAAA,KAAkE,OAAO,CAAC,qBAAqB,EAAE,EAAvF,aAAa,YAAA,EAAO,UAAU,SAAA,EAAS,YAAY,WAAoC,CAAC;IAClG,IAAA,KAA2D,0BAA0B,CAAC,OAAO,CAAC,EAAvF,iBAAiB,SAAA,EAAU,oBAAoB,YAAwC,CAAC;IAErG,IAAI,QAAQ,CAAC;IAEb,IAAI,KAAK,GAAG,QAAQ,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC;IACnD,IAAM,GAAG,GAAG,UAAU,GAAG,iBAAiB,CAAC;IAC3C,IAAI,KAAK,IAAI,cAAc,CAAC,KAAK,EAAE;QACjC,QAAQ,GAAG,KAAK,CAAC;KAClB;SAAM,IAAI,KAAK,IAAI,cAAc,CAAC,IAAI,EAAE;QACvC,QAAQ,GAAG,IAAI,CAAC;KACjB;SAAM;QACL,QAAQ,GAAG,cAAc,CAAC,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC;QACtD,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;KAC7D;IAED,IAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC;IAEjD,IAAM,MAAM,GAAG,cAAc,CAAC,KAAK,GAAG,QAAQ,CAAC,YAAY,IAAI,cAAc,CAAC,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC;IAC3G,IAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,iBAAiB,GAAG,oBAAoB,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IACrF,IAAM,eAAe,GAAG,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC;IAC7E,kGAAkG;IAClG,IAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IAEjE,OAAO;QACL,MAAM,QAAA;QACN,QAAQ,UAAA;QACR,MAAM,EAAE,UAAG,aAAa,OAAI;QAC5B,KAAK,EAAE,UAAG,KAAK,OAAI;QACnB,GAAG,EAAE,UAAG,GAAG,OAAI;QACf,MAAM,EAAE,UAAG,MAAM,OAAI;QACrB,IAAI,EAAE,UAAG,IAAI,OAAI;KAClB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,iBAAiB,GAAG,UAC/B,eAA+B,EAC/B,cAA8B,EAC9B,wBAAwC,EACxC,QAAiB,EACjB,gBAAyB,EACzB,YAAqB,EACrB,YAAqB,EACrB,aAAsB,EACtB,QAAiB,EACjB,QAAiB;IAEjB,uCAAuC;IACvC,0EAA0E;IAC1E,wBAAwB,CAAC,KAAK,CAAC,SAAS,GAAG,EAAE,CAAC;IAC9C,eAAe,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC;IACjC,eAAe,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,CAAC;IAC/B,eAAe,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC;IAClC,eAAe,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC;IAEhC,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAC/D,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAChE,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAE7D,IAAM,eAAe,GAAG,2BAA2B,CAAC,eAAe,EAAE,QAAQ,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAC;IAChH,IAAM,QAAQ,GAAG,QAAQ;QACvB,CAAC,CAAC,2BAA2B,CAAC,cAAc,EAAE,eAAe,EAAE,eAAe,EAAE,QAAQ,CAAC;QACzF,CAAC,CAAC,mBAAmB,CACjB,cAAc,EACd,eAAe,EACf,eAAe,EACf,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,QAAQ,CACT,CAAC;IACN,IAAM,UAAU,GAAG,cAAc,CAAC,qBAAqB,EAAE,CAAC;IAC1D,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AAChC,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Dimensions, getOverflowParents, getOverflowParentDimensions } from '../../utils/scrollable-containers';\nimport styles from './styles.css.js';\n\nconst AVAILABLE_SPACE_RESERVE_DEFAULT = 50;\nconst AVAILABLE_SPACE_RESERVE_MOBILE_VERTICAL = 19; // 50 - 31\nconst AVAILABLE_SPACE_RESERVE_MOBILE_HORIZONTAL = 20;\n\ninterface AvailableSpace {\n above: number;\n below: number;\n left: number;\n right: number;\n}\nexport interface DropdownPosition {\n height: string;\n width: string;\n dropUp: boolean;\n dropLeft: boolean;\n left: string;\n}\nexport interface InteriorDropdownPosition extends DropdownPosition {\n bottom: string;\n top: string;\n}\n\nconst getClosestParentDimensions = (element: HTMLElement): any => {\n const parents = getOverflowParents(element).map(el => {\n const { height, width, top, left } = el.getBoundingClientRect();\n return {\n height,\n width,\n top,\n left,\n };\n });\n\n return parents.shift();\n};\n\nexport const getAvailableSpace = (\n trigger: HTMLElement,\n dropdown: HTMLElement,\n overflowParents: ReadonlyArray<Dimensions>,\n stretchWidth = false,\n stretchHeight = false,\n isMobile?: boolean\n): AvailableSpace => {\n const availableSpaceReserveVertical = stretchHeight\n ? 0\n : isMobile\n ? AVAILABLE_SPACE_RESERVE_MOBILE_VERTICAL\n : AVAILABLE_SPACE_RESERVE_DEFAULT;\n const availableSpaceReserveHorizontal = stretchWidth\n ? 0\n : isMobile\n ? AVAILABLE_SPACE_RESERVE_MOBILE_HORIZONTAL\n : AVAILABLE_SPACE_RESERVE_DEFAULT;\n const { bottom: triggerBottom, left: triggerLeft, right: triggerRight } = trigger.getBoundingClientRect();\n\n return overflowParents.reduce(\n ({ above, below, left, right }, overflowParent) => {\n const offsetTop = triggerBottom - overflowParent.top;\n const currentAbove = offsetTop - trigger.offsetHeight - availableSpaceReserveVertical;\n const currentBelow = overflowParent.height - offsetTop - availableSpaceReserveVertical;\n const currentLeft = triggerRight - overflowParent.left - availableSpaceReserveHorizontal;\n const currentRight = overflowParent.left + overflowParent.width - triggerLeft - availableSpaceReserveHorizontal;\n\n return {\n above: Math.min(above, currentAbove),\n below: Math.min(below, currentBelow),\n left: Math.min(left, currentLeft),\n right: Math.min(right, currentRight),\n };\n },\n { above: Number.MAX_VALUE, below: Number.MAX_VALUE, left: Number.MAX_VALUE, right: Number.MAX_VALUE }\n );\n};\n\nexport const getInteriorAvailableSpace = (\n trigger: HTMLElement,\n dropdown: HTMLElement,\n overflowParents: ReadonlyArray<Dimensions>,\n isMobile?: boolean\n): AvailableSpace => {\n const AVAILABLE_SPACE_RESERVE_VERTICAL = isMobile\n ? AVAILABLE_SPACE_RESERVE_MOBILE_VERTICAL\n : AVAILABLE_SPACE_RESERVE_DEFAULT;\n const AVAILABLE_SPACE_RESERVE_HORIZONTAL = isMobile\n ? AVAILABLE_SPACE_RESERVE_MOBILE_HORIZONTAL\n : AVAILABLE_SPACE_RESERVE_DEFAULT;\n const {\n bottom: triggerBottom,\n top: triggerTop,\n left: triggerLeft,\n right: triggerRight,\n } = trigger.getBoundingClientRect();\n\n return overflowParents.reduce(\n ({ above, below, left, right }, overflowParent) => {\n const currentAbove = triggerBottom - overflowParent.top - AVAILABLE_SPACE_RESERVE_VERTICAL;\n const currentBelow = overflowParent.height - triggerTop + overflowParent.top - AVAILABLE_SPACE_RESERVE_VERTICAL;\n const currentLeft = triggerLeft - overflowParent.left - AVAILABLE_SPACE_RESERVE_HORIZONTAL;\n const currentRight =\n overflowParent.left + overflowParent.width - triggerRight - AVAILABLE_SPACE_RESERVE_HORIZONTAL;\n\n return {\n above: Math.min(above, currentAbove),\n below: Math.min(below, currentBelow),\n left: Math.min(left, currentLeft),\n right: Math.min(right, currentRight),\n };\n },\n { above: Number.MAX_VALUE, below: Number.MAX_VALUE, left: Number.MAX_VALUE, right: Number.MAX_VALUE }\n );\n};\n\nexport const getDropdownPosition = (\n trigger: HTMLElement,\n dropdown: HTMLElement,\n overflowParents: ReadonlyArray<Dimensions>,\n minWidth?: number,\n preferCenter = false,\n stretchWidth = false,\n stretchHeight = false,\n isMobile?: boolean\n): DropdownPosition => {\n const availableSpace = getAvailableSpace(trigger, dropdown, overflowParents, stretchWidth, stretchHeight, isMobile);\n const triggerWidth = trigger.getBoundingClientRect().width;\n minWidth = minWidth ? Math.min(triggerWidth, minWidth) : triggerWidth;\n const requiredWidth = dropdown.getBoundingClientRect().width;\n // dropdown should not be smaller than the trigger\n const idealWidth = Math.max(requiredWidth, minWidth);\n\n let dropLeft: boolean;\n let left: number | null = null;\n let width = idealWidth;\n\n //1. Can it be positioned with ideal width to the right?\n if (idealWidth <= availableSpace.right) {\n dropLeft = false;\n //2. Can it be positioned with ideal width to the left?\n } else if (idealWidth <= availableSpace.left) {\n dropLeft = true;\n //3. Fit into biggest available space either on left or right\n } else {\n dropLeft = availableSpace.left > availableSpace.right;\n width = Math.max(availableSpace.left, availableSpace.right, minWidth);\n }\n\n if (preferCenter) {\n const spillOver = (idealWidth - triggerWidth) / 2;\n\n // availableSpace always includes the trigger width, but we want to exclude that\n const availableOutsideLeft = availableSpace.left - triggerWidth;\n const availableOutsideRight = availableSpace.right - triggerWidth;\n\n const fitsInCenter = availableOutsideLeft >= spillOver && availableOutsideRight >= spillOver;\n if (fitsInCenter) {\n left = -spillOver;\n }\n }\n\n const dropUp = availableSpace.below < dropdown.offsetHeight && availableSpace.above > availableSpace.below;\n const availableHeight = dropUp ? availableSpace.above : availableSpace.below;\n // Try and crop the bottom item when all options can't be displayed, affordance for \"there's more\"\n const croppedHeight = stretchHeight ? availableHeight : Math.floor(availableHeight / 31) * 31 + 16;\n\n return {\n dropUp,\n dropLeft,\n left: left === null ? 'auto' : `${left}px`,\n height: `${croppedHeight}px`,\n width: `${width}px`,\n };\n};\n\nexport const getInteriorDropdownPosition = (\n trigger: HTMLElement,\n dropdown: HTMLElement,\n overflowParents: ReadonlyArray<Dimensions>,\n isMobile?: boolean\n): InteriorDropdownPosition => {\n const availableSpace = getInteriorAvailableSpace(trigger, dropdown, overflowParents, isMobile);\n const { bottom: triggerBottom, top: triggerTop, width: triggerWidth } = trigger.getBoundingClientRect();\n const { top: parentDropdownTop, height: parentDropdownHeight } = getClosestParentDimensions(trigger);\n\n let dropLeft;\n\n let width = dropdown.getBoundingClientRect().width;\n const top = triggerTop - parentDropdownTop;\n if (width <= availableSpace.right) {\n dropLeft = false;\n } else if (width <= availableSpace.left) {\n dropLeft = true;\n } else {\n dropLeft = availableSpace.left > availableSpace.right;\n width = Math.max(availableSpace.left, availableSpace.right);\n }\n\n const left = dropLeft ? 0 - width : triggerWidth;\n\n const dropUp = availableSpace.below < dropdown.offsetHeight && availableSpace.above > availableSpace.below;\n const bottom = dropUp ? parentDropdownTop + parentDropdownHeight - triggerBottom : 0;\n const availableHeight = dropUp ? availableSpace.above : availableSpace.below;\n // Try and crop the bottom item when all options can't be displayed, affordance for \"there's more\"\n const croppedHeight = Math.floor(availableHeight / 31) * 31 + 16;\n\n return {\n dropUp,\n dropLeft,\n height: `${croppedHeight}px`,\n width: `${width}px`,\n top: `${top}px`,\n bottom: `${bottom}px`,\n left: `${left}px`,\n };\n};\n\nexport const calculatePosition = (\n dropdownElement: HTMLDivElement,\n triggerElement: HTMLDivElement,\n verticalContainerElement: HTMLDivElement,\n interior: boolean,\n expandToViewport: boolean,\n preferCenter: boolean,\n stretchWidth: boolean,\n stretchHeight: boolean,\n isMobile: boolean,\n minWidth?: number\n): [DropdownPosition, DOMRect] => {\n // cleaning previously assigned values,\n // so that they are not reused in case of screen resize and similar events\n verticalContainerElement.style.maxHeight = '';\n dropdownElement.style.width = '';\n dropdownElement.style.top = '';\n dropdownElement.style.bottom = '';\n dropdownElement.style.left = '';\n\n dropdownElement.classList.remove(styles['dropdown-drop-left']);\n dropdownElement.classList.remove(styles['dropdown-drop-right']);\n dropdownElement.classList.remove(styles['dropdown-drop-up']);\n\n const overflowParents = getOverflowParentDimensions(dropdownElement, interior, expandToViewport, stretchHeight);\n const position = interior\n ? getInteriorDropdownPosition(triggerElement, dropdownElement, overflowParents, isMobile)\n : getDropdownPosition(\n triggerElement,\n dropdownElement,\n overflowParents,\n minWidth,\n preferCenter,\n stretchWidth,\n stretchHeight,\n isMobile\n );\n const triggerBox = triggerElement.getBoundingClientRect();\n return [position, triggerBox];\n};\n"]}
1
+ {"version":3,"file":"dropdown-fit-handler.js","sourceRoot":"","sources":["../../../../../src/internal/components/dropdown/dropdown-fit-handler.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 { Dimensions, getOverflowParents, getOverflowParentDimensions } from '../../utils/scrollable-containers';\nimport styles from './styles.css.js';\n\nconst AVAILABLE_SPACE_RESERVE_DEFAULT = 50;\nconst AVAILABLE_SPACE_RESERVE_MOBILE_VERTICAL = 19; // 50 - 31\nconst AVAILABLE_SPACE_RESERVE_MOBILE_HORIZONTAL = 20;\n\ninterface AvailableSpace {\n above: number;\n below: number;\n left: number;\n right: number;\n}\nexport interface DropdownPosition {\n height: string;\n width: string;\n dropUp: boolean;\n dropLeft: boolean;\n left: string;\n}\nexport interface InteriorDropdownPosition extends DropdownPosition {\n bottom: string;\n top: string;\n}\n\nconst getClosestParentDimensions = (element: HTMLElement): any => {\n const parents = getOverflowParents(element).map(el => {\n const { height, width, top, left } = el.getBoundingClientRect();\n return {\n height,\n width,\n top,\n left,\n };\n });\n\n return parents.shift();\n};\n\nexport const getAvailableSpace = (\n trigger: HTMLElement,\n dropdown: HTMLElement,\n overflowParents: ReadonlyArray<Dimensions>,\n stretchWidth = false,\n stretchHeight = false,\n isMobile?: boolean\n): AvailableSpace => {\n const availableSpaceReserveVertical = stretchHeight\n ? 0\n : isMobile\n ? AVAILABLE_SPACE_RESERVE_MOBILE_VERTICAL\n : AVAILABLE_SPACE_RESERVE_DEFAULT;\n const availableSpaceReserveHorizontal = stretchWidth\n ? 0\n : isMobile\n ? AVAILABLE_SPACE_RESERVE_MOBILE_HORIZONTAL\n : AVAILABLE_SPACE_RESERVE_DEFAULT;\n const { bottom: triggerBottom, left: triggerLeft, right: triggerRight } = trigger.getBoundingClientRect();\n\n return overflowParents.reduce(\n ({ above, below, left, right }, overflowParent) => {\n const offsetTop = triggerBottom - overflowParent.top;\n const currentAbove = offsetTop - trigger.offsetHeight - availableSpaceReserveVertical;\n const currentBelow = overflowParent.height - offsetTop - availableSpaceReserveVertical;\n const currentLeft = triggerRight - overflowParent.left - availableSpaceReserveHorizontal;\n const currentRight = overflowParent.left + overflowParent.width - triggerLeft - availableSpaceReserveHorizontal;\n\n return {\n above: Math.min(above, currentAbove),\n below: Math.min(below, currentBelow),\n left: Math.min(left, currentLeft),\n right: Math.min(right, currentRight),\n };\n },\n { above: Number.MAX_VALUE, below: Number.MAX_VALUE, left: Number.MAX_VALUE, right: Number.MAX_VALUE }\n );\n};\n\nexport const getInteriorAvailableSpace = (\n trigger: HTMLElement,\n dropdown: HTMLElement,\n overflowParents: ReadonlyArray<Dimensions>,\n isMobile?: boolean\n): AvailableSpace => {\n const AVAILABLE_SPACE_RESERVE_VERTICAL = isMobile\n ? AVAILABLE_SPACE_RESERVE_MOBILE_VERTICAL\n : AVAILABLE_SPACE_RESERVE_DEFAULT;\n const AVAILABLE_SPACE_RESERVE_HORIZONTAL = isMobile\n ? AVAILABLE_SPACE_RESERVE_MOBILE_HORIZONTAL\n : AVAILABLE_SPACE_RESERVE_DEFAULT;\n const {\n bottom: triggerBottom,\n top: triggerTop,\n left: triggerLeft,\n right: triggerRight,\n } = trigger.getBoundingClientRect();\n\n return overflowParents.reduce(\n ({ above, below, left, right }, overflowParent) => {\n const currentAbove = triggerBottom - overflowParent.top - AVAILABLE_SPACE_RESERVE_VERTICAL;\n const currentBelow = overflowParent.height - triggerTop + overflowParent.top - AVAILABLE_SPACE_RESERVE_VERTICAL;\n const currentLeft = triggerLeft - overflowParent.left - AVAILABLE_SPACE_RESERVE_HORIZONTAL;\n const currentRight =\n overflowParent.left + overflowParent.width - triggerRight - AVAILABLE_SPACE_RESERVE_HORIZONTAL;\n\n return {\n above: Math.min(above, currentAbove),\n below: Math.min(below, currentBelow),\n left: Math.min(left, currentLeft),\n right: Math.min(right, currentRight),\n };\n },\n { above: Number.MAX_VALUE, below: Number.MAX_VALUE, left: Number.MAX_VALUE, right: Number.MAX_VALUE }\n );\n};\n\nexport const getDropdownPosition = (\n trigger: HTMLElement,\n dropdown: HTMLElement,\n overflowParents: ReadonlyArray<Dimensions>,\n minWidth?: number,\n preferCenter = false,\n stretchWidth = false,\n stretchHeight = false,\n isMobile?: boolean\n): DropdownPosition => {\n const availableSpace = getAvailableSpace(trigger, dropdown, overflowParents, stretchWidth, stretchHeight, isMobile);\n const triggerWidth = trigger.getBoundingClientRect().width;\n minWidth = minWidth ? Math.min(triggerWidth, minWidth) : triggerWidth;\n const requiredWidth = dropdown.getBoundingClientRect().width;\n // dropdown should not be smaller than the trigger\n const idealWidth = Math.max(requiredWidth, minWidth);\n\n let dropLeft: boolean;\n let left: number | null = null;\n let width = idealWidth;\n\n //1. Can it be positioned with ideal width to the right?\n if (idealWidth <= availableSpace.right) {\n dropLeft = false;\n //2. Can it be positioned with ideal width to the left?\n } else if (idealWidth <= availableSpace.left) {\n dropLeft = true;\n //3. Fit into biggest available space either on left or right\n } else {\n dropLeft = availableSpace.left > availableSpace.right;\n width = Math.max(availableSpace.left, availableSpace.right, minWidth);\n }\n\n if (preferCenter) {\n const spillOver = (idealWidth - triggerWidth) / 2;\n\n // availableSpace always includes the trigger width, but we want to exclude that\n const availableOutsideLeft = availableSpace.left - triggerWidth;\n const availableOutsideRight = availableSpace.right - triggerWidth;\n\n const fitsInCenter = availableOutsideLeft >= spillOver && availableOutsideRight >= spillOver;\n if (fitsInCenter) {\n left = -spillOver;\n }\n }\n\n const dropUp = availableSpace.below < dropdown.offsetHeight && availableSpace.above > availableSpace.below;\n const availableHeight = dropUp ? availableSpace.above : availableSpace.below;\n // Try and crop the bottom item when all options can't be displayed, affordance for \"there's more\"\n const croppedHeight = stretchHeight ? availableHeight : Math.floor(availableHeight / 31) * 31 + 16;\n\n return {\n dropUp,\n dropLeft,\n left: left === null ? 'auto' : `${left}px`,\n height: `${croppedHeight}px`,\n width: `${width}px`,\n };\n};\n\nexport const getInteriorDropdownPosition = (\n trigger: HTMLElement,\n dropdown: HTMLElement,\n overflowParents: ReadonlyArray<Dimensions>,\n isMobile?: boolean\n): InteriorDropdownPosition => {\n const availableSpace = getInteriorAvailableSpace(trigger, dropdown, overflowParents, isMobile);\n const { bottom: triggerBottom, top: triggerTop, width: triggerWidth } = trigger.getBoundingClientRect();\n const { top: parentDropdownTop, height: parentDropdownHeight } = getClosestParentDimensions(trigger);\n\n let dropLeft;\n\n let width = dropdown.getBoundingClientRect().width;\n const top = triggerTop - parentDropdownTop;\n if (width <= availableSpace.right) {\n dropLeft = false;\n } else if (width <= availableSpace.left) {\n dropLeft = true;\n } else {\n dropLeft = availableSpace.left > availableSpace.right;\n width = Math.max(availableSpace.left, availableSpace.right);\n }\n\n const left = dropLeft ? 0 - width : triggerWidth;\n\n const dropUp = availableSpace.below < dropdown.offsetHeight && availableSpace.above > availableSpace.below;\n const bottom = dropUp ? parentDropdownTop + parentDropdownHeight - triggerBottom : 0;\n const availableHeight = dropUp ? availableSpace.above : availableSpace.below;\n // Try and crop the bottom item when all options can't be displayed, affordance for \"there's more\"\n const croppedHeight = Math.floor(availableHeight / 31) * 31 + 16;\n\n return {\n dropUp,\n dropLeft,\n height: `${croppedHeight}px`,\n width: `${width}px`,\n top: `${top}px`,\n bottom: `${bottom}px`,\n left: `${left}px`,\n };\n};\n\nexport const calculatePosition = (\n dropdownElement: HTMLDivElement,\n triggerElement: HTMLDivElement,\n verticalContainerElement: HTMLDivElement,\n interior: boolean,\n expandToViewport: boolean,\n preferCenter: boolean,\n stretchWidth: boolean,\n stretchHeight: boolean,\n isMobile: boolean,\n minWidth?: number\n): [DropdownPosition, DOMRect] => {\n // cleaning previously assigned values,\n // so that they are not reused in case of screen resize and similar events\n verticalContainerElement.style.maxHeight = '';\n dropdownElement.style.width = '';\n dropdownElement.style.top = '';\n dropdownElement.style.bottom = '';\n dropdownElement.style.left = '';\n\n dropdownElement.classList.remove(styles['dropdown-drop-left']);\n dropdownElement.classList.remove(styles['dropdown-drop-right']);\n dropdownElement.classList.remove(styles['dropdown-drop-up']);\n\n const overflowParents = getOverflowParentDimensions(dropdownElement, interior, expandToViewport, stretchHeight);\n const position = interior\n ? getInteriorDropdownPosition(triggerElement, dropdownElement, overflowParents, isMobile)\n : getDropdownPosition(\n triggerElement,\n dropdownElement,\n overflowParents,\n minWidth,\n preferCenter,\n stretchWidth,\n stretchHeight,\n isMobile\n );\n const triggerBox = triggerElement.getBoundingClientRect();\n return [position, triggerBox];\n};\n"]}
@@ -1,4 +1,3 @@
1
- import { __spreadArray } from "tslib";
2
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
2
  // SPDX-License-Identifier: Apache-2.0
4
3
  import styles from './styles.css.js';
@@ -15,8 +14,7 @@ import { DropdownContextProvider } from './context';
15
14
  import { useMobile } from '../../hooks/use-mobile';
16
15
  import TabTrap from '../tab-trap/index.js';
17
16
  import { getFirstFocusable, getLastFocusable } from '../focus-lock/utils.js';
18
- var DropdownContainer = function (_a) {
19
- var children = _a.children, _b = _a.renderWithPortal, renderWithPortal = _b === void 0 ? false : _b, id = _a.id, open = _a.open;
17
+ const DropdownContainer = ({ children, renderWithPortal = false, id, open }) => {
20
18
  if (renderWithPortal) {
21
19
  if (open) {
22
20
  return createPortal(React.createElement("div", { id: id }, children), document.body);
@@ -29,19 +27,17 @@ var DropdownContainer = function (_a) {
29
27
  return React.createElement(React.Fragment, null, children);
30
28
  }
31
29
  };
32
- var TransitionContent = function (_a) {
33
- var _b;
34
- var state = _a.state, transitionRef = _a.transitionRef, dropdownClasses = _a.dropdownClasses, stretchWidth = _a.stretchWidth, interior = _a.interior, isRefresh = _a.isRefresh, dropdownRef = _a.dropdownRef, verticalContainerRef = _a.verticalContainerRef, expandToViewport = _a.expandToViewport, header = _a.header, children = _a.children, footer = _a.footer, position = _a.position, open = _a.open, onMouseDown = _a.onMouseDown;
35
- var contentRef = useMergeRefs(dropdownRef, transitionRef);
36
- return (React.createElement("div", { className: clsx(styles.dropdown, dropdownClasses, (_b = {},
37
- _b[styles.open] = open,
38
- _b[styles['with-limited-width']] = !stretchWidth,
39
- _b[styles['hide-upper-border']] = stretchWidth,
40
- _b[styles.interior] = interior,
41
- _b[styles['is-empty']] = !header && !children,
42
- _b[styles.refresh] = isRefresh,
43
- _b[styles['use-portal']] = expandToViewport && !interior,
44
- _b)), ref: contentRef, "data-open": open, "data-animating": state !== 'exited', "aria-hidden": !open, onMouseDown: onMouseDown },
30
+ const TransitionContent = ({ state, transitionRef, dropdownClasses, stretchWidth, interior, isRefresh, dropdownRef, verticalContainerRef, expandToViewport, header, children, footer, position, open, onMouseDown, }) => {
31
+ const contentRef = useMergeRefs(dropdownRef, transitionRef);
32
+ return (React.createElement("div", { className: clsx(styles.dropdown, dropdownClasses, {
33
+ [styles.open]: open,
34
+ [styles['with-limited-width']]: !stretchWidth,
35
+ [styles['hide-upper-border']]: stretchWidth,
36
+ [styles.interior]: interior,
37
+ [styles['is-empty']]: !header && !children,
38
+ [styles.refresh]: isRefresh,
39
+ [styles['use-portal']]: expandToViewport && !interior,
40
+ }), ref: contentRef, "data-open": open, "data-animating": state !== 'exited', "aria-hidden": !open, onMouseDown: onMouseDown },
45
41
  React.createElement("div", { className: clsx(styles['dropdown-content-wrapper'], isRefresh && styles.refresh) },
46
42
  React.createElement("div", { className: styles['ie11-wrapper'] },
47
43
  React.createElement("div", { ref: verticalContainerRef, className: styles['dropdown-content'] },
@@ -50,26 +46,25 @@ var TransitionContent = function (_a) {
50
46
  children,
51
47
  footer))))));
52
48
  };
53
- var Dropdown = function (_a) {
54
- var children = _a.children, trigger = _a.trigger, open = _a.open, onDropdownClose = _a.onDropdownClose, onMouseDown = _a.onMouseDown, header = _a.header, footer = _a.footer, dropdownId = _a.dropdownId, _b = _a.stretchTriggerHeight, stretchTriggerHeight = _b === void 0 ? false : _b, _c = _a.stretchWidth, stretchWidth = _c === void 0 ? true : _c, _d = _a.stretchHeight, stretchHeight = _d === void 0 ? false : _d, _e = _a.stretchToTriggerWidth, stretchToTriggerWidth = _e === void 0 ? true : _e, _f = _a.expandToViewport, expandToViewport = _f === void 0 ? false : _f, _g = _a.preferCenter, preferCenter = _g === void 0 ? false : _g, _h = _a.interior, interior = _h === void 0 ? false : _h, minWidth = _a.minWidth, _j = _a.scrollable, scrollable = _j === void 0 ? true : _j, _k = _a.loopFocus, loopFocus = _k === void 0 ? expandToViewport : _k, onFocus = _a.onFocus, onBlur = _a.onBlur, contentKey = _a.contentKey;
55
- var wrapperRef = useRef(null);
56
- var triggerRef = useRef(null);
57
- var dropdownRef = useRef(null);
58
- var dropdownContainerRef = useRef(null);
49
+ const Dropdown = ({ children, trigger, open, onDropdownClose, onMouseDown, header, footer, dropdownId, stretchTriggerHeight = false, stretchWidth = true, stretchHeight = false, stretchToTriggerWidth = true, expandToViewport = false, preferCenter = false, interior = false, minWidth, scrollable = true, loopFocus = expandToViewport, onFocus, onBlur, contentKey, }) => {
50
+ const wrapperRef = useRef(null);
51
+ const triggerRef = useRef(null);
52
+ const dropdownRef = useRef(null);
53
+ const dropdownContainerRef = useRef(null);
59
54
  // This container is only needed to apply max-height to. We can't move max-height to it's parent
60
55
  // because of an IE11 issue with flexbox. https://github.com/philipwalton/flexbugs/issues/216
61
- var verticalContainerRef = useRef(null);
56
+ const verticalContainerRef = useRef(null);
62
57
  // To keep track of the initial position (drop up/down) which is kept the same during fixed repositioning
63
- var fixedPosition = useRef(null);
64
- var isRefresh = useVisualRefresh();
65
- var dropdownClasses = usePortalModeClasses(triggerRef);
66
- var _l = useState('bottom-right'), position = _l[0], setPosition = _l[1];
67
- var isMobile = useMobile();
68
- var setDropdownPosition = function (position, triggerBox, target, verticalContainer) {
69
- var entireWidth = !interior && stretchWidth;
58
+ const fixedPosition = useRef(null);
59
+ const isRefresh = useVisualRefresh();
60
+ const dropdownClasses = usePortalModeClasses(triggerRef);
61
+ const [position, setPosition] = useState('bottom-right');
62
+ const isMobile = useMobile();
63
+ const setDropdownPosition = (position, triggerBox, target, verticalContainer) => {
64
+ const entireWidth = !interior && stretchWidth;
70
65
  if (!stretchWidth) {
71
66
  // 1px offset for dropdowns where the dropdown itself needs a border, rather than on the items
72
- verticalContainer.style.maxHeight = "".concat(parseInt(position.height) + 1, "px");
67
+ verticalContainer.style.maxHeight = `${parseInt(position.height) + 1}px`;
73
68
  }
74
69
  else {
75
70
  verticalContainer.style.maxHeight = position.height;
@@ -100,16 +95,16 @@ var Dropdown = function (_a) {
100
95
  if (expandToViewport && !interior) {
101
96
  target.style.position = 'fixed';
102
97
  if (position.dropUp) {
103
- target.style.bottom = "calc(100% - ".concat(triggerBox.top, "px)");
98
+ target.style.bottom = `calc(100% - ${triggerBox.top}px)`;
104
99
  }
105
100
  else {
106
- target.style.top = "".concat(triggerBox.bottom, "px");
101
+ target.style.top = `${triggerBox.bottom}px`;
107
102
  }
108
103
  if (position.dropLeft) {
109
- target.style.left = "calc(".concat(triggerBox.right, "px - ").concat(position.width, ")");
104
+ target.style.left = `calc(${triggerBox.right}px - ${position.width})`;
110
105
  }
111
106
  else {
112
- target.style.left = "".concat(triggerBox.left, "px");
107
+ target.style.left = `${triggerBox.left}px`;
113
108
  }
114
109
  // Keep track of the initial dropdown position and direction.
115
110
  // Dropdown direction doesn't need to change as the user scrolls, just needs to stay attached to the trigger.
@@ -141,29 +136,26 @@ var Dropdown = function (_a) {
141
136
  setPosition('bottom-right');
142
137
  }
143
138
  };
144
- var isOutsideDropdown = function (element) {
145
- return (!wrapperRef.current || !wrapperRef.current.contains(element)) &&
146
- (!dropdownContainerRef.current || !dropdownContainerRef.current.contains(element));
147
- };
148
- var focusHandler = function (event) {
139
+ const isOutsideDropdown = (element) => (!wrapperRef.current || !wrapperRef.current.contains(element)) &&
140
+ (!dropdownContainerRef.current || !dropdownContainerRef.current.contains(element));
141
+ const focusHandler = (event) => {
149
142
  if (!event.relatedTarget || isOutsideDropdown(event.relatedTarget)) {
150
143
  fireNonCancelableEvent(onFocus, event);
151
144
  }
152
145
  };
153
- var blurHandler = function (event) {
146
+ const blurHandler = (event) => {
154
147
  if (!event.relatedTarget || isOutsideDropdown(event.relatedTarget)) {
155
148
  fireNonCancelableEvent(onBlur, event);
156
149
  }
157
150
  };
158
- useLayoutEffect(function () {
159
- var onDropdownOpen = function () {
151
+ useLayoutEffect(() => {
152
+ const onDropdownOpen = () => {
160
153
  if (open && dropdownRef.current && triggerRef.current && verticalContainerRef.current) {
161
154
  // calculate scroll width only for dropdowns that has a scrollbar and ignore it for date picker components
162
155
  if (scrollable) {
163
156
  dropdownRef.current.classList.add(styles.nowrap);
164
157
  }
165
- setDropdownPosition.apply(void 0, __spreadArray(__spreadArray([], calculatePosition(dropdownRef.current, triggerRef.current, verticalContainerRef.current, interior, expandToViewport, preferCenter, stretchWidth, stretchHeight, isMobile, minWidth), false), [dropdownRef.current,
166
- verticalContainerRef.current], false));
158
+ setDropdownPosition(...calculatePosition(dropdownRef.current, triggerRef.current, verticalContainerRef.current, interior, expandToViewport, preferCenter, stretchWidth, stretchHeight, isMobile, minWidth), dropdownRef.current, verticalContainerRef.current);
167
159
  if (scrollable) {
168
160
  dropdownRef.current.classList.remove(styles.nowrap);
169
161
  }
@@ -175,11 +167,11 @@ var Dropdown = function (_a) {
175
167
  window.addEventListener('scroll', onDropdownOpen);
176
168
  // only listen to window scroll within very short time after the dropdown opens
177
169
  // do not want to interfere dropdown position on scroll afterwards
178
- var timeoutId_1 = setTimeout(function () {
170
+ const timeoutId = setTimeout(() => {
179
171
  window.removeEventListener('scroll', onDropdownOpen);
180
172
  }, 500);
181
- return function () {
182
- clearTimeout(timeoutId_1);
173
+ return () => {
174
+ clearTimeout(timeoutId);
183
175
  window.removeEventListener('scroll', onDropdownOpen);
184
176
  };
185
177
  }
@@ -187,42 +179,42 @@ var Dropdown = function (_a) {
187
179
  // eslint-disable-next-line react-hooks/exhaustive-deps
188
180
  }, [open, dropdownRef, triggerRef, verticalContainerRef, interior, stretchWidth, isMobile, contentKey]);
189
181
  // subscribe to outside click
190
- useEffect(function () {
182
+ useEffect(() => {
191
183
  if (!open) {
192
184
  return;
193
185
  }
194
- var clickListener = function (e) {
186
+ const clickListener = (e) => {
195
187
  var _a, _b;
196
188
  if (!((_a = dropdownRef.current) === null || _a === void 0 ? void 0 : _a.contains(e.target)) && !((_b = triggerRef.current) === null || _b === void 0 ? void 0 : _b.contains(e.target))) {
197
189
  fireNonCancelableEvent(onDropdownClose);
198
190
  }
199
191
  };
200
192
  window.addEventListener('click', clickListener, true);
201
- return function () {
193
+ return () => {
202
194
  window.removeEventListener('click', clickListener, true);
203
195
  };
204
196
  }, [open, onDropdownClose]);
205
197
  // sync dropdown position on scroll and resize
206
- useLayoutEffect(function () {
198
+ useLayoutEffect(() => {
207
199
  if (!expandToViewport || !open) {
208
200
  return;
209
201
  }
210
- var updateDropdownPosition = function () {
202
+ const updateDropdownPosition = () => {
211
203
  if (triggerRef.current && dropdownRef.current && verticalContainerRef.current) {
212
- var triggerRect = triggerRef.current.getBoundingClientRect();
213
- var target = dropdownRef.current;
204
+ const triggerRect = triggerRef.current.getBoundingClientRect();
205
+ const target = dropdownRef.current;
214
206
  if (fixedPosition.current) {
215
207
  if (fixedPosition.current.dropUp) {
216
- dropdownRef.current.style.bottom = "calc(100% - ".concat(triggerRect.top, "px)");
208
+ dropdownRef.current.style.bottom = `calc(100% - ${triggerRect.top}px)`;
217
209
  }
218
210
  else {
219
- target.style.top = "".concat(triggerRect.bottom, "px");
211
+ target.style.top = `${triggerRect.bottom}px`;
220
212
  }
221
213
  if (fixedPosition.current.dropLeft) {
222
- target.style.left = "calc(".concat(triggerRect.right, "px - ").concat(fixedPosition.current.width, ")");
214
+ target.style.left = `calc(${triggerRect.right}px - ${fixedPosition.current.width})`;
223
215
  }
224
216
  else {
225
- target.style.left = "".concat(triggerRect.left, "px");
217
+ target.style.left = `${triggerRect.left}px`;
226
218
  }
227
219
  }
228
220
  }
@@ -230,20 +222,20 @@ var Dropdown = function (_a) {
230
222
  updateDropdownPosition();
231
223
  window.addEventListener('scroll', updateDropdownPosition, true);
232
224
  window.addEventListener('resize', updateDropdownPosition, true);
233
- return function () {
225
+ return () => {
234
226
  window.removeEventListener('scroll', updateDropdownPosition, true);
235
227
  window.removeEventListener('resize', updateDropdownPosition, true);
236
228
  };
237
229
  }, [open, expandToViewport]);
238
230
  return (React.createElement("div", { className: clsx(styles.root, interior && styles.interior, stretchTriggerHeight && styles['stretch-trigger-height']), ref: wrapperRef, onFocus: focusHandler, onBlur: blurHandler },
239
231
  React.createElement("div", { className: clsx(stretchTriggerHeight && styles['stretch-trigger-height']), ref: triggerRef }, trigger),
240
- React.createElement(TabTrap, { focusNextCallback: function () { var _a; return dropdownRef.current && ((_a = getFirstFocusable(dropdownRef.current)) === null || _a === void 0 ? void 0 : _a.focus()); }, disabled: !open || !loopFocus }),
232
+ React.createElement(TabTrap, { focusNextCallback: () => { var _a; return dropdownRef.current && ((_a = getFirstFocusable(dropdownRef.current)) === null || _a === void 0 ? void 0 : _a.focus()); }, disabled: !open || !loopFocus }),
241
233
  React.createElement(DropdownContainer, { renderWithPortal: expandToViewport && !interior, id: dropdownId, open: open },
242
- React.createElement(Transition, { "in": open !== null && open !== void 0 ? open : false, exit: false }, function (state, ref) { return (React.createElement("div", { ref: dropdownContainerRef },
243
- React.createElement(TabTrap, { focusNextCallback: function () { var _a; return triggerRef.current && ((_a = getLastFocusable(triggerRef.current)) === null || _a === void 0 ? void 0 : _a.focus()); }, disabled: !open || !loopFocus }),
234
+ React.createElement(Transition, { in: open !== null && open !== void 0 ? open : false, exit: false }, (state, ref) => (React.createElement("div", { ref: dropdownContainerRef },
235
+ React.createElement(TabTrap, { focusNextCallback: () => { var _a; return triggerRef.current && ((_a = getLastFocusable(triggerRef.current)) === null || _a === void 0 ? void 0 : _a.focus()); }, disabled: !open || !loopFocus }),
244
236
  React.createElement(TransitionContent, { state: state, transitionRef: ref, dropdownClasses: dropdownClasses, open: open, stretchWidth: stretchWidth, interior: interior, header: header, expandToViewport: expandToViewport, footer: footer, onMouseDown: onMouseDown, isRefresh: isRefresh, dropdownRef: dropdownRef, verticalContainerRef: verticalContainerRef, position: position }, children),
245
- React.createElement(TabTrap, { focusNextCallback: function () { var _a; return triggerRef.current && ((_a = getFirstFocusable(triggerRef.current)) === null || _a === void 0 ? void 0 : _a.focus()); }, disabled: !open || !loopFocus }))); }))));
237
+ React.createElement(TabTrap, { focusNextCallback: () => { var _a; return triggerRef.current && ((_a = getFirstFocusable(triggerRef.current)) === null || _a === void 0 ? void 0 : _a.focus()); }, disabled: !open || !loopFocus })))))));
246
238
  };
247
- var isInteriorPosition = function (position) { return position.bottom !== undefined; };
239
+ const isInteriorPosition = (position) => position.bottom !== undefined;
248
240
  export default Dropdown;
249
241
  //# sourceMappingURL=index.js.map