@oracle/oraclejet-preact 18.0.3 → 18.0.5

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 (624) hide show
  1. package/amd/{BaseCardView-ab799b69.js → BaseCardView-70b177ed.js} +2 -2
  2. package/amd/{BaseCardView-ab799b69.js.map → BaseCardView-70b177ed.js.map} +1 -1
  3. package/amd/CardFlexView-bb5c4369.js +2 -0
  4. package/amd/{CardFlexView-296f97f5.js.map → CardFlexView-bb5c4369.js.map} +1 -1
  5. package/amd/{CardGridView-054ffc3f.js → CardGridView-c28ff2f7.js} +2 -2
  6. package/amd/{CardGridView-054ffc3f.js.map → CardGridView-c28ff2f7.js.map} +1 -1
  7. package/amd/CheckboxSetContext-2e486ea8.js +2 -0
  8. package/amd/CheckboxSetContext-2e486ea8.js.map +1 -0
  9. package/amd/ExpandableList-dd3a05b4.js +1 -1
  10. package/amd/GroupLoadingIndicator-6b2ab709.js +1 -1
  11. package/amd/{Indexer-1531dbc3.js → Indexer-357554c4.js} +2 -2
  12. package/amd/{Indexer-1531dbc3.js.map → Indexer-357554c4.js.map} +1 -1
  13. package/amd/{LineAreaChart-2f4be408.js → LineAreaChart-b4acee62.js} +2 -2
  14. package/amd/{LineAreaChart-2f4be408.js.map → LineAreaChart-b4acee62.js.map} +1 -1
  15. package/amd/List-04c4fed0.js +2 -0
  16. package/amd/{List-0b764e84.js.map → List-04c4fed0.js.map} +1 -1
  17. package/amd/{ListView-5bb45f81.js → ListView-bf740071.js} +2 -2
  18. package/amd/{ListView-5bb45f81.js.map → ListView-bf740071.js.map} +1 -1
  19. package/amd/LoadMoreCollection-a6adbc3f.js +2 -0
  20. package/amd/{LoadMoreCollection-83413a59.js.map → LoadMoreCollection-a6adbc3f.js.map} +1 -1
  21. package/amd/NavigationListItem-021b2d58.js +2 -0
  22. package/amd/{NavigationListItem-044a79fd.js.map → NavigationListItem-021b2d58.js.map} +1 -1
  23. package/amd/{OverflowTabBar-339f34cf.js → OverflowTabBar-ea3a4742.js} +2 -2
  24. package/amd/{OverflowTabBar-339f34cf.js.map → OverflowTabBar-ea3a4742.js.map} +1 -1
  25. package/amd/{OverflowTabBarItem-c59db4a2.js → OverflowTabBarItem-763773c9.js} +2 -2
  26. package/amd/{OverflowTabBarItem-c59db4a2.js.map → OverflowTabBarItem-763773c9.js.map} +1 -1
  27. package/amd/PRIVATE_BaseCardView.js +1 -1
  28. package/amd/PRIVATE_List.js +1 -1
  29. package/amd/PRIVATE_LoadMoreCollection.js +1 -1
  30. package/amd/PRIVATE_SelectCommon.js +1 -1
  31. package/amd/PRIVATE_Table.js +1 -1
  32. package/amd/PRIVATE_VirtualizedCollection.js +1 -1
  33. package/amd/{SelectMultiple-7e9bd455.js → SelectMultiple-e3a6732b.js} +2 -2
  34. package/amd/{SelectMultiple-7e9bd455.js.map → SelectMultiple-e3a6732b.js.map} +1 -1
  35. package/amd/{SelectSingle-466bcd67.js → SelectSingle-9d0dca8f.js} +2 -2
  36. package/amd/{SelectSingle-466bcd67.js.map → SelectSingle-9d0dca8f.js.map} +1 -1
  37. package/amd/{Table-87f7e3c4.js → Table-31cc83c6.js} +2 -2
  38. package/amd/{Table-87f7e3c4.js.map → Table-31cc83c6.js.map} +1 -1
  39. package/amd/{TableView-2b884e2c.js → TableView-ab5d0c12.js} +2 -2
  40. package/amd/{TableView-2b884e2c.js.map → TableView-ab5d0c12.js.map} +1 -1
  41. package/amd/TextArea-a7a3d82f.js +2 -0
  42. package/amd/TextArea-a7a3d82f.js.map +1 -0
  43. package/amd/TextAreaAutosize-9cd2c1e8.js +2 -0
  44. package/amd/{TextAreaAutosize-81449e46.js.map → TextAreaAutosize-9cd2c1e8.js.map} +1 -1
  45. package/amd/Theme-redwood/theme.css +225 -225
  46. package/amd/Theme-stable/theme.css +161 -161
  47. package/amd/UNSAFE_CardFlexView.js +1 -1
  48. package/amd/UNSAFE_CardGridView.js +1 -1
  49. package/amd/UNSAFE_CheckboxItem.js +1 -1
  50. package/amd/UNSAFE_CheckboxItem.js.map +1 -1
  51. package/amd/UNSAFE_CheckboxSet.js +1 -1
  52. package/amd/UNSAFE_CheckboxSet.js.map +1 -1
  53. package/amd/UNSAFE_ExpandableList.js +1 -1
  54. package/amd/UNSAFE_Indexer.js +1 -1
  55. package/amd/UNSAFE_LineAreaChart.js +1 -1
  56. package/amd/UNSAFE_ListView.js +1 -1
  57. package/amd/UNSAFE_NavigationList.js +1 -1
  58. package/amd/UNSAFE_OverflowTabBar.js +1 -1
  59. package/amd/UNSAFE_RichCheckboxSet.js +1 -1
  60. package/amd/UNSAFE_RichCheckboxSet.js.map +1 -1
  61. package/amd/UNSAFE_RichSelectionItem.js +1 -1
  62. package/amd/UNSAFE_RichSelectionItem.js.map +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_TextArea.js +1 -1
  70. package/amd/UNSAFE_TextAreaAutosize.js +1 -1
  71. package/amd/UNSAFE_VirtualizedListView.js +1 -1
  72. package/amd/{VirtualizedCollection-897516a5.js → VirtualizedCollection-63223f5e.js} +2 -2
  73. package/amd/{VirtualizedCollection-897516a5.js.map → VirtualizedCollection-63223f5e.js.map} +1 -1
  74. package/amd/{VirtualizedListView-cbe87ec2.js → VirtualizedListView-554eaee6.js} +2 -2
  75. package/amd/{VirtualizedListView-cbe87ec2.js.map → VirtualizedListView-554eaee6.js.map} +1 -1
  76. package/amd/{useSelectCommon-d9c4a7bd.js → useSelectCommon-e7f123ce.js} +2 -2
  77. package/amd/{useSelectCommon-d9c4a7bd.js.map → useSelectCommon-e7f123ce.js.map} +1 -1
  78. package/cjs/{BarChart-93a3813c.js → BarChart-ca7f8ed5.js} +2 -2
  79. package/cjs/{BarChart-93a3813c.js.map → BarChart-ca7f8ed5.js.map} +1 -1
  80. package/cjs/{Chart-40d95d14.js → Chart-fbbd3329.js} +2 -2
  81. package/cjs/{Chart-40d95d14.js.map → Chart-fbbd3329.js.map} +1 -1
  82. package/cjs/{ComboChart-cffd0759.js → ComboChart-95863e7a.js} +2 -2
  83. package/cjs/{ComboChart-cffd0759.js.map → ComboChart-95863e7a.js.map} +1 -1
  84. package/cjs/{InputDatePicker-4d36637f.js → InputDatePicker-bc2c534a.js} +2 -2
  85. package/cjs/{InputDatePicker-4d36637f.js.map → InputDatePicker-bc2c534a.js.map} +1 -1
  86. package/cjs/{LineAreaChart-53aa461c.js → LineAreaChart-506308c1.js} +3 -3
  87. package/cjs/{LineAreaChart-53aa461c.js.map → LineAreaChart-506308c1.js.map} +1 -1
  88. package/cjs/{NavigationListItem-7947af0e.js → NavigationListItem-4c4e804d.js} +14 -1
  89. package/cjs/{NavigationListItem-7947af0e.js.map → NavigationListItem-4c4e804d.js.map} +1 -1
  90. package/cjs/{OverflowTabBar-27ad6d1f.js → OverflowTabBar-428798a0.js} +2 -2
  91. package/cjs/{OverflowTabBar-27ad6d1f.js.map → OverflowTabBar-428798a0.js.map} +1 -1
  92. package/cjs/{OverflowTabBarItem-57537ebe.js → OverflowTabBarItem-3c7adb01.js} +2 -2
  93. package/cjs/{OverflowTabBarItem-57537ebe.js.map → OverflowTabBarItem-3c7adb01.js.map} +1 -1
  94. package/cjs/PRIVATE_Chart.js +4 -4
  95. package/cjs/{ScatterChart-9c748a81.js → ScatterChart-80ef4bee.js} +2 -2
  96. package/cjs/{ScatterChart-9c748a81.js.map → ScatterChart-80ef4bee.js.map} +1 -1
  97. package/cjs/{TextArea-e7f98e9f.js → TextArea-4c8f0284.js} +22 -4
  98. package/cjs/TextArea-4c8f0284.js.map +1 -0
  99. package/cjs/{TextAreaAutosize-d96c7038.js → TextAreaAutosize-466a21cc.js} +3 -3
  100. package/cjs/{TextAreaAutosize-d96c7038.js.map → TextAreaAutosize-466a21cc.js.map} +1 -1
  101. package/cjs/Theme-redwood/theme.css +163 -163
  102. package/cjs/Theme-stable/theme.css +149 -149
  103. package/cjs/UNSAFE_BarChart/__test__/BarChart.spec.js +5 -5
  104. package/cjs/UNSAFE_BarChart.js +5 -5
  105. package/cjs/UNSAFE_ComboChart.js +5 -5
  106. package/cjs/UNSAFE_InputDatePicker.js +90 -90
  107. package/cjs/UNSAFE_LineAreaChart.js +5 -5
  108. package/cjs/UNSAFE_NavigationList.js +4 -4
  109. package/cjs/UNSAFE_OverflowTabBar.js +3 -3
  110. package/cjs/UNSAFE_ScatterChart.js +5 -5
  111. package/cjs/UNSAFE_TabBar.js +2 -2
  112. package/cjs/UNSAFE_TabBarCommon.js +2 -2
  113. package/cjs/UNSAFE_TabBarMixed.js +2 -2
  114. package/cjs/UNSAFE_TextArea.js +3 -4
  115. package/cjs/UNSAFE_TextArea.js.map +1 -1
  116. package/cjs/UNSAFE_TextAreaAutosize.js +3 -3
  117. package/es/ActionCard-e64b1771.js +1 -1
  118. package/es/AvatarVariants.styles.css +25 -25
  119. package/es/AvatarVariants.styles2.css +25 -25
  120. package/es/BarChart-a3209793.js +1 -1
  121. package/es/BarGroup-740cd159.js +1 -1
  122. package/es/BaseButton-3ce1f027.js +2 -2
  123. package/es/BaseCardView-c5a8ee6a.js +7 -7
  124. package/es/{BaseCardViewSelectionTest-cf72be09.js → BaseCardViewSelectionTest-1a6585af.js} +7 -7
  125. package/es/{BaseCardViewSelectionTest-cf72be09.js.map → BaseCardViewSelectionTest-1a6585af.js.map} +1 -1
  126. package/es/BaseNavigationListItem-530bc3df.js +1 -1
  127. package/es/BaseRichSelection-9fa49816.js +8 -8
  128. package/es/ButtonSet-51dcff96.js +2 -2
  129. package/es/ButtonSetIconButton-536c1045.js +3 -3
  130. package/es/{Card-de0aef24.js → Card-44b7de2f.js} +2 -2
  131. package/es/{Card-de0aef24.js.map → Card-44b7de2f.js.map} +1 -1
  132. package/es/{Center-9f355d44.js → Center-8b48ab02.js} +2 -2
  133. package/es/{Center-9f355d44.js.map → Center-8b48ab02.js.map} +1 -1
  134. package/es/Chart-b97e00f1.js +8 -8
  135. package/es/CheckboxControl-ee327a6d.js +6 -6
  136. package/es/CheckboxRadioField-a4db2c10.js +6 -6
  137. package/es/Chip-8554d3ff.js +1 -1
  138. package/es/ClearIcon-95064ad6.js +1 -1
  139. package/es/CollapseIcon-4e943f42.js +1 -1
  140. package/es/Collapsible-cb2ba356.js +2 -2
  141. package/es/ComboChart-b8c2be4d.js +2 -2
  142. package/es/CompactHelpSource-9c0d4cb4.js +2 -2
  143. package/es/{CompactLabelAssistance-7912767d.js → CompactLabelAssistance-6a627bbb.js} +5 -5
  144. package/es/{CompactLabelAssistance-7912767d.js.map → CompactLabelAssistance-6a627bbb.js.map} +1 -1
  145. package/es/CompactUserAssistance-12950e48.js +4 -4
  146. package/es/ComponentMessageContainer-f2837e7f.js +4 -4
  147. package/es/ConveyorBeltItem-188fcaf0.js +2 -2
  148. package/es/{DatePicker-38a71007.js → DatePicker-d4c3ec06.js} +6 -6
  149. package/es/{DatePicker-38a71007.js.map → DatePicker-d4c3ec06.js.map} +1 -1
  150. package/es/DatePickerHeader-5806fbea.js +3 -3
  151. package/es/{Diagram-ee9ec4a9.js → Diagram-a6348a41.js} +5 -5
  152. package/es/{Diagram-ee9ec4a9.js.map → Diagram-a6348a41.js.map} +1 -1
  153. package/es/{Dialog-2248109e.js → Dialog-d64dd573.js} +8 -8
  154. package/es/{Dialog-2248109e.js.map → Dialog-d64dd573.js.map} +1 -1
  155. package/es/DirectionalCollapseArrowIcon-daafb64c.js +1 -1
  156. package/es/DirectionalExpandArrowIcon-35def552.js +1 -1
  157. package/es/{DragHandle-5cba8c4b.js → DragHandle-d3a739f5.js} +2 -2
  158. package/es/{DragHandle-5cba8c4b.js.map → DragHandle-d3a739f5.js.map} +1 -1
  159. package/es/{Dropdown-f7fbfa81.js → Dropdown-f0cdaeae.js} +5 -5
  160. package/es/{Dropdown-f7fbfa81.js.map → Dropdown-f0cdaeae.js.map} +1 -1
  161. package/es/{EnvironmentProvider-a3819bde.js → EnvironmentProvider-0fc2fd0c.js} +3 -3
  162. package/es/{EnvironmentProvider-a3819bde.js.map → EnvironmentProvider-0fc2fd0c.js.map} +1 -1
  163. package/es/ExpandableList-478db30a.js +3 -3
  164. package/es/FilePicker-ecfad7d4.js +2 -2
  165. package/es/{Flex-2d51e914.js → Flex-8696b27b.js} +2 -2
  166. package/es/{Flex-2d51e914.js.map → Flex-8696b27b.js.map} +1 -1
  167. package/es/{Floating-c13f9f62.js → Floating-9bf456f9.js} +4 -4
  168. package/es/{Floating-c13f9f62.js.map → Floating-9bf456f9.js.map} +1 -1
  169. package/es/FormLayout-2efb00f6.js +1 -1
  170. package/es/Gantt-0adf9527.js +9 -9
  171. package/es/{Grid-c2385b22.js → Grid-7fd29a9e.js} +2 -2
  172. package/es/{Grid-c2385b22.js.map → Grid-7fd29a9e.js.map} +1 -1
  173. package/es/{Gridlines-89b5506f.js → Gridlines-5ac89a84.js} +2 -2
  174. package/es/{Gridlines-89b5506f.js.map → Gridlines-5ac89a84.js.map} +1 -1
  175. package/es/GroupLoadingIndicator-63035d08.js +1 -1
  176. package/es/{HighlightText-d505bf35.js → HighlightText-cc043982.js} +2 -2
  177. package/es/{HighlightText-d505bf35.js.map → HighlightText-cc043982.js.map} +1 -1
  178. package/es/Icon-bdd49f29.js +3 -3
  179. package/es/IconButton-62cd1cf9.js +3 -3
  180. package/es/IconMenuButton-242dc102.js +3 -3
  181. package/es/IconProgressButton-193d58bf.js +3 -3
  182. package/es/IconSwitchButton-a92911d0.js +3 -3
  183. package/es/IconToggleButton-fb7ccce9.js +3 -3
  184. package/es/{IconUserAssistance-2b494a2e.js → IconUserAssistance-627f9d18.js} +3 -3
  185. package/es/{IconUserAssistance-2b494a2e.js.map → IconUserAssistance-627f9d18.js.map} +1 -1
  186. package/es/Indexer-ba2c7593.js +4 -4
  187. package/es/InlineHelpSource-fcdcd122.js +1 -1
  188. package/es/InlineUserAssistance-04cce83e.js +5 -5
  189. package/es/InputDateMask-23aef570.js +7 -7
  190. package/es/{InputDatePicker-59bbd31d.js → InputDatePicker-dd3b6c89.js} +10 -10
  191. package/es/{InputDatePicker-59bbd31d.js.map → InputDatePicker-dd3b6c89.js.map} +1 -1
  192. package/es/InputPassword-2c87ceb9.js +4 -4
  193. package/es/InputText-3701adf8.js +6 -6
  194. package/es/Label-6d90e627.js +5 -5
  195. package/es/LabelValueLayout-bcf482be.js +1 -1
  196. package/es/{Layer-7497a324.js → Layer-12a734d1.js} +3 -3
  197. package/es/{Layer-7497a324.js.map → Layer-12a734d1.js.map} +1 -1
  198. package/es/{LayerHost-7a2149f5.js → LayerHost-15b42a3e.js} +2 -2
  199. package/es/{LayerHost-7a2149f5.js.map → LayerHost-15b42a3e.js.map} +1 -1
  200. package/es/{LayerManager-be34be40.js → LayerManager-af39e736.js} +2 -2
  201. package/es/{LayerManager-be34be40.js.map → LayerManager-af39e736.js.map} +1 -1
  202. package/es/Legend-588633b2.js +3 -3
  203. package/es/{LineAreaChart-d4ed8c0d.js → LineAreaChart-94387b8b.js} +4 -4
  204. package/es/{LineAreaChart-d4ed8c0d.js.map → LineAreaChart-94387b8b.js.map} +1 -1
  205. package/es/{LineSeries-00fa2ab7.js → LineSeries-ca5836e7.js} +2 -2
  206. package/es/{LineSeries-00fa2ab7.js.map → LineSeries-ca5836e7.js.map} +1 -1
  207. package/es/Link-9f8b5c41.js +1 -1
  208. package/es/List-97b7be70.js +5 -5
  209. package/es/{ListItemLayout-b3d899d6.js → ListItemLayout-e87958e3.js} +2 -2
  210. package/es/{ListItemLayout-b3d899d6.js.map → ListItemLayout-e87958e3.js.map} +1 -1
  211. package/es/ListView-936d8a4f.js +3 -3
  212. package/es/{LiveRegion-5302331c.js → LiveRegion-cb4f8a54.js} +2 -2
  213. package/es/{LiveRegion-5302331c.js.map → LiveRegion-cb4f8a54.js.map} +1 -1
  214. package/es/{MaxLengthLiveRegion-9b386b63.js → MaxLengthLiveRegion-59087064.js} +3 -3
  215. package/es/{MaxLengthLiveRegion-9b386b63.js.map → MaxLengthLiveRegion-59087064.js.map} +1 -1
  216. package/es/Menu-a37635b8.js +6 -6
  217. package/es/MenuButton-422a74de.js +2 -2
  218. package/es/MenuItem-831dfd05.js +1 -1
  219. package/es/Message-9d1504b6.js +2 -2
  220. package/es/{MessageLayer-9ea7cf82.js → MessageLayer-8bed437a.js} +6 -6
  221. package/es/{MessageLayer-9ea7cf82.js.map → MessageLayer-8bed437a.js.map} +1 -1
  222. package/es/MessageToast-7058b181.js +8 -8
  223. package/es/MessagesManager-9dd3eb3d.js +3 -3
  224. package/es/MeterBar-551d32db.js +5 -5
  225. package/es/MeterCircle-5e2ee267.js +5 -5
  226. package/es/{Modal-1710fdd2.js → Modal-103da2aa.js} +3 -3
  227. package/es/{Modal-1710fdd2.js.map → Modal-103da2aa.js.map} +1 -1
  228. package/es/{MonthView-9c0b40f1.js → MonthView-3f86e858.js} +4 -4
  229. package/es/{MonthView-9c0b40f1.js.map → MonthView-3f86e858.js.map} +1 -1
  230. package/es/NavigationListItem-5b25b2f5.js +5 -5
  231. package/es/NumberInputText-58e80ab7.js +6 -6
  232. package/es/OverflowTabBarItem-08625093.js +3 -3
  233. package/es/PRIVATE_BaseCardView.js +22 -22
  234. package/es/PRIVATE_Chart.js +31 -31
  235. package/es/PRIVATE_CheckboxControl.js +23 -23
  236. package/es/PRIVATE_CheckboxRadioField.js +24 -24
  237. package/es/PRIVATE_ClearIcon.js +18 -18
  238. package/es/PRIVATE_DatePickerHeader.js +19 -19
  239. package/es/PRIVATE_DatePickerLayout.js +4 -4
  240. package/es/PRIVATE_EmbeddedIconButton.js +3 -3
  241. package/es/PRIVATE_FormControls.js +19 -19
  242. package/es/PRIVATE_IconSwitchButton.js +16 -16
  243. package/es/PRIVATE_Icons/CheckboxMixed.js +16 -16
  244. package/es/PRIVATE_Icons/CheckboxOff.js +16 -16
  245. package/es/PRIVATE_Icons/CheckboxOn.js +16 -16
  246. package/es/PRIVATE_Icons/DragV.js +16 -16
  247. package/es/PRIVATE_Icons/WarningS.js +16 -16
  248. package/es/PRIVATE_List.js +20 -20
  249. package/es/PRIVATE_Message.js +19 -19
  250. package/es/PRIVATE_MessageLayer.js +12 -12
  251. package/es/PRIVATE_MonthView.js +7 -7
  252. package/es/PRIVATE_MonthYearGridView.js +7 -7
  253. package/es/PRIVATE_PlotArea.js +4 -4
  254. package/es/PRIVATE_RevealToggleIcon.js +17 -17
  255. package/es/PRIVATE_RichSelectionCommon.js +25 -25
  256. package/es/PRIVATE_SelectCommon.js +28 -28
  257. package/es/PRIVATE_StyledCard.js +4 -4
  258. package/es/PRIVATE_StyledCheckbox.js +16 -16
  259. package/es/PRIVATE_Table.js +24 -24
  260. package/es/PRIVATE_ThemedIcons/CalendarIcon.js +16 -16
  261. package/es/PRIVATE_ThemedIcons/ChartMarqueeSelectIcon.js +16 -16
  262. package/es/PRIVATE_ThemedIcons/ChartPanIcon.js +16 -16
  263. package/es/PRIVATE_ThemedIcons/ChartZoomIcon.js +16 -16
  264. package/es/PRIVATE_ThemedIcons/CheckIcon.js +16 -16
  265. package/es/PRIVATE_ThemedIcons/CheckboxMixedIcon.js +16 -16
  266. package/es/PRIVATE_ThemedIcons/CheckboxOffIcon.js +16 -16
  267. package/es/PRIVATE_ThemedIcons/CheckboxOnIcon.js +16 -16
  268. package/es/PRIVATE_ThemedIcons/CloseIcon.js +16 -16
  269. package/es/PRIVATE_ThemedIcons/CollapseIcon.js +17 -17
  270. package/es/PRIVATE_ThemedIcons/CollapseUpIcon.js +16 -16
  271. package/es/PRIVATE_ThemedIcons/DecrementIcon.js +16 -16
  272. package/es/PRIVATE_ThemedIcons/DeleteIcon.js +16 -16
  273. package/es/PRIVATE_ThemedIcons/DirectionalCollapseArrowIcon.js +17 -17
  274. package/es/PRIVATE_ThemedIcons/DirectionalExpandArrowIcon.js +17 -17
  275. package/es/PRIVATE_ThemedIcons/DragHandleIcon.js +16 -16
  276. package/es/PRIVATE_ThemedIcons/DropdownArrowIcon.js +16 -16
  277. package/es/PRIVATE_ThemedIcons/ExpandIcon.js +16 -16
  278. package/es/PRIVATE_ThemedIcons/HelpIcon.js +16 -16
  279. package/es/PRIVATE_ThemedIcons/IncrementIcon.js +16 -16
  280. package/es/PRIVATE_ThemedIcons/MenuButtonDropdownIcon.js +16 -16
  281. package/es/PRIVATE_ThemedIcons/MessageConfirmationIcon.js +16 -16
  282. package/es/PRIVATE_ThemedIcons/MessageErrorIcon.js +16 -16
  283. package/es/PRIVATE_ThemedIcons/MessageInfoIcon.js +16 -16
  284. package/es/PRIVATE_ThemedIcons/MessageWarningIcon.js +16 -16
  285. package/es/PRIVATE_ThemedIcons/MinusIcon.js +16 -16
  286. package/es/PRIVATE_ThemedIcons/NavDownIcon.js +16 -16
  287. package/es/PRIVATE_ThemedIcons/OverviewHorizontalDragHandleIcon.js +16 -16
  288. package/es/PRIVATE_ThemedIcons/PlusIcon.js +16 -16
  289. package/es/PRIVATE_ThemedIcons/RadioOffIcon.js +16 -16
  290. package/es/PRIVATE_ThemedIcons/RadioOnIcon.js +16 -16
  291. package/es/PRIVATE_ThemedIcons/SortAscendingIcon.js +16 -16
  292. package/es/PRIVATE_ThemedIcons/SortDescendingIcon.js +16 -16
  293. package/es/PRIVATE_ThemedIcons/ViewHideIcon.js +16 -16
  294. package/es/PRIVATE_ThemedIcons/ViewIcon.js +16 -16
  295. package/es/PRIVATE_TimeComponent.js +18 -18
  296. package/es/PRIVATE_VisOverview.js +16 -16
  297. package/es/PRIVATE_VisTabularDatatip.js +4 -4
  298. package/es/PictoChart-3f059ad1.js +6 -6
  299. package/es/PieChart-ca02932e.js +6 -6
  300. package/es/{Popup-a4be2769.js → Popup-6c3f0839.js} +9 -9
  301. package/es/{Popup-a4be2769.js.map → Popup-6c3f0839.js.map} +1 -1
  302. package/es/{ProgressBar-4fbb27ab.js → ProgressBar-95461222.js} +3 -3
  303. package/es/{ProgressBar-4fbb27ab.js.map → ProgressBar-95461222.js.map} +1 -1
  304. package/es/ProgressButton-2497c81b.js +3 -3
  305. package/es/ProgressButtonLabelLayout-bfc7c805.js +3 -3
  306. package/es/{ProgressCircle-2d3833fa.js → ProgressCircle-93c309cb.js} +2 -2
  307. package/es/{ProgressCircle-2d3833fa.js.map → ProgressCircle-93c309cb.js.map} +1 -1
  308. package/es/RadioItem-35f68420.js +6 -6
  309. package/es/RatingGauge-5346d0bf.js +7 -7
  310. package/es/ReadonlyTextFieldInput-a15badb6.js +1 -1
  311. package/es/RemovableNavigationListItem-29fdaddc.js +1 -1
  312. package/es/RemovableTabBarItem-1cc7a0ca.js +2 -2
  313. package/es/ReorderableTabBar-b9019d0a.js +3 -3
  314. package/es/RevealToggleIcon-51514e37.js +1 -1
  315. package/es/{ScatterChart-d26d4ea9.js → ScatterChart-739a9ec0.js} +3 -3
  316. package/es/{ScatterChart-d26d4ea9.js.map → ScatterChart-739a9ec0.js.map} +1 -1
  317. package/es/SectionalLegend-c71d48a3.js +4 -4
  318. package/es/{SectionedContent-2d0a744d.js → SectionedContent-3fd063af.js} +5 -5
  319. package/es/{SectionedContent-2d0a744d.js.map → SectionedContent-3fd063af.js.map} +1 -1
  320. package/es/SegmentStyles.styles.css +8 -8
  321. package/es/SegmentStyles.styles2.css +8 -8
  322. package/es/SelectMultiple-ad8fc99a.js +8 -8
  323. package/es/SelectSingle-abaf271c.js +7 -7
  324. package/es/{SelectionCard-792c249d.js → SelectionCard-1f8585cb.js} +2 -2
  325. package/es/{SelectionCard-792c249d.js.map → SelectionCard-1f8585cb.js.map} +1 -1
  326. package/es/Selector-5892544f.js +1 -1
  327. package/es/{SelectorAll-ab748274.js → SelectorAll-e833da6d.js} +7 -7
  328. package/es/{SelectorAll-ab748274.js.map → SelectorAll-e833da6d.js.map} +1 -1
  329. package/es/{Sheet-31e6970c.js → Sheet-0861fcc0.js} +3 -3
  330. package/es/{Sheet-31e6970c.js.map → Sheet-0861fcc0.js.map} +1 -1
  331. package/es/SplitMenuButton-3dbd83b7.js +2 -2
  332. package/es/{StyledCard-6913b45c.js → StyledCard-f5965d6d.js} +2 -2
  333. package/es/{StyledCard-6913b45c.js.map → StyledCard-f5965d6d.js.map} +1 -1
  334. package/es/StyledTextField-ebb5409d.js +3 -3
  335. package/es/TabBar-fb7f97d2.js +5 -5
  336. package/es/TabBarItem-252cba76.js +3 -3
  337. package/es/TabBarLayout-8caaa060.js +1 -1
  338. package/es/TabBarMixed-f60c2c7a.js +5 -5
  339. package/es/{TabBarMixedSeparator-16c88691.js → TabBarMixedSeparator-da56f4c0.js} +2 -2
  340. package/es/{TabBarMixedSeparator-16c88691.js.map → TabBarMixedSeparator-da56f4c0.js.map} +1 -1
  341. package/es/Table-1ba124ec.js +9 -9
  342. package/es/TagCloud-f7e50ac4.js +8 -8
  343. package/es/{TextArea-7230675f.js → TextArea-64b4e972.js} +30 -13
  344. package/es/TextArea-64b4e972.js.map +1 -0
  345. package/es/{TextAreaAutosize-0d293016.js → TextAreaAutosize-4e0f60ef.js} +7 -7
  346. package/es/{TextAreaAutosize-0d293016.js.map → TextAreaAutosize-4e0f60ef.js.map} +1 -1
  347. package/es/TextField-cb494638.js +3 -3
  348. package/es/TextFieldInput-3c2e920d.js +1 -1
  349. package/es/Theme-redwood/theme.css +472 -472
  350. package/es/Theme-stable/theme.css +370 -370
  351. package/es/TimeComponentCanvas2D-2a4a0c94.js +5 -5
  352. package/es/Toolbar-7676795b.js +1 -1
  353. package/es/{TruncatingBadge-0f04b894.js → TruncatingBadge-b69c1ceb.js} +4 -4
  354. package/es/{TruncatingBadge-0f04b894.js.map → TruncatingBadge-b69c1ceb.js.map} +1 -1
  355. package/es/{TruncatingText-ccad557f.js → TruncatingText-68acfafd.js} +4 -4
  356. package/es/{TruncatingText-ccad557f.js.map → TruncatingText-68acfafd.js.map} +1 -1
  357. package/es/UNSAFE_ActionCard.js +3 -3
  358. package/es/UNSAFE_Avatar/themes/redwood/AvatarTheme.js +1 -1
  359. package/es/UNSAFE_Avatar/themes/redwood/AvatarVariants.css.js +1 -1
  360. package/es/UNSAFE_Avatar/themes/stable/AvatarTheme.js +1 -1
  361. package/es/UNSAFE_Avatar/themes/stable/AvatarVariants.css.js +1 -1
  362. package/es/UNSAFE_Avatar.js +1 -1
  363. package/es/UNSAFE_BarChart/__test__/BarChart.spec.js +31 -31
  364. package/es/UNSAFE_BarChart.js +31 -31
  365. package/es/UNSAFE_BaseButton.js +3 -3
  366. package/es/UNSAFE_Button.js +3 -3
  367. package/es/UNSAFE_ButtonLayout/tests/ButtonLayout.spec.js +21 -21
  368. package/es/UNSAFE_ButtonSet.js +4 -4
  369. package/es/UNSAFE_ButtonSetButton.js +3 -3
  370. package/es/UNSAFE_ButtonSetIconButton.js +16 -16
  371. package/es/UNSAFE_ButtonSetItem.js +16 -16
  372. package/es/UNSAFE_ButtonSetMultiple.js +4 -4
  373. package/es/UNSAFE_ButtonSetSingle.js +4 -4
  374. package/es/UNSAFE_Card.js +5 -5
  375. package/es/UNSAFE_CardFlexView.js +22 -22
  376. package/es/UNSAFE_CardGridView.js +22 -22
  377. package/es/UNSAFE_Center.js +5 -5
  378. package/es/UNSAFE_ChartWithLegend.js +4 -4
  379. package/es/UNSAFE_Checkbox.js +23 -23
  380. package/es/UNSAFE_CheckboxItem.js +23 -23
  381. package/es/UNSAFE_CheckboxSet.js +23 -23
  382. package/es/UNSAFE_Chip.js +2 -2
  383. package/es/UNSAFE_Collapsible.js +18 -18
  384. package/es/UNSAFE_ComboChart.js +33 -33
  385. package/es/UNSAFE_ComponentMessage.js +19 -19
  386. package/es/UNSAFE_ConveyorBelt.js +16 -16
  387. package/es/UNSAFE_DatePicker.js +24 -24
  388. package/es/UNSAFE_Diagram.js +21 -21
  389. package/es/UNSAFE_Dialog.js +21 -21
  390. package/es/UNSAFE_DragHandle.js +18 -18
  391. package/es/UNSAFE_DrawerLayout.js +12 -12
  392. package/es/UNSAFE_DrawerPopup.js +11 -11
  393. package/es/UNSAFE_Dropdown.js +13 -13
  394. package/es/UNSAFE_Environment.js +4 -4
  395. package/es/UNSAFE_ExpandableList.js +23 -23
  396. package/es/UNSAFE_FilePicker.js +4 -4
  397. package/es/UNSAFE_Flex.js +4 -4
  398. package/es/UNSAFE_Floating.js +11 -11
  399. package/es/UNSAFE_FormLayout.js +2 -2
  400. package/es/UNSAFE_Gantt.js +23 -23
  401. package/es/UNSAFE_Grid.js +4 -4
  402. package/es/UNSAFE_HighlightText.js +4 -4
  403. package/es/UNSAFE_Icon.js +16 -16
  404. package/es/UNSAFE_IconButton.js +16 -16
  405. package/es/UNSAFE_IconMenuButton.js +21 -21
  406. package/es/UNSAFE_IconProgressButton.js +19 -19
  407. package/es/UNSAFE_IconToggleButton.js +16 -16
  408. package/es/UNSAFE_Indexer.js +6 -6
  409. package/es/UNSAFE_InputDateMask/themes/SegmentStyles.css.js +1 -1
  410. package/es/UNSAFE_InputDateMask.js +25 -25
  411. package/es/UNSAFE_InputDatePicker.js +114 -114
  412. package/es/UNSAFE_InputPassword.js +23 -23
  413. package/es/UNSAFE_InputSensitiveText.js +25 -25
  414. package/es/UNSAFE_InputText.js +26 -26
  415. package/es/UNSAFE_InputTimeMask/themes/SegmentStyles.css.js +1 -1
  416. package/es/UNSAFE_InputTimeMask.js +25 -25
  417. package/es/UNSAFE_Label.js +23 -23
  418. package/es/UNSAFE_LabelValueLayout.js +4 -4
  419. package/es/UNSAFE_LabelledLink.js +24 -24
  420. package/es/UNSAFE_Layer.js +8 -8
  421. package/es/UNSAFE_Legend.js +24 -24
  422. package/es/UNSAFE_LineAreaChart.js +34 -34
  423. package/es/UNSAFE_Link.js +2 -2
  424. package/es/UNSAFE_ListItemLayout.js +5 -5
  425. package/es/UNSAFE_ListView.js +28 -28
  426. package/es/UNSAFE_LiveRegion.js +4 -4
  427. package/es/UNSAFE_Menu.js +23 -23
  428. package/es/UNSAFE_MenuButton.js +21 -21
  429. package/es/UNSAFE_MessageBanner.js +19 -19
  430. package/es/UNSAFE_MessageToast.js +22 -22
  431. package/es/UNSAFE_MeterBar.js +16 -16
  432. package/es/UNSAFE_MeterCircle.js +17 -17
  433. package/es/UNSAFE_Modal.js +8 -8
  434. package/es/UNSAFE_NavigationList.js +20 -20
  435. package/es/UNSAFE_NavigationListCommon.js +18 -18
  436. package/es/UNSAFE_NumberInputText.js +25 -25
  437. package/es/UNSAFE_OverflowTabBar.js +24 -24
  438. package/es/UNSAFE_PictoChart.js +14 -14
  439. package/es/UNSAFE_PieChart/__test__/PieChart.spec.js +21 -21
  440. package/es/UNSAFE_PieChart.js +21 -21
  441. package/es/UNSAFE_Popup.js +16 -16
  442. package/es/UNSAFE_ProgressBar.js +5 -5
  443. package/es/UNSAFE_ProgressButton.js +19 -19
  444. package/es/UNSAFE_ProgressButtonLabelLayout.js +10 -10
  445. package/es/UNSAFE_ProgressCircle.js +4 -4
  446. package/es/UNSAFE_RadioItem.js +23 -23
  447. package/es/UNSAFE_RadioSet.js +23 -23
  448. package/es/UNSAFE_RatingGauge.js +17 -17
  449. package/es/UNSAFE_ReorderableTabBar.js +24 -24
  450. package/es/UNSAFE_RichCheckboxSet.js +25 -25
  451. package/es/UNSAFE_RichRadioSet.js +25 -25
  452. package/es/UNSAFE_RichSelectionItem.js +22 -22
  453. package/es/UNSAFE_ScatterChart.js +34 -34
  454. package/es/UNSAFE_SectionalLegend.js +25 -25
  455. package/es/UNSAFE_SelectMultiple.js +30 -30
  456. package/es/UNSAFE_SelectSingle.js +30 -30
  457. package/es/UNSAFE_SelectionCard.js +5 -5
  458. package/es/UNSAFE_Selector.js +16 -16
  459. package/es/UNSAFE_SelectorAll.js +20 -20
  460. package/es/UNSAFE_Sheet/__test__/Sheet.spec.js +14 -14
  461. package/es/UNSAFE_Sheet.js +11 -11
  462. package/es/UNSAFE_SplitMenuButton.js +21 -21
  463. package/es/UNSAFE_TabBar.js +25 -25
  464. package/es/UNSAFE_TabBarCommon.js +25 -25
  465. package/es/UNSAFE_TabBarMixed.js +26 -26
  466. package/es/UNSAFE_TableView.js +24 -24
  467. package/es/UNSAFE_TagCloud.js +23 -23
  468. package/es/UNSAFE_TextArea.js +27 -28
  469. package/es/UNSAFE_TextArea.js.map +1 -1
  470. package/es/UNSAFE_TextAreaAutosize.js +28 -28
  471. package/es/UNSAFE_TextField.js +7 -7
  472. package/es/UNSAFE_ToggleButton.js +3 -3
  473. package/es/UNSAFE_Toolbar/tests/Toolbar.spec.js +23 -23
  474. package/es/UNSAFE_Toolbar.js +4 -4
  475. package/es/UNSAFE_Train.js +17 -17
  476. package/es/UNSAFE_TruncatingBadge.js +18 -18
  477. package/es/UNSAFE_TruncatingText.js +17 -17
  478. package/es/UNSAFE_UserAssistance.js +24 -24
  479. package/es/UNSAFE_View.js +7 -7
  480. package/es/UNSAFE_VirtualizedListView.js +20 -20
  481. package/es/UNSAFE_VisProgressiveLoader/__test__/VisProgressiveLoader.spec.js +8 -8
  482. package/es/UNSAFE_VisProgressiveLoader.js +6 -6
  483. package/es/UNSAFE_VisStatusMessage.js +6 -6
  484. package/es/UNSAFE_WindowOverlay.js +4 -4
  485. package/es/{View-a8a64eb1.js → View-63980a9b.js} +5 -5
  486. package/es/{View-a8a64eb1.js.map → View-63980a9b.js.map} +1 -1
  487. package/es/{VisNoData-794ddc21.js → VisNoData-02cab8f6.js} +3 -3
  488. package/es/{VisNoData-794ddc21.js.map → VisNoData-02cab8f6.js.map} +1 -1
  489. package/es/{VisProgressiveLoader-66dde1ff.js → VisProgressiveLoader-2b2103c8.js} +3 -3
  490. package/es/{VisProgressiveLoader-66dde1ff.js.map → VisProgressiveLoader-2b2103c8.js.map} +1 -1
  491. package/es/{VisTabularDatatip-6aa607bb.js → VisTabularDatatip-2ae7ee48.js} +2 -2
  492. package/es/{VisTabularDatatip-6aa607bb.js.map → VisTabularDatatip-2ae7ee48.js.map} +1 -1
  493. package/es/{WindowOverlay-de5d0819.js → WindowOverlay-9b43e658.js} +2 -2
  494. package/es/{WindowOverlay-de5d0819.js.map → WindowOverlay-9b43e658.js.map} +1 -1
  495. package/es/{YearsGridView-cb510d1e.js → YearsGridView-cc0574f2.js} +4 -4
  496. package/es/{YearsGridView-cb510d1e.js.map → YearsGridView-cc0574f2.js.map} +1 -1
  497. package/es/hoc/PRIVATE_withDirectionIcon.js +4 -4
  498. package/es/hoc/PRIVATE_withThemeIcon.js +3 -3
  499. package/es/hoc/UNSAFE_withThemeProps.js +3 -3
  500. package/es/hooks/PRIVATE_useChartContextMenu.js +20 -20
  501. package/es/hooks/PRIVATE_useChartDatatip.js +14 -14
  502. package/es/hooks/PRIVATE_useChartEvents.js +18 -18
  503. package/es/hooks/PRIVATE_useChartMarquee.js +18 -18
  504. package/es/hooks/PRIVATE_useCssVars.js +7 -7
  505. package/es/hooks/PRIVATE_useCurrentKey.js +4 -4
  506. package/es/hooks/PRIVATE_useDatatip.js +12 -12
  507. package/es/hooks/PRIVATE_useFloating.js +4 -4
  508. package/es/hooks/PRIVATE_useReorderable.js +5 -5
  509. package/es/hooks/PRIVATE_useRovingTabIndexContainer.js +4 -4
  510. package/es/hooks/PRIVATE_useSelection.js +4 -4
  511. package/es/hooks/PRIVATE_useTabBar.js +4 -4
  512. package/es/hooks/PRIVATE_useVisContextMenu.js +20 -20
  513. package/es/hooks/PRIVATE_useVisDragModeControls.js +18 -18
  514. package/es/hooks/PRIVATE_useVisEvents.js +4 -4
  515. package/es/hooks/PRIVATE_useVisMeterEvents.js +14 -14
  516. package/es/hooks/PRIVATE_useVisSelection.js +13 -13
  517. package/es/hooks/UNSAFE_useColorScheme.js +3 -3
  518. package/es/hooks/UNSAFE_useCurrentBgColor.js +3 -3
  519. package/es/hooks/UNSAFE_useDensity.js +3 -3
  520. package/es/hooks/UNSAFE_useOutsideClick.js +8 -8
  521. package/es/hooks/UNSAFE_usePrefixSuffix.js +4 -4
  522. package/es/hooks/UNSAFE_useScale.js +3 -3
  523. package/es/hooks/UNSAFE_useTestId.js +3 -3
  524. package/es/hooks/UNSAFE_useTheme.js +3 -3
  525. package/es/hooks/UNSAFE_useThemeInterpolations.js +6 -6
  526. package/es/hooks/UNSAFE_useTooltip.js +17 -17
  527. package/es/hooks/UNSAFE_useTranslationBundle.js +3 -3
  528. package/es/hooks/UNSAFE_useUser.js +3 -3
  529. package/es/{index-f4c1d6de.js → index-20f848bc.js} +2 -2
  530. package/es/index-20f848bc.js.map +1 -0
  531. package/es/listViewSelectionTests-79aa17b2.js +3 -3
  532. package/es/{render-9dce082a.js → render-2b908d4f.js} +3 -3
  533. package/es/{render-9dce082a.js.map → render-2b908d4f.js.map} +1 -1
  534. package/es/{tabbableUtils-93a7cd6f.js → tabbableUtils-20bbaf8d.js} +3 -3
  535. package/es/{tabbableUtils-93a7cd6f.js.map → tabbableUtils-20bbaf8d.js.map} +1 -1
  536. package/es/{testData-a9ced8ec.js → testData-70bebfae.js} +3 -3
  537. package/es/{testData-a9ced8ec.js.map → testData-70bebfae.js.map} +1 -1
  538. package/es/{tooltipUtils-fcfd7dbb.js → tooltipUtils-38192add.js} +5 -5
  539. package/es/{tooltipUtils-fcfd7dbb.js.map → tooltipUtils-38192add.js.map} +1 -1
  540. package/es/useCellNavigation-00d575ca.js +1 -1
  541. package/es/useChartContextMenu-121a5f6d.js +2 -2
  542. package/es/{useChartDatatip-c929f857.js → useChartDatatip-977bc33d.js} +4 -4
  543. package/es/{useChartDatatip-c929f857.js.map → useChartDatatip-977bc33d.js.map} +1 -1
  544. package/es/{useColorScheme-f69d53b5.js → useColorScheme-d8a80e2b.js} +2 -2
  545. package/es/{useColorScheme-f69d53b5.js.map → useColorScheme-d8a80e2b.js.map} +1 -1
  546. package/es/useContextMenu-8c47333e.js +2 -2
  547. package/es/{useCssVars-48595cd2.js → useCssVars-8e6932f8.js} +5 -5
  548. package/es/{useCssVars-48595cd2.js.map → useCssVars-8e6932f8.js.map} +1 -1
  549. package/es/{useCurrentBgColor-894d059b.js → useCurrentBgColor-5418492b.js} +2 -2
  550. package/es/{useCurrentBgColor-894d059b.js.map → useCurrentBgColor-5418492b.js.map} +1 -1
  551. package/es/{useCurrentKey-aa75ec92.js → useCurrentKey-63f6afcc.js} +2 -2
  552. package/es/{useCurrentKey-aa75ec92.js.map → useCurrentKey-63f6afcc.js.map} +1 -1
  553. package/es/{useDatatip-40475371.js → useDatatip-bce558e2.js} +4 -4
  554. package/es/{useDatatip-40475371.js.map → useDatatip-bce558e2.js.map} +1 -1
  555. package/es/{useDensity-04a01caf.js → useDensity-64ecb649.js} +2 -2
  556. package/es/{useDensity-04a01caf.js.map → useDensity-64ecb649.js.map} +1 -1
  557. package/es/{useFloating-dad3f791.js → useFloating-41d21e7d.js} +2 -2
  558. package/es/{useFloating-dad3f791.js.map → useFloating-41d21e7d.js.map} +1 -1
  559. package/es/{useKeyboardEvents-b02e5fda.js → useKeyboardEvents-5c311766.js} +2 -2
  560. package/es/{useKeyboardEvents-b02e5fda.js.map → useKeyboardEvents-5c311766.js.map} +1 -1
  561. package/es/useLegendContextMenu-1043d63c.js +4 -4
  562. package/es/{useMeterDatatip-4adf64f2.js → useMeterDatatip-5268869e.js} +3 -3
  563. package/es/{useMeterDatatip-4adf64f2.js.map → useMeterDatatip-5268869e.js.map} +1 -1
  564. package/es/{useOutsideClick-c19a8d7f.js → useOutsideClick-8a582d08.js} +2 -2
  565. package/es/{useOutsideClick-c19a8d7f.js.map → useOutsideClick-8a582d08.js.map} +1 -1
  566. package/es/{usePopupAnimation-267b444c.js → usePopupAnimation-e2e6a2ca.js} +2 -2
  567. package/es/{usePopupAnimation-267b444c.js.map → usePopupAnimation-e2e6a2ca.js.map} +1 -1
  568. package/es/{usePrefixSuffix-995d4cda.js → usePrefixSuffix-435a9c59.js} +2 -2
  569. package/es/{usePrefixSuffix-995d4cda.js.map → usePrefixSuffix-435a9c59.js.map} +1 -1
  570. package/es/{useReorderableItem-7f7c13b5.js → useReorderableItem-96616318.js} +3 -3
  571. package/es/{useReorderableItem-7f7c13b5.js.map → useReorderableItem-96616318.js.map} +1 -1
  572. package/es/{useRovingTabIndexContainer-7ec9f36f.js → useRovingTabIndexContainer-9afe3ee0.js} +2 -2
  573. package/es/{useRovingTabIndexContainer-7ec9f36f.js.map → useRovingTabIndexContainer-9afe3ee0.js.map} +1 -1
  574. package/es/{useScale-3b323ab2.js → useScale-c86ecc6e.js} +2 -2
  575. package/es/{useScale-3b323ab2.js.map → useScale-c86ecc6e.js.map} +1 -1
  576. package/es/useSelectCommon-1dafa6f9.js +11 -11
  577. package/es/{useSelectDrill-232b571c.js → useSelectDrill-24264e6b.js} +3 -3
  578. package/es/{useSelectDrill-232b571c.js.map → useSelectDrill-24264e6b.js.map} +1 -1
  579. package/es/{useSelection-bbd2320f.js → useSelection-1b256f77.js} +5 -5
  580. package/es/{useSelection-bbd2320f.js.map → useSelection-1b256f77.js.map} +1 -1
  581. package/es/{useSelection-c46ba985.js → useSelection-879c64aa.js} +2 -2
  582. package/es/{useSelection-c46ba985.js.map → useSelection-879c64aa.js.map} +1 -1
  583. package/es/useTabBar-efad9075.js +1 -1
  584. package/es/{useTestId-af32a9eb.js → useTestId-3bc3958c.js} +2 -2
  585. package/es/{useTestId-af32a9eb.js.map → useTestId-3bc3958c.js.map} +1 -1
  586. package/es/{useTheme-73aca0e4.js → useTheme-4b0f211c.js} +2 -2
  587. package/es/{useTheme-73aca0e4.js.map → useTheme-4b0f211c.js.map} +1 -1
  588. package/es/{useThemeInterpolations-242b30ed.js → useThemeInterpolations-8bee52ac.js} +5 -5
  589. package/es/{useThemeInterpolations-242b30ed.js.map → useThemeInterpolations-8bee52ac.js.map} +1 -1
  590. package/es/{useTooltip-72f5cf2e.js → useTooltip-98b6d3b5.js} +2 -2
  591. package/es/{useTooltip-72f5cf2e.js.map → useTooltip-98b6d3b5.js.map} +1 -1
  592. package/es/{useTooltipControlled-97142fd1.js → useTooltipControlled-b565c75b.js} +5 -5
  593. package/es/{useTooltipControlled-97142fd1.js.map → useTooltipControlled-b565c75b.js.map} +1 -1
  594. package/es/{useTranslationBundle-6da03e52.js → useTranslationBundle-98df6291.js} +2 -2
  595. package/es/{useTranslationBundle-6da03e52.js.map → useTranslationBundle-98df6291.js.map} +1 -1
  596. package/es/{useUser-bca8cf2d.js → useUser-a15426fc.js} +2 -2
  597. package/es/{useUser-bca8cf2d.js.map → useUser-a15426fc.js.map} +1 -1
  598. package/es/useVisDragModeControls-4d8d8a3b.js +1 -1
  599. package/es/{useVisEvents-37c78cfe.js → useVisEvents-7d4753c4.js} +2 -2
  600. package/es/{useVisEvents-37c78cfe.js.map → useVisEvents-7d4753c4.js.map} +1 -1
  601. package/es/utils/PRIVATE_tooltipUtils.js +14 -14
  602. package/es/utils/PRIVATE_visTestUtils.js +6 -6
  603. package/es/{withDirectionIcon-389870a2.js → withDirectionIcon-90d7c798.js} +2 -2
  604. package/es/{withDirectionIcon-389870a2.js.map → withDirectionIcon-90d7c798.js.map} +1 -1
  605. package/es/withThemeProps-6545df54.js +2 -2
  606. package/package.json +2 -2
  607. package/amd/CardFlexView-296f97f5.js +0 -2
  608. package/amd/CheckboxSet-4582f29e.js +0 -2
  609. package/amd/CheckboxSet-4582f29e.js.map +0 -1
  610. package/amd/List-0b764e84.js +0 -2
  611. package/amd/LoadMoreCollection-83413a59.js +0 -2
  612. package/amd/MaxLengthCounter-9a95922c.js +0 -2
  613. package/amd/MaxLengthCounter-9a95922c.js.map +0 -1
  614. package/amd/NavigationListItem-044a79fd.js +0 -2
  615. package/amd/TextArea-89b9ed65.js +0 -2
  616. package/amd/TextArea-89b9ed65.js.map +0 -1
  617. package/amd/TextAreaAutosize-81449e46.js +0 -2
  618. package/cjs/MaxLengthCounter-9ab3f74b.js +0 -27
  619. package/cjs/MaxLengthCounter-9ab3f74b.js.map +0 -1
  620. package/cjs/TextArea-e7f98e9f.js.map +0 -1
  621. package/es/MaxLengthCounter-181b4fc9.js +0 -25
  622. package/es/MaxLengthCounter-181b4fc9.js.map +0 -1
  623. package/es/TextArea-7230675f.js.map +0 -1
  624. package/es/index-f4c1d6de.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Indexer-1531dbc3.js","sources":["../../src/UNSAFE_Indexer/IndexerItems.tsx","../../src/UNSAFE_Indexer/Indexer.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 */\nimport { Fragment } from 'preact';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { Flex } from '../UNSAFE_Flex';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport type { BundleType } from '../resources/nls/bundle';\nimport { ItemContext } from 'src/UNSAFE_Collection';\nimport { forwardRef, ForwardedRef } from 'preact/compat';\nimport { useComponentTheme } from '../hooks/UNSAFE_useComponentTheme';\nimport { IndexerStyles, IndexerItemVariantOptions } from './themes/IndexerStyles.css';\nimport { IndexerRedwoodTheme } from './themes/redwood/IndexerTheme';\n\n/**\n * Type of a section\n */\nexport type Section<K> = {\n /**\n * The key of each section\n */\n key: K;\n /**\n * The label of each section\n */\n label?: string;\n /**\n * A property that indicates whether the section\n * is disabled or not. Typically, when Indexer is\n * used with ListView, a disabled section implies\n * that there's no corresponding items in the ListView\n */\n isDisabled?: boolean;\n};\n\n/**\n * The others section variable that application could use\n * to compare value\n */\n// const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\nexport const SECTION_OTHERS: Section<string> = Object.freeze({\n key: '__others__',\n label: '#'\n});\n\nexport const ITEM_SELECTOR = '[data-oj-key]';\n\nexport type SectionProps<K> = {\n context: ItemContext<Section<K>>;\n currentKey: K;\n selectedKey: K;\n valueNow: number; // the index of an item within currently visible sections\n isFocusRingVisible: boolean;\n};\n\nexport const SectionItem = forwardRef(\n <K extends string | number>(props: SectionProps<K>, ref: ForwardedRef<HTMLLIElement>) => {\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n const { context, selectedKey } = props;\n const isSelected = context.data.key === selectedKey;\n const commonProps = getCommonProps(props, ref);\n\n const { classes } = useComponentTheme<IndexerItemVariantOptions, IndexerStyles>(\n IndexerRedwoodTheme,\n {\n focused: commonProps.ref && commonProps.isFocusRingVisible ? 'isFocused' : 'notFocused',\n disabled: context.data.isDisabled ? 'isDisabled' : 'notDisabled',\n selected: isSelected ? 'isSelected' : 'notSelected'\n }\n );\n const itemClasses = classNames([classes]);\n\n const sectionLabel = context.data.label || context.data.key;\n const valueText = context.data.isDisabled\n ? translations.indexer_disabledLabel({ SECTION: `${sectionLabel}` })\n : `${sectionLabel}`;\n\n return (\n <li\n {...commonProps}\n class={itemClasses}\n data-oj-valuetext={valueText}\n data-oj-disabled={context.data.isDisabled}>\n {context.data.label || context.data.key}\n </li>\n );\n }\n);\n\nfunction getCommonProps<K>(\n { context, currentKey, valueNow, isFocusRingVisible }: SectionProps<K>,\n ref: ForwardedRef<HTMLLIElement>\n) {\n const isCurrent = context.data.key === currentKey;\n return {\n ...(isCurrent && { ref }),\n key: context.data.key,\n 'data-oj-key': context.data.key,\n 'data-oj-key-type': typeof context.data.key,\n 'data-oj-valuenow': valueNow,\n isFocusRingVisible: !!isFocusRingVisible\n };\n}\n\ntype LastSectionProps<K> = SectionProps<K> & {\n lastValueNow: number;\n};\n\n// render the last section, that contains the last character and others character\nexport const LastSectionItem = forwardRef(\n <K extends string | number>(\n { lastValueNow, ...sectionProps }: LastSectionProps<K>,\n ref: ForwardedRef<HTMLLIElement>\n ) => {\n const commonProps = { ...sectionProps, ref };\n return (\n <Fragment>\n <SectionItem {...commonProps} />\n <OthersItem\n {...commonProps}\n ref={ref}\n context={{ index: -1, data: SECTION_OTHERS } as ItemContext<Section<K>>}\n valueNow={lastValueNow}\n />\n </Fragment>\n );\n }\n);\n\nconst OthersItem = forwardRef(<K,>(props: SectionProps<K>, ref: ForwardedRef<HTMLLIElement>) => {\n const { context, selectedKey } = props;\n const commonProps = getCommonProps(props, ref);\n\n const isSelected = context.data.key === selectedKey;\n const { classes } = useComponentTheme<IndexerItemVariantOptions>(IndexerRedwoodTheme, {\n focused: commonProps.ref && commonProps.isFocusRingVisible ? 'isFocused' : 'notFocused',\n selected: isSelected ? 'isSelected' : 'notSelected'\n });\n const othersClasses = classNames([classes]);\n const othersValueText = SECTION_OTHERS.label;\n\n return (\n <li {...commonProps} class={othersClasses} data-oj-valuetext={othersValueText}>\n {context.data.label}\n </li>\n );\n});\n\ntype SeparatorProps<K> = SectionProps<K> & {\n sectionsPerTruncation: number;\n last: number;\n sections: Section<K>[];\n};\n\nexport const SeparatorItem = forwardRef(\n <K extends string | number>(props: SeparatorProps<K>, ref: ForwardedRef<HTMLLIElement>) => {\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n const { context, sections } = props;\n const commonProps = getCommonProps(props, ref);\n const { from, to } = getSeparatorRange(props);\n const {\n classes,\n styles: { dotStyle }\n } = useComponentTheme<IndexerItemVariantOptions, IndexerStyles>(IndexerRedwoodTheme, {\n focused: commonProps.ref && commonProps.isFocusRingVisible ? 'isFocused' : 'notFocused'\n });\n\n if (!isInSeparatorMiddle(context.index, from, to)) {\n return null;\n }\n\n const fromText = sections[from].label || sections[from].key;\n const toText = sections[to].label || sections[to].key;\n\n const separatorClasses = classNames([classes]);\n\n const separatorValueText = translations.indexer_separatorLabel({\n FROM_SECTION: `${fromText}`,\n TO_SECTION: `${toText}`\n });\n\n return (\n <li {...commonProps} class={separatorClasses} data-oj-valuetext={separatorValueText}>\n <Flex align=\"center\" justify=\"center\">\n <div class={dotStyle}></div>\n </Flex>\n </li>\n );\n }\n);\n\nexport function hasSeparator<K>(props: SeparatorProps<K>) {\n const { from, to } = getSeparatorRange(props);\n return isInSeparatorMiddle(props.context.index, from, to);\n}\n\nfunction getSeparatorRange<K>({ context, sectionsPerTruncation, last }: SeparatorProps<K>) {\n const from = context.index - (context.index % sectionsPerTruncation) + 1;\n let to = from + sectionsPerTruncation - 2;\n to = to >= last ? last - 1 : to;\n\n return { from, to };\n}\n\nfunction isInSeparatorMiddle(index: number, from: number, to: number) {\n return index === Math.floor((from + to) / 2);\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, createRef, type RefObject } from 'preact';\nimport { useEffect, useRef, useState, StateUpdater, useCallback, Dispatch } from 'preact/hooks';\nimport { Flex } from '../UNSAFE_Flex';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { useSingleSelection } from '../hooks/PRIVATE_useSingleSelection/useSingleSelection';\nimport { useCurrentKey } from '../hooks/PRIVATE_useCurrentKey';\nimport { useCollectionFocusRing } from '../hooks/PRIVATE_useCollectionFocusRing';\nimport { keyExtractor, getPrevNextKey, isMobile } from '../utils/PRIVATE_collectionUtils';\nimport { useId } from '../hooks/UNSAFE_useId';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport type { BundleType } from '../resources/nls/bundle';\nimport { HiddenAccessible } from '../UNSAFE_HiddenAccessible';\nimport { ItemContext, CurrentKeyDetail, SingleSelectionDetail } from '../UNSAFE_Collection';\nimport { Collection } from '../PRIVATE_Collection';\nimport {\n Section,\n SectionItem,\n LastSectionItem,\n SeparatorItem,\n SECTION_OTHERS,\n hasSeparator,\n ITEM_SELECTOR\n} from './IndexerItems';\nimport { useComponentTheme } from '../hooks/UNSAFE_useComponentTheme';\nimport { IndexerStyles } from './themes/IndexerStyles.css';\nimport { IndexerRedwoodTheme } from './themes/redwood/IndexerTheme';\nimport { useTestId, TestIdProps } from '../hooks/UNSAFE_useTestId';\n\nexport type CommitDetail<K> = {\n value: K;\n};\n\ntype Props<K> = {\n /**\n * An array of sections, the default sections is an\n * array of 26 English alphabets and the # others character\n */\n sections?: Section<K>[];\n\n /**\n * The currently selected Section\n */\n value?: K;\n\n /**\n * A function that will be invoked when selection happens,\n * no matter the Section was selected before or not.\n */\n onCommit?: (detail: CommitDetail<K>) => void;\n};\n\nconst defaultSections: Section<string>[] = [\n { key: 'A' },\n { key: 'B' },\n { key: 'C' },\n { key: 'D' },\n { key: 'E' },\n { key: 'F' },\n { key: 'G' },\n { key: 'H' },\n { key: 'I' },\n { key: 'J' },\n { key: 'K' },\n { key: 'L' },\n { key: 'M' },\n { key: 'N' },\n { key: 'O' },\n { key: 'P' },\n { key: 'Q' },\n { key: 'R' },\n { key: 'S' },\n { key: 'T' },\n { key: 'U' },\n { key: 'V' },\n { key: 'W' },\n { key: 'X' },\n { key: 'Y' },\n { key: 'Z' }\n];\n\n/**\n * Pure Preact based component that consumes Collection component\n * and renders an indexer.\n */\nexport function Indexer<K extends string | number>({\n sections = defaultSections as Section<K>[],\n value,\n onCommit = () => {},\n testId\n}: Props<K> & TestIdProps) {\n const rootRef = useRef<HTMLDivElement>(null);\n const ulRef = useRef<HTMLUListElement>(null);\n const currElementRef = createRef<HTMLLIElement>();\n const [current, setCurrent] = useState<K | undefined>(sections[0]?.key);\n // the number of sections in each truncation\n const [sectionsPerTruncation, setSectionsPerTruncation] = useState<number>(-1);\n // the total number of rendered sections and separators\n const renderedSectionsCount = useRef<number>(-1);\n const itemHeightRef = useRef<number>(0);\n // the id for aria describedby\n const uniqueId = useId();\n\n const [showFocusRing, focusRingProps] = useCollectionFocusRing(rootRef, ['ArrowUp', 'ArrowDown']);\n\n const { currentKeyProps } = useCurrentKey(\n (element) => keyExtractor(element, ITEM_SELECTOR),\n true,\n getPrevNextKey(rootRef.current, current, true, ITEM_SELECTOR),\n getPrevNextKey(rootRef.current, current, false, ITEM_SELECTOR),\n undefined,\n undefined,\n current,\n (detail: CurrentKeyDetail<K>) => setCurrent(detail.value)\n );\n\n const { selectionProps } = useSingleSelection(\n (element) => handleKeyExtract(element, ulRef, current as K),\n // pass in undefined so onCommit handler will be called\n // no matter whether the Section was selected before or not\n undefined,\n (detail: SingleSelectionDetail<K>) => handleSelection(detail, onCommit, sections)\n );\n\n /**\n * Item renderer that will return a section item or a section separator\n * based on the sectionsPerTruncation and item context index.\n * @param context item context\n */\n const itemRenderer = (context: ItemContext<Section<K>>): ComponentChildren => {\n const last = sections.length - 1;\n renderedSectionsCount.current += 1;\n\n const commonProps = {\n context,\n ref: currElementRef,\n currentKey: current as K,\n selectedKey: value as K,\n valueNow: renderedSectionsCount.current,\n isFocusRingVisible: !!showFocusRing\n };\n\n // render the last and the others character, they are always present\n if (context.index === last) {\n return <LastSectionItem {...commonProps} lastValueNow={renderedSectionsCount.current + 1} />;\n }\n\n // render a section, in the non-truncation case or when it is the first in a truncation\n if (sectionsPerTruncation <= 1 || context.index % sectionsPerTruncation === 0) {\n return <SectionItem {...commonProps} />;\n }\n\n // render the separator in the middle of a truncation\n const separatorProps = { ...commonProps, sectionsPerTruncation, last, sections };\n if (hasSeparator(separatorProps)) {\n return <SeparatorItem {...separatorProps} />;\n }\n\n // remove the count for truncated sections\n renderedSectionsCount.current -= 1;\n\n return null;\n };\n\n // truncate the Indexer during resize\n const handleResize = useCallback(\n (entries: ResizeObserverEntry[]) => {\n for (const entry of entries) {\n updateSectionsPerTruncation(\n entry.contentRect.height,\n itemHeightRef.current,\n sections.length,\n sections[0]?.key,\n sectionsPerTruncation,\n setSectionsPerTruncation,\n setCurrent\n );\n }\n },\n [sections, sectionsPerTruncation]\n );\n\n useEffect(() => {\n if (ulRef.current) {\n // Get aria values from IndexerItem to update aria values on Indexer ul element\n ulRef.current.setAttribute('aria-valuemax', renderedSectionsCount.current + 1 + '');\n ulRef.current.setAttribute(\n 'aria-valuetext',\n currElementRef.current?.dataset?.['ojValuetext'] || ''\n );\n ulRef.current.setAttribute(\n 'aria-valuenow',\n currElementRef.current?.dataset?.['ojValuenow'] || ''\n );\n }\n renderedSectionsCount.current = -1;\n });\n\n /**\n * Set up the initial values for sectionsPerTruncation and event listeners\n */\n useEffect(() => {\n const root = rootRef.current;\n if (root) {\n itemHeightRef.current = root.querySelector('li')?.offsetHeight || 0;\n updateSectionsPerTruncation(\n root.offsetHeight,\n itemHeightRef.current,\n sections.length,\n sections[0]?.key,\n sectionsPerTruncation,\n setSectionsPerTruncation,\n setCurrent\n );\n }\n }, [sections, sectionsPerTruncation]);\n\n /**\n * Set up resize observer and refresh the resize observer when\n * sectionsPerTruncation is changed, otherwise it will only have the\n * old copy of sectionsPerTruncation.\n */\n useEffect(() => {\n const root = rootRef.current;\n if (root) {\n const resizeObserver = new ResizeObserver((entries: ResizeObserverEntry[]) => {\n handleResize(entries);\n });\n resizeObserver.observe(root);\n return () => {\n resizeObserver.unobserve(root);\n };\n }\n return undefined;\n }, [sectionsPerTruncation, handleResize]);\n\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n const {\n styles: { baseStyle, innerStyle }\n } = useComponentTheme<never, IndexerStyles>(IndexerRedwoodTheme);\n const testIdProps = useTestId(testId);\n\n return (\n <div ref={rootRef} class={baseStyle} {...testIdProps}>\n <Flex align=\"center\" width=\"6x\" height=\"100%\">\n <ul\n {...mergeProps(currentKeyProps, focusRingProps, selectionProps)}\n ref={ulRef}\n tabIndex={0}\n aria-label=\"Indexer\"\n aria-orientation=\"vertical\"\n aria-valuemin={0}\n aria-describedby={uniqueId}\n role=\"slider\"\n class={innerStyle}>\n <Collection items={sections}>{itemRenderer}</Collection>\n </ul>\n </Flex>\n <HiddenAccessible>\n <span id={uniqueId}>{getIndexerDescription(translations)}</span>\n </HiddenAccessible>\n </div>\n );\n}\n\n// A function to extract key for selection\nconst handleKeyExtract = <K extends string | number>(\n element: HTMLElement,\n rootRef: RefObject<HTMLElement>,\n current: K\n) => {\n if (element === rootRef.current) {\n return current === undefined ? null : current;\n }\n return keyExtractor(element, ITEM_SELECTOR) as K;\n};\n\nconst handleSelection = <K extends string | number>(\n detail: SingleSelectionDetail<K>,\n onCommit: (value: CommitDetail<K>) => void,\n sections: Section<K>[]\n) => {\n if (detail.value === SECTION_OTHERS.key) {\n onCommit({ value: SECTION_OTHERS.key as K });\n } else {\n const selectedSection = sections.find((section) => section.key === detail.value) as Section<K>;\n onCommit({ value: selectedSection.key as K });\n }\n};\n\n/**\n * A function that calculates the section count, based on\n * the container height and the number of sections\n * @param height height of Indexer container\n */\nconst updateSectionsPerTruncation = <K extends string | number>(\n height: number,\n itemHeight: number,\n sectionsLength: number,\n firstSectionKey: K,\n sectionsPerTruncation: number,\n setSectionsPerTruncation: Dispatch<StateUpdater<number>>,\n setCurrent: Dispatch<StateUpdater<K | undefined>>\n) => {\n if (height === 0 || itemHeight === 0) {\n return;\n }\n\n const maxSections = height / itemHeight;\n const last = sectionsLength - 1;\n\n // when the container size is too small to hold two sections\n if (maxSections < 2) {\n if (sectionsPerTruncation !== last) {\n setSectionsPerTruncation(last);\n setCurrent(firstSectionKey);\n }\n\n // no truncation\n // compare with < 0.01 for the deviation from calculation, when sectionsLength and maxSections\n // are about the same, maxNum === sectionsLength doesn't work\n } else if (maxSections > sectionsLength || sectionsLength - maxSections < 0.01) {\n if (sectionsPerTruncation > 1) {\n setSectionsPerTruncation(1);\n setCurrent(firstSectionKey);\n }\n\n // need truncation\n } else {\n const tempSectionCount = findSectionCount(maxSections, last);\n if (tempSectionCount !== sectionsPerTruncation && tempSectionCount < sectionsLength) {\n setSectionsPerTruncation(tempSectionCount);\n setCurrent(firstSectionKey);\n }\n }\n};\n\n/**\n * A helper function to find the best section count\n * in a truncation\n *\n * @param maxSections maximum number of sections allowed in a truncation\n * @param last the index of last section\n */\nconst findSectionCount = (maxSections: number, last: number) => {\n // need truncation\n maxSections -= 2; // minus the last character and the others character\n maxSections /= 2; // each truncation has a section and a separator\n\n const newSectionCount = Math.round(last / maxSections) + 1;\n const truncationLeftover = last % newSectionCount;\n const truncationCount = Math.floor(last / newSectionCount) + (truncationLeftover > 1 ? 1 : 0);\n\n // When the sectionCount becomes greater, it will result in\n // same truncations but with different sections appearing.\n // The following is to find the best sectionCount in this case\n // and prevent unnecessary truncations.\n let tempLeftover = last - (truncationCount - 1) * newSectionCount;\n let tempSectionCount = newSectionCount;\n while (tempSectionCount > tempLeftover) {\n tempSectionCount -= 1;\n tempLeftover = last - (truncationCount - 1) * tempSectionCount;\n }\n if (tempSectionCount != newSectionCount) {\n tempSectionCount += 1;\n }\n\n return tempSectionCount;\n};\n\n/**\n * Helper function to find the aria description for Indexer,\n * based on whether current device is a mobile device\n */\nfunction getIndexerDescription(translations: any) {\n if (isMobile()) {\n return translations.indexer_touchInstructionText();\n } else {\n return translations.indexer_keyboardInstructionText();\n }\n}\n"],"names":["SECTION_OTHERS","Object","freeze","key","label","ITEM_SELECTOR","SectionItem","forwardRef","props","ref","translations","useTranslationBundle","context","selectedKey","isSelected","data","commonProps","getCommonProps","classes","useComponentTheme","IndexerRedwoodTheme","focused","isFocusRingVisible","disabled","isDisabled","selected","itemClasses","classNames","sectionLabel","valueText","indexer_disabledLabel","SECTION","_jsx","jsx","class","children","currentKey","valueNow","LastSectionItem","lastValueNow","sectionProps","_jsxs","jsxs","Fragment","OthersItem","index","othersClasses","othersValueText","SeparatorItem","sections","from","to","getSeparatorRange","styles","dotStyle","isInSeparatorMiddle","fromText","toText","separatorClasses","separatorValueText","indexer_separatorLabel","FROM_SECTION","TO_SECTION","Flex","align","justify","sectionsPerTruncation","last","Math","floor","defaultSections","handleKeyExtract","element","rootRef","current","undefined","keyExtractor","handleSelection","detail","onCommit","value","find","section","updateSectionsPerTruncation","height","itemHeight","sectionsLength","firstSectionKey","setSectionsPerTruncation","setCurrent","maxSections","tempSectionCount","findSectionCount","newSectionCount","round","truncationLeftover","truncationCount","tempLeftover","getIndexerDescription","isMobile","indexer_touchInstructionText","indexer_keyboardInstructionText","testId","useRef","ulRef","currElementRef","createRef","useState","renderedSectionsCount","itemHeightRef","uniqueId","useId","showFocusRing","focusRingProps","useCollectionFocusRing","currentKeyProps","useCurrentKey","getPrevNextKey","selectionProps","useSingleSelection","handleResize","useCallback","entries","entry","contentRect","length","useEffect","setAttribute","dataset","root","querySelector","offsetHeight","resizeObserver","ResizeObserver","observe","unobserve","baseStyle","innerStyle","testIdProps","useTestId","width","mergeProps","tabIndex","role","Collection","items","separatorProps","hasSeparator","HiddenAccessible","id"],"mappings":"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"}
