@oracle/oraclejet-preact 17.0.1 → 17.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1006) hide show
  1. package/amd/{BarChart-6c921af0.js → BarChart-be1d51d4.js} +2 -2
  2. package/amd/{BarChart-6c921af0.js.map → BarChart-be1d51d4.js.map} +1 -1
  3. package/amd/{BaseCardView-3c1e5b4c.js → BaseCardView-1aa0d986.js} +2 -2
  4. package/amd/{BaseCardView-3c1e5b4c.js.map → BaseCardView-1aa0d986.js.map} +1 -1
  5. package/amd/CardFlexView-a647550f.js +2 -0
  6. package/amd/{CardFlexView-3e4bd681.js.map → CardFlexView-a647550f.js.map} +1 -1
  7. package/amd/CardGridView-06fb67cb.js +2 -0
  8. package/amd/{CardGridView-8fb55ad7.js.map → CardGridView-06fb67cb.js.map} +1 -1
  9. package/amd/{Chart-0f54dae3.js → Chart-4796be31.js} +2 -2
  10. package/amd/{Chart-0f54dae3.js.map → Chart-4796be31.js.map} +1 -1
  11. package/amd/CheckboxSet-9c883a32.js +2 -0
  12. package/{es/CheckboxSet-836e3263.js.map → amd/CheckboxSet-9c883a32.js.map} +1 -1
  13. package/amd/GroupLoadingIndicator-e66ed431.js +1 -1
  14. package/amd/{Indexer-51d51cda.js → Indexer-204a6d88.js} +2 -2
  15. package/amd/{Indexer-51d51cda.js.map → Indexer-204a6d88.js.map} +1 -1
  16. package/amd/InputDatePicker-0012b304.js +2 -0
  17. package/amd/{InputDatePicker-da5d8728.js.map → InputDatePicker-0012b304.js.map} +1 -1
  18. package/amd/{LineAreaChart-337cac30.js → LineAreaChart-2057f8b4.js} +2 -2
  19. package/amd/{LineAreaChart-337cac30.js.map → LineAreaChart-2057f8b4.js.map} +1 -1
  20. package/amd/List-5958c802.js +2 -0
  21. package/amd/{List-88a7bee6.js.map → List-5958c802.js.map} +1 -1
  22. package/amd/{ListView-6739207e.js → ListView-27d10b67.js} +2 -2
  23. package/amd/{ListView-6739207e.js.map → ListView-27d10b67.js.map} +1 -1
  24. package/amd/LoadMoreCollection-83413a59.js +2 -0
  25. package/amd/{LoadMoreCollection-a6adbc3f.js.map → LoadMoreCollection-83413a59.js.map} +1 -1
  26. package/amd/NavigationListItem-0a4f8a9c.js +2 -0
  27. package/amd/{NavigationListItem-c96ac144.js.map → NavigationListItem-0a4f8a9c.js.map} +1 -1
  28. package/amd/{OverflowTabBarItem-f781e527.js → OverflowTabBarItem-aae4eb2f.js} +2 -2
  29. package/amd/{OverflowTabBarItem-f781e527.js.map → OverflowTabBarItem-aae4eb2f.js.map} +1 -1
  30. package/amd/PRIVATE_BaseCardView.js +1 -1
  31. package/amd/PRIVATE_Chart.js +1 -1
  32. package/amd/PRIVATE_List.js +1 -1
  33. package/amd/PRIVATE_LoadMoreCollection.js +1 -1
  34. package/amd/PRIVATE_SelectCommon.js +1 -1
  35. package/amd/PRIVATE_Table.js +1 -1
  36. package/amd/PRIVATE_VirtualizedCollection.js +1 -1
  37. package/amd/{SelectMultiple-06da3db0.js → SelectMultiple-fabd883c.js} +2 -2
  38. package/amd/{SelectMultiple-06da3db0.js.map → SelectMultiple-fabd883c.js.map} +1 -1
  39. package/amd/{SelectSingle-2266e5c4.js → SelectSingle-34d636a8.js} +2 -2
  40. package/amd/{SelectSingle-2266e5c4.js.map → SelectSingle-34d636a8.js.map} +1 -1
  41. package/amd/{Table-8e271f0f.js → Table-fda0ad21.js} +2 -2
  42. package/amd/{Table-8e271f0f.js.map → Table-fda0ad21.js.map} +1 -1
  43. package/amd/{TableView-cc05c32f.js → TableView-e4216655.js} +2 -2
  44. package/amd/{TableView-cc05c32f.js.map → TableView-e4216655.js.map} +1 -1
  45. package/amd/Theme-redwood/theme.css +334 -334
  46. package/amd/Theme-stable/theme.css +271 -271
  47. package/amd/UNSAFE_BarChart/__test__/BarChart.spec.js +1 -1
  48. package/amd/UNSAFE_BarChart.js +1 -1
  49. package/amd/UNSAFE_CardFlexView.js +1 -1
  50. package/amd/UNSAFE_CardGridView.js +1 -1
  51. package/amd/UNSAFE_CheckboxItem.js +1 -1
  52. package/amd/UNSAFE_CheckboxItem.js.map +1 -1
  53. package/amd/UNSAFE_CheckboxSet.js +1 -1
  54. package/amd/UNSAFE_CheckboxSet.js.map +1 -1
  55. package/amd/UNSAFE_ExpandableList.js +1 -1
  56. package/amd/UNSAFE_Indexer.js +1 -1
  57. package/amd/UNSAFE_InputDatePicker.js +1 -1
  58. package/amd/UNSAFE_LineAreaChart/__test__/LineChart.spec.js +1 -1
  59. package/amd/UNSAFE_LineAreaChart.js +1 -1
  60. package/amd/UNSAFE_ListView.js +1 -1
  61. package/amd/UNSAFE_NavigationList.js +1 -1
  62. package/amd/UNSAFE_OverflowTabBar.js +1 -1
  63. package/amd/UNSAFE_SelectMultiple.js +1 -1
  64. package/amd/UNSAFE_SelectSingle.js +1 -1
  65. package/amd/UNSAFE_TabBar.js +1 -1
  66. package/amd/UNSAFE_TabBarCommon.js +1 -1
  67. package/amd/UNSAFE_TabBarMixed.js +1 -1
  68. package/amd/UNSAFE_TableView.js +1 -1
  69. package/amd/UNSAFE_VirtualizedListView.js +1 -1
  70. package/amd/{VirtualizedCollection-63223f5e.js → VirtualizedCollection-897516a5.js} +2 -2
  71. package/amd/{VirtualizedCollection-63223f5e.js.map → VirtualizedCollection-897516a5.js.map} +1 -1
  72. package/amd/VirtualizedListView-ead601c7.js +2 -0
  73. package/amd/{VirtualizedListView-0924cf91.js.map → VirtualizedListView-ead601c7.js.map} +1 -1
  74. package/amd/hooks/UNSAFE_useContainerBreakpointValues.js +1 -1
  75. package/amd/{useSelectCommon-cbb310df.js → useSelectCommon-8657b927.js} +2 -2
  76. package/amd/{useSelectCommon-cbb310df.js.map → useSelectCommon-8657b927.js.map} +1 -1
  77. package/cjs/ActionCard-aade4e40.js +1 -1
  78. package/cjs/{BarChart-11c56b6a.js → BarChart-acda079d.js} +4 -4
  79. package/cjs/{BarChart-11c56b6a.js.map → BarChart-acda079d.js.map} +1 -1
  80. package/cjs/BaseButton-ff6f39f2.js +2 -2
  81. package/cjs/BaseCardView-badf6df3.js +6 -6
  82. package/cjs/{BaseCardViewSelectionTest-1d3dd9f3.js → BaseCardViewSelectionTest-fe6cdb4a.js} +6 -6
  83. package/cjs/{BaseCardViewSelectionTest-1d3dd9f3.js.map → BaseCardViewSelectionTest-fe6cdb4a.js.map} +1 -1
  84. package/cjs/BaseNavigationListItem-175a3f35.js +49 -0
  85. package/cjs/BaseNavigationListItem-175a3f35.js.map +1 -0
  86. package/cjs/ButtonSet-dc50f9d4.js +2 -2
  87. package/cjs/ButtonSetIconButton-50543cd6.js +2 -2
  88. package/cjs/{Center-a76dcdfe.js → Center-dce9d477.js} +2 -2
  89. package/cjs/{Center-a76dcdfe.js.map → Center-dce9d477.js.map} +1 -1
  90. package/cjs/{Chart-6684fa6d.js → Chart-c55ecfa4.js} +11 -11
  91. package/cjs/{Chart-6684fa6d.js.map → Chart-c55ecfa4.js.map} +1 -1
  92. package/cjs/CheckboxControl-24658cde.js +6 -6
  93. package/cjs/CheckboxRadioField-0d4b2c66.js +5 -5
  94. package/cjs/Chip-a24817e0.js +1 -1
  95. package/cjs/ClearIcon-50725213.js +1 -1
  96. package/cjs/CollapseIcon-a1da1523.js +1 -1
  97. package/cjs/Collapsible-95f66549.js +2 -2
  98. package/cjs/CompactHelpSource-f4e9198b.js +2 -2
  99. package/cjs/{CompactLabelAssistance-7dd6ac2c.js → CompactLabelAssistance-ae678fbd.js} +4 -4
  100. package/cjs/{CompactLabelAssistance-7dd6ac2c.js.map → CompactLabelAssistance-ae678fbd.js.map} +1 -1
  101. package/cjs/CompactUserAssistance-f88519f9.js +4 -4
  102. package/cjs/ComponentMessageContainer-a9195577.js +4 -4
  103. package/cjs/ConveyorBeltItem-a0d53a2f.js +2 -2
  104. package/cjs/{DatePicker-3c46ec73.js → DatePicker-3be1de5c.js} +6 -6
  105. package/cjs/{DatePicker-3c46ec73.js.map → DatePicker-3be1de5c.js.map} +1 -1
  106. package/cjs/DatePickerHeader-589e8b78.js +3 -3
  107. package/cjs/{Diagram-5e7f1aec.js → Diagram-522fe974.js} +5 -5
  108. package/cjs/{Diagram-5e7f1aec.js.map → Diagram-522fe974.js.map} +1 -1
  109. package/cjs/DirectionalCollapseArrowIcon-d2b24ac3.js +1 -1
  110. package/cjs/DirectionalExpandArrowIcon-adf981f6.js +1 -1
  111. package/cjs/DragHandle-d35fc8ac.js +1 -1
  112. package/cjs/{Dropdown-7baf2926.js → Dropdown-820dc3fe.js} +5 -5
  113. package/cjs/{Dropdown-7baf2926.js.map → Dropdown-820dc3fe.js.map} +1 -1
  114. package/cjs/{EnvironmentProvider-e5a93f24.js → EnvironmentProvider-42b2b998.js} +3 -3
  115. package/cjs/{EnvironmentProvider-e5a93f24.js.map → EnvironmentProvider-42b2b998.js.map} +1 -1
  116. package/cjs/FilePicker-47c7bc3f.js +2 -2
  117. package/cjs/{Flex-6529d995.js → Flex-fbba4ad6.js} +2 -2
  118. package/cjs/{Flex-6529d995.js.map → Flex-fbba4ad6.js.map} +1 -1
  119. package/cjs/{Floating-9e569e63.js → Floating-1280c2ce.js} +4 -4
  120. package/cjs/{Floating-9e569e63.js.map → Floating-1280c2ce.js.map} +1 -1
  121. package/cjs/FormLayout-ab6f90b8.js +1 -1
  122. package/cjs/Gantt-912df32a.js +9 -9
  123. package/cjs/{Grid-fe4fef40.js → Grid-03d487e5.js} +2 -2
  124. package/cjs/{Grid-fe4fef40.js.map → Grid-03d487e5.js.map} +1 -1
  125. package/cjs/{Gridlines-b31d8972.js → Gridlines-33618268.js} +2 -2
  126. package/cjs/{Gridlines-b31d8972.js.map → Gridlines-33618268.js.map} +1 -1
  127. package/cjs/GroupLoadingIndicator-3c9d8341.js +1 -1
  128. package/cjs/{HighlightText-da873ed3.js → HighlightText-c76eb17a.js} +2 -2
  129. package/cjs/{HighlightText-da873ed3.js.map → HighlightText-c76eb17a.js.map} +1 -1
  130. package/cjs/Icon-3ffd13dc.js +2 -2
  131. package/cjs/IconButton-94f8ca5c.js +2 -2
  132. package/cjs/IconMenuButton-426f2aa8.js +4 -4
  133. package/cjs/IconSwitchButton-094ace3a.js +2 -2
  134. package/cjs/IconToggleButton-0c415743.js +2 -2
  135. package/cjs/{IconUserAssistance-cee464a4.js → IconUserAssistance-c31c2875.js} +3 -3
  136. package/cjs/{IconUserAssistance-cee464a4.js.map → IconUserAssistance-c31c2875.js.map} +1 -1
  137. package/cjs/Indexer-563ea09d.js +4 -4
  138. package/cjs/InlineHelpSource-7b793104.js +1 -1
  139. package/cjs/InlineUserAssistance-ad3fa8cc.js +5 -5
  140. package/cjs/InputDateMask-f15d926d.js +7 -7
  141. package/cjs/{InputDatePicker-91be7790.js → InputDatePicker-005c03d0.js} +10 -10
  142. package/cjs/{InputDatePicker-91be7790.js.map → InputDatePicker-005c03d0.js.map} +1 -1
  143. package/cjs/InputPassword-16e31428.js +4 -4
  144. package/cjs/InputText-75ae1f44.js +6 -6
  145. package/cjs/Label-d9ad059f.js +5 -5
  146. package/cjs/LabelValueLayout-24937fa5.js +1 -1
  147. package/cjs/{Layer-845cc772.js → Layer-3700cd37.js} +3 -3
  148. package/cjs/{Layer-845cc772.js.map → Layer-3700cd37.js.map} +1 -1
  149. package/cjs/{LayerHost-a6007465.js → LayerHost-46e4d858.js} +2 -2
  150. package/cjs/{LayerHost-a6007465.js.map → LayerHost-46e4d858.js.map} +1 -1
  151. package/cjs/{LayerManager-6fa20e12.js → LayerManager-fa20a462.js} +2 -2
  152. package/cjs/{LayerManager-6fa20e12.js.map → LayerManager-fa20a462.js.map} +1 -1
  153. package/cjs/Legend-a03cbeb5.js +3 -3
  154. package/cjs/{LineAreaChart-e8165e93.js → LineAreaChart-2320dafa.js} +4 -4
  155. package/cjs/{LineAreaChart-e8165e93.js.map → LineAreaChart-2320dafa.js.map} +1 -1
  156. package/cjs/Link-98de6624.js +1 -1
  157. package/cjs/List-bd9ecebb.js +5 -5
  158. package/cjs/{ListItemLayout-24a81393.js → ListItemLayout-ba6c98cc.js} +2 -2
  159. package/cjs/{ListItemLayout-24a81393.js.map → ListItemLayout-ba6c98cc.js.map} +1 -1
  160. package/cjs/ListView-d67f49db.js +3 -3
  161. package/cjs/{LiveRegion-fcb0bb37.js → LiveRegion-1315adeb.js} +2 -2
  162. package/cjs/{LiveRegion-fcb0bb37.js.map → LiveRegion-1315adeb.js.map} +1 -1
  163. package/cjs/MaxLengthCounter-a5370f66.js +27 -0
  164. package/{es/MaxLengthCounter-cead2dac.js.map → cjs/MaxLengthCounter-a5370f66.js.map} +1 -1
  165. package/cjs/{MaxLengthLiveRegion-2dba8c9c.js → MaxLengthLiveRegion-85913361.js} +3 -3
  166. package/cjs/{MaxLengthLiveRegion-2dba8c9c.js.map → MaxLengthLiveRegion-85913361.js.map} +1 -1
  167. package/cjs/{Menu-afcc3db8.js → Menu-7f8ca235.js} +8 -8
  168. package/cjs/{Menu-afcc3db8.js.map → Menu-7f8ca235.js.map} +1 -1
  169. package/cjs/MenuButton-58fd9f46.js +3 -3
  170. package/cjs/MenuItem-9a73694f.js +1 -1
  171. package/cjs/Message-b703f9e4.js +2 -2
  172. package/cjs/{MessageLayer-b2a48a1f.js → MessageLayer-40ccf675.js} +6 -6
  173. package/cjs/{MessageLayer-b2a48a1f.js.map → MessageLayer-40ccf675.js.map} +1 -1
  174. package/cjs/MessageToast-4462ab8d.js +8 -8
  175. package/cjs/MessagesManager-9cc43d3a.js +3 -3
  176. package/cjs/MeterBar-97378f96.js +4 -4
  177. package/cjs/MeterCircle-71fd9b44.js +4 -4
  178. package/cjs/{Modal-fd178291.js → Modal-52fa4530.js} +3 -3
  179. package/cjs/{Modal-fd178291.js.map → Modal-52fa4530.js.map} +1 -1
  180. package/cjs/{MonthView-de994aa0.js → MonthView-94676cd6.js} +4 -4
  181. package/cjs/{MonthView-de994aa0.js.map → MonthView-94676cd6.js.map} +1 -1
  182. package/cjs/{NavigationListItem-12a76e7d.js → NavigationList-5218562e.js} +5 -20
  183. package/cjs/NavigationList-5218562e.js.map +1 -0
  184. package/cjs/NavigationListItem-b80c41dc.js +12 -0
  185. package/cjs/NavigationListItem-b80c41dc.js.map +1 -0
  186. package/cjs/NumberInputText-8771fbad.js +6 -6
  187. package/cjs/{OverflowTabBarItem-c0a592fd.js → OverflowTabBarItem-1de46588.js} +8 -7
  188. package/cjs/{OverflowTabBarItem-c0a592fd.js.map → OverflowTabBarItem-1de46588.js.map} +1 -1
  189. package/cjs/PRIVATE_BaseCardView.js +19 -19
  190. package/cjs/PRIVATE_Chart.js +33 -33
  191. package/cjs/PRIVATE_CheckboxControl.js +21 -21
  192. package/cjs/PRIVATE_CheckboxRadioField.js +22 -22
  193. package/cjs/PRIVATE_ClearIcon.js +16 -16
  194. package/cjs/PRIVATE_DatePickerHeader.js +18 -18
  195. package/cjs/PRIVATE_DatePickerLayout.js +4 -4
  196. package/cjs/PRIVATE_EmbeddedIconButton.js +3 -3
  197. package/cjs/PRIVATE_FormControls.js +19 -19
  198. package/cjs/PRIVATE_IconSwitchButton.js +14 -14
  199. package/cjs/PRIVATE_Icons/CheckboxMixed.js +14 -14
  200. package/cjs/PRIVATE_Icons/CheckboxOff.js +14 -14
  201. package/cjs/PRIVATE_Icons/CheckboxOn.js +14 -14
  202. package/cjs/PRIVATE_Icons/RadiobuttonOff.js +14 -14
  203. package/cjs/PRIVATE_Icons/RadiobuttonOn.js +14 -14
  204. package/cjs/PRIVATE_Icons/WarningS.js +14 -14
  205. package/cjs/PRIVATE_List.js +18 -18
  206. package/cjs/PRIVATE_Message.js +17 -17
  207. package/cjs/PRIVATE_MessageLayer.js +11 -11
  208. package/cjs/PRIVATE_MonthView.js +7 -7
  209. package/cjs/PRIVATE_MonthYearGridView.js +7 -7
  210. package/cjs/PRIVATE_PlotArea.js +4 -4
  211. package/cjs/PRIVATE_RevealToggleIcon.js +15 -15
  212. package/cjs/PRIVATE_SelectCommon.js +26 -26
  213. package/cjs/PRIVATE_StyledCheckbox.js +14 -14
  214. package/cjs/PRIVATE_Table.js +16 -16
  215. package/cjs/PRIVATE_ThemedIcons/CalendarIcon.js +14 -14
  216. package/cjs/PRIVATE_ThemedIcons/ChartMarqueeSelectIcon.js +14 -14
  217. package/cjs/PRIVATE_ThemedIcons/ChartPanIcon.js +14 -14
  218. package/cjs/PRIVATE_ThemedIcons/ChartZoomIcon.js +14 -14
  219. package/cjs/PRIVATE_ThemedIcons/CheckIcon.js +14 -14
  220. package/cjs/PRIVATE_ThemedIcons/CheckboxMixedIcon.js +14 -14
  221. package/cjs/PRIVATE_ThemedIcons/CheckboxOffIcon.js +14 -14
  222. package/cjs/PRIVATE_ThemedIcons/CheckboxOnIcon.js +14 -14
  223. package/cjs/PRIVATE_ThemedIcons/CloseIcon.js +14 -14
  224. package/cjs/PRIVATE_ThemedIcons/CollapseIcon.js +15 -15
  225. package/cjs/PRIVATE_ThemedIcons/CollapseUpIcon.js +14 -14
  226. package/cjs/PRIVATE_ThemedIcons/DecrementIcon.js +14 -14
  227. package/cjs/PRIVATE_ThemedIcons/DeleteIcon.js +14 -14
  228. package/cjs/PRIVATE_ThemedIcons/DirectionalCollapseArrowIcon.js +15 -15
  229. package/cjs/PRIVATE_ThemedIcons/DirectionalExpandArrowIcon.js +15 -15
  230. package/cjs/PRIVATE_ThemedIcons/DropdownArrowIcon.js +14 -14
  231. package/cjs/PRIVATE_ThemedIcons/ExpandIcon.js +14 -14
  232. package/cjs/PRIVATE_ThemedIcons/HelpIcon.js +14 -14
  233. package/cjs/PRIVATE_ThemedIcons/IncrementIcon.js +14 -14
  234. package/cjs/PRIVATE_ThemedIcons/MenuButtonDropdownIcon.js +14 -14
  235. package/cjs/PRIVATE_ThemedIcons/MessageConfirmationIcon.js +14 -14
  236. package/cjs/PRIVATE_ThemedIcons/MessageErrorIcon.js +14 -14
  237. package/cjs/PRIVATE_ThemedIcons/MessageInfoIcon.js +14 -14
  238. package/cjs/PRIVATE_ThemedIcons/MessageWarningIcon.js +14 -14
  239. package/cjs/PRIVATE_ThemedIcons/MinusIcon.js +14 -14
  240. package/cjs/PRIVATE_ThemedIcons/NavDownIcon.js +14 -14
  241. package/cjs/PRIVATE_ThemedIcons/PlusIcon.js +14 -14
  242. package/cjs/PRIVATE_ThemedIcons/RadioOffIcon.js +14 -14
  243. package/cjs/PRIVATE_ThemedIcons/RadioOnIcon.js +14 -14
  244. package/cjs/PRIVATE_ThemedIcons/SortAscendingIcon.js +14 -14
  245. package/cjs/PRIVATE_ThemedIcons/SortDefaultIcon.js +14 -14
  246. package/cjs/PRIVATE_ThemedIcons/SortDescendingIcon.js +14 -14
  247. package/cjs/PRIVATE_ThemedIcons/ViewHideIcon.js +14 -14
  248. package/cjs/PRIVATE_ThemedIcons/ViewIcon.js +14 -14
  249. package/cjs/PRIVATE_TimeComponent.js +17 -17
  250. package/cjs/PRIVATE_VisTabularDatatip.js +4 -4
  251. package/cjs/PictoChart-bbd66c57.js +6 -6
  252. package/cjs/{PieChart-af6fad17.js → PieChart-bd68cc0d.js} +5 -5
  253. package/cjs/{PieChart-af6fad17.js.map → PieChart-bd68cc0d.js.map} +1 -1
  254. package/cjs/{Popup-a793c4a2.js → Popup-881aae20.js} +9 -9
  255. package/cjs/{Popup-a793c4a2.js.map → Popup-881aae20.js.map} +1 -1
  256. package/cjs/{ProgressBar-c1bfc481.js → ProgressBar-4a4d56b0.js} +3 -3
  257. package/cjs/{ProgressBar-c1bfc481.js.map → ProgressBar-4a4d56b0.js.map} +1 -1
  258. package/cjs/{ProgressCircle-579da214.js → ProgressCircle-2524339b.js} +2 -2
  259. package/cjs/{ProgressCircle-579da214.js.map → ProgressCircle-2524339b.js.map} +1 -1
  260. package/cjs/RadioItem-f53a057a.js +6 -6
  261. package/cjs/RatingGauge-bafed83c.js +7 -7
  262. package/cjs/ReadonlyTextFieldInput-fb7ffa5e.js +1 -1
  263. package/cjs/{RemovableNavigationListItem-6231df42.js → RemovableNavigationListItem-eb2c8156.js} +5 -4
  264. package/cjs/{RemovableNavigationListItem-6231df42.js.map → RemovableNavigationListItem-eb2c8156.js.map} +1 -1
  265. package/cjs/RemovableTabBarItem-df8144f5.js +2 -2
  266. package/cjs/{ReorderableTabBar-5743c66a.js → ReorderableTabBar-025a0d71.js} +4 -4
  267. package/cjs/{ReorderableTabBar-5743c66a.js.map → ReorderableTabBar-025a0d71.js.map} +1 -1
  268. package/cjs/RevealToggleIcon-b5738e5e.js +1 -1
  269. package/cjs/SectionalLegend-959d7977.js +4 -4
  270. package/cjs/{SectionedContent-5e956228.js → SectionedContent-0c0f96fb.js} +5 -5
  271. package/cjs/{SectionedContent-5e956228.js.map → SectionedContent-0c0f96fb.js.map} +1 -1
  272. package/cjs/SelectMultiple-3af44d48.js +8 -8
  273. package/cjs/SelectSingle-315c9871.js +7 -7
  274. package/cjs/{SelectionCard-9a4f325f.js → SelectionCard-aa300118.js} +2 -2
  275. package/cjs/{SelectionCard-9a4f325f.js.map → SelectionCard-aa300118.js.map} +1 -1
  276. package/cjs/Selector-cc35dbb1.js +1 -1
  277. package/cjs/SelectorAll-d8d3cb7b.js +5 -5
  278. package/cjs/{Sheet-c3a675fc.js → Sheet-a6267b5f.js} +3 -3
  279. package/cjs/{Sheet-c3a675fc.js.map → Sheet-a6267b5f.js.map} +1 -1
  280. package/cjs/SplitMenuButton-336bb8d6.js +3 -3
  281. package/cjs/StyledTextField-351ea57e.js +3 -3
  282. package/cjs/Submenu-b7daab71.js +1 -1
  283. package/cjs/{TabBar-73bb6c97.js → TabBar-e77706d0.js} +12 -7
  284. package/cjs/{TabBar-73bb6c97.js.map → TabBar-e77706d0.js.map} +1 -1
  285. package/cjs/TabBarItem-2b3039aa.js +3 -3
  286. package/cjs/TabBarLayout-c2efbeb3.js +1 -1
  287. package/cjs/{TabBarMixed-426fcaf1.js → TabBarMixed-bc696a46.js} +12 -7
  288. package/cjs/{TabBarMixed-426fcaf1.js.map → TabBarMixed-bc696a46.js.map} +1 -1
  289. package/cjs/{TabBarMixedSeparator-e949e3c9.js → TabBarMixedSeparator-6388ccda.js} +2 -2
  290. package/cjs/{TabBarMixedSeparator-e949e3c9.js.map → TabBarMixedSeparator-6388ccda.js.map} +1 -1
  291. package/cjs/Table-ecf57a09.js +3 -3
  292. package/cjs/TagCloud-26a38c04.js +9 -9
  293. package/cjs/{TextArea-aff8b46e.js → TextArea-b2646d51.js} +9 -27
  294. package/{es/TextArea-d97aac1f.js.map → cjs/TextArea-b2646d51.js.map} +1 -1
  295. package/cjs/{TextAreaAutosize-c12ae7e7.js → TextAreaAutosize-d8cad6ce.js} +8 -8
  296. package/cjs/{TextAreaAutosize-c12ae7e7.js.map → TextAreaAutosize-d8cad6ce.js.map} +1 -1
  297. package/cjs/TextField-0f4e945f.js +3 -3
  298. package/cjs/TextFieldInput-4904c227.js +1 -1
  299. package/cjs/Theme-redwood/theme.css +296 -296
  300. package/cjs/Theme-stable/theme.css +209 -209
  301. package/cjs/TimeComponentCanvas2D-babbee35.js +4 -4
  302. package/cjs/Toolbar-415d636a.js +1 -1
  303. package/cjs/TruncatingBadge-7516b73e.js +2 -2
  304. package/cjs/TruncatingText-238fc336.js +2 -2
  305. package/cjs/UNSAFE_ActionCard.js +2 -2
  306. package/cjs/UNSAFE_BarChart/__test__/BarChart.spec.js +34 -34
  307. package/cjs/UNSAFE_BarChart.js +34 -34
  308. package/cjs/UNSAFE_BaseButton.js +3 -3
  309. package/cjs/UNSAFE_Button.js +3 -3
  310. package/cjs/UNSAFE_ButtonLayout/tests/ButtonLayout.spec.js +18 -18
  311. package/cjs/UNSAFE_ButtonSet.js +4 -4
  312. package/cjs/UNSAFE_ButtonSetButton.js +3 -3
  313. package/cjs/UNSAFE_ButtonSetIconButton.js +14 -14
  314. package/cjs/UNSAFE_ButtonSetItem.js +14 -14
  315. package/cjs/UNSAFE_ButtonSetMultiple.js +4 -4
  316. package/cjs/UNSAFE_ButtonSetSingle.js +4 -4
  317. package/cjs/UNSAFE_CardFlexView.js +19 -19
  318. package/cjs/UNSAFE_CardGridView.js +19 -19
  319. package/cjs/UNSAFE_Center.js +5 -5
  320. package/cjs/UNSAFE_ChartWithLegend.js +4 -4
  321. package/cjs/UNSAFE_Checkbox.js +21 -21
  322. package/cjs/UNSAFE_CheckboxItem.js +22 -22
  323. package/cjs/UNSAFE_CheckboxSet.js +21 -21
  324. package/cjs/UNSAFE_Chip.js +2 -2
  325. package/cjs/UNSAFE_Collapsible.js +16 -16
  326. package/cjs/UNSAFE_ComponentMessage.js +17 -17
  327. package/cjs/UNSAFE_ConveyorBelt.js +14 -14
  328. package/cjs/UNSAFE_DatePicker.js +23 -23
  329. package/cjs/UNSAFE_Diagram.js +15 -15
  330. package/cjs/UNSAFE_Dialog.js +9 -9
  331. package/cjs/UNSAFE_DragHandle.js +15 -15
  332. package/cjs/UNSAFE_DrawerLayout.js +11 -11
  333. package/cjs/UNSAFE_DrawerPopup.js +10 -10
  334. package/cjs/UNSAFE_Dropdown.js +12 -12
  335. package/cjs/UNSAFE_Environment.js +4 -4
  336. package/cjs/UNSAFE_ExpandableList.js +21 -21
  337. package/cjs/UNSAFE_FilePicker.js +4 -4
  338. package/cjs/UNSAFE_Flex.js +4 -4
  339. package/cjs/UNSAFE_Floating.js +10 -10
  340. package/cjs/UNSAFE_FormLayout.js +2 -2
  341. package/cjs/UNSAFE_Gantt.js +21 -21
  342. package/cjs/UNSAFE_Grid.js +4 -4
  343. package/cjs/UNSAFE_HighlightText.js +4 -4
  344. package/cjs/UNSAFE_Icon.js +14 -14
  345. package/cjs/UNSAFE_IconButton.js +14 -14
  346. package/cjs/UNSAFE_IconMenuButton.js +18 -18
  347. package/cjs/UNSAFE_IconToggleButton.js +14 -14
  348. package/cjs/UNSAFE_Indexer.js +6 -6
  349. package/cjs/UNSAFE_InputDateMask.js +22 -22
  350. package/cjs/UNSAFE_InputDatePicker.js +107 -107
  351. package/cjs/UNSAFE_InputPassword.js +21 -21
  352. package/cjs/UNSAFE_InputSensitiveText.js +23 -23
  353. package/cjs/UNSAFE_InputText.js +24 -24
  354. package/cjs/UNSAFE_Label.js +21 -21
  355. package/cjs/UNSAFE_LabelValueLayout.js +4 -4
  356. package/cjs/UNSAFE_LabelledLink.js +23 -23
  357. package/cjs/UNSAFE_Layer.js +7 -7
  358. package/cjs/UNSAFE_Legend.js +22 -22
  359. package/cjs/UNSAFE_LineAreaChart/__test__/LineChart.spec.js +33 -33
  360. package/cjs/UNSAFE_LineAreaChart.js +34 -34
  361. package/cjs/UNSAFE_Link.js +2 -2
  362. package/cjs/UNSAFE_ListItemLayout.js +5 -5
  363. package/cjs/UNSAFE_ListView.js +24 -24
  364. package/cjs/UNSAFE_LiveRegion.js +4 -4
  365. package/cjs/UNSAFE_Menu.js +20 -20
  366. package/cjs/UNSAFE_MenuButton.js +18 -18
  367. package/cjs/UNSAFE_MessageBanner.js +17 -17
  368. package/cjs/UNSAFE_MessageToast.js +20 -20
  369. package/cjs/UNSAFE_MeterBar.js +14 -14
  370. package/cjs/UNSAFE_MeterCircle.js +14 -14
  371. package/cjs/UNSAFE_Modal.js +7 -7
  372. package/cjs/UNSAFE_NavigationList.js +34 -32
  373. package/cjs/UNSAFE_NavigationList.js.map +1 -1
  374. package/cjs/UNSAFE_NavigationListCommon.js +68 -67
  375. package/cjs/UNSAFE_NavigationListCommon.js.map +1 -1
  376. package/cjs/UNSAFE_NumberInputText.js +23 -23
  377. package/cjs/UNSAFE_OverflowTabBar.js +45 -43
  378. package/cjs/UNSAFE_OverflowTabBar.js.map +1 -1
  379. package/cjs/UNSAFE_PictoChart.js +13 -13
  380. package/cjs/UNSAFE_PieChart/__test__/PieChart.spec.js +14 -14
  381. package/cjs/UNSAFE_PieChart.js +14 -14
  382. package/cjs/UNSAFE_Popup.js +15 -15
  383. package/cjs/UNSAFE_ProgressBar.js +5 -5
  384. package/cjs/UNSAFE_ProgressCircle.js +4 -4
  385. package/cjs/UNSAFE_RadioItem.js +21 -21
  386. package/cjs/UNSAFE_RadioSet.js +21 -21
  387. package/cjs/UNSAFE_RatingGauge.js +15 -15
  388. package/cjs/UNSAFE_ReorderableTabBar.js +41 -27
  389. package/cjs/UNSAFE_ReorderableTabBar.js.map +1 -1
  390. package/cjs/UNSAFE_SectionalLegend.js +23 -23
  391. package/cjs/UNSAFE_SelectMultiple.js +29 -29
  392. package/cjs/UNSAFE_SelectSingle.js +29 -29
  393. package/cjs/UNSAFE_SelectionCard.js +4 -4
  394. package/cjs/UNSAFE_Selector.js +14 -14
  395. package/cjs/UNSAFE_SelectorAll.js +17 -17
  396. package/cjs/UNSAFE_Sheet/__test__/Sheet.spec.js +13 -13
  397. package/cjs/UNSAFE_Sheet.js +10 -10
  398. package/cjs/UNSAFE_SplitMenuButton.js +18 -18
  399. package/cjs/UNSAFE_TabBar.js +47 -45
  400. package/cjs/UNSAFE_TabBar.js.map +1 -1
  401. package/cjs/UNSAFE_TabBarCommon.js +42 -40
  402. package/cjs/UNSAFE_TabBarCommon.js.map +1 -1
  403. package/cjs/UNSAFE_TabBarMixed.js +50 -48
  404. package/cjs/UNSAFE_TabBarMixed.js.map +1 -1
  405. package/cjs/UNSAFE_TableView.js +16 -16
  406. package/cjs/UNSAFE_TagCloud.js +22 -22
  407. package/cjs/UNSAFE_TextArea.js +27 -26
  408. package/cjs/UNSAFE_TextArea.js.map +1 -1
  409. package/cjs/UNSAFE_TextAreaAutosize.js +25 -25
  410. package/cjs/UNSAFE_TextField.js +7 -7
  411. package/cjs/UNSAFE_ToggleButton.js +3 -3
  412. package/cjs/UNSAFE_Toolbar/tests/Toolbar.spec.js +20 -20
  413. package/cjs/UNSAFE_Toolbar.js +4 -4
  414. package/cjs/UNSAFE_Train.js +15 -15
  415. package/cjs/UNSAFE_TruncatingBadge.js +15 -15
  416. package/cjs/UNSAFE_TruncatingText.js +15 -15
  417. package/cjs/UNSAFE_UserAssistance.js +22 -22
  418. package/cjs/UNSAFE_View.js +7 -7
  419. package/cjs/UNSAFE_VirtualizedListView.js +18 -18
  420. package/cjs/UNSAFE_VisProgressiveLoader/__test__/VisProgressiveLoader.spec.js +8 -8
  421. package/cjs/UNSAFE_VisProgressiveLoader.js +6 -6
  422. package/cjs/UNSAFE_VisStatusMessage.js +6 -6
  423. package/cjs/UNSAFE_WindowOverlay.js +4 -4
  424. package/cjs/{View-8f49d970.js → View-011404a7.js} +5 -5
  425. package/cjs/{View-8f49d970.js.map → View-011404a7.js.map} +1 -1
  426. package/cjs/{VisNoData-b3159e5a.js → VisNoData-9afdc618.js} +3 -3
  427. package/cjs/{VisNoData-b3159e5a.js.map → VisNoData-9afdc618.js.map} +1 -1
  428. package/cjs/{VisProgressiveLoader-2cf7074b.js → VisProgressiveLoader-ad546cec.js} +3 -3
  429. package/cjs/{VisProgressiveLoader-2cf7074b.js.map → VisProgressiveLoader-ad546cec.js.map} +1 -1
  430. package/cjs/{VisTabularDatatip-96e5fcf3.js → VisTabularDatatip-3b3341f9.js} +2 -2
  431. package/cjs/{VisTabularDatatip-96e5fcf3.js.map → VisTabularDatatip-3b3341f9.js.map} +1 -1
  432. package/cjs/{WindowOverlay-bb51c0ee.js → WindowOverlay-d255542f.js} +2 -2
  433. package/cjs/{WindowOverlay-bb51c0ee.js.map → WindowOverlay-d255542f.js.map} +1 -1
  434. package/cjs/{YearsGridView-6affda7f.js → YearsGridView-95c9ae3d.js} +4 -4
  435. package/cjs/{YearsGridView-6affda7f.js.map → YearsGridView-95c9ae3d.js.map} +1 -1
  436. package/cjs/hoc/PRIVATE_withDirectionIcon.js +4 -4
  437. package/cjs/hoc/PRIVATE_withThemeIcon.js +3 -3
  438. package/cjs/hoc/UNSAFE_withThemeProps.js +3 -3
  439. package/cjs/hooks/PRIVATE_useChartContextMenu.js +18 -18
  440. package/cjs/hooks/PRIVATE_useChartDatatip.js +13 -13
  441. package/cjs/hooks/PRIVATE_useChartEvents.js +17 -17
  442. package/cjs/hooks/PRIVATE_useChartMarquee.js +16 -16
  443. package/cjs/hooks/PRIVATE_useCssVars.js +7 -7
  444. package/cjs/hooks/PRIVATE_useCurrentKey.js +4 -4
  445. package/cjs/hooks/PRIVATE_useDatatip.js +11 -11
  446. package/cjs/hooks/PRIVATE_useFloating.js +4 -4
  447. package/cjs/hooks/PRIVATE_useReorderable.js +4 -4
  448. package/cjs/hooks/PRIVATE_useRovingTabIndexContainer.js +4 -4
  449. package/cjs/hooks/PRIVATE_useSelection.js +4 -4
  450. package/cjs/hooks/PRIVATE_useTabBar.js +5 -5
  451. package/cjs/hooks/PRIVATE_useVisContextMenu.js +18 -18
  452. package/cjs/hooks/PRIVATE_useVisEvents.js +4 -4
  453. package/cjs/hooks/PRIVATE_useVisMeterEvents.js +13 -13
  454. package/cjs/hooks/PRIVATE_useVisSelection.js +12 -12
  455. package/cjs/hooks/UNSAFE_useColorScheme.js +3 -3
  456. package/cjs/hooks/UNSAFE_useCurrentBgColor.js +3 -3
  457. package/cjs/hooks/UNSAFE_useDensity.js +3 -3
  458. package/cjs/hooks/UNSAFE_useOutsideClick.js +7 -7
  459. package/cjs/hooks/UNSAFE_usePrefixSuffix.js +4 -4
  460. package/cjs/hooks/UNSAFE_useScale.js +3 -3
  461. package/cjs/hooks/UNSAFE_useTestId.js +3 -3
  462. package/cjs/hooks/UNSAFE_useTheme.js +3 -3
  463. package/cjs/hooks/UNSAFE_useThemeInterpolations.js +5 -5
  464. package/cjs/hooks/UNSAFE_useTooltip.js +15 -15
  465. package/cjs/hooks/UNSAFE_useTranslationBundle.js +3 -3
  466. package/cjs/hooks/UNSAFE_useUser.js +3 -3
  467. package/cjs/{index-5049ab6c.js → index-c679f28a.js} +2 -2
  468. package/cjs/index-c679f28a.js.map +1 -0
  469. package/cjs/listViewSelectionTests-3d07b4e3.js +4 -4
  470. package/cjs/{render-7538ab25.js → render-7a552b40.js} +3 -3
  471. package/cjs/{render-7538ab25.js.map → render-7a552b40.js.map} +1 -1
  472. package/cjs/{tabbableUtils-5502f80e.js → tabbableUtils-6d07309a.js} +3 -3
  473. package/cjs/{tabbableUtils-5502f80e.js.map → tabbableUtils-6d07309a.js.map} +1 -1
  474. package/cjs/{testData-afbc1647.js → testData-f91dbc33.js} +3 -3
  475. package/cjs/{testData-afbc1647.js.map → testData-f91dbc33.js.map} +1 -1
  476. package/cjs/useCellNavigation-24bff833.js +1 -1
  477. package/cjs/useChartContextMenu-d7ed939f.js +3 -3
  478. package/cjs/{useChartDatatip-b838368c.js → useChartDatatip-7b7f757f.js} +4 -4
  479. package/cjs/{useChartDatatip-b838368c.js.map → useChartDatatip-7b7f757f.js.map} +1 -1
  480. package/cjs/useChartMarquee-ab7c89ea.js +1 -1
  481. package/cjs/{useColorScheme-b0ea4a49.js → useColorScheme-d2c4adcc.js} +2 -2
  482. package/cjs/{useColorScheme-b0ea4a49.js.map → useColorScheme-d2c4adcc.js.map} +1 -1
  483. package/cjs/useContextMenu-f3cf0db8.js +3 -3
  484. package/cjs/{useCssVars-839ce507.js → useCssVars-4f061513.js} +5 -5
  485. package/cjs/{useCssVars-839ce507.js.map → useCssVars-4f061513.js.map} +1 -1
  486. package/cjs/{useCurrentBgColor-2d0db090.js → useCurrentBgColor-ccc9db95.js} +2 -2
  487. package/cjs/{useCurrentBgColor-2d0db090.js.map → useCurrentBgColor-ccc9db95.js.map} +1 -1
  488. package/cjs/{useCurrentKey-9c158ccc.js → useCurrentKey-3b4c8a44.js} +2 -2
  489. package/cjs/{useCurrentKey-9c158ccc.js.map → useCurrentKey-3b4c8a44.js.map} +1 -1
  490. package/cjs/{useDatatip-1f5535bb.js → useDatatip-ff0c568c.js} +4 -4
  491. package/cjs/{useDatatip-1f5535bb.js.map → useDatatip-ff0c568c.js.map} +1 -1
  492. package/cjs/{useDensity-edb16927.js → useDensity-6e80ddff.js} +2 -2
  493. package/cjs/{useDensity-edb16927.js.map → useDensity-6e80ddff.js.map} +1 -1
  494. package/cjs/{useFloating-f4bbd8c4.js → useFloating-7800fd56.js} +2 -2
  495. package/cjs/{useFloating-f4bbd8c4.js.map → useFloating-7800fd56.js.map} +1 -1
  496. package/cjs/{useKeyboardEvents-1b2187c2.js → useKeyboardEvents-f1a1dfef.js} +2 -2
  497. package/cjs/{useKeyboardEvents-1b2187c2.js.map → useKeyboardEvents-f1a1dfef.js.map} +1 -1
  498. package/cjs/useLegendContextMenu-a10bd2fc.js +5 -5
  499. package/cjs/{useMeterDatatip-93d199d6.js → useMeterDatatip-5db0b026.js} +3 -3
  500. package/cjs/{useMeterDatatip-93d199d6.js.map → useMeterDatatip-5db0b026.js.map} +1 -1
  501. package/cjs/{BaseNavigationListItem-070d75bc.js → useNavigationListItem-74009187.js} +2 -40
  502. package/cjs/useNavigationListItem-74009187.js.map +1 -0
  503. package/cjs/{useOutsideClick-b22e1d4a.js → useOutsideClick-7420644b.js} +2 -2
  504. package/cjs/{useOutsideClick-b22e1d4a.js.map → useOutsideClick-7420644b.js.map} +1 -1
  505. package/cjs/{usePopupAnimation-d58b2664.js → usePopupAnimation-78a173e8.js} +2 -2
  506. package/cjs/{usePopupAnimation-d58b2664.js.map → usePopupAnimation-78a173e8.js.map} +1 -1
  507. package/cjs/{usePrefixSuffix-544b49ad.js → usePrefixSuffix-edb21dad.js} +2 -2
  508. package/cjs/{usePrefixSuffix-544b49ad.js.map → usePrefixSuffix-edb21dad.js.map} +1 -1
  509. package/cjs/useReorderableItem-02ed8243.js +2 -2
  510. package/cjs/{useRovingTabIndexContainer-c03da9ff.js → useRovingTabIndexContainer-ff6fef9d.js} +2 -2
  511. package/cjs/{useRovingTabIndexContainer-c03da9ff.js.map → useRovingTabIndexContainer-ff6fef9d.js.map} +1 -1
  512. package/cjs/{useScale-c5e9172c.js → useScale-74bd6456.js} +2 -2
  513. package/cjs/{useScale-c5e9172c.js.map → useScale-74bd6456.js.map} +1 -1
  514. package/cjs/useSelectCommon-8aaf62bd.js +11 -11
  515. package/cjs/{useSelectDrill-303b8cba.js → useSelectDrill-64289234.js} +3 -3
  516. package/cjs/{useSelectDrill-303b8cba.js.map → useSelectDrill-64289234.js.map} +1 -1
  517. package/cjs/{useSelection-1fe0f2c2.js → useSelection-8f71759b.js} +5 -5
  518. package/cjs/{useSelection-1fe0f2c2.js.map → useSelection-8f71759b.js.map} +1 -1
  519. package/cjs/{useSelection-05fa772e.js → useSelection-b53f8255.js} +2 -2
  520. package/cjs/{useSelection-05fa772e.js.map → useSelection-b53f8255.js.map} +1 -1
  521. package/cjs/{useTabBar-8bd94c1b.js → useTabBar-35edcdb1.js} +2 -2
  522. package/cjs/{useTabBar-8bd94c1b.js.map → useTabBar-35edcdb1.js.map} +1 -1
  523. package/cjs/{useTestId-71c3de70.js → useTestId-8234ec1e.js} +2 -2
  524. package/cjs/{useTestId-71c3de70.js.map → useTestId-8234ec1e.js.map} +1 -1
  525. package/cjs/{useTheme-f85b8938.js → useTheme-9b0dc066.js} +2 -2
  526. package/cjs/{useTheme-f85b8938.js.map → useTheme-9b0dc066.js.map} +1 -1
  527. package/cjs/{useThemeInterpolations-50ce3d68.js → useThemeInterpolations-25313f34.js} +4 -4
  528. package/cjs/{useThemeInterpolations-50ce3d68.js.map → useThemeInterpolations-25313f34.js.map} +1 -1
  529. package/cjs/{useTooltip-29b90247.js → useTooltip-468c1c92.js} +2 -2
  530. package/cjs/{useTooltip-29b90247.js.map → useTooltip-468c1c92.js.map} +1 -1
  531. package/cjs/{useTooltipControlled-a907e06c.js → useTooltipControlled-706a3651.js} +8 -8
  532. package/cjs/{useTooltipControlled-a907e06c.js.map → useTooltipControlled-706a3651.js.map} +1 -1
  533. package/cjs/{useTranslationBundle-7fcd8bd5.js → useTranslationBundle-9da032d6.js} +2 -2
  534. package/cjs/{useTranslationBundle-7fcd8bd5.js.map → useTranslationBundle-9da032d6.js.map} +1 -1
  535. package/cjs/{useUser-c8e9a94a.js → useUser-a6d15333.js} +2 -2
  536. package/cjs/{useUser-c8e9a94a.js.map → useUser-a6d15333.js.map} +1 -1
  537. package/cjs/{useVisEvents-b000a96f.js → useVisEvents-3d806e47.js} +2 -2
  538. package/cjs/{useVisEvents-b000a96f.js.map → useVisEvents-3d806e47.js.map} +1 -1
  539. package/cjs/utils/PRIVATE_visTestUtils.js +5 -5
  540. package/cjs/{withDirectionIcon-b6772ee8.js → withDirectionIcon-d9c7c79f.js} +2 -2
  541. package/cjs/{withDirectionIcon-b6772ee8.js.map → withDirectionIcon-d9c7c79f.js.map} +1 -1
  542. package/es/ActionCard-623c6191.js +1 -1
  543. package/es/{BarChart-72948598.js → BarChart-c8f78f4b.js} +4 -4
  544. package/es/{BarChart-72948598.js.map → BarChart-c8f78f4b.js.map} +1 -1
  545. package/es/BaseButton-5b2791b1.js +2 -2
  546. package/es/BaseCardView-59efba85.js +6 -6
  547. package/es/{BaseCardViewSelectionTest-ab83a0b0.js → BaseCardViewSelectionTest-6796b2b4.js} +6 -6
  548. package/es/{BaseCardViewSelectionTest-ab83a0b0.js.map → BaseCardViewSelectionTest-6796b2b4.js.map} +1 -1
  549. package/es/BaseNavigationListItem-3a377d46.js +1 -1
  550. package/es/ButtonSet-fa7e8acd.js +2 -2
  551. package/es/ButtonSetIconButton-c5860cc1.js +2 -2
  552. package/es/{Center-58d4b406.js → Center-2ffc1dcc.js} +2 -2
  553. package/es/{Center-58d4b406.js.map → Center-2ffc1dcc.js.map} +1 -1
  554. package/es/{Chart-304043b3.js → Chart-793bd008.js} +11 -11
  555. package/es/{Chart-304043b3.js.map → Chart-793bd008.js.map} +1 -1
  556. package/es/CheckboxControl-7174e0b2.js +6 -6
  557. package/es/CheckboxRadioField-c7c4643e.js +5 -5
  558. package/es/CheckboxSetContext-1be56556.js +9 -0
  559. package/{amd/CheckboxSetContext-2e486ea8.js.map → es/CheckboxSetContext-1be56556.js.map} +1 -1
  560. package/es/Chip-2c86a76f.js +1 -1
  561. package/es/ClearIcon-f1f796b4.js +1 -1
  562. package/es/CollapseIcon-b6d7cfd6.js +1 -1
  563. package/es/Collapsible-4cdc17e3.js +2 -2
  564. package/es/CompactHelpSource-548938ff.js +2 -2
  565. package/es/{CompactLabelAssistance-933d1d68.js → CompactLabelAssistance-fc9478aa.js} +4 -4
  566. package/es/{CompactLabelAssistance-933d1d68.js.map → CompactLabelAssistance-fc9478aa.js.map} +1 -1
  567. package/es/CompactUserAssistance-41c32c6f.js +4 -4
  568. package/es/ComponentMessageContainer-7d9228a3.js +4 -4
  569. package/es/ConveyorBeltItem-3d1d7f3c.js +2 -2
  570. package/es/{DatePicker-e517dad2.js → DatePicker-4356274b.js} +6 -6
  571. package/es/{DatePicker-e517dad2.js.map → DatePicker-4356274b.js.map} +1 -1
  572. package/es/DatePickerHeader-7078d6e8.js +3 -3
  573. package/es/{Diagram-15e246b6.js → Diagram-214e374c.js} +5 -5
  574. package/es/{Diagram-15e246b6.js.map → Diagram-214e374c.js.map} +1 -1
  575. package/es/DirectionalCollapseArrowIcon-0298f5ef.js +1 -1
  576. package/es/DirectionalExpandArrowIcon-cf8fd7a8.js +1 -1
  577. package/es/DragHandle-9514fcdc.js +1 -1
  578. package/es/{Dropdown-2a328b40.js → Dropdown-717319bb.js} +5 -5
  579. package/es/{Dropdown-2a328b40.js.map → Dropdown-717319bb.js.map} +1 -1
  580. package/es/{EnvironmentProvider-6846a7ff.js → EnvironmentProvider-f543a463.js} +3 -3
  581. package/es/{EnvironmentProvider-6846a7ff.js.map → EnvironmentProvider-f543a463.js.map} +1 -1
  582. package/es/FilePicker-d8a0ad3a.js +2 -2
  583. package/es/{Flex-5ff5aa5e.js → Flex-24628925.js} +2 -2
  584. package/es/{Flex-5ff5aa5e.js.map → Flex-24628925.js.map} +1 -1
  585. package/es/{Floating-5b269acc.js → Floating-9703160e.js} +4 -4
  586. package/es/{Floating-5b269acc.js.map → Floating-9703160e.js.map} +1 -1
  587. package/es/FormLayout-ecd0259b.js +1 -1
  588. package/es/Gantt-b21af627.js +9 -9
  589. package/es/{Grid-5d8f712b.js → Grid-cfeac922.js} +2 -2
  590. package/es/{Grid-5d8f712b.js.map → Grid-cfeac922.js.map} +1 -1
  591. package/es/{Gridlines-4b7301e7.js → Gridlines-428bf909.js} +2 -2
  592. package/es/{Gridlines-4b7301e7.js.map → Gridlines-428bf909.js.map} +1 -1
  593. package/es/GroupLoadingIndicator-9c995e99.js +1 -1
  594. package/es/{HighlightText-39781e79.js → HighlightText-180e29f6.js} +2 -2
  595. package/es/{HighlightText-39781e79.js.map → HighlightText-180e29f6.js.map} +1 -1
  596. package/es/Icon-90c3a630.js +2 -2
  597. package/es/IconButton-37310d21.js +2 -2
  598. package/es/IconMenuButton-9fe6cbf9.js +4 -4
  599. package/es/IconSwitchButton-61cabbfe.js +2 -2
  600. package/es/IconToggleButton-f57e5484.js +2 -2
  601. package/es/{IconUserAssistance-744d71a4.js → IconUserAssistance-c226cb4f.js} +3 -3
  602. package/es/{IconUserAssistance-744d71a4.js.map → IconUserAssistance-c226cb4f.js.map} +1 -1
  603. package/es/Indexer-a671092c.js +4 -4
  604. package/es/InlineHelpSource-b43def76.js +1 -1
  605. package/es/InlineUserAssistance-bb690d93.js +5 -5
  606. package/es/InputDateMask-7386adfe.js +7 -7
  607. package/es/{InputDatePicker-7f9852d0.js → InputDatePicker-aa02a34c.js} +10 -10
  608. package/es/{InputDatePicker-7f9852d0.js.map → InputDatePicker-aa02a34c.js.map} +1 -1
  609. package/es/InputPassword-1f1f80b3.js +4 -4
  610. package/es/InputText-5fb896e7.js +6 -6
  611. package/es/Label-6674b3f2.js +5 -5
  612. package/es/LabelValueLayout-23b74176.js +1 -1
  613. package/es/{Layer-5d259d3a.js → Layer-9b06412e.js} +3 -3
  614. package/es/{Layer-5d259d3a.js.map → Layer-9b06412e.js.map} +1 -1
  615. package/es/{LayerHost-aaed41a1.js → LayerHost-45f545d7.js} +2 -2
  616. package/es/{LayerHost-aaed41a1.js.map → LayerHost-45f545d7.js.map} +1 -1
  617. package/es/{LayerManager-87beee1e.js → LayerManager-625d2503.js} +2 -2
  618. package/es/{LayerManager-87beee1e.js.map → LayerManager-625d2503.js.map} +1 -1
  619. package/es/Legend-98a79c12.js +3 -3
  620. package/es/{LineAreaChart-09df0269.js → LineAreaChart-413e0043.js} +4 -4
  621. package/es/{LineAreaChart-09df0269.js.map → LineAreaChart-413e0043.js.map} +1 -1
  622. package/es/Link-bfa35319.js +1 -1
  623. package/es/List-9026206d.js +5 -5
  624. package/es/{ListItemLayout-961c8443.js → ListItemLayout-695ec1a5.js} +2 -2
  625. package/es/{ListItemLayout-961c8443.js.map → ListItemLayout-695ec1a5.js.map} +1 -1
  626. package/es/ListView-c508c3a4.js +3 -3
  627. package/es/{LiveRegion-4646cd7d.js → LiveRegion-81216fe6.js} +2 -2
  628. package/es/{LiveRegion-4646cd7d.js.map → LiveRegion-81216fe6.js.map} +1 -1
  629. package/es/{MaxLengthLiveRegion-1278e638.js → MaxLengthLiveRegion-cd15b075.js} +3 -3
  630. package/es/{MaxLengthLiveRegion-1278e638.js.map → MaxLengthLiveRegion-cd15b075.js.map} +1 -1
  631. package/es/{Menu-b0c28cfd.js → Menu-c7ab8412.js} +8 -8
  632. package/es/{Menu-b0c28cfd.js.map → Menu-c7ab8412.js.map} +1 -1
  633. package/es/MenuButton-39563941.js +3 -3
  634. package/es/MenuItem-a8f9c954.js +1 -1
  635. package/es/Message-be36b84a.js +2 -2
  636. package/es/{MessageLayer-322485df.js → MessageLayer-0946d6b7.js} +6 -6
  637. package/es/{MessageLayer-322485df.js.map → MessageLayer-0946d6b7.js.map} +1 -1
  638. package/es/MessageToast-2fa3c9d4.js +8 -8
  639. package/es/MessagesManager-0d60fea1.js +3 -3
  640. package/es/MeterBar-bdd7f9da.js +4 -4
  641. package/es/MeterCircle-fd10f18b.js +4 -4
  642. package/es/{Modal-986872f3.js → Modal-6b11d8cb.js} +3 -3
  643. package/es/{Modal-986872f3.js.map → Modal-6b11d8cb.js.map} +1 -1
  644. package/es/{MonthView-99cc26ac.js → MonthView-cc017afe.js} +4 -4
  645. package/es/{MonthView-99cc26ac.js.map → MonthView-cc017afe.js.map} +1 -1
  646. package/es/NavigationListItem-ea899fab.js +5 -5
  647. package/es/NumberInputText-21ded33a.js +6 -6
  648. package/es/OverflowTabBarItem-8f35961d.js +3 -3
  649. package/es/PRIVATE_BaseCardView.js +19 -19
  650. package/es/PRIVATE_Chart.js +33 -33
  651. package/es/PRIVATE_CheckboxControl.js +21 -21
  652. package/es/PRIVATE_CheckboxRadioField.js +22 -22
  653. package/es/PRIVATE_ClearIcon.js +16 -16
  654. package/es/PRIVATE_DatePickerHeader.js +18 -18
  655. package/es/PRIVATE_DatePickerLayout.js +4 -4
  656. package/es/PRIVATE_EmbeddedIconButton.js +3 -3
  657. package/es/PRIVATE_FormControls.js +19 -19
  658. package/es/PRIVATE_IconSwitchButton.js +14 -14
  659. package/es/PRIVATE_Icons/CheckboxMixed.js +14 -14
  660. package/es/PRIVATE_Icons/CheckboxOff.js +14 -14
  661. package/es/PRIVATE_Icons/CheckboxOn.js +14 -14
  662. package/es/PRIVATE_Icons/RadiobuttonOff.js +14 -14
  663. package/es/PRIVATE_Icons/RadiobuttonOn.js +14 -14
  664. package/es/PRIVATE_Icons/WarningS.js +14 -14
  665. package/es/PRIVATE_List.js +18 -18
  666. package/es/PRIVATE_Message.js +17 -17
  667. package/es/PRIVATE_MessageLayer.js +11 -11
  668. package/es/PRIVATE_MonthView.js +7 -7
  669. package/es/PRIVATE_MonthYearGridView.js +7 -7
  670. package/es/PRIVATE_PlotArea.js +4 -4
  671. package/es/PRIVATE_RevealToggleIcon.js +15 -15
  672. package/es/PRIVATE_SelectCommon.js +26 -26
  673. package/es/PRIVATE_StyledCheckbox.js +14 -14
  674. package/es/PRIVATE_Table.js +16 -16
  675. package/es/PRIVATE_ThemedIcons/CalendarIcon.js +14 -14
  676. package/es/PRIVATE_ThemedIcons/ChartMarqueeSelectIcon.js +14 -14
  677. package/es/PRIVATE_ThemedIcons/ChartPanIcon.js +14 -14
  678. package/es/PRIVATE_ThemedIcons/ChartZoomIcon.js +14 -14
  679. package/es/PRIVATE_ThemedIcons/CheckIcon.js +14 -14
  680. package/es/PRIVATE_ThemedIcons/CheckboxMixedIcon.js +14 -14
  681. package/es/PRIVATE_ThemedIcons/CheckboxOffIcon.js +14 -14
  682. package/es/PRIVATE_ThemedIcons/CheckboxOnIcon.js +14 -14
  683. package/es/PRIVATE_ThemedIcons/CloseIcon.js +14 -14
  684. package/es/PRIVATE_ThemedIcons/CollapseIcon.js +15 -15
  685. package/es/PRIVATE_ThemedIcons/CollapseUpIcon.js +14 -14
  686. package/es/PRIVATE_ThemedIcons/DecrementIcon.js +14 -14
  687. package/es/PRIVATE_ThemedIcons/DeleteIcon.js +14 -14
  688. package/es/PRIVATE_ThemedIcons/DirectionalCollapseArrowIcon.js +15 -15
  689. package/es/PRIVATE_ThemedIcons/DirectionalExpandArrowIcon.js +15 -15
  690. package/es/PRIVATE_ThemedIcons/DropdownArrowIcon.js +14 -14
  691. package/es/PRIVATE_ThemedIcons/ExpandIcon.js +14 -14
  692. package/es/PRIVATE_ThemedIcons/HelpIcon.js +14 -14
  693. package/es/PRIVATE_ThemedIcons/IncrementIcon.js +14 -14
  694. package/es/PRIVATE_ThemedIcons/MenuButtonDropdownIcon.js +14 -14
  695. package/es/PRIVATE_ThemedIcons/MessageConfirmationIcon.js +14 -14
  696. package/es/PRIVATE_ThemedIcons/MessageErrorIcon.js +14 -14
  697. package/es/PRIVATE_ThemedIcons/MessageInfoIcon.js +14 -14
  698. package/es/PRIVATE_ThemedIcons/MessageWarningIcon.js +14 -14
  699. package/es/PRIVATE_ThemedIcons/MinusIcon.js +14 -14
  700. package/es/PRIVATE_ThemedIcons/NavDownIcon.js +14 -14
  701. package/es/PRIVATE_ThemedIcons/PlusIcon.js +14 -14
  702. package/es/PRIVATE_ThemedIcons/RadioOffIcon.js +14 -14
  703. package/es/PRIVATE_ThemedIcons/RadioOnIcon.js +14 -14
  704. package/es/PRIVATE_ThemedIcons/SortAscendingIcon.js +14 -14
  705. package/es/PRIVATE_ThemedIcons/SortDefaultIcon.js +14 -14
  706. package/es/PRIVATE_ThemedIcons/SortDescendingIcon.js +14 -14
  707. package/es/PRIVATE_ThemedIcons/ViewHideIcon.js +14 -14
  708. package/es/PRIVATE_ThemedIcons/ViewIcon.js +14 -14
  709. package/es/PRIVATE_TimeComponent.js +17 -17
  710. package/es/PRIVATE_VisTabularDatatip.js +4 -4
  711. package/es/PictoChart-20c9a0c2.js +6 -6
  712. package/es/{PieChart-e41e3463.js → PieChart-f349498b.js} +5 -5
  713. package/es/{PieChart-e41e3463.js.map → PieChart-f349498b.js.map} +1 -1
  714. package/es/{Popup-6288438d.js → Popup-8889a781.js} +9 -9
  715. package/es/{Popup-6288438d.js.map → Popup-8889a781.js.map} +1 -1
  716. package/es/{ProgressBar-ed0c5ba0.js → ProgressBar-afafe39a.js} +3 -3
  717. package/es/{ProgressBar-ed0c5ba0.js.map → ProgressBar-afafe39a.js.map} +1 -1
  718. package/es/{ProgressCircle-95a70910.js → ProgressCircle-fa5866a3.js} +2 -2
  719. package/es/{ProgressCircle-95a70910.js.map → ProgressCircle-fa5866a3.js.map} +1 -1
  720. package/es/RadioItem-e5b1f50b.js +6 -6
  721. package/es/RatingGauge-4d8a68df.js +7 -7
  722. package/es/ReadonlyTextFieldInput-4392c7aa.js +1 -1
  723. package/es/RemovableNavigationListItem-4c86bec8.js +1 -1
  724. package/es/RemovableTabBarItem-217d4a0b.js +2 -2
  725. package/es/ReorderableTabBar-84640a66.js +2 -2
  726. package/es/RevealToggleIcon-9236963e.js +1 -1
  727. package/es/SectionalLegend-6ffb4255.js +4 -4
  728. package/es/{SectionedContent-13d72f4b.js → SectionedContent-815e377a.js} +5 -5
  729. package/es/{SectionedContent-13d72f4b.js.map → SectionedContent-815e377a.js.map} +1 -1
  730. package/es/SelectMultiple-fd3ea6f8.js +8 -8
  731. package/es/SelectSingle-8a8d1f5e.js +7 -7
  732. package/es/{SelectionCard-8496e467.js → SelectionCard-79044c5f.js} +2 -2
  733. package/es/{SelectionCard-8496e467.js.map → SelectionCard-79044c5f.js.map} +1 -1
  734. package/es/Selector-e56a73a8.js +1 -1
  735. package/es/SelectorAll-6f080f88.js +5 -5
  736. package/es/{Sheet-8914df23.js → Sheet-e4121f4a.js} +3 -3
  737. package/es/{Sheet-8914df23.js.map → Sheet-e4121f4a.js.map} +1 -1
  738. package/es/SplitMenuButton-79bdfe96.js +3 -3
  739. package/es/StyledTextField-c79f5438.js +3 -3
  740. package/es/Submenu-8b3fa593.js +1 -1
  741. package/es/TabBar-e39e8dbd.js +6 -6
  742. package/es/TabBarItem-c681fa07.js +3 -3
  743. package/es/TabBarLayout-a0d89ec4.js +1 -1
  744. package/es/TabBarMixed-3658d3d2.js +6 -6
  745. package/es/{TabBarMixedSeparator-da2254c9.js → TabBarMixedSeparator-8ab78880.js} +2 -2
  746. package/es/{TabBarMixedSeparator-da2254c9.js.map → TabBarMixedSeparator-8ab78880.js.map} +1 -1
  747. package/es/Table-e3ef68ad.js +3 -3
  748. package/es/TagCloud-78991c29.js +9 -9
  749. package/es/{TextArea-d97aac1f.js → TextArea-979496a0.js} +30 -13
  750. package/{cjs/TextArea-aff8b46e.js.map → es/TextArea-979496a0.js.map} +1 -1
  751. package/es/{TextAreaAutosize-68a4786d.js → TextAreaAutosize-b73aaa2f.js} +7 -7
  752. package/es/{TextAreaAutosize-68a4786d.js.map → TextAreaAutosize-b73aaa2f.js.map} +1 -1
  753. package/es/TextField-323fe0e9.js +3 -3
  754. package/es/TextFieldInput-3c39cb7b.js +1 -1
  755. package/es/Theme-redwood/theme.css +537 -537
  756. package/es/Theme-stable/theme.css +342 -342
  757. package/es/TimeComponentCanvas2D-c2ab38ba.js +4 -4
  758. package/es/Toolbar-f0e57a9d.js +1 -1
  759. package/es/TruncatingBadge-084c6682.js +2 -2
  760. package/es/TruncatingText-780cbb19.js +2 -2
  761. package/es/UNSAFE_ActionCard.js +2 -2
  762. package/es/UNSAFE_BarChart/__test__/BarChart.spec.js +34 -34
  763. package/es/UNSAFE_BarChart.js +34 -34
  764. package/es/UNSAFE_BaseButton.js +3 -3
  765. package/es/UNSAFE_Button.js +3 -3
  766. package/es/UNSAFE_ButtonLayout/tests/ButtonLayout.spec.js +18 -18
  767. package/es/UNSAFE_ButtonSet.js +4 -4
  768. package/es/UNSAFE_ButtonSetButton.js +3 -3
  769. package/es/UNSAFE_ButtonSetIconButton.js +14 -14
  770. package/es/UNSAFE_ButtonSetItem.js +14 -14
  771. package/es/UNSAFE_ButtonSetMultiple.js +4 -4
  772. package/es/UNSAFE_ButtonSetSingle.js +4 -4
  773. package/es/UNSAFE_CardFlexView.js +19 -19
  774. package/es/UNSAFE_CardGridView.js +19 -19
  775. package/es/UNSAFE_Center.js +5 -5
  776. package/es/UNSAFE_ChartWithLegend.js +4 -4
  777. package/es/UNSAFE_Checkbox.js +21 -21
  778. package/es/UNSAFE_CheckboxItem.js +50 -100
  779. package/es/UNSAFE_CheckboxItem.js.map +1 -1
  780. package/es/UNSAFE_CheckboxSet.js +65 -31
  781. package/es/UNSAFE_CheckboxSet.js.map +1 -1
  782. package/es/UNSAFE_Chip.js +2 -2
  783. package/es/UNSAFE_Collapsible.js +16 -16
  784. package/es/UNSAFE_ComponentMessage.js +17 -17
  785. package/es/UNSAFE_ConveyorBelt.js +14 -14
  786. package/es/UNSAFE_DatePicker.js +23 -23
  787. package/es/UNSAFE_Diagram.js +15 -15
  788. package/es/UNSAFE_Dialog.js +9 -9
  789. package/es/UNSAFE_DragHandle.js +15 -15
  790. package/es/UNSAFE_DrawerLayout.js +11 -11
  791. package/es/UNSAFE_DrawerPopup.js +10 -10
  792. package/es/UNSAFE_Dropdown.js +12 -12
  793. package/es/UNSAFE_Environment.js +4 -4
  794. package/es/UNSAFE_ExpandableList.js +21 -21
  795. package/es/UNSAFE_FilePicker.js +4 -4
  796. package/es/UNSAFE_Flex.js +4 -4
  797. package/es/UNSAFE_Floating.js +10 -10
  798. package/es/UNSAFE_FormLayout.js +2 -2
  799. package/es/UNSAFE_Gantt.js +21 -21
  800. package/es/UNSAFE_Grid.js +4 -4
  801. package/es/UNSAFE_HighlightText.js +4 -4
  802. package/es/UNSAFE_Icon.js +14 -14
  803. package/es/UNSAFE_IconButton.js +14 -14
  804. package/es/UNSAFE_IconMenuButton.js +18 -18
  805. package/es/UNSAFE_IconToggleButton.js +14 -14
  806. package/es/UNSAFE_Indexer.js +6 -6
  807. package/es/UNSAFE_InputDateMask.js +22 -22
  808. package/es/UNSAFE_InputDatePicker.js +108 -108
  809. package/es/UNSAFE_InputPassword.js +21 -21
  810. package/es/UNSAFE_InputSensitiveText.js +23 -23
  811. package/es/UNSAFE_InputText.js +24 -24
  812. package/es/UNSAFE_Label.js +21 -21
  813. package/es/UNSAFE_LabelValueLayout.js +4 -4
  814. package/es/UNSAFE_LabelledLink.js +23 -23
  815. package/es/UNSAFE_Layer.js +7 -7
  816. package/es/UNSAFE_Legend.js +22 -22
  817. package/es/UNSAFE_LineAreaChart/__test__/LineChart.spec.js +33 -33
  818. package/es/UNSAFE_LineAreaChart.js +34 -34
  819. package/es/UNSAFE_Link.js +2 -2
  820. package/es/UNSAFE_ListItemLayout.js +5 -5
  821. package/es/UNSAFE_ListView.js +24 -24
  822. package/es/UNSAFE_LiveRegion.js +4 -4
  823. package/es/UNSAFE_Menu.js +20 -20
  824. package/es/UNSAFE_MenuButton.js +18 -18
  825. package/es/UNSAFE_MessageBanner.js +17 -17
  826. package/es/UNSAFE_MessageToast.js +20 -20
  827. package/es/UNSAFE_MeterBar.js +14 -14
  828. package/es/UNSAFE_MeterCircle.js +14 -14
  829. package/es/UNSAFE_Modal.js +7 -7
  830. package/es/UNSAFE_NavigationList.js +18 -18
  831. package/es/UNSAFE_NavigationListCommon.js +16 -16
  832. package/es/UNSAFE_NumberInputText.js +23 -23
  833. package/es/UNSAFE_OverflowTabBar.js +23 -23
  834. package/es/UNSAFE_PictoChart.js +13 -13
  835. package/es/UNSAFE_PieChart/__test__/PieChart.spec.js +14 -14
  836. package/es/UNSAFE_PieChart.js +14 -14
  837. package/es/UNSAFE_Popup.js +15 -15
  838. package/es/UNSAFE_ProgressBar.js +5 -5
  839. package/es/UNSAFE_ProgressCircle.js +4 -4
  840. package/es/UNSAFE_RadioItem.js +21 -21
  841. package/es/UNSAFE_RadioSet.js +21 -21
  842. package/es/UNSAFE_RatingGauge.js +15 -15
  843. package/es/UNSAFE_ReorderableTabBar.js +21 -21
  844. package/es/UNSAFE_SectionalLegend.js +23 -23
  845. package/es/UNSAFE_SelectMultiple.js +29 -29
  846. package/es/UNSAFE_SelectSingle.js +29 -29
  847. package/es/UNSAFE_SelectionCard.js +4 -4
  848. package/es/UNSAFE_Selector.js +14 -14
  849. package/es/UNSAFE_SelectorAll.js +17 -17
  850. package/es/UNSAFE_Sheet/__test__/Sheet.spec.js +13 -13
  851. package/es/UNSAFE_Sheet.js +10 -10
  852. package/es/UNSAFE_SplitMenuButton.js +18 -18
  853. package/es/UNSAFE_TabBar.js +24 -24
  854. package/es/UNSAFE_TabBarCommon.js +23 -23
  855. package/es/UNSAFE_TabBarMixed.js +27 -27
  856. package/es/UNSAFE_TableView.js +16 -16
  857. package/es/UNSAFE_TagCloud.js +22 -22
  858. package/es/UNSAFE_TextArea.js +25 -26
  859. package/es/UNSAFE_TextArea.js.map +1 -1
  860. package/es/UNSAFE_TextAreaAutosize.js +25 -25
  861. package/es/UNSAFE_TextField.js +7 -7
  862. package/es/UNSAFE_ToggleButton.js +3 -3
  863. package/es/UNSAFE_Toolbar/tests/Toolbar.spec.js +20 -20
  864. package/es/UNSAFE_Toolbar.js +4 -4
  865. package/es/UNSAFE_Train.js +15 -15
  866. package/es/UNSAFE_TruncatingBadge.js +15 -15
  867. package/es/UNSAFE_TruncatingText.js +15 -15
  868. package/es/UNSAFE_UserAssistance.js +22 -22
  869. package/es/UNSAFE_View.js +7 -7
  870. package/es/UNSAFE_VirtualizedListView.js +18 -18
  871. package/es/UNSAFE_VisProgressiveLoader/__test__/VisProgressiveLoader.spec.js +8 -8
  872. package/es/UNSAFE_VisProgressiveLoader.js +6 -6
  873. package/es/UNSAFE_VisStatusMessage.js +6 -6
  874. package/es/UNSAFE_WindowOverlay.js +4 -4
  875. package/es/{View-4dc6ce42.js → View-6013acac.js} +5 -5
  876. package/es/{View-4dc6ce42.js.map → View-6013acac.js.map} +1 -1
  877. package/es/{VisNoData-c69e8f5e.js → VisNoData-8593beaa.js} +3 -3
  878. package/es/{VisNoData-c69e8f5e.js.map → VisNoData-8593beaa.js.map} +1 -1
  879. package/es/{VisProgressiveLoader-cc1ab7cc.js → VisProgressiveLoader-0d9a0dd0.js} +3 -3
  880. package/es/{VisProgressiveLoader-cc1ab7cc.js.map → VisProgressiveLoader-0d9a0dd0.js.map} +1 -1
  881. package/es/{VisTabularDatatip-418525b0.js → VisTabularDatatip-1f16ca1f.js} +2 -2
  882. package/es/{VisTabularDatatip-418525b0.js.map → VisTabularDatatip-1f16ca1f.js.map} +1 -1
  883. package/es/{WindowOverlay-88b63ede.js → WindowOverlay-e14f8324.js} +2 -2
  884. package/es/{WindowOverlay-88b63ede.js.map → WindowOverlay-e14f8324.js.map} +1 -1
  885. package/es/{YearsGridView-76892288.js → YearsGridView-165e5eec.js} +4 -4
  886. package/es/{YearsGridView-76892288.js.map → YearsGridView-165e5eec.js.map} +1 -1
  887. package/es/hoc/PRIVATE_withDirectionIcon.js +4 -4
  888. package/es/hoc/PRIVATE_withThemeIcon.js +3 -3
  889. package/es/hoc/UNSAFE_withThemeProps.js +3 -3
  890. package/es/hooks/PRIVATE_useChartContextMenu.js +18 -18
  891. package/es/hooks/PRIVATE_useChartDatatip.js +13 -13
  892. package/es/hooks/PRIVATE_useChartEvents.js +17 -17
  893. package/es/hooks/PRIVATE_useChartMarquee.js +16 -16
  894. package/es/hooks/PRIVATE_useCssVars.js +7 -7
  895. package/es/hooks/PRIVATE_useCurrentKey.js +4 -4
  896. package/es/hooks/PRIVATE_useDatatip.js +11 -11
  897. package/es/hooks/PRIVATE_useFloating.js +4 -4
  898. package/es/hooks/PRIVATE_useReorderable.js +4 -4
  899. package/es/hooks/PRIVATE_useRovingTabIndexContainer.js +4 -4
  900. package/es/hooks/PRIVATE_useSelection.js +4 -4
  901. package/es/hooks/PRIVATE_useTabBar.js +5 -5
  902. package/es/hooks/PRIVATE_useVisContextMenu.js +18 -18
  903. package/es/hooks/PRIVATE_useVisEvents.js +4 -4
  904. package/es/hooks/PRIVATE_useVisMeterEvents.js +13 -13
  905. package/es/hooks/PRIVATE_useVisSelection.js +12 -12
  906. package/es/hooks/UNSAFE_useColorScheme.js +3 -3
  907. package/es/hooks/UNSAFE_useContainerBreakpointValues.js +1 -1
  908. package/es/hooks/UNSAFE_useCurrentBgColor.js +3 -3
  909. package/es/hooks/UNSAFE_useDensity.js +3 -3
  910. package/es/hooks/UNSAFE_useOutsideClick.js +7 -7
  911. package/es/hooks/UNSAFE_usePrefixSuffix.js +4 -4
  912. package/es/hooks/UNSAFE_useScale.js +3 -3
  913. package/es/hooks/UNSAFE_useTestId.js +3 -3
  914. package/es/hooks/UNSAFE_useTheme.js +3 -3
  915. package/es/hooks/UNSAFE_useThemeInterpolations.js +5 -5
  916. package/es/hooks/UNSAFE_useTooltip.js +15 -15
  917. package/es/hooks/UNSAFE_useTranslationBundle.js +3 -3
  918. package/es/hooks/UNSAFE_useUser.js +3 -3
  919. package/es/{index-75f23286.js → index-5f0f1501.js} +2 -2
  920. package/es/index-5f0f1501.js.map +1 -0
  921. package/es/listViewSelectionTests-ebf987d2.js +4 -4
  922. package/es/{render-8e2a09d1.js → render-c90e85c7.js} +3 -3
  923. package/es/{render-8e2a09d1.js.map → render-c90e85c7.js.map} +1 -1
  924. package/es/{tabbableUtils-73a9ba14.js → tabbableUtils-e6193af2.js} +3 -3
  925. package/es/{tabbableUtils-73a9ba14.js.map → tabbableUtils-e6193af2.js.map} +1 -1
  926. package/es/{testData-0aee4d83.js → testData-2998863b.js} +3 -3
  927. package/es/{testData-0aee4d83.js.map → testData-2998863b.js.map} +1 -1
  928. package/es/useCellNavigation-006fbce0.js +1 -1
  929. package/es/useChartContextMenu-0014fc73.js +3 -3
  930. package/es/{useChartDatatip-f7bacd9b.js → useChartDatatip-b6b2b00a.js} +4 -4
  931. package/es/{useChartDatatip-f7bacd9b.js.map → useChartDatatip-b6b2b00a.js.map} +1 -1
  932. package/es/useChartMarquee-38dbb5f9.js +1 -1
  933. package/es/{useColorScheme-bf110202.js → useColorScheme-e1b17324.js} +2 -2
  934. package/es/{useColorScheme-bf110202.js.map → useColorScheme-e1b17324.js.map} +1 -1
  935. package/es/useContextMenu-81db2534.js +3 -3
  936. package/es/{useCssVars-b3bf30fb.js → useCssVars-64d9b696.js} +5 -5
  937. package/es/{useCssVars-b3bf30fb.js.map → useCssVars-64d9b696.js.map} +1 -1
  938. package/es/{useCurrentBgColor-b3ebd7be.js → useCurrentBgColor-d89afadb.js} +2 -2
  939. package/es/{useCurrentBgColor-b3ebd7be.js.map → useCurrentBgColor-d89afadb.js.map} +1 -1
  940. package/es/{useCurrentKey-1f99b0f6.js → useCurrentKey-db7d3bb9.js} +2 -2
  941. package/es/{useCurrentKey-1f99b0f6.js.map → useCurrentKey-db7d3bb9.js.map} +1 -1
  942. package/es/{useDatatip-f9bcaab9.js → useDatatip-7c661980.js} +4 -4
  943. package/es/{useDatatip-f9bcaab9.js.map → useDatatip-7c661980.js.map} +1 -1
  944. package/es/{useDensity-9f6c6bf0.js → useDensity-60cfa748.js} +2 -2
  945. package/es/{useDensity-9f6c6bf0.js.map → useDensity-60cfa748.js.map} +1 -1
  946. package/es/{useFloating-1cca9e4f.js → useFloating-c99976f8.js} +2 -2
  947. package/es/{useFloating-1cca9e4f.js.map → useFloating-c99976f8.js.map} +1 -1
  948. package/es/{useKeyboardEvents-11b26017.js → useKeyboardEvents-102b4feb.js} +2 -2
  949. package/es/{useKeyboardEvents-11b26017.js.map → useKeyboardEvents-102b4feb.js.map} +1 -1
  950. package/es/useLegendContextMenu-d88be99d.js +5 -5
  951. package/es/{useMeterDatatip-7366880d.js → useMeterDatatip-262c0e39.js} +3 -3
  952. package/es/{useMeterDatatip-7366880d.js.map → useMeterDatatip-262c0e39.js.map} +1 -1
  953. package/es/{useOutsideClick-ab98bfa3.js → useOutsideClick-eb8324f6.js} +2 -2
  954. package/es/{useOutsideClick-ab98bfa3.js.map → useOutsideClick-eb8324f6.js.map} +1 -1
  955. package/es/{usePopupAnimation-4969107b.js → usePopupAnimation-4be04290.js} +2 -2
  956. package/es/{usePopupAnimation-4969107b.js.map → usePopupAnimation-4be04290.js.map} +1 -1
  957. package/es/{usePrefixSuffix-a14dacb0.js → usePrefixSuffix-71a410f4.js} +2 -2
  958. package/es/{usePrefixSuffix-a14dacb0.js.map → usePrefixSuffix-71a410f4.js.map} +1 -1
  959. package/es/useReorderableItem-25aa1c34.js +2 -2
  960. package/es/{useRovingTabIndexContainer-91fd85f3.js → useRovingTabIndexContainer-e7926bd6.js} +2 -2
  961. package/es/{useRovingTabIndexContainer-91fd85f3.js.map → useRovingTabIndexContainer-e7926bd6.js.map} +1 -1
  962. package/es/{useScale-42018695.js → useScale-d64a1a28.js} +2 -2
  963. package/es/{useScale-42018695.js.map → useScale-d64a1a28.js.map} +1 -1
  964. package/es/useSelectCommon-b6d67057.js +11 -11
  965. package/es/{useSelectDrill-333650bd.js → useSelectDrill-9ce5bccf.js} +3 -3
  966. package/es/{useSelectDrill-333650bd.js.map → useSelectDrill-9ce5bccf.js.map} +1 -1
  967. package/es/{useSelection-48f572e5.js → useSelection-c12f7802.js} +5 -5
  968. package/es/{useSelection-48f572e5.js.map → useSelection-c12f7802.js.map} +1 -1
  969. package/es/{useSelection-a098b3af.js → useSelection-ce0f9a43.js} +2 -2
  970. package/es/{useSelection-a098b3af.js.map → useSelection-ce0f9a43.js.map} +1 -1
  971. package/es/{useTabBar-4b318196.js → useTabBar-8af19c50.js} +2 -2
  972. package/es/{useTabBar-4b318196.js.map → useTabBar-8af19c50.js.map} +1 -1
  973. package/es/{useTestId-f5aed66c.js → useTestId-adde554c.js} +2 -2
  974. package/es/{useTestId-f5aed66c.js.map → useTestId-adde554c.js.map} +1 -1
  975. package/es/{useTheme-e7ea1253.js → useTheme-1f6035d2.js} +2 -2
  976. package/es/{useTheme-e7ea1253.js.map → useTheme-1f6035d2.js.map} +1 -1
  977. package/es/{useThemeInterpolations-66ce2e56.js → useThemeInterpolations-9bddc683.js} +4 -4
  978. package/es/{useThemeInterpolations-66ce2e56.js.map → useThemeInterpolations-9bddc683.js.map} +1 -1
  979. package/es/{useTooltip-30a4a4fc.js → useTooltip-9dec25b3.js} +2 -2
  980. package/es/{useTooltip-30a4a4fc.js.map → useTooltip-9dec25b3.js.map} +1 -1
  981. package/es/{useTooltipControlled-eafec36e.js → useTooltipControlled-2044f639.js} +8 -8
  982. package/es/{useTooltipControlled-eafec36e.js.map → useTooltipControlled-2044f639.js.map} +1 -1
  983. package/es/{useTranslationBundle-e8a8c4f3.js → useTranslationBundle-cd815e10.js} +2 -2
  984. package/es/{useTranslationBundle-e8a8c4f3.js.map → useTranslationBundle-cd815e10.js.map} +1 -1
  985. package/es/{useUser-fb09e212.js → useUser-99920e02.js} +2 -2
  986. package/es/{useUser-fb09e212.js.map → useUser-99920e02.js.map} +1 -1
  987. package/es/{useVisEvents-e31dcd17.js → useVisEvents-4cfe354c.js} +2 -2
  988. package/es/{useVisEvents-e31dcd17.js.map → useVisEvents-4cfe354c.js.map} +1 -1
  989. package/es/utils/PRIVATE_visTestUtils.js +6 -6
  990. package/es/{withDirectionIcon-6eefb71a.js → withDirectionIcon-f8ff778c.js} +2 -2
  991. package/es/{withDirectionIcon-6eefb71a.js.map → withDirectionIcon-f8ff778c.js.map} +1 -1
  992. package/package.json +2 -2
  993. package/amd/CardFlexView-3e4bd681.js +0 -2
  994. package/amd/CardGridView-8fb55ad7.js +0 -2
  995. package/amd/CheckboxSetContext-2e486ea8.js +0 -2
  996. package/amd/InputDatePicker-da5d8728.js +0 -2
  997. package/amd/List-88a7bee6.js +0 -2
  998. package/amd/LoadMoreCollection-a6adbc3f.js +0 -2
  999. package/amd/NavigationListItem-c96ac144.js +0 -2
  1000. package/amd/VirtualizedListView-0924cf91.js +0 -2
  1001. package/cjs/BaseNavigationListItem-070d75bc.js.map +0 -1
  1002. package/cjs/NavigationListItem-12a76e7d.js.map +0 -1
  1003. package/cjs/index-5049ab6c.js.map +0 -1
  1004. package/es/CheckboxSet-836e3263.js +0 -49
  1005. package/es/MaxLengthCounter-cead2dac.js +0 -25
  1006. package/es/index-75f23286.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"LineAreaChart-337cac30.js","sources":["../../src/UNSAFE_LineAreaChart/AreaSeries.tsx","../../src/PRIVATE_Chart/Markers.tsx","../../src/UNSAFE_LineAreaChart/LineSeries.tsx","../../src/UNSAFE_LineAreaChart/LineAreaChart.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ColorProps } from '../utils/UNSAFE_interpolations/colors';\nimport { getCmdsForArea } from '../utils/PRIVATE_chartUtils/utils';\nimport { Point } from '../utils/PRIVATE_visSVGUtils';\nimport { Scale } from '../utils/UNSAFE_visTypes/chart';\nimport { dvtVars } from '../Common/themes/themeContract.css';\n\ntype AreaSeriesProps = {\n yScale: Scale;\n color: ColorProps['color'];\n lineType?: 'straight' | 'curved';\n isHorizontal: boolean;\n isLog: boolean;\n areaColorOpacity: number;\n lineSegmentCoords: Point[][];\n bottomCoords?: Point[];\n isHighlighted: boolean;\n isBottomSegmentCurved: boolean;\n seriesIndex: number;\n};\n\nexport function AreaSeries({\n yScale,\n lineType = 'straight',\n color,\n isHorizontal,\n isLog,\n areaColorOpacity,\n lineSegmentCoords,\n bottomCoords,\n isHighlighted,\n isBottomSegmentCurved,\n seriesIndex\n}: AreaSeriesProps) {\n const style = {\n fill: color,\n opacity: isHighlighted\n ? areaColorOpacity\n : `calc(${dvtVars.dimmedOpacity} * ${areaColorOpacity})`\n };\n\n return (\n <>\n {lineSegmentCoords.map((lineSegmentCoords: Point[]) => {\n let baseCoords;\n if (bottomCoords) {\n // custom bottom coords. eg: top of last series in stacked area\n baseCoords = bottomCoords;\n } else {\n // TODO: make this more generic when we support apps setting baseline\n // for log assume domain min is the baseline, otherwise use 0 baseline\n const baselineCoord = yScale.transform(isLog ? yScale.domain()[0] : 0);\n baseCoords = isHorizontal\n ? ([\n [baselineCoord, lineSegmentCoords[0][1]],\n [baselineCoord, lineSegmentCoords[lineSegmentCoords.length - 1][1]]\n ] as Point[])\n : ([\n [lineSegmentCoords[0][0], baselineCoord],\n [lineSegmentCoords[lineSegmentCoords.length - 1][0], baselineCoord]\n ] as Point[]);\n }\n const cmds = getCmdsForArea(\n lineSegmentCoords,\n baseCoords,\n lineType,\n isHorizontal,\n isBottomSegmentCurved\n );\n return (\n <path d={cmds} style={style} data-oj-series-index={seriesIndex} data-oj-object={'area'} />\n );\n })}\n </>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ColorProps } from '../utils/UNSAFE_interpolations/colors';\nimport { LineAreaItem } from '../UNSAFE_LineAreaChart/lineAreaChart.types';\nimport { Marker, MARKER_PADDING } from '../PRIVATE_SvgShapes';\nimport { MarkerShapes } from '../utils/UNSAFE_visTypes/common';\nimport { getGroupCenterCoord } from '../utils/PRIVATE_chartUtils/layoutUtils';\nimport { ChartSeriesData, Scale, Group } from '../utils/UNSAFE_visTypes/chart';\nimport { getMarkerFillAndStroke } from '../utils/PRIVATE_chartUtils/utils';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport type { BundleType } from '../resources/nls/bundle';\nimport { getItemAriaLabel } from '../utils/PRIVATE_chartUtils/accUtils';\nimport { supportsMobileScreenReader } from '../utils/UNSAFE_visUtils';\n\nconst MARKER_DEFAULT_SIZE = 10;\ntype MarkersProps<K, D> = {\n yScale: Scale;\n xScale: Scale;\n startIndex: number;\n endIndex: number;\n seriesIndex: number;\n series: ChartSeriesData<K, D>;\n markerType: MarkerShapes;\n data: number[];\n color: ColorProps['color'];\n groups: Group[];\n focusedItemIndex?: number;\n isSelectionEnabled: boolean;\n hoveredItemIndex?: number;\n selectedIds?: Set<string | number>;\n hiddenIds?: Set<string | number>;\n activeId?: string;\n orientation: 'horizontal' | 'vertical';\n isDrillEnabled: boolean;\n isLog: boolean;\n isPointInsideMarquee: ((id: K, point: { x: number; y: number }) => boolean) | undefined;\n getDataItem: (seriesIndex: number, groupIndex: number) => D | undefined;\n timeAxisType?: 'enabled' | 'skipGaps' | 'mixedFrequency';\n};\n\nexport function Markers<K extends string | number, D extends LineAreaItem<K>>({\n yScale,\n xScale,\n color,\n seriesIndex,\n startIndex,\n endIndex,\n hiddenIds,\n selectedIds,\n orientation,\n isLog,\n data,\n markerType,\n getDataItem,\n focusedItemIndex,\n hoveredItemIndex,\n isDrillEnabled,\n activeId,\n isSelectionEnabled,\n timeAxisType,\n isPointInsideMarquee,\n series,\n groups\n}: MarkersProps<K, D>) {\n const isHoriz = orientation === 'horizontal';\n const items = [];\n\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n for (let groupIndex = startIndex; groupIndex < endIndex + 1; groupIndex++) {\n const item = getDataItem(seriesIndex, groupIndex);\n const value = data[groupIndex];\n if (!item || value == null || hiddenIds?.has(item.id) || (isLog && value <= 0)) {\n continue;\n }\n const x = isHoriz\n ? yScale.transform(value)\n : getGroupCenterCoord<K, D>(groups[groupIndex], groupIndex, xScale, item, timeAxisType);\n const y = isHoriz\n ? getGroupCenterCoord<K, D>(groups[groupIndex], groupIndex, xScale, item, timeAxisType)\n : yScale.transform(value);\n const isFocused = focusedItemIndex === groupIndex;\n const isHovered = hoveredItemIndex === groupIndex;\n const isSelected = !!(selectedIds?.has(item.id!) || isPointInsideMarquee?.(item.id, { x, y }));\n const isDrillable = item.drilling === 'on' || (item.drilling != 'off' && isDrillEnabled);\n const { fill, stroke, outerStroke } = getMarkerFillAndStroke(\n !!item.isMarkerDisplayed,\n isSelectionEnabled,\n isHovered,\n isFocused,\n isSelected,\n color,\n item.markerColor\n );\n const itemMarkerType = item.isMarkerDisplayed ? item.markerType || markerType : markerType;\n const isActive = isFocused || isHovered;\n const ariaLabel =\n supportsMobileScreenReader || isActive\n ? getItemAriaLabel(\n translations,\n series.name || series.id.toString(),\n groups[groupIndex].name || groups[groupIndex].id,\n item.value,\n isSelectionEnabled,\n isSelected,\n isDrillable,\n item.accessibleLabel\n )\n : undefined;\n\n const dataInfo = {\n 'data-oj-series-index': seriesIndex,\n 'data-oj-group-index': groupIndex,\n 'data-oj-object': 'item',\n id: isActive ? activeId : undefined,\n role: ariaLabel ? 'img' : undefined,\n 'aria-label': ariaLabel\n };\n\n const markerSize = (item.markerSize || MARKER_DEFAULT_SIZE) + 2 * MARKER_PADDING;\n items.push(\n <Marker\n type={itemMarkerType}\n tx={x}\n ty={y}\n isInteractive={isDrillable || isSelectionEnabled}\n scale={1}\n fill={fill}\n stroke={stroke}\n outerStroke={outerStroke}\n width={markerSize}\n height={markerSize}\n dataInfo={dataInfo}\n preserveRectAspectRatio\n />\n );\n }\n return <>{items}</>;\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ColorProps } from '../utils/UNSAFE_interpolations/colors';\nimport { getCmdsForLine } from '../utils/PRIVATE_chartUtils/utils';\nimport { Point } from '../utils/PRIVATE_visSVGUtils';\nimport { rgba } from '../UNSAFE_Theme';\nimport { colorSchemeVars } from '../Common/themes/themeContract.css';\nimport { styles } from '../PRIVATE_Chart/themes/ChartStyles.css';\nimport { Property } from 'csstype';\n\ntype LineSeriesProps = {\n color: ColorProps['color'];\n lineStyle?: 'dotted' | 'dashed' | 'solid';\n lineColor?: Property.Color;\n lineWidth?: number;\n lineType?: 'straight' | 'curved';\n isHorizontal: boolean;\n lineSegmentCoords: Point[][];\n isHighlighted: boolean;\n seriesIndex: number;\n};\n\nexport function LineSeries({\n color,\n isHorizontal,\n lineType = 'straight',\n lineColor,\n lineStyle,\n lineWidth = 3,\n isHighlighted,\n lineSegmentCoords,\n seriesIndex\n}: LineSeriesProps) {\n const style = {\n stroke: lineColor || color,\n strokeDasharray: lineStyle === 'dotted' ? 3 : lineStyle === 'dashed' ? 6 : undefined,\n strokeWidth: lineWidth,\n fill: rgba(colorSchemeVars.palette.neutral[0], 0)\n };\n\n return (\n <>\n {lineSegmentCoords.map((value: Point[]) => {\n const cmds = getCmdsForLine(value, lineType, isHorizontal);\n return lineType === 'straight' ? (\n <polyline\n points={cmds}\n style={style}\n className={isHighlighted ? undefined : styles.dimmed}\n data-oj-series-index={seriesIndex}\n data-oj-object={'line'}\n />\n ) : (\n <path\n d={cmds}\n style={style}\n className={isHighlighted ? undefined : styles.dimmed}\n data-oj-series-index={seriesIndex}\n data-oj-object={'line'}\n />\n );\n })}\n </>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { LineAreaChartProps, LineAreaItem } from './lineAreaChart.types';\nimport { findNearestDataPoint } from '../utils/PRIVATE_chartUtils/layoutUtils';\nimport { AreaSeries } from './AreaSeries';\nimport { getCumulativeSeries, getMarkers, getSeriesData } from '../utils/PRIVATE_chartUtils/utils';\nimport { Markers } from '../PRIVATE_Chart/Markers';\nimport { getLineAreaChartNavUtil } from '../utils/PRIVATE_chartUtils/navUtils';\nimport { Chart } from '../PRIVATE_Chart';\nimport { Scale, TimeAxisProps } from '../utils/UNSAFE_visTypes/chart';\nimport { useUser } from '../hooks/UNSAFE_useUser';\nimport { getColorRamp } from '../utils/UNSAFE_visUtils';\nimport { LineSeries } from './LineSeries';\nimport { Point } from '../utils/PRIVATE_visSVGUtils';\nimport { getLineAreaSegments } from '../utils/PRIVATE_chartUtils/utils';\nimport { colorSchemeVars } from '../Common/themes/themeContract.css';\nimport { getItemColor, getMarkerType } from '../utils/PRIVATE_chartUtils/dataStyleUtils';\n\nconst AXIS_OFFSET = 0.2;\n\n/**\n * The LineAreaChart displays information graphically using lines and filled areas, making relationships among the data easier to understand.\n */\nexport function LineAreaChart<K extends string | number, D extends LineAreaItem<K>>({\n width,\n height,\n selectedIds = [],\n hiddenIds = [],\n highlightedIds,\n hideAndShowBehavior = 'none',\n orientation = 'vertical',\n yAxis,\n series,\n groups,\n isStacked = false,\n getDataItem,\n selectionMode = 'none',\n drilling = 'off',\n type = 'line',\n ...props\n}: LineAreaChartProps<K, D>) {\n const { direction } = useUser();\n const isRtl = direction === 'rtl';\n const isLog = yAxis?.scale === 'log';\n const timeAxisType = (props.xAxis as TimeAxisProps)?.timeAxisType;\n const hiddenSet = new Set(hiddenIds);\n const selectedSet = new Set(selectedIds);\n const highlightedSet = new Set(highlightedIds);\n const isHoriz = orientation === 'horizontal';\n const colors = getColorRamp();\n const renderedSeries = isStacked\n ? getCumulativeSeries(series.length, groups.length, getDataItem, hiddenSet, isLog)\n : getSeriesData<K, D>(series?.length, groups?.length, getDataItem, hiddenSet, isLog);\n\n const renderedGetDataItem = (seriesIndex: number, groupIndex: number): D | undefined => {\n if (!isStacked) return getDataItem(seriesIndex, groupIndex);\n return {\n ...getDataItem(seriesIndex, groupIndex),\n value: renderedSeries[seriesIndex][groupIndex]\n } as D;\n };\n\n const getGapRatio = () => {\n return 1;\n };\n\n const getNextChartItemFunc = (startIndex: number, endIndex: number) => {\n return getLineAreaChartNavUtil<K, D>(\n getDataItem,\n series.length,\n startIndex,\n endIndex,\n isStacked,\n isRtl,\n isHoriz\n );\n };\n\n const getDataItemPos = (xScale: Scale, yScale: Scale) => {\n return (seriesIndex: number, groupIndex: number) => {\n const value = renderedSeries[seriesIndex][groupIndex];\n let xVal = groupIndex;\n if (timeAxisType) {\n const val =\n timeAxisType === 'mixedFrequency'\n ? getDataItem(seriesIndex, groupIndex)?.x\n : groups[groupIndex].id;\n xVal = new Date(val!).getTime();\n }\n const x = isHoriz ? yScale.transform(value) : xScale.transform(xVal);\n const y = isHoriz ? xScale.transform(xVal) : yScale.transform(value);\n return { x, y, height: 0, width: 0 };\n };\n };\n\n const getMarkerColorAndType = (seriesIndex: number, groupIndex: number) => {\n return {\n color: getItemColor<K, D>(seriesIndex, groupIndex, series, getDataItem),\n type: getMarkerType<K>(seriesIndex, groupIndex, 'lineWithArea', getDataItem)\n };\n };\n\n const findNearest = (xScale: Scale, yScale: Scale) => {\n const getSeriesDataInfo = () => {\n return {\n offset: 0,\n dataWidth: 0\n };\n };\n\n const getYCoord = (value: number, yScale: Scale) => {\n return yScale.transform(value);\n };\n\n return findNearestDataPoint<K, D>(\n series,\n groups,\n xScale,\n yScale,\n renderedGetDataItem,\n isStacked,\n getSeriesDataInfo,\n getYCoord,\n isLog,\n 0,\n hiddenSet,\n timeAxisType\n );\n };\n const markers = getMarkers();\n const areaOpacity = type === 'lineWithArea' ? 0.5 : 1;\n const isAreaRendered = type === 'area' || type === 'lineWithArea';\n const isContrastLineNeeded = type === 'area';\n const allLineSegmentCoords: Point[][] = [];\n return (\n <Chart\n width={width}\n height={height}\n selectedIds={selectedSet}\n hiddenIds={hiddenIds}\n hideAndShowBehavior={hideAndShowBehavior}\n orientation={orientation}\n yAxis={yAxis}\n series={series}\n groups={groups}\n selectionMode={selectionMode}\n drilling={drilling}\n isStacked={isStacked}\n getDataItem={getDataItem}\n findNearest={findNearest}\n getDataItemPos={getDataItemPos}\n getMarkerInfo={getMarkerColorAndType}\n renderGridLinesInFront={isAreaRendered}\n getNavUtil={getNextChartItemFunc}\n getGapRatio={getGapRatio}\n offset={AXIS_OFFSET}\n isRtl={isRtl}\n {...props}>\n {({\n xStartIndex,\n xEndIndex,\n xScale,\n yScale,\n activeId,\n focusedItemInfo,\n hoveredItemInfo,\n isPointInsideMarquee\n }) => {\n return (\n <>\n {renderedSeries.map((lineAreaSeries, index) => {\n if (lineAreaSeries.length === 0) {\n /* TODO: need a better way to handle when a series is hidden. */\n return;\n }\n const seriesItem = series[index];\n const lineSegmentCoords: Point[][] = getLineAreaSegments<K, D>(\n yScale,\n xScale,\n lineAreaSeries,\n xStartIndex,\n xEndIndex,\n isHoriz,\n isLog,\n groups,\n index,\n renderedGetDataItem,\n timeAxisType\n );\n allLineSegmentCoords[index] = lineSegmentCoords[0];\n const isBottomSegmentCurved =\n seriesItem.lineType === 'curved' &&\n isStacked &&\n renderedSeries.length > 1 &&\n index > 0;\n\n const isHighlighted =\n highlightedIds === undefined || highlightedSet.has(seriesItem.id);\n return (\n <>\n {isAreaRendered && (\n <AreaSeries\n yScale={yScale}\n lineType={seriesItem.lineType}\n color={seriesItem.areaColor || colors[index % colors.length]}\n isHorizontal={isHoriz}\n areaColorOpacity={areaOpacity}\n isBottomSegmentCurved={isBottomSegmentCurved}\n bottomCoords={\n isStacked && index != 0 ? allLineSegmentCoords[index - 1] : undefined\n }\n lineSegmentCoords={lineSegmentCoords}\n isLog={isLog}\n isHighlighted={isHighlighted}\n seriesIndex={index}\n />\n )}\n <LineSeries\n lineType={seriesItem.lineType}\n /* TODO: confirm with UX if this is contrastLine (changes depending on dark/light mode) or always white. \n It's always white in legacy.*/\n lineColor={\n isContrastLineNeeded ? colorSchemeVars.dvt.contrastLine : seriesItem.lineColor\n }\n /* The area generated in legacy are bit apart and not touching when stacked. Preact areas are a bit closer than legacy when curved. \n Increased the contrast linewidth (to 2.5 from legacy 1.25) to give legacy visual treatment.\n TODO: investivage why legacy areas are not touching. maybe we want to do the same in preact svg utils that\n generates this curve.\n */\n lineWidth={\n isContrastLineNeeded ? (isStacked ? 2.5 : 1.25) : seriesItem.lineWidth\n }\n lineStyle={seriesItem.lineStyle}\n color={seriesItem.lineColor || colors[index % colors.length]}\n lineSegmentCoords={lineSegmentCoords}\n isHorizontal={isHoriz}\n isHighlighted={isHighlighted}\n seriesIndex={index}\n />\n {\n /*for non stacked charts, markers should render in the order of series.\n some markers might get hidden behind area but this preserves the legacy behavior. */\n !isStacked && (\n <Markers\n yScale={yScale}\n xScale={xScale}\n groups={groups}\n series={seriesItem}\n timeAxisType={timeAxisType}\n data={lineAreaSeries}\n color={\n seriesItem.lineColor ||\n seriesItem.areaColor ||\n colors[\n index % colors.length\n ] /* TODO : make this use getItemColor function from dataStyleUtils. */\n }\n seriesIndex={index}\n startIndex={xStartIndex}\n endIndex={xEndIndex}\n markerType={markers[index % markers.length]}\n orientation={orientation}\n isLog={isLog}\n activeId={activeId}\n getDataItem={getDataItem}\n isPointInsideMarquee={isPointInsideMarquee}\n selectedIds={selectedSet}\n focusedItemIndex={\n focusedItemInfo.seriesIndex === index &&\n focusedItemInfo.isFocusVisible &&\n !(props.isDataCursorEnabled && props.dataCursorStyle?.isMarkerDisplayed)\n ? focusedItemInfo.groupIndex\n : undefined\n }\n hoveredItemIndex={\n hoveredItemInfo?.isCurrent && hoveredItemInfo.seriesIndex === index\n ? hoveredItemInfo.groupIndex\n : undefined\n }\n isSelectionEnabled={\n selectionMode === 'single' || selectionMode === 'multiple'\n }\n isDrillEnabled={drilling === 'on'}\n />\n )\n }\n </>\n );\n })}\n {isStacked &&\n renderedSeries.map((lineAreaSeries, index) => {\n if (lineAreaSeries.length === 0) {\n /* TODO: need a better way to handle when a series is hidden.*/\n return;\n }\n const seriesItem = series[index];\n return (\n <Markers\n yScale={yScale}\n series={series[index]}\n xScale={xScale}\n groups={groups}\n timeAxisType={timeAxisType}\n data={lineAreaSeries}\n color={\n seriesItem.lineColor || seriesItem.areaColor || colors[index % colors.length]\n }\n seriesIndex={index}\n isPointInsideMarquee={isPointInsideMarquee}\n startIndex={xStartIndex}\n endIndex={xEndIndex}\n markerType={markers[index % markers.length]}\n orientation={orientation}\n isLog={isLog}\n activeId={activeId}\n getDataItem={getDataItem}\n selectedIds={selectedSet}\n focusedItemIndex={\n focusedItemInfo.seriesIndex === index && focusedItemInfo.isFocusVisible\n ? focusedItemInfo.groupIndex\n : undefined\n }\n hoveredItemIndex={\n hoveredItemInfo?.isCurrent && hoveredItemInfo.seriesIndex === index\n ? hoveredItemInfo.groupIndex\n : undefined\n }\n isSelectionEnabled={selectionMode === 'single' || selectionMode === 'multiple'}\n isDrillEnabled={drilling === 'on'}\n />\n );\n })}\n </>\n );\n }}\n </Chart>\n );\n}\n"],"names":["AreaSeries","yScale","lineType","color","isHorizontal","isLog","areaColorOpacity","lineSegmentCoords","bottomCoords","isHighlighted","isBottomSegmentCurved","seriesIndex","style","fill","opacity","dvtVars","dimmedOpacity","_jsx","map","baseCoords","baselineCoord","transform","domain","length","cmds","getCmdsForArea","d","MARKER_DEFAULT_SIZE","Markers","xScale","startIndex","endIndex","hiddenIds","selectedIds","orientation","data","markerType","getDataItem","focusedItemIndex","hoveredItemIndex","isDrillEnabled","activeId","isSelectionEnabled","timeAxisType","isPointInsideMarquee","series","groups","isHoriz","items","translations","useTranslationBundle","groupIndex","item","value","has","id","x","getGroupCenterCoord","y","isFocused","isHovered","isSelected","isDrillable","drilling","stroke","outerStroke","getMarkerFillAndStroke","isMarkerDisplayed","markerColor","itemMarkerType","isActive","ariaLabel","supportsMobileScreenReader","getItemAriaLabel","name","toString","accessibleLabel","undefined","dataInfo","role","markerSize","MARKER_PADDING","push","jsx","Marker","type","tx","ty","isInteractive","scale","width","height","preserveRectAspectRatio","_Fragment","Fragment","children","LineSeries","lineColor","lineStyle","lineWidth","strokeDasharray","strokeWidth","rgba","colorSchemeVars","palette","neutral","getCmdsForLine","points","className","styles","dimmed","highlightedIds","hideAndShowBehavior","yAxis","isStacked","selectionMode","props","direction","useUser","isRtl","xAxis","hiddenSet","Set","selectedSet","highlightedSet","colors","getColorRamp","renderedSeries","getCumulativeSeries","getSeriesData","renderedGetDataItem","markers","getMarkers","areaOpacity","isAreaRendered","isContrastLineNeeded","allLineSegmentCoords","Chart","findNearest","findNearestDataPoint","offset","dataWidth","getDataItemPos","xVal","val","Date","getTime","getMarkerInfo","getItemColor","getMarkerType","renderGridLinesInFront","getNavUtil","getLineAreaChartNavUtil","getGapRatio","xStartIndex","xEndIndex","focusedItemInfo","hoveredItemInfo","_jsxs","jsxs","lineAreaSeries","index","seriesItem","getLineAreaSegments","areaColor","dvt","contrastLine","isFocusVisible","isDataCursorEnabled","dataCursorStyle","isCurrent"],"mappings":"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"}
