@oracle/oraclejet-preact 18.0.1 → 18.0.3

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 (592) hide show
  1. package/amd/ActionCard-3f86f73f.js +1 -1
  2. package/amd/BarChart-5e9f46b4.js +1 -1
  3. package/amd/BarGroup-76ef0839.js +1 -1
  4. package/amd/BaseButton-19a622bc.js +1 -1
  5. package/amd/{BaseCardView-70b177ed.js → BaseCardView-ab799b69.js} +2 -2
  6. package/amd/{BaseCardView-70b177ed.js.map → BaseCardView-ab799b69.js.map} +1 -1
  7. package/amd/{BaseCardViewSelectionTest-d026d26c.js → BaseCardViewSelectionTest-0ec52156.js} +2 -2
  8. package/amd/{BaseCardViewSelectionTest-d026d26c.js.map → BaseCardViewSelectionTest-0ec52156.js.map} +1 -1
  9. package/amd/BaseNavigationListItem-fe9cb691.js +1 -1
  10. package/amd/BaseRichSelection-9d8f3ee4.js +1 -1
  11. package/amd/ButtonSet-d95872cc.js +1 -1
  12. package/amd/ButtonSetIconButton-7a2c113c.js +1 -1
  13. package/amd/{Card-8e081def.js → Card-f6f2dc90.js} +2 -2
  14. package/amd/{Card-8e081def.js.map → Card-f6f2dc90.js.map} +1 -1
  15. package/amd/CardFlexView-296f97f5.js +2 -0
  16. package/amd/{CardFlexView-bb5c4369.js.map → CardFlexView-296f97f5.js.map} +1 -1
  17. package/amd/{CardGridView-c28ff2f7.js → CardGridView-054ffc3f.js} +2 -2
  18. package/amd/{CardGridView-c28ff2f7.js.map → CardGridView-054ffc3f.js.map} +1 -1
  19. package/amd/{Center-9ec5524e.js → Center-b449a95c.js} +2 -2
  20. package/amd/{Center-9ec5524e.js.map → Center-b449a95c.js.map} +1 -1
  21. package/amd/Chart-e2807ff7.js +1 -1
  22. package/amd/CheckboxControl-83484a5a.js +1 -1
  23. package/amd/CheckboxRadioField-9733dd24.js +1 -1
  24. package/amd/Chip-cd210507.js +1 -1
  25. package/amd/ClearIcon-de20285c.js +1 -1
  26. package/amd/CollapseIcon-e030531c.js +1 -1
  27. package/amd/Collapsible-924afd71.js +1 -1
  28. package/amd/ComboChart-71c0f51f.js +1 -1
  29. package/amd/CompactHelpSource-74498e92.js +1 -1
  30. package/amd/CompactLabelAssistance-44ba87b0.js +2 -0
  31. package/amd/{CompactLabelAssistance-c6928282.js.map → CompactLabelAssistance-44ba87b0.js.map} +1 -1
  32. package/amd/CompactUserAssistance-3370a318.js +1 -1
  33. package/amd/ComponentMessageContainer-8028ba70.js +1 -1
  34. package/amd/ConveyorBeltItem-08720127.js +1 -1
  35. package/amd/{DatePicker-bf0e0c69.js → DatePicker-2c94a3bb.js} +2 -2
  36. package/amd/{DatePicker-bf0e0c69.js.map → DatePicker-2c94a3bb.js.map} +1 -1
  37. package/amd/DatePickerHeader-f21e020d.js +1 -1
  38. package/amd/{Diagram-04db0931.js → Diagram-c3afb211.js} +2 -2
  39. package/amd/{Diagram-04db0931.js.map → Diagram-c3afb211.js.map} +1 -1
  40. package/amd/{Dialog-5f36f8aa.js → Dialog-53f92591.js} +2 -2
  41. package/amd/{Dialog-5f36f8aa.js.map → Dialog-53f92591.js.map} +1 -1
  42. package/amd/DirectionalCollapseArrowIcon-20cef34d.js +1 -1
  43. package/amd/DirectionalExpandArrowIcon-e9bdb06e.js +1 -1
  44. package/amd/{DragHandle-406d7f9a.js → DragHandle-699fefd6.js} +2 -2
  45. package/amd/{DragHandle-406d7f9a.js.map → DragHandle-699fefd6.js.map} +1 -1
  46. package/amd/{Dropdown-abcacf49.js → Dropdown-4b421eff.js} +2 -2
  47. package/amd/{Dropdown-abcacf49.js.map → Dropdown-4b421eff.js.map} +1 -1
  48. package/amd/{EnvironmentProvider-c0e1e39b.js → EnvironmentProvider-8f6fc388.js} +2 -2
  49. package/amd/{EnvironmentProvider-c0e1e39b.js.map → EnvironmentProvider-8f6fc388.js.map} +1 -1
  50. package/amd/ExpandableList-dd3a05b4.js +1 -1
  51. package/amd/FilePicker-4636b49b.js +1 -1
  52. package/amd/Flex-56ecdf4c.js +2 -0
  53. package/amd/{Flex-3421f0df.js.map → Flex-56ecdf4c.js.map} +1 -1
  54. package/amd/{Floating-5d98c1ca.js → Floating-1ec5ec2a.js} +2 -2
  55. package/amd/{Floating-5d98c1ca.js.map → Floating-1ec5ec2a.js.map} +1 -1
  56. package/amd/FormLayout-a4a29a2d.js +1 -1
  57. package/amd/Gantt-d94af58e.js +1 -1
  58. package/amd/{Grid-8911aa0f.js → Grid-160f4885.js} +2 -2
  59. package/amd/{Grid-8911aa0f.js.map → Grid-160f4885.js.map} +1 -1
  60. package/amd/{Gridlines-bef7bbfc.js → Gridlines-7851bb20.js} +2 -2
  61. package/amd/{Gridlines-bef7bbfc.js.map → Gridlines-7851bb20.js.map} +1 -1
  62. package/amd/GroupLoadingIndicator-6b2ab709.js +1 -1
  63. package/amd/HighlightText-bd4c0101.js +2 -0
  64. package/amd/{HighlightText-644bc74e.js.map → HighlightText-bd4c0101.js.map} +1 -1
  65. package/amd/Icon-2d38c876.js +1 -1
  66. package/amd/IconButton-ae9a01ce.js +1 -1
  67. package/amd/IconMenuButton-b0468fa8.js +1 -1
  68. package/amd/IconProgressButton-ff5372eb.js +1 -1
  69. package/amd/IconSwitchButton-22f907e7.js +1 -1
  70. package/amd/IconToggleButton-20d411e6.js +1 -1
  71. package/amd/{IconUserAssistance-37107cea.js → IconUserAssistance-d2bd2691.js} +2 -2
  72. package/amd/{IconUserAssistance-37107cea.js.map → IconUserAssistance-d2bd2691.js.map} +1 -1
  73. package/amd/{Indexer-357554c4.js → Indexer-1531dbc3.js} +2 -2
  74. package/amd/{Indexer-357554c4.js.map → Indexer-1531dbc3.js.map} +1 -1
  75. package/amd/InlineHelpSource-85961e81.js +1 -1
  76. package/amd/InlineUserAssistance-4656c2a6.js +1 -1
  77. package/amd/InputDateMask-6d54c3e6.js +1 -1
  78. package/amd/InputDatePicker-fc39f0a6.js +2 -0
  79. package/amd/{InputDatePicker-18e2546b.js.map → InputDatePicker-fc39f0a6.js.map} +1 -1
  80. package/amd/InputPassword-f6ea728a.js +1 -1
  81. package/amd/InputText-57f60b6f.js +1 -1
  82. package/amd/Label-3912beb2.js +1 -1
  83. package/amd/LabelStyles.styles.css +2 -1
  84. package/amd/LabelValueLayout-194e64d9.js +1 -1
  85. package/amd/{Layer-6f29b67f.js → Layer-447c68e6.js} +2 -2
  86. package/amd/{Layer-6f29b67f.js.map → Layer-447c68e6.js.map} +1 -1
  87. package/amd/{LayerHost-639b3284.js → LayerHost-e95c5f30.js} +2 -2
  88. package/amd/{LayerHost-639b3284.js.map → LayerHost-e95c5f30.js.map} +1 -1
  89. package/amd/{LayerManager-2972de92.js → LayerManager-76fcfb58.js} +2 -2
  90. package/amd/{LayerManager-2972de92.js.map → LayerManager-76fcfb58.js.map} +1 -1
  91. package/amd/Legend-e4949499.js +1 -1
  92. package/amd/{LineAreaChart-dda5240f.js → LineAreaChart-2f4be408.js} +2 -2
  93. package/amd/{LineAreaChart-dda5240f.js.map → LineAreaChart-2f4be408.js.map} +1 -1
  94. package/amd/{LineSeries-797d8d16.js → LineSeries-a549e727.js} +2 -2
  95. package/amd/{LineSeries-797d8d16.js.map → LineSeries-a549e727.js.map} +1 -1
  96. package/amd/Link-c4a57187.js +1 -1
  97. package/amd/List-0b764e84.js +2 -0
  98. package/amd/{List-04c4fed0.js.map → List-0b764e84.js.map} +1 -1
  99. package/amd/{ListItemLayout-e0b2c71e.js → ListItemLayout-4208363c.js} +2 -2
  100. package/amd/{ListItemLayout-e0b2c71e.js.map → ListItemLayout-4208363c.js.map} +1 -1
  101. package/amd/{ListView-bf740071.js → ListView-5bb45f81.js} +2 -2
  102. package/amd/{ListView-bf740071.js.map → ListView-5bb45f81.js.map} +1 -1
  103. package/amd/LiveRegion-8142ed0d.js +2 -0
  104. package/amd/{LiveRegion-9a362373.js.map → LiveRegion-8142ed0d.js.map} +1 -1
  105. package/amd/LoadMoreCollection-83413a59.js +2 -0
  106. package/amd/{LoadMoreCollection-a6adbc3f.js.map → LoadMoreCollection-83413a59.js.map} +1 -1
  107. package/amd/MaxLengthLiveRegion-8954fc30.js +2 -0
  108. package/amd/{MaxLengthLiveRegion-bb956138.js.map → MaxLengthLiveRegion-8954fc30.js.map} +1 -1
  109. package/amd/Menu-5d447084.js +1 -1
  110. package/amd/MenuButton-410aa4e1.js +1 -1
  111. package/amd/MenuItem-87cd59b8.js +1 -1
  112. package/amd/Message-621fb578.js +1 -1
  113. package/amd/{MessageLayer-8bac8c50.js → MessageLayer-ba56f7e2.js} +2 -2
  114. package/amd/{MessageLayer-8bac8c50.js.map → MessageLayer-ba56f7e2.js.map} +1 -1
  115. package/amd/MessageToast-06773c79.js +1 -1
  116. package/amd/MessagesManager-d5686336.js +1 -1
  117. package/amd/MeterBar-e1b4a93b.js +1 -1
  118. package/amd/MeterCircle-9887cf28.js +1 -1
  119. package/amd/{Modal-7bece8d5.js → Modal-d6b2e905.js} +2 -2
  120. package/amd/{Modal-7bece8d5.js.map → Modal-d6b2e905.js.map} +1 -1
  121. package/amd/{MonthView-3d0968a1.js → MonthView-4a0401cd.js} +2 -2
  122. package/amd/{MonthView-3d0968a1.js.map → MonthView-4a0401cd.js.map} +1 -1
  123. package/amd/NavigationListItem-044a79fd.js +1 -1
  124. package/amd/NumberInputText-cac12eb3.js +1 -1
  125. package/amd/OverflowTabBarItem-c59db4a2.js +1 -1
  126. package/amd/PRIVATE_BaseCardView.js +1 -1
  127. package/amd/PRIVATE_Chart.js +1 -1
  128. package/amd/PRIVATE_CheckboxControl.js +1 -1
  129. package/amd/PRIVATE_CheckboxRadioField.js +1 -1
  130. package/amd/PRIVATE_ClearIcon.js +1 -1
  131. package/amd/PRIVATE_DatePickerHeader.js +1 -1
  132. package/amd/PRIVATE_DatePickerLayout.js +1 -1
  133. package/amd/PRIVATE_EmbeddedIconButton.js +1 -1
  134. package/amd/PRIVATE_FormControls.js +1 -1
  135. package/amd/PRIVATE_IconSwitchButton.js +1 -1
  136. package/amd/PRIVATE_Icons/CheckboxMixed.js +1 -1
  137. package/amd/PRIVATE_Icons/CheckboxOff.js +1 -1
  138. package/amd/PRIVATE_Icons/CheckboxOn.js +1 -1
  139. package/amd/PRIVATE_Icons/DragV.js +1 -1
  140. package/amd/PRIVATE_Icons/WarningS.js +1 -1
  141. package/amd/PRIVATE_List.js +1 -1
  142. package/amd/PRIVATE_LoadMoreCollection.js +1 -1
  143. package/amd/PRIVATE_Message.js +1 -1
  144. package/amd/PRIVATE_MessageLayer.js +1 -1
  145. package/amd/PRIVATE_MonthView.js +1 -1
  146. package/amd/PRIVATE_MonthYearGridView.js +1 -1
  147. package/amd/PRIVATE_PlotArea.js +1 -1
  148. package/amd/PRIVATE_RevealToggleIcon.js +1 -1
  149. package/amd/PRIVATE_RichSelectionCommon.js +1 -1
  150. package/amd/PRIVATE_SelectCommon.js +1 -1
  151. package/amd/PRIVATE_StyledCard.js +1 -1
  152. package/amd/PRIVATE_StyledCheckbox.js +1 -1
  153. package/amd/PRIVATE_Table.js +1 -1
  154. package/amd/PRIVATE_ThemedIcons/CalendarIcon.js +1 -1
  155. package/amd/PRIVATE_ThemedIcons/ChartMarqueeSelectIcon.js +1 -1
  156. package/amd/PRIVATE_ThemedIcons/ChartPanIcon.js +1 -1
  157. package/amd/PRIVATE_ThemedIcons/ChartZoomIcon.js +1 -1
  158. package/amd/PRIVATE_ThemedIcons/CheckIcon.js +1 -1
  159. package/amd/PRIVATE_ThemedIcons/CheckboxMixedIcon.js +1 -1
  160. package/amd/PRIVATE_ThemedIcons/CheckboxOffIcon.js +1 -1
  161. package/amd/PRIVATE_ThemedIcons/CheckboxOnIcon.js +1 -1
  162. package/amd/PRIVATE_ThemedIcons/CloseIcon.js +1 -1
  163. package/amd/PRIVATE_ThemedIcons/CollapseIcon.js +1 -1
  164. package/amd/PRIVATE_ThemedIcons/CollapseUpIcon.js +1 -1
  165. package/amd/PRIVATE_ThemedIcons/DecrementIcon.js +1 -1
  166. package/amd/PRIVATE_ThemedIcons/DeleteIcon.js +1 -1
  167. package/amd/PRIVATE_ThemedIcons/DirectionalCollapseArrowIcon.js +1 -1
  168. package/amd/PRIVATE_ThemedIcons/DirectionalExpandArrowIcon.js +1 -1
  169. package/amd/PRIVATE_ThemedIcons/DragHandleIcon.js +1 -1
  170. package/amd/PRIVATE_ThemedIcons/DropdownArrowIcon.js +1 -1
  171. package/amd/PRIVATE_ThemedIcons/ExpandIcon.js +1 -1
  172. package/amd/PRIVATE_ThemedIcons/HelpIcon.js +1 -1
  173. package/amd/PRIVATE_ThemedIcons/IncrementIcon.js +1 -1
  174. package/amd/PRIVATE_ThemedIcons/MenuButtonDropdownIcon.js +1 -1
  175. package/amd/PRIVATE_ThemedIcons/MessageConfirmationIcon.js +1 -1
  176. package/amd/PRIVATE_ThemedIcons/MessageErrorIcon.js +1 -1
  177. package/amd/PRIVATE_ThemedIcons/MessageInfoIcon.js +1 -1
  178. package/amd/PRIVATE_ThemedIcons/MessageWarningIcon.js +1 -1
  179. package/amd/PRIVATE_ThemedIcons/MinusIcon.js +1 -1
  180. package/amd/PRIVATE_ThemedIcons/NavDownIcon.js +1 -1
  181. package/amd/PRIVATE_ThemedIcons/OverviewHorizontalDragHandleIcon.js +1 -1
  182. package/amd/PRIVATE_ThemedIcons/PlusIcon.js +1 -1
  183. package/amd/PRIVATE_ThemedIcons/RadioOffIcon.js +1 -1
  184. package/amd/PRIVATE_ThemedIcons/RadioOnIcon.js +1 -1
  185. package/amd/PRIVATE_ThemedIcons/SortAscendingIcon.js +1 -1
  186. package/amd/PRIVATE_ThemedIcons/SortDescendingIcon.js +1 -1
  187. package/amd/PRIVATE_ThemedIcons/ViewHideIcon.js +1 -1
  188. package/amd/PRIVATE_ThemedIcons/ViewIcon.js +1 -1
  189. package/amd/PRIVATE_TimeComponent.js +1 -1
  190. package/amd/PRIVATE_VirtualizedCollection.js +1 -1
  191. package/amd/PRIVATE_VisOverview.js +1 -1
  192. package/amd/PRIVATE_VisTabularDatatip.js +1 -1
  193. package/amd/PictoChart-48a25c75.js +1 -1
  194. package/amd/PieChart-2197746d.js +1 -1
  195. package/amd/{Popup-66e79afa.js → Popup-d51bf3f4.js} +2 -2
  196. package/amd/{Popup-66e79afa.js.map → Popup-d51bf3f4.js.map} +1 -1
  197. package/amd/{ProgressBar-e72c5a67.js → ProgressBar-3f4cd8d6.js} +2 -2
  198. package/amd/{ProgressBar-e72c5a67.js.map → ProgressBar-3f4cd8d6.js.map} +1 -1
  199. package/amd/ProgressButton-f1d27773.js +1 -1
  200. package/amd/ProgressButtonLabelLayout-6df4290e.js +1 -1
  201. package/amd/{ProgressCircle-2b4ba9cd.js → ProgressCircle-74b6fc89.js} +2 -2
  202. package/amd/{ProgressCircle-2b4ba9cd.js.map → ProgressCircle-74b6fc89.js.map} +1 -1
  203. package/amd/RadioItem-b17c346c.js +1 -1
  204. package/amd/RatingGauge-539ede8e.js +1 -1
  205. package/amd/ReadonlyTextFieldInput-608bddc1.js +1 -1
  206. package/amd/RemovableNavigationListItem-e01b6693.js +1 -1
  207. package/amd/RemovableTabBarItem-29b54206.js +1 -1
  208. package/amd/ReorderableTabBar-462d357c.js +1 -1
  209. package/amd/RevealToggleIcon-f975229d.js +1 -1
  210. package/amd/{ScatterChart-7f0b817b.js → ScatterChart-0ca7c658.js} +2 -2
  211. package/amd/{ScatterChart-7f0b817b.js.map → ScatterChart-0ca7c658.js.map} +1 -1
  212. package/amd/SectionalLegend-8f203cac.js +1 -1
  213. package/amd/SectionedContent-2a261004.js +2 -0
  214. package/amd/{SectionedContent-19bef3cc.js.map → SectionedContent-2a261004.js.map} +1 -1
  215. package/amd/{SelectMultiple-e3a6732b.js → SelectMultiple-7e9bd455.js} +2 -2
  216. package/amd/{SelectMultiple-e3a6732b.js.map → SelectMultiple-7e9bd455.js.map} +1 -1
  217. package/amd/{SelectSingle-9d0dca8f.js → SelectSingle-466bcd67.js} +2 -2
  218. package/amd/{SelectSingle-9d0dca8f.js.map → SelectSingle-466bcd67.js.map} +1 -1
  219. package/amd/SelectionCard-895b014d.js +2 -0
  220. package/amd/{SelectionCard-13aac54a.js.map → SelectionCard-895b014d.js.map} +1 -1
  221. package/amd/Selector-2b0c34a7.js +1 -1
  222. package/amd/{SelectorAll-1c889a9c.js → SelectorAll-e884a225.js} +2 -2
  223. package/amd/{SelectorAll-1c889a9c.js.map → SelectorAll-e884a225.js.map} +1 -1
  224. package/amd/{Sheet-0b58b0a5.js → Sheet-46782f99.js} +2 -2
  225. package/amd/{Sheet-0b58b0a5.js.map → Sheet-46782f99.js.map} +1 -1
  226. package/amd/SplitMenuButton-031ae5e3.js +1 -1
  227. package/amd/{StyledCard-0da6f6b5.js → StyledCard-c4d0324d.js} +2 -2
  228. package/amd/{StyledCard-0da6f6b5.js.map → StyledCard-c4d0324d.js.map} +1 -1
  229. package/amd/StyledTextField-b4278437.js +1 -1
  230. package/amd/TabBar-d8890a47.js +1 -1
  231. package/amd/TabBarItem-547825e2.js +1 -1
  232. package/amd/TabBarLayout-685ac295.js +1 -1
  233. package/amd/TabBarMixed-a75796a6.js +1 -1
  234. package/amd/TabBarMixedSeparator-8c278254.js +2 -0
  235. package/amd/{TabBarMixedSeparator-ed764207.js.map → TabBarMixedSeparator-8c278254.js.map} +1 -1
  236. package/amd/{Table-31cc83c6.js → Table-87f7e3c4.js} +2 -2
  237. package/amd/{Table-31cc83c6.js.map → Table-87f7e3c4.js.map} +1 -1
  238. package/amd/{TableView-ab5d0c12.js → TableView-2b884e2c.js} +2 -2
  239. package/amd/{TableView-ab5d0c12.js.map → TableView-2b884e2c.js.map} +1 -1
  240. package/amd/TagCloud-5dc4b5ff.js +1 -1
  241. package/amd/TextArea-89b9ed65.js +1 -1
  242. package/amd/TextAreaAutosize-81449e46.js +1 -1
  243. package/amd/TextField-1021f00b.js +1 -1
  244. package/amd/TextFieldInput-ba4e508c.js +1 -1
  245. package/amd/Theme-redwood/theme.css +184 -184
  246. package/amd/Theme-stable/theme.css +225 -225
  247. package/amd/TimeComponentCanvas2D-6b4e6ead.js +1 -1
  248. package/amd/Toolbar-05d42276.js +1 -1
  249. package/amd/TruncatingBadge-04f9ef4c.js +2 -0
  250. package/amd/{TruncatingBadge-7f66faaf.js.map → TruncatingBadge-04f9ef4c.js.map} +1 -1
  251. package/amd/{TruncatingText-69770aa9.js → TruncatingText-d18d41c5.js} +2 -2
  252. package/amd/{TruncatingText-69770aa9.js.map → TruncatingText-d18d41c5.js.map} +1 -1
  253. package/amd/UNSAFE_ActionCard.js +1 -1
  254. package/amd/UNSAFE_BarChart/__test__/BarChart.spec.js +1 -1
  255. package/amd/UNSAFE_BarChart.js +1 -1
  256. package/amd/UNSAFE_BaseButton.js +1 -1
  257. package/amd/UNSAFE_Button.js +1 -1
  258. package/amd/UNSAFE_ButtonLayout/tests/ButtonLayout.spec.js +1 -1
  259. package/amd/UNSAFE_ButtonSet.js +1 -1
  260. package/amd/UNSAFE_ButtonSetButton.js +1 -1
  261. package/amd/UNSAFE_ButtonSetIconButton.js +1 -1
  262. package/amd/UNSAFE_ButtonSetItem.js +1 -1
  263. package/amd/UNSAFE_ButtonSetMultiple.js +1 -1
  264. package/amd/UNSAFE_ButtonSetSingle.js +1 -1
  265. package/amd/UNSAFE_Card.js +1 -1
  266. package/amd/UNSAFE_CardFlexView.js +1 -1
  267. package/amd/UNSAFE_CardGridView.js +1 -1
  268. package/amd/UNSAFE_Center.js +1 -1
  269. package/amd/UNSAFE_ChartWithLegend.js +1 -1
  270. package/amd/UNSAFE_Checkbox.js +1 -1
  271. package/amd/UNSAFE_CheckboxItem.js +1 -1
  272. package/amd/UNSAFE_CheckboxSet.js +1 -1
  273. package/amd/UNSAFE_Chip.js +1 -1
  274. package/amd/UNSAFE_Collapsible.js +1 -1
  275. package/amd/UNSAFE_ComboChart.js +1 -1
  276. package/amd/UNSAFE_ComponentMessage.js +1 -1
  277. package/amd/UNSAFE_ConveyorBelt.js +1 -1
  278. package/amd/UNSAFE_DatePicker.js +1 -1
  279. package/amd/UNSAFE_Diagram.js +1 -1
  280. package/amd/UNSAFE_Dialog.js +1 -1
  281. package/amd/UNSAFE_DragHandle.js +1 -1
  282. package/amd/UNSAFE_DrawerLayout.js +1 -1
  283. package/amd/UNSAFE_DrawerPopup.js +1 -1
  284. package/amd/UNSAFE_Dropdown.js +1 -1
  285. package/amd/UNSAFE_Environment.js +1 -1
  286. package/amd/UNSAFE_ExpandableList.js +1 -1
  287. package/amd/UNSAFE_FilePicker.js +1 -1
  288. package/amd/UNSAFE_Flex.js +1 -1
  289. package/amd/UNSAFE_Floating.js +1 -1
  290. package/amd/UNSAFE_FormLayout.js +1 -1
  291. package/amd/UNSAFE_Gantt.js +1 -1
  292. package/amd/UNSAFE_Grid.js +1 -1
  293. package/amd/UNSAFE_HighlightText.js +1 -1
  294. package/amd/UNSAFE_Icon.js +1 -1
  295. package/amd/UNSAFE_IconButton.js +1 -1
  296. package/amd/UNSAFE_IconMenuButton.js +1 -1
  297. package/amd/UNSAFE_IconProgressButton.js +1 -1
  298. package/amd/UNSAFE_IconToggleButton.js +1 -1
  299. package/amd/UNSAFE_Indexer.js +1 -1
  300. package/amd/UNSAFE_InputDateMask.js +1 -1
  301. package/amd/UNSAFE_InputDatePicker.js +1 -1
  302. package/amd/UNSAFE_InputPassword.js +1 -1
  303. package/amd/UNSAFE_InputSensitiveText.js +1 -1
  304. package/amd/UNSAFE_InputText.js +1 -1
  305. package/amd/UNSAFE_InputTimeMask.js +1 -1
  306. package/amd/UNSAFE_Label.js +1 -1
  307. package/amd/UNSAFE_LabelValueLayout.js +1 -1
  308. package/amd/UNSAFE_LabelledLink.js +1 -1
  309. package/amd/UNSAFE_Layer.js +1 -1
  310. package/amd/UNSAFE_Legend.js +1 -1
  311. package/amd/UNSAFE_LineAreaChart.js +1 -1
  312. package/amd/UNSAFE_Link.js +1 -1
  313. package/amd/UNSAFE_ListItemLayout.js +1 -1
  314. package/amd/UNSAFE_ListView.js +1 -1
  315. package/amd/UNSAFE_LiveRegion.js +1 -1
  316. package/amd/UNSAFE_Menu.js +1 -1
  317. package/amd/UNSAFE_MenuButton.js +1 -1
  318. package/amd/UNSAFE_MessageBanner.js +1 -1
  319. package/amd/UNSAFE_MessageToast.js +1 -1
  320. package/amd/UNSAFE_MeterBar.js +1 -1
  321. package/amd/UNSAFE_MeterCircle.js +1 -1
  322. package/amd/UNSAFE_Modal.js +1 -1
  323. package/amd/UNSAFE_NavigationList.js +1 -1
  324. package/amd/UNSAFE_NavigationListCommon.js +1 -1
  325. package/amd/UNSAFE_NumberInputText.js +1 -1
  326. package/amd/UNSAFE_OverflowTabBar.js +1 -1
  327. package/amd/UNSAFE_PictoChart.js +1 -1
  328. package/amd/UNSAFE_PieChart/__test__/PieChart.spec.js +1 -1
  329. package/amd/UNSAFE_PieChart.js +1 -1
  330. package/amd/UNSAFE_Popup.js +1 -1
  331. package/amd/UNSAFE_ProgressBar.js +1 -1
  332. package/amd/UNSAFE_ProgressButton.js +1 -1
  333. package/amd/UNSAFE_ProgressButtonLabelLayout.js +1 -1
  334. package/amd/UNSAFE_ProgressCircle.js +1 -1
  335. package/amd/UNSAFE_RadioItem.js +1 -1
  336. package/amd/UNSAFE_RadioSet.js +1 -1
  337. package/amd/UNSAFE_RatingGauge.js +1 -1
  338. package/amd/UNSAFE_ReorderableTabBar.js +1 -1
  339. package/amd/UNSAFE_RichCheckboxSet.js +1 -1
  340. package/amd/UNSAFE_RichRadioSet.js +1 -1
  341. package/amd/UNSAFE_RichSelectionItem.js +1 -1
  342. package/amd/UNSAFE_ScatterChart.js +1 -1
  343. package/amd/UNSAFE_SectionalLegend.js +1 -1
  344. package/amd/UNSAFE_SelectMultiple.js +1 -1
  345. package/amd/UNSAFE_SelectSingle.js +1 -1
  346. package/amd/UNSAFE_SelectionCard.js +1 -1
  347. package/amd/UNSAFE_Selector.js +1 -1
  348. package/amd/UNSAFE_SelectorAll.js +1 -1
  349. package/amd/UNSAFE_Sheet/__test__/Sheet.spec.js +1 -1
  350. package/amd/UNSAFE_Sheet.js +1 -1
  351. package/amd/UNSAFE_SplitMenuButton.js +1 -1
  352. package/amd/UNSAFE_TabBar.js +1 -1
  353. package/amd/UNSAFE_TabBarCommon.js +1 -1
  354. package/amd/UNSAFE_TabBarMixed.js +1 -1
  355. package/amd/UNSAFE_TableView.js +1 -1
  356. package/amd/UNSAFE_TagCloud.js +1 -1
  357. package/amd/UNSAFE_TextArea.js +1 -1
  358. package/amd/UNSAFE_TextAreaAutosize.js +1 -1
  359. package/amd/UNSAFE_TextField.js +1 -1
  360. package/amd/UNSAFE_ToggleButton.js +1 -1
  361. package/amd/UNSAFE_Toolbar/tests/Toolbar.spec.js +1 -1
  362. package/amd/UNSAFE_Toolbar.js +1 -1
  363. package/amd/UNSAFE_Train.js +1 -1
  364. package/amd/UNSAFE_TruncatingBadge.js +1 -1
  365. package/amd/UNSAFE_TruncatingText.js +1 -1
  366. package/amd/UNSAFE_UserAssistance.js +1 -1
  367. package/amd/UNSAFE_View.js +1 -1
  368. package/amd/UNSAFE_VirtualizedListView.js +1 -1
  369. package/amd/UNSAFE_VisProgressiveLoader/__test__/VisProgressiveLoader.spec.js +1 -1
  370. package/amd/UNSAFE_VisProgressiveLoader.js +1 -1
  371. package/amd/UNSAFE_VisStatusMessage.js +1 -1
  372. package/amd/UNSAFE_WindowOverlay.js +1 -1
  373. package/amd/{View-bd5c7fa7.js → View-ce970ed7.js} +2 -2
  374. package/amd/{View-bd5c7fa7.js.map → View-ce970ed7.js.map} +1 -1
  375. package/amd/{VirtualizedCollection-63223f5e.js → VirtualizedCollection-897516a5.js} +2 -2
  376. package/amd/{VirtualizedCollection-63223f5e.js.map → VirtualizedCollection-897516a5.js.map} +1 -1
  377. package/amd/{VirtualizedListView-554eaee6.js → VirtualizedListView-cbe87ec2.js} +2 -2
  378. package/amd/{VirtualizedListView-554eaee6.js.map → VirtualizedListView-cbe87ec2.js.map} +1 -1
  379. package/amd/VisNoData-6fa39277.js +2 -0
  380. package/amd/{VisNoData-10983ace.js.map → VisNoData-6fa39277.js.map} +1 -1
  381. package/amd/{VisProgressiveLoader-06a60c8f.js → VisProgressiveLoader-68d8d8b3.js} +2 -2
  382. package/amd/{VisProgressiveLoader-06a60c8f.js.map → VisProgressiveLoader-68d8d8b3.js.map} +1 -1
  383. package/amd/{VisTabularDatatip-55bbd19f.js → VisTabularDatatip-1051eaca.js} +2 -2
  384. package/amd/{VisTabularDatatip-55bbd19f.js.map → VisTabularDatatip-1051eaca.js.map} +1 -1
  385. package/amd/{WindowOverlay-43c10424.js → WindowOverlay-a2d80d55.js} +2 -2
  386. package/amd/{WindowOverlay-43c10424.js.map → WindowOverlay-a2d80d55.js.map} +1 -1
  387. package/amd/{YearsGridView-d7b2184e.js → YearsGridView-d799dc5c.js} +2 -2
  388. package/amd/{YearsGridView-d7b2184e.js.map → YearsGridView-d799dc5c.js.map} +1 -1
  389. package/amd/hoc/PRIVATE_withDirectionIcon.js +1 -1
  390. package/amd/hoc/PRIVATE_withThemeIcon.js +1 -1
  391. package/amd/hoc/UNSAFE_withThemeProps.js +1 -1
  392. package/amd/hooks/PRIVATE_useChartContextMenu.js +1 -1
  393. package/amd/hooks/PRIVATE_useChartDatatip.js +1 -1
  394. package/amd/hooks/PRIVATE_useChartEvents.js +1 -1
  395. package/amd/hooks/PRIVATE_useChartMarquee.js +1 -1
  396. package/amd/hooks/PRIVATE_useCssVars.js +1 -1
  397. package/amd/hooks/PRIVATE_useCurrentKey.js +1 -1
  398. package/amd/hooks/PRIVATE_useDatatip.js +1 -1
  399. package/amd/hooks/PRIVATE_useFloating.js +1 -1
  400. package/amd/hooks/PRIVATE_useReorderable.js +1 -1
  401. package/amd/hooks/PRIVATE_useRovingTabIndexContainer.js +1 -1
  402. package/amd/hooks/PRIVATE_useSelection.js +1 -1
  403. package/amd/hooks/PRIVATE_useTabBar.js +1 -1
  404. package/amd/hooks/PRIVATE_useVisContextMenu.js +1 -1
  405. package/amd/hooks/PRIVATE_useVisDragModeControls.js +1 -1
  406. package/amd/hooks/PRIVATE_useVisEvents.js +1 -1
  407. package/amd/hooks/PRIVATE_useVisMeterEvents.js +1 -1
  408. package/amd/hooks/PRIVATE_useVisSelection.js +1 -1
  409. package/amd/hooks/UNSAFE_useColorScheme.js +1 -1
  410. package/amd/hooks/UNSAFE_useCurrentBgColor.js +1 -1
  411. package/amd/hooks/UNSAFE_useDensity.js +1 -1
  412. package/amd/hooks/UNSAFE_useOutsideClick.js +1 -1
  413. package/amd/hooks/UNSAFE_usePrefixSuffix.js +1 -1
  414. package/amd/hooks/UNSAFE_useScale.js +1 -1
  415. package/amd/hooks/UNSAFE_useTestId.js +1 -1
  416. package/amd/hooks/UNSAFE_useTheme.js +1 -1
  417. package/amd/hooks/UNSAFE_useThemeInterpolations.js +1 -1
  418. package/amd/hooks/UNSAFE_useTooltip.js +1 -1
  419. package/amd/hooks/UNSAFE_useTranslationBundle.js +1 -1
  420. package/amd/hooks/UNSAFE_useUser.js +1 -1
  421. package/amd/{index-95227deb.js → index-b7b9300d.js} +2 -2
  422. package/amd/index-b7b9300d.js.map +1 -0
  423. package/amd/listViewSelectionTests-c9777ea8.js +1 -1
  424. package/amd/render-366c27ff.js +2 -0
  425. package/amd/{render-85c034d7.js.map → render-366c27ff.js.map} +1 -1
  426. package/amd/{tabbableUtils-591fdc8d.js → tabbableUtils-88d4fa35.js} +2 -2
  427. package/amd/{tabbableUtils-591fdc8d.js.map → tabbableUtils-88d4fa35.js.map} +1 -1
  428. package/amd/{testData-02652eda.js → testData-783b8823.js} +2 -2
  429. package/amd/{testData-02652eda.js.map → testData-783b8823.js.map} +1 -1
  430. package/amd/{tooltipUtils-e5bdb734.js → tooltipUtils-69ce0a2d.js} +2 -2
  431. package/amd/{tooltipUtils-e5bdb734.js.map → tooltipUtils-69ce0a2d.js.map} +1 -1
  432. package/amd/useCellNavigation-1feec094.js +1 -1
  433. package/amd/useChartContextMenu-8606bfa2.js +1 -1
  434. package/amd/useChartDatatip-ee3783af.js +2 -0
  435. package/amd/{useChartDatatip-947eeffe.js.map → useChartDatatip-ee3783af.js.map} +1 -1
  436. package/amd/{useColorScheme-443e7cc7.js → useColorScheme-10dc88de.js} +2 -2
  437. package/amd/{useColorScheme-443e7cc7.js.map → useColorScheme-10dc88de.js.map} +1 -1
  438. package/amd/useContextMenu-e08aad46.js +1 -1
  439. package/amd/{useCssVars-dc52806c.js → useCssVars-c043f8da.js} +2 -2
  440. package/amd/{useCssVars-dc52806c.js.map → useCssVars-c043f8da.js.map} +1 -1
  441. package/amd/{useCurrentBgColor-50142bd8.js → useCurrentBgColor-2426ee24.js} +2 -2
  442. package/amd/{useCurrentBgColor-50142bd8.js.map → useCurrentBgColor-2426ee24.js.map} +1 -1
  443. package/amd/useCurrentKey-31c18053.js +2 -0
  444. package/amd/{useCurrentKey-a993db56.js.map → useCurrentKey-31c18053.js.map} +1 -1
  445. package/amd/{useDatatip-9942601b.js → useDatatip-ac26447a.js} +2 -2
  446. package/amd/{useDatatip-9942601b.js.map → useDatatip-ac26447a.js.map} +1 -1
  447. package/amd/{useDensity-f0f7ae9a.js → useDensity-c83df7b4.js} +2 -2
  448. package/amd/{useDensity-f0f7ae9a.js.map → useDensity-c83df7b4.js.map} +1 -1
  449. package/amd/{useFloating-bf8ed6cb.js → useFloating-acd30a55.js} +2 -2
  450. package/amd/{useFloating-bf8ed6cb.js.map → useFloating-acd30a55.js.map} +1 -1
  451. package/amd/useKeyboardEvents-d87e3587.js +2 -0
  452. package/amd/{useKeyboardEvents-8ada7a1f.js.map → useKeyboardEvents-d87e3587.js.map} +1 -1
  453. package/amd/useLegendContextMenu-e629139a.js +1 -1
  454. package/amd/useMeterDatatip-fff3c329.js +2 -0
  455. package/amd/{useMeterDatatip-173593b4.js.map → useMeterDatatip-fff3c329.js.map} +1 -1
  456. package/amd/{useOutsideClick-76c1ff6e.js → useOutsideClick-f99b7a84.js} +2 -2
  457. package/amd/{useOutsideClick-76c1ff6e.js.map → useOutsideClick-f99b7a84.js.map} +1 -1
  458. package/amd/{usePopupAnimation-6e53a0fe.js → usePopupAnimation-f679a4b0.js} +2 -2
  459. package/amd/{usePopupAnimation-6e53a0fe.js.map → usePopupAnimation-f679a4b0.js.map} +1 -1
  460. package/amd/usePrefixSuffix-09bd5925.js +2 -0
  461. package/amd/{usePrefixSuffix-f7544e05.js.map → usePrefixSuffix-09bd5925.js.map} +1 -1
  462. package/amd/{useReorderableItem-726c3c03.js → useReorderableItem-4c4779f7.js} +2 -2
  463. package/amd/{useReorderableItem-726c3c03.js.map → useReorderableItem-4c4779f7.js.map} +1 -1
  464. package/amd/{useRovingTabIndexContainer-473f7e43.js → useRovingTabIndexContainer-955e23a8.js} +2 -2
  465. package/amd/{useRovingTabIndexContainer-473f7e43.js.map → useRovingTabIndexContainer-955e23a8.js.map} +1 -1
  466. package/amd/useScale-37d42c9d.js +2 -0
  467. package/amd/{useScale-e311d35f.js.map → useScale-37d42c9d.js.map} +1 -1
  468. package/amd/{useSelectCommon-e7f123ce.js → useSelectCommon-d9c4a7bd.js} +2 -2
  469. package/amd/{useSelectCommon-e7f123ce.js.map → useSelectCommon-d9c4a7bd.js.map} +1 -1
  470. package/amd/{useSelectDrill-216c007c.js → useSelectDrill-6361116b.js} +2 -2
  471. package/amd/{useSelectDrill-216c007c.js.map → useSelectDrill-6361116b.js.map} +1 -1
  472. package/amd/useSelection-af7b4b52.js +2 -0
  473. package/amd/{useSelection-01203394.js.map → useSelection-af7b4b52.js.map} +1 -1
  474. package/amd/{useSelection-4249360e.js → useSelection-f0c7d74d.js} +2 -2
  475. package/amd/{useSelection-4249360e.js.map → useSelection-f0c7d74d.js.map} +1 -1
  476. package/amd/useTabBar-2c4573fe.js +1 -1
  477. package/amd/{useTestId-b5cd4766.js → useTestId-3a316499.js} +2 -2
  478. package/amd/{useTestId-b5cd4766.js.map → useTestId-3a316499.js.map} +1 -1
  479. package/amd/{useTheme-a8334e06.js → useTheme-ac980f9a.js} +2 -2
  480. package/amd/{useTheme-a8334e06.js.map → useTheme-ac980f9a.js.map} +1 -1
  481. package/amd/useThemeInterpolations-6b2de213.js +2 -0
  482. package/amd/{useThemeInterpolations-ab618dee.js.map → useThemeInterpolations-6b2de213.js.map} +1 -1
  483. package/amd/useTooltip-7b11fd35.js +2 -0
  484. package/amd/{useTooltip-b43ad881.js.map → useTooltip-7b11fd35.js.map} +1 -1
  485. package/amd/{useTooltipControlled-ee3276de.js → useTooltipControlled-52183a08.js} +2 -2
  486. package/amd/{useTooltipControlled-ee3276de.js.map → useTooltipControlled-52183a08.js.map} +1 -1
  487. package/amd/{useTranslationBundle-d07d4b20.js → useTranslationBundle-516b1b83.js} +2 -2
  488. package/amd/{useTranslationBundle-d07d4b20.js.map → useTranslationBundle-516b1b83.js.map} +1 -1
  489. package/amd/{useUser-3ef25571.js → useUser-85c781ea.js} +2 -2
  490. package/amd/{useUser-3ef25571.js.map → useUser-85c781ea.js.map} +1 -1
  491. package/amd/useVisDragModeControls-a5685835.js +1 -1
  492. package/amd/{useVisEvents-dc86164f.js → useVisEvents-0166e4cc.js} +2 -2
  493. package/amd/{useVisEvents-dc86164f.js.map → useVisEvents-0166e4cc.js.map} +1 -1
  494. package/amd/utils/PRIVATE_tooltipUtils.js +1 -1
  495. package/amd/utils/PRIVATE_visTestUtils.js +1 -1
  496. package/amd/{withDirectionIcon-74c39ee3.js → withDirectionIcon-ce0c7432.js} +2 -2
  497. package/amd/{withDirectionIcon-74c39ee3.js.map → withDirectionIcon-ce0c7432.js.map} +1 -1
  498. package/amd/withThemeProps-4c23997e.js +1 -1
  499. package/cjs/{InputDatePicker-bc2c534a.js → InputDatePicker-4d36637f.js} +2 -2
  500. package/cjs/{InputDatePicker-bc2c534a.js.map → InputDatePicker-4d36637f.js.map} +1 -1
  501. package/cjs/LabelStyles.styles.css +2 -1
  502. package/cjs/{NavigationListItem-4c4e804d.js → NavigationListItem-7947af0e.js} +1 -14
  503. package/cjs/{NavigationListItem-4c4e804d.js.map → NavigationListItem-7947af0e.js.map} +1 -1
  504. package/cjs/{OverflowTabBar-428798a0.js → OverflowTabBar-27ad6d1f.js} +2 -2
  505. package/cjs/{OverflowTabBar-428798a0.js.map → OverflowTabBar-27ad6d1f.js.map} +1 -1
  506. package/cjs/{OverflowTabBarItem-3c7adb01.js → OverflowTabBarItem-57537ebe.js} +2 -2
  507. package/cjs/{OverflowTabBarItem-3c7adb01.js.map → OverflowTabBarItem-57537ebe.js.map} +1 -1
  508. package/cjs/Theme-redwood/theme.css +161 -161
  509. package/cjs/Theme-stable/theme.css +337 -337
  510. package/cjs/UNSAFE_InputDatePicker.js +90 -90
  511. package/cjs/UNSAFE_NavigationList.js +4 -4
  512. package/cjs/UNSAFE_OverflowTabBar.js +3 -3
  513. package/cjs/UNSAFE_TabBar.js +2 -2
  514. package/cjs/UNSAFE_TabBarCommon.js +2 -2
  515. package/cjs/UNSAFE_TabBarMixed.js +2 -2
  516. package/es/CheckboxSetContext-1be56556.js +9 -0
  517. package/es/CheckboxSetContext-1be56556.js.map +1 -0
  518. package/es/CollapsibleVariants.styles.css +3 -3
  519. package/es/CollapsibleVariants.styles2.css +3 -3
  520. package/es/LabelStyles.styles.css +2 -1
  521. package/es/MaxLengthCounter-181b4fc9.js +25 -0
  522. package/es/MaxLengthCounter-181b4fc9.js.map +1 -0
  523. package/es/{NavigationListItem-57a7cf4b.js → NavigationListItem-5b25b2f5.js} +14 -1
  524. package/es/{NavigationListItem-57a7cf4b.js.map → NavigationListItem-5b25b2f5.js.map} +1 -1
  525. package/es/{OverflowTabBar-9df72c15.js → OverflowTabBar-47a03b1f.js} +2 -2
  526. package/es/{OverflowTabBar-9df72c15.js.map → OverflowTabBar-47a03b1f.js.map} +1 -1
  527. package/es/{OverflowTabBarItem-0d925d02.js → OverflowTabBarItem-08625093.js} +2 -2
  528. package/es/{OverflowTabBarItem-0d925d02.js.map → OverflowTabBarItem-08625093.js.map} +1 -1
  529. package/es/{TextArea-64b4e972.js → TextArea-7230675f.js} +8 -25
  530. package/es/TextArea-7230675f.js.map +1 -0
  531. package/es/{TextAreaAutosize-4e0f60ef.js → TextAreaAutosize-0d293016.js} +2 -2
  532. package/es/{TextAreaAutosize-4e0f60ef.js.map → TextAreaAutosize-0d293016.js.map} +1 -1
  533. package/es/Theme-redwood/theme.css +640 -640
  534. package/es/Theme-stable/theme.css +600 -600
  535. package/es/TrainVariants.styles.css +6 -6
  536. package/es/TrainVariants.styles2.css +6 -6
  537. package/es/UNSAFE_CheckboxItem.js +30 -81
  538. package/es/UNSAFE_CheckboxItem.js.map +1 -1
  539. package/es/UNSAFE_CheckboxSet.js +44 -10
  540. package/es/UNSAFE_CheckboxSet.js.map +1 -1
  541. package/es/UNSAFE_Collapsible/themes/redwood/CollapsibleTheme.js +1 -1
  542. package/es/UNSAFE_Collapsible/themes/redwood/CollapsibleVariants.css.js +1 -1
  543. package/es/UNSAFE_Collapsible/themes/stable/CollapsibleTheme.js +1 -1
  544. package/es/UNSAFE_Collapsible/themes/stable/CollapsibleVariants.css.js +1 -1
  545. package/es/UNSAFE_Collapsible.js +1 -1
  546. package/es/UNSAFE_NavigationList.js +4 -4
  547. package/es/UNSAFE_OverflowTabBar.js +3 -3
  548. package/es/UNSAFE_RichCheckboxSet.js +12 -14
  549. package/es/UNSAFE_RichCheckboxSet.js.map +1 -1
  550. package/es/UNSAFE_RichSelectionItem.js +42 -179
  551. package/es/UNSAFE_RichSelectionItem.js.map +1 -1
  552. package/es/UNSAFE_TabBar.js +2 -2
  553. package/es/UNSAFE_TabBarCommon.js +2 -2
  554. package/es/UNSAFE_TabBarMixed.js +2 -2
  555. package/es/UNSAFE_TextArea.js +3 -2
  556. package/es/UNSAFE_TextArea.js.map +1 -1
  557. package/es/UNSAFE_TextAreaAutosize.js +3 -3
  558. package/es/UNSAFE_Train/themes/redwood/TrainTheme.js +1 -1
  559. package/es/UNSAFE_Train/themes/redwood/TrainVariants.css.js +1 -1
  560. package/es/UNSAFE_Train/themes/stable/TrainTheme.js +1 -1
  561. package/es/UNSAFE_Train/themes/stable/TrainVariants.css.js +1 -1
  562. package/es/UNSAFE_Train.js +1 -1
  563. package/package.json +2 -2
  564. package/types/UNSAFE_Label/themes/LabelStyles.css.d.ts +8 -0
  565. package/amd/CardFlexView-bb5c4369.js +0 -2
  566. package/amd/CompactLabelAssistance-c6928282.js +0 -2
  567. package/amd/Flex-3421f0df.js +0 -2
  568. package/amd/HighlightText-644bc74e.js +0 -2
  569. package/amd/InputDatePicker-18e2546b.js +0 -2
  570. package/amd/List-04c4fed0.js +0 -2
  571. package/amd/LiveRegion-9a362373.js +0 -2
  572. package/amd/LoadMoreCollection-a6adbc3f.js +0 -2
  573. package/amd/MaxLengthLiveRegion-bb956138.js +0 -2
  574. package/amd/SectionedContent-19bef3cc.js +0 -2
  575. package/amd/SelectionCard-13aac54a.js +0 -2
  576. package/amd/TabBarMixedSeparator-ed764207.js +0 -2
  577. package/amd/TruncatingBadge-7f66faaf.js +0 -2
  578. package/amd/VisNoData-10983ace.js +0 -2
  579. package/amd/index-95227deb.js.map +0 -1
  580. package/amd/render-85c034d7.js +0 -2
  581. package/amd/useChartDatatip-947eeffe.js +0 -2
  582. package/amd/useCurrentKey-a993db56.js +0 -2
  583. package/amd/useKeyboardEvents-8ada7a1f.js +0 -2
  584. package/amd/useMeterDatatip-173593b4.js +0 -2
  585. package/amd/usePrefixSuffix-f7544e05.js +0 -2
  586. package/amd/useScale-e311d35f.js +0 -2
  587. package/amd/useSelection-01203394.js +0 -2
  588. package/amd/useThemeInterpolations-ab618dee.js +0 -2
  589. package/amd/useTooltip-b43ad881.js +0 -2
  590. package/es/CheckboxSet-3c3b7c71.js +0 -49
  591. package/es/CheckboxSet-3c3b7c71.js.map +0 -1
  592. package/es/TextArea-64b4e972.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"InputDatePicker-bc2c534a.js","sources":["../../src/UNSAFE_InputDatePicker/InputDatePickerDropdown.tsx","../../src/UNSAFE_InputDatePicker/useInputDatePickerState.ts","../../src/UNSAFE_InputDatePicker/useInputDatePicker.ts","../../src/UNSAFE_InputDatePicker/InputDatePicker.tsx"],"sourcesContent":["/**\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 } from 'preact';\nimport { useCallback, useState } from 'preact/hooks';\nimport { BundleType } from '../resources/nls/bundle';\nimport { DatePicker } from '#UNSAFE_DatePicker';\nimport { type CloseDetail as DropdownCloseDetail } from '#UNSAFE_Dropdown';\nimport { getClientHints } from '#utils/PRIVATE_clientHints';\nimport { FormFieldContext } from '../hooks/UNSAFE_useFormFieldContext';\nimport { InlineUserAssistance } from '../UNSAFE_UserAssistance';\nimport { InputDatePicker } from './InputDatePicker';\nimport { dropdownStyles, userAssistanceStyles } from './themes/InputDatePickerDropdownStyles.css';\nimport { PositionData } from '../UNSAFE_Floating';\nimport { StickyPositioningDropdown } from '#PRIVATE_FormControls';\nimport { SectionedContent } from '#PRIVATE_FormControls';\nimport { type CloseDetail as SheetCloseDetail, Sheet } from '#UNSAFE_Sheet';\nimport type { TestIdProps } from '#hooks/UNSAFE_useTestId';\nimport { useTranslationBundle } from '#hooks/UNSAFE_useTranslationBundle';\nimport { SizeOptions } from '#UNSAFE_Floating/Floating'; \n\ntype StickyPositioningDropdownProps = ComponentProps<typeof StickyPositioningDropdown>;\ntype InputDatePickerProps = ComponentProps<typeof InputDatePicker>;\ntype PickedPropsFromInputDatePicker = Pick<\n InputDatePickerProps,\n | 'assistiveText'\n | 'dayFormatter'\n | 'daysOutsideMonth'\n | 'helpSourceLink'\n | 'helpSourceText'\n | 'isDisabled'\n | 'isReadonly'\n | 'label'\n | 'messages'\n | 'min'\n | 'max'\n | 'monthAndYearPicker'\n | 'todayButton'\n | 'todayTimeZone'\n | 'userAssistanceDensity'\n | 'value'\n | 'weekDisplay'\n>;\ntype DatePickerProps = ComponentProps<typeof DatePicker>;\ntype PickedPropsFromDatePicker = Pick<DatePickerProps, 'value' | 'onCommit'>;\ntype PickedPropsFromDropdown = Omit<StickyPositioningDropdownProps, 'onClose'>;\ntype CloseDetail = SheetCloseDetail | DropdownCloseDetail;\n\ntype Props = PickedPropsFromDatePicker &\n PickedPropsFromInputDatePicker &\n PickedPropsFromDropdown &\n TestIdProps & {\n /**\n * Called when the dropdown or sheet is supposed to be closed.\n */\n onClose?: (detail: CloseDetail) => void;\n };\n\n/**\n * Component that renders DatePicker either inside a dropdown or sheet; at small screen\n * widths, it renders inside a sheet. Additionally, when a dropdown is being shown beneath\n * the component, we also show any user assistance text or messages below the picker\n * because otherwise that information would be obscured from view. When a sheet is being\n * shown, it will always display UA and messages at the bottom of the sheet.\n */\nconst InputDatePickerDropdown = ({\n anchorRef,\n assistiveText,\n dayFormatter,\n daysOutsideMonth,\n helpSourceLink,\n helpSourceText,\n isDisabled,\n isOpen,\n isReadonly,\n label,\n onClose,\n onCommit,\n max,\n messages,\n min,\n monthAndYearPicker,\n testId,\n todayButton,\n todayTimeZone,\n userAssistanceDensity,\n value,\n weekDisplay\n}: Props) => {\n // If the dropdown opens above the component, we don't want to show UA or messages.\n const [isDropdownAbove, setDropdownAbove] = useState(false);\n const [prevIsOpen, setPrevIsOpen] = useState(isOpen);\n const handleDropdownPosition = useCallback<\n NonNullable<StickyPositioningDropdownProps['onPosition']>\n >((data: PositionData) => {\n setDropdownAbove(data.placement.startsWith('top'));\n }, []);\n // Reset the flag when the dropdown is closed.\n if (prevIsOpen !== isOpen) {\n setPrevIsOpen(isOpen);\n if (!isOpen) {\n setDropdownAbove(false);\n }\n }\n\n const sizeOptions: SizeOptions = {\n isMaxWidthAdjusted: false,\n isMaxHeightAdjusted: true\n };\n\n // On mobile phones, the dropdown becomes a sheet.\n const shouldShowSheet = isPhone();\n\n const { datePicker_label } = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n const datePickerAriaLabel = datePicker_label();\n\n const datePickerMainContent = (\n <DatePicker\n dayFormatter={dayFormatter}\n daysOutsideMonth={daysOutsideMonth}\n height={!shouldShowSheet ? 'auto' : undefined}\n onCommit={onCommit}\n max={max}\n min={min}\n // for sheet, we want the width to grow to the width of the sheet, otherwise it will use the theme default.\n maxWidth={shouldShowSheet ? '100%' : undefined}\n width=\"100%\"\n monthAndYearPicker={monthAndYearPicker}\n testId={testId}\n todayTimeZone={todayTimeZone}\n todayButton={todayButton}\n value={value}\n weekDisplay={weekDisplay}\n />\n );\n\n const inlineUserAssistanceFooter =\n isOpen &&\n (!isDropdownAbove || shouldShowSheet) &&\n !isDisabled &&\n !isReadonly &&\n (assistiveText || helpSourceLink || (messages && messages.length > 0)) &&\n (userAssistanceDensity === 'efficient' || userAssistanceDensity === 'reflow') ? (\n <FormFieldContext.Provider value={{ isFocused: true }}>\n <div class={userAssistanceStyles}>\n <InlineUserAssistance\n assistiveText={assistiveText}\n fieldLabel={label}\n helpSourceLink={helpSourceLink}\n helpSourceText={helpSourceText}\n messages={messages}\n userAssistanceDensity={userAssistanceDensity}\n />\n </div>\n </FormFieldContext.Provider>\n ) : undefined;\n\n const contentTestId = testId ? testId + (shouldShowSheet ? '_sheet' : '_dropdown') : undefined;\n\n // The same content is displayed either in a dropdown or sheet: date picker and inline UA.\n // Add styling to the dropdown to enforce a fixed width.\n const dropdownContent = (\n <div class={dropdownStyles}>\n <SectionedContent\n aria-label={datePickerAriaLabel}\n footer={inlineUserAssistanceFooter}\n hasFocusTrap={true}\n main={datePickerMainContent}\n role=\"dialog\"\n testId={contentTestId}\n />\n </div>\n );\n\n const dropdown = shouldShowSheet ? (\n <Sheet initialFocus=\"firstFocusable\" isOpen={isOpen} onClose={onClose}>\n <SectionedContent\n aria-label={datePickerAriaLabel}\n footer={inlineUserAssistanceFooter}\n hasFocusTrap={true}\n main={datePickerMainContent}\n role=\"dialog\"\n testId={contentTestId}\n />\n </Sheet>\n ) : (\n <StickyPositioningDropdown\n anchorRef={anchorRef}\n initialFocus=\"firstFocusable\"\n isOpen={isOpen}\n onClose={onClose}\n onPosition={handleDropdownPosition}\n sizeOptions={sizeOptions}>\n {dropdownContent}\n </StickyPositioningDropdown>\n );\n\n return dropdown;\n};\n\nconst isPhone = () => {\n return getClientHints().deviceType === 'phone';\n};\n\nexport { InputDatePickerDropdown, type CloseDetail };\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 { useReducer } from 'preact/hooks';\nimport type { CalendarDate, CalendarDateRequired } from '#utils/UNSAFE_calendarDateUtils';\nimport { isCompleteCalendarDate } from '#utils/UNSAFE_calendarDateUtils';\n\ntype InputDatePickerState = {\n /**\n * If dateValue is a complete date, then completeDateValue is the same as dateValue\n * otherwise is is undefined. We need to maintain separate states because\n * InputDateMask uses CalendarDate, but DatePicker uses CalendarDateRequired.\n * If the user types a partial date then opens the picker, we treat that as\n * no selection. The picker opens to the current month showing today.\n */\n completeDateValue?: CalendarDateRequired;\n\n /**\n * Represents the current date value of the component. The user either selected\n * the date in the picker, or typed it into the date field.\n */\n dateValue?: CalendarDate;\n};\n\ntype DateChangedAction = { type: 'dateChanged'; data?: CalendarDate };\ntype DateResetAction = { type: 'reset'; data?: CalendarDate };\ntype DateSelectedAction = { type: 'dateSelected'; data?: CalendarDateRequired };\ntype InputDatePickerReducerAction = DateChangedAction | DateResetAction | DateSelectedAction;\n\n// If dateVal is a complete date, return it as a CalendarDateRequired\n// otherwise return undefined.\nconst convertToCalendarDateRequired = (dateVal?: CalendarDate) => {\n return !dateVal || !isCompleteCalendarDate(dateVal)\n ? undefined\n : (dateVal as CalendarDateRequired);\n};\n\n// Use a reducer function to manage InputDatePickerState.\nconst inputDatePickerReducer = (\n state: InputDatePickerState,\n action: InputDatePickerReducerAction\n): InputDatePickerState => {\n switch (action.type) {\n case 'dateChanged': {\n return {\n ...state,\n dateValue: action.data,\n completeDateValue: convertToCalendarDateRequired(action.data)\n };\n }\n case 'dateSelected': {\n return { ...state, dateValue: action.data, completeDateValue: action.data };\n }\n case 'reset': {\n return {\n completeDateValue: convertToCalendarDateRequired(action.data),\n dateValue: action.data\n };\n }\n default:\n return state;\n }\n};\n\ntype Props = {\n /**\n * The value of the InputDatePicker, or undefined.\n */\n value?: CalendarDate;\n};\n\n/**\n * useInputDatePickerState calls useReducer to determine the initial state. Any changes to that state\n * are managed by dispatching actions to the reducer function.\n */\nconst useInputDatePickerState = ({ value }: Props) => {\n const [state, dispatch] = useReducer(inputDatePickerReducer, {\n completeDateValue: convertToCalendarDateRequired(value),\n dateValue: value\n });\n\n return { state, dispatch };\n};\n\nexport { useInputDatePickerState };\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 type { ComponentProps, RefObject } from 'preact';\nimport { useCallback, useEffect, useRef, useState } from 'preact/hooks';\nimport type { CalendarDate, CalendarDateRequired } from '#utils/UNSAFE_calendarDateUtils';\nimport { calendarDatesAreDifferent } from '#utils/PRIVATE_dayUtils';\nimport { DatePicker } from '#UNSAFE_DatePicker';\nimport { CloseDetail, InputDatePickerDropdown } from './InputDatePickerDropdown';\nimport { IconButton } from '#UNSAFE_IconButton';\nimport { InputDateMask } from '#UNSAFE_InputDateMask';\nimport { InputDatePicker } from './InputDatePicker';\nimport { useInputDatePickerState } from './useInputDatePickerState';\nimport type { ValueUpdateDetail } from '#utils/UNSAFE_valueUpdateDetail';\n\ntype InputDatePickerProps = ComponentProps<typeof InputDatePicker>;\ntype InputDateMaskProps = ComponentProps<typeof InputDateMask>;\ntype DatePickerProps = ComponentProps<typeof DatePicker>;\ntype IconButtonProps = ComponentProps<typeof IconButton>;\ntype DropdownProps = ComponentProps<typeof InputDatePickerDropdown>;\n\ntype Props = {\n onCommit: InputDatePickerProps['onCommit'];\n onInput: InputDatePickerProps['onInput'];\n value: InputDatePickerProps['value'];\n};\n\n/**\n * Hook that provides handlers and other functionality for InputDatePicker.\n */\nconst useInputDatePicker = ({ onCommit, onInput, value: currentValue }: Props) => {\n // Whether the dropdown is open.\n const [isOpen, setIsOpen] = useState(false);\n\n // Ref to the calendar icon button.\n const iconRef: RefObject<HTMLButtonElement> = useRef<HTMLButtonElement>(null);\n\n // Ref to the InputDateMask component.\n const maskRef: RefObject<HTMLElement> = useRef<HTMLElement>(null);\n\n // Keep track of whether the dropdown was just dismissed from an outside mousedown event.\n const outsideMousedownRef = useRef<boolean>(false);\n const outsideMousedownTimerRef = useRef<ReturnType<typeof setTimeout> | undefined>();\n\n // Keep track of the last date values passed to onInput and onCommit.\n const lastCommittedDateRef = useRef<CalendarDate | undefined>(currentValue);\n const lastDateRef = useRef<CalendarDate | undefined>(currentValue);\n\n // Keep track of the last controlled value passed from the parent, so we can detect a programmatic change.\n const lastValueFromParentRef = useRef<CalendarDate | undefined>(currentValue);\n\n // Keep track of whether a date was selected in the date picker.\n const dateSelectedRef = useRef<boolean>(false);\n\n const { state, dispatch } = useInputDatePickerState({ value: currentValue });\n\n // If a new value is being pushed from the parent, and that value differs from\n // the current value of the reducer, then this is a programmatic update\n // and we need to call 'reset' to update the reducer state. Otherwise, the only\n // time the reducer state is updated from the value is on mount.\n if (calendarDatesAreDifferent(lastValueFromParentRef.current, currentValue)) {\n lastValueFromParentRef.current = currentValue;\n if (calendarDatesAreDifferent(currentValue, state.dateValue)) {\n dispatch({ type: 'reset', data: currentValue });\n lastDateRef.current = currentValue;\n lastCommittedDateRef.current = currentValue;\n }\n }\n\n // Reducer updates are async, so wait until the state updates and then call our callbacks.\n useEffect(() => {\n if (calendarDatesAreDifferent(state.dateValue, lastDateRef.current)) {\n onInput({ previousValue: lastDateRef.current, value: state.dateValue });\n lastDateRef.current = state.dateValue;\n }\n if (\n dateSelectedRef.current &&\n calendarDatesAreDifferent(state.dateValue, lastCommittedDateRef.current)\n ) {\n onCommit?.({ previousValue: lastCommittedDateRef.current, value: state.dateValue });\n lastCommittedDateRef.current = state.dateValue;\n dateSelectedRef.current = false;\n }\n }, [onCommit, onInput, state.dateValue]);\n\n // Handle onInput from InputDateMask as segment values are being added or changed in the input field.\n // We wait for the state to update before calling onInput.\n const maskInputHandler = useCallback<InputDateMaskProps['onInput']>(\n (detail: ValueUpdateDetail<CalendarDate>) => {\n dispatch({ type: 'dateChanged', data: detail.value });\n },\n [dispatch]\n );\n\n // Handle onCommit from InputDateMask, which is called when the user presses Enter or the field is blurred.\n const maskCommitHandler = useCallback<NonNullable<InputDateMaskProps['onCommit']>>(() => {\n // If the current date value differs from the last committed value, then call onCommit.\n if (calendarDatesAreDifferent(lastCommittedDateRef.current, state.dateValue)) {\n onCommit?.({ value: state.dateValue, previousValue: lastCommittedDateRef.current });\n lastCommittedDateRef.current = state.dateValue;\n }\n }, [onCommit, state.dateValue]);\n\n // Respond to onAction event from the calendar icon button. Toggles the date picker dropdown.\n const calendarIconActionHandler = useCallback<NonNullable<IconButtonProps['onAction']>>(() => {\n // Only toggle the value of isOpen if we didn't just dismiss the dropdown.\n if (!outsideMousedownRef.current) {\n setIsOpen((prevIsOpen) => !prevIsOpen);\n }\n outsideMousedownRef.current = false;\n }, []);\n\n const dropdownCloseHandler = useCallback<NonNullable<DropdownProps['onClose']>>(\n (detail: CloseDetail) => {\n // Keep track of when the dropdown is closed via outside mousedown, including when the calendar icon\n // is clicked. We need this in order to toggle visibility of the picker and dropdown.\n if (detail.reason === 'outsideMousedown') {\n outsideMousedownRef.current = true;\n clearTimeout(outsideMousedownTimerRef.current);\n\n // Clear the flag after a short delay to ensure the dropdown can be opened again.\n outsideMousedownTimerRef.current = setTimeout(() => {\n outsideMousedownRef.current = false;\n }, 200);\n } else if (detail.reason === 'dismissed' || detail.reason === 'keyboardDismissed') {\n // Focus the calendar icon when the dropdown is closed.\n iconRef.current?.focus();\n }\n setIsOpen(false);\n },\n []\n );\n\n // Handle date selection in the picker.\n // - Updates the value in state.\n // - Closes the dropdown.\n // - Sets focus to the date field.\n const datePickerCommitHandler = useCallback<DatePickerProps['onCommit']>(\n (detail: ValueUpdateDetail<CalendarDateRequired>) => {\n // Set focus to the calendar icon when a date is selected.\n iconRef.current?.focus();\n\n // Set a ref indicating a date was selected.\n dateSelectedRef.current = true;\n dispatch({ type: 'dateSelected', data: detail.value });\n setIsOpen(false);\n },\n [dispatch]\n );\n\n return {\n calendarIconActionHandler,\n datePickerCommitHandler,\n dropdownCloseHandler,\n completeDateValue: state.completeDateValue,\n dateValue: state.dateValue,\n iconRef,\n isOpen,\n maskCommitHandler,\n maskInputHandler,\n maskRef\n };\n};\n\nexport { useInputDatePicker };\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 */\nimport { ComponentProps, Ref } from 'preact';\nimport { forwardRef } from 'preact/compat';\nimport { useImperativeHandle, useRef } from 'preact/hooks';\nimport { BundleType } from '../resources/nls/bundle';\nimport { CalendarIcon } from '#PRIVATE_ThemedIcons/CalendarIcon';\nimport {\n CalendarDate,\n CalendarDatePlaceholders,\n InputDateMask,\n InputDateMaskContext\n} from '#UNSAFE_InputDateMask';\nimport { DatePicker } from '#UNSAFE_DatePicker';\nimport { HiddenAccessible } from '#UNSAFE_HiddenAccessible';\nimport { IconButton } from '#UNSAFE_IconButton';\nimport { InputDatePickerDropdown } from './InputDatePickerDropdown';\nimport { FocusableHandle } from '#hooks/UNSAFE_useFocusableTextField';\nimport { merge } from '#utils/UNSAFE_stringUtils';\nimport { useFormContext } from '#hooks/UNSAFE_useFormContext';\nimport { useId } from '#hooks/UNSAFE_useId';\nimport { useInputDatePicker } from './useInputDatePicker';\nimport { useTranslationBundle } from '#hooks/UNSAFE_useTranslationBundle';\nimport { ValueUpdateDetail } from '#utils/UNSAFE_valueUpdateDetail';\n\ntype InputDateMaskProps = ComponentProps<typeof InputDateMask>;\ntype PickedPropsFromInputDateMask = Pick<\n InputDateMaskProps,\n | 'aria-describedby'\n | 'assistiveText'\n | 'columnSpan'\n | 'helpSourceLink'\n | 'helpSourceText'\n | 'isDisabled'\n | 'isReadonly'\n | 'isRequired'\n | 'isRequiredShown'\n | 'label'\n | 'labelEdge'\n | 'labelStartWidth'\n | 'messages'\n | 'textAlign'\n | 'testId'\n | 'userAssistanceDensity'\n | 'variant'\n>;\n\ntype DatePickerProps = ComponentProps<typeof DatePicker>;\ntype PickedPropsFromDatePicker = Pick<\n DatePickerProps,\n | 'dayFormatter'\n | 'daysOutsideMonth'\n | 'max'\n | 'min'\n | 'monthAndYearPicker'\n | 'todayTimeZone'\n | 'todayButton'\n | 'weekDisplay'\n>;\n\ntype Props = PickedPropsFromInputDateMask &\n PickedPropsFromDatePicker & {\n /**\n * If specified, overrides the locale specific order of the individual date segments\n * in the date field as well as the locale specific separator. The value of each placeholder\n * is only used when the type is 'literal', otherwise it is replaced with a translated\n * placeholder for month, day, or year. The placeholders must include month, day, and year.\n */\n masks?: CalendarDatePlaceholders;\n\n /**\n * The current display value of the component.\n * This is a CalendarDate, not CalendarDateRequired, because this is a controlled component and\n * the user may type the month, day, and year separately. If a selection is made in the date\n * picker, then the value is a complete date.\n */\n value?: CalendarDate;\n\n /**\n * Callback invoked when the user commits the entered value by blurring or hitting the enter key.\n * It is also called when a selection is made in the date picker.\n */\n onCommit?: (detail: ValueUpdateDetail<CalendarDate>) => void;\n\n /**\n * Callback invoked each time the user changes the value of a segment. For example, if the user\n * types '12' into the month segment, this callback will be called twice to change the month\n * first to '1' and then '12'.\n */\n onInput: (detail: ValueUpdateDetail<CalendarDate>) => void;\n };\n\n/**\n * InputDatePicker allows users to enter or select a single date using a calendar interface.\n */\nexport const InputDatePicker = forwardRef(\n (\n {\n 'aria-describedby': propDescribedBy,\n assistiveText,\n dayFormatter,\n daysOutsideMonth,\n helpSourceLink,\n helpSourceText,\n isDisabled,\n isReadonly,\n label,\n max,\n messages,\n min,\n monthAndYearPicker,\n todayTimeZone,\n todayButton,\n value,\n onCommit,\n onInput,\n testId,\n userAssistanceDensity: propUserAssistanceDensity,\n weekDisplay,\n ...dateMaskProps\n }: Props,\n ref?: Ref<FocusableHandle>\n ) => {\n const {\n calendarIconActionHandler,\n datePickerCommitHandler,\n completeDateValue,\n dateValue,\n dropdownCloseHandler,\n iconRef,\n isOpen,\n maskCommitHandler,\n maskInputHandler,\n maskRef\n } = useInputDatePicker({\n onCommit,\n onInput,\n value\n });\n\n const mainFieldRef = useRef<HTMLDivElement>(null);\n const { inputDatePicker_selectDate, inputDatePicker_instruction } =\n useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n const calendarIconAriaLabel = inputDatePicker_selectDate();\n\n // We need this to determine if UA/messaging should be shown in the dropdown.\n const { userAssistanceDensity: formUserAssistanceDensity } = useFormContext();\n const userAssistanceDensity = propUserAssistanceDensity ?? formUserAssistanceDensity;\n\n useImperativeHandle(ref!, () => ({\n focus: () => {\n maskRef.current?.focus();\n },\n blur: () => {\n maskRef.current?.blur();\n }\n }));\n\n const maskFieldInstructionId = useId();\n const maskFieldInstructionText = inputDatePicker_instruction();\n const maskFieldInstruction =\n !isDisabled && !isReadonly ? (\n <HiddenAccessible id={maskFieldInstructionId} isHidden={true}>\n {maskFieldInstructionText}\n </HiddenAccessible>\n ) : undefined;\n const ariaDescribedBy =\n !isDisabled && !isReadonly\n ? merge([propDescribedBy, maskFieldInstructionId])\n : propDescribedBy;\n\n const endContent = (\n <IconButton\n aria-haspopup=\"dialog\"\n aria-label={calendarIconAriaLabel}\n isDisabled={isDisabled}\n ref={iconRef}\n size=\"sm\"\n testId={testId ? testId + '_calendarIcon' : undefined}\n variant=\"ghost\"\n onAction={calendarIconActionHandler}>\n <CalendarIcon />\n </IconButton>\n );\n\n const shouldShowDropdown = isOpen as boolean;\n\n return (\n <>\n <InputDateMaskContext.Provider\n value={{ isDropdownOpen: isOpen, isInputDatePickerParent: true }}>\n <InputDateMask\n aria-describedby={ariaDescribedBy}\n assistiveText={assistiveText}\n endContent={endContent}\n helpSourceLink={helpSourceLink}\n helpSourceText={helpSourceText}\n isDisabled={isDisabled}\n isReadonly={isReadonly}\n label={label}\n onCommit={maskCommitHandler}\n onInput={maskInputHandler}\n mainFieldRef={mainFieldRef}\n messages={messages}\n testId={testId}\n ref={maskRef}\n userAssistanceDensity={propUserAssistanceDensity}\n value={dateValue}\n {...dateMaskProps}\n />\n </InputDateMaskContext.Provider>\n\n {maskFieldInstruction}\n\n {shouldShowDropdown && (\n <InputDatePickerDropdown\n anchorRef={mainFieldRef}\n assistiveText={assistiveText}\n dayFormatter={dayFormatter}\n daysOutsideMonth={daysOutsideMonth}\n helpSourceLink={helpSourceLink}\n helpSourceText={helpSourceText}\n isDisabled={isDisabled}\n isReadonly={isReadonly}\n isOpen={isOpen}\n label={label}\n onClose={dropdownCloseHandler}\n onCommit={datePickerCommitHandler}\n max={max}\n messages={messages}\n min={min}\n monthAndYearPicker={monthAndYearPicker}\n testId={testId ? testId + '_datePicker' : undefined}\n todayTimeZone={todayTimeZone}\n todayButton={todayButton}\n userAssistanceDensity={userAssistanceDensity}\n value={completeDateValue}\n weekDisplay={weekDisplay}\n />\n )}\n </>\n );\n }\n);\n"],"names":["useState","useCallback","useTranslationBundle","_jsx","DatePicker","FormFieldContext","userAssistanceStyles","InlineUserAssistance","dropdownStyles","SectionedContent","Sheet","StickyPositioningDropdown","getClientHints","isCompleteCalendarDate","useReducer","useRef","calendarDatesAreDifferent","useEffect","forwardRef","useFormContext","useImperativeHandle","useId","HiddenAccessible","merge","IconButton","CalendarIcon","_jsxs","InputDateMaskContext","InputDateMask"],"mappings":"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"}
