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