1
+ {"version":3,"file":"LineAreaChart-2057f8b4.js","sources":["../../src/UNSAFE_LineAreaChart/AreaSeries.tsx","../../src/PRIVATE_Chart/Markers.tsx","../../src/UNSAFE_LineAreaChart/LineSeries.tsx","../../src/UNSAFE_LineAreaChart/LineAreaChart.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ColorProps } from '../utils/UNSAFE_interpolations/colors';\nimport { getCmdsForArea } from '../utils/PRIVATE_chartUtils/utils';\nimport { Point } from '../utils/PRIVATE_visSVGUtils';\nimport { Scale } from '../utils/UNSAFE_visTypes/chart';\nimport { dvtVars } from '../Common/themes/themeContract.css';\n\ntype AreaSeriesProps = {\n yScale: Scale;\n color: ColorProps['color'];\n lineType?: 'straight' | 'curved';\n isHorizontal: boolean;\n isLog: boolean;\n areaColorOpacity: number;\n lineSegmentCoords: Point[][];\n bottomCoords?: Point[];\n isHighlighted: boolean;\n isBottomSegmentCurved: boolean;\n seriesIndex: number;\n};\n\nexport function AreaSeries({\n yScale,\n lineType = 'straight',\n color,\n isHorizontal,\n isLog,\n areaColorOpacity,\n lineSegmentCoords,\n bottomCoords,\n isHighlighted,\n isBottomSegmentCurved,\n seriesIndex\n}: AreaSeriesProps) {\n const style = {\n fill: color,\n opacity: isHighlighted\n ? areaColorOpacity\n : `calc(${dvtVars.dimmedOpacity} * ${areaColorOpacity})`\n };\n\n return (\n <>\n {lineSegmentCoords.map((lineSegmentCoords: Point[]) => {\n let baseCoords;\n if (bottomCoords) {\n // custom bottom coords. eg: top of last series in stacked area\n baseCoords = bottomCoords;\n } else {\n // TODO: make this more generic when we support apps setting baseline\n // for log assume domain min is the baseline, otherwise use 0 baseline\n const baselineCoord = yScale.transform(isLog ? yScale.domain()[0] : 0);\n baseCoords = isHorizontal\n ? ([\n [baselineCoord, lineSegmentCoords[0][1]],\n [baselineCoord, lineSegmentCoords[lineSegmentCoords.length - 1][1]]\n ] as Point[])\n : ([\n [lineSegmentCoords[0][0], baselineCoord],\n [lineSegmentCoords[lineSegmentCoords.length - 1][0], baselineCoord]\n ] as Point[]);\n }\n const cmds = getCmdsForArea(\n lineSegmentCoords,\n baseCoords,\n lineType,\n isHorizontal,\n isBottomSegmentCurved\n );\n return (\n <path d={cmds} style={style} data-oj-series-index={seriesIndex} data-oj-object={'area'} />\n );\n })}\n </>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ColorProps } from '../utils/UNSAFE_interpolations/colors';\nimport { LineAreaItem } from '../UNSAFE_LineAreaChart/lineAreaChart.types';\nimport { Marker, MARKER_PADDING } from '../PRIVATE_SvgShapes';\nimport { MarkerShapes } from '../utils/UNSAFE_visTypes/common';\nimport { getGroupCenterCoord } from '../utils/PRIVATE_chartUtils/layoutUtils';\nimport { ChartSeriesData, Scale, Group } from '../utils/UNSAFE_visTypes/chart';\nimport { getMarkerFillAndStroke } from '../utils/PRIVATE_chartUtils/utils';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport type { BundleType } from '../resources/nls/bundle';\nimport { getItemAriaLabel } from '../utils/PRIVATE_chartUtils/accUtils';\nimport { supportsMobileScreenReader } from '../utils/UNSAFE_visUtils';\n\nconst MARKER_DEFAULT_SIZE = 10;\ntype MarkersProps<K, D> = {\n yScale: Scale;\n xScale: Scale;\n startIndex: number;\n endIndex: number;\n seriesIndex: number;\n series: ChartSeriesData<K, D>;\n markerType: MarkerShapes;\n data: number[];\n color: ColorProps['color'];\n groups: Group[];\n focusedItemIndex?: number;\n isSelectionEnabled: boolean;\n hoveredItemIndex?: number;\n selectedIds?: Set<string | number>;\n hiddenIds?: Set<string | number>;\n activeId?: string;\n orientation: 'horizontal' | 'vertical';\n isDrillEnabled: boolean;\n isLog: boolean;\n isPointInsideMarquee: ((id: K, point: { x: number; y: number }) => boolean) | undefined;\n getDataItem: (seriesIndex: number, groupIndex: number) => D | undefined;\n timeAxisType?: 'enabled' | 'skipGaps' | 'mixedFrequency';\n};\n\nexport function Markers<K extends string | number, D extends LineAreaItem<K>>({\n yScale,\n xScale,\n color,\n seriesIndex,\n startIndex,\n endIndex,\n hiddenIds,\n selectedIds,\n orientation,\n isLog,\n data,\n markerType,\n getDataItem,\n focusedItemIndex,\n hoveredItemIndex,\n isDrillEnabled,\n activeId,\n isSelectionEnabled,\n timeAxisType,\n isPointInsideMarquee,\n series,\n groups\n}: MarkersProps<K, D>) {\n const isHoriz = orientation === 'horizontal';\n const items = [];\n\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n for (let groupIndex = startIndex; groupIndex < endIndex + 1; groupIndex++) {\n const item = getDataItem(seriesIndex, groupIndex);\n const value = data[groupIndex];\n if (!item || value == null || hiddenIds?.has(item.id) || (isLog && value <= 0)) {\n continue;\n }\n const x = isHoriz\n ? yScale.transform(value)\n : getGroupCenterCoord<K, D>(groups[groupIndex], groupIndex, xScale, item, timeAxisType);\n const y = isHoriz\n ? getGroupCenterCoord<K, D>(groups[groupIndex], groupIndex, xScale, item, timeAxisType)\n : yScale.transform(value);\n const isFocused = focusedItemIndex === groupIndex;\n const isHovered = hoveredItemIndex === groupIndex;\n const isSelected = !!(selectedIds?.has(item.id!) || isPointInsideMarquee?.(item.id, { x, y }));\n const isDrillable = item.drilling === 'on' || (item.drilling != 'off' && isDrillEnabled);\n const { fill, stroke, outerStroke } = getMarkerFillAndStroke(\n !!item.isMarkerDisplayed,\n isSelectionEnabled,\n isHovered,\n isFocused,\n isSelected,\n color,\n item.markerColor\n );\n const itemMarkerType = item.isMarkerDisplayed ? item.markerType || markerType : markerType;\n const isActive = isFocused || isHovered;\n const ariaLabel =\n supportsMobileScreenReader || isActive\n ? getItemAriaLabel(\n translations,\n series.name || series.id.toString(),\n groups[groupIndex].name || groups[groupIndex].id,\n item.value,\n isSelectionEnabled,\n isSelected,\n isDrillable,\n item.accessibleLabel\n )\n : undefined;\n\n const dataInfo = {\n 'data-oj-series-index': seriesIndex,\n 'data-oj-group-index': groupIndex,\n 'data-oj-object': 'item',\n id: isActive ? activeId : undefined,\n role: ariaLabel ? 'img' : undefined,\n 'aria-label': ariaLabel\n };\n\n const markerSize = (item.markerSize || MARKER_DEFAULT_SIZE) + 2 * MARKER_PADDING;\n items.push(\n <Marker\n type={itemMarkerType}\n tx={x}\n ty={y}\n isInteractive={isDrillable || isSelectionEnabled}\n scale={1}\n fill={fill}\n stroke={stroke}\n outerStroke={outerStroke}\n width={markerSize}\n height={markerSize}\n dataInfo={dataInfo}\n preserveRectAspectRatio\n />\n );\n }\n return <>{items}</>;\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ColorProps } from '../utils/UNSAFE_interpolations/colors';\nimport { getCmdsForLine } from '../utils/PRIVATE_chartUtils/utils';\nimport { Point } from '../utils/PRIVATE_visSVGUtils';\nimport { rgba } from '../UNSAFE_Theme';\nimport { colorSchemeVars } from '../Common/themes/themeContract.css';\nimport { styles } from '../PRIVATE_Chart/themes/ChartStyles.css';\nimport { Property } from 'csstype';\n\ntype LineSeriesProps = {\n color: ColorProps['color'];\n lineStyle?: 'dotted' | 'dashed' | 'solid';\n lineColor?: Property.Color;\n lineWidth?: number;\n lineType?: 'straight' | 'curved';\n isHorizontal: boolean;\n lineSegmentCoords: Point[][];\n isHighlighted: boolean;\n seriesIndex: number;\n};\n\nexport function LineSeries({\n color,\n isHorizontal,\n lineType = 'straight',\n lineColor,\n lineStyle,\n lineWidth = 3,\n isHighlighted,\n lineSegmentCoords,\n seriesIndex\n}: LineSeriesProps) {\n const style = {\n stroke: lineColor || color,\n strokeDasharray: lineStyle === 'dotted' ? 3 : lineStyle === 'dashed' ? 6 : undefined,\n strokeWidth: lineWidth,\n fill: rgba(colorSchemeVars.palette.neutral[0], 0)\n };\n\n return (\n <>\n {lineSegmentCoords.map((value: Point[]) => {\n const cmds = getCmdsForLine(value, lineType, isHorizontal);\n return lineType === 'straight' ? (\n <polyline\n points={cmds}\n style={style}\n className={isHighlighted ? undefined : styles.dimmed}\n data-oj-series-index={seriesIndex}\n data-oj-object={'line'}\n />\n ) : (\n <path\n d={cmds}\n style={style}\n className={isHighlighted ? undefined : styles.dimmed}\n data-oj-series-index={seriesIndex}\n data-oj-object={'line'}\n />\n );\n })}\n </>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { LineAreaChartProps, LineAreaItem } from './lineAreaChart.types';\nimport { findNearestDataPoint } from '../utils/PRIVATE_chartUtils/layoutUtils';\nimport { AreaSeries } from './AreaSeries';\nimport { getCumulativeSeries, getMarkers, getSeriesData } from '../utils/PRIVATE_chartUtils/utils';\nimport { Markers } from '../PRIVATE_Chart/Markers';\nimport { getLineAreaChartNavUtil } from '../utils/PRIVATE_chartUtils/navUtils';\nimport { Chart } from '../PRIVATE_Chart';\nimport { Scale, TimeAxisProps } from '../utils/UNSAFE_visTypes/chart';\nimport { useUser } from '../hooks/UNSAFE_useUser';\nimport { getColorRamp } from '../utils/UNSAFE_visUtils';\nimport { LineSeries } from './LineSeries';\nimport { Point } from '../utils/PRIVATE_visSVGUtils';\nimport { getLineAreaSegments } from '../utils/PRIVATE_chartUtils/utils';\nimport { colorSchemeVars } from '../Common/themes/themeContract.css';\nimport { getItemColor, getMarkerType } from '../utils/PRIVATE_chartUtils/dataStyleUtils';\n\nconst AXIS_OFFSET = 0.2;\n\n/**\n * The LineAreaChart displays information graphically using lines and filled areas, making relationships among the data easier to understand.\n */\nexport function LineAreaChart<K extends string | number, D extends LineAreaItem<K>>({\n width,\n height,\n selectedIds = [],\n hiddenIds = [],\n highlightedIds,\n hideAndShowBehavior = 'none',\n orientation = 'vertical',\n yAxis,\n series,\n groups,\n isStacked = false,\n getDataItem,\n selectionMode = 'none',\n drilling = 'off',\n type = 'line',\n ...props\n}: LineAreaChartProps<K, D>) {\n const { direction } = useUser();\n const isRtl = direction === 'rtl';\n const isLog = yAxis?.scale === 'log';\n const timeAxisType = (props.xAxis as TimeAxisProps)?.timeAxisType;\n const hiddenSet = new Set(hiddenIds);\n const selectedSet = new Set(selectedIds);\n const highlightedSet = new Set(highlightedIds);\n const isHoriz = orientation === 'horizontal';\n const colors = getColorRamp();\n const renderedSeries = isStacked\n ? getCumulativeSeries(series.length, groups.length, getDataItem, hiddenSet, isLog)\n : getSeriesData<K, D>(series?.length, groups?.length, getDataItem, hiddenSet, isLog);\n\n const renderedGetDataItem = (seriesIndex: number, groupIndex: number): D | undefined => {\n if (!isStacked) return getDataItem(seriesIndex, groupIndex);\n return {\n ...getDataItem(seriesIndex, groupIndex),\n value: renderedSeries[seriesIndex][groupIndex]\n } as D;\n };\n\n const getGapRatio = () => {\n return 1;\n };\n\n const getNextChartItemFunc = (startIndex: number, endIndex: number) => {\n return getLineAreaChartNavUtil<K, D>(\n getDataItem,\n series.length,\n startIndex,\n endIndex,\n isStacked,\n isRtl,\n isHoriz\n );\n };\n\n const getDataItemPos = (xScale: Scale, yScale: Scale) => {\n return (seriesIndex: number, groupIndex: number) => {\n const value = renderedSeries[seriesIndex][groupIndex];\n let xVal = groupIndex;\n if (timeAxisType) {\n const val =\n timeAxisType === 'mixedFrequency'\n ? getDataItem(seriesIndex, groupIndex)?.x\n : groups[groupIndex].id;\n xVal = new Date(val!).getTime();\n }\n const x = isHoriz ? yScale.transform(value) : xScale.transform(xVal);\n const y = isHoriz ? xScale.transform(xVal) : yScale.transform(value);\n return { x, y, height: 0, width: 0 };\n };\n };\n\n const getMarkerColorAndType = (seriesIndex: number, groupIndex: number) => {\n return {\n color: getItemColor<K, D>(seriesIndex, groupIndex, series, getDataItem),\n type: getMarkerType<K>(seriesIndex, groupIndex, 'lineWithArea', getDataItem)\n };\n };\n\n const findNearest = (xScale: Scale, yScale: Scale) => {\n const getSeriesDataInfo = () => {\n return {\n offset: 0,\n dataWidth: 0\n };\n };\n\n const getYCoord = (value: number, yScale: Scale) => {\n return yScale.transform(value);\n };\n\n return findNearestDataPoint<K, D>(\n series,\n groups,\n xScale,\n yScale,\n renderedGetDataItem,\n isStacked,\n getSeriesDataInfo,\n getYCoord,\n isLog,\n 0,\n hiddenSet,\n timeAxisType\n );\n };\n const markers = getMarkers();\n const areaOpacity = type === 'lineWithArea' ? 0.5 : 1;\n const isAreaRendered = type === 'area' || type === 'lineWithArea';\n const isContrastLineNeeded = type === 'area';\n const allLineSegmentCoords: Point[][] = [];\n return (\n <Chart\n width={width}\n height={height}\n selectedIds={selectedSet}\n hiddenIds={hiddenIds}\n hideAndShowBehavior={hideAndShowBehavior}\n orientation={orientation}\n yAxis={yAxis}\n series={series}\n groups={groups}\n selectionMode={selectionMode}\n drilling={drilling}\n isStacked={isStacked}\n getDataItem={getDataItem}\n findNearest={findNearest}\n getDataItemPos={getDataItemPos}\n getMarkerInfo={getMarkerColorAndType}\n renderGridLinesInFront={isAreaRendered}\n getNavUtil={getNextChartItemFunc}\n getGapRatio={getGapRatio}\n offset={AXIS_OFFSET}\n isRtl={isRtl}\n {...props}>\n {({\n xStartIndex,\n xEndIndex,\n xScale,\n yScale,\n activeId,\n focusedItemInfo,\n hoveredItemInfo,\n isPointInsideMarquee\n }) => {\n return (\n <>\n {renderedSeries.map((lineAreaSeries, index) => {\n if (lineAreaSeries.length === 0) {\n /* TODO: need a better way to handle when a series is hidden. */\n return;\n }\n const seriesItem = series[index];\n const lineSegmentCoords: Point[][] = getLineAreaSegments<K, D>(\n yScale,\n xScale,\n lineAreaSeries,\n xStartIndex,\n xEndIndex,\n isHoriz,\n isLog,\n groups,\n index,\n renderedGetDataItem,\n timeAxisType\n );\n allLineSegmentCoords[index] = lineSegmentCoords[0];\n const isBottomSegmentCurved =\n seriesItem.lineType === 'curved' &&\n isStacked &&\n renderedSeries.length > 1 &&\n index > 0;\n\n const isHighlighted =\n highlightedIds === undefined || highlightedSet.has(seriesItem.id);\n return (\n <>\n {isAreaRendered && (\n <AreaSeries\n yScale={yScale}\n lineType={seriesItem.lineType}\n color={seriesItem.areaColor || colors[index % colors.length]}\n isHorizontal={isHoriz}\n areaColorOpacity={areaOpacity}\n isBottomSegmentCurved={isBottomSegmentCurved}\n bottomCoords={\n isStacked && index != 0 ? allLineSegmentCoords[index - 1] : undefined\n }\n lineSegmentCoords={lineSegmentCoords}\n isLog={isLog}\n isHighlighted={isHighlighted}\n seriesIndex={index}\n />\n )}\n <LineSeries\n lineType={seriesItem.lineType}\n /* TODO: confirm with UX if this is contrastLine (changes depending on dark/light mode) or always white. \n It's always white in legacy.*/\n lineColor={\n isContrastLineNeeded ? colorSchemeVars.dvt.contrastLine : seriesItem.lineColor\n }\n /* The area generated in legacy are bit apart and not touching when stacked. Preact areas are a bit closer than legacy when curved. \n Increased the contrast linewidth (to 2.5 from legacy 1.25) to give legacy visual treatment.\n TODO: investivage why legacy areas are not touching. maybe we want to do the same in preact svg utils that\n generates this curve.\n */\n lineWidth={\n isContrastLineNeeded ? (isStacked ? 2.5 : 1.25) : seriesItem.lineWidth\n }\n lineStyle={seriesItem.lineStyle}\n color={seriesItem.lineColor || colors[index % colors.length]}\n lineSegmentCoords={lineSegmentCoords}\n isHorizontal={isHoriz}\n isHighlighted={isHighlighted}\n seriesIndex={index}\n />\n {\n /*for non stacked charts, markers should render in the order of series.\n some markers might get hidden behind area but this preserves the legacy behavior. */\n !isStacked && (\n <Markers\n yScale={yScale}\n xScale={xScale}\n groups={groups}\n series={seriesItem}\n timeAxisType={timeAxisType}\n data={lineAreaSeries}\n color={\n seriesItem.lineColor ||\n seriesItem.areaColor ||\n colors[\n index % colors.length\n ] /* TODO : make this use getItemColor function from dataStyleUtils. */\n }\n seriesIndex={index}\n startIndex={xStartIndex}\n endIndex={xEndIndex}\n markerType={markers[index % markers.length]}\n orientation={orientation}\n isLog={isLog}\n activeId={activeId}\n getDataItem={getDataItem}\n isPointInsideMarquee={isPointInsideMarquee}\n selectedIds={selectedSet}\n focusedItemIndex={\n focusedItemInfo.seriesIndex === index &&\n focusedItemInfo.isFocusVisible &&\n !(props.isDataCursorEnabled && props.dataCursorStyle?.isMarkerDisplayed)\n ? focusedItemInfo.groupIndex\n : undefined\n }\n hoveredItemIndex={\n hoveredItemInfo?.isCurrent && hoveredItemInfo.seriesIndex === index\n ? hoveredItemInfo.groupIndex\n : undefined\n }\n isSelectionEnabled={\n selectionMode === 'single' || selectionMode === 'multiple'\n }\n isDrillEnabled={drilling === 'on'}\n />\n )\n }\n </>\n );\n })}\n {isStacked &&\n renderedSeries.map((lineAreaSeries, index) => {\n if (lineAreaSeries.length === 0) {\n /* TODO: need a better way to handle when a series is hidden.*/\n return;\n }\n const seriesItem = series[index];\n return (\n <Markers\n yScale={yScale}\n series={series[index]}\n xScale={xScale}\n groups={groups}\n timeAxisType={timeAxisType}\n data={lineAreaSeries}\n color={\n seriesItem.lineColor || seriesItem.areaColor || colors[index % colors.length]\n }\n seriesIndex={index}\n isPointInsideMarquee={isPointInsideMarquee}\n startIndex={xStartIndex}\n endIndex={xEndIndex}\n markerType={markers[index % markers.length]}\n orientation={orientation}\n isLog={isLog}\n activeId={activeId}\n getDataItem={getDataItem}\n selectedIds={selectedSet}\n focusedItemIndex={\n focusedItemInfo.seriesIndex === index && focusedItemInfo.isFocusVisible\n ? focusedItemInfo.groupIndex\n : undefined\n }\n hoveredItemIndex={\n hoveredItemInfo?.isCurrent && hoveredItemInfo.seriesIndex === index\n ? hoveredItemInfo.groupIndex\n : undefined\n }\n isSelectionEnabled={selectionMode === 'single' || selectionMode === 'multiple'}\n isDrillEnabled={drilling === 'on'}\n />\n );\n })}\n </>\n );\n }}\n </Chart>\n );\n}\n"],"names":["AreaSeries","yScale","lineType","color","isHorizontal","isLog","areaColorOpacity","lineSegmentCoords","bottomCoords","isHighlighted","isBottomSegmentCurved","seriesIndex","style","fill","opacity","dvtVars","dimmedOpacity","_jsx","map","baseCoords","baselineCoord","transform","domain","length","cmds","getCmdsForArea","d","MARKER_DEFAULT_SIZE","Markers","xScale","startIndex","endIndex","hiddenIds","selectedIds","orientation","data","markerType","getDataItem","focusedItemIndex","hoveredItemIndex","isDrillEnabled","activeId","isSelectionEnabled","timeAxisType","isPointInsideMarquee","series","groups","isHoriz","items","translations","useTranslationBundle","groupIndex","item","value","has","id","x","getGroupCenterCoord","y","isFocused","isHovered","isSelected","isDrillable","drilling","stroke","outerStroke","getMarkerFillAndStroke","isMarkerDisplayed","markerColor","itemMarkerType","isActive","ariaLabel","supportsMobileScreenReader","getItemAriaLabel","name","toString","accessibleLabel","undefined","dataInfo","role","markerSize","MARKER_PADDING","push","jsx","Marker","type","tx","ty","isInteractive","scale","width","height","preserveRectAspectRatio","_Fragment","Fragment","children","LineSeries","lineColor","lineStyle","lineWidth","strokeDasharray","strokeWidth","rgba","colorSchemeVars","palette","neutral","getCmdsForLine","points","className","styles","dimmed","highlightedIds","hideAndShowBehavior","yAxis","isStacked","selectionMode","props","direction","useUser","isRtl","xAxis","hiddenSet","Set","selectedSet","highlightedSet","colors","getColorRamp","renderedSeries","getCumulativeSeries","getSeriesData","renderedGetDataItem","markers","getMarkers","areaOpacity","isAreaRendered","isContrastLineNeeded","allLineSegmentCoords","Chart","findNearest","findNearestDataPoint","offset","dataWidth","getDataItemPos","xVal","val","Date","getTime","getMarkerInfo","getItemColor","getMarkerType","renderGridLinesInFront","getNavUtil","getLineAreaChartNavUtil","getGapRatio","xStartIndex","xEndIndex","focusedItemInfo","hoveredItemInfo","_jsxs","jsxs","lineAreaSeries","index","seriesItem","getLineAreaSegments","areaColor","dvt","contrastLine","isFocusVisible","isDataCursorEnabled","dataCursorStyle","isCurrent"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ define(['exports', 'preact/jsx-runtime', 'preact/hooks', './classNames-08d99695', './mergeProps-bcfa6a92', './keys-cc1cb01d', './LoadMoreCollection-83413a59', './VirtualizedCollection-897516a5', 'preact/compat', './TabbableModeContext-a9c97640', './useId-c9578d26', './FocusTrap-eb3989cb', './useInteractionStyle-360d25a5', './mergeInterpolations-9ede4cf7', './flexitem-5db48325', './PRIVATE_List/themes/ListStyles.css', './collectionUtils-6740111c', './Skeleton-325116ff', './Flex-1f27b601', './Selector-ad2af152', './ImageVars.css-17386400', './useTheme-1941efb7', './useTestId-82cf22a4', 'preact', './useSelection-f1d96ce9', './useCurrentKey-00f81f0b', './useCollectionFocusRing-64636529', './useCollectionGestureContext-b082d378', './useItemAction-66d976c4', './useTabbableModeSet-b4c18d1a', './Inset-d7d99801', 'module'], (function(e,t,i,s,n,r,l,o,a,c,d,u,g,b,f,m,y,p,v,h,x,S,k,C,I,T,w,V,j,A,P,R){"use strict";const E=e=>{switch(e){case"listbox":return{list:"listbox",item:"presentation",cell:"option"};case"treegrid":return{list:"treegrid",item:"row",cell:"gridcell"};default:return{list:"grid",item:"row",cell:"gridcell"}}},F="[data-oj-key]";function K({children:e,context:n,itemDepth:r,isFocused:l,isFocusRingVisible:o,isActive:a,isGridlineVisible:y,isSelected:p,isTopGridlineVisible:v=!1,isTabbable:h=!1,role:x,selectionMode:S,suggestion:k,currentItemVariant:C}){const I=i.useRef(null),T=i.useMemo((()=>E(x)),[x]),w=n.metadata.key,V=n.index,j="option"===T.cell?{role:T.cell,"aria-posinset":V+1,"aria-setsize":-1}:{role:T.cell},{interactionProps:A,applyActiveStyle:P,applyHoverStyle:R,applyPseudoHoverStyle:F}=g.useInteractionStyle(),K=m.listItemMultiVariantStyles({selectable:M(S,p)?"isSelectable":"notSelectable",selected:p?"isSelected":"notSelected",selectedSingle:p&&"single"===S?"isSelectedSingle":"notSelectedSingle",needsEventsHover:R?"isNeedsEventsHover":"notNeedsEventsHover",pseudoHover:F?"isPseudoHover":"notPseudoHover",active:P||a?"isActive":"notActive",focusHighlight:"highlight"===C&&l?"isFocusHighlight":"notFocusHighlight",focusRingVisible:o&&l?"isFocusRingVisible":"notFocusRingVisible",gridlineTop:v?"visible":"hidden",gridlineBottom:!y&&("end"!==k||y||p&&"single"===S)?"hidden":"visible"}),L=s.classNames([K]),H=b.mergeInterpolations([...Object.values(f.flexitemInterpolations)]),{class:z,...D}=H({flex:"1 1 auto",alignSelf:"center"}),N=s.classNames([z,"multiple"===S&&m.listItemStyles.checkboxContainer]);return t.jsx("div",{"aria-rowindex":"grid"===x?V+1:void 0,"aria-level":r,"data-oj-key":w,class:L,ref:I,role:T.item,...k&&{"data-oj-suggestion":!0},..."number"==typeof w&&{"data-oj-key-type":"number"},...A,children:t.jsx("div",{id:d.useId(),style:D,class:N,"aria-posinset":"grid"===x?void 0:V+1,"aria-setsize":"grid"===x?void 0:-1,onKeyDown:e=>{!h||"ArrowDown"!==e.key&&"ArrowUp"!==e.key||e.stopPropagation()},"aria-colindex":"grid"===x?1:void 0,"aria-selected":"none"!==S?p:void 0,...j,children:t.jsx(c.TabbableModeContext.Provider,{value:{isTabbable:h},children:t.jsx(u.FocusTrap,{isDisabled:!h,restoreFocusRef:!1,children:e(n)})})})})}const M=(e,t)=>"none"!==e&&("multiple"===e||!t),L=a.memo(K,((e,t)=>!(!e||!t)&&(e.children===t.children&&e.isFocused===t.isFocused&&e.isFocusRingVisible===t.isFocusRingVisible&&e.isSelected===t.isSelected&&e.isTabbable===t.isTabbable&&e.isActive===t.isActive&&e.suggestion===t.suggestion&&e.isGridlineVisible===t.isGridlineVisible&&e.isTopGridlineVisible===t.isTopGridlineVisible&&y.compareListItemContext(e.context,t.context))));function H({children:e,minimumCount:n=1}){const[r,l]=i.useState(!1);i.useEffect((()=>{setTimeout((()=>{l(!0)}),50)}),[]);const o=s.classNames([m.skeletonStyles.container]);return r&&e?t.jsx("div",{class:o,role:"presentation",children:[...Array(n)].map(((t,i)=>e(i)))}):null}const z="oj-collection-sparkle";function D({sparkleHeight:e}){const{name:i}=S.useTheme();if(e<=0)return null;const n=e+"px",r=s.classNames([m.sparkleStyles.base]),l=s.classNames([m.sparkleStyles.container,z,"redwood"===i&&x.globalImages]);return t.jsx("div",{class:l,children:t.jsx("div",{class:r,style:{height:n}})},"sparkle")}const N=(e,t)=>{if(0===t)return null;return e.slice(0,t).reduce(((e,i,s)=>{const n=i.metadata.key;return s===t-1?e.set(n,"end"):e.set(n,!0),e}),new Map)},G=(e,t,i)=>{if(e&&t&&(e.scrollIntoViewIfNeeded?e.scrollIntoViewIfNeeded():e.scrollIntoView({block:"nearest"}),i>0)){const s=t.getBoundingClientRect(),n=e.getBoundingClientRect(),r=s.top+i-n.top;r>0&&(t.scrollTop=t.scrollTop-r)}},B=(e,t)=>{const i=t.data.map((e=>e.metadata.key)),s=i.indexOf(e.value.start),n=i.indexOf(e.value.end),r=Math.min(s,n),l=Math.max(s,n);return-1===r?{offset:0,count:t.totalSize}:i.slice(r,l+1)},O=e=>!(!e.parentElement||!e.parentElement.classList.contains("oj-listview-expander"));const _=(e,t)=>t??{scroller:()=>e.current},U={all:!1,keys:new Set},q=t.jsx(H,{minimumCount:25,children:()=>t.jsx(P.Inset,{variant:"listview",children:t.jsx(v.Flex,{height:"6x",align:"center",children:t.jsx(p.Skeleton,{height:"4x"})})})}),Y=t.jsx("div",{class:l.LOADMORE_STYLE_CLASS,children:t.jsx(H,{minimumCount:3,children:()=>t.jsx(P.Inset,{variant:"listview",children:t.jsx(v.Flex,{height:"6x",align:"center",children:t.jsx(p.Skeleton,{height:"4x"})})})})}),$=(e,t)=>{if(t){const i=Math.min(t.offset,e.offset+e.totalSize),s=i-e.offset;s>0&&(e={offset:i,data:e.data.slice(s,s+t.count),totalSize:e.totalSize,sizePrecision:e.sizePrecision})}return e};e.List=function({"aria-label":e,"aria-labelledby":a,allowTabbableMode:c=!0,children:d,currentKey:u,data:g,gridlines:b,loadingIndicator:f=q,onCurrentKeyChange:p,onLoadRange:v,onSelectionChange:x,onItemAction:S,rangeExtractor:C,role:P="grid",selectedKeys:R=U,selectionMode:M="none",viewportConfig:H,currentItemVariant:z="none",promotedSection:J,isVirtualized:Q=!1,customItemRenderer:W,scrollToVisibleOffset:X,testId:Z,scrollerRef:ee,reorderProps:te,contextMenuTriggerProps:ie,...se}){const ne=i.useRef(null),re=i.useRef(),[le,oe]=i.useState(!1),ae="none"===M?void 0:"multiple"===M,ce=null===g?void 0:"exact"===g.sizePrecision?g.totalSize:-1,de=s.classNames([m.listStyles.base]),ue=i.useCallback(((e,t)=>{g&&(re.current={detail:e,range:{offset:g.offset,count:g.data.length}},v(t))}),[g,v]),{eventProps:ge,showFocusRing:be,handleSelectionChange:fe}=((e,t,s="none",r,l,o,a,c,d="grid",u,g,b)=>{const f=i.useMemo((()=>E(d)),[d]),m=i.useRef(),{currentKeyProps:p}=T.useCurrentKey((e=>y.keyExtractor(e,F)),"multiple"!==s,y.getPrevNextKey(g.current,e,!0,F),y.getPrevNextKey(g.current,e,!1,F),void 0,void 0,e,r),[v,h]=w.useCollectionFocusRing(g,["ArrowUp","ArrowDown"]);i.useEffect((()=>{if(null!=e&&g.current){const t=y.findElementByKey(g.current,e,F);if(t){const e=g.current.getAttribute("aria-activedescendant"),i=t.querySelector(`[role=${f.cell}]`);if(i&&e!==i.id){g.current.setAttribute("aria-activedescendant",i.id);const e=c?.scroller(),s=u?u(g.current):0;G(t,null!=e?e:g.current,s)}}}}),[e,a,f.cell,c,u,g]);const x=i.useCallback((e=>{l&&(!1===e.value.all&&e.value.keys.size>0&&(m.current=Array.from(e.value.keys.values()).pop()),l(e))}),[m,l]),S=i.useCallback((e=>{if(a&&l){const t=B(e,a);Array.isArray(t)?("shiftSpace"===e.eventType?m.current=e.value.start:m.current=e.value.end,l({value:{all:!1,keys:new Set(t)},target:null})):b(e,t)}}),[a,l,b]),k=V.useCollectionGestureContext(),{selectionProps:C}=I.useSelection((t=>t===g.current?void 0===e?null:e:y.keyExtractor(t,F)),t,s,!1,"replace","embedded"===k,x,m.current,e,((e,t)=>y.getPrevNextKey(g.current,e,t,F)),void 0,(e=>{if(g.current){const t=y.findElementByKey(g.current,e,F);if(t){const e=c?.scroller(),i=u?u(g.current):0;G(t,null!=e?e:g.current,i)}}}),S),A=j.useItemAction(e,a,o,F,"embedded"===k);return{eventProps:n.mergeProps(p,h,C,A),showFocusRing:v,handleSelectionChange:x}})(u,R,M,p,x,S,g,H,P,X,ne,ue),{eventProps:me,isCurrentTabbableKey:ye}=((e,t,s,l,o,a)=>{const c=i.useRef(),[d,u]=A.useTabbableModeSet(l,(e=>O(e)?null:y.keyExtractor(e,F)),e,t),g=i.useCallback((()=>{if(l.current&&t&&(!s||d(void 0))){const e=c.current||y.getFirstVisibleKey(l.current,F);r.isKeyDefined(e)&&t({value:e})}}),[l,t,s,d]),b=i.useCallback((i=>{if(O(i.target)){l.current?.focus();const e=y.keyExtractor(i.target,F);t&&r.isKeyDefined(e)&&t({value:e})}else if(r.isKeyDefined(e)){if(l.current){const t=y.findElementByKey(l.current,e,F);if(t){const e=o?.scroller(),i=a?a(l.current):0;G(t,null!=e?e:l.current,i)}}}else t&&g()}),[e,g,t,l]),f=i.useCallback((e=>{const t=y.keyExtractor(e.target,F);r.isKeyDefined(t)&&(c.current=t)}),[]);return{eventProps:n.mergeProps(s?u:{},{onFocus:b,onPointerDown:f}),isCurrentTabbableKey:d}})(u,p,c,ne,H,X);if(g&&void 0!==re.current&&x){const e=B(re.current.detail,g);Array.isArray(e)&&x({value:{all:!1,keys:new Set(e)},target:null});const t=re.current?re.current.range:{offset:g.offset,count:g.data.length};g=$(g,t),re.current=void 0,v(t)}const{sparkleHeight:pe,suggestions:ve}=((e,t,s)=>{const[n,r]=i.useState(0),l=i.useMemo((()=>e&&t&&N(e.data,t.count)),[e,t]);return i.useEffect((()=>{if(l){const e=s.current?.querySelector("."+o.PLACEHOLDER_STYLE_CLASS);let t=e?.offsetHeight||0;const i=s.current?.querySelectorAll("[data-oj-suggestion]");i?.forEach((e=>t+=e.offsetHeight)),r(t)}}),[s,l]),{sparkleHeight:n,suggestions:l}})(g,J,ne),he=t.jsx(D,{sparkleHeight:pe}),xe=i.useCallback((e=>{const i=e.data,s="multiple"===M?()=>t.jsx(h.Selector,{onChange:fe,rowKey:i.metadata.key,selectedKeys:R}):void 0;return{index:e.index,data:i.data,metadata:i.metadata,selector:s}}),[M,R,fe]),Se=Q?K:L,ke=e=>{const i=xe(e),s=ve?.get(i.metadata.key),n=c&&ye(i.metadata.key),l=u===i.metadata.key&&!n,o=l&&le,a=r.containsKey(R,i.metadata.key),f=l&&be,m=(e,n)=>{return t.jsx(Se,{context:e,isFocused:l,isFocusRingVisible:f,isActive:o,isGridlineVisible:(r=i.index,"visible"===b?.item&&(r+1!==g?.totalSize||"visible"===b?.bottom)),isSelected:a,isTabbable:c&&ye(i.metadata.key),role:P,selectionMode:M,currentItemVariant:z,...s&&{suggestion:s},...0===i.index&&{isTopGridlineVisible:"visible"===b?.item&&"visible"===b?.top},...n,children:d},i.metadata.key);var r};if(W){return W({listItemContext:i,isFocused:l,isFocusRingVisible:f,isSelected:a,isTabbable:n,isActive:o,defaultListItem:m})}return m(i)};H=_(ne,H);const Ce=i.useCallback((e=>{" "===e.key&&r.isKeyDefined(u)&&"none"!==M&&oe(!0)}),[u,M,oe]),Ie=i.useCallback((()=>{oe(!1)}),[oe]);i.useImperativeHandle(ee,(()=>ne.current));const Te=k.useTestId(Z);return t.jsx("div",{...n.mergeProps(ge,me,ie||{},te||{},{onKeyDown:Ce,onKeyUp:Ie},se),...Te,role:P,"aria-rowcount":"grid"===P?ce:void 0,"aria-colcount":"grid"===P?1:void 0,ref:ne,class:de,tabIndex:0,"aria-label":e,"aria-labelledby":a,"aria-multiselectable":ae,children:null==g?f:Q?t.jsx(o.VirtualizedCollection,{data:g,itemSelector:F,loadMoreIndicator:Y,onLoadRange:v,rangeExtractor:C,suggestions:he,viewportConfig:H,children:ke}):t.jsx(l.LoadMoreCollection,{data:g.data,loadMoreIndicator:Y,hasMore:"atLeast"===g.sizePrecision&&g.data.length<=g.totalSize,onLoadMore:()=>{g&&v({offset:0,count:g.data.length+25})},suggestions:he,viewportConfig:H,children:ke})})},e.SkeletonContainer=H,e.excludeGroup=(e,t)=>{if(!t.all){const i=e.data.filter((e=>!e.metadata.isLeaf)).map((e=>e.metadata.key)),s=Array.from(t.keys.values()).filter((e=>!i.includes(e)));return{...t,keys:new Set(s)}}return t},e.scrollToVisible=G}));
2
+ //# sourceMappingURL=List-5958c802.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"List-88a7bee6.js","sources":["../../src/PRIVATE_List/ListRoles.ts","../../src/PRIVATE_List/ListItem.tsx","../../src/PRIVATE_List/SkeletonContainer.tsx","../../src/PRIVATE_List/Sparkle.tsx","../../src/PRIVATE_List/usePromotedSection.ts","../../src/PRIVATE_List/ListUtils.ts","../../src/PRIVATE_List/useSelectionAndNavigation.ts","../../src/PRIVATE_List/useFocusTabbableMode.ts","../../src/PRIVATE_List/List.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 { Roles } from '../UNSAFE_ListView';\nimport { HTMLAttributesSignalExcluded } from '../utils/UNSAFE_attributeUtils';\n\n/**\n * List Roles need to be kept in matching sets, this module encapsulates the sets\n *\n * @param ariaRole\n * @returns matching, valid set of roles\n */\n\nconst getListViewRoles = (\n ariaRole: Roles\n): {\n list: HTMLAttributesSignalExcluded['role'];\n item: HTMLAttributesSignalExcluded['role'];\n cell: HTMLAttributesSignalExcluded['role'];\n} => {\n switch (ariaRole) {\n case 'listbox':\n return { list: 'listbox', item: 'presentation', cell: 'option' };\n case 'treegrid':\n return { list: 'treegrid', item: 'row', cell: 'gridcell' };\n default:\n return { list: 'grid', item: 'row', cell: 'gridcell' };\n }\n};\n\nexport { getListViewRoles };\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 { ComponentChildren } from 'preact';\nimport { useRef, useMemo } from 'preact/hooks';\nimport { memo } from 'preact/compat';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { TabbableModeContext } from '../hooks/UNSAFE_useTabbableMode';\nimport { SelectionMode, CurrentItemVariant, ListItemRendererContext } from '../UNSAFE_Collection';\nimport { FocusTrap } from '../UNSAFE_FocusTrap';\nimport { useId } from '../hooks/UNSAFE_useId';\nimport { Roles } from '../UNSAFE_ListView';\nimport { getListViewRoles } from './ListRoles';\nimport { useInteractionStyle } from '../hooks/UNSAFE_useInteractionStyle';\nimport { mergeInterpolations } from '../utils/UNSAFE_mergeInterpolations';\nimport { flexitemInterpolations } from '../utils/UNSAFE_interpolations/flexitem';\nimport type { FlexitemProps } from '../utils/UNSAFE_interpolations/flexitem';\nimport { listItemStyles, listItemMultiVariantStyles } from './themes/ListStyles.css';\nimport { compareListItemContext } from '../utils/PRIVATE_collectionUtils';\n\nexport const ITEM_SELECTOR = '[data-oj-key]';\n\n/**\n * Props for the ListViewItem Component\n */\nexport type Props<K, D> = {\n children: (context: ListItemRendererContext<K, D>) => ComponentChildren;\n context: ListItemRendererContext<K, D>;\n itemDepth?: number;\n isFocused: boolean;\n isFocusRingVisible: boolean;\n isActive: boolean;\n isGridlineVisible: boolean;\n isSelected: boolean;\n isTopGridlineVisible?: boolean;\n isTabbable?: boolean;\n role: Roles;\n selectionMode: SelectionMode;\n suggestion?: 'end' | true;\n currentItemVariant?: CurrentItemVariant;\n};\n\n/**\n * The internal component used to render a single item in ListView.\n */\nexport function ListViewItem<K extends string | number, D>({\n children,\n context,\n itemDepth,\n isFocused,\n isFocusRingVisible,\n isActive,\n isGridlineVisible,\n isSelected,\n isTopGridlineVisible = false,\n isTabbable = false,\n role,\n selectionMode,\n suggestion,\n currentItemVariant\n}: Props<K, D>) {\n const rootRef = useRef<HTMLDivElement>(null);\n const roles = useMemo(() => getListViewRoles(role), [role]);\n const itemKey = context.metadata.key;\n const itemIndex = context.index;\n\n // some roles come with related aria attributes which need to be set\n const cellRoleAttributes =\n roles.cell === 'option'\n ? {\n role: roles.cell,\n 'aria-posinset': itemIndex + 1,\n 'aria-setsize': -1\n }\n : {\n role: roles.cell\n };\n\n // don't bubble Arrow Up and Down events to parent when in isTabbable mode\n // this bubbling causes the outer CollectionFocus ring to change index while in the isTabbable mode.\n const handleKeyDown = (event: KeyboardEvent) => {\n if (isTabbable && (event.key === 'ArrowDown' || event.key === 'ArrowUp')) {\n event.stopPropagation();\n }\n };\n\n const { interactionProps, applyActiveStyle, applyHoverStyle, applyPseudoHoverStyle } =\n useInteractionStyle();\n\n const variantClasses = listItemMultiVariantStyles({\n selectable: isSelectable(selectionMode, isSelected) ? 'isSelectable' : 'notSelectable',\n selected: isSelected ? 'isSelected' : 'notSelected',\n selectedSingle:\n isSelected && selectionMode === 'single' ? 'isSelectedSingle' : 'notSelectedSingle',\n needsEventsHover: applyHoverStyle ? 'isNeedsEventsHover' : 'notNeedsEventsHover',\n pseudoHover: applyPseudoHoverStyle ? 'isPseudoHover' : 'notPseudoHover',\n active: applyActiveStyle || isActive ? 'isActive' : 'notActive',\n focusHighlight:\n currentItemVariant === 'highlight' && isFocused ? 'isFocusHighlight' : 'notFocusHighlight',\n focusRingVisible:\n isFocusRingVisible && isFocused ? 'isFocusRingVisible' : 'notFocusRingVisible',\n gridlineTop: isTopGridlineVisible ? 'visible' : 'hidden',\n gridlineBottom:\n isGridlineVisible ||\n (suggestion === 'end' && !isGridlineVisible && (!isSelected || selectionMode !== 'single'))\n ? 'visible'\n : 'hidden'\n });\n const classes = classNames([variantClasses]);\n const styleInterpolations = mergeInterpolations<FlexitemProps>([\n ...Object.values(flexitemInterpolations)\n ]);\n const { class: cls, ...cellStyles } = styleInterpolations({\n flex: '1 1 auto',\n alignSelf: 'center'\n });\n const cellClasses = classNames([\n cls,\n selectionMode === 'multiple' && listItemStyles.checkboxContainer\n ]);\n\n // todo: use translated text for selector\n // note cannot put focus on gridcell div since JAWS will not read the aria-rowindex\n // correctly, so unfortunately needed another div\n return (\n <div\n aria-rowindex={role === 'grid' ? itemIndex + 1 : undefined}\n aria-level={itemDepth}\n data-oj-key={itemKey}\n class={classes}\n ref={rootRef}\n role={roles.item}\n {...(suggestion && { 'data-oj-suggestion': true })}\n {...(typeof itemKey === 'number' && { 'data-oj-key-type': 'number' })}\n {...interactionProps}>\n <div\n id={useId()}\n style={cellStyles}\n class={cellClasses}\n aria-posinset={role === 'grid' ? undefined : itemIndex + 1}\n aria-setsize={role === 'grid' ? undefined : -1}\n onKeyDown={handleKeyDown}\n aria-colindex={role === 'grid' ? 1 : undefined}\n aria-selected={selectionMode !== 'none' ? isSelected : undefined}\n {...cellRoleAttributes}>\n <TabbableModeContext.Provider value={{ isTabbable }}>\n <FocusTrap isDisabled={!isTabbable} restoreFocusRef={false}>\n {children(context)}\n </FocusTrap>\n </TabbableModeContext.Provider>\n </div>\n </div>\n );\n}\n\n/**\n * Helper method to determine whether item is selectable\n * @returns true if item is selectable (show hover effect), false otherwise\n */\nconst isSelectable = (selectionMode: SelectionMode, isItemSelected: boolean) => {\n return selectionMode !== 'none' && (selectionMode === 'multiple' || !isItemSelected);\n};\n\nexport const MemoizeListViewItem = memo(ListViewItem, (prev: any, next: any) => {\n if (prev && next) {\n return (\n prev.children === next.children &&\n prev.isFocused === next.isFocused &&\n prev.isFocusRingVisible === next.isFocusRingVisible &&\n prev.isSelected === next.isSelected &&\n prev.isTabbable === next.isTabbable &&\n prev.isActive === next.isActive &&\n prev.suggestion === next.suggestion &&\n prev.isGridlineVisible === next.isGridlineVisible &&\n prev.isTopGridlineVisible === next.isTopGridlineVisible &&\n compareListItemContext(prev.context, next.context)\n );\n }\n return false;\n});\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { ComponentChildren } from 'preact';\nimport { useState, useEffect } from 'preact/hooks';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { skeletonStyles } from './themes/ListStyles.css';\n\ntype Props = {\n /**\n * Allows to pass and access the properties from child elements\n **/\n children?: (index: number) => ComponentChildren;\n /**\n * Allows to specify number of skeletons to be rendered on initial load\n **/\n minimumCount?: number;\n};\n\n/**\n * Allows to specify the time delay for rendering the component\n **/\nconst timerValue = 50;\n\n/**\n * SkeletonContainer renders 'minimumCount' number of skeletons\n * of the variant specified from its child element - Skeleton's prop after\n * 'timerValue' ms delay\n **/\nexport function SkeletonContainer({ children, minimumCount = 1 }: Props) {\n const [isVisible, setIsVisible] = useState(false);\n\n useEffect(() => {\n setTimeout(() => {\n setIsVisible(true);\n }, timerValue);\n }, []);\n\n const containerClasses = classNames([skeletonStyles.container]);\n return isVisible && children ? (\n <div class={containerClasses} role=\"presentation\">\n {[...Array(minimumCount)].map((_element, index) => children(index))}\n </div>\n ) : null;\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { globalImages } from '#/ImageVars.css';\nimport { sparkleStyles } from './themes/ListStyles.css';\nimport { useTheme } from '#/hooks/UNSAFE_useTheme';\n\nconst SPARKLE_STYLE_CLASS = 'oj-collection-sparkle';\n\n/**\n * A sparkle component for smart suggestion indicator in ListView\n * @param sparkleHeight the height of sparkle\n */\nexport function Sparkle({ sparkleHeight }: { sparkleHeight: number }) {\n const { name } = useTheme();\n if (sparkleHeight <= 0) {\n return null;\n }\n\n const height = sparkleHeight + 'px';\n const sparkleClasses = classNames([sparkleStyles.base]);\n const containerClasses = classNames([\n sparkleStyles.container,\n SPARKLE_STYLE_CLASS,\n // TODO: this component should create separate theme definitions to only show the image in redwood\n name === 'redwood' && globalImages\n ]);\n\n return (\n <div key=\"sparkle\" class={containerClasses}>\n <div class={sparkleClasses} style={{ height }}></div>\n </div>\n );\n}\n","import { RefObject } from 'preact';\nimport { useState, useEffect, useMemo } from 'preact/hooks';\nimport { Props as ListViewProps } from '../UNSAFE_ListView';\nimport { PLACEHOLDER_STYLE_CLASS } from '../PRIVATE_VirtualizedCollection';\nimport { Metadata } from '../UNSAFE_Collection';\n\nexport const usePromotedSection = <K extends string | number, D>(\n data: ListViewProps<K, D>['data'],\n promotedSection: ListViewProps<K, D>['promotedSection'],\n rootRef: RefObject<HTMLDivElement>\n) => {\n // tracking sparkle height\n const [sparkleHeight, setSparkleHeight] = useState<number>(0);\n\n const suggestions = useMemo(\n () => data && promotedSection && findSuggestions(data.data, promotedSection.count),\n [data, promotedSection]\n );\n\n useEffect(() => {\n // update sparkleHeight only when we have suggestions\n // avoid unnecessary iterating through elements\n if (suggestions) {\n const placeholder = rootRef.current?.querySelector(\n '.' + PLACEHOLDER_STYLE_CLASS\n ) as HTMLElement;\n let height = placeholder?.offsetHeight || 0;\n const suggestionItems = rootRef.current?.querySelectorAll('[data-oj-suggestion]');\n suggestionItems?.forEach((item) => (height += (item as HTMLElement).offsetHeight));\n setSparkleHeight(height);\n }\n }, [rootRef, suggestions]);\n\n return { sparkleHeight, suggestions };\n};\n\n/**\n * A helper function that finds the data with suggestions, and\n * returns the corresponding keys\n * @param dataState\n */\nconst findSuggestions = <K, D>(data: { data: D; metadata: Metadata<K> }[], count: number) => {\n if (count === 0) {\n return null;\n }\n\n const suggestionsData = data.slice(0, count);\n return suggestionsData.reduce((suggestions, value, index) => {\n const key = value.metadata.key;\n\n if (index === count - 1) {\n suggestions.set(key, 'end');\n } else {\n suggestions.set(key, true);\n }\n\n return suggestions;\n }, new Map<K, 'end' | true>());\n};\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { FlattenedDataState } from '../UNSAFE_Collection';\nimport { Keys } from '../utils/UNSAFE_keys';\n\n/**\n * Helper function to only include keys of leaf items.\n */\nexport const excludeGroup = <K, D>(data: FlattenedDataState<K, D>, keys: Keys<K>) => {\n if (!keys.all) {\n const groups = data.data\n .filter((dataMetadata) => {\n return !dataMetadata.metadata.isLeaf;\n })\n .map((dataMetadata) => {\n return dataMetadata.metadata.key;\n });\n const leafOnly = Array.from(keys.keys.values()).filter((key: K) => {\n return !groups.includes(key);\n });\n return { ...keys, keys: new Set(leafOnly) };\n }\n return keys;\n};\n\n/**\n * A helper function to make sure specified elem is visible in the specified container\n */\nexport const scrollToVisible = (elem: Element, scroller: Element, offset: number) => {\n if (elem && scroller) {\n if ((elem as any).scrollIntoViewIfNeeded) {\n // for Safari, we'll need the non-standard scrollIntoViewIfNeeded\n (elem as any).scrollIntoViewIfNeeded();\n } else {\n elem.scrollIntoView({ block: 'nearest' });\n }\n if (offset > 0) {\n const scrollerBounds = scroller.getBoundingClientRect();\n const elemBounds = elem.getBoundingClientRect();\n const diff = scrollerBounds.top + offset - elemBounds.top;\n if (diff > 0) {\n scroller.scrollTop = scroller.scrollTop - diff;\n }\n }\n }\n};\n","import { RefObject } from 'preact';\nimport { useEffect, useCallback, useRef, useMemo } from 'preact/hooks';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { Keys } from '../utils/UNSAFE_keys';\nimport { DataState, Metadata, Range, SelectionDetail } from '../UNSAFE_Collection';\nimport { getListViewRoles } from './ListRoles';\nimport { SelectionRangeDetail, useSelection } from '../hooks/PRIVATE_useSelection';\nimport { useCurrentKey } from '../hooks/PRIVATE_useCurrentKey';\nimport { useCollectionFocusRing } from '../hooks/PRIVATE_useCollectionFocusRing';\nimport { useCollectionGestureContext } from '../hooks/PRIVATE_useCollectionGestureContext';\nimport { useItemAction } from '../hooks/PRIVATE_useItemAction';\nimport { Props as ListViewProps } from '../UNSAFE_ListView';\nimport { getPrevNextKey, findElementByKey, keyExtractor } from '../utils/PRIVATE_collectionUtils';\nimport { ITEM_SELECTOR } from './ListItem';\nimport { scrollToVisible } from './ListUtils';\n\nexport const useSelectionAndNavigation = <K extends string | number, D>(\n currentKey: ListViewProps<K, D>['currentKey'],\n selectedKeys: Keys<K>,\n selectionMode: ListViewProps<K, D>['selectionMode'] = 'none',\n onCurrentKeyChange: ListViewProps<K, D>['onCurrentKeyChange'],\n onSelectionChange: ListViewProps<K, D>['onSelectionChange'],\n onItemAction: ListViewProps<K, D>['onItemAction'],\n data: ListViewProps<K, D>['data'],\n viewportConfig: ListViewProps<K, D>['viewportConfig'],\n role: ListViewProps<K, D>['role'] = 'grid',\n scrollToVisibleOffset: ListViewProps<K, D>['scrollToVisibleOffset'],\n rootRef: RefObject<HTMLDivElement>,\n pendingSelectionCallback: (detail: SelectionRangeDetail<K>, value: Range) => void\n) => {\n const listRoles = useMemo(() => getListViewRoles(role), [role]);\n\n // tracking the anchor key which is used for shift+click selection\n const anchorKey = useRef<K | undefined>();\n\n const { currentKeyProps } = useCurrentKey(\n (element) => keyExtractor(element, ITEM_SELECTOR),\n selectionMode !== 'multiple',\n getPrevNextKey(rootRef.current, currentKey, true, ITEM_SELECTOR),\n getPrevNextKey(rootRef.current, currentKey, false, ITEM_SELECTOR),\n undefined,\n undefined,\n currentKey,\n onCurrentKeyChange\n );\n\n const [showFocusRing, focusRingProps] = useCollectionFocusRing(rootRef, ['ArrowUp', 'ArrowDown']);\n\n useEffect(() => {\n if (currentKey != null && rootRef.current) {\n const elem = findElementByKey(rootRef.current, currentKey, ITEM_SELECTOR);\n if (elem) {\n const activeDescendant = rootRef.current.getAttribute('aria-activedescendant');\n const cell = elem.querySelector(`[role=${listRoles.cell}]`);\n if (cell && activeDescendant !== cell.id) {\n // update aria-activedescendant for screenreader\n rootRef.current.setAttribute('aria-activedescendant', cell.id);\n\n const scroller = viewportConfig?.scroller();\n const offset = scrollToVisibleOffset ? scrollToVisibleOffset(rootRef.current) : 0;\n // make sure item is visible\n scrollToVisible(elem, scroller != null ? scroller : rootRef.current, offset);\n }\n }\n }\n // listen to data because the current item would re-render when the virtualizer\n // is fetching data or updating the data, i.e. the id of current item would be updated,\n // so the currentKey itself couldn't guarantee the root has latest aria-activedescendant\n }, [currentKey, data, listRoles.cell, viewportConfig, scrollToVisibleOffset, rootRef]);\n\n const handleSelectionChange = useCallback(\n (detail: SelectionDetail<K>) => {\n if (onSelectionChange) {\n if (detail.value.all === false && detail.value.keys.size > 0) {\n // during regular selection, the last key selected by a user gesture is the anchor key\n anchorKey.current = Array.from(detail.value.keys.values()).pop();\n }\n onSelectionChange(detail);\n }\n },\n [anchorKey, onSelectionChange]\n );\n\n const handleSelectionRangeChange = useCallback(\n (detail: SelectionRangeDetail<K>) => {\n if (data && onSelectionChange) {\n const value = handleSelectionRange(detail, data);\n if (Array.isArray(value)) {\n if (detail.eventType === 'shiftSpace') {\n // during range selection by shift+space, the first key selected by a user gesture is the anchor key\n anchorKey.current = detail.value.start;\n } else {\n // during range selection by shift+click/arrow keys, the last key selected by a user gesture is the anchor key\n anchorKey.current = detail.value.end;\n }\n onSelectionChange({ value: { all: false, keys: new Set(value) }, target: null });\n } else {\n pendingSelectionCallback(detail, value);\n }\n }\n },\n [data, onSelectionChange, pendingSelectionCallback]\n );\n\n const value = useCollectionGestureContext();\n\n const { selectionProps } = useSelection(\n (element: HTMLElement) => {\n if (element === rootRef.current) {\n return currentKey === undefined ? null : currentKey;\n }\n return keyExtractor(element, ITEM_SELECTOR) as K;\n },\n selectedKeys,\n selectionMode,\n false,\n 'replace',\n value === 'embedded',\n handleSelectionChange,\n anchorKey.current,\n currentKey,\n (currentKey: K | undefined, isPrev: boolean) =>\n getPrevNextKey(rootRef.current, currentKey, isPrev, ITEM_SELECTOR),\n undefined,\n (key: K) => {\n if (rootRef.current) {\n const elem = findElementByKey(rootRef.current, key, ITEM_SELECTOR);\n if (elem) {\n const scroller = viewportConfig?.scroller();\n const offset = scrollToVisibleOffset ? scrollToVisibleOffset(rootRef.current) : 0;\n scrollToVisible(elem, scroller != null ? scroller : rootRef.current, offset);\n }\n }\n },\n handleSelectionRangeChange\n );\n\n const itemActionProps = useItemAction(\n currentKey,\n data,\n onItemAction,\n ITEM_SELECTOR,\n value === 'embedded'\n );\n\n return {\n eventProps: mergeProps(currentKeyProps, focusRingProps, selectionProps, itemActionProps),\n showFocusRing,\n handleSelectionChange\n };\n};\n\nexport const handleSelectionRange = <K, D>(\n detail: SelectionRangeDetail<K>,\n dataState: DataState<K, D>\n) => {\n const keys = dataState.data.map((value: { data: D; metadata: Metadata<K> }) => {\n return value.metadata.key;\n });\n const startIndex = keys.indexOf(detail.value.start);\n const endIndex = keys.indexOf(detail.value.end);\n const minIndex = Math.min(startIndex, endIndex);\n const maxIndex = Math.max(startIndex, endIndex);\n if (minIndex === -1) {\n // return a range to fetch so we can find all the keys, maxIndex should not be -1\n return { offset: 0, count: dataState.totalSize };\n } else {\n // range of keys are in the current viewport, return them\n return keys.slice(minIndex, maxIndex + 1);\n }\n};\n","import { RefObject } from 'preact';\nimport { useCallback, useRef } from 'preact/hooks';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { Props as ListViewProps } from '../UNSAFE_ListView';\nimport { getFirstVisibleKey, keyExtractor } from '../utils/PRIVATE_collectionUtils';\nimport { isKeyDefined } from '../utils/UNSAFE_keys';\nimport { ITEM_SELECTOR } from './ListItem';\nimport { useTabbableModeSet } from '../hooks/PRIVATE_useTabbableModeSet';\nimport { findElementByKey } from '../utils/PRIVATE_collectionUtils';\nimport { scrollToVisible } from './ListUtils';\n\nexport const useFocusTabbableMode = <K extends string | number, D>(\n currentKey: ListViewProps<K, D>['currentKey'],\n onCurrentKeyChange: ListViewProps<K, D>['onCurrentKeyChange'],\n allowTabbableMode: ListViewProps<K, D>['allowTabbableMode'],\n rootRef: RefObject<HTMLDivElement>,\n viewportConfig: ListViewProps<K, D>['viewportConfig'],\n scrollToVisibleOffset: ListViewProps<K, D>['scrollToVisibleOffset']\n) => {\n const pendingCurrentKey = useRef<K>();\n\n const [isCurrentTabbableKey, tabbableModeProps] = useTabbableModeSet(\n rootRef,\n (element) => {\n // we don't want List to go into Tabbable mode when user clicks on expander\n return isExpander(element) ? null : (keyExtractor(element, ITEM_SELECTOR) as K);\n },\n currentKey,\n onCurrentKeyChange\n );\n\n const handleInitialFocus = useCallback(() => {\n if (\n rootRef.current &&\n onCurrentKeyChange &&\n (!allowTabbableMode || isCurrentTabbableKey(undefined))\n ) {\n const firstKey =\n pendingCurrentKey.current || (getFirstVisibleKey(rootRef.current, ITEM_SELECTOR) as K);\n if (isKeyDefined(firstKey)) {\n onCurrentKeyChange({ value: firstKey });\n }\n }\n }, [rootRef, onCurrentKeyChange, allowTabbableMode, isCurrentTabbableKey]);\n\n const handleFocus = useCallback(\n (event: FocusEvent) => {\n if (isExpander(event.target as HTMLElement)) {\n rootRef.current?.focus();\n const key = keyExtractor(event.target as HTMLElement, ITEM_SELECTOR);\n if (onCurrentKeyChange && isKeyDefined(key)) {\n onCurrentKeyChange({ value: key as K });\n }\n return;\n }\n if (!isKeyDefined(currentKey)) {\n onCurrentKeyChange && handleInitialFocus();\n } else if (rootRef.current) {\n // if currentKey is defined, make sure scroll the current item into view when listview regains focus\n const elem = findElementByKey(rootRef.current, currentKey as K, ITEM_SELECTOR);\n if (elem) {\n const scroller = viewportConfig?.scroller();\n const offset = scrollToVisibleOffset ? scrollToVisibleOffset(rootRef.current) : 0;\n scrollToVisible(elem, scroller != null ? scroller : rootRef.current, offset);\n }\n }\n },\n [currentKey, handleInitialFocus, onCurrentKeyChange, rootRef]\n );\n\n /**\n * Need to track pointer down element to set currentItem when initial focus happens\n */\n const handlePointerDown = useCallback((event: PointerEvent) => {\n const key = keyExtractor(event.target as HTMLElement, ITEM_SELECTOR);\n if (isKeyDefined(key)) {\n pendingCurrentKey.current = key as K;\n }\n }, []);\n\n return {\n eventProps: mergeProps(allowTabbableMode ? tabbableModeProps : {}, {\n onFocus: handleFocus,\n onPointerDown: handlePointerDown\n }),\n isCurrentTabbableKey\n };\n};\n\nconst isExpander = (elem: HTMLElement) => {\n if (elem.parentElement && elem.parentElement.classList.contains('oj-listview-expander')) {\n return true;\n }\n return false;\n};\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { RefObject } from 'preact';\nimport { useRef, useCallback, useState, useImperativeHandle } from 'preact/hooks';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { containsKey, Keys, isKeyDefined } from '../utils/UNSAFE_keys';\nimport { DataState, ItemContext, ListItemRendererContext, Range } from '../UNSAFE_Collection';\nimport { LoadMoreCollection, LOADMORE_STYLE_CLASS } from '../PRIVATE_LoadMoreCollection';\nimport { VirtualizedCollection } from '../PRIVATE_VirtualizedCollection';\nimport { ViewportConfig } from '../hooks/UNSAFE_useViewportIntersect';\nimport { ListViewItem, ITEM_SELECTOR, MemoizeListViewItem } from './ListItem';\n\nimport { SelectionRangeDetail } from '../hooks/PRIVATE_useSelection';\nimport { SkeletonContainer } from './SkeletonContainer';\nimport { Skeleton } from '../UNSAFE_Skeleton';\nimport { Flex } from '../UNSAFE_Flex';\nimport { Selector } from '../UNSAFE_Selector';\nimport { Props } from '../UNSAFE_ListView';\nimport { Sparkle } from './Sparkle';\nimport { listStyles } from './themes/ListStyles.css';\nimport { useTestId } from '../hooks/UNSAFE_useTestId';\nimport { usePromotedSection } from './usePromotedSection';\nimport { useSelectionAndNavigation, handleSelectionRange } from './useSelectionAndNavigation';\nimport { useFocusTabbableMode } from './useFocusTabbableMode';\nimport { Inset } from '../UNSAFE_Inset';\n// TODO: add this import due to issue JET-67485, need to update once Stable is introduced\nimport './themes/redwood/ListBaseTheme.css';\n\n/**\n * Component that renders items as a flat list.\n * In order to maximize performance, only items that are visible in the viewport are rendered.\n */\nexport function List<K extends string | number, D>({\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n allowTabbableMode = true,\n children,\n currentKey,\n data,\n gridlines,\n loadingIndicator = defaultLoadingIndicator,\n onCurrentKeyChange,\n onLoadRange,\n onSelectionChange,\n onItemAction,\n rangeExtractor,\n role = 'grid',\n selectedKeys = emptyKeys as Keys<K>,\n selectionMode = 'none',\n viewportConfig,\n currentItemVariant = 'none',\n promotedSection,\n isVirtualized = false,\n customItemRenderer,\n scrollToVisibleOffset,\n testId,\n scrollerRef,\n reorderProps,\n contextMenuTriggerProps,\n ...props\n}: Props<K, D>) {\n const rootRef = useRef<HTMLDivElement>(null);\n\n // tracking pending selection key that is not in current data\n const pendingSelection = useRef<{ detail: SelectionRangeDetail<K>; range: Range }>();\n\n const [active, setActive] = useState<boolean>(false);\n\n const showGridline = (index: number) => {\n // show bottom gridlines for each item, and for the last item if specified\n return (\n gridlines?.item === 'visible' &&\n (index + 1 !== data?.totalSize || gridlines?.bottom === 'visible')\n );\n };\n\n const showGridlineTop = () => {\n // show the top gridline for the first item\n return gridlines?.item === 'visible' && gridlines?.top === 'visible';\n };\n\n const ariaMultiSelectable = selectionMode === 'none' ? undefined : selectionMode === 'multiple';\n const ariaRowCount =\n data === null ? undefined : data.sizePrecision === 'exact' ? data.totalSize : -1;\n\n const classes = classNames([listStyles.base]);\n\n const pendingSelectionCallback = useCallback(\n (detail: SelectionRangeDetail<K>, value: Range) => {\n if (data) {\n pendingSelection.current = {\n detail: detail,\n range: { offset: data.offset, count: data.data.length }\n };\n onLoadRange(value);\n }\n },\n [data, onLoadRange]\n );\n const { eventProps, showFocusRing, handleSelectionChange } = useSelectionAndNavigation(\n currentKey,\n selectedKeys,\n selectionMode,\n onCurrentKeyChange,\n onSelectionChange,\n onItemAction,\n data,\n viewportConfig,\n role,\n scrollToVisibleOffset,\n rootRef,\n pendingSelectionCallback\n );\n\n const { eventProps: focusTabbableProps, isCurrentTabbableKey } = useFocusTabbableMode(\n currentKey,\n onCurrentKeyChange,\n allowTabbableMode,\n rootRef,\n viewportConfig,\n scrollToVisibleOffset\n );\n\n if (data && pendingSelection.current !== undefined && onSelectionChange) {\n const keys = handleSelectionRange(pendingSelection.current.detail, data);\n if (Array.isArray(keys)) {\n onSelectionChange({ value: { all: false, keys: new Set(keys) }, target: null });\n }\n const range = pendingSelection.current\n ? pendingSelection.current.range\n : { offset: data.offset, count: data.data.length };\n data = adjustDataState(data, range);\n pendingSelection.current = undefined;\n onLoadRange(range);\n }\n\n const { sparkleHeight, suggestions } = usePromotedSection(data, promotedSection, rootRef);\n\n // TODO: check suggestions before Sparkle would cause a scrolling issue\n const sparkleIndicator = <Sparkle sparkleHeight={sparkleHeight}></Sparkle>;\n\n // Collection generic is of this type\n type DataStateData = DataState<K, D>['data'][number];\n\n // returns an ListItemContext based on ItemContext (added metadata and selector)\n // note the type for ItemContext, this is the context coming from Collection\n const getItemContext = useCallback(\n (context: ItemContext<DataStateData>) => {\n const dataStateData = context.data;\n const selectorRenderer =\n selectionMode === 'multiple'\n ? () => (\n <Selector\n onChange={handleSelectionChange}\n rowKey={dataStateData.metadata.key}\n selectedKeys={selectedKeys}></Selector>\n )\n : undefined;\n\n return {\n index: context.index,\n data: dataStateData.data,\n metadata: dataStateData.metadata,\n selector: selectorRenderer\n };\n },\n [selectionMode, selectedKeys, handleSelectionChange]\n );\n\n const ItemComponent = isVirtualized ? ListViewItem : MemoizeListViewItem;\n\n const childrenComponent = (context: ItemContext<DataStateData>) => {\n const listItemContext = getItemContext(context);\n const suggestion = suggestions?.get(listItemContext.metadata.key);\n const isTabbable = allowTabbableMode && isCurrentTabbableKey(listItemContext.metadata.key);\n const isFocused = currentKey === listItemContext.metadata.key && !isTabbable;\n const isActive = isFocused && active;\n const isSelected = containsKey(selectedKeys, listItemContext.metadata.key);\n const isFocusRingVisible = isFocused && showFocusRing;\n const listItemFunc = (ctx: ListItemRendererContext<K, D>, otherProps?: any) => (\n <ItemComponent\n key={listItemContext.metadata.key}\n context={ctx}\n isFocused={isFocused}\n isFocusRingVisible={isFocusRingVisible}\n isActive={isActive}\n isGridlineVisible={showGridline(listItemContext.index)}\n isSelected={isSelected}\n isTabbable={allowTabbableMode && isCurrentTabbableKey(listItemContext.metadata.key)}\n role={role}\n selectionMode={selectionMode}\n currentItemVariant={currentItemVariant}\n {...(suggestion && { suggestion })}\n {...(listItemContext.index === 0 && { isTopGridlineVisible: showGridlineTop() })}\n {...otherProps}>\n {children}\n </ItemComponent>\n );\n\n // if customItemRenderer is specified (ExpandableList and GroupedList)\n // create a custom context with additional info including a function\n // that helps create the default item component\n if (customItemRenderer) {\n const customRendererContext = {\n listItemContext,\n isFocused,\n isFocusRingVisible,\n isSelected,\n isTabbable,\n isActive,\n defaultListItem: listItemFunc\n };\n return customItemRenderer(customRendererContext);\n }\n return listItemFunc(listItemContext);\n };\n\n viewportConfig = getViewportConfig(rootRef, viewportConfig);\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if (event.key === ' ' && isKeyDefined(currentKey) && selectionMode !== 'none') {\n setActive(true);\n }\n },\n [currentKey, selectionMode, setActive]\n );\n\n const handleKeyUp = useCallback(() => {\n setActive(false);\n }, [setActive]);\n\n useImperativeHandle(scrollerRef!, () => rootRef.current);\n\n // if data is not specified, listview should show loading indicator\n // todo: replace placeholder with actual SkeletonContainer component (Ash is working on)\n const testIdProps = useTestId(testId);\n return (\n <div\n {...mergeProps(\n eventProps,\n focusTabbableProps,\n contextMenuTriggerProps || {},\n reorderProps || {},\n {\n onKeyDown: handleKeyDown,\n onKeyUp: handleKeyUp\n },\n props\n )}\n {...testIdProps}\n role={role}\n aria-rowcount={role === 'grid' ? ariaRowCount : undefined}\n aria-colcount={role === 'grid' ? 1 : undefined}\n ref={rootRef}\n class={classes}\n tabIndex={0}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-multiselectable={ariaMultiSelectable}>\n {data == null ? (\n loadingIndicator\n ) : isVirtualized ? (\n <VirtualizedCollection\n data={data}\n itemSelector={ITEM_SELECTOR}\n loadMoreIndicator={defaultLoadMoreIndicator}\n onLoadRange={onLoadRange}\n rangeExtractor={rangeExtractor}\n suggestions={sparkleIndicator}\n viewportConfig={viewportConfig}>\n {childrenComponent}\n </VirtualizedCollection>\n ) : (\n <LoadMoreCollection\n data={data.data}\n loadMoreIndicator={defaultLoadMoreIndicator}\n hasMore={data.sizePrecision === 'atLeast' && data.data.length <= data.totalSize}\n onLoadMore={() => {\n data && onLoadRange({ offset: 0, count: data.data.length + 25 });\n }}\n suggestions={sparkleIndicator}\n viewportConfig={viewportConfig}>\n {childrenComponent}\n </LoadMoreCollection>\n )}\n </div>\n );\n}\n\nconst getViewportConfig = (rootRef: RefObject<HTMLElement>, config?: ViewportConfig) => {\n return (\n config ?? {\n scroller: () => {\n return rootRef.current;\n }\n }\n );\n};\n\nconst emptyKeys = { all: false, keys: new Set() };\n\nconst defaultLoadingIndicator = (\n <SkeletonContainer minimumCount={25}>\n {() => {\n return (\n <Inset variant=\"listview\">\n <Flex height=\"6x\" align=\"center\">\n <Skeleton height=\"4x\" />\n </Flex>\n </Inset>\n );\n }}\n </SkeletonContainer>\n);\n\nconst defaultLoadMoreIndicator = (\n <div class={LOADMORE_STYLE_CLASS}>\n <SkeletonContainer minimumCount={3}>\n {() => {\n return (\n <Inset variant=\"listview\">\n <Flex height=\"6x\" align=\"center\">\n <Skeleton height=\"4x\" />\n </Flex>\n </Inset>\n );\n }}\n </SkeletonContainer>\n </div>\n);\n\n/**\n * Adjust the DataState as needed if it contains more than needed for the specified range\n */\nconst adjustDataState = <K, D>(dataState: DataState<K, D>, range: Range | null) => {\n if (range) {\n // prevent range offset from being larger than the data state\n const safeRangeOffset = Math.min(range.offset, dataState.offset + dataState.totalSize);\n const diff = safeRangeOffset - dataState.offset;\n if (diff > 0) {\n dataState = {\n offset: safeRangeOffset,\n data: dataState.data.slice(diff, diff + range.count),\n totalSize: dataState.totalSize,\n sizePrecision: dataState.sizePrecision\n };\n }\n }\n return dataState;\n};\n"],"names":["getListViewRoles","ariaRole","list","item","cell","ITEM_SELECTOR","ListViewItem","children","context","itemDepth","isFocused","isFocusRingVisible","isActive","isGridlineVisible","isSelected","isTopGridlineVisible","isTabbable","role","selectionMode","suggestion","currentItemVariant","rootRef","useRef","roles","useMemo","itemKey","metadata","key","itemIndex","index","cellRoleAttributes","interactionProps","applyActiveStyle","applyHoverStyle","applyPseudoHoverStyle","useInteractionStyle","variantClasses","listItemMultiVariantStyles","selectable","isSelectable","selected","selectedSingle","needsEventsHover","pseudoHover","active","focusHighlight","focusRingVisible","gridlineTop","gridlineBottom","classes","classNames","styleInterpolations","mergeInterpolations","Object","values","flexitemInterpolations","class","cls","cellStyles","flex","alignSelf","cellClasses","listItemStyles","checkboxContainer","_jsx","jsx","undefined","ref","id","useId","style","onKeyDown","event","stopPropagation","TabbableModeContext","Provider","value","FocusTrap","isDisabled","restoreFocusRef","isItemSelected","MemoizeListViewItem","memo","prev","next","compareListItemContext","SkeletonContainer","minimumCount","isVisible","setIsVisible","useState","useEffect","setTimeout","containerClasses","skeletonStyles","container","Array","map","_element","SPARKLE_STYLE_CLASS","Sparkle","sparkleHeight","name","useTheme","height","sparkleClasses","sparkleStyles","base","globalImages","findSuggestions","data","count","slice","reduce","suggestions","set","Map","scrollToVisible","elem","scroller","offset","scrollIntoViewIfNeeded","scrollIntoView","block","scrollerBounds","getBoundingClientRect","elemBounds","diff","top","scrollTop","handleSelectionRange","detail","dataState","keys","startIndex","indexOf","start","endIndex","end","minIndex","Math","min","maxIndex","max","totalSize","isExpander","parentElement","classList","contains","getViewportConfig","config","current","emptyKeys","all","Set","defaultLoadingIndicator","Inset","variant","Flex","align","Skeleton","defaultLoadMoreIndicator","LOADMORE_STYLE_CLASS","adjustDataState","range","safeRangeOffset","sizePrecision","ariaLabel","ariaLabelledBy","allowTabbableMode","currentKey","gridlines","loadingIndicator","onCurrentKeyChange","onLoadRange","onSelectionChange","onItemAction","rangeExtractor","selectedKeys","viewportConfig","promotedSection","isVirtualized","customItemRenderer","scrollToVisibleOffset","testId","scrollerRef","reorderProps","contextMenuTriggerProps","props","pendingSelection","setActive","ariaMultiSelectable","ariaRowCount","listStyles","pendingSelectionCallback","useCallback","length","eventProps","showFocusRing","handleSelectionChange","listRoles","anchorKey","currentKeyProps","useCurrentKey","element","keyExtractor","getPrevNextKey","focusRingProps","useCollectionFocusRing","findElementByKey","activeDescendant","getAttribute","querySelector","setAttribute","size","from","pop","handleSelectionRangeChange","isArray","eventType","target","useCollectionGestureContext","selectionProps","useSelection","isPrev","itemActionProps","useItemAction","mergeProps","useSelectionAndNavigation","focusTabbableProps","isCurrentTabbableKey","pendingCurrentKey","tabbableModeProps","useTabbableModeSet","handleInitialFocus","firstKey","getFirstVisibleKey","isKeyDefined","handleFocus","focus","handlePointerDown","onFocus","onPointerDown","useFocusTabbableMode","setSparkleHeight","placeholder","PLACEHOLDER_STYLE_CLASS","offsetHeight","suggestionItems","querySelectorAll","forEach","usePromotedSection","sparkleIndicator","getItemContext","dataStateData","selectorRenderer","Selector","onChange","rowKey","selector","ItemComponent","childrenComponent","listItemContext","get","containsKey","listItemFunc","ctx","otherProps","bottom","defaultListItem","handleKeyDown","handleKeyUp","useImperativeHandle","testIdProps","useTestId","onKeyUp","tabIndex","VirtualizedCollection","itemSelector","loadMoreIndicator","LoadMoreCollection","hasMore","onLoadMore","groups","filter","dataMetadata","isLeaf","leafOnly","includes"],"mappings":"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"}
1
+ {"version":3,"file":"List-5958c802.js","sources":["../../src/PRIVATE_List/ListRoles.ts","../../src/PRIVATE_List/ListItem.tsx","../../src/PRIVATE_List/SkeletonContainer.tsx","../../src/PRIVATE_List/Sparkle.tsx","../../src/PRIVATE_List/usePromotedSection.ts","../../src/PRIVATE_List/ListUtils.ts","../../src/PRIVATE_List/useSelectionAndNavigation.ts","../../src/PRIVATE_List/useFocusTabbableMode.ts","../../src/PRIVATE_List/List.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 { Roles } from '../UNSAFE_ListView';\nimport { HTMLAttributesSignalExcluded } from '../utils/UNSAFE_attributeUtils';\n\n/**\n * List Roles need to be kept in matching sets, this module encapsulates the sets\n *\n * @param ariaRole\n * @returns matching, valid set of roles\n */\n\nconst getListViewRoles = (\n ariaRole: Roles\n): {\n list: HTMLAttributesSignalExcluded['role'];\n item: HTMLAttributesSignalExcluded['role'];\n cell: HTMLAttributesSignalExcluded['role'];\n} => {\n switch (ariaRole) {\n case 'listbox':\n return { list: 'listbox', item: 'presentation', cell: 'option' };\n case 'treegrid':\n return { list: 'treegrid', item: 'row', cell: 'gridcell' };\n default:\n return { list: 'grid', item: 'row', cell: 'gridcell' };\n }\n};\n\nexport { getListViewRoles };\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 { ComponentChildren } from 'preact';\nimport { useRef, useMemo } from 'preact/hooks';\nimport { memo } from 'preact/compat';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { TabbableModeContext } from '../hooks/UNSAFE_useTabbableMode';\nimport { SelectionMode, CurrentItemVariant, ListItemRendererContext } from '../UNSAFE_Collection';\nimport { FocusTrap } from '../UNSAFE_FocusTrap';\nimport { useId } from '../hooks/UNSAFE_useId';\nimport { Roles } from '../UNSAFE_ListView';\nimport { getListViewRoles } from './ListRoles';\nimport { useInteractionStyle } from '../hooks/UNSAFE_useInteractionStyle';\nimport { mergeInterpolations } from '../utils/UNSAFE_mergeInterpolations';\nimport { flexitemInterpolations } from '../utils/UNSAFE_interpolations/flexitem';\nimport type { FlexitemProps } from '../utils/UNSAFE_interpolations/flexitem';\nimport { listItemStyles, listItemMultiVariantStyles } from './themes/ListStyles.css';\nimport { compareListItemContext } from '../utils/PRIVATE_collectionUtils';\n\nexport const ITEM_SELECTOR = '[data-oj-key]';\n\n/**\n * Props for the ListViewItem Component\n */\nexport type Props<K, D> = {\n children: (context: ListItemRendererContext<K, D>) => ComponentChildren;\n context: ListItemRendererContext<K, D>;\n itemDepth?: number;\n isFocused: boolean;\n isFocusRingVisible: boolean;\n isActive: boolean;\n isGridlineVisible: boolean;\n isSelected: boolean;\n isTopGridlineVisible?: boolean;\n isTabbable?: boolean;\n role: Roles;\n selectionMode: SelectionMode;\n suggestion?: 'end' | true;\n currentItemVariant?: CurrentItemVariant;\n};\n\n/**\n * The internal component used to render a single item in ListView.\n */\nexport function ListViewItem<K extends string | number, D>({\n children,\n context,\n itemDepth,\n isFocused,\n isFocusRingVisible,\n isActive,\n isGridlineVisible,\n isSelected,\n isTopGridlineVisible = false,\n isTabbable = false,\n role,\n selectionMode,\n suggestion,\n currentItemVariant\n}: Props<K, D>) {\n const rootRef = useRef<HTMLDivElement>(null);\n const roles = useMemo(() => getListViewRoles(role), [role]);\n const itemKey = context.metadata.key;\n const itemIndex = context.index;\n\n // some roles come with related aria attributes which need to be set\n const cellRoleAttributes =\n roles.cell === 'option'\n ? {\n role: roles.cell,\n 'aria-posinset': itemIndex + 1,\n 'aria-setsize': -1\n }\n : {\n role: roles.cell\n };\n\n // don't bubble Arrow Up and Down events to parent when in isTabbable mode\n // this bubbling causes the outer CollectionFocus ring to change index while in the isTabbable mode.\n const handleKeyDown = (event: KeyboardEvent) => {\n if (isTabbable && (event.key === 'ArrowDown' || event.key === 'ArrowUp')) {\n event.stopPropagation();\n }\n };\n\n const { interactionProps, applyActiveStyle, applyHoverStyle, applyPseudoHoverStyle } =\n useInteractionStyle();\n\n const variantClasses = listItemMultiVariantStyles({\n selectable: isSelectable(selectionMode, isSelected) ? 'isSelectable' : 'notSelectable',\n selected: isSelected ? 'isSelected' : 'notSelected',\n selectedSingle:\n isSelected && selectionMode === 'single' ? 'isSelectedSingle' : 'notSelectedSingle',\n needsEventsHover: applyHoverStyle ? 'isNeedsEventsHover' : 'notNeedsEventsHover',\n pseudoHover: applyPseudoHoverStyle ? 'isPseudoHover' : 'notPseudoHover',\n active: applyActiveStyle || isActive ? 'isActive' : 'notActive',\n focusHighlight:\n currentItemVariant === 'highlight' && isFocused ? 'isFocusHighlight' : 'notFocusHighlight',\n focusRingVisible:\n isFocusRingVisible && isFocused ? 'isFocusRingVisible' : 'notFocusRingVisible',\n gridlineTop: isTopGridlineVisible ? 'visible' : 'hidden',\n gridlineBottom:\n isGridlineVisible ||\n (suggestion === 'end' && !isGridlineVisible && (!isSelected || selectionMode !== 'single'))\n ? 'visible'\n : 'hidden'\n });\n const classes = classNames([variantClasses]);\n const styleInterpolations = mergeInterpolations<FlexitemProps>([\n ...Object.values(flexitemInterpolations)\n ]);\n const { class: cls, ...cellStyles } = styleInterpolations({\n flex: '1 1 auto',\n alignSelf: 'center'\n });\n const cellClasses = classNames([\n cls,\n selectionMode === 'multiple' && listItemStyles.checkboxContainer\n ]);\n\n // todo: use translated text for selector\n // note cannot put focus on gridcell div since JAWS will not read the aria-rowindex\n // correctly, so unfortunately needed another div\n return (\n <div\n aria-rowindex={role === 'grid' ? itemIndex + 1 : undefined}\n aria-level={itemDepth}\n data-oj-key={itemKey}\n class={classes}\n ref={rootRef}\n role={roles.item}\n {...(suggestion && { 'data-oj-suggestion': true })}\n {...(typeof itemKey === 'number' && { 'data-oj-key-type': 'number' })}\n {...interactionProps}>\n <div\n id={useId()}\n style={cellStyles}\n class={cellClasses}\n aria-posinset={role === 'grid' ? undefined : itemIndex + 1}\n aria-setsize={role === 'grid' ? undefined : -1}\n onKeyDown={handleKeyDown}\n aria-colindex={role === 'grid' ? 1 : undefined}\n aria-selected={selectionMode !== 'none' ? isSelected : undefined}\n {...cellRoleAttributes}>\n <TabbableModeContext.Provider value={{ isTabbable }}>\n <FocusTrap isDisabled={!isTabbable} restoreFocusRef={false}>\n {children(context)}\n </FocusTrap>\n </TabbableModeContext.Provider>\n </div>\n </div>\n );\n}\n\n/**\n * Helper method to determine whether item is selectable\n * @returns true if item is selectable (show hover effect), false otherwise\n */\nconst isSelectable = (selectionMode: SelectionMode, isItemSelected: boolean) => {\n return selectionMode !== 'none' && (selectionMode === 'multiple' || !isItemSelected);\n};\n\nexport const MemoizeListViewItem = memo(ListViewItem, (prev: any, next: any) => {\n if (prev && next) {\n return (\n prev.children === next.children &&\n prev.isFocused === next.isFocused &&\n prev.isFocusRingVisible === next.isFocusRingVisible &&\n prev.isSelected === next.isSelected &&\n prev.isTabbable === next.isTabbable &&\n prev.isActive === next.isActive &&\n prev.suggestion === next.suggestion &&\n prev.isGridlineVisible === next.isGridlineVisible &&\n prev.isTopGridlineVisible === next.isTopGridlineVisible &&\n compareListItemContext(prev.context, next.context)\n );\n }\n return false;\n});\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { ComponentChildren } from 'preact';\nimport { useState, useEffect } from 'preact/hooks';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { skeletonStyles } from './themes/ListStyles.css';\n\ntype Props = {\n /**\n * Allows to pass and access the properties from child elements\n **/\n children?: (index: number) => ComponentChildren;\n /**\n * Allows to specify number of skeletons to be rendered on initial load\n **/\n minimumCount?: number;\n};\n\n/**\n * Allows to specify the time delay for rendering the component\n **/\nconst timerValue = 50;\n\n/**\n * SkeletonContainer renders 'minimumCount' number of skeletons\n * of the variant specified from its child element - Skeleton's prop after\n * 'timerValue' ms delay\n **/\nexport function SkeletonContainer({ children, minimumCount = 1 }: Props) {\n const [isVisible, setIsVisible] = useState(false);\n\n useEffect(() => {\n setTimeout(() => {\n setIsVisible(true);\n }, timerValue);\n }, []);\n\n const containerClasses = classNames([skeletonStyles.container]);\n return isVisible && children ? (\n <div class={containerClasses} role=\"presentation\">\n {[...Array(minimumCount)].map((_element, index) => children(index))}\n </div>\n ) : null;\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { globalImages } from '#/ImageVars.css';\nimport { sparkleStyles } from './themes/ListStyles.css';\nimport { useTheme } from '#/hooks/UNSAFE_useTheme';\n\nconst SPARKLE_STYLE_CLASS = 'oj-collection-sparkle';\n\n/**\n * A sparkle component for smart suggestion indicator in ListView\n * @param sparkleHeight the height of sparkle\n */\nexport function Sparkle({ sparkleHeight }: { sparkleHeight: number }) {\n const { name } = useTheme();\n if (sparkleHeight <= 0) {\n return null;\n }\n\n const height = sparkleHeight + 'px';\n const sparkleClasses = classNames([sparkleStyles.base]);\n const containerClasses = classNames([\n sparkleStyles.container,\n SPARKLE_STYLE_CLASS,\n // TODO: this component should create separate theme definitions to only show the image in redwood\n name === 'redwood' && globalImages\n ]);\n\n return (\n <div key=\"sparkle\" class={containerClasses}>\n <div class={sparkleClasses} style={{ height }}></div>\n </div>\n );\n}\n","import { RefObject } from 'preact';\nimport { useState, useEffect, useMemo } from 'preact/hooks';\nimport { Props as ListViewProps } from '../UNSAFE_ListView';\nimport { PLACEHOLDER_STYLE_CLASS } from '../PRIVATE_VirtualizedCollection';\nimport { Metadata } from '../UNSAFE_Collection';\n\nexport const usePromotedSection = <K extends string | number, D>(\n data: ListViewProps<K, D>['data'],\n promotedSection: ListViewProps<K, D>['promotedSection'],\n rootRef: RefObject<HTMLDivElement>\n) => {\n // tracking sparkle height\n const [sparkleHeight, setSparkleHeight] = useState<number>(0);\n\n const suggestions = useMemo(\n () => data && promotedSection && findSuggestions(data.data, promotedSection.count),\n [data, promotedSection]\n );\n\n useEffect(() => {\n // update sparkleHeight only when we have suggestions\n // avoid unnecessary iterating through elements\n if (suggestions) {\n const placeholder = rootRef.current?.querySelector(\n '.' + PLACEHOLDER_STYLE_CLASS\n ) as HTMLElement;\n let height = placeholder?.offsetHeight || 0;\n const suggestionItems = rootRef.current?.querySelectorAll('[data-oj-suggestion]');\n suggestionItems?.forEach((item) => (height += (item as HTMLElement).offsetHeight));\n setSparkleHeight(height);\n }\n }, [rootRef, suggestions]);\n\n return { sparkleHeight, suggestions };\n};\n\n/**\n * A helper function that finds the data with suggestions, and\n * returns the corresponding keys\n * @param dataState\n */\nconst findSuggestions = <K, D>(data: { data: D; metadata: Metadata<K> }[], count: number) => {\n if (count === 0) {\n return null;\n }\n\n const suggestionsData = data.slice(0, count);\n return suggestionsData.reduce((suggestions, value, index) => {\n const key = value.metadata.key;\n\n if (index === count - 1) {\n suggestions.set(key, 'end');\n } else {\n suggestions.set(key, true);\n }\n\n return suggestions;\n }, new Map<K, 'end' | true>());\n};\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { FlattenedDataState } from '../UNSAFE_Collection';\nimport { Keys } from '../utils/UNSAFE_keys';\n\n/**\n * Helper function to only include keys of leaf items.\n */\nexport const excludeGroup = <K, D>(data: FlattenedDataState<K, D>, keys: Keys<K>) => {\n if (!keys.all) {\n const groups = data.data\n .filter((dataMetadata) => {\n return !dataMetadata.metadata.isLeaf;\n })\n .map((dataMetadata) => {\n return dataMetadata.metadata.key;\n });\n const leafOnly = Array.from(keys.keys.values()).filter((key: K) => {\n return !groups.includes(key);\n });\n return { ...keys, keys: new Set(leafOnly) };\n }\n return keys;\n};\n\n/**\n * A helper function to make sure specified elem is visible in the specified container\n */\nexport const scrollToVisible = (elem: Element, scroller: Element, offset: number) => {\n if (elem && scroller) {\n if ((elem as any).scrollIntoViewIfNeeded) {\n // for Safari, we'll need the non-standard scrollIntoViewIfNeeded\n (elem as any).scrollIntoViewIfNeeded();\n } else {\n elem.scrollIntoView({ block: 'nearest' });\n }\n if (offset > 0) {\n const scrollerBounds = scroller.getBoundingClientRect();\n const elemBounds = elem.getBoundingClientRect();\n const diff = scrollerBounds.top + offset - elemBounds.top;\n if (diff > 0) {\n scroller.scrollTop = scroller.scrollTop - diff;\n }\n }\n }\n};\n","import { RefObject } from 'preact';\nimport { useEffect, useCallback, useRef, useMemo } from 'preact/hooks';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { Keys } from '../utils/UNSAFE_keys';\nimport { DataState, Metadata, Range, SelectionDetail } from '../UNSAFE_Collection';\nimport { getListViewRoles } from './ListRoles';\nimport { SelectionRangeDetail, useSelection } from '../hooks/PRIVATE_useSelection';\nimport { useCurrentKey } from '../hooks/PRIVATE_useCurrentKey';\nimport { useCollectionFocusRing } from '../hooks/PRIVATE_useCollectionFocusRing';\nimport { useCollectionGestureContext } from '../hooks/PRIVATE_useCollectionGestureContext';\nimport { useItemAction } from '../hooks/PRIVATE_useItemAction';\nimport { Props as ListViewProps } from '../UNSAFE_ListView';\nimport { getPrevNextKey, findElementByKey, keyExtractor } from '../utils/PRIVATE_collectionUtils';\nimport { ITEM_SELECTOR } from './ListItem';\nimport { scrollToVisible } from './ListUtils';\n\nexport const useSelectionAndNavigation = <K extends string | number, D>(\n currentKey: ListViewProps<K, D>['currentKey'],\n selectedKeys: Keys<K>,\n selectionMode: ListViewProps<K, D>['selectionMode'] = 'none',\n onCurrentKeyChange: ListViewProps<K, D>['onCurrentKeyChange'],\n onSelectionChange: ListViewProps<K, D>['onSelectionChange'],\n onItemAction: ListViewProps<K, D>['onItemAction'],\n data: ListViewProps<K, D>['data'],\n viewportConfig: ListViewProps<K, D>['viewportConfig'],\n role: ListViewProps<K, D>['role'] = 'grid',\n scrollToVisibleOffset: ListViewProps<K, D>['scrollToVisibleOffset'],\n rootRef: RefObject<HTMLDivElement>,\n pendingSelectionCallback: (detail: SelectionRangeDetail<K>, value: Range) => void\n) => {\n const listRoles = useMemo(() => getListViewRoles(role), [role]);\n\n // tracking the anchor key which is used for shift+click selection\n const anchorKey = useRef<K | undefined>();\n\n const { currentKeyProps } = useCurrentKey(\n (element) => keyExtractor(element, ITEM_SELECTOR),\n selectionMode !== 'multiple',\n getPrevNextKey(rootRef.current, currentKey, true, ITEM_SELECTOR),\n getPrevNextKey(rootRef.current, currentKey, false, ITEM_SELECTOR),\n undefined,\n undefined,\n currentKey,\n onCurrentKeyChange\n );\n\n const [showFocusRing, focusRingProps] = useCollectionFocusRing(rootRef, ['ArrowUp', 'ArrowDown']);\n\n useEffect(() => {\n if (currentKey != null && rootRef.current) {\n const elem = findElementByKey(rootRef.current, currentKey, ITEM_SELECTOR);\n if (elem) {\n const activeDescendant = rootRef.current.getAttribute('aria-activedescendant');\n const cell = elem.querySelector(`[role=${listRoles.cell}]`);\n if (cell && activeDescendant !== cell.id) {\n // update aria-activedescendant for screenreader\n rootRef.current.setAttribute('aria-activedescendant', cell.id);\n\n const scroller = viewportConfig?.scroller();\n const offset = scrollToVisibleOffset ? scrollToVisibleOffset(rootRef.current) : 0;\n // make sure item is visible\n scrollToVisible(elem, scroller != null ? scroller : rootRef.current, offset);\n }\n }\n }\n // listen to data because the current item would re-render when the virtualizer\n // is fetching data or updating the data, i.e. the id of current item would be updated,\n // so the currentKey itself couldn't guarantee the root has latest aria-activedescendant\n }, [currentKey, data, listRoles.cell, viewportConfig, scrollToVisibleOffset, rootRef]);\n\n const handleSelectionChange = useCallback(\n (detail: SelectionDetail<K>) => {\n if (onSelectionChange) {\n if (detail.value.all === false && detail.value.keys.size > 0) {\n // during regular selection, the last key selected by a user gesture is the anchor key\n anchorKey.current = Array.from(detail.value.keys.values()).pop();\n }\n onSelectionChange(detail);\n }\n },\n [anchorKey, onSelectionChange]\n );\n\n const handleSelectionRangeChange = useCallback(\n (detail: SelectionRangeDetail<K>) => {\n if (data && onSelectionChange) {\n const value = handleSelectionRange(detail, data);\n if (Array.isArray(value)) {\n if (detail.eventType === 'shiftSpace') {\n // during range selection by shift+space, the first key selected by a user gesture is the anchor key\n anchorKey.current = detail.value.start;\n } else {\n // during range selection by shift+click/arrow keys, the last key selected by a user gesture is the anchor key\n anchorKey.current = detail.value.end;\n }\n onSelectionChange({ value: { all: false, keys: new Set(value) }, target: null });\n } else {\n pendingSelectionCallback(detail, value);\n }\n }\n },\n [data, onSelectionChange, pendingSelectionCallback]\n );\n\n const value = useCollectionGestureContext();\n\n const { selectionProps } = useSelection(\n (element: HTMLElement) => {\n if (element === rootRef.current) {\n return currentKey === undefined ? null : currentKey;\n }\n return keyExtractor(element, ITEM_SELECTOR) as K;\n },\n selectedKeys,\n selectionMode,\n false,\n 'replace',\n value === 'embedded',\n handleSelectionChange,\n anchorKey.current,\n currentKey,\n (currentKey: K | undefined, isPrev: boolean) =>\n getPrevNextKey(rootRef.current, currentKey, isPrev, ITEM_SELECTOR),\n undefined,\n (key: K) => {\n if (rootRef.current) {\n const elem = findElementByKey(rootRef.current, key, ITEM_SELECTOR);\n if (elem) {\n const scroller = viewportConfig?.scroller();\n const offset = scrollToVisibleOffset ? scrollToVisibleOffset(rootRef.current) : 0;\n scrollToVisible(elem, scroller != null ? scroller : rootRef.current, offset);\n }\n }\n },\n handleSelectionRangeChange\n );\n\n const itemActionProps = useItemAction(\n currentKey,\n data,\n onItemAction,\n ITEM_SELECTOR,\n value === 'embedded'\n );\n\n return {\n eventProps: mergeProps(currentKeyProps, focusRingProps, selectionProps, itemActionProps),\n showFocusRing,\n handleSelectionChange\n };\n};\n\nexport const handleSelectionRange = <K, D>(\n detail: SelectionRangeDetail<K>,\n dataState: DataState<K, D>\n) => {\n const keys = dataState.data.map((value: { data: D; metadata: Metadata<K> }) => {\n return value.metadata.key;\n });\n const startIndex = keys.indexOf(detail.value.start);\n const endIndex = keys.indexOf(detail.value.end);\n const minIndex = Math.min(startIndex, endIndex);\n const maxIndex = Math.max(startIndex, endIndex);\n if (minIndex === -1) {\n // return a range to fetch so we can find all the keys, maxIndex should not be -1\n return { offset: 0, count: dataState.totalSize };\n } else {\n // range of keys are in the current viewport, return them\n return keys.slice(minIndex, maxIndex + 1);\n }\n};\n","import { RefObject } from 'preact';\nimport { useCallback, useRef } from 'preact/hooks';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { Props as ListViewProps } from '../UNSAFE_ListView';\nimport { getFirstVisibleKey, keyExtractor } from '../utils/PRIVATE_collectionUtils';\nimport { isKeyDefined } from '../utils/UNSAFE_keys';\nimport { ITEM_SELECTOR } from './ListItem';\nimport { useTabbableModeSet } from '../hooks/PRIVATE_useTabbableModeSet';\nimport { findElementByKey } from '../utils/PRIVATE_collectionUtils';\nimport { scrollToVisible } from './ListUtils';\n\nexport const useFocusTabbableMode = <K extends string | number, D>(\n currentKey: ListViewProps<K, D>['currentKey'],\n onCurrentKeyChange: ListViewProps<K, D>['onCurrentKeyChange'],\n allowTabbableMode: ListViewProps<K, D>['allowTabbableMode'],\n rootRef: RefObject<HTMLDivElement>,\n viewportConfig: ListViewProps<K, D>['viewportConfig'],\n scrollToVisibleOffset: ListViewProps<K, D>['scrollToVisibleOffset']\n) => {\n const pendingCurrentKey = useRef<K>();\n\n const [isCurrentTabbableKey, tabbableModeProps] = useTabbableModeSet(\n rootRef,\n (element) => {\n // we don't want List to go into Tabbable mode when user clicks on expander\n return isExpander(element) ? null : (keyExtractor(element, ITEM_SELECTOR) as K);\n },\n currentKey,\n onCurrentKeyChange\n );\n\n const handleInitialFocus = useCallback(() => {\n if (\n rootRef.current &&\n onCurrentKeyChange &&\n (!allowTabbableMode || isCurrentTabbableKey(undefined))\n ) {\n const firstKey =\n pendingCurrentKey.current || (getFirstVisibleKey(rootRef.current, ITEM_SELECTOR) as K);\n if (isKeyDefined(firstKey)) {\n onCurrentKeyChange({ value: firstKey });\n }\n }\n }, [rootRef, onCurrentKeyChange, allowTabbableMode, isCurrentTabbableKey]);\n\n const handleFocus = useCallback(\n (event: FocusEvent) => {\n if (isExpander(event.target as HTMLElement)) {\n rootRef.current?.focus();\n const key = keyExtractor(event.target as HTMLElement, ITEM_SELECTOR);\n if (onCurrentKeyChange && isKeyDefined(key)) {\n onCurrentKeyChange({ value: key as K });\n }\n return;\n }\n if (!isKeyDefined(currentKey)) {\n onCurrentKeyChange && handleInitialFocus();\n } else if (rootRef.current) {\n // if currentKey is defined, make sure scroll the current item into view when listview regains focus\n const elem = findElementByKey(rootRef.current, currentKey as K, ITEM_SELECTOR);\n if (elem) {\n const scroller = viewportConfig?.scroller();\n const offset = scrollToVisibleOffset ? scrollToVisibleOffset(rootRef.current) : 0;\n scrollToVisible(elem, scroller != null ? scroller : rootRef.current, offset);\n }\n }\n },\n [currentKey, handleInitialFocus, onCurrentKeyChange, rootRef]\n );\n\n /**\n * Need to track pointer down element to set currentItem when initial focus happens\n */\n const handlePointerDown = useCallback((event: PointerEvent) => {\n const key = keyExtractor(event.target as HTMLElement, ITEM_SELECTOR);\n if (isKeyDefined(key)) {\n pendingCurrentKey.current = key as K;\n }\n }, []);\n\n return {\n eventProps: mergeProps(allowTabbableMode ? tabbableModeProps : {}, {\n onFocus: handleFocus,\n onPointerDown: handlePointerDown\n }),\n isCurrentTabbableKey\n };\n};\n\nconst isExpander = (elem: HTMLElement) => {\n if (elem.parentElement && elem.parentElement.classList.contains('oj-listview-expander')) {\n return true;\n }\n return false;\n};\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { RefObject } from 'preact';\nimport { useRef, useCallback, useState, useImperativeHandle } from 'preact/hooks';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { containsKey, Keys, isKeyDefined } from '../utils/UNSAFE_keys';\nimport { DataState, ItemContext, ListItemRendererContext, Range } from '../UNSAFE_Collection';\nimport { LoadMoreCollection, LOADMORE_STYLE_CLASS } from '../PRIVATE_LoadMoreCollection';\nimport { VirtualizedCollection } from '../PRIVATE_VirtualizedCollection';\nimport { ViewportConfig } from '../hooks/UNSAFE_useViewportIntersect';\nimport { ListViewItem, ITEM_SELECTOR, MemoizeListViewItem } from './ListItem';\n\nimport { SelectionRangeDetail } from '../hooks/PRIVATE_useSelection';\nimport { SkeletonContainer } from './SkeletonContainer';\nimport { Skeleton } from '../UNSAFE_Skeleton';\nimport { Flex } from '../UNSAFE_Flex';\nimport { Selector } from '../UNSAFE_Selector';\nimport { Props } from '../UNSAFE_ListView';\nimport { Sparkle } from './Sparkle';\nimport { listStyles } from './themes/ListStyles.css';\nimport { useTestId } from '../hooks/UNSAFE_useTestId';\nimport { usePromotedSection } from './usePromotedSection';\nimport { useSelectionAndNavigation, handleSelectionRange } from './useSelectionAndNavigation';\nimport { useFocusTabbableMode } from './useFocusTabbableMode';\nimport { Inset } from '../UNSAFE_Inset';\n// TODO: add this import due to issue JET-67485, need to update once Stable is introduced\nimport './themes/redwood/ListBaseTheme.css';\n\n/**\n * Component that renders items as a flat list.\n * In order to maximize performance, only items that are visible in the viewport are rendered.\n */\nexport function List<K extends string | number, D>({\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n allowTabbableMode = true,\n children,\n currentKey,\n data,\n gridlines,\n loadingIndicator = defaultLoadingIndicator,\n onCurrentKeyChange,\n onLoadRange,\n onSelectionChange,\n onItemAction,\n rangeExtractor,\n role = 'grid',\n selectedKeys = emptyKeys as Keys<K>,\n selectionMode = 'none',\n viewportConfig,\n currentItemVariant = 'none',\n promotedSection,\n isVirtualized = false,\n customItemRenderer,\n scrollToVisibleOffset,\n testId,\n scrollerRef,\n reorderProps,\n contextMenuTriggerProps,\n ...props\n}: Props<K, D>) {\n const rootRef = useRef<HTMLDivElement>(null);\n\n // tracking pending selection key that is not in current data\n const pendingSelection = useRef<{ detail: SelectionRangeDetail<K>; range: Range }>();\n\n const [active, setActive] = useState<boolean>(false);\n\n const showGridline = (index: number) => {\n // show bottom gridlines for each item, and for the last item if specified\n return (\n gridlines?.item === 'visible' &&\n (index + 1 !== data?.totalSize || gridlines?.bottom === 'visible')\n );\n };\n\n const showGridlineTop = () => {\n // show the top gridline for the first item\n return gridlines?.item === 'visible' && gridlines?.top === 'visible';\n };\n\n const ariaMultiSelectable = selectionMode === 'none' ? undefined : selectionMode === 'multiple';\n const ariaRowCount =\n data === null ? undefined : data.sizePrecision === 'exact' ? data.totalSize : -1;\n\n const classes = classNames([listStyles.base]);\n\n const pendingSelectionCallback = useCallback(\n (detail: SelectionRangeDetail<K>, value: Range) => {\n if (data) {\n pendingSelection.current = {\n detail: detail,\n range: { offset: data.offset, count: data.data.length }\n };\n onLoadRange(value);\n }\n },\n [data, onLoadRange]\n );\n const { eventProps, showFocusRing, handleSelectionChange } = useSelectionAndNavigation(\n currentKey,\n selectedKeys,\n selectionMode,\n onCurrentKeyChange,\n onSelectionChange,\n onItemAction,\n data,\n viewportConfig,\n role,\n scrollToVisibleOffset,\n rootRef,\n pendingSelectionCallback\n );\n\n const { eventProps: focusTabbableProps, isCurrentTabbableKey } = useFocusTabbableMode(\n currentKey,\n onCurrentKeyChange,\n allowTabbableMode,\n rootRef,\n viewportConfig,\n scrollToVisibleOffset\n );\n\n if (data && pendingSelection.current !== undefined && onSelectionChange) {\n const keys = handleSelectionRange(pendingSelection.current.detail, data);\n if (Array.isArray(keys)) {\n onSelectionChange({ value: { all: false, keys: new Set(keys) }, target: null });\n }\n const range = pendingSelection.current\n ? pendingSelection.current.range\n : { offset: data.offset, count: data.data.length };\n data = adjustDataState(data, range);\n pendingSelection.current = undefined;\n onLoadRange(range);\n }\n\n const { sparkleHeight, suggestions } = usePromotedSection(data, promotedSection, rootRef);\n\n // TODO: check suggestions before Sparkle would cause a scrolling issue\n const sparkleIndicator = <Sparkle sparkleHeight={sparkleHeight}></Sparkle>;\n\n // Collection generic is of this type\n type DataStateData = DataState<K, D>['data'][number];\n\n // returns an ListItemContext based on ItemContext (added metadata and selector)\n // note the type for ItemContext, this is the context coming from Collection\n const getItemContext = useCallback(\n (context: ItemContext<DataStateData>) => {\n const dataStateData = context.data;\n const selectorRenderer =\n selectionMode === 'multiple'\n ? () => (\n <Selector\n onChange={handleSelectionChange}\n rowKey={dataStateData.metadata.key}\n selectedKeys={selectedKeys}></Selector>\n )\n : undefined;\n\n return {\n index: context.index,\n data: dataStateData.data,\n metadata: dataStateData.metadata,\n selector: selectorRenderer\n };\n },\n [selectionMode, selectedKeys, handleSelectionChange]\n );\n\n const ItemComponent = isVirtualized ? ListViewItem : MemoizeListViewItem;\n\n const childrenComponent = (context: ItemContext<DataStateData>) => {\n const listItemContext = getItemContext(context);\n const suggestion = suggestions?.get(listItemContext.metadata.key);\n const isTabbable = allowTabbableMode && isCurrentTabbableKey(listItemContext.metadata.key);\n const isFocused = currentKey === listItemContext.metadata.key && !isTabbable;\n const isActive = isFocused && active;\n const isSelected = containsKey(selectedKeys, listItemContext.metadata.key);\n const isFocusRingVisible = isFocused && showFocusRing;\n const listItemFunc = (ctx: ListItemRendererContext<K, D>, otherProps?: any) => (\n <ItemComponent\n key={listItemContext.metadata.key}\n context={ctx}\n isFocused={isFocused}\n isFocusRingVisible={isFocusRingVisible}\n isActive={isActive}\n isGridlineVisible={showGridline(listItemContext.index)}\n isSelected={isSelected}\n isTabbable={allowTabbableMode && isCurrentTabbableKey(listItemContext.metadata.key)}\n role={role}\n selectionMode={selectionMode}\n currentItemVariant={currentItemVariant}\n {...(suggestion && { suggestion })}\n {...(listItemContext.index === 0 && { isTopGridlineVisible: showGridlineTop() })}\n {...otherProps}>\n {children}\n </ItemComponent>\n );\n\n // if customItemRenderer is specified (ExpandableList and GroupedList)\n // create a custom context with additional info including a function\n // that helps create the default item component\n if (customItemRenderer) {\n const customRendererContext = {\n listItemContext,\n isFocused,\n isFocusRingVisible,\n isSelected,\n isTabbable,\n isActive,\n defaultListItem: listItemFunc\n };\n return customItemRenderer(customRendererContext);\n }\n return listItemFunc(listItemContext);\n };\n\n viewportConfig = getViewportConfig(rootRef, viewportConfig);\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if (event.key === ' ' && isKeyDefined(currentKey) && selectionMode !== 'none') {\n setActive(true);\n }\n },\n [currentKey, selectionMode, setActive]\n );\n\n const handleKeyUp = useCallback(() => {\n setActive(false);\n }, [setActive]);\n\n useImperativeHandle(scrollerRef!, () => rootRef.current);\n\n // if data is not specified, listview should show loading indicator\n // todo: replace placeholder with actual SkeletonContainer component (Ash is working on)\n const testIdProps = useTestId(testId);\n return (\n <div\n {...mergeProps(\n eventProps,\n focusTabbableProps,\n contextMenuTriggerProps || {},\n reorderProps || {},\n {\n onKeyDown: handleKeyDown,\n onKeyUp: handleKeyUp\n },\n props\n )}\n {...testIdProps}\n role={role}\n aria-rowcount={role === 'grid' ? ariaRowCount : undefined}\n aria-colcount={role === 'grid' ? 1 : undefined}\n ref={rootRef}\n class={classes}\n tabIndex={0}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-multiselectable={ariaMultiSelectable}>\n {data == null ? (\n loadingIndicator\n ) : isVirtualized ? (\n <VirtualizedCollection\n data={data}\n itemSelector={ITEM_SELECTOR}\n loadMoreIndicator={defaultLoadMoreIndicator}\n onLoadRange={onLoadRange}\n rangeExtractor={rangeExtractor}\n suggestions={sparkleIndicator}\n viewportConfig={viewportConfig}>\n {childrenComponent}\n </VirtualizedCollection>\n ) : (\n <LoadMoreCollection\n data={data.data}\n loadMoreIndicator={defaultLoadMoreIndicator}\n hasMore={data.sizePrecision === 'atLeast' && data.data.length <= data.totalSize}\n onLoadMore={() => {\n data && onLoadRange({ offset: 0, count: data.data.length + 25 });\n }}\n suggestions={sparkleIndicator}\n viewportConfig={viewportConfig}>\n {childrenComponent}\n </LoadMoreCollection>\n )}\n </div>\n );\n}\n\nconst getViewportConfig = (rootRef: RefObject<HTMLElement>, config?: ViewportConfig) => {\n return (\n config ?? {\n scroller: () => {\n return rootRef.current;\n }\n }\n );\n};\n\nconst emptyKeys = { all: false, keys: new Set() };\n\nconst defaultLoadingIndicator = (\n <SkeletonContainer minimumCount={25}>\n {() => {\n return (\n <Inset variant=\"listview\">\n <Flex height=\"6x\" align=\"center\">\n <Skeleton height=\"4x\" />\n </Flex>\n </Inset>\n );\n }}\n </SkeletonContainer>\n);\n\nconst defaultLoadMoreIndicator = (\n <div class={LOADMORE_STYLE_CLASS}>\n <SkeletonContainer minimumCount={3}>\n {() => {\n return (\n <Inset variant=\"listview\">\n <Flex height=\"6x\" align=\"center\">\n <Skeleton height=\"4x\" />\n </Flex>\n </Inset>\n );\n }}\n </SkeletonContainer>\n </div>\n);\n\n/**\n * Adjust the DataState as needed if it contains more than needed for the specified range\n */\nconst adjustDataState = <K, D>(dataState: DataState<K, D>, range: Range | null) => {\n if (range) {\n // prevent range offset from being larger than the data state\n const safeRangeOffset = Math.min(range.offset, dataState.offset + dataState.totalSize);\n const diff = safeRangeOffset - dataState.offset;\n if (diff > 0) {\n dataState = {\n offset: safeRangeOffset,\n data: dataState.data.slice(diff, diff + range.count),\n totalSize: dataState.totalSize,\n sizePrecision: dataState.sizePrecision\n };\n }\n }\n return dataState;\n};\n"],"names":["getListViewRoles","ariaRole","list","item","cell","ITEM_SELECTOR","ListViewItem","children","context","itemDepth","isFocused","isFocusRingVisible","isActive","isGridlineVisible","isSelected","isTopGridlineVisible","isTabbable","role","selectionMode","suggestion","currentItemVariant","rootRef","useRef","roles","useMemo","itemKey","metadata","key","itemIndex","index","cellRoleAttributes","interactionProps","applyActiveStyle","applyHoverStyle","applyPseudoHoverStyle","useInteractionStyle","variantClasses","listItemMultiVariantStyles","selectable","isSelectable","selected","selectedSingle","needsEventsHover","pseudoHover","active","focusHighlight","focusRingVisible","gridlineTop","gridlineBottom","classes","classNames","styleInterpolations","mergeInterpolations","Object","values","flexitemInterpolations","class","cls","cellStyles","flex","alignSelf","cellClasses","listItemStyles","checkboxContainer","_jsx","jsx","undefined","ref","id","useId","style","onKeyDown","event","stopPropagation","TabbableModeContext","Provider","value","FocusTrap","isDisabled","restoreFocusRef","isItemSelected","MemoizeListViewItem","memo","prev","next","compareListItemContext","SkeletonContainer","minimumCount","isVisible","setIsVisible","useState","useEffect","setTimeout","containerClasses","skeletonStyles","container","Array","map","_element","SPARKLE_STYLE_CLASS","Sparkle","sparkleHeight","name","useTheme","height","sparkleClasses","sparkleStyles","base","globalImages","findSuggestions","data","count","slice","reduce","suggestions","set","Map","scrollToVisible","elem","scroller","offset","scrollIntoViewIfNeeded","scrollIntoView","block","scrollerBounds","getBoundingClientRect","elemBounds","diff","top","scrollTop","handleSelectionRange","detail","dataState","keys","startIndex","indexOf","start","endIndex","end","minIndex","Math","min","maxIndex","max","totalSize","isExpander","parentElement","classList","contains","getViewportConfig","config","current","emptyKeys","all","Set","defaultLoadingIndicator","Inset","variant","Flex","align","Skeleton","defaultLoadMoreIndicator","LOADMORE_STYLE_CLASS","adjustDataState","range","safeRangeOffset","sizePrecision","ariaLabel","ariaLabelledBy","allowTabbableMode","currentKey","gridlines","loadingIndicator","onCurrentKeyChange","onLoadRange","onSelectionChange","onItemAction","rangeExtractor","selectedKeys","viewportConfig","promotedSection","isVirtualized","customItemRenderer","scrollToVisibleOffset","testId","scrollerRef","reorderProps","contextMenuTriggerProps","props","pendingSelection","setActive","ariaMultiSelectable","ariaRowCount","listStyles","pendingSelectionCallback","useCallback","length","eventProps","showFocusRing","handleSelectionChange","listRoles","anchorKey","currentKeyProps","useCurrentKey","element","keyExtractor","getPrevNextKey","focusRingProps","useCollectionFocusRing","findElementByKey","activeDescendant","getAttribute","querySelector","setAttribute","size","from","pop","handleSelectionRangeChange","isArray","eventType","target","useCollectionGestureContext","selectionProps","useSelection","isPrev","itemActionProps","useItemAction","mergeProps","useSelectionAndNavigation","focusTabbableProps","isCurrentTabbableKey","pendingCurrentKey","tabbableModeProps","useTabbableModeSet","handleInitialFocus","firstKey","getFirstVisibleKey","isKeyDefined","handleFocus","focus","handlePointerDown","onFocus","onPointerDown","useFocusTabbableMode","setSparkleHeight","placeholder","PLACEHOLDER_STYLE_CLASS","offsetHeight","suggestionItems","querySelectorAll","forEach","usePromotedSection","sparkleIndicator","getItemContext","dataStateData","selectorRenderer","Selector","onChange","rowKey","selector","ItemComponent","childrenComponent","listItemContext","get","containsKey","listItemFunc","ctx","otherProps","bottom","defaultListItem","handleKeyDown","handleKeyUp","useImperativeHandle","testIdProps","useTestId","onKeyUp","tabIndex","VirtualizedCollection","itemSelector","loadMoreIndicator","LoadMoreCollection","hasMore","onLoadMore","groups","filter","dataMetadata","isLeaf","leafOnly","includes"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- define(['exports', 'preact/jsx-runtime', 'preact/compat', 'preact/hooks', './LayerHost-eab40731', 'css!./DragAndDropStyles.styles.css', './useReorderableItem-d977f935', 'css!./ReorderableItemStyles.styles.css', './HiddenAccessible-037ef42d', './collectionUtils-6740111c', './classNames-08d99695', './UNSAFE_ListView/themes/ListViewStyles.css', './mergeProps-bcfa6a92', './List-88a7bee6', './Menu-51409b28', './MenuItem-644f8619', 'preact', './useTooltipControlled-abf886f2', 'css!./IconStyle.styles.css', './SelectMenuGroupContext-67f24a8f', './logger-0f873e29', './UNSAFE_Separator/themes/SeparatorStyles.css', 'css!./MenuSeparatorStyles.styles.css', 'module', './UNSAFE_Menu/themes/redwood/MenuSeparatorVariants.css', './useItemAction-66d976c4', './useContextMenuGesture-06cf28ca'], (function(e,r,t,o,n,s,l,c,i,a,u,d,f,y,g,m,p,x,R,h,C,S,I,b,M,K,v){"use strict";const E=(e,r)=>{if(null!=e){const t=e.querySelectorAll("[role='row']");if(t.length>r)return a.getKey(t[r])}return null};function P(e,r){const t=Math.abs(null==r?e.scrollTop:r),o={y:t,key:void 0,offsetY:void 0};let n=0;const s=e.querySelectorAll("[role='row']");if(s.length>0&&0===t)return o.key=E(e,0),o.offsetY=0,o;for(let r=0;r<s.length;r++){const l=s[r].getBoundingClientRect().height;if(n+=l,t<n){o.key=E(e,r),o.offsetY=l+t-n;break}}return o}function T(e,r){const t=function(e,r){if(null!=r){let t,o=!1;if(null!=r.key?(o=!0,t=r.key):null!=r.offsetY&&null==r.y&&(o=!0,t=P(e).key),o){if(null!=t){let o=0;const n=e.querySelectorAll("[role ='row']");for(let e=0;e<n.length;e++){if(t===a.getKey(n[e]))return o+(null!=r.offsetY?r.offsetY:0);o+=n[e].getBoundingClientRect().height}}}else if(null!=r.y)return r.y}return}(e,r);e.scrollTop=null!=t?t:0}const L=t.memo((function({currentKey:e,children:t,dragKey:n,setDragKey:s,onReorder:c,rootRef:i,itemKey:f}){const y=o.useRef(null),g={itemOverlayFront:d.styles.reorderableItemOverlayFront,itemOverlayRear:d.styles.reorderableItemOverlayRear,itemDragger:d.styles.reorderableItemDragger},m=o.useCallback((e=>{e.dataTransfer?.setData("text/listview-items-key",JSON.stringify(f))}),[f]),{rootProps:p,isDragged:x,overlayZoneBeforeProps:R,overlayZoneAfterProps:h}=l.useReorderableItem({currentKey:e,isDisabled:!c,draggable:!!c,dragKey:n,setDragKey:s,onReorder:c,rootRef:i,ref:y,getItem:()=>y?.current?.closest(a.ITEM_SELECTOR),setTransferData:m,itemStyles:g,itemSelector:a.ITEM_SELECTOR,isVertical:!0}),C=u.classNames([p?.class,d.styles.reorderableItemDnd]);return r.jsxs("div",{...p,draggable:!1,class:C,children:[t,!x&&n&&r.jsxs(r.Fragment,{children:[r.jsx("div",{...R}),r.jsx("div",{...h})]})]})}),((e,r)=>!(!e||!r)&&(e?.children===r?.children&&e?.currentKey===r?.currentKey&&e?.dragKey===r?.dragKey)));function w({contextMenuConfig:e,contextMenuContext:t,...o}){const n=e.accessibleLabel;return r.jsx(r.Fragment,{children:r.jsx(g.Menu,{...o,...n&&{"aria-label":n},children:o.isOpen&&e.itemsRenderer(t)})})}const O={mouse:{initialFocus:"menu",placement:"bottom-start",offsetValue:0},keyboard:{initialFocus:"firstItem",placement:"bottom-start",offsetValue:0},touch:{initialFocus:"menu",placement:"end",offsetValue:40}},k={isOpen:!1,initialFocus:"menu",placement:"bottom-start",offsetValue:0,anchorRef:{current:null}},D=t.forwardRef(((e,t)=>{const{currentKey:n,contextMenuConfig:s,onCurrentKeyChange:c}=e,u=o.useRef(),d=o.useRef(null),g=e.data?e.data.map((r=>({data:r,metadata:{key:e.getRowKey(r)}}))):null,m=e.onLoadMore?e.onLoadMore:()=>{},p=g?{offset:0,data:g,sizePrecision:e.hasMore?"atLeast":"exact",totalSize:g.length}:null;o.useImperativeHandle(t,(()=>({getScrollPosition:()=>d.current?P(d.current):{y:0}}))),o.useLayoutEffect((()=>{d.current&&u.current!==e.scrollPositionOverride&&(T(d.current,e.scrollPositionOverride),u.current=e.scrollPositionOverride)}),[e.scrollPositionOverride]);const x=null!=e.onReorder,{reorderProps:R,reorderItemProps:h,reorderContext:C,reorderInstructionsId:S,reorderInstructions:I}=(({currentKey:e,onReorder:r,rootRef:t,viewportConfig:n})=>{const s=null!=r,[c,i]=o.useState(void 0),{reorderProps:u,reorderContext:d,reorderInstructionsId:g,reorderInstructions:m}=l.useReorderable({onReorder:r,rootRef:t,itemSelector:a.ITEM_SELECTOR,isDisabled:!s,columns:1}),p=o.useRef(!1);return o.useEffect((()=>{if(s&&p.current){const r=t.current,o=a.findElementByKey(r,e,a.ITEM_SELECTOR);if(o){const e=n?.scroller()||r;y.scrollToVisible(o,e,0),p.current=!1}}})),s?{reorderProps:f.mergeProps({onKeyDown:e=>{s&&("ArrowUp"===e.key||"ArrowDown"===e.key)&&(e.metaKey||e.ctrlKey)&&e.shiftKey&&(p.current=!0,u.onKeyDown?.(e))},onDragOver:e=>{void 0!==c&&(p.current=!1,a.dragToScroll(e,void 0!==c,t.current))}}),reorderItemProps:{currentKey:e,dragKey:c,setDragKey:i,onReorder:r,rootRef:t},reorderContext:d,reorderInstructionsId:g,reorderInstructions:m}:{reorderProps:u,reorderContext:d,reorderInstructionsId:g,reorderInstructions:m}})({currentKey:e.currentKey,onReorder:e.onReorder,rootRef:d,viewportConfig:e.viewportConfig}),{triggerProps:b,menuProps:M,contextMenuContext:E}=((e,r,t,n,s)=>{const[l,c]=o.useState(),[i,u]=o.useState(k),{triggerProps:d}=v.useContextMenuGesture((({gesture:r,anchor:o,target:l})=>{let i=o;if("keyboard"===r){i=a.findElementByKey(s.current,t,a.ITEM_SELECTOR)||o;const r=K.findItemContext(t,e);c(r)}else{const r=a.keyExtractor(l,a.ITEM_SELECTOR),t=K.findItemContext(r,e);c(t),n?.({value:r})}u({...O[r],anchorRef:{current:i},isOpen:!0})}),{isDisabled:!r}),f=o.useCallback((e=>{"dismissed"!==e.reason&&"itemAction"!==e.reason||s.current?.focus({preventScroll:!0}),u({...k})}),[s]);return{menuProps:{...i,onClose:f},onClose:f,contextMenuContext:l,triggerProps:d}})(p,s,n,c,d);return x&&h?r.jsxs(r.Fragment,{children:[r.jsxs(l.ReorderableContext.Provider,{value:C,children:[r.jsx(y.List,{...e,contextMenuTriggerProps:b,reorderProps:R,onLoadRange:m,scrollerRef:d,data:p,children:t=>r.jsx(L,{...h,itemKey:t.metadata.key,children:e.children(t)})}),r.jsx("span",{id:S,children:r.jsx(i.HiddenAccessible,{children:I})})]}),s&&r.jsx(w,{...M,contextMenuConfig:s,contextMenuContext:E})]}):r.jsxs(r.Fragment,{children:[r.jsx(y.List,{...e,onLoadRange:m,scrollerRef:d,data:p,contextMenuTriggerProps:b,children:e.children}),s&&r.jsx(w,{...M,contextMenuConfig:s,contextMenuContext:E})]})}));e.ListView=D}));
2
- //# sourceMappingURL=ListView-6739207e.js.map
1
+ define(['exports', 'preact/jsx-runtime', 'preact/compat', 'preact/hooks', './LayerHost-eab40731', 'css!./DragAndDropStyles.styles.css', './useReorderableItem-d977f935', 'css!./ReorderableItemStyles.styles.css', './HiddenAccessible-037ef42d', './collectionUtils-6740111c', './classNames-08d99695', './UNSAFE_ListView/themes/ListViewStyles.css', './mergeProps-bcfa6a92', './List-5958c802', './Menu-51409b28', './MenuItem-644f8619', 'preact', './useTooltipControlled-abf886f2', 'css!./IconStyle.styles.css', './SelectMenuGroupContext-67f24a8f', './logger-0f873e29', './UNSAFE_Separator/themes/SeparatorStyles.css', 'css!./MenuSeparatorStyles.styles.css', 'module', './UNSAFE_Menu/themes/redwood/MenuSeparatorVariants.css', './useItemAction-66d976c4', './useContextMenuGesture-06cf28ca'], (function(e,r,t,o,n,s,l,c,i,a,u,d,f,y,g,m,p,x,R,h,C,S,I,b,M,K,v){"use strict";const E=(e,r)=>{if(null!=e){const t=e.querySelectorAll("[role='row']");if(t.length>r)return a.getKey(t[r])}return null};function P(e,r){const t=Math.abs(null==r?e.scrollTop:r),o={y:t,key:void 0,offsetY:void 0};let n=0;const s=e.querySelectorAll("[role='row']");if(s.length>0&&0===t)return o.key=E(e,0),o.offsetY=0,o;for(let r=0;r<s.length;r++){const l=s[r].getBoundingClientRect().height;if(n+=l,t<n){o.key=E(e,r),o.offsetY=l+t-n;break}}return o}function T(e,r){const t=function(e,r){if(null!=r){let t,o=!1;if(null!=r.key?(o=!0,t=r.key):null!=r.offsetY&&null==r.y&&(o=!0,t=P(e).key),o){if(null!=t){let o=0;const n=e.querySelectorAll("[role ='row']");for(let e=0;e<n.length;e++){if(t===a.getKey(n[e]))return o+(null!=r.offsetY?r.offsetY:0);o+=n[e].getBoundingClientRect().height}}}else if(null!=r.y)return r.y}return}(e,r);e.scrollTop=null!=t?t:0}const L=t.memo((function({currentKey:e,children:t,dragKey:n,setDragKey:s,onReorder:c,rootRef:i,itemKey:f}){const y=o.useRef(null),g={itemOverlayFront:d.styles.reorderableItemOverlayFront,itemOverlayRear:d.styles.reorderableItemOverlayRear,itemDragger:d.styles.reorderableItemDragger},m=o.useCallback((e=>{e.dataTransfer?.setData("text/listview-items-key",JSON.stringify(f))}),[f]),{rootProps:p,isDragged:x,overlayZoneBeforeProps:R,overlayZoneAfterProps:h}=l.useReorderableItem({currentKey:e,isDisabled:!c,draggable:!!c,dragKey:n,setDragKey:s,onReorder:c,rootRef:i,ref:y,getItem:()=>y?.current?.closest(a.ITEM_SELECTOR),setTransferData:m,itemStyles:g,itemSelector:a.ITEM_SELECTOR,isVertical:!0}),C=u.classNames([p?.class,d.styles.reorderableItemDnd]);return r.jsxs("div",{...p,draggable:!1,class:C,children:[t,!x&&n&&r.jsxs(r.Fragment,{children:[r.jsx("div",{...R}),r.jsx("div",{...h})]})]})}),((e,r)=>!(!e||!r)&&(e?.children===r?.children&&e?.currentKey===r?.currentKey&&e?.dragKey===r?.dragKey)));function w({contextMenuConfig:e,contextMenuContext:t,...o}){const n=e.accessibleLabel;return r.jsx(r.Fragment,{children:r.jsx(g.Menu,{...o,...n&&{"aria-label":n},children:o.isOpen&&e.itemsRenderer(t)})})}const O={mouse:{initialFocus:"menu",placement:"bottom-start",offsetValue:0},keyboard:{initialFocus:"firstItem",placement:"bottom-start",offsetValue:0},touch:{initialFocus:"menu",placement:"end",offsetValue:40}},k={isOpen:!1,initialFocus:"menu",placement:"bottom-start",offsetValue:0,anchorRef:{current:null}},D=t.forwardRef(((e,t)=>{const{currentKey:n,contextMenuConfig:s,onCurrentKeyChange:c}=e,u=o.useRef(),d=o.useRef(null),g=e.data?e.data.map((r=>({data:r,metadata:{key:e.getRowKey(r)}}))):null,m=e.onLoadMore?e.onLoadMore:()=>{},p=g?{offset:0,data:g,sizePrecision:e.hasMore?"atLeast":"exact",totalSize:g.length}:null;o.useImperativeHandle(t,(()=>({getScrollPosition:()=>d.current?P(d.current):{y:0}}))),o.useLayoutEffect((()=>{d.current&&u.current!==e.scrollPositionOverride&&(T(d.current,e.scrollPositionOverride),u.current=e.scrollPositionOverride)}),[e.scrollPositionOverride]);const x=null!=e.onReorder,{reorderProps:R,reorderItemProps:h,reorderContext:C,reorderInstructionsId:S,reorderInstructions:I}=(({currentKey:e,onReorder:r,rootRef:t,viewportConfig:n})=>{const s=null!=r,[c,i]=o.useState(void 0),{reorderProps:u,reorderContext:d,reorderInstructionsId:g,reorderInstructions:m}=l.useReorderable({onReorder:r,rootRef:t,itemSelector:a.ITEM_SELECTOR,isDisabled:!s,columns:1}),p=o.useRef(!1);return o.useEffect((()=>{if(s&&p.current){const r=t.current,o=a.findElementByKey(r,e,a.ITEM_SELECTOR);if(o){const e=n?.scroller()||r;y.scrollToVisible(o,e,0),p.current=!1}}})),s?{reorderProps:f.mergeProps({onKeyDown:e=>{s&&("ArrowUp"===e.key||"ArrowDown"===e.key)&&(e.metaKey||e.ctrlKey)&&e.shiftKey&&(p.current=!0,u.onKeyDown?.(e))},onDragOver:e=>{void 0!==c&&(p.current=!1,a.dragToScroll(e,void 0!==c,t.current))}}),reorderItemProps:{currentKey:e,dragKey:c,setDragKey:i,onReorder:r,rootRef:t},reorderContext:d,reorderInstructionsId:g,reorderInstructions:m}:{reorderProps:u,reorderContext:d,reorderInstructionsId:g,reorderInstructions:m}})({currentKey:e.currentKey,onReorder:e.onReorder,rootRef:d,viewportConfig:e.viewportConfig}),{triggerProps:b,menuProps:M,contextMenuContext:E}=((e,r,t,n,s)=>{const[l,c]=o.useState(),[i,u]=o.useState(k),{triggerProps:d}=v.useContextMenuGesture((({gesture:r,anchor:o,target:l})=>{let i=o;if("keyboard"===r){i=a.findElementByKey(s.current,t,a.ITEM_SELECTOR)||o;const r=K.findItemContext(t,e);c(r)}else{const r=a.keyExtractor(l,a.ITEM_SELECTOR),t=K.findItemContext(r,e);c(t),n?.({value:r})}u({...O[r],anchorRef:{current:i},isOpen:!0})}),{isDisabled:!r}),f=o.useCallback((e=>{"dismissed"!==e.reason&&"itemAction"!==e.reason||s.current?.focus({preventScroll:!0}),u({...k})}),[s]);return{menuProps:{...i,onClose:f},onClose:f,contextMenuContext:l,triggerProps:d}})(p,s,n,c,d);return x&&h?r.jsxs(r.Fragment,{children:[r.jsxs(l.ReorderableContext.Provider,{value:C,children:[r.jsx(y.List,{...e,contextMenuTriggerProps:b,reorderProps:R,onLoadRange:m,scrollerRef:d,data:p,children:t=>r.jsx(L,{...h,itemKey:t.metadata.key,children:e.children(t)})}),r.jsx("span",{id:S,children:r.jsx(i.HiddenAccessible,{children:I})})]}),s&&r.jsx(w,{...M,contextMenuConfig:s,contextMenuContext:E})]}):r.jsxs(r.Fragment,{children:[r.jsx(y.List,{...e,onLoadRange:m,scrollerRef:d,data:p,contextMenuTriggerProps:b,children:e.children}),s&&r.jsx(w,{...M,contextMenuConfig:s,contextMenuContext:E})]})}));e.ListView=D}));
2
+ //# sourceMappingURL=ListView-27d10b67.js.map