1
+ {"version":3,"file":"InputDatePicker-4d36637f.js","sources":["../../src/UNSAFE_InputDatePicker/InputDatePickerDropdown.tsx","../../src/UNSAFE_InputDatePicker/useInputDatePickerState.ts","../../src/UNSAFE_InputDatePicker/useInputDatePicker.ts","../../src/UNSAFE_InputDatePicker/InputDatePicker.tsx"],"sourcesContent":["/**\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 } from 'preact';\nimport { useCallback, useState } from 'preact/hooks';\nimport { BundleType } from '../resources/nls/bundle';\nimport { DatePicker } from '#UNSAFE_DatePicker';\nimport { type CloseDetail as DropdownCloseDetail } from '#UNSAFE_Dropdown';\nimport { getClientHints } from '#utils/PRIVATE_clientHints';\nimport { FormFieldContext } from '../hooks/UNSAFE_useFormFieldContext';\nimport { InlineUserAssistance } from '../UNSAFE_UserAssistance';\nimport { InputDatePicker } from './InputDatePicker';\nimport { dropdownStyles, userAssistanceStyles } from './themes/InputDatePickerDropdownStyles.css';\nimport { PositionData } from '../UNSAFE_Floating';\nimport { StickyPositioningDropdown } from '#PRIVATE_FormControls';\nimport { SectionedContent } from '#PRIVATE_FormControls';\nimport { type CloseDetail as SheetCloseDetail, Sheet } from '#UNSAFE_Sheet';\nimport type { TestIdProps } from '#hooks/UNSAFE_useTestId';\nimport { useTranslationBundle } from '#hooks/UNSAFE_useTranslationBundle';\nimport { SizeOptions } from '#UNSAFE_Floating/Floating'; \n\ntype StickyPositioningDropdownProps = ComponentProps<typeof StickyPositioningDropdown>;\ntype InputDatePickerProps = ComponentProps<typeof InputDatePicker>;\ntype PickedPropsFromInputDatePicker = Pick<\n InputDatePickerProps,\n | 'assistiveText'\n | 'dayFormatter'\n | 'daysOutsideMonth'\n | 'helpSourceLink'\n | 'helpSourceText'\n | 'isDisabled'\n | 'isReadonly'\n | 'label'\n | 'messages'\n | 'min'\n | 'max'\n | 'monthAndYearPicker'\n | 'todayButton'\n | 'todayTimeZone'\n | 'userAssistanceDensity'\n | 'value'\n | 'weekDisplay'\n>;\ntype DatePickerProps = ComponentProps<typeof DatePicker>;\ntype PickedPropsFromDatePicker = Pick<DatePickerProps, 'value' | 'onCommit'>;\ntype PickedPropsFromDropdown = Omit<StickyPositioningDropdownProps, 'onClose'>;\ntype CloseDetail = SheetCloseDetail | DropdownCloseDetail;\n\ntype Props = PickedPropsFromDatePicker &\n PickedPropsFromInputDatePicker &\n PickedPropsFromDropdown &\n TestIdProps & {\n /**\n * Called when the dropdown or sheet is supposed to be closed.\n */\n onClose?: (detail: CloseDetail) => void;\n };\n\n/**\n * Component that renders DatePicker either inside a dropdown or sheet; at small screen\n * widths, it renders inside a sheet. Additionally, when a dropdown is being shown beneath\n * the component, we also show any user assistance text or messages below the picker\n * because otherwise that information would be obscured from view. When a sheet is being\n * shown, it will always display UA and messages at the bottom of the sheet.\n */\nconst InputDatePickerDropdown = ({\n anchorRef,\n assistiveText,\n dayFormatter,\n daysOutsideMonth,\n helpSourceLink,\n helpSourceText,\n isDisabled,\n isOpen,\n isReadonly,\n label,\n onClose,\n onCommit,\n max,\n messages,\n min,\n monthAndYearPicker,\n testId,\n todayButton,\n todayTimeZone,\n userAssistanceDensity,\n value,\n weekDisplay\n}: Props) => {\n // If the dropdown opens above the component, we don't want to show UA or messages.\n const [isDropdownAbove, setDropdownAbove] = useState(false);\n const [prevIsOpen, setPrevIsOpen] = useState(isOpen);\n const handleDropdownPosition = useCallback<\n NonNullable<StickyPositioningDropdownProps['onPosition']>\n >((data: PositionData) => {\n setDropdownAbove(data.placement.startsWith('top'));\n }, []);\n // Reset the flag when the dropdown is closed.\n if (prevIsOpen !== isOpen) {\n setPrevIsOpen(isOpen);\n if (!isOpen) {\n setDropdownAbove(false);\n }\n }\n\n const sizeOptions: SizeOptions = {\n isMaxWidthAdjusted: false,\n isMaxHeightAdjusted: true\n };\n\n // On mobile phones, the dropdown becomes a sheet.\n const shouldShowSheet = isPhone();\n\n const { datePicker_label } = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n const datePickerAriaLabel = datePicker_label();\n\n const datePickerMainContent = (\n <DatePicker\n dayFormatter={dayFormatter}\n daysOutsideMonth={daysOutsideMonth}\n height={!shouldShowSheet ? 'auto' : undefined}\n onCommit={onCommit}\n max={max}\n min={min}\n // for sheet, we want the width to grow to the width of the sheet, otherwise it will use the theme default.\n maxWidth={shouldShowSheet ? '100%' : undefined}\n width=\"100%\"\n monthAndYearPicker={monthAndYearPicker}\n testId={testId}\n todayTimeZone={todayTimeZone}\n todayButton={todayButton}\n value={value}\n weekDisplay={weekDisplay}\n />\n );\n\n const inlineUserAssistanceFooter =\n isOpen &&\n (!isDropdownAbove || shouldShowSheet) &&\n !isDisabled &&\n !isReadonly &&\n (assistiveText || helpSourceLink || (messages && messages.length > 0)) &&\n (userAssistanceDensity === 'efficient' || userAssistanceDensity === 'reflow') ? (\n <FormFieldContext.Provider value={{ isFocused: true }}>\n <div class={userAssistanceStyles}>\n <InlineUserAssistance\n assistiveText={assistiveText}\n fieldLabel={label}\n helpSourceLink={helpSourceLink}\n helpSourceText={helpSourceText}\n messages={messages}\n userAssistanceDensity={userAssistanceDensity}\n />\n </div>\n </FormFieldContext.Provider>\n ) : undefined;\n\n const contentTestId = testId ? testId + (shouldShowSheet ? '_sheet' : '_dropdown') : undefined;\n\n // The same content is displayed either in a dropdown or sheet: date picker and inline UA.\n // Add styling to the dropdown to enforce a fixed width.\n const dropdownContent = (\n <div class={dropdownStyles}>\n <SectionedContent\n aria-label={datePickerAriaLabel}\n footer={inlineUserAssistanceFooter}\n hasFocusTrap={true}\n main={datePickerMainContent}\n role=\"dialog\"\n testId={contentTestId}\n />\n </div>\n );\n\n const dropdown = shouldShowSheet ? (\n <Sheet initialFocus=\"firstFocusable\" isOpen={isOpen} onClose={onClose}>\n <SectionedContent\n aria-label={datePickerAriaLabel}\n footer={inlineUserAssistanceFooter}\n hasFocusTrap={true}\n main={datePickerMainContent}\n role=\"dialog\"\n testId={contentTestId}\n />\n </Sheet>\n ) : (\n <StickyPositioningDropdown\n anchorRef={anchorRef}\n initialFocus=\"firstFocusable\"\n isOpen={isOpen}\n onClose={onClose}\n onPosition={handleDropdownPosition}\n sizeOptions={sizeOptions}>\n {dropdownContent}\n </StickyPositioningDropdown>\n );\n\n return dropdown;\n};\n\nconst isPhone = () => {\n return getClientHints().deviceType === 'phone';\n};\n\nexport { InputDatePickerDropdown, type CloseDetail };\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 { useReducer } from 'preact/hooks';\nimport type { CalendarDate, CalendarDateRequired } from '#utils/UNSAFE_calendarDateUtils';\nimport { isCompleteCalendarDate } from '#utils/UNSAFE_calendarDateUtils';\n\ntype InputDatePickerState = {\n /**\n * If dateValue is a complete date, then completeDateValue is the same as dateValue\n * otherwise is is undefined. We need to maintain separate states because\n * InputDateMask uses CalendarDate, but DatePicker uses CalendarDateRequired.\n * If the user types a partial date then opens the picker, we treat that as\n * no selection. The picker opens to the current month showing today.\n */\n completeDateValue?: CalendarDateRequired;\n\n /**\n * Represents the current date value of the component. The user either selected\n * the date in the picker, or typed it into the date field.\n */\n dateValue?: CalendarDate;\n};\n\ntype DateChangedAction = { type: 'dateChanged'; data?: CalendarDate };\ntype DateResetAction = { type: 'reset'; data?: CalendarDate };\ntype DateSelectedAction = { type: 'dateSelected'; data?: CalendarDateRequired };\ntype InputDatePickerReducerAction = DateChangedAction | DateResetAction | DateSelectedAction;\n\n// If dateVal is a complete date, return it as a CalendarDateRequired\n// otherwise return undefined.\nconst convertToCalendarDateRequired = (dateVal?: CalendarDate) => {\n return !dateVal || !isCompleteCalendarDate(dateVal)\n ? undefined\n : (dateVal as CalendarDateRequired);\n};\n\n// Use a reducer function to manage InputDatePickerState.\nconst inputDatePickerReducer = (\n state: InputDatePickerState,\n action: InputDatePickerReducerAction\n): InputDatePickerState => {\n switch (action.type) {\n case 'dateChanged': {\n return {\n ...state,\n dateValue: action.data,\n completeDateValue: convertToCalendarDateRequired(action.data)\n };\n }\n case 'dateSelected': {\n return { ...state, dateValue: action.data, completeDateValue: action.data };\n }\n case 'reset': {\n return {\n completeDateValue: convertToCalendarDateRequired(action.data),\n dateValue: action.data\n };\n }\n default:\n return state;\n }\n};\n\ntype Props = {\n /**\n * The value of the InputDatePicker, or undefined.\n */\n value?: CalendarDate;\n};\n\n/**\n * useInputDatePickerState calls useReducer to determine the initial state. Any changes to that state\n * are managed by dispatching actions to the reducer function.\n */\nconst useInputDatePickerState = ({ value }: Props) => {\n const [state, dispatch] = useReducer(inputDatePickerReducer, {\n completeDateValue: convertToCalendarDateRequired(value),\n dateValue: value\n });\n\n return { state, dispatch };\n};\n\nexport { useInputDatePickerState };\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 type { ComponentProps, RefObject } from 'preact';\nimport { useCallback, useEffect, useRef, useState } from 'preact/hooks';\nimport type { CalendarDate, CalendarDateRequired } from '#utils/UNSAFE_calendarDateUtils';\nimport { calendarDatesAreDifferent } from '#utils/PRIVATE_dayUtils';\nimport { DatePicker } from '#UNSAFE_DatePicker';\nimport { CloseDetail, InputDatePickerDropdown } from './InputDatePickerDropdown';\nimport { IconButton } from '#UNSAFE_IconButton';\nimport { InputDateMask } from '#UNSAFE_InputDateMask';\nimport { InputDatePicker } from './InputDatePicker';\nimport { useInputDatePickerState } from './useInputDatePickerState';\nimport type { ValueUpdateDetail } from '#utils/UNSAFE_valueUpdateDetail';\n\ntype InputDatePickerProps = ComponentProps<typeof InputDatePicker>;\ntype InputDateMaskProps = ComponentProps<typeof InputDateMask>;\ntype DatePickerProps = ComponentProps<typeof DatePicker>;\ntype IconButtonProps = ComponentProps<typeof IconButton>;\ntype DropdownProps = ComponentProps<typeof InputDatePickerDropdown>;\n\ntype Props = {\n onCommit: InputDatePickerProps['onCommit'];\n onInput: InputDatePickerProps['onInput'];\n value: InputDatePickerProps['value'];\n};\n\n/**\n * Hook that provides handlers and other functionality for InputDatePicker.\n */\nconst useInputDatePicker = ({ onCommit, onInput, value: currentValue }: Props) => {\n // Whether the dropdown is open.\n const [isOpen, setIsOpen] = useState(false);\n\n // Ref to the calendar icon button.\n const iconRef: RefObject<HTMLButtonElement> = useRef<HTMLButtonElement>(null);\n\n // Ref to the InputDateMask component.\n const maskRef: RefObject<HTMLElement> = useRef<HTMLElement>(null);\n\n // Keep track of whether the dropdown was just dismissed from an outside mousedown event.\n const outsideMousedownRef = useRef<boolean>(false);\n const outsideMousedownTimerRef = useRef<ReturnType<typeof setTimeout> | undefined>();\n\n // Keep track of the last date values passed to onInput and onCommit.\n const lastCommittedDateRef = useRef<CalendarDate | undefined>(currentValue);\n const lastDateRef = useRef<CalendarDate | undefined>(currentValue);\n\n // Keep track of the last controlled value passed from the parent, so we can detect a programmatic change.\n const lastValueFromParentRef = useRef<CalendarDate | undefined>(currentValue);\n\n // Keep track of whether a date was selected in the date picker.\n const dateSelectedRef = useRef<boolean>(false);\n\n const { state, dispatch } = useInputDatePickerState({ value: currentValue });\n\n // If a new value is being pushed from the parent, and that value differs from\n // the current value of the reducer, then this is a programmatic update\n // and we need to call 'reset' to update the reducer state. Otherwise, the only\n // time the reducer state is updated from the value is on mount.\n if (calendarDatesAreDifferent(lastValueFromParentRef.current, currentValue)) {\n lastValueFromParentRef.current = currentValue;\n if (calendarDatesAreDifferent(currentValue, state.dateValue)) {\n dispatch({ type: 'reset', data: currentValue });\n lastDateRef.current = currentValue;\n lastCommittedDateRef.current = currentValue;\n }\n }\n\n // Reducer updates are async, so wait until the state updates and then call our callbacks.\n useEffect(() => {\n if (calendarDatesAreDifferent(state.dateValue, lastDateRef.current)) {\n onInput({ previousValue: lastDateRef.current, value: state.dateValue });\n lastDateRef.current = state.dateValue;\n }\n if (\n dateSelectedRef.current &&\n calendarDatesAreDifferent(state.dateValue, lastCommittedDateRef.current)\n ) {\n onCommit?.({ previousValue: lastCommittedDateRef.current, value: state.dateValue });\n lastCommittedDateRef.current = state.dateValue;\n dateSelectedRef.current = false;\n }\n }, [onCommit, onInput, state.dateValue]);\n\n // Handle onInput from InputDateMask as segment values are being added or changed in the input field.\n // We wait for the state to update before calling onInput.\n const maskInputHandler = useCallback<InputDateMaskProps['onInput']>(\n (detail: ValueUpdateDetail<CalendarDate>) => {\n dispatch({ type: 'dateChanged', data: detail.value });\n },\n [dispatch]\n );\n\n // Handle onCommit from InputDateMask, which is called when the user presses Enter or the field is blurred.\n const maskCommitHandler = useCallback<NonNullable<InputDateMaskProps['onCommit']>>(() => {\n // If the current date value differs from the last committed value, then call onCommit.\n if (calendarDatesAreDifferent(lastCommittedDateRef.current, state.dateValue)) {\n onCommit?.({ value: state.dateValue, previousValue: lastCommittedDateRef.current });\n lastCommittedDateRef.current = state.dateValue;\n }\n }, [onCommit, state.dateValue]);\n\n // Respond to onAction event from the calendar icon button. Toggles the date picker dropdown.\n const calendarIconActionHandler = useCallback<NonNullable<IconButtonProps['onAction']>>(() => {\n // Only toggle the value of isOpen if we didn't just dismiss the dropdown.\n if (!outsideMousedownRef.current) {\n setIsOpen((prevIsOpen) => !prevIsOpen);\n }\n outsideMousedownRef.current = false;\n }, []);\n\n const dropdownCloseHandler = useCallback<NonNullable<DropdownProps['onClose']>>(\n (detail: CloseDetail) => {\n // Keep track of when the dropdown is closed via outside mousedown, including when the calendar icon\n // is clicked. We need this in order to toggle visibility of the picker and dropdown.\n if (detail.reason === 'outsideMousedown') {\n outsideMousedownRef.current = true;\n clearTimeout(outsideMousedownTimerRef.current);\n\n // Clear the flag after a short delay to ensure the dropdown can be opened again.\n outsideMousedownTimerRef.current = setTimeout(() => {\n outsideMousedownRef.current = false;\n }, 200);\n } else if (detail.reason === 'dismissed' || detail.reason === 'keyboardDismissed') {\n // Focus the calendar icon when the dropdown is closed.\n iconRef.current?.focus();\n }\n setIsOpen(false);\n },\n []\n );\n\n // Handle date selection in the picker.\n // - Updates the value in state.\n // - Closes the dropdown.\n // - Sets focus to the date field.\n const datePickerCommitHandler = useCallback<DatePickerProps['onCommit']>(\n (detail: ValueUpdateDetail<CalendarDateRequired>) => {\n // Set focus to the calendar icon when a date is selected.\n iconRef.current?.focus();\n\n // Set a ref indicating a date was selected.\n dateSelectedRef.current = true;\n dispatch({ type: 'dateSelected', data: detail.value });\n setIsOpen(false);\n },\n [dispatch]\n );\n\n return {\n calendarIconActionHandler,\n datePickerCommitHandler,\n dropdownCloseHandler,\n completeDateValue: state.completeDateValue,\n dateValue: state.dateValue,\n iconRef,\n isOpen,\n maskCommitHandler,\n maskInputHandler,\n maskRef\n };\n};\n\nexport { useInputDatePicker };\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 */\nimport { ComponentProps, Ref } from 'preact';\nimport { forwardRef } from 'preact/compat';\nimport { useImperativeHandle, useRef } from 'preact/hooks';\nimport { BundleType } from '../resources/nls/bundle';\nimport { CalendarIcon } from '#PRIVATE_ThemedIcons/CalendarIcon';\nimport {\n CalendarDate,\n CalendarDatePlaceholders,\n InputDateMask,\n InputDateMaskContext\n} from '#UNSAFE_InputDateMask';\nimport { DatePicker } from '#UNSAFE_DatePicker';\nimport { HiddenAccessible } from '#UNSAFE_HiddenAccessible';\nimport { IconButton } from '#UNSAFE_IconButton';\nimport { InputDatePickerDropdown } from './InputDatePickerDropdown';\nimport { FocusableHandle } from '#hooks/UNSAFE_useFocusableTextField';\nimport { merge } from '#utils/UNSAFE_stringUtils';\nimport { useFormContext } from '#hooks/UNSAFE_useFormContext';\nimport { useId } from '#hooks/UNSAFE_useId';\nimport { useInputDatePicker } from './useInputDatePicker';\nimport { useTranslationBundle } from '#hooks/UNSAFE_useTranslationBundle';\nimport { ValueUpdateDetail } from '#utils/UNSAFE_valueUpdateDetail';\n\ntype InputDateMaskProps = ComponentProps<typeof InputDateMask>;\ntype PickedPropsFromInputDateMask = Pick<\n InputDateMaskProps,\n | 'aria-describedby'\n | 'assistiveText'\n | 'columnSpan'\n | 'helpSourceLink'\n | 'helpSourceText'\n | 'isDisabled'\n | 'isReadonly'\n | 'isRequired'\n | 'isRequiredShown'\n | 'label'\n | 'labelEdge'\n | 'labelStartWidth'\n | 'messages'\n | 'textAlign'\n | 'testId'\n | 'userAssistanceDensity'\n | 'variant'\n>;\n\ntype DatePickerProps = ComponentProps<typeof DatePicker>;\ntype PickedPropsFromDatePicker = Pick<\n DatePickerProps,\n | 'dayFormatter'\n | 'daysOutsideMonth'\n | 'max'\n | 'min'\n | 'monthAndYearPicker'\n | 'todayTimeZone'\n | 'todayButton'\n | 'weekDisplay'\n>;\n\ntype Props = PickedPropsFromInputDateMask &\n PickedPropsFromDatePicker & {\n /**\n * If specified, overrides the locale specific order of the individual date segments\n * in the date field as well as the locale specific separator. The value of each placeholder\n * is only used when the type is 'literal', otherwise it is replaced with a translated\n * placeholder for month, day, or year. The placeholders must include month, day, and year.\n */\n masks?: CalendarDatePlaceholders;\n\n /**\n * The current display value of the component.\n * This is a CalendarDate, not CalendarDateRequired, because this is a controlled component and\n * the user may type the month, day, and year separately. If a selection is made in the date\n * picker, then the value is a complete date.\n */\n value?: CalendarDate;\n\n /**\n * Callback invoked when the user commits the entered value by blurring or hitting the enter key.\n * It is also called when a selection is made in the date picker.\n */\n onCommit?: (detail: ValueUpdateDetail<CalendarDate>) => void;\n\n /**\n * Callback invoked each time the user changes the value of a segment. For example, if the user\n * types '12' into the month segment, this callback will be called twice to change the month\n * first to '1' and then '12'.\n */\n onInput: (detail: ValueUpdateDetail<CalendarDate>) => void;\n };\n\n/**\n * InputDatePicker allows users to enter or select a single date using a calendar interface.\n */\nexport const InputDatePicker = forwardRef(\n (\n {\n 'aria-describedby': propDescribedBy,\n assistiveText,\n dayFormatter,\n daysOutsideMonth,\n helpSourceLink,\n helpSourceText,\n isDisabled,\n isReadonly,\n label,\n max,\n messages,\n min,\n monthAndYearPicker,\n todayTimeZone,\n todayButton,\n value,\n onCommit,\n onInput,\n testId,\n userAssistanceDensity: propUserAssistanceDensity,\n weekDisplay,\n ...dateMaskProps\n }: Props,\n ref?: Ref<FocusableHandle>\n ) => {\n const {\n calendarIconActionHandler,\n datePickerCommitHandler,\n completeDateValue,\n dateValue,\n dropdownCloseHandler,\n iconRef,\n isOpen,\n maskCommitHandler,\n maskInputHandler,\n maskRef\n } = useInputDatePicker({\n onCommit,\n onInput,\n value\n });\n\n const mainFieldRef = useRef<HTMLDivElement>(null);\n const { inputDatePicker_selectDate, inputDatePicker_instruction } =\n useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n const calendarIconAriaLabel = inputDatePicker_selectDate();\n\n // We need this to determine if UA/messaging should be shown in the dropdown.\n const { userAssistanceDensity: formUserAssistanceDensity } = useFormContext();\n const userAssistanceDensity = propUserAssistanceDensity ?? formUserAssistanceDensity;\n\n useImperativeHandle(ref!, () => ({\n focus: () => {\n maskRef.current?.focus();\n },\n blur: () => {\n maskRef.current?.blur();\n }\n }));\n\n const maskFieldInstructionId = useId();\n const maskFieldInstructionText = inputDatePicker_instruction();\n const maskFieldInstruction =\n !isDisabled && !isReadonly ? (\n <HiddenAccessible id={maskFieldInstructionId} isHidden={true}>\n {maskFieldInstructionText}\n </HiddenAccessible>\n ) : undefined;\n const ariaDescribedBy =\n !isDisabled && !isReadonly\n ? merge([propDescribedBy, maskFieldInstructionId])\n : propDescribedBy;\n\n const endContent = (\n <IconButton\n aria-haspopup=\"dialog\"\n aria-label={calendarIconAriaLabel}\n isDisabled={isDisabled}\n ref={iconRef}\n size=\"sm\"\n testId={testId ? testId + '_calendarIcon' : undefined}\n variant=\"ghost\"\n onAction={calendarIconActionHandler}>\n <CalendarIcon />\n </IconButton>\n );\n\n const shouldShowDropdown = isOpen as boolean;\n\n return (\n <>\n <InputDateMaskContext.Provider\n value={{ isDropdownOpen: isOpen, isInputDatePickerParent: true }}>\n <InputDateMask\n aria-describedby={ariaDescribedBy}\n assistiveText={assistiveText}\n endContent={endContent}\n helpSourceLink={helpSourceLink}\n helpSourceText={helpSourceText}\n isDisabled={isDisabled}\n isReadonly={isReadonly}\n label={label}\n onCommit={maskCommitHandler}\n onInput={maskInputHandler}\n mainFieldRef={mainFieldRef}\n messages={messages}\n testId={testId}\n ref={maskRef}\n userAssistanceDensity={propUserAssistanceDensity}\n value={dateValue}\n {...dateMaskProps}\n />\n </InputDateMaskContext.Provider>\n\n {maskFieldInstruction}\n\n {shouldShowDropdown && (\n <InputDatePickerDropdown\n anchorRef={mainFieldRef}\n assistiveText={assistiveText}\n dayFormatter={dayFormatter}\n daysOutsideMonth={daysOutsideMonth}\n helpSourceLink={helpSourceLink}\n helpSourceText={helpSourceText}\n isDisabled={isDisabled}\n isReadonly={isReadonly}\n isOpen={isOpen}\n label={label}\n onClose={dropdownCloseHandler}\n onCommit={datePickerCommitHandler}\n max={max}\n messages={messages}\n min={min}\n monthAndYearPicker={monthAndYearPicker}\n testId={testId ? testId + '_datePicker' : undefined}\n todayTimeZone={todayTimeZone}\n todayButton={todayButton}\n userAssistanceDensity={userAssistanceDensity}\n value={completeDateValue}\n weekDisplay={weekDisplay}\n />\n )}\n </>\n );\n }\n);\n"],"names":["useState","useCallback","useTranslationBundle","_jsx","DatePicker","FormFieldContext","userAssistanceStyles","InlineUserAssistance","dropdownStyles","SectionedContent","Sheet","StickyPositioningDropdown","getClientHints","isCompleteCalendarDate","useReducer","useRef","calendarDatesAreDifferent","useEffect","forwardRef","useFormContext","useImperativeHandle","useId","HiddenAccessible","merge","IconButton","CalendarIcon","_jsxs","InputDateMaskContext","InputDateMask"],"mappings":"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"}
@@ -43,7 +43,8 @@
43
43
  }
