@oracle/oraclejet-preact 20.0.4 → 20.1.0

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 (1831) hide show
  1. package/amd/BarChart-e3c190b5.js +2 -0
  2. package/amd/BarChart-e3c190b5.js.map +1 -0
  3. package/amd/BaseDiagram-b9695479.js +2 -0
  4. package/amd/BaseDiagram-b9695479.js.map +1 -0
  5. package/amd/ButtonSetButton-ded680bb.js +2 -0
  6. package/amd/ButtonSetButton-ded680bb.js.map +1 -0
  7. package/amd/ButtonSetIconButton-c4dcbd9a.js +2 -0
  8. package/amd/ButtonSetIconButton-c4dcbd9a.js.map +1 -0
  9. package/amd/ButtonSetItem-4d644b7d.js +2 -0
  10. package/amd/ButtonSetItem-4d644b7d.js.map +1 -0
  11. package/amd/Chart-00a1b01f.js +2 -0
  12. package/amd/Chart-00a1b01f.js.map +1 -0
  13. package/amd/CheckboxSet-f000e5c2.js +2 -0
  14. package/amd/CheckboxSet-f000e5c2.js.map +1 -0
  15. package/amd/ComboChart-36e22cb8.js +2 -0
  16. package/amd/ComboChart-36e22cb8.js.map +1 -0
  17. package/amd/ContainerDiagram-6f41a26a.js +2 -0
  18. package/amd/ContainerDiagram-6f41a26a.js.map +1 -0
  19. package/amd/DatePicker-cf0e3fcd.js +2 -0
  20. package/amd/DatePicker-cf0e3fcd.js.map +1 -0
  21. package/amd/DatePickerHeader-406aa5c6.js +2 -0
  22. package/amd/DatePickerHeader-406aa5c6.js.map +1 -0
  23. package/amd/Diagram-6072b867.js +2 -0
  24. package/amd/Diagram-6072b867.js.map +1 -0
  25. package/amd/Dropdown-7cc463f6.js +2 -0
  26. package/amd/Dropdown-7cc463f6.js.map +1 -0
  27. package/amd/IconMenuButton-ec28ecfb.js +2 -0
  28. package/amd/IconMenuButton-ec28ecfb.js.map +1 -0
  29. package/amd/IconSwitchButton-28f4854a.js +2 -0
  30. package/amd/IconSwitchButton-28f4854a.js.map +1 -0
  31. package/amd/IconToggleButton-56035aa0.js +2 -0
  32. package/amd/IconToggleButton-56035aa0.js.map +1 -0
  33. package/amd/InlineSelectSingle-a1c1f520.js +2 -0
  34. package/amd/InlineSelectSingle-a1c1f520.js.map +1 -0
  35. package/amd/InputColor-bde91b03.js +2 -0
  36. package/amd/InputColor-bde91b03.js.map +1 -0
  37. package/amd/InputDatePicker-3351af0f.js +2 -0
  38. package/amd/InputDatePicker-3351af0f.js.map +1 -0
  39. package/amd/InputPassword-59369c13.js +2 -0
  40. package/amd/InputPassword-59369c13.js.map +1 -0
  41. package/amd/InputSensitiveText-ad79acc4.js +2 -0
  42. package/amd/InputSensitiveText-ad79acc4.js.map +1 -0
  43. package/amd/Legend-482f99eb.js +2 -0
  44. package/amd/Legend-482f99eb.js.map +1 -0
  45. package/amd/LineAreaChart-6f5dabc1.js +2 -0
  46. package/amd/LineAreaChart-6f5dabc1.js.map +1 -0
  47. package/amd/Link-20f7e72d.js +2 -0
  48. package/amd/Link-20f7e72d.js.map +1 -0
  49. package/amd/LinkVariants.styles.css +0 -1
  50. package/amd/LinkVariants.styles2.css +0 -1
  51. package/amd/ListView-dfbd3f41.js +2 -0
  52. package/amd/ListView-dfbd3f41.js.map +1 -0
  53. package/amd/Menu-0c8295f2.js +2 -0
  54. package/amd/Menu-0c8295f2.js.map +1 -0
  55. package/amd/MenuButton-1fbc486e.js +2 -0
  56. package/amd/MenuButton-1fbc486e.js.map +1 -0
  57. package/amd/MenuItem-f3de5e35.js +2 -0
  58. package/amd/MenuItem-f3de5e35.js.map +1 -0
  59. package/amd/MonthView-effa60a5.js +2 -0
  60. package/amd/MonthView-effa60a5.js.map +1 -0
  61. package/amd/NavigationListItem-0e162c3e.js +2 -0
  62. package/amd/NavigationListItem-0e162c3e.js.map +1 -0
  63. package/amd/OverflowTabBar-aa6557e2.js +2 -0
  64. package/amd/OverflowTabBar-aa6557e2.js.map +1 -0
  65. package/amd/OverflowTabBarItem-f05a778f.js +2 -0
  66. package/amd/OverflowTabBarItem-f05a778f.js.map +1 -0
  67. package/amd/PRIVATE_BaseDiagram.js +1 -1
  68. package/amd/PRIVATE_Chart.js +1 -1
  69. package/amd/PRIVATE_DatePickerHeader.js +1 -1
  70. package/amd/PRIVATE_FormControls.js +1 -1
  71. package/amd/PRIVATE_IconSwitchButton.js +1 -1
  72. package/amd/PRIVATE_MonthView.js +1 -1
  73. package/amd/PRIVATE_MonthYearGridView.js +1 -1
  74. package/amd/PRIVATE_RevealToggleIcon.js +1 -1
  75. package/amd/PRIVATE_SelectCommon.js +1 -1
  76. package/amd/PRIVATE_StyledDatePickerButton/themes/StyledDatePickerButtonStyles.css.js +1 -1
  77. package/amd/PRIVATE_StyledDatePickerButton.js +1 -1
  78. package/amd/PRIVATE_Table.js +1 -1
  79. package/amd/PRIVATE_TableList.js +1 -1
  80. package/amd/PRIVATE_TruncatingLink.js +1 -1
  81. package/amd/PictoChart-c303675a.js +2 -0
  82. package/amd/PictoChart-c303675a.js.map +1 -0
  83. package/amd/PieChart-df15d363.js +2 -0
  84. package/amd/PieChart-df15d363.js.map +1 -0
  85. package/amd/ReorderableTabBar-e82d2982.js +2 -0
  86. package/amd/ReorderableTabBar-e82d2982.js.map +1 -0
  87. package/amd/RevealToggleIcon-be164a7b.js +2 -0
  88. package/amd/RevealToggleIcon-be164a7b.js.map +1 -0
  89. package/amd/ScatterChart-88bc2872.js +2 -0
  90. package/amd/ScatterChart-88bc2872.js.map +1 -0
  91. package/amd/SectionalLegend-3bae380b.js +2 -0
  92. package/amd/SectionalLegend-3bae380b.js.map +1 -0
  93. package/amd/SectionedContent-878a2df1.js +2 -0
  94. package/amd/SectionedContent-878a2df1.js.map +1 -0
  95. package/amd/SelectMenuItem-5bd09f45.js +2 -0
  96. package/amd/SelectMenuItem-5bd09f45.js.map +1 -0
  97. package/amd/SelectMobileFieldInput-d8be9c82.js +2 -0
  98. package/amd/SelectMobileFieldInput-d8be9c82.js.map +1 -0
  99. package/amd/SelectMultiple-467c640d.js +2 -0
  100. package/amd/SelectMultiple-467c640d.js.map +1 -0
  101. package/amd/SelectSingle-a600e403.js +2 -0
  102. package/amd/SelectSingle-a600e403.js.map +1 -0
  103. package/amd/SplitMenuButton-42f95b11.js +2 -0
  104. package/amd/SplitMenuButton-42f95b11.js.map +1 -0
  105. package/amd/StyledDatePickerButton-416ddc14.js +2 -0
  106. package/amd/StyledDatePickerButton-416ddc14.js.map +1 -0
  107. package/amd/StyledDatePickerButtonStyles.styles.css +18 -12
  108. package/amd/Submenu-f8ab8c2e.js +2 -0
  109. package/amd/Submenu-f8ab8c2e.js.map +1 -0
  110. package/amd/TabBar-61d65c39.js +2 -0
  111. package/amd/TabBar-61d65c39.js.map +1 -0
  112. package/amd/TabBarContextMenu-6977866c.js +2 -0
  113. package/amd/TabBarContextMenu-6977866c.js.map +1 -0
  114. package/amd/TabBarMixed-092116bd.js +2 -0
  115. package/amd/TabBarMixed-092116bd.js.map +1 -0
  116. package/amd/Table-225ba4db.js +2 -0
  117. package/amd/Table-225ba4db.js.map +1 -0
  118. package/amd/TableView-f7990126.js +2 -0
  119. package/amd/TableView-f7990126.js.map +1 -0
  120. package/amd/TagCloud-69af60c1.js +2 -0
  121. package/amd/TagCloud-69af60c1.js.map +1 -0
  122. package/amd/TextArea-345f89d4.js +2 -0
  123. package/amd/TextArea-345f89d4.js.map +1 -0
  124. package/amd/TextAreaAutosize-01dfd98e.js +2 -0
  125. package/amd/TextAreaAutosize-01dfd98e.js.map +1 -0
  126. package/amd/Theme-redwood/theme.css +218 -218
  127. package/amd/Theme-stable/theme.css +360 -360
  128. package/amd/ToggleButton-c9e433d4.js +2 -0
  129. package/amd/ToggleButton-c9e433d4.js.map +1 -0
  130. package/amd/ToggleButtonLabel-367494b8.js +2 -0
  131. package/amd/ToggleButtonLabel-367494b8.js.map +1 -0
  132. package/amd/TruncatingLink-2e947915.js +2 -0
  133. package/amd/TruncatingLink-2e947915.js.map +1 -0
  134. package/amd/UNSAFE_BarChart/__test__/BarChart.spec.js +1 -1
  135. package/amd/UNSAFE_BarChart.js +1 -1
  136. package/amd/UNSAFE_ButtonLayout/tests/ButtonLayout.spec.js +1 -1
  137. package/amd/UNSAFE_ButtonSetButton.js +1 -1
  138. package/amd/UNSAFE_ButtonSetIconButton.js +1 -1
  139. package/amd/UNSAFE_ButtonSetItem.js +1 -1
  140. package/amd/UNSAFE_CheckboxItem.js +1 -1
  141. package/amd/UNSAFE_CheckboxItem.js.map +1 -1
  142. package/amd/UNSAFE_CheckboxSet.js +1 -1
  143. package/amd/UNSAFE_CheckboxSet.js.map +1 -1
  144. package/amd/UNSAFE_ComboChart.js +1 -1
  145. package/amd/UNSAFE_ContainerDiagram.js +1 -1
  146. package/amd/UNSAFE_DatePicker.js +1 -1
  147. package/amd/UNSAFE_Diagram.js +1 -1
  148. package/amd/UNSAFE_Dropdown.js +1 -1
  149. package/amd/UNSAFE_IconMenuButton.js +1 -1
  150. package/amd/UNSAFE_IconToggleButton.js +1 -1
  151. package/amd/UNSAFE_InlineSelectSingle.js +1 -1
  152. package/amd/UNSAFE_InputColor.js +1 -1
  153. package/amd/UNSAFE_InputDatePicker.js +1 -1
  154. package/amd/UNSAFE_InputPassword.js +1 -1
  155. package/amd/UNSAFE_InputSensitiveText.js +1 -1
  156. package/amd/UNSAFE_LabelledLink.js +1 -1
  157. package/amd/UNSAFE_LabelledLink.js.map +1 -1
  158. package/amd/UNSAFE_Legend.js +1 -1
  159. package/amd/UNSAFE_LineAreaChart.js +1 -1
  160. package/amd/UNSAFE_Link/themes/LinkStyles.css.js +1 -1
  161. package/amd/UNSAFE_Link.js +1 -1
  162. package/amd/UNSAFE_ListView.js +1 -1
  163. package/amd/UNSAFE_Menu.js +1 -1
  164. package/amd/UNSAFE_MenuButton.js +1 -1
  165. package/amd/UNSAFE_NavigationList.js +1 -1
  166. package/amd/UNSAFE_OverflowTabBar.js +1 -1
  167. package/amd/UNSAFE_PictoChart.js +1 -1
  168. package/amd/UNSAFE_PieChart/__test__/PieChart.spec.js +1 -1
  169. package/amd/UNSAFE_PieChart.js +1 -1
  170. package/amd/UNSAFE_ReorderableTabBar.js +1 -1
  171. package/amd/UNSAFE_RichCheckboxSet.js +1 -1
  172. package/amd/UNSAFE_RichCheckboxSet.js.map +1 -1
  173. package/amd/UNSAFE_RichSelectionItem.js +1 -1
  174. package/amd/UNSAFE_RichSelectionItem.js.map +1 -1
  175. package/amd/UNSAFE_ScatterChart.js +1 -1
  176. package/amd/UNSAFE_SectionalLegend.js +1 -1
  177. package/amd/UNSAFE_SelectMultiple.js +1 -1
  178. package/amd/UNSAFE_SelectSingle.js +1 -1
  179. package/amd/UNSAFE_SplitMenuButton.js +1 -1
  180. package/amd/UNSAFE_TabBar.js +1 -1
  181. package/amd/UNSAFE_TabBarCommon.js +1 -1
  182. package/amd/UNSAFE_TabBarMixed.js +1 -1
  183. package/amd/UNSAFE_TableView.js +1 -1
  184. package/amd/UNSAFE_TagCloud.js +1 -1
  185. package/amd/UNSAFE_TextArea.js +1 -1
  186. package/amd/UNSAFE_TextAreaAutosize.js +1 -1
  187. package/amd/UNSAFE_ToggleButton.js +1 -1
  188. package/amd/UNSAFE_ToggleButtonLabel.js +1 -1
  189. package/amd/UNSAFE_Toolbar/tests/Toolbar.spec.js +1 -1
  190. package/amd/YearsGridView-09b45b4e.js +2 -0
  191. package/amd/YearsGridView-09b45b4e.js.map +1 -0
  192. package/amd/hooks/PRIVATE_useChartContextMenu.js +1 -1
  193. package/amd/hooks/PRIVATE_useChartMarquee.js +1 -1
  194. package/amd/hooks/PRIVATE_useMiddleEllipsis.js +2 -0
  195. package/amd/hooks/PRIVATE_useMiddleEllipsis.js.map +1 -0
  196. package/amd/hooks/PRIVATE_useTabBar.js +1 -1
  197. package/amd/hooks/PRIVATE_useVisContextMenu.js +1 -1
  198. package/amd/hooks/PRIVATE_useVisDragModeControls.js +1 -1
  199. package/amd/listViewSelectionTests-e7898c59.js +2 -0
  200. package/amd/listViewSelectionTests-e7898c59.js.map +1 -0
  201. package/amd/useChartContextMenu-9abf418f.js +2 -0
  202. package/amd/useChartContextMenu-9abf418f.js.map +1 -0
  203. package/amd/useChartMarquee-ec70d86c.js +2 -0
  204. package/amd/useChartMarquee-ec70d86c.js.map +1 -0
  205. package/amd/useContextMenu-49bd8ffb.js +2 -0
  206. package/amd/useContextMenu-49bd8ffb.js.map +1 -0
  207. package/amd/useDisplayValue-8b0c1851.js +2 -0
  208. package/amd/useDisplayValue-8b0c1851.js.map +1 -0
  209. package/amd/useLegendContextMenu-90023a78.js +2 -0
  210. package/amd/useLegendContextMenu-90023a78.js.map +1 -0
  211. package/amd/useMiddleEllipsis-9ade43e6.js +2 -0
  212. package/amd/useMiddleEllipsis-9ade43e6.js.map +1 -0
  213. package/amd/useSelectCommon-af642fe7.js +2 -0
  214. package/amd/useSelectCommon-af642fe7.js.map +1 -0
  215. package/amd/useTabBar-430d9e32.js +2 -0
  216. package/amd/useTabBar-430d9e32.js.map +1 -0
  217. package/amd/useVisDragModeControls-c1d2abc6.js +2 -0
  218. package/amd/useVisDragModeControls-c1d2abc6.js.map +1 -0
  219. package/cjs/BaseButton-15b86552.js +86 -0
  220. package/cjs/BaseButton-15b86552.js.map +1 -0
  221. package/cjs/BaseCardView-ba63723a.js +6 -6
  222. package/cjs/BaseDiagram-576c2a13.js +2956 -0
  223. package/cjs/BaseDiagram-576c2a13.js.map +1 -0
  224. package/cjs/BaseRichSelection-c7cad1af.js +9 -9
  225. package/cjs/BaseSelector-2dc69917.js +1 -1
  226. package/cjs/BaseSwatchView-76da473f.js +2 -2
  227. package/cjs/Button-d79df225.js +24 -0
  228. package/cjs/Button-d79df225.js.map +1 -0
  229. package/cjs/ButtonSet-ed013090.js +2 -2
  230. package/cjs/ButtonSetButton-a7384fb3.js +35 -0
  231. package/cjs/ButtonSetButton-a7384fb3.js.map +1 -0
  232. package/cjs/ButtonSetIconButton-345ead86.js +40 -0
  233. package/cjs/ButtonSetIconButton-345ead86.js.map +1 -0
  234. package/cjs/ButtonSetItem-1f2f6742.js +67 -0
  235. package/cjs/ButtonSetItem-1f2f6742.js.map +1 -0
  236. package/cjs/Center-a23cf0cd.js +18 -0
  237. package/cjs/Center-a23cf0cd.js.map +1 -0
  238. package/cjs/Chart-3360191e.js +754 -0
  239. package/cjs/Chart-3360191e.js.map +1 -0
  240. package/cjs/CheckboxControl-d37c7764.js +6 -6
  241. package/cjs/CheckboxRadioField-24e06523.js +6 -6
  242. package/cjs/CheckboxRadioLabelValueLayout-0ed43779.js +1 -1
  243. package/cjs/CheckboxSetContext-c62db26d.js +12 -0
  244. package/cjs/CheckboxSetContext-c62db26d.js.map +1 -0
  245. package/cjs/Chip-b2dd59ed.js +1 -1
  246. package/cjs/ClearIcon-f61fc0b9.js +1 -1
  247. package/cjs/CollapseIcon-9fbe13a9.js +1 -1
  248. package/cjs/Collapsible-9315585f.js +2 -2
  249. package/cjs/ColorPalette-9f041744.js +83 -0
  250. package/cjs/ColorPalette-9f041744.js.map +1 -0
  251. package/cjs/ColorPicker-24ca67b6.js +25 -0
  252. package/cjs/ColorPicker-24ca67b6.js.map +1 -0
  253. package/cjs/ColorSwatch-cddebd6b.js +4 -4
  254. package/cjs/CompactLabelAssistance-f7b3b814.js +95 -0
  255. package/cjs/CompactLabelAssistance-f7b3b814.js.map +1 -0
  256. package/cjs/CompactUserAssistance-a5f1bb2b.js +5 -5
  257. package/cjs/ComponentMessageContainer-b692adf3.js +4 -4
  258. package/cjs/DatePicker-c4d49200.js +601 -0
  259. package/cjs/DatePicker-c4d49200.js.map +1 -0
  260. package/cjs/DatePickerHeader-9bcd2308.js +48 -0
  261. package/cjs/DatePickerHeader-9bcd2308.js.map +1 -0
  262. package/cjs/Dialog-871d9a7c.js +389 -0
  263. package/cjs/Dialog-871d9a7c.js.map +1 -0
  264. package/cjs/DirectionalCollapseArrowIcon-392d6599.js +1 -1
  265. package/cjs/DirectionalExpandArrowIcon-ff9f6f78.js +1 -1
  266. package/cjs/Dropdown-b73f547b.js +337 -0
  267. package/cjs/Dropdown-b73f547b.js.map +1 -0
  268. package/cjs/EmbeddedIconButton-f2e69758.js +13 -0
  269. package/cjs/EmbeddedIconButton-f2e69758.js.map +1 -0
  270. package/cjs/EnvironmentProvider-932667b2.js +61 -0
  271. package/cjs/EnvironmentProvider-932667b2.js.map +1 -0
  272. package/cjs/Expander-f4c574e5.js +1 -1
  273. package/cjs/Flex-ec48072d.js +32 -0
  274. package/cjs/Flex-ec48072d.js.map +1 -0
  275. package/cjs/Floating-de219e52.js +467 -0
  276. package/cjs/Floating-de219e52.js.map +1 -0
  277. package/cjs/Grid-156807d4.js +29 -0
  278. package/cjs/Grid-156807d4.js.map +1 -0
  279. package/cjs/GroupLoadingIndicator-7e035ba2.js +1 -1
  280. package/cjs/HighlightText-93f2fea0.js +33 -0
  281. package/cjs/HighlightText-93f2fea0.js.map +1 -0
  282. package/cjs/Icon-56789beb.js +3 -3
  283. package/cjs/IconButton-7503293b.js +4 -4
  284. package/cjs/IconSwitchButton-550d6ced.js +44 -0
  285. package/cjs/IconSwitchButton-550d6ced.js.map +1 -0
  286. package/cjs/IconToggleButton-b7a72539.js +43 -0
  287. package/cjs/IconToggleButton-b7a72539.js.map +1 -0
  288. package/cjs/IconUserAssistance-848c227c.js +76 -0
  289. package/cjs/IconUserAssistance-848c227c.js.map +1 -0
  290. package/cjs/InlineHelp-2add2d34.js +1 -1
  291. package/cjs/InlineUserAssistance-cfaa3d3e.js +5 -5
  292. package/cjs/InputDateMask-c7baadd4.js +7 -7
  293. package/cjs/Label-eb654b0e.js +8 -8
  294. package/cjs/LabelValueLayout-d67109b3.js +1 -1
  295. package/cjs/Layer-06e11b9c.js +94 -0
  296. package/cjs/Layer-06e11b9c.js.map +1 -0
  297. package/cjs/LayerHost-21391a0d.js +46 -0
  298. package/cjs/LayerHost-21391a0d.js.map +1 -0
  299. package/cjs/LayerManager-fd7f4d2f.js +36 -0
  300. package/cjs/LayerManager-fd7f4d2f.js.map +1 -0
  301. package/cjs/Link-f8403e9f.js +35 -0
  302. package/cjs/Link-f8403e9f.js.map +1 -0
  303. package/cjs/LinkVariants.styles.css +0 -1
  304. package/cjs/LinkVariants.styles2.css +0 -1
  305. package/cjs/List-afcfa338.js +5 -5
  306. package/cjs/LiveRegion-60535481.js +41 -0
  307. package/cjs/LiveRegion-60535481.js.map +1 -0
  308. package/cjs/MaxLengthLiveRegion-82e6c492.js +28 -0
  309. package/cjs/MaxLengthLiveRegion-82e6c492.js.map +1 -0
  310. package/cjs/Message-258e59da.js +2 -2
  311. package/cjs/MessageLayer-a18a7c26.js +61 -0
  312. package/cjs/MessageLayer-a18a7c26.js.map +1 -0
  313. package/cjs/MessagesManager-cba4bc60.js +3 -3
  314. package/cjs/Modal-b751b643.js +3 -3
  315. package/cjs/MonthView-25653876.js +231 -0
  316. package/cjs/MonthView-25653876.js.map +1 -0
  317. package/cjs/NavigationListItem-ef597eb9.js +312 -0
  318. package/cjs/NavigationListItem-ef597eb9.js.map +1 -0
  319. package/cjs/NavigationListLinkItem-62c3912e.js +5 -5
  320. package/cjs/NumberInputText-36164d46.js +6 -6
  321. package/cjs/OverflowTabBarItem-4053a20b.js +262 -0
  322. package/cjs/OverflowTabBarItem-4053a20b.js.map +1 -0
  323. package/cjs/PRIVATE_BaseCardView.js +22 -22
  324. package/cjs/PRIVATE_BaseDiagram.js +38 -38
  325. package/cjs/PRIVATE_BaseSelector.js +17 -17
  326. package/cjs/PRIVATE_BaseSwatchView.js +18 -18
  327. package/cjs/PRIVATE_Chart.js +48 -48
  328. package/cjs/PRIVATE_CheckboxControl.js +25 -25
  329. package/cjs/PRIVATE_CheckboxRadioField.js +27 -27
  330. package/cjs/PRIVATE_ClearIcon.js +18 -18
  331. package/cjs/PRIVATE_CollapsibleNavigationList.js +20 -20
  332. package/cjs/PRIVATE_DatePickerHeader.js +23 -23
  333. package/cjs/PRIVATE_DatePickerLayout.js +4 -4
  334. package/cjs/PRIVATE_EmbeddedIconButton.js +6 -6
  335. package/cjs/PRIVATE_Expander.js +19 -19
  336. package/cjs/PRIVATE_FormControls.js +21 -21
  337. package/cjs/PRIVATE_IconSwitchButton.js +19 -19
  338. package/cjs/PRIVATE_Icons/CheckboxCrossed.js +16 -16
  339. package/cjs/PRIVATE_Icons/CheckboxMixed.js +16 -16
  340. package/cjs/PRIVATE_Icons/CheckboxOff.js +16 -16
  341. package/cjs/PRIVATE_Icons/CheckboxOn.js +16 -16
  342. package/cjs/PRIVATE_Icons/DragV.js +16 -16
  343. package/cjs/PRIVATE_Icons/None.js +16 -16
  344. package/cjs/PRIVATE_List.js +21 -21
  345. package/cjs/PRIVATE_Message.js +20 -20
  346. package/cjs/PRIVATE_MessageLayer.js +12 -12
  347. package/cjs/PRIVATE_MonthView.js +81 -8
  348. package/cjs/PRIVATE_MonthView.js.map +1 -1
  349. package/cjs/PRIVATE_MonthYearGridView.js +8 -8
  350. package/cjs/PRIVATE_PlotArea.js +5 -5
  351. package/cjs/PRIVATE_RevealToggleIcon.js +21 -21
  352. package/cjs/PRIVATE_RichSelectionCommon.js +28 -28
  353. package/cjs/PRIVATE_SelectCommon.js +34 -34
  354. package/cjs/PRIVATE_StyledCard.js +3 -3
  355. package/cjs/PRIVATE_StyledCheckbox.js +16 -16
  356. package/cjs/PRIVATE_StyledDatePickerButton/themes/StyledDatePickerButtonStyles.css.js +1 -1
  357. package/cjs/PRIVATE_StyledDatePickerButton.js +1 -1
  358. package/cjs/PRIVATE_StyledSwitch.js +4 -4
  359. package/cjs/PRIVATE_SwatchFlexView.js +18 -18
  360. package/cjs/PRIVATE_Table.js +38 -38
  361. package/cjs/PRIVATE_TableDisplay.js +19 -19
  362. package/cjs/PRIVATE_TableList.js +27 -27
  363. package/cjs/PRIVATE_ThemedIcons/CalendarIcon.js +16 -16
  364. package/cjs/PRIVATE_ThemedIcons/ChartMarqueeSelectIcon.js +16 -16
  365. package/cjs/PRIVATE_ThemedIcons/ChartPanIcon.js +16 -16
  366. package/cjs/PRIVATE_ThemedIcons/ChartZoomIcon.js +16 -16
  367. package/cjs/PRIVATE_ThemedIcons/CheckIcon.js +16 -16
  368. package/cjs/PRIVATE_ThemedIcons/CheckboxCrossedIcon.js +16 -16
  369. package/cjs/PRIVATE_ThemedIcons/CheckboxMixedIcon.js +16 -16
  370. package/cjs/PRIVATE_ThemedIcons/CheckboxOffIcon.js +16 -16
  371. package/cjs/PRIVATE_ThemedIcons/CheckboxOnIcon.js +16 -16
  372. package/cjs/PRIVATE_ThemedIcons/CloseIcon.js +16 -16
  373. package/cjs/PRIVATE_ThemedIcons/CollapseIcon.js +17 -17
  374. package/cjs/PRIVATE_ThemedIcons/CollapseUpIcon.js +16 -16
  375. package/cjs/PRIVATE_ThemedIcons/DecrementIcon.js +16 -16
  376. package/cjs/PRIVATE_ThemedIcons/DeleteIcon.js +16 -16
  377. package/cjs/PRIVATE_ThemedIcons/DirectionalCollapseArrowIcon.js +17 -17
  378. package/cjs/PRIVATE_ThemedIcons/DirectionalExpandArrowIcon.js +17 -17
  379. package/cjs/PRIVATE_ThemedIcons/DragHandleIcon.js +16 -16
  380. package/cjs/PRIVATE_ThemedIcons/DropdownArrowIcon.js +16 -16
  381. package/cjs/PRIVATE_ThemedIcons/ExpandIcon.js +16 -16
  382. package/cjs/PRIVATE_ThemedIcons/HelpIcon.js +16 -16
  383. package/cjs/PRIVATE_ThemedIcons/IncrementIcon.js +16 -16
  384. package/cjs/PRIVATE_ThemedIcons/MenuButtonDropdownIcon.js +16 -16
  385. package/cjs/PRIVATE_ThemedIcons/MessageConfirmationIcon.js +16 -16
  386. package/cjs/PRIVATE_ThemedIcons/MessageErrorIcon.js +16 -16
  387. package/cjs/PRIVATE_ThemedIcons/MessageInfoIcon.js +16 -16
  388. package/cjs/PRIVATE_ThemedIcons/MessageWarningIcon.js +16 -16
  389. package/cjs/PRIVATE_ThemedIcons/MinusIcon.js +16 -16
  390. package/cjs/PRIVATE_ThemedIcons/NavDownIcon.js +16 -16
  391. package/cjs/PRIVATE_ThemedIcons/None.js +16 -16
  392. package/cjs/PRIVATE_ThemedIcons/OverviewHorizontalDragHandleIcon.js +16 -16
  393. package/cjs/PRIVATE_ThemedIcons/PlusIcon.js +16 -16
  394. package/cjs/PRIVATE_ThemedIcons/RadioOffIcon.js +16 -16
  395. package/cjs/PRIVATE_ThemedIcons/RadioOnIcon.js +16 -16
  396. package/cjs/PRIVATE_ThemedIcons/SortAscendingIcon.js +16 -16
  397. package/cjs/PRIVATE_ThemedIcons/SortDescendingIcon.js +16 -16
  398. package/cjs/PRIVATE_ThemedIcons/ViewHideIcon.js +16 -16
  399. package/cjs/PRIVATE_ThemedIcons/ViewIcon.js +16 -16
  400. package/cjs/PRIVATE_TimeComponent.js +19 -19
  401. package/cjs/PRIVATE_TruncatingLink.js +20 -17
  402. package/cjs/PRIVATE_TruncatingLink.js.map +1 -1
  403. package/cjs/PRIVATE_VisOverview.js +16 -16
  404. package/cjs/PRIVATE_VisStatusMessage.js +5 -5
  405. package/cjs/PRIVATE_VisTabularDatatip.js +4 -4
  406. package/cjs/Popup-6de390dd.js +300 -0
  407. package/cjs/Popup-6de390dd.js.map +1 -0
  408. package/cjs/ProgressButtonLabelLayout-2e429893.js +3 -3
  409. package/cjs/ProgressCircle-f9c43168.js +50 -0
  410. package/cjs/ProgressCircle-f9c43168.js.map +1 -0
  411. package/cjs/RadioItem-c74ac827.js +6 -6
  412. package/cjs/ReadonlyTextFieldInput-60965d77.js +1 -1
  413. package/cjs/ReferenceLineArea-d00d2b33.js +592 -0
  414. package/cjs/ReferenceLineArea-d00d2b33.js.map +1 -0
  415. package/cjs/RevealToggleIcon-6a86726c.js +28 -0
  416. package/cjs/RevealToggleIcon-6a86726c.js.map +1 -0
  417. package/cjs/SectionedContent-463bf70e.js +68 -0
  418. package/cjs/SectionedContent-463bf70e.js.map +1 -0
  419. package/cjs/SelectMenuGroupContext-002c9144.js +563 -0
  420. package/cjs/SelectMenuGroupContext-002c9144.js.map +1 -0
  421. package/cjs/SelectMobileFieldInput-2adf002d.js +248 -0
  422. package/cjs/SelectMobileFieldInput-2adf002d.js.map +1 -0
  423. package/cjs/SelectorAll-2905a1c9.js +53 -0
  424. package/cjs/SelectorAll-2905a1c9.js.map +1 -0
  425. package/cjs/Sheet-1d6e8cf8.js +2 -2
  426. package/cjs/SortControl-8c15705b.js +3 -3
  427. package/cjs/StyledCard-13c323e4.js +1 -1
  428. package/cjs/StyledDatePickerButton-f20c0596.js +34 -0
  429. package/cjs/StyledDatePickerButton-f20c0596.js.map +1 -0
  430. package/cjs/StyledDatePickerButtonStyles.styles.css +18 -12
  431. package/cjs/StyledLabelValueLayout-3ee66ef1.js +22 -0
  432. package/cjs/StyledLabelValueLayout-3ee66ef1.js.map +1 -0
  433. package/cjs/StyledSwitch-17127a03.js +2 -2
  434. package/cjs/StyledTextField-7839c90d.js +5 -5
  435. package/cjs/Submenu-fb652ff4.js +251 -0
  436. package/cjs/Submenu-fb652ff4.js.map +1 -0
  437. package/cjs/TabBar-1e6a97b5.js +73 -0
  438. package/cjs/TabBar-1e6a97b5.js.map +1 -0
  439. package/cjs/TabBarContextMenu-f7acee3d.js +102 -0
  440. package/cjs/TabBarContextMenu-f7acee3d.js.map +1 -0
  441. package/cjs/TabBarLayout-ca8af14b.js +1 -1
  442. package/cjs/TabBarLinkItem-8f54f16d.js +15 -0
  443. package/cjs/TabBarLinkItem-8f54f16d.js.map +1 -0
  444. package/cjs/Table-daa93733.js +4114 -0
  445. package/cjs/Table-daa93733.js.map +1 -0
  446. package/cjs/TableColGroup-b7e1e296.js +1 -1
  447. package/cjs/TextArea-85d34b3e.js +229 -0
  448. package/cjs/TextArea-85d34b3e.js.map +1 -0
  449. package/cjs/TextField-5c164264.js +3 -3
  450. package/cjs/Theme-redwood/theme.css +136 -136
  451. package/cjs/Theme-stable/theme.css +209 -209
  452. package/cjs/TimeComponentCanvas2D-baa58795.js +6 -6
  453. package/cjs/ToggleButton-0ec0c75b.js +30 -0
  454. package/cjs/ToggleButton-0ec0c75b.js.map +1 -0
  455. package/cjs/ToggleButtonLabel-ce19879c.js +77 -0
  456. package/cjs/ToggleButtonLabel-ce19879c.js.map +1 -0
  457. package/cjs/TruncatingLink-f6a80ee5.js +95 -0
  458. package/cjs/TruncatingLink-f6a80ee5.js.map +1 -0
  459. package/cjs/TruncatingText-ac1f6793.js +1 -1
  460. package/cjs/UNSAFE_AccordionItemMultiple.js +18 -18
  461. package/cjs/UNSAFE_AccordionItemSingle.js +18 -18
  462. package/cjs/UNSAFE_ActionCard.js +2 -2
  463. package/cjs/UNSAFE_BarChart.js +49 -49
  464. package/cjs/UNSAFE_BareButton.js +2 -2
  465. package/cjs/UNSAFE_BaseButton.js +5 -5
  466. package/cjs/UNSAFE_Button.js +6 -6
  467. package/cjs/UNSAFE_ButtonSet.js +4 -4
  468. package/cjs/UNSAFE_ButtonSetButton.js +7 -7
  469. package/cjs/UNSAFE_ButtonSetIconButton.js +19 -19
  470. package/cjs/UNSAFE_ButtonSetItem.js +22 -22
  471. package/cjs/UNSAFE_ButtonSetMultiple.js +4 -4
  472. package/cjs/UNSAFE_ButtonSetSingle.js +4 -4
  473. package/cjs/UNSAFE_Card.js +3 -3
  474. package/cjs/UNSAFE_CardFlexView.js +22 -22
  475. package/cjs/UNSAFE_CardGridView.js +22 -22
  476. package/cjs/UNSAFE_Center.js +5 -5
  477. package/cjs/UNSAFE_Checkbox.js +25 -25
  478. package/cjs/UNSAFE_CheckboxItem.js +71 -132
  479. package/cjs/UNSAFE_CheckboxItem.js.map +1 -1
  480. package/cjs/UNSAFE_CheckboxRadioField.js +4 -4
  481. package/cjs/UNSAFE_CheckboxSet.js +75 -46
  482. package/cjs/UNSAFE_CheckboxSet.js.map +1 -1
  483. package/cjs/UNSAFE_Chip.js +2 -2
  484. package/cjs/UNSAFE_Collapsible.js +18 -18
  485. package/cjs/UNSAFE_ColorPalette.js +95 -95
  486. package/cjs/UNSAFE_ColorPicker.js +77 -77
  487. package/cjs/UNSAFE_ColorSwatch.js +17 -17
  488. package/cjs/UNSAFE_ComboChart.js +49 -49
  489. package/cjs/UNSAFE_ComponentMessage.js +20 -20
  490. package/cjs/UNSAFE_ContainerDiagram.js +38 -38
  491. package/cjs/UNSAFE_ConveyorBelt.js +18 -18
  492. package/cjs/UNSAFE_DatePicker.js +54 -31
  493. package/cjs/UNSAFE_DatePicker.js.map +1 -1
  494. package/cjs/UNSAFE_Diagram.js +38 -38
  495. package/cjs/UNSAFE_Dialog.js +22 -22
  496. package/cjs/UNSAFE_DragHandle.js +17 -17
  497. package/cjs/UNSAFE_DrawerLayout.js +12 -12
  498. package/cjs/UNSAFE_DrawerPopup.js +11 -11
  499. package/cjs/UNSAFE_Dropdown.js +15 -15
  500. package/cjs/UNSAFE_Environment.js +4 -4
  501. package/cjs/UNSAFE_ExpandableList.js +25 -25
  502. package/cjs/UNSAFE_FilePicker.js +4 -4
  503. package/cjs/UNSAFE_FlatTreeView.js +25 -25
  504. package/cjs/UNSAFE_Flex.js +4 -4
  505. package/cjs/UNSAFE_Floating.js +11 -11
  506. package/cjs/UNSAFE_FormLayout.js +2 -2
  507. package/cjs/UNSAFE_Gantt.js +23 -23
  508. package/cjs/UNSAFE_Grid.js +4 -4
  509. package/cjs/UNSAFE_HighlightText.js +4 -4
  510. package/cjs/UNSAFE_Icon.js +16 -16
  511. package/cjs/UNSAFE_IconButton.js +17 -17
  512. package/cjs/UNSAFE_IconMenuButton.js +26 -26
  513. package/cjs/UNSAFE_IconProgressButton.js +21 -21
  514. package/cjs/UNSAFE_IconToggleButton.js +19 -19
  515. package/cjs/UNSAFE_Indexer.js +19 -19
  516. package/cjs/UNSAFE_InlineSelectSingle.js +34 -34
  517. package/cjs/UNSAFE_InputColor.js +42 -42
  518. package/cjs/UNSAFE_InputDateMask.js +26 -26
  519. package/cjs/UNSAFE_InputDatePicker.js +149 -127
  520. package/cjs/UNSAFE_InputDatePicker.js.map +1 -1
  521. package/cjs/UNSAFE_InputPassword.js +29 -29
  522. package/cjs/UNSAFE_InputSensitiveText.js +30 -30
  523. package/cjs/UNSAFE_InputText.js +28 -28
  524. package/cjs/UNSAFE_InputTimeMask.js +26 -26
  525. package/cjs/UNSAFE_Label.js +25 -25
  526. package/cjs/UNSAFE_LabelValueLayout.js +4 -4
  527. package/cjs/UNSAFE_LabelledLink.js +36 -31
  528. package/cjs/UNSAFE_LabelledLink.js.map +1 -1
  529. package/cjs/UNSAFE_Layer.js +8 -8
  530. package/cjs/UNSAFE_Legend.js +30 -30
  531. package/cjs/UNSAFE_LineAreaChart.js +49 -49
  532. package/cjs/UNSAFE_Link/themes/LinkStyles.css.js +1 -1
  533. package/cjs/UNSAFE_Link.js +3 -3
  534. package/cjs/UNSAFE_ListItemLayout.js +4 -4
  535. package/cjs/UNSAFE_ListView.js +29 -29
  536. package/cjs/UNSAFE_LiveRegion.js +4 -4
  537. package/cjs/UNSAFE_Menu.js +28 -28
  538. package/cjs/UNSAFE_MenuButton.js +26 -26
  539. package/cjs/UNSAFE_MessageBanner.js +20 -20
  540. package/cjs/UNSAFE_MessageToast.js +22 -22
  541. package/cjs/UNSAFE_MeterBar.js +16 -16
  542. package/cjs/UNSAFE_MeterCircle.js +17 -17
  543. package/cjs/UNSAFE_Modal.js +8 -8
  544. package/cjs/UNSAFE_NavigationList.js +41 -41
  545. package/cjs/UNSAFE_NavigationListCommon.js +20 -20
  546. package/cjs/UNSAFE_NumberInputText.js +28 -28
  547. package/cjs/UNSAFE_OverflowTabBar.js +34 -34
  548. package/cjs/UNSAFE_PictoChart.js +27 -27
  549. package/cjs/UNSAFE_PieChart.js +28 -28
  550. package/cjs/UNSAFE_Popup.js +18 -18
  551. package/cjs/UNSAFE_ProgressBar.js +4 -4
  552. package/cjs/UNSAFE_ProgressButton.js +21 -21
  553. package/cjs/UNSAFE_ProgressButtonLabelLayout.js +10 -10
  554. package/cjs/UNSAFE_ProgressCircle.js +4 -4
  555. package/cjs/UNSAFE_RadioItem.js +25 -25
  556. package/cjs/UNSAFE_RadioSet.js +27 -27
  557. package/cjs/UNSAFE_RatingGauge.js +18 -18
  558. package/cjs/UNSAFE_ReorderableTabBar.js +31 -31
  559. package/cjs/UNSAFE_RichCheckboxSet.js +64 -68
  560. package/cjs/UNSAFE_RichCheckboxSet.js.map +1 -1
  561. package/cjs/UNSAFE_RichRadioSet.js +29 -29
  562. package/cjs/UNSAFE_RichSelectionItem.js +112 -175
  563. package/cjs/UNSAFE_RichSelectionItem.js.map +1 -1
  564. package/cjs/UNSAFE_ScatterChart.js +49 -49
  565. package/cjs/UNSAFE_SectionalLegend.js +30 -30
  566. package/cjs/UNSAFE_SelectMultiple.js +38 -38
  567. package/cjs/UNSAFE_SelectSingle.js +38 -38
  568. package/cjs/UNSAFE_SelectionCard.js +3 -3
  569. package/cjs/UNSAFE_Selector.js +17 -17
  570. package/cjs/UNSAFE_SelectorAll.js +19 -19
  571. package/cjs/UNSAFE_Sheet.js +11 -11
  572. package/cjs/UNSAFE_SortControl.js +20 -20
  573. package/cjs/UNSAFE_SplitMenuButton.js +27 -27
  574. package/cjs/UNSAFE_SplitMenuButton.js.map +1 -1
  575. package/cjs/UNSAFE_Switch.js +26 -26
  576. package/cjs/UNSAFE_TabBar.js +35 -35
  577. package/cjs/UNSAFE_TabBarCommon.js +33 -33
  578. package/cjs/UNSAFE_TabBarMixed.js +33 -33
  579. package/cjs/UNSAFE_TableView.js +38 -38
  580. package/cjs/UNSAFE_TagCloud.js +28 -28
  581. package/cjs/UNSAFE_TextArea.js +119 -234
  582. package/cjs/UNSAFE_TextArea.js.map +1 -1
  583. package/cjs/UNSAFE_TextAreaAutosize.js +30 -30
  584. package/cjs/UNSAFE_TextAreaAutosize.js.map +1 -1
  585. package/cjs/UNSAFE_TextField.js +20 -20
  586. package/cjs/UNSAFE_ToggleButton.js +7 -7
  587. package/cjs/UNSAFE_ToggleButtonLabel.js +1 -1
  588. package/cjs/UNSAFE_Toolbar.js +4 -4
  589. package/cjs/UNSAFE_Train.js +17 -17
  590. package/cjs/UNSAFE_TruncatingBadge.js +17 -17
  591. package/cjs/UNSAFE_TruncatingText.js +17 -17
  592. package/cjs/UNSAFE_UserAssistance.js +26 -26
  593. package/cjs/UNSAFE_View.js +7 -7
  594. package/cjs/UNSAFE_VirtualizedListView.js +21 -21
  595. package/cjs/UNSAFE_VisInvalidDataMessage.js +6 -6
  596. package/cjs/UNSAFE_VisNoDataMessage.js +6 -6
  597. package/cjs/UNSAFE_VisProgressiveLoader.js +5 -5
  598. package/cjs/UNSAFE_WindowOverlay.js +4 -4
  599. package/cjs/View-67ff7d0e.js +170 -0
  600. package/cjs/View-67ff7d0e.js.map +1 -0
  601. package/cjs/VisStatusMessage-3ca153ac.js +31 -0
  602. package/cjs/VisStatusMessage-3ca153ac.js.map +1 -0
  603. package/cjs/VisTabularDatatip-e79da9de.js +26 -0
  604. package/cjs/VisTabularDatatip-e79da9de.js.map +1 -0
  605. package/cjs/WindowOverlay-b9595d88.js +112 -0
  606. package/cjs/WindowOverlay-b9595d88.js.map +1 -0
  607. package/cjs/YearsGridView-9fd78c0f.js +190 -0
  608. package/cjs/YearsGridView-9fd78c0f.js.map +1 -0
  609. package/cjs/hoc/PRIVATE_withDirectionIcon.js +4 -4
  610. package/cjs/hoc/PRIVATE_withThemeIcon.js +3 -3
  611. package/cjs/hoc/UNSAFE_withThemeProps.js +3 -3
  612. package/cjs/hooks/PRIVATE_useChartContextMenu.js +26 -26
  613. package/cjs/hooks/PRIVATE_useChartDatatip.js +14 -14
  614. package/cjs/hooks/PRIVATE_useChartEvents.js +19 -19
  615. package/cjs/hooks/PRIVATE_useChartMarquee.js +26 -26
  616. package/cjs/hooks/PRIVATE_useCollectionFocusRing.js +17 -17
  617. package/cjs/hooks/PRIVATE_useCssVars.js +7 -7
  618. package/cjs/hooks/PRIVATE_useCurrentKey.js +4 -4
  619. package/cjs/hooks/PRIVATE_useDatatip.js +12 -12
  620. package/cjs/hooks/PRIVATE_useDetectHorizontalOverflow.js +16 -16
  621. package/cjs/hooks/PRIVATE_useFloating.js +4 -4
  622. package/cjs/hooks/PRIVATE_useItemAction.js +17 -17
  623. package/cjs/hooks/PRIVATE_useListCommon.js +19 -19
  624. package/cjs/hooks/PRIVATE_useMiddleEllipsis.js +12 -0
  625. package/cjs/hooks/PRIVATE_useMiddleEllipsis.js.map +1 -0
  626. package/cjs/hooks/PRIVATE_useOutsideMousedown.js +9 -9
  627. package/cjs/hooks/PRIVATE_useRadioFocusManager.js +4 -4
  628. package/cjs/hooks/PRIVATE_useReorderable.js +19 -19
  629. package/cjs/hooks/PRIVATE_useRovingTabIndexContainer.js +4 -4
  630. package/cjs/hooks/PRIVATE_useSelection.js +4 -4
  631. package/cjs/hooks/PRIVATE_useTabBar.js +29 -29
  632. package/cjs/hooks/PRIVATE_useTabbableModeSet.js +17 -17
  633. package/cjs/hooks/PRIVATE_useTooltipOnTruncation.js +17 -17
  634. package/cjs/hooks/PRIVATE_useVisContextMenu.js +25 -25
  635. package/cjs/hooks/PRIVATE_useVisDragModeControls.js +25 -25
  636. package/cjs/hooks/PRIVATE_useVisEvents.js +4 -4
  637. package/cjs/hooks/PRIVATE_useVisMeterEvents.js +14 -14
  638. package/cjs/hooks/PRIVATE_useVisSelection.js +15 -15
  639. package/cjs/hooks/UNSAFE_useBareButton.js +2 -2
  640. package/cjs/hooks/UNSAFE_useColorScheme.js +3 -3
  641. package/cjs/hooks/UNSAFE_useCurrentBgColor.js +2 -2
  642. package/cjs/hooks/UNSAFE_useDensity.js +3 -3
  643. package/cjs/hooks/UNSAFE_useHiddenTestMethod.js +3 -3
  644. package/cjs/hooks/UNSAFE_useOutsideClick.js +8 -8
  645. package/cjs/hooks/UNSAFE_usePrefixSuffix.js +4 -4
  646. package/cjs/hooks/UNSAFE_useScale.js +3 -3
  647. package/cjs/hooks/UNSAFE_useTestId.js +3 -3
  648. package/cjs/hooks/UNSAFE_useTheme.js +3 -3
  649. package/cjs/hooks/UNSAFE_useThemeInterpolations.js +6 -6
  650. package/cjs/hooks/UNSAFE_useTooltip.js +17 -17
  651. package/cjs/hooks/UNSAFE_useTranslationBundle.js +3 -3
  652. package/cjs/hooks/UNSAFE_useUser.js +3 -3
  653. package/cjs/popupUtils-79656e59.js +31 -0
  654. package/cjs/popupUtils-79656e59.js.map +1 -0
  655. package/cjs/tooltipUtils-c554343d.js +115 -0
  656. package/cjs/tooltipUtils-c554343d.js.map +1 -0
  657. package/cjs/useBareButton-463210c9.js +1 -1
  658. package/cjs/useCellNavigation-09201a92.js +1 -1
  659. package/cjs/useChartContextMenu-c961873c.js +125 -0
  660. package/cjs/useChartContextMenu-c961873c.js.map +1 -0
  661. package/cjs/useChartDatatip-0ead533e.js +341 -0
  662. package/cjs/useChartDatatip-0ead533e.js.map +1 -0
  663. package/cjs/useChartMarquee-ade8e91c.js +306 -0
  664. package/cjs/useChartMarquee-ade8e91c.js.map +1 -0
  665. package/cjs/useColorScheme-852ec82e.js +21 -0
  666. package/cjs/useColorScheme-852ec82e.js.map +1 -0
  667. package/cjs/useContextMenu-c02f8dee.js +119 -0
  668. package/cjs/useContextMenu-c02f8dee.js.map +1 -0
  669. package/cjs/useCssVars-b7192b44.js +60 -0
  670. package/cjs/useCssVars-b7192b44.js.map +1 -0
  671. package/cjs/useCurrentKey-b66cf089.js +85 -0
  672. package/cjs/useCurrentKey-b66cf089.js.map +1 -0
  673. package/cjs/useDatatip-3462cc49.js +96 -0
  674. package/cjs/useDatatip-3462cc49.js.map +1 -0
  675. package/cjs/useDensity-2a45f4dd.js +21 -0
  676. package/cjs/useDensity-2a45f4dd.js.map +1 -0
  677. package/cjs/useDisplayValue-047ff360.js +82 -0
  678. package/cjs/useDisplayValue-047ff360.js.map +1 -0
  679. package/cjs/useExpandCollapse-359c0224.js +72 -0
  680. package/cjs/useExpandCollapse-359c0224.js.map +1 -0
  681. package/cjs/useFloating-c408d4be.js +1926 -0
  682. package/cjs/useFloating-c408d4be.js.map +1 -0
  683. package/cjs/useHiddenTestMethod-620e91e0.js +30 -0
  684. package/cjs/useHiddenTestMethod-620e91e0.js.map +1 -0
  685. package/cjs/useKeyboardEvents-d9528b16.js +88 -0
  686. package/cjs/useKeyboardEvents-d9528b16.js.map +1 -0
  687. package/cjs/useLegendContextMenu-b7993cf0.js +285 -0
  688. package/cjs/useLegendContextMenu-b7993cf0.js.map +1 -0
  689. package/cjs/useMeterDatatip-fdab9ee5.js +76 -0
  690. package/cjs/useMeterDatatip-fdab9ee5.js.map +1 -0
  691. package/cjs/useMiddleEllipsis-792e61a9.js +230 -0
  692. package/cjs/useMiddleEllipsis-792e61a9.js.map +1 -0
  693. package/cjs/useNavigation-fa3f5a50.js +1 -1
  694. package/cjs/useOutsideClick-5c31ee35.js +117 -0
  695. package/cjs/useOutsideClick-5c31ee35.js.map +1 -0
  696. package/cjs/useOutsideMousedown-eda95637.js +50 -0
  697. package/cjs/useOutsideMousedown-eda95637.js.map +1 -0
  698. package/cjs/usePopupAnimation-985e90a2.js +87 -0
  699. package/cjs/usePopupAnimation-985e90a2.js.map +1 -0
  700. package/cjs/usePrefixSuffix-a6a1b772.js +72 -0
  701. package/cjs/usePrefixSuffix-a6a1b772.js.map +1 -0
  702. package/cjs/useRadioFocusManager-58e51026.js +110 -0
  703. package/cjs/useRadioFocusManager-58e51026.js.map +1 -0
  704. package/cjs/useReorderableItem-969a3eac.js +299 -0
  705. package/cjs/useReorderableItem-969a3eac.js.map +1 -0
  706. package/cjs/useRovingTabIndexContainer-46b897fd.js +108 -0
  707. package/cjs/useRovingTabIndexContainer-46b897fd.js.map +1 -0
  708. package/cjs/useScale-529046e3.js +21 -0
  709. package/cjs/useScale-529046e3.js.map +1 -0
  710. package/cjs/useSelectCommon-728573f9.js +507 -0
  711. package/cjs/useSelectCommon-728573f9.js.map +1 -0
  712. package/cjs/useSelectDrill-813d4fbe.js +114 -0
  713. package/cjs/useSelectDrill-813d4fbe.js.map +1 -0
  714. package/cjs/useSelection-0b3dd2cf.js +188 -0
  715. package/cjs/useSelection-0b3dd2cf.js.map +1 -0
  716. package/cjs/useSelection-0ef0ee3c.js +260 -0
  717. package/cjs/useSelection-0ef0ee3c.js.map +1 -0
  718. package/cjs/useTabBar-114caa2f.js +309 -0
  719. package/cjs/useTabBar-114caa2f.js.map +1 -0
  720. package/cjs/useTestId-a8b07506.js +23 -0
  721. package/cjs/useTestId-a8b07506.js.map +1 -0
  722. package/cjs/useTheme-71e406b0.js +21 -0
  723. package/cjs/useTheme-71e406b0.js.map +1 -0
  724. package/cjs/useThemeInterpolations-ca3ddfd9.js +71 -0
  725. package/cjs/useThemeInterpolations-ca3ddfd9.js.map +1 -0
  726. package/cjs/useTooltip-d1200aff.js +51 -0
  727. package/cjs/useTooltip-d1200aff.js.map +1 -0
  728. package/cjs/useTooltipControlled-0dc34549.js +376 -0
  729. package/cjs/useTooltipControlled-0dc34549.js.map +1 -0
  730. package/cjs/useTooltipOnTruncation-d8253c7e.js +29 -0
  731. package/cjs/useTooltipOnTruncation-d8253c7e.js.map +1 -0
  732. package/cjs/useTranslationBundle-990e7928.js +31 -0
  733. package/cjs/useTranslationBundle-990e7928.js.map +1 -0
  734. package/cjs/useUser-cc045b3e.js +21 -0
  735. package/cjs/useUser-cc045b3e.js.map +1 -0
  736. package/cjs/useVisDragModeControls-737aa2dd.js +89 -0
  737. package/cjs/useVisDragModeControls-737aa2dd.js.map +1 -0
  738. package/cjs/useVisEvents-4ad7b798.js +155 -0
  739. package/cjs/useVisEvents-4ad7b798.js.map +1 -0
  740. package/cjs/utils/PRIVATE_collectionUtils.js +17 -17
  741. package/cjs/utils/PRIVATE_tabBarUtils.js +17 -17
  742. package/cjs/utils/PRIVATE_tooltipUtils.js +14 -14
  743. package/cjs/utils/PRIVATE_visTestUtils.js +4 -4
  744. package/cjs/utils/UNSAFE_popupUtils.js +8 -8
  745. package/cjs/withDirectionIcon-a14b071b.js +16 -0
  746. package/cjs/withDirectionIcon-a14b071b.js.map +1 -0
  747. package/cjs/withThemeProps-894a40fc.js +2 -2
  748. package/es/BaseButton-243d200f.js +84 -0
  749. package/es/BaseButton-243d200f.js.map +1 -0
  750. package/es/BaseCardView-85b9a71e.js +6 -6
  751. package/es/BaseDiagram-19f481a0.js +2954 -0
  752. package/es/BaseDiagram-19f481a0.js.map +1 -0
  753. package/es/BaseRichSelection-223d9830.js +9 -9
  754. package/es/BaseSelector-7cbc48bc.js +1 -1
  755. package/es/BaseSwatchView-2e1e6bd2.js +2 -2
  756. package/es/Button-a76ecfa8.js +22 -0
  757. package/es/Button-a76ecfa8.js.map +1 -0
  758. package/es/ButtonLayoutVariants.styles.css +2 -2
  759. package/es/ButtonLayoutVariants.styles2.css +2 -2
  760. package/es/ButtonSet-b7464e9a.js +2 -2
  761. package/es/ButtonSetButton-5e07834a.js +33 -0
  762. package/es/ButtonSetButton-5e07834a.js.map +1 -0
  763. package/es/ButtonSetIconButton-7e6573a0.js +38 -0
  764. package/es/ButtonSetIconButton-7e6573a0.js.map +1 -0
  765. package/es/ButtonSetItem-08dd9bd2.js +65 -0
  766. package/es/ButtonSetItem-08dd9bd2.js.map +1 -0
  767. package/es/Center-3860fe60.js +16 -0
  768. package/es/Center-3860fe60.js.map +1 -0
  769. package/es/Chart-aeda6a0c.js +752 -0
  770. package/es/Chart-aeda6a0c.js.map +1 -0
  771. package/es/CheckboxControl-c008372a.js +6 -6
  772. package/es/CheckboxRadioField-a387b3cb.js +6 -6
  773. package/es/CheckboxRadioLabelValueLayout-e3845f16.js +1 -1
  774. package/es/CheckboxSet-3aab5935.js +51 -0
  775. package/es/CheckboxSet-3aab5935.js.map +1 -0
  776. package/es/Chip-4efea02e.js +1 -1
  777. package/es/ClearIcon-f85ea340.js +1 -1
  778. package/es/CollapseIcon-84f6ba8e.js +1 -1
  779. package/es/Collapsible-2608ce3b.js +2 -2
  780. package/es/ColorPalette-950c6fc6.js +2 -2
  781. package/es/ColorPicker-8c297849.js +23 -0
  782. package/es/ColorPicker-8c297849.js.map +1 -0
  783. package/es/ColorSwatch-8339ee2f.js +4 -4
  784. package/es/CompactLabelAssistance-50ff3f7e.js +92 -0
  785. package/es/CompactLabelAssistance-50ff3f7e.js.map +1 -0
  786. package/es/CompactUserAssistance-6aa8894b.js +5 -5
  787. package/es/ComponentMessageContainer-d16c8b1f.js +4 -4
  788. package/es/DatePicker-6861ae90.js +599 -0
  789. package/es/DatePicker-6861ae90.js.map +1 -0
  790. package/es/DatePickerHeader-1a050945.js +46 -0
  791. package/es/DatePickerHeader-1a050945.js.map +1 -0
  792. package/es/DiagramStyles.styles2.css +10 -16
  793. package/es/DiagramStyles.styles3.css +16 -10
  794. package/es/Dialog-d1de5b06.js +387 -0
  795. package/es/Dialog-d1de5b06.js.map +1 -0
  796. package/es/DirectionalCollapseArrowIcon-132761da.js +1 -1
  797. package/es/DirectionalExpandArrowIcon-5bc45cad.js +1 -1
  798. package/es/Dropdown-f7992670.js +322 -0
  799. package/es/Dropdown-f7992670.js.map +1 -0
  800. package/es/EmbeddedIconButton-9f0e56b7.js +11 -0
  801. package/es/EmbeddedIconButton-9f0e56b7.js.map +1 -0
  802. package/es/EnvironmentProvider-6cf8ed37.js +58 -0
  803. package/es/EnvironmentProvider-6cf8ed37.js.map +1 -0
  804. package/es/Expander-1347e769.js +1 -1
  805. package/es/Flex-fc483125.js +30 -0
  806. package/es/Flex-fc483125.js.map +1 -0
  807. package/es/Floating-be4c0cb6.js +465 -0
  808. package/es/Floating-be4c0cb6.js.map +1 -0
  809. package/es/Grid-6f92d323.js +27 -0
  810. package/es/Grid-6f92d323.js.map +1 -0
  811. package/es/GroupLoadingIndicator-19c6545a.js +1 -1
  812. package/es/HighlightText-dd484ffd.js +31 -0
  813. package/es/HighlightText-dd484ffd.js.map +1 -0
  814. package/es/Icon-4983d06e.js +3 -3
  815. package/es/IconButton-7f91481c.js +4 -4
  816. package/es/IconSwitchButton-0ef3178f.js +42 -0
  817. package/es/IconSwitchButton-0ef3178f.js.map +1 -0
  818. package/es/IconToggleButton-7d9efcb3.js +41 -0
  819. package/es/IconToggleButton-7d9efcb3.js.map +1 -0
  820. package/es/IconUserAssistance-6abc7837.js +74 -0
  821. package/es/IconUserAssistance-6abc7837.js.map +1 -0
  822. package/es/InlineHelp-9eaac91c.js +1 -1
  823. package/es/InlineUserAssistance-890293dd.js +5 -5
  824. package/es/InputDateMask-ec27aee7.js +7 -7
  825. package/es/Label-5d1ae8d7.js +8 -8
  826. package/es/LabelValueLayout-c6b9945a.js +1 -1
  827. package/es/Layer-6c27170e.js +91 -0
  828. package/es/Layer-6c27170e.js.map +1 -0
  829. package/es/LayerHost-3cf255a6.js +41 -0
  830. package/es/LayerHost-3cf255a6.js.map +1 -0
  831. package/es/LayerManager-e30fbfd6.js +34 -0
  832. package/es/LayerManager-e30fbfd6.js.map +1 -0
  833. package/es/Link-db2fdeab.js +33 -0
  834. package/es/Link-db2fdeab.js.map +1 -0
  835. package/es/LinkVariants.styles.css +0 -1
  836. package/es/LinkVariants.styles2.css +0 -1
  837. package/es/List-4636ba9b.js +5 -5
  838. package/es/LiveRegion-2e8830ae.js +39 -0
  839. package/es/LiveRegion-2e8830ae.js.map +1 -0
  840. package/es/MaxLengthLiveRegion-8f552ae2.js +26 -0
  841. package/es/MaxLengthLiveRegion-8f552ae2.js.map +1 -0
  842. package/es/Message-510c2db8.js +2 -2
  843. package/es/MessageLayer-1dbdc0b6.js +58 -0
  844. package/es/MessageLayer-1dbdc0b6.js.map +1 -0
  845. package/es/MessagesManager-47000438.js +3 -3
  846. package/es/Modal-c0f730b8.js +3 -3
  847. package/es/MonthView-6628071f.js +229 -0
  848. package/es/MonthView-6628071f.js.map +1 -0
  849. package/es/NavigationListItem-3a9e0951.js +291 -0
  850. package/es/NavigationListItem-3a9e0951.js.map +1 -0
  851. package/es/NavigationListLinkItem-e28fd846.js +5 -5
  852. package/es/NumberInputText-60be5757.js +6 -6
  853. package/es/OverflowTabBarItem-ee746856.js +257 -0
  854. package/es/OverflowTabBarItem-ee746856.js.map +1 -0
  855. package/es/PRIVATE_BaseCardView.js +22 -22
  856. package/es/PRIVATE_BaseDiagram.js +38 -38
  857. package/es/PRIVATE_BaseSelector.js +17 -17
  858. package/es/PRIVATE_BaseSwatchView.js +18 -18
  859. package/es/PRIVATE_Chart.js +45 -45
  860. package/es/PRIVATE_CheckboxControl.js +25 -25
  861. package/es/PRIVATE_CheckboxRadioField.js +27 -27
  862. package/es/PRIVATE_ClearIcon.js +18 -18
  863. package/es/PRIVATE_CollapsibleNavigationList.js +43 -43
  864. package/es/PRIVATE_DatePickerHeader.js +23 -23
  865. package/es/PRIVATE_DatePickerLayout.js +4 -4
  866. package/es/PRIVATE_EmbeddedIconButton.js +6 -6
  867. package/es/PRIVATE_Expander.js +19 -19
  868. package/es/PRIVATE_FormControls.js +21 -21
  869. package/es/PRIVATE_IconSwitchButton.js +19 -19
  870. package/es/PRIVATE_Icons/CheckboxCrossed.js +16 -16
  871. package/es/PRIVATE_Icons/CheckboxMixed.js +16 -16
  872. package/es/PRIVATE_Icons/CheckboxOff.js +16 -16
  873. package/es/PRIVATE_Icons/CheckboxOn.js +16 -16
  874. package/es/PRIVATE_Icons/DragV.js +16 -16
  875. package/es/PRIVATE_Icons/None.js +16 -16
  876. package/es/PRIVATE_List.js +21 -21
  877. package/es/PRIVATE_Message.js +20 -20
  878. package/es/PRIVATE_MessageLayer.js +12 -12
  879. package/es/PRIVATE_MonthView.js +81 -8
  880. package/es/PRIVATE_MonthView.js.map +1 -1
  881. package/es/PRIVATE_MonthYearGridView.js +8 -8
  882. package/es/PRIVATE_PlotArea.js +5 -5
  883. package/es/PRIVATE_RevealToggleIcon.js +21 -21
  884. package/es/PRIVATE_RichSelectionCommon.js +28 -28
  885. package/es/PRIVATE_SelectCommon.js +34 -34
  886. package/es/PRIVATE_StyledCard.js +3 -3
  887. package/es/PRIVATE_StyledCheckbox.js +16 -16
  888. package/es/PRIVATE_StyledDatePickerButton/themes/StyledDatePickerButtonStyles.css.js +1 -1
  889. package/es/PRIVATE_StyledDatePickerButton.js +1 -1
  890. package/es/PRIVATE_StyledSwitch.js +4 -4
  891. package/es/PRIVATE_SwatchFlexView.js +18 -18
  892. package/es/PRIVATE_Table.js +38 -38
  893. package/es/PRIVATE_TableDisplay.js +19 -19
  894. package/es/PRIVATE_TableList.js +27 -27
  895. package/es/PRIVATE_ThemedIcons/CalendarIcon.js +16 -16
  896. package/es/PRIVATE_ThemedIcons/ChartMarqueeSelectIcon.js +16 -16
  897. package/es/PRIVATE_ThemedIcons/ChartPanIcon.js +16 -16
  898. package/es/PRIVATE_ThemedIcons/ChartZoomIcon.js +16 -16
  899. package/es/PRIVATE_ThemedIcons/CheckIcon.js +16 -16
  900. package/es/PRIVATE_ThemedIcons/CheckboxCrossedIcon.js +16 -16
  901. package/es/PRIVATE_ThemedIcons/CheckboxMixedIcon.js +16 -16
  902. package/es/PRIVATE_ThemedIcons/CheckboxOffIcon.js +16 -16
  903. package/es/PRIVATE_ThemedIcons/CheckboxOnIcon.js +16 -16
  904. package/es/PRIVATE_ThemedIcons/CloseIcon.js +16 -16
  905. package/es/PRIVATE_ThemedIcons/CollapseIcon.js +17 -17
  906. package/es/PRIVATE_ThemedIcons/CollapseUpIcon.js +16 -16
  907. package/es/PRIVATE_ThemedIcons/DecrementIcon.js +16 -16
  908. package/es/PRIVATE_ThemedIcons/DeleteIcon.js +16 -16
  909. package/es/PRIVATE_ThemedIcons/DirectionalCollapseArrowIcon.js +17 -17
  910. package/es/PRIVATE_ThemedIcons/DirectionalExpandArrowIcon.js +17 -17
  911. package/es/PRIVATE_ThemedIcons/DragHandleIcon.js +16 -16
  912. package/es/PRIVATE_ThemedIcons/DropdownArrowIcon.js +16 -16
  913. package/es/PRIVATE_ThemedIcons/ExpandIcon.js +16 -16
  914. package/es/PRIVATE_ThemedIcons/HelpIcon.js +16 -16
  915. package/es/PRIVATE_ThemedIcons/IncrementIcon.js +16 -16
  916. package/es/PRIVATE_ThemedIcons/MenuButtonDropdownIcon.js +16 -16
  917. package/es/PRIVATE_ThemedIcons/MessageConfirmationIcon.js +16 -16
  918. package/es/PRIVATE_ThemedIcons/MessageErrorIcon.js +16 -16
  919. package/es/PRIVATE_ThemedIcons/MessageInfoIcon.js +16 -16
  920. package/es/PRIVATE_ThemedIcons/MessageWarningIcon.js +16 -16
  921. package/es/PRIVATE_ThemedIcons/MinusIcon.js +16 -16
  922. package/es/PRIVATE_ThemedIcons/NavDownIcon.js +16 -16
  923. package/es/PRIVATE_ThemedIcons/None.js +16 -16
  924. package/es/PRIVATE_ThemedIcons/OverviewHorizontalDragHandleIcon.js +16 -16
  925. package/es/PRIVATE_ThemedIcons/PlusIcon.js +16 -16
  926. package/es/PRIVATE_ThemedIcons/RadioOffIcon.js +16 -16
  927. package/es/PRIVATE_ThemedIcons/RadioOnIcon.js +16 -16
  928. package/es/PRIVATE_ThemedIcons/SortAscendingIcon.js +16 -16
  929. package/es/PRIVATE_ThemedIcons/SortDescendingIcon.js +16 -16
  930. package/es/PRIVATE_ThemedIcons/ViewHideIcon.js +16 -16
  931. package/es/PRIVATE_ThemedIcons/ViewIcon.js +16 -16
  932. package/es/PRIVATE_TimeComponent.js +19 -19
  933. package/es/PRIVATE_TruncatingLink.js +20 -17
  934. package/es/PRIVATE_TruncatingLink.js.map +1 -1
  935. package/es/PRIVATE_VisOverview.js +16 -16
  936. package/es/PRIVATE_VisStatusMessage.js +5 -5
  937. package/es/PRIVATE_VisTabularDatatip.js +4 -4
  938. package/es/Popup-22d51095.js +298 -0
  939. package/es/Popup-22d51095.js.map +1 -0
  940. package/es/ProgressButtonLabelLayout-69549cf9.js +3 -3
  941. package/es/ProgressCircle-bce87dad.js +48 -0
  942. package/es/ProgressCircle-bce87dad.js.map +1 -0
  943. package/es/RadioItem-94909632.js +6 -6
  944. package/es/ReadonlyTextFieldInput-106ce959.js +1 -1
  945. package/es/ReferenceLineArea-cc72b070.js +586 -0
  946. package/es/ReferenceLineArea-cc72b070.js.map +1 -0
  947. package/es/RevealToggleIcon-c5d9d731.js +26 -0
  948. package/es/RevealToggleIcon-c5d9d731.js.map +1 -0
  949. package/es/SectionedContent-ac90a3d0.js +65 -0
  950. package/es/SectionedContent-ac90a3d0.js.map +1 -0
  951. package/es/SelectMenuGroupContext-130a850c.js +554 -0
  952. package/es/SelectMenuGroupContext-130a850c.js.map +1 -0
  953. package/es/SelectMobileFieldInput-5ca800d5.js +241 -0
  954. package/es/SelectMobileFieldInput-5ca800d5.js.map +1 -0
  955. package/es/SelectorAll-3d39196b.js +51 -0
  956. package/es/SelectorAll-3d39196b.js.map +1 -0
  957. package/es/Sheet-f9f8a4a4.js +2 -2
  958. package/es/SortControl-1044fcd9.js +3 -3
  959. package/es/StyledCard-77623731.js +1 -1
  960. package/es/StyledDatePickerButton-a7782821.js +32 -0
  961. package/es/StyledDatePickerButton-a7782821.js.map +1 -0
  962. package/es/StyledDatePickerButtonStyles.styles.css +18 -12
  963. package/es/StyledLabelValueLayout-bddfb884.js +18 -0
  964. package/es/StyledLabelValueLayout-bddfb884.js.map +1 -0
  965. package/es/StyledSwitch-dbf29d95.js +2 -2
  966. package/es/StyledTextField-7605d76a.js +5 -5
  967. package/es/Submenu-fa7c2b4f.js +247 -0
  968. package/es/Submenu-fa7c2b4f.js.map +1 -0
  969. package/es/TabBar-fd31ca03.js +69 -0
  970. package/es/TabBar-fd31ca03.js.map +1 -0
  971. package/es/TabBarContextMenu-3bf4dc64.js +99 -0
  972. package/es/TabBarContextMenu-3bf4dc64.js.map +1 -0
  973. package/es/TabBarLayout-9b67d1b6.js +1 -1
  974. package/es/TabBarLinkItem-43854314.js +13 -0
  975. package/es/TabBarLinkItem-43854314.js.map +1 -0
  976. package/es/Table-535987d0.js +4112 -0
  977. package/es/Table-535987d0.js.map +1 -0
  978. package/es/TableColGroup-d74bd4f5.js +1 -1
  979. package/es/TextField-7884fcd7.js +3 -3
  980. package/es/Theme-redwood/theme.css +369 -369
  981. package/es/Theme-stable/theme.css +521 -521
  982. package/es/TimeComponentCanvas2D-cfb0066d.js +6 -6
  983. package/es/ToggleButton-65f5d293.js +28 -0
  984. package/es/ToggleButton-65f5d293.js.map +1 -0
  985. package/es/ToggleButtonLabel-bf4e1599.js +75 -0
  986. package/es/ToggleButtonLabel-bf4e1599.js.map +1 -0
  987. package/es/TrainVariants.styles.css +6 -6
  988. package/es/TrainVariants.styles2.css +6 -6
  989. package/es/TruncatingLink-6aaf40b9.js +93 -0
  990. package/es/TruncatingLink-6aaf40b9.js.map +1 -0
  991. package/es/TruncatingText-1bf00351.js +1 -1
  992. package/es/UNSAFE_AccordionItemMultiple.js +18 -18
  993. package/es/UNSAFE_AccordionItemSingle.js +18 -18
  994. package/es/UNSAFE_ActionCard.js +2 -2
  995. package/es/UNSAFE_BarChart.js +46 -46
  996. package/es/UNSAFE_BareButton.js +2 -2
  997. package/es/UNSAFE_BaseButton.js +5 -5
  998. package/es/UNSAFE_Button.js +6 -6
  999. package/es/UNSAFE_ButtonLayout/themes/redwood/ButtonLayoutTheme.js +1 -1
  1000. package/es/UNSAFE_ButtonLayout/themes/redwood/ButtonLayoutVariants.css.js +1 -1
  1001. package/es/UNSAFE_ButtonLayout/themes/stable/ButtonLayoutTheme.js +1 -1
  1002. package/es/UNSAFE_ButtonLayout/themes/stable/ButtonLayoutVariants.css.js +1 -1
  1003. package/es/UNSAFE_ButtonLayout.js +1 -1
  1004. package/es/UNSAFE_ButtonSet.js +4 -4
  1005. package/es/UNSAFE_ButtonSetButton.js +7 -7
  1006. package/es/UNSAFE_ButtonSetIconButton.js +19 -19
  1007. package/es/UNSAFE_ButtonSetItem.js +22 -22
  1008. package/es/UNSAFE_ButtonSetMultiple.js +4 -4
  1009. package/es/UNSAFE_ButtonSetSingle.js +4 -4
  1010. package/es/UNSAFE_Card.js +3 -3
  1011. package/es/UNSAFE_CardFlexView.js +22 -22
  1012. package/es/UNSAFE_CardGridView.js +22 -22
  1013. package/es/UNSAFE_Center.js +5 -5
  1014. package/es/UNSAFE_Checkbox.js +25 -25
  1015. package/es/UNSAFE_CheckboxItem.js +137 -76
  1016. package/es/UNSAFE_CheckboxItem.js.map +1 -1
  1017. package/es/UNSAFE_CheckboxRadioField.js +4 -4
  1018. package/es/UNSAFE_CheckboxSet.js +40 -74
  1019. package/es/UNSAFE_CheckboxSet.js.map +1 -1
  1020. package/es/UNSAFE_Chip.js +2 -2
  1021. package/es/UNSAFE_Collapsible.js +18 -18
  1022. package/es/UNSAFE_ColorPalette.js +19 -19
  1023. package/es/UNSAFE_ColorPicker.js +44 -44
  1024. package/es/UNSAFE_ColorSwatch.js +17 -17
  1025. package/es/UNSAFE_ComboChart.js +46 -46
  1026. package/es/UNSAFE_ComponentMessage.js +20 -20
  1027. package/es/UNSAFE_ContainerDiagram/themes/DiagramStyles.css.js +1 -1
  1028. package/es/UNSAFE_ContainerDiagram.js +38 -38
  1029. package/es/UNSAFE_ConveyorBelt.js +18 -18
  1030. package/es/UNSAFE_DatePicker.js +54 -31
  1031. package/es/UNSAFE_DatePicker.js.map +1 -1
  1032. package/es/UNSAFE_Diagram/themes/DiagramStyles.css.js +1 -1
  1033. package/es/UNSAFE_Diagram.js +38 -38
  1034. package/es/UNSAFE_Dialog.js +22 -22
  1035. package/es/UNSAFE_DragHandle.js +17 -17
  1036. package/es/UNSAFE_DrawerLayout.js +12 -12
  1037. package/es/UNSAFE_DrawerPopup.js +11 -11
  1038. package/es/UNSAFE_Dropdown.js +15 -15
  1039. package/es/UNSAFE_Environment.js +4 -4
  1040. package/es/UNSAFE_ExpandableList.js +25 -25
  1041. package/es/UNSAFE_FilePicker.js +4 -4
  1042. package/es/UNSAFE_FlatTreeView.js +39 -39
  1043. package/es/UNSAFE_Flex.js +4 -4
  1044. package/es/UNSAFE_Floating.js +11 -11
  1045. package/es/UNSAFE_FormLayout.js +2 -2
  1046. package/es/UNSAFE_Gantt.js +23 -23
  1047. package/es/UNSAFE_Grid.js +4 -4
  1048. package/es/UNSAFE_HighlightText.js +4 -4
  1049. package/es/UNSAFE_Icon.js +16 -16
  1050. package/es/UNSAFE_IconButton.js +17 -17
  1051. package/es/UNSAFE_IconMenuButton.js +26 -26
  1052. package/es/UNSAFE_IconProgressButton.js +21 -21
  1053. package/es/UNSAFE_IconToggleButton.js +19 -19
  1054. package/es/UNSAFE_Indexer.js +19 -19
  1055. package/es/UNSAFE_InlineSelectSingle.js +34 -34
  1056. package/es/UNSAFE_InputColor.js +33 -33
  1057. package/es/UNSAFE_InputDateMask.js +26 -26
  1058. package/es/UNSAFE_InputDatePicker.js +63 -41
  1059. package/es/UNSAFE_InputDatePicker.js.map +1 -1
  1060. package/es/UNSAFE_InputPassword.js +29 -29
  1061. package/es/UNSAFE_InputSensitiveText.js +30 -30
  1062. package/es/UNSAFE_InputText.js +28 -28
  1063. package/es/UNSAFE_InputTimeMask.js +26 -26
  1064. package/es/UNSAFE_Label.js +25 -25
  1065. package/es/UNSAFE_LabelValueLayout.js +4 -4
  1066. package/es/UNSAFE_LabelledLink.js +36 -31
  1067. package/es/UNSAFE_LabelledLink.js.map +1 -1
  1068. package/es/UNSAFE_Layer.js +8 -8
  1069. package/es/UNSAFE_Legend.js +30 -30
  1070. package/es/UNSAFE_LineAreaChart.js +46 -46
  1071. package/es/UNSAFE_Link/themes/LinkStyles.css.js +1 -1
  1072. package/es/UNSAFE_Link.js +3 -3
  1073. package/es/UNSAFE_ListItemLayout.js +4 -4
  1074. package/es/UNSAFE_ListView.js +29 -29
  1075. package/es/UNSAFE_LiveRegion.js +4 -4
  1076. package/es/UNSAFE_Menu.js +29 -29
  1077. package/es/UNSAFE_MenuButton.js +26 -26
  1078. package/es/UNSAFE_MessageBanner.js +20 -20
  1079. package/es/UNSAFE_MessageToast.js +22 -22
  1080. package/es/UNSAFE_MeterBar.js +16 -16
  1081. package/es/UNSAFE_MeterCircle.js +17 -17
  1082. package/es/UNSAFE_Modal.js +8 -8
  1083. package/es/UNSAFE_NavigationList.js +42 -42
  1084. package/es/UNSAFE_NavigationListCommon.js +20 -20
  1085. package/es/UNSAFE_NumberInputText.js +28 -28
  1086. package/es/UNSAFE_OverflowTabBar.js +34 -34
  1087. package/es/UNSAFE_PictoChart.js +27 -27
  1088. package/es/UNSAFE_PieChart.js +28 -28
  1089. package/es/UNSAFE_Popup.js +18 -18
  1090. package/es/UNSAFE_ProgressBar.js +4 -4
  1091. package/es/UNSAFE_ProgressButton.js +21 -21
  1092. package/es/UNSAFE_ProgressButtonLabelLayout.js +10 -10
  1093. package/es/UNSAFE_ProgressCircle.js +4 -4
  1094. package/es/UNSAFE_RadioItem.js +25 -25
  1095. package/es/UNSAFE_RadioSet.js +27 -27
  1096. package/es/UNSAFE_RatingGauge.js +18 -18
  1097. package/es/UNSAFE_ReorderableTabBar.js +31 -31
  1098. package/es/UNSAFE_RichCheckboxSet.js +68 -64
  1099. package/es/UNSAFE_RichCheckboxSet.js.map +1 -1
  1100. package/es/UNSAFE_RichRadioSet.js +29 -29
  1101. package/es/UNSAFE_RichSelectionItem.js +174 -111
  1102. package/es/UNSAFE_RichSelectionItem.js.map +1 -1
  1103. package/es/UNSAFE_ScatterChart.js +46 -46
  1104. package/es/UNSAFE_SectionalLegend.js +30 -30
  1105. package/es/UNSAFE_SelectMultiple.js +38 -38
  1106. package/es/UNSAFE_SelectSingle.js +38 -38
  1107. package/es/UNSAFE_SelectionCard.js +3 -3
  1108. package/es/UNSAFE_Selector.js +17 -17
  1109. package/es/UNSAFE_SelectorAll.js +19 -19
  1110. package/es/UNSAFE_Sheet.js +11 -11
  1111. package/es/UNSAFE_SortControl.js +20 -20
  1112. package/es/UNSAFE_SplitMenuButton.js +27 -27
  1113. package/es/UNSAFE_SplitMenuButton.js.map +1 -1
  1114. package/es/UNSAFE_Switch.js +26 -26
  1115. package/es/UNSAFE_TabBar.js +35 -35
  1116. package/es/UNSAFE_TabBarCommon.js +33 -33
  1117. package/es/UNSAFE_TabBarMixed.js +33 -33
  1118. package/es/UNSAFE_TableView.js +38 -38
  1119. package/es/UNSAFE_TagCloud.js +28 -28
  1120. package/es/UNSAFE_TextArea.js +27 -27
  1121. package/es/UNSAFE_TextAreaAutosize.js +27 -27
  1122. package/es/UNSAFE_TextField.js +20 -20
  1123. package/es/UNSAFE_ToggleButton.js +7 -7
  1124. package/es/UNSAFE_ToggleButtonLabel.js +1 -1
  1125. package/es/UNSAFE_Toolbar.js +5 -5
  1126. package/es/UNSAFE_Train/themes/redwood/TrainTheme.js +1 -1
  1127. package/es/UNSAFE_Train/themes/redwood/TrainVariants.css.js +1 -1
  1128. package/es/UNSAFE_Train/themes/stable/TrainTheme.js +1 -1
  1129. package/es/UNSAFE_Train/themes/stable/TrainVariants.css.js +1 -1
  1130. package/es/UNSAFE_Train.js +18 -18
  1131. package/es/UNSAFE_TruncatingBadge.js +17 -17
  1132. package/es/UNSAFE_TruncatingText.js +17 -17
  1133. package/es/UNSAFE_UserAssistance.js +26 -26
  1134. package/es/UNSAFE_View.js +7 -7
  1135. package/es/UNSAFE_VirtualizedListView.js +21 -21
  1136. package/es/UNSAFE_VisInvalidDataMessage.js +6 -6
  1137. package/es/UNSAFE_VisNoDataMessage.js +6 -6
  1138. package/es/UNSAFE_VisProgressiveLoader.js +5 -5
  1139. package/es/UNSAFE_WindowOverlay.js +4 -4
  1140. package/es/View-818f2f31.js +167 -0
  1141. package/es/View-818f2f31.js.map +1 -0
  1142. package/es/VisStatusMessage-09c532e3.js +29 -0
  1143. package/es/VisStatusMessage-09c532e3.js.map +1 -0
  1144. package/es/VisTabularDatatip-f45069f1.js +24 -0
  1145. package/es/VisTabularDatatip-f45069f1.js.map +1 -0
  1146. package/es/WindowOverlay-467c2d12.js +110 -0
  1147. package/es/WindowOverlay-467c2d12.js.map +1 -0
  1148. package/es/YearsGridView-27d6fa06.js +187 -0
  1149. package/es/YearsGridView-27d6fa06.js.map +1 -0
  1150. package/es/hoc/PRIVATE_withDirectionIcon.js +4 -4
  1151. package/es/hoc/PRIVATE_withThemeIcon.js +3 -3
  1152. package/es/hoc/UNSAFE_withThemeProps.js +3 -3
  1153. package/es/hooks/PRIVATE_useChartContextMenu.js +26 -26
  1154. package/es/hooks/PRIVATE_useChartDatatip.js +14 -14
  1155. package/es/hooks/PRIVATE_useChartEvents.js +19 -19
  1156. package/es/hooks/PRIVATE_useChartMarquee.js +26 -26
  1157. package/es/hooks/PRIVATE_useCollectionFocusRing.js +17 -17
  1158. package/es/hooks/PRIVATE_useCssVars.js +7 -7
  1159. package/es/hooks/PRIVATE_useCurrentKey.js +4 -4
  1160. package/es/hooks/PRIVATE_useDatatip.js +12 -12
  1161. package/es/hooks/PRIVATE_useDetectHorizontalOverflow.js +16 -16
  1162. package/es/hooks/PRIVATE_useFloating.js +4 -4
  1163. package/es/hooks/PRIVATE_useItemAction.js +17 -17
  1164. package/es/hooks/PRIVATE_useListCommon.js +19 -19
  1165. package/es/hooks/PRIVATE_useMiddleEllipsis.js +4 -0
  1166. package/es/hooks/PRIVATE_useMiddleEllipsis.js.map +1 -0
  1167. package/es/hooks/PRIVATE_useOutsideMousedown.js +9 -9
  1168. package/es/hooks/PRIVATE_useRadioFocusManager.js +4 -4
  1169. package/es/hooks/PRIVATE_useReorderable.js +19 -19
  1170. package/es/hooks/PRIVATE_useRovingTabIndexContainer.js +4 -4
  1171. package/es/hooks/PRIVATE_useSelection.js +4 -4
  1172. package/es/hooks/PRIVATE_useTabBar.js +29 -29
  1173. package/es/hooks/PRIVATE_useTabbableModeSet.js +17 -17
  1174. package/es/hooks/PRIVATE_useTooltipOnTruncation.js +17 -17
  1175. package/es/hooks/PRIVATE_useVisContextMenu.js +25 -25
  1176. package/es/hooks/PRIVATE_useVisDragModeControls.js +25 -25
  1177. package/es/hooks/PRIVATE_useVisEvents.js +4 -4
  1178. package/es/hooks/PRIVATE_useVisMeterEvents.js +14 -14
  1179. package/es/hooks/PRIVATE_useVisSelection.js +15 -15
  1180. package/es/hooks/UNSAFE_useBareButton.js +2 -2
  1181. package/es/hooks/UNSAFE_useColorScheme.js +3 -3
  1182. package/es/hooks/UNSAFE_useCurrentBgColor.js +2 -2
  1183. package/es/hooks/UNSAFE_useDensity.js +3 -3
  1184. package/es/hooks/UNSAFE_useHiddenTestMethod.js +3 -3
  1185. package/es/hooks/UNSAFE_useOutsideClick.js +8 -8
  1186. package/es/hooks/UNSAFE_usePrefixSuffix.js +4 -4
  1187. package/es/hooks/UNSAFE_useScale.js +3 -3
  1188. package/es/hooks/UNSAFE_useTestId.js +3 -3
  1189. package/es/hooks/UNSAFE_useTheme.js +3 -3
  1190. package/es/hooks/UNSAFE_useThemeInterpolations.js +6 -6
  1191. package/es/hooks/UNSAFE_useTooltip.js +17 -17
  1192. package/es/hooks/UNSAFE_useTranslationBundle.js +3 -3
  1193. package/es/hooks/UNSAFE_useUser.js +3 -3
  1194. package/es/popupUtils-7774330e.js +29 -0
  1195. package/es/popupUtils-7774330e.js.map +1 -0
  1196. package/es/tooltipUtils-90fb656f.js +110 -0
  1197. package/es/tooltipUtils-90fb656f.js.map +1 -0
  1198. package/es/useBareButton-ff4bd21e.js +1 -1
  1199. package/es/useCellNavigation-0565b6dd.js +1 -1
  1200. package/es/useChartContextMenu-933091d8.js +123 -0
  1201. package/es/useChartContextMenu-933091d8.js.map +1 -0
  1202. package/es/useChartDatatip-cba78e0f.js +336 -0
  1203. package/es/useChartDatatip-cba78e0f.js.map +1 -0
  1204. package/es/useChartMarquee-914929b6.js +304 -0
  1205. package/es/useChartMarquee-914929b6.js.map +1 -0
  1206. package/es/useColorScheme-67245285.js +19 -0
  1207. package/es/useColorScheme-67245285.js.map +1 -0
  1208. package/es/useContextMenu-8a1230a3.js +116 -0
  1209. package/es/useContextMenu-8a1230a3.js.map +1 -0
  1210. package/es/useCssVars-048a52d8.js +58 -0
  1211. package/es/useCssVars-048a52d8.js.map +1 -0
  1212. package/es/useCurrentKey-38e5f097.js +83 -0
  1213. package/es/useCurrentKey-38e5f097.js.map +1 -0
  1214. package/es/useDatatip-ef5c47a7.js +94 -0
  1215. package/es/useDatatip-ef5c47a7.js.map +1 -0
  1216. package/es/useDensity-969273f3.js +19 -0
  1217. package/es/useDensity-969273f3.js.map +1 -0
  1218. package/es/useDisplayValue-29f03329.js +78 -0
  1219. package/es/useDisplayValue-29f03329.js.map +1 -0
  1220. package/es/useExpandCollapse-51f9bb4b.js +70 -0
  1221. package/es/useExpandCollapse-51f9bb4b.js.map +1 -0
  1222. package/es/useFloating-c74a7f54.js +1916 -0
  1223. package/es/useFloating-c74a7f54.js.map +1 -0
  1224. package/es/useHiddenTestMethod-ec7b3989.js +28 -0
  1225. package/es/useHiddenTestMethod-ec7b3989.js.map +1 -0
  1226. package/es/useKeyboardEvents-a1495728.js +85 -0
  1227. package/es/useKeyboardEvents-a1495728.js.map +1 -0
  1228. package/es/useLegendContextMenu-6ea00771.js +279 -0
  1229. package/es/useLegendContextMenu-6ea00771.js.map +1 -0
  1230. package/es/useMeterDatatip-f61ca3e0.js +73 -0
  1231. package/es/useMeterDatatip-f61ca3e0.js.map +1 -0
  1232. package/es/useMiddleEllipsis-b073ca6b.js +228 -0
  1233. package/es/useMiddleEllipsis-b073ca6b.js.map +1 -0
  1234. package/es/useNavigation-b257c33a.js +1 -1
  1235. package/es/useOutsideClick-01f3d3e1.js +115 -0
  1236. package/es/useOutsideClick-01f3d3e1.js.map +1 -0
  1237. package/es/useOutsideMousedown-e0866d58.js +48 -0
  1238. package/es/useOutsideMousedown-e0866d58.js.map +1 -0
  1239. package/es/usePopupAnimation-7c5db425.js +85 -0
  1240. package/es/usePopupAnimation-7c5db425.js.map +1 -0
  1241. package/es/usePrefixSuffix-95fc00fd.js +70 -0
  1242. package/es/usePrefixSuffix-95fc00fd.js.map +1 -0
  1243. package/es/useRadioFocusManager-d9eecfb4.js +108 -0
  1244. package/es/useRadioFocusManager-d9eecfb4.js.map +1 -0
  1245. package/es/useReorderableItem-06bd7a7b.js +296 -0
  1246. package/es/useReorderableItem-06bd7a7b.js.map +1 -0
  1247. package/es/useRovingTabIndexContainer-c0356f5d.js +106 -0
  1248. package/es/useRovingTabIndexContainer-c0356f5d.js.map +1 -0
  1249. package/es/useScale-93490e54.js +19 -0
  1250. package/es/useScale-93490e54.js.map +1 -0
  1251. package/es/useSelectCommon-c70bb10f.js +489 -0
  1252. package/es/useSelectCommon-c70bb10f.js.map +1 -0
  1253. package/es/useSelectDrill-2f855daa.js +111 -0
  1254. package/es/useSelectDrill-2f855daa.js.map +1 -0
  1255. package/es/useSelection-10ed8060.js +186 -0
  1256. package/es/useSelection-10ed8060.js.map +1 -0
  1257. package/es/useSelection-d6fefa3d.js +258 -0
  1258. package/es/useSelection-d6fefa3d.js.map +1 -0
  1259. package/es/useTabBar-27e8c4ea.js +305 -0
  1260. package/es/useTabBar-27e8c4ea.js.map +1 -0
  1261. package/es/useTestId-ab1bede6.js +21 -0
  1262. package/es/useTestId-ab1bede6.js.map +1 -0
  1263. package/es/useTheme-c2cfbc29.js +19 -0
  1264. package/es/useTheme-c2cfbc29.js.map +1 -0
  1265. package/es/useThemeInterpolations-5f358139.js +68 -0
  1266. package/es/useThemeInterpolations-5f358139.js.map +1 -0
  1267. package/es/useTooltip-ab739df0.js +49 -0
  1268. package/es/useTooltip-ab739df0.js.map +1 -0
  1269. package/es/useTooltipControlled-b7f30aee.js +373 -0
  1270. package/es/useTooltipControlled-b7f30aee.js.map +1 -0
  1271. package/es/useTooltipOnTruncation-31afc3f2.js +27 -0
  1272. package/es/useTooltipOnTruncation-31afc3f2.js.map +1 -0
  1273. package/es/useTranslationBundle-bc6e0896.js +29 -0
  1274. package/es/useTranslationBundle-bc6e0896.js.map +1 -0
  1275. package/es/useUser-e543b73c.js +19 -0
  1276. package/es/useUser-e543b73c.js.map +1 -0
  1277. package/es/useVisDragModeControls-6865056f.js +87 -0
  1278. package/es/useVisDragModeControls-6865056f.js.map +1 -0
  1279. package/es/useVisEvents-0edc925f.js +153 -0
  1280. package/es/useVisEvents-0edc925f.js.map +1 -0
  1281. package/es/utils/PRIVATE_collectionUtils.js +17 -17
  1282. package/es/utils/PRIVATE_tabBarUtils.js +17 -17
  1283. package/es/utils/PRIVATE_tooltipUtils.js +14 -14
  1284. package/es/utils/PRIVATE_visTestUtils.js +4 -4
  1285. package/es/utils/UNSAFE_popupUtils.js +8 -8
  1286. package/es/withDirectionIcon-b725a6d7.js +14 -0
  1287. package/es/withDirectionIcon-b725a6d7.js.map +1 -0
  1288. package/es/withThemeProps-dbd4fedf.js +2 -2
  1289. package/package.json +2 -2
  1290. package/types/UNSAFE_Dropdown/Dropdown.d.ts +5 -1
  1291. package/types/UNSAFE_LabelledLink/LabelledLink.d.ts +5 -1
  1292. package/types/UNSAFE_Link/themes/LinkStyles.css.d.ts +0 -1
  1293. package/types/UNSAFE_Link/themes/redwood/LinkVariants.css.d.ts +0 -1
  1294. package/types/UNSAFE_Link/themes/stable/LinkVariants.css.d.ts +0 -1
  1295. package/types/UNSAFE_Menu/DropdownMenu.d.ts +1 -0
  1296. package/amd/BarChart-994cb8f0.js +0 -2
  1297. package/amd/BarChart-994cb8f0.js.map +0 -1
  1298. package/amd/BaseDiagram-00ea8628.js +0 -2
  1299. package/amd/BaseDiagram-00ea8628.js.map +0 -1
  1300. package/amd/ButtonSetButton-fa0256aa.js +0 -2
  1301. package/amd/ButtonSetButton-fa0256aa.js.map +0 -1
  1302. package/amd/ButtonSetIconButton-9010f20c.js +0 -2
  1303. package/amd/ButtonSetIconButton-9010f20c.js.map +0 -1
  1304. package/amd/ButtonSetItem-4b29107a.js +0 -2
  1305. package/amd/ButtonSetItem-4b29107a.js.map +0 -1
  1306. package/amd/Chart-d9eafc7a.js +0 -2
  1307. package/amd/Chart-d9eafc7a.js.map +0 -1
  1308. package/amd/CheckboxSetContext-2e486ea8.js +0 -2
  1309. package/amd/CheckboxSetContext-2e486ea8.js.map +0 -1
  1310. package/amd/ComboChart-5a6f6c8a.js +0 -2
  1311. package/amd/ComboChart-5a6f6c8a.js.map +0 -1
  1312. package/amd/ContainerDiagram-678f9746.js +0 -2
  1313. package/amd/ContainerDiagram-678f9746.js.map +0 -1
  1314. package/amd/DatePicker-bf521b1c.js +0 -2
  1315. package/amd/DatePicker-bf521b1c.js.map +0 -1
  1316. package/amd/DatePickerHeader-82f4f285.js +0 -2
  1317. package/amd/DatePickerHeader-82f4f285.js.map +0 -1
  1318. package/amd/Diagram-492f8b21.js +0 -2
  1319. package/amd/Diagram-492f8b21.js.map +0 -1
  1320. package/amd/Dropdown-7eca9554.js +0 -2
  1321. package/amd/Dropdown-7eca9554.js.map +0 -1
  1322. package/amd/IconMenuButton-82b8431d.js +0 -2
  1323. package/amd/IconMenuButton-82b8431d.js.map +0 -1
  1324. package/amd/IconSwitchButton-c44e0edf.js +0 -2
  1325. package/amd/IconSwitchButton-c44e0edf.js.map +0 -1
  1326. package/amd/IconToggleButton-0ab34b44.js +0 -2
  1327. package/amd/IconToggleButton-0ab34b44.js.map +0 -1
  1328. package/amd/InlineSelectSingle-87bc8a45.js +0 -2
  1329. package/amd/InlineSelectSingle-87bc8a45.js.map +0 -1
  1330. package/amd/InputColor-58e3fce3.js +0 -2
  1331. package/amd/InputColor-58e3fce3.js.map +0 -1
  1332. package/amd/InputDatePicker-7227a858.js +0 -2
  1333. package/amd/InputDatePicker-7227a858.js.map +0 -1
  1334. package/amd/InputPassword-450915c8.js +0 -2
  1335. package/amd/InputPassword-450915c8.js.map +0 -1
  1336. package/amd/InputSensitiveText-d94d24f0.js +0 -2
  1337. package/amd/InputSensitiveText-d94d24f0.js.map +0 -1
  1338. package/amd/Legend-47a1bf23.js +0 -2
  1339. package/amd/Legend-47a1bf23.js.map +0 -1
  1340. package/amd/LineAreaChart-47fc17d2.js +0 -2
  1341. package/amd/LineAreaChart-47fc17d2.js.map +0 -1
  1342. package/amd/Link-a8fad252.js +0 -2
  1343. package/amd/Link-a8fad252.js.map +0 -1
  1344. package/amd/ListView-02a92d18.js +0 -2
  1345. package/amd/ListView-02a92d18.js.map +0 -1
  1346. package/amd/Menu-1b8fefc5.js +0 -2
  1347. package/amd/Menu-1b8fefc5.js.map +0 -1
  1348. package/amd/MenuButton-2fe1ef2c.js +0 -2
  1349. package/amd/MenuButton-2fe1ef2c.js.map +0 -1
  1350. package/amd/MenuItem-85e4ffdc.js +0 -2
  1351. package/amd/MenuItem-85e4ffdc.js.map +0 -1
  1352. package/amd/MonthView-96fafba4.js +0 -2
  1353. package/amd/MonthView-96fafba4.js.map +0 -1
  1354. package/amd/NavigationListItem-9df5446c.js +0 -2
  1355. package/amd/NavigationListItem-9df5446c.js.map +0 -1
  1356. package/amd/OverflowTabBar-5ff68da7.js +0 -2
  1357. package/amd/OverflowTabBar-5ff68da7.js.map +0 -1
  1358. package/amd/OverflowTabBarItem-926b0c8a.js +0 -2
  1359. package/amd/OverflowTabBarItem-926b0c8a.js.map +0 -1
  1360. package/amd/PictoChart-ab426a71.js +0 -2
  1361. package/amd/PictoChart-ab426a71.js.map +0 -1
  1362. package/amd/PieChart-57ffe4c0.js +0 -2
  1363. package/amd/PieChart-57ffe4c0.js.map +0 -1
  1364. package/amd/ReorderableTabBar-0c69bfd4.js +0 -2
  1365. package/amd/ReorderableTabBar-0c69bfd4.js.map +0 -1
  1366. package/amd/RevealToggleIcon-093f60c4.js +0 -2
  1367. package/amd/RevealToggleIcon-093f60c4.js.map +0 -1
  1368. package/amd/ScatterChart-7bd0f601.js +0 -2
  1369. package/amd/ScatterChart-7bd0f601.js.map +0 -1
  1370. package/amd/SectionalLegend-bd980f3f.js +0 -2
  1371. package/amd/SectionalLegend-bd980f3f.js.map +0 -1
  1372. package/amd/SectionedContent-74559d9d.js +0 -2
  1373. package/amd/SectionedContent-74559d9d.js.map +0 -1
  1374. package/amd/SelectMenuItem-affab9f3.js +0 -2
  1375. package/amd/SelectMenuItem-affab9f3.js.map +0 -1
  1376. package/amd/SelectMobileFieldInput-4795a794.js +0 -2
  1377. package/amd/SelectMobileFieldInput-4795a794.js.map +0 -1
  1378. package/amd/SelectMultiple-e216b16c.js +0 -2
  1379. package/amd/SelectMultiple-e216b16c.js.map +0 -1
  1380. package/amd/SelectSingle-d53cf202.js +0 -2
  1381. package/amd/SelectSingle-d53cf202.js.map +0 -1
  1382. package/amd/SplitMenuButton-76adec12.js +0 -2
  1383. package/amd/SplitMenuButton-76adec12.js.map +0 -1
  1384. package/amd/StyledDatePickerButton-bceb62e1.js +0 -2
  1385. package/amd/StyledDatePickerButton-bceb62e1.js.map +0 -1
  1386. package/amd/Submenu-52ec8bfb.js +0 -2
  1387. package/amd/Submenu-52ec8bfb.js.map +0 -1
  1388. package/amd/TabBar-de723fbc.js +0 -2
  1389. package/amd/TabBar-de723fbc.js.map +0 -1
  1390. package/amd/TabBarContextMenu-6a167e27.js +0 -2
  1391. package/amd/TabBarContextMenu-6a167e27.js.map +0 -1
  1392. package/amd/TabBarMixed-cfd346bf.js +0 -2
  1393. package/amd/TabBarMixed-cfd346bf.js.map +0 -1
  1394. package/amd/Table-74566993.js +0 -2
  1395. package/amd/Table-74566993.js.map +0 -1
  1396. package/amd/TableView-3d82855c.js +0 -2
  1397. package/amd/TableView-3d82855c.js.map +0 -1
  1398. package/amd/TagCloud-c10a166e.js +0 -2
  1399. package/amd/TagCloud-c10a166e.js.map +0 -1
  1400. package/amd/TextArea-4a3b8b56.js +0 -2
  1401. package/amd/TextArea-4a3b8b56.js.map +0 -1
  1402. package/amd/TextAreaAutosize-3a13ebb2.js +0 -2
  1403. package/amd/TextAreaAutosize-3a13ebb2.js.map +0 -1
  1404. package/amd/ToggleButton-b77486fe.js +0 -2
  1405. package/amd/ToggleButton-b77486fe.js.map +0 -1
  1406. package/amd/ToggleButtonLabel-87364773.js +0 -2
  1407. package/amd/ToggleButtonLabel-87364773.js.map +0 -1
  1408. package/amd/TruncatingLink-591e7ff1.js +0 -2
  1409. package/amd/TruncatingLink-591e7ff1.js.map +0 -1
  1410. package/amd/YearsGridView-561c3074.js +0 -2
  1411. package/amd/YearsGridView-561c3074.js.map +0 -1
  1412. package/amd/listViewSelectionTests-7d18f09e.js +0 -2
  1413. package/amd/listViewSelectionTests-7d18f09e.js.map +0 -1
  1414. package/amd/useChartContextMenu-abadeabc.js +0 -2
  1415. package/amd/useChartContextMenu-abadeabc.js.map +0 -1
  1416. package/amd/useChartMarquee-3865426f.js +0 -2
  1417. package/amd/useChartMarquee-3865426f.js.map +0 -1
  1418. package/amd/useContextMenu-67972d45.js +0 -2
  1419. package/amd/useContextMenu-67972d45.js.map +0 -1
  1420. package/amd/useDisplayValue-9b671893.js +0 -2
  1421. package/amd/useDisplayValue-9b671893.js.map +0 -1
  1422. package/amd/useLegendContextMenu-55fedade.js +0 -2
  1423. package/amd/useLegendContextMenu-55fedade.js.map +0 -1
  1424. package/amd/useSelectCommon-f33709d2.js +0 -2
  1425. package/amd/useSelectCommon-f33709d2.js.map +0 -1
  1426. package/amd/useTabBar-b05edef0.js +0 -2
  1427. package/amd/useTabBar-b05edef0.js.map +0 -1
  1428. package/amd/useTextAreaAltEnter-32272da6.js +0 -2
  1429. package/amd/useTextAreaAltEnter-32272da6.js.map +0 -1
  1430. package/amd/useVisDragModeControls-5f059d09.js +0 -2
  1431. package/amd/useVisDragModeControls-5f059d09.js.map +0 -1
  1432. package/cjs/BaseButton-d8f96bfa.js +0 -86
  1433. package/cjs/BaseButton-d8f96bfa.js.map +0 -1
  1434. package/cjs/BaseDiagram-ce4f1a20.js +0 -2956
  1435. package/cjs/BaseDiagram-ce4f1a20.js.map +0 -1
  1436. package/cjs/Button-020e0381.js +0 -24
  1437. package/cjs/Button-020e0381.js.map +0 -1
  1438. package/cjs/ButtonSetButton-569e0efb.js +0 -35
  1439. package/cjs/ButtonSetButton-569e0efb.js.map +0 -1
  1440. package/cjs/ButtonSetIconButton-3778ac7b.js +0 -40
  1441. package/cjs/ButtonSetIconButton-3778ac7b.js.map +0 -1
  1442. package/cjs/ButtonSetItem-4322c957.js +0 -67
  1443. package/cjs/ButtonSetItem-4322c957.js.map +0 -1
  1444. package/cjs/Center-9a0ee4f3.js +0 -18
  1445. package/cjs/Center-9a0ee4f3.js.map +0 -1
  1446. package/cjs/Chart-966da017.js +0 -754
  1447. package/cjs/Chart-966da017.js.map +0 -1
  1448. package/cjs/CheckboxSet-6865f4fd.js +0 -55
  1449. package/cjs/CheckboxSet-6865f4fd.js.map +0 -1
  1450. package/cjs/ColorPalette-b14114d8.js +0 -83
  1451. package/cjs/ColorPalette-b14114d8.js.map +0 -1
  1452. package/cjs/ColorPicker-8f0b6000.js +0 -25
  1453. package/cjs/ColorPicker-8f0b6000.js.map +0 -1
  1454. package/cjs/CompactLabelAssistance-e910bb56.js +0 -95
  1455. package/cjs/CompactLabelAssistance-e910bb56.js.map +0 -1
  1456. package/cjs/DatePicker-b60f8a7e.js +0 -601
  1457. package/cjs/DatePicker-b60f8a7e.js.map +0 -1
  1458. package/cjs/DatePickerHeader-1010204c.js +0 -48
  1459. package/cjs/DatePickerHeader-1010204c.js.map +0 -1
  1460. package/cjs/Dialog-8b65180c.js +0 -389
  1461. package/cjs/Dialog-8b65180c.js.map +0 -1
  1462. package/cjs/Dropdown-1ba432a8.js +0 -333
  1463. package/cjs/Dropdown-1ba432a8.js.map +0 -1
  1464. package/cjs/EmbeddedIconButton-cc159a01.js +0 -13
  1465. package/cjs/EmbeddedIconButton-cc159a01.js.map +0 -1
  1466. package/cjs/EnvironmentProvider-5f2435e6.js +0 -61
  1467. package/cjs/EnvironmentProvider-5f2435e6.js.map +0 -1
  1468. package/cjs/Flex-3a257bc3.js +0 -32
  1469. package/cjs/Flex-3a257bc3.js.map +0 -1
  1470. package/cjs/Floating-79cbe5ad.js +0 -467
  1471. package/cjs/Floating-79cbe5ad.js.map +0 -1
  1472. package/cjs/Grid-cef20569.js +0 -29
  1473. package/cjs/Grid-cef20569.js.map +0 -1
  1474. package/cjs/HighlightText-f4535f3d.js +0 -33
  1475. package/cjs/HighlightText-f4535f3d.js.map +0 -1
  1476. package/cjs/IconSwitchButton-9b0df2d6.js +0 -44
  1477. package/cjs/IconSwitchButton-9b0df2d6.js.map +0 -1
  1478. package/cjs/IconToggleButton-d2147159.js +0 -43
  1479. package/cjs/IconToggleButton-d2147159.js.map +0 -1
  1480. package/cjs/IconUserAssistance-89913ad1.js +0 -76
  1481. package/cjs/IconUserAssistance-89913ad1.js.map +0 -1
  1482. package/cjs/Layer-b60deb1b.js +0 -94
  1483. package/cjs/Layer-b60deb1b.js.map +0 -1
  1484. package/cjs/LayerHost-3cd73603.js +0 -46
  1485. package/cjs/LayerHost-3cd73603.js.map +0 -1
  1486. package/cjs/LayerManager-c535d963.js +0 -36
  1487. package/cjs/LayerManager-c535d963.js.map +0 -1
  1488. package/cjs/Link-cc34e4c1.js +0 -35
  1489. package/cjs/Link-cc34e4c1.js.map +0 -1
  1490. package/cjs/LiveRegion-62ce9ac7.js +0 -41
  1491. package/cjs/LiveRegion-62ce9ac7.js.map +0 -1
  1492. package/cjs/MaxLengthLiveRegion-0a6ba765.js +0 -28
  1493. package/cjs/MaxLengthLiveRegion-0a6ba765.js.map +0 -1
  1494. package/cjs/MessageLayer-8e6e3d98.js +0 -61
  1495. package/cjs/MessageLayer-8e6e3d98.js.map +0 -1
  1496. package/cjs/MonthView-a2661a58.js +0 -210
  1497. package/cjs/MonthView-a2661a58.js.map +0 -1
  1498. package/cjs/NavigationListItem-3b9eb0fb.js +0 -294
  1499. package/cjs/NavigationListItem-3b9eb0fb.js.map +0 -1
  1500. package/cjs/OverflowTabBarItem-abcd2327.js +0 -262
  1501. package/cjs/OverflowTabBarItem-abcd2327.js.map +0 -1
  1502. package/cjs/Popup-de16d915.js +0 -300
  1503. package/cjs/Popup-de16d915.js.map +0 -1
  1504. package/cjs/ProgressCircle-cac3c03a.js +0 -50
  1505. package/cjs/ProgressCircle-cac3c03a.js.map +0 -1
  1506. package/cjs/ReferenceLineArea-7bc34276.js +0 -592
  1507. package/cjs/ReferenceLineArea-7bc34276.js.map +0 -1
  1508. package/cjs/RevealToggleIcon-a6a4f8db.js +0 -28
  1509. package/cjs/RevealToggleIcon-a6a4f8db.js.map +0 -1
  1510. package/cjs/SectionedContent-5eff5dce.js +0 -68
  1511. package/cjs/SectionedContent-5eff5dce.js.map +0 -1
  1512. package/cjs/SelectMenuGroupContext-a349d259.js +0 -551
  1513. package/cjs/SelectMenuGroupContext-a349d259.js.map +0 -1
  1514. package/cjs/SelectMobileFieldInput-cbf57541.js +0 -248
  1515. package/cjs/SelectMobileFieldInput-cbf57541.js.map +0 -1
  1516. package/cjs/SelectorAll-9118eb07.js +0 -53
  1517. package/cjs/SelectorAll-9118eb07.js.map +0 -1
  1518. package/cjs/StyledDatePickerButton-becd2a7d.js +0 -33
  1519. package/cjs/StyledDatePickerButton-becd2a7d.js.map +0 -1
  1520. package/cjs/StyledLabelValueLayout-48da61b9.js +0 -22
  1521. package/cjs/StyledLabelValueLayout-48da61b9.js.map +0 -1
  1522. package/cjs/Submenu-8e92469f.js +0 -251
  1523. package/cjs/Submenu-8e92469f.js.map +0 -1
  1524. package/cjs/TabBar-4bc753a9.js +0 -73
  1525. package/cjs/TabBar-4bc753a9.js.map +0 -1
  1526. package/cjs/TabBarContextMenu-d9bf65c2.js +0 -102
  1527. package/cjs/TabBarContextMenu-d9bf65c2.js.map +0 -1
  1528. package/cjs/TabBarLinkItem-b0c4b100.js +0 -15
  1529. package/cjs/TabBarLinkItem-b0c4b100.js.map +0 -1
  1530. package/cjs/Table-a102e1ee.js +0 -4114
  1531. package/cjs/Table-a102e1ee.js.map +0 -1
  1532. package/cjs/ToggleButton-5ebfe20e.js +0 -30
  1533. package/cjs/ToggleButton-5ebfe20e.js.map +0 -1
  1534. package/cjs/ToggleButtonLabel-c8f36317.js +0 -73
  1535. package/cjs/ToggleButtonLabel-c8f36317.js.map +0 -1
  1536. package/cjs/TruncatingLink-867da10e.js +0 -58
  1537. package/cjs/TruncatingLink-867da10e.js.map +0 -1
  1538. package/cjs/View-ed116d78.js +0 -170
  1539. package/cjs/View-ed116d78.js.map +0 -1
  1540. package/cjs/VisStatusMessage-07e63c6e.js +0 -31
  1541. package/cjs/VisStatusMessage-07e63c6e.js.map +0 -1
  1542. package/cjs/VisTabularDatatip-abfef042.js +0 -26
  1543. package/cjs/VisTabularDatatip-abfef042.js.map +0 -1
  1544. package/cjs/WindowOverlay-85d999fa.js +0 -112
  1545. package/cjs/WindowOverlay-85d999fa.js.map +0 -1
  1546. package/cjs/YearsGridView-d0d4e8e1.js +0 -190
  1547. package/cjs/YearsGridView-d0d4e8e1.js.map +0 -1
  1548. package/cjs/popupUtils-1d123cbe.js +0 -31
  1549. package/cjs/popupUtils-1d123cbe.js.map +0 -1
  1550. package/cjs/tooltipUtils-2bc15136.js +0 -115
  1551. package/cjs/tooltipUtils-2bc15136.js.map +0 -1
  1552. package/cjs/useChartContextMenu-af989b4f.js +0 -125
  1553. package/cjs/useChartContextMenu-af989b4f.js.map +0 -1
  1554. package/cjs/useChartDatatip-1bceba5d.js +0 -341
  1555. package/cjs/useChartDatatip-1bceba5d.js.map +0 -1
  1556. package/cjs/useChartMarquee-ede5cae4.js +0 -306
  1557. package/cjs/useChartMarquee-ede5cae4.js.map +0 -1
  1558. package/cjs/useColorScheme-f8b1447d.js +0 -21
  1559. package/cjs/useColorScheme-f8b1447d.js.map +0 -1
  1560. package/cjs/useContextMenu-2500df06.js +0 -119
  1561. package/cjs/useContextMenu-2500df06.js.map +0 -1
  1562. package/cjs/useCssVars-8e83d496.js +0 -60
  1563. package/cjs/useCssVars-8e83d496.js.map +0 -1
  1564. package/cjs/useCurrentKey-1b9e3382.js +0 -85
  1565. package/cjs/useCurrentKey-1b9e3382.js.map +0 -1
  1566. package/cjs/useDatatip-b7b4f13f.js +0 -96
  1567. package/cjs/useDatatip-b7b4f13f.js.map +0 -1
  1568. package/cjs/useDensity-0b9fd9ca.js +0 -21
  1569. package/cjs/useDensity-0b9fd9ca.js.map +0 -1
  1570. package/cjs/useDisplayValue-4ace417c.js +0 -82
  1571. package/cjs/useDisplayValue-4ace417c.js.map +0 -1
  1572. package/cjs/useExpandCollapse-ef990199.js +0 -72
  1573. package/cjs/useExpandCollapse-ef990199.js.map +0 -1
  1574. package/cjs/useFloating-c753a7f9.js +0 -1926
  1575. package/cjs/useFloating-c753a7f9.js.map +0 -1
  1576. package/cjs/useHiddenTestMethod-eae1d48b.js +0 -30
  1577. package/cjs/useHiddenTestMethod-eae1d48b.js.map +0 -1
  1578. package/cjs/useKeyboardEvents-0ab70381.js +0 -88
  1579. package/cjs/useKeyboardEvents-0ab70381.js.map +0 -1
  1580. package/cjs/useLegendContextMenu-2cf579d7.js +0 -285
  1581. package/cjs/useLegendContextMenu-2cf579d7.js.map +0 -1
  1582. package/cjs/useMeterDatatip-92ca91d9.js +0 -76
  1583. package/cjs/useMeterDatatip-92ca91d9.js.map +0 -1
  1584. package/cjs/useOutsideClick-dbf3d604.js +0 -117
  1585. package/cjs/useOutsideClick-dbf3d604.js.map +0 -1
  1586. package/cjs/useOutsideMousedown-70f36cca.js +0 -50
  1587. package/cjs/useOutsideMousedown-70f36cca.js.map +0 -1
  1588. package/cjs/usePopupAnimation-f3b34413.js +0 -87
  1589. package/cjs/usePopupAnimation-f3b34413.js.map +0 -1
  1590. package/cjs/usePrefixSuffix-23d1cc33.js +0 -72
  1591. package/cjs/usePrefixSuffix-23d1cc33.js.map +0 -1
  1592. package/cjs/useRadioFocusManager-a11750e7.js +0 -110
  1593. package/cjs/useRadioFocusManager-a11750e7.js.map +0 -1
  1594. package/cjs/useReorderableItem-64be8d2b.js +0 -299
  1595. package/cjs/useReorderableItem-64be8d2b.js.map +0 -1
  1596. package/cjs/useRovingTabIndexContainer-0ce4681d.js +0 -108
  1597. package/cjs/useRovingTabIndexContainer-0ce4681d.js.map +0 -1
  1598. package/cjs/useScale-db16c2b8.js +0 -21
  1599. package/cjs/useScale-db16c2b8.js.map +0 -1
  1600. package/cjs/useSelectCommon-27afecfa.js +0 -507
  1601. package/cjs/useSelectCommon-27afecfa.js.map +0 -1
  1602. package/cjs/useSelectDrill-0b4b47ec.js +0 -114
  1603. package/cjs/useSelectDrill-0b4b47ec.js.map +0 -1
  1604. package/cjs/useSelection-37939f09.js +0 -260
  1605. package/cjs/useSelection-37939f09.js.map +0 -1
  1606. package/cjs/useSelection-da64e28e.js +0 -188
  1607. package/cjs/useSelection-da64e28e.js.map +0 -1
  1608. package/cjs/useTabBar-35b73d10.js +0 -309
  1609. package/cjs/useTabBar-35b73d10.js.map +0 -1
  1610. package/cjs/useTestId-4f53d561.js +0 -23
  1611. package/cjs/useTestId-4f53d561.js.map +0 -1
  1612. package/cjs/useTextAreaAltEnter-11424062.js +0 -64
  1613. package/cjs/useTextAreaAltEnter-11424062.js.map +0 -1
  1614. package/cjs/useTheme-2a034a21.js +0 -21
  1615. package/cjs/useTheme-2a034a21.js.map +0 -1
  1616. package/cjs/useThemeInterpolations-a37b37d9.js +0 -71
  1617. package/cjs/useThemeInterpolations-a37b37d9.js.map +0 -1
  1618. package/cjs/useTooltip-34accecc.js +0 -51
  1619. package/cjs/useTooltip-34accecc.js.map +0 -1
  1620. package/cjs/useTooltipControlled-0a95856c.js +0 -376
  1621. package/cjs/useTooltipControlled-0a95856c.js.map +0 -1
  1622. package/cjs/useTooltipOnTruncation-8867b10e.js +0 -29
  1623. package/cjs/useTooltipOnTruncation-8867b10e.js.map +0 -1
  1624. package/cjs/useTranslationBundle-12dd087d.js +0 -31
  1625. package/cjs/useTranslationBundle-12dd087d.js.map +0 -1
  1626. package/cjs/useUser-1295b5cb.js +0 -21
  1627. package/cjs/useUser-1295b5cb.js.map +0 -1
  1628. package/cjs/useVisDragModeControls-2443a4e0.js +0 -89
  1629. package/cjs/useVisDragModeControls-2443a4e0.js.map +0 -1
  1630. package/cjs/useVisEvents-334c2c8d.js +0 -155
  1631. package/cjs/useVisEvents-334c2c8d.js.map +0 -1
  1632. package/cjs/withDirectionIcon-4940a248.js +0 -16
  1633. package/cjs/withDirectionIcon-4940a248.js.map +0 -1
  1634. package/es/BaseButton-41068c85.js +0 -84
  1635. package/es/BaseButton-41068c85.js.map +0 -1
  1636. package/es/BaseDiagram-b5b22e53.js +0 -2954
  1637. package/es/BaseDiagram-b5b22e53.js.map +0 -1
  1638. package/es/Button-956f51c7.js +0 -22
  1639. package/es/Button-956f51c7.js.map +0 -1
  1640. package/es/ButtonSetButton-8685c752.js +0 -33
  1641. package/es/ButtonSetButton-8685c752.js.map +0 -1
  1642. package/es/ButtonSetIconButton-c8ed85f9.js +0 -38
  1643. package/es/ButtonSetIconButton-c8ed85f9.js.map +0 -1
  1644. package/es/ButtonSetItem-280755f3.js +0 -65
  1645. package/es/ButtonSetItem-280755f3.js.map +0 -1
  1646. package/es/Center-71a03e65.js +0 -16
  1647. package/es/Center-71a03e65.js.map +0 -1
  1648. package/es/Chart-8c63da28.js +0 -752
  1649. package/es/Chart-8c63da28.js.map +0 -1
  1650. package/es/CheckboxSetContext-1be56556.js +0 -9
  1651. package/es/CheckboxSetContext-1be56556.js.map +0 -1
  1652. package/es/ColorPicker-fa103067.js +0 -23
  1653. package/es/ColorPicker-fa103067.js.map +0 -1
  1654. package/es/CompactLabelAssistance-e2fcfcab.js +0 -92
  1655. package/es/CompactLabelAssistance-e2fcfcab.js.map +0 -1
  1656. package/es/DatePicker-7287f0f9.js +0 -599
  1657. package/es/DatePicker-7287f0f9.js.map +0 -1
  1658. package/es/DatePickerHeader-f8cf86bb.js +0 -46
  1659. package/es/DatePickerHeader-f8cf86bb.js.map +0 -1
  1660. package/es/Dialog-83368f52.js +0 -387
  1661. package/es/Dialog-83368f52.js.map +0 -1
  1662. package/es/Dropdown-019aba37.js +0 -318
  1663. package/es/Dropdown-019aba37.js.map +0 -1
  1664. package/es/EmbeddedIconButton-46434710.js +0 -11
  1665. package/es/EmbeddedIconButton-46434710.js.map +0 -1
  1666. package/es/EnvironmentProvider-6a0a8212.js +0 -58
  1667. package/es/EnvironmentProvider-6a0a8212.js.map +0 -1
  1668. package/es/Flex-03129963.js +0 -30
  1669. package/es/Flex-03129963.js.map +0 -1
  1670. package/es/Floating-4a82db94.js +0 -465
  1671. package/es/Floating-4a82db94.js.map +0 -1
  1672. package/es/Grid-9e4b4f19.js +0 -27
  1673. package/es/Grid-9e4b4f19.js.map +0 -1
  1674. package/es/HighlightText-0205faef.js +0 -31
  1675. package/es/HighlightText-0205faef.js.map +0 -1
  1676. package/es/IconSwitchButton-05f1f602.js +0 -42
  1677. package/es/IconSwitchButton-05f1f602.js.map +0 -1
  1678. package/es/IconToggleButton-808818f5.js +0 -41
  1679. package/es/IconToggleButton-808818f5.js.map +0 -1
  1680. package/es/IconUserAssistance-61978211.js +0 -74
  1681. package/es/IconUserAssistance-61978211.js.map +0 -1
  1682. package/es/Layer-535577b5.js +0 -91
  1683. package/es/Layer-535577b5.js.map +0 -1
  1684. package/es/LayerHost-7931b424.js +0 -41
  1685. package/es/LayerHost-7931b424.js.map +0 -1
  1686. package/es/LayerManager-52a26c55.js +0 -34
  1687. package/es/LayerManager-52a26c55.js.map +0 -1
  1688. package/es/Link-8503aab2.js +0 -33
  1689. package/es/Link-8503aab2.js.map +0 -1
  1690. package/es/LiveRegion-cebac18d.js +0 -39
  1691. package/es/LiveRegion-cebac18d.js.map +0 -1
  1692. package/es/MaxLengthLiveRegion-8099fde5.js +0 -26
  1693. package/es/MaxLengthLiveRegion-8099fde5.js.map +0 -1
  1694. package/es/MessageLayer-2a7fdec7.js +0 -58
  1695. package/es/MessageLayer-2a7fdec7.js.map +0 -1
  1696. package/es/MonthView-4b2b483a.js +0 -208
  1697. package/es/MonthView-4b2b483a.js.map +0 -1
  1698. package/es/NavigationListItem-340ab770.js +0 -309
  1699. package/es/NavigationListItem-340ab770.js.map +0 -1
  1700. package/es/OverflowTabBarItem-aa0ce915.js +0 -257
  1701. package/es/OverflowTabBarItem-aa0ce915.js.map +0 -1
  1702. package/es/Popup-992b6c27.js +0 -298
  1703. package/es/Popup-992b6c27.js.map +0 -1
  1704. package/es/ProgressCircle-46084d0b.js +0 -48
  1705. package/es/ProgressCircle-46084d0b.js.map +0 -1
  1706. package/es/ReferenceLineArea-53129f72.js +0 -586
  1707. package/es/ReferenceLineArea-53129f72.js.map +0 -1
  1708. package/es/RevealToggleIcon-2d622d8f.js +0 -26
  1709. package/es/RevealToggleIcon-2d622d8f.js.map +0 -1
  1710. package/es/SectionedContent-30e5bf98.js +0 -65
  1711. package/es/SectionedContent-30e5bf98.js.map +0 -1
  1712. package/es/SelectMenuGroupContext-aa1fe822.js +0 -542
  1713. package/es/SelectMenuGroupContext-aa1fe822.js.map +0 -1
  1714. package/es/SelectMobileFieldInput-345c4d45.js +0 -241
  1715. package/es/SelectMobileFieldInput-345c4d45.js.map +0 -1
  1716. package/es/SelectorAll-de7ba2e1.js +0 -51
  1717. package/es/SelectorAll-de7ba2e1.js.map +0 -1
  1718. package/es/StyledDatePickerButton-78f2f6e8.js +0 -31
  1719. package/es/StyledDatePickerButton-78f2f6e8.js.map +0 -1
  1720. package/es/StyledLabelValueLayout-bb05f474.js +0 -18
  1721. package/es/StyledLabelValueLayout-bb05f474.js.map +0 -1
  1722. package/es/Submenu-cbd77756.js +0 -247
  1723. package/es/Submenu-cbd77756.js.map +0 -1
  1724. package/es/TabBar-10488830.js +0 -69
  1725. package/es/TabBar-10488830.js.map +0 -1
  1726. package/es/TabBarContextMenu-c3326d67.js +0 -99
  1727. package/es/TabBarContextMenu-c3326d67.js.map +0 -1
  1728. package/es/TabBarLinkItem-e7be54fa.js +0 -13
  1729. package/es/TabBarLinkItem-e7be54fa.js.map +0 -1
  1730. package/es/Table-2f197c6a.js +0 -4112
  1731. package/es/Table-2f197c6a.js.map +0 -1
  1732. package/es/ToggleButton-bb69cf10.js +0 -28
  1733. package/es/ToggleButton-bb69cf10.js.map +0 -1
  1734. package/es/ToggleButtonLabel-7f53fbee.js +0 -71
  1735. package/es/ToggleButtonLabel-7f53fbee.js.map +0 -1
  1736. package/es/TruncatingLink-298c6343.js +0 -56
  1737. package/es/TruncatingLink-298c6343.js.map +0 -1
  1738. package/es/View-5bdd9b3c.js +0 -167
  1739. package/es/View-5bdd9b3c.js.map +0 -1
  1740. package/es/VisStatusMessage-e2d629bb.js +0 -29
  1741. package/es/VisStatusMessage-e2d629bb.js.map +0 -1
  1742. package/es/VisTabularDatatip-85b00c1b.js +0 -24
  1743. package/es/VisTabularDatatip-85b00c1b.js.map +0 -1
  1744. package/es/WindowOverlay-7264c44a.js +0 -110
  1745. package/es/WindowOverlay-7264c44a.js.map +0 -1
  1746. package/es/YearsGridView-6c18094a.js +0 -187
  1747. package/es/YearsGridView-6c18094a.js.map +0 -1
  1748. package/es/popupUtils-51366a29.js +0 -29
  1749. package/es/popupUtils-51366a29.js.map +0 -1
  1750. package/es/tooltipUtils-af0abd38.js +0 -110
  1751. package/es/tooltipUtils-af0abd38.js.map +0 -1
  1752. package/es/useChartContextMenu-5de82cd7.js +0 -123
  1753. package/es/useChartContextMenu-5de82cd7.js.map +0 -1
  1754. package/es/useChartDatatip-8dd22b71.js +0 -336
  1755. package/es/useChartDatatip-8dd22b71.js.map +0 -1
  1756. package/es/useChartMarquee-761eb7db.js +0 -304
  1757. package/es/useChartMarquee-761eb7db.js.map +0 -1
  1758. package/es/useColorScheme-c4f6caab.js +0 -19
  1759. package/es/useColorScheme-c4f6caab.js.map +0 -1
  1760. package/es/useContextMenu-730d6c12.js +0 -116
  1761. package/es/useContextMenu-730d6c12.js.map +0 -1
  1762. package/es/useCssVars-bc2527ac.js +0 -58
  1763. package/es/useCssVars-bc2527ac.js.map +0 -1
  1764. package/es/useCurrentKey-5f865bbd.js +0 -83
  1765. package/es/useCurrentKey-5f865bbd.js.map +0 -1
  1766. package/es/useDatatip-4895a07a.js +0 -94
  1767. package/es/useDatatip-4895a07a.js.map +0 -1
  1768. package/es/useDensity-1acb0153.js +0 -19
  1769. package/es/useDensity-1acb0153.js.map +0 -1
  1770. package/es/useDisplayValue-65bbc74e.js +0 -78
  1771. package/es/useDisplayValue-65bbc74e.js.map +0 -1
  1772. package/es/useExpandCollapse-5739cfd2.js +0 -70
  1773. package/es/useExpandCollapse-5739cfd2.js.map +0 -1
  1774. package/es/useFloating-b9d680f7.js +0 -1916
  1775. package/es/useFloating-b9d680f7.js.map +0 -1
  1776. package/es/useHiddenTestMethod-f3f25093.js +0 -28
  1777. package/es/useHiddenTestMethod-f3f25093.js.map +0 -1
  1778. package/es/useKeyboardEvents-9aae7ea3.js +0 -85
  1779. package/es/useKeyboardEvents-9aae7ea3.js.map +0 -1
  1780. package/es/useLegendContextMenu-a678b26f.js +0 -279
  1781. package/es/useLegendContextMenu-a678b26f.js.map +0 -1
  1782. package/es/useMeterDatatip-538a4d53.js +0 -73
  1783. package/es/useMeterDatatip-538a4d53.js.map +0 -1
  1784. package/es/useOutsideClick-b777a43e.js +0 -115
  1785. package/es/useOutsideClick-b777a43e.js.map +0 -1
  1786. package/es/useOutsideMousedown-c45c22c0.js +0 -48
  1787. package/es/useOutsideMousedown-c45c22c0.js.map +0 -1
  1788. package/es/usePopupAnimation-96d2bc83.js +0 -85
  1789. package/es/usePopupAnimation-96d2bc83.js.map +0 -1
  1790. package/es/usePrefixSuffix-f981b65f.js +0 -70
  1791. package/es/usePrefixSuffix-f981b65f.js.map +0 -1
  1792. package/es/useRadioFocusManager-36eb283e.js +0 -108
  1793. package/es/useRadioFocusManager-36eb283e.js.map +0 -1
  1794. package/es/useReorderableItem-857636b7.js +0 -296
  1795. package/es/useReorderableItem-857636b7.js.map +0 -1
  1796. package/es/useRovingTabIndexContainer-5992e107.js +0 -106
  1797. package/es/useRovingTabIndexContainer-5992e107.js.map +0 -1
  1798. package/es/useScale-434ad939.js +0 -19
  1799. package/es/useScale-434ad939.js.map +0 -1
  1800. package/es/useSelectCommon-a3c69d60.js +0 -489
  1801. package/es/useSelectCommon-a3c69d60.js.map +0 -1
  1802. package/es/useSelectDrill-f669e729.js +0 -111
  1803. package/es/useSelectDrill-f669e729.js.map +0 -1
  1804. package/es/useSelection-65134722.js +0 -258
  1805. package/es/useSelection-65134722.js.map +0 -1
  1806. package/es/useSelection-82bec039.js +0 -186
  1807. package/es/useSelection-82bec039.js.map +0 -1
  1808. package/es/useTabBar-c5558e77.js +0 -305
  1809. package/es/useTabBar-c5558e77.js.map +0 -1
  1810. package/es/useTestId-f24ac480.js +0 -21
  1811. package/es/useTestId-f24ac480.js.map +0 -1
  1812. package/es/useTheme-0e7497db.js +0 -19
  1813. package/es/useTheme-0e7497db.js.map +0 -1
  1814. package/es/useThemeInterpolations-e144e8ec.js +0 -68
  1815. package/es/useThemeInterpolations-e144e8ec.js.map +0 -1
  1816. package/es/useTooltip-94af94d4.js +0 -49
  1817. package/es/useTooltip-94af94d4.js.map +0 -1
  1818. package/es/useTooltipControlled-f2cfa454.js +0 -373
  1819. package/es/useTooltipControlled-f2cfa454.js.map +0 -1
  1820. package/es/useTooltipOnTruncation-94282e75.js +0 -27
  1821. package/es/useTooltipOnTruncation-94282e75.js.map +0 -1
  1822. package/es/useTranslationBundle-4822502f.js +0 -29
  1823. package/es/useTranslationBundle-4822502f.js.map +0 -1
  1824. package/es/useUser-06d34d19.js +0 -19
  1825. package/es/useUser-06d34d19.js.map +0 -1
  1826. package/es/useVisDragModeControls-af64848c.js +0 -87
  1827. package/es/useVisDragModeControls-af64848c.js.map +0 -1
  1828. package/es/useVisEvents-256dee29.js +0 -153
  1829. package/es/useVisEvents-256dee29.js.map +0 -1
  1830. package/es/withDirectionIcon-a8d84a3d.js +0 -14
  1831. package/es/withDirectionIcon-a8d84a3d.js.map +0 -1
