@oracle/oraclejet-preact 20.0.1 → 20.0.2

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 (580) hide show
  1. package/amd/CheckboxSetContext-2e486ea8.js +2 -0
  2. package/amd/CheckboxSetContext-2e486ea8.js.map +1 -0
  3. package/amd/ColorPicker-141fa49d.js +2 -0
  4. package/amd/{ColorPicker-e3167e4c.js.map → ColorPicker-141fa49d.js.map} +1 -1
  5. package/amd/ExpandableList-a9a86ad8.js +2 -0
  6. package/amd/{ExpandableList-233c279e.js.map → ExpandableList-a9a86ad8.js.map} +1 -1
  7. package/amd/{InlineSelectSingle-f4438110.js → InlineSelectSingle-7c1cc5b5.js} +2 -2
  8. package/amd/{InlineSelectSingle-f4438110.js.map → InlineSelectSingle-7c1cc5b5.js.map} +1 -1
  9. package/amd/{InputColor-51d7e40c.js → InputColor-58e3fce3.js} +2 -2
  10. package/amd/{InputColor-51d7e40c.js.map → InputColor-58e3fce3.js.map} +1 -1
  11. package/amd/InputDatePicker-7227a858.js +2 -0
  12. package/amd/{InputDatePicker-030e345a.js.map → InputDatePicker-7227a858.js.map} +1 -1
  13. package/amd/ListView-6d21e8f9.js +2 -0
  14. package/amd/{ListView-02a92d18.js.map → ListView-6d21e8f9.js.map} +1 -1
  15. package/amd/PRIVATE_SelectCommon.js +1 -1
  16. package/amd/{SelectMobileFieldInput-83f56b22.js → SelectMobileFieldInput-d499ef86.js} +2 -2
  17. package/amd/{SelectMobileFieldInput-83f56b22.js.map → SelectMobileFieldInput-d499ef86.js.map} +1 -1
  18. package/amd/{SelectMultiple-cb5fdd20.js → SelectMultiple-cc9bffc6.js} +2 -2
  19. package/amd/{SelectMultiple-cb5fdd20.js.map → SelectMultiple-cc9bffc6.js.map} +1 -1
  20. package/amd/{SelectSingle-02e85b6e.js → SelectSingle-2bb35b67.js} +2 -2
  21. package/amd/{SelectSingle-02e85b6e.js.map → SelectSingle-2bb35b67.js.map} +1 -1
  22. package/amd/TextArea-4a3b8b56.js +2 -0
  23. package/amd/TextArea-4a3b8b56.js.map +1 -0
  24. package/amd/TextAreaAutosize-3a13ebb2.js +2 -0
  25. package/amd/{TextAreaAutosize-01dfd98e.js.map → TextAreaAutosize-3a13ebb2.js.map} +1 -1
  26. package/amd/Theme-redwood/theme.css +94 -94
  27. package/amd/Theme-stable/theme.css +263 -263
  28. package/amd/UNSAFE_CheckboxItem.js +1 -1
  29. package/amd/UNSAFE_CheckboxItem.js.map +1 -1
  30. package/amd/UNSAFE_CheckboxSet.js +1 -1
  31. package/amd/UNSAFE_CheckboxSet.js.map +1 -1
  32. package/amd/UNSAFE_ColorPicker.js +1 -1
  33. package/amd/UNSAFE_ExpandableList.js +1 -1
  34. package/amd/UNSAFE_InlineSelectSingle.js +1 -1
  35. package/amd/UNSAFE_InputColor.js +1 -1
  36. package/amd/UNSAFE_InputDatePicker.js +1 -1
  37. package/amd/UNSAFE_ListView.js +1 -1
  38. package/amd/UNSAFE_RichCheckboxSet.js +1 -1
  39. package/amd/UNSAFE_RichCheckboxSet.js.map +1 -1
  40. package/amd/UNSAFE_RichSelectionItem.js +1 -1
  41. package/amd/UNSAFE_RichSelectionItem.js.map +1 -1
  42. package/amd/UNSAFE_SelectMultiple.js +1 -1
  43. package/amd/UNSAFE_SelectSingle.js +1 -1
  44. package/amd/UNSAFE_TextArea.js +1 -1
  45. package/amd/UNSAFE_TextAreaAutosize.js +1 -1
  46. package/amd/UNSAFE_VirtualizedListView.js +1 -1
  47. package/amd/VirtualizedListView-1ae7151d.js +2 -0
  48. package/amd/{VirtualizedListView-a0f338c2.js.map → VirtualizedListView-1ae7151d.js.map} +1 -1
  49. package/amd/{useDisplayValue-e70c76d8.js → useDisplayValue-0e90bf4c.js} +2 -2
  50. package/amd/{useDisplayValue-e70c76d8.js.map → useDisplayValue-0e90bf4c.js.map} +1 -1
  51. package/amd/useSelectCommon-a02ddf3c.js +2 -0
  52. package/amd/useSelectCommon-a02ddf3c.js.map +1 -0
  53. package/amd/useTextAreaAltEnter-32272da6.js +2 -0
  54. package/amd/useTextAreaAltEnter-32272da6.js.map +1 -0
  55. package/cjs/{Chart-13a198f3.js → Chart-966da017.js} +2 -2
  56. package/cjs/{Chart-13a198f3.js.map → Chart-966da017.js.map} +1 -1
  57. package/cjs/{ColorPicker-2c99c0fb.js → ColorPicker-8f0b6000.js} +2 -2
  58. package/cjs/{ColorPicker-2c99c0fb.js.map → ColorPicker-8f0b6000.js.map} +1 -1
  59. package/cjs/{NavigationListItem-cdfd0740.js → NavigationListItem-3b9eb0fb.js} +1 -19
  60. package/cjs/{NavigationListItem-cdfd0740.js.map → NavigationListItem-3b9eb0fb.js.map} +1 -1
  61. package/cjs/{OverflowTabBarItem-4bbd5830.js → OverflowTabBarItem-abcd2327.js} +2 -2
  62. package/cjs/{OverflowTabBarItem-4bbd5830.js.map → OverflowTabBarItem-abcd2327.js.map} +1 -1
  63. package/cjs/PRIVATE_Chart.js +4 -4
  64. package/cjs/PRIVATE_SelectCommon.js +2 -2
  65. package/cjs/{SelectMobileFieldInput-111a95a5.js → SelectMobileFieldInput-cbf57541.js} +2 -2
  66. package/cjs/{SelectMobileFieldInput-111a95a5.js.map → SelectMobileFieldInput-cbf57541.js.map} +1 -1
  67. package/cjs/{TabBarLinkItem-891a5f10.js → TabBarLinkItem-b0c4b100.js} +2 -2
  68. package/cjs/{TabBarLinkItem-891a5f10.js.map → TabBarLinkItem-b0c4b100.js.map} +1 -1
  69. package/cjs/Theme-redwood/theme.css +104 -104
  70. package/cjs/Theme-stable/theme.css +236 -236
  71. package/cjs/UNSAFE_BarChart.js +4 -4
  72. package/cjs/UNSAFE_ColorPicker.js +25 -25
  73. package/cjs/UNSAFE_ComboChart.js +4 -4
  74. package/cjs/UNSAFE_InlineSelectSingle.js +2 -2
  75. package/cjs/UNSAFE_InputColor.js +2 -2
  76. package/cjs/UNSAFE_LineAreaChart.js +4 -4
  77. package/cjs/UNSAFE_NavigationList.js +12 -12
  78. package/cjs/UNSAFE_OverflowTabBar.js +3 -3
  79. package/cjs/UNSAFE_ScatterChart.js +4 -4
  80. package/cjs/UNSAFE_SelectMultiple.js +2 -2
  81. package/cjs/UNSAFE_SelectSingle.js +3 -3
  82. package/cjs/UNSAFE_TabBar.js +3 -3
  83. package/cjs/UNSAFE_TabBarCommon.js +3 -3
  84. package/cjs/UNSAFE_TabBarMixed.js +2 -2
  85. package/cjs/{useDisplayValue-60dbe1c3.js → useDisplayValue-4ace417c.js} +2 -2
  86. package/cjs/{useDisplayValue-60dbe1c3.js.map → useDisplayValue-4ace417c.js.map} +1 -1
  87. package/cjs/{useSelectCommon-b0d7feb3.js → useSelectCommon-27afecfa.js} +8 -3
  88. package/cjs/useSelectCommon-27afecfa.js.map +1 -0
  89. package/es/{BaseButton-243d200f.js → BaseButton-41068c85.js} +2 -2
  90. package/es/{BaseButton-243d200f.js.map → BaseButton-41068c85.js.map} +1 -1
  91. package/es/BaseCardView-b3d8bae0.js +6 -6
  92. package/es/BaseDiagram-b5b22e53.js +7 -7
  93. package/es/BaseRichSelection-223d9830.js +9 -9
  94. package/es/BaseSelector-7cbc48bc.js +1 -1
  95. package/es/BaseSwatchView-2e1e6bd2.js +2 -2
  96. package/es/{Button-a76ecfa8.js → Button-956f51c7.js} +2 -2
  97. package/es/{Button-a76ecfa8.js.map → Button-956f51c7.js.map} +1 -1
  98. package/es/ButtonSet-b7464e9a.js +2 -2
  99. package/es/ButtonSetButton-8685c752.js +1 -1
  100. package/es/ButtonSetIconButton-c8ed85f9.js +4 -4
  101. package/es/{Center-3860fe60.js → Center-71a03e65.js} +2 -2
  102. package/es/{Center-3860fe60.js.map → Center-71a03e65.js.map} +1 -1
  103. package/es/Chart-b866a74c.js +10 -10
  104. package/es/CheckboxControl-c008372a.js +6 -6
  105. package/es/CheckboxRadioField-a387b3cb.js +6 -6
  106. package/es/CheckboxRadioLabelValueLayout-e3845f16.js +1 -1
  107. package/es/CheckboxSet-3aab5935.js +1 -1
  108. package/es/Chip-4efea02e.js +1 -1
  109. package/es/ClearIcon-f85ea340.js +1 -1
  110. package/es/CollapseIcon-84f6ba8e.js +1 -1
  111. package/es/Collapsible-2608ce3b.js +2 -2
  112. package/es/ColorPalette-950c6fc6.js +2 -2
  113. package/es/{ColorPicker-8c297849.js → ColorPicker-ae648c4c.js} +3 -3
  114. package/es/{ColorPicker-8c297849.js.map → ColorPicker-ae648c4c.js.map} +1 -1
  115. package/es/ColorSwatch-8339ee2f.js +4 -4
  116. package/es/{CompactLabelAssistance-50ff3f7e.js → CompactLabelAssistance-e2fcfcab.js} +6 -6
  117. package/es/{CompactLabelAssistance-50ff3f7e.js.map → CompactLabelAssistance-e2fcfcab.js.map} +1 -1
  118. package/es/CompactUserAssistance-6aa8894b.js +5 -5
  119. package/es/ComponentMessageContainer-d16c8b1f.js +4 -4
  120. package/es/{DatePicker-fa7d39a7.js → DatePicker-7287f0f9.js} +8 -8
  121. package/es/{DatePicker-fa7d39a7.js.map → DatePicker-7287f0f9.js.map} +1 -1
  122. package/es/DatePickerHeader-f8cf86bb.js +3 -3
  123. package/es/DiagramStyles.styles2.css +16 -10
  124. package/es/DiagramStyles.styles3.css +10 -16
  125. package/es/{Dialog-d1de5b06.js → Dialog-83368f52.js} +7 -7
  126. package/es/{Dialog-d1de5b06.js.map → Dialog-83368f52.js.map} +1 -1
  127. package/es/DirectionalCollapseArrowIcon-132761da.js +1 -1
  128. package/es/DirectionalExpandArrowIcon-5bc45cad.js +1 -1
  129. package/es/{Dropdown-9d9813a9.js → Dropdown-019aba37.js} +6 -6
  130. package/es/{Dropdown-9d9813a9.js.map → Dropdown-019aba37.js.map} +1 -1
  131. package/es/{EmbeddedIconButton-9f0e56b7.js → EmbeddedIconButton-46434710.js} +2 -2
  132. package/es/{EmbeddedIconButton-9f0e56b7.js.map → EmbeddedIconButton-46434710.js.map} +1 -1
  133. package/es/{EnvironmentProvider-6cf8ed37.js → EnvironmentProvider-6a0a8212.js} +3 -3
  134. package/es/{EnvironmentProvider-6cf8ed37.js.map → EnvironmentProvider-6a0a8212.js.map} +1 -1
  135. package/es/Expander-1347e769.js +1 -1
  136. package/es/{Flex-fc483125.js → Flex-03129963.js} +2 -2
  137. package/es/{Flex-fc483125.js.map → Flex-03129963.js.map} +1 -1
  138. package/es/{Floating-be4c0cb6.js → Floating-4a82db94.js} +4 -4
  139. package/es/{Floating-be4c0cb6.js.map → Floating-4a82db94.js.map} +1 -1
  140. package/es/{Grid-6f92d323.js → Grid-9e4b4f19.js} +2 -2
  141. package/es/{Grid-6f92d323.js.map → Grid-9e4b4f19.js.map} +1 -1
  142. package/es/GroupLoadingIndicator-19c6545a.js +1 -1
  143. package/es/{HighlightText-dd484ffd.js → HighlightText-0205faef.js} +2 -2
  144. package/es/{HighlightText-dd484ffd.js.map → HighlightText-0205faef.js.map} +1 -1
  145. package/es/Icon-4983d06e.js +3 -3
  146. package/es/IconButton-7f91481c.js +4 -4
  147. package/es/IconSwitchButton-05f1f602.js +4 -4
  148. package/es/IconToggleButton-808818f5.js +4 -4
  149. package/es/{IconUserAssistance-6abc7837.js → IconUserAssistance-61978211.js} +3 -3
  150. package/es/{IconUserAssistance-6abc7837.js.map → IconUserAssistance-61978211.js.map} +1 -1
  151. package/es/InlineHelp-9eaac91c.js +1 -1
  152. package/es/InlineUserAssistance-890293dd.js +5 -5
  153. package/es/InputDateMask-ec27aee7.js +7 -7
  154. package/es/Label-5d1ae8d7.js +8 -8
  155. package/es/LabelValueLayout-c6b9945a.js +1 -1
  156. package/es/{Layer-6c27170e.js → Layer-535577b5.js} +3 -3
  157. package/es/{Layer-6c27170e.js.map → Layer-535577b5.js.map} +1 -1
  158. package/es/{LayerHost-3cf255a6.js → LayerHost-7931b424.js} +2 -2
  159. package/es/{LayerHost-3cf255a6.js.map → LayerHost-7931b424.js.map} +1 -1
  160. package/es/{LayerManager-e30fbfd6.js → LayerManager-52a26c55.js} +2 -2
  161. package/es/{LayerManager-e30fbfd6.js.map → LayerManager-52a26c55.js.map} +1 -1
  162. package/es/Link-8503aab2.js +1 -1
  163. package/es/List-4636ba9b.js +5 -5
  164. package/es/{LiveRegion-2e8830ae.js → LiveRegion-cebac18d.js} +2 -2
  165. package/es/{LiveRegion-2e8830ae.js.map → LiveRegion-cebac18d.js.map} +1 -1
  166. package/es/{MaxLengthLiveRegion-8f552ae2.js → MaxLengthLiveRegion-8099fde5.js} +3 -3
  167. package/es/{MaxLengthLiveRegion-8f552ae2.js.map → MaxLengthLiveRegion-8099fde5.js.map} +1 -1
  168. package/es/Message-510c2db8.js +2 -2
  169. package/es/{MessageLayer-1dbdc0b6.js → MessageLayer-2a7fdec7.js} +6 -6
  170. package/es/{MessageLayer-1dbdc0b6.js.map → MessageLayer-2a7fdec7.js.map} +1 -1
  171. package/es/MessagesManager-47000438.js +3 -3
  172. package/es/Modal-c0f730b8.js +3 -3
  173. package/es/{MonthView-4e05e712.js → MonthView-4b2b483a.js} +4 -4
  174. package/es/{MonthView-4e05e712.js.map → MonthView-4b2b483a.js.map} +1 -1
  175. package/es/NavigationListItem-340ab770.js +8 -8
  176. package/es/NavigationListLinkItem-e28fd846.js +5 -5
  177. package/es/NumberInputText-60be5757.js +6 -6
  178. package/es/OverflowTabBarItem-aa0ce915.js +5 -5
  179. package/es/PRIVATE_BaseCardView.js +22 -22
  180. package/es/PRIVATE_BaseDiagram.js +29 -29
  181. package/es/PRIVATE_BaseSelector.js +17 -17
  182. package/es/PRIVATE_BaseSwatchView.js +18 -18
  183. package/es/PRIVATE_Chart.js +34 -34
  184. package/es/PRIVATE_CheckboxControl.js +25 -25
  185. package/es/PRIVATE_CheckboxRadioField.js +27 -27
  186. package/es/PRIVATE_ClearIcon.js +18 -18
  187. package/es/PRIVATE_CollapsibleNavigationList.js +20 -20
  188. package/es/PRIVATE_DatePickerHeader.js +20 -20
  189. package/es/PRIVATE_DatePickerLayout.js +4 -4
  190. package/es/PRIVATE_EmbeddedIconButton.js +6 -6
  191. package/es/PRIVATE_Expander.js +19 -19
  192. package/es/PRIVATE_FormControls.js +21 -21
  193. package/es/PRIVATE_IconSwitchButton.js +17 -17
  194. package/es/PRIVATE_Icons/CheckboxCrossed.js +16 -16
  195. package/es/PRIVATE_Icons/CheckboxMixed.js +16 -16
  196. package/es/PRIVATE_Icons/CheckboxOff.js +16 -16
  197. package/es/PRIVATE_Icons/CheckboxOn.js +16 -16
  198. package/es/PRIVATE_Icons/DragV.js +16 -16
  199. package/es/PRIVATE_Icons/None.js +16 -16
  200. package/es/PRIVATE_List.js +21 -21
  201. package/es/PRIVATE_Message.js +20 -20
  202. package/es/PRIVATE_MessageLayer.js +12 -12
  203. package/es/PRIVATE_MonthView.js +7 -7
  204. package/es/PRIVATE_MonthYearGridView.js +7 -7
  205. package/es/PRIVATE_PlotArea.js +5 -5
  206. package/es/PRIVATE_RevealToggleIcon.js +18 -18
  207. package/es/PRIVATE_RichSelectionCommon.js +28 -28
  208. package/es/PRIVATE_SelectCommon.js +33 -33
  209. package/es/PRIVATE_StyledCard.js +3 -3
  210. package/es/PRIVATE_StyledCheckbox.js +16 -16
  211. package/es/PRIVATE_StyledSwitch.js +4 -4
  212. package/es/PRIVATE_SwatchFlexView.js +18 -18
  213. package/es/PRIVATE_Table.js +35 -35
  214. package/es/PRIVATE_TableDisplay.js +19 -19
  215. package/es/PRIVATE_TableList.js +26 -26
  216. package/es/PRIVATE_ThemedIcons/CalendarIcon.js +16 -16
  217. package/es/PRIVATE_ThemedIcons/ChartMarqueeSelectIcon.js +16 -16
  218. package/es/PRIVATE_ThemedIcons/ChartPanIcon.js +16 -16
  219. package/es/PRIVATE_ThemedIcons/ChartZoomIcon.js +16 -16
  220. package/es/PRIVATE_ThemedIcons/CheckIcon.js +16 -16
  221. package/es/PRIVATE_ThemedIcons/CheckboxCrossedIcon.js +16 -16
  222. package/es/PRIVATE_ThemedIcons/CheckboxMixedIcon.js +16 -16
  223. package/es/PRIVATE_ThemedIcons/CheckboxOffIcon.js +16 -16
  224. package/es/PRIVATE_ThemedIcons/CheckboxOnIcon.js +16 -16
  225. package/es/PRIVATE_ThemedIcons/CloseIcon.js +16 -16
  226. package/es/PRIVATE_ThemedIcons/CollapseIcon.js +17 -17
  227. package/es/PRIVATE_ThemedIcons/CollapseUpIcon.js +16 -16
  228. package/es/PRIVATE_ThemedIcons/DecrementIcon.js +16 -16
  229. package/es/PRIVATE_ThemedIcons/DeleteIcon.js +16 -16
  230. package/es/PRIVATE_ThemedIcons/DirectionalCollapseArrowIcon.js +17 -17
  231. package/es/PRIVATE_ThemedIcons/DirectionalExpandArrowIcon.js +17 -17
  232. package/es/PRIVATE_ThemedIcons/DragHandleIcon.js +16 -16
  233. package/es/PRIVATE_ThemedIcons/DropdownArrowIcon.js +16 -16
  234. package/es/PRIVATE_ThemedIcons/ExpandIcon.js +16 -16
  235. package/es/PRIVATE_ThemedIcons/HelpIcon.js +16 -16
  236. package/es/PRIVATE_ThemedIcons/IncrementIcon.js +16 -16
  237. package/es/PRIVATE_ThemedIcons/MenuButtonDropdownIcon.js +16 -16
  238. package/es/PRIVATE_ThemedIcons/MessageConfirmationIcon.js +16 -16
  239. package/es/PRIVATE_ThemedIcons/MessageErrorIcon.js +16 -16
  240. package/es/PRIVATE_ThemedIcons/MessageInfoIcon.js +16 -16
  241. package/es/PRIVATE_ThemedIcons/MessageWarningIcon.js +16 -16
  242. package/es/PRIVATE_ThemedIcons/MinusIcon.js +16 -16
  243. package/es/PRIVATE_ThemedIcons/NavDownIcon.js +16 -16
  244. package/es/PRIVATE_ThemedIcons/None.js +16 -16
  245. package/es/PRIVATE_ThemedIcons/OverviewHorizontalDragHandleIcon.js +16 -16
  246. package/es/PRIVATE_ThemedIcons/PlusIcon.js +16 -16
  247. package/es/PRIVATE_ThemedIcons/RadioOffIcon.js +16 -16
  248. package/es/PRIVATE_ThemedIcons/RadioOnIcon.js +16 -16
  249. package/es/PRIVATE_ThemedIcons/SortAscendingIcon.js +16 -16
  250. package/es/PRIVATE_ThemedIcons/SortDescendingIcon.js +16 -16
  251. package/es/PRIVATE_ThemedIcons/ViewHideIcon.js +16 -16
  252. package/es/PRIVATE_ThemedIcons/ViewIcon.js +16 -16
  253. package/es/PRIVATE_TimeComponent.js +19 -19
  254. package/es/PRIVATE_TruncatingLink.js +16 -16
  255. package/es/PRIVATE_VisOverview.js +16 -16
  256. package/es/PRIVATE_VisStatusMessage.js +5 -5
  257. package/es/PRIVATE_VisTabularDatatip.js +4 -4
  258. package/es/{Popup-22d51095.js → Popup-992b6c27.js} +10 -10
  259. package/es/{Popup-22d51095.js.map → Popup-992b6c27.js.map} +1 -1
  260. package/es/ProgressButtonLabelLayout-69549cf9.js +3 -3
  261. package/es/{ProgressCircle-bce87dad.js → ProgressCircle-46084d0b.js} +2 -2
  262. package/es/{ProgressCircle-bce87dad.js.map → ProgressCircle-46084d0b.js.map} +1 -1
  263. package/es/RadioItem-94909632.js +6 -6
  264. package/es/ReadonlyTextFieldInput-106ce959.js +1 -1
  265. package/es/{ReferenceLineArea-cc72b070.js → ReferenceLineArea-53129f72.js} +3 -3
  266. package/es/{ReferenceLineArea-cc72b070.js.map → ReferenceLineArea-53129f72.js.map} +1 -1
  267. package/es/RevealToggleIcon-2d622d8f.js +1 -1
  268. package/es/{SectionedContent-897e9c4e.js → SectionedContent-30e5bf98.js} +5 -5
  269. package/es/{SectionedContent-897e9c4e.js.map → SectionedContent-30e5bf98.js.map} +1 -1
  270. package/es/SelectMenuGroupContext-aa1fe822.js +6 -6
  271. package/es/{SelectMobileFieldInput-0a7c968c.js → SelectMobileFieldInput-345c4d45.js} +10 -10
  272. package/es/{SelectMobileFieldInput-0a7c968c.js.map → SelectMobileFieldInput-345c4d45.js.map} +1 -1
  273. package/es/{SelectorAll-3d39196b.js → SelectorAll-de7ba2e1.js} +5 -5
  274. package/es/{SelectorAll-3d39196b.js.map → SelectorAll-de7ba2e1.js.map} +1 -1
  275. package/es/Sheet-f9f8a4a4.js +2 -2
  276. package/es/SortControl-1044fcd9.js +3 -3
  277. package/es/SplitMenuButtonTheme.styles.css +4 -4
  278. package/es/SplitMenuButtonTheme.styles2.css +4 -4
  279. package/es/StyledCard-77623731.js +1 -1
  280. package/es/{StyledLabelValueLayout-bddfb884.js → StyledLabelValueLayout-bb05f474.js} +2 -2
  281. package/es/{StyledLabelValueLayout-bddfb884.js.map → StyledLabelValueLayout-bb05f474.js.map} +1 -1
  282. package/es/StyledSwitch-dbf29d95.js +2 -2
  283. package/es/StyledTextField-7605d76a.js +5 -5
  284. package/es/Submenu-cbd77756.js +1 -1
  285. package/es/TabBar-67ca442c.js +6 -6
  286. package/es/TabBarContextMenu-c3326d67.js +2 -2
  287. package/es/TabBarLayout-9b67d1b6.js +1 -1
  288. package/es/Table-2f197c6a.js +11 -11
  289. package/es/TableColGroup-d74bd4f5.js +1 -1
  290. package/es/TextField-7884fcd7.js +3 -3
  291. package/es/Theme-redwood/theme.css +454 -454
  292. package/es/Theme-stable/theme.css +588 -588
  293. package/es/TimeComponentCanvas2D-cfb0066d.js +6 -6
  294. package/es/ToggleButton-bb69cf10.js +1 -1
  295. package/es/TruncatingLink-298c6343.js +4 -4
  296. package/es/TruncatingText-1bf00351.js +1 -1
  297. package/es/UNSAFE_AccordionItemMultiple.js +18 -18
  298. package/es/UNSAFE_AccordionItemSingle.js +18 -18
  299. package/es/UNSAFE_ActionCard.js +2 -2
  300. package/es/UNSAFE_BarChart.js +35 -35
  301. package/es/UNSAFE_BareButton.js +2 -2
  302. package/es/UNSAFE_BaseButton.js +5 -5
  303. package/es/UNSAFE_Button.js +6 -6
  304. package/es/UNSAFE_ButtonSet.js +4 -4
  305. package/es/UNSAFE_ButtonSetButton.js +5 -5
  306. package/es/UNSAFE_ButtonSetIconButton.js +17 -17
  307. package/es/UNSAFE_ButtonSetItem.js +18 -18
  308. package/es/UNSAFE_ButtonSetMultiple.js +4 -4
  309. package/es/UNSAFE_ButtonSetSingle.js +4 -4
  310. package/es/UNSAFE_Card.js +3 -3
  311. package/es/UNSAFE_CardFlexView.js +22 -22
  312. package/es/UNSAFE_CardGridView.js +22 -22
  313. package/es/UNSAFE_Center.js +5 -5
  314. package/es/UNSAFE_Checkbox.js +25 -25
  315. package/es/UNSAFE_CheckboxItem.js +27 -27
  316. package/es/UNSAFE_CheckboxRadioField.js +4 -4
  317. package/es/UNSAFE_CheckboxSet.js +26 -26
  318. package/es/UNSAFE_Chip.js +2 -2
  319. package/es/UNSAFE_Collapsible.js +18 -18
  320. package/es/UNSAFE_ColorPalette.js +19 -19
  321. package/es/UNSAFE_ColorPicker.js +21 -21
  322. package/es/UNSAFE_ColorSwatch.js +17 -17
  323. package/es/UNSAFE_ComboChart.js +35 -35
  324. package/es/UNSAFE_ComponentMessage.js +20 -20
  325. package/es/UNSAFE_ContainerDiagram/themes/DiagramStyles.css.js +1 -1
  326. package/es/UNSAFE_ContainerDiagram.js +29 -29
  327. package/es/UNSAFE_ConveyorBelt.js +18 -18
  328. package/es/UNSAFE_DatePicker.js +27 -27
  329. package/es/UNSAFE_Diagram/themes/DiagramStyles.css.js +1 -1
  330. package/es/UNSAFE_Diagram.js +29 -29
  331. package/es/UNSAFE_Dialog.js +22 -22
  332. package/es/UNSAFE_DragHandle.js +17 -17
  333. package/es/UNSAFE_DrawerLayout.js +12 -12
  334. package/es/UNSAFE_DrawerPopup.js +11 -11
  335. package/es/UNSAFE_Dropdown.js +15 -15
  336. package/es/UNSAFE_Environment.js +4 -4
  337. package/es/UNSAFE_ExpandableList.js +25 -25
  338. package/es/UNSAFE_FilePicker.js +4 -4
  339. package/es/UNSAFE_FlatTreeView.js +25 -25
  340. package/es/UNSAFE_Flex.js +4 -4
  341. package/es/UNSAFE_Floating.js +11 -11
  342. package/es/UNSAFE_FormLayout.js +2 -2
  343. package/es/UNSAFE_Gantt.js +23 -23
  344. package/es/UNSAFE_Grid.js +4 -4
  345. package/es/UNSAFE_HighlightText.js +4 -4
  346. package/es/UNSAFE_Icon.js +16 -16
  347. package/es/UNSAFE_IconButton.js +17 -17
  348. package/es/UNSAFE_IconMenuButton.js +25 -25
  349. package/es/UNSAFE_IconProgressButton.js +21 -21
  350. package/es/UNSAFE_IconToggleButton.js +17 -17
  351. package/es/UNSAFE_Indexer.js +19 -19
  352. package/es/UNSAFE_InlineSelectSingle.js +34 -34
  353. package/es/UNSAFE_InputColor.js +32 -32
  354. package/es/UNSAFE_InputDateMask.js +26 -26
  355. package/es/UNSAFE_InputDatePicker.js +36 -36
  356. package/es/UNSAFE_InputPassword.js +26 -26
  357. package/es/UNSAFE_InputSensitiveText.js +27 -27
  358. package/es/UNSAFE_InputText.js +28 -28
  359. package/es/UNSAFE_InputTimeMask.js +26 -26
  360. package/es/UNSAFE_Label.js +25 -25
  361. package/es/UNSAFE_LabelValueLayout.js +4 -4
  362. package/es/UNSAFE_LabelledLink.js +27 -27
  363. package/es/UNSAFE_Layer.js +8 -8
  364. package/es/UNSAFE_Legend.js +27 -27
  365. package/es/UNSAFE_LineAreaChart.js +35 -35
  366. package/es/UNSAFE_Link.js +2 -2
  367. package/es/UNSAFE_ListItemLayout.js +4 -4
  368. package/es/UNSAFE_ListView.js +28 -28
  369. package/es/UNSAFE_LiveRegion.js +4 -4
  370. package/es/UNSAFE_Menu.js +26 -26
  371. package/es/UNSAFE_MenuButton.js +25 -25
  372. package/es/UNSAFE_MessageBanner.js +20 -20
  373. package/es/UNSAFE_MessageToast.js +22 -22
  374. package/es/UNSAFE_MeterBar.js +16 -16
  375. package/es/UNSAFE_MeterCircle.js +17 -17
  376. package/es/UNSAFE_Modal.js +8 -8
  377. package/es/UNSAFE_NavigationList.js +28 -28
  378. package/es/UNSAFE_NavigationListCommon.js +20 -20
  379. package/es/UNSAFE_NumberInputText.js +28 -28
  380. package/es/UNSAFE_OverflowTabBar.js +27 -27
  381. package/es/UNSAFE_PictoChart.js +25 -25
  382. package/es/UNSAFE_PieChart.js +26 -26
  383. package/es/UNSAFE_Popup.js +18 -18
  384. package/es/UNSAFE_ProgressBar.js +4 -4
  385. package/es/UNSAFE_ProgressButton.js +21 -21
  386. package/es/UNSAFE_ProgressButtonLabelLayout.js +10 -10
  387. package/es/UNSAFE_ProgressCircle.js +4 -4
  388. package/es/UNSAFE_RadioItem.js +25 -25
  389. package/es/UNSAFE_RadioSet.js +27 -27
  390. package/es/UNSAFE_RatingGauge.js +18 -18
  391. package/es/UNSAFE_ReorderableTabBar.js +27 -27
  392. package/es/UNSAFE_RichCheckboxSet.js +28 -28
  393. package/es/UNSAFE_RichRadioSet.js +29 -29
  394. package/es/UNSAFE_RichSelectionItem.js +30 -30
  395. package/es/UNSAFE_ScatterChart.js +35 -35
  396. package/es/UNSAFE_SectionalLegend.js +27 -27
  397. package/es/UNSAFE_SelectMultiple.js +37 -37
  398. package/es/UNSAFE_SelectSingle.js +37 -37
  399. package/es/UNSAFE_SelectionCard.js +3 -3
  400. package/es/UNSAFE_Selector.js +17 -17
  401. package/es/UNSAFE_SelectorAll.js +19 -19
  402. package/es/UNSAFE_Sheet.js +11 -11
  403. package/es/UNSAFE_SortControl.js +20 -20
  404. package/es/UNSAFE_SplitMenuButton/themes/redwood/SplitMenuButtonTheme.css.js +1 -1
  405. package/es/UNSAFE_SplitMenuButton/themes/stable/SplitMenuButtonTheme.css.js +1 -1
  406. package/es/UNSAFE_SplitMenuButton.js +26 -26
  407. package/es/UNSAFE_Switch.js +26 -26
  408. package/es/UNSAFE_TabBar.js +28 -28
  409. package/es/UNSAFE_TabBarCommon.js +28 -28
  410. package/es/UNSAFE_TabBarMixed.js +28 -28
  411. package/es/UNSAFE_TableView.js +35 -35
  412. package/es/UNSAFE_TagCloud.js +26 -26
  413. package/es/UNSAFE_TextArea.js +27 -27
  414. package/es/UNSAFE_TextAreaAutosize.js +27 -27
  415. package/es/UNSAFE_TextField.js +20 -20
  416. package/es/UNSAFE_ToggleButton.js +5 -5
  417. package/es/UNSAFE_Toolbar.js +4 -4
  418. package/es/UNSAFE_Train.js +17 -17
  419. package/es/UNSAFE_TruncatingBadge.js +17 -17
  420. package/es/UNSAFE_TruncatingText.js +17 -17
  421. package/es/UNSAFE_UserAssistance.js +26 -26
  422. package/es/UNSAFE_View.js +7 -7
  423. package/es/UNSAFE_VirtualizedListView.js +21 -21
  424. package/es/UNSAFE_VisInvalidDataMessage.js +6 -6
  425. package/es/UNSAFE_VisNoDataMessage.js +6 -6
  426. package/es/UNSAFE_VisProgressiveLoader.js +5 -5
  427. package/es/UNSAFE_WindowOverlay.js +4 -4
  428. package/es/{View-818f2f31.js → View-5bdd9b3c.js} +5 -5
  429. package/es/{View-818f2f31.js.map → View-5bdd9b3c.js.map} +1 -1
  430. package/es/{VisStatusMessage-09c532e3.js → VisStatusMessage-e2d629bb.js} +2 -2
  431. package/es/{VisStatusMessage-09c532e3.js.map → VisStatusMessage-e2d629bb.js.map} +1 -1
  432. package/es/{VisTabularDatatip-f45069f1.js → VisTabularDatatip-85b00c1b.js} +2 -2
  433. package/es/{VisTabularDatatip-f45069f1.js.map → VisTabularDatatip-85b00c1b.js.map} +1 -1
  434. package/es/{WindowOverlay-467c2d12.js → WindowOverlay-7264c44a.js} +2 -2
  435. package/es/{WindowOverlay-467c2d12.js.map → WindowOverlay-7264c44a.js.map} +1 -1
  436. package/es/{YearsGridView-5286a756.js → YearsGridView-6c18094a.js} +4 -4
  437. package/es/{YearsGridView-5286a756.js.map → YearsGridView-6c18094a.js.map} +1 -1
  438. package/es/hoc/PRIVATE_withDirectionIcon.js +4 -4
  439. package/es/hoc/PRIVATE_withThemeIcon.js +3 -3
  440. package/es/hoc/UNSAFE_withThemeProps.js +3 -3
  441. package/es/hooks/PRIVATE_useChartContextMenu.js +23 -23
  442. package/es/hooks/PRIVATE_useChartDatatip.js +14 -14
  443. package/es/hooks/PRIVATE_useChartEvents.js +19 -19
  444. package/es/hooks/PRIVATE_useChartMarquee.js +19 -19
  445. package/es/hooks/PRIVATE_useCollectionFocusRing.js +17 -17
  446. package/es/hooks/PRIVATE_useCssVars.js +7 -7
  447. package/es/hooks/PRIVATE_useCurrentKey.js +4 -4
  448. package/es/hooks/PRIVATE_useDatatip.js +12 -12
  449. package/es/hooks/PRIVATE_useDetectHorizontalOverflow.js +16 -16
  450. package/es/hooks/PRIVATE_useFloating.js +4 -4
  451. package/es/hooks/PRIVATE_useItemAction.js +17 -17
  452. package/es/hooks/PRIVATE_useListCommon.js +19 -19
  453. package/es/hooks/PRIVATE_useOutsideMousedown.js +9 -9
  454. package/es/hooks/PRIVATE_useRadioFocusManager.js +4 -4
  455. package/es/hooks/PRIVATE_useReorderable.js +19 -19
  456. package/es/hooks/PRIVATE_useRovingTabIndexContainer.js +4 -4
  457. package/es/hooks/PRIVATE_useSelection.js +4 -4
  458. package/es/hooks/PRIVATE_useTabBar.js +26 -26
  459. package/es/hooks/PRIVATE_useTabbableModeSet.js +17 -17
  460. package/es/hooks/PRIVATE_useTooltipOnTruncation.js +17 -17
  461. package/es/hooks/PRIVATE_useVisContextMenu.js +23 -23
  462. package/es/hooks/PRIVATE_useVisDragModeControls.js +19 -19
  463. package/es/hooks/PRIVATE_useVisEvents.js +4 -4
  464. package/es/hooks/PRIVATE_useVisMeterEvents.js +14 -14
  465. package/es/hooks/PRIVATE_useVisSelection.js +15 -15
  466. package/es/hooks/UNSAFE_useBareButton.js +2 -2
  467. package/es/hooks/UNSAFE_useColorScheme.js +3 -3
  468. package/es/hooks/UNSAFE_useCurrentBgColor.js +2 -2
  469. package/es/hooks/UNSAFE_useDensity.js +3 -3
  470. package/es/hooks/UNSAFE_useHiddenTestMethod.js +3 -3
  471. package/es/hooks/UNSAFE_useOutsideClick.js +8 -8
  472. package/es/hooks/UNSAFE_usePrefixSuffix.js +4 -4
  473. package/es/hooks/UNSAFE_useScale.js +3 -3
  474. package/es/hooks/UNSAFE_useTestId.js +3 -3
  475. package/es/hooks/UNSAFE_useTheme.js +3 -3
  476. package/es/hooks/UNSAFE_useThemeInterpolations.js +6 -6
  477. package/es/hooks/UNSAFE_useTooltip.js +17 -17
  478. package/es/hooks/UNSAFE_useTranslationBundle.js +3 -3
  479. package/es/hooks/UNSAFE_useUser.js +3 -3
  480. package/es/{popupUtils-7774330e.js → popupUtils-51366a29.js} +2 -2
  481. package/es/{popupUtils-7774330e.js.map → popupUtils-51366a29.js.map} +1 -1
  482. package/es/{tooltipUtils-90fb656f.js → tooltipUtils-af0abd38.js} +5 -5
  483. package/es/{tooltipUtils-90fb656f.js.map → tooltipUtils-af0abd38.js.map} +1 -1
  484. package/es/useBareButton-ff4bd21e.js +1 -1
  485. package/es/useCellNavigation-0565b6dd.js +1 -1
  486. package/es/useChartContextMenu-5de82cd7.js +2 -2
  487. package/es/{useChartDatatip-cba78e0f.js → useChartDatatip-8dd22b71.js} +4 -4
  488. package/es/{useChartDatatip-cba78e0f.js.map → useChartDatatip-8dd22b71.js.map} +1 -1
  489. package/es/{useColorScheme-67245285.js → useColorScheme-c4f6caab.js} +2 -2
  490. package/es/{useColorScheme-67245285.js.map → useColorScheme-c4f6caab.js.map} +1 -1
  491. package/es/useContextMenu-730d6c12.js +2 -2
  492. package/es/{useCssVars-048a52d8.js → useCssVars-bc2527ac.js} +5 -5
  493. package/es/{useCssVars-048a52d8.js.map → useCssVars-bc2527ac.js.map} +1 -1
  494. package/es/{useCurrentKey-38e5f097.js → useCurrentKey-5f865bbd.js} +2 -2
  495. package/es/{useCurrentKey-38e5f097.js.map → useCurrentKey-5f865bbd.js.map} +1 -1
  496. package/es/{useDatatip-ef5c47a7.js → useDatatip-4895a07a.js} +4 -4
  497. package/es/{useDatatip-ef5c47a7.js.map → useDatatip-4895a07a.js.map} +1 -1
  498. package/es/{useDensity-969273f3.js → useDensity-1acb0153.js} +2 -2
  499. package/es/{useDensity-969273f3.js.map → useDensity-1acb0153.js.map} +1 -1
  500. package/es/{useDisplayValue-5bbf2830.js → useDisplayValue-65bbc74e.js} +7 -7
  501. package/es/{useDisplayValue-5bbf2830.js.map → useDisplayValue-65bbc74e.js.map} +1 -1
  502. package/es/{useExpandCollapse-51f9bb4b.js → useExpandCollapse-5739cfd2.js} +2 -2
  503. package/es/{useExpandCollapse-51f9bb4b.js.map → useExpandCollapse-5739cfd2.js.map} +1 -1
  504. package/es/{useFloating-c74a7f54.js → useFloating-b9d680f7.js} +2 -2
  505. package/es/{useFloating-c74a7f54.js.map → useFloating-b9d680f7.js.map} +1 -1
  506. package/es/{useHiddenTestMethod-ec7b3989.js → useHiddenTestMethod-f3f25093.js} +2 -2
  507. package/es/{useHiddenTestMethod-ec7b3989.js.map → useHiddenTestMethod-f3f25093.js.map} +1 -1
  508. package/es/{useKeyboardEvents-a1495728.js → useKeyboardEvents-9aae7ea3.js} +2 -2
  509. package/es/{useKeyboardEvents-a1495728.js.map → useKeyboardEvents-9aae7ea3.js.map} +1 -1
  510. package/es/useLegendContextMenu-a678b26f.js +4 -4
  511. package/es/{useMeterDatatip-f61ca3e0.js → useMeterDatatip-538a4d53.js} +3 -3
  512. package/es/{useMeterDatatip-f61ca3e0.js.map → useMeterDatatip-538a4d53.js.map} +1 -1
  513. package/es/useNavigation-b257c33a.js +1 -1
  514. package/es/{useOutsideClick-01f3d3e1.js → useOutsideClick-b777a43e.js} +2 -2
  515. package/es/{useOutsideClick-01f3d3e1.js.map → useOutsideClick-b777a43e.js.map} +1 -1
  516. package/es/{useOutsideMousedown-e0866d58.js → useOutsideMousedown-c45c22c0.js} +2 -2
  517. package/es/{useOutsideMousedown-e0866d58.js.map → useOutsideMousedown-c45c22c0.js.map} +1 -1
  518. package/es/{usePopupAnimation-7c5db425.js → usePopupAnimation-96d2bc83.js} +2 -2
  519. package/es/{usePopupAnimation-7c5db425.js.map → usePopupAnimation-96d2bc83.js.map} +1 -1
  520. package/es/{usePrefixSuffix-95fc00fd.js → usePrefixSuffix-f981b65f.js} +2 -2
  521. package/es/{usePrefixSuffix-95fc00fd.js.map → usePrefixSuffix-f981b65f.js.map} +1 -1
  522. package/es/{useRadioFocusManager-d9eecfb4.js → useRadioFocusManager-36eb283e.js} +2 -2
  523. package/es/{useRadioFocusManager-d9eecfb4.js.map → useRadioFocusManager-36eb283e.js.map} +1 -1
  524. package/es/{useReorderableItem-06bd7a7b.js → useReorderableItem-857636b7.js} +3 -3
  525. package/es/{useReorderableItem-06bd7a7b.js.map → useReorderableItem-857636b7.js.map} +1 -1
  526. package/es/{useRovingTabIndexContainer-c0356f5d.js → useRovingTabIndexContainer-5992e107.js} +2 -2
  527. package/es/{useRovingTabIndexContainer-c0356f5d.js.map → useRovingTabIndexContainer-5992e107.js.map} +1 -1
  528. package/es/{useScale-93490e54.js → useScale-434ad939.js} +2 -2
  529. package/es/{useScale-93490e54.js.map → useScale-434ad939.js.map} +1 -1
  530. package/es/{useSelectCommon-309d0f07.js → useSelectCommon-a3c69d60.js} +13 -8
  531. package/es/useSelectCommon-a3c69d60.js.map +1 -0
  532. package/es/{useSelectDrill-2f855daa.js → useSelectDrill-f669e729.js} +3 -3
  533. package/es/{useSelectDrill-2f855daa.js.map → useSelectDrill-f669e729.js.map} +1 -1
  534. package/es/{useSelection-d6fefa3d.js → useSelection-65134722.js} +2 -2
  535. package/es/{useSelection-d6fefa3d.js.map → useSelection-65134722.js.map} +1 -1
  536. package/es/{useSelection-10ed8060.js → useSelection-82bec039.js} +6 -6
  537. package/es/{useSelection-10ed8060.js.map → useSelection-82bec039.js.map} +1 -1
  538. package/es/useTabBar-c5558e77.js +3 -3
  539. package/es/{useTestId-ab1bede6.js → useTestId-f24ac480.js} +2 -2
  540. package/es/{useTestId-ab1bede6.js.map → useTestId-f24ac480.js.map} +1 -1
  541. package/es/{useTheme-c2cfbc29.js → useTheme-0e7497db.js} +2 -2
  542. package/es/{useTheme-c2cfbc29.js.map → useTheme-0e7497db.js.map} +1 -1
  543. package/es/{useThemeInterpolations-5f358139.js → useThemeInterpolations-e144e8ec.js} +5 -5
  544. package/es/{useThemeInterpolations-5f358139.js.map → useThemeInterpolations-e144e8ec.js.map} +1 -1
  545. package/es/{useTooltip-ab739df0.js → useTooltip-94af94d4.js} +2 -2
  546. package/es/{useTooltip-ab739df0.js.map → useTooltip-94af94d4.js.map} +1 -1
  547. package/es/{useTooltipControlled-b7f30aee.js → useTooltipControlled-f2cfa454.js} +5 -5
  548. package/es/{useTooltipControlled-b7f30aee.js.map → useTooltipControlled-f2cfa454.js.map} +1 -1
  549. package/es/{useTooltipOnTruncation-31afc3f2.js → useTooltipOnTruncation-94282e75.js} +4 -4
  550. package/es/{useTooltipOnTruncation-31afc3f2.js.map → useTooltipOnTruncation-94282e75.js.map} +1 -1
  551. package/es/{useTranslationBundle-bc6e0896.js → useTranslationBundle-4822502f.js} +2 -2
  552. package/es/{useTranslationBundle-bc6e0896.js.map → useTranslationBundle-4822502f.js.map} +1 -1
  553. package/es/{useUser-e543b73c.js → useUser-06d34d19.js} +2 -2
  554. package/es/{useUser-e543b73c.js.map → useUser-06d34d19.js.map} +1 -1
  555. package/es/useVisDragModeControls-af64848c.js +1 -1
  556. package/es/{useVisEvents-0edc925f.js → useVisEvents-256dee29.js} +2 -2
  557. package/es/{useVisEvents-0edc925f.js.map → useVisEvents-256dee29.js.map} +1 -1
  558. package/es/utils/PRIVATE_collectionUtils.js +17 -17
  559. package/es/utils/PRIVATE_tabBarUtils.js +17 -17
  560. package/es/utils/PRIVATE_tooltipUtils.js +14 -14
  561. package/es/utils/PRIVATE_visTestUtils.js +4 -4
  562. package/es/utils/UNSAFE_popupUtils.js +8 -8
  563. package/es/{withDirectionIcon-b725a6d7.js → withDirectionIcon-a8d84a3d.js} +2 -2
  564. package/es/{withDirectionIcon-b725a6d7.js.map → withDirectionIcon-a8d84a3d.js.map} +1 -1
  565. package/es/withThemeProps-dbd4fedf.js +2 -2
  566. package/package.json +2 -2
  567. package/amd/CheckboxSet-f000e5c2.js +0 -2
  568. package/amd/CheckboxSet-f000e5c2.js.map +0 -1
  569. package/amd/ColorPicker-e3167e4c.js +0 -2
  570. package/amd/ExpandableList-233c279e.js +0 -2
  571. package/amd/InputDatePicker-030e345a.js +0 -2
  572. package/amd/ListView-02a92d18.js +0 -2
  573. package/amd/TextArea-345f89d4.js +0 -2
  574. package/amd/TextArea-345f89d4.js.map +0 -1
  575. package/amd/TextAreaAutosize-01dfd98e.js +0 -2
  576. package/amd/VirtualizedListView-a0f338c2.js +0 -2
  577. package/amd/useSelectCommon-28307b63.js +0 -2
  578. package/amd/useSelectCommon-28307b63.js.map +0 -1
  579. package/cjs/useSelectCommon-b0d7feb3.js.map +0 -1
  580. package/es/useSelectCommon-309d0f07.js.map +0 -1
