@neo4j-ndl/react 2.16.25 → 3.0.0-alpha-4904fb7

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 (454) hide show
  1. package/lib/cjs/_common/CodeBlockWrapper.js +10 -8
  2. package/lib/cjs/_common/CodeBlockWrapper.js.map +1 -1
  3. package/lib/cjs/_common/ConditionalWrap.js +1 -1
  4. package/lib/cjs/_common/ConditionalWrap.js.map +1 -1
  5. package/lib/cjs/_common/coditionalWrap.js +1 -1
  6. package/lib/cjs/_common/coditionalWrap.js.map +1 -1
  7. package/lib/cjs/_common/input/RadioAndCheckboxWrapper.js +6 -20
  8. package/lib/cjs/_common/input/RadioAndCheckboxWrapper.js.map +1 -1
  9. package/lib/cjs/_common/messages.js +1 -2
  10. package/lib/cjs/_common/messages.js.map +1 -1
  11. package/lib/cjs/{helpers → _common}/types.js +1 -2
  12. package/lib/cjs/_common/types.js.map +1 -0
  13. package/lib/cjs/_common/utils.js +3 -1
  14. package/lib/cjs/_common/utils.js.map +1 -1
  15. package/lib/cjs/accordion/Accordion.js +24 -24
  16. package/lib/cjs/accordion/Accordion.js.map +1 -1
  17. package/lib/cjs/avatar/Avatar.js +7 -17
  18. package/lib/cjs/avatar/Avatar.js.map +1 -1
  19. package/lib/cjs/banner/Banner.js +30 -25
  20. package/lib/cjs/banner/Banner.js.map +1 -1
  21. package/lib/cjs/breadcrumbs/Breadcrumbs.js +60 -90
  22. package/lib/cjs/breadcrumbs/Breadcrumbs.js.map +1 -1
  23. package/lib/cjs/button/Button.js +17 -33
  24. package/lib/cjs/button/Button.js.map +1 -1
  25. package/lib/cjs/button/IconButton.js +13 -21
  26. package/lib/cjs/button/IconButton.js.map +1 -1
  27. package/lib/cjs/button/IconButtonArray.js +43 -22
  28. package/lib/cjs/button/IconButtonArray.js.map +1 -1
  29. package/lib/cjs/callout/Callout.js +2 -14
  30. package/lib/cjs/callout/Callout.js.map +1 -1
  31. package/lib/cjs/charts/Axis.js +216 -0
  32. package/lib/cjs/charts/Axis.js.map +1 -0
  33. package/lib/cjs/charts/CartesianGrid.js +73 -0
  34. package/lib/cjs/charts/CartesianGrid.js.map +1 -0
  35. package/lib/cjs/charts/Chart.js +538 -0
  36. package/lib/cjs/charts/Chart.js.map +1 -0
  37. package/lib/cjs/charts/ChartTooltip.js +56 -0
  38. package/lib/cjs/charts/ChartTooltip.js.map +1 -0
  39. package/lib/cjs/charts/Charts.js +99 -0
  40. package/lib/cjs/charts/Charts.js.map +1 -0
  41. package/lib/cjs/charts/Dot.js +31 -0
  42. package/lib/cjs/charts/Dot.js.map +1 -0
  43. package/lib/cjs/charts/Legend.js +180 -0
  44. package/lib/cjs/charts/Legend.js.map +1 -0
  45. package/lib/cjs/charts/Line.js +101 -0
  46. package/lib/cjs/charts/Line.js.map +1 -0
  47. package/lib/cjs/{code-block → charts}/index.js +1 -1
  48. package/lib/cjs/charts/index.js.map +1 -0
  49. package/lib/cjs/{table/TableContext.js → charts/utils.js} +18 -14
  50. package/lib/cjs/charts/utils.js.map +1 -0
  51. package/lib/cjs/checkbox/Checkbox.js +2 -14
  52. package/lib/cjs/checkbox/Checkbox.js.map +1 -1
  53. package/lib/cjs/clipboard-copier/ClipboardButton.js +16 -20
  54. package/lib/cjs/clipboard-copier/ClipboardButton.js.map +1 -1
  55. package/lib/cjs/code/Code.js +179 -0
  56. package/lib/cjs/code/Code.js.map +1 -0
  57. package/lib/cjs/{cypher-code-block → code}/index.js +1 -1
  58. package/lib/cjs/code/index.js.map +1 -0
  59. package/lib/cjs/code/languages.js +49 -0
  60. package/lib/cjs/code/languages.js.map +1 -0
  61. package/lib/cjs/context-menu/ContextMenu.js +202 -319
  62. package/lib/cjs/context-menu/ContextMenu.js.map +1 -1
  63. package/lib/cjs/data-grid/Components.js +73 -44
  64. package/lib/cjs/data-grid/Components.js.map +1 -1
  65. package/lib/cjs/data-grid/DataGrid.js +6 -6
  66. package/lib/cjs/data-grid/DataGrid.js.map +1 -1
  67. package/lib/cjs/data-grid/illustrations/NoData.js +27 -0
  68. package/lib/cjs/data-grid/illustrations/NoData.js.map +1 -0
  69. package/lib/cjs/date-picker/DatePicker.js +33 -10
  70. package/lib/cjs/date-picker/DatePicker.js.map +1 -1
  71. package/lib/cjs/dialog/Dialog.js +25 -39
  72. package/lib/cjs/dialog/Dialog.js.map +1 -1
  73. package/lib/cjs/divider/Divider.js +2 -14
  74. package/lib/cjs/divider/Divider.js.map +1 -1
  75. package/lib/cjs/drawer/Drawer.js +10 -8
  76. package/lib/cjs/drawer/Drawer.js.map +1 -1
  77. package/lib/cjs/dropdown/Dropdown.js +18 -34
  78. package/lib/cjs/dropdown/Dropdown.js.map +1 -1
  79. package/lib/cjs/dropdown/Overrides.js +6 -2
  80. package/lib/cjs/dropdown/Overrides.js.map +1 -1
  81. package/lib/cjs/dropdown-button/DropdownButton.js +2 -21
  82. package/lib/cjs/dropdown-button/DropdownButton.js.map +1 -1
  83. package/lib/{types/context-menu/SafeArea.d.ts → cjs/dropdown-button/avatar-test.stories.tsx.js} +10 -18
  84. package/lib/cjs/dropdown-button/avatar-test.stories.tsx.js.map +1 -0
  85. package/lib/cjs/dropzone/Dropzone.js +4 -15
  86. package/lib/cjs/dropzone/Dropzone.js.map +1 -1
  87. package/lib/cjs/graph-label/GraphLabel.js +33 -34
  88. package/lib/cjs/graph-label/GraphLabel.js.map +1 -1
  89. package/lib/cjs/helpers/index.js +0 -1
  90. package/lib/cjs/helpers/index.js.map +1 -1
  91. package/lib/cjs/hooks/index.js +5 -3
  92. package/lib/cjs/hooks/index.js.map +1 -1
  93. package/lib/cjs/icons/generated/heroIcons.js +917 -596
  94. package/lib/cjs/icons/generated/heroIcons.js.map +1 -1
  95. package/lib/cjs/index.js +3 -5
  96. package/lib/cjs/index.js.map +1 -1
  97. package/lib/cjs/inline-edit/InlineEdit.js +12 -7
  98. package/lib/cjs/inline-edit/InlineEdit.js.map +1 -1
  99. package/lib/cjs/label/Label.js +4 -16
  100. package/lib/cjs/label/Label.js.map +1 -1
  101. package/lib/cjs/layout/Box.js +4 -16
  102. package/lib/cjs/layout/Box.js.map +1 -1
  103. package/lib/cjs/layout/Flex.js +4 -16
  104. package/lib/cjs/layout/Flex.js.map +1 -1
  105. package/lib/cjs/loading-spinner/LoadingSpinner.js +2 -13
  106. package/lib/cjs/loading-spinner/LoadingSpinner.js.map +1 -1
  107. package/lib/cjs/modal/Modal.js +2 -2
  108. package/lib/cjs/modal/Modal.js.map +1 -1
  109. package/lib/cjs/popover/Popover.js +89 -207
  110. package/lib/cjs/popover/Popover.js.map +1 -1
  111. package/lib/cjs/popover/use-popover.js +86 -0
  112. package/lib/cjs/popover/use-popover.js.map +1 -0
  113. package/lib/cjs/progress-bar/ProgressBar.js +2 -14
  114. package/lib/cjs/progress-bar/ProgressBar.js.map +1 -1
  115. package/lib/cjs/radio/Radio.js +2 -1
  116. package/lib/cjs/radio/Radio.js.map +1 -1
  117. package/lib/cjs/segmented-control/SegmentedControl.js +6 -19
  118. package/lib/cjs/segmented-control/SegmentedControl.js.map +1 -1
  119. package/lib/cjs/side-navigation/SideNavigation.js +52 -59
  120. package/lib/cjs/side-navigation/SideNavigation.js.map +1 -1
  121. package/lib/cjs/slider/Slider.js +5 -6
  122. package/lib/cjs/slider/Slider.js.map +1 -1
  123. package/lib/cjs/status-indicator/StatusIndicator.js.map +1 -1
  124. package/lib/cjs/switch/Switch.js +13 -1
  125. package/lib/cjs/switch/Switch.js.map +1 -1
  126. package/lib/cjs/tabs/Tabs.js +11 -27
  127. package/lib/cjs/tabs/Tabs.js.map +1 -1
  128. package/lib/cjs/tag/Tag.js +5 -18
  129. package/lib/cjs/tag/Tag.js.map +1 -1
  130. package/lib/cjs/text-input/TextInput.js +14 -24
  131. package/lib/cjs/text-input/TextInput.js.map +1 -1
  132. package/lib/cjs/text-link/TextLink.js +4 -17
  133. package/lib/cjs/text-link/TextLink.js.map +1 -1
  134. package/lib/cjs/textarea/Textarea.js +6 -20
  135. package/lib/cjs/textarea/Textarea.js.map +1 -1
  136. package/lib/cjs/toast/Toast.js +2 -3
  137. package/lib/cjs/toast/Toast.js.map +1 -1
  138. package/lib/cjs/tooltip/Tooltip.js +125 -0
  139. package/lib/cjs/tooltip/Tooltip.js.map +1 -0
  140. package/lib/cjs/{tip → tooltip}/index.js +15 -16
  141. package/lib/cjs/tooltip/index.js.map +1 -0
  142. package/lib/cjs/tooltip/use-tooltip.js +78 -0
  143. package/lib/cjs/tooltip/use-tooltip.js.map +1 -0
  144. package/lib/cjs/tree-view/TreeView.js +4 -16
  145. package/lib/cjs/tree-view/TreeView.js.map +1 -1
  146. package/lib/cjs/tree-view/TreeViewTextItem.js +11 -7
  147. package/lib/cjs/tree-view/TreeViewTextItem.js.map +1 -1
  148. package/lib/cjs/typography/Typography.js +4 -4
  149. package/lib/cjs/typography/Typography.js.map +1 -1
  150. package/lib/cjs/widget/Widget.js +3 -15
  151. package/lib/cjs/widget/Widget.js.map +1 -1
  152. package/lib/cjs/wizard/Wizard.js +106 -80
  153. package/lib/cjs/wizard/Wizard.js.map +1 -1
  154. package/lib/esm/_common/CodeBlockWrapper.js +10 -8
  155. package/lib/esm/_common/CodeBlockWrapper.js.map +1 -1
  156. package/lib/esm/_common/ConditionalWrap.js +1 -1
  157. package/lib/esm/_common/ConditionalWrap.js.map +1 -1
  158. package/lib/esm/_common/coditionalWrap.js +1 -1
  159. package/lib/esm/_common/coditionalWrap.js.map +1 -1
  160. package/lib/esm/_common/input/RadioAndCheckboxWrapper.js +7 -21
  161. package/lib/esm/_common/input/RadioAndCheckboxWrapper.js.map +1 -1
  162. package/lib/esm/_common/messages.js +0 -1
  163. package/lib/esm/_common/messages.js.map +1 -1
  164. package/lib/esm/{helpers → _common}/types.js +0 -1
  165. package/lib/esm/_common/types.js.map +1 -0
  166. package/lib/esm/_common/utils.js +3 -1
  167. package/lib/esm/_common/utils.js.map +1 -1
  168. package/lib/esm/accordion/Accordion.js +25 -25
  169. package/lib/esm/accordion/Accordion.js.map +1 -1
  170. package/lib/esm/avatar/Avatar.js +7 -17
  171. package/lib/esm/avatar/Avatar.js.map +1 -1
  172. package/lib/esm/banner/Banner.js +30 -25
  173. package/lib/esm/banner/Banner.js.map +1 -1
  174. package/lib/esm/breadcrumbs/Breadcrumbs.js +39 -92
  175. package/lib/esm/breadcrumbs/Breadcrumbs.js.map +1 -1
  176. package/lib/esm/button/Button.js +11 -27
  177. package/lib/esm/button/Button.js.map +1 -1
  178. package/lib/esm/button/IconButton.js +13 -21
  179. package/lib/esm/button/IconButton.js.map +1 -1
  180. package/lib/esm/button/IconButtonArray.js +43 -22
  181. package/lib/esm/button/IconButtonArray.js.map +1 -1
  182. package/lib/esm/callout/Callout.js +2 -14
  183. package/lib/esm/callout/Callout.js.map +1 -1
  184. package/lib/esm/charts/Axis.js +187 -0
  185. package/lib/esm/charts/Axis.js.map +1 -0
  186. package/lib/esm/charts/CartesianGrid.js +66 -0
  187. package/lib/esm/charts/CartesianGrid.js.map +1 -0
  188. package/lib/esm/charts/Chart.js +517 -0
  189. package/lib/esm/charts/Chart.js.map +1 -0
  190. package/lib/esm/charts/ChartTooltip.js +50 -0
  191. package/lib/esm/charts/ChartTooltip.js.map +1 -0
  192. package/lib/esm/charts/Charts.js +96 -0
  193. package/lib/esm/charts/Charts.js.map +1 -0
  194. package/lib/esm/charts/Dot.js +28 -0
  195. package/lib/esm/charts/Dot.js.map +1 -0
  196. package/lib/esm/charts/Legend.js +174 -0
  197. package/lib/esm/charts/Legend.js.map +1 -0
  198. package/lib/esm/charts/Line.js +75 -0
  199. package/lib/esm/charts/Line.js.map +1 -0
  200. package/lib/esm/charts/index.js +22 -0
  201. package/lib/esm/charts/index.js.map +1 -0
  202. package/lib/esm/{table/TableContext.js → charts/utils.js} +16 -11
  203. package/lib/esm/charts/utils.js.map +1 -0
  204. package/lib/esm/checkbox/Checkbox.js +2 -14
  205. package/lib/esm/checkbox/Checkbox.js.map +1 -1
  206. package/lib/esm/clipboard-copier/ClipboardButton.js +16 -20
  207. package/lib/esm/clipboard-copier/ClipboardButton.js.map +1 -1
  208. package/lib/esm/code/Code.js +150 -0
  209. package/lib/esm/code/Code.js.map +1 -0
  210. package/lib/{types/text-input-preview/index.d.ts → esm/code/index.js} +2 -1
  211. package/lib/esm/code/index.js.map +1 -0
  212. package/lib/esm/code/languages.js +46 -0
  213. package/lib/esm/code/languages.js.map +1 -0
  214. package/lib/esm/context-menu/ContextMenu.js +198 -295
  215. package/lib/esm/context-menu/ContextMenu.js.map +1 -1
  216. package/lib/esm/data-grid/Components.js +69 -43
  217. package/lib/esm/data-grid/Components.js.map +1 -1
  218. package/lib/esm/data-grid/DataGrid.js +6 -6
  219. package/lib/esm/data-grid/DataGrid.js.map +1 -1
  220. package/lib/esm/data-grid/illustrations/NoData.js +25 -0
  221. package/lib/esm/data-grid/illustrations/NoData.js.map +1 -0
  222. package/lib/esm/date-picker/DatePicker.js +33 -10
  223. package/lib/esm/date-picker/DatePicker.js.map +1 -1
  224. package/lib/esm/dialog/Dialog.js +25 -39
  225. package/lib/esm/dialog/Dialog.js.map +1 -1
  226. package/lib/esm/divider/Divider.js +2 -14
  227. package/lib/esm/divider/Divider.js.map +1 -1
  228. package/lib/esm/drawer/Drawer.js +11 -9
  229. package/lib/esm/drawer/Drawer.js.map +1 -1
  230. package/lib/esm/dropdown/Dropdown.js +18 -34
  231. package/lib/esm/dropdown/Dropdown.js.map +1 -1
  232. package/lib/esm/dropdown/Overrides.js +6 -2
  233. package/lib/esm/dropdown/Overrides.js.map +1 -1
  234. package/lib/esm/dropdown-button/DropdownButton.js +2 -21
  235. package/lib/esm/dropdown-button/DropdownButton.js.map +1 -1
  236. package/lib/esm/dropdown-button/avatar-test.stories.tsx.js +27 -0
  237. package/lib/esm/dropdown-button/avatar-test.stories.tsx.js.map +1 -0
  238. package/lib/esm/dropzone/Dropzone.js +4 -15
  239. package/lib/esm/dropzone/Dropzone.js.map +1 -1
  240. package/lib/esm/graph-label/GraphLabel.js +33 -34
  241. package/lib/esm/graph-label/GraphLabel.js.map +1 -1
  242. package/lib/esm/helpers/index.js +0 -1
  243. package/lib/esm/helpers/index.js.map +1 -1
  244. package/lib/esm/hooks/index.js +1 -1
  245. package/lib/esm/hooks/index.js.map +1 -1
  246. package/lib/esm/icons/generated/heroIcons.js +904 -584
  247. package/lib/esm/icons/generated/heroIcons.js.map +1 -1
  248. package/lib/esm/index.js +3 -5
  249. package/lib/esm/index.js.map +1 -1
  250. package/lib/esm/inline-edit/InlineEdit.js +12 -7
  251. package/lib/esm/inline-edit/InlineEdit.js.map +1 -1
  252. package/lib/esm/label/Label.js +4 -16
  253. package/lib/esm/label/Label.js.map +1 -1
  254. package/lib/esm/layout/Box.js +6 -18
  255. package/lib/esm/layout/Box.js.map +1 -1
  256. package/lib/esm/layout/Flex.js +5 -17
  257. package/lib/esm/layout/Flex.js.map +1 -1
  258. package/lib/esm/loading-spinner/LoadingSpinner.js +2 -13
  259. package/lib/esm/loading-spinner/LoadingSpinner.js.map +1 -1
  260. package/lib/esm/modal/Modal.js +2 -2
  261. package/lib/esm/modal/Modal.js.map +1 -1
  262. package/lib/esm/popover/Popover.js +64 -204
  263. package/lib/esm/popover/Popover.js.map +1 -1
  264. package/lib/esm/popover/use-popover.js +83 -0
  265. package/lib/esm/popover/use-popover.js.map +1 -0
  266. package/lib/esm/progress-bar/ProgressBar.js +2 -14
  267. package/lib/esm/progress-bar/ProgressBar.js.map +1 -1
  268. package/lib/esm/radio/Radio.js +2 -1
  269. package/lib/esm/radio/Radio.js.map +1 -1
  270. package/lib/esm/segmented-control/SegmentedControl.js +7 -20
  271. package/lib/esm/segmented-control/SegmentedControl.js.map +1 -1
  272. package/lib/esm/side-navigation/SideNavigation.js +52 -59
  273. package/lib/esm/side-navigation/SideNavigation.js.map +1 -1
  274. package/lib/esm/slider/Slider.js +5 -6
  275. package/lib/esm/slider/Slider.js.map +1 -1
  276. package/lib/esm/status-indicator/StatusIndicator.js.map +1 -1
  277. package/lib/esm/switch/Switch.js +13 -1
  278. package/lib/esm/switch/Switch.js.map +1 -1
  279. package/lib/esm/tabs/Tabs.js +12 -28
  280. package/lib/esm/tabs/Tabs.js.map +1 -1
  281. package/lib/esm/tag/Tag.js +5 -18
  282. package/lib/esm/tag/Tag.js.map +1 -1
  283. package/lib/esm/text-input/TextInput.js +14 -24
  284. package/lib/esm/text-input/TextInput.js.map +1 -1
  285. package/lib/esm/text-link/TextLink.js +4 -17
  286. package/lib/esm/text-link/TextLink.js.map +1 -1
  287. package/lib/esm/textarea/Textarea.js +6 -20
  288. package/lib/esm/textarea/Textarea.js.map +1 -1
  289. package/lib/esm/toast/Toast.js +2 -3
  290. package/lib/esm/toast/Toast.js.map +1 -1
  291. package/lib/esm/tooltip/Tooltip.js +119 -0
  292. package/lib/esm/tooltip/Tooltip.js.map +1 -0
  293. package/lib/esm/{tip → tooltip}/index.js +0 -1
  294. package/lib/esm/tooltip/index.js.map +1 -0
  295. package/lib/esm/tooltip/use-tooltip.js +73 -0
  296. package/lib/esm/tooltip/use-tooltip.js.map +1 -0
  297. package/lib/esm/tree-view/TreeView.js +4 -16
  298. package/lib/esm/tree-view/TreeView.js.map +1 -1
  299. package/lib/esm/tree-view/TreeViewTextItem.js +11 -7
  300. package/lib/esm/tree-view/TreeViewTextItem.js.map +1 -1
  301. package/lib/esm/typography/Typography.js +5 -5
  302. package/lib/esm/typography/Typography.js.map +1 -1
  303. package/lib/esm/widget/Widget.js +3 -15
  304. package/lib/esm/widget/Widget.js.map +1 -1
  305. package/lib/esm/wizard/Wizard.js +83 -76
  306. package/lib/esm/wizard/Wizard.js.map +1 -1
  307. package/lib/types/_common/CodeBlockWrapper.d.ts +10 -6
  308. package/lib/types/_common/ConditionalWrap.d.ts +2 -2
  309. package/lib/types/_common/coditionalWrap.d.ts +2 -2
  310. package/lib/types/_common/input/RadioAndCheckboxWrapper.d.ts +15 -4
  311. package/lib/types/_common/input/types.d.ts +7 -9
  312. package/lib/types/_common/messages.d.ts +0 -1
  313. package/lib/types/_common/types.d.ts +40 -0
  314. package/lib/types/accordion/Accordion.d.ts +15 -9
  315. package/lib/types/avatar/Avatar.d.ts +14 -7
  316. package/lib/types/banner/Banner.d.ts +39 -19
  317. package/lib/types/breadcrumbs/Breadcrumbs.d.ts +18 -21
  318. package/lib/types/button/Button.d.ts +35 -13
  319. package/lib/types/button/IconButton.d.ts +31 -12
  320. package/lib/types/button/IconButtonArray.d.ts +20 -15
  321. package/lib/types/callout/Callout.d.ts +6 -3
  322. package/lib/types/charts/Axis.d.ts +37 -0
  323. package/lib/types/{tip/Tooltip.d.ts → charts/CartesianGrid.d.ts} +7 -6
  324. package/lib/types/charts/Chart.d.ts +105 -0
  325. package/lib/types/charts/ChartTooltip.d.ts +59 -0
  326. package/lib/types/charts/Charts.d.ts +94 -0
  327. package/lib/types/charts/Dot.d.ts +27 -0
  328. package/lib/types/charts/Legend.d.ts +25 -0
  329. package/lib/types/charts/Line.d.ts +43 -0
  330. package/lib/types/{code-block → charts}/index.d.ts +1 -1
  331. package/lib/{esm/cypher-code-block/index.js → types/charts/utils.d.ts} +3 -2
  332. package/lib/types/clipboard-copier/ClipboardButton.d.ts +6 -4
  333. package/lib/types/{code-block/CodeBlock.d.ts → code/Code.d.ts} +29 -7
  334. package/lib/types/{cypher-code-block → code}/index.d.ts +1 -1
  335. package/lib/types/code/languages.d.ts +22 -0
  336. package/lib/types/context-menu/ContextMenu.d.ts +43 -66
  337. package/lib/types/data-grid/Components.d.ts +12 -5
  338. package/lib/types/data-grid/DataGrid.d.ts +8 -5
  339. package/lib/types/data-grid/DataGridContext.d.ts +3 -3
  340. package/lib/types/data-grid/datagrid-types.d.ts +3 -3
  341. package/lib/types/data-grid/illustrations/NoData.d.ts +23 -0
  342. package/lib/types/date-picker/DatePicker.d.ts +6 -6
  343. package/lib/types/dialog/Dialog.d.ts +14 -10
  344. package/lib/types/divider/Divider.d.ts +6 -3
  345. package/lib/types/drawer/Drawer.d.ts +11 -8
  346. package/lib/types/dropdown/Dropdown.d.ts +4 -1
  347. package/lib/types/dropdown/Overrides.d.ts +1 -1
  348. package/lib/types/dropdown/types.d.ts +5 -6
  349. package/lib/types/dropdown-button/DropdownButton.d.ts +7 -2
  350. package/lib/{esm/code-block/index.js → types/dropdown-button/avatar-test.stories.tsx.d.ts} +3 -2
  351. package/lib/types/dropzone/Dropzone.d.ts +8 -2
  352. package/lib/types/graph-label/GraphLabel.d.ts +18 -7
  353. package/lib/types/helpers/index.d.ts +0 -1
  354. package/lib/types/hooks/index.d.ts +1 -1
  355. package/lib/types/icons/generated/heroIcons.d.ts +256 -0
  356. package/lib/types/index.d.ts +3 -5
  357. package/lib/types/inline-edit/InlineEdit.d.ts +5 -2
  358. package/lib/types/label/Label.d.ts +4 -3
  359. package/lib/types/layout/Box.d.ts +6 -10
  360. package/lib/types/layout/Flex.d.ts +6 -11
  361. package/lib/types/loading-spinner/LoadingSpinner.d.ts +2 -0
  362. package/lib/types/modal/Modal.d.ts +6 -4
  363. package/lib/types/popover/Popover.d.ts +37 -66
  364. package/lib/types/popover/index.d.ts +4 -0
  365. package/lib/types/popover/use-popover.d.ts +44 -0
  366. package/lib/types/portal/Portal.d.ts +1 -1
  367. package/lib/types/progress-bar/ProgressBar.d.ts +5 -2
  368. package/lib/types/segmented-control/SegmentedControl.d.ts +11 -5
  369. package/lib/types/side-navigation/SideNavigation.d.ts +35 -19
  370. package/lib/types/slider/Slider.d.ts +7 -4
  371. package/lib/types/status-indicator/StatusIndicator.d.ts +4 -2
  372. package/lib/types/tabs/Tabs.d.ts +10 -19
  373. package/lib/types/tag/Tag.d.ts +9 -7
  374. package/lib/types/text-input/TextInput.d.ts +18 -10
  375. package/lib/types/text-link/TextLink.d.ts +8 -6
  376. package/lib/types/textarea/Textarea.d.ts +11 -4
  377. package/lib/types/toast/Toast.d.ts +3 -0
  378. package/lib/types/tooltip/Tooltip.d.ts +80 -0
  379. package/lib/types/{tip → tooltip}/index.d.ts +0 -1
  380. package/lib/types/tooltip/use-tooltip.d.ts +38 -0
  381. package/lib/types/tree-view/TreeView.d.ts +7 -3
  382. package/lib/types/tree-view/tree-view-types.d.ts +2 -2
  383. package/lib/types/typography/Typography.d.ts +16 -5
  384. package/lib/types/widget/Widget.d.ts +3 -0
  385. package/lib/types/wizard/Wizard.d.ts +18 -10
  386. package/package.json +39 -37
  387. package/lib/cjs/code-block/CodeBlock.js +0 -105
  388. package/lib/cjs/code-block/CodeBlock.js.map +0 -1
  389. package/lib/cjs/code-block/index.js.map +0 -1
  390. package/lib/cjs/code-block/languages.js +0 -303
  391. package/lib/cjs/code-block/languages.js.map +0 -1
  392. package/lib/cjs/context-menu/SafeArea.js +0 -84
  393. package/lib/cjs/context-menu/SafeArea.js.map +0 -1
  394. package/lib/cjs/cypher-code-block/CypherCodeBlock.js +0 -74
  395. package/lib/cjs/cypher-code-block/CypherCodeBlock.js.map +0 -1
  396. package/lib/cjs/cypher-code-block/index.js.map +0 -1
  397. package/lib/cjs/helpers/types.js.map +0 -1
  398. package/lib/cjs/table/Components.js +0 -264
  399. package/lib/cjs/table/Components.js.map +0 -1
  400. package/lib/cjs/table/Table.js +0 -100
  401. package/lib/cjs/table/Table.js.map +0 -1
  402. package/lib/cjs/table/TableContext.js.map +0 -1
  403. package/lib/cjs/table/helpers.js +0 -86
  404. package/lib/cjs/table/helpers.js.map +0 -1
  405. package/lib/cjs/table/index.js +0 -55
  406. package/lib/cjs/table/index.js.map +0 -1
  407. package/lib/cjs/text-input-preview/TextInputPreview.js +0 -75
  408. package/lib/cjs/text-input-preview/TextInputPreview.js.map +0 -1
  409. package/lib/cjs/text-input-preview/index.js +0 -38
  410. package/lib/cjs/text-input-preview/index.js.map +0 -1
  411. package/lib/cjs/tip/Tip.js +0 -196
  412. package/lib/cjs/tip/Tip.js.map +0 -1
  413. package/lib/cjs/tip/Tooltip.js +0 -56
  414. package/lib/cjs/tip/Tooltip.js.map +0 -1
  415. package/lib/cjs/tip/index.js.map +0 -1
  416. package/lib/esm/code-block/CodeBlock.js +0 -79
  417. package/lib/esm/code-block/CodeBlock.js.map +0 -1
  418. package/lib/esm/code-block/index.js.map +0 -1
  419. package/lib/esm/code-block/languages.js +0 -302
  420. package/lib/esm/code-block/languages.js.map +0 -1
  421. package/lib/esm/context-menu/SafeArea.js +0 -81
  422. package/lib/esm/context-menu/SafeArea.js.map +0 -1
  423. package/lib/esm/cypher-code-block/CypherCodeBlock.js +0 -48
  424. package/lib/esm/cypher-code-block/CypherCodeBlock.js.map +0 -1
  425. package/lib/esm/cypher-code-block/index.js.map +0 -1
  426. package/lib/esm/helpers/types.js.map +0 -1
  427. package/lib/esm/table/Components.js +0 -244
  428. package/lib/esm/table/Components.js.map +0 -1
  429. package/lib/esm/table/Table.js +0 -97
  430. package/lib/esm/table/Table.js.map +0 -1
  431. package/lib/esm/table/TableContext.js.map +0 -1
  432. package/lib/esm/table/helpers.js +0 -81
  433. package/lib/esm/table/helpers.js.map +0 -1
  434. package/lib/esm/table/index.js +0 -25
  435. package/lib/esm/table/index.js.map +0 -1
  436. package/lib/esm/text-input-preview/TextInputPreview.js +0 -72
  437. package/lib/esm/text-input-preview/TextInputPreview.js.map +0 -1
  438. package/lib/esm/text-input-preview/index.js +0 -22
  439. package/lib/esm/text-input-preview/index.js.map +0 -1
  440. package/lib/esm/tip/Tip.js +0 -186
  441. package/lib/esm/tip/Tip.js.map +0 -1
  442. package/lib/esm/tip/Tooltip.js +0 -50
  443. package/lib/esm/tip/Tooltip.js.map +0 -1
  444. package/lib/esm/tip/index.js.map +0 -1
  445. package/lib/types/code-block/languages.d.ts +0 -23
  446. package/lib/types/cypher-code-block/CypherCodeBlock.d.ts +0 -33
  447. package/lib/types/helpers/types.d.ts +0 -42
  448. package/lib/types/table/Components.d.ts +0 -81
  449. package/lib/types/table/Table.d.ts +0 -62
  450. package/lib/types/table/TableContext.d.ts +0 -61
  451. package/lib/types/table/helpers.d.ts +0 -39
  452. package/lib/types/table/index.d.ts +0 -24
  453. package/lib/types/text-input-preview/TextInputPreview.d.ts +0 -59
  454. package/lib/types/tip/Tip.d.ts +0 -168
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CartesianGrid.js","sourceRoot":"","sources":["../../../src/charts/CartesianGrid.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAc,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAsB,MAAM,SAAS,CAAC;AASjE,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAC5B,SAAS,EACT,cAAc,EACd,UAAU,EAAE,YAAY,EACxB,UAAU,EAAE,YAAY,GACL,EAAE,EAAE;;IACvB,MAAM,gBAAgB,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAEtD,MAAM,OAAO,GAAG,UAAU,CAAC,iCAAiC,EAAE,SAAS,CAAC,CAAC;IAEzE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,UAAU,CAAC,kBAAkB,CAAC,CAAC;IAC/D,IAAI,UAAU,GAA8B,SAAS,CAAC;IACtD,IAAI,UAAU,GAA8B,SAAS,CAAC;IAEtD,IAAI,YAAY,EAAE,CAAC;QACjB,UAAU,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,YAAY,CAAC,0CAAE,+BAA+B,CAAC;IACvE,CAAC;IACD,IAAI,YAAY,EAAE,CAAC;QACjB,UAAU,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,YAAY,CAAC,0CAAE,gCAAgC,CAAC;IACxE,CAAC;IAED,yBAAyB;IACzB,MAAM,cAAc,GAAG,EAAE,CAAC;IAC1B,MAAM,gBAAgB,GAAG,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,mCAAI,CAAC,CAAC;IAClD,MAAM,MAAM,GACV,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,cAAc,CAAC,CAAC,mCAAI,EAAE,CAAC;IAEzE,yBAAyB;IACzB,MAAM,cAAc,GAAG,EAAE,CAAC;IAC1B,MAAM,gBAAgB,GAAG,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,KAAK,mCAAI,CAAC,CAAC;IAEjD,MAAM,MAAM,GACV,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,cAAc,CAAC,CAAC,mCAAI,EAAE,CAAC;IAEzE,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,CACL,6BAAK,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,gBAAgB,IAAM,cAAc,eAC/D,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBACnB,MAAM,CAAC,GAAG,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAG,IAAI,CAAC,CAAC;gBAC7B,OAAO,CACL,cAEE,SAAS,EAAC,sCAAsC,EAChD,KAAK,EAAE;wBACL,GAAG,EAAE,CAAC;wBACN,QAAQ,EAAE,UAAU;wBACpB,KAAK,EAAE,MAAM;qBACd,IANI,IAAI,CAAC,QAAQ,EAAE,CAOpB,CACH,CAAC;YACJ,CAAC,CAAC,EAED,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBACnB,MAAM,CAAC,GAAG,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAG,IAAI,CAAC,CAAC;gBAC7B,OAAO,CACL,cAEE,SAAS,EAAC,sCAAsC,EAChD,KAAK,EAAE;wBACL,IAAI,EAAE,CAAC;wBACP,QAAQ,EAAE,UAAU;wBACpB,KAAK,EAAE,KAAK;wBACZ,MAAM,EAAE,MAAM;qBACf,IAPI,IAAI,CAAC,QAAQ,EAAE,CAQpB,CACH,CAAC;YACJ,CAAC,CAAC,KACE,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,517 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ /**
3
+ *
4
+ * Copyright (c) "Neo4j"
5
+ * Neo4j Sweden AB [http://neo4j.com]
6
+ *
7
+ * This file is part of Neo4j.
8
+ *
9
+ * Neo4j is free software: you can redistribute it and/or modify
10
+ * it under the terms of the GNU General Public License as published by
11
+ * the Free Software Foundation, either version 3 of the License, or
12
+ * (at your option) any later version.
13
+ *
14
+ * This program is distributed in the hope that it will be useful,
15
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
16
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
+ * GNU General Public License for more details.
18
+ *
19
+ * You should have received a copy of the GNU General Public License
20
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
21
+ */
22
+ import { forwardRef, useEffect, useState, useContext, createContext, useImperativeHandle, useRef, Children, isValidElement,
23
+ // memo,
24
+ useMemo, } from 'react';
25
+ import * as d3 from 'd3';
26
+ import { ChartsContext,
27
+ // type ChartSize,
28
+ // type Metadata,
29
+ } from './Charts';
30
+ import { classNames } from '../_common/defaultImports';
31
+ // import { TopXAxis, BottomXAxis, LeftYAxis, RightYAxis } from './Axis';
32
+ import { Line } from './Line';
33
+ // import { LineThreshold } from './LineThreshold';
34
+ import { Dot } from './Dot';
35
+ // import { da, de, he, set } from 'date-fns/locale';
36
+ import { line } from 'd3-shape';
37
+ import { ChartTooltip } from './ChartTooltip';
38
+ import { useDebounceCallback, useResizeObserver } from 'usehooks-ts';
39
+ import { useThrottle } from './utils';
40
+ const defaultChartProps = {
41
+ scales: {},
42
+ pointSelectionType: 'single',
43
+ };
44
+ export const canvasLeftPadding = 8;
45
+ export const canvasRightPadding = 8;
46
+ export const ChartsChartContext = createContext({
47
+ chartRef: null,
48
+ contentRef: null,
49
+ contentSize: undefined,
50
+ scales: {},
51
+ linePointArray: [],
52
+ mousePositionRef: undefined,
53
+ });
54
+ const ChartComponent = forwardRef(function ChartComponent({ children, className,
55
+ // scales: textScales = defaultChartProps.scales,
56
+ // hoverAreaType = defaultChartProps.hoverAreaType,
57
+ scales: scalesProp = defaultChartProps.scales, pointSelectionType = defaultChartProps.pointSelectionType, }, ref) {
58
+ // console.info('Chart.tsx - ChartComponent - initiation');
59
+ var _a, _b;
60
+ // useEffect(() => {
61
+ // console.info('component rerendered');
62
+ // });
63
+ const chartsContextValue = useContext(ChartsContext);
64
+ const { data, metadata } = chartsContextValue;
65
+ const chartRef = useRef(null);
66
+ const contentRef = useRef(null);
67
+ const tooltipAnchorRef = useRef(null);
68
+ const horizontalIntersectionLineRef = useRef(null);
69
+ const mousePositionRef = useRef({ x: 0, y: 0 });
70
+ const [hasLines, setHasLines] = useState(false);
71
+ const [contentSize, setContentSize] = useState(undefined);
72
+ // The svg paths calculated for the voronoi polygons, includes
73
+ // the assigned line point for the section for the onHover event.
74
+ const [voroniPolygonPaths, setVoroniPolygonPaths] = useState();
75
+ const [linePointArray, setLinePointArray] = useState([]);
76
+ // The point where the tooltip will be anchored.
77
+ const selectedPointRef = useRef({});
78
+ // The points that will display a thumb and be included in the tooltip.
79
+ const [selectedPoints, setSelectedPoints] = useState([]);
80
+ // useMemo:initialScales
81
+ const initialScales = useMemo(() => {
82
+ // Map the string scales to actual d3 function scales.
83
+ //Will only re-run if the scalesProp changes.
84
+ const initialScales = {};
85
+ Object.entries(scalesProp).forEach(([key, value]) => {
86
+ switch (value.type) {
87
+ case 'linear':
88
+ initialScales[key] = {
89
+ originalDomain: null,
90
+ functionWithContentWidthAsRange: d3.scaleLinear(),
91
+ functionWithContentHeightAsRange: d3.scaleLinear(),
92
+ function: d3.scaleLinear(),
93
+ };
94
+ break;
95
+ case 'log':
96
+ initialScales[key] = {
97
+ originalDomain: null,
98
+ functionWithContentWidthAsRange: d3.scaleLog(),
99
+ functionWithContentHeightAsRange: d3.scaleLog(),
100
+ function: d3.scaleLog(),
101
+ };
102
+ break;
103
+ case 'time':
104
+ initialScales[key] = {
105
+ originalDomain: null,
106
+ functionWithContentWidthAsRange: d3.scaleTime(),
107
+ functionWithContentHeightAsRange: d3.scaleTime(),
108
+ function: d3.scaleTime(),
109
+ };
110
+ break;
111
+ case 'utc':
112
+ initialScales[key] = {
113
+ originalDomain: null,
114
+ functionWithContentWidthAsRange: d3.scaleUtc(),
115
+ functionWithContentHeightAsRange: d3.scaleUtc(),
116
+ function: d3.scaleUtc(),
117
+ };
118
+ break;
119
+ default:
120
+ console.error('Invalid scale type');
121
+ break;
122
+ }
123
+ });
124
+ return initialScales;
125
+ }, [scalesProp]);
126
+ const [scales, setScales] = useState(initialScales);
127
+ // Used to visualize the voronoi polygons.
128
+ const shouldShowVoronoiDebug = true;
129
+ const pointPixelAxis = pointSelectionType === 'x-axis' || pointSelectionType === 'single'
130
+ ? 'pointPixelX'
131
+ : 'pointPixelY';
132
+ // useEffect:contentSize
133
+ useEffect(() => {
134
+ // Needs to run after first render to determine size of content container.
135
+ // console.info('Chart.tsx - ChartComponent - useEffect - contentSize');
136
+ if (!contentRef.current)
137
+ return;
138
+ // console.info(
139
+ // 'Chart.tsx - ChartComponent - useEffect - contentSize (past guard)',
140
+ // );
141
+ const contentElement = contentRef.current;
142
+ if (contentElement && contentElement.getBoundingClientRect) {
143
+ const newContentSize = {
144
+ width: contentElement.getBoundingClientRect().width,
145
+ height: contentElement.getBoundingClientRect().height,
146
+ };
147
+ // console.info(
148
+ // 'Chart.tsx - ChartComponent - useEffect - setting contentSize',
149
+ // );
150
+ // Will force a re-render, calculations require
151
+ // width and height of the content container.
152
+ setContentSize(newContentSize);
153
+ }
154
+ }, [contentRef]);
155
+ const onResize = useDebounceCallback(() => {
156
+ // console.info(
157
+ // 'Chart.tsx - ChartComponent - useResizeObserver/useDebounceCallback - contentSize',
158
+ // );
159
+ // Timeout to ensure all rendering is done before we get the size.
160
+ const contentElement = contentRef.current;
161
+ if (contentElement && contentElement.getBoundingClientRect()) {
162
+ const newContentSize = {
163
+ width: contentElement.getBoundingClientRect().width -
164
+ canvasLeftPadding -
165
+ canvasRightPadding,
166
+ height: contentElement.getBoundingClientRect().height,
167
+ };
168
+ // console.info(
169
+ // 'Chart.tsx - ChartComponent - useResizeObserver/useDebounceCallback - setting contentSize',
170
+ // );
171
+ setContentSize(newContentSize);
172
+ }
173
+ }, 200);
174
+ useResizeObserver({
175
+ ref: chartRef,
176
+ onResize: onResize,
177
+ });
178
+ useImperativeHandle(ref, () => {
179
+ // console.info('Chart.tsx - ChartComponent - useImperativeHandle - ref');
180
+ const svgChart = chartRef.current;
181
+ if (!svgChart) {
182
+ return null;
183
+ }
184
+ return svgChart;
185
+ });
186
+ // useEffect:line
187
+ // TODO: We don't need to run this after a render, we want this to run when we
188
+ // have the contentRef ref and contentSize state set. This will force a re-render
189
+ // when setting the states at the end.
190
+ useEffect(() => {
191
+ // console.info('Chart.tsx - ChartComponent - useEffect - line');
192
+ if (!data)
193
+ return;
194
+ if (!contentRef.current)
195
+ return;
196
+ const width = contentSize === null || contentSize === void 0 ? void 0 : contentSize.width;
197
+ const height = contentSize === null || contentSize === void 0 ? void 0 : contentSize.height;
198
+ if (!width || !height)
199
+ return;
200
+ // console.info('Chart.tsx - useEffect - line (past guard)');
201
+ // This use effect is specific for Line components.
202
+ // If there are no line components then we don't need to do anything.
203
+ const arrayChildren = Children.toArray(children);
204
+ const hasLines = arrayChildren.some((child) => isValidElement(child) && child.type === Line);
205
+ if (!hasLines)
206
+ return;
207
+ setHasLines(true);
208
+ // Here we are figuring out the min and max values for all the scales.
209
+ // To do this we need to iterate through all of the lines and assign
210
+ // each lines designated scale to a min max object specific for that scale.
211
+ const tempLinePointArray = [];
212
+ let newScales = Object.assign({}, scales);
213
+ arrayChildren.forEach((child) => {
214
+ var _a, _b, _c, _d;
215
+ // Per line.
216
+ if (!isValidElement(child) || child.type !== Line)
217
+ return;
218
+ const { scaleXAxis: scaleXAxisId, scaleYAxis: scaleYAxisId, accessorXAxis: initialAccessorXAxis, accessorYAxis: initialAccessorYAxis, dataId, seriesInterval, seriesIntervalStartValue, } = child.props;
219
+ // If it's not visible, don't include it.
220
+ if (metadata[dataId].isVisible === false)
221
+ return;
222
+ // Need to set these values for series type data.
223
+ const accessorXAxis = seriesInterval
224
+ ? 'xAxisValue'
225
+ : initialAccessorXAxis;
226
+ const accessorYAxis = seriesInterval
227
+ ? 'yAxisValue'
228
+ : initialAccessorYAxis;
229
+ const lineDataIndex = data.findIndex((data) => data.id === dataId);
230
+ const lineData = data[lineDataIndex];
231
+ if (!lineData)
232
+ return; // Id given does not exist in the data array.
233
+ // Convert line data to d3 line data.
234
+ let singleLinePointArray = [];
235
+ if (seriesInterval && seriesIntervalStartValue) {
236
+ // Series interval.
237
+ const seriesLineData = lineData;
238
+ singleLinePointArray = seriesLineData.data.map((dataPoint, index) => {
239
+ const newLinePoint = {
240
+ dataId,
241
+ pointIndex: index,
242
+ dataIndex: lineDataIndex,
243
+ accessorXAxis,
244
+ accessorYAxis,
245
+ xAxisValue: dataPoint !== undefined && dataPoint !== null
246
+ ? seriesIntervalStartValue + seriesInterval * index
247
+ : null,
248
+ yAxisValue: dataPoint,
249
+ scaleXAxisId,
250
+ scaleYAxisId,
251
+ };
252
+ return newLinePoint;
253
+ });
254
+ }
255
+ else {
256
+ // At least two dimensions are required for the line data.
257
+ const nonSeriesData = lineData;
258
+ singleLinePointArray = nonSeriesData.data.map((dataPointArray, index) => {
259
+ const newLinePoint = {
260
+ dataId,
261
+ pointIndex: index,
262
+ dataIndex: lineDataIndex,
263
+ accessorXAxis,
264
+ accessorYAxis,
265
+ scaleXAxisId,
266
+ scaleYAxisId,
267
+ };
268
+ dataPointArray.forEach((dataPoint, index) => {
269
+ newLinePoint[nonSeriesData.metadata[index]] = dataPoint;
270
+ });
271
+ return newLinePoint;
272
+ });
273
+ }
274
+ // Add this single line to the array that holds all of the lines.
275
+ tempLinePointArray.push(...singleLinePointArray);
276
+ // Get min and max values for both x and y axis from the data point array.
277
+ const minValueXAxis = d3.min(tempLinePointArray,
278
+ // @ts-expect-error d3 types are not correct
279
+ (linePoint) => linePoint[accessorXAxis]);
280
+ const maxValueXAxis = d3.max(tempLinePointArray,
281
+ // @ts-expect-error d3 types are not correct
282
+ (linePoint) => linePoint[accessorXAxis]);
283
+ const minValueYAxis = d3.min(tempLinePointArray,
284
+ // @ts-expect-error d3 types are not correct
285
+ (linePoint) => linePoint[accessorYAxis]);
286
+ const maxValueYAxis = d3.max(tempLinePointArray,
287
+ // @ts-expect-error d3 types are not correct
288
+ (linePoint) => linePoint[accessorYAxis]);
289
+ const scaleXAxis = newScales[scaleXAxisId];
290
+ const scaleYAxis = newScales[scaleYAxisId];
291
+ // Here we figure out the min and max values for the specific scale,
292
+ // this compares previous lines min max values to the current lines
293
+ // min max values on the same scale.
294
+ let scaleXAxisMin = undefined;
295
+ let scaleXAxisMax = undefined;
296
+ let scaleYAxisMin = undefined;
297
+ let scaleYAxisMax = undefined;
298
+ if (scalesProp[scaleXAxisId].domain !== undefined) {
299
+ scaleXAxisMin = scalesProp[scaleXAxisId].domain[0];
300
+ scaleXAxisMax = scalesProp[scaleXAxisId].domain[1];
301
+ }
302
+ else {
303
+ //@ts-expect-error d3 types are not correct - it can handle undefined
304
+ scaleXAxisMin = d3.min([(_a = scaleXAxis.originalDomain) === null || _a === void 0 ? void 0 : _a[0], minValueXAxis]);
305
+ //@ts-expect-error d3 types are not correct - it can handle undefined
306
+ scaleXAxisMax = d3.max([(_b = scaleXAxis.originalDomain) === null || _b === void 0 ? void 0 : _b[1], maxValueXAxis]);
307
+ }
308
+ if (scalesProp[scaleYAxisId].domain !== undefined) {
309
+ scaleYAxisMin = scalesProp[scaleYAxisId].domain[0];
310
+ scaleYAxisMax = scalesProp[scaleYAxisId].domain[1];
311
+ }
312
+ else {
313
+ //@ts-expect-error d3 types are not correct - it can handle undefined
314
+ scaleYAxisMin = d3.min([(_c = scaleYAxis.originalDomain) === null || _c === void 0 ? void 0 : _c[0], minValueYAxis]);
315
+ //@ts-expect-error d3 types are not correct - it can handle undefined
316
+ scaleYAxisMax = d3.max([(_d = scaleYAxis.originalDomain) === null || _d === void 0 ? void 0 : _d[1], maxValueYAxis]);
317
+ }
318
+ // D3 types are not correct it will be the same type as the original domain.
319
+ // casting it to [number, number] to avoid type errors.
320
+ const xValuesDomain = [scaleXAxisMin, scaleXAxisMax];
321
+ // D3 types are not correct it will be the same type as the original domain.
322
+ // casting it to [number, number] to avoid type errors.
323
+ const yValuesDomain = [scaleYAxisMin, scaleYAxisMax];
324
+ scaleXAxis.function.domain(xValuesDomain);
325
+ scaleXAxis.originalDomain = xValuesDomain;
326
+ scaleXAxis.functionWithContentWidthAsRange.domain(xValuesDomain);
327
+ scaleXAxis.functionWithContentWidthAsRange.range([0, width !== null && width !== void 0 ? width : 0]);
328
+ scaleXAxis.functionWithContentHeightAsRange.domain(xValuesDomain);
329
+ scaleXAxis.functionWithContentHeightAsRange.range([height !== null && height !== void 0 ? height : 0, 0]);
330
+ scaleYAxis.function.domain(yValuesDomain);
331
+ scaleYAxis.originalDomain = yValuesDomain;
332
+ scaleYAxis.functionWithContentWidthAsRange.domain(yValuesDomain);
333
+ scaleYAxis.functionWithContentWidthAsRange.range([0, width !== null && width !== void 0 ? width : 0]);
334
+ scaleYAxis.functionWithContentHeightAsRange.domain(yValuesDomain);
335
+ scaleYAxis.functionWithContentHeightAsRange.range([height !== null && height !== void 0 ? height : 0, 0]); // inverting vertical scale since SVG has 0,0 at top left.
336
+ // Update the specific scale.
337
+ newScales = Object.assign(Object.assign({}, newScales), { [scaleXAxisId]: scaleXAxis, [scaleYAxisId]: scaleYAxis });
338
+ });
339
+ // The points must be created after the line points have been created.
340
+ // This is because the points are based on the scalers created from the line points.
341
+ // The min max values are constantly updated. So looping twice is inevitable.
342
+ const newLinePointArray = [];
343
+ const delaunayPointArray = [];
344
+ tempLinePointArray.forEach((linePoint) => {
345
+ const { accessorXAxis, accessorYAxis, scaleXAxisId, scaleYAxisId } = linePoint;
346
+ const valueX = linePoint[accessorXAxis];
347
+ const valueY = linePoint[accessorYAxis];
348
+ const scaleXAxisObject = newScales[scaleXAxisId];
349
+ const scaleYAxisObject = newScales[scaleYAxisId];
350
+ const scaleXAxis = scaleXAxisObject.functionWithContentWidthAsRange;
351
+ const scaleYAxis = scaleYAxisObject.functionWithContentHeightAsRange;
352
+ const pointPixelX = scaleXAxis(valueX);
353
+ const pointPixelY = scaleYAxis(valueY);
354
+ const newLinePoint = Object.assign(Object.assign({}, linePoint), { pointPixelX,
355
+ pointPixelY });
356
+ newLinePointArray.push(newLinePoint);
357
+ // We diss line points that have null values as they don't require
358
+ // an on hover event and therfor polygon paths.
359
+ if (valueX === null || valueY === null)
360
+ return;
361
+ if (pointPixelX === null || pointPixelY === null)
362
+ return;
363
+ // Calculating the voroni polygons requires knowing the exact
364
+ // pixel positions of all the line points.
365
+ delaunayPointArray.push([pointPixelX, pointPixelY, newLinePoint]);
366
+ });
367
+ // We have now created the line points and scales.
368
+ // From those we can now calculate the on hover voroni polygons.
369
+ // This must also be calculated after all updates as the polygon
370
+ // paths will change depending on the line points available.
371
+ const delaunayPointArrayLike = Object.assign(Object.assign({}, delaunayPointArray), { length: delaunayPointArray.length });
372
+ const delaunay = d3.Delaunay.from(delaunayPointArrayLike);
373
+ const voronoi = delaunay.voronoi([0, 0, width, height]);
374
+ const voronoiPolygons = voronoi.cellPolygons();
375
+ const voronoiPolygonPointsArray = Array.from(voronoiPolygons);
376
+ const delaunayLineFn = line();
377
+ const voroniPolygonPaths = voronoiPolygonPointsArray.map((voronoiPolygonPoints, index) => {
378
+ const path = delaunayLineFn(voronoiPolygonPoints);
379
+ const linePoint = delaunayPointArray[index][2];
380
+ return { path, linePoint };
381
+ });
382
+ setVoroniPolygonPaths(voroniPolygonPaths);
383
+ setLinePointArray(newLinePointArray);
384
+ setScales(newScales);
385
+ // eslint-disable-next-line react-hooks/exhaustive-deps
386
+ }, [contentSize, scalesProp, children, data, metadata]);
387
+ const handleMouseMove = (event, linePoint) => {
388
+ const [xm, ym] = d3.pointer(event, contentRef.current);
389
+ const mousePixelX = xm;
390
+ const mousePixelY = ym;
391
+ mousePositionRef.current.x = mousePixelX;
392
+ mousePositionRef.current.y = mousePixelY;
393
+ const { pointPixelX, pointPixelY, pointIndex, dataId } = linePoint;
394
+ const distance = Math.hypot(pointPixelX - mousePixelX, pointPixelY - mousePixelY);
395
+ const radius = 32;
396
+ const shouldTrigger = distance < radius;
397
+ if (shouldTrigger) {
398
+ // console.info('trigger');
399
+ const pointPixelAxisValue = linePoint[pointPixelAxis];
400
+ const newSelectedPoints = pointSelectionGroups[pointPixelAxisValue];
401
+ if (newSelectedPoints !== selectedPoints)
402
+ // console.info('set selected points');
403
+ selectedPointRef.current = { dataId, pointIndex };
404
+ setSelectedPoints(newSelectedPoints);
405
+ }
406
+ else if (selectedPoints.length > 0) {
407
+ // console.info('unset selected points');
408
+ selectedPointRef.current = {};
409
+ setSelectedPoints([]);
410
+ }
411
+ };
412
+ const throttledHandleMouseMove = useThrottle(handleMouseMove, 100);
413
+ const handleMouseLeave = () => {
414
+ // Mouse moves outside of the content area.
415
+ if (selectedPoints.length > 0)
416
+ setSelectedPoints([]);
417
+ };
418
+ const chartContextValue = {
419
+ chartRef,
420
+ contentRef,
421
+ contentSize,
422
+ scales,
423
+ linePointArray,
424
+ mousePositionRef,
425
+ };
426
+ const chartClasses = classNames(`ndl-charts-chart`, className);
427
+ const contentClasses = classNames(`ndl-charts-chart-content`, className);
428
+ // useMemo:pointSelectionGroups
429
+ const pointSelectionGroups = useMemo(() => {
430
+ // console.info('Chart.tsx - ChartComponent - useMemo - pointSelectionGroups');
431
+ // The following is only used for pointSelectionType x-axis and y-axis
432
+ const pointSelectionGroups = {};
433
+ for (let i = 0; i < linePointArray.length; i += 1) {
434
+ const linePoint = linePointArray[i];
435
+ const pointPixelAxis = pointSelectionType === 'x-axis' || pointSelectionType === 'single'
436
+ ? 'pointPixelX'
437
+ : 'pointPixelY';
438
+ const pointPixelAxisValue = linePoint[pointPixelAxis];
439
+ if (pointPixelAxisValue === undefined)
440
+ continue;
441
+ if (!pointSelectionGroups[pointPixelAxisValue]) {
442
+ pointSelectionGroups[pointPixelAxisValue] = [];
443
+ pointSelectionGroups[pointPixelAxisValue].push(linePoint);
444
+ }
445
+ else {
446
+ // Pixel point already exists.
447
+ pointSelectionGroups[pointPixelAxisValue].push(linePoint);
448
+ }
449
+ }
450
+ return pointSelectionGroups;
451
+ }, [pointSelectionType, linePointArray]);
452
+ const isCanvasComponent = (child) => {
453
+ return isValidElement(child) && child.type === Line;
454
+ };
455
+ return (_jsx(ChartsChartContext.Provider, { value: chartContextValue, children: _jsxs("div", { ref: chartRef, className: chartClasses, onMouseLeave: handleMouseLeave, children: [_jsxs("svg", { ref: contentRef, className: contentClasses, children: [_jsxs("g", { children: [Children.toArray(children).map((child) => {
456
+ return isCanvasComponent(child) ? child : null;
457
+ }), hasLines &&
458
+ contentSize &&
459
+ selectedPoints &&
460
+ selectedPoints.length > 0 && (
461
+ // Dotted line for x-axis selection.
462
+ _jsx("line", { ref: horizontalIntersectionLineRef, x1: selectedPoints[0].pointPixelX, x2: selectedPoints[0].pointPixelX, y1: "0", y2: contentSize.height, style: {
463
+ strokeDasharray: '5,7',
464
+ stroke: 'rgb(111, 117, 126)',
465
+ } })), hasLines &&
466
+ contentSize &&
467
+ selectedPoints &&
468
+ selectedPoints.length > 0 &&
469
+ // The point thumb for x-axis selection.
470
+ selectedPoints.map((linePoint, index) => {
471
+ const { dataId, pointIndex, pointPixelX, pointPixelY } = linePoint;
472
+ const { isVisible, color } = metadata[dataId];
473
+ if (isVisible) {
474
+ // We want to attach the tooltip anchor to the correctly selected point.
475
+ const { dataId: selectedPointRefDataId, pointIndex: selectedPointRefPointIndex, } = selectedPointRef.current;
476
+ const shouldAttachTooltipAnchorRef = dataId === selectedPointRefDataId &&
477
+ pointIndex === selectedPointRefPointIndex;
478
+ return (_jsx(Dot, { ref: shouldAttachTooltipAnchorRef ? tooltipAnchorRef : null, x: pointPixelX, y: pointPixelY, color: color }, index));
479
+ }
480
+ return false;
481
+ })] }), _jsx("g", { children: hasLines &&
482
+ voroniPolygonPaths &&
483
+ voroniPolygonPaths.map((voroniPolygonPath, index) => {
484
+ const { path, linePoint } = voroniPolygonPath;
485
+ return (_jsx("path", { d: path, className: "action-voronoi", onMouseMove: (event) => {
486
+ throttledHandleMouseMove(event, linePoint);
487
+ }, style: {
488
+ strokeWidth: 1,
489
+ stroke: 'black',
490
+ strokeOpacity: 0.5,
491
+ fill: '#fff',
492
+ opacity: shouldShowVoronoiDebug ? 0.5 : 0,
493
+ } }, index));
494
+ }) })] }), _jsx(ChartTooltip
495
+ //@ts-expect-error SVG element ref will work in this case.
496
+ , {
497
+ //@ts-expect-error SVG element ref will work in this case.
498
+ anchorRef: tooltipAnchorRef, isOpen: Boolean(hasLines &&
499
+ contentSize &&
500
+ selectedPoints &&
501
+ selectedPoints.length > 0), children: hasLines &&
502
+ contentSize &&
503
+ selectedPoints &&
504
+ selectedPoints.length > 0 && (_jsxs(_Fragment, { children: [_jsx(ChartTooltip.Title, { children: String((_b = selectedPoints[0][(_a = selectedPoints[0]) === null || _a === void 0 ? void 0 : _a.accessorXAxis]) !== null && _b !== void 0 ? _b : '') }), selectedPoints.map((linePoint) => {
505
+ var _a;
506
+ if (linePoint === undefined)
507
+ return null;
508
+ const { dataId, accessorYAxis } = linePoint;
509
+ return (_jsx(ChartTooltip.Content, { leftElement: chartsContextValue.metadata[dataId].label, rightElement: ((_a = linePoint[accessorYAxis]) === null || _a === void 0 ? void 0 : _a.toString()) || '', indentSquareColor: chartsContextValue.metadata[dataId].color }, dataId));
510
+ })] })) })] }) }));
511
+ });
512
+ // Issue with TypeScript forwardRef and subcomponents: https://github.com/DefinitelyTyped/DefinitelyTyped/issues/34757#issuecomment-894053907
513
+ const Chart = Object.assign(ChartComponent, {
514
+ Line,
515
+ });
516
+ export { Chart };
517
+ //# sourceMappingURL=Chart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Chart.js","sourceRoot":"","sources":["../../../src/charts/Chart.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ *
4
+ * Copyright (c) "Neo4j"
5
+ * Neo4j Sweden AB [http://neo4j.com]
6
+ *
7
+ * This file is part of Neo4j.
8
+ *
9
+ * Neo4j is free software: you can redistribute it and/or modify
10
+ * it under the terms of the GNU General Public License as published by
11
+ * the Free Software Foundation, either version 3 of the License, or
12
+ * (at your option) any later version.
13
+ *
14
+ * This program is distributed in the hope that it will be useful,
15
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
16
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
+ * GNU General Public License for more details.
18
+ *
19
+ * You should have received a copy of the GNU General Public License
20
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
21
+ */
22
+ import classNames from 'classnames';
23
+ import { forwardRef } from 'react';
24
+ import { Typography } from '../typography';
25
+ import { Popover } from '../popover';
26
+ import { StatusIndicator } from '../status-indicator';
27
+ import { TextLink } from '../text-link';
28
+ export const ChartTooltipComponent = forwardRef(function ChartTooltipComponent({ children, className, htmlAttributes, anchorRef, isOpen, style, }, ref) {
29
+ // console.info('ChartTooltip.tsx - ChartTooltipComponent - initiation');
30
+ const classes = classNames(`ndl-charts-chart-tooltip`, className);
31
+ return (_jsx(Popover, { isOpen: isOpen, anchorElement: anchorRef.current, placement: "middle-end-middle-start", children: _jsx(Popover.Content, Object.assign({ className: classes, ref: ref, style: style }, htmlAttributes, { children: children })) }));
32
+ });
33
+ const ChartTooltipTitle = forwardRef(function ChartTooltipTitle({ children, }, ref) {
34
+ const classes = classNames(`ndl-charts-chart-tooltip-title`);
35
+ return (_jsx(Typography, { ref: ref, variant: "body-small", className: classes, children: children }));
36
+ });
37
+ const ChartTooltipContent = forwardRef(function ChartTooltipContent({ leftElement, rightElement, indentSquareColor, notification, }, ref) {
38
+ const classes = classNames(`ndl-charts-chart-tooltip-content`);
39
+ return (_jsxs("div", { ref: ref, className: classes, children: [_jsxs("div", { className: "ndl-charts-chart-tooltip-content-line", children: [indentSquareColor && (_jsx("div", { className: "ndl-charts-chart-tooltip-content-indent-square", style: { backgroundColor: indentSquareColor } })), leftElement && (_jsx(Typography, { variant: rightElement ? 'body-medium' : 'label', className: "ndl-charts-chart-tooltip-content-left-element", children: leftElement })), rightElement && (_jsx(Typography, { variant: "label", className: "ndl-charts-chart-tooltip-content-right-element", children: rightElement }))] }), notification && (_jsxs("div", { className: "ndl-charts-chart-tooltip-content-notification", children: [_jsx(StatusIndicator, { type: notification.type }), _jsx(Typography, { variant: "body-medium", className: "ndl-charts-chart-tooltip-content-notification-left-element", children: notification.leftElement }), _jsx(Typography, { variant: "label", className: "ndl-charts-chart-tooltip-content-notification-right-element", children: notification.rightElement })] }))] }));
40
+ });
41
+ const ChartTooltipLink = forwardRef(function ChartTooltipAction(props, ref) {
42
+ return _jsx(TextLink, Object.assign({ ref: ref }, props));
43
+ });
44
+ const ChartTooltip = Object.assign(ChartTooltipComponent, {
45
+ Title: ChartTooltipTitle,
46
+ Content: ChartTooltipContent,
47
+ Link: ChartTooltipLink,
48
+ });
49
+ export { ChartTooltip };
50
+ //# sourceMappingURL=ChartTooltip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChartTooltip.js","sourceRoot":"","sources":["../../../src/charts/ChartTooltip.tsx"],"names":[],"mappings":"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"}