1
+ {"version":3,"file":"Indexer-357554c4.js","sources":["../../src/UNSAFE_Indexer/IndexerItems.tsx","../../src/UNSAFE_Indexer/Indexer.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 */\nimport { Fragment } from 'preact';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { Flex } from '../UNSAFE_Flex';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport type { BundleType } from '../resources/nls/bundle';\nimport { ItemContext } from 'src/UNSAFE_Collection';\nimport { forwardRef, ForwardedRef } from 'preact/compat';\nimport { useComponentTheme } from '../hooks/UNSAFE_useComponentTheme';\nimport { IndexerStyles, IndexerItemVariantOptions } from './themes/IndexerStyles.css';\nimport { IndexerRedwoodTheme } from './themes/redwood/IndexerTheme';\n\n/**\n * Type of a section\n */\nexport type Section<K> = {\n /**\n * The key of each section\n */\n key: K;\n /**\n * The label of each section\n */\n label?: string;\n /**\n * A property that indicates whether the section\n * is disabled or not. Typically, when Indexer is\n * used with ListView, a disabled section implies\n * that there's no corresponding items in the ListView\n */\n isDisabled?: boolean;\n};\n\n/**\n * The others section variable that application could use\n * to compare value\n */\n// const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\nexport const SECTION_OTHERS: Section<string> = Object.freeze({\n key: '__others__',\n label: '#'\n});\n\nexport const ITEM_SELECTOR = '[data-oj-key]';\n\nexport type SectionProps<K> = {\n context: ItemContext<Section<K>>;\n currentKey: K;\n selectedKey: K;\n valueNow: number; // the index of an item within currently visible sections\n isFocusRingVisible: boolean;\n};\n\nexport const SectionItem = forwardRef(\n <K extends string | number>(props: SectionProps<K>, ref: ForwardedRef<HTMLLIElement>) => {\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n const { context, selectedKey } = props;\n const isSelected = context.data.key === selectedKey;\n const commonProps = getCommonProps(props, ref);\n\n const { classes } = useComponentTheme<IndexerItemVariantOptions, IndexerStyles>(\n IndexerRedwoodTheme,\n {\n focused: commonProps.ref && commonProps.isFocusRingVisible ? 'isFocused' : 'notFocused',\n disabled: context.data.isDisabled ? 'isDisabled' : 'notDisabled',\n selected: isSelected ? 'isSelected' : 'notSelected'\n }\n );\n const itemClasses = classNames([classes]);\n\n const sectionLabel = context.data.label || context.data.key;\n const valueText = context.data.isDisabled\n ? translations.indexer_disabledLabel({ SECTION: `${sectionLabel}` })\n : `${sectionLabel}`;\n\n return (\n <li\n {...commonProps}\n class={itemClasses}\n data-oj-valuetext={valueText}\n data-oj-disabled={context.data.isDisabled}>\n {context.data.label || context.data.key}\n </li>\n );\n }\n);\n\nfunction getCommonProps<K>(\n { context, currentKey, valueNow, isFocusRingVisible }: SectionProps<K>,\n ref: ForwardedRef<HTMLLIElement>\n) {\n const isCurrent = context.data.key === currentKey;\n return {\n ...(isCurrent && { ref }),\n key: context.data.key,\n 'data-oj-key': context.data.key,\n 'data-oj-key-type': typeof context.data.key,\n 'data-oj-valuenow': valueNow,\n isFocusRingVisible: !!isFocusRingVisible\n };\n}\n\ntype LastSectionProps<K> = SectionProps<K> & {\n lastValueNow: number;\n};\n\n// render the last section, that contains the last character and others character\nexport const LastSectionItem = forwardRef(\n <K extends string | number>(\n { lastValueNow, ...sectionProps }: LastSectionProps<K>,\n ref: ForwardedRef<HTMLLIElement>\n ) => {\n const commonProps = { ...sectionProps, ref };\n return (\n <Fragment>\n <SectionItem {...commonProps} />\n <OthersItem\n {...commonProps}\n ref={ref}\n context={{ index: -1, data: SECTION_OTHERS } as ItemContext<Section<K>>}\n valueNow={lastValueNow}\n />\n </Fragment>\n );\n }\n);\n\nconst OthersItem = forwardRef(<K,>(props: SectionProps<K>, ref: ForwardedRef<HTMLLIElement>) => {\n const { context, selectedKey } = props;\n const commonProps = getCommonProps(props, ref);\n\n const isSelected = context.data.key === selectedKey;\n const { classes } = useComponentTheme<IndexerItemVariantOptions>(IndexerRedwoodTheme, {\n focused: commonProps.ref && commonProps.isFocusRingVisible ? 'isFocused' : 'notFocused',\n selected: isSelected ? 'isSelected' : 'notSelected'\n });\n const othersClasses = classNames([classes]);\n const othersValueText = SECTION_OTHERS.label;\n\n return (\n <li {...commonProps} class={othersClasses} data-oj-valuetext={othersValueText}>\n {context.data.label}\n </li>\n );\n});\n\ntype SeparatorProps<K> = SectionProps<K> & {\n sectionsPerTruncation: number;\n last: number;\n sections: Section<K>[];\n};\n\nexport const SeparatorItem = forwardRef(\n <K extends string | number>(props: SeparatorProps<K>, ref: ForwardedRef<HTMLLIElement>) => {\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n const { context, sections } = props;\n const commonProps = getCommonProps(props, ref);\n const { from, to } = getSeparatorRange(props);\n const {\n classes,\n styles: { dotStyle }\n } = useComponentTheme<IndexerItemVariantOptions, IndexerStyles>(IndexerRedwoodTheme, {\n focused: commonProps.ref && commonProps.isFocusRingVisible ? 'isFocused' : 'notFocused'\n });\n\n if (!isInSeparatorMiddle(context.index, from, to)) {\n return null;\n }\n\n const fromText = sections[from].label || sections[from].key;\n const toText = sections[to].label || sections[to].key;\n\n const separatorClasses = classNames([classes]);\n\n const separatorValueText = translations.indexer_separatorLabel({\n FROM_SECTION: `${fromText}`,\n TO_SECTION: `${toText}`\n });\n\n return (\n <li {...commonProps} class={separatorClasses} data-oj-valuetext={separatorValueText}>\n <Flex align=\"center\" justify=\"center\">\n <div class={dotStyle}></div>\n </Flex>\n </li>\n );\n }\n);\n\nexport function hasSeparator<K>(props: SeparatorProps<K>) {\n const { from, to } = getSeparatorRange(props);\n return isInSeparatorMiddle(props.context.index, from, to);\n}\n\nfunction getSeparatorRange<K>({ context, sectionsPerTruncation, last }: SeparatorProps<K>) {\n const from = context.index - (context.index % sectionsPerTruncation) + 1;\n let to = from + sectionsPerTruncation - 2;\n to = to >= last ? last - 1 : to;\n\n return { from, to };\n}\n\nfunction isInSeparatorMiddle(index: number, from: number, to: number) {\n return index === Math.floor((from + to) / 2);\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, createRef, type RefObject } from 'preact';\nimport { useEffect, useRef, useState, StateUpdater, useCallback, Dispatch } from 'preact/hooks';\nimport { Flex } from '../UNSAFE_Flex';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { useSingleSelection } from '../hooks/PRIVATE_useSingleSelection/useSingleSelection';\nimport { useCurrentKey } from '../hooks/PRIVATE_useCurrentKey';\nimport { useCollectionFocusRing } from '../hooks/PRIVATE_useCollectionFocusRing';\nimport { keyExtractor, getPrevNextKey, isMobile } from '../utils/PRIVATE_collectionUtils';\nimport { useId } from '../hooks/UNSAFE_useId';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport type { BundleType } from '../resources/nls/bundle';\nimport { HiddenAccessible } from '../UNSAFE_HiddenAccessible';\nimport { ItemContext, CurrentKeyDetail, SingleSelectionDetail } from '../UNSAFE_Collection';\nimport { Collection } from '../PRIVATE_Collection';\nimport {\n Section,\n SectionItem,\n LastSectionItem,\n SeparatorItem,\n SECTION_OTHERS,\n hasSeparator,\n ITEM_SELECTOR\n} from './IndexerItems';\nimport { useComponentTheme } from '../hooks/UNSAFE_useComponentTheme';\nimport { IndexerStyles } from './themes/IndexerStyles.css';\nimport { IndexerRedwoodTheme } from './themes/redwood/IndexerTheme';\nimport { useTestId, TestIdProps } from '../hooks/UNSAFE_useTestId';\n\nexport type CommitDetail<K> = {\n value: K;\n};\n\ntype Props<K> = {\n /**\n * An array of sections, the default sections is an\n * array of 26 English alphabets and the # others character\n */\n sections?: Section<K>[];\n\n /**\n * The currently selected Section\n */\n value?: K;\n\n /**\n * A function that will be invoked when selection happens,\n * no matter the Section was selected before or not.\n */\n onCommit?: (detail: CommitDetail<K>) => void;\n};\n\nconst defaultSections: Section<string>[] = [\n { key: 'A' },\n { key: 'B' },\n { key: 'C' },\n { key: 'D' },\n { key: 'E' },\n { key: 'F' },\n { key: 'G' },\n { key: 'H' },\n { key: 'I' },\n { key: 'J' },\n { key: 'K' },\n { key: 'L' },\n { key: 'M' },\n { key: 'N' },\n { key: 'O' },\n { key: 'P' },\n { key: 'Q' },\n { key: 'R' },\n { key: 'S' },\n { key: 'T' },\n { key: 'U' },\n { key: 'V' },\n { key: 'W' },\n { key: 'X' },\n { key: 'Y' },\n { key: 'Z' }\n];\n\n/**\n * Pure Preact based component that consumes Collection component\n * and renders an indexer.\n */\nexport function Indexer<K extends string | number>({\n sections = defaultSections as Section<K>[],\n value,\n onCommit = () => {},\n testId\n}: Props<K> & TestIdProps) {\n const rootRef = useRef<HTMLDivElement>(null);\n const ulRef = useRef<HTMLUListElement>(null);\n const currElementRef = createRef<HTMLLIElement>();\n const [current, setCurrent] = useState<K | undefined>(sections[0]?.key);\n // the number of sections in each truncation\n const [sectionsPerTruncation, setSectionsPerTruncation] = useState<number>(-1);\n // the total number of rendered sections and separators\n const renderedSectionsCount = useRef<number>(-1);\n const itemHeightRef = useRef<number>(0);\n // the id for aria describedby\n const uniqueId = useId();\n\n const [showFocusRing, focusRingProps] = useCollectionFocusRing(rootRef, ['ArrowUp', 'ArrowDown']);\n\n const { currentKeyProps } = useCurrentKey(\n (element) => keyExtractor(element, ITEM_SELECTOR),\n true,\n getPrevNextKey(rootRef.current, current, true, ITEM_SELECTOR),\n getPrevNextKey(rootRef.current, current, false, ITEM_SELECTOR),\n undefined,\n undefined,\n current,\n (detail: CurrentKeyDetail<K>) => setCurrent(detail.value)\n );\n\n const { selectionProps } = useSingleSelection(\n (element) => handleKeyExtract(element, ulRef, current as K),\n // pass in undefined so onCommit handler will be called\n // no matter whether the Section was selected before or not\n undefined,\n (detail: SingleSelectionDetail<K>) => handleSelection(detail, onCommit, sections)\n );\n\n /**\n * Item renderer that will return a section item or a section separator\n * based on the sectionsPerTruncation and item context index.\n * @param context item context\n */\n const itemRenderer = (context: ItemContext<Section<K>>): ComponentChildren => {\n const last = sections.length - 1;\n renderedSectionsCount.current += 1;\n\n const commonProps = {\n context,\n ref: currElementRef,\n currentKey: current as K,\n selectedKey: value as K,\n valueNow: renderedSectionsCount.current,\n isFocusRingVisible: !!showFocusRing\n };\n\n // render the last and the others character, they are always present\n if (context.index === last) {\n return <LastSectionItem {...commonProps} lastValueNow={renderedSectionsCount.current + 1} />;\n }\n\n // render a section, in the non-truncation case or when it is the first in a truncation\n if (sectionsPerTruncation <= 1 || context.index % sectionsPerTruncation === 0) {\n return <SectionItem {...commonProps} />;\n }\n\n // render the separator in the middle of a truncation\n const separatorProps = { ...commonProps, sectionsPerTruncation, last, sections };\n if (hasSeparator(separatorProps)) {\n return <SeparatorItem {...separatorProps} />;\n }\n\n // remove the count for truncated sections\n renderedSectionsCount.current -= 1;\n\n return null;\n };\n\n // truncate the Indexer during resize\n const handleResize = useCallback(\n (entries: ResizeObserverEntry[]) => {\n for (const entry of entries) {\n updateSectionsPerTruncation(\n entry.contentRect.height,\n itemHeightRef.current,\n sections.length,\n sections[0]?.key,\n sectionsPerTruncation,\n setSectionsPerTruncation,\n setCurrent\n );\n }\n },\n [sections, sectionsPerTruncation]\n );\n\n useEffect(() => {\n if (ulRef.current) {\n // Get aria values from IndexerItem to update aria values on Indexer ul element\n ulRef.current.setAttribute('aria-valuemax', renderedSectionsCount.current + 1 + '');\n ulRef.current.setAttribute(\n 'aria-valuetext',\n currElementRef.current?.dataset?.['ojValuetext'] || ''\n );\n ulRef.current.setAttribute(\n 'aria-valuenow',\n currElementRef.current?.dataset?.['ojValuenow'] || ''\n );\n }\n renderedSectionsCount.current = -1;\n });\n\n /**\n * Set up the initial values for sectionsPerTruncation and event listeners\n */\n useEffect(() => {\n const root = rootRef.current;\n if (root) {\n itemHeightRef.current = root.querySelector('li')?.offsetHeight || 0;\n updateSectionsPerTruncation(\n root.offsetHeight,\n itemHeightRef.current,\n sections.length,\n sections[0]?.key,\n sectionsPerTruncation,\n setSectionsPerTruncation,\n setCurrent\n );\n }\n }, [sections, sectionsPerTruncation]);\n\n /**\n * Set up resize observer and refresh the resize observer when\n * sectionsPerTruncation is changed, otherwise it will only have the\n * old copy of sectionsPerTruncation.\n */\n useEffect(() => {\n const root = rootRef.current;\n if (root) {\n const resizeObserver = new ResizeObserver((entries: ResizeObserverEntry[]) => {\n handleResize(entries);\n });\n resizeObserver.observe(root);\n return () => {\n resizeObserver.unobserve(root);\n };\n }\n return undefined;\n }, [sectionsPerTruncation, handleResize]);\n\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n const {\n styles: { baseStyle, innerStyle }\n } = useComponentTheme<never, IndexerStyles>(IndexerRedwoodTheme);\n const testIdProps = useTestId(testId);\n\n return (\n <div ref={rootRef} class={baseStyle} {...testIdProps}>\n <Flex align=\"center\" width=\"6x\" height=\"100%\">\n <ul\n {...mergeProps(currentKeyProps, focusRingProps, selectionProps)}\n ref={ulRef}\n tabIndex={0}\n aria-label=\"Indexer\"\n aria-orientation=\"vertical\"\n aria-valuemin={0}\n aria-describedby={uniqueId}\n role=\"slider\"\n class={innerStyle}>\n <Collection items={sections}>{itemRenderer}</Collection>\n </ul>\n </Flex>\n <HiddenAccessible>\n <span id={uniqueId}>{getIndexerDescription(translations)}</span>\n </HiddenAccessible>\n </div>\n );\n}\n\n// A function to extract key for selection\nconst handleKeyExtract = <K extends string | number>(\n element: HTMLElement,\n rootRef: RefObject<HTMLElement>,\n current: K\n) => {\n if (element === rootRef.current) {\n return current === undefined ? null : current;\n }\n return keyExtractor(element, ITEM_SELECTOR) as K;\n};\n\nconst handleSelection = <K extends string | number>(\n detail: SingleSelectionDetail<K>,\n onCommit: (value: CommitDetail<K>) => void,\n sections: Section<K>[]\n) => {\n if (detail.value === SECTION_OTHERS.key) {\n onCommit({ value: SECTION_OTHERS.key as K });\n } else {\n const selectedSection = sections.find((section) => section.key === detail.value) as Section<K>;\n onCommit({ value: selectedSection.key as K });\n }\n};\n\n/**\n * A function that calculates the section count, based on\n * the container height and the number of sections\n * @param height height of Indexer container\n */\nconst updateSectionsPerTruncation = <K extends string | number>(\n height: number,\n itemHeight: number,\n sectionsLength: number,\n firstSectionKey: K,\n sectionsPerTruncation: number,\n setSectionsPerTruncation: Dispatch<StateUpdater<number>>,\n setCurrent: Dispatch<StateUpdater<K | undefined>>\n) => {\n if (height === 0 || itemHeight === 0) {\n return;\n }\n\n const maxSections = height / itemHeight;\n const last = sectionsLength - 1;\n\n // when the container size is too small to hold two sections\n if (maxSections < 2) {\n if (sectionsPerTruncation !== last) {\n setSectionsPerTruncation(last);\n setCurrent(firstSectionKey);\n }\n\n // no truncation\n // compare with < 0.01 for the deviation from calculation, when sectionsLength and maxSections\n // are about the same, maxNum === sectionsLength doesn't work\n } else if (maxSections > sectionsLength || sectionsLength - maxSections < 0.01) {\n if (sectionsPerTruncation > 1) {\n setSectionsPerTruncation(1);\n setCurrent(firstSectionKey);\n }\n\n // need truncation\n } else {\n const tempSectionCount = findSectionCount(maxSections, last);\n if (tempSectionCount !== sectionsPerTruncation && tempSectionCount < sectionsLength) {\n setSectionsPerTruncation(tempSectionCount);\n setCurrent(firstSectionKey);\n }\n }\n};\n\n/**\n * A helper function to find the best section count\n * in a truncation\n *\n * @param maxSections maximum number of sections allowed in a truncation\n * @param last the index of last section\n */\nconst findSectionCount = (maxSections: number, last: number) => {\n // need truncation\n maxSections -= 2; // minus the last character and the others character\n maxSections /= 2; // each truncation has a section and a separator\n\n const newSectionCount = Math.round(last / maxSections) + 1;\n const truncationLeftover = last % newSectionCount;\n const truncationCount = Math.floor(last / newSectionCount) + (truncationLeftover > 1 ? 1 : 0);\n\n // When the sectionCount becomes greater, it will result in\n // same truncations but with different sections appearing.\n // The following is to find the best sectionCount in this case\n // and prevent unnecessary truncations.\n let tempLeftover = last - (truncationCount - 1) * newSectionCount;\n let tempSectionCount = newSectionCount;\n while (tempSectionCount > tempLeftover) {\n tempSectionCount -= 1;\n tempLeftover = last - (truncationCount - 1) * tempSectionCount;\n }\n if (tempSectionCount != newSectionCount) {\n tempSectionCount += 1;\n }\n\n return tempSectionCount;\n};\n\n/**\n * Helper function to find the aria description for Indexer,\n * based on whether current device is a mobile device\n */\nfunction getIndexerDescription(translations: any) {\n if (isMobile()) {\n return translations.indexer_touchInstructionText();\n } else {\n return translations.indexer_keyboardInstructionText();\n }\n}\n"],"names":["SECTION_OTHERS","Object","freeze","key","label","ITEM_SELECTOR","SectionItem","forwardRef","props","ref","translations","useTranslationBundle","context","selectedKey","isSelected","data","commonProps","getCommonProps","classes","useComponentTheme","IndexerRedwoodTheme","focused","isFocusRingVisible","disabled","isDisabled","selected","itemClasses","classNames","sectionLabel","valueText","indexer_disabledLabel","SECTION","_jsx","jsx","class","children","currentKey","valueNow","LastSectionItem","lastValueNow","sectionProps","_jsxs","jsxs","Fragment","OthersItem","index","othersClasses","othersValueText","SeparatorItem","sections","from","to","getSeparatorRange","styles","dotStyle","isInSeparatorMiddle","fromText","toText","separatorClasses","separatorValueText","indexer_separatorLabel","FROM_SECTION","TO_SECTION","Flex","align","justify","sectionsPerTruncation","last","Math","floor","defaultSections","handleKeyExtract","element","rootRef","current","undefined","keyExtractor","handleSelection","detail","onCommit","value","find","section","updateSectionsPerTruncation","height","itemHeight","sectionsLength","firstSectionKey","setSectionsPerTruncation","setCurrent","maxSections","tempSectionCount","findSectionCount","newSectionCount","round","truncationLeftover","truncationCount","tempLeftover","getIndexerDescription","isMobile","indexer_touchInstructionText","indexer_keyboardInstructionText","testId","useRef","ulRef","currElementRef","createRef","useState","renderedSectionsCount","itemHeightRef","uniqueId","useId","showFocusRing","focusRingProps","useCollectionFocusRing","currentKeyProps","useCurrentKey","getPrevNextKey","selectionProps","useSingleSelection","handleResize","useCallback","entries","entry","contentRect","length","useEffect","setAttribute","dataset","root","querySelector","offsetHeight","resizeObserver","ResizeObserver","observe","unobserve","baseStyle","innerStyle","testIdProps","useTestId","width","mergeProps","tabIndex","role","Collection","items","separatorProps","hasSeparator","HiddenAccessible","id"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- define(['exports', 'preact/jsx-runtime', './layoutUtils-c2938c54', './chartUtils-ed1b8cf4', './useChartDnd-947ed9e4', './LineSeries-a549e727', './dataStyleUtils-7ba616b8', './useUser-85c781ea', './colorUtils-a785c4c4', './accUtils-530bdb90', './Common/themes/themeContract.css', './Chart-e2807ff7'], (function(e,t,i,n,s,r,o,a,l,d,g,c){"use strict";function h(e){return t.jsx(u,{datatip:()=>({content:""}),zoomAndScroll:"off",overview:"off",plotArea:{yMajorTick:{isRendered:!1}},xAxis:{tickLabel:{autoRotate:!1,isRendered:!!e.xAxis?.timeAxisType}},series:e.series,groups:e.groups,getDataItem:e.getDataItem,yAxis:{tickLabel:{isRendered:!1}},type:e.type})}const I=.2,x=.2;function u({width:e,height:d,selectedIds:u=[],hiddenIds:m=[],highlightedIds:f,hideAndShowBehavior:p="none",orientation:v="vertical",yAxis:S,series:y,groups:C,isStacked:A=!1,getDataItem:b,selectionMode:D="none",drilling:L="off",type:T="line",overview:k="off",dataLabelEffect:M="outline",...j}){const{direction:w,forcedColors:E}=a.useUser(),U="active"===E,F=void 0!==j.testId,R="rtl"===w,z="log"===S?.scale,W=j.xAxis?.timeAxisType,H=new Set(m),P=new Set(u),N=new Set(f),q="horizontal"===v,B=l.getColorRamp(),V=A?s.getCumulativeSeries(y.length,C.length,b,H,z):s.getSeriesData(y?.length,C?.length,b,H,z),G=(e,t)=>A?{...b(e,t),value:V[e][t]}:b(e,t),O=s.getMarkers(),J="lineWithArea"===T?x:1,K="area"===T||"lineWithArea"===T,Q="area"===T,X=[];return t.jsx(c.Chart,{width:e,height:d,selectedIds:P,hiddenIds:m,hideAndShowBehavior:p,orientation:v,yAxis:S,series:y,groups:C,selectionMode:D,drilling:L,isStacked:A,getDataItem:b,findNearest:(e,t)=>i.findNearestDataPoint(y,C,e,t,G,A,(()=>({offset:0,dataWidth:0})),((e,t)=>t.transform(e)),z,0,H,W),getDataItemPos:(e,t)=>(i,s)=>n.getLineAreaChartItemPosition(i,s,V,b,C,q,e,t,W),getMarkerInfo:(e,t)=>({color:o.getItemColor(e,t,y,b),type:o.getMarkerType(e,t,b)}),renderGridLinesInFront:K,getNavUtil:(e,t)=>o.getLineAreaChartNavUtil(b,y.length,e,t,A,R,q),getGapRatio:()=>1,offset:I,isRtl:R,overview:k,defaultOverviewContentRenderer:()=>t.jsx(h,{series:y,groups:C,getDataItem:b,type:T}),...j,children:({xStartIndex:e,xEndIndex:i,xScale:o,yScale:a,activeId:l,focusedItemInfo:d,hoveredItemInfo:c,isPointInsideMarquee:h,defaultFontSize:I,getTextDimensions:x})=>t.jsxs(t.Fragment,{children:[V.map(((u,m)=>{if(0===u.length)return;const p=y[m],S=s.getLineAreaSegments(a,o,u,e,i,q,z,C,m,G,W);X[m]=S[0];const T="curved"===p.lineType&&A&&V.length>1&&m>0,k=void 0===f||0===f.length||N.has(p.id),w=A&&0!=m?X.reduce(((e,t,i)=>i>=m?e:t.length>0?i:e),0):void 0;return t.jsxs(t.Fragment,{children:[K&&t.jsx(n.AreaSeries,{yScale:a,lineType:p.lineType,color:p.areaColor||B[m%B.length],isHorizontal:q,areaColorOpacity:J,isBottomSegmentCurved:T,bottomCoords:void 0!==w&&X[w].some((e=>null!=e))?X[w]:void 0,lineSegments:S,isLog:z,isHighlighted:k,seriesIndex:m}),t.jsx(r.LineSeries,{lineType:p.lineType,lineColor:Q?g.colorSchemeVars.dvt.contrastLine:p.lineColor,lineWidth:Q?A?2.5:1.25:p.lineWidth,lineStyle:p.lineStyle,color:p.lineColor||B[m%B.length],lineSegmentCoords:S,isHorizontal:q,isHighlighted:k,seriesIndex:m}),!A&&t.jsx(r.MarkersWithLabel,{yScale:a,xScale:o,groups:C,series:p,timeAxisType:W,color:p.lineColor||p.areaColor||B[m%B.length],seriesIndex:m,startIndex:e,endIndex:i,markerType:O[m%O.length],orientation:v,isLog:z,activeId:l,getDataItem:b,isPointInsideMarquee:h,selectedIds:P,highlightedIds:void 0!==f?N:void 0,focusedItemIndex:d.seriesIndex!==m||!d.isFocusVisible||j.isDataCursorEnabled&&j.dataCursorStyle?.isMarkerDisplayed?void 0:d.groupIndex,hoveredItemIndex:c?.isCurrent&&c.seriesIndex===m?c.groupIndex:void 0,isSelectionEnabled:"single"===D||"multiple"===D,isDrillEnabled:"on"===L,defaultFontSize:I,dataLabelEffect:M,isHighContrast:U,isTestEnv:F,getTextDimensions:x})]})})),A&&V.map(((n,s)=>{if(0===n.length)return;const g=y[s];return t.jsx(r.MarkersWithLabel,{yScale:a,series:y[s],xScale:o,groups:C,timeAxisType:W,color:g.lineColor||g.areaColor||B[s%B.length],seriesIndex:s,isPointInsideMarquee:h,startIndex:e,endIndex:i,markerType:O[s%O.length],orientation:v,isLog:z,activeId:l,getDataItem:b,selectedIds:P,focusedItemIndex:d.seriesIndex===s&&d.isFocusVisible?d.groupIndex:void 0,hoveredItemIndex:c?.isCurrent&&c.seriesIndex===s?c.groupIndex:void 0,isSelectionEnabled:"single"===D||"multiple"===D,isDrillEnabled:"on"===L,defaultFontSize:I,dataLabelEffect:M,isHighContrast:U,isTestEnv:F,getTextDimensions:x})}))]})})}e.LineAreaChart=u}));
2
- //# sourceMappingURL=LineAreaChart-2f4be408.js.map
1
+ define(['exports', 'preact/jsx-runtime', './layoutUtils-c2938c54', './chartUtils-ed1b8cf4', './useChartDnd-947ed9e4', './LineSeries-a549e727', './dataStyleUtils-7ba616b8', './useUser-85c781ea', './colorUtils-a785c4c4', './accUtils-530bdb90', './Common/themes/themeContract.css', './Chart-e2807ff7'], (function(e,t,i,n,s,r,o,a,l,d,g,c){"use strict";function h(e){return t.jsx(u,{datatip:()=>({content:""}),zoomAndScroll:"off",overview:"off",plotArea:{yMajorTick:{isRendered:!1}},xAxis:{tickLabel:{autoRotate:!1,isRendered:!!e.xAxis?.timeAxisType}},series:e.series,groups:e.groups,getDataItem:e.getDataItem,yAxis:{tickLabel:{isRendered:!1}},type:e.type})}const I=.2,x=.2;function u({width:e,height:d,selectedIds:u=[],hiddenIds:m=[],highlightedIds:f,hideAndShowBehavior:p="none",orientation:v="vertical",yAxis:S,series:y,groups:C,isStacked:A=!1,getDataItem:b,selectionMode:D="none",drilling:L="off",type:T="line",overview:k="off",dataLabelEffect:M="outline",...j}){const{direction:w,forcedColors:E}=a.useUser(),U="active"===E,F=void 0!==j.testId,R="rtl"===w,z="log"===S?.scale,W=j.xAxis?.timeAxisType,H=new Set(m),P=new Set(u),N=new Set(f),q="horizontal"===v,B=l.getColorRamp(),V=A?s.getCumulativeSeries(y.length,C.length,b,H,z):s.getSeriesData(y?.length,C?.length,b,H,z),G=(e,t)=>A?{...b(e,t),value:V[e][t]}:b(e,t),O=s.getMarkers(),J="lineWithArea"===T?x:1,K="area"===T||"lineWithArea"===T,Q="area"===T,X=[];return t.jsx(c.Chart,{width:e,height:d,selectedIds:P,hiddenIds:m,hideAndShowBehavior:p,orientation:v,yAxis:S,series:y,groups:C,selectionMode:D,drilling:L,isStacked:A,getDataItem:b,findNearest:(e,t)=>i.findNearestDataPoint(y,C,e,t,G,A,(()=>({offset:0,dataWidth:0})),((e,t)=>t.transform(e)),z,0,H,W),getDataItemPos:(e,t)=>(i,s)=>n.getLineAreaChartItemPosition(i,s,V,b,C,q,e,t,W),getMarkerInfo:(e,t)=>({color:o.getItemColor(e,t,y,b),type:o.getMarkerType(e,t,b)}),renderGridLinesInFront:K,getNavUtil:(e,t)=>o.getLineAreaChartNavUtil(b,y.length,e,t,A,R,q),getGapRatio:()=>1,offset:I,isRtl:R,overview:k,defaultOverviewContentRenderer:()=>t.jsx(h,{series:y,groups:C,getDataItem:b,type:T}),...j,children:({xStartIndex:e,xEndIndex:i,xScale:o,yScale:a,activeId:l,focusedItemInfo:d,hoveredItemInfo:c,isPointInsideMarquee:h,defaultFontSize:I,getTextDimensions:x})=>t.jsxs(t.Fragment,{children:[V.map(((u,m)=>{if(0===u.length)return;const p=y[m],S=s.getLineAreaSegments(a,o,u,e,i,q,z,C,m,G,W);X[m]=S[0];const T="curved"===p.lineType&&A&&V.length>1&&m>0,k=void 0===f||0===f.length||N.has(p.id),w=A&&0!=m?X.reduce(((e,t,i)=>i>=m?e:t.length>0?i:e),0):void 0;return t.jsxs(t.Fragment,{children:[K&&t.jsx(n.AreaSeries,{yScale:a,lineType:p.lineType,color:p.areaColor||B[m%B.length],isHorizontal:q,areaColorOpacity:J,isBottomSegmentCurved:T,bottomCoords:void 0!==w&&X[w].some((e=>null!=e))?X[w]:void 0,lineSegments:S,isLog:z,isHighlighted:k,seriesIndex:m}),t.jsx(r.LineSeries,{lineType:p.lineType,lineColor:Q?g.colorSchemeVars.dvt.contrastLine:p.lineColor,lineWidth:Q?A?2.5:1.25:p.lineWidth,lineStyle:p.lineStyle,color:p.lineColor||B[m%B.length],lineSegmentCoords:S,isHorizontal:q,isHighlighted:k,seriesIndex:m}),!A&&t.jsx(r.MarkersWithLabel,{yScale:a,xScale:o,groups:C,series:p,timeAxisType:W,color:p.lineColor||p.areaColor||B[m%B.length],seriesIndex:m,startIndex:e,endIndex:i,markerType:O[m%O.length],orientation:v,isLog:z,activeId:l,getDataItem:b,isPointInsideMarquee:h,selectedIds:P,highlightedIds:void 0!==f?N:void 0,focusedItemIndex:d.seriesIndex!==m||!d.isFocusVisible||j.isDataCursorEnabled&&j.dataCursorStyle?.isMarkerDisplayed?void 0:d.groupIndex,hoveredItemIndex:c?.isCurrent&&c.seriesIndex===m?c.groupIndex:void 0,isSelectionEnabled:"single"===D||"multiple"===D,isDrillEnabled:"on"===L,defaultFontSize:I,dataLabelEffect:M,isHighContrast:U,isTestEnv:F,getTextDimensions:x})]})})),A&&V.map(((n,s)=>{if(0===n.length)return;const g=y[s];return t.jsx(r.MarkersWithLabel,{yScale:a,series:y[s],xScale:o,groups:C,timeAxisType:W,color:g.lineColor||g.areaColor||B[s%B.length],seriesIndex:s,isPointInsideMarquee:h,startIndex:e,endIndex:i,markerType:O[s%O.length],orientation:v,isLog:z,activeId:l,getDataItem:G,selectedIds:P,focusedItemIndex:d.seriesIndex===s&&d.isFocusVisible?d.groupIndex:void 0,hoveredItemIndex:c?.isCurrent&&c.seriesIndex===s?c.groupIndex:void 0,isSelectionEnabled:"single"===D||"multiple"===D,isDrillEnabled:"on"===L,defaultFontSize:I,dataLabelEffect:M,isHighContrast:U,isTestEnv:F,getTextDimensions:x})}))]})})}e.LineAreaChart=u}));
2
+ //# sourceMappingURL=LineAreaChart-b4acee62.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LineAreaChart-2f4be408.js","sources":["../../src/UNSAFE_LineAreaChart/OverviewLineWithAreaChart.tsx","../../src/UNSAFE_LineAreaChart/LineAreaChart.tsx"],"sourcesContent":["import { LineAreaChart } from './LineAreaChart';\nimport { LineAreaChartProps, LineAreaItem } from './lineAreaChart.types';\n\nexport function OverviewLineAreaChart<K extends string | number, D extends LineAreaItem<K>>(\n props: LineAreaChartProps<K, D>\n) {\n return (\n <LineAreaChart\n datatip={() => ({ content: '' })}\n zoomAndScroll=\"off\"\n overview=\"off\"\n plotArea={{\n yMajorTick: {\n isRendered: false\n }\n }}\n xAxis={{\n tickLabel: {\n autoRotate: false,\n // @ts-ignore\n isRendered: props.xAxis?.timeAxisType ? true : false\n }\n }}\n series={props.series}\n groups={props.groups}\n getDataItem={props.getDataItem}\n yAxis={{\n tickLabel: {\n isRendered: false\n }\n }}\n type={props.type}\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 */\nimport { LineAreaChartProps, LineAreaItem } from './lineAreaChart.types';\nimport { findNearestDataPoint } from '#utils/PRIVATE_chartUtils/layoutUtils';\nimport { AreaSeries } from '#PRIVATE_LineAreaComponents/AreaSeries';\nimport { getCumulativeSeries, getMarkers, getSeriesData } from '#utils/PRIVATE_chartUtils/utils';\nimport { MarkersWithLabel } from '#PRIVATE_Chart/MarkersWithLabel';\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 '#PRIVATE_LineAreaComponents/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';\nimport { getLineAreaChartItemPosition } from '#PRIVATE_LineAreaComponents/utils/chartUtils';\nimport { OverviewLineAreaChart } from './OverviewLineWithAreaChart';\n\nconst AXIS_OFFSET = 0.2;\nconst LINE_WITH_AREA_OPACITY = 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 overview = 'off',\n dataLabelEffect = 'outline',\n ...props\n}: LineAreaChartProps<K, D>) {\n const { direction, forcedColors } = useUser();\n const isHighContrast = forcedColors === 'active';\n const isTestEnv = props.testId !== undefined;\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(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 // TODO: JET-71332\n //@ts-ignore\n return getLineAreaChartNavUtil<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 return getLineAreaChartItemPosition(\n seriesIndex,\n groupIndex,\n renderedSeries,\n getDataItem,\n groups,\n isHoriz,\n xScale,\n yScale,\n timeAxisType\n );\n };\n };\n\n const getMarkerColorAndType = (seriesIndex: number, groupIndex: number) => {\n return {\n color: getItemColor(seriesIndex, groupIndex, series, getDataItem),\n type: getMarkerType(seriesIndex, groupIndex, 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' ? LINE_WITH_AREA_OPACITY : 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 overview={overview}\n defaultOverviewContentRenderer={() => {\n return (\n <OverviewLineAreaChart\n series={series}\n groups={groups}\n getDataItem={getDataItem}\n type={type}\n />\n );\n }}\n {...props}>\n {({\n xStartIndex,\n xEndIndex,\n xScale,\n yScale,\n activeId,\n focusedItemInfo,\n hoveredItemInfo,\n isPointInsideMarquee,\n defaultFontSize,\n getTextDimensions\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 ||\n highlightedIds.length === 0 ||\n highlightedSet.has(seriesItem.id);\n\n const prevCoords =\n isStacked && index != 0\n ? allLineSegmentCoords.reduce((prevValue, newValue, j) => {\n // find the index i such that i < index, and series i has at least\n // one or more data item unhidden. Only such series will can be\n // used as bottomCoord for current series. Otherwise we have to use\n // baseline coord\n if (j >= index) {\n return prevValue;\n }\n if (newValue.length > 0) {\n return j;\n }\n return prevValue;\n }, 0)\n : undefined;\n\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 prevCoords !== undefined &&\n allLineSegmentCoords[prevCoords].some((value) => value != null)\n ? allLineSegmentCoords[prevCoords]\n : undefined\n }\n lineSegments={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 <MarkersWithLabel\n yScale={yScale}\n xScale={xScale}\n groups={groups}\n series={seriesItem}\n timeAxisType={timeAxisType}\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 highlightedIds={highlightedIds !== undefined ? highlightedSet : undefined}\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 defaultFontSize={defaultFontSize}\n dataLabelEffect={dataLabelEffect}\n isHighContrast={isHighContrast}\n isTestEnv={isTestEnv}\n getTextDimensions={getTextDimensions}\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 <MarkersWithLabel\n yScale={yScale}\n series={series[index]}\n xScale={xScale}\n groups={groups}\n timeAxisType={timeAxisType}\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 defaultFontSize={defaultFontSize}\n dataLabelEffect={dataLabelEffect}\n isHighContrast={isHighContrast}\n isTestEnv={isTestEnv}\n getTextDimensions={getTextDimensions}\n />\n );\n })}\n </>\n );\n }}\n </Chart>\n );\n}\n"],"names":["OverviewLineAreaChart","props","_jsx","jsx","LineAreaChart","datatip","content","zoomAndScroll","overview","plotArea","yMajorTick","isRendered","xAxis","tickLabel","autoRotate","timeAxisType","series","groups","getDataItem","yAxis","type","AXIS_OFFSET","LINE_WITH_AREA_OPACITY","width","height","selectedIds","hiddenIds","highlightedIds","hideAndShowBehavior","orientation","isStacked","selectionMode","drilling","dataLabelEffect","direction","forcedColors","useUser","isHighContrast","isTestEnv","undefined","testId","isRtl","isLog","scale","hiddenSet","Set","selectedSet","highlightedSet","isHoriz","colors","getColorRamp","renderedSeries","getCumulativeSeries","length","getSeriesData","renderedGetDataItem","seriesIndex","groupIndex","value","markers","getMarkers","areaOpacity","isAreaRendered","isContrastLineNeeded","allLineSegmentCoords","Chart","findNearest","xScale","yScale","findNearestDataPoint","offset","dataWidth","transform","getDataItemPos","getLineAreaChartItemPosition","getMarkerInfo","color","getItemColor","getMarkerType","renderGridLinesInFront","getNavUtil","startIndex","endIndex","getLineAreaChartNavUtil","getGapRatio","defaultOverviewContentRenderer","children","xStartIndex","xEndIndex","activeId","focusedItemInfo","hoveredItemInfo","isPointInsideMarquee","defaultFontSize","getTextDimensions","_jsxs","jsxs","_Fragment","Fragment","map","lineAreaSeries","index","seriesItem","lineSegmentCoords","getLineAreaSegments","isBottomSegmentCurved","lineType","isHighlighted","has","id","prevCoords","reduce","prevValue","newValue","j","AreaSeries","areaColor","isHorizontal","areaColorOpacity","bottomCoords","some","lineSegments","LineSeries","lineColor","colorSchemeVars","dvt","contrastLine","lineWidth","lineStyle","MarkersWithLabel","markerType","focusedItemIndex","isFocusVisible","isDataCursorEnabled","dataCursorStyle","isMarkerDisplayed","hoveredItemIndex","isCurrent","isSelectionEnabled","isDrillEnabled"],"mappings":"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"}
1
+ {"version":3,"file":"LineAreaChart-b4acee62.js","sources":["../../src/UNSAFE_LineAreaChart/OverviewLineWithAreaChart.tsx","../../src/UNSAFE_LineAreaChart/LineAreaChart.tsx"],"sourcesContent":["import { LineAreaChart } from './LineAreaChart';\nimport { LineAreaChartProps, LineAreaItem } from './lineAreaChart.types';\n\nexport function OverviewLineAreaChart<K extends string | number, D extends LineAreaItem<K>>(\n props: LineAreaChartProps<K, D>\n) {\n return (\n <LineAreaChart\n datatip={() => ({ content: '' })}\n zoomAndScroll=\"off\"\n overview=\"off\"\n plotArea={{\n yMajorTick: {\n isRendered: false\n }\n }}\n xAxis={{\n tickLabel: {\n autoRotate: false,\n // @ts-ignore\n isRendered: props.xAxis?.timeAxisType ? true : false\n }\n }}\n series={props.series}\n groups={props.groups}\n getDataItem={props.getDataItem}\n yAxis={{\n tickLabel: {\n isRendered: false\n }\n }}\n type={props.type}\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 */\nimport { LineAreaChartProps, LineAreaItem } from './lineAreaChart.types';\nimport { findNearestDataPoint } from '#utils/PRIVATE_chartUtils/layoutUtils';\nimport { AreaSeries } from '#PRIVATE_LineAreaComponents/AreaSeries';\nimport { getCumulativeSeries, getMarkers, getSeriesData } from '#utils/PRIVATE_chartUtils/utils';\nimport { MarkersWithLabel } from '#PRIVATE_Chart/MarkersWithLabel';\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 '#PRIVATE_LineAreaComponents/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';\nimport { getLineAreaChartItemPosition } from '#PRIVATE_LineAreaComponents/utils/chartUtils';\nimport { OverviewLineAreaChart } from './OverviewLineWithAreaChart';\n\nconst AXIS_OFFSET = 0.2;\nconst LINE_WITH_AREA_OPACITY = 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 overview = 'off',\n dataLabelEffect = 'outline',\n ...props\n}: LineAreaChartProps<K, D>) {\n const { direction, forcedColors } = useUser();\n const isHighContrast = forcedColors === 'active';\n const isTestEnv = props.testId !== undefined;\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(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 // TODO: JET-71332\n //@ts-ignore\n return getLineAreaChartNavUtil<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 return getLineAreaChartItemPosition(\n seriesIndex,\n groupIndex,\n renderedSeries,\n getDataItem,\n groups,\n isHoriz,\n xScale,\n yScale,\n timeAxisType\n );\n };\n };\n\n const getMarkerColorAndType = (seriesIndex: number, groupIndex: number) => {\n return {\n color: getItemColor(seriesIndex, groupIndex, series, getDataItem),\n type: getMarkerType(seriesIndex, groupIndex, 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' ? LINE_WITH_AREA_OPACITY : 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 overview={overview}\n defaultOverviewContentRenderer={() => {\n return (\n <OverviewLineAreaChart\n series={series}\n groups={groups}\n getDataItem={getDataItem}\n type={type}\n />\n );\n }}\n {...props}>\n {({\n xStartIndex,\n xEndIndex,\n xScale,\n yScale,\n activeId,\n focusedItemInfo,\n hoveredItemInfo,\n isPointInsideMarquee,\n defaultFontSize,\n getTextDimensions\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 ||\n highlightedIds.length === 0 ||\n highlightedSet.has(seriesItem.id);\n\n const prevCoords =\n isStacked && index != 0\n ? allLineSegmentCoords.reduce((prevValue, newValue, j) => {\n // find the index i such that i < index, and series i has at least\n // one or more data item unhidden. Only such series will can be\n // used as bottomCoord for current series. Otherwise we have to use\n // baseline coord\n if (j >= index) {\n return prevValue;\n }\n if (newValue.length > 0) {\n return j;\n }\n return prevValue;\n }, 0)\n : undefined;\n\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 prevCoords !== undefined &&\n allLineSegmentCoords[prevCoords].some((value) => value != null)\n ? allLineSegmentCoords[prevCoords]\n : undefined\n }\n lineSegments={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 <MarkersWithLabel\n yScale={yScale}\n xScale={xScale}\n groups={groups}\n series={seriesItem}\n timeAxisType={timeAxisType}\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 highlightedIds={highlightedIds !== undefined ? highlightedSet : undefined}\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 defaultFontSize={defaultFontSize}\n dataLabelEffect={dataLabelEffect}\n isHighContrast={isHighContrast}\n isTestEnv={isTestEnv}\n getTextDimensions={getTextDimensions}\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 <MarkersWithLabel\n yScale={yScale}\n series={series[index]}\n xScale={xScale}\n groups={groups}\n timeAxisType={timeAxisType}\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={renderedGetDataItem}\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 defaultFontSize={defaultFontSize}\n dataLabelEffect={dataLabelEffect}\n isHighContrast={isHighContrast}\n isTestEnv={isTestEnv}\n getTextDimensions={getTextDimensions}\n />\n );\n })}\n </>\n );\n }}\n </Chart>\n );\n}\n"],"names":["OverviewLineAreaChart","props","_jsx","jsx","LineAreaChart","datatip","content","zoomAndScroll","overview","plotArea","yMajorTick","isRendered","xAxis","tickLabel","autoRotate","timeAxisType","series","groups","getDataItem","yAxis","type","AXIS_OFFSET","LINE_WITH_AREA_OPACITY","width","height","selectedIds","hiddenIds","highlightedIds","hideAndShowBehavior","orientation","isStacked","selectionMode","drilling","dataLabelEffect","direction","forcedColors","useUser","isHighContrast","isTestEnv","undefined","testId","isRtl","isLog","scale","hiddenSet","Set","selectedSet","highlightedSet","isHoriz","colors","getColorRamp","renderedSeries","getCumulativeSeries","length","getSeriesData","renderedGetDataItem","seriesIndex","groupIndex","value","markers","getMarkers","areaOpacity","isAreaRendered","isContrastLineNeeded","allLineSegmentCoords","Chart","findNearest","xScale","yScale","findNearestDataPoint","offset","dataWidth","transform","getDataItemPos","getLineAreaChartItemPosition","getMarkerInfo","color","getItemColor","getMarkerType","renderGridLinesInFront","getNavUtil","startIndex","endIndex","getLineAreaChartNavUtil","getGapRatio","defaultOverviewContentRenderer","children","xStartIndex","xEndIndex","activeId","focusedItemInfo","hoveredItemInfo","isPointInsideMarquee","defaultFontSize","getTextDimensions","_jsxs","jsxs","_Fragment","Fragment","map","lineAreaSeries","index","seriesItem","lineSegmentCoords","getLineAreaSegments","isBottomSegmentCurved","lineType","isHighlighted","has","id","prevCoords","reduce","prevValue","newValue","j","AreaSeries","areaColor","isHorizontal","areaColorOpacity","bottomCoords","some","lineSegments","LineSeries","lineColor","colorSchemeVars","dvt","contrastLine","lineWidth","lineStyle","MarkersWithLabel","markerType","focusedItemIndex","isFocusVisible","isDataCursorEnabled","dataCursorStyle","isMarkerDisplayed","hoveredItemIndex","isCurrent","isSelectionEnabled","isDrillEnabled"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ define(['exports', 'preact/jsx-runtime', 'preact/hooks', './classNames-08d99695', './mergeProps-bcfa6a92', './keys-4755c121', './LoadMoreCollection-a6adbc3f', './VirtualizedCollection-63223f5e', 'preact/compat', './TabbableModeContext-a9c97640', './useId-c9578d26', './FocusTrap-60520575', './useInteractionStyle-76a64325', './mergeInterpolations-9ede4cf7', './flexitem-5db48325', './PRIVATE_List/themes/ListStyles.css', './collectionUtils-17f5cc64', './Skeleton-5839404b', './Flex-56ecdf4c', './Selector-2b0c34a7', './ImageVars.css-17386400', './useTheme-ac980f9a', './useTestId-3a316499', './CollectionInteractionContext-0b4ed98b', './useCollectionInteractionContext-f345e8f7', './useSelection-f0c7d74d', './useDropDownSelection-c946783d', './useCurrentKey-31c18053', './useCollectionFocusRing-66a6fc12', './useItemAction-821d1b6e', './useTabbableModeSet-dc176f1d', './useReorderableContext-a5453bd7', './Inset-a34e9c57', 'module'], (function(e,t,n,i,s,r,o,l,a,c,d,u,g,f,m,b,y,p,v,h,x,S,k,C,I,w,K,P,T,R,V,j,A,E){"use strict";const F=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"}}},M="[data-oj-key]";function L({children:e,context:s,itemDepth:r,isFocused:o,isFocusRingVisible:l,isActive:a,isGridlineVisible:y,isSelected:p,isTopGridlineVisible:v=!1,isTabbable:h=!1,role:x,selectionMode:S,suggestion:k,currentItemVariant:C,padding:I}){const w=n.useRef(null),K=n.useMemo((()=>F(x)),[x]),P=s.metadata.key,T=s.index,R="option"===K.cell?{role:K.cell,"aria-posinset":T+1,"aria-setsize":-1}:{role:K.cell},{interactionProps:V,applyActiveStyle:j,applyHoverStyle:A,applyPseudoHoverStyle:E}=g.useInteractionStyle(),M=b.listItemMultiVariantStyles({selectable:D(S,p)?"isSelectable":"notSelectable",selected:p?"isSelected":"notSelected",selectedSingle:p&&"single"===S?"isSelectedSingle":"notSelectedSingle",needsEventsHover:A?"isNeedsEventsHover":"notNeedsEventsHover",pseudoHover:E?"isPseudoHover":"notPseudoHover",active:j||a?"isActive":"notActive",focusHighlight:"highlight"===C&&o?"isFocusHighlight":"notFocusHighlight",focusRingVisible:l&&o?"isFocusRingVisible":"notFocusRingVisible",gridlineTop:v?"visible":"hidden",gridlineBottom:!y&&("end"!==k||y||p&&"single"===S)?"hidden":"visible"}),L=[];I&&("enabled"===I?L.push(b.paddingStyles.allPadding):"disabled"!==I&&("enabled"===I.top&&L.push(b.paddingStyles.topItemPadding),"enabled"===I.bottom&&L.push(b.paddingStyles.bottomItemPadding),"enabled"===I.start&&L.push(b.paddingStyles.startItemPadding),"enabled"===I.end&&L.push(b.paddingStyles.endItemPadding)));const H=i.classNames([M,...L]),z=f.mergeInterpolations([...Object.values(m.flexitemInterpolations)]),{class:N,...O}=z({flex:"1 1 auto",alignSelf:"center"}),G=i.classNames([N,"multiple"===S&&b.listItemStyles.checkboxContainer]);return t.jsx("div",{"aria-rowindex":"grid"===x?T+1:void 0,"aria-level":r,"data-oj-key":P,class:H,ref:w,role:K.item,...k&&{"data-oj-suggestion":!0},..."number"==typeof P&&{"data-oj-key-type":"number"},...V,children:t.jsx("div",{id:d.useId(),style:O,class:G,"aria-posinset":"grid"===x?void 0:T+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,...R,children:t.jsx(c.TabbableModeContext.Provider,{value:{isTabbable:h},children:t.jsx(u.FocusTrap,{isDisabled:!h,restoreFocusRef:!1,children:e(s)})})})})}const D=(e,t)=>"none"!==e&&("multiple"===e||!t),H=a.memo(L,((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&&e.padding===t.padding&&y.compareListItemContext(e.context,t.context))));function z({children:e,minimumCount:s=1}){const[r,o]=n.useState(!1);n.useEffect((()=>{setTimeout((()=>{o(!0)}),50)}),[]);const l=i.classNames([b.skeletonStyles.container]);return r&&e?t.jsx("div",{class:l,role:"presentation",children:[...Array(s)].map(((t,n)=>e(n)))}):null}const N="oj-collection-sparkle";function O({sparkleHeight:e}){const{name:n}=S.useTheme();if(e<=0)return null;const s=e+"px",r=i.classNames([b.sparkleStyles.base]),o=i.classNames([b.sparkleStyles.container,N,"redwood"===n&&x.globalImages]);return t.jsx("div",{class:o,children:t.jsx("div",{class:r,style:{height:s}})},"sparkle")}const G=(e,t)=>{if(0===t)return null;return e.slice(0,t).reduce(((e,n,i)=>{const s=n.metadata.key;return i===t-1?e.set(s,"end"):e.set(s,!0),e}),new Map)},B=(e,t,n)=>{if(e&&t&&(e.scrollIntoViewIfNeeded?e.scrollIntoViewIfNeeded():e.scrollIntoView({block:"nearest"}),n>0)){const i=t.getBoundingClientRect(),s=e.getBoundingClientRect(),r=i.top+n-s.top;r>0&&(t.scrollTop=t.scrollTop-r)}},_=(e,t)=>{const n=t.data.map((e=>e.metadata.key)),i=n.indexOf(e.value.start),s=n.indexOf(e.value.end),r=Math.min(i,s),o=Math.max(i,s);return-1===r?{offset:0,count:t.totalSize}:n.slice(r,o+1)},U=e=>!(!e.parentElement||!e.parentElement.classList.contains("oj-listview-expander"));const q=(e,t)=>t??{scroller:()=>e.current},Y={all:!1,keys:new Set},$=t.jsx(z,{minimumCount:25,children:()=>t.jsx(A.Inset,{variant:"listview",children:t.jsx(v.Flex,{height:"6x",align:"center",children:t.jsx(p.Skeleton,{height:"4x"})})})}),J=t.jsx("div",{class:o.LOADMORE_STYLE_CLASS,children:t.jsx(z,{minimumCount:3,children:()=>t.jsx(A.Inset,{variant:"listview",children:t.jsx(v.Flex,{height:"6x",align:"center",children:t.jsx(p.Skeleton,{height:"4x"})})})})}),Q=(e,t)=>{if(t){const n=Math.min(t.offset,e.offset+e.totalSize),i=n-e.offset;i>0&&(e={offset:n,data:e.data.slice(i,i+t.count),totalSize:e.totalSize,sizePrecision:e.sizePrecision})}return e};e.List=function({"aria-label":e,"aria-labelledby":a,allowTabbableMode:c=!0,children:d,data:u,gridlines:g,loadingIndicator:f=$,currentItemOverride:m,onPersistCurrentItem:p,onLoadRange:v,onSelectionChange:x,onItemAction:S,rangeExtractor:C,role:A="grid",selectedKeys:E=Y,selectionMode:D="none",viewportConfig:z,currentItemVariant:N,promotedSection:W,isVirtualized:X=!1,customItemRenderer:Z,scrollToVisibleOffset:ee,testId:te,scrollerRef:ne,reorderProps:ie,contextMenuTriggerProps:se,itemPadding:re,...oe}){const le=n.useRef(null),ae=n.useRef(!1),ce=n.useRef(),[de,ue]=n.useState(!1),ge="none"===D?void 0:"multiple"===D,fe=null===u?void 0:"exact"===u.sizePrecision?u.totalSize:-1,me=i.classNames([b.listStyles.base]),be="embedded"===I.useCollectionInteractionContext(),ye=void 0!==N?N:be?"highlight":"none",pe=n.useCallback(((e,t)=>{u&&(ce.current={detail:e,range:{offset:u.offset,count:u.data.length}},v(t))}),[u,v]),ve=n.useRef({offset:0,count:0}),he=n.useCallback((e=>{ae.current&&ve.current.offset===e.offset&&ve.current.count===e.count||(ae.current=!0,ve.current=e,v(e))}),[ae,v]);n.useEffect((()=>{ae.current=!1}),[u]);const{currentKey:xe,onCurrentKeyChange:Se,isCurrentItemOverridden:ke}=((e,t)=>{const[i,s]=n.useState(),r=n.useRef(),o=n.useRef(!1),l=j.useReorderableContext(),a=n.useMemo((()=>e=>{const n=e.value;s({rowKey:n}),t?.(e),null!=l?.currentItemKey&&(l.currentItemKey.current=n)}),[t,l?.currentItemKey]);return r.current!==e&&(r.current=e,i?.rowKey!==e?.rowKey&&(o.current=!0,a({value:e?.rowKey}))),n.useEffect((()=>{o.current=!1})),{currentKey:i?.rowKey,onCurrentKeyChange:a,isCurrentItemOverridden:o.current}})(m,p),{eventProps:Ce,showFocusRing:Ie,handleSelectionChange:we}=((e,t,i="none",o,l,a,c,d,u="grid",g,f,m,b,p)=>{const v=n.useMemo((()=>F(u)),[u]),h=n.useRef(),{currentKeyProps:x}=P.useCurrentKey((e=>y.keyExtractor(e,M)),"multiple"!==i||p,y.getPrevNextKey(f.current,e,!0,M),y.getPrevNextKey(f.current,e,!1,M),void 0,void 0,e,o),[S,k]=T.useCollectionFocusRing(f,["ArrowUp","ArrowDown"]);n.useEffect((()=>{if(null!=e&&f.current){const t=y.findElementByKey(f.current,e,M);if(t){const e=f.current.getAttribute("aria-activedescendant"),n=t.querySelector(`[role=${v.cell}]`);if(n&&e!==n.id){f.current.setAttribute("aria-activedescendant",n.id);const e=f.current?.contains(document.activeElement);if(!b&&e||p){const e=d?.scroller(),n=g?g(f.current):0;B(t,null!=e?e:f.current,n)}}}}}),[e,c,v.cell,d,g,f,b,p]);const C=n.useCallback((e=>{l&&(!1===e.value.all&&e.value.keys.size>0&&(h.current=Array.from(e.value.keys.values()).pop()),l(e))}),[h,l]),I=n.useCallback((e=>{if(c&&l){const n=_(e,c);if(Array.isArray(n))if("shiftSpace"===e.eventType?h.current=e.value.start:h.current=e.value.end,p){const e=r.addKeys(t,n);l({value:e,target:null})}else l({value:{all:!1,keys:new Set(n)},target:null});else m(e,n)}}),[c,p,t,l,m]),{selectionProps:V}=w.useSelection((t=>t===f.current?void 0===e?null:e:y.keyExtractor(t,M)),t,p?"none":i,!1,"replace",C,h.current,e,((e,t)=>y.getPrevNextKey(f.current,e,t,M)),void 0,(e=>{if(f.current){const t=y.findElementByKey(f.current,e,M);if(t){const e=d?.scroller(),n=g?g(f.current):0;B(t,null!=e?e:f.current,n)}}}),I),{dropDownSelectionProps:j}=K.useDropDownSelection((t=>t===f.current?void 0===e?null:e:y.keyExtractor(t,M)),t,p?i:"none",!1,(e=>c?c.data.findIndex((t=>t.metadata.key===e)):-1),((e,t)=>c?c.data.map((e=>e.metadata.key)).slice(e,t):[]),((e,t)=>y.getPrevNextKey(f.current,e,t,M)),e,C,I),A=R.useItemAction(e,c,a,M,p);return{eventProps:s.mergeProps(x,k,V,A,j),showFocusRing:S,handleSelectionChange:C}})(xe,E,D,Se,x,S,u,z,A,ee,le,pe,ke,be),{eventProps:Ke,isCurrentTabbableKey:Pe}=((e,t,i,o,l,a)=>{const c=n.useRef(),d=n.useRef(!0),[u,g]=V.useTabbableModeSet(o,(e=>U(e)?null:y.keyExtractor(e,M)),e,t),f=n.useCallback((()=>{if(o.current&&t&&(!i||u(void 0))){const e=c.current||y.getFirstVisibleKey(o.current,M);r.isKeyDefined(e)&&t({value:e})}}),[o,t,i,u]),m=n.useCallback((n=>{if(U(n.target)){o.current?.focus();const e=y.keyExtractor(n.target,M);t&&r.isKeyDefined(e)&&t({value:e})}else if(r.isKeyDefined(e)){if(o.current){const n=y.findElementByKey(o.current,e,M);if(n){if(d.current){const e=l?.scroller(),t=a?a(o.current):0;B(n,null!=e?e:o.current,t)}d.current=!0}else t&&f()}}else t&&f()}),[e,f,t,a,l,o]),b=n.useCallback((t=>{const n=y.keyExtractor(t.target,M);r.isKeyDefined(n)&&(c.current=n,n!==e&&(d.current=!1))}),[e]);return{eventProps:s.mergeProps(i?g:{},{onFocus:m,onPointerDown:b}),isCurrentTabbableKey:u}})(xe,Se,c,le,z,ee);if(u&&void 0!==ce.current&&x){const e=_(ce.current.detail,u);if(Array.isArray(e))if(be){x({value:r.addKeys(E,e),target:null})}else x({value:{all:!1,keys:new Set(e)},target:null});const t=ce.current?ce.current.range:{offset:u.offset,count:u.data.length};u=Q(u,t),ce.current=void 0,v(t)}const{sparkleHeight:Te,suggestions:Re}=((e,t,i)=>{const[s,r]=n.useState(0),o=n.useMemo((()=>e&&t&&G(e.data,t.count)),[e,t]);return n.useEffect((()=>{if(o){const e=i.current?.querySelector("."+l.PLACEHOLDER_STYLE_CLASS);let t=e?.offsetHeight||0;const n=i.current?.querySelectorAll("[data-oj-suggestion]");n?.forEach((e=>t+=e.offsetHeight)),r(t)}}),[i,o]),{sparkleHeight:s,suggestions:o}})(u,W,le),Ve=t.jsx(O,{sparkleHeight:Te}),je=n.useCallback((e=>{const n=e.data,i="multiple"===D?()=>t.jsx(h.Selector,{onChange:we,rowKey:n.metadata.key,selectedKeys:E}):void 0;return{index:e.index,data:n.data,metadata:n.metadata,selector:i}}),[D,E,we]),Ae=X?L:H,Ee=e=>{const n=je(e),i=Re?.get(n.metadata.key),s=c&&Pe(n.metadata.key),o=xe===n.metadata.key&&!s,l=o&&de,a=r.containsKey(E,n.metadata.key),f=o&&Ie,m=(e,s)=>{return t.jsx(Ae,{context:e,isFocused:o,isFocusRingVisible:f,isActive:l,isGridlineVisible:(r=n.index,"visible"===g?.item&&(r+1!==u?.totalSize||"visible"===g?.bottom)),isSelected:a,isTabbable:c&&Pe(n.metadata.key),role:A,selectionMode:D,currentItemVariant:ye,padding:re,...i&&{suggestion:i},...0===n.index&&{isTopGridlineVisible:"visible"===g?.item&&"visible"===g?.top},...s,children:d},n.metadata.key);var r};if(Z){return Z({listItemContext:n,isFocused:o,isFocusRingVisible:f,isSelected:a,isTabbable:s,isActive:l,defaultListItem:m})}return m(n)};z=q(le,z);const Fe=n.useCallback((e=>{" "===e.key&&r.isKeyDefined(xe)&&"none"!==D&&ue(!0)}),[xe,D,ue]),Me=n.useCallback((()=>{ue(!1)}),[ue]);n.useImperativeHandle(ne,(()=>le.current));const Le=k.useTestId(te);return t.jsx("div",{...s.mergeProps(Ce,Ke,se||{},ie||{},{onKeyDown:Fe,onKeyUp:Me},oe),...Le,role:A,"aria-rowcount":"grid"===A?fe:void 0,"aria-colcount":"grid"===A?1:void 0,ref:le,class:me,tabIndex:0,"aria-label":e,"aria-labelledby":a,"aria-multiselectable":ge,children:null==u?f:X?t.jsx(l.VirtualizedCollection,{data:u,itemSelector:M,loadMoreIndicator:J,onLoadRange:v,rangeExtractor:C,suggestions:Ve,viewportConfig:z,children:Ee}):t.jsx(o.LoadMoreCollection,{data:u.data,loadMoreIndicator:J,hasMore:"atLeast"===u.sizePrecision&&u.data.length<=u.totalSize,onLoadMore:()=>{u&&he({offset:0,count:u.data.length+25})},suggestions:Ve,viewportConfig:z,children:Ee})})},e.SkeletonContainer=z,e.excludeGroup=(e,t)=>{if(!t.all){const n=e.data.filter((e=>!e.metadata.isLeaf)).map((e=>e.metadata.key)),i=Array.from(t.keys.values()).filter((e=>!n.includes(e)));return{...t,keys:new Set(i)}}return t},e.scrollToVisible=B}));
2
+ //# sourceMappingURL=List-04c4fed0.js.map