intergalactic 15.106.0-prerelease.0 → 15.107.0-prerelease.0

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 (489) hide show
  1. package/CHANGELOG.md +45 -0
  2. package/accordion/lib/cjs/Accordion.js +9 -9
  3. package/accordion/lib/es6/Accordion.js +9 -9
  4. package/accordion/package.json +1 -1
  5. package/animation/lib/cjs/Animation.js +11 -11
  6. package/animation/lib/cjs/Collapse.js +28 -28
  7. package/animation/lib/cjs/FadeInOut.js +28 -28
  8. package/animation/lib/cjs/Scale.js +28 -28
  9. package/animation/lib/cjs/Slide.js +28 -28
  10. package/animation/lib/cjs/Transform.js +28 -28
  11. package/animation/lib/es6/Animation.js +11 -11
  12. package/animation/lib/es6/Collapse.js +28 -28
  13. package/animation/lib/es6/FadeInOut.js +28 -28
  14. package/animation/lib/es6/Scale.js +28 -28
  15. package/animation/lib/es6/Slide.js +28 -28
  16. package/animation/lib/es6/Transform.js +28 -28
  17. package/animation/package.json +1 -1
  18. package/badge/lib/cjs/Badge.js +6 -6
  19. package/badge/lib/es6/Badge.js +6 -6
  20. package/badge/package.json +1 -1
  21. package/base-trigger/lib/cjs/BaseTrigger.js +18 -18
  22. package/base-trigger/lib/cjs/ButtonTrigger.js +3 -3
  23. package/base-trigger/lib/cjs/FilterTrigger.js +7 -7
  24. package/base-trigger/lib/cjs/LinkTrigger.js +12 -12
  25. package/base-trigger/lib/es6/BaseTrigger.js +18 -18
  26. package/base-trigger/lib/es6/ButtonTrigger.js +3 -3
  27. package/base-trigger/lib/es6/FilterTrigger.js +7 -7
  28. package/base-trigger/lib/es6/LinkTrigger.js +12 -12
  29. package/base-trigger/package.json +1 -1
  30. package/breadcrumbs/lib/cjs/Breadcrumbs.js +8 -8
  31. package/breadcrumbs/lib/es6/Breadcrumbs.js +8 -8
  32. package/breadcrumbs/package.json +1 -1
  33. package/breakpoints/package.json +1 -1
  34. package/button/lib/cjs/Button.js +27 -26
  35. package/button/lib/cjs/Button.js.map +1 -1
  36. package/button/lib/cjs/style/button.shadow.css +6 -0
  37. package/button/lib/es6/Button.js +27 -26
  38. package/button/lib/es6/Button.js.map +1 -1
  39. package/button/lib/es6/style/button.shadow.css +6 -0
  40. package/button/package.json +1 -1
  41. package/card/lib/cjs/Card.js +8 -8
  42. package/card/lib/es6/Card.js +8 -8
  43. package/card/package.json +1 -1
  44. package/carousel/lib/cjs/Carousel.js +21 -21
  45. package/carousel/lib/es6/Carousel.js +21 -21
  46. package/carousel/package.json +1 -1
  47. package/checkbox/lib/cjs/Checkbox.js +18 -18
  48. package/checkbox/lib/es6/Checkbox.js +18 -18
  49. package/checkbox/package.json +1 -1
  50. package/color-picker/PaletteManager.d.ts +64 -39
  51. package/color-picker/components/Item.d.ts +2 -1
  52. package/color-picker/lib/cjs/ColorPicker.js +34 -36
  53. package/color-picker/lib/cjs/ColorPicker.js.map +1 -1
  54. package/color-picker/lib/cjs/PaletteManager.js +39 -35
  55. package/color-picker/lib/cjs/PaletteManager.js.map +1 -1
  56. package/color-picker/lib/cjs/components/InputColor.js +24 -23
  57. package/color-picker/lib/cjs/components/InputColor.js.map +1 -1
  58. package/color-picker/lib/cjs/components/Item.js +26 -10
  59. package/color-picker/lib/cjs/components/Item.js.map +1 -1
  60. package/color-picker/lib/cjs/components/colors.js +10 -6
  61. package/color-picker/lib/cjs/components/colors.js.map +1 -1
  62. package/color-picker/lib/cjs/style/color-picker.shadow.css +4 -4
  63. package/color-picker/lib/cjs/translations/de.json +7 -7
  64. package/color-picker/lib/cjs/translations/en.json +7 -7
  65. package/color-picker/lib/cjs/translations/es.json +7 -7
  66. package/color-picker/lib/cjs/translations/fr.json +7 -7
  67. package/color-picker/lib/cjs/translations/it.json +7 -7
  68. package/color-picker/lib/cjs/translations/ja.json +7 -7
  69. package/color-picker/lib/cjs/translations/ko.json +7 -7
  70. package/color-picker/lib/cjs/translations/nl.json +7 -7
  71. package/color-picker/lib/cjs/translations/pl.json +7 -7
  72. package/color-picker/lib/cjs/translations/pt.json +7 -7
  73. package/color-picker/lib/cjs/translations/sv.json +7 -7
  74. package/color-picker/lib/cjs/translations/tr.json +7 -7
  75. package/color-picker/lib/cjs/translations/vi.json +7 -7
  76. package/color-picker/lib/cjs/translations/zh.json +7 -7
  77. package/color-picker/lib/es6/ColorPicker.js +34 -36
  78. package/color-picker/lib/es6/ColorPicker.js.map +1 -1
  79. package/color-picker/lib/es6/PaletteManager.js +39 -35
  80. package/color-picker/lib/es6/PaletteManager.js.map +1 -1
  81. package/color-picker/lib/es6/components/InputColor.js +24 -23
  82. package/color-picker/lib/es6/components/InputColor.js.map +1 -1
  83. package/color-picker/lib/es6/components/Item.js +26 -10
  84. package/color-picker/lib/es6/components/Item.js.map +1 -1
  85. package/color-picker/lib/es6/components/colors.js +11 -7
  86. package/color-picker/lib/es6/components/colors.js.map +1 -1
  87. package/color-picker/lib/es6/style/color-picker.shadow.css +4 -4
  88. package/color-picker/lib/es6/translations/de.json +7 -7
  89. package/color-picker/lib/es6/translations/en.json +7 -7
  90. package/color-picker/lib/es6/translations/es.json +7 -7
  91. package/color-picker/lib/es6/translations/fr.json +7 -7
  92. package/color-picker/lib/es6/translations/it.json +7 -7
  93. package/color-picker/lib/es6/translations/ja.json +7 -7
  94. package/color-picker/lib/es6/translations/ko.json +7 -7
  95. package/color-picker/lib/es6/translations/nl.json +7 -7
  96. package/color-picker/lib/es6/translations/pl.json +7 -7
  97. package/color-picker/lib/es6/translations/pt.json +7 -7
  98. package/color-picker/lib/es6/translations/sv.json +7 -7
  99. package/color-picker/lib/es6/translations/tr.json +7 -7
  100. package/color-picker/lib/es6/translations/vi.json +7 -7
  101. package/color-picker/lib/es6/translations/zh.json +7 -7
  102. package/color-picker/lib/types/PaletteManager.d.ts +64 -39
  103. package/color-picker/lib/types/components/Item.d.ts +2 -1
  104. package/color-picker/lib/types/translations/__intergalactic-dynamic-locales.d.ts +28 -28
  105. package/color-picker/package.json +1 -1
  106. package/color-picker/translations/__intergalactic-dynamic-locales.d.ts +28 -28
  107. package/components.json +73 -73
  108. package/core/package.json +1 -1
  109. package/counter/lib/cjs/Counter.js +11 -11
  110. package/counter/lib/es6/Counter.js +11 -11
  111. package/counter/package.json +1 -1
  112. package/d3-chart/lib/cjs/Area.js +11 -11
  113. package/d3-chart/lib/cjs/Axis.js +14 -14
  114. package/d3-chart/lib/cjs/Bar.js +16 -16
  115. package/d3-chart/lib/cjs/Bubble.js +12 -12
  116. package/d3-chart/lib/cjs/CompactHorizontalBar.js +16 -16
  117. package/d3-chart/lib/cjs/Donut.js +9 -9
  118. package/d3-chart/lib/cjs/Dots.js +8 -8
  119. package/d3-chart/lib/cjs/HorizontalBar.js +16 -16
  120. package/d3-chart/lib/cjs/Hover.js +3 -3
  121. package/d3-chart/lib/cjs/Line.js +9 -9
  122. package/d3-chart/lib/cjs/Plot.js +3 -3
  123. package/d3-chart/lib/cjs/Radar.js +19 -19
  124. package/d3-chart/lib/cjs/RadialTree.js +12 -12
  125. package/d3-chart/lib/cjs/Reference.js +12 -12
  126. package/d3-chart/lib/cjs/ScatterPlot.js +9 -9
  127. package/d3-chart/lib/cjs/Tooltip.js +9 -9
  128. package/d3-chart/lib/cjs/Venn.js +9 -9
  129. package/d3-chart/lib/cjs/a11y/PlotA11yModule.js +2 -2
  130. package/d3-chart/lib/cjs/a11y/PlotA11yView.js +2 -2
  131. package/d3-chart/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
  132. package/d3-chart/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +17 -17
  133. package/d3-chart/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +6 -6
  134. package/d3-chart/lib/es6/Area.js +11 -11
  135. package/d3-chart/lib/es6/Axis.js +14 -14
  136. package/d3-chart/lib/es6/Bar.js +16 -16
  137. package/d3-chart/lib/es6/Bubble.js +12 -12
  138. package/d3-chart/lib/es6/CompactHorizontalBar.js +16 -16
  139. package/d3-chart/lib/es6/Donut.js +9 -9
  140. package/d3-chart/lib/es6/Dots.js +8 -8
  141. package/d3-chart/lib/es6/HorizontalBar.js +16 -16
  142. package/d3-chart/lib/es6/Hover.js +3 -3
  143. package/d3-chart/lib/es6/Line.js +9 -9
  144. package/d3-chart/lib/es6/Plot.js +3 -3
  145. package/d3-chart/lib/es6/Radar.js +19 -19
  146. package/d3-chart/lib/es6/RadialTree.js +12 -12
  147. package/d3-chart/lib/es6/Reference.js +12 -12
  148. package/d3-chart/lib/es6/ScatterPlot.js +9 -9
  149. package/d3-chart/lib/es6/Tooltip.js +9 -9
  150. package/d3-chart/lib/es6/Venn.js +9 -9
  151. package/d3-chart/lib/es6/a11y/PlotA11yModule.js +2 -2
  152. package/d3-chart/lib/es6/a11y/PlotA11yView.js +2 -2
  153. package/d3-chart/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
  154. package/d3-chart/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +17 -17
  155. package/d3-chart/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +6 -6
  156. package/d3-chart/package.json +1 -1
  157. package/data-table/DataTable.d.ts +10 -0
  158. package/data-table/Head.d.ts +7 -2
  159. package/data-table/lib/cjs/Body.js +7 -8
  160. package/data-table/lib/cjs/Body.js.map +1 -1
  161. package/data-table/lib/cjs/DataTable.js +36 -36
  162. package/data-table/lib/cjs/DataTable.js.map +1 -1
  163. package/data-table/lib/cjs/Head.js +109 -39
  164. package/data-table/lib/cjs/Head.js.map +1 -1
  165. package/data-table/lib/cjs/style/data-table.shadow.css +1 -1
  166. package/data-table/lib/cjs/types.js.map +1 -1
  167. package/data-table/lib/es6/Body.js +7 -8
  168. package/data-table/lib/es6/Body.js.map +1 -1
  169. package/data-table/lib/es6/DataTable.js +36 -36
  170. package/data-table/lib/es6/DataTable.js.map +1 -1
  171. package/data-table/lib/es6/Head.js +109 -39
  172. package/data-table/lib/es6/Head.js.map +1 -1
  173. package/data-table/lib/es6/style/data-table.shadow.css +1 -1
  174. package/data-table/lib/es6/types.js.map +1 -1
  175. package/data-table/lib/types/DataTable.d.ts +10 -0
  176. package/data-table/lib/types/Head.d.ts +7 -2
  177. package/data-table/lib/types/types.d.ts +2 -0
  178. package/data-table/package.json +1 -1
  179. package/data-table/types.d.ts +2 -0
  180. package/date-picker/lib/cjs/components/Calendar.js +21 -21
  181. package/date-picker/lib/cjs/components/DateRangeComparatorAbstract.js +29 -29
  182. package/date-picker/lib/cjs/components/InputTrigger.js +29 -29
  183. package/date-picker/lib/cjs/components/PickerAbstract.js +29 -29
  184. package/date-picker/lib/cjs/components/RangePickerAbstract.js +29 -29
  185. package/date-picker/lib/es6/components/Calendar.js +21 -21
  186. package/date-picker/lib/es6/components/DateRangeComparatorAbstract.js +29 -29
  187. package/date-picker/lib/es6/components/InputTrigger.js +29 -29
  188. package/date-picker/lib/es6/components/PickerAbstract.js +29 -29
  189. package/date-picker/lib/es6/components/RangePickerAbstract.js +29 -29
  190. package/date-picker/package.json +1 -1
  191. package/divider/lib/cjs/Divider.js +10 -10
  192. package/divider/lib/es6/Divider.js +10 -10
  193. package/divider/package.json +1 -1
  194. package/dot/lib/cjs/Dot.js +10 -10
  195. package/dot/lib/es6/Dot.js +10 -10
  196. package/dot/package.json +1 -1
  197. package/drag-and-drop/lib/cjs/DragAndDrop.js +16 -16
  198. package/drag-and-drop/lib/es6/DragAndDrop.js +16 -16
  199. package/drag-and-drop/package.json +1 -1
  200. package/dropdown/lib/cjs/Dropdown.js +4 -4
  201. package/dropdown/lib/cjs/Dropdown.js.map +1 -1
  202. package/dropdown/lib/es6/Dropdown.js +4 -4
  203. package/dropdown/lib/es6/Dropdown.js.map +1 -1
  204. package/dropdown/package.json +1 -1
  205. package/dropdown-menu/index.d.ts +43 -1
  206. package/dropdown-menu/lib/cjs/DropdownMenu.js +449 -413
  207. package/dropdown-menu/lib/cjs/DropdownMenu.js.map +1 -1
  208. package/dropdown-menu/lib/cjs/DropdownMenuOld.js +682 -0
  209. package/dropdown-menu/lib/cjs/DropdownMenuOld.js.map +1 -0
  210. package/dropdown-menu/lib/cjs/index.d.js.map +1 -1
  211. package/dropdown-menu/lib/cjs/index.js +7 -0
  212. package/dropdown-menu/lib/cjs/index.js.map +1 -1
  213. package/dropdown-menu/lib/cjs/style/dropdown-menu-old.shadow.css +224 -0
  214. package/dropdown-menu/lib/cjs/style/dropdown-menu.shadow.css +24 -14
  215. package/dropdown-menu/lib/es6/DropdownMenu.js +453 -414
  216. package/dropdown-menu/lib/es6/DropdownMenu.js.map +1 -1
  217. package/dropdown-menu/lib/es6/DropdownMenuOld.js +683 -0
  218. package/dropdown-menu/lib/es6/DropdownMenuOld.js.map +1 -0
  219. package/dropdown-menu/lib/es6/index.d.js.map +1 -1
  220. package/dropdown-menu/lib/es6/index.js +1 -0
  221. package/dropdown-menu/lib/es6/index.js.map +1 -1
  222. package/dropdown-menu/lib/es6/style/dropdown-menu-old.shadow.css +224 -0
  223. package/dropdown-menu/lib/es6/style/dropdown-menu.shadow.css +24 -14
  224. package/dropdown-menu/lib/types/index.d.ts +43 -1
  225. package/dropdown-menu/package.json +1 -1
  226. package/ellipsis/lib/cjs/Ellipsis.js +10 -10
  227. package/ellipsis/lib/es6/Ellipsis.js +10 -10
  228. package/ellipsis/package.json +1 -1
  229. package/errors/lib/cjs/Error.js +9 -9
  230. package/errors/lib/es6/Error.js +9 -9
  231. package/errors/package.json +1 -1
  232. package/feature-popover/lib/cjs/FeaturePopover.js +11 -11
  233. package/feature-popover/lib/es6/FeaturePopover.js +11 -11
  234. package/feature-popover/package.json +1 -1
  235. package/feedback-form/lib/cjs/FeedbackForm.js +7 -7
  236. package/feedback-form/lib/cjs/component/checkbox-button/CheckboxButton.js +3 -3
  237. package/feedback-form/lib/cjs/component/feedback-rating/FeedbackRating.js +2 -2
  238. package/feedback-form/lib/cjs/component/slider-rating/SliderRating.js +6 -6
  239. package/feedback-form/lib/es6/FeedbackForm.js +7 -7
  240. package/feedback-form/lib/es6/component/checkbox-button/CheckboxButton.js +3 -3
  241. package/feedback-form/lib/es6/component/feedback-rating/FeedbackRating.js +2 -2
  242. package/feedback-form/lib/es6/component/slider-rating/SliderRating.js +6 -6
  243. package/feedback-form/package.json +1 -1
  244. package/flags/lib/cjs/Flags.js +3 -3
  245. package/flags/lib/es6/Flags.js +3 -3
  246. package/flags/lib/sprites/sprite@1x.css +256 -256
  247. package/flags/lib/sprites/sprite@2x.css +257 -257
  248. package/flags/package.json +1 -1
  249. package/flex-box/lib/cjs/Box/useBox.js +3 -3
  250. package/flex-box/lib/cjs/Flex/useFlex.js +3 -3
  251. package/flex-box/lib/cjs/invalid-state-box/InvalidStateBox.js +2 -2
  252. package/flex-box/lib/es6/Box/useBox.js +3 -3
  253. package/flex-box/lib/es6/Flex/useFlex.js +3 -3
  254. package/flex-box/lib/es6/invalid-state-box/InvalidStateBox.js +2 -2
  255. package/flex-box/package.json +1 -1
  256. package/format-text/lib/cjs/FormatText.js +5 -5
  257. package/format-text/lib/es6/FormatText.js +5 -5
  258. package/format-text/package.json +1 -1
  259. package/fullscreen-modal/lib/cjs/FullscreenModal.js +13 -13
  260. package/fullscreen-modal/lib/es6/FullscreenModal.js +13 -13
  261. package/fullscreen-modal/package.json +1 -1
  262. package/grid/lib/cjs/Grid.js +114 -114
  263. package/grid/lib/es6/Grid.js +114 -114
  264. package/grid/package.json +1 -1
  265. package/i18n-unplugin/package.json +1 -1
  266. package/icon/CursorMove/m/index.js +1 -1
  267. package/icon/CursorMove/m/index.mjs +1 -1
  268. package/icon/color/Confluence/l/index.js +4 -4
  269. package/icon/color/Confluence/l/index.mjs +4 -4
  270. package/icon/color/Confluence/m/index.js +4 -4
  271. package/icon/color/Confluence/m/index.mjs +4 -4
  272. package/icon/color/MicrosoftOffice/l/index.js +10 -10
  273. package/icon/color/MicrosoftOffice/l/index.mjs +10 -10
  274. package/icon/color/MicrosoftOffice/m/index.js +10 -10
  275. package/icon/color/MicrosoftOffice/m/index.mjs +10 -10
  276. package/icon/lib/cjs/Icon.js +6 -6
  277. package/icon/lib/es6/Icon.js +6 -6
  278. package/icon/package.json +1 -1
  279. package/icon/pay/Discover/l/index.js +1 -1
  280. package/icon/pay/Discover/l/index.mjs +1 -1
  281. package/icon/pay/Discover/m/index.js +1 -1
  282. package/icon/pay/Discover/m/index.mjs +1 -1
  283. package/icon/pay/JCB/l/index.js +10 -10
  284. package/icon/pay/JCB/l/index.mjs +10 -10
  285. package/icon/pay/JCB/m/index.js +10 -10
  286. package/icon/pay/JCB/m/index.mjs +10 -10
  287. package/icon/pay/Visa/l/index.js +2 -2
  288. package/icon/pay/Visa/l/index.mjs +2 -2
  289. package/icon/pay/Visa/m/index.js +2 -2
  290. package/icon/pay/Visa/m/index.mjs +2 -2
  291. package/illustration/lib/cjs/index.js +1 -1
  292. package/illustration/lib/es6/index.js +1 -1
  293. package/illustration/package.json +1 -1
  294. package/inline-edit/lib/cjs/InlineEdit.js +4 -4
  295. package/inline-edit/lib/es6/InlineEdit.js +4 -4
  296. package/inline-edit/package.json +1 -1
  297. package/inline-input/lib/cjs/InlineInput.js +14 -14
  298. package/inline-input/lib/es6/InlineInput.js +14 -14
  299. package/inline-input/package.json +1 -1
  300. package/input/lib/cjs/Input.js +17 -17
  301. package/input/lib/es6/Input.js +17 -17
  302. package/input/package.json +1 -1
  303. package/input-mask/lib/cjs/InputMask.js +6 -6
  304. package/input-mask/lib/es6/InputMask.js +6 -6
  305. package/input-mask/package.json +1 -1
  306. package/input-number/lib/cjs/InputNumber.js +9 -9
  307. package/input-number/lib/es6/InputNumber.js +9 -9
  308. package/input-number/package.json +1 -1
  309. package/input-tags/lib/cjs/InputTags.js +12 -12
  310. package/input-tags/lib/es6/InputTags.js +12 -12
  311. package/input-tags/package.json +1 -1
  312. package/link/lib/cjs/Link.js +12 -12
  313. package/link/lib/es6/Link.js +12 -12
  314. package/link/package.json +1 -1
  315. package/mini-chart/lib/cjs/component/score/Donut.js +9 -9
  316. package/mini-chart/lib/cjs/component/score/Line.js +17 -17
  317. package/mini-chart/lib/cjs/component/trend/Bar.js +7 -7
  318. package/mini-chart/lib/cjs/component/trend/Line.js +7 -7
  319. package/mini-chart/lib/es6/component/score/Donut.js +9 -9
  320. package/mini-chart/lib/es6/component/score/Line.js +17 -17
  321. package/mini-chart/lib/es6/component/trend/Bar.js +7 -7
  322. package/mini-chart/lib/es6/component/trend/Line.js +7 -7
  323. package/mini-chart/package.json +1 -1
  324. package/modal/lib/cjs/Modal.js +8 -8
  325. package/modal/lib/es6/Modal.js +8 -8
  326. package/modal/package.json +1 -1
  327. package/neighbor-location/package.json +1 -1
  328. package/notice/index.d.ts +1 -1
  329. package/notice/lib/cjs/Notice.js +14 -14
  330. package/notice/lib/cjs/index.d.js.map +1 -1
  331. package/notice/lib/es6/Notice.js +14 -14
  332. package/notice/lib/es6/index.d.js.map +1 -1
  333. package/notice/lib/types/index.d.ts +1 -1
  334. package/notice/package.json +1 -1
  335. package/notice-bubble/lib/cjs/NoticeBubble.js +15 -15
  336. package/notice-bubble/lib/es6/NoticeBubble.js +15 -15
  337. package/notice-bubble/package.json +1 -1
  338. package/notice-global/index.d.ts +1 -1
  339. package/notice-global/lib/cjs/NoticeGlobal.js +11 -11
  340. package/notice-global/lib/cjs/index.d.js.map +1 -1
  341. package/notice-global/lib/es6/NoticeGlobal.js +11 -11
  342. package/notice-global/lib/es6/index.d.js.map +1 -1
  343. package/notice-global/lib/types/index.d.ts +1 -1
  344. package/notice-global/package.json +1 -1
  345. package/outside-click/package.json +1 -1
  346. package/package.json +1 -1
  347. package/pagination/lib/cjs/Pagination.js +10 -10
  348. package/pagination/lib/es6/Pagination.js +10 -10
  349. package/pagination/package.json +1 -1
  350. package/pills/lib/cjs/Pills.js +13 -13
  351. package/pills/lib/es6/Pills.js +13 -13
  352. package/pills/package.json +1 -1
  353. package/popper/lib/cjs/Popper.js +45 -69
  354. package/popper/lib/cjs/Popper.js.map +1 -1
  355. package/popper/lib/es6/Popper.js +46 -69
  356. package/popper/lib/es6/Popper.js.map +1 -1
  357. package/popper/package.json +1 -1
  358. package/portal/package.json +1 -1
  359. package/product-head/lib/cjs/Info.js +4 -4
  360. package/product-head/lib/cjs/ProductHead.js +5 -5
  361. package/product-head/lib/cjs/Title.js +4 -4
  362. package/product-head/lib/es6/Info.js +4 -4
  363. package/product-head/lib/es6/ProductHead.js +5 -5
  364. package/product-head/lib/es6/Title.js +4 -4
  365. package/product-head/package.json +1 -1
  366. package/progress-bar/lib/cjs/ProgressBar.js +15 -15
  367. package/progress-bar/lib/es6/ProgressBar.js +15 -15
  368. package/progress-bar/package.json +1 -1
  369. package/radio/lib/cjs/Radio.js +16 -16
  370. package/radio/lib/es6/Radio.js +16 -16
  371. package/radio/package.json +1 -1
  372. package/scroll-area/lib/cjs/ScrollArea.js +21 -21
  373. package/scroll-area/lib/cjs/ScrollBar.js +6 -6
  374. package/scroll-area/lib/es6/ScrollArea.js +21 -21
  375. package/scroll-area/lib/es6/ScrollBar.js +6 -6
  376. package/scroll-area/package.json +1 -1
  377. package/select/lib/cjs/InputSearch.js +6 -6
  378. package/select/lib/cjs/Select.js +23 -21
  379. package/select/lib/cjs/Select.js.map +1 -1
  380. package/select/lib/es6/InputSearch.js +6 -6
  381. package/select/lib/es6/Select.js +13 -10
  382. package/select/lib/es6/Select.js.map +1 -1
  383. package/select/package.json +1 -1
  384. package/side-panel/lib/cjs/SidePanel.js +19 -19
  385. package/side-panel/lib/es6/SidePanel.js +19 -19
  386. package/side-panel/package.json +1 -1
  387. package/skeleton/lib/cjs/Charts/Area.js +9 -9
  388. package/skeleton/lib/cjs/Charts/Bar.js +9 -9
  389. package/skeleton/lib/cjs/Charts/Bubble.js +9 -9
  390. package/skeleton/lib/cjs/Charts/CompactHorizontalBar.js +9 -9
  391. package/skeleton/lib/cjs/Charts/Donut.js +9 -9
  392. package/skeleton/lib/cjs/Charts/Histogram.js +9 -9
  393. package/skeleton/lib/cjs/Charts/Line.js +9 -9
  394. package/skeleton/lib/cjs/Charts/RadialTree.js +9 -9
  395. package/skeleton/lib/cjs/Charts/ScatterPlot.js +9 -9
  396. package/skeleton/lib/cjs/Charts/Venn.js +9 -9
  397. package/skeleton/lib/cjs/Skeleton.js +8 -8
  398. package/skeleton/lib/es6/Charts/Area.js +9 -9
  399. package/skeleton/lib/es6/Charts/Bar.js +9 -9
  400. package/skeleton/lib/es6/Charts/Bubble.js +9 -9
  401. package/skeleton/lib/es6/Charts/CompactHorizontalBar.js +9 -9
  402. package/skeleton/lib/es6/Charts/Donut.js +9 -9
  403. package/skeleton/lib/es6/Charts/Histogram.js +9 -9
  404. package/skeleton/lib/es6/Charts/Line.js +9 -9
  405. package/skeleton/lib/es6/Charts/RadialTree.js +9 -9
  406. package/skeleton/lib/es6/Charts/ScatterPlot.js +9 -9
  407. package/skeleton/lib/es6/Charts/Venn.js +9 -9
  408. package/skeleton/lib/es6/Skeleton.js +8 -8
  409. package/skeleton/package.json +1 -1
  410. package/slider/lib/cjs/Slider.js +8 -8
  411. package/slider/lib/es6/Slider.js +8 -8
  412. package/slider/package.json +1 -1
  413. package/spin/lib/cjs/Spin.js +13 -13
  414. package/spin/lib/es6/Spin.js +13 -13
  415. package/spin/package.json +1 -1
  416. package/spin-container/lib/cjs/SpinContainer.js +8 -8
  417. package/spin-container/lib/es6/SpinContainer.js +8 -8
  418. package/spin-container/package.json +1 -1
  419. package/sticky/lib/cjs/Sticky.js +2 -2
  420. package/sticky/lib/es6/Sticky.js +2 -2
  421. package/sticky/package.json +1 -1
  422. package/switch/lib/cjs/Switch.js +21 -21
  423. package/switch/lib/es6/Switch.js +21 -21
  424. package/switch/package.json +1 -1
  425. package/tab-line/lib/cjs/TabLine.js +13 -13
  426. package/tab-line/lib/es6/TabLine.js +13 -13
  427. package/tab-line/package.json +1 -1
  428. package/tab-panel/lib/cjs/TabPanel.js +8 -8
  429. package/tab-panel/lib/es6/TabPanel.js +8 -8
  430. package/tab-panel/package.json +1 -1
  431. package/tag/lib/cjs/Tag.js +23 -23
  432. package/tag/lib/es6/Tag.js +23 -23
  433. package/tag/package.json +1 -1
  434. package/textarea/lib/cjs/Textarea.js +8 -8
  435. package/textarea/lib/es6/Textarea.js +8 -8
  436. package/textarea/package.json +1 -1
  437. package/time-picker/lib/cjs/TimePicker.js +12 -12
  438. package/time-picker/lib/es6/TimePicker.js +12 -12
  439. package/time-picker/package.json +1 -1
  440. package/tooltip/lib/cjs/Tooltip.js +9 -9
  441. package/tooltip/lib/cjs/style/tooltip.shadow.css +0 -5
  442. package/tooltip/lib/es6/Tooltip.js +9 -9
  443. package/tooltip/lib/es6/style/tooltip.shadow.css +0 -5
  444. package/tooltip/package.json +1 -1
  445. package/typography/lib/cjs/Blockquote.js +4 -4
  446. package/typography/lib/cjs/Hint.js +7 -7
  447. package/typography/lib/cjs/List.js +5 -5
  448. package/typography/lib/cjs/Text.js +34 -34
  449. package/typography/lib/es6/Blockquote.js +4 -4
  450. package/typography/lib/es6/Hint.js +7 -7
  451. package/typography/lib/es6/List.js +5 -5
  452. package/typography/lib/es6/Text.js +34 -34
  453. package/typography/package.json +1 -1
  454. package/utils/lib/components/invalid-state-pattern/InvalidStatePattern.js +2 -2
  455. package/utils/lib/components/invalid-state-pattern/InvalidStatePattern.mjs +2 -2
  456. package/utils/lib/enhances/focusSourceEnhance.d.ts +15 -0
  457. package/utils/lib/enhances/focusSourceEnhance.js +75 -0
  458. package/utils/lib/enhances/focusSourceEnhance.js.map +1 -0
  459. package/utils/lib/enhances/focusSourceEnhance.mjs +66 -0
  460. package/utils/lib/enhances/focusSourceEnhance.mjs.map +1 -0
  461. package/utils/lib/enhances/keyboardFocusEnhance.d.ts +2 -1
  462. package/utils/lib/enhances/keyboardFocusEnhance.js +9 -57
  463. package/utils/lib/enhances/keyboardFocusEnhance.js.map +1 -1
  464. package/utils/lib/enhances/keyboardFocusEnhance.mjs +5 -54
  465. package/utils/lib/enhances/keyboardFocusEnhance.mjs.map +1 -1
  466. package/utils/lib/focus-lock/iframeBorders.d.ts +3 -0
  467. package/utils/lib/focus-lock/iframeBorders.js +61 -0
  468. package/utils/lib/focus-lock/iframeBorders.js.map +1 -0
  469. package/utils/lib/focus-lock/iframeBorders.mjs +52 -0
  470. package/utils/lib/focus-lock/iframeBorders.mjs.map +1 -0
  471. package/utils/lib/injectStyle.js +1 -1
  472. package/utils/lib/injectStyle.mjs +1 -1
  473. package/utils/lib/themes/auto.css +4 -0
  474. package/utils/lib/themes/dark.css +2 -0
  475. package/utils/lib/themes/dark.json +1 -0
  476. package/utils/lib/themes/default.css +2 -0
  477. package/utils/lib/themes/default.json +1 -0
  478. package/utils/lib/themes/light.css +2 -0
  479. package/utils/lib/themes/light.json +1 -0
  480. package/utils/lib/use/useFocusLock.js +10 -2
  481. package/utils/lib/use/useFocusLock.js.map +1 -1
  482. package/utils/lib/use/useFocusLock.mjs +10 -2
  483. package/utils/lib/use/useFocusLock.mjs.map +1 -1
  484. package/widget-empty/lib/cjs/WidgetEmpty.js +5 -5
  485. package/widget-empty/lib/es6/WidgetEmpty.js +5 -5
  486. package/widget-empty/package.json +1 -1
  487. package/wizard/lib/cjs/Wizard.js +11 -11
  488. package/wizard/lib/es6/Wizard.js +11 -11
  489. package/wizard/package.json +1 -1