@@ -1,42 +1,48 @@
1
- .DiagramStyles_outerStyles__1ep4hfg0 {
1
+ .DiagramStyles_outerStyles__18tpn7n0 {
2
2
  position: relative;
3
3
  overflow: hidden;
4
4
  -webkit-user-select: none;
5
5
  -moz-user-select: none;
6
6
  user-select: none;
7
7
  }
8
- .DiagramStyles_outerStyles__1ep4hfg0:focus-visible {
8
+ .DiagramStyles_outerStyles__18tpn7n0:focus-visible {
9
9
  outline-width: 0px;
10
10
  }
11
- .DiagramStyles_layerStyles__1ep4hfg1 {
11
+ .DiagramStyles_layerStyles__18tpn7n1 {
12
12
  display: inline-block;
13
13
  pointer-events: none;
14
14
  position: absolute;
15
15
  top: 0;
16
16
  left: 0;
17
17
  }
18
- .DiagramStyles_nodeStyles__1ep4hfg2 {
18
+ .DiagramStyles_nodeStyles__18tpn7n2 {
19
19
  position: absolute;
20
20
  pointer-events: auto;
21
21
  }
22
- .DiagramStyles_linkStyles__1ep4hfg3 {
22
+ .DiagramStyles_linkStyles__18tpn7n3 {
23
23
  pointer-events: auto;
24
24
  }
25
- .DiagramStyles_labelStyle__1ep4hfg4 {
25
+ .DiagramStyles_labelStyle__18tpn7n4 {
26
26
  position: absolute;
27
27
  }
28
- .DiagramStyles_labelBorderStyle__1ep4hfg5 {
28
+ .DiagramStyles_buttonStyle__18tpn7n5 {
29
+ position: absolute;
30
+ }
31
+ .DiagramStyles_labelBorderStyle__18tpn7n6 {
29
32
  border-style: solid;
30
33
  }
31
- .DiagramStyles_dimmedItemStyle__1ep4hfg6 {
34
+ .DiagramStyles_childContentStyle__18tpn7n7 {
35
+ position: absolute;
36
+ }
37
+ .DiagramStyles_dimmedItemStyle__18tpn7n8 {
32
38
  opacity: var(--oj-c-dimmed-opacity);
33
39
  }
34
- .DiagramStyles_panZoomStyles__1ep4hfg7 {
40
+ .DiagramStyles_panZoomStyles__18tpn7n9 {
35
41
  transform-origin: top left;
36
42
  position: relative;
37
43
  pointer-events: none;
38
44
  }
39
- .DiagramStyles_dimensionStyle__1ep4hfg8 {
45
+ .DiagramStyles_dimensionStyle__18tpn7na {
40
46
  width: 100%;
41
47
  height: calc(140 * var(--oj-c-size-units, 0.25rem));
42
48
  }
@@ -1,48 +1,42 @@
1
- .DiagramStyles_outerStyles__18tpn7n0 {
1
+ .DiagramStyles_outerStyles__1ep4hfg0 {
2
2
  position: relative;
3
3
  overflow: hidden;
4
4
  -webkit-user-select: none;
5
5
  -moz-user-select: none;
6
6
  user-select: none;
7
7
  }
8
- .DiagramStyles_outerStyles__18tpn7n0:focus-visible {
8
+ .DiagramStyles_outerStyles__1ep4hfg0:focus-visible {
9
9
  outline-width: 0px;
10
10
  }
11
- .DiagramStyles_layerStyles__18tpn7n1 {
11
+ .DiagramStyles_layerStyles__1ep4hfg1 {
12
12
  display: inline-block;
13
13
  pointer-events: none;
14
14
  position: absolute;
15
15
  top: 0;
16
16
  left: 0;
17
17
  }
18
- .DiagramStyles_nodeStyles__18tpn7n2 {
18
+ .DiagramStyles_nodeStyles__1ep4hfg2 {
19
19
  position: absolute;
20
20
  pointer-events: auto;
21
21
  }
22
- .DiagramStyles_linkStyles__18tpn7n3 {
22
+ .DiagramStyles_linkStyles__1ep4hfg3 {
23
23
  pointer-events: auto;
24
24
  }
25
- .DiagramStyles_labelStyle__18tpn7n4 {
25
+ .DiagramStyles_labelStyle__1ep4hfg4 {
26
26
  position: absolute;
27
27
  }
28
- .DiagramStyles_buttonStyle__18tpn7n5 {
29
- position: absolute;
30
- }
31
- .DiagramStyles_labelBorderStyle__18tpn7n6 {
28
+ .DiagramStyles_labelBorderStyle__1ep4hfg5 {
32
29
  border-style: solid;
33
30
  }
34
- .DiagramStyles_childContentStyle__18tpn7n7 {
35
- position: absolute;
36
- }
37
- .DiagramStyles_dimmedItemStyle__18tpn7n8 {
31
+ .DiagramStyles_dimmedItemStyle__1ep4hfg6 {
38
32
  opacity: var(--oj-c-dimmed-opacity);
39
33
  }
40
- .DiagramStyles_panZoomStyles__18tpn7n9 {
34
+ .DiagramStyles_panZoomStyles__1ep4hfg7 {
41
35
  transform-origin: top left;
42
36
  position: relative;
43
37
  pointer-events: none;
44
38
  }
45
- .DiagramStyles_dimensionStyle__18tpn7na {
39
+ .DiagramStyles_dimensionStyle__1ep4hfg8 {
46
40
  width: 100%;
47
41
  height: calc(140 * var(--oj-c-size-units, 0.25rem));
48
42
  }
@@ -1,15 +1,15 @@
1
1
  /* @oracle/oraclejet-preact: undefined */
2
2
  import { jsx, jsxs, Fragment } from 'preact/jsx-runtime';
3
3
  import { forwardRef } from 'preact/compat';
4
- import { W as WindowOverlay } from './WindowOverlay-467c2d12.js';
5
- import { u as useTestId } from './useTestId-ab1bede6.js';
4
+ import { W as WindowOverlay } from './WindowOverlay-7264c44a.js';
5
+ import { u as useTestId } from './useTestId-f24ac480.js';
6
6
  import { u as useAnimation } from './useAnimation-fe39685e.js';
7
7
  import { useRef, useState, useCallback, useEffect, useMemo } from 'preact/hooks';
8
8
  import { m as mergeRefs } from './refUtils-76275c69.js';
9
9
  import { DialogRedwoodTheme } from './UNSAFE_Dialog/themes/redwood/DialogTheme.js';
10
10
  import { F as FocusTrap } from './FocusTrap-b59d5752.js';
11
- import { L as Layer } from './Layer-6c27170e.js';
12
- import './LayerHost-3cf255a6.js';
11
+ import { L as Layer } from './Layer-535577b5.js';
12
+ import './LayerHost-7931b424.js';
13
13
  import { L as LogicalParentRefContext, M as Modal } from './Modal-c0f730b8.js';
14
14
  import { c as classNames } from './classNames-4e12b00d.js';
15
15
  import { g as globalImages } from './ImageVars.css-7b3180c8.js';
@@ -19,12 +19,12 @@ import { d as dimensionInterpolations } from './dimensions-e4fbc23d.js';
19
19
  import { m as mergeInterpolations } from './mergeInterpolations-30cd9a69.js';
20
20
  import { u as useResizeObserver } from './useResizeObserver-13641643.js';
21
21
  import { u as useDraggable } from './useDraggable-e1aaa8f3.js';
22
- import { F as Floating } from './Floating-be4c0cb6.js';
22
+ import { F as Floating } from './Floating-4a82db94.js';
23
23
  import { I as IconButton } from './IconButton-7f91481c.js';
24
24
  import { S as SvgClose } from './Close-5a460764.js';
25
25
  import { R as Resizable } from './Resizable-b88279bc.js';
26
26
  import { u as useBreakpoints } from './useBreakpoints-99efa183.js';
27
- import { u as useTranslationBundle } from './useTranslationBundle-bc6e0896.js';
27
+ import { u as useTranslationBundle } from './useTranslationBundle-4822502f.js';
28
28
  import { S as SLIDE_UP_XLARGE, D as DURATION_LARGE, a as SLIDE_DOWN_XLARGE } from './animationUtils-5f409a6c.js';
29
29
  import { b as focusOn, a as allTabbableElements, f as focusWithin, g as getActiveElement } from './tabbableUtils-c8311ec6.js';
30
30
  import { U as UNSAFE_DOM_ACCESS } from './unsafeDomAccess-453eb74e.js';
@@ -384,4 +384,4 @@ const animationStates = {
384
384
  };
385
385
 
386
386
  export { Dialog as D };
387
- //# sourceMappingURL=Dialog-d1de5b06.js.map
387
+ //# sourceMappingURL=Dialog-83368f52.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog-d1de5b06.js","sources":["../../src/UNSAFE_Dialog/Dialog.tsx"],"sourcesContent":["import type { ComponentChild, RefObject, JSX } from 'preact';\nimport { ForwardedRef, forwardRef } from 'preact/compat';\nimport { Offset, WindowOverlay, WindowOverlayPlacement } from '../UNSAFE_WindowOverlay';\nimport { TestIdProps, useTestId } from '../hooks/UNSAFE_useTestId';\nimport { useAnimation } from '../hooks/UNSAFE_useAnimation';\nimport { useEffect, useRef, useCallback, useMemo, useState } from 'preact/hooks';\nimport { mergeRefs } from '../utils/PRIVATE_refUtils';\n\nimport { DialogRedwoodTheme } from './themes/redwood/DialogTheme';\nimport { DialogStyles } from './themes/DialogStyles.css';\nimport { FocusTrap } from '../UNSAFE_FocusTrap';\nimport type { UnpackSignals } from '@oracle/oraclejet-internal-utilities/attributeUtils';\nimport { Layer } from '../UNSAFE_Layer';\nimport { Modal } from '../UNSAFE_Modal';\nimport { LogicalParentRef, LogicalParentRefContext } from '../UNSAFE_Layer/LogicalParentRefContext';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { globalImages } from '#/ImageVars.css';\nimport { useComponentTheme } from '../hooks/UNSAFE_useComponentTheme';\nimport { useId } from '../hooks/UNSAFE_useId';\nimport { dimensionInterpolations, DimensionProps } from '../utils/UNSAFE_interpolations/dimensions';\nimport { mergeInterpolations } from '../utils/UNSAFE_mergeInterpolations';\nimport { useResizeObserver } from '../hooks/UNSAFE_useResizeObserver';\n\nimport { DraggableProps, useDraggable } from '../hooks/PRIVATE_useDraggable';\nimport { Floating, Coords } from '../UNSAFE_Floating';\nimport { IconButton } from '../UNSAFE_IconButton';\nimport { CloseIcon } from '../PRIVATE_ThemedIcons/CloseIcon';\nimport { Resizable, ResizableConstraints } from '../PRIVATE_Resizable/Resizable';\nimport { Position, Rect } from '../utils/UNSAFE_flexibleComponentUtils';\nimport { useBreakpoints } from '../hooks/UNSAFE_useBreakpoints';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport { BundleType } from '../resources/nls/bundle';\nimport {\n SLIDE_DOWN_XLARGE,\n SLIDE_UP_XLARGE,\n DURATION_LARGE\n} from '../utils/PRIVATE_animationUtils';\nimport {\n allTabbableElements,\n focusOn,\n focusWithin,\n getActiveElement\n} from '../utils/PRIVATE_tabbableUtils';\n\nimport type { UnsafeDomHandle } from '#utils/UNSAFE_unsafeDomAccess';\nimport { UNSAFE_DOM_ACCESS } from '#utils/UNSAFE_unsafeDomAccess';\n\n// dialog states\ntype Status = 'initial' | 'opening' | 'closing' | 'unmounted';\ntype VisibilityStatus = 'hidden' | 'visible';\ntype Animations = 'zoomIn' | 'zoomOut' | 'slideUp' | 'slideDown';\n\ntype IntrinsicProps = Pick<UnpackSignals<JSX.IntrinsicElements['div']>, 'children' | 'role'>;\n\ntype OnCloseDetail = {\n /**\n * reason for closing the dialog\n */\n reason: 'escapeKey' | 'icon';\n};\n\nexport type CancelBehavior = 'none' | 'escape' | 'icon';\n\ntype DialogProps = IntrinsicProps &\n DimensionProps & {\n /**\n * Optional ref for an element to focus on when component mounts\n */\n autoFocusRef?: RefObject<{ focus: () => void }>;\n\n /**\n * On Close callback.\n */\n onClose?: (detail: OnCloseDetail) => void;\n\n /**\n * On opening or closing transition end callback.\n */\n onTransitionEnd?: (value: boolean) => void;\n\n /**\n * Determines whether the Dialog is open.\n */\n isOpen: boolean;\n\n /**\n * Dialog header content. Can be a string or VNode (Component Child).\n * <p>\n * When a plain string is passed, it will be used as the dialog title. Otherwise, the prop value\n * will be used as the header content.\n * </p>\n * <p>\n * Dialog will automatically refer to the header content as the accessible label.\n * The user can override this behavior by specifying the <code>aria-labelledby</code> property\n * and setting its value as needed.\n * </p>\n */\n header?: ComponentChild;\n\n /**\n * Dialog footer content.\n */\n footer?: ComponentChild;\n\n /**\n * Determines dialog modality. Default is 'modal'.\n */\n modality?: 'modal' | 'modeless';\n\n /**\n * Specifies dialog's cancel behavior. Default is 'none'.\n */\n cancelBehavior?: CancelBehavior;\n\n /**\n * Specifies dialog's launcher. After dialog closes, it returns focus to the launcher.\n * If not specified, focus goes back to the last active element before dialog opened.\n */\n launcherRef?: RefObject<HTMLElement | UnsafeDomHandle<HTMLElement>>;\n\n /**\n * Specifies dialog's anchor. Dialog is placed relative to its anchor. If not specified,\n * it is placed relatively to window.\n */\n anchorRef?: RefObject<Element | Coords>;\n\n /**\n * Determines placement of the dialog relative to the viewport.\n * Supported values are:\n * <p> <code>center</code>, <code>top</code>, <code>top-start</code>, <code>top-end</code>,\n * <code>end</code>, <code>end-top</code>, <code>end-bottom</code>,\n * <code>bottom</code>, <code>bottom-start</code>, <code>bottom-end</code>,\n * <code>start</code>, <code>start-top</code>, <code>start-bottom</code>\n * </p>\n * Default is <code>center</code>.\n */\n placement?: WindowOverlayPlacement;\n\n /**\n * Determines the offset of the Dialog from its core placement along the specified axes.\n *\n * Offset could be a number or an object\n *\n * An object has the following type:\n * <pre>\n * {\n * mainAxis?: number;\n * crossAxis?: number;\n * }\n * </pre>\n * For the <code>center</code> placement the convention for the offset type is that mainAxis defines\n * offset from the top, crossAxis defines offset from the left side of the view port.\n *\n * A number is a shortcut for setting the mainAxis.\n */\n offset?: Offset;\n\n /**\n * Determines if the Dialog should be sensitive to drag gestures. To create a draggable dialog,\n * set <code>dragAffordance='header'</code> and specify the <code>onDragMove</code> handler.\n */\n dragAffordance?: 'none' | 'header';\n\n /**\n * Determines if the Dialog should support resizing. To create a resizable dialog,\n * set <code>resizeBehavior='resizable'</code> and specify the <code>onResize</code> handler.\n */\n resizeBehavior?: 'none' | 'resizable';\n\n /**\n * Callback to be invoked if <code>dragAffordance</code> is set to <code>header</code> and a drag gesture is initiated.\n * The current position is reported in the <code>pos</code> parameter.\n *\n * @param pos\n */\n onDragStart?: (pos: Position) => void;\n\n /**\n * Callback to be invoked if <code>dragAffordance</code> is set to <code>header</code> and a drag gesture is detected.\n * The current position is reported in the <code>pos</code> parameter.\n *\n * @param pos\n */\n onDragMove?: (pos: Position) => void;\n\n /**\n * Callback to be invoked if <code>dragAffordance</code> is set to <code>header</code> and a drag gesture is completed.\n * The current position is reported in the <code>pos</code> parameter.\n *\n * @param pos\n */\n onDragEnd?: (pos: Position) => void;\n\n /**\n * Callback to be invoked if <code>resizeBehavior</code> is set to <code>resizable</code> and\n * a resize gesture is initiated. The current position and dimensions are reported in the\n * <code>rect</code> parameter.\n *\n * @param rect\n */\n onResizeStart?: (rect: Rect) => void;\n\n /**\n * Callback to be invoked if <code>resizeBehavior</code> is set to <code>resizable</code> and\n * a resize gesture is detected. The current position and dimensions are reported in the\n * <code>rect</code> parameter.\n *\n * @param rect\n */\n onResize?: (rect: Rect) => void;\n\n /**\n * Callback to be invoked if <code>resizeBehavior</code> is set to <code>resizable</code> and\n * a resize gesture is completed. The current position and dimensions are reported in the\n * <code>rect</code> parameter.\n *\n * @param rect\n */\n onResizeEnd?: (rect: Rect) => void;\n\n /**\n * Specifies callback triggered when initial focus is set or when a modeless dialog receives focus\n * via the F6 key.\n */\n onFocusSet?: () => void;\n\n /**\n * Determines if the header decoration should be displayed. The default is <code>on</code>\n * which renders a textured strip at the top of the dialog header in the Redwood theme.\n * If set to <code>off</code>, no decoration is rendered.\n */\n headerDecoration?: 'off' | 'on';\n\n /**\n * Specifies the ARIA role type. Depending on how the dialog is used in the page, the developer\n * should choose from the following:\n * <ul>\n * <li><code>dialog</code> defines an application window that is designed to interrupt the current\n * processing of an application in order to prompt the user to enter information or require\n * a response.</li>\n * <li><code>alertdialog</code> defines type of dialog that contains an alert message, where initial\n * focus goes to an element within the dialog.</li>\n * </ul>\n */\n role?: string;\n\n /**\n * Optional <code>aria-labelledby</code> property referring to the content to be used as Dialog's\n * accessible <label htmlFor=\"\" className=\"\"></label>\n * If not specified, the Dialog will automatically refer to the entire header content as the accessible label.\n */\n 'aria-labelledby'?: string;\n\n /**\n * Optional accessible description for the dialog.\n */\n 'aria-describedby'?: string;\n } & TestIdProps;\n\n// dialog header\ntype DialogHeaderProps = Pick<DialogProps, 'children'> & {\n id?: string;\n closeButtonRef?: RefObject<HTMLDivElement>;\n cancelBehavior?: CancelBehavior;\n onClose?: (detail: OnCloseDetail) => void;\n draggableProps?: DraggableProps;\n headerDecoration?: 'off' | 'on';\n};\n\nconst StyledDialogHeader = ({\n children,\n id,\n closeButtonRef,\n cancelBehavior,\n onClose,\n draggableProps,\n headerDecoration = 'on'\n}: DialogHeaderProps) => {\n const { styles } = useComponentTheme<never, DialogStyles>(DialogRedwoodTheme);\n\n const isSmallWidth = !useBreakpoints()['md'];\n\n const classes = classNames([\n styles.dialogHeaderStyle,\n isSmallWidth ? styles.dialogHeaderStyleSmall : styles.dialogHeaderStyleDesktop,\n ...(headerDecoration === 'on' ? [styles.dialogHeaderDecorationStyle] : [])\n ]);\n\n const content: ComponentChild =\n typeof children === 'string' ? (\n <h1 id={id} className={styles.dialogTitleStyle}>\n {children}\n </h1>\n ) : (\n <>{children}</>\n );\n\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n const handleIconClose = () => {\n onClose?.({ reason: 'icon' });\n };\n\n const closeIcon: ComponentChild =\n cancelBehavior === 'icon' ? (\n <div>\n <div className={styles.dialogHeaderCloseIconStyle} ref={closeButtonRef}>\n <IconButton\n aria-label={translations.message_close()}\n size=\"sm\"\n variant=\"ghost\"\n onAction={handleIconClose}>\n <CloseIcon />\n </IconButton>\n </div>\n </div>\n ) : null;\n\n return (\n <div className={classes} {...draggableProps}>\n {content}\n {closeIcon}\n </div>\n );\n};\n\n// dialog footer\n\ntype DialogFooterProps = Pick<DialogProps, 'children'> & {\n style?: string;\n};\n\nconst StyledDialogFooter = forwardRef(\n ({ children, style }: DialogFooterProps, ref: ForwardedRef<HTMLDivElement | null>) => {\n return (\n <div ref={ref} className={style}>\n {children}\n </div>\n );\n }\n);\n\n// styled dialog\n\ntype MainProps = Pick<DialogProps, 'children' | 'header' | 'footer' | 'role'> &\n Pick<UnpackSignals<JSX.IntrinsicElements['div']>, 'style' | 'onKeyDown'> & {\n visibility: VisibilityStatus;\n labelId?: string;\n ariaLabelledBy?: string;\n ariaDescribedBy?: string;\n cancelBehavior?: CancelBehavior;\n draggableProps?: DraggableProps;\n isResizable?: boolean;\n headerDecoration?: 'off' | 'on';\n containerRef?: RefObject<HTMLElement>;\n onClose?: (detail: OnCloseDetail) => void;\n onResizeStart?: (rect: Rect) => void;\n onResize?: (rect: Rect) => void;\n onResizeEnd?: (rect: Rect) => void;\n closeButtonRef?: RefObject<HTMLDivElement>;\n bodyRef?: RefObject<HTMLDivElement>;\n footerRef?: RefObject<HTMLDivElement | null>;\n } & TestIdProps;\n\nconst StyledDialog = forwardRef(\n (\n {\n children,\n header,\n footer,\n visibility,\n labelId,\n role,\n ariaLabelledBy,\n ariaDescribedBy,\n cancelBehavior,\n draggableProps,\n isResizable,\n headerDecoration,\n containerRef,\n onClose,\n onResizeStart,\n onResize,\n onResizeEnd,\n onKeyDown,\n testId,\n style,\n closeButtonRef,\n bodyRef,\n footerRef\n }: MainProps,\n ref: ForwardedRef<HTMLDivElement | null>\n ) => {\n const elementRef = useRef<HTMLDivElement>(null);\n const mergedRef = mergeRefs(ref, elementRef);\n\n // computed dialog dimension limits\n const sizeConstraints = useRef<ResizableConstraints>();\n\n const [isSmallHeight, setSmallHeight] = useState<boolean>(false);\n const isSmallWidth = !useBreakpoints()['md'];\n\n const { classes: styleClasses, styles } = useComponentTheme<never, DialogStyles>(\n DialogRedwoodTheme\n );\n\n const resizeHandler = useCallback(() => {\n if (elementRef.current) {\n if (elementRef.current.clientHeight < 400) {\n setSmallHeight(true);\n } else {\n setSmallHeight(false);\n }\n if (elementRef.current) {\n const cs = window.getComputedStyle(elementRef.current);\n sizeConstraints.current = {\n minHeight: parseFloat(cs.minHeight),\n maxHeight: parseFloat(cs.maxHeight),\n minWidth: parseFloat(cs.minWidth),\n maxWidth: parseFloat(cs.maxWidth)\n };\n }\n }\n }, []);\n\n // set initial Height\n useEffect(() => {\n resizeHandler();\n }, [resizeHandler]);\n\n useResizeObserver(elementRef, resizeHandler);\n\n // for small widths (mobile), use the 'smallWidth' dialog style\n // otherwise, check for small height to apply 'smallWidth' or 'desktop' styles accordingly\n const baseStyle = isSmallWidth ? styles.baseStyleSmallWidth : styles.baseStyleDesktop;\n\n // content should scroll depending on the viewport height\n // on large screens, the header and footer should be \"sticky\",\n // at small viewport heights, the entire content should be scrollable\n const contentStyle = isSmallHeight\n ? styles.dialogContentStyleNoShrink\n : styles.dialogContentStyle;\n\n const bodyStyle = classNames([\n styles.dialogBodyStyle,\n isSmallWidth ? styles.dialogBodyStyleSmall : styles.dialogBodyStyleDesktop\n ]);\n\n const footerStyle = classNames([\n styles.dialogFooterStyle,\n isSmallWidth ? styles.dialogFooterStyleSmall : styles.dialogFooterStyleDesktop\n ]);\n\n const visibilityStyle =\n visibility === 'visible' ? styles.visibilityVisible : styles.visibilityHidden;\n\n const testIdProps = useTestId(testId);\n\n return (\n <FocusTrap restoreFocusRef={false}>\n <div\n ref={mergedRef}\n tabIndex={-1}\n className={classNames([styleClasses, baseStyle, visibilityStyle, globalImages])}\n style={style}\n onKeyDown={onKeyDown}\n role={role}\n aria-labelledby={ariaLabelledBy}\n aria-describedby={ariaDescribedBy}\n {...testIdProps}>\n <div className={styles.dialogContainerStyle}>\n <StyledDialogHeader\n id={labelId}\n onClose={onClose}\n headerDecoration={headerDecoration}\n cancelBehavior={cancelBehavior}\n closeButtonRef={closeButtonRef}\n draggableProps={draggableProps}>\n {header}\n </StyledDialogHeader>\n <div className={contentStyle} ref={bodyRef}>\n {children ? <div className={bodyStyle}>{children}</div> : null}\n </div>\n <StyledDialogFooter ref={footerRef} style={footerStyle}>\n {footer}\n </StyledDialogFooter>\n </div>\n {isResizable && (\n <Resizable\n onResizeStart={onResizeStart}\n onResize={onResize}\n onResizeEnd={onResizeEnd}\n containerRef={containerRef}\n constraints={sizeConstraints.current}></Resizable>\n )}\n </div>\n </FocusTrap>\n );\n }\n);\n\n// main Dialog component\n\n/**\n * WAI-ARIA-compliant dialog component. A dialog is a floating window that typically contains\n * a title bar and a content area.\n * The dialog is generally placed on top of the rest of the page content. It can be either modal\n * (only the content in the dialog can be interacted with) or non-modal (it's still possible\n * to interact with content outside of the dialog).\n */\nexport const Dialog = forwardRef(\n (\n {\n children,\n isOpen,\n header = '',\n footer,\n modality = 'modal',\n launcherRef,\n anchorRef,\n autoFocusRef,\n placement,\n offset = 0,\n cancelBehavior = 'none',\n dragAffordance = 'none',\n resizeBehavior = 'none',\n headerDecoration = 'on',\n onDragStart,\n onDragMove,\n onDragEnd,\n onResizeStart,\n onResize,\n onResizeEnd,\n onFocusSet,\n onClose,\n onTransitionEnd,\n role = 'dialog',\n 'aria-labelledby': ariaLabelledBy,\n 'aria-describedby': ariaDescribedBy,\n testId,\n ...props\n }: DialogProps,\n ref: ForwardedRef<HTMLDivElement | null>\n ) => {\n const [status, _setStatus] = useState<Status>(isOpen ? 'initial' : 'unmounted');\n const _status = useRef<Status>(isOpen ? 'initial' : 'unmounted');\n const setStatus = (s: Status) => {\n _status.current = s;\n _setStatus(s);\n };\n\n const [visibility, setVisibility] = useState<VisibilityStatus>('hidden');\n\n const prevStatusRef = useRef<Status>('unmounted');\n\n const floatingRef = useRef<HTMLDivElement>(null);\n const contentWrapperRef = useRef<HTMLDivElement | null>(null);\n const localLauncherRef = useRef<HTMLElement | null>(null);\n const closeButtonRef = useRef<HTMLDivElement>(null);\n const bodyRef = useRef<HTMLDivElement>(null);\n const footerRef = useRef<HTMLDivElement | null>(null);\n\n const isSmallWidth = !useBreakpoints()['md'];\n const derivedPlacement = isSmallWidth ? 'bottom' : placement ? placement : 'center';\n const animationType = isSmallWidth\n ? status === 'opening'\n ? 'slideUp'\n : 'slideDown'\n : status === 'opening'\n ? 'zoomIn'\n : 'zoomOut';\n\n const uniqueId = useId();\n const labelId = ariaLabelledBy ? ariaLabelledBy : uniqueId;\n\n const interpolations = [...Object.values(dimensionInterpolations)];\n const styleInterpolations = mergeInterpolations<DimensionProps>(interpolations);\n const { ...styles } = styleInterpolations(props);\n const shouldReturnFocus = useRef<boolean>(false);\n\n const setInitialFocus = useCallback(() => {\n // Initial focus policy doc:\n // The first :tabbable element within the dialog body\n // The first :tabbable element within the dialog footer\n // The dialog's close button\n // The dialog itself\n if (autoFocusRef && autoFocusRef.current) {\n focusOn(autoFocusRef.current);\n } else if (bodyRef.current && allTabbableElements(bodyRef.current).length > 0) {\n // The first :tabbable element within the dialog body\n focusWithin(bodyRef.current);\n } else if (footerRef.current && allTabbableElements(footerRef.current).length > 0) {\n // The first :tabbable element within the dialog footer\n focusWithin(footerRef.current);\n } else if (closeButtonRef.current && allTabbableElements(closeButtonRef.current).length > 0) {\n // The dialog's close button\n focusWithin(closeButtonRef.current);\n } else {\n // The dialog itself\n focusWithin(contentWrapperRef.current as HTMLElement);\n }\n onFocusSet?.();\n }, [autoFocusRef, onFocusSet]);\n\n const returnFocus = useCallback((): void => {\n const launcherEl = localLauncherRef.current;\n\n if (shouldReturnFocus.current && launcherEl) {\n focusOn(launcherEl);\n shouldReturnFocus.current = false;\n }\n }, []);\n\n // Animation\n const { nodeRef } = useAnimation<Animations, HTMLDivElement>(animationType, {\n animationStates,\n isAnimatedOnMount: true,\n onAnimationEnd: () => {\n if (isOpen) {\n onTransitionEnd?.(true);\n } else if (!isOpen) {\n // Should return focus?\n // Modeless: check whether Dialog contains focus before it unmounts\n // Modal: always return focus\n shouldReturnFocus.current =\n contentWrapperRef.current?.contains(getActiveElement() as HTMLElement) || false;\n nodeRef(null);\n setVisibility('hidden');\n setStatus('unmounted');\n onTransitionEnd?.(false);\n }\n }\n });\n\n const mergedRef = useMemo(() => mergeRefs(contentWrapperRef, ref), [contentWrapperRef, ref]);\n\n const launcherKeyDownCallback = useCallback(\n (event: KeyboardEvent): void => {\n if (localLauncherRef.current === getActiveElement() && event.code === 'F6') {\n // Prevent default F6 handlers.\n // F6 is a standard Chrome address bar shortcut on Windows.\n event.preventDefault();\n event.stopPropagation();\n\n focusWithin(contentWrapperRef.current as HTMLElement);\n onFocusSet?.();\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [modality]\n );\n\n const { draggableProps } = useDraggable({\n isDisabled: dragAffordance === 'none',\n containerRef: floatingRef,\n onDragStart,\n onDragMove,\n onDragEnd\n });\n\n useEffect(() => {\n // 1. Ignore status update on initial render or return focus on component unmount\n if (status === 'unmounted' && !isOpen) {\n if (status !== prevStatusRef.current) {\n returnFocus();\n }\n }\n\n // 2. Mount visually hidden component\n // Component gets mounted, but will be visually hidden to avoid flickering\n // Flickering happens because it gets rendered before animation hook repositions\n // it in next render cycle\n else if (status === 'unmounted' && isOpen) {\n setStatus('initial');\n }\n\n // 3. Setup animation\n // Component has been mounted.\n // We will kick out animation as node is already present in DOM.\n // To avoid flickering, we still keep it visually hidden until the next render cycle.\n else if (status === 'initial' && isOpen) {\n nodeRef(contentWrapperRef.current);\n setStatus('opening');\n }\n\n // 3. Unhide component. It becomes visible.\n else if (status === 'opening' && isOpen) {\n setVisibility('visible');\n }\n\n // 4. Closing\n else if (!isOpen && _status.current !== 'unmounted') {\n setStatus('closing');\n }\n\n return () => {\n // remember the previous status\n prevStatusRef.current = status;\n };\n }, [isOpen, status, nodeRef, returnFocus]);\n\n // Destroy case handler\n useEffect(() => {\n return () => {\n const launcherEl = localLauncherRef.current;\n if (\n // eslint-disable-next-line react-hooks/exhaustive-deps\n (contentWrapperRef.current?.contains(getActiveElement() as HTMLElement) || false) &&\n launcherEl\n ) {\n // In destroy case ModalManager is blocking returning of the focus.\n // We need to reschedule it to workaround that\n setTimeout(() => {\n focusOn(launcherEl);\n }, 0);\n }\n };\n }, []);\n\n // Initialize launcher\n useEffect(() => {\n if (isOpen) {\n localLauncherRef.current = _getLauncherElement(launcherRef);\n\n // Register F6 key handler to enter a modeless dialog\n if (modality === 'modeless') {\n localLauncherRef.current?.addEventListener('keydown', launcherKeyDownCallback);\n }\n }\n return () => {\n // Deregister F6 key handler\n if (modality === 'modeless') {\n localLauncherRef.current?.removeEventListener('keydown', launcherKeyDownCallback);\n }\n };\n }, [isOpen, launcherRef, launcherKeyDownCallback, modality]);\n\n // setInitialFocus when the dialog becomes visible\n useEffect(() => {\n if (visibility === 'visible') {\n setInitialFocus();\n }\n }, [visibility, setInitialFocus]);\n\n const handleKeyDown = (event: KeyboardEvent) => {\n switch (event.code) {\n case 'Escape':\n onClose?.({ reason: 'escapeKey' });\n break;\n case 'F6':\n // Focus launcher\n if (localLauncherRef.current && modality === 'modeless') {\n focusOn(localLauncherRef.current);\n }\n // Prevent default F6 handlers. F6 is a standard Chrome address bar shortcut on Windows.\n event.preventDefault();\n event.stopPropagation();\n break;\n }\n };\n\n const handleBackdropClick = () => {\n // in case of a backdrop click, move focus to dialog's root element\n contentWrapperRef.current?.focus();\n };\n\n const renderDialogContent = () => {\n return (\n <StyledDialog\n ref={mergedRef}\n labelId={labelId}\n header={header}\n footer={footer}\n role={role}\n ariaLabelledBy={labelId}\n ariaDescribedBy={ariaDescribedBy}\n onKeyDown={handleKeyDown}\n testId={testId}\n style={styles}\n visibility={visibility}\n cancelBehavior={cancelBehavior}\n draggableProps={draggableProps}\n isResizable={resizeBehavior === 'resizable'}\n headerDecoration={headerDecoration}\n containerRef={floatingRef}\n onClose={onClose}\n onResizeStart={onResizeStart}\n onResize={onResize}\n onResizeEnd={onResizeEnd}\n closeButtonRef={closeButtonRef}\n bodyRef={bodyRef}\n footerRef={footerRef}>\n {children}\n </StyledDialog>\n );\n };\n\n const renderDialog = () => {\n if (anchorRef && anchorRef.current) {\n return (\n <Floating\n ref={floatingRef}\n anchorRef={anchorRef}\n placement={'bottom-start'}\n flipOptions={{ mainAxis: false, crossAxis: false }}\n shiftOptions={{ mainAxis: false, crossAxis: false }}>\n {renderDialogContent()}\n </Floating>\n );\n } else {\n return (\n <WindowOverlay placement={derivedPlacement} offset={offset}>\n {renderDialogContent()}\n </WindowOverlay>\n );\n }\n };\n\n const logicalLauncherRef = launcherRef as LogicalParentRef;\n\n if (modality === 'modal') {\n return (\n <LogicalParentRefContext.Provider value={logicalLauncherRef}>\n <Modal isOpen={status !== 'unmounted'} onBackdropClick={handleBackdropClick}>\n {renderDialog()}\n </Modal>\n </LogicalParentRefContext.Provider>\n );\n } else {\n return status !== 'unmounted' ? (\n <Layer logicalParentRef={logicalLauncherRef}>{renderDialog()}</Layer>\n ) : null;\n }\n }\n);\n\nfunction _getLauncherElement(launcherRef: DialogProps['launcherRef']) {\n const launcher = launcherRef?.current;\n\n if (launcher) {\n const launcherElement = launcher instanceof Element ? launcher : launcher[UNSAFE_DOM_ACCESS];\n\n if (document.body.contains(launcherElement)) {\n return launcherElement;\n }\n }\n\n return getActiveElement() as HTMLElement;\n}\n\nconst animationStates = {\n zoomIn: {\n from: {\n scaleX: 0.9,\n scaleY: 0.9,\n transformOrigin: 'center',\n opacity: 0\n },\n to: {\n scaleX: 1,\n scaleY: 1,\n opacity: 1\n },\n options: {\n duration: 200\n }\n },\n zoomOut: {\n from: {\n scaleX: 1,\n scaleY: 1,\n transformOrigin: 'center',\n opacity: 1\n },\n to: {\n scaleX: 0.9,\n scaleY: 0.9,\n opacity: 0\n },\n options: {\n duration: 200\n }\n },\n slideUp: {\n ...SLIDE_UP_XLARGE,\n options: {\n duration: DURATION_LARGE\n }\n },\n slideDown: {\n ...SLIDE_DOWN_XLARGE,\n options: {\n duration: DURATION_LARGE\n }\n }\n};\n"],"names":["_jsx","_Fragment","CloseIcon","_jsxs"],"mappings":"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"}
1
+ {"version":3,"file":"Dialog-83368f52.js","sources":["../../src/UNSAFE_Dialog/Dialog.tsx"],"sourcesContent":["import type { ComponentChild, RefObject, JSX } from 'preact';\nimport { ForwardedRef, forwardRef } from 'preact/compat';\nimport { Offset, WindowOverlay, WindowOverlayPlacement } from '../UNSAFE_WindowOverlay';\nimport { TestIdProps, useTestId } from '../hooks/UNSAFE_useTestId';\nimport { useAnimation } from '../hooks/UNSAFE_useAnimation';\nimport { useEffect, useRef, useCallback, useMemo, useState } from 'preact/hooks';\nimport { mergeRefs } from '../utils/PRIVATE_refUtils';\n\nimport { DialogRedwoodTheme } from './themes/redwood/DialogTheme';\nimport { DialogStyles } from './themes/DialogStyles.css';\nimport { FocusTrap } from '../UNSAFE_FocusTrap';\nimport type { UnpackSignals } from '@oracle/oraclejet-internal-utilities/attributeUtils';\nimport { Layer } from '../UNSAFE_Layer';\nimport { Modal } from '../UNSAFE_Modal';\nimport { LogicalParentRef, LogicalParentRefContext } from '../UNSAFE_Layer/LogicalParentRefContext';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { globalImages } from '#/ImageVars.css';\nimport { useComponentTheme } from '../hooks/UNSAFE_useComponentTheme';\nimport { useId } from '../hooks/UNSAFE_useId';\nimport { dimensionInterpolations, DimensionProps } from '../utils/UNSAFE_interpolations/dimensions';\nimport { mergeInterpolations } from '../utils/UNSAFE_mergeInterpolations';\nimport { useResizeObserver } from '../hooks/UNSAFE_useResizeObserver';\n\nimport { DraggableProps, useDraggable } from '../hooks/PRIVATE_useDraggable';\nimport { Floating, Coords } from '../UNSAFE_Floating';\nimport { IconButton } from '../UNSAFE_IconButton';\nimport { CloseIcon } from '../PRIVATE_ThemedIcons/CloseIcon';\nimport { Resizable, ResizableConstraints } from '../PRIVATE_Resizable/Resizable';\nimport { Position, Rect } from '../utils/UNSAFE_flexibleComponentUtils';\nimport { useBreakpoints } from '../hooks/UNSAFE_useBreakpoints';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport { BundleType } from '../resources/nls/bundle';\nimport {\n SLIDE_DOWN_XLARGE,\n SLIDE_UP_XLARGE,\n DURATION_LARGE\n} from '../utils/PRIVATE_animationUtils';\nimport {\n allTabbableElements,\n focusOn,\n focusWithin,\n getActiveElement\n} from '../utils/PRIVATE_tabbableUtils';\n\nimport type { UnsafeDomHandle } from '#utils/UNSAFE_unsafeDomAccess';\nimport { UNSAFE_DOM_ACCESS } from '#utils/UNSAFE_unsafeDomAccess';\n\n// dialog states\ntype Status = 'initial' | 'opening' | 'closing' | 'unmounted';\ntype VisibilityStatus = 'hidden' | 'visible';\ntype Animations = 'zoomIn' | 'zoomOut' | 'slideUp' | 'slideDown';\n\ntype IntrinsicProps = Pick<UnpackSignals<JSX.IntrinsicElements['div']>, 'children' | 'role'>;\n\ntype OnCloseDetail = {\n /**\n * reason for closing the dialog\n */\n reason: 'escapeKey' | 'icon';\n};\n\nexport type CancelBehavior = 'none' | 'escape' | 'icon';\n\ntype DialogProps = IntrinsicProps &\n DimensionProps & {\n /**\n * Optional ref for an element to focus on when component mounts\n */\n autoFocusRef?: RefObject<{ focus: () => void }>;\n\n /**\n * On Close callback.\n */\n onClose?: (detail: OnCloseDetail) => void;\n\n /**\n * On opening or closing transition end callback.\n */\n onTransitionEnd?: (value: boolean) => void;\n\n /**\n * Determines whether the Dialog is open.\n */\n isOpen: boolean;\n\n /**\n * Dialog header content. Can be a string or VNode (Component Child).\n * <p>\n * When a plain string is passed, it will be used as the dialog title. Otherwise, the prop value\n * will be used as the header content.\n * </p>\n * <p>\n * Dialog will automatically refer to the header content as the accessible label.\n * The user can override this behavior by specifying the <code>aria-labelledby</code> property\n * and setting its value as needed.\n * </p>\n */\n header?: ComponentChild;\n\n /**\n * Dialog footer content.\n */\n footer?: ComponentChild;\n\n /**\n * Determines dialog modality. Default is 'modal'.\n */\n modality?: 'modal' | 'modeless';\n\n /**\n * Specifies dialog's cancel behavior. Default is 'none'.\n */\n cancelBehavior?: CancelBehavior;\n\n /**\n * Specifies dialog's launcher. After dialog closes, it returns focus to the launcher.\n * If not specified, focus goes back to the last active element before dialog opened.\n */\n launcherRef?: RefObject<HTMLElement | UnsafeDomHandle<HTMLElement>>;\n\n /**\n * Specifies dialog's anchor. Dialog is placed relative to its anchor. If not specified,\n * it is placed relatively to window.\n */\n anchorRef?: RefObject<Element | Coords>;\n\n /**\n * Determines placement of the dialog relative to the viewport.\n * Supported values are:\n * <p> <code>center</code>, <code>top</code>, <code>top-start</code>, <code>top-end</code>,\n * <code>end</code>, <code>end-top</code>, <code>end-bottom</code>,\n * <code>bottom</code>, <code>bottom-start</code>, <code>bottom-end</code>,\n * <code>start</code>, <code>start-top</code>, <code>start-bottom</code>\n * </p>\n * Default is <code>center</code>.\n */\n placement?: WindowOverlayPlacement;\n\n /**\n * Determines the offset of the Dialog from its core placement along the specified axes.\n *\n * Offset could be a number or an object\n *\n * An object has the following type:\n * <pre>\n * {\n * mainAxis?: number;\n * crossAxis?: number;\n * }\n * </pre>\n * For the <code>center</code> placement the convention for the offset type is that mainAxis defines\n * offset from the top, crossAxis defines offset from the left side of the view port.\n *\n * A number is a shortcut for setting the mainAxis.\n */\n offset?: Offset;\n\n /**\n * Determines if the Dialog should be sensitive to drag gestures. To create a draggable dialog,\n * set <code>dragAffordance='header'</code> and specify the <code>onDragMove</code> handler.\n */\n dragAffordance?: 'none' | 'header';\n\n /**\n * Determines if the Dialog should support resizing. To create a resizable dialog,\n * set <code>resizeBehavior='resizable'</code> and specify the <code>onResize</code> handler.\n */\n resizeBehavior?: 'none' | 'resizable';\n\n /**\n * Callback to be invoked if <code>dragAffordance</code> is set to <code>header</code> and a drag gesture is initiated.\n * The current position is reported in the <code>pos</code> parameter.\n *\n * @param pos\n */\n onDragStart?: (pos: Position) => void;\n\n /**\n * Callback to be invoked if <code>dragAffordance</code> is set to <code>header</code> and a drag gesture is detected.\n * The current position is reported in the <code>pos</code> parameter.\n *\n * @param pos\n */\n onDragMove?: (pos: Position) => void;\n\n /**\n * Callback to be invoked if <code>dragAffordance</code> is set to <code>header</code> and a drag gesture is completed.\n * The current position is reported in the <code>pos</code> parameter.\n *\n * @param pos\n */\n onDragEnd?: (pos: Position) => void;\n\n /**\n * Callback to be invoked if <code>resizeBehavior</code> is set to <code>resizable</code> and\n * a resize gesture is initiated. The current position and dimensions are reported in the\n * <code>rect</code> parameter.\n *\n * @param rect\n */\n onResizeStart?: (rect: Rect) => void;\n\n /**\n * Callback to be invoked if <code>resizeBehavior</code> is set to <code>resizable</code> and\n * a resize gesture is detected. The current position and dimensions are reported in the\n * <code>rect</code> parameter.\n *\n * @param rect\n */\n onResize?: (rect: Rect) => void;\n\n /**\n * Callback to be invoked if <code>resizeBehavior</code> is set to <code>resizable</code> and\n * a resize gesture is completed. The current position and dimensions are reported in the\n * <code>rect</code> parameter.\n *\n * @param rect\n */\n onResizeEnd?: (rect: Rect) => void;\n\n /**\n * Specifies callback triggered when initial focus is set or when a modeless dialog receives focus\n * via the F6 key.\n */\n onFocusSet?: () => void;\n\n /**\n * Determines if the header decoration should be displayed. The default is <code>on</code>\n * which renders a textured strip at the top of the dialog header in the Redwood theme.\n * If set to <code>off</code>, no decoration is rendered.\n */\n headerDecoration?: 'off' | 'on';\n\n /**\n * Specifies the ARIA role type. Depending on how the dialog is used in the page, the developer\n * should choose from the following:\n * <ul>\n * <li><code>dialog</code> defines an application window that is designed to interrupt the current\n * processing of an application in order to prompt the user to enter information or require\n * a response.</li>\n * <li><code>alertdialog</code> defines type of dialog that contains an alert message, where initial\n * focus goes to an element within the dialog.</li>\n * </ul>\n */\n role?: string;\n\n /**\n * Optional <code>aria-labelledby</code> property referring to the content to be used as Dialog's\n * accessible <label htmlFor=\"\" className=\"\"></label>\n * If not specified, the Dialog will automatically refer to the entire header content as the accessible label.\n */\n 'aria-labelledby'?: string;\n\n /**\n * Optional accessible description for the dialog.\n */\n 'aria-describedby'?: string;\n } & TestIdProps;\n\n// dialog header\ntype DialogHeaderProps = Pick<DialogProps, 'children'> & {\n id?: string;\n closeButtonRef?: RefObject<HTMLDivElement>;\n cancelBehavior?: CancelBehavior;\n onClose?: (detail: OnCloseDetail) => void;\n draggableProps?: DraggableProps;\n headerDecoration?: 'off' | 'on';\n};\n\nconst StyledDialogHeader = ({\n children,\n id,\n closeButtonRef,\n cancelBehavior,\n onClose,\n draggableProps,\n headerDecoration = 'on'\n}: DialogHeaderProps) => {\n const { styles } = useComponentTheme<never, DialogStyles>(DialogRedwoodTheme);\n\n const isSmallWidth = !useBreakpoints()['md'];\n\n const classes = classNames([\n styles.dialogHeaderStyle,\n isSmallWidth ? styles.dialogHeaderStyleSmall : styles.dialogHeaderStyleDesktop,\n ...(headerDecoration === 'on' ? [styles.dialogHeaderDecorationStyle] : [])\n ]);\n\n const content: ComponentChild =\n typeof children === 'string' ? (\n <h1 id={id} className={styles.dialogTitleStyle}>\n {children}\n </h1>\n ) : (\n <>{children}</>\n );\n\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n const handleIconClose = () => {\n onClose?.({ reason: 'icon' });\n };\n\n const closeIcon: ComponentChild =\n cancelBehavior === 'icon' ? (\n <div>\n <div className={styles.dialogHeaderCloseIconStyle} ref={closeButtonRef}>\n <IconButton\n aria-label={translations.message_close()}\n size=\"sm\"\n variant=\"ghost\"\n onAction={handleIconClose}>\n <CloseIcon />\n </IconButton>\n </div>\n </div>\n ) : null;\n\n return (\n <div className={classes} {...draggableProps}>\n {content}\n {closeIcon}\n </div>\n );\n};\n\n// dialog footer\n\ntype DialogFooterProps = Pick<DialogProps, 'children'> & {\n style?: string;\n};\n\nconst StyledDialogFooter = forwardRef(\n ({ children, style }: DialogFooterProps, ref: ForwardedRef<HTMLDivElement | null>) => {\n return (\n <div ref={ref} className={style}>\n {children}\n </div>\n );\n }\n);\n\n// styled dialog\n\ntype MainProps = Pick<DialogProps, 'children' | 'header' | 'footer' | 'role'> &\n Pick<UnpackSignals<JSX.IntrinsicElements['div']>, 'style' | 'onKeyDown'> & {\n visibility: VisibilityStatus;\n labelId?: string;\n ariaLabelledBy?: string;\n ariaDescribedBy?: string;\n cancelBehavior?: CancelBehavior;\n draggableProps?: DraggableProps;\n isResizable?: boolean;\n headerDecoration?: 'off' | 'on';\n containerRef?: RefObject<HTMLElement>;\n onClose?: (detail: OnCloseDetail) => void;\n onResizeStart?: (rect: Rect) => void;\n onResize?: (rect: Rect) => void;\n onResizeEnd?: (rect: Rect) => void;\n closeButtonRef?: RefObject<HTMLDivElement>;\n bodyRef?: RefObject<HTMLDivElement>;\n footerRef?: RefObject<HTMLDivElement | null>;\n } & TestIdProps;\n\nconst StyledDialog = forwardRef(\n (\n {\n children,\n header,\n footer,\n visibility,\n labelId,\n role,\n ariaLabelledBy,\n ariaDescribedBy,\n cancelBehavior,\n draggableProps,\n isResizable,\n headerDecoration,\n containerRef,\n onClose,\n onResizeStart,\n onResize,\n onResizeEnd,\n onKeyDown,\n testId,\n style,\n closeButtonRef,\n bodyRef,\n footerRef\n }: MainProps,\n ref: ForwardedRef<HTMLDivElement | null>\n ) => {\n const elementRef = useRef<HTMLDivElement>(null);\n const mergedRef = mergeRefs(ref, elementRef);\n\n // computed dialog dimension limits\n const sizeConstraints = useRef<ResizableConstraints>();\n\n const [isSmallHeight, setSmallHeight] = useState<boolean>(false);\n const isSmallWidth = !useBreakpoints()['md'];\n\n const { classes: styleClasses, styles } = useComponentTheme<never, DialogStyles>(\n DialogRedwoodTheme\n );\n\n const resizeHandler = useCallback(() => {\n if (elementRef.current) {\n if (elementRef.current.clientHeight < 400) {\n setSmallHeight(true);\n } else {\n setSmallHeight(false);\n }\n if (elementRef.current) {\n const cs = window.getComputedStyle(elementRef.current);\n sizeConstraints.current = {\n minHeight: parseFloat(cs.minHeight),\n maxHeight: parseFloat(cs.maxHeight),\n minWidth: parseFloat(cs.minWidth),\n maxWidth: parseFloat(cs.maxWidth)\n };\n }\n }\n }, []);\n\n // set initial Height\n useEffect(() => {\n resizeHandler();\n }, [resizeHandler]);\n\n useResizeObserver(elementRef, resizeHandler);\n\n // for small widths (mobile), use the 'smallWidth' dialog style\n // otherwise, check for small height to apply 'smallWidth' or 'desktop' styles accordingly\n const baseStyle = isSmallWidth ? styles.baseStyleSmallWidth : styles.baseStyleDesktop;\n\n // content should scroll depending on the viewport height\n // on large screens, the header and footer should be \"sticky\",\n // at small viewport heights, the entire content should be scrollable\n const contentStyle = isSmallHeight\n ? styles.dialogContentStyleNoShrink\n : styles.dialogContentStyle;\n\n const bodyStyle = classNames([\n styles.dialogBodyStyle,\n isSmallWidth ? styles.dialogBodyStyleSmall : styles.dialogBodyStyleDesktop\n ]);\n\n const footerStyle = classNames([\n styles.dialogFooterStyle,\n isSmallWidth ? styles.dialogFooterStyleSmall : styles.dialogFooterStyleDesktop\n ]);\n\n const visibilityStyle =\n visibility === 'visible' ? styles.visibilityVisible : styles.visibilityHidden;\n\n const testIdProps = useTestId(testId);\n\n return (\n <FocusTrap restoreFocusRef={false}>\n <div\n ref={mergedRef}\n tabIndex={-1}\n className={classNames([styleClasses, baseStyle, visibilityStyle, globalImages])}\n style={style}\n onKeyDown={onKeyDown}\n role={role}\n aria-labelledby={ariaLabelledBy}\n aria-describedby={ariaDescribedBy}\n {...testIdProps}>\n <div className={styles.dialogContainerStyle}>\n <StyledDialogHeader\n id={labelId}\n onClose={onClose}\n headerDecoration={headerDecoration}\n cancelBehavior={cancelBehavior}\n closeButtonRef={closeButtonRef}\n draggableProps={draggableProps}>\n {header}\n </StyledDialogHeader>\n <div className={contentStyle} ref={bodyRef}>\n {children ? <div className={bodyStyle}>{children}</div> : null}\n </div>\n <StyledDialogFooter ref={footerRef} style={footerStyle}>\n {footer}\n </StyledDialogFooter>\n </div>\n {isResizable && (\n <Resizable\n onResizeStart={onResizeStart}\n onResize={onResize}\n onResizeEnd={onResizeEnd}\n containerRef={containerRef}\n constraints={sizeConstraints.current}></Resizable>\n )}\n </div>\n </FocusTrap>\n );\n }\n);\n\n// main Dialog component\n\n/**\n * WAI-ARIA-compliant dialog component. A dialog is a floating window that typically contains\n * a title bar and a content area.\n * The dialog is generally placed on top of the rest of the page content. It can be either modal\n * (only the content in the dialog can be interacted with) or non-modal (it's still possible\n * to interact with content outside of the dialog).\n */\nexport const Dialog = forwardRef(\n (\n {\n children,\n isOpen,\n header = '',\n footer,\n modality = 'modal',\n launcherRef,\n anchorRef,\n autoFocusRef,\n placement,\n offset = 0,\n cancelBehavior = 'none',\n dragAffordance = 'none',\n resizeBehavior = 'none',\n headerDecoration = 'on',\n onDragStart,\n onDragMove,\n onDragEnd,\n onResizeStart,\n onResize,\n onResizeEnd,\n onFocusSet,\n onClose,\n onTransitionEnd,\n role = 'dialog',\n 'aria-labelledby': ariaLabelledBy,\n 'aria-describedby': ariaDescribedBy,\n testId,\n ...props\n }: DialogProps,\n ref: ForwardedRef<HTMLDivElement | null>\n ) => {\n const [status, _setStatus] = useState<Status>(isOpen ? 'initial' : 'unmounted');\n const _status = useRef<Status>(isOpen ? 'initial' : 'unmounted');\n const setStatus = (s: Status) => {\n _status.current = s;\n _setStatus(s);\n };\n\n const [visibility, setVisibility] = useState<VisibilityStatus>('hidden');\n\n const prevStatusRef = useRef<Status>('unmounted');\n\n const floatingRef = useRef<HTMLDivElement>(null);\n const contentWrapperRef = useRef<HTMLDivElement | null>(null);\n const localLauncherRef = useRef<HTMLElement | null>(null);\n const closeButtonRef = useRef<HTMLDivElement>(null);\n const bodyRef = useRef<HTMLDivElement>(null);\n const footerRef = useRef<HTMLDivElement | null>(null);\n\n const isSmallWidth = !useBreakpoints()['md'];\n const derivedPlacement = isSmallWidth ? 'bottom' : placement ? placement : 'center';\n const animationType = isSmallWidth\n ? status === 'opening'\n ? 'slideUp'\n : 'slideDown'\n : status === 'opening'\n ? 'zoomIn'\n : 'zoomOut';\n\n const uniqueId = useId();\n const labelId = ariaLabelledBy ? ariaLabelledBy : uniqueId;\n\n const interpolations = [...Object.values(dimensionInterpolations)];\n const styleInterpolations = mergeInterpolations<DimensionProps>(interpolations);\n const { ...styles } = styleInterpolations(props);\n const shouldReturnFocus = useRef<boolean>(false);\n\n const setInitialFocus = useCallback(() => {\n // Initial focus policy doc:\n // The first :tabbable element within the dialog body\n // The first :tabbable element within the dialog footer\n // The dialog's close button\n // The dialog itself\n if (autoFocusRef && autoFocusRef.current) {\n focusOn(autoFocusRef.current);\n } else if (bodyRef.current && allTabbableElements(bodyRef.current).length > 0) {\n // The first :tabbable element within the dialog body\n focusWithin(bodyRef.current);\n } else if (footerRef.current && allTabbableElements(footerRef.current).length > 0) {\n // The first :tabbable element within the dialog footer\n focusWithin(footerRef.current);\n } else if (closeButtonRef.current && allTabbableElements(closeButtonRef.current).length > 0) {\n // The dialog's close button\n focusWithin(closeButtonRef.current);\n } else {\n // The dialog itself\n focusWithin(contentWrapperRef.current as HTMLElement);\n }\n onFocusSet?.();\n }, [autoFocusRef, onFocusSet]);\n\n const returnFocus = useCallback((): void => {\n const launcherEl = localLauncherRef.current;\n\n if (shouldReturnFocus.current && launcherEl) {\n focusOn(launcherEl);\n shouldReturnFocus.current = false;\n }\n }, []);\n\n // Animation\n const { nodeRef } = useAnimation<Animations, HTMLDivElement>(animationType, {\n animationStates,\n isAnimatedOnMount: true,\n onAnimationEnd: () => {\n if (isOpen) {\n onTransitionEnd?.(true);\n } else if (!isOpen) {\n // Should return focus?\n // Modeless: check whether Dialog contains focus before it unmounts\n // Modal: always return focus\n shouldReturnFocus.current =\n contentWrapperRef.current?.contains(getActiveElement() as HTMLElement) || false;\n nodeRef(null);\n setVisibility('hidden');\n setStatus('unmounted');\n onTransitionEnd?.(false);\n }\n }\n });\n\n const mergedRef = useMemo(() => mergeRefs(contentWrapperRef, ref), [contentWrapperRef, ref]);\n\n const launcherKeyDownCallback = useCallback(\n (event: KeyboardEvent): void => {\n if (localLauncherRef.current === getActiveElement() && event.code === 'F6') {\n // Prevent default F6 handlers.\n // F6 is a standard Chrome address bar shortcut on Windows.\n event.preventDefault();\n event.stopPropagation();\n\n focusWithin(contentWrapperRef.current as HTMLElement);\n onFocusSet?.();\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [modality]\n );\n\n const { draggableProps } = useDraggable({\n isDisabled: dragAffordance === 'none',\n containerRef: floatingRef,\n onDragStart,\n onDragMove,\n onDragEnd\n });\n\n useEffect(() => {\n // 1. Ignore status update on initial render or return focus on component unmount\n if (status === 'unmounted' && !isOpen) {\n if (status !== prevStatusRef.current) {\n returnFocus();\n }\n }\n\n // 2. Mount visually hidden component\n // Component gets mounted, but will be visually hidden to avoid flickering\n // Flickering happens because it gets rendered before animation hook repositions\n // it in next render cycle\n else if (status === 'unmounted' && isOpen) {\n setStatus('initial');\n }\n\n // 3. Setup animation\n // Component has been mounted.\n // We will kick out animation as node is already present in DOM.\n // To avoid flickering, we still keep it visually hidden until the next render cycle.\n else if (status === 'initial' && isOpen) {\n nodeRef(contentWrapperRef.current);\n setStatus('opening');\n }\n\n // 3. Unhide component. It becomes visible.\n else if (status === 'opening' && isOpen) {\n setVisibility('visible');\n }\n\n // 4. Closing\n else if (!isOpen && _status.current !== 'unmounted') {\n setStatus('closing');\n }\n\n return () => {\n // remember the previous status\n prevStatusRef.current = status;\n };\n }, [isOpen, status, nodeRef, returnFocus]);\n\n // Destroy case handler\n useEffect(() => {\n return () => {\n const launcherEl = localLauncherRef.current;\n if (\n // eslint-disable-next-line react-hooks/exhaustive-deps\n (contentWrapperRef.current?.contains(getActiveElement() as HTMLElement) || false) &&\n launcherEl\n ) {\n // In destroy case ModalManager is blocking returning of the focus.\n // We need to reschedule it to workaround that\n setTimeout(() => {\n focusOn(launcherEl);\n }, 0);\n }\n };\n }, []);\n\n // Initialize launcher\n useEffect(() => {\n if (isOpen) {\n localLauncherRef.current = _getLauncherElement(launcherRef);\n\n // Register F6 key handler to enter a modeless dialog\n if (modality === 'modeless') {\n localLauncherRef.current?.addEventListener('keydown', launcherKeyDownCallback);\n }\n }\n return () => {\n // Deregister F6 key handler\n if (modality === 'modeless') {\n localLauncherRef.current?.removeEventListener('keydown', launcherKeyDownCallback);\n }\n };\n }, [isOpen, launcherRef, launcherKeyDownCallback, modality]);\n\n // setInitialFocus when the dialog becomes visible\n useEffect(() => {\n if (visibility === 'visible') {\n setInitialFocus();\n }\n }, [visibility, setInitialFocus]);\n\n const handleKeyDown = (event: KeyboardEvent) => {\n switch (event.code) {\n case 'Escape':\n onClose?.({ reason: 'escapeKey' });\n break;\n case 'F6':\n // Focus launcher\n if (localLauncherRef.current && modality === 'modeless') {\n focusOn(localLauncherRef.current);\n }\n // Prevent default F6 handlers. F6 is a standard Chrome address bar shortcut on Windows.\n event.preventDefault();\n event.stopPropagation();\n break;\n }\n };\n\n const handleBackdropClick = () => {\n // in case of a backdrop click, move focus to dialog's root element\n contentWrapperRef.current?.focus();\n };\n\n const renderDialogContent = () => {\n return (\n <StyledDialog\n ref={mergedRef}\n labelId={labelId}\n header={header}\n footer={footer}\n role={role}\n ariaLabelledBy={labelId}\n ariaDescribedBy={ariaDescribedBy}\n onKeyDown={handleKeyDown}\n testId={testId}\n style={styles}\n visibility={visibility}\n cancelBehavior={cancelBehavior}\n draggableProps={draggableProps}\n isResizable={resizeBehavior === 'resizable'}\n headerDecoration={headerDecoration}\n containerRef={floatingRef}\n onClose={onClose}\n onResizeStart={onResizeStart}\n onResize={onResize}\n onResizeEnd={onResizeEnd}\n closeButtonRef={closeButtonRef}\n bodyRef={bodyRef}\n footerRef={footerRef}>\n {children}\n </StyledDialog>\n );\n };\n\n const renderDialog = () => {\n if (anchorRef && anchorRef.current) {\n return (\n <Floating\n ref={floatingRef}\n anchorRef={anchorRef}\n placement={'bottom-start'}\n flipOptions={{ mainAxis: false, crossAxis: false }}\n shiftOptions={{ mainAxis: false, crossAxis: false }}>\n {renderDialogContent()}\n </Floating>\n );\n } else {\n return (\n <WindowOverlay placement={derivedPlacement} offset={offset}>\n {renderDialogContent()}\n </WindowOverlay>\n );\n }\n };\n\n const logicalLauncherRef = launcherRef as LogicalParentRef;\n\n if (modality === 'modal') {\n return (\n <LogicalParentRefContext.Provider value={logicalLauncherRef}>\n <Modal isOpen={status !== 'unmounted'} onBackdropClick={handleBackdropClick}>\n {renderDialog()}\n </Modal>\n </LogicalParentRefContext.Provider>\n );\n } else {\n return status !== 'unmounted' ? (\n <Layer logicalParentRef={logicalLauncherRef}>{renderDialog()}</Layer>\n ) : null;\n }\n }\n);\n\nfunction _getLauncherElement(launcherRef: DialogProps['launcherRef']) {\n const launcher = launcherRef?.current;\n\n if (launcher) {\n const launcherElement = launcher instanceof Element ? launcher : launcher[UNSAFE_DOM_ACCESS];\n\n if (document.body.contains(launcherElement)) {\n return launcherElement;\n }\n }\n\n return getActiveElement() as HTMLElement;\n}\n\nconst animationStates = {\n zoomIn: {\n from: {\n scaleX: 0.9,\n scaleY: 0.9,\n transformOrigin: 'center',\n opacity: 0\n },\n to: {\n scaleX: 1,\n scaleY: 1,\n opacity: 1\n },\n options: {\n duration: 200\n }\n },\n zoomOut: {\n from: {\n scaleX: 1,\n scaleY: 1,\n transformOrigin: 'center',\n opacity: 1\n },\n to: {\n scaleX: 0.9,\n scaleY: 0.9,\n opacity: 0\n },\n options: {\n duration: 200\n }\n },\n slideUp: {\n ...SLIDE_UP_XLARGE,\n options: {\n duration: DURATION_LARGE\n }\n },\n slideDown: {\n ...SLIDE_DOWN_XLARGE,\n options: {\n duration: DURATION_LARGE\n }\n }\n};\n"],"names":["_jsx","_Fragment","CloseIcon","_jsxs"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /* @oracle/oraclejet-preact: undefined */
2
2
  import { a as SvgCaretRight, S as SvgCaretLeft } from './CaretLeft-5c86f5ab.js';
3
- import { w as withDirectionIcon } from './withDirectionIcon-b725a6d7.js';
3
+ import { w as withDirectionIcon } from './withDirectionIcon-a8d84a3d.js';
4
4
 
5
5
  /**
6
6
  * @license
@@ -1,6 +1,6 @@
1
1
  /* @oracle/oraclejet-preact: undefined */
2
2
  import { S as SvgCaretLeft, a as SvgCaretRight } from './CaretLeft-5c86f5ab.js';
3
- import { w as withDirectionIcon } from './withDirectionIcon-b725a6d7.js';
3
+ import { w as withDirectionIcon } from './withDirectionIcon-a8d84a3d.js';
4
4
 
5
5
  /**
6
6
  * @license
@@ -1,17 +1,17 @@
1
1
  /* @oracle/oraclejet-preact: undefined */
2
2
  import { jsx, Fragment } from 'preact/jsx-runtime';
3
3
  import { useRef, useCallback, useEffect } from 'preact/hooks';
4
- import { F as Floating } from './Floating-be4c0cb6.js';
5
- import { L as Layer } from './Layer-6c27170e.js';
4
+ import { F as Floating } from './Floating-4a82db94.js';
5
+ import { L as Layer } from './Layer-535577b5.js';
6
6
  import 'preact/compat';
7
- import './LayerHost-3cf255a6.js';
7
+ import './LayerHost-7931b424.js';
8
8
  import { K as KEYS } from './keyboardUtils-986fe923.js';
9
9
  import { f as focusWithin } from './tabbableUtils-c8311ec6.js';
10
- import { u as usePopupAnimation } from './usePopupAnimation-7c5db425.js';
10
+ import { u as usePopupAnimation } from './usePopupAnimation-96d2bc83.js';
11
11
  import { g as getTransformOrigin } from './popupAnimationUtils-175151d9.js';
12
12
  import { C as CollectionInteractionContext } from './CollectionInteractionContext-7cf19abc.js';
13
13
  import { dropdownStyles } from './UNSAFE_Dropdown/themes/dropdownStyles.css.js';
14
- import { u as useOutsideMousedown } from './useOutsideMousedown-e0866d58.js';
14
+ import { u as useOutsideMousedown } from './useOutsideMousedown-c45c22c0.js';
15
15
  import { m as mergeAnimationStateObjects, D as DURATION_LARGE, b as SCALE_UP_FULL } from './animationUtils-5f409a6c.js';
16
16
  import { U as UNSAFE_DOM_ACCESS } from './unsafeDomAccess-453eb74e.js';
17
17
  import { u as useEffectEvent } from './useEffectEvent-1bb008cb.js';
@@ -315,4 +315,4 @@ function toLogicalParentRef(anchorRef) {
315
315
  }
316
316
 
317
317
  export { Dropdown as D, getNVisible as a, getMenuPointerDown as b, getMenuContainerMouseLeave as c, getMenuContainerFocusMethods as d, getCloseSubmenuEvent as e, getKeyboardCloseProps as f, getPrevNext as g, getLastVisible as h, getIsMobile as i, isMenuChildrenFalsy as j, keyElemExtractor as k, getMenuItemClickChangeKey as l, getOpenSubmenuEvent as m };
318
- //# sourceMappingURL=Dropdown-9d9813a9.js.map
318
+ //# sourceMappingURL=Dropdown-019aba37.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown-9d9813a9.js","sources":["../../src/UNSAFE_Menu/menuUtils.ts","../../src/UNSAFE_Dropdown/Dropdown.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentChildren, ComponentProps } from 'preact';\nimport { getClientHints } from '../utils/PRIVATE_clientHints';\n\nimport { Menu } from './Menu';\n\n/**\n * Returns the key from the item element\n */\nexport const getKey = (item: HTMLElement) => {\n // Key is set on data-oj-menu-item-key on each menuItem. To get this key from the\n // the actual menuItem we need to do a kebab to camel-case conversion.\n return item.dataset['ojMenuItemKey'];\n};\n\n/**\n * A helper function that return the key of the n available item.\n */\nexport const getNVisible = (root: HTMLElement | null, positionIndex: number) => {\n if (root) {\n const items = root.querySelectorAll('[data-oj-menu-item-key]');\n const positionedItem = items[positionIndex] as HTMLElement;\n if (positionedItem) {\n const key = getKey(positionedItem as HTMLElement);\n if (key) {\n return key;\n }\n }\n }\n return null;\n};\n\n/**\n * A helper function that return the key of the last available item.\n */\nexport const getLastVisible = (root: HTMLElement | null) => {\n if (root) {\n const items = root.querySelectorAll('[data-oj-menu-item-key]');\n const lastItem = items[items.length - 1] as HTMLElement;\n if (lastItem) {\n const key = getKey(lastItem as HTMLElement);\n if (key) {\n return key;\n }\n }\n }\n return null;\n};\n\n/**\n * A helper function that returns the key of the previous or the next item\n * given the specified current key\n */\nexport const getPrevNext = (root: HTMLElement | null, isPrev: boolean, currentKey?: string) => {\n return (): string | null => {\n if (root) {\n const items = Array.from(root.querySelectorAll('[data-oj-menu-item-key]')) as HTMLElement[];\n const currentKeyIndex = items.findIndex((item) => getKey(item) === currentKey);\n let nextIndex = currentKeyIndex + (isPrev ? -1 : 1);\n const itemsLastIndex = items.length - 1;\n if (nextIndex < 0) {\n nextIndex = itemsLastIndex;\n }\n if (nextIndex > itemsLastIndex) {\n nextIndex = 0;\n }\n\n const key = getKey(items[nextIndex]);\n return key ? key : null;\n }\n return null;\n };\n};\n\n/**\n * A helper function to get the key from an element\n */\nexport const keyElemExtractor = (\n element: HTMLElement\n): { key: string; elem: HTMLElement } | null => {\n const elem = element.closest('[data-oj-menu-item-key]') as HTMLElement;\n if (elem) {\n const key = getKey(elem as HTMLElement);\n return key === undefined ? null : ({ key, elem } as { key: string; elem: HTMLElement });\n }\n return null;\n};\n\n/**\n * Function to get the corresponding keyboard behavior to close the menu.\n */\nexport const getKeyboardCloseProps = (\n onClose: ComponentProps<typeof Menu>['onClose'],\n menuLevel: 'main' | 'sub'\n) => {\n const onKeyDown = (event: KeyboardEvent) => {\n if (event.key === 'Tab') {\n event.stopPropagation();\n onClose?.({ reason: 'dismissed' });\n event.preventDefault(); //TODO: Revisit this since we should let focus be at its natural flow, quick solution for now to focus correct item in main use case\n } else if (event.key === 'Escape' && menuLevel === 'main') {\n event.stopPropagation();\n onClose?.({ reason: 'dismissed' });\n }\n };\n return { onKeyDown };\n};\n\n/**\n * Function to get the corresponding specific behavior for closing submenu via keyboard\n */\nexport const getCloseSubmenuEvent = (direction: 'ltr' | 'rtl', closeSubmenu?: () => void) => {\n if (!closeSubmenu) {\n return {};\n }\n const onKeyDown = (e: KeyboardEvent) => {\n if (\n e.key === 'Escape' ||\n (direction === 'ltr' && e.key === 'ArrowLeft') ||\n (direction === 'rtl' && e.key === 'ArrowRight')\n ) {\n e.stopPropagation();\n closeSubmenu?.();\n }\n };\n return { onKeyDown };\n};\n\n/**\n * Function to get the corresponding specific behavior for opening submenu via keyboard\n */\nexport const getOpenSubmenuEvent = (direction: 'ltr' | 'rtl', openSubmenu?: () => void) => {\n if (!openSubmenu) {\n return {};\n }\n const onKeyDown = (e: KeyboardEvent) => {\n if (direction === 'ltr') {\n if (e.key === 'ArrowRight') {\n openSubmenu?.();\n }\n } else {\n if (e.key === 'ArrowLeft') {\n openSubmenu?.();\n }\n }\n };\n return { onKeyDown };\n};\n\n/**\n * Functions to get type of device\n */\nexport const getIsMobile = () => {\n const { deviceRenderMode } = getClientHints();\n return deviceRenderMode === 'phone';\n};\n\nexport const getIsIosTablet = () => {\n const { deviceRenderMode, platform } = getClientHints();\n return platform === 'ios' && deviceRenderMode === 'tablet';\n};\n\n/**\n * Get blur and focus events\n */\nexport const getMenuContainerFocusMethods = (\n blurFunction: () => void,\n focusFunction: () => void\n) => {\n const onBlur = () => {\n setTimeout(() => {\n blurFunction();\n }, 100);\n };\n\n const onFocus = () => {\n focusFunction();\n };\n\n return { onBlur, onFocus };\n};\n\n/**\n * Set currentKey based on clicking menuItem\n */\nexport const getMenuItemClickChangeKey = (\n key: string,\n changeKeyMethod: (payload: { key: string; reason: 'click' | 'mouseEnter' | 'keyboard' }) => void\n) => {\n const onClick = () => {\n changeKeyMethod({ key, reason: 'click' });\n };\n return { onClick };\n};\n\nexport const getMenuContainerMouseLeave = (mouseLeaveFunction: (e: MouseEvent) => void) => {\n const onMouseLeave = (e: MouseEvent) => {\n mouseLeaveFunction(e);\n };\n return { onMouseLeave };\n};\n\n/**\n * Function to get the corresponding specific behavior for clicking/touching down menuContainer\n */\nexport const getMenuPointerDown = () => {\n const onPointerDown = (event: PointerEvent) => {\n //We just want to prevent default when element that was\n //pressed down was not a menu item.\n const keyElem = keyElemExtractor(event.target as HTMLElement);\n if (!keyElem?.key) {\n event.preventDefault();\n }\n };\n return { onPointerDown };\n};\n\nexport const isMenuChildrenFalsy = (children: ComponentChildren) => {\n return !children || (Array.isArray(children) && !children.length);\n};\n\nexport type MenuValueUpdateDetail<T> = {\n previousValue?: T;\n value: T;\n};\n\nexport type MenuCollectionItem = {\n key?: string;\n reason: 'mouseEnter' | 'click' | 'keyboard' | 'touch';\n};\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentProps, RefObject, JSX } from 'preact';\nimport { useCallback, useRef, useEffect } from 'preact/hooks';\n\nimport { Floating } from '../UNSAFE_Floating';\nimport { Layer } from '../UNSAFE_Layer';\nimport { KEYS } from '../utils/PRIVATE_keyboardUtils';\nimport { type FocusableElement, focusWithin } from '../utils/PRIVATE_tabbableUtils';\nimport { usePopupAnimation } from '#UNSAFE_Popup/usePopupAnimation';\nimport { getTransformOrigin } from '#utils/PRIVATE_popupAnimationUtils';\nimport { AnimationPopupElement } from '../UNSAFE_Popup/usePopupAnimation';\nimport { CollectionInteractionContext } from '#hooks/UNSAFE_useCollectionInteractionContext';\n\nimport { dropdownStyles } from './themes/dropdownStyles.css';\nimport { useOutsideMousedown } from '../hooks/PRIVATE_useOutsideMousedown';\nimport {\n DURATION_LARGE,\n SCALE_UP_FULL,\n mergeAnimationStateObjects\n} from '#utils/PRIVATE_animationUtils';\n\nimport { UnsafeDomHandle, UNSAFE_DOM_ACCESS } from '#utils/UNSAFE_unsafeDomAccess';\nimport { useEffectEvent } from '#hooks/PRIVATE_useEffectEvent';\nimport { getIsIosTablet } from '#UNSAFE_Menu/menuUtils';\n\ntype FloatingProps = ComponentProps<typeof Floating>;\n\n//Same as Menu onClose, only difference is mouseDown instead of outside click\n//Once menu consumes dropdown is going to start using mouseDown\nexport type CloseDetail = { reason: 'dismissed' } | { reason: 'outsideMousedown'; target: Element };\n\ntype IntrinsicProps = Pick<JSX.HTMLAttributes<HTMLDivElement>, 'children'>;\n\ntype Props = IntrinsicProps & {\n /**\n *Specifies whether Dropdown is open.\n * @default false\n */\n isOpen?: boolean;\n /**\n * Trigger element reference.\n */\n anchorRef: FloatingProps['anchorRef'];\n /**\n * Id of the dropdown container.\n * Used usually for accesibility reasons.\n */\n id?: string;\n /**\n * Called when dropdown is supposed to be closed.\n * Called when user tab/esc or mouseDown outside the dropdown.\n */\n onClose?: (detail: CloseDetail) => void;\n /**\n *Min width represented in pixels of the dropdown container.\n */\n minWidth?: number;\n /**\n * Placement of the floating element relative to its reference element.\n */\n placement?: FloatingProps['placement'];\n /**\n * Offset displaces the floating element from its core placement along the specified axes.\n */\n offset?: FloatingProps['offsetValue'];\n /**\n * Triggered when placement or coordinates are changed after collision is detected.\n */\n onPosition?: FloatingProps['onPosition'];\n /**\n * Specifies the flipping behavior along the respective axis.\n */\n flipOptions?: FloatingProps['flipOptions'];\n /**\n * Specifies the resizing behaviour for max-height and max-width of the floating component.\n */\n sizeOptions?: FloatingProps['sizeOptions'];\n\n /**\n * Specifies the shift behavior along the respective axis\n */\n shiftOptions?: FloatingProps['shiftOptions'];\n /**\n * Specifies initial focus.\n * @default 'none'\n */\n initialFocus?: 'none' | 'firstFocusable';\n};\n\nconst DEFAULT_PLACEMENT = 'bottom-start';\nconst DEFAULT_OFFSET = { mainAxis: 4, crossAxis: 0 };\nconst DEFAULT_SIZE_OPTIONS = { isMaxWidthAdjusted: true, isMaxHeightAdjusted: true };\nconst DEFAULT_FLIP_OPTIONS = { mainAxis: true, crossAxis: true };\n\nconst animationStates: Parameters<typeof usePopupAnimation>[0]['animationStates'] = {\n opening: (node: AnimationPopupElement) => {\n return mergeAnimationStateObjects(\n [\n SCALE_UP_FULL,\n {\n from: { transformOrigin: getTransformOrigin(node.placement, node.direction) },\n to: { transformOrigin: getTransformOrigin(node.placement, node.direction) }\n }\n ],\n {\n duration: DURATION_LARGE\n }\n );\n }\n};\n\n//TODO: Add animation to dropdown. JET-62628\n//TODO: Investigate best approach to have different virtual padding depending on the position and implement it.JET-57950\nexport function Dropdown({\n isOpen = false,\n anchorRef,\n children,\n id,\n onClose,\n minWidth,\n placement = DEFAULT_PLACEMENT,\n offset = DEFAULT_OFFSET,\n onPosition,\n flipOptions = DEFAULT_FLIP_OPTIONS,\n sizeOptions = DEFAULT_SIZE_OPTIONS,\n shiftOptions,\n initialFocus = 'none'\n}: Props) {\n const dropdownRef = useRef<HTMLDivElement>(null);\n\n const onTransitionEnd = useCallback(\n (isOpen: boolean) => {\n if (!isOpen) { return }\n\n const dropdownElement = dropdownRef.current;\n if (!dropdownElement) { return }\n\n // honor firstFocusable initial focus behavior\n if (initialFocus === 'firstFocusable') {\n focusWithin(dropdownElement);\n return;\n }\n\n // JET-76442 + JET-76109: When VoiceOver is enabled on iOS tablets, we want the first menu item to receive focus.\n // This is to ensure that VoiceOver announces the menu items correctly and focus does not go to the next tabbable element.\n if (getIsIosTablet()) {\n const firstItem = dropdownElement.querySelector<FocusableElement>('[data-oj-menu-item-key]');\n if (firstItem) {\n focusWithin(firstItem);\n }\n }\n },\n [initialFocus]\n );\n const {\n status,\n setAnimationElementRef,\n onPosition: onPositionAnimated\n } = usePopupAnimation({\n isOpen,\n placement,\n isAnimatedOnMount: true,\n animationStates,\n onPosition,\n onTransitionEnd\n });\n\n const handleMousedownClose = useCallback(\n (event: MouseEvent) => {\n onClose?.({ reason: 'outsideMousedown', target: event.target as Element });\n },\n [onClose]\n );\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if (event.defaultPrevented) {\n return;\n }\n switch (event.code) {\n case KEYS.ESC:\n onClose?.({ reason: 'dismissed' });\n break;\n case KEYS.TAB:\n onClose?.({ reason: 'dismissed' });\n break;\n default:\n break;\n }\n },\n [onClose]\n );\n\n // use the mousedown event to be consistent with legacy JET\n useOutsideMousedown({\n isDisabled: false,\n ref: [dropdownRef],\n handler: handleMousedownClose\n });\n\n // useEffectEvent ensures we always access the latest anchorRef.current value inside effects,\n // without having to include anchorRef in the dependency array and the eslint-disable-next comment\n const STABLE_getAnchor = useEffectEvent(() => anchorRef?.current);\n // Restore focus to anchor after Dropdown is closed\n useEffect(() => {\n const anchorElement = STABLE_getAnchor();\n if (\n !isOpen &&\n status === 'unmounted' &&\n anchorElement &&\n anchorElement instanceof HTMLElement\n ) {\n if (document.body.contains(anchorElement)) {\n anchorElement.focus();\n }\n }\n }, [STABLE_getAnchor, isOpen, status]);\n\n return (\n <>\n {status !== 'unmounted' ? (\n <Layer logicalParentRef={toLogicalParentRef(anchorRef)}>\n <Floating\n anchorRef={anchorRef}\n ref={setAnimationElementRef}\n placement={placement}\n flipOptions={flipOptions}\n shiftOptions={shiftOptions}\n sizeOptions={sizeOptions}\n offsetValue={offset}\n onPosition={onPositionAnimated}\n boundaryOptions={{ padding: { top: 8, bottom: 8, left: 0, right: 0 } }}>\n <div\n ref={dropdownRef}\n id={id}\n class={dropdownStyles.base}\n style={{ minWidth: `${minWidth || 0}px` }}\n onKeyDown={handleKeyDown}>\n <CollectionInteractionContext.Provider value={'embedded'}>\n {children}\n </CollectionInteractionContext.Provider>\n </div>\n </Floating>\n </Layer>\n ) : null}\n </>\n );\n}\n\nfunction toLogicalParentRef(anchorRef: FloatingProps['anchorRef']) {\n const current = anchorRef.current;\n\n if (current) {\n if (current instanceof Element) {\n return anchorRef as RefObject<Element>;\n } else if ((current as UnsafeDomHandle<Element>)[UNSAFE_DOM_ACCESS]) {\n return anchorRef as RefObject<UnsafeDomHandle<Element>>;\n }\n }\n\n return null;\n}\n"],"names":["_jsx","_Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"Dropdown-019aba37.js","sources":["../../src/UNSAFE_Menu/menuUtils.ts","../../src/UNSAFE_Dropdown/Dropdown.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentChildren, ComponentProps } from 'preact';\nimport { getClientHints } from '../utils/PRIVATE_clientHints';\n\nimport { Menu } from './Menu';\n\n/**\n * Returns the key from the item element\n */\nexport const getKey = (item: HTMLElement) => {\n // Key is set on data-oj-menu-item-key on each menuItem. To get this key from the\n // the actual menuItem we need to do a kebab to camel-case conversion.\n return item.dataset['ojMenuItemKey'];\n};\n\n/**\n * A helper function that return the key of the n available item.\n */\nexport const getNVisible = (root: HTMLElement | null, positionIndex: number) => {\n if (root) {\n const items = root.querySelectorAll('[data-oj-menu-item-key]');\n const positionedItem = items[positionIndex] as HTMLElement;\n if (positionedItem) {\n const key = getKey(positionedItem as HTMLElement);\n if (key) {\n return key;\n }\n }\n }\n return null;\n};\n\n/**\n * A helper function that return the key of the last available item.\n */\nexport const getLastVisible = (root: HTMLElement | null) => {\n if (root) {\n const items = root.querySelectorAll('[data-oj-menu-item-key]');\n const lastItem = items[items.length - 1] as HTMLElement;\n if (lastItem) {\n const key = getKey(lastItem as HTMLElement);\n if (key) {\n return key;\n }\n }\n }\n return null;\n};\n\n/**\n * A helper function that returns the key of the previous or the next item\n * given the specified current key\n */\nexport const getPrevNext = (root: HTMLElement | null, isPrev: boolean, currentKey?: string) => {\n return (): string | null => {\n if (root) {\n const items = Array.from(root.querySelectorAll('[data-oj-menu-item-key]')) as HTMLElement[];\n const currentKeyIndex = items.findIndex((item) => getKey(item) === currentKey);\n let nextIndex = currentKeyIndex + (isPrev ? -1 : 1);\n const itemsLastIndex = items.length - 1;\n if (nextIndex < 0) {\n nextIndex = itemsLastIndex;\n }\n if (nextIndex > itemsLastIndex) {\n nextIndex = 0;\n }\n\n const key = getKey(items[nextIndex]);\n return key ? key : null;\n }\n return null;\n };\n};\n\n/**\n * A helper function to get the key from an element\n */\nexport const keyElemExtractor = (\n element: HTMLElement\n): { key: string; elem: HTMLElement } | null => {\n const elem = element.closest('[data-oj-menu-item-key]') as HTMLElement;\n if (elem) {\n const key = getKey(elem as HTMLElement);\n return key === undefined ? null : ({ key, elem } as { key: string; elem: HTMLElement });\n }\n return null;\n};\n\n/**\n * Function to get the corresponding keyboard behavior to close the menu.\n */\nexport const getKeyboardCloseProps = (\n onClose: ComponentProps<typeof Menu>['onClose'],\n menuLevel: 'main' | 'sub'\n) => {\n const onKeyDown = (event: KeyboardEvent) => {\n if (event.key === 'Tab') {\n event.stopPropagation();\n onClose?.({ reason: 'dismissed' });\n event.preventDefault(); //TODO: Revisit this since we should let focus be at its natural flow, quick solution for now to focus correct item in main use case\n } else if (event.key === 'Escape' && menuLevel === 'main') {\n event.stopPropagation();\n onClose?.({ reason: 'dismissed' });\n }\n };\n return { onKeyDown };\n};\n\n/**\n * Function to get the corresponding specific behavior for closing submenu via keyboard\n */\nexport const getCloseSubmenuEvent = (direction: 'ltr' | 'rtl', closeSubmenu?: () => void) => {\n if (!closeSubmenu) {\n return {};\n }\n const onKeyDown = (e: KeyboardEvent) => {\n if (\n e.key === 'Escape' ||\n (direction === 'ltr' && e.key === 'ArrowLeft') ||\n (direction === 'rtl' && e.key === 'ArrowRight')\n ) {\n e.stopPropagation();\n closeSubmenu?.();\n }\n };\n return { onKeyDown };\n};\n\n/**\n * Function to get the corresponding specific behavior for opening submenu via keyboard\n */\nexport const getOpenSubmenuEvent = (direction: 'ltr' | 'rtl', openSubmenu?: () => void) => {\n if (!openSubmenu) {\n return {};\n }\n const onKeyDown = (e: KeyboardEvent) => {\n if (direction === 'ltr') {\n if (e.key === 'ArrowRight') {\n openSubmenu?.();\n }\n } else {\n if (e.key === 'ArrowLeft') {\n openSubmenu?.();\n }\n }\n };\n return { onKeyDown };\n};\n\n/**\n * Functions to get type of device\n */\nexport const getIsMobile = () => {\n const { deviceRenderMode } = getClientHints();\n return deviceRenderMode === 'phone';\n};\n\nexport const getIsIosTablet = () => {\n const { deviceRenderMode, platform } = getClientHints();\n return platform === 'ios' && deviceRenderMode === 'tablet';\n};\n\n/**\n * Get blur and focus events\n */\nexport const getMenuContainerFocusMethods = (\n blurFunction: () => void,\n focusFunction: () => void\n) => {\n const onBlur = () => {\n setTimeout(() => {\n blurFunction();\n }, 100);\n };\n\n const onFocus = () => {\n focusFunction();\n };\n\n return { onBlur, onFocus };\n};\n\n/**\n * Set currentKey based on clicking menuItem\n */\nexport const getMenuItemClickChangeKey = (\n key: string,\n changeKeyMethod: (payload: { key: string; reason: 'click' | 'mouseEnter' | 'keyboard' }) => void\n) => {\n const onClick = () => {\n changeKeyMethod({ key, reason: 'click' });\n };\n return { onClick };\n};\n\nexport const getMenuContainerMouseLeave = (mouseLeaveFunction: (e: MouseEvent) => void) => {\n const onMouseLeave = (e: MouseEvent) => {\n mouseLeaveFunction(e);\n };\n return { onMouseLeave };\n};\n\n/**\n * Function to get the corresponding specific behavior for clicking/touching down menuContainer\n */\nexport const getMenuPointerDown = () => {\n const onPointerDown = (event: PointerEvent) => {\n //We just want to prevent default when element that was\n //pressed down was not a menu item.\n const keyElem = keyElemExtractor(event.target as HTMLElement);\n if (!keyElem?.key) {\n event.preventDefault();\n }\n };\n return { onPointerDown };\n};\n\nexport const isMenuChildrenFalsy = (children: ComponentChildren) => {\n return !children || (Array.isArray(children) && !children.length);\n};\n\nexport type MenuValueUpdateDetail<T> = {\n previousValue?: T;\n value: T;\n};\n\nexport type MenuCollectionItem = {\n key?: string;\n reason: 'mouseEnter' | 'click' | 'keyboard' | 'touch';\n};\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentProps, RefObject, JSX } from 'preact';\nimport { useCallback, useRef, useEffect } from 'preact/hooks';\n\nimport { Floating } from '../UNSAFE_Floating';\nimport { Layer } from '../UNSAFE_Layer';\nimport { KEYS } from '../utils/PRIVATE_keyboardUtils';\nimport { type FocusableElement, focusWithin } from '../utils/PRIVATE_tabbableUtils';\nimport { usePopupAnimation } from '#UNSAFE_Popup/usePopupAnimation';\nimport { getTransformOrigin } from '#utils/PRIVATE_popupAnimationUtils';\nimport { AnimationPopupElement } from '../UNSAFE_Popup/usePopupAnimation';\nimport { CollectionInteractionContext } from '#hooks/UNSAFE_useCollectionInteractionContext';\n\nimport { dropdownStyles } from './themes/dropdownStyles.css';\nimport { useOutsideMousedown } from '../hooks/PRIVATE_useOutsideMousedown';\nimport {\n DURATION_LARGE,\n SCALE_UP_FULL,\n mergeAnimationStateObjects\n} from '#utils/PRIVATE_animationUtils';\n\nimport { UnsafeDomHandle, UNSAFE_DOM_ACCESS } from '#utils/UNSAFE_unsafeDomAccess';\nimport { useEffectEvent } from '#hooks/PRIVATE_useEffectEvent';\nimport { getIsIosTablet } from '#UNSAFE_Menu/menuUtils';\n\ntype FloatingProps = ComponentProps<typeof Floating>;\n\n//Same as Menu onClose, only difference is mouseDown instead of outside click\n//Once menu consumes dropdown is going to start using mouseDown\nexport type CloseDetail = { reason: 'dismissed' } | { reason: 'outsideMousedown'; target: Element };\n\ntype IntrinsicProps = Pick<JSX.HTMLAttributes<HTMLDivElement>, 'children'>;\n\ntype Props = IntrinsicProps & {\n /**\n *Specifies whether Dropdown is open.\n * @default false\n */\n isOpen?: boolean;\n /**\n * Trigger element reference.\n */\n anchorRef: FloatingProps['anchorRef'];\n /**\n * Id of the dropdown container.\n * Used usually for accesibility reasons.\n */\n id?: string;\n /**\n * Called when dropdown is supposed to be closed.\n * Called when user tab/esc or mouseDown outside the dropdown.\n */\n onClose?: (detail: CloseDetail) => void;\n /**\n *Min width represented in pixels of the dropdown container.\n */\n minWidth?: number;\n /**\n * Placement of the floating element relative to its reference element.\n */\n placement?: FloatingProps['placement'];\n /**\n * Offset displaces the floating element from its core placement along the specified axes.\n */\n offset?: FloatingProps['offsetValue'];\n /**\n * Triggered when placement or coordinates are changed after collision is detected.\n */\n onPosition?: FloatingProps['onPosition'];\n /**\n * Specifies the flipping behavior along the respective axis.\n */\n flipOptions?: FloatingProps['flipOptions'];\n /**\n * Specifies the resizing behaviour for max-height and max-width of the floating component.\n */\n sizeOptions?: FloatingProps['sizeOptions'];\n\n /**\n * Specifies the shift behavior along the respective axis\n */\n shiftOptions?: FloatingProps['shiftOptions'];\n /**\n * Specifies initial focus.\n * @default 'none'\n */\n initialFocus?: 'none' | 'firstFocusable';\n};\n\nconst DEFAULT_PLACEMENT = 'bottom-start';\nconst DEFAULT_OFFSET = { mainAxis: 4, crossAxis: 0 };\nconst DEFAULT_SIZE_OPTIONS = { isMaxWidthAdjusted: true, isMaxHeightAdjusted: true };\nconst DEFAULT_FLIP_OPTIONS = { mainAxis: true, crossAxis: true };\n\nconst animationStates: Parameters<typeof usePopupAnimation>[0]['animationStates'] = {\n opening: (node: AnimationPopupElement) => {\n return mergeAnimationStateObjects(\n [\n SCALE_UP_FULL,\n {\n from: { transformOrigin: getTransformOrigin(node.placement, node.direction) },\n to: { transformOrigin: getTransformOrigin(node.placement, node.direction) }\n }\n ],\n {\n duration: DURATION_LARGE\n }\n );\n }\n};\n\n//TODO: Add animation to dropdown. JET-62628\n//TODO: Investigate best approach to have different virtual padding depending on the position and implement it.JET-57950\nexport function Dropdown({\n isOpen = false,\n anchorRef,\n children,\n id,\n onClose,\n minWidth,\n placement = DEFAULT_PLACEMENT,\n offset = DEFAULT_OFFSET,\n onPosition,\n flipOptions = DEFAULT_FLIP_OPTIONS,\n sizeOptions = DEFAULT_SIZE_OPTIONS,\n shiftOptions,\n initialFocus = 'none'\n}: Props) {\n const dropdownRef = useRef<HTMLDivElement>(null);\n\n const onTransitionEnd = useCallback(\n (isOpen: boolean) => {\n if (!isOpen) { return }\n\n const dropdownElement = dropdownRef.current;\n if (!dropdownElement) { return }\n\n // honor firstFocusable initial focus behavior\n if (initialFocus === 'firstFocusable') {\n focusWithin(dropdownElement);\n return;\n }\n\n // JET-76442 + JET-76109: When VoiceOver is enabled on iOS tablets, we want the first menu item to receive focus.\n // This is to ensure that VoiceOver announces the menu items correctly and focus does not go to the next tabbable element.\n if (getIsIosTablet()) {\n const firstItem = dropdownElement.querySelector<FocusableElement>('[data-oj-menu-item-key]');\n if (firstItem) {\n focusWithin(firstItem);\n }\n }\n },\n [initialFocus]\n );\n const {\n status,\n setAnimationElementRef,\n onPosition: onPositionAnimated\n } = usePopupAnimation({\n isOpen,\n placement,\n isAnimatedOnMount: true,\n animationStates,\n onPosition,\n onTransitionEnd\n });\n\n const handleMousedownClose = useCallback(\n (event: MouseEvent) => {\n onClose?.({ reason: 'outsideMousedown', target: event.target as Element });\n },\n [onClose]\n );\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if (event.defaultPrevented) {\n return;\n }\n switch (event.code) {\n case KEYS.ESC:\n onClose?.({ reason: 'dismissed' });\n break;\n case KEYS.TAB:\n onClose?.({ reason: 'dismissed' });\n break;\n default:\n break;\n }\n },\n [onClose]\n );\n\n // use the mousedown event to be consistent with legacy JET\n useOutsideMousedown({\n isDisabled: false,\n ref: [dropdownRef],\n handler: handleMousedownClose\n });\n\n // useEffectEvent ensures we always access the latest anchorRef.current value inside effects,\n // without having to include anchorRef in the dependency array and the eslint-disable-next comment\n const STABLE_getAnchor = useEffectEvent(() => anchorRef?.current);\n // Restore focus to anchor after Dropdown is closed\n useEffect(() => {\n const anchorElement = STABLE_getAnchor();\n if (\n !isOpen &&\n status === 'unmounted' &&\n anchorElement &&\n anchorElement instanceof HTMLElement\n ) {\n if (document.body.contains(anchorElement)) {\n anchorElement.focus();\n }\n }\n }, [STABLE_getAnchor, isOpen, status]);\n\n return (\n <>\n {status !== 'unmounted' ? (\n <Layer logicalParentRef={toLogicalParentRef(anchorRef)}>\n <Floating\n anchorRef={anchorRef}\n ref={setAnimationElementRef}\n placement={placement}\n flipOptions={flipOptions}\n shiftOptions={shiftOptions}\n sizeOptions={sizeOptions}\n offsetValue={offset}\n onPosition={onPositionAnimated}\n boundaryOptions={{ padding: { top: 8, bottom: 8, left: 0, right: 0 } }}>\n <div\n ref={dropdownRef}\n id={id}\n class={dropdownStyles.base}\n style={{ minWidth: `${minWidth || 0}px` }}\n onKeyDown={handleKeyDown}>\n <CollectionInteractionContext.Provider value={'embedded'}>\n {children}\n </CollectionInteractionContext.Provider>\n </div>\n </Floating>\n </Layer>\n ) : null}\n </>\n );\n}\n\nfunction toLogicalParentRef(anchorRef: FloatingProps['anchorRef']) {\n const current = anchorRef.current;\n\n if (current) {\n if (current instanceof Element) {\n return anchorRef as RefObject<Element>;\n } else if ((current as UnsafeDomHandle<Element>)[UNSAFE_DOM_ACCESS]) {\n return anchorRef as RefObject<UnsafeDomHandle<Element>>;\n }\n }\n\n return null;\n}\n"],"names":["_jsx","_Fragment"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /* @oracle/oraclejet-preact: undefined */
2
2
  import { jsx } from 'preact/jsx-runtime';
3
- import { B as BaseButton } from './BaseButton-243d200f.js';
3
+ import { B as BaseButton } from './BaseButton-41068c85.js';
4
4
  import { B as ButtonLabelLayout } from './ButtonLabelLayout-1631c997.js';
5
5
 
6
6
  const EmbeddedIconButton = ({ isDisabled = false, size = 'sm', onAction, 'aria-label': accessibleLabel, 'aria-describedby': ariaDescribedBy, 'aria-hidden': ariaHidden = false, ...props }) => {
@@ -8,4 +8,4 @@ const EmbeddedIconButton = ({ isDisabled = false, size = 'sm', onAction, 'aria-l
8
8
  };
9
9
 
10
10
  export { EmbeddedIconButton as E };
11
- //# sourceMappingURL=EmbeddedIconButton-9f0e56b7.js.map
11
+ //# sourceMappingURL=EmbeddedIconButton-46434710.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EmbeddedIconButton-9f0e56b7.js","sources":["../../src/PRIVATE_EmbeddedIconButton/EmbeddedIconButton.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { ComponentChild } from 'preact';\nimport { BaseButton } from '../UNSAFE_BaseButton';\nimport { ButtonLabelLayout } from '../UNSAFE_ButtonLabelLayout';\n\ntype AriaProps =\n | {\n /**\n * The ID of an element (or space separated IDs of multiple elements) that\n * describes the button.\n */\n 'aria-describedby'?: string;\n\n /**\n * Whether the button should be hidden from screen readers. When true, no aria-label is required.\n */\n 'aria-hidden'?: false;\n\n /**\n * accessibleLabel - the aria label\n */\n 'aria-label': string;\n }\n | {\n 'aria-describedby'?: string;\n\n 'aria-hidden': true;\n\n 'aria-label'?: string;\n };\n\ntype BaseProps = {\n /**\n * Specifies the icon for the button.\n */\n children?: ComponentChild;\n\n /**\n * Specifies that the button element should be disabled.\n * @default false\n */\n isDisabled?: boolean;\n\n /**\n * Triggered when a button is clicked, whether by keyboard, mouse, or touch events.\n */\n onAction?: () => void | null;\n\n /**\n * The size indicates how large the button is rendered. Note that only the ghost variant supports the xs size.\n * @default 'sm'\n */\n size?: 'xs' | 'sm';\n};\n\ntype Props = BaseProps & AriaProps;\n\nexport const EmbeddedIconButton = ({\n isDisabled = false,\n size = 'sm',\n onAction,\n 'aria-label': accessibleLabel,\n 'aria-describedby': ariaDescribedBy,\n 'aria-hidden': ariaHidden = false,\n ...props\n}: Props) => {\n return (\n <BaseButton\n elementDetails={{ type: 'span', isFocusable: false }}\n isDisabled={isDisabled}\n size={size}\n variant={'ghost'}\n styling={['min', 'noUserSelect']}\n onAction={onAction}\n aria-describedby={ariaDescribedBy}\n aria-hidden={ariaHidden}\n aria-label={accessibleLabel}>\n <ButtonLabelLayout\n display={'icons'}\n startIcon={props.children}\n size={size}></ButtonLabelLayout>\n </BaseButton>\n );\n};\n"],"names":["_jsx"],"mappings":";;;;;AA+DO,MAAM,kBAAkB,GAAG,CAAC,EACjC,UAAU,GAAG,KAAK,EAClB,IAAI,GAAG,IAAI,EACX,QAAQ,EACR,YAAY,EAAE,eAAe,EAC7B,kBAAkB,EAAE,eAAe,EACnC,aAAa,EAAE,UAAU,GAAG,KAAK,EACjC,GAAG,KAAK,EACF,KAAI;AACV,IAAA,QACEA,GAAA,CAAC,UAAU,EAAA,EACT,cAAc,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,EACpD,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,EAChC,QAAQ,EAAE,QAAQ,EAAA,kBAAA,EACA,eAAe,EAAA,aAAA,EACpB,UAAU,EAAA,YAAA,EACX,eAAe,EAAA,QAAA,EAC3BA,IAAC,iBAAiB,EAAA,EAChB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,KAAK,CAAC,QAAQ,EACzB,IAAI,EAAE,IAAI,EAAsB,CAAA,EAAA,CACvB,EACb;AACJ;;;;"}
1
+ {"version":3,"file":"EmbeddedIconButton-46434710.js","sources":["../../src/PRIVATE_EmbeddedIconButton/EmbeddedIconButton.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { ComponentChild } from 'preact';\nimport { BaseButton } from '../UNSAFE_BaseButton';\nimport { ButtonLabelLayout } from '../UNSAFE_ButtonLabelLayout';\n\ntype AriaProps =\n | {\n /**\n * The ID of an element (or space separated IDs of multiple elements) that\n * describes the button.\n */\n 'aria-describedby'?: string;\n\n /**\n * Whether the button should be hidden from screen readers. When true, no aria-label is required.\n */\n 'aria-hidden'?: false;\n\n /**\n * accessibleLabel - the aria label\n */\n 'aria-label': string;\n }\n | {\n 'aria-describedby'?: string;\n\n 'aria-hidden': true;\n\n 'aria-label'?: string;\n };\n\ntype BaseProps = {\n /**\n * Specifies the icon for the button.\n */\n children?: ComponentChild;\n\n /**\n * Specifies that the button element should be disabled.\n * @default false\n */\n isDisabled?: boolean;\n\n /**\n * Triggered when a button is clicked, whether by keyboard, mouse, or touch events.\n */\n onAction?: () => void | null;\n\n /**\n * The size indicates how large the button is rendered. Note that only the ghost variant supports the xs size.\n * @default 'sm'\n */\n size?: 'xs' | 'sm';\n};\n\ntype Props = BaseProps & AriaProps;\n\nexport const EmbeddedIconButton = ({\n isDisabled = false,\n size = 'sm',\n onAction,\n 'aria-label': accessibleLabel,\n 'aria-describedby': ariaDescribedBy,\n 'aria-hidden': ariaHidden = false,\n ...props\n}: Props) => {\n return (\n <BaseButton\n elementDetails={{ type: 'span', isFocusable: false }}\n isDisabled={isDisabled}\n size={size}\n variant={'ghost'}\n styling={['min', 'noUserSelect']}\n onAction={onAction}\n aria-describedby={ariaDescribedBy}\n aria-hidden={ariaHidden}\n aria-label={accessibleLabel}>\n <ButtonLabelLayout\n display={'icons'}\n startIcon={props.children}\n size={size}></ButtonLabelLayout>\n </BaseButton>\n );\n};\n"],"names":["_jsx"],"mappings":";;;;;AA+DO,MAAM,kBAAkB,GAAG,CAAC,EACjC,UAAU,GAAG,KAAK,EAClB,IAAI,GAAG,IAAI,EACX,QAAQ,EACR,YAAY,EAAE,eAAe,EAC7B,kBAAkB,EAAE,eAAe,EACnC,aAAa,EAAE,UAAU,GAAG,KAAK,EACjC,GAAG,KAAK,EACF,KAAI;AACV,IAAA,QACEA,GAAA,CAAC,UAAU,EAAA,EACT,cAAc,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,EACpD,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,EAChC,QAAQ,EAAE,QAAQ,EAAA,kBAAA,EACA,eAAe,EAAA,aAAA,EACpB,UAAU,EAAA,YAAA,EACX,eAAe,EAAA,QAAA,EAC3BA,IAAC,iBAAiB,EAAA,EAChB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,KAAK,CAAC,QAAQ,EACzB,IAAI,EAAE,IAAI,EAAsB,CAAA,EAAA,CACvB,EACb;AACJ;;;;"}
@@ -1,8 +1,8 @@
1
1
  /* @oracle/oraclejet-preact: undefined */
2
2
  import { jsx } from 'preact/jsx-runtime';
3
- import { E as EnvironmentContext, D as DefaultEnvironment } from './LayerHost-3cf255a6.js';
3
+ import { E as EnvironmentContext, D as DefaultEnvironment } from './LayerHost-7931b424.js';
4
4
  import { useMemo, useContext } from 'preact/hooks';
5
- import { L as LayerManager } from './LayerManager-e30fbfd6.js';
5
+ import { L as LayerManager } from './LayerManager-52a26c55.js';
6
6
 
7
7
  // Custom merge function
8
8
  function mergeEnvironment(env1, env2) {
@@ -55,4 +55,4 @@ function EnvironmentProvider({ children, environment }) {
55
55
  }
56
56
 
57
57
  export { EnvironmentProvider as E, RootEnvironmentProvider as R };
58
- //# sourceMappingURL=EnvironmentProvider-6cf8ed37.js.map
58
+ //# sourceMappingURL=EnvironmentProvider-6a0a8212.js.map