44
44
  .LabelStyles_insideNonReadonly__t9j3mr7 {
45
45
  position: absolute;
46
- inset-inline: var(--textToEdgePadding__w6gg1y9);
46
+ max-width: calc(100% - 2 * var(--textToEdgePadding__w6gg1y9));
47
+ inset-inline-start: var(--textToEdgePadding__w6gg1y9);
47
48
  top: calc(var(--insideEdgeHeight__w6gg1yh)/ 2);
48
49
  transform: translateY(-50%);
49
50
  transition-property: all;
@@ -12,20 +12,7 @@ var useCollectionFocusRing = require('./useCollectionFocusRing-5af82f66.js');
12
12
  var useCurrentKey = require('./useCurrentKey-88495da2.js');
13
13
  var compat = require('preact/compat');
14
14
  var useTestId = require('./useTestId-5e6af45d.js');
15
- require('./UNSAFE_Text/themes/TextStyles.css.js');
16
15
  var BaseNavigationListItem = require('./BaseNavigationListItem-50e4c603.js');
17
- require('./Flex-e7a85bef.js');
18
- require('./logger-2b636482.js');
19
- require('preact');
20
- require('./LayerHost-a8c7f182.js');
21
-
22
-
23
- require('./hooks/UNSAFE_useTooltip/themes/redwood/TooltipContentVariants.css.js');
24
- require('./tooltipUtils-669c2ae0.js');
25
-
26
- require('./UNSAFE_NavigationList/themes/NavigationListItemStyles.css.js');
27
-
28
- require('./UNSAFE_NavigationList/themes/redwood/NavigationListItemVariants.css.js');
29
16
 
30
17
  /*TODO: JET-58534. Create a hook to share some logic between navlist and tabbar. Hook will be used inside this one. */
31
18
  function useNavigationList({ containerRef, selection, onRemove, onSelectionChange, children }) {
@@ -163,4 +150,4 @@ function NavigationListItem({ itemKey, label, badge, metadata, severity }) {
163
150
 
164
151
  exports.NavigationList = NavigationList;
165
152
  exports.NavigationListItem = NavigationListItem;
166
- //# sourceMappingURL=NavigationListItem-4c4e804d.js.map
153
+ //# sourceMappingURL=NavigationListItem-7947af0e.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationListItem-4c4e804d.js","sources":["../../src/UNSAFE_NavigationList/useNavigationList.ts","../../src/UNSAFE_NavigationList/NavigationList.tsx","../../src/UNSAFE_NavigationList/NavigationListItem.tsx"],"sourcesContent":["import { useState, useCallback, MutableRef, useRef, useEffect } from 'preact/hooks';\nimport {\n keyExtractor,\n getFirstVisibleKey,\n getKey,\n getPrevNextKeyUsingRef,\n findElementByKey\n} from '../utils/PRIVATE_collectionUtils';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { useCollectionFocusRing } from '../hooks/PRIVATE_useCollectionFocusRing';\nimport { useCurrentKey } from '../hooks/PRIVATE_useCurrentKey';\nimport { NavigationListContextProps } from '../UNSAFE_NavigationListCommon';\n\nimport { ComponentChildren } from 'preact';\n\n/**\n * type for payload of current key change event handler\n */\ntype CurrentKeyDetail<K> = {\n value: K;\n};\n/**\n * type for payload of selection change event handler\n */\ntype SelectionDetail<K> = {\n value: K;\n reason: 'pointer' | 'keyboard';\n};\n/**\n * type for payload of remove event handler\n */\ntype RemoveDetail<K> = {\n value: K;\n};\n\n/*TODO: JET-58534. Create a hook to share some logic between navlist and tabbar. Hook will be used inside this one. */\nexport function useNavigationList<K extends string | number>({\n containerRef,\n selection,\n onRemove,\n onSelectionChange,\n children\n}: {\n containerRef: MutableRef<HTMLUListElement>;\n selection?: K;\n onRemove?: <K extends string | number>(detail: RemoveDetail<K>) => void;\n onSelectionChange?: <K extends string | number>(detail: SelectionDetail<K>) => void;\n children: ComponentChildren;\n}) {\n const ITEM_SELECTOR = '[role=\"tab\"]';\n const REMOVAL_ICON_SELECTOR = '[data-oj-navigationlist-item-remove-icon]';\n const [currentKey, setCurrentKey] = useState<K | undefined>(selection);\n\n const onCurrentKeyChange = useCallback((detail: CurrentKeyDetail<K | undefined>) => {\n setCurrentKey(detail.value);\n }, []) as NavigationListContextProps<K>['onCurrentKeyChange'];\n\n const { currentKeyProps } = useCurrentKey(\n (element) =>\n onRemove\n ? (extractOnlyItemKey(element, ITEM_SELECTOR, REMOVAL_ICON_SELECTOR) as K)\n : keyExtractor(element, ITEM_SELECTOR),\n false,\n getPrevNextKeyUsingRef(containerRef, currentKey, true, ITEM_SELECTOR),\n getPrevNextKeyUsingRef(containerRef, currentKey, false, ITEM_SELECTOR),\n undefined,\n undefined,\n currentKey,\n onCurrentKeyChange\n );\n\n const [showFocusRing, focusRingProps] = useCollectionFocusRing(containerRef, [\n 'Home',\n 'End',\n 'ArrowUp',\n 'ArrowDown'\n ]);\n\n const onFocus = useCallback(() => {\n if (containerRef.current && currentKey === undefined) {\n const key = getFirstVisibleKey(containerRef.current, ITEM_SELECTOR);\n if (key) {\n setCurrentKey(key as K);\n }\n }\n }, [currentKey, containerRef]);\n\n const onFocusProps = { onFocus };\n const prevNavItems = useRef<K[]>();\n\n useEffect(() => {\n if (containerRef.current) {\n const navListItemKeys = Array.from(\n containerRef.current.querySelectorAll(ITEM_SELECTOR),\n (elem) => getKey(elem as HTMLElement) as K\n );\n if (currentKey != null && navListItemKeys.indexOf(currentKey) !== -1) {\n const navListItem = findElementByKey(\n containerRef.current,\n currentKey,\n ITEM_SELECTOR\n ) as any;\n if (navListItem.scrollIntoViewIfNeeded) {\n // for some browsers, we'll need the non-standard scrollIntoViewIfNeeded\n navListItem.scrollIntoViewIfNeeded();\n } else {\n navListItem.scrollIntoView({ block: 'nearest' });\n }\n } else {\n if (currentKey && navListItemKeys.indexOf(currentKey) === -1) {\n prevNavItems.current\n ? setCurrentKey(findNextCurrentKey(currentKey, navListItemKeys, prevNavItems.current))\n : setCurrentKey(navListItemKeys[0] as K);\n }\n prevNavItems.current = navListItemKeys;\n }\n }\n }, [children, currentKey, containerRef]);\n\n const onKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if ((event.key === 'Home' || event.key === 'End') && containerRef.current && currentKey) {\n const navListItemKey = Array.from(\n containerRef.current.querySelectorAll(ITEM_SELECTOR),\n (elem) => getKey(elem as HTMLElement) as K\n );\n onCurrentKeyChange?.({\n value: navListItemKey[event.key === 'Home' ? 0 : navListItemKey.length - 1] as K\n });\n }\n if (currentKey && (event.key === 'Enter' || event.key === ' ')) {\n onSelectionChange?.({\n value: currentKey as K,\n reason: 'keyboard'\n });\n }\n if (currentKey && event.key === 'Delete') {\n onRemove?.({ value: currentKey as K });\n }\n },\n [currentKey, onSelectionChange, onRemove, onCurrentKeyChange, containerRef]\n );\n\n return {\n showFocusRing,\n currentKey,\n onCurrentKeyChange,\n onKeyDown,\n containerHandlers: mergeProps(focusRingProps, currentKeyProps, onFocusProps)\n };\n}\n\nconst extractOnlyItemKey = (element: HTMLElement, itemSelector: string, itemEliminator: string) => {\n const navigationListItem = element.closest(itemSelector);\n const removeButton = element.closest(itemEliminator);\n return navigationListItem?.contains(removeButton) ? null : keyExtractor(element, itemSelector);\n};\n\nconst findNextCurrentKey = <K>(currentKey: K, currNavs: K[], prevNavs: K[]) => {\n const index = prevNavs.indexOf(currentKey);\n if (index > 0) {\n const nextIndex = index === prevNavs.length - 1 ? index - 1 : index + 1;\n const nextKey = prevNavs[nextIndex];\n if (currNavs.indexOf(nextKey) !== -1) {\n return nextKey;\n }\n }\n // update current key to be the first one if we can't find a suitable next key\n return currNavs[0];\n};\n","import { Ref } from 'preact';\nimport { MutableRef, useRef } from 'preact/hooks';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { useId } from '../hooks/UNSAFE_useId';\nimport { navigationListStyles } from './themes/NavigationListStyles.css';\nimport { useNavigationList } from './useNavigationList';\nimport { forwardRef, useImperativeHandle } from 'preact/compat';\nimport { useTestId, TestIdProps } from '../hooks/UNSAFE_useTestId';\nimport { NavigationListProps, NavigationListContext } from '../UNSAFE_NavigationListCommon';\nexport { RemovableNavigationListItem } from '../UNSAFE_NavigationListCommon';\n\nexport type FocusableHandle = {\n focus: () => void;\n blur: () => void;\n};\n\nexport const NavigationList = forwardRef(\n <K extends string | number>(\n {\n children,\n selection,\n onSelectionChange,\n onRemove,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelLedBy,\n testId\n }: NavigationListProps<K> & TestIdProps,\n ref?: Ref<FocusableHandle>\n ) => {\n const containerRef = useRef<HTMLUListElement>(null);\n\n const { showFocusRing, currentKey, onCurrentKeyChange, containerHandlers, onKeyDown } =\n useNavigationList({\n containerRef: containerRef as MutableRef<HTMLUListElement>,\n selection,\n onRemove,\n onSelectionChange,\n children\n });\n\n const eventProps = { onKeyDown };\n const navigationListClass = classNames([navigationListStyles.uListStyle]);\n const navigationListItemPrefix = useId() + '_';\n const testIdProps = useTestId(testId);\n\n //Allows to call focus on rootRef without having to expose it\n useImperativeHandle(ref!, () => ({\n focus: () => {\n if (containerRef.current) {\n containerRef.current.focus();\n }\n },\n blur: () => {\n if (containerRef.current) {\n containerRef.current.focus();\n }\n }\n }));\n\n return (\n <ul\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelLedBy}\n role=\"tablist\"\n ref={containerRef}\n aria-orientation={'vertical'}\n tabIndex={0}\n aria-activedescendant={currentKey ? navigationListItemPrefix + currentKey : ''}\n {...mergeProps(eventProps, containerHandlers)}\n {...testIdProps}\n class={navigationListClass}>\n <NavigationListContext.Provider\n value={{\n selection,\n onSelectionChange,\n onCurrentKeyChange,\n currentKey,\n showFocusRing,\n navigationListItemPrefix,\n onRemove\n }}>\n {children}\n </NavigationListContext.Provider>\n </ul>\n );\n }\n);\n","import {\n BaseNavigationListItem,\n BaseNavigationListItemProps\n} from '../UNSAFE_NavigationListCommon/BaseNavigationListItem';\n\nexport type NavigationListItemProps<K extends string | number> = Omit<\n BaseNavigationListItemProps<K>,\n 'removeIcon'\n>;\n\nexport function NavigationListItem<K extends string | number>({\n itemKey,\n label,\n badge,\n metadata,\n severity\n}: NavigationListItemProps<K>) {\n return (\n <BaseNavigationListItem\n itemKey={itemKey}\n label={label}\n badge={badge}\n metadata={metadata}\n severity={severity}\n />\n );\n}\n"],"names":["useState","useCallback","useCurrentKey","keyExtractor","getPrevNextKeyUsingRef","useCollectionFocusRing","getFirstVisibleKey","useRef","useEffect","getKey","findElementByKey","mergeProps","forwardRef","classNames","navigationListStyles","useId","useTestId","useImperativeHandle","_jsx","NavigationListContext","BaseNavigationListItem"],"mappings":"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"}
1
+ {"version":3,"file":"NavigationListItem-7947af0e.js","sources":["../../src/UNSAFE_NavigationList/useNavigationList.ts","../../src/UNSAFE_NavigationList/NavigationList.tsx","../../src/UNSAFE_NavigationList/NavigationListItem.tsx"],"sourcesContent":["import { useState, useCallback, MutableRef, useRef, useEffect } from 'preact/hooks';\nimport {\n keyExtractor,\n getFirstVisibleKey,\n getKey,\n getPrevNextKeyUsingRef,\n findElementByKey\n} from '../utils/PRIVATE_collectionUtils';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { useCollectionFocusRing } from '../hooks/PRIVATE_useCollectionFocusRing';\nimport { useCurrentKey } from '../hooks/PRIVATE_useCurrentKey';\nimport { NavigationListContextProps } from '../UNSAFE_NavigationListCommon';\n\nimport { ComponentChildren } from 'preact';\n\n/**\n * type for payload of current key change event handler\n */\ntype CurrentKeyDetail<K> = {\n value: K;\n};\n/**\n * type for payload of selection change event handler\n */\ntype SelectionDetail<K> = {\n value: K;\n reason: 'pointer' | 'keyboard';\n};\n/**\n * type for payload of remove event handler\n */\ntype RemoveDetail<K> = {\n value: K;\n};\n\n/*TODO: JET-58534. Create a hook to share some logic between navlist and tabbar. Hook will be used inside this one. */\nexport function useNavigationList<K extends string | number>({\n containerRef,\n selection,\n onRemove,\n onSelectionChange,\n children\n}: {\n containerRef: MutableRef<HTMLUListElement>;\n selection?: K;\n onRemove?: <K extends string | number>(detail: RemoveDetail<K>) => void;\n onSelectionChange?: <K extends string | number>(detail: SelectionDetail<K>) => void;\n children: ComponentChildren;\n}) {\n const ITEM_SELECTOR = '[role=\"tab\"]';\n const REMOVAL_ICON_SELECTOR = '[data-oj-navigationlist-item-remove-icon]';\n const [currentKey, setCurrentKey] = useState<K | undefined>(selection);\n\n const onCurrentKeyChange = useCallback((detail: CurrentKeyDetail<K | undefined>) => {\n setCurrentKey(detail.value);\n }, []) as NavigationListContextProps<K>['onCurrentKeyChange'];\n\n const { currentKeyProps } = useCurrentKey(\n (element) =>\n onRemove\n ? (extractOnlyItemKey(element, ITEM_SELECTOR, REMOVAL_ICON_SELECTOR) as K)\n : keyExtractor(element, ITEM_SELECTOR),\n false,\n getPrevNextKeyUsingRef(containerRef, currentKey, true, ITEM_SELECTOR),\n getPrevNextKeyUsingRef(containerRef, currentKey, false, ITEM_SELECTOR),\n undefined,\n undefined,\n currentKey,\n onCurrentKeyChange\n );\n\n const [showFocusRing, focusRingProps] = useCollectionFocusRing(containerRef, [\n 'Home',\n 'End',\n 'ArrowUp',\n 'ArrowDown'\n ]);\n\n const onFocus = useCallback(() => {\n if (containerRef.current && currentKey === undefined) {\n const key = getFirstVisibleKey(containerRef.current, ITEM_SELECTOR);\n if (key) {\n setCurrentKey(key as K);\n }\n }\n }, [currentKey, containerRef]);\n\n const onFocusProps = { onFocus };\n const prevNavItems = useRef<K[]>();\n\n useEffect(() => {\n if (containerRef.current) {\n const navListItemKeys = Array.from(\n containerRef.current.querySelectorAll(ITEM_SELECTOR),\n (elem) => getKey(elem as HTMLElement) as K\n );\n if (currentKey != null && navListItemKeys.indexOf(currentKey) !== -1) {\n const navListItem = findElementByKey(\n containerRef.current,\n currentKey,\n ITEM_SELECTOR\n ) as any;\n if (navListItem.scrollIntoViewIfNeeded) {\n // for some browsers, we'll need the non-standard scrollIntoViewIfNeeded\n navListItem.scrollIntoViewIfNeeded();\n } else {\n navListItem.scrollIntoView({ block: 'nearest' });\n }\n } else {\n if (currentKey && navListItemKeys.indexOf(currentKey) === -1) {\n prevNavItems.current\n ? setCurrentKey(findNextCurrentKey(currentKey, navListItemKeys, prevNavItems.current))\n : setCurrentKey(navListItemKeys[0] as K);\n }\n prevNavItems.current = navListItemKeys;\n }\n }\n }, [children, currentKey, containerRef]);\n\n const onKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if ((event.key === 'Home' || event.key === 'End') && containerRef.current && currentKey) {\n const navListItemKey = Array.from(\n containerRef.current.querySelectorAll(ITEM_SELECTOR),\n (elem) => getKey(elem as HTMLElement) as K\n );\n onCurrentKeyChange?.({\n value: navListItemKey[event.key === 'Home' ? 0 : navListItemKey.length - 1] as K\n });\n }\n if (currentKey && (event.key === 'Enter' || event.key === ' ')) {\n onSelectionChange?.({\n value: currentKey as K,\n reason: 'keyboard'\n });\n }\n if (currentKey && event.key === 'Delete') {\n onRemove?.({ value: currentKey as K });\n }\n },\n [currentKey, onSelectionChange, onRemove, onCurrentKeyChange, containerRef]\n );\n\n return {\n showFocusRing,\n currentKey,\n onCurrentKeyChange,\n onKeyDown,\n containerHandlers: mergeProps(focusRingProps, currentKeyProps, onFocusProps)\n };\n}\n\nconst extractOnlyItemKey = (element: HTMLElement, itemSelector: string, itemEliminator: string) => {\n const navigationListItem = element.closest(itemSelector);\n const removeButton = element.closest(itemEliminator);\n return navigationListItem?.contains(removeButton) ? null : keyExtractor(element, itemSelector);\n};\n\nconst findNextCurrentKey = <K>(currentKey: K, currNavs: K[], prevNavs: K[]) => {\n const index = prevNavs.indexOf(currentKey);\n if (index > 0) {\n const nextIndex = index === prevNavs.length - 1 ? index - 1 : index + 1;\n const nextKey = prevNavs[nextIndex];\n if (currNavs.indexOf(nextKey) !== -1) {\n return nextKey;\n }\n }\n // update current key to be the first one if we can't find a suitable next key\n return currNavs[0];\n};\n","import { Ref } from 'preact';\nimport { MutableRef, useRef } from 'preact/hooks';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { useId } from '../hooks/UNSAFE_useId';\nimport { navigationListStyles } from './themes/NavigationListStyles.css';\nimport { useNavigationList } from './useNavigationList';\nimport { forwardRef, useImperativeHandle } from 'preact/compat';\nimport { useTestId, TestIdProps } from '../hooks/UNSAFE_useTestId';\nimport { NavigationListProps, NavigationListContext } from '../UNSAFE_NavigationListCommon';\nexport { RemovableNavigationListItem } from '../UNSAFE_NavigationListCommon';\n\nexport type FocusableHandle = {\n focus: () => void;\n blur: () => void;\n};\n\nexport const NavigationList = forwardRef(\n <K extends string | number>(\n {\n children,\n selection,\n onSelectionChange,\n onRemove,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelLedBy,\n testId\n }: NavigationListProps<K> & TestIdProps,\n ref?: Ref<FocusableHandle>\n ) => {\n const containerRef = useRef<HTMLUListElement>(null);\n\n const { showFocusRing, currentKey, onCurrentKeyChange, containerHandlers, onKeyDown } =\n useNavigationList({\n containerRef: containerRef as MutableRef<HTMLUListElement>,\n selection,\n onRemove,\n onSelectionChange,\n children\n });\n\n const eventProps = { onKeyDown };\n const navigationListClass = classNames([navigationListStyles.uListStyle]);\n const navigationListItemPrefix = useId() + '_';\n const testIdProps = useTestId(testId);\n\n //Allows to call focus on rootRef without having to expose it\n useImperativeHandle(ref!, () => ({\n focus: () => {\n if (containerRef.current) {\n containerRef.current.focus();\n }\n },\n blur: () => {\n if (containerRef.current) {\n containerRef.current.focus();\n }\n }\n }));\n\n return (\n <ul\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelLedBy}\n role=\"tablist\"\n ref={containerRef}\n aria-orientation={'vertical'}\n tabIndex={0}\n aria-activedescendant={currentKey ? navigationListItemPrefix + currentKey : ''}\n {...mergeProps(eventProps, containerHandlers)}\n {...testIdProps}\n class={navigationListClass}>\n <NavigationListContext.Provider\n value={{\n selection,\n onSelectionChange,\n onCurrentKeyChange,\n currentKey,\n showFocusRing,\n navigationListItemPrefix,\n onRemove\n }}>\n {children}\n </NavigationListContext.Provider>\n </ul>\n );\n }\n);\n","import {\n BaseNavigationListItem,\n BaseNavigationListItemProps\n} from '../UNSAFE_NavigationListCommon/BaseNavigationListItem';\n\nexport type NavigationListItemProps<K extends string | number> = Omit<\n BaseNavigationListItemProps<K>,\n 'removeIcon'\n>;\n\nexport function NavigationListItem<K extends string | number>({\n itemKey,\n label,\n badge,\n metadata,\n severity\n}: NavigationListItemProps<K>) {\n return (\n <BaseNavigationListItem\n itemKey={itemKey}\n label={label}\n badge={badge}\n metadata={metadata}\n severity={severity}\n />\n );\n}\n"],"names":["useState","useCallback","useCurrentKey","keyExtractor","getPrevNextKeyUsingRef","useCollectionFocusRing","getFirstVisibleKey","useRef","useEffect","getKey","findElementByKey","mergeProps","forwardRef","classNames","navigationListStyles","useId","useTestId","useImperativeHandle","_jsx","NavigationListContext","BaseNavigationListItem"],"mappings":"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"}
@@ -10,7 +10,7 @@ var UNSAFE_OverflowTabBar_themes_OverflowTabBarStyles_css = require('./UNSAFE_Ov
10
10
  var useDetectHorizontalOverflow = require('./useDetectHorizontalOverflow-003f7c4a.js');
11
11
  var RemovableTabBarItem = require('./RemovableTabBarItem-ff408dff.js');
12
12
  var TabBarItem = require('./TabBarItem-00fcf601.js');
13
- var OverflowTabBarItem = require('./OverflowTabBarItem-3c7adb01.js');
13
+ var OverflowTabBarItem = require('./OverflowTabBarItem-57537ebe.js');
14
14
 
15
15
  /**
16
16
  * OverflowTabBar handles the rendering of overflowing tab items.
@@ -68,4 +68,4 @@ function OverflowTabBar({ items, layout = 'stretch', display = 'standard', size
68
68
  }
69
69
 
70
70
  exports.OverflowTabBar = OverflowTabBar;
71
- //# sourceMappingURL=OverflowTabBar-428798a0.js.map
71
+ //# sourceMappingURL=OverflowTabBar-27ad6d1f.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OverflowTabBar-428798a0.js","sources":["../../src/UNSAFE_OverflowTabBar/OverflowTabBar.tsx"],"sourcesContent":["import { ComponentProps, createRef } from 'preact';\nimport { useCallback, useMemo, useRef, useState } from 'preact/hooks';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { TestIdProps } from '../hooks/UNSAFE_useTestId';\nimport { OverflowTabBarItem, RemovableTabBarItem, TabBar, TabBarItem } from '../UNSAFE_TabBar';\nimport { CloseDetail, Item } from '../UNSAFE_TabBarCommon';\nimport { styles } from './themes/OverflowTabBarStyles.css';\nimport { useDetectHorizontalOverflow } from '../hooks/PRIVATE_useDetectHorizontalOverflow';\n\ntype OverflowTabBarProps<K extends string | number> = {\n /**\n * An array of data to render individual tabs\n */\n items: Item<K>[];\n /**\n * The truncation configuration for tab labels.\n * 'progressive' will restrict the width of each tab label to allow all tabs to fit if enough space is not available to display all of the tabs.\n * Labels that are truncated are displayed with ellipses. However the width of each tab label will not be truncated below a specific threshold.\n * 'none' tabs always take up the space needed by the labels even if enough space is not available to display all of the tabs.\n */\n truncation?: 'none' | 'progressive';\n} & Omit<ComponentProps<typeof TabBar>, 'children' | 'aria-describedby' | 'ref'>;\n\n/**\n * OverflowTabBar handles the rendering of overflowing tab items.\n */\nexport function OverflowTabBar<K extends string | number>({\n items,\n layout = 'stretch',\n display = 'standard',\n size = 'md',\n edge = 'top',\n selection,\n truncation,\n onSelect,\n onRemove,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n testId\n}: OverflowTabBarProps<K> & TestIdProps) {\n const displayStackProps = {\n display: display\n };\n const displayNonStackProps = {\n display: display,\n size: size\n };\n\n const displayProps = display === 'stacked' ? displayStackProps : displayNonStackProps;\n const rootRef = useRef<HTMLDivElement>(null);\n const tabBarRef = createRef<HTMLDivElement>();\n\n const [isDropDownOpen, setIsDropDownOpen] = useState<boolean>(false);\n\n const isOutsideMouseDown = useRef<boolean>(false);\n\n const handleClose = (e: CloseDetail) => {\n if (tabBarRef.current && ['itemAction', 'dismissed'].includes(e.reason)) {\n tabBarRef?.current?.focus();\n }\n if (e.reason === 'outsideMousedown') {\n isOutsideMouseDown.current = true;\n }\n setIsDropDownOpen(false);\n };\n\n const handleSelect = useCallback<Required<ComponentProps<typeof TabBar>>['onSelect']>(\n (e: { value: string | number }) => {\n if (e.value === 'more') {\n //If overflow item is clicked after dropdown is open, the reason is outsideMouseDown and it needs to be closed\n if (isOutsideMouseDown.current) {\n setIsDropDownOpen(false);\n } else {\n setIsDropDownOpen(true);\n }\n } else {\n onSelect?.(e);\n }\n isOutsideMouseDown.current = false;\n },\n [onSelect]\n );\n\n const overflowItemKey = 'more' as K;\n\n const keysArray = useMemo(() => items.map((item) => item.itemKey) as K[], [items]);\n\n const { visibleItemKeys, overflowItemKeys, maxWidths } = useDetectHorizontalOverflow({\n rootRef: tabBarRef,\n keysArray,\n isTruncationDisabled: !(truncation && truncation === 'progressive')\n });\n\n const overflowTabBarClass = classNames([styles.overflowTabBarBase]);\n\n return (\n <div ref={rootRef} class={overflowTabBarClass}>\n <TabBar\n ref={tabBarRef}\n selection={selection}\n onSelect={handleSelect}\n {...displayProps}\n layout={layout}\n edge={edge}\n onRemove={onRemove}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n testId={testId}>\n {visibleItemKeys != null &&\n visibleItemKeys.length > 0 &&\n items\n .filter((item) => visibleItemKeys?.includes(item.itemKey))\n .map((item: Item<K>) =>\n item.isRemovable ? (\n <RemovableTabBarItem\n itemKey={item.itemKey}\n label={item.label}\n icon={item.icon}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n aria-controls={item.tabPanelId}\n labelMaxWidth={maxWidths?.get(item.itemKey)}\n />\n ) : (\n <TabBarItem\n itemKey={item.itemKey}\n label={item.label}\n icon={item.icon}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n aria-controls={item.tabPanelId}\n labelMaxWidth={maxWidths?.get(item.itemKey)}\n />\n )\n )}\n {overflowItemKeys != null && overflowItemKeys.length > 0 && (\n <OverflowTabBarItem\n isOpen={isDropDownOpen}\n onClose={handleClose}\n overflowItemKey={overflowItemKey}\n overflowItems={items.filter((item) => overflowItemKeys?.includes(item.itemKey))}\n />\n )}\n </TabBar>\n </div>\n );\n}\n"],"names":["useRef","createRef","useState","useCallback","useMemo","useDetectHorizontalOverflow","classNames","styles","_jsx","_jsxs","TabBar","RemovableTabBarItem","TabBarItem","OverflowTabBarItem"],"mappings":"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"}
1
+ {"version":3,"file":"OverflowTabBar-27ad6d1f.js","sources":["../../src/UNSAFE_OverflowTabBar/OverflowTabBar.tsx"],"sourcesContent":["import { ComponentProps, createRef } from 'preact';\nimport { useCallback, useMemo, useRef, useState } from 'preact/hooks';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { TestIdProps } from '../hooks/UNSAFE_useTestId';\nimport { OverflowTabBarItem, RemovableTabBarItem, TabBar, TabBarItem } from '../UNSAFE_TabBar';\nimport { CloseDetail, Item } from '../UNSAFE_TabBarCommon';\nimport { styles } from './themes/OverflowTabBarStyles.css';\nimport { useDetectHorizontalOverflow } from '../hooks/PRIVATE_useDetectHorizontalOverflow';\n\ntype OverflowTabBarProps<K extends string | number> = {\n /**\n * An array of data to render individual tabs\n */\n items: Item<K>[];\n /**\n * The truncation configuration for tab labels.\n * 'progressive' will restrict the width of each tab label to allow all tabs to fit if enough space is not available to display all of the tabs.\n * Labels that are truncated are displayed with ellipses. However the width of each tab label will not be truncated below a specific threshold.\n * 'none' tabs always take up the space needed by the labels even if enough space is not available to display all of the tabs.\n */\n truncation?: 'none' | 'progressive';\n} & Omit<ComponentProps<typeof TabBar>, 'children' | 'aria-describedby' | 'ref'>;\n\n/**\n * OverflowTabBar handles the rendering of overflowing tab items.\n */\nexport function OverflowTabBar<K extends string | number>({\n items,\n layout = 'stretch',\n display = 'standard',\n size = 'md',\n edge = 'top',\n selection,\n truncation,\n onSelect,\n onRemove,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n testId\n}: OverflowTabBarProps<K> & TestIdProps) {\n const displayStackProps = {\n display: display\n };\n const displayNonStackProps = {\n display: display,\n size: size\n };\n\n const displayProps = display === 'stacked' ? displayStackProps : displayNonStackProps;\n const rootRef = useRef<HTMLDivElement>(null);\n const tabBarRef = createRef<HTMLDivElement>();\n\n const [isDropDownOpen, setIsDropDownOpen] = useState<boolean>(false);\n\n const isOutsideMouseDown = useRef<boolean>(false);\n\n const handleClose = (e: CloseDetail) => {\n if (tabBarRef.current && ['itemAction', 'dismissed'].includes(e.reason)) {\n tabBarRef?.current?.focus();\n }\n if (e.reason === 'outsideMousedown') {\n isOutsideMouseDown.current = true;\n }\n setIsDropDownOpen(false);\n };\n\n const handleSelect = useCallback<Required<ComponentProps<typeof TabBar>>['onSelect']>(\n (e: { value: string | number }) => {\n if (e.value === 'more') {\n //If overflow item is clicked after dropdown is open, the reason is outsideMouseDown and it needs to be closed\n if (isOutsideMouseDown.current) {\n setIsDropDownOpen(false);\n } else {\n setIsDropDownOpen(true);\n }\n } else {\n onSelect?.(e);\n }\n isOutsideMouseDown.current = false;\n },\n [onSelect]\n );\n\n const overflowItemKey = 'more' as K;\n\n const keysArray = useMemo(() => items.map((item) => item.itemKey) as K[], [items]);\n\n const { visibleItemKeys, overflowItemKeys, maxWidths } = useDetectHorizontalOverflow({\n rootRef: tabBarRef,\n keysArray,\n isTruncationDisabled: !(truncation && truncation === 'progressive')\n });\n\n const overflowTabBarClass = classNames([styles.overflowTabBarBase]);\n\n return (\n <div ref={rootRef} class={overflowTabBarClass}>\n <TabBar\n ref={tabBarRef}\n selection={selection}\n onSelect={handleSelect}\n {...displayProps}\n layout={layout}\n edge={edge}\n onRemove={onRemove}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n testId={testId}>\n {visibleItemKeys != null &&\n visibleItemKeys.length > 0 &&\n items\n .filter((item) => visibleItemKeys?.includes(item.itemKey))\n .map((item: Item<K>) =>\n item.isRemovable ? (\n <RemovableTabBarItem\n itemKey={item.itemKey}\n label={item.label}\n icon={item.icon}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n aria-controls={item.tabPanelId}\n labelMaxWidth={maxWidths?.get(item.itemKey)}\n />\n ) : (\n <TabBarItem\n itemKey={item.itemKey}\n label={item.label}\n icon={item.icon}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n aria-controls={item.tabPanelId}\n labelMaxWidth={maxWidths?.get(item.itemKey)}\n />\n )\n )}\n {overflowItemKeys != null && overflowItemKeys.length > 0 && (\n <OverflowTabBarItem\n isOpen={isDropDownOpen}\n onClose={handleClose}\n overflowItemKey={overflowItemKey}\n overflowItems={items.filter((item) => overflowItemKeys?.includes(item.itemKey))}\n />\n )}\n </TabBar>\n </div>\n );\n}\n"],"names":["useRef","createRef","useState","useCallback","useMemo","useDetectHorizontalOverflow","classNames","styles","_jsx","_jsxs","TabBar","RemovableTabBarItem","TabBarItem","OverflowTabBarItem"],"mappings":"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"}
@@ -15,7 +15,7 @@ var Dropdown = require('./Dropdown-34b8f141.js');
15
15
  var Sheet = require('./Sheet-86989265.js');
16
16
  var TabBarItem = require('./TabBarItem-00fcf601.js');
17
17
  var UNSAFE_TabBarCommon_themes_OverflowTabBarItemStyles_css = require('./UNSAFE_TabBarCommon/themes/OverflowTabBarItemStyles.css.js');
18
- var NavigationListItem = require('./NavigationListItem-4c4e804d.js');
18
+ var NavigationListItem = require('./NavigationListItem-7947af0e.js');
19
19
  var RemovableNavigationListItem = require('./RemovableNavigationListItem-0eea31bc.js');
20
20
 
21
21
  const SvgOverflowH = (props) => (jsxRuntime.jsx(Icon.Icon, { viewBox: "0 0 24 24", ...props, children: jsxRuntime.jsx("g", { fill: "none", children: jsxRuntime.jsx("path", { d: "M6 12a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm8 0a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm8 0a2 2 0 1 1-4 0 2 2 0 0 1 4 0z", fill: "currentcolor" }) }) }));
@@ -85,4 +85,4 @@ const getIsMobile = () => {
85
85
  };
86
86
 
87
87
  exports.OverflowTabBarItem = OverflowTabBarItem;
88
- //# sourceMappingURL=OverflowTabBarItem-3c7adb01.js.map
88
+ //# sourceMappingURL=OverflowTabBarItem-57537ebe.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OverflowTabBarItem-3c7adb01.js","sources":["../../src/UNSAFE_RedwoodIcons/OverflowH/OverflowH.tsx","../../src/UNSAFE_TabBarCommon/OverflowTabBarItem.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates. All rights reserved.\n * https://www.oracle.com/contracts/docs/cloud_csa_online_v062223_us_eng.pdf?download=false&er=221886\n * @ignore\n */\n// DO NOT MODIFY THIS FILE MANUALLY!\n// This file is automatically generated based on the corresponding SVG image in\n// the packages/oraclejet-preact/resources/icons folder.\nimport { ComponentProps } from 'preact';\nimport { Icon } from '../../UNSAFE_Icon';\ntype Props = Omit<ComponentProps<typeof Icon>, 'viewBox' | 'children'>;\nconst SvgOverflowH = (props: Props) => (\n <Icon viewBox=\"0 0 24 24\" {...props}>\n <g fill=\"none\">\n <path\n d=\"M6 12a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm8 0a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm8 0a2 2 0 1 1-4 0 2 2 0 0 1 4 0z\"\n fill=\"currentcolor\"\n />\n </g>\n </Icon>\n);\nexport { SvgOverflowH as OverflowH };\n","import { ComponentChild, ComponentProps, createRef } from 'preact';\nimport { useCallback, useRef } from 'preact/hooks';\nimport type { BundleType } from '../resources/nls/bundle';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport { getClientHints } from '../utils/PRIVATE_clientHints';\nimport { mergeInterpolations } from '../utils/UNSAFE_mergeInterpolations';\nimport { flexitemInterpolations } from '../utils/UNSAFE_interpolations/flexitem';\nimport type { FlexitemProps } from '../utils/UNSAFE_interpolations/flexitem';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport {\n NavigationListItem,\n NavigationList,\n RemovableNavigationListItem,\n FocusableHandle\n} from '../UNSAFE_NavigationList';\nimport { OverflowH } from '../UNSAFE_RedwoodIcons/OverflowH';\nimport { useTabBarContext } from './useTabBarContext';\nimport { Dropdown } from '../UNSAFE_Dropdown';\nimport { Sheet } from '../UNSAFE_Sheet';\nimport { BaseTabBarItem } from './BaseTabBarItem';\nimport { styles } from './themes/OverflowTabBarItemStyles.css';\nimport { TabBarItem } from './TabBarItem';\n\nexport type OverflowSelectionDetail<K> = {\n value: K;\n};\n\nexport type CloseDetail = {\n /**\n * dismissed represents dismissing the DropDown\n */\n reason: 'dismissed' | 'itemAction' | 'outsideMousedown';\n};\n\nexport type Item<K extends string | number> = Omit<\n ComponentProps<typeof TabBarItem<K>>,\n 'testId' | 'aria-controls'\n> & {\n isRemovable?: boolean;\n /**\n * Accepts the tabpanel element's ID associated with the tab item\n **/\n tabPanelId?: string;\n};\n\nexport type OverflowTabBarItemProps<K extends string | number> = {\n /**\n * Key of the TabBarItem\n */\n overflowItemKey: K;\n /**\n * Whether to open the popup\n */\n isOpen: boolean;\n /**\n * Property that triggers a callback when DropDown is supposed to be closed.\n */\n onClose?: (detail: CloseDetail) => void;\n /**\n * The icon of the OverflowTabBarItem\n */\n icon?: ComponentChild;\n /**\n * The content to be rendered inside the Badge component.\n */\n badge?: string;\n /**\n * An array of data used by NavigationList to render individual overflow items.\n */\n overflowItems?: Item<K>[];\n};\n\n/**\n * An OverflowTabBarItem renders TabBarItems in a device appropriate popup. OverflowTabBarItem is used internally in an OverflowTabBar.\n */\n\nexport function OverflowTabBarItem<K extends string | number>({\n overflowItemKey,\n icon,\n badge,\n overflowItems,\n isOpen,\n onClose\n}: OverflowTabBarItemProps<K>) {\n const { selection, showFocusRing, isEdgeBottom, onSelect, onRemove, layout } = useTabBarContext();\n\n const isPointerSelection = useRef<boolean>(false);\n\n const overflowTabBarItemRef = useRef<HTMLDivElement>(null);\n const navigationListRef = createRef<FocusableHandle>();\n\n const handleSelectionChange = useCallback<\n Required<ComponentProps<typeof NavigationList>>['onSelectionChange']\n >(\n (detail: { value: string | number; reason?: 'pointer' | 'keyboard' }) => {\n if (detail.reason === 'pointer') {\n isPointerSelection.current = true;\n }\n onSelect?.({ value: detail.value });\n onClose?.({ reason: 'itemAction' });\n },\n [onSelect, onClose]\n );\n\n const handleDropdownClose = useCallback(\n (e: CloseDetail) => {\n onClose?.({ reason: e.reason });\n },\n [onClose]\n );\n\n const handleSheetClose = useCallback(() => {\n onClose?.({ reason: 'dismissed' });\n }, [onClose]);\n\n //When NavigationList steals focus the app resets it. Not always would it be reset to\n //parent of OverflowTabBarItem. Though currentKey would be correct, but focusRing would would not be visible\n //Hence we check for isPointerSelection.current\n\n const focusRingRequirement = showFocusRing && !isPointerSelection.current && !getIsMobile();\n\n const overflowContainsKey = (searchKey: K) => {\n return overflowItems?.find((item) => item.itemKey === searchKey) != null;\n };\n\n const currentPanelId = overflowItems?.find((item) => item.itemKey === selection)?.tabPanelId;\n\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n const isSelected = selection !== undefined && overflowContainsKey(selection as K);\n\n //instead of specifying flex: '1 0 auto' in cssProps var\n const styleInterpolations = mergeInterpolations<FlexitemProps>([\n ...Object.values(flexitemInterpolations)\n ]);\n const flexDimensions = styleInterpolations({\n flex: layout === 'stretch' ? '1 0 auto' : '0 0 auto'\n });\n\n const navContainerClasses = classNames([styles.navContainerBase]);\n\n const navContainerRef = useRef<HTMLDivElement>(null);\n const handleKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n navigationListRef.current?.focus();\n }\n },\n [navigationListRef]\n );\n const getNavigationList = useCallback(() => {\n return (\n <div onKeyDown={handleKeyDown} tabIndex={0} ref={navContainerRef} class={navContainerClasses}>\n <NavigationList\n ref={navigationListRef}\n selection={selection}\n onSelectionChange={handleSelectionChange}\n onRemove={onRemove}>\n {overflowItems?.map((item) =>\n item.isRemovable ? (\n <RemovableNavigationListItem\n itemKey={item.itemKey}\n label={item.label}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n />\n ) : (\n <NavigationListItem\n itemKey={item.itemKey}\n label={item.label}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n />\n )\n )}\n </NavigationList>\n </div>\n );\n }, [\n handleKeyDown,\n navContainerClasses,\n navigationListRef,\n selection,\n handleSelectionChange,\n onRemove,\n overflowItems\n ]);\n\n return (\n <>\n {overflowItems && overflowItems.length > 0 && (\n <div ref={overflowTabBarItemRef} style={flexDimensions}>\n <BaseTabBarItem\n aria-controls={currentPanelId}\n itemKey={overflowItemKey}\n label={translations.overflowItemLabel()}\n icon={icon ? icon : <OverflowH />}\n badge={badge}\n showFocusRingOverride={focusRingRequirement}\n selectionOverride={isSelected}\n displayOverride={'icons'}\n aria-haspopup={true}\n />\n </div>\n )}\n {getIsMobile() ? (\n <Sheet isOpen={isOpen} onClose={handleSheetClose}>\n {getNavigationList()}\n </Sheet>\n ) : (\n <Dropdown\n initialFocus=\"firstFocusable\"\n isOpen={isOpen}\n onClose={handleDropdownClose}\n placement={isEdgeBottom ? 'top-end' : 'bottom-end'}\n anchorRef={overflowTabBarItemRef}>\n {getNavigationList()}\n </Dropdown>\n )}\n </>\n );\n}\n\nconst getIsMobile = () => {\n const { deviceType } = getClientHints();\n return deviceType === 'phone';\n};\n"],"names":["_jsx","Icon","useTabBarContext","useRef","createRef","useCallback","useTranslationBundle","mergeInterpolations","flexitemInterpolations","classNames","styles","NavigationList","RemovableNavigationListItem","NavigationListItem","_jsxs","_Fragment","BaseTabBarItem","OverflowH","Sheet","Dropdown","getClientHints"],"mappings":"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"}
1
+ {"version":3,"file":"OverflowTabBarItem-57537ebe.js","sources":["../../src/UNSAFE_RedwoodIcons/OverflowH/OverflowH.tsx","../../src/UNSAFE_TabBarCommon/OverflowTabBarItem.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates. All rights reserved.\n * https://www.oracle.com/contracts/docs/cloud_csa_online_v062223_us_eng.pdf?download=false&er=221886\n * @ignore\n */\n// DO NOT MODIFY THIS FILE MANUALLY!\n// This file is automatically generated based on the corresponding SVG image in\n// the packages/oraclejet-preact/resources/icons folder.\nimport { ComponentProps } from 'preact';\nimport { Icon } from '../../UNSAFE_Icon';\ntype Props = Omit<ComponentProps<typeof Icon>, 'viewBox' | 'children'>;\nconst SvgOverflowH = (props: Props) => (\n <Icon viewBox=\"0 0 24 24\" {...props}>\n <g fill=\"none\">\n <path\n d=\"M6 12a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm8 0a2 2 0 1 1-4 0 2 2 0 0 1 4 0zm8 0a2 2 0 1 1-4 0 2 2 0 0 1 4 0z\"\n fill=\"currentcolor\"\n />\n </g>\n </Icon>\n);\nexport { SvgOverflowH as OverflowH };\n","import { ComponentChild, ComponentProps, createRef } from 'preact';\nimport { useCallback, useRef } from 'preact/hooks';\nimport type { BundleType } from '../resources/nls/bundle';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport { getClientHints } from '../utils/PRIVATE_clientHints';\nimport { mergeInterpolations } from '../utils/UNSAFE_mergeInterpolations';\nimport { flexitemInterpolations } from '../utils/UNSAFE_interpolations/flexitem';\nimport type { FlexitemProps } from '../utils/UNSAFE_interpolations/flexitem';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport {\n NavigationListItem,\n NavigationList,\n RemovableNavigationListItem,\n FocusableHandle\n} from '../UNSAFE_NavigationList';\nimport { OverflowH } from '../UNSAFE_RedwoodIcons/OverflowH';\nimport { useTabBarContext } from './useTabBarContext';\nimport { Dropdown } from '../UNSAFE_Dropdown';\nimport { Sheet } from '../UNSAFE_Sheet';\nimport { BaseTabBarItem } from './BaseTabBarItem';\nimport { styles } from './themes/OverflowTabBarItemStyles.css';\nimport { TabBarItem } from './TabBarItem';\n\nexport type OverflowSelectionDetail<K> = {\n value: K;\n};\n\nexport type CloseDetail = {\n /**\n * dismissed represents dismissing the DropDown\n */\n reason: 'dismissed' | 'itemAction' | 'outsideMousedown';\n};\n\nexport type Item<K extends string | number> = Omit<\n ComponentProps<typeof TabBarItem<K>>,\n 'testId' | 'aria-controls'\n> & {\n isRemovable?: boolean;\n /**\n * Accepts the tabpanel element's ID associated with the tab item\n **/\n tabPanelId?: string;\n};\n\nexport type OverflowTabBarItemProps<K extends string | number> = {\n /**\n * Key of the TabBarItem\n */\n overflowItemKey: K;\n /**\n * Whether to open the popup\n */\n isOpen: boolean;\n /**\n * Property that triggers a callback when DropDown is supposed to be closed.\n */\n onClose?: (detail: CloseDetail) => void;\n /**\n * The icon of the OverflowTabBarItem\n */\n icon?: ComponentChild;\n /**\n * The content to be rendered inside the Badge component.\n */\n badge?: string;\n /**\n * An array of data used by NavigationList to render individual overflow items.\n */\n overflowItems?: Item<K>[];\n};\n\n/**\n * An OverflowTabBarItem renders TabBarItems in a device appropriate popup. OverflowTabBarItem is used internally in an OverflowTabBar.\n */\n\nexport function OverflowTabBarItem<K extends string | number>({\n overflowItemKey,\n icon,\n badge,\n overflowItems,\n isOpen,\n onClose\n}: OverflowTabBarItemProps<K>) {\n const { selection, showFocusRing, isEdgeBottom, onSelect, onRemove, layout } = useTabBarContext();\n\n const isPointerSelection = useRef<boolean>(false);\n\n const overflowTabBarItemRef = useRef<HTMLDivElement>(null);\n const navigationListRef = createRef<FocusableHandle>();\n\n const handleSelectionChange = useCallback<\n Required<ComponentProps<typeof NavigationList>>['onSelectionChange']\n >(\n (detail: { value: string | number; reason?: 'pointer' | 'keyboard' }) => {\n if (detail.reason === 'pointer') {\n isPointerSelection.current = true;\n }\n onSelect?.({ value: detail.value });\n onClose?.({ reason: 'itemAction' });\n },\n [onSelect, onClose]\n );\n\n const handleDropdownClose = useCallback(\n (e: CloseDetail) => {\n onClose?.({ reason: e.reason });\n },\n [onClose]\n );\n\n const handleSheetClose = useCallback(() => {\n onClose?.({ reason: 'dismissed' });\n }, [onClose]);\n\n //When NavigationList steals focus the app resets it. Not always would it be reset to\n //parent of OverflowTabBarItem. Though currentKey would be correct, but focusRing would would not be visible\n //Hence we check for isPointerSelection.current\n\n const focusRingRequirement = showFocusRing && !isPointerSelection.current && !getIsMobile();\n\n const overflowContainsKey = (searchKey: K) => {\n return overflowItems?.find((item) => item.itemKey === searchKey) != null;\n };\n\n const currentPanelId = overflowItems?.find((item) => item.itemKey === selection)?.tabPanelId;\n\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n const isSelected = selection !== undefined && overflowContainsKey(selection as K);\n\n //instead of specifying flex: '1 0 auto' in cssProps var\n const styleInterpolations = mergeInterpolations<FlexitemProps>([\n ...Object.values(flexitemInterpolations)\n ]);\n const flexDimensions = styleInterpolations({\n flex: layout === 'stretch' ? '1 0 auto' : '0 0 auto'\n });\n\n const navContainerClasses = classNames([styles.navContainerBase]);\n\n const navContainerRef = useRef<HTMLDivElement>(null);\n const handleKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n navigationListRef.current?.focus();\n }\n },\n [navigationListRef]\n );\n const getNavigationList = useCallback(() => {\n return (\n <div onKeyDown={handleKeyDown} tabIndex={0} ref={navContainerRef} class={navContainerClasses}>\n <NavigationList\n ref={navigationListRef}\n selection={selection}\n onSelectionChange={handleSelectionChange}\n onRemove={onRemove}>\n {overflowItems?.map((item) =>\n item.isRemovable ? (\n <RemovableNavigationListItem\n itemKey={item.itemKey}\n label={item.label}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n />\n ) : (\n <NavigationListItem\n itemKey={item.itemKey}\n label={item.label}\n badge={item.badge}\n metadata={item.metadata}\n severity={item.severity}\n />\n )\n )}\n </NavigationList>\n </div>\n );\n }, [\n handleKeyDown,\n navContainerClasses,\n navigationListRef,\n selection,\n handleSelectionChange,\n onRemove,\n overflowItems\n ]);\n\n return (\n <>\n {overflowItems && overflowItems.length > 0 && (\n <div ref={overflowTabBarItemRef} style={flexDimensions}>\n <BaseTabBarItem\n aria-controls={currentPanelId}\n itemKey={overflowItemKey}\n label={translations.overflowItemLabel()}\n icon={icon ? icon : <OverflowH />}\n badge={badge}\n showFocusRingOverride={focusRingRequirement}\n selectionOverride={isSelected}\n displayOverride={'icons'}\n aria-haspopup={true}\n />\n </div>\n )}\n {getIsMobile() ? (\n <Sheet isOpen={isOpen} onClose={handleSheetClose}>\n {getNavigationList()}\n </Sheet>\n ) : (\n <Dropdown\n initialFocus=\"firstFocusable\"\n isOpen={isOpen}\n onClose={handleDropdownClose}\n placement={isEdgeBottom ? 'top-end' : 'bottom-end'}\n anchorRef={overflowTabBarItemRef}>\n {getNavigationList()}\n </Dropdown>\n )}\n </>\n );\n}\n\nconst getIsMobile = () => {\n const { deviceType } = getClientHints();\n return deviceType === 'phone';\n};\n"],"names":["_jsx","Icon","useTabBarContext","useRef","createRef","useCallback","useTranslationBundle","mergeInterpolations","flexitemInterpolations","classNames","styles","NavigationList","RemovableNavigationListItem","NavigationListItem","_jsxs","_Fragment","BaseTabBarItem","OverflowH","Sheet","Dropdown","getClientHints"],"mappings":"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"}