@@ -1,3 +1,4 @@
1
+ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
1
2
  import _extends from "@babel/runtime/helpers/extends";
2
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
4
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
@@ -9,6 +10,9 @@ import _inherits from "@babel/runtime/helpers/inherits";
9
10
  import _createSuper from "@babel/runtime/helpers/createSuper";
10
11
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
11
12
  import { sstyled as _sstyled } from 'intergalactic/utils/lib/core/index';
13
+ import { assignProps as _assignProps13 } from 'intergalactic/core';
14
+ import { assignProps as _assignProps12 } from 'intergalactic/core';
15
+ import { assignProps as _assignProps11 } from 'intergalactic/core';
12
16
  import { assignProps as _assignProps10 } from 'intergalactic/core';
13
17
  import { assignProps as _assignProps9 } from 'intergalactic/core';
14
18
  import { assignProps as _assignProps8 } from 'intergalactic/core';
@@ -24,46 +28,53 @@ import React from 'react';
24
28
  import cn from 'classnames';
25
29
  import createComponent, { Component, sstyled, Root } from 'intergalactic/core';
26
30
  import Dropdown from 'intergalactic/dropdown';
27
- import { Flex, useBox } from 'intergalactic/flex-box';
31
+ import { Flex, useBox, Box } from 'intergalactic/flex-box';
28
32
  import ScrollAreaComponent, { hideScrollBarsFromScreenReadersContext } from 'intergalactic/scroll-area';
