@oracle/oraclejet-preact 18.0.7 → 18.0.9

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 (679) hide show
  1. package/amd/ActionCard-3f86f73f.js +1 -1
  2. package/amd/{BarChart-5e9f46b4.js → BarChart-077c5f02.js} +2 -2
  3. package/amd/{BarChart-5e9f46b4.js.map → BarChart-077c5f02.js.map} +1 -1
  4. package/amd/BarGroup-76ef0839.js +1 -1
  5. package/amd/BaseButton-19a622bc.js +1 -1
  6. package/amd/BaseCardView-ab799b69.js +1 -1
  7. package/amd/{BaseCardViewSelectionTest-d026d26c.js → BaseCardViewSelectionTest-0ec52156.js} +2 -2
  8. package/amd/{BaseCardViewSelectionTest-d026d26c.js.map → BaseCardViewSelectionTest-0ec52156.js.map} +1 -1
  9. package/amd/BaseNavigationListItem-fe9cb691.js +1 -1
  10. package/amd/BaseRichSelection-9d8f3ee4.js +1 -1
  11. package/amd/ButtonSet-d95872cc.js +1 -1
  12. package/amd/ButtonSetIconButton-7a2c113c.js +1 -1
  13. package/amd/{Card-8e081def.js → Card-f6f2dc90.js} +2 -2
  14. package/amd/{Card-8e081def.js.map → Card-f6f2dc90.js.map} +1 -1
  15. package/amd/{Center-9ec5524e.js → Center-b449a95c.js} +2 -2
  16. package/amd/{Center-9ec5524e.js.map → Center-b449a95c.js.map} +1 -1
  17. package/amd/{Chart-e2807ff7.js → Chart-3621e125.js} +2 -2
  18. package/amd/{Chart-e2807ff7.js.map → Chart-3621e125.js.map} +1 -1
  19. package/amd/CheckboxControl-83484a5a.js +1 -1
  20. package/amd/CheckboxRadioField-9733dd24.js +1 -1
  21. package/amd/CheckboxSet-4582f29e.js +2 -0
  22. package/{cjs/CheckboxSet-1bdbc419.js.map → amd/CheckboxSet-4582f29e.js.map} +1 -1
  23. package/amd/Chip-cd210507.js +1 -1
  24. package/amd/ClearIcon-de20285c.js +1 -1
  25. package/amd/CollapseIcon-e030531c.js +1 -1
  26. package/amd/Collapsible-924afd71.js +1 -1
  27. package/amd/{ComboChart-71c0f51f.js → ComboChart-fd7da90e.js} +2 -2
  28. package/amd/{ComboChart-71c0f51f.js.map → ComboChart-fd7da90e.js.map} +1 -1
  29. package/amd/CompactHelpSource-74498e92.js +1 -1
  30. package/amd/CompactLabelAssistance-44ba87b0.js +2 -0
  31. package/amd/{CompactLabelAssistance-c6928282.js.map → CompactLabelAssistance-44ba87b0.js.map} +1 -1
  32. package/amd/CompactUserAssistance-3370a318.js +1 -1
  33. package/amd/ComponentMessageContainer-8028ba70.js +1 -1
  34. package/amd/ConveyorBeltItem-08720127.js +1 -1
  35. package/amd/{DatePicker-bf0e0c69.js → DatePicker-2c94a3bb.js} +2 -2
  36. package/amd/{DatePicker-bf0e0c69.js.map → DatePicker-2c94a3bb.js.map} +1 -1
  37. package/amd/DatePickerHeader-f21e020d.js +1 -1
  38. package/amd/{Diagram-04db0931.js → Diagram-c3afb211.js} +2 -2
  39. package/amd/{Diagram-04db0931.js.map → Diagram-c3afb211.js.map} +1 -1
  40. package/amd/{Dialog-5f36f8aa.js → Dialog-53f92591.js} +2 -2
  41. package/amd/{Dialog-5f36f8aa.js.map → Dialog-53f92591.js.map} +1 -1
  42. package/amd/DirectionalCollapseArrowIcon-20cef34d.js +1 -1
  43. package/amd/DirectionalExpandArrowIcon-e9bdb06e.js +1 -1
  44. package/amd/{DragHandle-406d7f9a.js → DragHandle-699fefd6.js} +2 -2
  45. package/amd/{DragHandle-406d7f9a.js.map → DragHandle-699fefd6.js.map} +1 -1
  46. package/amd/{Dropdown-abcacf49.js → Dropdown-4b421eff.js} +2 -2
  47. package/amd/{Dropdown-abcacf49.js.map → Dropdown-4b421eff.js.map} +1 -1
  48. package/amd/{EnvironmentProvider-c0e1e39b.js → EnvironmentProvider-8f6fc388.js} +2 -2
  49. package/amd/{EnvironmentProvider-c0e1e39b.js.map → EnvironmentProvider-8f6fc388.js.map} +1 -1
  50. package/amd/ExpandableList-dd3a05b4.js +1 -1
  51. package/amd/FilePicker-4636b49b.js +1 -1
  52. package/amd/Flex-56ecdf4c.js +2 -0
  53. package/amd/{Flex-3421f0df.js.map → Flex-56ecdf4c.js.map} +1 -1
  54. package/amd/{Floating-5d98c1ca.js → Floating-1ec5ec2a.js} +2 -2
  55. package/amd/{Floating-5d98c1ca.js.map → Floating-1ec5ec2a.js.map} +1 -1
  56. package/amd/FormLayout-a4a29a2d.js +1 -1
  57. package/amd/Gantt-d94af58e.js +1 -1
  58. package/amd/{Grid-8911aa0f.js → Grid-160f4885.js} +2 -2
  59. package/amd/{Grid-8911aa0f.js.map → Grid-160f4885.js.map} +1 -1
  60. package/amd/{Gridlines-bef7bbfc.js → Gridlines-7851bb20.js} +2 -2
  61. package/amd/{Gridlines-bef7bbfc.js.map → Gridlines-7851bb20.js.map} +1 -1
  62. package/amd/GroupLoadingIndicator-6b2ab709.js +1 -1
  63. package/amd/HighlightText-bd4c0101.js +2 -0
  64. package/amd/{HighlightText-644bc74e.js.map → HighlightText-bd4c0101.js.map} +1 -1
  65. package/amd/Icon-2d38c876.js +1 -1
  66. package/amd/IconButton-ae9a01ce.js +1 -1
  67. package/amd/IconMenuButton-b0468fa8.js +1 -1
  68. package/amd/IconProgressButton-ff5372eb.js +1 -1
  69. package/amd/IconSwitchButton-22f907e7.js +1 -1
  70. package/amd/IconToggleButton-20d411e6.js +1 -1
  71. package/amd/{IconUserAssistance-37107cea.js → IconUserAssistance-d2bd2691.js} +2 -2
  72. package/amd/{IconUserAssistance-37107cea.js.map → IconUserAssistance-d2bd2691.js.map} +1 -1
  73. package/amd/Indexer-1531dbc3.js +1 -1
  74. package/amd/InlineHelpSource-85961e81.js +1 -1
  75. package/amd/InlineUserAssistance-4656c2a6.js +1 -1
  76. package/amd/InputDateMask-6d54c3e6.js +1 -1
  77. package/amd/InputDatePicker-fc39f0a6.js +1 -1
  78. package/amd/InputPassword-f6ea728a.js +1 -1
  79. package/amd/InputText-57f60b6f.js +1 -1
  80. package/amd/Label-3912beb2.js +1 -1
  81. package/amd/LabelValueLayout-194e64d9.js +1 -1
  82. package/amd/{Layer-6f29b67f.js → Layer-447c68e6.js} +2 -2
  83. package/amd/{Layer-6f29b67f.js.map → Layer-447c68e6.js.map} +1 -1
  84. package/amd/{LayerHost-639b3284.js → LayerHost-e95c5f30.js} +2 -2
  85. package/amd/{LayerHost-639b3284.js.map → LayerHost-e95c5f30.js.map} +1 -1
  86. package/amd/{LayerManager-2972de92.js → LayerManager-76fcfb58.js} +2 -2
  87. package/amd/{LayerManager-2972de92.js.map → LayerManager-76fcfb58.js.map} +1 -1
  88. package/amd/Legend-e4949499.js +1 -1
  89. package/amd/{LineAreaChart-2ba275ab.js → LineAreaChart-4140d004.js} +2 -2
  90. package/amd/{LineAreaChart-2ba275ab.js.map → LineAreaChart-4140d004.js.map} +1 -1
  91. package/amd/{LineSeries-797d8d16.js → LineSeries-a549e727.js} +2 -2
  92. package/amd/{LineSeries-797d8d16.js.map → LineSeries-a549e727.js.map} +1 -1
  93. package/amd/Link-c4a57187.js +1 -1
  94. package/amd/List-0b764e84.js +1 -1
  95. package/amd/{ListItemLayout-e0b2c71e.js → ListItemLayout-4208363c.js} +2 -2
  96. package/amd/{ListItemLayout-e0b2c71e.js.map → ListItemLayout-4208363c.js.map} +1 -1
  97. package/amd/ListView-5bb45f81.js +1 -1
  98. package/amd/LiveRegion-8142ed0d.js +2 -0
  99. package/amd/{LiveRegion-9a362373.js.map → LiveRegion-8142ed0d.js.map} +1 -1
  100. package/amd/MaxLengthLiveRegion-8954fc30.js +2 -0
  101. package/amd/{MaxLengthLiveRegion-bb956138.js.map → MaxLengthLiveRegion-8954fc30.js.map} +1 -1
  102. package/amd/Menu-5d447084.js +1 -1
  103. package/amd/MenuButton-410aa4e1.js +1 -1
  104. package/amd/MenuItem-87cd59b8.js +1 -1
  105. package/amd/Message-621fb578.js +1 -1
  106. package/amd/{MessageLayer-8bac8c50.js → MessageLayer-ba56f7e2.js} +2 -2
  107. package/amd/{MessageLayer-8bac8c50.js.map → MessageLayer-ba56f7e2.js.map} +1 -1
  108. package/amd/MessageToast-06773c79.js +1 -1
  109. package/amd/MessagesManager-d5686336.js +1 -1
  110. package/amd/MeterBar-e1b4a93b.js +1 -1
  111. package/amd/MeterCircle-9887cf28.js +1 -1
  112. package/amd/{Modal-7bece8d5.js → Modal-d6b2e905.js} +2 -2
  113. package/amd/{Modal-7bece8d5.js.map → Modal-d6b2e905.js.map} +1 -1
  114. package/amd/{MonthView-3d0968a1.js → MonthView-4a0401cd.js} +2 -2
  115. package/amd/{MonthView-3d0968a1.js.map → MonthView-4a0401cd.js.map} +1 -1
  116. package/amd/NavigationListItem-021b2d58.js +2 -0
  117. package/amd/{NavigationListItem-044a79fd.js.map → NavigationListItem-021b2d58.js.map} +1 -1
  118. package/amd/NumberInputText-cac12eb3.js +1 -1
  119. package/amd/{OverflowTabBar-339f34cf.js → OverflowTabBar-ea3a4742.js} +2 -2
  120. package/amd/{OverflowTabBar-339f34cf.js.map → OverflowTabBar-ea3a4742.js.map} +1 -1
  121. package/amd/{OverflowTabBarItem-c59db4a2.js → OverflowTabBarItem-763773c9.js} +2 -2
  122. package/amd/{OverflowTabBarItem-c59db4a2.js.map → OverflowTabBarItem-763773c9.js.map} +1 -1
  123. package/amd/PRIVATE_BaseCardView.js +1 -1
  124. package/amd/PRIVATE_Chart.js +1 -1
  125. package/amd/PRIVATE_CheckboxControl.js +1 -1
  126. package/amd/PRIVATE_CheckboxRadioField.js +1 -1
  127. package/amd/PRIVATE_ClearIcon.js +1 -1
  128. package/amd/PRIVATE_DatePickerHeader.js +1 -1
  129. package/amd/PRIVATE_DatePickerLayout.js +1 -1
  130. package/amd/PRIVATE_EmbeddedIconButton.js +1 -1
  131. package/amd/PRIVATE_FormControls.js +1 -1
  132. package/amd/PRIVATE_IconSwitchButton.js +1 -1
  133. package/amd/PRIVATE_Icons/CheckboxMixed.js +1 -1
  134. package/amd/PRIVATE_Icons/CheckboxOff.js +1 -1
  135. package/amd/PRIVATE_Icons/CheckboxOn.js +1 -1
  136. package/amd/PRIVATE_Icons/DragV.js +1 -1
  137. package/amd/PRIVATE_Icons/WarningS.js +1 -1
  138. package/amd/PRIVATE_List.js +1 -1
  139. package/amd/PRIVATE_Message.js +1 -1
  140. package/amd/PRIVATE_MessageLayer.js +1 -1
  141. package/amd/PRIVATE_MonthView.js +1 -1
  142. package/amd/PRIVATE_MonthYearGridView.js +1 -1
  143. package/amd/PRIVATE_PlotArea.js +1 -1
  144. package/amd/PRIVATE_RevealToggleIcon.js +1 -1
  145. package/amd/PRIVATE_RichSelectionCommon.js +1 -1
  146. package/amd/PRIVATE_SelectCommon.js +1 -1
  147. package/amd/PRIVATE_StyledCard.js +1 -1
  148. package/amd/PRIVATE_StyledCheckbox.js +1 -1
  149. package/amd/PRIVATE_Table.js +1 -1
  150. package/amd/PRIVATE_ThemedIcons/CalendarIcon.js +1 -1
  151. package/amd/PRIVATE_ThemedIcons/ChartMarqueeSelectIcon.js +1 -1
  152. package/amd/PRIVATE_ThemedIcons/ChartPanIcon.js +1 -1
  153. package/amd/PRIVATE_ThemedIcons/ChartZoomIcon.js +1 -1
  154. package/amd/PRIVATE_ThemedIcons/CheckIcon.js +1 -1
  155. package/amd/PRIVATE_ThemedIcons/CheckboxMixedIcon.js +1 -1
  156. package/amd/PRIVATE_ThemedIcons/CheckboxOffIcon.js +1 -1
  157. package/amd/PRIVATE_ThemedIcons/CheckboxOnIcon.js +1 -1
  158. package/amd/PRIVATE_ThemedIcons/CloseIcon.js +1 -1
  159. package/amd/PRIVATE_ThemedIcons/CollapseIcon.js +1 -1
  160. package/amd/PRIVATE_ThemedIcons/CollapseUpIcon.js +1 -1
  161. package/amd/PRIVATE_ThemedIcons/DecrementIcon.js +1 -1
  162. package/amd/PRIVATE_ThemedIcons/DeleteIcon.js +1 -1
  163. package/amd/PRIVATE_ThemedIcons/DirectionalCollapseArrowIcon.js +1 -1
  164. package/amd/PRIVATE_ThemedIcons/DirectionalExpandArrowIcon.js +1 -1
  165. package/amd/PRIVATE_ThemedIcons/DragHandleIcon.js +1 -1
  166. package/amd/PRIVATE_ThemedIcons/DropdownArrowIcon.js +1 -1
  167. package/amd/PRIVATE_ThemedIcons/ExpandIcon.js +1 -1
  168. package/amd/PRIVATE_ThemedIcons/HelpIcon.js +1 -1
  169. package/amd/PRIVATE_ThemedIcons/IncrementIcon.js +1 -1
  170. package/amd/PRIVATE_ThemedIcons/MenuButtonDropdownIcon.js +1 -1
  171. package/amd/PRIVATE_ThemedIcons/MessageConfirmationIcon.js +1 -1
  172. package/amd/PRIVATE_ThemedIcons/MessageErrorIcon.js +1 -1
  173. package/amd/PRIVATE_ThemedIcons/MessageInfoIcon.js +1 -1
  174. package/amd/PRIVATE_ThemedIcons/MessageWarningIcon.js +1 -1
  175. package/amd/PRIVATE_ThemedIcons/MinusIcon.js +1 -1
  176. package/amd/PRIVATE_ThemedIcons/NavDownIcon.js +1 -1
  177. package/amd/PRIVATE_ThemedIcons/OverviewHorizontalDragHandleIcon.js +1 -1
  178. package/amd/PRIVATE_ThemedIcons/PlusIcon.js +1 -1
  179. package/amd/PRIVATE_ThemedIcons/RadioOffIcon.js +1 -1
  180. package/amd/PRIVATE_ThemedIcons/RadioOnIcon.js +1 -1
  181. package/amd/PRIVATE_ThemedIcons/SortAscendingIcon.js +1 -1
  182. package/amd/PRIVATE_ThemedIcons/SortDescendingIcon.js +1 -1
  183. package/amd/PRIVATE_ThemedIcons/ViewHideIcon.js +1 -1
  184. package/amd/PRIVATE_ThemedIcons/ViewIcon.js +1 -1
  185. package/amd/PRIVATE_TimeComponent.js +1 -1
  186. package/amd/PRIVATE_VisOverview.js +1 -1
  187. package/amd/PRIVATE_VisTabularDatatip.js +1 -1
  188. package/amd/PictoChart-48a25c75.js +1 -1
  189. package/amd/PieChart-2197746d.js +1 -1
  190. package/amd/{Popup-66e79afa.js → Popup-d51bf3f4.js} +2 -2
  191. package/amd/{Popup-66e79afa.js.map → Popup-d51bf3f4.js.map} +1 -1
  192. package/amd/{ProgressBar-e72c5a67.js → ProgressBar-3f4cd8d6.js} +2 -2
  193. package/amd/{ProgressBar-e72c5a67.js.map → ProgressBar-3f4cd8d6.js.map} +1 -1
  194. package/amd/ProgressButton-f1d27773.js +1 -1
  195. package/amd/ProgressButtonLabelLayout-6df4290e.js +1 -1
  196. package/amd/{ProgressCircle-2b4ba9cd.js → ProgressCircle-74b6fc89.js} +2 -2
  197. package/amd/{ProgressCircle-2b4ba9cd.js.map → ProgressCircle-74b6fc89.js.map} +1 -1
  198. package/amd/RadioItem-b17c346c.js +1 -1
  199. package/amd/RatingGauge-539ede8e.js +1 -1
  200. package/amd/ReadonlyTextFieldInput-608bddc1.js +1 -1
  201. package/amd/RemovableNavigationListItem-e01b6693.js +1 -1
  202. package/amd/RemovableTabBarItem-29b54206.js +1 -1
  203. package/amd/ReorderableTabBar-462d357c.js +1 -1
  204. package/amd/RevealToggleIcon-f975229d.js +1 -1
  205. package/amd/{ScatterChart-7f0b817b.js → ScatterChart-88304601.js} +2 -2
  206. package/amd/{ScatterChart-7f0b817b.js.map → ScatterChart-88304601.js.map} +1 -1
  207. package/amd/SectionalLegend-8f203cac.js +1 -1
  208. package/amd/SectionedContent-2a261004.js +2 -0
  209. package/amd/{SectionedContent-19bef3cc.js.map → SectionedContent-2a261004.js.map} +1 -1
  210. package/amd/SelectMultiple-7e9bd455.js +1 -1
  211. package/amd/SelectSingle-466bcd67.js +1 -1
  212. package/amd/SelectionCard-895b014d.js +2 -0
  213. package/amd/{SelectionCard-13aac54a.js.map → SelectionCard-895b014d.js.map} +1 -1
  214. package/amd/Selector-2b0c34a7.js +1 -1
  215. package/amd/{SelectorAll-1c889a9c.js → SelectorAll-e884a225.js} +2 -2
  216. package/amd/{SelectorAll-1c889a9c.js.map → SelectorAll-e884a225.js.map} +1 -1
  217. package/amd/{Sheet-0b58b0a5.js → Sheet-46782f99.js} +2 -2
  218. package/amd/{Sheet-0b58b0a5.js.map → Sheet-46782f99.js.map} +1 -1
  219. package/amd/SplitMenuButton-031ae5e3.js +1 -1
  220. package/amd/{StyledCard-0da6f6b5.js → StyledCard-c4d0324d.js} +2 -2
  221. package/amd/{StyledCard-0da6f6b5.js.map → StyledCard-c4d0324d.js.map} +1 -1
  222. package/amd/StyledTextField-b4278437.js +1 -1
  223. package/amd/TabBar-d8890a47.js +1 -1
  224. package/amd/TabBarItem-547825e2.js +1 -1
  225. package/amd/TabBarLayout-685ac295.js +1 -1
  226. package/amd/TabBarMixed-a75796a6.js +1 -1
  227. package/amd/TabBarMixedSeparator-8c278254.js +2 -0
  228. package/amd/{TabBarMixedSeparator-ed764207.js.map → TabBarMixedSeparator-8c278254.js.map} +1 -1
  229. package/amd/Table-87f7e3c4.js +1 -1
  230. package/amd/TagCloud-5dc4b5ff.js +1 -1
  231. package/amd/TextArea-a7a3d82f.js +1 -1
  232. package/amd/TextAreaAutosize-9cd2c1e8.js +1 -1
  233. package/amd/TextField-1021f00b.js +1 -1
  234. package/amd/TextFieldInput-ba4e508c.js +1 -1
  235. package/amd/Theme-redwood/theme.css +338 -338
  236. package/amd/Theme-stable/theme.css +391 -391
  237. package/amd/TimeComponentCanvas2D-6b4e6ead.js +1 -1
  238. package/amd/Toolbar-05d42276.js +1 -1
  239. package/amd/TruncatingBadge-04f9ef4c.js +2 -0
  240. package/amd/{TruncatingBadge-7f66faaf.js.map → TruncatingBadge-04f9ef4c.js.map} +1 -1
  241. package/amd/{TruncatingText-69770aa9.js → TruncatingText-d18d41c5.js} +2 -2
  242. package/amd/{TruncatingText-69770aa9.js.map → TruncatingText-d18d41c5.js.map} +1 -1
  243. package/amd/UNSAFE_ActionCard.js +1 -1
  244. package/amd/UNSAFE_BarChart/__test__/BarChart.spec.js +1 -1
  245. package/amd/UNSAFE_BarChart.js +1 -1
  246. package/amd/UNSAFE_BaseButton.js +1 -1
  247. package/amd/UNSAFE_Button.js +1 -1
  248. package/amd/UNSAFE_ButtonLayout/tests/ButtonLayout.spec.js +1 -1
  249. package/amd/UNSAFE_ButtonSet.js +1 -1
  250. package/amd/UNSAFE_ButtonSetButton.js +1 -1
  251. package/amd/UNSAFE_ButtonSetIconButton.js +1 -1
  252. package/amd/UNSAFE_ButtonSetItem.js +1 -1
  253. package/amd/UNSAFE_ButtonSetMultiple.js +1 -1
  254. package/amd/UNSAFE_ButtonSetSingle.js +1 -1
  255. package/amd/UNSAFE_Card.js +1 -1
  256. package/amd/UNSAFE_CardFlexView.js +1 -1
  257. package/amd/UNSAFE_CardGridView.js +1 -1
  258. package/amd/UNSAFE_Center.js +1 -1
  259. package/amd/UNSAFE_ChartWithLegend.js +1 -1
  260. package/amd/UNSAFE_Checkbox.js +1 -1
  261. package/amd/UNSAFE_CheckboxItem.js +1 -1
  262. package/amd/UNSAFE_CheckboxItem.js.map +1 -1
  263. package/amd/UNSAFE_CheckboxSet.js +1 -1
  264. package/amd/UNSAFE_CheckboxSet.js.map +1 -1
  265. package/amd/UNSAFE_Chip.js +1 -1
  266. package/amd/UNSAFE_Collapsible.js +1 -1
  267. package/amd/UNSAFE_ComboChart.js +1 -1
  268. package/amd/UNSAFE_ComponentMessage.js +1 -1
  269. package/amd/UNSAFE_ConveyorBelt.js +1 -1
  270. package/amd/UNSAFE_DatePicker.js +1 -1
  271. package/amd/UNSAFE_Diagram.js +1 -1
  272. package/amd/UNSAFE_Dialog.js +1 -1
  273. package/amd/UNSAFE_DragHandle.js +1 -1
  274. package/amd/UNSAFE_DrawerLayout.js +1 -1
  275. package/amd/UNSAFE_DrawerPopup.js +1 -1
  276. package/amd/UNSAFE_Dropdown.js +1 -1
  277. package/amd/UNSAFE_Environment.js +1 -1
  278. package/amd/UNSAFE_ExpandableList.js +1 -1
  279. package/amd/UNSAFE_FilePicker.js +1 -1
  280. package/amd/UNSAFE_Flex.js +1 -1
  281. package/amd/UNSAFE_Floating.js +1 -1
  282. package/amd/UNSAFE_FormLayout.js +1 -1
  283. package/amd/UNSAFE_Gantt.js +1 -1
  284. package/amd/UNSAFE_Grid.js +1 -1
  285. package/amd/UNSAFE_HighlightText.js +1 -1
  286. package/amd/UNSAFE_Icon.js +1 -1
  287. package/amd/UNSAFE_IconButton.js +1 -1
  288. package/amd/UNSAFE_IconMenuButton.js +1 -1
  289. package/amd/UNSAFE_IconProgressButton.js +1 -1
  290. package/amd/UNSAFE_IconToggleButton.js +1 -1
  291. package/amd/UNSAFE_Indexer.js +1 -1
  292. package/amd/UNSAFE_InputDateMask.js +1 -1
  293. package/amd/UNSAFE_InputDatePicker.js +1 -1
  294. package/amd/UNSAFE_InputPassword.js +1 -1
  295. package/amd/UNSAFE_InputSensitiveText.js +1 -1
  296. package/amd/UNSAFE_InputText.js +1 -1
  297. package/amd/UNSAFE_InputTimeMask.js +1 -1
  298. package/amd/UNSAFE_Label.js +1 -1
  299. package/amd/UNSAFE_LabelValueLayout.js +1 -1
  300. package/amd/UNSAFE_LabelledLink.js +1 -1
  301. package/amd/UNSAFE_Layer.js +1 -1
  302. package/amd/UNSAFE_Legend.js +1 -1
  303. package/amd/UNSAFE_LineAreaChart.js +1 -1
  304. package/amd/UNSAFE_Link.js +1 -1
  305. package/amd/UNSAFE_ListItemLayout.js +1 -1
  306. package/amd/UNSAFE_ListView.js +1 -1
  307. package/amd/UNSAFE_LiveRegion.js +1 -1
  308. package/amd/UNSAFE_Menu.js +1 -1
  309. package/amd/UNSAFE_MenuButton.js +1 -1
  310. package/amd/UNSAFE_MessageBanner.js +1 -1
  311. package/amd/UNSAFE_MessageToast.js +1 -1
  312. package/amd/UNSAFE_MeterBar.js +1 -1
  313. package/amd/UNSAFE_MeterCircle.js +1 -1
  314. package/amd/UNSAFE_Modal.js +1 -1
  315. package/amd/UNSAFE_NavigationList.js +1 -1
  316. package/amd/UNSAFE_NavigationListCommon.js +1 -1
  317. package/amd/UNSAFE_NumberInputText.js +1 -1
  318. package/amd/UNSAFE_OverflowTabBar.js +1 -1
  319. package/amd/UNSAFE_PictoChart.js +1 -1
  320. package/amd/UNSAFE_PieChart/__test__/PieChart.spec.js +1 -1
  321. package/amd/UNSAFE_PieChart.js +1 -1
  322. package/amd/UNSAFE_Popup.js +1 -1
  323. package/amd/UNSAFE_ProgressBar.js +1 -1
  324. package/amd/UNSAFE_ProgressButton.js +1 -1
  325. package/amd/UNSAFE_ProgressButtonLabelLayout.js +1 -1
  326. package/amd/UNSAFE_ProgressCircle.js +1 -1
  327. package/amd/UNSAFE_RadioItem.js +1 -1
  328. package/amd/UNSAFE_RadioSet.js +1 -1
  329. package/amd/UNSAFE_RatingGauge.js +1 -1
  330. package/amd/UNSAFE_ReorderableTabBar.js +1 -1
  331. package/amd/UNSAFE_RichCheckboxSet.js +1 -1
  332. package/amd/UNSAFE_RichCheckboxSet.js.map +1 -1
  333. package/amd/UNSAFE_RichRadioSet.js +1 -1
  334. package/amd/UNSAFE_RichSelectionItem.js +1 -1
  335. package/amd/UNSAFE_RichSelectionItem.js.map +1 -1
  336. package/amd/UNSAFE_ScatterChart.js +1 -1
  337. package/amd/UNSAFE_SectionalLegend.js +1 -1
  338. package/amd/UNSAFE_SelectMultiple.js +1 -1
  339. package/amd/UNSAFE_SelectSingle.js +1 -1
  340. package/amd/UNSAFE_SelectionCard.js +1 -1
  341. package/amd/UNSAFE_Selector.js +1 -1
  342. package/amd/UNSAFE_SelectorAll.js +1 -1
  343. package/amd/UNSAFE_Sheet/__test__/Sheet.spec.js +1 -1
  344. package/amd/UNSAFE_Sheet.js +1 -1
  345. package/amd/UNSAFE_SplitMenuButton.js +1 -1
  346. package/amd/UNSAFE_TabBar.js +1 -1
  347. package/amd/UNSAFE_TabBarCommon.js +1 -1
  348. package/amd/UNSAFE_TabBarMixed.js +1 -1
  349. package/amd/UNSAFE_TableView.js +1 -1
  350. package/amd/UNSAFE_TagCloud.js +1 -1
  351. package/amd/UNSAFE_TextArea.js +1 -1
  352. package/amd/UNSAFE_TextAreaAutosize.js +1 -1
  353. package/amd/UNSAFE_TextField.js +1 -1
  354. package/amd/UNSAFE_ToggleButton.js +1 -1
  355. package/amd/UNSAFE_Toolbar/tests/Toolbar.spec.js +1 -1
  356. package/amd/UNSAFE_Toolbar.js +1 -1
  357. package/amd/UNSAFE_Train.js +1 -1
  358. package/amd/UNSAFE_TruncatingBadge.js +1 -1
  359. package/amd/UNSAFE_TruncatingText.js +1 -1
  360. package/amd/UNSAFE_UserAssistance.js +1 -1
  361. package/amd/UNSAFE_View.js +1 -1
  362. package/amd/UNSAFE_VirtualizedListView.js +1 -1
  363. package/amd/UNSAFE_VisProgressiveLoader/__test__/VisProgressiveLoader.spec.js +1 -1
  364. package/amd/UNSAFE_VisProgressiveLoader.js +1 -1
  365. package/amd/UNSAFE_VisStatusMessage.js +1 -1
  366. package/amd/UNSAFE_WindowOverlay.js +1 -1
  367. package/amd/{View-bd5c7fa7.js → View-ce970ed7.js} +2 -2
  368. package/amd/{View-bd5c7fa7.js.map → View-ce970ed7.js.map} +1 -1
  369. package/amd/VisNoData-6fa39277.js +2 -0
  370. package/amd/{VisNoData-10983ace.js.map → VisNoData-6fa39277.js.map} +1 -1
  371. package/amd/{VisProgressiveLoader-06a60c8f.js → VisProgressiveLoader-68d8d8b3.js} +2 -2
  372. package/amd/{VisProgressiveLoader-06a60c8f.js.map → VisProgressiveLoader-68d8d8b3.js.map} +1 -1
  373. package/amd/{VisTabularDatatip-55bbd19f.js → VisTabularDatatip-1051eaca.js} +2 -2
  374. package/amd/{VisTabularDatatip-55bbd19f.js.map → VisTabularDatatip-1051eaca.js.map} +1 -1
  375. package/amd/{WindowOverlay-43c10424.js → WindowOverlay-a2d80d55.js} +2 -2
  376. package/amd/{WindowOverlay-43c10424.js.map → WindowOverlay-a2d80d55.js.map} +1 -1
  377. package/amd/{YearsGridView-d7b2184e.js → YearsGridView-d799dc5c.js} +2 -2
  378. package/amd/{YearsGridView-d7b2184e.js.map → YearsGridView-d799dc5c.js.map} +1 -1
  379. package/amd/hoc/PRIVATE_withDirectionIcon.js +1 -1
  380. package/amd/hoc/PRIVATE_withThemeIcon.js +1 -1
  381. package/amd/hoc/UNSAFE_withThemeProps.js +1 -1
  382. package/amd/hooks/PRIVATE_useChartContextMenu.js +1 -1
  383. package/amd/hooks/PRIVATE_useChartDatatip.js +1 -1
  384. package/amd/hooks/PRIVATE_useChartEvents.js +1 -1
  385. package/amd/hooks/PRIVATE_useChartMarquee.js +1 -1
  386. package/amd/hooks/PRIVATE_useCssVars.js +1 -1
  387. package/amd/hooks/PRIVATE_useCurrentKey.js +1 -1
  388. package/amd/hooks/PRIVATE_useDatatip.js +1 -1
  389. package/amd/hooks/PRIVATE_useFloating.js +1 -1
  390. package/amd/hooks/PRIVATE_useReorderable.js +1 -1
  391. package/amd/hooks/PRIVATE_useRovingTabIndexContainer.js +1 -1
  392. package/amd/hooks/PRIVATE_useSelection.js +1 -1
  393. package/amd/hooks/PRIVATE_useTabBar.js +1 -1
  394. package/amd/hooks/PRIVATE_useVisContextMenu.js +1 -1
  395. package/amd/hooks/PRIVATE_useVisDragModeControls.js +1 -1
  396. package/amd/hooks/PRIVATE_useVisEvents.js +1 -1
  397. package/amd/hooks/PRIVATE_useVisMeterEvents.js +1 -1
  398. package/amd/hooks/PRIVATE_useVisSelection.js +1 -1
  399. package/amd/hooks/UNSAFE_useColorScheme.js +1 -1
  400. package/amd/hooks/UNSAFE_useCurrentBgColor.js +1 -1
  401. package/amd/hooks/UNSAFE_useDensity.js +1 -1
  402. package/amd/hooks/UNSAFE_useOutsideClick.js +1 -1
  403. package/amd/hooks/UNSAFE_usePrefixSuffix.js +1 -1
  404. package/amd/hooks/UNSAFE_useScale.js +1 -1
  405. package/amd/hooks/UNSAFE_useTestId.js +1 -1
  406. package/amd/hooks/UNSAFE_useTheme.js +1 -1
  407. package/amd/hooks/UNSAFE_useThemeInterpolations.js +1 -1
  408. package/amd/hooks/UNSAFE_useTooltip.js +1 -1
  409. package/amd/hooks/UNSAFE_useTranslationBundle.js +1 -1
  410. package/amd/hooks/UNSAFE_useUser.js +1 -1
  411. package/amd/{index-95227deb.js → index-b7b9300d.js} +2 -2
  412. package/amd/index-b7b9300d.js.map +1 -0
  413. package/amd/listViewSelectionTests-c9777ea8.js +1 -1
  414. package/amd/render-366c27ff.js +2 -0
  415. package/amd/{render-85c034d7.js.map → render-366c27ff.js.map} +1 -1
  416. package/amd/{tabbableUtils-591fdc8d.js → tabbableUtils-88d4fa35.js} +2 -2
  417. package/amd/{tabbableUtils-591fdc8d.js.map → tabbableUtils-88d4fa35.js.map} +1 -1
  418. package/amd/{testData-02652eda.js → testData-783b8823.js} +2 -2
  419. package/amd/{testData-02652eda.js.map → testData-783b8823.js.map} +1 -1
  420. package/amd/{tooltipUtils-e5bdb734.js → tooltipUtils-69ce0a2d.js} +2 -2
  421. package/amd/{tooltipUtils-e5bdb734.js.map → tooltipUtils-69ce0a2d.js.map} +1 -1
  422. package/amd/useCellNavigation-1feec094.js +1 -1
  423. package/amd/useChartContextMenu-8606bfa2.js +1 -1
  424. package/amd/useChartDatatip-ee3783af.js +2 -0
  425. package/amd/{useChartDatatip-947eeffe.js.map → useChartDatatip-ee3783af.js.map} +1 -1
  426. package/amd/{useColorScheme-443e7cc7.js → useColorScheme-10dc88de.js} +2 -2
  427. package/amd/{useColorScheme-443e7cc7.js.map → useColorScheme-10dc88de.js.map} +1 -1
  428. package/amd/useContextMenu-e08aad46.js +1 -1
  429. package/amd/{useCssVars-dc52806c.js → useCssVars-c043f8da.js} +2 -2
  430. package/amd/{useCssVars-dc52806c.js.map → useCssVars-c043f8da.js.map} +1 -1
  431. package/amd/{useCurrentBgColor-50142bd8.js → useCurrentBgColor-2426ee24.js} +2 -2
  432. package/amd/{useCurrentBgColor-50142bd8.js.map → useCurrentBgColor-2426ee24.js.map} +1 -1
  433. package/amd/useCurrentKey-31c18053.js +2 -0
  434. package/amd/{useCurrentKey-a993db56.js.map → useCurrentKey-31c18053.js.map} +1 -1
  435. package/amd/{useDatatip-9942601b.js → useDatatip-ac26447a.js} +2 -2
  436. package/amd/{useDatatip-9942601b.js.map → useDatatip-ac26447a.js.map} +1 -1
  437. package/amd/{useDensity-f0f7ae9a.js → useDensity-c83df7b4.js} +2 -2
  438. package/amd/{useDensity-f0f7ae9a.js.map → useDensity-c83df7b4.js.map} +1 -1
  439. package/amd/{useFloating-bf8ed6cb.js → useFloating-acd30a55.js} +2 -2
  440. package/amd/{useFloating-bf8ed6cb.js.map → useFloating-acd30a55.js.map} +1 -1
  441. package/amd/useKeyboardEvents-d87e3587.js +2 -0
  442. package/amd/{useKeyboardEvents-8ada7a1f.js.map → useKeyboardEvents-d87e3587.js.map} +1 -1
  443. package/amd/useLegendContextMenu-e629139a.js +1 -1
  444. package/amd/useMeterDatatip-fff3c329.js +2 -0
  445. package/amd/{useMeterDatatip-173593b4.js.map → useMeterDatatip-fff3c329.js.map} +1 -1
  446. package/amd/{useOutsideClick-76c1ff6e.js → useOutsideClick-f99b7a84.js} +2 -2
  447. package/amd/{useOutsideClick-76c1ff6e.js.map → useOutsideClick-f99b7a84.js.map} +1 -1
  448. package/amd/{usePopupAnimation-6e53a0fe.js → usePopupAnimation-f679a4b0.js} +2 -2
  449. package/amd/{usePopupAnimation-6e53a0fe.js.map → usePopupAnimation-f679a4b0.js.map} +1 -1
  450. package/amd/usePrefixSuffix-09bd5925.js +2 -0
  451. package/amd/{usePrefixSuffix-f7544e05.js.map → usePrefixSuffix-09bd5925.js.map} +1 -1
  452. package/amd/{useReorderableItem-726c3c03.js → useReorderableItem-4c4779f7.js} +2 -2
  453. package/amd/{useReorderableItem-726c3c03.js.map → useReorderableItem-4c4779f7.js.map} +1 -1
  454. package/amd/{useRovingTabIndexContainer-473f7e43.js → useRovingTabIndexContainer-955e23a8.js} +2 -2
  455. package/amd/{useRovingTabIndexContainer-473f7e43.js.map → useRovingTabIndexContainer-955e23a8.js.map} +1 -1
  456. package/amd/useScale-37d42c9d.js +2 -0
  457. package/amd/{useScale-e311d35f.js.map → useScale-37d42c9d.js.map} +1 -1
  458. package/amd/useSelectCommon-d9c4a7bd.js +1 -1
  459. package/amd/{useSelectDrill-216c007c.js → useSelectDrill-6361116b.js} +2 -2
  460. package/amd/{useSelectDrill-216c007c.js.map → useSelectDrill-6361116b.js.map} +1 -1
  461. package/amd/useSelection-af7b4b52.js +2 -0
  462. package/amd/{useSelection-01203394.js.map → useSelection-af7b4b52.js.map} +1 -1
  463. package/amd/{useSelection-4249360e.js → useSelection-f0c7d74d.js} +2 -2
  464. package/amd/{useSelection-4249360e.js.map → useSelection-f0c7d74d.js.map} +1 -1
  465. package/amd/useTabBar-2c4573fe.js +1 -1
  466. package/amd/{useTestId-b5cd4766.js → useTestId-3a316499.js} +2 -2
  467. package/amd/{useTestId-b5cd4766.js.map → useTestId-3a316499.js.map} +1 -1
  468. package/amd/{useTheme-a8334e06.js → useTheme-ac980f9a.js} +2 -2
  469. package/amd/{useTheme-a8334e06.js.map → useTheme-ac980f9a.js.map} +1 -1
  470. package/amd/useThemeInterpolations-6b2de213.js +2 -0
  471. package/amd/{useThemeInterpolations-ab618dee.js.map → useThemeInterpolations-6b2de213.js.map} +1 -1
  472. package/amd/useTooltip-7b11fd35.js +2 -0
  473. package/amd/{useTooltip-b43ad881.js.map → useTooltip-7b11fd35.js.map} +1 -1
  474. package/amd/{useTooltipControlled-ee3276de.js → useTooltipControlled-52183a08.js} +2 -2
  475. package/amd/{useTooltipControlled-ee3276de.js.map → useTooltipControlled-52183a08.js.map} +1 -1
  476. package/amd/{useTranslationBundle-d07d4b20.js → useTranslationBundle-516b1b83.js} +2 -2
  477. package/amd/{useTranslationBundle-d07d4b20.js.map → useTranslationBundle-516b1b83.js.map} +1 -1
  478. package/amd/{useUser-3ef25571.js → useUser-85c781ea.js} +2 -2
  479. package/amd/{useUser-3ef25571.js.map → useUser-85c781ea.js.map} +1 -1
  480. package/amd/useVisDragModeControls-a5685835.js +1 -1
  481. package/amd/{useVisEvents-dc86164f.js → useVisEvents-0166e4cc.js} +2 -2
  482. package/amd/{useVisEvents-dc86164f.js.map → useVisEvents-0166e4cc.js.map} +1 -1
  483. package/amd/utils/PRIVATE_tooltipUtils.js +1 -1
  484. package/amd/utils/PRIVATE_visTestUtils.js +1 -1
  485. package/amd/{withDirectionIcon-74c39ee3.js → withDirectionIcon-ce0c7432.js} +2 -2
  486. package/amd/{withDirectionIcon-74c39ee3.js.map → withDirectionIcon-ce0c7432.js.map} +1 -1
  487. package/amd/withThemeProps-4c23997e.js +1 -1
  488. package/cjs/{BarChart-93a3813c.js → BarChart-ca7f8ed5.js} +2 -2
  489. package/cjs/{BarChart-93a3813c.js.map → BarChart-ca7f8ed5.js.map} +1 -1
  490. package/cjs/{Chart-40d95d14.js → Chart-fbbd3329.js} +2 -2
  491. package/cjs/{Chart-40d95d14.js.map → Chart-fbbd3329.js.map} +1 -1
  492. package/cjs/CheckboxSetContext-c62db26d.js +12 -0
  493. package/{amd/CheckboxSetContext-2e486ea8.js.map → cjs/CheckboxSetContext-c62db26d.js.map} +1 -1
  494. package/cjs/{ComboChart-cffd0759.js → ComboChart-95863e7a.js} +2 -2
  495. package/cjs/{ComboChart-cffd0759.js.map → ComboChart-95863e7a.js.map} +1 -1
  496. package/cjs/{InputDatePicker-bc2c534a.js → InputDatePicker-4d36637f.js} +2 -2
  497. package/cjs/{InputDatePicker-bc2c534a.js.map → InputDatePicker-4d36637f.js.map} +1 -1
  498. package/cjs/{LineAreaChart-bb1350fa.js → LineAreaChart-46dde5d3.js} +2 -2
  499. package/cjs/{LineAreaChart-bb1350fa.js.map → LineAreaChart-46dde5d3.js.map} +1 -1
  500. package/cjs/PRIVATE_Chart.js +4 -4
  501. package/cjs/{ScatterChart-763e1f3e.js → ScatterChart-0497f41a.js} +2 -2
  502. package/cjs/{ScatterChart-763e1f3e.js.map → ScatterChart-0497f41a.js.map} +1 -1
  503. package/cjs/Theme-redwood/theme.css +144 -144
  504. package/cjs/Theme-stable/theme.css +401 -401
  505. package/cjs/UNSAFE_BarChart/__test__/BarChart.spec.js +5 -5
  506. package/cjs/UNSAFE_BarChart.js +5 -5
  507. package/cjs/UNSAFE_CheckboxItem.js +30 -81
  508. package/cjs/UNSAFE_CheckboxItem.js.map +1 -1
  509. package/cjs/UNSAFE_CheckboxSet.js +44 -15
  510. package/cjs/UNSAFE_CheckboxSet.js.map +1 -1
  511. package/cjs/UNSAFE_ComboChart.js +5 -5
  512. package/cjs/UNSAFE_InputDatePicker.js +90 -90
  513. package/cjs/UNSAFE_LineAreaChart.js +5 -5
  514. package/cjs/UNSAFE_RichCheckboxSet.js +13 -15
  515. package/cjs/UNSAFE_RichCheckboxSet.js.map +1 -1
  516. package/cjs/UNSAFE_RichSelectionItem.js +44 -181
  517. package/cjs/UNSAFE_RichSelectionItem.js.map +1 -1
  518. package/cjs/UNSAFE_ScatterChart.js +5 -5
  519. package/es/{BarChart-a3209793.js → BarChart-dd37d569.js} +2 -2
  520. package/es/{BarChart-a3209793.js.map → BarChart-dd37d569.js.map} +1 -1
  521. package/es/{BaseCardView-229fa119.js → BaseCardView-c5a8ee6a.js} +2 -2
  522. package/es/{BaseCardView-229fa119.js.map → BaseCardView-c5a8ee6a.js.map} +1 -1
  523. package/es/BaseNavigationListItem-f991e375.js +47 -0
  524. package/es/BaseNavigationListItem-f991e375.js.map +1 -0
  525. package/es/{CardFlexView-3ef6bf4d.js → CardFlexView-529906e0.js} +2 -2
  526. package/es/{CardFlexView-3ef6bf4d.js.map → CardFlexView-529906e0.js.map} +1 -1
  527. package/es/{CardGridView-e15226c9.js → CardGridView-ec18c929.js} +2 -2
  528. package/es/{CardGridView-e15226c9.js.map → CardGridView-ec18c929.js.map} +1 -1
  529. package/es/{Chart-b97e00f1.js → Chart-b046fb6a.js} +2 -2
  530. package/es/{Chart-b97e00f1.js.map → Chart-b046fb6a.js.map} +1 -1
  531. package/es/{ComboChart-b8c2be4d.js → ComboChart-58ac07b4.js} +2 -2
  532. package/es/{ComboChart-b8c2be4d.js.map → ComboChart-58ac07b4.js.map} +1 -1
  533. package/es/ExpandableList-478db30a.js +1 -1
  534. package/es/GroupLoadingIndicator-63035d08.js +1 -1
  535. package/es/{Indexer-eb00ba0b.js → Indexer-ba2c7593.js} +2 -2
  536. package/es/{Indexer-eb00ba0b.js.map → Indexer-ba2c7593.js.map} +1 -1
  537. package/es/LabelledLinkVariants.styles.css +3 -3
  538. package/es/LabelledLinkVariants.styles2.css +3 -3
  539. package/es/{LineAreaChart-d6924882.js → LineAreaChart-06eda855.js} +2 -2
  540. package/es/{LineAreaChart-d6924882.js.map → LineAreaChart-06eda855.js.map} +1 -1
  541. package/es/{List-e6886091.js → List-97b7be70.js} +4 -3
  542. package/es/{List-e6886091.js.map → List-97b7be70.js.map} +1 -1
  543. package/es/{ListView-137e31fd.js → ListView-936d8a4f.js} +2 -2
  544. package/es/{ListView-137e31fd.js.map → ListView-936d8a4f.js.map} +1 -1
  545. package/es/{LoadMoreCollection-7df1be36.js → LoadMoreCollection-95a49d2a.js} +2 -2
  546. package/es/{LoadMoreCollection-7df1be36.js.map → LoadMoreCollection-95a49d2a.js.map} +1 -1
  547. package/es/{NavigationListItem-5b25b2f5.js → NavigationList-a58dc41f.js} +3 -20
  548. package/es/NavigationList-a58dc41f.js.map +1 -0
  549. package/es/NavigationListItem-c93c4621.js +10 -0
  550. package/es/NavigationListItem-c93c4621.js.map +1 -0
  551. package/es/NavigationListItemVariants.styles.css +5 -5
  552. package/es/NavigationListItemVariants.styles2.css +5 -5
  553. package/es/{OverflowTabBar-47a03b1f.js → OverflowTabBar-c6c886c9.js} +3 -3
  554. package/es/{OverflowTabBar-47a03b1f.js.map → OverflowTabBar-c6c886c9.js.map} +1 -1
  555. package/es/{OverflowTabBarItem-08625093.js → OverflowTabBarItem-08b7755f.js} +4 -3
  556. package/es/{OverflowTabBarItem-08625093.js.map → OverflowTabBarItem-08b7755f.js.map} +1 -1
  557. package/es/PRIVATE_BaseCardView.js +3 -3
  558. package/es/PRIVATE_Chart.js +4 -4
  559. package/es/PRIVATE_List.js +4 -4
  560. package/es/PRIVATE_LoadMoreCollection.js +2 -2
  561. package/es/PRIVATE_SelectCommon.js +5 -5
  562. package/es/PRIVATE_Table.js +3 -3
  563. package/es/PRIVATE_VirtualizedCollection.js +2 -2
  564. package/es/{RemovableNavigationListItem-29fdaddc.js → RemovableNavigationListItem-94b3a33d.js} +3 -2
  565. package/es/{RemovableNavigationListItem-29fdaddc.js.map → RemovableNavigationListItem-94b3a33d.js.map} +1 -1
  566. package/es/{ReorderableTabBar-b9019d0a.js → ReorderableTabBar-50be617c.js} +2 -2
  567. package/es/{ReorderableTabBar-b9019d0a.js.map → ReorderableTabBar-50be617c.js.map} +1 -1
  568. package/es/{ScatterChart-d26d4ea9.js → ScatterChart-4bfeca5d.js} +2 -2
  569. package/es/{ScatterChart-d26d4ea9.js.map → ScatterChart-4bfeca5d.js.map} +1 -1
  570. package/es/SegmentStyles.styles.css +8 -8
  571. package/es/SegmentStyles.styles2.css +8 -8
  572. package/es/{SelectMultiple-488a49d1.js → SelectMultiple-ad8fc99a.js} +2 -2
  573. package/es/{SelectMultiple-488a49d1.js.map → SelectMultiple-ad8fc99a.js.map} +1 -1
  574. package/es/{SelectSingle-e8b9a33a.js → SelectSingle-abaf271c.js} +2 -2
  575. package/es/{SelectSingle-e8b9a33a.js.map → SelectSingle-abaf271c.js.map} +1 -1
  576. package/es/{TabBar-fb7f97d2.js → TabBar-eff22f9b.js} +6 -1
  577. package/es/{TabBar-fb7f97d2.js.map → TabBar-eff22f9b.js.map} +1 -1
  578. package/es/{TabBarMixed-f60c2c7a.js → TabBarMixed-e85a3682.js} +6 -1
  579. package/es/{TabBarMixed-f60c2c7a.js.map → TabBarMixed-e85a3682.js.map} +1 -1
  580. package/es/{Table-3cfb9443.js → Table-1ba124ec.js} +2 -2
  581. package/es/{Table-3cfb9443.js.map → Table-1ba124ec.js.map} +1 -1
  582. package/es/{TableView-fd5104cd.js → TableView-20223ba6.js} +2 -2
  583. package/es/{TableView-fd5104cd.js.map → TableView-20223ba6.js.map} +1 -1
  584. package/es/{TextArea-7230675f.js → TextArea-64b4e972.js} +25 -8
  585. package/es/TextArea-64b4e972.js.map +1 -0
  586. package/es/{TextAreaAutosize-0d293016.js → TextAreaAutosize-4e0f60ef.js} +2 -2
  587. package/es/{TextAreaAutosize-0d293016.js.map → TextAreaAutosize-4e0f60ef.js.map} +1 -1
  588. package/es/Theme-redwood/theme.css +452 -452
  589. package/es/Theme-stable/theme.css +454 -454
  590. package/es/TrainVariants.styles.css +6 -6
  591. package/es/TrainVariants.styles2.css +6 -6
  592. package/es/UNSAFE_BarChart/__test__/BarChart.spec.js +5 -5
  593. package/es/UNSAFE_BarChart.js +5 -5
  594. package/es/UNSAFE_CardFlexView.js +4 -4
  595. package/es/UNSAFE_CardGridView.js +4 -4
  596. package/es/UNSAFE_ComboChart.js +5 -5
  597. package/es/UNSAFE_ExpandableList.js +3 -3
  598. package/es/UNSAFE_Indexer.js +2 -2
  599. package/es/UNSAFE_InputDateMask/themes/SegmentStyles.css.js +1 -1
  600. package/es/UNSAFE_InputDateMask.js +1 -1
  601. package/es/UNSAFE_InputDatePicker.js +1 -1
  602. package/es/UNSAFE_InputTimeMask/themes/SegmentStyles.css.js +1 -1
  603. package/es/UNSAFE_InputTimeMask.js +1 -1
  604. package/es/UNSAFE_LabelledLink/themes/redwood/LabelledLinkTheme.js +1 -1
  605. package/es/UNSAFE_LabelledLink/themes/redwood/LabelledLinkVariants.css.js +1 -1
  606. package/es/UNSAFE_LabelledLink/themes/stable/LabelledLinkTheme.js +1 -1
  607. package/es/UNSAFE_LabelledLink/themes/stable/LabelledLinkVariants.css.js +1 -1
  608. package/es/UNSAFE_LabelledLink.js +1 -1
  609. package/es/UNSAFE_LineAreaChart.js +5 -5
  610. package/es/UNSAFE_ListView.js +5 -5
  611. package/es/UNSAFE_NavigationList/themes/redwood/NavigationListItemVariants.css.js +1 -1
  612. package/es/UNSAFE_NavigationList/themes/stable/NavigationListItemTheme.js +1 -1
  613. package/es/UNSAFE_NavigationList/themes/stable/NavigationListItemVariants.css.js +1 -1
  614. package/es/UNSAFE_NavigationList.js +16 -14
  615. package/es/UNSAFE_NavigationList.js.map +1 -1
  616. package/es/UNSAFE_NavigationListCommon/themes/redwood/NavigationListItemTheme.js +1 -1
  617. package/es/UNSAFE_NavigationListCommon.js +55 -54
  618. package/es/UNSAFE_NavigationListCommon.js.map +1 -1
  619. package/es/UNSAFE_OverflowTabBar.js +29 -27
  620. package/es/UNSAFE_OverflowTabBar.js.map +1 -1
  621. package/es/UNSAFE_ReorderableTabBar.js +25 -14
  622. package/es/UNSAFE_ReorderableTabBar.js.map +1 -1
  623. package/es/UNSAFE_ScatterChart.js +5 -5
  624. package/es/UNSAFE_SelectMultiple.js +6 -6
  625. package/es/UNSAFE_SelectSingle.js +6 -6
  626. package/es/UNSAFE_TabBar.js +28 -26
  627. package/es/UNSAFE_TabBar.js.map +1 -1
  628. package/es/UNSAFE_TabBarCommon.js +20 -18
  629. package/es/UNSAFE_TabBarCommon.js.map +1 -1
  630. package/es/UNSAFE_TabBarMixed.js +39 -37
  631. package/es/UNSAFE_TabBarMixed.js.map +1 -1
  632. package/es/UNSAFE_TableView.js +4 -4
  633. package/es/UNSAFE_TextArea.js +2 -3
  634. package/es/UNSAFE_TextArea.js.map +1 -1
  635. package/es/UNSAFE_TextAreaAutosize.js +3 -3
  636. package/es/UNSAFE_Train/themes/redwood/TrainTheme.js +1 -1
  637. package/es/UNSAFE_Train/themes/redwood/TrainVariants.css.js +1 -1
  638. package/es/UNSAFE_Train/themes/stable/TrainTheme.js +1 -1
  639. package/es/UNSAFE_Train/themes/stable/TrainVariants.css.js +1 -1
  640. package/es/UNSAFE_Train.js +1 -1
  641. package/es/UNSAFE_VirtualizedListView.js +5 -5
  642. package/es/{VirtualizedCollection-f048fbb8.js → VirtualizedCollection-e73890a1.js} +2 -2
  643. package/es/{VirtualizedCollection-f048fbb8.js.map → VirtualizedCollection-e73890a1.js.map} +1 -1
  644. package/es/{VirtualizedListView-0532e46c.js → VirtualizedListView-3ef40bde.js} +2 -2
  645. package/es/{VirtualizedListView-0532e46c.js.map → VirtualizedListView-3ef40bde.js.map} +1 -1
  646. package/es/{BaseNavigationListItem-530bc3df.js → useNavigationListItem-4b7a666d.js} +3 -41
  647. package/es/useNavigationListItem-4b7a666d.js.map +1 -0
  648. package/es/{useSelectCommon-af8e715e.js → useSelectCommon-1dafa6f9.js} +2 -2
  649. package/es/{useSelectCommon-af8e715e.js.map → useSelectCommon-1dafa6f9.js.map} +1 -1
  650. package/package.json +2 -2
  651. package/amd/CheckboxSetContext-2e486ea8.js +0 -2
  652. package/amd/CompactLabelAssistance-c6928282.js +0 -2
  653. package/amd/Flex-3421f0df.js +0 -2
  654. package/amd/HighlightText-644bc74e.js +0 -2
  655. package/amd/LiveRegion-9a362373.js +0 -2
  656. package/amd/MaxLengthLiveRegion-bb956138.js +0 -2
  657. package/amd/NavigationListItem-044a79fd.js +0 -2
  658. package/amd/SectionedContent-19bef3cc.js +0 -2
  659. package/amd/SelectionCard-13aac54a.js +0 -2
  660. package/amd/TabBarMixedSeparator-ed764207.js +0 -2
  661. package/amd/TruncatingBadge-7f66faaf.js +0 -2
  662. package/amd/VisNoData-10983ace.js +0 -2
  663. package/amd/index-95227deb.js.map +0 -1
  664. package/amd/render-85c034d7.js +0 -2
  665. package/amd/useChartDatatip-947eeffe.js +0 -2
  666. package/amd/useCurrentKey-a993db56.js +0 -2
  667. package/amd/useKeyboardEvents-8ada7a1f.js +0 -2
  668. package/amd/useMeterDatatip-173593b4.js +0 -2
  669. package/amd/usePrefixSuffix-f7544e05.js +0 -2
  670. package/amd/useScale-e311d35f.js +0 -2
  671. package/amd/useSelection-01203394.js +0 -2
  672. package/amd/useThemeInterpolations-ab618dee.js +0 -2
  673. package/amd/useTooltip-b43ad881.js +0 -2
  674. package/cjs/CheckboxSet-1bdbc419.js +0 -53
  675. package/es/BaseNavigationListItem-530bc3df.js.map +0 -1
  676. package/es/MaxLengthCounter-181b4fc9.js +0 -25
  677. package/es/MaxLengthCounter-181b4fc9.js.map +0 -1
  678. package/es/NavigationListItem-5b25b2f5.js.map +0 -1
  679. package/es/TextArea-7230675f.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Chart-b97e00f1.js","sources":["../../src/PRIVATE_Axis/utils/axisNavUtils.ts","../../src/PRIVATE_VisSVGText/useTextTruncation.ts","../../src/PRIVATE_VisOverview/utils.ts","../../src/PRIVATE_VisOverview/OverviewBackground.tsx","../../src/PRIVATE_Chart/overviewUtils.tsx","../../src/PRIVATE_Chart/ChartWithDimensions.tsx","../../src/PRIVATE_Chart/Chart.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { Group, ChartGroupInfo } from '#utils/UNSAFE_visTypes/chart';\ntype isGroupNavigableType = (groupIndex: number) => boolean;\n\nexport function getNextGroup(\n info: ChartGroupInfo,\n viewportEndIndex: number,\n isGroupNavigable: isGroupNavigableType\n): ChartGroupInfo | undefined {\n const groupIndex = info.groupIndex + 1;\n if (groupIndex >= viewportEndIndex) {\n return;\n }\n\n if (isGroupNavigable(groupIndex)) {\n return { groupIndex };\n }\n return getNextGroup({ groupIndex }, viewportEndIndex, isGroupNavigable);\n}\n\nexport function getPreviousGroup(\n info: ChartGroupInfo,\n isGroupNavigable: isGroupNavigableType\n): ChartGroupInfo | undefined {\n const groupIndex = info.groupIndex - 1;\n if (groupIndex < 0) {\n return;\n }\n if (isGroupNavigable(groupIndex)) {\n return { groupIndex };\n }\n return getPreviousGroup({ groupIndex }, isGroupNavigable);\n}\n\nexport function getGroupNavUtil(\n groups: Group[],\n renderedGroups: number[],\n xIndexExtent: { startIndex: number; endIndex: number },\n drilling: 'on' | 'off' | 'groupsOnly',\n isRtl: boolean\n) {\n const isGroupNavigable = (groupIndex: number) => {\n const groupsDrilling = groups[renderedGroups[groupIndex]].drilling;\n return (drilling === 'on' || drilling === 'groupsOnly') && groupsDrilling != 'off';\n };\n\n const getDefaultNavGroup = (info: ChartGroupInfo) => {\n if (xIndexExtent.startIndex > renderedGroups[info.groupIndex]) {\n info.groupIndex = 0;\n return info;\n } else if (xIndexExtent.endIndex < renderedGroups[info.groupIndex]) {\n info.groupIndex = renderedGroups.length - 1;\n return info;\n }\n return;\n };\n\n const getNextNavGroup = (info: ChartGroupInfo, arrow: 'ArrowRight' | 'ArrowLeft') => {\n let nextGroup = getDefaultNavGroup(info);\n\n if (nextGroup) return nextGroup;\n\n if (arrow === 'ArrowRight') {\n nextGroup = isRtl\n ? getPreviousGroup(info, isGroupNavigable)\n : getNextGroup(info, renderedGroups.length, isGroupNavigable);\n } else {\n nextGroup = isRtl\n ? getNextGroup(info, renderedGroups.length, isGroupNavigable)\n : getPreviousGroup(info, isGroupNavigable);\n }\n return nextGroup || info;\n };\n\n return { getDefaultNavGroup, getNextNavGroup };\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { Dimension } from '#utils/UNSAFE_visTypes/common';\nimport { calculateOffset } from '#utils/PRIVATE_visLayoutUtils/layoutUtils';\nimport { useTooltip } from '#hooks/UNSAFE_useTooltip';\nimport { mergeProps } from '#utils/UNSAFE_mergeProps';\nimport { useRef, useState } from 'preact/hooks';\n\ntype Props = {\n getTextAndBounds: (target: EventTarget | null) =>\n | {\n text?: string;\n bounds?: Dimension;\n }\n | undefined;\n isRtl: boolean;\n width: number;\n};\n\nexport function useTextTruncation({ getTextAndBounds, width, isRtl }: Props) {\n const [text, setText] = useState<string>();\n const bounds = useRef<Dimension>();\n\n const { tooltipContent, tooltipProps } = useTooltip({\n text,\n position: 'top-start',\n offset: calculateOffset(isRtl, width, bounds.current)\n });\n\n const onPointerMove = (event: Event) => {\n const textAndBounds = getTextAndBounds(event.target);\n\n if (textAndBounds) {\n bounds.current = textAndBounds.bounds;\n setText(textAndBounds.text);\n } else {\n setText(undefined);\n }\n };\n\n return {\n tooltipContent,\n tooltipProps: mergeProps({ onPointerMove }, tooltipProps)\n };\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ScaleLinear } from '#utils/PRIVATE_chartUtils';\nimport { Dimension } from '#utils/UNSAFE_visTypes/common';\n\nexport function getWindowCoords(\n isRtl: boolean,\n xViewportExtent: { viewportMin: number; viewportMax: number },\n xAxisExtent: { min: number; max: number },\n yViewportExtent: { viewportMin: number; viewportMax: number },\n yAxisExtent: { min: number; max: number },\n plotAreaSpace: Dimension\n) {\n const xDomain = [xAxisExtent.min, xAxisExtent.max] as [number, number];\n const xRange = (\n isRtl\n ? [plotAreaSpace.x + plotAreaSpace.width, plotAreaSpace.x]\n : [plotAreaSpace.x, plotAreaSpace.x + plotAreaSpace.width]\n ) as [number, number];\n const xScale = new ScaleLinear(xDomain, xRange);\n\n const yDomain = [yAxisExtent.min, yAxisExtent.max] as [number, number];\n const yRange = [plotAreaSpace.y + plotAreaSpace.height, plotAreaSpace.y] as [number, number];\n\n const yScale = new ScaleLinear(yDomain, yRange);\n\n const windowX = xScale.transform(xViewportExtent.viewportMin);\n const windowWidth = Math.abs(\n xScale.transform(xViewportExtent.viewportMax) - xScale.transform(xViewportExtent.viewportMin)\n );\n\n return {\n windowX: isRtl ? windowX - windowWidth : windowX + 0.5,\n windowWidth: windowWidth - 0.5,\n windowY: yScale.transform(yViewportExtent.viewportMax),\n windowHeight: Math.abs(\n yScale.transform(yViewportExtent.viewportMax) - yScale.transform(yViewportExtent.viewportMin)\n ),\n xScale,\n yScale\n };\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { OverviewProps } from './overview.types';\nimport { styles } from './themes/VisOverview.css';\n\nexport function OverviewBackground({\n x,\n width,\n height,\n y,\n windowX,\n windowHeight,\n windowWidth,\n windowY\n}: OverviewProps) {\n return (\n <>\n <rect\n x={x}\n y={y}\n width={Math.max(0, windowX - x)}\n height={height}\n class={styles.overviewBackground}></rect>\n\n <rect\n x={windowX + windowWidth}\n width={Math.max(0, x + width - windowX - windowWidth)}\n y={y}\n height={height}\n class={styles.overviewBackground}></rect>\n\n <rect\n x={windowX}\n y={y}\n height={Math.max(0, windowY - y)}\n width={windowWidth}\n class={styles.overviewBackground}></rect>\n\n <rect\n x={windowX}\n y={windowY + windowHeight}\n width={windowWidth}\n class={styles.overviewBackground}\n height={Math.max(y + height - windowY - windowHeight, 0)}></rect>\n </>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { OverviewSlidingWindow } from '#PRIVATE_VisOverview';\nimport { OverviewBackground } from '#PRIVATE_VisOverview/OverviewBackground';\nimport { updateViewportFromOverview } from '#utils/PRIVATE_chartUtils/overviewUtils';\nimport { Scale } from '#utils/UNSAFE_visTypes/chart';\nimport { Dimension } from '#utils/UNSAFE_visTypes/common';\n\nexport function getRenderer(\n xAxisExtent: { min: number; max: number },\n isRtl: boolean,\n overviewXScale: Scale,\n plotAreaSpace: Dimension,\n windowCoords: { windowX: number; windowY: number; windowHeight: number; windowWidth: number },\n hasHandles: boolean,\n onViewportChange?: (detail: {\n xMin?: number;\n xMax?: number;\n yMin?: number;\n yMax?: number;\n }) => void\n) {\n return {\n slidingWindow: (\n <OverviewSlidingWindow\n {...plotAreaSpace}\n {...windowCoords}\n hasHandles={hasHandles}\n onWindowDimsChange={(props: { deltaX: number; deltaWidth: number }) => {\n updateViewportFromOverview(\n xAxisExtent,\n isRtl,\n windowCoords.windowX,\n windowCoords.windowWidth,\n props.deltaX,\n props.deltaWidth,\n overviewXScale,\n onViewportChange\n );\n }}\n />\n ),\n background: <OverviewBackground {...plotAreaSpace} {...windowCoords} />\n };\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { useTextDimensions } from '#hooks/PRIVATE_useTextDimensions';\nimport { useCssVars } from '#hooks/PRIVATE_useCssVars/useCssVars';\nimport { styles } from './themes/ChartStyles.css';\nimport { useRef, useState } from 'preact/hooks';\nimport { PlotArea } from '#PRIVATE_PlotArea';\nimport { useId } from '#hooks/UNSAFE_useId';\nimport { Axis } from '#PRIVATE_Axis/Axis';\nimport { useChartViewport } from '#hooks/PRIVATE_useChartViewport';\nimport {\n getAvailSpace,\n getLayoutInfo,\n getOuterGaps,\n getScrollBarSpace,\n updateScrollBarSpace\n} from '#utils/PRIVATE_chartUtils/layoutUtils';\nimport { useChartNav } from '#hooks/PRIVATE_useChartNav/useChartNav';\nimport { mergeProps } from '#utils/UNSAFE_mergeProps';\nimport { getAxesPosition } from '#PRIVATE_Axis/utils/axisUtils';\nimport { ScrollBar } from '#PRIVATE_ChartScrollBar';\nimport { useSelectDrill } from '#hooks/PRIVATE_useChartEvents/useSelectDrill';\nimport { useChartDatatipAndCursor } from '#hooks/PRIVATE_useChartEvents/useDatatipAndCursor';\nimport { getGroupNavUtil } from '#PRIVATE_Axis/utils/axisNavUtils';\nimport { TimeAxisProps } from '#utils/UNSAFE_visTypes/chart';\nimport { Gridlines } from '#PRIVATE_PlotArea/Gridlines';\nimport { useUser } from '#hooks/UNSAFE_useUser';\nimport { useTestId } from '#hooks/UNSAFE_useTestId';\nimport { getChartVars } from '#utils/PRIVATE_chartUtils';\nimport { useChartContextMenu } from '#hooks/PRIVATE_useChartContextMenu';\nimport { useChartDnd } from '#hooks/PRIVATE_useChartDnd';\nimport { getElementData } from '#utils/UNSAFE_visUtils';\nimport { useTextTruncation } from '#PRIVATE_VisSVGText/useTextTruncation';\nimport { useChartMarquee } from '#hooks/PRIVATE_useChartMarquee';\nimport { ChartProps } from './Chart';\nimport type { gestureTypes } from '#hooks/PRIVATE_useVisContextMenu';\nimport { useVisTouchResponse } from '#hooks/PRIVATE_useVisTouchResponse';\nimport { merge } from '#utils/UNSAFE_stringUtils';\nimport { LineAreaItem } from '#UNSAFE_LineAreaChart/lineAreaChart.types';\nimport { ScatterItem } from '#UNSAFE_ScatterChart/scatterChart.types';\nimport { BarItemData } from '#UNSAFE_BarChart/barChart.types';\nimport { OverviewContext } from '#hooks/PRIVATE_useOverviewContext';\nimport { getWindowCoords } from '#PRIVATE_VisOverview/utils';\nimport { Dimension } from '#utils/UNSAFE_visTypes/common';\nimport { getRenderer } from './overviewUtils';\nimport { ComponentChildren } from 'preact';\n\ntype ChartWithDimensionsProps<K, D> = Omit<ChartProps<K, D>, 'width' | 'height'> & {\n width: number;\n height: number;\n overviewRenderer: (props: Dimension) => {\n background: ComponentChildren;\n slidingWindow: ComponentChildren;\n };\n yAxisSize: number;\n isOverview: boolean;\n};\n\nconst OVERVIEW_GAP = 10;\n\nconst chartVars = getChartVars();\n\nexport function ChartWithDimensions<\n K extends string | number,\n D extends LineAreaItem<K> | ScatterItem<K> | BarItemData<K>\n>({\n width,\n height,\n selectedIds,\n hiddenIds,\n hideAndShowBehavior = 'none',\n orientation = 'vertical',\n xAxis,\n yAxis,\n plotArea,\n dragMode = 'user',\n series,\n groups,\n isStacked = false,\n getDataItem,\n selectionMode = 'none',\n drilling = 'off',\n dataCursorPosition,\n onSelectionChange,\n isDataCursorEnabled,\n dataCursorStyle,\n onViewportChange,\n onDataCursorPositionChange,\n onItemDrill,\n onGroupDrill,\n onItemHover,\n onItemFocus,\n datatip,\n zoomAndScroll = 'off',\n offset,\n getNavUtil,\n getDataItemPos,\n getGapRatio,\n valueFormats,\n findNearest,\n getMarkerInfo,\n isRtl,\n children,\n testId,\n renderGridLinesInFront,\n isDataXAxis,\n contextMenuConfig,\n overview = 'off',\n defaultOverviewContentRenderer,\n isOverview,\n yAxisSize,\n overviewRenderer,\n ...props\n}: ChartWithDimensionsProps<K, D>) {\n const testIdProps = useTestId(testId);\n const rootRef = useRef<HTMLDivElement>(null);\n const isTestEnv = testIdProps['data-testid'] !== undefined;\n const isHoriz = orientation === 'horizontal';\n const { xAxisPosition, yAxisPosition } = getAxesPosition(yAxis, isHoriz, isRtl);\n const { resolvedVars, cssContent } = useCssVars(chartVars);\n const colors = Array.from(Array(12)).map((_, index) => {\n return resolvedVars[`color${index + 1}`];\n });\n const { textMeasureContent, getTextDimensions } = useTextDimensions();\n let availSpace = getAvailSpace(width, height);\n\n if (isOverview && yAxisSize) {\n const w = availSpace.width - yAxisSize;\n const gaps = getOuterGaps(w, height);\n availSpace.width -= yAxisSize - 2 * gaps.width;\n availSpace.x += yAxisSize - gaps.width;\n }\n const isTimeAxis = (xAxis as TimeAxisProps)?.timeAxisType != null;\n\n const updatedSpace = getScrollBarSpace(\n isTimeAxis,\n availSpace,\n zoomAndScroll,\n xAxisPosition,\n overview\n );\n let scrollDims = updatedSpace.scrollDims;\n availSpace = updatedSpace.availSpace;\n const hiddenSet = new Set(hiddenIds);\n const { locale } = useUser();\n\n const {\n xProps,\n xScale,\n xViewportExtent,\n xAxisExtent,\n xIndexExtent,\n xAxisMinExtent,\n yViewportExtent,\n yAxisExtent,\n groupWidth,\n yProps,\n yScale,\n yMaxDim,\n yMajorTicks,\n xMajorTicks,\n yMinorTicks,\n xMinorTicks,\n plotAreaSpace,\n xSpace,\n ySpace,\n idToDataMap,\n formatAxisLabel,\n formatYValue\n } = getLayoutInfo<K, D>(\n series,\n groups,\n getDataItem,\n xAxis,\n yAxis,\n availSpace,\n hiddenSet,\n hideAndShowBehavior,\n isHoriz,\n isRtl,\n isStacked,\n resolvedVars['labelFontSize'],\n offset,\n locale,\n getTextDimensions,\n isTestEnv,\n isDataXAxis\n );\n\n scrollDims = updateScrollBarSpace(scrollDims, xAxisPosition === 'bottom', isRtl, yMaxDim);\n\n const gapRatio = getGapRatio(xIndexExtent.startIndex!, xIndexExtent.endIndex!);\n\n const getNextChartItem = getNavUtil(xIndexExtent.startIndex!, xIndexExtent.endIndex!);\n\n const renderedGroupsIndex = xProps.tickLabels.map(({ index }) => index + xIndexExtent.startIndex);\n const { getNextNavGroup, getDefaultNavGroup } = getGroupNavUtil(\n groups,\n renderedGroupsIndex,\n xIndexExtent as { startIndex: number; endIndex: number }, // TODO : JET-71301 | Scatter should have different nav utils call.\n drilling,\n isRtl\n );\n\n const {\n cursor,\n yAxisCursor,\n marqueeProps,\n marqueeContent,\n toggleButtonContent,\n isPointInsideMarquee,\n dragMode: mode\n } = useChartMarquee<K, D>({\n plotAreaSpace,\n xSpace,\n ySpace,\n dragMode,\n chartWidth: width,\n isMultiSelection: selectionMode === 'multiple',\n onViewportChange,\n isZoomScroll: zoomAndScroll === 'live',\n xAxisExtent,\n xScale,\n selectedIds,\n getDataById: (id) => idToDataMap.get(id),\n onSelectionChange,\n viewportMax: xViewportExtent.viewportMax!,\n viewportMin: xViewportExtent.viewportMin!,\n isRtl,\n xAxisMinExtent\n });\n\n const { touchResponse, touchResponseStyle } = useVisTouchResponse({\n type: 'auto',\n supportsTouchDragGestures: mode !== 'off',\n rootRef\n });\n\n const { activeId, focusedItemInfo, hoveredItemInfo, focusedGroupInfo, navProps, onFocusUpdate } =\n useChartNav({\n rootRef,\n getNextChartItem,\n getNextNavGroup,\n getDefaultNavGroup,\n touchResponse,\n onItemHover,\n onItemFocus,\n drilling,\n xIndexExtent\n });\n\n const onContextMenuDismissed = (gesture: gestureTypes) => {\n if (gesture === 'keyboard') {\n onFocusUpdate();\n }\n };\n\n const getTextAndBounds = (target: EventTarget | null) => {\n if (target != rootRef.current) {\n const dataSet = getElementData(rootRef, target as HTMLElement);\n const text = dataSet?.['ojText']!;\n\n if (!text) {\n return;\n }\n\n if (text === xAxis?.title) {\n return {\n text,\n bounds: xProps.titleProps?.dims\n };\n } else if (text === yAxis?.title) {\n return {\n text,\n bounds: yProps.titleProps?.dims\n };\n } else if (dataSet?.['ojGroupIndex']) {\n const index = parseInt(dataSet['ojGroupIndex']);\n return {\n bounds: xProps.tickLabels[index].dims,\n text: text!\n };\n }\n }\n\n if (target === rootRef.current && focusedGroupInfo.isFocusVisible) {\n const group = groups[focusedGroupInfo.groupIndex];\n return {\n bounds: xProps.tickLabels[focusedGroupInfo.groupIndex].dims,\n text: group.name || group.id\n };\n }\n return;\n };\n\n const { tooltipContent, tooltipProps } = useTextTruncation({\n getTextAndBounds,\n width,\n isRtl\n });\n\n const { selectDrillProps, selectionContent } = useSelectDrill<K, D>({\n selectionMode,\n selection: [...selectedIds],\n onChange: onSelectionChange,\n rootRef,\n drilling,\n onItemDrill,\n onGroupDrill,\n focusedGroupInfo,\n focusedItemInfo,\n groups,\n getDataItem,\n getDataById: (id) => idToDataMap.get(id)\n });\n\n const viewportProps = useChartViewport({\n rootRef,\n width,\n height,\n xViewportExtent,\n yViewportExtent,\n xAxisExtent,\n yAxisExtent,\n xScale,\n yScale,\n plotAreaSpace,\n isRtl,\n isHoriz,\n zoomAndScroll,\n onViewportChange\n });\n\n const findNearestData = findNearest(xScale as any, yScale, groupWidth, gapRatio);\n const getDataItemPosition = getDataItemPos(xScale as any, yScale, groupWidth, gapRatio);\n const [datatipDisabled, setDatatipDisabled] = useState(false);\n const {\n datatipContent,\n dataCursorContent,\n datatipProps: { 'aria-describedby': datatipAriaDescribedby, ...datatipProps }\n } = useChartDatatipAndCursor<K, D>({\n series,\n groups,\n width,\n height,\n findNearest: findNearestData,\n plotAreaSpace,\n onDataCursorPositionChange,\n isDataCursorEnabled,\n dataCursorPosition,\n dataCursorStyle,\n hoveredItemInfo,\n focusedItemInfo,\n getDataItem,\n getMarkerInfo,\n getDataItemPos: getDataItemPosition,\n datatip,\n valueFormats,\n isHoriz,\n touchResponse,\n isDisabled: datatipDisabled,\n xScale: xScale as any,\n yScale,\n timeAxisType: (xAxis as TimeAxisProps)?.timeAxisType,\n formatAxisLabel,\n formatYValue,\n hasXYValues: isDataXAxis\n });\n\n const isGroupInteractive = (index: number) => {\n if ((xAxis as TimeAxisProps)?.timeAxisType != null) {\n return false;\n }\n const groupDrill = groups[index]?.drilling;\n if (groupDrill === 'on') {\n return true;\n }\n\n if (groupDrill != 'off' && (drilling === 'on' || drilling === 'groupsOnly')) {\n return true;\n }\n return false;\n };\n\n const plotAreaClipPathId = useId();\n const { startIndex: xStartIndex, endIndex: xEndIndex } = xIndexExtent;\n const gridLines = (\n <Gridlines\n plotArea={plotArea}\n yMinorTicks={yMinorTicks}\n xMinorTicks={xMinorTicks}\n xScale={xScale}\n yScale={yScale}\n isLog={yAxis?.scale === 'log'}\n yTicks={yMajorTicks}\n xTicks={xMajorTicks}\n yAxisPosition={yAxisPosition}\n isDataXAxis={isDataXAxis}\n />\n );\n const hasData = series.length > 0 && groups.length > 0;\n\n const { contextMenuContent, contextMenuProps } = useChartContextMenu<K, D>({\n isRtl,\n width,\n height,\n getDataItemPosition,\n series,\n groups,\n getDataItem,\n focusedItemInfo,\n rootRef,\n xAxisTitle: xAxis?.title,\n yAxisTitle: yAxis?.title,\n contextMenuConfig: hasData ? contextMenuConfig : undefined,\n onContextMenuDismissed\n });\n\n const [dragOver, setDragOver] = useState<{ accepted: boolean | undefined; type: string }>({\n accepted: undefined,\n type: ''\n });\n\n const { draggable, dndProps, dndContent } = useChartDnd<K, D>({\n onDrag: props.onDrag,\n onDragStart: props.onDragStart,\n onDragEnd: props.onDragEnd,\n onDragEnter: props.onDragEnter,\n onDragLeave: props.onDragLeave,\n onDragOver: props.onDragOver,\n onDrop: props.onDrop,\n itemsDraggable: props.itemsDraggable,\n groupDraggable: props.groupDraggable,\n rootRef,\n groups,\n series,\n selectedIds,\n getDataItem,\n xSpace,\n ySpace,\n plotAreaSpace,\n setDragOver,\n setDatatipDisabled,\n onSelectionChange\n });\n\n const eventsProps = mergeProps(\n navProps,\n selectDrillProps,\n viewportProps,\n datatipProps,\n marqueeProps,\n tooltipProps,\n contextMenuProps,\n dndProps\n );\n\n const overviewContentRenderer =\n overview != 'off' && (overview === 'on' || !overview.renderer)\n ? defaultOverviewContentRenderer\n : undefined;\n\n const { background, slidingWindow } = overviewRenderer(plotAreaSpace);\n return (\n <div\n tabIndex={isOverview ? undefined : 0}\n draggable={draggable}\n ref={rootRef}\n aria-activedescendant={activeId}\n aria-label={props['aria-label']}\n aria-labelledby={props['aria-labelledby']}\n aria-describedby={merge([props['aria-describedby'], datatipAriaDescribedby])}\n style={{ ...touchResponseStyle }}\n role={isOverview ? undefined : 'application'}\n className={styles.baseChartStyle}\n data-oj-private-selection-mode={isTestEnv ? selectionMode : undefined}\n {...testIdProps}\n {...(isOverview ? {} : eventsProps)}>\n <svg\n width=\"100%\"\n height={\n scrollDims.height != 0 && overview != 'off'\n ? `${Math.ceil((updatedSpace.availSpace.height + OVERVIEW_GAP) * 100) / height}%`\n : '100%'\n }>\n <clipPath id={`${plotAreaClipPathId}`}>\n <rect {...plotAreaSpace}></rect>\n </clipPath>\n {background}\n <PlotArea\n color={plotArea?.color}\n dragOverStyle={\n dragOver.type !== 'plotArea' ? 'none' : dragOver.accepted ? 'accept' : 'reject'\n }\n yScale={yScale}\n hasAxisLine={!isOverview}\n cursor={cursor}\n isLog={yAxis?.scale === 'log'}\n availSpace={plotAreaSpace}\n xAxisPosition={xAxisPosition}\n isDataXAxis={isDataXAxis}\n isRtl={isRtl}\n />\n {!renderGridLinesInFront && gridLines}\n <Axis\n {...(yProps as any)}\n axisPosition={yAxisPosition}\n isRtl={isRtl}\n cursor={yAxisCursor}\n availSpace={ySpace}\n dragOverStyle={\n dragOver.type !== 'yAxis' ? 'none' : dragOver.accepted ? 'accept' : 'reject'\n }\n />\n <Axis\n {...xProps}\n isRtl={isRtl}\n axisPosition={xAxisPosition}\n isTextInteractive={isGroupInteractive}\n activeId={activeId}\n cursor={cursor}\n focusedGroupIndex={\n focusedGroupInfo.isFocusVisible ? focusedGroupInfo.groupIndex : undefined\n }\n availSpace={xSpace}\n dragOverStyle={\n dragOver.type !== 'xAxis' ? 'none' : dragOver.accepted ? 'accept' : 'reject'\n }\n />\n <g clip-path={`url(#${plotAreaClipPathId})`}>\n {children({\n xStartIndex,\n xEndIndex,\n colors,\n xScale: xScale as any,\n yScale,\n isPointInsideMarquee,\n defaultFontSize: resolvedVars['labelFontSize'],\n gapRatio,\n activeId,\n focusedItemInfo,\n hoveredItemInfo,\n getTextDimensions,\n groupWidth\n })}\n {renderGridLinesInFront && gridLines}\n {dataCursorContent}\n </g>\n {slidingWindow}\n {zoomAndScroll === 'live' && !isOverview && (\n <ScrollBar\n availSpace={scrollDims}\n isRtl={isRtl}\n viewport={xViewportExtent}\n axisExtent={xAxisExtent}\n isHoriz={xAxisPosition === 'bottom'}\n />\n )}\n {marqueeContent}\n </svg>\n <OverviewContext.Provider\n value={{\n yAxisSize: ySpace.width,\n isOverview: true,\n width,\n height: scrollDims.height,\n overviewRenderer: (overviewChartPlotArea: Dimension) => {\n const { xScale: overviewXScale, ...windowCoords } = getWindowCoords(\n isRtl,\n xViewportExtent,\n xAxisExtent,\n yViewportExtent,\n yAxisExtent,\n overviewChartPlotArea\n );\n return getRenderer(\n xAxisExtent,\n isRtl,\n overviewXScale,\n overviewChartPlotArea,\n windowCoords,\n true,\n onViewportChange\n );\n }\n }}>\n {!isOverview && overview !== 'off' && overviewContentRenderer && (\n <div style={{ width, height: scrollDims.height }}>{overviewContentRenderer()}</div>\n )}\n </OverviewContext.Provider>\n {toggleButtonContent}\n {textMeasureContent}\n {cssContent}\n {datatipContent}\n {tooltipContent}\n {contextMenuContent}\n {selectionContent}\n {dndContent}\n </div>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { dimensionStyle } from './themes/ChartStyles.css';\nimport { TrackResizeContainer } from '#PRIVATE_TrackResizeContainer';\nimport { ChartWithDimensions } from './ChartWithDimensions';\nimport {\n ChartCommonProps,\n ChartSeriesData,\n GetNextChartItemType,\n Info,\n Scale,\n getDataPosType\n} from '#utils/UNSAFE_visTypes/chart';\nimport { Dimension, MarkerShapes } from '#utils/UNSAFE_visTypes/common';\nimport { ComponentChildren, VNode } from 'preact';\nimport { Property } from 'csstype';\nimport { LineAreaItem } from '#UNSAFE_LineAreaChart/lineAreaChart.types';\nimport { ScatterItem } from '#UNSAFE_ScatterChart/scatterChart.types';\nimport { BarItemData } from '#UNSAFE_BarChart/barChart.types';\nimport { useOverviewContext } from '#hooks/PRIVATE_useOverviewContext';\n\nexport type ChartProps<K, D> = {\n selectedIds: Set<K>;\n getGapRatio: (startIndex: number, endIndex: number) => number;\n getNavUtil: (startIndex: number, endIndex: number) => GetNextChartItemType;\n getDataItemPos: (\n xScale: Scale,\n yScale: Scale,\n groupWidth: number,\n gapRatio: number\n ) => getDataPosType;\n findNearest: (\n xScale: Scale,\n yScale: Scale,\n groupWidth: number,\n gapRatio: number\n ) => (\n x: number,\n y: number\n ) =>\n | {\n seriesIndex: number;\n groupIndex: number;\n y: number | undefined;\n x: number;\n }\n | undefined;\n children: (context: {\n xStartIndex: number;\n xEndIndex: number;\n xScale: Scale;\n yScale: Scale;\n gapRatio: number;\n activeId?: string;\n focusedItemInfo: Info;\n hoveredItemInfo?: Info;\n groupWidth: number;\n isPointInsideMarquee: ((id: K, point: { x: number; y: number }) => boolean) | undefined;\n getTextDimensions?: (text: string, style: Record<string, any>) => Dimension;\n defaultFontSize: string;\n colors: string[];\n }) => VNode;\n offset: number;\n series: ChartSeriesData<K, D>[];\n isRtl: boolean;\n renderGridLinesInFront: boolean;\n isDataXAxis?: boolean;\n getMarkerInfo: (\n seriesIndex: number,\n groupIndex: number\n ) => { color: Property.Color | undefined; type?: MarkerShapes };\n defaultOverviewContentRenderer: () => ComponentChildren;\n} & Omit<ChartCommonProps<K, D>, 'highlightedIds' | 'hoverBehavior' | 'selectedIds'>;\n\nexport function Chart<\n K extends string | number,\n D extends LineAreaItem<K> | ScatterItem<K> | BarItemData<K>\n>({ width, height, ...props }: ChartProps<K, D>) {\n // TODO: reevaluate how we handle empty data\n const {\n isOverview,\n overviewRenderer,\n yAxisSize,\n width: overviewWidth,\n height: overviewHeight\n } = useOverviewContext();\n\n let chartWidth = width;\n let chartHeight = height;\n\n if (chartWidth === undefined && isOverview && overviewWidth !== undefined) {\n chartWidth = `${overviewWidth}px`;\n }\n\n if (chartHeight === undefined && isOverview && overviewHeight !== undefined) {\n chartHeight = `${overviewHeight}px`;\n }\n\n return (\n <TrackResizeContainer width={chartWidth} height={chartHeight} class={dimensionStyle}>\n {(width, height) =>\n width || height ? (\n <ChartWithDimensions\n width={width}\n height={height}\n {...props}\n yAxisSize={yAxisSize}\n isOverview={isOverview}\n overviewRenderer={overviewRenderer}\n />\n ) : undefined\n }\n </TrackResizeContainer>\n );\n}\n"],"names":["_jsxs","_Fragment","_jsx","styles"],"mappings":"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"}
1
+ {"version":3,"file":"Chart-b046fb6a.js","sources":["../../src/PRIVATE_Axis/utils/axisNavUtils.ts","../../src/PRIVATE_VisSVGText/useTextTruncation.ts","../../src/PRIVATE_VisOverview/utils.ts","../../src/PRIVATE_VisOverview/OverviewBackground.tsx","../../src/PRIVATE_Chart/overviewUtils.tsx","../../src/PRIVATE_Chart/ChartWithDimensions.tsx","../../src/PRIVATE_Chart/Chart.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { Group, ChartGroupInfo } from '#utils/UNSAFE_visTypes/chart';\ntype isGroupNavigableType = (groupIndex: number) => boolean;\n\nexport function getNextGroup(\n info: ChartGroupInfo,\n viewportEndIndex: number,\n isGroupNavigable: isGroupNavigableType\n): ChartGroupInfo | undefined {\n const groupIndex = info.groupIndex + 1;\n if (groupIndex >= viewportEndIndex) {\n return;\n }\n\n if (isGroupNavigable(groupIndex)) {\n return { groupIndex };\n }\n return getNextGroup({ groupIndex }, viewportEndIndex, isGroupNavigable);\n}\n\nexport function getPreviousGroup(\n info: ChartGroupInfo,\n isGroupNavigable: isGroupNavigableType\n): ChartGroupInfo | undefined {\n const groupIndex = info.groupIndex - 1;\n if (groupIndex < 0) {\n return;\n }\n if (isGroupNavigable(groupIndex)) {\n return { groupIndex };\n }\n return getPreviousGroup({ groupIndex }, isGroupNavigable);\n}\n\nexport function getGroupNavUtil(\n groups: Group[],\n renderedGroups: number[],\n xIndexExtent: { startIndex: number; endIndex: number },\n drilling: 'on' | 'off' | 'groupsOnly',\n isRtl: boolean\n) {\n const isGroupNavigable = (groupIndex: number) => {\n const groupsDrilling = groups[renderedGroups[groupIndex]].drilling;\n return (drilling === 'on' || drilling === 'groupsOnly') && groupsDrilling != 'off';\n };\n\n const getDefaultNavGroup = (info: ChartGroupInfo) => {\n if (xIndexExtent.startIndex > renderedGroups[info.groupIndex]) {\n info.groupIndex = 0;\n return info;\n } else if (xIndexExtent.endIndex < renderedGroups[info.groupIndex]) {\n info.groupIndex = renderedGroups.length - 1;\n return info;\n }\n return;\n };\n\n const getNextNavGroup = (info: ChartGroupInfo, arrow: 'ArrowRight' | 'ArrowLeft') => {\n let nextGroup = getDefaultNavGroup(info);\n\n if (nextGroup) return nextGroup;\n\n if (arrow === 'ArrowRight') {\n nextGroup = isRtl\n ? getPreviousGroup(info, isGroupNavigable)\n : getNextGroup(info, renderedGroups.length, isGroupNavigable);\n } else {\n nextGroup = isRtl\n ? getNextGroup(info, renderedGroups.length, isGroupNavigable)\n : getPreviousGroup(info, isGroupNavigable);\n }\n return nextGroup || info;\n };\n\n return { getDefaultNavGroup, getNextNavGroup };\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { Dimension } from '#utils/UNSAFE_visTypes/common';\nimport { calculateOffset } from '#utils/PRIVATE_visLayoutUtils/layoutUtils';\nimport { useTooltip } from '#hooks/UNSAFE_useTooltip';\nimport { mergeProps } from '#utils/UNSAFE_mergeProps';\nimport { useRef, useState } from 'preact/hooks';\n\ntype Props = {\n getTextAndBounds: (target: EventTarget | null) =>\n | {\n text?: string;\n bounds?: Dimension;\n }\n | undefined;\n isRtl: boolean;\n width: number;\n};\n\nexport function useTextTruncation({ getTextAndBounds, width, isRtl }: Props) {\n const [text, setText] = useState<string>();\n const bounds = useRef<Dimension>();\n\n const { tooltipContent, tooltipProps } = useTooltip({\n text,\n position: 'top-start',\n offset: calculateOffset(isRtl, width, bounds.current)\n });\n\n const onPointerMove = (event: Event) => {\n const textAndBounds = getTextAndBounds(event.target);\n\n if (textAndBounds) {\n bounds.current = textAndBounds.bounds;\n setText(textAndBounds.text);\n } else {\n setText(undefined);\n }\n };\n\n return {\n tooltipContent,\n tooltipProps: mergeProps({ onPointerMove }, tooltipProps)\n };\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ScaleLinear } from '#utils/PRIVATE_chartUtils';\nimport { Dimension } from '#utils/UNSAFE_visTypes/common';\n\nexport function getWindowCoords(\n isRtl: boolean,\n xViewportExtent: { viewportMin: number; viewportMax: number },\n xAxisExtent: { min: number; max: number },\n yViewportExtent: { viewportMin: number; viewportMax: number },\n yAxisExtent: { min: number; max: number },\n plotAreaSpace: Dimension\n) {\n const xDomain = [xAxisExtent.min, xAxisExtent.max] as [number, number];\n const xRange = (\n isRtl\n ? [plotAreaSpace.x + plotAreaSpace.width, plotAreaSpace.x]\n : [plotAreaSpace.x, plotAreaSpace.x + plotAreaSpace.width]\n ) as [number, number];\n const xScale = new ScaleLinear(xDomain, xRange);\n\n const yDomain = [yAxisExtent.min, yAxisExtent.max] as [number, number];\n const yRange = [plotAreaSpace.y + plotAreaSpace.height, plotAreaSpace.y] as [number, number];\n\n const yScale = new ScaleLinear(yDomain, yRange);\n\n const windowX = xScale.transform(xViewportExtent.viewportMin);\n const windowWidth = Math.abs(\n xScale.transform(xViewportExtent.viewportMax) - xScale.transform(xViewportExtent.viewportMin)\n );\n\n return {\n windowX: isRtl ? windowX - windowWidth : windowX + 0.5,\n windowWidth: windowWidth - 0.5,\n windowY: yScale.transform(yViewportExtent.viewportMax),\n windowHeight: Math.abs(\n yScale.transform(yViewportExtent.viewportMax) - yScale.transform(yViewportExtent.viewportMin)\n ),\n xScale,\n yScale\n };\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { OverviewProps } from './overview.types';\nimport { styles } from './themes/VisOverview.css';\n\nexport function OverviewBackground({\n x,\n width,\n height,\n y,\n windowX,\n windowHeight,\n windowWidth,\n windowY\n}: OverviewProps) {\n return (\n <>\n <rect\n x={x}\n y={y}\n width={Math.max(0, windowX - x)}\n height={height}\n class={styles.overviewBackground}></rect>\n\n <rect\n x={windowX + windowWidth}\n width={Math.max(0, x + width - windowX - windowWidth)}\n y={y}\n height={height}\n class={styles.overviewBackground}></rect>\n\n <rect\n x={windowX}\n y={y}\n height={Math.max(0, windowY - y)}\n width={windowWidth}\n class={styles.overviewBackground}></rect>\n\n <rect\n x={windowX}\n y={windowY + windowHeight}\n width={windowWidth}\n class={styles.overviewBackground}\n height={Math.max(y + height - windowY - windowHeight, 0)}></rect>\n </>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { OverviewSlidingWindow } from '#PRIVATE_VisOverview';\nimport { OverviewBackground } from '#PRIVATE_VisOverview/OverviewBackground';\nimport { updateViewportFromOverview } from '#utils/PRIVATE_chartUtils/overviewUtils';\nimport { Scale } from '#utils/UNSAFE_visTypes/chart';\nimport { Dimension } from '#utils/UNSAFE_visTypes/common';\n\nexport function getRenderer(\n xAxisExtent: { min: number; max: number },\n isRtl: boolean,\n overviewXScale: Scale,\n plotAreaSpace: Dimension,\n windowCoords: { windowX: number; windowY: number; windowHeight: number; windowWidth: number },\n hasHandles: boolean,\n onViewportChange?: (detail: {\n xMin?: number;\n xMax?: number;\n yMin?: number;\n yMax?: number;\n }) => void\n) {\n return {\n slidingWindow: (\n <OverviewSlidingWindow\n {...plotAreaSpace}\n {...windowCoords}\n hasHandles={hasHandles}\n onWindowDimsChange={(props: { deltaX: number; deltaWidth: number }) => {\n updateViewportFromOverview(\n xAxisExtent,\n isRtl,\n windowCoords.windowX,\n windowCoords.windowWidth,\n props.deltaX,\n props.deltaWidth,\n overviewXScale,\n onViewportChange\n );\n }}\n />\n ),\n background: <OverviewBackground {...plotAreaSpace} {...windowCoords} />\n };\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { useTextDimensions } from '#hooks/PRIVATE_useTextDimensions';\nimport { useCssVars } from '#hooks/PRIVATE_useCssVars/useCssVars';\nimport { styles } from './themes/ChartStyles.css';\nimport { useRef, useState } from 'preact/hooks';\nimport { PlotArea } from '#PRIVATE_PlotArea';\nimport { useId } from '#hooks/UNSAFE_useId';\nimport { Axis } from '#PRIVATE_Axis/Axis';\nimport { useChartViewport } from '#hooks/PRIVATE_useChartViewport';\nimport {\n getAvailSpace,\n getLayoutInfo,\n getOuterGaps,\n getScrollBarSpace,\n updateScrollBarSpace\n} from '#utils/PRIVATE_chartUtils/layoutUtils';\nimport { useChartNav } from '#hooks/PRIVATE_useChartNav/useChartNav';\nimport { mergeProps } from '#utils/UNSAFE_mergeProps';\nimport { getAxesPosition } from '#PRIVATE_Axis/utils/axisUtils';\nimport { ScrollBar } from '#PRIVATE_ChartScrollBar';\nimport { useSelectDrill } from '#hooks/PRIVATE_useChartEvents/useSelectDrill';\nimport { useChartDatatipAndCursor } from '#hooks/PRIVATE_useChartEvents/useDatatipAndCursor';\nimport { getGroupNavUtil } from '#PRIVATE_Axis/utils/axisNavUtils';\nimport { TimeAxisProps } from '#utils/UNSAFE_visTypes/chart';\nimport { Gridlines } from '#PRIVATE_PlotArea/Gridlines';\nimport { useUser } from '#hooks/UNSAFE_useUser';\nimport { useTestId } from '#hooks/UNSAFE_useTestId';\nimport { getChartVars } from '#utils/PRIVATE_chartUtils';\nimport { useChartContextMenu } from '#hooks/PRIVATE_useChartContextMenu';\nimport { useChartDnd } from '#hooks/PRIVATE_useChartDnd';\nimport { getElementData } from '#utils/UNSAFE_visUtils';\nimport { useTextTruncation } from '#PRIVATE_VisSVGText/useTextTruncation';\nimport { useChartMarquee } from '#hooks/PRIVATE_useChartMarquee';\nimport { ChartProps } from './Chart';\nimport type { gestureTypes } from '#hooks/PRIVATE_useVisContextMenu';\nimport { useVisTouchResponse } from '#hooks/PRIVATE_useVisTouchResponse';\nimport { merge } from '#utils/UNSAFE_stringUtils';\nimport { LineAreaItem } from '#UNSAFE_LineAreaChart/lineAreaChart.types';\nimport { ScatterItem } from '#UNSAFE_ScatterChart/scatterChart.types';\nimport { BarItemData } from '#UNSAFE_BarChart/barChart.types';\nimport { OverviewContext } from '#hooks/PRIVATE_useOverviewContext';\nimport { getWindowCoords } from '#PRIVATE_VisOverview/utils';\nimport { Dimension } from '#utils/UNSAFE_visTypes/common';\nimport { getRenderer } from './overviewUtils';\nimport { ComponentChildren } from 'preact';\n\ntype ChartWithDimensionsProps<K, D> = Omit<ChartProps<K, D>, 'width' | 'height'> & {\n width: number;\n height: number;\n overviewRenderer: (props: Dimension) => {\n background: ComponentChildren;\n slidingWindow: ComponentChildren;\n };\n yAxisSize: number;\n isOverview: boolean;\n};\n\nconst OVERVIEW_GAP = 10;\n\nconst chartVars = getChartVars();\n\nexport function ChartWithDimensions<\n K extends string | number,\n D extends LineAreaItem<K> | ScatterItem<K> | BarItemData<K>\n>({\n width,\n height,\n selectedIds,\n hiddenIds,\n hideAndShowBehavior = 'none',\n orientation = 'vertical',\n xAxis,\n yAxis,\n plotArea,\n dragMode = 'user',\n series,\n groups,\n isStacked = false,\n getDataItem,\n selectionMode = 'none',\n drilling = 'off',\n dataCursorPosition,\n onSelectionChange,\n isDataCursorEnabled,\n dataCursorStyle,\n onViewportChange,\n onDataCursorPositionChange,\n onItemDrill,\n onGroupDrill,\n onItemHover,\n onItemFocus,\n datatip,\n zoomAndScroll = 'off',\n offset,\n getNavUtil,\n getDataItemPos,\n getGapRatio,\n valueFormats,\n findNearest,\n getMarkerInfo,\n isRtl,\n children,\n testId,\n renderGridLinesInFront,\n isDataXAxis,\n contextMenuConfig,\n overview = 'off',\n defaultOverviewContentRenderer,\n isOverview,\n yAxisSize,\n overviewRenderer,\n ...props\n}: ChartWithDimensionsProps<K, D>) {\n const testIdProps = useTestId(testId);\n const rootRef = useRef<HTMLDivElement>(null);\n const isTestEnv = testIdProps['data-testid'] !== undefined;\n const isHoriz = orientation === 'horizontal';\n const { xAxisPosition, yAxisPosition } = getAxesPosition(yAxis, isHoriz, isRtl);\n const { resolvedVars, cssContent } = useCssVars(chartVars);\n const colors = Array.from(Array(12)).map((_, index) => {\n return resolvedVars[`color${index + 1}`];\n });\n const { textMeasureContent, getTextDimensions } = useTextDimensions();\n let availSpace = getAvailSpace(width, height);\n\n if (isOverview && yAxisSize) {\n const w = availSpace.width - yAxisSize;\n const gaps = getOuterGaps(w, height);\n availSpace.width -= yAxisSize - 2 * gaps.width;\n availSpace.x += yAxisSize - gaps.width;\n }\n const isTimeAxis = (xAxis as TimeAxisProps)?.timeAxisType != null;\n\n const updatedSpace = getScrollBarSpace(\n isTimeAxis,\n availSpace,\n zoomAndScroll,\n xAxisPosition,\n overview\n );\n let scrollDims = updatedSpace.scrollDims;\n availSpace = updatedSpace.availSpace;\n const hiddenSet = new Set(hiddenIds);\n const { locale } = useUser();\n\n const {\n xProps,\n xScale,\n xViewportExtent,\n xAxisExtent,\n xIndexExtent,\n xAxisMinExtent,\n yViewportExtent,\n yAxisExtent,\n groupWidth,\n yProps,\n yScale,\n yMaxDim,\n yMajorTicks,\n xMajorTicks,\n yMinorTicks,\n xMinorTicks,\n plotAreaSpace,\n xSpace,\n ySpace,\n idToDataMap,\n formatAxisLabel,\n formatYValue\n } = getLayoutInfo<K, D>(\n series,\n groups,\n getDataItem,\n xAxis,\n yAxis,\n availSpace,\n hiddenSet,\n hideAndShowBehavior,\n isHoriz,\n isRtl,\n isStacked,\n resolvedVars['labelFontSize'],\n offset,\n locale,\n getTextDimensions,\n isTestEnv,\n isDataXAxis\n );\n\n scrollDims = updateScrollBarSpace(scrollDims, xAxisPosition === 'bottom', isRtl, yMaxDim);\n\n const gapRatio = getGapRatio(xIndexExtent.startIndex!, xIndexExtent.endIndex!);\n\n const getNextChartItem = getNavUtil(xIndexExtent.startIndex!, xIndexExtent.endIndex!);\n\n const renderedGroupsIndex = xProps.tickLabels.map(({ index }) => index + xIndexExtent.startIndex);\n const { getNextNavGroup, getDefaultNavGroup } = getGroupNavUtil(\n groups,\n renderedGroupsIndex,\n xIndexExtent as { startIndex: number; endIndex: number }, // TODO : JET-71301 | Scatter should have different nav utils call.\n drilling,\n isRtl\n );\n\n const {\n cursor,\n yAxisCursor,\n marqueeProps,\n marqueeContent,\n toggleButtonContent,\n isPointInsideMarquee,\n dragMode: mode\n } = useChartMarquee<K, D>({\n plotAreaSpace,\n xSpace,\n ySpace,\n dragMode,\n chartWidth: width,\n isMultiSelection: selectionMode === 'multiple',\n onViewportChange,\n isZoomScroll: zoomAndScroll === 'live',\n xAxisExtent,\n xScale,\n selectedIds,\n getDataById: (id) => idToDataMap.get(id),\n onSelectionChange,\n viewportMax: xViewportExtent.viewportMax!,\n viewportMin: xViewportExtent.viewportMin!,\n isRtl,\n xAxisMinExtent\n });\n\n const { touchResponse, touchResponseStyle } = useVisTouchResponse({\n type: 'auto',\n supportsTouchDragGestures: mode !== 'off',\n rootRef\n });\n\n const { activeId, focusedItemInfo, hoveredItemInfo, focusedGroupInfo, navProps, onFocusUpdate } =\n useChartNav({\n rootRef,\n getNextChartItem,\n getNextNavGroup,\n getDefaultNavGroup,\n touchResponse,\n onItemHover,\n onItemFocus,\n drilling,\n xIndexExtent\n });\n\n const onContextMenuDismissed = (gesture: gestureTypes) => {\n if (gesture === 'keyboard') {\n onFocusUpdate();\n }\n };\n\n const getTextAndBounds = (target: EventTarget | null) => {\n if (target != rootRef.current) {\n const dataSet = getElementData(rootRef, target as HTMLElement);\n const text = dataSet?.['ojText']!;\n\n if (!text) {\n return;\n }\n\n if (text === xAxis?.title) {\n return {\n text,\n bounds: xProps.titleProps?.dims\n };\n } else if (text === yAxis?.title) {\n return {\n text,\n bounds: yProps.titleProps?.dims\n };\n } else if (dataSet?.['ojGroupIndex']) {\n const index = parseInt(dataSet['ojGroupIndex']);\n return {\n bounds: xProps.tickLabels[index].dims,\n text: text!\n };\n }\n }\n\n if (target === rootRef.current && focusedGroupInfo.isFocusVisible) {\n const group = groups[focusedGroupInfo.groupIndex];\n return {\n bounds: xProps.tickLabels[focusedGroupInfo.groupIndex].dims,\n text: group.name || group.id\n };\n }\n return;\n };\n\n const { tooltipContent, tooltipProps } = useTextTruncation({\n getTextAndBounds,\n width,\n isRtl\n });\n\n const { selectDrillProps, selectionContent } = useSelectDrill<K, D>({\n selectionMode,\n selection: [...selectedIds],\n onChange: onSelectionChange,\n rootRef,\n drilling,\n onItemDrill,\n onGroupDrill,\n focusedGroupInfo,\n focusedItemInfo,\n groups,\n getDataItem,\n getDataById: (id) => idToDataMap.get(id)\n });\n\n const viewportProps = useChartViewport({\n rootRef,\n width,\n height,\n xViewportExtent,\n yViewportExtent,\n xAxisExtent,\n yAxisExtent,\n xScale,\n yScale,\n plotAreaSpace,\n isRtl,\n isHoriz,\n zoomAndScroll,\n onViewportChange\n });\n\n const findNearestData = findNearest(xScale as any, yScale, groupWidth, gapRatio);\n const getDataItemPosition = getDataItemPos(xScale as any, yScale, groupWidth, gapRatio);\n const [datatipDisabled, setDatatipDisabled] = useState(false);\n const {\n datatipContent,\n dataCursorContent,\n datatipProps: { 'aria-describedby': datatipAriaDescribedby, ...datatipProps }\n } = useChartDatatipAndCursor<K, D>({\n series,\n groups,\n width,\n height,\n findNearest: findNearestData,\n plotAreaSpace,\n onDataCursorPositionChange,\n isDataCursorEnabled,\n dataCursorPosition,\n dataCursorStyle,\n hoveredItemInfo,\n focusedItemInfo,\n getDataItem,\n getMarkerInfo,\n getDataItemPos: getDataItemPosition,\n datatip,\n valueFormats,\n isHoriz,\n touchResponse,\n isDisabled: datatipDisabled,\n xScale: xScale as any,\n yScale,\n timeAxisType: (xAxis as TimeAxisProps)?.timeAxisType,\n formatAxisLabel,\n formatYValue,\n hasXYValues: isDataXAxis\n });\n\n const isGroupInteractive = (index: number) => {\n if ((xAxis as TimeAxisProps)?.timeAxisType != null) {\n return false;\n }\n const groupDrill = groups[index]?.drilling;\n if (groupDrill === 'on') {\n return true;\n }\n\n if (groupDrill != 'off' && (drilling === 'on' || drilling === 'groupsOnly')) {\n return true;\n }\n return false;\n };\n\n const plotAreaClipPathId = useId();\n const { startIndex: xStartIndex, endIndex: xEndIndex } = xIndexExtent;\n const gridLines = (\n <Gridlines\n plotArea={plotArea}\n yMinorTicks={yMinorTicks}\n xMinorTicks={xMinorTicks}\n xScale={xScale}\n yScale={yScale}\n isLog={yAxis?.scale === 'log'}\n yTicks={yMajorTicks}\n xTicks={xMajorTicks}\n yAxisPosition={yAxisPosition}\n isDataXAxis={isDataXAxis}\n />\n );\n const hasData = series.length > 0 && groups.length > 0;\n\n const { contextMenuContent, contextMenuProps } = useChartContextMenu<K, D>({\n isRtl,\n width,\n height,\n getDataItemPosition,\n series,\n groups,\n getDataItem,\n focusedItemInfo,\n rootRef,\n xAxisTitle: xAxis?.title,\n yAxisTitle: yAxis?.title,\n contextMenuConfig: hasData ? contextMenuConfig : undefined,\n onContextMenuDismissed\n });\n\n const [dragOver, setDragOver] = useState<{ accepted: boolean | undefined; type: string }>({\n accepted: undefined,\n type: ''\n });\n\n const { draggable, dndProps, dndContent } = useChartDnd<K, D>({\n onDrag: props.onDrag,\n onDragStart: props.onDragStart,\n onDragEnd: props.onDragEnd,\n onDragEnter: props.onDragEnter,\n onDragLeave: props.onDragLeave,\n onDragOver: props.onDragOver,\n onDrop: props.onDrop,\n itemsDraggable: props.itemsDraggable,\n groupDraggable: props.groupDraggable,\n rootRef,\n groups,\n series,\n selectedIds,\n getDataItem,\n xSpace,\n ySpace,\n plotAreaSpace,\n setDragOver,\n setDatatipDisabled,\n onSelectionChange\n });\n\n const eventsProps = mergeProps(\n navProps,\n selectDrillProps,\n viewportProps,\n datatipProps,\n marqueeProps,\n tooltipProps,\n contextMenuProps,\n dndProps\n );\n\n const overviewContentRenderer =\n overview != 'off' && (overview === 'on' || !overview.renderer)\n ? defaultOverviewContentRenderer\n : undefined;\n\n const { background, slidingWindow } = overviewRenderer(plotAreaSpace);\n return (\n <div\n tabIndex={isOverview ? undefined : 0}\n draggable={draggable}\n ref={rootRef}\n aria-activedescendant={activeId}\n aria-label={props['aria-label']}\n aria-labelledby={props['aria-labelledby']}\n aria-describedby={merge([props['aria-describedby'], datatipAriaDescribedby])}\n style={{ ...touchResponseStyle }}\n role={isOverview ? undefined : 'application'}\n className={styles.baseChartStyle}\n data-oj-private-selection-mode={isTestEnv ? selectionMode : undefined}\n {...testIdProps}\n {...(isOverview ? {} : eventsProps)}>\n <svg\n width=\"100%\"\n height={\n scrollDims.height != 0 && overview != 'off'\n ? `${Math.ceil((updatedSpace.availSpace.height + OVERVIEW_GAP) * 100) / height}%`\n : '100%'\n }>\n <clipPath id={`${plotAreaClipPathId}`}>\n <rect {...plotAreaSpace}></rect>\n </clipPath>\n {background}\n <PlotArea\n color={plotArea?.color}\n dragOverStyle={\n dragOver.type !== 'plotArea' ? 'none' : dragOver.accepted ? 'accept' : 'reject'\n }\n yScale={yScale}\n hasAxisLine={!isOverview}\n cursor={cursor}\n isLog={yAxis?.scale === 'log'}\n availSpace={plotAreaSpace}\n xAxisPosition={xAxisPosition}\n isDataXAxis={isDataXAxis}\n isRtl={isRtl}\n />\n {!renderGridLinesInFront && gridLines}\n <Axis\n {...(yProps as any)}\n axisPosition={yAxisPosition}\n isRtl={isRtl}\n cursor={yAxisCursor}\n availSpace={ySpace}\n dragOverStyle={\n dragOver.type !== 'yAxis' ? 'none' : dragOver.accepted ? 'accept' : 'reject'\n }\n />\n <Axis\n {...xProps}\n isRtl={isRtl}\n axisPosition={xAxisPosition}\n isTextInteractive={isGroupInteractive}\n activeId={activeId}\n cursor={cursor}\n focusedGroupIndex={\n focusedGroupInfo.isFocusVisible ? focusedGroupInfo.groupIndex : undefined\n }\n availSpace={xSpace}\n dragOverStyle={\n dragOver.type !== 'xAxis' ? 'none' : dragOver.accepted ? 'accept' : 'reject'\n }\n />\n <g clip-path={`url(#${plotAreaClipPathId})`}>\n {children({\n xStartIndex,\n xEndIndex,\n colors,\n xScale: xScale as any,\n yScale,\n isPointInsideMarquee,\n defaultFontSize: resolvedVars['labelFontSize'],\n gapRatio,\n activeId,\n focusedItemInfo,\n hoveredItemInfo,\n getTextDimensions,\n groupWidth\n })}\n {renderGridLinesInFront && gridLines}\n {dataCursorContent}\n </g>\n {slidingWindow}\n {zoomAndScroll === 'live' && !isOverview && (\n <ScrollBar\n availSpace={scrollDims}\n isRtl={isRtl}\n viewport={xViewportExtent}\n axisExtent={xAxisExtent}\n isHoriz={xAxisPosition === 'bottom'}\n />\n )}\n {marqueeContent}\n </svg>\n <OverviewContext.Provider\n value={{\n yAxisSize: ySpace.width,\n isOverview: true,\n width,\n height: scrollDims.height,\n overviewRenderer: (overviewChartPlotArea: Dimension) => {\n const { xScale: overviewXScale, ...windowCoords } = getWindowCoords(\n isRtl,\n xViewportExtent,\n xAxisExtent,\n yViewportExtent,\n yAxisExtent,\n overviewChartPlotArea\n );\n return getRenderer(\n xAxisExtent,\n isRtl,\n overviewXScale,\n overviewChartPlotArea,\n windowCoords,\n true,\n onViewportChange\n );\n }\n }}>\n {!isOverview && overview !== 'off' && overviewContentRenderer && (\n <div style={{ width, height: scrollDims.height }}>{overviewContentRenderer()}</div>\n )}\n </OverviewContext.Provider>\n {toggleButtonContent}\n {textMeasureContent}\n {cssContent}\n {datatipContent}\n {tooltipContent}\n {contextMenuContent}\n {selectionContent}\n {dndContent}\n </div>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { dimensionStyle } from './themes/ChartStyles.css';\nimport { TrackResizeContainer } from '#PRIVATE_TrackResizeContainer';\nimport { ChartWithDimensions } from './ChartWithDimensions';\nimport {\n ChartCommonProps,\n ChartSeriesData,\n GetNextChartItemType,\n Info,\n Scale,\n getDataPosType\n} from '#utils/UNSAFE_visTypes/chart';\nimport { Dimension, MarkerShapes } from '#utils/UNSAFE_visTypes/common';\nimport { ComponentChildren, VNode } from 'preact';\nimport { Property } from 'csstype';\nimport { LineAreaItem } from '#UNSAFE_LineAreaChart/lineAreaChart.types';\nimport { ScatterItem } from '#UNSAFE_ScatterChart/scatterChart.types';\nimport { BarItemData } from '#UNSAFE_BarChart/barChart.types';\nimport { useOverviewContext } from '#hooks/PRIVATE_useOverviewContext';\n\nexport type ChartProps<K, D> = {\n selectedIds: Set<K>;\n getGapRatio: (startIndex: number, endIndex: number) => number;\n getNavUtil: (startIndex: number, endIndex: number) => GetNextChartItemType;\n getDataItemPos: (\n xScale: Scale,\n yScale: Scale,\n groupWidth: number,\n gapRatio: number\n ) => getDataPosType;\n findNearest: (\n xScale: Scale,\n yScale: Scale,\n groupWidth: number,\n gapRatio: number\n ) => (\n x: number,\n y: number\n ) =>\n | {\n seriesIndex: number;\n groupIndex: number;\n y: number | undefined;\n x: number;\n }\n | undefined;\n children: (context: {\n xStartIndex: number;\n xEndIndex: number;\n xScale: Scale;\n yScale: Scale;\n gapRatio: number;\n activeId?: string;\n focusedItemInfo: Info;\n hoveredItemInfo?: Info;\n groupWidth: number;\n isPointInsideMarquee: ((id: K, point: { x: number; y: number }) => boolean) | undefined;\n getTextDimensions?: (text: string, style: Record<string, any>) => Dimension;\n defaultFontSize: string;\n colors: string[];\n }) => VNode;\n offset: number;\n series: ChartSeriesData<K, D>[];\n isRtl: boolean;\n renderGridLinesInFront: boolean;\n isDataXAxis?: boolean;\n getMarkerInfo: (\n seriesIndex: number,\n groupIndex: number\n ) => { color: Property.Color | undefined; type?: MarkerShapes };\n defaultOverviewContentRenderer: () => ComponentChildren;\n} & Omit<ChartCommonProps<K, D>, 'highlightedIds' | 'hoverBehavior' | 'selectedIds'>;\n\nexport function Chart<\n K extends string | number,\n D extends LineAreaItem<K> | ScatterItem<K> | BarItemData<K>\n>({ width, height, ...props }: ChartProps<K, D>) {\n // TODO: reevaluate how we handle empty data\n const {\n isOverview,\n overviewRenderer,\n yAxisSize,\n width: overviewWidth,\n height: overviewHeight\n } = useOverviewContext();\n\n let chartWidth = width;\n let chartHeight = height;\n\n if (chartWidth === undefined && isOverview && overviewWidth !== undefined) {\n chartWidth = `${overviewWidth}px`;\n }\n\n if (chartHeight === undefined && isOverview && overviewHeight !== undefined) {\n chartHeight = `${overviewHeight}px`;\n }\n\n return (\n <TrackResizeContainer width={chartWidth} height={chartHeight} class={dimensionStyle}>\n {(width, height) =>\n width || height ? (\n <ChartWithDimensions\n width={width}\n height={height}\n {...props}\n yAxisSize={yAxisSize}\n isOverview={isOverview}\n overviewRenderer={overviewRenderer}\n />\n ) : undefined\n }\n </TrackResizeContainer>\n );\n}\n"],"names":["_jsxs","_Fragment","_jsx","styles"],"mappings":"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"}
@@ -10,7 +10,7 @@ import { g as getColorRamp } from './colorUtils-c462ff3b.js';
10
10
  import './accUtils-60925ab1.js';
11
11
  import { colorSchemeVars } from './Common/themes/themeContract.css.js';
12
12
  import { B as BarGroup, g as getBarGapRatio, a as getBarPosition } from './BarGroup-740cd159.js';
13
- import { C as Chart } from './Chart-b97e00f1.js';
13
+ import { C as Chart } from './Chart-b046fb6a.js';
14
14
 
15
15
  function OverviewComboChart(props) {
16
16
  return (jsx(ComboChart, { datatip: () => ({ content: '' }), zoomAndScroll: "off", plotArea: {
@@ -169,4 +169,4 @@ function ComboChart({ width, height, selectedIds = [], hiddenIds = [], highlight
169
169
  }
170
170
 
171
171
  export { ComboChart as C };
172
- //# sourceMappingURL=ComboChart-b8c2be4d.js.map
172
+ //# sourceMappingURL=ComboChart-58ac07b4.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ComboChart-b8c2be4d.js","sources":["../../src/UNSAFE_ComboChart/OverviewComboChart.tsx","../../src/UNSAFE_ComboChart/ComboChart.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComboChart } from './ComboChart';\nimport { ComboChartProps, LineAreaItem } from './ComboChart.types';\n\nexport function OverviewComboChart<K extends string | number, D extends LineAreaItem<K>>(\n props: ComboChartProps<K, D>\n) {\n return (\n <ComboChart\n datatip={() => ({ content: '' })}\n zoomAndScroll=\"off\"\n plotArea={{\n yMajorTick: {\n isRendered: false\n },\n xMajorTick: {}\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 overview=\"off\"\n />\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComboChartProps, LineAreaItem } from './ComboChart.types';\nimport { findNearestDataPoint } from '#utils/PRIVATE_chartUtils/layoutUtils';\nimport { AreaSeries } from '#PRIVATE_LineAreaComponents/AreaSeries';\nimport { 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 { BarGroup } from '#UNSAFE_BarChart/BarGroup';\nimport { getBarPosition } from '#UNSAFE_BarChart/utils/barLayoutUtils';\nimport { getLineAreaChartItemPosition } from '#PRIVATE_LineAreaComponents/utils/chartUtils';\nimport { getBarGapRatio } from '#UNSAFE_BarChart/utils/barSeriesUtils';\nimport { OverviewComboChart } from './OverviewComboChart';\n\nconst BAR_AXIS_OFFSET = 0.5;\n\nconst AXIS_OFFSET = 0.2;\n\nconst LINE_WITH_AREA_OPACITY = 0.2;\n\n/**\n * The ComboChart displays information graphically using bars, lines and filled areas, making relationships among the data easier to understand.\n */\nexport function ComboChart<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 dataItemGaps = 0.5,\n dataLabelEffect = 'outline',\n ...props\n}: ComboChartProps<K, D>) {\n const { direction, forcedColors } = useUser();\n const isHighContrast = forcedColors === 'active';\n const filteredBarSeries = series.filter((currentSeries) => currentSeries.type === 'bar');\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 // TODO: JET-71332 ; should only be (number | undefined)[][]\n // remove the type inference from scatter chart item.\n const renderedSeries = getSeriesData<K, D>(\n series.length,\n groups.length,\n getDataItem,\n hiddenSet,\n isLog\n );\n\n const hasArea = renderedSeries.some(\n (_, index) => series[index].type === 'area' || series[index].type === 'lineWithArea'\n );\n const hasBar = renderedSeries.some((_, index) => series[index].type === 'bar');\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, groupWidth: number, gapRatio: number) => {\n const _getBarPosition = hasBar\n ? getBarPosition(\n filteredBarSeries,\n groups,\n getDataItem,\n xScale,\n yScale,\n hiddenSet,\n dataItemGaps,\n groupWidth,\n gapRatio,\n yAxis?.scale === 'log',\n isStacked,\n isRtl,\n isHoriz,\n timeAxisType\n )\n : undefined;\n\n return (seriesIndex: number, groupIndex: number) => {\n const seriesItem = series[seriesIndex];\n if (seriesItem.type === 'bar') {\n return _getBarPosition ? _getBarPosition(seriesIndex, groupIndex) : undefined;\n } else {\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\n const getMarkerColorAndType = (seriesIndex: number, groupIndex: number) => {\n const color = getItemColor(seriesIndex, groupIndex, series, getDataItem);\n const markerType = getMarkerType(seriesIndex, groupIndex, getDataItem);\n return { color, markerType };\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\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 defaultOverviewContentRenderer={() => {\n return <OverviewComboChart groups={groups} series={series} getDataItem={getDataItem} />;\n }}\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={hasArea}\n getNavUtil={getNextChartItemFunc}\n getGapRatio={getGapRatio}\n offset={hasBar ? BAR_AXIS_OFFSET : AXIS_OFFSET}\n isRtl={isRtl}\n {...props}>\n {({\n xStartIndex,\n xEndIndex,\n xScale,\n yScale,\n activeId,\n focusedItemInfo,\n hoveredItemInfo,\n isPointInsideMarquee,\n getTextDimensions,\n defaultFontSize,\n groupWidth\n }) => {\n let barSeriesIndex = -1;\n return (\n <>\n {renderedSeries.map((valueSeries, index) => {\n const currentSeries = series[index];\n\n const areaOpacity =\n currentSeries.type === 'lineWithArea' ? LINE_WITH_AREA_OPACITY : 1;\n const isAreaRendered =\n currentSeries.type === 'area' || currentSeries.type === 'lineWithArea';\n const isContrastLineNeeded = currentSeries.type === 'area';\n\n if (valueSeries.length === 0) {\n return;\n }\n\n const lineSegmentCoords: Point[][] = getLineAreaSegments<K, D>(\n yScale,\n xScale,\n valueSeries,\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 currentSeries.type !== 'bar'\n ? currentSeries.lineType === 'curved' &&\n isStacked &&\n renderedSeries.length > 1 &&\n index > 0\n : isStacked && renderedSeries.length > 1 && index > 0;\n\n const isHighlighted =\n highlightedIds === undefined ||\n highlightedSet.size === 0 ||\n highlightedSet.has(currentSeries.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 if (currentSeries.type === 'bar') barSeriesIndex = barSeriesIndex + 1;\n return (\n <>\n {currentSeries.type === 'bar' &&\n groups.slice(xStartIndex, xEndIndex + 1).map((_, index) => {\n const barGroup = (\n <BarGroup\n yScale={yScale}\n xScale={xScale}\n groupIndex={index + xStartIndex}\n selectedIds={selectedSet}\n hiddenIds={hiddenSet}\n highlightedIds={highlightedIds ? highlightedSet : highlightedIds}\n isDrillEnabled={drilling === 'on'}\n series={filteredBarSeries}\n barGapRatio={getBarGapRatio(isStacked, xStartIndex, xEndIndex)}\n dataItemGaps={dataItemGaps}\n isPointInsideMarquee={isPointInsideMarquee}\n isStacked={isStacked}\n groupWidth={groupWidth}\n group={groups[index]}\n timeAxisType={(props.xAxis as TimeAxisProps)?.timeAxisType}\n colors={colors}\n activeId={activeId}\n isLog={yAxis?.scale === 'log'}\n orientation={orientation}\n getDataItem={getDataItem}\n isSelectionEnabled={selectionMode != 'none'}\n isRtl={isRtl}\n focusedItemInfo={focusedItemInfo}\n hoveredItemInfo={hoveredItemInfo}\n getTextDimensions={getTextDimensions}\n defaultFontSize={defaultFontSize}\n seriesIndex={barSeriesIndex}\n />\n );\n\n return barGroup;\n })}\n {isAreaRendered && (\n <AreaSeries\n yScale={yScale}\n lineType={currentSeries.lineType}\n color={currentSeries.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 {currentSeries.type === 'line' && (\n <LineSeries\n lineType={currentSeries.lineType}\n lineColor={\n isContrastLineNeeded\n ? colorSchemeVars.dvt.contrastLine\n : currentSeries.lineColor\n }\n lineWidth={isContrastLineNeeded ? 1.25 : currentSeries.lineWidth}\n lineStyle={currentSeries.lineStyle || 'solid'}\n color={currentSeries.lineColor || colors[index % colors.length]}\n lineSegmentCoords={lineSegmentCoords}\n isHorizontal={isHoriz}\n isHighlighted={isHighlighted}\n seriesIndex={index}\n />\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 && (currentSeries.type === 'line' || isAreaRendered) && (\n <MarkersWithLabel\n yScale={yScale}\n xScale={xScale}\n groups={groups}\n series={currentSeries}\n timeAxisType={timeAxisType}\n color={\n colors[\n index % colors.length\n ] /* TODO : make this use getItemColor function from dataStyleUtils. */\n }\n seriesIndex={index}\n startIndex={xStartIndex}\n endIndex={xEndIndex}\n markerType={markers[index % markers.length]}\n orientation={orientation}\n isLog={isLog}\n activeId={activeId}\n getDataItem={getDataItem}\n isPointInsideMarquee={isPointInsideMarquee}\n selectedIds={selectedSet}\n focusedItemIndex={\n focusedItemInfo.seriesIndex === index &&\n focusedItemInfo.isFocusVisible &&\n !(props.isDataCursorEnabled && props.dataCursorStyle?.isMarkerDisplayed)\n ? focusedItemInfo.groupIndex\n : undefined\n }\n hoveredItemIndex={\n hoveredItemInfo?.isCurrent && hoveredItemInfo.seriesIndex === index\n ? hoveredItemInfo.groupIndex\n : undefined\n }\n isSelectionEnabled={\n selectionMode === 'single' || selectionMode === 'multiple'\n }\n isDrillEnabled={drilling === 'on'}\n defaultFontSize={defaultFontSize}\n dataLabelEffect={dataLabelEffect}\n isHighContrast={isHighContrast}\n />\n )\n }\n </>\n );\n })}\n </>\n //TODO - handle isStack part\n );\n }}\n </Chart>\n );\n}\n"],"names":["_jsx","_Fragment","_jsxs"],"mappings":";;;;;;;;;;;;;;AAWM,SAAU,kBAAkB,CAChC,KAA4B,EAAA;IAE5B,QACEA,IAAC,UAAU,EAAA,EACT,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAChC,aAAa,EAAC,KAAK,EACnB,QAAQ,EAAE;AACR,YAAA,UAAU,EAAE;AACV,gBAAA,UAAU,EAAE,KAAK;AAClB,aAAA;AACD,YAAA,UAAU,EAAE,EAAE;AACf,SAAA,EACD,KAAK,EAAE;AACL,YAAA,SAAS,EAAE;AACT,gBAAA,UAAU,EAAE,KAAK;;AAEjB,gBAAA,UAAU,EAAE,KAAK,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,GAAG,KAAK;AACrD,aAAA;AACF,SAAA,EACD,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,KAAK,EAAE;AACL,YAAA,SAAS,EAAE;AACT,gBAAA,UAAU,EAAE,KAAK;AAClB,aAAA;AACF,SAAA,EACD,QAAQ,EAAC,KAAK,EAAA,CACd,EACF;AACJ;;ACbA,MAAM,eAAe,GAAG,GAAG,CAAC;AAE5B,MAAM,WAAW,GAAG,GAAG,CAAC;AAExB,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAEnC;;AAEG;AACG,SAAU,UAAU,CAAuD,EAC/E,KAAK,EACL,MAAM,EACN,WAAW,GAAG,EAAE,EAChB,SAAS,GAAG,EAAE,EACd,cAAc,EACd,mBAAmB,GAAG,MAAM,EAC5B,WAAW,GAAG,UAAU,EACxB,KAAK,EACL,MAAM,EACN,MAAM,EACN,SAAS,GAAG,KAAK,EACjB,WAAW,EACX,aAAa,GAAG,MAAM,EACtB,QAAQ,GAAG,KAAK,EAChB,YAAY,GAAG,GAAG,EAClB,eAAe,GAAG,SAAS,EAC3B,GAAG,KAAK,EACc,EAAA;IACtB,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,OAAO,EAAE,CAAC;AAC9C,IAAA,MAAM,cAAc,GAAG,YAAY,KAAK,QAAQ,CAAC;AACjD,IAAA,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,KAAK,aAAa,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;AACzF,IAAA,MAAM,KAAK,GAAG,SAAS,KAAK,KAAK,CAAC;AAClC,IAAA,MAAM,KAAK,GAAG,KAAK,EAAE,KAAK,KAAK,KAAK,CAAC;AACrC,IAAA,MAAM,YAAY,GAAI,KAAK,CAAC,KAAuB,EAAE,YAAY,CAAC;AAClE,IAAA,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;AACrC,IAAA,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC;AACzC,IAAA,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,CAAC;AAC/C,IAAA,MAAM,OAAO,GAAG,WAAW,KAAK,YAAY,CAAC;AAC7C,IAAA,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;;;AAG9B,IAAA,MAAM,cAAc,GAAG,aAAa,CAClC,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,MAAM,EACb,WAAW,EACX,SAAS,EACT,KAAK,CACN,CAAC;AAEF,IAAA,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CACjC,CAAC,CAAC,EAAE,KAAK,KAAK,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,cAAc,CACrF,CAAC;IACF,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;AAC/E,IAAA,MAAM,mBAAmB,GAAG,CAAC,WAAmB,EAAE,UAAkB,KAAmB;AACrF,QAAA,IAAI,CAAC,SAAS;AAAE,YAAA,OAAO,WAAW,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QAC5D,OAAO;AACL,YAAA,GAAG,WAAW,CAAC,WAAW,EAAE,UAAU,CAAC;AACvC,YAAA,KAAK,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC;SAC1C,CAAC;AACT,KAAC,CAAC;IAEF,MAAM,WAAW,GAAG,MAAK;AACvB,QAAA,OAAO,CAAC,CAAC;AACX,KAAC,CAAC;AAEF,IAAA,MAAM,oBAAoB,GAAG,CAAC,UAAkB,EAAE,QAAgB,KAAI;;;AAGpE,QAAA,OAAO,uBAAuB,CAC5B,WAAW,EACX,MAAM,CAAC,MAAM,EACb,UAAU,EACV,QAAQ,EACR,SAAS,EACT,KAAK,EACL,OAAO,CACR,CAAC;AACJ,KAAC,CAAC;IAEF,MAAM,cAAc,GAAG,CAAC,MAAa,EAAE,MAAa,EAAE,UAAkB,EAAE,QAAgB,KAAI;QAC5F,MAAM,eAAe,GAAG,MAAM;AAC5B,cAAE,cAAc,CACZ,iBAAiB,EACjB,MAAM,EACN,WAAW,EACX,MAAM,EACN,MAAM,EACN,SAAS,EACT,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,KAAK,EAAE,KAAK,KAAK,KAAK,EACtB,SAAS,EACT,KAAK,EACL,OAAO,EACP,YAAY,CACb;cACD,SAAS,CAAC;AAEd,QAAA,OAAO,CAAC,WAAmB,EAAE,UAAkB,KAAI;AACjD,YAAA,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;AACvC,YAAA,IAAI,UAAU,CAAC,IAAI,KAAK,KAAK,EAAE;AAC7B,gBAAA,OAAO,eAAe,GAAG,eAAe,CAAC,WAAW,EAAE,UAAU,CAAC,GAAG,SAAS,CAAC;aAC/E;iBAAM;gBACL,OAAO,4BAA4B,CACjC,WAAW,EACX,UAAU,EACV,cAAc,EACd,WAAW,EACX,MAAM,EACN,OAAO,EACP,MAAM,EACN,MAAM,EACN,YAAY,CACb,CAAC;aACH;AACH,SAAC,CAAC;AACJ,KAAC,CAAC;AAEF,IAAA,MAAM,qBAAqB,GAAG,CAAC,WAAmB,EAAE,UAAkB,KAAI;AACxE,QAAA,MAAM,KAAK,GAAG,YAAY,CAAC,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;QACzE,MAAM,UAAU,GAAG,aAAa,CAAC,WAAW,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;AACvE,QAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;AAC/B,KAAC,CAAC;AAEF,IAAA,MAAM,WAAW,GAAG,CAAC,MAAa,EAAE,MAAa,KAAI;QACnD,MAAM,iBAAiB,GAAG,MAAK;YAC7B,OAAO;AACL,gBAAA,MAAM,EAAE,CAAC;AACT,gBAAA,SAAS,EAAE,CAAC;aACb,CAAC;AACJ,SAAC,CAAC;AAEF,QAAA,MAAM,SAAS,GAAG,CAAC,KAAa,EAAE,MAAa,KAAI;AACjD,YAAA,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACjC,SAAC,CAAC;QAEF,OAAO,oBAAoB,CACzB,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,mBAAmB,EACnB,SAAS,EACT,iBAAiB,EACjB,SAAS,EACT,KAAK,EACL,CAAC,EACD,SAAS,EACT,YAAY,CACb,CAAC;AACJ,KAAC,CAAC;AACF,IAAA,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAE7B,MAAM,oBAAoB,GAAc,EAAE,CAAC;AAC3C,IAAA,QACEA,GAAC,CAAA,KAAK,EACJ,EAAA,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,SAAS,EACpB,mBAAmB,EAAE,mBAAmB,EACxC,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,8BAA8B,EAAE,MAAK;AACnC,YAAA,OAAOA,GAAC,CAAA,kBAAkB,EAAC,EAAA,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,GAAI,CAAC;AAC1F,SAAC,EACD,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,cAAc,EAC9B,aAAa,EAAE,qBAAqB,EACpC,sBAAsB,EAAE,OAAO,EAC/B,UAAU,EAAE,oBAAoB,EAChC,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,MAAM,GAAG,eAAe,GAAG,WAAW,EAC9C,KAAK,EAAE,KAAK,EAAA,GACR,KAAK,EACR,QAAA,EAAA,CAAC,EACA,WAAW,EACX,SAAS,EACT,MAAM,EACN,MAAM,EACN,QAAQ,EACR,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EACjB,eAAe,EACf,UAAU,EACX,KAAI;AACH,YAAA,IAAI,cAAc,GAAG,CAAC,CAAC,CAAC;YACxB,QACEA,GACG,CAAAC,QAAA,EAAA,EAAA,QAAA,EAAA,cAAc,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,KAAK,KAAI;AACzC,oBAAA,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;AAEpC,oBAAA,MAAM,WAAW,GACf,aAAa,CAAC,IAAI,KAAK,cAAc,GAAG,sBAAsB,GAAG,CAAC,CAAC;AACrE,oBAAA,MAAM,cAAc,GAClB,aAAa,CAAC,IAAI,KAAK,MAAM,IAAI,aAAa,CAAC,IAAI,KAAK,cAAc,CAAC;AACzE,oBAAA,MAAM,oBAAoB,GAAG,aAAa,CAAC,IAAI,KAAK,MAAM,CAAC;AAE3D,oBAAA,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;wBAC5B,OAAO;qBACR;oBAED,MAAM,iBAAiB,GAAc,mBAAmB,CACtD,MAAM,EACN,MAAM,EACN,WAAW,EACX,WAAW,EACX,SAAS,EACT,OAAO,EACP,KAAK,EACL,MAAM,EACN,KAAK,EACL,mBAAmB,EACnB,YAAY,CACb,CAAC;oBACF,oBAAoB,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;AACnD,oBAAA,MAAM,qBAAqB,GACzB,aAAa,CAAC,IAAI,KAAK,KAAK;AAC1B,0BAAE,aAAa,CAAC,QAAQ,KAAK,QAAQ;4BACnC,SAAS;4BACT,cAAc,CAAC,MAAM,GAAG,CAAC;AACzB,4BAAA,KAAK,GAAG,CAAC;AACX,0BAAE,SAAS,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;AAE1D,oBAAA,MAAM,aAAa,GACjB,cAAc,KAAK,SAAS;wBAC5B,cAAc,CAAC,IAAI,KAAK,CAAC;AACzB,wBAAA,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;AAEvC,oBAAA,MAAM,UAAU,GACd,SAAS,IAAI,KAAK,IAAI,CAAC;AACrB,0BAAE,oBAAoB,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC,KAAI;;;;;AAKrD,4BAAA,IAAI,CAAC,IAAI,KAAK,EAAE;AACd,gCAAA,OAAO,SAAS,CAAC;6BAClB;AACD,4BAAA,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;AACvB,gCAAA,OAAO,CAAC,CAAC;6BACV;AACD,4BAAA,OAAO,SAAS,CAAC;yBAClB,EAAE,CAAC,CAAC;0BACL,SAAS,CAAC;AAChB,oBAAA,IAAI,aAAa,CAAC,IAAI,KAAK,KAAK;AAAE,wBAAA,cAAc,GAAG,cAAc,GAAG,CAAC,CAAC;AACtE,oBAAA,QACEC,IACG,CAAAD,QAAA,EAAA,EAAA,QAAA,EAAA,CAAA,aAAa,CAAC,IAAI,KAAK,KAAK;AAC3B,gCAAA,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,KAAI;AACxD,oCAAA,MAAM,QAAQ,IACZD,GAAA,CAAC,QAAQ,EACP,EAAA,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,KAAK,GAAG,WAAW,EAC/B,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,cAAc,GAAG,cAAc,GAAG,cAAc,EAChE,cAAc,EAAE,QAAQ,KAAK,IAAI,EACjC,MAAM,EAAE,iBAAiB,EACzB,WAAW,EAAE,cAAc,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,CAAC,EAC9D,YAAY,EAAE,YAAY,EAC1B,oBAAoB,EAAE,oBAAoB,EAC1C,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EACpB,YAAY,EAAG,KAAK,CAAC,KAAuB,EAAE,YAAY,EAC1D,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,EAAE,KAAK,KAAK,KAAK,EAC7B,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,EACxB,kBAAkB,EAAE,aAAa,IAAI,MAAM,EAC3C,KAAK,EAAE,KAAK,EACZ,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE,eAAe,EAChC,iBAAiB,EAAE,iBAAiB,EACpC,eAAe,EAAE,eAAe,EAChC,WAAW,EAAE,cAAc,EAAA,CAC3B,CACH,CAAC;AAEF,oCAAA,OAAO,QAAQ,CAAC;iCACjB,CAAC,EACH,cAAc,KACbA,GAAC,CAAA,UAAU,EACT,EAAA,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,aAAa,CAAC,QAAQ,EAChC,KAAK,EAAE,aAAa,CAAC,SAAS,IAAI,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAC/D,YAAY,EAAE,OAAO,EACrB,gBAAgB,EAAE,WAAW,EAC7B,qBAAqB,EAAE,qBAAqB,EAC5C,YAAY,EACV,UAAU,KAAK,SAAS;AACxB,oCAAA,oBAAoB,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,IAAI,IAAI,CAAC;AAC7D,sCAAE,oBAAoB,CAAC,UAAU,CAAC;AAClC,sCAAE,SAAS,EAEf,YAAY,EAAE,iBAAiB,EAC/B,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,KAAK,EAAA,CAClB,CACH,EACA,aAAa,CAAC,IAAI,KAAK,MAAM,KAC5BA,GAAC,CAAA,UAAU,EACT,EAAA,QAAQ,EAAE,aAAa,CAAC,QAAQ,EAChC,SAAS,EACP,oBAAoB;AAClB,sCAAE,eAAe,CAAC,GAAG,CAAC,YAAY;sCAChC,aAAa,CAAC,SAAS,EAE7B,SAAS,EAAE,oBAAoB,GAAG,IAAI,GAAG,aAAa,CAAC,SAAS,EAChE,SAAS,EAAE,aAAa,CAAC,SAAS,IAAI,OAAO,EAC7C,KAAK,EAAE,aAAa,CAAC,SAAS,IAAI,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAC/D,iBAAiB,EAAE,iBAAiB,EACpC,YAAY,EAAE,OAAO,EACrB,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,KAAK,EAAA,CAClB,CACH;AAEC;AACqF;4BACrF,CAAC,SAAS,KAAK,aAAa,CAAC,IAAI,KAAK,MAAM,IAAI,cAAc,CAAC,KAC7DA,GAAA,CAAC,gBAAgB,EACf,EAAA,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,aAAa,EACrB,YAAY,EAAE,YAAY,EAC1B,KAAK,EACH,MAAM,CACJ,KAAK,GAAG,MAAM,CAAC,MAAM,CACtB,wEAEH,WAAW,EAAE,KAAK,EAClB,UAAU,EAAE,WAAW,EACvB,QAAQ,EAAE,SAAS,EACnB,UAAU,EAAE,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,EAC3C,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,oBAAoB,EAAE,oBAAoB,EAC1C,WAAW,EAAE,WAAW,EACxB,gBAAgB,EACd,eAAe,CAAC,WAAW,KAAK,KAAK;AACrC,oCAAA,eAAe,CAAC,cAAc;oCAC9B,EAAE,KAAK,CAAC,mBAAmB,IAAI,KAAK,CAAC,eAAe,EAAE,iBAAiB,CAAC;sCACpE,eAAe,CAAC,UAAU;AAC5B,sCAAE,SAAS,EAEf,gBAAgB,EACd,eAAe,EAAE,SAAS,IAAI,eAAe,CAAC,WAAW,KAAK,KAAK;sCAC/D,eAAe,CAAC,UAAU;AAC5B,sCAAE,SAAS,EAEf,kBAAkB,EAChB,aAAa,KAAK,QAAQ,IAAI,aAAa,KAAK,UAAU,EAE5D,cAAc,EAAE,QAAQ,KAAK,IAAI,EACjC,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE,eAAe,EAChC,cAAc,EAAE,cAAc,EAAA,CAC9B,CACH,CAAA,EAAA,CAEF,EACH;AACJ,iBAAC,CAAC,EACD,CAAA;;cAEH;SACH,EAAA,CACK,EACR;AACJ;;;;"}
1
+ {"version":3,"file":"ComboChart-58ac07b4.js","sources":["../../src/UNSAFE_ComboChart/OverviewComboChart.tsx","../../src/UNSAFE_ComboChart/ComboChart.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComboChart } from './ComboChart';\nimport { ComboChartProps, LineAreaItem } from './ComboChart.types';\n\nexport function OverviewComboChart<K extends string | number, D extends LineAreaItem<K>>(\n props: ComboChartProps<K, D>\n) {\n return (\n <ComboChart\n datatip={() => ({ content: '' })}\n zoomAndScroll=\"off\"\n plotArea={{\n yMajorTick: {\n isRendered: false\n },\n xMajorTick: {}\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 overview=\"off\"\n />\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComboChartProps, LineAreaItem } from './ComboChart.types';\nimport { findNearestDataPoint } from '#utils/PRIVATE_chartUtils/layoutUtils';\nimport { AreaSeries } from '#PRIVATE_LineAreaComponents/AreaSeries';\nimport { 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 { BarGroup } from '#UNSAFE_BarChart/BarGroup';\nimport { getBarPosition } from '#UNSAFE_BarChart/utils/barLayoutUtils';\nimport { getLineAreaChartItemPosition } from '#PRIVATE_LineAreaComponents/utils/chartUtils';\nimport { getBarGapRatio } from '#UNSAFE_BarChart/utils/barSeriesUtils';\nimport { OverviewComboChart } from './OverviewComboChart';\n\nconst BAR_AXIS_OFFSET = 0.5;\n\nconst AXIS_OFFSET = 0.2;\n\nconst LINE_WITH_AREA_OPACITY = 0.2;\n\n/**\n * The ComboChart displays information graphically using bars, lines and filled areas, making relationships among the data easier to understand.\n */\nexport function ComboChart<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 dataItemGaps = 0.5,\n dataLabelEffect = 'outline',\n ...props\n}: ComboChartProps<K, D>) {\n const { direction, forcedColors } = useUser();\n const isHighContrast = forcedColors === 'active';\n const filteredBarSeries = series.filter((currentSeries) => currentSeries.type === 'bar');\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 // TODO: JET-71332 ; should only be (number | undefined)[][]\n // remove the type inference from scatter chart item.\n const renderedSeries = getSeriesData<K, D>(\n series.length,\n groups.length,\n getDataItem,\n hiddenSet,\n isLog\n );\n\n const hasArea = renderedSeries.some(\n (_, index) => series[index].type === 'area' || series[index].type === 'lineWithArea'\n );\n const hasBar = renderedSeries.some((_, index) => series[index].type === 'bar');\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, groupWidth: number, gapRatio: number) => {\n const _getBarPosition = hasBar\n ? getBarPosition(\n filteredBarSeries,\n groups,\n getDataItem,\n xScale,\n yScale,\n hiddenSet,\n dataItemGaps,\n groupWidth,\n gapRatio,\n yAxis?.scale === 'log',\n isStacked,\n isRtl,\n isHoriz,\n timeAxisType\n )\n : undefined;\n\n return (seriesIndex: number, groupIndex: number) => {\n const seriesItem = series[seriesIndex];\n if (seriesItem.type === 'bar') {\n return _getBarPosition ? _getBarPosition(seriesIndex, groupIndex) : undefined;\n } else {\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\n const getMarkerColorAndType = (seriesIndex: number, groupIndex: number) => {\n const color = getItemColor(seriesIndex, groupIndex, series, getDataItem);\n const markerType = getMarkerType(seriesIndex, groupIndex, getDataItem);\n return { color, markerType };\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\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 defaultOverviewContentRenderer={() => {\n return <OverviewComboChart groups={groups} series={series} getDataItem={getDataItem} />;\n }}\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={hasArea}\n getNavUtil={getNextChartItemFunc}\n getGapRatio={getGapRatio}\n offset={hasBar ? BAR_AXIS_OFFSET : AXIS_OFFSET}\n isRtl={isRtl}\n {...props}>\n {({\n xStartIndex,\n xEndIndex,\n xScale,\n yScale,\n activeId,\n focusedItemInfo,\n hoveredItemInfo,\n isPointInsideMarquee,\n getTextDimensions,\n defaultFontSize,\n groupWidth\n }) => {\n let barSeriesIndex = -1;\n return (\n <>\n {renderedSeries.map((valueSeries, index) => {\n const currentSeries = series[index];\n\n const areaOpacity =\n currentSeries.type === 'lineWithArea' ? LINE_WITH_AREA_OPACITY : 1;\n const isAreaRendered =\n currentSeries.type === 'area' || currentSeries.type === 'lineWithArea';\n const isContrastLineNeeded = currentSeries.type === 'area';\n\n if (valueSeries.length === 0) {\n return;\n }\n\n const lineSegmentCoords: Point[][] = getLineAreaSegments<K, D>(\n yScale,\n xScale,\n valueSeries,\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 currentSeries.type !== 'bar'\n ? currentSeries.lineType === 'curved' &&\n isStacked &&\n renderedSeries.length > 1 &&\n index > 0\n : isStacked && renderedSeries.length > 1 && index > 0;\n\n const isHighlighted =\n highlightedIds === undefined ||\n highlightedSet.size === 0 ||\n highlightedSet.has(currentSeries.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 if (currentSeries.type === 'bar') barSeriesIndex = barSeriesIndex + 1;\n return (\n <>\n {currentSeries.type === 'bar' &&\n groups.slice(xStartIndex, xEndIndex + 1).map((_, index) => {\n const barGroup = (\n <BarGroup\n yScale={yScale}\n xScale={xScale}\n groupIndex={index + xStartIndex}\n selectedIds={selectedSet}\n hiddenIds={hiddenSet}\n highlightedIds={highlightedIds ? highlightedSet : highlightedIds}\n isDrillEnabled={drilling === 'on'}\n series={filteredBarSeries}\n barGapRatio={getBarGapRatio(isStacked, xStartIndex, xEndIndex)}\n dataItemGaps={dataItemGaps}\n isPointInsideMarquee={isPointInsideMarquee}\n isStacked={isStacked}\n groupWidth={groupWidth}\n group={groups[index]}\n timeAxisType={(props.xAxis as TimeAxisProps)?.timeAxisType}\n colors={colors}\n activeId={activeId}\n isLog={yAxis?.scale === 'log'}\n orientation={orientation}\n getDataItem={getDataItem}\n isSelectionEnabled={selectionMode != 'none'}\n isRtl={isRtl}\n focusedItemInfo={focusedItemInfo}\n hoveredItemInfo={hoveredItemInfo}\n getTextDimensions={getTextDimensions}\n defaultFontSize={defaultFontSize}\n seriesIndex={barSeriesIndex}\n />\n );\n\n return barGroup;\n })}\n {isAreaRendered && (\n <AreaSeries\n yScale={yScale}\n lineType={currentSeries.lineType}\n color={currentSeries.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 {currentSeries.type === 'line' && (\n <LineSeries\n lineType={currentSeries.lineType}\n lineColor={\n isContrastLineNeeded\n ? colorSchemeVars.dvt.contrastLine\n : currentSeries.lineColor\n }\n lineWidth={isContrastLineNeeded ? 1.25 : currentSeries.lineWidth}\n lineStyle={currentSeries.lineStyle || 'solid'}\n color={currentSeries.lineColor || colors[index % colors.length]}\n lineSegmentCoords={lineSegmentCoords}\n isHorizontal={isHoriz}\n isHighlighted={isHighlighted}\n seriesIndex={index}\n />\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 && (currentSeries.type === 'line' || isAreaRendered) && (\n <MarkersWithLabel\n yScale={yScale}\n xScale={xScale}\n groups={groups}\n series={currentSeries}\n timeAxisType={timeAxisType}\n color={\n colors[\n index % colors.length\n ] /* TODO : make this use getItemColor function from dataStyleUtils. */\n }\n seriesIndex={index}\n startIndex={xStartIndex}\n endIndex={xEndIndex}\n markerType={markers[index % markers.length]}\n orientation={orientation}\n isLog={isLog}\n activeId={activeId}\n getDataItem={getDataItem}\n isPointInsideMarquee={isPointInsideMarquee}\n selectedIds={selectedSet}\n focusedItemIndex={\n focusedItemInfo.seriesIndex === index &&\n focusedItemInfo.isFocusVisible &&\n !(props.isDataCursorEnabled && props.dataCursorStyle?.isMarkerDisplayed)\n ? focusedItemInfo.groupIndex\n : undefined\n }\n hoveredItemIndex={\n hoveredItemInfo?.isCurrent && hoveredItemInfo.seriesIndex === index\n ? hoveredItemInfo.groupIndex\n : undefined\n }\n isSelectionEnabled={\n selectionMode === 'single' || selectionMode === 'multiple'\n }\n isDrillEnabled={drilling === 'on'}\n defaultFontSize={defaultFontSize}\n dataLabelEffect={dataLabelEffect}\n isHighContrast={isHighContrast}\n />\n )\n }\n </>\n );\n })}\n </>\n //TODO - handle isStack part\n );\n }}\n </Chart>\n );\n}\n"],"names":["_jsx","_Fragment","_jsxs"],"mappings":"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"}
@@ -15,7 +15,7 @@ import { u as useUser } from './useUser-bca8cf2d.js';
15
15
  import { k as keyExtractor } from './collectionUtils-ccfce5b4.js';
16
16
  import { B as Button } from './Button-94bdbda5.js';
17
17
  import { G as GROUP_SELECTOR, a as GroupLoadingIndicator, L as ListGroupHeader } from './GroupLoadingIndicator-63035d08.js';
18
- import { e as excludeGroup, L as List } from './List-e6886091.js';
18
+ import { e as excludeGroup, L as List } from './List-97b7be70.js';
19
19
 
20
20
  /**
21
21
  * @license
@@ -14,7 +14,7 @@ import { listGroupHeaderMultiVariantStyles } from './PRIVATE_List/themes/ListSty
14
14
  import { GroupedListRedwoodTheme } from './UNSAFE_GroupedList/themes/redwood/GroupedListTheme.js';
15
15
  import { F as Flex } from './Flex-2d51e914.js';
16
16
  import { S as Skeleton } from './Skeleton-4d1ce61b.js';
17
- import { S as SkeletonContainer } from './List-e6886091.js';
17
+ import { S as SkeletonContainer } from './List-97b7be70.js';
18
18
 
19
19
  // default style class for items in ListView
20
20
  const GROUP_SELECTOR = '[data-oj-listview-group]';
@@ -11,12 +11,12 @@ import { m as getPrevNextKey, k as keyExtractor, p as isMobile } from './collect
11
11
  import { u as useId } from './useId-03dbfdf0.js';
12
12
  import { u as useTranslationBundle } from './useTranslationBundle-6da03e52.js';
13
13
  import { H as HiddenAccessible } from './HiddenAccessible-61197e7c.js';
14
+ import { C as Collection } from './Collection-c4f2f3ea.js';
14
15
  import { c as classNames } from './classNames-4e12b00d.js';
15
16
  import { forwardRef } from 'preact/compat';
16
17
  import { u as useComponentTheme } from './useComponentTheme-d2f9e47f.js';
17
18
  import { IndexerRedwoodTheme } from './UNSAFE_Indexer/themes/redwood/IndexerTheme.js';
18
19
  import { u as useTestId } from './useTestId-af32a9eb.js';
19
- import { C as Collection } from './Collection-c4f2f3ea.js';
20
20
 
21
21
  /**
22
22
  * The others section variable that application could use
@@ -333,4 +333,4 @@ function getIndexerDescription(translations) {
333
333
  }
334
334
 
335
335
  export { Indexer as I, SECTION_OTHERS as S };
336
- //# sourceMappingURL=Indexer-eb00ba0b.js.map
336
+ //# sourceMappingURL=Indexer-ba2c7593.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Indexer-eb00ba0b.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":["_jsx","_jsxs"],"mappings":"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"}
1
+ {"version":3,"file":"Indexer-ba2c7593.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":["_jsx","_jsxs"],"mappings":"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"}