@@ -0,0 +1,2956 @@
1
+ /* @oracle/oraclejet-preact: undefined */
2
+ 'use strict';
3
+
4
+ var jsxRuntime = require('preact/jsx-runtime');
5
+ var TrackResizeContainer = require('./TrackResizeContainer-a8631f0d.js');
6
+ var PRIVATE_BaseDiagram_themes_DiagramStyles_css = require('./PRIVATE_BaseDiagram/themes/DiagramStyles.css.js');
7
+ var useResizeObserver = require('./useResizeObserver-a9e97180.js');
8
+ var hooks = require('preact/hooks');
9
+ var accUtils = require('./accUtils-4a359187.js');
10
+ var keys = require('./keys-25710458.js');
11
+ var classNames = require('./classNames-c14c6ef3.js');
12
+ var useTranslationBundle = require('./useTranslationBundle-990e7928.js');
13
+ var useUser = require('./useUser-cc045b3e.js');
14
+ var EmbeddedIconButton = require('./EmbeddedIconButton-f2e69758.js');
15
+ var Plus = require('./Plus-87f2ea14.js');
16
+ var Minus = require('./Minus-a7def860.js');
17
+ var layoutUtils = require('./layoutUtils-af53a104.js');
18
+ var useVisHover = require('./useVisHover-ad36112d.js');
19
+ var mergeProps = require('./mergeProps-e3da7237.js');
20
+ var useDatatip = require('./useDatatip-3462cc49.js');
21
+ var useTextDimensions = require('./useTextDimensions-c8b41697.js');
22
+ var clientUtils = require('./clientUtils-a4619fcd.js');
23
+ var useVisDragModeControls = require('./useVisDragModeControls-737aa2dd.js');
24
+ var useSelection = require('./useSelection-0b3dd2cf.js');
25
+ var useVisTouchResponse = require('./useVisTouchResponse-376e11d5.js');
26
+ var stringUtils = require('./stringUtils-3e19c8af.js');
27
+ var useContextMenu = require('./useContextMenu-c02f8dee.js');
28
+ require('./SelectMenuGroupContext-002c9144.js');
29
+ require('preact');
30
+ require('./logger-2b636482.js');
31
+ require('./LayerHost-21391a0d.js');
32
+ require('preact/compat');
33
+
34
+
35
+ require('./hooks/UNSAFE_useTooltip/themes/redwood/TooltipContentVariants.css.js');
36
+ require('./tooltipUtils-c554343d.js');
37
+
38
+ require('./UNSAFE_Menu/themes/MenuItemStyles.css.js');
39
+ require('./UNSAFE_Separator/themes/SeparatorStyles.css.js');
40
+
41
+
42
+ require('./UNSAFE_Menu/themes/redwood/MenuSeparatorVariants.css.js');
43
+
44
+
45
+ /**
46
+ * Constructs the json object to be passed into the layout function
47
+ */
48
+ function constructLayoutJSON(nodeItems, linkItems, promotedLinks, dimensions, width, height, zoom, nodeIdToParentMap, rootRef, getTextDimensions) {
49
+ const labelDims = new Map();
50
+ const nodeValues = Array.from(nodeItems.values());
51
+ const linkValues = Array.from(linkItems.values());
52
+ if (getTextDimensions) {
53
+ getLabelProps(nodeValues, linkValues, labelDims, getTextDimensions);
54
+ }
55
+ const linkKeys = Array.from(linkItems.keys());
56
+ for (const id of linkKeys) {
57
+ const item = linkItems.get(id);
58
+ if (item && getTextDimensions && item.label) {
59
+ const label = item.label;
60
+ const fontProps = _getFontProps(item.labelStyle);
61
+ labelDims.set(id, getTextDimensions(label, fontProps));
62
+ }
63
+ }
64
+ const getLabelDimensions = function (data) {
65
+ return labelDims.get(data.id);
66
+ };
67
+ const getNodeDimensions = function (data) {
68
+ return dimensions.get(data.id);
69
+ };
70
+ const getRelativeNodeBounds = function (id, containerId) {
71
+ const absPos = getAbsoluteNodePosition(id, containerId, rootRef);
72
+ if (absPos) {
73
+ return {
74
+ x: absPos.x / zoom,
75
+ y: absPos.y / zoom,
76
+ width: absPos.width / zoom,
77
+ height: absPos.height / zoom
78
+ };
79
+ }
80
+ else {
81
+ return undefined;
82
+ }
83
+ };
84
+ const getContainerId = function (startNode, endNode) {
85
+ return getCommonAncestorId(startNode, endNode, nodeIdToParentMap);
86
+ };
87
+ const getPromotedLinks = function () {
88
+ return promotedLinks;
89
+ };
90
+ return {
91
+ layoutJSON: {
92
+ getNodeDimensions: getNodeDimensions,
93
+ getLabelDimensions: getLabelDimensions,
94
+ getContainerId,
95
+ getRelativeNodeBounds,
96
+ getPromotedLinks,
97
+ componentSize: {
98
+ width: width,
99
+ height: height
100
+ }
101
+ },
102
+ labelDims: labelDims
103
+ };
104
+ }
105
+ function normalizeBounds(bounds, zoom) {
106
+ return {
107
+ x: bounds.x / zoom,
108
+ y: bounds.y / zoom,
109
+ width: bounds.width / zoom,
110
+ height: bounds.height / zoom
111
+ };
112
+ }
113
+ function getAbsoluteLinkBounds(itemId, referenceId, bounds, zoom, rootRef, isPromoted) {
114
+ if (rootRef && rootRef.current) {
115
+ let linkElement;
116
+ if (isPromoted) {
117
+ const id = `${itemId.startNode}_${itemId.endNode}`;
118
+ linkElement = rootRef.current.querySelector(`[data-oj-private-promoted-link=${id}]`);
119
+ }
120
+ else {
121
+ linkElement = rootRef.current.querySelector(`[data-oj-private-link=${itemId}]`);
122
+ }
123
+ let nodeContainer;
124
+ if (referenceId) {
125
+ nodeContainer = rootRef.current.querySelector(`[data-oj-private-node=${referenceId}]`);
126
+ }
127
+ const dims = bounds.get(itemId);
128
+ if (linkElement && nodeContainer && dims) {
129
+ const linkBoundingRect = normalizeBounds(linkElement.getBoundingClientRect(), zoom);
130
+ const diagramBoundingRect = normalizeBounds(nodeContainer.getBoundingClientRect(), zoom);
131
+ return {
132
+ x: linkBoundingRect.x - diagramBoundingRect.x,
133
+ y: linkBoundingRect.y - diagramBoundingRect.y,
134
+ width: dims.width,
135
+ height: dims.height
136
+ };
137
+ }
138
+ }
139
+ return null;
140
+ }
141
+ function getBounds(nodes, links, promotedLinks, nodeBounds, linkDimensions, promotedLinkDimensions, zoom, rootRef) {
142
+ let minX = Infinity;
143
+ let minY = Infinity;
144
+ let maxX = -Infinity;
145
+ let maxY = -Infinity;
146
+ let id;
147
+ let topId;
148
+ let leftId;
149
+ for (let i = 0; i < nodes.length; i++) {
150
+ id = nodes[i].id;
151
+ const bounds = nodeBounds.get(id);
152
+ if (bounds) {
153
+ if (minX > bounds.x) {
154
+ minX = bounds.x;
155
+ leftId = id;
156
+ }
157
+ if (minY > bounds.y) {
158
+ minY = bounds.y;
159
+ topId = id;
160
+ }
161
+ if (maxX < bounds.x + bounds.width) {
162
+ maxX = bounds.x + bounds.width;
163
+ }
164
+ if (maxY < bounds.y + bounds.height) {
165
+ maxY = bounds.y + bounds.height;
166
+ }
167
+ }
168
+ }
169
+ const nodeMinX = minX;
170
+ const nodeMinY = minY;
171
+ let linkMinX = 0;
172
+ let linkMinY = 0;
173
+ let linkMaxX = maxX - minX;
174
+ let linkMaxY = maxY - minY;
175
+ for (let i = 0; i < links.length; i++) {
176
+ id = links[i].id;
177
+ //Top and left bounds are relative to the current most top and left nodes
178
+ const topBounds = getAbsoluteLinkBounds(id, topId, linkDimensions, zoom, rootRef);
179
+ const leftBounds = getAbsoluteLinkBounds(id, leftId, linkDimensions, zoom, rootRef);
180
+ if (leftBounds) {
181
+ if (leftBounds.x < linkMinX) {
182
+ linkMinX = leftBounds.x;
183
+ }
184
+ if (linkMaxX < leftBounds.x + leftBounds.width) {
185
+ linkMaxX = leftBounds.x + leftBounds.width;
186
+ }
187
+ }
188
+ if (topBounds) {
189
+ if (topBounds.y < linkMinY) {
190
+ linkMinY = topBounds.y;
191
+ }
192
+ if (linkMaxY < topBounds.y + topBounds.height) {
193
+ linkMaxY = topBounds.y + topBounds.height;
194
+ }
195
+ }
196
+ }
197
+ for (let i = 0; i < promotedLinks.length; i++) {
198
+ id = promotedLinks[i];
199
+ //Top and left bounds are relative to the current most top and left nodes
200
+ const topBounds = getAbsoluteLinkBounds(id, topId, promotedLinkDimensions, zoom, rootRef, true);
201
+ const leftBounds = getAbsoluteLinkBounds(id, leftId, promotedLinkDimensions, zoom, rootRef, true);
202
+ if (leftBounds) {
203
+ if (leftBounds.x < linkMinX) {
204
+ linkMinX = leftBounds.x;
205
+ }
206
+ if (linkMaxX < leftBounds.x + leftBounds.width) {
207
+ linkMaxX = leftBounds.x + leftBounds.width;
208
+ }
209
+ }
210
+ if (topBounds) {
211
+ if (topBounds.y < linkMinY) {
212
+ linkMinY = topBounds.y;
213
+ }
214
+ if (linkMaxY < topBounds.y + topBounds.height) {
215
+ linkMaxY = topBounds.y + topBounds.height;
216
+ }
217
+ }
218
+ }
219
+ return {
220
+ minX: nodeMinX,
221
+ minY: nodeMinY,
222
+ contentWidth: maxX - minX,
223
+ contentHeight: maxY - minY,
224
+ bounds: { x: linkMinX, y: linkMinY, width: linkMaxX - linkMinX, height: linkMaxY - linkMinY }
225
+ };
226
+ }
227
+ function getAbsoluteNodePosition(nodeId, containerId, rootRef) {
228
+ if (rootRef && rootRef.current) {
229
+ const nodeElement = rootRef.current.querySelector(`[data-oj-private-node=${nodeId}]`);
230
+ let nodeContainer;
231
+ if (containerId) {
232
+ nodeContainer = rootRef.current.querySelector(`[data-oj-private-child=${containerId}]`);
233
+ }
234
+ else {
235
+ nodeContainer = rootRef.current.querySelector('[data-oj-private-node-container]');
236
+ }
237
+ if (nodeElement && nodeContainer) {
238
+ const nodeBoundingRect = nodeElement.getBoundingClientRect();
239
+ const nodeContainerRect = nodeContainer.getBoundingClientRect();
240
+ return {
241
+ x: nodeBoundingRect.x - nodeContainerRect.x,
242
+ y: nodeBoundingRect.y - nodeContainerRect.y,
243
+ width: nodeBoundingRect.width,
244
+ height: nodeBoundingRect.height
245
+ };
246
+ }
247
+ }
248
+ return null;
249
+ }
250
+ function getLabelProps(nodeItems, linkItems, labelDims, getTextDimensions) {
251
+ nodeItems.forEach((value) => {
252
+ if (value.nodes) {
253
+ getNodeLabelProps(value.nodes, labelDims, getTextDimensions);
254
+ }
255
+ if (value.label) {
256
+ const label = value.label;
257
+ const fontProps = _getFontProps(value.labelStyle);
258
+ labelDims.set(value.id, getTextDimensions(label, fontProps));
259
+ }
260
+ });
261
+ linkItems.forEach((value) => {
262
+ if (value.label) {
263
+ const label = value.label;
264
+ const fontProps = _getFontProps(value.labelStyle);
265
+ labelDims.set(value.id, getTextDimensions(label, fontProps));
266
+ }
267
+ });
268
+ }
269
+ function getNodeLabelProps(nodeItems, labelDims, getTextDimensions) {
270
+ nodeItems.forEach((value) => {
271
+ if (value.nodes) {
272
+ getNodeLabelProps(value.nodes, labelDims, getTextDimensions);
273
+ }
274
+ if (value.label) {
275
+ const label = value.label;
276
+ const fontProps = _getFontProps(value.labelStyle);
277
+ labelDims.set(value.id, getTextDimensions(label, fontProps));
278
+ }
279
+ });
280
+ }
281
+ /**
282
+ * Deconstructs the output of the layout function
283
+ */
284
+ function deconstructLayoutJSON(layoutJSON, nodeData, linkData) {
285
+ const positions = new Map();
286
+ const nodeLabelPos = new Map();
287
+ const linkLabelPos = new Map();
288
+ findPoints(layoutJSON, nodeData, positions, nodeLabelPos);
289
+ const links = layoutJSON.links;
290
+ let link;
291
+ if (links) {
292
+ for (let i = 0; i < linkData.length; i++) {
293
+ link = links[linkData[i].id];
294
+ if (link && link.label)
295
+ linkLabelPos.set(linkData[i].id, link.label);
296
+ }
297
+ }
298
+ return {
299
+ nodePoints: positions,
300
+ nodeLabelPos: nodeLabelPos,
301
+ linkLabelPos: linkLabelPos
302
+ };
303
+ }
304
+ function findPoints(output, nodeData, positions, nodeLabelPos) {
305
+ const nodes = output.nodes;
306
+ let node;
307
+ if (nodes) {
308
+ for (let i = 0; i < nodeData.length; i++) {
309
+ const data = nodeData[i];
310
+ const id = data.id;
311
+ if (data.nodes) {
312
+ findPoints(output, data.nodes, positions, nodeLabelPos);
313
+ }
314
+ node = nodes[id];
315
+ if (node) {
316
+ positions.set(id, node.position);
317
+ if (node.label) {
318
+ nodeLabelPos.set(id, node.label);
319
+ }
320
+ }
321
+ }
322
+ }
323
+ }
324
+ /**
325
+ * Merges the node points into the dimensions
326
+ */
327
+ function mergeDimensions(dimensions, nodePoints, rootRef) {
328
+ const nodeBounds = new Map();
329
+ const nodeAbsBounds = new Map();
330
+ dimensions.forEach((value, key) => {
331
+ const point = nodePoints.get(key);
332
+ const absPoint = getAbsoluteNodePosition(key, undefined, rootRef);
333
+ if (point) {
334
+ nodeBounds.set(key, { x: point.x, y: point.y, width: value.width, height: value.height });
335
+ }
336
+ if (absPoint) {
337
+ nodeAbsBounds.set(key, { x: absPoint.x, y: absPoint.y, width: value.width, height: value.height });
338
+ }
339
+ });
340
+ return { nodeBounds, nodeAbsBounds };
341
+ }
342
+ /**
343
+ * Deep equality check for whether two arrays of bounds are the same
344
+ */
345
+ function isEqualBounds(bounds1, bounds2) {
346
+ if (bounds1.size !== bounds2.size)
347
+ return false;
348
+ let equal = true;
349
+ bounds1.forEach((value, key) => {
350
+ const b2Value = bounds2.get(key);
351
+ if (!b2Value)
352
+ equal = false;
353
+ else if (Math.abs(value.x - b2Value.x) > 0.5 ||
354
+ Math.abs(value.y - b2Value.y) > 0.5 ||
355
+ Math.abs(value.width - b2Value.width) > 0.5 ||
356
+ Math.abs(value.height - b2Value.height) > 0.5)
357
+ equal = false;
358
+ });
359
+ return equal;
360
+ }
361
+ /**
362
+ * Returns the text for the diagram datatip.
363
+ */
364
+ function getDatatipContent(nodesMap, linksMap, focusedItem, hoveredItem, datatip) {
365
+ let itemInfo;
366
+ const isPointerActive = hoveredItem?.isCurrent;
367
+ if (isPointerActive && hoveredItem.id != null) {
368
+ itemInfo = hoveredItem;
369
+ }
370
+ if (focusedItem && focusedItem.isCurrent) {
371
+ itemInfo = focusedItem;
372
+ }
373
+ if (itemInfo && datatip) {
374
+ let context;
375
+ switch (itemInfo.type) {
376
+ case 'node': {
377
+ context = { data: nodesMap.get(itemInfo.id), type: 'node' };
378
+ break;
379
+ }
380
+ case 'link': {
381
+ context = { data: linksMap.get(itemInfo.id), type: 'link' };
382
+ break;
383
+ }
384
+ default: {
385
+ context = { id: itemInfo.id, type: 'promotedLink' };
386
+ }
387
+ }
388
+ return datatip(context);
389
+ }
390
+ if (itemInfo) {
391
+ const text = (itemInfo.type === 'node' ? nodesMap.get(itemInfo.id) : linksMap.get(itemInfo.id))?.accessibleLabel;
392
+ return {
393
+ content: text
394
+ };
395
+ }
396
+ return;
397
+ }
398
+ /**
399
+ * Creates a map with key id and value node or link data
400
+ */
401
+ function createLinksMap(items) {
402
+ const itemIdToDataMap = new Map();
403
+ const itemIdToIndexMap = new Map();
404
+ const itemIndexToIdMap = new Map();
405
+ const itemIdToParentMap = new Map();
406
+ for (let i = 0; i < items.length; i++) {
407
+ const item = items[i];
408
+ itemIdToDataMap.set(item.id, item);
409
+ itemIdToIndexMap.set(item.id, i);
410
+ itemIndexToIdMap.set(i, item.id);
411
+ }
412
+ return {
413
+ itemIdToDataMap,
414
+ itemIdToIndexMap,
415
+ itemIndexToIdMap,
416
+ itemIdToParentMap
417
+ };
418
+ }
419
+ /**
420
+ * Creates a map with key id and value node or link data
421
+ */
422
+ function createPromotedLinksMap(items) {
423
+ const promotedLinkMap = new Map();
424
+ for (let i = 0; i < items.length; i++) {
425
+ const item = items[i];
426
+ promotedLinkMap.set(`${item.startNode}_${item.endNode}`, item);
427
+ }
428
+ return promotedLinkMap;
429
+ }
430
+ /**
431
+ * Creates a map with key id and value node or link data
432
+ */
433
+ function createNodesMap(items, expanded) {
434
+ const itemIdToDataMap = new Map();
435
+ const itemIdToIndexMap = new Map();
436
+ const itemIndexToIdMap = new Map();
437
+ const itemIdToParentMap = new Map();
438
+ const allContainerNodes = [];
439
+ const allVisibleNodes = [];
440
+ for (let i = 0; i < items.length; i++) {
441
+ const item = items[i];
442
+ const index = String(i);
443
+ itemIdToDataMap.set(item.id, item);
444
+ itemIdToIndexMap.set(item.id, index);
445
+ itemIndexToIdMap.set(index, item.id);
446
+ allVisibleNodes.push(item.id);
447
+ if (item.nodes) {
448
+ allContainerNodes.push(item);
449
+ if (keys.containsKey(expanded, item.id)) {
450
+ _createItemMap(item.nodes, itemIdToDataMap, itemIdToIndexMap, itemIndexToIdMap, itemIdToParentMap, allContainerNodes, expanded, allVisibleNodes, item.id, String(i));
451
+ }
452
+ }
453
+ }
454
+ return {
455
+ itemIdToDataMap,
456
+ itemIdToIndexMap,
457
+ itemIndexToIdMap,
458
+ itemIdToParentMap,
459
+ allContainerNodes,
460
+ allVisibleNodes
461
+ };
462
+ }
463
+ function _createItemMap(items, itemIdToDataMap, itemIdToIndexMap, itemIndexToIdMap, itemIdToParentMap, allContainerNodes, expanded, allVisibleNodes, parentId, parentIndex) {
464
+ for (let i = 0; i < items.length; i++) {
465
+ const item = items[i];
466
+ const index = `${parentIndex}_${i}`;
467
+ itemIdToDataMap.set(item.id, item);
468
+ itemIdToIndexMap.set(item.id, index);
469
+ itemIndexToIdMap.set(index, item.id);
470
+ itemIdToParentMap.set(item.id, parentId);
471
+ allVisibleNodes.push(item.id);
472
+ if (item.nodes) {
473
+ allContainerNodes.push(item);
474
+ if (keys.containsKey(expanded, item.id)) {
475
+ _createItemMap(item.nodes, itemIdToDataMap, itemIdToIndexMap, itemIndexToIdMap, itemIdToParentMap, allContainerNodes, expanded, allVisibleNodes, item.id, index);
476
+ }
477
+ }
478
+ }
479
+ }
480
+ /**
481
+ * Filter out links with no start or end nodes
482
+ */
483
+ function filterLinksWithNoStartOrEndNodes(links, nodesMap) {
484
+ const newLinks = [];
485
+ for (let i = 0; i < links.length; i++) {
486
+ const link = links[i];
487
+ if (nodesMap.get(link.startNode) && nodesMap.get(link.endNode)) {
488
+ newLinks.push(link);
489
+ }
490
+ }
491
+ return newLinks;
492
+ }
493
+ /**
494
+ * Pulls out the dimensions from an array of bounds
495
+ */
496
+ function getDimensionsFromBounds(bounds) {
497
+ const dims = new Map();
498
+ bounds.forEach((value, key) => {
499
+ dims.set(key, { width: value.width, height: value.height });
500
+ });
501
+ return dims;
502
+ }
503
+ /**
504
+ * Returns the center position of the node or link
505
+ * For links, draws a straight line between the centers of the start/end node
506
+ * and returns the center of that line
507
+ */
508
+ function getFocusedItemBounds(focusedItemInfo, bounds, links, linkIdToIndexMap, rootRef) {
509
+ if (focusedItemInfo.type === 'node') {
510
+ // Return the first element if cannot find the Node index
511
+ const position = getAbsoluteNodePosition(focusedItemInfo.id, undefined, rootRef);
512
+ const nodeBounds = bounds.get(focusedItemInfo.id) || bounds.values().next().value;
513
+ return {
514
+ x: position ? position.x : nodeBounds.x,
515
+ y: position ? position.y : nodeBounds.y,
516
+ width: nodeBounds.width,
517
+ height: nodeBounds.height
518
+ };
519
+ }
520
+ else {
521
+ // Center of a straight line between start/end node centers
522
+ const link = focusedItemInfo.type === 'promotedLink'
523
+ ? focusedItemInfo.id
524
+ : links[linkIdToIndexMap.get(focusedItemInfo.id) || 0];
525
+ const startNB = bounds.get(link.startNode) || bounds.values().next().value;
526
+ const endNB = bounds.get(link.endNode) || bounds.values().next().value;
527
+ const startNCenter = {
528
+ x: startNB.x + startNB.width / 2,
529
+ y: startNB.y + startNB.height / 2
530
+ };
531
+ const endNCenter = { x: endNB.x + endNB.width / 2, y: endNB.y + endNB.height / 2 };
532
+ const minX = Math.min(startNCenter.x, endNCenter.x);
533
+ const minY = Math.min(startNCenter.y, endNCenter.y);
534
+ return {
535
+ x: minX,
536
+ y: minY,
537
+ width: Math.abs(startNCenter.x - endNCenter.x),
538
+ height: Math.abs(startNCenter.y - endNCenter.y)
539
+ };
540
+ }
541
+ }
542
+ /**
543
+ * Returns the bounds of the diagram content
544
+ */
545
+ function getContentBounds(nodeBounds, labelBounds) {
546
+ if (nodeBounds.size === 0)
547
+ return { x: 0, width: Infinity, y: 0, height: Infinity };
548
+ let minX = Infinity;
549
+ let minY = Infinity;
550
+ let maxX = -Infinity;
551
+ let maxY = -Infinity;
552
+ let dims;
553
+ nodeBounds.forEach((value) => {
554
+ dims = value;
555
+ minX = dims.x < minX ? dims.x : minX;
556
+ minY = dims.y < minY ? dims.y : minY;
557
+ maxX = dims.x + dims.width > maxX ? dims.x + dims.width : maxX;
558
+ maxY = dims.y + dims.height > maxY ? dims.y + dims.height : maxY;
559
+ });
560
+ if (labelBounds) {
561
+ minX = labelBounds.x < minX ? labelBounds.x : minX;
562
+ minY = labelBounds.y < minY ? labelBounds.y : minY;
563
+ maxX = labelBounds.x + labelBounds.width > maxX ? labelBounds.x + labelBounds.width : maxX;
564
+ maxY = labelBounds.y + labelBounds.height > maxY ? labelBounds.y + labelBounds.height : maxY;
565
+ }
566
+ return { x: minX, width: maxX - minX, y: minY, height: maxY - minY };
567
+ }
568
+ /**
569
+ * Returns the label bounds
570
+ */
571
+ function getAllLabelBounds(labelDims, nodeLabelPos = new Map(), linkLabelPos = new Map(), isRTL, rootRef) {
572
+ if (nodeLabelPos.size === 0)
573
+ return undefined;
574
+ let minX = Infinity;
575
+ let minY = Infinity;
576
+ let maxX = -Infinity;
577
+ let maxY = -Infinity;
578
+ let dims;
579
+ let nodeBound;
580
+ nodeLabelPos.forEach((value, key) => {
581
+ dims = getLabelBounds(value, labelDims.get(key), isRTL);
582
+ nodeBound = getAbsoluteNodePosition(key, null, rootRef);
583
+ if (nodeBound) {
584
+ minX = dims.x + nodeBound.x < minX ? dims.x + nodeBound.x : minX;
585
+ minY = dims.y + nodeBound.y < minY ? dims.y + nodeBound.y : minY;
586
+ maxX = dims.x + dims.width + nodeBound.x > maxX ? dims.x + dims.width + nodeBound.x : maxX;
587
+ maxY = dims.y + dims.height + nodeBound.y > maxY ? dims.y + dims.height + nodeBound.y : maxY;
588
+ }
589
+ });
590
+ linkLabelPos.forEach((value, key) => {
591
+ dims = getLabelBounds(value, labelDims.get(key), isRTL);
592
+ if (dims) {
593
+ minX = dims.x < minX ? dims.x : minX;
594
+ minY = dims.y < minY ? dims.y : minY;
595
+ maxX = dims.x + dims.width > maxX ? dims.x + dims.width : maxX;
596
+ maxY = dims.y + dims.height > maxY ? dims.y + dims.height : maxY;
597
+ }
598
+ });
599
+ return { x: minX, width: maxX - minX, y: minY, height: maxY - minY };
600
+ }
601
+ function getLabelBounds(label, dims, isRTL) {
602
+ const labelPos = getLabelPosition(dims, label, isRTL);
603
+ const isRotating = label.rotationAngle;
604
+ if (!isRotating) {
605
+ return { x: labelPos.x, y: labelPos.y, width: dims.width, height: dims.height };
606
+ }
607
+ else {
608
+ // Find the 4 corners of the label bounds relative to the rotation point
609
+ const rotationPoint = label.rotationPoint
610
+ ? label.rotationPoint
611
+ : { x: dims.width / 2, y: dims.height / 2 };
612
+ const angle = label.rotationAngle;
613
+ const topLeft = getCoordsRelToRotPoint({ x: 0, y: 0 }, rotationPoint);
614
+ const topRight = getCoordsRelToRotPoint({ x: dims.width, y: 0 }, rotationPoint);
615
+ const bottomLeft = getCoordsRelToRotPoint({ x: 0, y: dims.height }, rotationPoint);
616
+ const bottomRight = getCoordsRelToRotPoint({ x: dims.width, y: dims.height }, rotationPoint);
617
+ const rotTopLeft = rotatePoint(topLeft, angle);
618
+ const rotBotLeft = rotatePoint(bottomLeft, angle);
619
+ const rotTopRight = rotatePoint(topRight, angle);
620
+ const rotBotRight = rotatePoint(bottomRight, angle);
621
+ const points = [rotTopLeft, rotBotLeft, rotTopRight, rotBotRight].map((pos) => {
622
+ return {
623
+ x: pos.x + labelPos.x + rotationPoint.x,
624
+ y: pos.y + labelPos.y + rotationPoint.y
625
+ };
626
+ });
627
+ return getBoundsFromPoints(points);
628
+ }
629
+ }
630
+ function getCoordsRelToRotPoint(labelPoint, rotPoint) {
631
+ return { x: labelPoint.x - rotPoint.x, y: labelPoint.y - rotPoint.y };
632
+ }
633
+ function rotatePoint(pos, angle) {
634
+ return {
635
+ x: pos.x * Math.cos(angle) - pos.y * Math.sin(angle),
636
+ y: pos.x * Math.sin(angle) + pos.y * Math.cos(angle)
637
+ };
638
+ }
639
+ function getBoundsFromPoints(points) {
640
+ let minX = points[0].x;
641
+ let minY = points[0].y;
642
+ let maxX = points[0].x;
643
+ let maxY = points[0].y;
644
+ for (let i = 1; i < points.length; i++) {
645
+ const point = points[i];
646
+ if (point.x < minX)
647
+ minX = point.x;
648
+ else if (point.x > maxX)
649
+ maxX = point.x;
650
+ if (point.y < minY)
651
+ minY = point.y;
652
+ else if (point.y > maxY)
653
+ maxY = point.y;
654
+ }
655
+ return {
656
+ x: minX,
657
+ y: minY,
658
+ width: maxX - minX,
659
+ height: maxY - minY
660
+ };
661
+ }
662
+ /**
663
+ * Returns the position of the label
664
+ * @param dimensions
665
+ * @param positionProps
666
+ * @returns position of the label
667
+ */
668
+ function getLabelPosition(dimensions, positionProps, isRTL) {
669
+ const position = positionProps.position;
670
+ const hAlign = positionProps.hAlign ? positionProps.hAlign : isRTL ? 'right' : 'left';
671
+ const vAlign = positionProps.vAlign;
672
+ let x, y;
673
+ if (hAlign === 'center') {
674
+ x = position.x - dimensions.width / 2;
675
+ }
676
+ else if (hAlign === 'right') {
677
+ x = position.x - dimensions.width;
678
+ }
679
+ else {
680
+ x = position.x;
681
+ }
682
+ if (vAlign === 'middle') {
683
+ y = position.y - dimensions.height / 2;
684
+ }
685
+ else if (vAlign === 'bottom') {
686
+ y = position.y - dimensions.height;
687
+ }
688
+ else if (vAlign === 'baseline') {
689
+ y = position.y + dimensions.y;
690
+ }
691
+ else {
692
+ y = position.y;
693
+ }
694
+ return {
695
+ x: x,
696
+ y: y
697
+ };
698
+ }
699
+ /**
700
+ * Compares if two ItemInfo are equal
701
+ */
702
+ function isEqualItem(item1, item2) {
703
+ return item1?.id === item2?.id && item1?.type === item2?.type;
704
+ }
705
+ /**
706
+ * Returns the item info of the data-oj-node or data-oj-link attribute for a given element.
707
+ */
708
+ function getNavigableInfo(element, promotedLinkMap, rootElementRef) {
709
+ let type;
710
+ let elem = element;
711
+ let navigableId;
712
+ while (!navigableId) {
713
+ if (elem.dataset['ojPrivateNode']) {
714
+ type = 'node';
715
+ navigableId = elem.dataset['ojPrivateNode'];
716
+ }
717
+ else if (elem.dataset['ojPrivateLink']) {
718
+ navigableId = elem.dataset['ojPrivateLink'];
719
+ type = 'link';
720
+ }
721
+ else if (elem.dataset['ojPrivatePromotedLink']) {
722
+ navigableId = promotedLinkMap.get(elem.dataset['ojPrivatePromotedLink']);
723
+ type = 'promotedLink';
724
+ }
725
+ if (!navigableId) {
726
+ if (elem.parentElement && elem.parentElement !== rootElementRef?.current) {
727
+ elem = elem.parentElement;
728
+ }
729
+ else {
730
+ break;
731
+ }
732
+ }
733
+ }
734
+ return {
735
+ id: navigableId,
736
+ type: type
737
+ };
738
+ }
739
+ /**
740
+ * Returns the id of the node the expand collapse button belongs to
741
+ */
742
+ function expCollapseButtonId(element, rootElementRef) {
743
+ let elem = element;
744
+ let id;
745
+ while (!id) {
746
+ id = elem.dataset['ojPrivateButton'];
747
+ if (!id) {
748
+ if (elem.parentElement &&
749
+ !elem.parentElement.dataset['ojPrivateNode'] &&
750
+ elem.parentElement !== rootElementRef?.current) {
751
+ elem = elem.parentElement;
752
+ }
753
+ else {
754
+ break;
755
+ }
756
+ }
757
+ }
758
+ return id;
759
+ }
760
+ /**
761
+ * Returns the aria label
762
+ */
763
+ function getItemAriaLabel(translations, supportsSelection, states, accessibleLabel) {
764
+ return accUtils.generateAriaLabel(translations, accessibleLabel || '', {
765
+ isSelected: !supportsSelection ? undefined : states.isSelected,
766
+ isIndirect: states.isIndirect,
767
+ isExpanded: states.isExpanded,
768
+ isCollapsed: states.isCollapsed
769
+ });
770
+ }
771
+ /**
772
+ * Returns the font props for a node or link
773
+ */
774
+ function _getFontProps(styles) {
775
+ const fontProps = {};
776
+ if (!styles)
777
+ return fontProps;
778
+ if (styles.fontFamily)
779
+ fontProps.fontFamily = styles.fontFamily;
780
+ if (styles.fontSize)
781
+ fontProps.fontSize = styles.fontSize;
782
+ if (styles.fontStyle)
783
+ fontProps.fontStyle = styles.fontStyle;
784
+ if (styles.fontWeight)
785
+ fontProps.fontWeight = styles.fontWeight;
786
+ return fontProps;
787
+ }
788
+ /**
789
+ * Returns whether the node is a leaf node
790
+ */
791
+ function isLeafNode(nodeData) {
792
+ return !nodeData.nodes;
793
+ }
794
+ function isContainerReady(nodeData, nodeBounds, links, promotedLinks, linkDimensions, promotedLinkDimensions) {
795
+ const nodes = nodeData.nodes;
796
+ for (let i = 0; i < nodes?.length; i++) {
797
+ const child = nodes[i].id;
798
+ if (!nodeBounds.get(child)) {
799
+ return false;
800
+ }
801
+ }
802
+ for (let i = 0; i < links.length; i++) {
803
+ const link = links[i].id;
804
+ const linkDims = linkDimensions.get(link);
805
+ if (!linkDims || (linkDims.width === 0 && linkDims.height === 0)) {
806
+ return false;
807
+ }
808
+ }
809
+ for (let i = 0; i < promotedLinks.length; i++) {
810
+ const link = promotedLinks[i];
811
+ const linkDims = promotedLinkDimensions.get(getPromotedString(link));
812
+ if (!linkDims || (linkDims.width === 0 && linkDims.height === 0)) {
813
+ return false;
814
+ }
815
+ }
816
+ return true;
817
+ }
818
+ function getPromotedString(id) {
819
+ return `${id.startNode}_${id.endNode}`;
820
+ }
821
+ function comparePromotedLinks(link1, link2) {
822
+ return link1.startNode === link2.startNode && link1.endNode === link2.endNode;
823
+ }
824
+ function isPromoted(link) {
825
+ return !('id' in link);
826
+ }
827
+ function getCommonAncestorId(startId, endId, nodeIdToParentMap) {
828
+ const startAnc = _getAncestorIds(startId, nodeIdToParentMap);
829
+ const endAnc = _getAncestorIds(endId, nodeIdToParentMap);
830
+ for (let i = 0; i < startAnc.length; i++) {
831
+ if (endAnc.indexOf(startAnc[i]) > -1) {
832
+ return startAnc[i];
833
+ }
834
+ }
835
+ return undefined;
836
+ }
837
+ function getLinksForNode(containerId, links, promotedLinks, nodeIdToParentMap) {
838
+ // front links are in front of nodes
839
+ const frontLinks = [];
840
+ const backLinks = [];
841
+ for (let i = 0; i < links.length; i++) {
842
+ const link = links[i];
843
+ const ancId = getCommonAncestorId(link.startNode, link.endNode, nodeIdToParentMap);
844
+ if (ancId === containerId) {
845
+ if (!nodeIdToParentMap.get(link.startNode) && !nodeIdToParentMap.get(link.endNode))
846
+ backLinks.push(link);
847
+ else
848
+ frontLinks.push(link);
849
+ }
850
+ }
851
+ const frontPromotedLinks = [];
852
+ const backPromotedLinks = [];
853
+ for (let i = 0; i < promotedLinks.length; i++) {
854
+ const link = promotedLinks[i];
855
+ const ancId = getCommonAncestorId(link.startNode, link.endNode, nodeIdToParentMap);
856
+ if (ancId === containerId) {
857
+ if (!nodeIdToParentMap.get(link.startNode) && !nodeIdToParentMap.get(link.endNode))
858
+ backPromotedLinks.push(link);
859
+ else
860
+ frontPromotedLinks.push(link);
861
+ }
862
+ }
863
+ return { frontLinks, frontPromotedLinks, backLinks, backPromotedLinks };
864
+ }
865
+ function _getAncestorIds(nodeId, nodes) {
866
+ const ancestors = [];
867
+ let anc = nodes.get(nodeId);
868
+ while (anc !== undefined) {
869
+ ancestors.push(anc);
870
+ anc = nodes.get(anc);
871
+ }
872
+ return ancestors;
873
+ }
874
+ function containerLinksReady(containerLinks, layoutOutput) {
875
+ const nodes = layoutOutput.nodes;
876
+ for (let i = 0; i < containerLinks.length; i++) {
877
+ const link = containerLinks[i];
878
+ if (!(nodes[link.startNode] && nodes[link.endNode])) {
879
+ return false;
880
+ }
881
+ }
882
+ return true;
883
+ }
884
+ function changeExpanded(id, expanded) {
885
+ if (keys.containsKey(expanded, id)) {
886
+ return keys.removeKey(expanded, id, false);
887
+ }
888
+ else {
889
+ return keys.addKey(expanded, id);
890
+ }
891
+ }
892
+ function getPromotedLinks(links, expanded, allContainerNodes, allVisibleNodes) {
893
+ const collapsed = [];
894
+ allContainerNodes.forEach((node) => {
895
+ if (!keys.containsKey(expanded, node.id)) {
896
+ collapsed.push(node);
897
+ }
898
+ });
899
+ const promotedLinks = [];
900
+ const linkToPromotedMap = new Map();
901
+ const promotedToLinkMap = new Map();
902
+ for (let i = 0; i < links.length; i++) {
903
+ const link = links[i];
904
+ const linkId = link.id;
905
+ const startVisible = allVisibleNodes.includes(link.startNode)
906
+ ? link.startNode
907
+ : firstVisibleAncestor(link.startNode, collapsed);
908
+ const endVisible = allVisibleNodes.includes(link.endNode)
909
+ ? link.endNode
910
+ : firstVisibleAncestor(link.endNode, collapsed);
911
+ if (startVisible &&
912
+ endVisible &&
913
+ (startVisible !== link.startNode || endVisible !== link.endNode) &&
914
+ startVisible !== endVisible) {
915
+ const promotedLinkId = `${startVisible}_${endVisible}`;
916
+ let subLinks = promotedToLinkMap.get(promotedLinkId);
917
+ if (subLinks) {
918
+ subLinks.push(link);
919
+ }
920
+ else {
921
+ const promotedLink = {
922
+ id: promotedLinkId,
923
+ startNode: startVisible,
924
+ endNode: endVisible
925
+ };
926
+ promotedLinks.push(promotedLink);
927
+ subLinks = [link];
928
+ }
929
+ promotedToLinkMap.set(promotedLinkId, subLinks);
930
+ linkToPromotedMap.set(linkId, promotedLinkId);
931
+ }
932
+ }
933
+ const finalPromoted = [];
934
+ for (let i = 0; i < promotedLinks.length; i++) {
935
+ const promotedLink = promotedLinks[i];
936
+ finalPromoted.push({
937
+ startNode: promotedLink.startNode,
938
+ endNode: promotedLink.endNode,
939
+ links: promotedToLinkMap.get(promotedLink.id)
940
+ });
941
+ }
942
+ return finalPromoted;
943
+ }
944
+ // One of the start/end node position changed causing the link position to change
945
+ function linkPositionChanged(nodeBounds, bounds, links) {
946
+ const nodesWithLinks = [];
947
+ links.forEach((value) => {
948
+ if (!nodesWithLinks.includes(value.startNode)) {
949
+ nodesWithLinks.push(value.startNode);
950
+ }
951
+ if (!nodesWithLinks.includes(value.endNode)) {
952
+ nodesWithLinks.push(value.endNode);
953
+ }
954
+ });
955
+ let rerender = false;
956
+ nodeBounds.forEach((value, key) => {
957
+ const b2Value = bounds.get(key);
958
+ let equal = true;
959
+ if (!b2Value)
960
+ equal = false;
961
+ else if (Math.abs(value.x - b2Value.x) > 0.5 ||
962
+ Math.abs(value.y - b2Value.y) > 0.5 ||
963
+ Math.abs(value.width - b2Value.width) > 0.5 ||
964
+ Math.abs(value.height - b2Value.height) > 0.5) {
965
+ equal = false;
966
+ }
967
+ if (!equal && nodesWithLinks.includes(key)) {
968
+ rerender = true;
969
+ }
970
+ });
971
+ return rerender;
972
+ }
973
+ function getChildInfo(id, nodeIdToDataMap) {
974
+ const nodes = nodeIdToDataMap.get(id)?.nodes;
975
+ if (nodes && nodes.length > 0) {
976
+ return nodes[0];
977
+ }
978
+ return undefined;
979
+ }
980
+ function firstVisibleAncestor(nodeId, collapsed) {
981
+ const isDescendant = (chId, data) => {
982
+ if (data) {
983
+ for (let i = 0; i < data.length; i++) {
984
+ if (data[i].id === chId || isDescendant(chId, data[i].nodes)) {
985
+ return true;
986
+ }
987
+ }
988
+ }
989
+ return false;
990
+ };
991
+ for (let i = 0; i < collapsed.length; i++) {
992
+ const node = collapsed[i];
993
+ if (isDescendant(nodeId, node.nodes)) {
994
+ return node.id;
995
+ }
996
+ }
997
+ return null;
998
+ }
999
+
1000
+ const DiagramLabel = ({ text, position, styles, dimensions, isRTL }) => {
1001
+ const { labelStyle, labelBorderStyle } = PRIVATE_BaseDiagram_themes_DiagramStyles_css.labelStyles;
1002
+ const labelPosition = getLabelPosition(dimensions, position, isRTL);
1003
+ const labelRotation = getLabelRotation(position);
1004
+ return (jsxRuntime.jsx("div", { class: classNames.classNames([labelStyle, styles && styles.borderColor && labelBorderStyle]), style: {
1005
+ top: labelPosition.y,
1006
+ left: labelPosition.x,
1007
+ ...styles,
1008
+ ...labelRotation
1009
+ }, children: text }));
1010
+ };
1011
+ /**
1012
+ * Returns the label rotation props
1013
+ * @param position
1014
+ * @returns rotation props
1015
+ */
1016
+ function getLabelRotation(position) {
1017
+ const rotationAngle = position.rotationAngle;
1018
+ const rotationPoint = position.rotationPoint;
1019
+ const rotation = {};
1020
+ if (rotationAngle) {
1021
+ rotation['transform'] = `rotate(${rotationAngle}deg)`;
1022
+ }
1023
+ if (rotationPoint) {
1024
+ rotation['transform-origin'] = `${rotationPoint.x}px ${rotationPoint.y}px`;
1025
+ }
1026
+ return rotation;
1027
+ }
1028
+
1029
+ const DiagramNodeElement = ({ id, state, position, activeId, nodeRenderer, onNodeSizeChanged, data, accessibleLabel, isDimmed, supportsSelection, content, labelPosition, labelDimensions }) => {
1030
+ const { nodeStyles, dimmedItemStyle } = PRIVATE_BaseDiagram_themes_DiagramStyles_css.itemStyles;
1031
+ const translations = useTranslationBundle.useTranslationBundle('@oracle/oraclejet-preact');
1032
+ const ref = hooks.useRef(null);
1033
+ // TODO JET-62472 change to one resize observer function
1034
+ const optionsRef = hooks.useRef({ box: 'border-box' });
1035
+ useResizeObserver.useResizeObserver(ref, hooks.useCallback((entry) => {
1036
+ const boxSize = entry.borderBoxSize;
1037
+ const width = boxSize[0].inlineSize;
1038
+ const height = boxSize[0].blockSize;
1039
+ onNodeSizeChanged(width, height, id);
1040
+ }, [id, onNodeSizeChanged]), optionsRef.current);
1041
+ const nodePos = position ? position : { x: 0, y: 0 };
1042
+ const { direction } = useUser.useUser();
1043
+ const hasLabel = data.label && labelPosition && labelDimensions;
1044
+ const expander = (jsxRuntime.jsx("div", { "data-oj-private-button": id, class: PRIVATE_BaseDiagram_themes_DiagramStyles_css.buttonStyle, children: jsxRuntime.jsx(EmbeddedIconButton.EmbeddedIconButton, { "aria-hidden": true, size: "xs", children: content ? jsxRuntime.jsx(Minus.SvgMinus, {}) : jsxRuntime.jsx(Plus.SvgPlus, {}) }) }));
1045
+ const context = {
1046
+ state: state,
1047
+ data: data,
1048
+ childContext: content,
1049
+ expander: expander
1050
+ };
1051
+ return (jsxRuntime.jsxs("div", { ref: ref, class: nodeStyles, "data-oj-private-node": id, role: content ? 'group' : "img", "aria-label": getItemAriaLabel(translations, supportsSelection, {
1052
+ isSelected: state.isSelected,
1053
+ isExpanded: content !== undefined,
1054
+ isCollapsed: (content === undefined) && (data.nodes !== undefined)
1055
+ }, accessibleLabel), style: {
1056
+ top: nodePos.y,
1057
+ left: nodePos.x
1058
+ }, id: state.isFocused || state.isHovered ? activeId : undefined, children: [jsxRuntime.jsx("div", { class: classNames.classNames([isDimmed ? dimmedItemStyle : undefined]), children: nodeRenderer(context) }), hasLabel ? (jsxRuntime.jsx("div", { class: PRIVATE_BaseDiagram_themes_DiagramStyles_css.layerStyles, children: jsxRuntime.jsx(DiagramLabel, { styles: data.labelStyle, text: data.label, position: labelPosition, dimensions: labelDimensions.get(id), isRTL: direction === 'rtl' }) })) : undefined] }, id));
1059
+ };
1060
+
1061
+ const DiagramLinkElement = ({ id, state, activeId, data, linkRenderer, accessibleLabel, isDimmed, supportsSelection, layoutOutput, onLinkSizeChanged }) => {
1062
+ const translations = useTranslationBundle.useTranslationBundle('@oracle/oraclejet-preact');
1063
+ const { dimmedItemStyle, linkStyles } = PRIVATE_BaseDiagram_themes_DiagramStyles_css.itemStyles;
1064
+ const context = {
1065
+ state: state,
1066
+ data: data,
1067
+ layoutOutput: layoutOutput,
1068
+ type: 'link'
1069
+ };
1070
+ const ref = hooks.useRef(null);
1071
+ const optionsRef = hooks.useRef({ box: 'border-box' });
1072
+ useResizeObserver.useResizeObserver(ref, hooks.useCallback((entry) => {
1073
+ const boxSize = entry.borderBoxSize;
1074
+ const width = boxSize[0].inlineSize;
1075
+ const height = boxSize[0].blockSize;
1076
+ onLinkSizeChanged(width, height, id);
1077
+ }, [id, onLinkSizeChanged]), optionsRef.current);
1078
+ return (jsxRuntime.jsx("g", { ref: ref, id: state.isFocused ? activeId : undefined, "aria-label": getItemAriaLabel(translations, supportsSelection, {
1079
+ isSelected: state.isSelected
1080
+ }, accessibleLabel), "data-oj-private-link": id, role: "img", class: classNames.classNames([linkStyles, isDimmed && dimmedItemStyle]), children: linkRenderer(context) }, id));
1081
+ };
1082
+
1083
+ /**
1084
+ * @license
1085
+ * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.
1086
+ * Licensed under The Universal Permissive License (UPL), Version 1.0
1087
+ * as shown at https://oss.oracle.com/licenses/upl/
1088
+ * @ignore
1089
+ */
1090
+ const ZOOM_INCREMENT = 0.05;
1091
+ const ZOOM_TO_FIT_PADDING = 20;
1092
+ const zoom = (nextZoom, zoom, minZoom, maxZoom, onZoomChange) => {
1093
+ const newZoom = nextZoom > maxZoom || nextZoom < minZoom ? zoom : nextZoom;
1094
+ const isZoomChanged = newZoom !== zoom;
1095
+ isZoomChanged &&
1096
+ onZoomChange &&
1097
+ onZoomChange({
1098
+ zoomValue: newZoom
1099
+ });
1100
+ };
1101
+ /**
1102
+ * Returns the zoom properties for the diagram.
1103
+ */
1104
+ function getZoomProps(props, width, height, contentBounds) {
1105
+ const zoomTofitZoom = getZoomToFitZoom(width, height, contentBounds);
1106
+ const maxZoom = props.maxZoom || 1;
1107
+ const minZoom = props.minZoom || Math.min(maxZoom, zoomTofitZoom);
1108
+ const zoom = props.zoomValue ? props.zoomValue : zoomTofitZoom;
1109
+ return {
1110
+ zooming: props.zooming ? props.zooming : 'off',
1111
+ // default value of 0 indicates zoom-to-fit level
1112
+ minZoom: minZoom,
1113
+ maxZoom: maxZoom,
1114
+ // zoom value of 0 will default to zoom to fit
1115
+ zoomValue: constrainZoom(zoom, minZoom, maxZoom),
1116
+ onZoom: props.onZoom
1117
+ };
1118
+ }
1119
+ /**
1120
+ * Returns the zoom to fit zoom level
1121
+ */
1122
+ function getZoomToFitZoom(width, height, contentBounds) {
1123
+ const zoomX = (width - 2 * ZOOM_TO_FIT_PADDING) / contentBounds.width;
1124
+ const zoomY = (height - 2 * ZOOM_TO_FIT_PADDING) / contentBounds.height;
1125
+ return Math.min(zoomX, zoomY);
1126
+ }
1127
+ /**
1128
+ * Constrains the zoom level
1129
+ */
1130
+ function constrainZoom(zoom, minZoom, maxZoom) {
1131
+ let newZoom = Math.max(minZoom, zoom);
1132
+ newZoom = Math.min(maxZoom, newZoom);
1133
+ return newZoom;
1134
+ }
1135
+ /**
1136
+ * Returns the panX, panY, and zoom when zooming and centering an item
1137
+ */
1138
+ function zoomAndCenterItemFromInfo(info, linkIdToDataMap, bounds, width, height, maxZoom) {
1139
+ const type = info.type;
1140
+ let totalBounds;
1141
+ if (type === 'node') {
1142
+ totalBounds = bounds.get(info.id);
1143
+ }
1144
+ else {
1145
+ const link = linkIdToDataMap.get(info.id);
1146
+ const startNodeBounds = bounds.get(link.startNode);
1147
+ const endNodeBounds = bounds.get(link.endNode);
1148
+ const minX = Math.min(startNodeBounds.x, endNodeBounds.x);
1149
+ const minY = Math.min(startNodeBounds.y, endNodeBounds.y);
1150
+ const maxX = Math.max(startNodeBounds.x + startNodeBounds.width, endNodeBounds.x + startNodeBounds.width);
1151
+ const maxY = Math.max(startNodeBounds.y + startNodeBounds.height, endNodeBounds.y + endNodeBounds.height);
1152
+ totalBounds = { x: minX, y: minY, width: maxX - minX, height: maxY - minY };
1153
+ }
1154
+ return getPanZoomToCenterNode(totalBounds, maxZoom, width, height);
1155
+ }
1156
+ /**
1157
+ * Returns the pan and zoom values in order
1158
+ * to center a node or link
1159
+ */
1160
+ function getPanZoomToCenterNode(bounds, maxZoom, width, height) {
1161
+ const zoomX = (width - 2 * ZOOM_TO_FIT_PADDING) / bounds.width;
1162
+ const zoomY = (height - 2 * ZOOM_TO_FIT_PADDING) / bounds.height;
1163
+ const zoom = Math.min(zoomX, zoomY, maxZoom);
1164
+ const cX = bounds.width / 2 + bounds.x;
1165
+ const cY = bounds.height / 2 + bounds.y;
1166
+ return { centerX: cX, centerY: cY, zoom: zoom };
1167
+ }
1168
+
1169
+ function DiagramLabelLayer({ labelPosition, itemProps, labelDimensions }) {
1170
+ const { direction } = useUser.useUser();
1171
+ return (jsxRuntime.jsx("div", { class: PRIVATE_BaseDiagram_themes_DiagramStyles_css.layerStyles, children: itemProps.map((item) => {
1172
+ if (item.label && labelPosition.get(item.id)) {
1173
+ return (jsxRuntime.jsx(DiagramLabel, { styles: item.labelStyle, text: item.label, position: labelPosition.get(item.id), dimensions: labelDimensions.get(item.id), isRTL: direction === 'rtl' }));
1174
+ }
1175
+ return undefined;
1176
+ }) }));
1177
+ }
1178
+
1179
+ function DiagramLinkLayer({ links, states, linkRenderer, width, height, supportsSelection, onLinkSizeChanged, layoutOutput, combinedNodeBounds, linkLabelPositions, labelDimensions, minX, minY }) {
1180
+ const zoom = getZoomToFitZoom(width, height, combinedNodeBounds);
1181
+ return (jsxRuntime.jsxs("div", { class: PRIVATE_BaseDiagram_themes_DiagramStyles_css.linkLayerStyle, style: { top: -minY, left: -minX }, children: [jsxRuntime.jsx("svg", { width: width / zoom, height: height / zoom, class: PRIVATE_BaseDiagram_themes_DiagramStyles_css.layerStyles, overflow: "visible", children: links.map((link) => {
1182
+ const state = {
1183
+ isSelected: states.selectedLinkIds.includes(link.id),
1184
+ isFocused: states.focusedId === link.id,
1185
+ isHovered: states.hoveredId === link.id,
1186
+ zoom: states.zoom
1187
+ };
1188
+ return (jsxRuntime.jsx(DiagramLinkElement, { id: link.id, state: state, isDimmed: (states.highlightedNodeIds.length !== 0 ||
1189
+ states.highlightedLinkIds.length !== 0 ||
1190
+ states.highlightedPromotedLinkIds.length !== 0) &&
1191
+ !states.highlightedLinkIds.includes(link.id), activeId: states.activeId, accessibleLabel: link.accessibleLabel, data: link, linkRenderer: linkRenderer, supportsSelection: supportsSelection, layoutOutput: layoutOutput, onLinkSizeChanged: onLinkSizeChanged }));
1192
+ }) }), labelDimensions ? (jsxRuntime.jsx("div", { children: links && linkLabelPositions ? (jsxRuntime.jsx(DiagramLabelLayer, { labelPosition: linkLabelPositions, itemProps: links, labelDimensions: labelDimensions })) : undefined })) : undefined] }));
1193
+ }
1194
+
1195
+ const DiagramPromotedLinkElement = ({ id, state, activeId, linkRenderer, isDimmed, supportsSelection, layoutOutput, onLinkSizeChanged }) => {
1196
+ const translations = useTranslationBundle.useTranslationBundle('@oracle/oraclejet-preact');
1197
+ const { dimmedItemStyle, linkStyles } = PRIVATE_BaseDiagram_themes_DiagramStyles_css.itemStyles;
1198
+ const context = {
1199
+ state: state,
1200
+ data: id.links,
1201
+ layoutOutput: layoutOutput,
1202
+ startNode: id.startNode,
1203
+ endNode: id.endNode,
1204
+ type: 'promotedLink'
1205
+ };
1206
+ const ref = hooks.useRef(null);
1207
+ const optionsRef = hooks.useRef({ box: 'border-box' });
1208
+ const stringId = getPromotedString(id);
1209
+ useResizeObserver.useResizeObserver(ref, hooks.useCallback((entry) => {
1210
+ const boxSize = entry.borderBoxSize;
1211
+ const width = boxSize[0].inlineSize;
1212
+ const height = boxSize[0].blockSize;
1213
+ onLinkSizeChanged(width, height, stringId);
1214
+ }, [stringId, onLinkSizeChanged]), optionsRef.current);
1215
+ const num_links = id.links.length;
1216
+ const accessibleLabel = num_links > 1
1217
+ ? translations.diagram_promotedLinks({ num_links: num_links.toString() })
1218
+ : translations.diagram_promotedLink();
1219
+ return (jsxRuntime.jsx("g", { ref: ref, id: state.isFocused ? activeId : undefined, "aria-label": getItemAriaLabel(translations, supportsSelection, {
1220
+ isSelected: state.isSelected,
1221
+ isIndirect: true
1222
+ }, accessibleLabel), "data-oj-private-promoted-link": stringId, role: "img", class: classNames.classNames([linkStyles, isDimmed && dimmedItemStyle]), children: linkRenderer(context) }, stringId));
1223
+ };
1224
+
1225
+ function DiagramPromotedLinkLayer({ links, states, linkRenderer, width, height, supportsSelection, onLinkSizeChanged, layoutOutput, combinedNodeBounds, minX, minY }) {
1226
+ const zoom = getZoomToFitZoom(width, height, combinedNodeBounds);
1227
+ return (jsxRuntime.jsx("div", { class: PRIVATE_BaseDiagram_themes_DiagramStyles_css.linkLayerStyle, style: { top: -minY, left: -minX }, children: jsxRuntime.jsx("svg", { width: width / zoom, height: height / zoom, class: PRIVATE_BaseDiagram_themes_DiagramStyles_css.layerStyles, overflow: "visible", children: links.map((link) => {
1228
+ const state = {
1229
+ isSelected: states.selectedPromotedLinkIds.includes(link),
1230
+ isFocused: states.focusedId === link,
1231
+ isHovered: states.hoveredId === link,
1232
+ zoom: states.zoom
1233
+ };
1234
+ return (jsxRuntime.jsx(DiagramPromotedLinkElement, { id: link, state: state, isDimmed: (states.highlightedNodeIds.length !== 0 ||
1235
+ states.highlightedLinkIds.length !== 0 ||
1236
+ states.highlightedPromotedLinkIds.length !== 0) &&
1237
+ !states.highlightedPromotedLinkIds.includes(link), activeId: states.activeId, linkRenderer: linkRenderer, supportsSelection: supportsSelection, layoutOutput: layoutOutput, onLinkSizeChanged: onLinkSizeChanged }));
1238
+ }) }) }));
1239
+ }
1240
+
1241
+ function DiagramNodeLayer({ nodes, states, nodeRenderer, linkRenderer, nodeBounds, width, height, onNodeSizeChanged, onLinkSizeChanged, onPromotedLinkSizeChanged, supportsSelection, nodeLabelPositions, linkLabelPositions, labelDimensions, minX = 0, minY = 0, parentId, links, promotedLinks, layoutOutput, zoom, nodeIdToParentMap, linkDimensions, promotedLinkDimensions, rootRef, combinedNodeBounds, nodeBoundsRef, normalizeLinks = false }) {
1242
+ const { frontLinks, frontPromotedLinks, backLinks, backPromotedLinks } = getLinksForNode(parentId, links, promotedLinks, nodeIdToParentMap);
1243
+ return (jsxRuntime.jsxs("div", { class: PRIVATE_BaseDiagram_themes_DiagramStyles_css.layerStyles, "data-oj-private-node-container": true, children: [layoutOutput &&
1244
+ linkRenderer &&
1245
+ backLinks.length > 0 &&
1246
+ containerLinksReady(backLinks, layoutOutput) && (jsxRuntime.jsx(DiagramLinkLayer, { links: backLinks, states: states, linkRenderer: linkRenderer, width: width / zoom, height: height, supportsSelection: supportsSelection, labelDimensions: labelDimensions, layoutOutput: layoutOutput, onLinkSizeChanged: onLinkSizeChanged, linkLabelPositions: linkLabelPositions, combinedNodeBounds: combinedNodeBounds, minY: normalizeLinks ? minY : 0, minX: normalizeLinks ? minX : 0 })), layoutOutput &&
1247
+ linkRenderer &&
1248
+ backPromotedLinks.length > 0 &&
1249
+ containerLinksReady(backPromotedLinks, layoutOutput) && (jsxRuntime.jsx(DiagramPromotedLinkLayer, { links: backPromotedLinks, states: states, linkRenderer: linkRenderer, width: width / zoom, height: height, supportsSelection: supportsSelection, layoutOutput: layoutOutput, onLinkSizeChanged: onPromotedLinkSizeChanged, combinedNodeBounds: combinedNodeBounds, minY: normalizeLinks ? minY : 0, minX: normalizeLinks ? minX : 0 })), nodes.map((node) => {
1250
+ // this is for initial render before the layout function so render all nodes at 0,0
1251
+ const position = nodeBounds && nodeBounds.get(node.id)
1252
+ ? { x: nodeBounds.get(node.id).x - minX, y: nodeBounds.get(node.id).y - minY }
1253
+ : undefined;
1254
+ const state = {
1255
+ isSelected: states.selectedNodeIds.includes(node.id),
1256
+ isFocused: states.focusedId === node.id,
1257
+ isHovered: states.hoveredId === node.id,
1258
+ zoom: states.zoom,
1259
+ isExpanded: states.expanded && keys.containsKey(states.expanded, node.id)
1260
+ };
1261
+ const { backLinks, backPromotedLinks } = getLinksForNode(node.id, links, promotedLinks, nodeIdToParentMap);
1262
+ // Leaf node or node is collapsed
1263
+ if (isLeafNode(node) || !keys.containsKey(states.expanded, node.id)) {
1264
+ return (jsxRuntime.jsx(DiagramNodeElement, { id: node.id, position: position, state: state, isDimmed: (states.highlightedNodeIds.length !== 0 ||
1265
+ states.highlightedLinkIds.length !== 0 ||
1266
+ states.highlightedPromotedLinkIds.length !== 0) &&
1267
+ !states.highlightedNodeIds.includes(node.id), activeId: states.activeId, nodeRenderer: nodeRenderer, onNodeSizeChanged: onNodeSizeChanged, accessibleLabel: node.accessibleLabel, data: node, supportsSelection: supportsSelection, labelDimensions: labelDimensions, labelPosition: nodeLabelPositions?.get(node.id) }));
1268
+ // Expanded container where children are ready
1269
+ }
1270
+ else if (nodeBounds &&
1271
+ isContainerReady(node, nodeBounds, backLinks, backPromotedLinks, linkDimensions, promotedLinkDimensions)) {
1272
+ const childContent = getContent(node, states, nodeRenderer, onNodeSizeChanged, onLinkSizeChanged, onPromotedLinkSizeChanged, supportsSelection, links, promotedLinks, nodeIdToParentMap, width, height, zoom, node.id, nodeBounds, linkDimensions, promotedLinkDimensions, combinedNodeBounds, nodeBoundsRef, nodeLabelPositions, linkLabelPositions, labelDimensions, linkRenderer, layoutOutput, rootRef);
1273
+ return (jsxRuntime.jsx(DiagramNodeElement, { id: node.id, position: position, state: state, isDimmed: (states.highlightedNodeIds.length !== 0 ||
1274
+ states.highlightedLinkIds.length !== 0 ||
1275
+ states.highlightedPromotedLinkIds.length !== 0) &&
1276
+ !states.highlightedNodeIds.includes(node.id), activeId: states.activeId, nodeRenderer: nodeRenderer, onNodeSizeChanged: onNodeSizeChanged, accessibleLabel: node.accessibleLabel, data: node, supportsSelection: supportsSelection, content: childContent, labelDimensions: labelDimensions, labelPosition: nodeLabelPositions?.get(node.id) }));
1277
+ }
1278
+ else {
1279
+ const childContent = getContent(node, states, nodeRenderer, onNodeSizeChanged, onLinkSizeChanged, onPromotedLinkSizeChanged, supportsSelection, links, promotedLinks, nodeIdToParentMap, width, height, zoom, node.id, nodeBounds, linkDimensions, promotedLinkDimensions, combinedNodeBounds, nodeBoundsRef, nodeLabelPositions, linkLabelPositions, labelDimensions, linkRenderer, layoutOutput, rootRef);
1280
+ return jsxRuntime.jsx("div", { children: childContent.content });
1281
+ }
1282
+ }), layoutOutput &&
1283
+ linkRenderer &&
1284
+ frontLinks.length > 0 &&
1285
+ containerLinksReady(frontLinks, layoutOutput) && (jsxRuntime.jsx(DiagramLinkLayer, { links: frontLinks, states: states, linkRenderer: linkRenderer, width: width / zoom, height: height, supportsSelection: supportsSelection, labelDimensions: labelDimensions, layoutOutput: layoutOutput, onLinkSizeChanged: onLinkSizeChanged, linkLabelPositions: linkLabelPositions, combinedNodeBounds: combinedNodeBounds, minY: normalizeLinks ? minY : 0, minX: normalizeLinks ? minX : 0 })), layoutOutput &&
1286
+ linkRenderer &&
1287
+ frontPromotedLinks.length > 0 &&
1288
+ containerLinksReady(frontPromotedLinks, layoutOutput) && (jsxRuntime.jsx(DiagramPromotedLinkLayer, { links: frontPromotedLinks, states: states, linkRenderer: linkRenderer, width: width / zoom, height: height, supportsSelection: supportsSelection, layoutOutput: layoutOutput, onLinkSizeChanged: onPromotedLinkSizeChanged, combinedNodeBounds: combinedNodeBounds, minY: normalizeLinks ? minY : 0, minX: normalizeLinks ? minX : 0 }))] }));
1289
+ }
1290
+ function getContent(nodeData, states, nodeRenderer, onNodeSizeChanged, onLinkSizeChanged, onPromotedLinkSizeChanged, supportsSelection, links, promotedLinks, nodeIdToParentMap, width, height, zoom, parentId, nodeBounds, linkDimensions, promotedLinkDimensions, combinedNodeBounds, nodeBoundsRef, nodeLabelPositions, linkLabelPositions, labelDimensions, linkRenderer, layoutOutput, rootRef) {
1291
+ const nodes = nodeData.nodes;
1292
+ const { backLinks, backPromotedLinks } = getLinksForNode(parentId, links, promotedLinks, nodeIdToParentMap);
1293
+ const { minX, minY, contentWidth, contentHeight, bounds } = getBounds(nodes, backLinks, backPromotedLinks, nodeBounds, linkDimensions, promotedLinkDimensions, zoom, rootRef);
1294
+ const nodeFullBounds = nodeBoundsRef.current;
1295
+ nodeFullBounds?.set(nodeData.id, bounds);
1296
+ nodeBoundsRef.current = nodeFullBounds;
1297
+ const content = (jsxRuntime.jsx("div", { "data-oj-private-child": parentId, style: { position: 'relative' }, children: jsxRuntime.jsx(DiagramNodeLayer, { nodes: nodes, nodeBounds: nodeBounds, states: states, minX: nodeBounds ? minX : undefined, minY: nodeBounds ? minY : undefined, nodeRenderer: nodeRenderer, onNodeSizeChanged: onNodeSizeChanged, onLinkSizeChanged: onLinkSizeChanged, onPromotedLinkSizeChanged: onPromotedLinkSizeChanged, supportsSelection: supportsSelection, nodeLabelPositions: nodeLabelPositions, linkLabelPositions: linkLabelPositions, labelDimensions: labelDimensions, links: links, promotedLinks: promotedLinks, nodeIdToParentMap: nodeIdToParentMap, linkRenderer: linkRenderer, layoutOutput: layoutOutput, width: width, height: height, zoom: zoom, parentId: parentId, linkDimensions: linkDimensions, promotedLinkDimensions: promotedLinkDimensions, rootRef: rootRef, combinedNodeBounds: combinedNodeBounds, nodeBoundsRef: nodeBoundsRef }) }));
1298
+ return {
1299
+ content,
1300
+ width: contentWidth ? contentWidth : 0,
1301
+ height: contentHeight ? contentHeight - minY : 0,
1302
+ bounds
1303
+ };
1304
+ }
1305
+
1306
+ function DiagramLayers({ nodes, links, promotedLinks, nodeRenderer, linkRenderer, states, nodeBounds, width, height, onNodeSizeChanged, onLinkSizeChanged, onPromotedLinkSizeChanged, labelDimensions, nodeLabelPositions, linkLabelPositions, supportsSelection, layoutOutput, zoom, nodeIdToParentMap, linkDimensions, promotedLinkDimensions, rootRef, combinedNodeBounds, nodeBoundsRef, normalizeLinks }) {
1307
+ const { backLinks, backPromotedLinks } = getLinksForNode(undefined, links, promotedLinks, nodeIdToParentMap);
1308
+ const { minX, minY } = getBounds(nodes, backLinks, backPromotedLinks, nodeBounds, linkDimensions, promotedLinkDimensions, zoom, rootRef);
1309
+ return (jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsx(DiagramNodeLayer, { nodes: nodes, nodeBounds: nodeBounds, states: states, nodeRenderer: nodeRenderer, onNodeSizeChanged: onNodeSizeChanged, onLinkSizeChanged: onLinkSizeChanged, onPromotedLinkSizeChanged: onPromotedLinkSizeChanged, supportsSelection: supportsSelection, nodeLabelPositions: nodeLabelPositions, linkLabelPositions: linkLabelPositions, labelDimensions: labelDimensions, linkDimensions: linkDimensions, promotedLinkDimensions: promotedLinkDimensions, rootRef: rootRef, links: links, promotedLinks: promotedLinks, nodeIdToParentMap: nodeIdToParentMap, linkRenderer: linkRenderer, layoutOutput: layoutOutput, width: width, height: height, zoom: zoom, minX: nodeBounds && minX !== Infinity ? minX : undefined, minY: nodeBounds && minY !== Infinity ? minY : undefined, combinedNodeBounds: combinedNodeBounds, nodeBoundsRef: nodeBoundsRef, normalizeLinks: normalizeLinks }) }));
1310
+ }
1311
+
1312
+ const constrainPan = (previousPan, nextPan, panBounds, panDirection) => {
1313
+ const panX = panDirection !== 'y' ? nextPan.panX : previousPan.panX;
1314
+ const panY = panDirection !== 'x' ? nextPan.panY : previousPan.panY;
1315
+ return {
1316
+ panX: panX > panBounds.maxX ? panBounds.maxX : panX < panBounds.minX ? panBounds.minX : panX,
1317
+ panY: panY > panBounds.maxY ? panBounds.maxY : panY < panBounds.minY ? panBounds.minY : panY
1318
+ };
1319
+ };
1320
+ const pan = (previousPan, nextPan, panDirection, zoom, width, height, panBounds, onPanChange) => {
1321
+ if (!panBounds) {
1322
+ //On initial render before nodes are rendered
1323
+ return { newPan: { panX: 0, panY: 0 } };
1324
+ }
1325
+ const newPan = constrainPan(previousPan, nextPan, panBounds, panDirection);
1326
+ const isPanChanged = newPan.panX !== previousPan.panX || newPan.panY !== previousPan.panY;
1327
+ const center = panXYToCenterXY(newPan.panX, newPan.panY, zoom, width, height);
1328
+ isPanChanged &&
1329
+ onPanChange &&
1330
+ onPanChange({
1331
+ centerX: center.centerX,
1332
+ centerY: center.centerY
1333
+ });
1334
+ return { newPan };
1335
+ };
1336
+ const getPanBounds = (dWidth, dHeight, elemBounds, zoom, minZoom, initPanZoomState, panType) => {
1337
+ const { x, y, width, height } = elemBounds;
1338
+ let minX, maxX, minY, maxY;
1339
+ if (panType === 'centerContent') {
1340
+ minX = dWidth / 2 - (width + x) * zoom;
1341
+ minY = dHeight / 2 - (height + y) * zoom;
1342
+ maxX = dWidth / 2 - x * zoom;
1343
+ maxY = dHeight / 2 - y * zoom;
1344
+ }
1345
+ else {
1346
+ // panType equals fixed
1347
+ const zoomRatio = zoom / minZoom;
1348
+ // Find left corner of the content at min zoom and content is centered
1349
+ const minZoomX = (dWidth - width * minZoom) / 2 - x * minZoom;
1350
+ const minZoomY = (dHeight - height * minZoom) / 2 - y * minZoom;
1351
+ // When we pan all the way to the right, the left corner of displayable area is 0,0 as in min zoom.
1352
+ // When we pan all the way to the left, lets find the corner of the displayable area
1353
+ const leftCornerX = dWidth - dWidth * zoomRatio;
1354
+ const leftCornerY = dHeight - dHeight * zoomRatio;
1355
+ // Now we have everything to calculate pan zoom constraints
1356
+ minX = leftCornerX + minZoomX * zoomRatio;
1357
+ minY = leftCornerY + minZoomY * zoomRatio;
1358
+ maxX = minZoomX * zoomRatio;
1359
+ maxY = minZoomY * zoomRatio;
1360
+ }
1361
+ const initZoom = initPanZoomState.zoom;
1362
+ const initCenterX = initPanZoomState.centerX;
1363
+ const initCenterY = initPanZoomState.centerY;
1364
+ // If an initial panZoomState is set, should expand pan bounds to include it
1365
+ let dx, dy;
1366
+ if (initCenterX) {
1367
+ const boundsX = initCenterX * initZoom - dWidth / 2;
1368
+ if (-boundsX * initZoom < minX) {
1369
+ dx = minX - boundsX * initZoom;
1370
+ minX -= dx;
1371
+ maxX += dx;
1372
+ }
1373
+ else if (-boundsX * initZoom > maxX) {
1374
+ dx = -boundsX * initZoom - maxX;
1375
+ minX -= dx;
1376
+ maxX += dx;
1377
+ }
1378
+ }
1379
+ if (initCenterY) {
1380
+ const boundsY = initCenterY * initZoom - dHeight / 2;
1381
+ if (-boundsY * initZoom < minY) {
1382
+ dy = minY - boundsY * initZoom;
1383
+ minY -= dy;
1384
+ maxY += dy;
1385
+ }
1386
+ else if (-boundsY * initZoom > maxY) {
1387
+ dy = -boundsY * initZoom - maxY;
1388
+ minY -= dy;
1389
+ maxY += dy;
1390
+ }
1391
+ }
1392
+ return {
1393
+ minX: minX,
1394
+ maxX: maxX,
1395
+ minY: minY,
1396
+ maxY: maxY
1397
+ };
1398
+ };
1399
+ /**
1400
+ * Returns the pan properties for the diagram.
1401
+ */
1402
+ function getPanProps(props, contentBounds, userDragMode, isDeviceTouch) {
1403
+ return {
1404
+ panning: isDeviceTouch
1405
+ ? userDragMode === 'pan' && props.panning
1406
+ ? props.panning
1407
+ : 'off'
1408
+ : props.panning
1409
+ ? props.panning
1410
+ : 'off',
1411
+ panDirection: props.panDirection ? props.panDirection : 'any',
1412
+ centerX: props.centerX !== undefined ? props.centerX : contentBounds.width / 2,
1413
+ centerY: props.centerY !== undefined ? props.centerY : contentBounds.height / 2,
1414
+ onPan: props.onPan
1415
+ };
1416
+ }
1417
+ /**
1418
+ * Converts centerX,Y coordinates to panX,Y coordinates
1419
+ */
1420
+ function centerXYToPanXY(centerX, centerY, zoom, width, height) {
1421
+ return {
1422
+ panX: width / 2 - centerX * zoom,
1423
+ panY: height / 2 - centerY * zoom
1424
+ };
1425
+ }
1426
+ /**
1427
+ * Converts panX,Y coordinates to centerX,Y coordinates
1428
+ */
1429
+ function panXYToCenterXY(panX, panY, zoom, width, height) {
1430
+ return {
1431
+ centerX: (width / 2 - panX) / zoom,
1432
+ centerY: (height / 2 - panY) / zoom
1433
+ };
1434
+ }
1435
+
1436
+ function DiagramPanZoomContainer({ centerX, centerY, children, zoom, width, height }) {
1437
+ const panValues = centerXYToPanXY(centerX, centerY, zoom, width, height);
1438
+ return (jsxRuntime.jsx("div", { class: PRIVATE_BaseDiagram_themes_DiagramStyles_css.panZoomStyles, style: {
1439
+ //TODO JET-62471 look at using matrices or both in transform instead
1440
+ translate: `${panValues.panX}px ${panValues.panY}px`,
1441
+ transform: `scale(${zoom})`
1442
+ }, children: children }));
1443
+ }
1444
+
1445
+ /**
1446
+ * @license
1447
+ * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.
1448
+ * The Universal Permissive License (UPL), Version 1.0
1449
+ * as shown at https://oss.oracle.com/licenses/upl/
1450
+ * @ignore
1451
+ */
1452
+ /**
1453
+ * Returns the link data based on link info in a diagram.
1454
+ * @param itemInfo
1455
+ * @returns
1456
+ */
1457
+ function getLinkDetailFromInfo(itemInfo, links, promotedLinks) {
1458
+ let link;
1459
+ for (let i = 0; i < links.length; i++) {
1460
+ link = links[i];
1461
+ if (itemInfo.id === link.id) {
1462
+ return link;
1463
+ }
1464
+ }
1465
+ for (let i = 0; i < promotedLinks.length; i++) {
1466
+ link = promotedLinks[i];
1467
+ if (comparePromotedLinks(itemInfo.id, link)) {
1468
+ return link;
1469
+ }
1470
+ }
1471
+ return undefined;
1472
+ }
1473
+ /**
1474
+ * Utility method that adds sorting attributes of each link to an array
1475
+ */
1476
+ function addSortingAttributes(node, listOfLinks, nodes, nodeBounds) {
1477
+ let angle, distance, direction;
1478
+ const linkDetail = [];
1479
+ for (let i = 0; i < listOfLinks.length; i++) {
1480
+ const link = listOfLinks[i];
1481
+ angle = _getClockwiseAngle(node, link, nodes, nodeBounds);
1482
+ distance = _getNodesDistance(link, nodes, nodeBounds);
1483
+ direction = _getLinkDirection(node, link);
1484
+ if ('id' in link)
1485
+ linkDetail.push({
1486
+ id: link.id,
1487
+ angle: angle,
1488
+ distance: distance,
1489
+ direction: direction,
1490
+ type: 'link'
1491
+ });
1492
+ else {
1493
+ linkDetail.push({
1494
+ id: getPromotedString(link),
1495
+ angle: angle,
1496
+ distance: distance,
1497
+ direction: direction,
1498
+ type: 'promotedLink'
1499
+ });
1500
+ }
1501
+ }
1502
+ return linkDetail;
1503
+ }
1504
+ /**
1505
+ * Returns a function that compares two link around a given node
1506
+ * The links are analyzed by angle, distance from the node and direction. The sorting attributes are added to the links before sorting.
1507
+ */
1508
+ function getLinkComparator() {
1509
+ return (link1, link2) => {
1510
+ const { angle: linkAngle1, distance: linkDistance1, direction: linkDirection1 } = link1;
1511
+ const { angle: linkAngle2, distance: linkDistance2, direction: linkDirection2 } = link2;
1512
+ let res = -1;
1513
+ if (!_anglesAreEqualWithinTolerance(linkAngle1, linkAngle2) && linkAngle1 > linkAngle2) {
1514
+ res = 1;
1515
+ }
1516
+ else if (_anglesAreEqualWithinTolerance(linkAngle1, linkAngle2)) {
1517
+ //check distance and direction
1518
+ if (linkDistance1 > linkDistance2) {
1519
+ res = 1;
1520
+ }
1521
+ else if (linkDistance2 == linkDistance1 && linkDirection1 > linkDirection2) {
1522
+ //outgoing to ingoing
1523
+ res = 1;
1524
+ }
1525
+ else if (linkDistance2 == linkDistance1 && linkDirection1 == linkDirection2) {
1526
+ res = 0;
1527
+ }
1528
+ }
1529
+ return res;
1530
+ };
1531
+ }
1532
+ /**
1533
+ * Returns navigable links for a given node
1534
+ */
1535
+ function getNavigableLinksForNodeId(nodeId, listOfLinks) {
1536
+ const links = [];
1537
+ listOfLinks.forEach((link) => {
1538
+ const startId = link.startNode;
1539
+ const endId = link.endNode;
1540
+ if (startId == nodeId || endId == nodeId)
1541
+ links.push(link);
1542
+ });
1543
+ return links;
1544
+ }
1545
+ /**
1546
+ * Get the clockwise angle for the link given node as a center
1547
+ */
1548
+ function _getClockwiseAngle(node, link, nodes, nodeBounds) {
1549
+ //find opposite node
1550
+ let currNode;
1551
+ let startNode = nodes[0];
1552
+ let endNode = nodes[0];
1553
+ for (let i = 0; i < nodes.length; i++) {
1554
+ currNode = nodes[i];
1555
+ if (currNode.id === link.startNode) {
1556
+ startNode = currNode;
1557
+ }
1558
+ else if (currNode.id === link.endNode) {
1559
+ endNode = currNode;
1560
+ }
1561
+ }
1562
+ const oppositeNode = node.id == startNode.id ? endNode : startNode;
1563
+ const p1 = _getNodeCenter(node, nodeBounds);
1564
+ const p2 = _getNodeCenter(oppositeNode, nodeBounds);
1565
+ let angle = Math.atan2(p2.y - p1.y, p2.x - p1.x);
1566
+ angle = angle < 0 ? angle + Math.PI * 2 : angle;
1567
+ return angle;
1568
+ }
1569
+ /**
1570
+ * Get the distance between start and end nodes for the given link
1571
+ */
1572
+ function _getNodesDistance(link, nodes, nodeBounds) {
1573
+ let currNode;
1574
+ let startNode = nodes[0];
1575
+ let endNode = nodes[0];
1576
+ for (let i = 0; i < nodes.length; i++) {
1577
+ currNode = nodes[i];
1578
+ if (currNode.id === link.startNode) {
1579
+ startNode = currNode;
1580
+ }
1581
+ else if (currNode.id === link.endNode) {
1582
+ endNode = currNode;
1583
+ }
1584
+ }
1585
+ const p1 = _getNodeCenter(startNode, nodeBounds);
1586
+ const p2 = _getNodeCenter(endNode, nodeBounds);
1587
+ return Math.sqrt(Math.pow(p2.x - p1.x, 2) + Math.pow(p2.y - p1.y, 2));
1588
+ }
1589
+ /**
1590
+ * Get link direction for the given node. 1 if the node is the end node
1591
+ * and 0 if it is the start node
1592
+ */
1593
+ function _getLinkDirection(node, link) {
1594
+ if (link.endNode === node.id) {
1595
+ return 1;
1596
+ }
1597
+ return 0;
1598
+ }
1599
+ /**
1600
+ * Get node center
1601
+ */
1602
+ function _getNodeCenter(node, nodeBounds) {
1603
+ const nodeBB = nodeBounds.get(node.id);
1604
+ return { x: nodeBB.x + nodeBB.width / 2, y: nodeBB.y + nodeBB.height / 2 };
1605
+ }
1606
+ /**
1607
+ * Calculates the angle weighted by distance
1608
+ */
1609
+ function calcDistanceAngleWeighted(objectBB, currentBB, direction) {
1610
+ // Variables used for calculating penalties when calculating distances between two navigables.
1611
+ const optimalAngle1 = (15 / 180) * Math.PI;
1612
+ const optimalAngle2 = (40 / 180) * Math.PI;
1613
+ const suboptimalAnglePenalty1 = 2; // multiplier to the distance
1614
+ const suboptimalAnglePenalty2 = 6; // multiplier to the distance
1615
+ const objCenterX = objectBB.x + objectBB.width / 2;
1616
+ const objCenterY = objectBB.y + objectBB.height / 2;
1617
+ const curCenterX = currentBB.x + currentBB.width / 2;
1618
+ const curCenterY = currentBB.y + currentBB.height / 2;
1619
+ const x_dist = Math.abs(objCenterX - curCenterX);
1620
+ const y_dist = Math.abs(objCenterY - curCenterY);
1621
+ const angle = Math.atan2(y_dist, x_dist);
1622
+ let distance = Math.sqrt(x_dist * x_dist + y_dist * y_dist);
1623
+ // Angle penalty based on direction
1624
+ if ((angle > optimalAngle1 && (direction == 'right' || direction == 'left')) ||
1625
+ (angle < Math.PI / 2 - optimalAngle1 && (direction == 'up' || direction == 'down'))) {
1626
+ if ((angle > optimalAngle2 && (direction == 'right' || direction == 'left')) ||
1627
+ (angle < Math.PI / 2 - optimalAngle2 && (direction == 'up' || direction == 'down'))) {
1628
+ distance *= suboptimalAnglePenalty2;
1629
+ }
1630
+ else {
1631
+ distance *= suboptimalAnglePenalty1;
1632
+ }
1633
+ }
1634
+ return distance;
1635
+ }
1636
+ /**
1637
+ * Given a direction, is a certain node is a valid destination to navigate to
1638
+ */
1639
+ function isValidDestination(objBB, curBB, direction, compareCenters) {
1640
+ // compare the centers of the navigable and to be valid, the navigable must be in the right direction
1641
+ // without tolerance
1642
+ if (compareCenters) {
1643
+ const objCenterX = objBB.x + 0.5 * objBB.width;
1644
+ const curCenterX = curBB.x + 0.5 * curBB.width;
1645
+ const objCenterY = objBB.y + 0.5 * objBB.height;
1646
+ const curCenterY = curBB.y + 0.5 * curBB.height;
1647
+ switch (direction) {
1648
+ case 'up':
1649
+ return objCenterY < curCenterY;
1650
+ case 'down':
1651
+ return objBB.y > curCenterY;
1652
+ case 'right':
1653
+ return objCenterX > curCenterX;
1654
+ case 'left':
1655
+ return objCenterX < curCenterX;
1656
+ }
1657
+ return true;
1658
+ }
1659
+ switch (direction) {
1660
+ case 'up':
1661
+ return objBB.y < curBB.y || _areEqualWithinTolerance(objBB.y, curBB.y);
1662
+ case 'down':
1663
+ return objBB.y > curBB.y || _areEqualWithinTolerance(objBB.y, curBB.y);
1664
+ case 'right':
1665
+ return objBB.x > curBB.x || _areEqualWithinTolerance(objBB.x, curBB.x);
1666
+ case 'left':
1667
+ return objBB.x < curBB.x || _areEqualWithinTolerance(objBB.x, curBB.x);
1668
+ }
1669
+ return true;
1670
+ }
1671
+ /**
1672
+ * Returns true if two nodes are in contact
1673
+ */
1674
+ function calcInContact(objRect, curRect, direction) {
1675
+ switch (direction) {
1676
+ case 'up':
1677
+ return (_isVerticallyAligned(objRect, curRect) &&
1678
+ (curRect.y <= objRect.y + objRect.height ||
1679
+ _areEqualWithinTolerance(curRect.y, objRect.y + objRect.height)));
1680
+ case 'down':
1681
+ return (_isVerticallyAligned(objRect, curRect) &&
1682
+ (objRect.y <= curRect.y + curRect.height ||
1683
+ _areEqualWithinTolerance(objRect.y, curRect.y + curRect.height)));
1684
+ case 'right':
1685
+ return (_isHorizontallyAligned(objRect, curRect) &&
1686
+ (objRect.x <= curRect.x + curRect.width ||
1687
+ _areEqualWithinTolerance(objRect.x, curRect.x + curRect.width)));
1688
+ case 'left':
1689
+ return (_isHorizontallyAligned(objRect, curRect) &&
1690
+ (curRect.x <= objRect.x + objRect.width ||
1691
+ _areEqualWithinTolerance(curRect.x, objRect.x + objRect.width)));
1692
+ }
1693
+ return false;
1694
+ }
1695
+ function _isVerticallyAligned(rect1, rect2) {
1696
+ return ((rect1.x >= rect2.x && rect1.x <= rect2.x + rect2.width) ||
1697
+ (rect2.x >= rect1.x && rect2.x <= rect1.x + rect1.width));
1698
+ }
1699
+ function _isHorizontallyAligned(rect1, rect2) {
1700
+ return ((rect1.y >= rect2.y && rect1.y <= rect2.y + rect2.height) ||
1701
+ (rect2.y >= rect1.y && rect2.y <= rect1.y + rect1.height));
1702
+ }
1703
+ function _areEqualWithinTolerance(a, b) {
1704
+ return Math.abs(a - b) <= 0.0000001;
1705
+ }
1706
+ function _anglesAreEqualWithinTolerance(a1, a2) {
1707
+ let res = Math.abs(a1 - a2) <= 0.0000001;
1708
+ if (!res) {
1709
+ res = Math.abs(Math.PI * 2 + Math.min(a1, a2) - Math.max(a1, a2)) <= 0.0000001;
1710
+ }
1711
+ return res;
1712
+ }
1713
+
1714
+ /**
1715
+ * @license
1716
+ * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.
1717
+ * The Universal Permissive License (UPL), Version 1.0
1718
+ * as shown at https://oss.oracle.com/licenses/upl/
1719
+ * @ignore
1720
+ */
1721
+ function useDiagramNavigation(bounds, linkIdToDataMap, promotedLinkMap, nodeIdToDataMap) {
1722
+ const currentKeyboardFocusNode = hooks.useRef();
1723
+ const nodeBoundsById = bounds;
1724
+ function getNextNavigableNode(direction, compareCenters, current, listOfObjects) {
1725
+ if (!listOfObjects)
1726
+ return current;
1727
+ if (!current)
1728
+ return listOfObjects[0];
1729
+ const currBB = nodeBoundsById.get(current.id);
1730
+ if (!currBB)
1731
+ return listOfObjects[0];
1732
+ let nextObject = current; //init to current object
1733
+ let nextDistance = Number.MAX_VALUE;
1734
+ // If an object is in contact it overrules all other attributes
1735
+ // Only another in contact object with better attributes will have higher precedence
1736
+ let nextInContact = false;
1737
+ // Whether or not the for loop has encountered the current object
1738
+ let hasFoundCurrent = false;
1739
+ let object, inContact, distance;
1740
+ for (let i = 0; i < listOfObjects.length; i++) {
1741
+ object = listOfObjects[i];
1742
+ if (object === current) {
1743
+ hasFoundCurrent = true;
1744
+ continue;
1745
+ }
1746
+ const objBB = nodeBoundsById.get(object.id);
1747
+ if (!objBB)
1748
+ continue;
1749
+ const objBounds = { x: objBB.x, y: objBB.y, width: objBB.width, height: objBB.height };
1750
+ const currBounds = { x: currBB.x, y: currBB.y, width: currBB.width, height: currBB.height };
1751
+ if (!isValidDestination(objBounds, currBounds, direction, compareCenters))
1752
+ continue;
1753
+ inContact = calcInContact(objBounds, currBounds, direction);
1754
+ if (nextInContact && !inContact)
1755
+ continue;
1756
+ distance = calcDistanceAngleWeighted(objBounds, currBounds, direction);
1757
+ if (distance == 0 && !hasFoundCurrent)
1758
+ continue;
1759
+ // Make sure incontact flag have highest precedence
1760
+ if ((!nextInContact && inContact) ||
1761
+ (distance < nextDistance && ((nextInContact && inContact) || !nextInContact))) {
1762
+ nextDistance = distance;
1763
+ nextObject = object;
1764
+ nextInContact = inContact;
1765
+ }
1766
+ }
1767
+ return nextObject;
1768
+ }
1769
+ /**
1770
+ * Get next navigavle link depending on direction - clockwise or conter clockwise.
1771
+ * The decision is made based on location of nodes centers rather than link paths or link angles.
1772
+ */
1773
+ function getNextNavigableLink(direction, listOfNodes, currentLink, listOfLinks, promotedLinks) {
1774
+ if (!(listOfLinks || promotedLinks))
1775
+ return currentLink;
1776
+ const allLinks = listOfLinks && promotedLinks
1777
+ ? [...listOfLinks, ...promotedLinks]
1778
+ : (listOfLinks ? listOfLinks : promotedLinks);
1779
+ if (!currentLink)
1780
+ return allLinks[0];
1781
+ const keyboardFocusNode = currentKeyboardFocusNode.current;
1782
+ const nodeId = keyboardFocusNode ? keyboardFocusNode : currentLink.startNode;
1783
+ const node = nodeIdToDataMap.get(nodeId);
1784
+ if (!node)
1785
+ return currentLink;
1786
+ const adjLinks = getNavigableLinksForNodeId(node.id, allLinks);
1787
+ const linksWithSortingAttributes = addSortingAttributes(node, adjLinks, listOfNodes, nodeBoundsById);
1788
+ linksWithSortingAttributes.sort(getLinkComparator());
1789
+ //clockwise direction
1790
+ const bForward = direction == 'down' ? true : false;
1791
+ let index = 0;
1792
+ for (let i = 0; i < linksWithSortingAttributes.length; i++) {
1793
+ const id = 'id' in currentLink ? currentLink.id : getPromotedString(currentLink);
1794
+ const link = linksWithSortingAttributes[i];
1795
+ if (link.id === id) {
1796
+ if (bForward)
1797
+ index = i == linksWithSortingAttributes.length - 1 ? 0 : i + 1;
1798
+ else
1799
+ index = i == 0 ? linksWithSortingAttributes.length - 1 : i - 1;
1800
+ break;
1801
+ }
1802
+ }
1803
+ if (linksWithSortingAttributes[index].type === 'link') {
1804
+ return linkIdToDataMap.get(linksWithSortingAttributes[index].id);
1805
+ }
1806
+ return promotedLinkMap.get(linksWithSortingAttributes[index].id);
1807
+ }
1808
+ /**
1809
+ * Returns the link detail when a node to link navigation occurs
1810
+ */
1811
+ function navigateFromNodeToLink(listOfLinks, promotedLinks, event, node) {
1812
+ if (!node)
1813
+ return undefined;
1814
+ const adjLinks = getNavigableLinksForNodeId(node.id, [...listOfLinks, ...promotedLinks]);
1815
+ if (adjLinks.length < 1)
1816
+ return undefined;
1817
+ let link = adjLinks[0];
1818
+ const nodeBB = nodeBoundsById.get(node.id);
1819
+ let object, currNode, currNodeBB, currNodeBBCenterX;
1820
+ const nodeCenterX = nodeBB.x + nodeBB.width / 2;
1821
+ currentKeyboardFocusNode.current = node.id;
1822
+ for (let i = 0; i < adjLinks.length; i++) {
1823
+ object = adjLinks[i];
1824
+ currNode = object.startNode === node.id ? object.endNode : object.startNode;
1825
+ currNodeBB = nodeBoundsById.get(currNode);
1826
+ currNodeBBCenterX = currNodeBB.x + currNodeBB.width / 2;
1827
+ if (
1828
+ // equivalent of ≤ and ≥
1829
+ (event.altKey && event.code === 'Comma' && currNodeBBCenterX <= nodeCenterX) ||
1830
+ (event.altKey && event.code === 'Period' && currNodeBBCenterX >= nodeCenterX)) {
1831
+ link = object;
1832
+ break;
1833
+ }
1834
+ }
1835
+ return (isPromoted(link) ? { id: link, type: 'promotedLink' } : { id: link.id, type: 'link' });
1836
+ }
1837
+ /**
1838
+ * Returns the node detail when a link to node navigation occurs
1839
+ */
1840
+ function navigateFromLinkToNode(startNode, endNode, event) {
1841
+ const key = event.key;
1842
+ const startNodeBB = nodeBoundsById.get(startNode);
1843
+ const endNodeBB = nodeBoundsById.get(endNode);
1844
+ if (!startNodeBB || !endNodeBB)
1845
+ return undefined;
1846
+ const startNodeCenterX = startNodeBB.x + startNodeBB.width / 2;
1847
+ const endNodeCenterX = endNodeBB.x + endNodeBB.width / 2;
1848
+ const newNode = (endNodeCenterX > startNodeCenterX && key === 'ArrowRight') ||
1849
+ (endNodeCenterX < startNodeCenterX && key === 'ArrowLeft')
1850
+ ? endNode
1851
+ : startNode;
1852
+ return { id: newNode, type: 'node' };
1853
+ }
1854
+ return {
1855
+ getNextNavigableNode,
1856
+ getNextNavigableLink,
1857
+ navigateFromNodeToLink,
1858
+ navigateFromLinkToNode
1859
+ };
1860
+ }
1861
+
1862
+ const DEFAULT_KB_PAN = 15;
1863
+ const DEFAULT_KB_ZOOM = 0.15;
1864
+ function useEvents(touchResponse, initNode, nodes, links, promotedLinks, nodeBounds, linkIdToDataMap, nodeIdToDataMap, width, height, maxZoom, expanded, itemIdToParentMap, promotedLinkMap, onItemHover, onItemFocus, kbPanCallback, kbZoomCallback, onExpandedChange) {
1865
+ const { getNextNavigableNode, getNextNavigableLink, navigateFromNodeToLink, navigateFromLinkToNode } = useDiagramNavigation(nodeBounds, linkIdToDataMap, promotedLinkMap, nodeIdToDataMap);
1866
+ const [focusedItemInfo, setfocusedItemInfo] = hooks.useState({
1867
+ id: initNode.id,
1868
+ type: 'node'
1869
+ });
1870
+ const [hoveredItemInfo, sethoveredItemInfo] = hooks.useState();
1871
+ const activeId = hooks.useRef();
1872
+ const cancelEvent = (event) => {
1873
+ event.preventDefault();
1874
+ event.stopPropagation();
1875
+ };
1876
+ const keyDownHandler = (event) => {
1877
+ const key = event.key;
1878
+ let eventConsumed = false;
1879
+ // tabbing out of the diagram
1880
+ if (key === 'TAB') {
1881
+ return;
1882
+ }
1883
+ // if this a switch from node to link or vice versa
1884
+ if (isChangeItemType(event)) {
1885
+ let nextItemInfo;
1886
+ if (focusedItemInfo.type === 'node') {
1887
+ nextItemInfo = navigateFromNodeToLink(links, promotedLinks, event, nodeIdToDataMap.get(focusedItemInfo.id));
1888
+ }
1889
+ else if (focusedItemInfo.type === 'link') {
1890
+ const data = linkIdToDataMap.get(focusedItemInfo.id);
1891
+ nextItemInfo = navigateFromLinkToNode(data.startNode, data.endNode, event);
1892
+ }
1893
+ else {
1894
+ // promoted link
1895
+ const id = focusedItemInfo.id;
1896
+ nextItemInfo = navigateFromLinkToNode(id.startNode, id.endNode, event);
1897
+ }
1898
+ handleKeyboardInput(nextItemInfo);
1899
+ eventConsumed = true;
1900
+ }
1901
+ else if (isNavigationEvent(key)) {
1902
+ const nextItemInfo = handleKeyboardNavigationEvent(key);
1903
+ handleKeyboardInput(nextItemInfo);
1904
+ eventConsumed = true;
1905
+ }
1906
+ else {
1907
+ switch (key) {
1908
+ case 'PageUp': {
1909
+ kbPanCallback &&
1910
+ kbPanCallback({
1911
+ dPan: {
1912
+ dx: event.shiftKey ? -DEFAULT_KB_PAN : 0,
1913
+ dy: event.shiftKey ? 0 : -DEFAULT_KB_PAN
1914
+ }
1915
+ });
1916
+ eventConsumed = true;
1917
+ break;
1918
+ }
1919
+ case 'PageDown': {
1920
+ kbPanCallback &&
1921
+ kbPanCallback({
1922
+ dPan: {
1923
+ dx: event.shiftKey ? DEFAULT_KB_PAN : 0,
1924
+ dy: event.shiftKey ? 0 : DEFAULT_KB_PAN
1925
+ }
1926
+ });
1927
+ eventConsumed = true;
1928
+ break;
1929
+ }
1930
+ case '+':
1931
+ case '=': {
1932
+ kbZoomCallback && kbZoomCallback({ dZoom: DEFAULT_KB_ZOOM });
1933
+ eventConsumed = true;
1934
+ break;
1935
+ }
1936
+ case '-':
1937
+ case '_': {
1938
+ kbZoomCallback && kbZoomCallback({ dZoom: -DEFAULT_KB_ZOOM });
1939
+ eventConsumed = true;
1940
+ break;
1941
+ }
1942
+ case '0': {
1943
+ if (event.ctrlKey && event.altKey) {
1944
+ const { centerX, centerY, zoom } = zoomAndCenterItemFromInfo(focusedItemInfo, linkIdToDataMap, nodeBounds, width, height, maxZoom);
1945
+ kbZoomCallback && kbZoomCallback({ nZoom: zoom });
1946
+ kbPanCallback && kbPanCallback({ nPan: { cx: centerX, cy: centerY } });
1947
+ }
1948
+ else {
1949
+ // zoom to fit
1950
+ kbZoomCallback && kbZoomCallback({});
1951
+ kbPanCallback && kbPanCallback({ center: true });
1952
+ }
1953
+ eventConsumed = true;
1954
+ break;
1955
+ }
1956
+ case ' ': {
1957
+ if (event.ctrlKey && event.shiftKey) {
1958
+ if (focusedItemInfo.type === 'node') {
1959
+ const id = focusedItemInfo.id;
1960
+ const newExpanded = changeExpanded(id, expanded);
1961
+ onExpandedChange && onExpandedChange({ expanded: newExpanded });
1962
+ }
1963
+ }
1964
+ break;
1965
+ }
1966
+ case '[': {
1967
+ if (focusedItemInfo.type === 'node') {
1968
+ const child = getChildInfo(focusedItemInfo.id, nodeIdToDataMap);
1969
+ if (child) {
1970
+ const item = { id: child.id, type: 'node' };
1971
+ handleKeyboardInput(item);
1972
+ }
1973
+ }
1974
+ eventConsumed = true;
1975
+ break;
1976
+ }
1977
+ case ']': {
1978
+ if (focusedItemInfo.type === 'node') {
1979
+ const parentId = itemIdToParentMap.get(focusedItemInfo.id);
1980
+ if (parentId) {
1981
+ const item = { id: parentId, type: 'node' };
1982
+ handleKeyboardInput(item);
1983
+ }
1984
+ }
1985
+ eventConsumed = true;
1986
+ break;
1987
+ }
1988
+ }
1989
+ }
1990
+ if (eventConsumed) {
1991
+ cancelEvent(event);
1992
+ }
1993
+ };
1994
+ const keyUpHandler = (event) => {
1995
+ const key = event.code;
1996
+ switch (key) {
1997
+ case 'Tab': {
1998
+ updatefocusedItemInfo({
1999
+ ...focusedItemInfo,
2000
+ isCurrent: true,
2001
+ isFocusVisible: true
2002
+ });
2003
+ break;
2004
+ }
2005
+ }
2006
+ };
2007
+ const blurHandler = () => {
2008
+ if (hoveredItemInfo != null || focusedItemInfo.isCurrent) {
2009
+ onItemFocus?.(undefined);
2010
+ }
2011
+ const itemInfo = { ...focusedItemInfo, isCurrent: false, isFocusVisible: false };
2012
+ setfocusedItemInfo(itemInfo);
2013
+ };
2014
+ const onHover = (event) => {
2015
+ const itemInfo = getNavigableInfo(event.target, promotedLinkMap);
2016
+ if (itemInfo && !isEqualItem(itemInfo, hoveredItemInfo)) {
2017
+ sethoveredItemInfo({ ...itemInfo, isCurrent: true });
2018
+ activeId.current = layoutUtils.getRandomId();
2019
+ setfocusedItemInfo({ ...focusedItemInfo, isCurrent: false });
2020
+ let detail;
2021
+ if (itemInfo.type === 'node') {
2022
+ detail = {
2023
+ id: itemInfo.id,
2024
+ type: 'node',
2025
+ data: nodeIdToDataMap.get(itemInfo.id)
2026
+ };
2027
+ }
2028
+ else if (itemInfo.type === 'link') {
2029
+ detail = {
2030
+ id: itemInfo.id,
2031
+ type: 'link',
2032
+ data: linkIdToDataMap.get(itemInfo.id)
2033
+ };
2034
+ }
2035
+ else if (itemInfo.type === 'promotedLink') {
2036
+ detail = {
2037
+ type: 'promotedLink',
2038
+ id: itemInfo.id
2039
+ };
2040
+ }
2041
+ onItemHover?.(detail);
2042
+ }
2043
+ };
2044
+ const onHoverLeave = () => {
2045
+ sethoveredItemInfo(undefined);
2046
+ activeId.current = undefined;
2047
+ onItemHover?.(undefined);
2048
+ };
2049
+ const hoverHandlers = useVisHover.useVisHover(onHover, undefined, onHoverLeave, touchResponse);
2050
+ const pointerUpHandler = (event) => {
2051
+ const itemInfo = getNavigableInfo(event.target, promotedLinkMap);
2052
+ if (itemInfo.id != null) {
2053
+ let buttonId;
2054
+ if (itemInfo.type === 'node') {
2055
+ buttonId = expCollapseButtonId(event.target);
2056
+ if (buttonId) {
2057
+ const newExpanded = changeExpanded(buttonId, expanded);
2058
+ onExpandedChange && onExpandedChange({ expanded: newExpanded });
2059
+ event.preventDefault();
2060
+ event.stopPropagation();
2061
+ return;
2062
+ }
2063
+ }
2064
+ setfocusedItemInfo(itemInfo);
2065
+ activeId.current = layoutUtils.getRandomId();
2066
+ }
2067
+ };
2068
+ function updatefocusedItemInfo(itemInfo) {
2069
+ if (itemInfo.type === 'node') {
2070
+ onItemFocus?.({
2071
+ id: itemInfo.id,
2072
+ type: 'node',
2073
+ data: nodeIdToDataMap.get(itemInfo.id)
2074
+ });
2075
+ }
2076
+ else if (itemInfo.type === 'link') {
2077
+ onItemFocus?.({
2078
+ id: itemInfo.id,
2079
+ type: 'link',
2080
+ data: linkIdToDataMap.get(itemInfo.id)
2081
+ });
2082
+ }
2083
+ else if (itemInfo.type === 'promotedLink') {
2084
+ onItemFocus?.({
2085
+ id: itemInfo.id,
2086
+ type: 'promotedLink'
2087
+ });
2088
+ }
2089
+ activeId.current = layoutUtils.getRandomId();
2090
+ setfocusedItemInfo(itemInfo);
2091
+ }
2092
+ function handleKeyboardInput(item) {
2093
+ if (!item)
2094
+ return;
2095
+ if (!isEqualItem(item, focusedItemInfo)) {
2096
+ item.isCurrent = true;
2097
+ item.isFocusVisible = true;
2098
+ if (hoveredItemInfo) {
2099
+ sethoveredItemInfo({ ...hoveredItemInfo, isCurrent: false });
2100
+ }
2101
+ updatefocusedItemInfo(item);
2102
+ }
2103
+ }
2104
+ function isNavigationEvent(key) {
2105
+ switch (key) {
2106
+ case 'ArrowDown':
2107
+ case 'ArrowUp':
2108
+ case 'ArrowRight':
2109
+ case 'ArrowLeft': {
2110
+ return true;
2111
+ }
2112
+ }
2113
+ return false;
2114
+ }
2115
+ function isChangeItemType(event) {
2116
+ const key = event.code;
2117
+ // check if switching from node to link
2118
+ // equivalent of ≤ and ≥
2119
+ if (focusedItemInfo.type === 'node' && event.altKey && (key === 'Period' || key === 'Comma')) {
2120
+ return true;
2121
+ // check if switching from link to node
2122
+ }
2123
+ else if (!(focusedItemInfo.type === 'node') &&
2124
+ (key === 'ArrowLeft' || key === 'ArrowRight')) {
2125
+ return true;
2126
+ }
2127
+ return false;
2128
+ }
2129
+ function handleKeyboardNavigationEvent(key) {
2130
+ let direction = 'down';
2131
+ switch (key) {
2132
+ case 'ArrowDown': {
2133
+ direction = 'down';
2134
+ break;
2135
+ }
2136
+ case 'ArrowUp': {
2137
+ direction = 'up';
2138
+ break;
2139
+ }
2140
+ case 'ArrowRight': {
2141
+ direction = 'right';
2142
+ break;
2143
+ }
2144
+ case 'ArrowLeft': {
2145
+ direction = 'left';
2146
+ break;
2147
+ }
2148
+ }
2149
+ if (focusedItemInfo.type === 'node') {
2150
+ const parent = itemIdToParentMap.get(focusedItemInfo.id);
2151
+ const navigableNodes = parent && nodeIdToDataMap.get(parent) ? nodeIdToDataMap.get(parent).nodes : nodes;
2152
+ const itemDetail = getNextNavigableNode(direction, true, nodeIdToDataMap.get(focusedItemInfo.id), navigableNodes);
2153
+ return itemDetail ? { id: itemDetail.id, type: 'node' } : focusedItemInfo;
2154
+ }
2155
+ else {
2156
+ const linkDetail = getLinkDetailFromInfo(focusedItemInfo, links, promotedLinks);
2157
+ const itemDetail = getNextNavigableLink(direction, nodes, linkDetail, links, promotedLinks);
2158
+ if (itemDetail && isPromoted(itemDetail))
2159
+ return { id: itemDetail, type: 'promotedLink' };
2160
+ else if (itemDetail && !isPromoted(itemDetail))
2161
+ return { id: itemDetail.id, type: 'link' };
2162
+ else
2163
+ return { id: focusedItemInfo.id, type: focusedItemInfo.type };
2164
+ }
2165
+ }
2166
+ const onContextMenuDismissed = (gesture) => {
2167
+ if (gesture === 'keyboard') {
2168
+ updatefocusedItemInfo({
2169
+ ...focusedItemInfo,
2170
+ isFocusVisible: true,
2171
+ isCurrent: true
2172
+ });
2173
+ }
2174
+ };
2175
+ const onFocus = () => {
2176
+ activeId.current = layoutUtils.getRandomId();
2177
+ };
2178
+ return {
2179
+ focusedItemInfo,
2180
+ hoveredItemInfo,
2181
+ activeId: activeId.current,
2182
+ onContextMenuDismissed,
2183
+ eventsProps: mergeProps.mergeProps(hoverHandlers, {
2184
+ onKeyUp: keyUpHandler,
2185
+ onKeyDown: keyDownHandler,
2186
+ onBlur: blurHandler,
2187
+ onPointerUp: pointerUpHandler,
2188
+ onFocus
2189
+ })
2190
+ };
2191
+ }
2192
+
2193
+ /**
2194
+ * Returns the datatip.
2195
+ * @param text The text string for the diagram item.
2196
+ * @param rootRef The ref for root of the diagram.
2197
+ * @param focusedItemBoundsRef The ref for focused item bounds.
2198
+ * @param focusedItemInfo The ItemInfo for focused item.
2199
+ * @returns
2200
+ */
2201
+ const useDiagramDatatip = ({ touchResponse, datatip, focusedItemBoundsRef, focusedItemInfo, panState, zoom, width, nodesMap, linksMap, hoveredItem }) => {
2202
+ const { direction } = useUser.useUser();
2203
+ const isRtl = direction === 'rtl';
2204
+ const datatipC = getDatatipContent(nodesMap, linksMap, focusedItemInfo, hoveredItem, datatip);
2205
+ const elementBounds = focusedItemBoundsRef.current
2206
+ ? {
2207
+ x: focusedItemBoundsRef.current.x + panState.panX,
2208
+ y: focusedItemBoundsRef.current.y + panState.panY,
2209
+ width: focusedItemBoundsRef.current.width * zoom,
2210
+ height: focusedItemBoundsRef.current.height * zoom
2211
+ }
2212
+ : undefined;
2213
+ const offset = focusedItemInfo.isCurrent
2214
+ ? layoutUtils.calculateOffset(isRtl, width, elementBounds)
2215
+ : layoutUtils.calculateOffset(isRtl, width);
2216
+ const { datatipContent, datatipProps } = useDatatip.useDatatip({
2217
+ content: datatipC?.content,
2218
+ borderColor: datatipC?.borderColor,
2219
+ placement: 'top-start',
2220
+ offset,
2221
+ anchor: focusedItemInfo?.isCurrent ? 'element' : 'pointer',
2222
+ touchResponse
2223
+ });
2224
+ return { datatipContent: datatipContent, datatipProps: datatipProps };
2225
+ };
2226
+
2227
+ const usePointerGesture = ({ captureTargetRef, numPointers = 1, onPointerGestureDown, onPointerGestureMove, onPointerGestureEnd, onExtraneousPointerDown, isDisabled = false }) => {
2228
+ const activePointers = hooks.useRef([]);
2229
+ if (isDisabled) {
2230
+ activePointers.current = [];
2231
+ }
2232
+ const onPointerDown = (e) => {
2233
+ activePointers.current.push(e);
2234
+ if (activePointers.current.length === numPointers) {
2235
+ onPointerGestureDown && onPointerGestureDown({ pointers: activePointers.current });
2236
+ }
2237
+ else if (activePointers.current.length > numPointers) {
2238
+ onExtraneousPointerDown && onExtraneousPointerDown({ pointers: activePointers.current });
2239
+ }
2240
+ };
2241
+ const onPointerMove = (e) => {
2242
+ if (activePointers.current.length === 0)
2243
+ return;
2244
+ const index = activePointers.current.findIndex((pointerEvent) => pointerEvent.pointerId === e.pointerId);
2245
+ if (index === -1)
2246
+ return;
2247
+ activePointers.current[index] = e;
2248
+ if (activePointers.current.length === numPointers) {
2249
+ activePointers.current.forEach((e) => captureTargetRef.current.setPointerCapture(e.pointerId));
2250
+ onPointerGestureMove && onPointerGestureMove({ pointers: activePointers.current });
2251
+ }
2252
+ };
2253
+ const onPointerUp = (e) => {
2254
+ const index = activePointers.current.findIndex((pointerEvent) => pointerEvent.pointerId === e.pointerId);
2255
+ if (index === -1)
2256
+ return;
2257
+ activePointers.current[index] = e;
2258
+ if (activePointers.current.length === numPointers) {
2259
+ onPointerGestureEnd && onPointerGestureEnd({ pointers: activePointers.current });
2260
+ }
2261
+ activePointers.current.splice(index, 1);
2262
+ };
2263
+ const onPointerCancel = onPointerUp;
2264
+ const onPointerLeave = onPointerUp;
2265
+ return isDisabled
2266
+ ? {}
2267
+ : {
2268
+ onPointerDown,
2269
+ onPointerMove,
2270
+ onPointerUp,
2271
+ onPointerCancel,
2272
+ onPointerLeave
2273
+ };
2274
+ };
2275
+
2276
+ /**
2277
+ * Whether point with coordinates are in the draggable region
2278
+ */
2279
+ const inDraggableRegion = (x, y, region) => {
2280
+ if (!region)
2281
+ return true;
2282
+ const { xMin, xMax, yMin, yMax } = region;
2283
+ return x >= xMin && x <= xMax && y >= yMin && y <= yMax;
2284
+ };
2285
+ /**
2286
+ * Returns region offset
2287
+ */
2288
+ const getRegionOffset = (x, y, region) => {
2289
+ if (!region)
2290
+ return { regionOffsetX: x, regionOffsetY: y };
2291
+ return { regionOffsetX: x - region.xMin, regionOffsetY: y - region.yMin };
2292
+ };
2293
+ const useDrag = ({ captureTargetRef, draggableRegion, onDragStart, onDragMove, onDragEnd, isDisabled = false }) => {
2294
+ const inactiveState = { isDragging: false, x0: -1, y0: -1, regionOffsetX: -1, regionOffsetY: -1 };
2295
+ const dragState = hooks.useRef(inactiveState);
2296
+ const handlePointerEvent = (e, cb) => {
2297
+ const { isDragging, x0, y0, regionOffsetX, regionOffsetY } = dragState.current;
2298
+ if (!isDragging)
2299
+ return;
2300
+ const x = e.pageX;
2301
+ const y = e.pageY;
2302
+ cb && cb({ x, y, dx: x - x0, dy: y - y0, regionOffsetX, regionOffsetY, originalEvent: e });
2303
+ };
2304
+ const dragProps = usePointerGesture({
2305
+ captureTargetRef,
2306
+ numPointers: 1, // Only allow 1 pointer dragging
2307
+ onExtraneousPointerDown: () => {
2308
+ dragState.current = inactiveState;
2309
+ },
2310
+ onPointerGestureDown: ({ pointers: [e] }) => {
2311
+ const x = e.pageX;
2312
+ const y = e.pageY;
2313
+ if (e.button !== 0 || !inDraggableRegion(x, y, draggableRegion))
2314
+ return;
2315
+ const { regionOffsetX, regionOffsetY } = getRegionOffset(x, y, draggableRegion);
2316
+ dragState.current = { isDragging: true, x0: x, y0: y, regionOffsetX, regionOffsetY };
2317
+ onDragStart && onDragStart({ x, y, regionOffsetX, regionOffsetY, originalEvent: e });
2318
+ },
2319
+ onPointerGestureMove: ({ pointers: [e] }) => {
2320
+ handlePointerEvent(e, onDragMove);
2321
+ },
2322
+ onPointerGestureEnd: ({ pointers: [e] }) => {
2323
+ handlePointerEvent(e, onDragEnd);
2324
+ dragState.current = inactiveState;
2325
+ }
2326
+ });
2327
+ return isDisabled ? {} : dragProps;
2328
+ };
2329
+
2330
+ const useDragPan = ({ panProps, captureTargetRef, panBounds, width, height, zoom, onDragPanStart, onDragPanEnd }) => {
2331
+ const prevPanState = hooks.useRef({ panX: 0, panY: 0 });
2332
+ const initialPanState = hooks.useRef({ panX: 0, panY: 0 });
2333
+ const dragProps = useDrag({
2334
+ captureTargetRef,
2335
+ onDragStart: () => {
2336
+ const panValues = centerXYToPanXY(panProps.centerX, panProps.centerY, zoom, width, height);
2337
+ initialPanState.current = {
2338
+ panX: panValues.panX,
2339
+ panY: panValues.panY
2340
+ };
2341
+ onDragPanStart && onDragPanStart();
2342
+ },
2343
+ onDragMove: ({ dx, dy }) => {
2344
+ const nextPan = {
2345
+ panX: initialPanState.current.panX + dx,
2346
+ panY: initialPanState.current.panY + dy
2347
+ };
2348
+ const { newPan } = pan(prevPanState.current, nextPan, panProps.panDirection, zoom, width, height, panBounds, panProps.onPan);
2349
+ prevPanState.current = newPan;
2350
+ },
2351
+ onDragEnd: ({ originalEvent }) => {
2352
+ // If panning occurred, call preventDefault to prevent selection from occurring
2353
+ if (initialPanState.current.panX !== prevPanState.current.panX ||
2354
+ initialPanState.current.panY !== prevPanState.current.panY)
2355
+ originalEvent.preventDefault();
2356
+ onDragPanEnd && onDragPanEnd();
2357
+ },
2358
+ isDisabled: panProps.panning === 'off'
2359
+ });
2360
+ return dragProps;
2361
+ };
2362
+
2363
+ const PX_FACTOR_PER_LINE = 15; // Value used in Toolkit
2364
+ const PX_FACTOR_PER_PAGE = 40; // Value copied from datagrid; this is not handled in Toolkit
2365
+ const getNormalizedDelta = (e) => {
2366
+ const { deltaX, deltaY, deltaMode } = e;
2367
+ switch (deltaMode) {
2368
+ case e.DOM_DELTA_PIXEL:
2369
+ return { deltaX: -deltaX, deltaY: -deltaY };
2370
+ case e.DOM_DELTA_LINE:
2371
+ return { deltaX: -deltaX * PX_FACTOR_PER_LINE, deltaY: -deltaY * PX_FACTOR_PER_LINE };
2372
+ case e.DOM_DELTA_PAGE:
2373
+ return { deltaX: -deltaX * PX_FACTOR_PER_PAGE, deltaY: -deltaY * PX_FACTOR_PER_PAGE };
2374
+ default:
2375
+ return { deltaX: -deltaX, deltaY: -deltaY };
2376
+ }
2377
+ };
2378
+ const useWheel = ({ onWheel: onWheelCallback, preventDefault = true, isDisabled = false }) => {
2379
+ const onWheel = (e) => {
2380
+ const { deltaX, deltaY } = getNormalizedDelta(e);
2381
+ if (preventDefault)
2382
+ e.preventDefault();
2383
+ onWheelCallback({
2384
+ x: e.offsetX,
2385
+ y: e.offsetY,
2386
+ deltaX,
2387
+ deltaY,
2388
+ ctrlKey: e.ctrlKey || e.metaKey
2389
+ });
2390
+ };
2391
+ return isDisabled ? {} : { onWheel };
2392
+ };
2393
+
2394
+ /**
2395
+ * @license
2396
+ * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.
2397
+ * Licensed under The Universal Permissive License (UPL), Version 1.0
2398
+ * as shown at https://oss.oracle.com/licenses/upl/
2399
+ * @ignore
2400
+ */
2401
+ const useWheelZoom = ({ zooming, minZoom, maxZoom, zoomValue, onZoom }) => {
2402
+ const wheelProps = useWheel({
2403
+ onWheel: ({ deltaY }) => {
2404
+ const newZoom = zoomValue * (1 + ZOOM_INCREMENT * deltaY);
2405
+ zoom(newZoom, zoomValue, minZoom, maxZoom, onZoom);
2406
+ },
2407
+ isDisabled: zooming === 'off'
2408
+ });
2409
+ return wheelProps;
2410
+ };
2411
+
2412
+ const getMidpoint = (p1, p2) => ({ x: (p1.x + p2.x) / 2, y: (p1.y + p2.y) / 2 });
2413
+ const getDistance = (p1, p2) => Math.sqrt((p2.x - p1.x) ** 2 + (p2.y - p2.y) ** 2);
2414
+ const usePinch = ({ captureTargetRef, onPinchZoomStart, onPinchZoomChange, onPinchZoomEnd, isDisabled = false }) => {
2415
+ const origin = hooks.useRef({ x: -1, y: -1 });
2416
+ const prevDistance = hooks.useRef(-1);
2417
+ const reset = () => {
2418
+ origin.current = { x: -1, y: -1 };
2419
+ prevDistance.current = -1;
2420
+ };
2421
+ if (isDisabled)
2422
+ reset();
2423
+ const pinchProps = usePointerGesture({
2424
+ captureTargetRef,
2425
+ numPointers: 2, // Pinch gesture requires 2 pointers
2426
+ onPointerGestureDown: ({ pointers: [pointer1, pointer2] }) => {
2427
+ const p1 = { x: pointer1.offsetX, y: pointer1.offsetY };
2428
+ const p2 = { x: pointer2.offsetX, y: pointer2.offsetY };
2429
+ origin.current = getMidpoint(p1, p2);
2430
+ prevDistance.current = getDistance(p1, p2);
2431
+ onPinchZoomStart &&
2432
+ onPinchZoomStart({
2433
+ origin: origin.current,
2434
+ delta: 0
2435
+ });
2436
+ },
2437
+ onPointerGestureMove: ({ pointers: [pointer1, pointer2] }) => {
2438
+ const p1 = { x: pointer1.offsetX, y: pointer1.offsetY };
2439
+ const p2 = { x: pointer2.offsetX, y: pointer2.offsetY };
2440
+ const distance = getDistance(p1, p2);
2441
+ const delta = distance - prevDistance.current;
2442
+ prevDistance.current = distance;
2443
+ onPinchZoomChange &&
2444
+ onPinchZoomChange({
2445
+ origin: origin.current,
2446
+ delta
2447
+ });
2448
+ },
2449
+ onPointerGestureEnd: () => {
2450
+ reset();
2451
+ onPinchZoomEnd && onPinchZoomEnd();
2452
+ }
2453
+ });
2454
+ return isDisabled ? {} : pinchProps;
2455
+ };
2456
+
2457
+ const usePinchZoom = ({ captureTargetRef, zooming, minZoom, maxZoom, zoomValue, onZoom }) => {
2458
+ const pinchProps = usePinch({
2459
+ captureTargetRef,
2460
+ onPinchZoomChange: ({ delta }) => {
2461
+ const newZoom = zoomValue * (1 + ZOOM_INCREMENT * delta);
2462
+ zoom(newZoom, zoomValue, minZoom, maxZoom, onZoom);
2463
+ },
2464
+ isDisabled: zooming === 'off'
2465
+ });
2466
+ return pinchProps;
2467
+ };
2468
+
2469
+ const usePanZoom = ({ props, captureTargetRef, width, height, contentBounds, isRtl }) => {
2470
+ const [cursor, setCursor] = hooks.useState();
2471
+ const zoomProps = getZoomProps(props, width, height, contentBounds);
2472
+ const panBounds = hooks.useRef();
2473
+ const prevZoom = hooks.useRef();
2474
+ const panning = hooks.useRef();
2475
+ const initPanZoomState = hooks.useRef({
2476
+ zoom: props.zoomValue || 0,
2477
+ centerX: props.centerX,
2478
+ centerY: props.centerY
2479
+ });
2480
+ const isDeviceTouch = clientUtils.isTouch();
2481
+ const plotArea = {
2482
+ width: width,
2483
+ height: height,
2484
+ x: 0,
2485
+ y: 0
2486
+ };
2487
+ const showPanButton = isDeviceTouch ? props.panning && props.panning !== 'off' : undefined;
2488
+ const dragModeOptions = {
2489
+ isZoomScroll: true,
2490
+ plotAreaSpace: plotArea,
2491
+ componentWidth: width,
2492
+ isRtl,
2493
+ showPanButton: showPanButton ?? false,
2494
+ showZoomButton: false,
2495
+ showSelectButton: false,
2496
+ isDisabled: !isDeviceTouch
2497
+ };
2498
+ const { toggleButtonContent, userDragMode } = useVisDragModeControls.useVisDragModeControls(dragModeOptions);
2499
+ const panProps = getPanProps(props, contentBounds, userDragMode, isDeviceTouch);
2500
+ if (contentBounds.width !== Infinity &&
2501
+ (zoomProps.zoomValue !== prevZoom.current || panProps.panning !== panning.current)) {
2502
+ panBounds.current = getPanBounds(width, height, contentBounds, zoomProps.zoomValue, zoomProps.minZoom, initPanZoomState.current, panProps.panning);
2503
+ prevZoom.current = zoomProps.zoomValue;
2504
+ panning.current = panProps.panning;
2505
+ }
2506
+ const dragPanProps = useDragPan({
2507
+ panProps: panProps,
2508
+ captureTargetRef: captureTargetRef,
2509
+ panBounds: panBounds.current,
2510
+ zoom: zoomProps.zoomValue,
2511
+ width,
2512
+ height,
2513
+ onDragPanStart: () => setCursor('grabbing'),
2514
+ onDragPanEnd: () => setCursor('auto')
2515
+ });
2516
+ //dZoom or nZoom is required
2517
+ const kbZoomCallback = (props) => {
2518
+ const newZoom = props.dZoom
2519
+ ? zoomProps.zoomValue + props.dZoom
2520
+ : getZoomToFitZoom(width, height, contentBounds);
2521
+ zoom(props.nZoom ? props.nZoom : newZoom, zoomProps.zoomValue, zoomProps.minZoom, zoomProps.maxZoom, zoomProps.onZoom);
2522
+ };
2523
+ const prevPanState = hooks.useRef({ panX: 0, panY: 0 });
2524
+ // dPan or nPan is required
2525
+ const kbPanCallback = (props) => {
2526
+ let centerX;
2527
+ let centerY;
2528
+ if (props.center) {
2529
+ centerX = contentBounds.x + contentBounds.width / 2;
2530
+ centerY = contentBounds.y + contentBounds.height / 2;
2531
+ }
2532
+ else if (props.dPan) {
2533
+ centerX = panProps.centerX + props.dPan.dx;
2534
+ centerY = panProps.centerY + props.dPan.dy;
2535
+ }
2536
+ else {
2537
+ centerX = props.nPan.cx;
2538
+ centerY = props.nPan.cy;
2539
+ }
2540
+ const panValues = centerXYToPanXY(centerX, centerY, zoomProps.zoomValue, width, height);
2541
+ const { newPan } = pan(prevPanState.current, panValues, panProps.panDirection, zoomProps.zoomValue, width, height, panBounds.current, panProps.onPan);
2542
+ prevPanState.current = newPan;
2543
+ };
2544
+ const wheelZoomProps = useWheelZoom(zoomProps);
2545
+ const pinchZoomProps = usePinchZoom({
2546
+ captureTargetRef,
2547
+ zooming: zoomProps.zooming,
2548
+ minZoom: zoomProps.minZoom,
2549
+ maxZoom: zoomProps.maxZoom,
2550
+ zoomValue: zoomProps.zoomValue,
2551
+ onZoom: zoomProps.onZoom
2552
+ });
2553
+ const panZoomProps = mergeProps.mergeProps(dragPanProps, wheelZoomProps, pinchZoomProps);
2554
+ return {
2555
+ panZoomProps,
2556
+ panProps,
2557
+ zoomProps,
2558
+ toggleButtonContent,
2559
+ cursor,
2560
+ centerX: panProps.centerX,
2561
+ centerY: panProps.centerY,
2562
+ zoomValue: zoomProps.zoomValue,
2563
+ kbPanCallback: panProps.panning !== 'off' ? kbPanCallback : undefined,
2564
+ kbZoomCallback: zoomProps.zooming !== 'off' ? kbZoomCallback : undefined
2565
+ };
2566
+ };
2567
+
2568
+ function useDiagramSelection({ selectedIds, selectionMode, nodeMap, linkMap, focusedItemInfo, onSelectionChange, rootRef, promotedLinkMap }) {
2569
+ const nodeIdToDataMap = nodeMap.itemIdToDataMap;
2570
+ const nodeEncodedToIdMap = new Map();
2571
+ const linkEncodedToIdMap = new Map();
2572
+ const linkIdToDataMap = linkMap.itemIdToDataMap;
2573
+ const encodeNodeId = (id) => {
2574
+ const encoded = `N_${id}`;
2575
+ nodeEncodedToIdMap.set(encoded, id);
2576
+ return encoded;
2577
+ };
2578
+ const decodeNodeId = (id) => nodeEncodedToIdMap.get(id);
2579
+ const encodeLinkId = (id) => {
2580
+ const encoded = `L_${id}`;
2581
+ linkEncodedToIdMap.set(encoded, id);
2582
+ return encoded;
2583
+ };
2584
+ const decodeLinkId = (id) => linkEncodedToIdMap.get(id);
2585
+ const encodePromotedLinkId = (id) => `P_${JSON.stringify(id)}`;
2586
+ const decodePromotedLinkId = (id) => JSON.parse(id.slice(2));
2587
+ const encodedNodesSelection = selectedIds.nodes ? selectedIds.nodes.map(encodeNodeId) : [];
2588
+ const encodedLinksSelection = selectedIds.links ? selectedIds.links.map(encodeLinkId) : [];
2589
+ const encodedPromotedLinksSelection = selectedIds.promotedLinks
2590
+ ? selectedIds.promotedLinks.map(encodePromotedLinkId)
2591
+ : [];
2592
+ const encodedSelection = [
2593
+ ...encodedNodesSelection,
2594
+ ...encodedLinksSelection,
2595
+ ...encodedPromotedLinksSelection
2596
+ ];
2597
+ const idExtracter = (event) => {
2598
+ // return encodeNodeId(id) or encodeLinkId(id) depending on node or link selection or undefined if clicked on empty space
2599
+ const info = event.type === 'keyup'
2600
+ ? focusedItemInfo
2601
+ : getNavigableInfo(event.target, promotedLinkMap, rootRef);
2602
+ return info.id !== undefined
2603
+ ? info.type === 'node'
2604
+ ? encodeNodeId(info.id)
2605
+ : info.type === 'link'
2606
+ ? encodeLinkId(info.id)
2607
+ : encodePromotedLinkId(info.id)
2608
+ : undefined;
2609
+ };
2610
+ const onEncodedSelectionChange = (detail) => {
2611
+ const newNodeIds = detail.ids
2612
+ .filter((encId) => encId[0] === 'N')
2613
+ .map((encId) => decodeNodeId(encId));
2614
+ const newLinkIds = detail.ids
2615
+ .filter((encId) => encId[0] === 'L')
2616
+ .map((encId) => decodeLinkId(encId));
2617
+ const newPromotedLinkIds = detail.ids
2618
+ .filter((encId) => encId[0] === 'P')
2619
+ .map((encId) => decodePromotedLinkId(encId));
2620
+ const newSelectedNodeIds = newNodeIds.filter((id) => nodeIdToDataMap.get(id)?.selectable !== 'off');
2621
+ const newSelectedLinkIds = newLinkIds.filter((id) => linkIdToDataMap.get(id)?.selectable !== 'off');
2622
+ const nodeData = newSelectedNodeIds.map((selectedId) => {
2623
+ return nodeIdToDataMap.get(selectedId);
2624
+ });
2625
+ const linkData = newSelectedLinkIds.map((selectedId) => {
2626
+ return linkIdToDataMap.get(selectedId);
2627
+ });
2628
+ return (onSelectionChange &&
2629
+ onSelectionChange({
2630
+ nodes: {
2631
+ ids: newSelectedNodeIds,
2632
+ data: nodeData
2633
+ },
2634
+ links: {
2635
+ ids: newSelectedLinkIds,
2636
+ data: linkData
2637
+ },
2638
+ promotedLinks: {
2639
+ ids: newPromotedLinkIds
2640
+ }
2641
+ }));
2642
+ };
2643
+ const getDataById = (id) => {
2644
+ let data;
2645
+ if (id[0] === 'N') {
2646
+ const nodeId = decodeNodeId(id);
2647
+ data = nodeMap.itemIdToDataMap.get(nodeId);
2648
+ }
2649
+ else if (id[0] === 'L') {
2650
+ const linkId = decodeLinkId(id);
2651
+ data = linkMap.itemIdToDataMap.get(linkId);
2652
+ }
2653
+ else if (id[0] === 'P') {
2654
+ data = decodePromotedLinkId(id);
2655
+ }
2656
+ return data;
2657
+ };
2658
+ const isKeyboardSelection = (event) => {
2659
+ return event.key === '[' || event.key === ']';
2660
+ };
2661
+ const { selectionContent, selectionProps } = useSelection.useSelection({
2662
+ selection: encodedSelection,
2663
+ idExtracter,
2664
+ selectionMode,
2665
+ getDataById,
2666
+ onChange: onEncodedSelectionChange,
2667
+ isKeyboardSelection
2668
+ });
2669
+ return { selectionContent, selectionProps };
2670
+ }
2671
+
2672
+ /**
2673
+ * @license
2674
+ * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.
2675
+ * Licensed under The Universal Permissive License (UPL), Version 1.0
2676
+ * as shown at https://oss.oracle.com/licenses/upl/
2677
+ * @ignore
2678
+ */
2679
+ function getDiagramContextMenuContext(nodesMap, linksMap, type, idx) {
2680
+ let context;
2681
+ if (type === 'node') {
2682
+ context = {
2683
+ data: nodesMap.get(idx),
2684
+ type
2685
+ };
2686
+ }
2687
+ else if (type === 'link') {
2688
+ context = {
2689
+ data: linksMap.get(idx),
2690
+ type
2691
+ };
2692
+ }
2693
+ else if (type === 'promotedLink') {
2694
+ context = {
2695
+ id: idx,
2696
+ type
2697
+ };
2698
+ }
2699
+ else {
2700
+ context = {
2701
+ type: 'background'
2702
+ };
2703
+ }
2704
+ return {
2705
+ context: context
2706
+ };
2707
+ }
2708
+
2709
+ /**
2710
+ * @license
2711
+ * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.
2712
+ * Licensed under The Universal Permissive License (UPL), Version 1.0
2713
+ * as shown at https://oss.oracle.com/licenses/upl/
2714
+ * @ignore
2715
+ */
2716
+ const useDiagramContextMenu = ({ focusedItemInfo, rootRef, contextMenuConfig, onContextMenuDismissed, nodesMap, linksMap, promotedLinkMap }) => {
2717
+ const { contextMenuProps, contextMenuContent } = useContextMenu.useContextMenu({
2718
+ onContextMenuHandler: ({ gesture, target }) => {
2719
+ let idx;
2720
+ let elementType = 'background';
2721
+ const currentTarget = target;
2722
+ if (gesture === 'keyboard') {
2723
+ idx = focusedItemInfo.id;
2724
+ elementType = focusedItemInfo.type;
2725
+ }
2726
+ else if (currentTarget.closest('[data-oj-private-node]')?.dataset['ojPrivateNode']) {
2727
+ idx = currentTarget.closest('[data-oj-private-node]')?.dataset['ojPrivateNode'];
2728
+ elementType = 'node';
2729
+ }
2730
+ else if (currentTarget.closest('[data-oj-private-link]')?.dataset['ojPrivateLink']) {
2731
+ idx = currentTarget.closest('[data-oj-private-link]')?.dataset['ojPrivateLink'];
2732
+ elementType = 'link';
2733
+ }
2734
+ else if (currentTarget.closest('[data-oj-private-promoted-link]')?.dataset['ojPrivatePromotedLink']) {
2735
+ idx = currentTarget.closest('[data-oj-private-promoted-link]')?.dataset['ojPrivatePromotedLink'];
2736
+ idx = promotedLinkMap.get(idx);
2737
+ elementType = 'promotedLink';
2738
+ }
2739
+ const { context } = getDiagramContextMenuContext(nodesMap, linksMap, elementType, idx);
2740
+ if (gesture === 'keyboard') {
2741
+ let element;
2742
+ if (focusedItemInfo.type === 'node') {
2743
+ element = rootRef.current?.querySelector(`[data-oj-private-node="${idx}"]`);
2744
+ }
2745
+ else if (focusedItemInfo.type === 'link') {
2746
+ element = rootRef.current?.querySelector(`[data-oj-private-link="${idx}"]`);
2747
+ }
2748
+ else {
2749
+ element = rootRef.current?.querySelector(`[data-oj-private-promoted-link="${getPromotedString(idx)}"]`);
2750
+ }
2751
+ return {
2752
+ type: 'element',
2753
+ context,
2754
+ elem: element ? element : null
2755
+ };
2756
+ }
2757
+ return { type: 'pointer', context };
2758
+ },
2759
+ contextMenuOptions: {
2760
+ isDisabled: !contextMenuConfig //If there is not a context menu renderer we disable the hook
2761
+ },
2762
+ rootRef,
2763
+ contextMenuConfig,
2764
+ onContextMenuDismissed
2765
+ });
2766
+ return { contextMenuContent, contextMenuProps };
2767
+ };
2768
+
2769
+ const emptyKeys = { all: false, keys: new Set() };
2770
+ function BaseDiagramWithDimensions({ nodes = [], links = [], width, height, selectedIds = {}, selectionMode = 'none', layout, nodeRenderer, linkRenderer, onSelectionChange, onItemHover, onItemFocus, highlightedIds = {}, datatip, expanded = emptyKeys, onExpandedChange, contextMenuConfig, normalizeLinks, ...otherProps }) {
2771
+ const focusedItemBoundsRef = hooks.useRef(null);
2772
+ const rootRef = hooks.useRef(null);
2773
+ const [bounds, setBounds] = hooks.useState(new Map());
2774
+ const [absBounds, setAbsBounds] = hooks.useState(new Map());
2775
+ const linkDimensions = hooks.useRef(new Map());
2776
+ const promotedLinkDimensions = hooks.useRef(new Map());
2777
+ const [combinedLabelBounds, setCombinedLabelBounds] = hooks.useState();
2778
+ const { direction } = useUser.useUser();
2779
+ const isRtl = direction === 'rtl';
2780
+ const diagramNodes = nodes;
2781
+ const nodeMap = createNodesMap(diagramNodes, expanded);
2782
+ const nodeIdToParentMap = nodeMap.itemIdToParentMap;
2783
+ const nodeIdToDataMap = nodeMap.itemIdToDataMap;
2784
+ const diagramLinks = filterLinksWithNoStartOrEndNodes(links, nodeIdToDataMap);
2785
+ const linkMap = createLinksMap(diagramLinks);
2786
+ const linkIdToDataMap = linkMap.itemIdToDataMap;
2787
+ const resizeThrottling = hooks.useRef(false);
2788
+ const newDimensions = getDimensionsFromBounds(bounds);
2789
+ const { textMeasureContent, getTextDimensions } = useTextDimensions.useTextDimensions();
2790
+ const labelDimensions = hooks.useRef(new Map());
2791
+ const linkDimsChanged = hooks.useRef(false);
2792
+ const linkRerenderNeeded = hooks.useRef(false);
2793
+ const nodeLabelPosRef = hooks.useRef(new Map());
2794
+ const linkLabelPosRef = hooks.useRef(new Map());
2795
+ const [layoutOutput, setLayoutOutput] = hooks.useState();
2796
+ const nodeBoundsRef = hooks.useRef(new Map());
2797
+ const promotedLinks = getPromotedLinks(links, expanded, nodeMap.allContainerNodes, nodeMap.allVisibleNodes);
2798
+ const promotedLinkMap = createPromotedLinksMap(promotedLinks);
2799
+ const contentBounds = getContentBounds(bounds, combinedLabelBounds);
2800
+ const { panZoomProps, panProps, zoomProps, toggleButtonContent, cursor, centerX, centerY, zoomValue, kbPanCallback, kbZoomCallback } = usePanZoom({
2801
+ props: otherProps,
2802
+ captureTargetRef: rootRef,
2803
+ width: width,
2804
+ height: height,
2805
+ contentBounds,
2806
+ isRtl
2807
+ });
2808
+ const { touchResponse, touchResponseStyle } = useVisTouchResponse.useVisTouchResponse({
2809
+ type: 'auto',
2810
+ supportsTouchDragGestures: zoomProps.zooming === 'on' || panProps.panning !== 'off',
2811
+ rootRef
2812
+ });
2813
+ const { onContextMenuDismissed, focusedItemInfo, hoveredItemInfo, activeId, eventsProps } = useEvents(touchResponse, diagramNodes[0], diagramNodes, diagramLinks, promotedLinks, absBounds, linkIdToDataMap, nodeIdToDataMap, width, height, otherProps.maxZoom || 1, expanded, nodeIdToParentMap, promotedLinkMap, onItemHover, onItemFocus, kbPanCallback, kbZoomCallback, onExpandedChange);
2814
+ const { selectionProps, selectionContent } = useDiagramSelection({
2815
+ selectedIds,
2816
+ selectionMode,
2817
+ nodeMap,
2818
+ linkMap,
2819
+ focusedItemInfo,
2820
+ onSelectionChange,
2821
+ rootRef,
2822
+ promotedLinkMap
2823
+ });
2824
+ // This is for the datatip kb position
2825
+ if (focusedItemInfo && absBounds.size > 0) {
2826
+ focusedItemBoundsRef.current = getFocusedItemBounds(focusedItemInfo, absBounds, diagramLinks, linkMap.itemIdToIndexMap, rootRef);
2827
+ }
2828
+ const { datatipContent, datatipProps: { 'aria-describedby': datatipAriaDescribedby, ...datatipProps } } = useDiagramDatatip({
2829
+ touchResponse,
2830
+ datatip,
2831
+ focusedItemInfo,
2832
+ focusedItemBoundsRef,
2833
+ panState: centerXYToPanXY(centerX, centerY, zoomValue, width, height),
2834
+ zoom: zoomValue,
2835
+ width: width,
2836
+ nodesMap: nodeIdToDataMap,
2837
+ linksMap: linkIdToDataMap,
2838
+ hoveredItem: hoveredItemInfo
2839
+ });
2840
+ const [visibility, setVisibility] = hooks.useState('hidden');
2841
+ const style = {
2842
+ width: width,
2843
+ height: height,
2844
+ cursor: cursor,
2845
+ visibility: visibility,
2846
+ ...touchResponseStyle
2847
+ };
2848
+ // When expanded changes, diagram loses focus so we need to call re-render
2849
+ const expandRerender = hooks.useRef(false);
2850
+ hooks.useLayoutEffect(() => {
2851
+ if (rootRef.current) {
2852
+ expandRerender.current = true;
2853
+ }
2854
+ }, [expanded]);
2855
+ hooks.useLayoutEffect(() => {
2856
+ if (visibility === 'visible' && expandRerender.current == true) {
2857
+ rootRef.current?.focus();
2858
+ expandRerender.current = false;
2859
+ }
2860
+ }, [visibility]);
2861
+ const states = hooks.useRef();
2862
+ states.current = {
2863
+ // update states to new state
2864
+ selectedNodeIds: selectedIds.nodes ?? [],
2865
+ selectedLinkIds: selectedIds.links ?? [],
2866
+ selectedPromotedLinkIds: selectedIds.promotedLinks ?? [],
2867
+ focusedId: focusedItemInfo.isCurrent && focusedItemInfo.isFocusVisible ? focusedItemInfo.id : undefined,
2868
+ hoveredId: hoveredItemInfo?.isCurrent ? hoveredItemInfo.id : undefined,
2869
+ activeId,
2870
+ highlightedNodeIds: highlightedIds.nodes ?? [],
2871
+ highlightedLinkIds: highlightedIds.links ?? [],
2872
+ highlightedPromotedLinkIds: highlightedIds.promotedLinks ?? [],
2873
+ zoom: zoomValue,
2874
+ expanded: expanded || { all: false, keys: new Set() }
2875
+ };
2876
+ const { contextMenuContent, contextMenuProps } = useDiagramContextMenu({
2877
+ focusedItemInfo,
2878
+ rootRef,
2879
+ contextMenuConfig: nodes.length > 0 ? contextMenuConfig : undefined,
2880
+ onContextMenuDismissed,
2881
+ nodesMap: nodeIdToDataMap,
2882
+ linksMap: linkIdToDataMap,
2883
+ promotedLinkMap
2884
+ });
2885
+ const mergedEventProps = mergeProps.mergeProps(panZoomProps, eventsProps, selectionProps, datatipProps, contextMenuProps);
2886
+ // Called anytime node changes size
2887
+ const onNodeSizeChanged = (nodeWidth, nodeHeight, id) => {
2888
+ newDimensions.set(id, { width: nodeWidth, height: nodeHeight });
2889
+ if (resizeThrottling.current) {
2890
+ return;
2891
+ }
2892
+ resizeThrottling.current = true;
2893
+ // performs layout at the next available animation frame when all measurements should be ready
2894
+ window.requestAnimationFrame(() => {
2895
+ const { labelDims, layoutJSON } = constructLayoutJSON(nodeIdToDataMap, linkIdToDataMap, promotedLinks, newDimensions, width, height, zoomValue, nodeIdToParentMap, rootRef, getTextDimensions);
2896
+ labelDimensions.current = labelDims;
2897
+ const layoutOutput = layout(layoutJSON);
2898
+ const { nodePoints, nodeLabelPos, linkLabelPos } = deconstructLayoutJSON(layoutOutput, diagramNodes, diagramLinks);
2899
+ nodeLabelPosRef.current = nodeLabelPos;
2900
+ linkLabelPosRef.current = linkLabelPos;
2901
+ const { nodeBounds, nodeAbsBounds } = mergeDimensions(newDimensions, nodePoints, rootRef);
2902
+ const labelBounds = getAllLabelBounds(labelDims, nodeLabelPos, linkLabelPos, direction === 'rtl', rootRef);
2903
+ const equalBounds = isEqualBounds(nodeBounds, bounds);
2904
+ if (!equalBounds || linkDimsChanged.current || linkRerenderNeeded.current) {
2905
+ linkRerenderNeeded.current = linkPositionChanged(nodeBounds, bounds, links);
2906
+ setBounds(nodeBounds);
2907
+ setAbsBounds(nodeAbsBounds);
2908
+ setCombinedLabelBounds(labelBounds);
2909
+ setLayoutOutput(layoutOutput);
2910
+ linkDimsChanged.current = false;
2911
+ setVisibility('hidden');
2912
+ }
2913
+ else if (visibility == 'hidden') {
2914
+ setVisibility('visible');
2915
+ }
2916
+ resizeThrottling.current = false;
2917
+ });
2918
+ };
2919
+ const onLinkSizeChanged = (linkWidth, linkHeight, id) => {
2920
+ if (linkWidth !== 0 || linkHeight !== 0) {
2921
+ const linkDims = linkDimensions.current.get(id);
2922
+ if (!linkDims ||
2923
+ (linkDims &&
2924
+ (Math.abs(linkWidth - linkDims.width) > 0.5 ||
2925
+ Math.abs(linkHeight - linkDims.height) > 0.5))) {
2926
+ linkDimensions.current.set(id, { width: linkWidth, height: linkHeight });
2927
+ linkDimsChanged.current = true;
2928
+ }
2929
+ }
2930
+ };
2931
+ const onPromotedLinkSizeChanged = (linkWidth, linkHeight, id) => {
2932
+ if (linkWidth !== 0 || linkHeight !== 0) {
2933
+ const linkDims = promotedLinkDimensions.current.get(id);
2934
+ if (!linkDims ||
2935
+ (linkDims &&
2936
+ (Math.abs(linkWidth - linkDims.width) > 0.5 ||
2937
+ Math.abs(linkHeight - linkDims.height) > 0.5))) {
2938
+ promotedLinkDimensions.current.set(id, { width: linkWidth, height: linkHeight });
2939
+ linkDimsChanged.current = true;
2940
+ }
2941
+ }
2942
+ };
2943
+ return (jsxRuntime.jsxs("div", { ref: rootRef, class: PRIVATE_BaseDiagram_themes_DiagramStyles_css.outerStyles, ...mergedEventProps, style: style, tabIndex: 0, role: "application", "aria-label": otherProps['aria-label'], "aria-labelledby": otherProps['aria-labelledby'], "aria-describedby": stringUtils.l([otherProps['aria-describedby'], datatipAriaDescribedby]), "aria-activedescendant": activeId, children: [getTextDimensions ? (jsxRuntime.jsx(DiagramPanZoomContainer, { centerX: centerX, centerY: centerY, zoom: zoomValue, width: width, height: height, children: jsxRuntime.jsx(DiagramLayers, { nodes: diagramNodes, links: diagramLinks, zoom: zoomValue, nodeRenderer: nodeRenderer, linkRenderer: linkRenderer, width: width, height: height, nodeBounds: bounds, linkDimensions: linkDimensions.current, promotedLinkDimensions: promotedLinkDimensions.current, states: states.current, onNodeSizeChanged: onNodeSizeChanged, onLinkSizeChanged: onLinkSizeChanged, onPromotedLinkSizeChanged: onPromotedLinkSizeChanged, nodeLabelPositions: nodeLabelPosRef.current, linkLabelPositions: linkLabelPosRef.current, labelDimensions: labelDimensions.current, supportsSelection: selectionMode !== 'none' ||
2944
+ !!(selectedIds?.nodes && selectedIds.nodes.length > 0) ||
2945
+ !!(selectedIds?.links && selectedIds.links.length > 0), layoutOutput: layoutOutput, nodeIdToParentMap: nodeIdToParentMap, rootRef: rootRef, combinedNodeBounds: contentBounds, nodeBoundsRef: nodeBoundsRef, promotedLinks: promotedLinks, normalizeLinks: normalizeLinks }) })) : undefined, textMeasureContent, datatipContent, contextMenuContent, selectionContent, toggleButtonContent] }));
2946
+ }
2947
+
2948
+ /**
2949
+ * Diagrams are used to display a set of nodes and the links between them.
2950
+ */
2951
+ function BaseDiagram({ width, height, ...otherProps }) {
2952
+ return otherProps.nodes && otherProps.nodes.length > 0 ? (jsxRuntime.jsx(TrackResizeContainer.TrackResizeContainer, { width: width, height: height, class: PRIVATE_BaseDiagram_themes_DiagramStyles_css.dimensionStyle, children: (width, height) => (jsxRuntime.jsx(BaseDiagramWithDimensions, { width: width, height: height, ...otherProps })) })) : null;
2953
+ }
2954
+
2955
+ exports.BaseDiagram = BaseDiagram;
2956
+ //# sourceMappingURL=BaseDiagram-576c2a13.js.map