29
- import uniqueIDEnhancement from 'intergalactic/utils/lib/uniqueID';
33
+ import uniqueIDEnhancement, { useUID } from 'intergalactic/utils/lib/uniqueID';
30
34
  import i18nEnhance from 'intergalactic/utils/lib/enhances/i18nEnhance';
31
35
  import { localizedMessages } from './translations/__intergalactic-dynamic-locales';
32
- import { useFocusLock } from 'intergalactic/utils/lib/use/useFocusLock';
33
- import { hasParent } from 'intergalactic/utils/lib/hasParent';
34
36
  /*__reshadow-styles__:"./style/dropdown-menu.shadow.css"*/
35
- var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SDropdownMenuItem_1qr7w_gg_,.___SDropdownMenuList_1qr7w_gg_{position:relative;color:var(--intergalactic-text-primary, #191b23)}.___SDropdownMenuList_1qr7w_gg_{max-height:240px;padding:var(--intergalactic-spacing-1x, 4px)0;min-height:26px;min-width:32px;box-sizing:content-box;z-index:0}.___SDropdownMenuList_1qr7w_gg_ .___SShadowHorizontal_1qr7w_gg_:after,.___SDropdownMenuList_1qr7w_gg_ .___SShadowHorizontal_1qr7w_gg_:before{width:16px;height:100%;border-radius:var(--intergalactic-control-rounded, 6px)}.___SDropdownMenuList_1qr7w_gg_ .___SShadowHorizontal_1qr7w_gg_._position_median_1qr7w_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-left,\n linear-gradient(to right, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_1qr7w_gg_ .___SShadowHorizontal_1qr7w_gg_._position_median_1qr7w_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-right,\n linear-gradient(to left, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_1qr7w_gg_ .___SShadowHorizontal_1qr7w_gg_._position_start_1qr7w_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-left,\n linear-gradient(to right, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_1qr7w_gg_ .___SShadowHorizontal_1qr7w_gg_._position_end_1qr7w_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-right,\n linear-gradient(to left, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_1qr7w_gg_ .___SShadowVertical_1qr7w_gg_:after,.___SDropdownMenuList_1qr7w_gg_ .___SShadowVertical_1qr7w_gg_:before{width:100%;height:16px;border-radius:var(--intergalactic-control-rounded, 6px)}.___SDropdownMenuList_1qr7w_gg_ .___SShadowVertical_1qr7w_gg_._position_median_1qr7w_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-top,\n linear-gradient(to bottom, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_1qr7w_gg_ .___SShadowVertical_1qr7w_gg_._position_median_1qr7w_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-bottom,\n linear-gradient(to top, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_1qr7w_gg_ .___SShadowVertical_1qr7w_gg_._position_start_1qr7w_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-top,\n linear-gradient(to bottom, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_1qr7w_gg_ .___SShadowVertical_1qr7w_gg_._position_end_1qr7w_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-bottom,\n linear-gradient(to top, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuItem_1qr7w_gg_{display:flex;align-items:center;-webkit-text-decoration:none;text-decoration:none;box-sizing:border-box;cursor:pointer;width:100%;text-align:left;line-height:normal}@media (hover:hover){.___SDropdownMenuItem_1qr7w_gg_:hover{background-color:var(--intergalactic-dropdown-menu-item-hover, #f4f5f9)}}.___SDropdownMenuItem_1qr7w_gg_:focus{outline:0}.___SDropdownMenuItem_1qr7w_gg_.__selected_1qr7w_gg_{background-color:var(--intergalactic-dropdown-menu-item-selected, rgba(196, 229, 254, 0.7));box-shadow:2px 0 0 0 var(--intergalactic-control-primary-info, #008ff8) inset}@media (hover:hover){.___SDropdownMenuItem_1qr7w_gg_.__selected_1qr7w_gg_:hover{background-color:var(--intergalactic-dropdown-menu-item-selected-hover, #c4e5fe)}}.___SDropdownMenuItem_1qr7w_gg_.__highlighted_1qr7w_gg_:not(:focus-within){z-index:1;box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5)) inset}.___SDropdownMenuItem_1qr7w_gg_.__disabled_1qr7w_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default;pointer-events:none}.___SDropdownMenuItem_1qr7w_gg_._size_l_1qr7w_gg_{font-size:var(--intergalactic-fs-300, 16px);line-height:var(--intergalactic-lh-300, 150%);padding:var(--intergalactic-spacing-2x, 8px) var(--intergalactic-spacing-3x, 12px);min-height:40px}.___SDropdownMenuItem_1qr7w_gg_._size_m_1qr7w_gg_{font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%);padding:calc(var(--intergalactic-spacing-1x, 4px) + var(--intergalactic-spacing-05x, 2px)) var(--intergalactic-spacing-2x, 8px);min-height:32px}.___SDropdownMenuItem_1qr7w_gg_.__notInteractive_1qr7w_gg_{cursor:default}@media (hover:hover){.___SDropdownMenuItem_1qr7w_gg_.__notInteractive_1qr7w_gg_:hover{background:0 0}}.___SDropdownMenuItem_1qr7w_gg_._variant_hint_1qr7w_gg_{color:var(--intergalactic-text-secondary, #6c6e79);cursor:default}@media (hover:hover){.___SDropdownMenuItem_1qr7w_gg_._variant_hint_1qr7w_gg_:hover{background:0 0}}.___SDropdownMenuItem_1qr7w_gg_._variant_title_1qr7w_gg_{font-weight:var(--intergalactic-bold, 700);cursor:default}@media (hover:hover){.___SDropdownMenuItem_1qr7w_gg_._variant_title_1qr7w_gg_:hover{background:0 0}}.___SDropdownMenuItem_1qr7w_gg_.__visible_1qr7w_gg_{background-color:var(--intergalactic-dropdown-menu-item-hover, #f4f5f9)}.___SDropdownMenuItem_1qr7w_gg_.__nesting-trigger_1qr7w_gg_{justify-content:space-between}.___SDropdownMenuItemAddon_1qr7w_gg_{display:inline-flex;margin-left:var(--intergalactic-spacing-2x, 8px);margin-right:var(--intergalactic-spacing-2x, 8px)}.___SDropdownMenuItemAddon_1qr7w_gg_:first-child{margin-left:0}.___SDropdownMenuItemAddon_1qr7w_gg_:last-child{margin-right:0}.___SDropdownMenuNesting_1qr7w_gg_,.___SDropdownMenuNesting_1qr7w_gg_._size_l_1qr7w_gg_,.___SDropdownMenuNesting_1qr7w_gg_._size_m_1qr7w_gg_{padding:0}.___SDropdownMenuNesting_1qr7w_gg_.__highlighted_1qr7w_gg_{z-index:1;box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5)) inset}.___SDropdownNestingItem_1qr7w_gg_._size_l_1qr7w_gg_,.___SDropdownNestingItem_1qr7w_gg_._size_m_1qr7w_gg_{padding-right:0}.___SDropdownNestingItem_1qr7w_gg_ .___SDropdownMenuItem_1qr7w_gg_{width:auto;padding-top:0;padding-bottom:0;padding-left:0;min-height:auto}" /*__inner_css_end__*/, "1qr7w_gg_") /*__reshadow_css_end__*/, {
36
- "__SDropdownMenuItem": "___SDropdownMenuItem_1qr7w_gg_",
37
- "_highlighted": "__highlighted_1qr7w_gg_",
38
- "_disabled": "__disabled_1qr7w_gg_",
39
- "_size_l": "_size_l_1qr7w_gg_",
40
- "_size_m": "_size_m_1qr7w_gg_",
41
- "_visible": "__visible_1qr7w_gg_",
42
- "_nesting-trigger": "__nesting-trigger_1qr7w_gg_",
43
- "__SDropdownMenuNesting": "___SDropdownMenuNesting_1qr7w_gg_",
44
- "__SDropdownNestingItem": "___SDropdownNestingItem_1qr7w_gg_",
45
- "__SDropdownMenuList": "___SDropdownMenuList_1qr7w_gg_",
46
- "__SShadowHorizontal": "___SShadowHorizontal_1qr7w_gg_",
47
- "_position_median": "_position_median_1qr7w_gg_",
48
- "_position_start": "_position_start_1qr7w_gg_",
49
- "_position_end": "_position_end_1qr7w_gg_",
50
- "__SShadowVertical": "___SShadowVertical_1qr7w_gg_",
51
- "_selected": "__selected_1qr7w_gg_",
52
- "_notInteractive": "__notInteractive_1qr7w_gg_",
53
- "_variant_hint": "_variant_hint_1qr7w_gg_",
54
- "_variant_title": "_variant_title_1qr7w_gg_",
55
- "__SDropdownMenuItemAddon": "___SDropdownMenuItemAddon_1qr7w_gg_"
37
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SDropdownMenuList_zxmau_gg_{max-height:240px;padding:var(--intergalactic-spacing-1x, 4px)0;position:relative;min-height:26px;min-width:32px;box-sizing:content-box;z-index:0;color:var(--intergalactic-text-primary, #191b23)}.___SDropdownMenuList_zxmau_gg_ .___SShadowHorizontal_zxmau_gg_:after,.___SDropdownMenuList_zxmau_gg_ .___SShadowHorizontal_zxmau_gg_:before{width:16px;height:100%;border-radius:var(--intergalactic-control-rounded, 6px)}.___SDropdownMenuList_zxmau_gg_ .___SShadowHorizontal_zxmau_gg_._position_median_zxmau_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-left,\n linear-gradient(to right, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_zxmau_gg_ .___SShadowHorizontal_zxmau_gg_._position_median_zxmau_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-right,\n linear-gradient(to left, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_zxmau_gg_ .___SShadowHorizontal_zxmau_gg_._position_start_zxmau_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-left,\n linear-gradient(to right, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_zxmau_gg_ .___SShadowHorizontal_zxmau_gg_._position_end_zxmau_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-right,\n linear-gradient(to left, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_zxmau_gg_ .___SShadowVertical_zxmau_gg_:after,.___SDropdownMenuList_zxmau_gg_ .___SShadowVertical_zxmau_gg_:before{width:100%;height:16px;border-radius:var(--intergalactic-control-rounded, 6px)}.___SDropdownMenuList_zxmau_gg_ .___SShadowVertical_zxmau_gg_._position_median_zxmau_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-top,\n linear-gradient(to bottom, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_zxmau_gg_ .___SShadowVertical_zxmau_gg_._position_median_zxmau_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-bottom,\n linear-gradient(to top, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_zxmau_gg_ .___SShadowVertical_zxmau_gg_._position_start_zxmau_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-top,\n linear-gradient(to bottom, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_zxmau_gg_ .___SShadowVertical_zxmau_gg_._position_end_zxmau_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-bottom,\n linear-gradient(to top, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuItemContainer_zxmau_gg_{position:relative;-webkit-text-decoration:none;text-decoration:none;box-sizing:border-box;cursor:pointer;width:100%;text-align:left;line-height:normal;color:var(--intergalactic-text-primary, #191b23)}@media (hover:hover){.___SDropdownMenuItemContainer_zxmau_gg_:hover{background-color:var(--intergalactic-dropdown-menu-item-hover, #f4f5f9)}}.___SDropdownMenuItemContainer_zxmau_gg_:focus{outline:0}.___SDropdownMenuItemContainer_zxmau_gg_.__selected_zxmau_gg_{background-color:var(--intergalactic-dropdown-menu-item-selected, rgba(196, 229, 254, 0.7));box-shadow:2px 0 0 0 var(--intergalactic-control-primary-info, #008ff8) inset}@media (hover:hover){.___SDropdownMenuItemContainer_zxmau_gg_.__selected_zxmau_gg_:hover{background-color:var(--intergalactic-dropdown-menu-item-selected-hover, #c4e5fe)}}.___SDropdownMenuItemContainer_zxmau_gg_.__highlighted_zxmau_gg_{z-index:1;box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5)) inset}.___SDropdownMenuItemContainer_zxmau_gg_.__disabled_zxmau_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default;pointer-events:none}.___SDropdownMenuItemContainer_zxmau_gg_._size_l_zxmau_gg_{font-size:var(--intergalactic-fs-300, 16px);line-height:var(--intergalactic-lh-300, 150%);padding:var(--intergalactic-spacing-2x, 8px) var(--intergalactic-spacing-3x, 12px);min-height:40px}.___SDropdownMenuItemContainer_zxmau_gg_._size_m_zxmau_gg_{font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%);padding:calc(var(--intergalactic-spacing-1x, 4px) + var(--intergalactic-spacing-05x, 2px)) var(--intergalactic-spacing-2x, 8px);min-height:32px}.___SDropdownMenuItemContainer_zxmau_gg_.__notInteractive_zxmau_gg_{cursor:default}@media (hover:hover){.___SDropdownMenuItemContainer_zxmau_gg_.__notInteractive_zxmau_gg_:hover{background:0 0}}.___SDropdownMenuItemContainer_zxmau_gg_._variant_hint_zxmau_gg_{color:var(--intergalactic-text-secondary, #6c6e79);cursor:default}@media (hover:hover){.___SDropdownMenuItemContainer_zxmau_gg_._variant_hint_zxmau_gg_:hover{background:0 0}}.___SDropdownMenuItemContainer_zxmau_gg_._variant_title_zxmau_gg_{font-weight:var(--intergalactic-bold, 700);cursor:default}@media (hover:hover){.___SDropdownMenuItemContainer_zxmau_gg_._variant_title_zxmau_gg_:hover{background:0 0}}.___SDropdownMenuItemContainer_zxmau_gg_.__visible_zxmau_gg_{background-color:var(--intergalactic-dropdown-menu-item-hover, #f4f5f9)}.___SDropdownMenuItemContainer_zxmau_gg_.__nesting-trigger_zxmau_gg_{justify-content:space-between}.___SDropdownMenuItemAddon_zxmau_gg_{display:inline-flex;margin-left:var(--intergalactic-spacing-2x, 8px);margin-right:var(--intergalactic-spacing-2x, 8px)}.___SDropdownMenuItemAddon_zxmau_gg_:first-child{margin-left:0}.___SDropdownMenuItemAddon_zxmau_gg_:last-child{margin-right:0}.___SDropdownMenuNesting_zxmau_gg_,.___SDropdownMenuNesting_zxmau_gg_._size_l_zxmau_gg_,.___SDropdownMenuNesting_zxmau_gg_._size_m_zxmau_gg_{padding:0}.___SDropdownMenuNesting_zxmau_gg_.__highlighted_zxmau_gg_{z-index:1;box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5)) inset}.___SDropdownNestingItem_zxmau_gg_._size_l_zxmau_gg_,.___SDropdownNestingItem_zxmau_gg_._size_m_zxmau_gg_{padding-right:0}.___SDropdownNestingItem_zxmau_gg_ .___SDropdownMenuItemContainer_zxmau_gg_{width:auto;padding-top:0;padding-bottom:0;padding-left:0;min-height:auto}.___SGroupTitle_zxmau_gg_{font-weight:var(--intergalactic-bold, 700)}.___SGroupHint_zxmau_gg_,.___SItemHint_zxmau_gg_{color:var(--intergalactic-text-secondary, #6c6e79)}.___SItemContent_zxmau_gg_:focus{outline:0}" /*__inner_css_end__*/, "zxmau_gg_") /*__reshadow_css_end__*/, {
38
+ "__SDropdownMenuItemContainer": "___SDropdownMenuItemContainer_zxmau_gg_",
39
+ "_highlighted": "__highlighted_zxmau_gg_",
40
+ "_disabled": "__disabled_zxmau_gg_",
41
+ "_size_l": "_size_l_zxmau_gg_",
42
+ "_size_m": "_size_m_zxmau_gg_",
43
+ "_visible": "__visible_zxmau_gg_",
44
+ "_nesting-trigger": "__nesting-trigger_zxmau_gg_",
45
+ "__SDropdownMenuNesting": "___SDropdownMenuNesting_zxmau_gg_",
46
+ "__SDropdownNestingItem": "___SDropdownNestingItem_zxmau_gg_",
47
+ "__SGroupTitle": "___SGroupTitle_zxmau_gg_",
48
+ "__SGroupHint": "___SGroupHint_zxmau_gg_",
49
+ "__SItemHint": "___SItemHint_zxmau_gg_",
50
+ "__SItemContent": "___SItemContent_zxmau_gg_",
51
+ "__SDropdownMenuList": "___SDropdownMenuList_zxmau_gg_",
52
+ "__SShadowHorizontal": "___SShadowHorizontal_zxmau_gg_",
53
+ "_position_median": "_position_median_zxmau_gg_",
54
+ "_position_start": "_position_start_zxmau_gg_",
55
+ "_position_end": "_position_end_zxmau_gg_",
56
+ "__SShadowVertical": "___SShadowVertical_zxmau_gg_",
57
+ "_selected": "__selected_zxmau_gg_",
58
+ "_notInteractive": "__notInteractive_zxmau_gg_",
59
+ "_variant_hint": "_variant_hint_zxmau_gg_",
60
+ "_variant_title": "_variant_title_zxmau_gg_",
61
+ "__SDropdownMenuItemAddon": "___SDropdownMenuItemAddon_zxmau_gg_"
56
62
  });
57
63
  import { setFocus } from 'intergalactic/utils/lib/focus-lock/setFocus';
58
64
  import { isFocusInside } from 'intergalactic/utils/lib/focus-lock/isFocusInside';
59
- import { getFocusableIn } from 'intergalactic/utils/lib/focus-lock/getFocusableIn';
60
- import keyboardFocusEnhance from 'intergalactic/utils/lib/enhances/keyboardFocusEnhance';
61
- var ListBoxContextProvider = function ListBoxContextProvider(_ref18) {
62
- var children = _ref18.children;
65
+ import { useFocusSource } from 'intergalactic/utils/lib/enhances/keyboardFocusEnhance';
66
+ import { isAdvanceMode } from 'intergalactic/utils/lib/findComponent';
67
+ import ButtonComponent from 'intergalactic/button';
68
+ import { forkRef } from 'intergalactic/utils/lib/ref';
69
+ import focusSourceEnhance from 'intergalactic/utils/lib/enhances/focusSourceEnhance';
70
+ var ListBoxContextProvider = function ListBoxContextProvider(_ref22) {
71
+ var children = _ref22.children;
63
72
  return /*#__PURE__*/React.createElement(hideScrollBarsFromScreenReadersContext.Provider, {
64
73
  value: true
65
74
  }, children);
66
75
  };
76
+ var selectedIndexContext = /*#__PURE__*/React.createContext(0);
77
+ var menuItemContext = /*#__PURE__*/React.createContext({});
67
78
  var DropdownMenuRoot = /*#__PURE__*/function (_Component) {
68
79
  _inherits(DropdownMenuRoot, _Component);
69
80
  var _super = _createSuper(DropdownMenuRoot);
@@ -74,22 +85,20 @@ var DropdownMenuRoot = /*#__PURE__*/function (_Component) {
74
85
  args[_key] = arguments[_key];
75
86
  }
76
87
  _this = _super.call.apply(_super, [this].concat(args));
77
- _defineProperty(_assertThisInitialized(_this), "state", {
78
- focusLockItemIndex: null,
79
- keyboardFocused: false
80
- });
81
88
  _defineProperty(_assertThisInitialized(_this), "popperRef", /*#__PURE__*/React.createRef());
82
89
  _defineProperty(_assertThisInitialized(_this), "triggerRef", /*#__PURE__*/React.createRef());
90
+ _defineProperty(_assertThisInitialized(_this), "menuRef", /*#__PURE__*/React.createRef());
83
91
  _defineProperty(_assertThisInitialized(_this), "itemProps", []);
84
92
  _defineProperty(_assertThisInitialized(_this), "itemRefs", []);
85
93
  _defineProperty(_assertThisInitialized(_this), "highlightedItemRef", /*#__PURE__*/React.createRef());
86
- _defineProperty(_assertThisInitialized(_this), "ignoreTriggerKeyboardFocusUntil", 0);
87
94
  _defineProperty(_assertThisInitialized(_this), "prevHighlightedIndex", null);
88
- _defineProperty(_assertThisInitialized(_this), "focusTrigger", function () {
89
- var trigger = _this.triggerRef.current;
90
- if (!trigger) return;
91
- if (isFocusInside(trigger)) return;
92
- setFocus(trigger);
95
+ _defineProperty(_assertThisInitialized(_this), "handleClickTrigger", function (e) {
96
+ e.preventDefault();
97
+ _this.handlers.visible(true);
98
+ setTimeout(function () {
99
+ var element = _this.itemRefs[_this.asProps.highlightedIndex];
100
+ element === null || element === void 0 ? void 0 : element.focus();
101
+ }, 0);
93
102
  });
94
103
  _defineProperty(_assertThisInitialized(_this), "bindHandlerKeyDown", function (place) {
95
104
  return function (e) {
@@ -98,189 +107,100 @@ var DropdownMenuRoot = /*#__PURE__*/function (_Component) {
98
107
  var _this$asProps = _this.asProps,
99
108
  visible = _this$asProps.visible,
100
109
  highlightedIndex = _this$asProps.highlightedIndex,
101
- placement = _this$asProps.placement;
110
+ placement = _this$asProps.placement,
111
+ inlineActions = _this$asProps.inlineActions;
102
112
  if (e.key === ' ' && ['INPUT', 'TEXTAREA'].includes(targetTagName)) return;
103
113
  if (e.key === 'Enter' && targetTagName === 'TEXTAREA') return;
104
114
  if (place === 'popper' && (e.key === ' ' || e.key === 'Enter') && (targetTagName === 'BUTTON' || targetTagName === 'A')) return;
105
- if (visible && e.key === 'Tab') {
106
- var item = highlightedIndex !== null && _this.itemRefs[highlightedIndex];
107
- if (item && getFocusableIn(item).length !== 0) {
108
- _this.setState({
109
- focusLockItemIndex: highlightedIndex
110
- });
111
- } else {
112
- _this.handlers.highlightedIndex(null);
113
- }
114
- return;
115
+ if (place === 'trigger' && ['ArrowDown', 'ArrowUp', 'Enter', ' '].includes(e.key) && e.target.getAttribute('role') !== 'menuitem') {
116
+ _this.handleClickTrigger(e);
115
117
  }
116
- if (e.key === 'Escape' && _this.state.focusLockItemIndex !== null) {
117
- _this.setState({
118
- focusLockItemIndex: null
119
- });
120
- return false;
121
- }
122
- var verticalPlacement = !placement || placement.startsWith('top') || placement.startsWith('bottom');
123
- if (['ArrowDown', 'ArrowUp'].includes(e.key) && verticalPlacement) {
124
- e.preventDefault();
118
+ var show = e.key === 'ArrowRight' && placement.startsWith('right') || e.key === 'ArrowLeft' && placement.startsWith('left');
119
+ var hide = e.key === 'ArrowLeft' && placement.startsWith('right') || e.key === 'ArrowRight' && placement.startsWith('left') || e.key === 'Escape';
120
+ var isMenuItem = e.target.getAttribute('role') === 'menuitem';
121
+ if (place === 'trigger' && (!visible || inlineActions) && show && isMenuItem) {
125
122
  _this.handlers.visible(true);
123
+ _this.handlers.highlightedIndex(0);
124
+ setTimeout(function () {
125
+ var _this$itemRefs$_this$;
126
+ (_this$itemRefs$_this$ = _this.itemRefs[_this.asProps.highlightedIndex]) === null || _this$itemRefs$_this$ === void 0 ? void 0 : _this$itemRefs$_this$.focus();
127
+ }, 0);
128
+ e.preventDefault();
129
+ e.stopPropagation();
130
+ return;
126
131
  }
127
- if (['ArrowLeft', 'ArrowRight'].includes(e.key) && !verticalPlacement) {
128
- var show = e.key === 'ArrowRight' && placement.startsWith('right') || e.key === 'ArrowLeft' && placement.startsWith('left');
129
- var hide = e.key === 'ArrowLeft' && placement.startsWith('right') || e.key === 'ArrowRight' && placement.startsWith('left');
130
- var visibleChanged = visible && hide || !visible && show;
131
- if (show) {
132
- _this.handlers.visible(true);
133
- } else if (hide) {
132
+ if (place === 'list' && visible && hide && isMenuItem) {
133
+ if (!inlineActions || inlineActions && (e.key === 'Escape' || _this.asProps.highlightedIndex === 0)) {
134
+ var _this$triggerRef$curr;
134
135
  _this.handlers.visible(false);
135
- }
136
- if (visibleChanged) {
136
+ (_this$triggerRef$curr = _this.triggerRef.current) === null || _this$triggerRef$curr === void 0 ? void 0 : _this$triggerRef$curr.focus();
137
137
  e.preventDefault();
138
138
  e.stopPropagation();
139
139
  return;
140
140
  }
141
141
  }
142
- if (e.key.startsWith('Arrow') && !_this.state.keyboardFocused) {
143
- _this.setState({
144
- keyboardFocused: true
145
- });
146
- }
147
- if (['ArrowLeft', 'ArrowRight'].includes(e.key)) {
148
- var _item = highlightedIndex !== null && _this.itemRefs[highlightedIndex];
149
- var focusable = getFocusableIn(_item);
150
- if (focusable.length > 0 && _item) {
151
- var focusedIndex = focusable.indexOf(document.activeElement);
152
- if (e.key === 'ArrowRight') {
153
- if (focusedIndex === -1) {
154
- _this.setState({
155
- focusLockItemIndex: highlightedIndex
156
- });
157
- }
158
- var nextFocused = focusable[focusedIndex + 1];
159
- if (nextFocused) {
160
- e.preventDefault();
161
- e.stopPropagation();
162
- nextFocused.focus();
163
- }
164
- } else if (e.key === 'ArrowLeft') {
165
- if (focusedIndex === 0) {
166
- _this.setState({
167
- focusLockItemIndex: null
168
- });
142
+ if (place === 'list') {
143
+ switch (e.key) {
144
+ case 'ArrowDown':
145
+ {
146
+ if (visible && !inlineActions) {
147
+ var _this$itemRefs$newHig;
148
+ var newHighlightedIndex = _this.getHighlightedIndex(amount);
149
+ (_this$itemRefs$newHig = _this.itemRefs[newHighlightedIndex]) === null || _this$itemRefs$newHig === void 0 ? void 0 : _this$itemRefs$newHig.focus();
150
+ _this.handlers.highlightedIndex(newHighlightedIndex, e);
151
+ e.preventDefault();
152
+ e.stopPropagation();
153
+ }
154
+ break;
169
155
  }
170
- var prevFocused = focusable[focusedIndex - 1];
171
- if (prevFocused) {
172
- e.preventDefault();
173
- e.stopPropagation();
174
- prevFocused.focus();
156
+ case 'ArrowRight':
157
+ {
158
+ if (visible && inlineActions) {
159
+ var _this$itemRefs$_newHi;
160
+ var _newHighlightedIndex = _this.getHighlightedIndex(amount);
161
+ (_this$itemRefs$_newHi = _this.itemRefs[_newHighlightedIndex]) === null || _this$itemRefs$_newHi === void 0 ? void 0 : _this$itemRefs$_newHi.focus();
162
+ _this.handlers.highlightedIndex(_newHighlightedIndex, e);
163
+ e.preventDefault();
164
+ e.stopPropagation();
165
+ }
166
+ break;
175
167
  }
176
- }
177
- }
178
- }
179
- switch (e.key) {
180
- case 'ArrowDown':
181
- {
182
- if (visible) {
183
- _this.moveHighlightedIndex(amount, e);
184
- if (isFocusInside(_this.popperRef.current)) {
185
- _this.focusTrigger();
168
+ case 'ArrowUp':
169
+ {
170
+ if (visible && !inlineActions) {
171
+ var _this$itemRefs$_newHi2;
172
+ var _newHighlightedIndex2 = _this.getHighlightedIndex(-amount);
173
+ (_this$itemRefs$_newHi2 = _this.itemRefs[_newHighlightedIndex2]) === null || _this$itemRefs$_newHi2 === void 0 ? void 0 : _this$itemRefs$_newHi2.focus();
174
+ _this.handlers.highlightedIndex(_newHighlightedIndex2, e);
175
+ e.preventDefault();
176
+ e.stopPropagation();
186
177
  }
187
- e.preventDefault();
188
- e.stopPropagation();
178
+ break;
189
179
  }
190
- break;
191
- }
192
- case 'ArrowUp':
193
- {
194
- if (visible) {
195
- _this.moveHighlightedIndex(-amount, e);
196
- if (isFocusInside(_this.popperRef.current)) {
197
- _this.focusTrigger();
180
+ case 'ArrowLeft':
181
+ {
182
+ if (visible && inlineActions) {
183
+ var _this$itemRefs$_newHi3;
184
+ var _newHighlightedIndex3 = _this.getHighlightedIndex(-amount);
185
+ (_this$itemRefs$_newHi3 = _this.itemRefs[_newHighlightedIndex3]) === null || _this$itemRefs$_newHi3 === void 0 ? void 0 : _this$itemRefs$_newHi3.focus();
186
+ _this.handlers.highlightedIndex(_newHighlightedIndex3, e);
187
+ e.preventDefault();
188
+ e.stopPropagation();
198
189
  }
199
- e.preventDefault();
200
- e.stopPropagation();
190
+ break;
201
191
  }
202
- break;
203
- }
204
- case ' ':
205
- case 'Enter':
206
- if (_this.highlightedItemRef.current && highlightedIndex !== null) {
207
- e.stopPropagation();
208
- e.preventDefault();
209
- _this.highlightedItemRef.current.click();
210
- } else {
211
- if (place === 'trigger') {
212
- _this.handlers.visible(false);
192
+ case ' ':
193
+ case 'Enter':
194
+ if (_this.highlightedItemRef.current && highlightedIndex !== null) {
195
+ e.stopPropagation();
213
196
  e.preventDefault();
197
+ _this.highlightedItemRef.current.click();
214
198
  }
215
- }
216
- break;
199
+ break;
200
+ }
217
201
  }
218
202
  };
219
203
  });
220
- _defineProperty(_assertThisInitialized(_this), "handleTriggerKeyboardFocus", function () {
221
- if (_this.ignoreTriggerKeyboardFocusUntil > Date.now()) return false;
222
- });
223
- _defineProperty(_assertThisInitialized(_this), "handleTriggerKeyboardFocusedStateChange", function (keyboardFocused) {
224
- _this.setState({
225
- keyboardFocused: keyboardFocused
226
- });
227
- });
228
- _defineProperty(_assertThisInitialized(_this), "handleItemFocusOut", function (event) {
229
- if (event.relatedTarget === _this.popperRef.current) return;
230
- var focused = event.relatedTarget;
231
- if (hasParent(focused, _this.popperRef.current)) {
232
- _this.handlers.highlightedIndex(null);
233
- _this.setState({
234
- focusLockItemIndex: null
235
- });
236
- focused.focus();
237
- }
238
- });
239
- _defineProperty(_assertThisInitialized(_this), "handleNestingClick", function (event) {
240
- var _focusable$;
241
- var itemIndex = _this.itemRefs.indexOf(event.currentTarget);
242
- if (itemIndex === -1) return;
243
- var focusable = getFocusableIn(event.currentTarget);
244
- (_focusable$ = focusable[0]) === null || _focusable$ === void 0 ? void 0 : _focusable$.focus();
245
- if (focusable[0] && _this.state.focusLockItemIndex === null) {
246
- _this.setState({
247
- focusLockItemIndex: null
248
- });
249
- event.preventDefault();
250
- event.stopPropagation();
251
- }
252
- });
253
- _defineProperty(_assertThisInitialized(_this), "handleNestingKeyDown", function (event) {
254
- if (event.key === ' ') {
255
- _this.handleNestingClick(event);
256
- }
257
- });
258
- _defineProperty(_assertThisInitialized(_this), "getNestingProps", function () {
259
- var size = _this.asProps.size;
260
- return {
261
- size: size,
262
- onClick: _this.handleNestingClick,
263
- onKeyDown: _this.handleNestingKeyDown
264
- };
265
- });
266
- _defineProperty(_assertThisInitialized(_this), "handleNestedVisibleChange", function (lastUserInteraction) {
267
- if (_this.asProps.visible && _this.asProps.highlightedIndex === null && lastUserInteraction === 'keyboard') {
268
- _this.handlers.highlightedIndex(0);
269
- }
270
- });
271
- _defineProperty(_assertThisInitialized(_this), "getNestingTriggerProps", function () {
272
- var _this$asProps2 = _this.asProps,
273
- size = _this$asProps2.size,
274
- visible = _this$asProps2.visible;
275
- return {
276
- size: size,
277
- visible: visible,
278
- onNestedVisibleChange: _this.handleNestedVisibleChange
279
- };
280
- });
281
- _defineProperty(_assertThisInitialized(_this), "getNestingItemProps", function () {
282
- return _this.getNestingTriggerProps();
283
- });
284
204
  _defineProperty(_assertThisInitialized(_this), "scrollToNode", function (node) {
285
205
  if (node) {
286
206
  _this.highlightedItemRef.current = node;
@@ -297,64 +217,107 @@ var DropdownMenuRoot = /*#__PURE__*/function (_Component) {
297
217
  }
298
218
  }, 0);
299
219
  });
220
+ _defineProperty(_assertThisInitialized(_this), "getHighlightedIndex", function (amount) {
221
+ var _this$itemProps$newIn;
222
+ var highlightedIndex = _this.asProps.highlightedIndex;
223
+ var itemsLastIndex = _this.itemProps.length - 1;
224
+ var selectedIndex = _this.itemProps.findIndex(function (item) {
225
+ return item.selected;
226
+ });
227
+ if (itemsLastIndex < 0) return;
228
+ if (highlightedIndex == null) {
229
+ if (selectedIndex !== -1) {
230
+ highlightedIndex = selectedIndex;
231
+ } else if (_this.highlightedItemRef.current) {
232
+ highlightedIndex = _this.prevHighlightedIndex;
233
+ } else {
234
+ highlightedIndex = amount < 0 ? 0 : itemsLastIndex;
235
+ }
236
+ }
237
+ var newIndex = highlightedIndex + amount;
238
+ if (newIndex < 0) {
239
+ newIndex = amount + itemsLastIndex + 1;
240
+ } else if (newIndex > itemsLastIndex) {
241
+ newIndex = newIndex - itemsLastIndex - 1;
242
+ }
243
+ if ((_this$itemProps$newIn = _this.itemProps[newIndex]) !== null && _this$itemProps$newIn !== void 0 && _this$itemProps$newIn.disabled) {
244
+ _this.getHighlightedIndex(amount < 0 ? amount - 1 : amount + 1);
245
+ } else if (!_this.itemProps[newIndex]) {
246
+ return 0;
247
+ } else {
248
+ return newIndex;
249
+ }
250
+ });
300
251
  return _this;
301
252
  }
302
253
  _createClass(DropdownMenuRoot, [{
303
254
  key: "uncontrolledProps",
304
255
  value: function uncontrolledProps() {
256
+ var _this2 = this;
305
257
  return {
306
- highlightedIndex: null,
258
+ selectedIndex: null,
259
+ highlightedIndex: [null, function (index) {
260
+ _this2.handlers.selectedIndex(index);
261
+ }],
307
262
  visible: null
308
263
  };
309
264
  }
310
265
  }, {
311
266
  key: "getTriggerProps",
312
267
  value: function getTriggerProps() {
313
- var _this$asProps3 = this.asProps,
314
- size = _this$asProps3.size,
315
- uid = _this$asProps3.uid,
316
- disablePortal = _this$asProps3.disablePortal,
317
- visible = _this$asProps3.visible,
318
- getI18nText = _this$asProps3.getI18nText,
319
- highlightedIndex = _this$asProps3.highlightedIndex;
268
+ var _this$asProps2 = this.asProps,
269
+ size = _this$asProps2.size,
270
+ uid = _this$asProps2.uid,
271
+ disablePortal = _this$asProps2.disablePortal,
272
+ visible = _this$asProps2.visible,
273
+ getI18nText = _this$asProps2.getI18nText;
320
274
  return {
321
275
  size: size,
322
276
  id: "igc-".concat(uid, "-trigger"),
323
- 'aria-controls': "igc-".concat(uid, "-popper"),
277
+ 'aria-controls': visible ? "igc-".concat(uid, "-list") : undefined,
324
278
  focusHint: visible && !disablePortal ? getI18nText('triggerHint') : undefined,
325
279
  'aria-expanded': visible ? 'true' : 'false',
326
- 'aria-activedescendant': visible && highlightedIndex !== null ? "igc-".concat(uid, "-option-").concat(highlightedIndex) : undefined,
327
280
  onKeyDown: this.bindHandlerKeyDown('trigger'),
328
- ref: this.triggerRef,
329
- onKeyboardFocus: this.handleTriggerKeyboardFocus,
330
- onKeyboardFocusedStateChange: this.handleTriggerKeyboardFocusedStateChange
281
+ onClick: this.handleClickTrigger,
282
+ ref: this.triggerRef
331
283
  };
332
284
  }
333
285
  }, {
334
286
  key: "getListProps",
335
287
  value: function getListProps() {
336
- var _this$asProps4 = this.asProps,
337
- size = _this$asProps4.size,
338
- uid = _this$asProps4.uid;
288
+ var _this$triggerRef$curr2;
289
+ var _this$asProps3 = this.asProps,
290
+ size = _this$asProps3.size,
291
+ uid = _this$asProps3.uid;
292
+ var triggerId = (_this$triggerRef$curr2 = this.triggerRef.current) === null || _this$triggerRef$curr2 === void 0 ? void 0 : _this$triggerRef$curr2.id;
339
293
  return {
340
294
  size: size,
341
- uid: uid,
342
- index: this.asProps.highlightedIndex
295
+ index: this.asProps.highlightedIndex,
296
+ tabIndex: -1,
297
+ onKeyDown: this.bindHandlerKeyDown('list'),
298
+ ref: this.menuRef,
299
+ id: "igc-".concat(uid, "-list"),
300
+ role: 'menu',
301
+ 'aria-labelledby': triggerId
343
302
  };
344
303
  }
304
+ }, {
305
+ key: "getActionsProps",
306
+ value: function getActionsProps() {
307
+ return this.getListProps();
308
+ }
345
309
  }, {
346
310
  key: "getPopperProps",
347
311
  value: function getPopperProps() {
348
- var _this$asProps5 = this.asProps,
349
- uid = _this$asProps5.uid,
350
- disablePortal = _this$asProps5.disablePortal,
351
- ignorePortalsStacking = _this$asProps5.ignorePortalsStacking,
352
- interaction = _this$asProps5.interaction,
353
- highlightedIndex = _this$asProps5.highlightedIndex;
312
+ var _this$asProps4 = this.asProps,
313
+ uid = _this$asProps4.uid,
314
+ disablePortal = _this$asProps4.disablePortal,
315
+ ignorePortalsStacking = _this$asProps4.ignorePortalsStacking,
316
+ interaction = _this$asProps4.interaction,
317
+ highlightedIndex = _this$asProps4.highlightedIndex;
354
318
  return {
355
319
  ref: this.popperRef,
356
- tabIndex: 0,
357
- onKeyDown: this.bindHandlerKeyDown('popper'),
320
+ tabIndex: -1,
358
321
  id: "igc-".concat(uid, "-popper"),
359
322
  disablePortal: disablePortal,
360
323
  ignorePortalsStacking: ignorePortalsStacking,
@@ -364,36 +327,46 @@ var DropdownMenuRoot = /*#__PURE__*/function (_Component) {
364
327
  'use:autoFocus': false
365
328
  };
366
329
  }
330
+ }, {
331
+ key: "getGroupProps",
332
+ value: function getGroupProps() {
333
+ var size = this.asProps.size;
334
+ return {
335
+ size: size
336
+ };
337
+ }
367
338
  }, {
368
339
  key: "getItemProps",
369
340
  value: function getItemProps(props, index) {
370
- var _this2 = this;
371
- var _this$asProps6 = this.asProps,
372
- size = _this$asProps6.size,
373
- highlightedIndex = _this$asProps6.highlightedIndex,
374
- uid = _this$asProps6.uid;
375
- var highlighted = index === highlightedIndex;
341
+ var _this3 = this;
342
+ var _this$asProps5 = this.asProps,
343
+ size = _this$asProps5.size,
344
+ uid = _this$asProps5.uid;
376
345
  var ref = function ref(node) {
377
- _this2.itemRefs[index] = node;
346
+ if ((node === null || node === void 0 ? void 0 : node.getAttribute('role')) === 'menuitem') {
347
+ _this3.itemRefs[index] = node;
348
+ }
349
+ if (node === document.activeElement) {
350
+ _this3.scrollToNode(node);
351
+ }
378
352
  };
379
353
  this.itemProps[index] = props;
380
- if (highlighted) {
381
- ref = function ref(node) {
382
- _this2.itemRefs[index] = node;
383
- _this2.scrollToNode(node);
384
- };
385
- }
386
- return {
354
+ var itemProps = {
387
355
  id: "igc-".concat(uid, "-option-").concat(index),
388
356
  size: size,
389
- highlighted: highlighted,
390
- focusLock: this.state.focusLockItemIndex === index,
391
- triggerRef: this.triggerRef,
392
357
  ref: ref,
393
358
  index: index,
394
- handleFocusOut: this.handleItemFocusOut,
395
- triggerKeyboardFocused: this.state.keyboardFocused
359
+ onMouseEnter: function onMouseEnter() {
360
+ return _this3.handlers.selectedIndex(index);
361
+ }
396
362
  };
363
+ if (props.tag === ButtonComponent) {
364
+ var _props$use, _props$theme, _props$size;
365
+ itemProps.use = (_props$use = props.use) !== null && _props$use !== void 0 ? _props$use : 'tertiary';
366
+ itemProps.theme = (_props$theme = props.theme) !== null && _props$theme !== void 0 ? _props$theme : 'muted';
367
+ itemProps.size = (_props$size = props.size) !== null && _props$size !== void 0 ? _props$size : 's';
368
+ }
369
+ return itemProps;
397
370
  }
398
371
  }, {
399
372
  key: "getItemHintProps",
@@ -411,107 +384,79 @@ var DropdownMenuRoot = /*#__PURE__*/function (_Component) {
411
384
  size: size
412
385
  };
413
386
  }
414
- }, {
415
- key: "moveHighlightedIndex",
416
- value: function moveHighlightedIndex(amount, e) {
417
- var _this$itemProps$newIn;
418
- var highlightedIndex = this.asProps.highlightedIndex;
419
- var itemsLastIndex = this.itemProps.length - 1;
420
- var selectedIndex = this.itemProps.findIndex(function (item) {
421
- return item.selected;
422
- });
423
- if (itemsLastIndex < 0) return;
424
- if (highlightedIndex == null) {
425
- if (selectedIndex !== -1) {
426
- highlightedIndex = selectedIndex;
427
- } else if (this.highlightedItemRef.current) {
428
- highlightedIndex = this.prevHighlightedIndex;
429
- } else {
430
- highlightedIndex = amount < 0 ? 0 : itemsLastIndex;
431
- }
432
- }
433
- var newIndex = highlightedIndex + amount;
434
- if (newIndex < 0) {
435
- newIndex = amount + itemsLastIndex + 1;
436
- } else if (newIndex > itemsLastIndex) {
437
- newIndex = newIndex - itemsLastIndex - 1;
438
- }
439
- if ((_this$itemProps$newIn = this.itemProps[newIndex]) !== null && _this$itemProps$newIn !== void 0 && _this$itemProps$newIn.disabled) {
440
- this.moveHighlightedIndex(amount < 0 ? amount - 1 : amount + 1, e);
441
- } else if (!this.itemProps[newIndex]) {
442
- this.handlers.highlightedIndex(0, e);
443
- } else {
444
- this.handlers.highlightedIndex(newIndex, e);
445
- }
446
- }
447
387
  }, {
448
388
  key: "componentDidUpdate",
449
389
  value: function componentDidUpdate(prevProps) {
450
- var _this3 = this;
451
390
  var visibilityChanged = this.asProps.visible !== prevProps.visible;
452
391
  if (visibilityChanged && prevProps.visible !== undefined) {
453
392
  if (!this.asProps.visible) {
454
393
  this.handlers.highlightedIndex(null);
455
394
  this.highlightedItemRef.current = null;
456
- this.ignoreTriggerKeyboardFocusUntil = Date.now() + 100;
457
- if (document.activeElement === document.body || isFocusInside(this.popperRef.current)) {
395
+ if ((document.activeElement === document.body || isFocusInside(this.popperRef.current)) && this.asProps.focusSourceRef.current === 'keyboard') {
458
396
  setFocus(this.triggerRef.current);
459
397
  }
460
398
  }
461
399
  }
462
- if (visibilityChanged && this.asProps.visible) {
463
- setTimeout(function () {
464
- var selectedItemIndex = _this3.itemProps.findIndex(function (item) {
465
- return item.selected;
466
- });
467
- if (selectedItemIndex === -1 || _this3.asProps.highlightedIndex !== null) return;
468
- _this3.handlers.highlightedIndex(selectedItemIndex);
469
- }, 0);
470
- }
471
- if ((this.state.focusLockItemIndex !== this.asProps.highlightedIndex || !this.asProps.visible) && this.state.focusLockItemIndex !== null) {
472
- setTimeout(function () {
473
- _this3.setState({
474
- focusLockItemIndex: null
475
- });
476
- }, 0);
477
- }
478
400
  }
479
401
  }, {
480
402
  key: "render",
481
403
  value: function render() {
482
404
  var _ref = this.asProps;
483
- var Children = this.asProps.Children;
405
+ var _this$asProps6 = this.asProps,
406
+ Children = _this$asProps6.Children,
407
+ selectedIndex = _this$asProps6.selectedIndex,
408
+ interaction = _this$asProps6.interaction,
409
+ timeout = _this$asProps6.timeout;
484
410
  this.itemProps = [];
485
- return /*#__PURE__*/React.createElement(Dropdown, _assignProps({}, _ref), /*#__PURE__*/React.createElement(Children, null));
411
+ return /*#__PURE__*/React.createElement(selectedIndexContext.Provider, {
412
+ value: selectedIndex
413
+ }, /*#__PURE__*/React.createElement(Dropdown, _assignProps({
414
+ "timeout": timeout || (interaction === 'hover' ? [0, 100] : undefined)
415
+ }, _ref), /*#__PURE__*/React.createElement(Children, null)));
486
416
  }
487
417
  }]);
488
418
  return DropdownMenuRoot;
489
419
  }(Component);
490
420
  _defineProperty(DropdownMenuRoot, "displayName", 'DropdownMenu');
491
421
  _defineProperty(DropdownMenuRoot, "style", style);
492
- _defineProperty(DropdownMenuRoot, "enhance", [uniqueIDEnhancement(), i18nEnhance(localizedMessages)]);
422
+ _defineProperty(DropdownMenuRoot, "enhance", [uniqueIDEnhancement(), i18nEnhance(localizedMessages), focusSourceEnhance()]);
493
423
  _defineProperty(DropdownMenuRoot, "defaultProps", {
494
424
  size: 'm',
495
425
  defaultVisible: false,
496
- defaultHighlightedIndex: null,
426
+ defaultHighlightedIndex: 0,
427
+ defaultSelectedIndex: 0,
497
428
  i18n: localizedMessages,
498
429
  locale: 'en',
499
- interaction: 'click'
430
+ interaction: 'click',
431
+ inlineActions: false,
432
+ placement: 'bottom-start',
433
+ timeout: 0
500
434
  });
501
- function List(props) {
435
+ function List(_ref23) {
502
436
  var _ref2 = arguments[0],
503
- _ref11;
437
+ _ref14;
438
+ var styles = _ref23.styles,
439
+ Children = _ref23.Children;
504
440
  var SDropdownMenuList = ScrollAreaComponent;
505
- var uid = props.uid;
506
- return _ref11 = sstyled(props.styles), /*#__PURE__*/React.createElement(ListBoxContextProvider, _ref11.cn("ListBoxContextProvider", {}), /*#__PURE__*/React.createElement(SDropdownMenuList, _ref11.cn("SDropdownMenuList", _objectSpread({}, _assignProps2({
507
- "tabIndex": null,
508
- "role": 'menu',
509
- "aria-labelledby": "igc-".concat(uid, "-trigger"),
441
+ return _ref14 = sstyled(styles), /*#__PURE__*/React.createElement(ListBoxContextProvider, _ref14.cn("ListBoxContextProvider", {}), /*#__PURE__*/React.createElement(SDropdownMenuList, _ref14.cn("SDropdownMenuList", _objectSpread({}, _assignProps2({
510
442
  "shadow": true
511
- }, _ref2)))));
443
+ }, _ref2))), /*#__PURE__*/React.createElement(ScrollAreaComponent.Container, {
444
+ tabIndex: undefined
445
+ }, /*#__PURE__*/React.createElement(Children, _ref14.cn("Children", {}))), /*#__PURE__*/React.createElement(ScrollAreaComponent.Bar, {
446
+ orientation: "horizontal"
447
+ }), /*#__PURE__*/React.createElement(ScrollAreaComponent.Bar, {
448
+ orientation: "vertical"
449
+ })));
450
+ }
451
+ function Actions(_ref24) {
452
+ var _ref3 = arguments[0],
453
+ _ref15;
454
+ var styles = _ref24.styles;
455
+ var SDropdownMenuActions = Flex;
456
+ return _ref15 = sstyled(styles), /*#__PURE__*/React.createElement(SDropdownMenuActions, _ref15.cn("SDropdownMenuActions", _objectSpread({}, _assignProps3({}, _ref3))));
512
457
  }
513
458
  function Menu(props) {
514
- var _ref3 = arguments[0];
459
+ var _ref4 = arguments[0];
515
460
  var visible = props.visible,
516
461
  disablePortal = props.disablePortal,
517
462
  ignorePortalsStacking = props.ignorePortalsStacking,
@@ -528,98 +473,78 @@ function Menu(props) {
528
473
  autoFocus: autoFocus,
529
474
  animationsDisabled: animationsDisabled
530
475
  };
531
- return /*#__PURE__*/React.createElement(ListBoxContextProvider, null, /*#__PURE__*/React.createElement(DropdownMenu.Popper, popperProps, /*#__PURE__*/React.createElement(DropdownMenu.List, _assignProps3({}, _ref3))));
476
+ return /*#__PURE__*/React.createElement(ListBoxContextProvider, null, /*#__PURE__*/React.createElement(DropdownMenu.Popper, popperProps, /*#__PURE__*/React.createElement(DropdownMenu.List, _assignProps4({}, _ref4))));
532
477
  }
533
- function Item(_ref19) {
534
- var _ref4 = arguments[0],
535
- _ref12;
536
- var styles = _ref19.styles,
537
- label = _ref19.label,
538
- triggerRef = _ref19.triggerRef,
539
- focusLock = _ref19.focusLock,
540
- disabled = _ref19.disabled,
541
- highlighted = _ref19.highlighted,
542
- handleFocusOut = _ref19.handleFocusOut,
543
- triggerKeyboardFocused = _ref19.triggerKeyboardFocused;
544
- var SDropdownMenuItem = Flex;
545
- var ref = React.useRef();
546
- useFocusLock(ref, false, triggerRef, !focusLock || disabled, true, handleFocusOut);
547
- return _ref12 = sstyled(styles), /*#__PURE__*/React.createElement(SDropdownMenuItem, _ref12.cn("SDropdownMenuItem", _objectSpread({}, _assignProps4({
548
- "ref": ref,
549
- "role": 'menuitem',
550
- "tabIndex": -1,
551
- "id": label,
552
- "use:highlighted": !disabled && highlighted && triggerKeyboardFocused
553
- }, _ref4))));
554
- }
555
- var NestingContext = /*#__PURE__*/React.createContext(null);
556
- function Nesting(_ref20) {
478
+ function Item(_ref25) {
557
479
  var _ref5 = arguments[0],
558
- _ref13;
559
- var styles = _ref20.styles,
560
- disabled = _ref20.disabled;
561
- var SDropdownMenuNesting = DropdownMenu.Item;
562
- var contextValue = React.useMemo(function () {
563
- return {
564
- disabled: disabled
565
- };
566
- }, [disabled]);
567
- return /*#__PURE__*/React.createElement(NestingContext.Provider, {
568
- value: contextValue
569
- }, (_ref13 = sstyled(styles), /*#__PURE__*/React.createElement(SDropdownMenuNesting, _ref13.cn("SDropdownMenuNesting", _objectSpread({}, _assignProps5({
570
- "aria-haspopup": 'true'
571
- }, _ref5))))));
572
- }
573
- function NestingTrigger(props) {
574
- var _ref6 = arguments[0],
575
- _ref14;
576
- var styles = props.styles,
577
- visible = props.visible,
578
- onNestedVisibleChange = props.onNestedVisibleChange;
579
- var SDropdownMenuItem = Flex;
580
- var nestingContext = React.useContext(NestingContext);
581
- var disabled = props.disabled || (nestingContext === null || nestingContext === void 0 ? void 0 : nestingContext.disabled);
582
- var lastUserInteractionRef = React.useRef(undefined);
583
- React.useEffect(function () {
584
- onNestedVisibleChange(lastUserInteractionRef.current);
585
- }, [visible]);
586
- var handleMouseEvent = React.useCallback(function () {
587
- lastUserInteractionRef.current = 'mouse';
588
- }, []);
589
- var handleKeyboardEvent = React.useCallback(function () {
590
- lastUserInteractionRef.current = 'keyboard';
591
- }, []);
480
+ _ref16;
481
+ var id = _ref25.id,
482
+ styles = _ref25.styles,
483
+ disabled = _ref25.disabled,
484
+ Children = _ref25.Children,
485
+ forwardRef = _ref25.forwardRef;
486
+ var SDropdownMenuItemContainer = Box;
487
+ var itemRef = React.useRef();
488
+ var _React$useState = React.useState(false),
489
+ _React$useState2 = _slicedToArray(_React$useState, 2),
490
+ highlighted = _React$useState2[0],
491
+ setHighlighted = _React$useState2[1];
492
+ var menuItemContextValue = {
493
+ contentId: id,
494
+ ref: forkRef(forwardRef, itemRef)
495
+ };
496
+ var ariaDescribes = [];
497
+ var hasSubMenu = isAdvanceMode(Children, [DropdownMenu.displayName], true);
498
+ var hasHint = isAdvanceMode(Children, [DropdownMenu.Item.Hint.displayName], true);
499
+ var advancedMode = isAdvanceMode(Children, [DropdownMenu.Item.Content.displayName], true) || hasSubMenu || hasHint;
500
+ if (hasHint) {
501
+ var hintId = "igc-".concat(useUID(), "-option-hint");
502
+ menuItemContextValue.hintId = hintId;
503
+ ariaDescribes.push(hintId);
504
+ }
505
+ if (hasSubMenu) {
506
+ menuItemContextValue.hasSubMenu = true;
507
+ }
508
+ menuItemContextValue.ariaDescribes = ariaDescribes;
592
509
  React.useEffect(function () {
593
- document.addEventListener('mouseover', handleMouseEvent, {
510
+ var onFocus = function onFocus(e) {
511
+ if (e.target === itemRef.current) {
512
+ setHighlighted(true);
513
+ if (hasSubMenu) {
514
+ e.stopPropagation();
515
+ }
516
+ }
517
+ };
518
+ var onBlur = function onBlur(e) {
519
+ if (e.target === itemRef.current) {
520
+ setHighlighted(false);
521
+ }
522
+ };
523
+ document.addEventListener('focus', onFocus, {
594
524
  capture: true
595
525
  });
596
- document.addEventListener('keydown', handleKeyboardEvent, {
526
+ document.addEventListener('blur', onBlur, {
597
527
  capture: true
598
528
  });
599
529
  return function () {
600
- document.removeEventListener('mouseover', handleMouseEvent, {
530
+ document.removeEventListener('focus', onFocus, {
601
531
  capture: true
602
532
  });
603
- document.removeEventListener('keydown', handleKeyboardEvent, {
533
+ document.removeEventListener('blur', onBlur, {
604
534
  capture: true
605
535
  });
606
536
  };
607
- }, []);
608
- return /*#__PURE__*/React.createElement(NestingContext.Provider, {
609
- value: null
610
- }, (_ref14 = sstyled(styles), /*#__PURE__*/React.createElement(SDropdownMenuItem, _ref14.cn("SDropdownMenuItem", _objectSpread({}, _assignProps6({
611
- "nesting-trigger": true,
612
- "use:tabIndex": !disabled ? 0 : undefined
613
- }, _ref6))))));
614
- }
615
- function NestingItem(props) {
616
- var _ref7 = arguments[0],
617
- _ref15;
618
- var styles = props.styles;
619
- var SDropdownNestingItem = NestingTrigger;
620
- return _ref15 = sstyled(styles), /*#__PURE__*/React.createElement(SDropdownNestingItem, _ref15.cn("SDropdownNestingItem", _objectSpread({}, _assignProps7({
621
- "use:tabIndex": -1
622
- }, _ref7))));
537
+ }, [itemRef.current]);
538
+ var focusSourceRef = useFocusSource();
539
+ return _ref16 = sstyled(styles), /*#__PURE__*/React.createElement(menuItemContext.Provider, {
540
+ value: menuItemContextValue
541
+ }, /*#__PURE__*/React.createElement(SDropdownMenuItemContainer, _ref16.cn("SDropdownMenuItemContainer", _objectSpread({}, _assignProps5({
542
+ "ref": advancedMode ? undefined : menuItemContextValue.ref,
543
+ "use:highlighted": !disabled && highlighted && focusSourceRef.current === 'keyboard',
544
+ "role": advancedMode ? undefined : 'menuitem',
545
+ "use:id": advancedMode ? undefined : id,
546
+ "tabIndex": advancedMode ? undefined : -1
547
+ }, _ref5))), /*#__PURE__*/React.createElement(Children, _ref16.cn("Children", {}))));
623
548
  }
624
549
  function Addon(props) {
625
550
  var _useBox = useBox(props, props.forwardRef),
@@ -633,51 +558,165 @@ function Addon(props) {
633
558
  className: cn(styles.cn('SDropdownMenuItemAddon', props).className, className) || undefined
634
559
  }, other));
635
560
  }
636
- function Hint(props) {
561
+ function Trigger() {
562
+ var _ref6 = arguments[0];
563
+ return /*#__PURE__*/React.createElement(Dropdown.Trigger, _assignProps6({
564
+ "aria-haspopup": 'true'
565
+ }, _ref6));
566
+ }
567
+ function Group(_ref26) {
568
+ var _ref7 = arguments[0],
569
+ _ref17;
570
+ var styles = _ref26.styles,
571
+ title = _ref26.title,
572
+ Children = _ref26.Children,
573
+ subTitle = _ref26.subTitle,
574
+ size = _ref26.size;
575
+ var SGroup = Box;
576
+ var SDropdownMenuItemContainer = Box;
577
+ var SGroupTitle = Flex;
578
+ var SGroupHint = Flex;
579
+ var uidTitle = useUID('title_mi_group');
580
+ var uidSubTitle = useUID('sub_title_mi_group');
581
+ var groupAriaProps = {
582
+ 'aria-labelledby': uidTitle,
583
+ 'aria-describedby': subTitle ? uidSubTitle : undefined
584
+ };
585
+ return _ref17 = sstyled(styles), /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(SDropdownMenuItemContainer, _ref17.cn("SDropdownMenuItemContainer", {
586
+ "notInteractive": true,
587
+ "aria-hidden": 'true',
588
+ "tabindex": -1,
589
+ "size": size
590
+ }), /*#__PURE__*/React.createElement(SGroupTitle, _ref17.cn("SGroupTitle", {
591
+ "id": uidTitle
592
+ }), title), subTitle && /*#__PURE__*/React.createElement(SGroupHint, _ref17.cn("SGroupHint", {
593
+ "id": uidSubTitle
594
+ }), subTitle)), /*#__PURE__*/React.createElement(SGroup, _ref17.cn("SGroup", _objectSpread({}, _assignProps7(_objectSpread(_objectSpread({
595
+ "role": 'group'
596
+ }, groupAriaProps), {}, {
597
+ "__excludeProps": ['title']
598
+ }), _ref7))), /*#__PURE__*/React.createElement(Children, _ref17.cn("Children", {}))));
599
+ }
600
+ function ItemContent(_ref27) {
637
601
  var _ref8 = arguments[0],
638
- _ref16;
639
- var SDropdownMenuItem = Flex;
640
- return _ref16 = sstyled(props.styles), /*#__PURE__*/React.createElement(SDropdownMenuItem, _ref16.cn("SDropdownMenuItem", _objectSpread({}, _assignProps8({
641
- "variant": 'hint'
602
+ _ref18;
603
+ var styles = _ref27.styles;
604
+ var SItemContent = Flex;
605
+ var ref = React.useRef();
606
+ var menuItemCtxValue = React.useContext(menuItemContext);
607
+ var subMenu = undefined;
608
+ if (menuItemCtxValue.hasSubMenu) {
609
+ subMenu = 'true';
610
+ }
611
+ var _React$useState3 = React.useState(new Set(menuItemCtxValue.ariaDescribes)),
612
+ _React$useState4 = _slicedToArray(_React$useState3, 2),
613
+ describedby = _React$useState4[0],
614
+ setDescribedby = _React$useState4[1];
615
+ React.useEffect(function () {
616
+ var element = ref.current;
617
+ var parent = element === null || element === void 0 ? void 0 : element.parentElement;
618
+ if (parent.getAttribute('aria-haspopup') === 'true' && parent.getAttribute('aria-describedby')) {
619
+ setDescribedby(function (prev) {
620
+ prev.add(parent.getAttribute('aria-describedby'));
621
+ return new Set(prev);
622
+ });
623
+ }
624
+ }, [menuItemCtxValue.ariaDescribes]);
625
+ return _ref18 = sstyled(styles), /*#__PURE__*/React.createElement(SItemContent, _ref18.cn("SItemContent", _objectSpread({}, _assignProps8({
626
+ "role": 'menuitem',
627
+ "id": menuItemCtxValue.contentId,
628
+ "tabIndex": -1,
629
+ "ref": forkRef(menuItemCtxValue.ref, ref),
630
+ "use:aria-describedby": _toConsumableArray(describedby).join(' '),
631
+ "aria-haspopup": menuItemCtxValue.hasSubMenu ? 'true' : undefined,
632
+ "aria-expanded": subMenu,
633
+ "alignItems": menuItemCtxValue.hasSubMenu ? 'center' : undefined,
634
+ "justifyContent": menuItemCtxValue.hasSubMenu ? 'space-between' : undefined
642
635
  }, _ref8))));
643
636
  }
644
- function Title(props) {
637
+ function ItemHint(_ref28) {
645
638
  var _ref9 = arguments[0],
646
- _ref17;
647
- var SDropdownMenuItem = Flex;
648
- return _ref17 = sstyled(props.styles), /*#__PURE__*/React.createElement(SDropdownMenuItem, _ref17.cn("SDropdownMenuItem", _objectSpread({}, _assignProps9({
649
- "variant": 'title'
639
+ _ref19;
640
+ var styles = _ref28.styles;
641
+ var SItemHint = Flex;
642
+ var _React$useContext = React.useContext(menuItemContext),
643
+ hintId = _React$useContext.hintId;
644
+ return _ref19 = sstyled(styles), /*#__PURE__*/React.createElement(SItemHint, _ref19.cn("SItemHint", _objectSpread({}, _assignProps9({
645
+ "id": hintId,
646
+ "aria-hidden": 'true'
650
647
  }, _ref9))));
651
648
  }
652
- function Trigger(_ref21) {
653
- var _ref10 = arguments[0];
654
- var keyboardFocused = _ref21.keyboardFocused,
655
- onKeyboardFocusedStateChange = _ref21.onKeyboardFocusedStateChange;
656
- React.useEffect(function () {
657
- onKeyboardFocusedStateChange(keyboardFocused);
658
- }, [keyboardFocused, onKeyboardFocusedStateChange]);
659
- return /*#__PURE__*/React.createElement(Dropdown.Trigger, _assignProps10({
660
- "aria-haspopup": 'true'
661
- }, _ref10));
649
+
650
+ /**
651
+ * @deprecated Use Item hint
652
+ */
653
+ function Hint(props) {
654
+ var _ref10 = arguments[0],
655
+ _ref20;
656
+ var SDropdownMenuItemContainer = Flex;
657
+ return _ref20 = sstyled(props.styles), /*#__PURE__*/React.createElement(SDropdownMenuItemContainer, _ref20.cn("SDropdownMenuItemContainer", _objectSpread({}, _assignProps10({
658
+ "variant": 'hint'
659
+ }, _ref10))));
660
+ }
661
+ /**
662
+ * @deprecated Use Group with title prop
663
+ */
664
+ function Title(props) {
665
+ var _ref11 = arguments[0],
666
+ _ref21;
667
+ var SDropdownMenuItemContainer = Flex;
668
+ return _ref21 = sstyled(props.styles), /*#__PURE__*/React.createElement(SDropdownMenuItemContainer, _ref21.cn("SDropdownMenuItemContainer", _objectSpread({}, _assignProps11({
669
+ "variant": 'title'
670
+ }, _ref11))));
671
+ }
672
+
673
+ /**
674
+ * @deprecated
675
+ */
676
+ function Nesting(_ref29) {
677
+ var _ref12 = arguments[0];
678
+ var forwardRef = _ref29.forwardRef;
679
+ return /*#__PURE__*/React.createElement(DropdownMenu.Item, _assignProps12({
680
+ "ref": forwardRef
681
+ }, _ref12));
682
+ }
683
+
684
+ /**
685
+ * @deprecated
686
+ */
687
+ function NestingTrigger(_ref30) {
688
+ var _ref13 = arguments[0];
689
+ var forwardRef = _ref30.forwardRef;
690
+ return /*#__PURE__*/React.createElement(DropdownMenu.Item.Content, _assignProps13({
691
+ "tag": DropdownMenu.Trigger,
692
+ "ref": forwardRef,
693
+ "use:role": 'menuitem'
694
+ }, _ref13));
662
695
  }
663
- Trigger.enhance = [keyboardFocusEnhance(false)];
664
696
  var DropdownMenu = createComponent(DropdownMenuRoot, {
665
697
  Trigger: Trigger,
666
698
  Popper: Dropdown.Popper,
667
699
  List: List,
700
+ Actions: Actions,
668
701
  Menu: Menu,
669
702
  Item: [Item, {
670
- Addon: Addon
703
+ Addon: Addon,
704
+ Content: ItemContent,
705
+ Hint: ItemHint
671
706
  }],
707
+ /**
708
+ * @deprecated. Use just Item. See examples on
709
+ */
672
710
  Nesting: [Nesting, {
673
711
  Trigger: NestingTrigger,
674
- Addon: Addon,
675
- Item: NestingItem
712
+ Addon: Addon
676
713
  }],
677
714
  ItemTitle: Title,
678
- ItemHint: Hint
715
+ ItemHint: Hint,
716
+ Group: Group
679
717
  }, {
680
718
  parent: [Dropdown]
681
719
  });
720
+ DropdownMenu.selectedIndexContext = selectedIndexContext;
682
721
  export default DropdownMenu;
683
722
  //# sourceMappingURL=DropdownMenu.js.map