@neo4j-ndl/react 2.16.26 → 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 (450) 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/accordion/Accordion.js +24 -24
  14. package/lib/cjs/accordion/Accordion.js.map +1 -1
  15. package/lib/cjs/avatar/Avatar.js +7 -17
  16. package/lib/cjs/avatar/Avatar.js.map +1 -1
  17. package/lib/cjs/banner/Banner.js +30 -25
  18. package/lib/cjs/banner/Banner.js.map +1 -1
  19. package/lib/cjs/breadcrumbs/Breadcrumbs.js +60 -90
  20. package/lib/cjs/breadcrumbs/Breadcrumbs.js.map +1 -1
  21. package/lib/cjs/button/Button.js +17 -33
  22. package/lib/cjs/button/Button.js.map +1 -1
  23. package/lib/cjs/button/IconButton.js +13 -21
  24. package/lib/cjs/button/IconButton.js.map +1 -1
  25. package/lib/cjs/button/IconButtonArray.js +43 -22
  26. package/lib/cjs/button/IconButtonArray.js.map +1 -1
  27. package/lib/cjs/callout/Callout.js +2 -14
  28. package/lib/cjs/callout/Callout.js.map +1 -1
  29. package/lib/cjs/charts/Axis.js +216 -0
  30. package/lib/cjs/charts/Axis.js.map +1 -0
  31. package/lib/cjs/charts/CartesianGrid.js +73 -0
  32. package/lib/cjs/charts/CartesianGrid.js.map +1 -0
  33. package/lib/cjs/charts/Chart.js +538 -0
  34. package/lib/cjs/charts/Chart.js.map +1 -0
  35. package/lib/cjs/charts/ChartTooltip.js +56 -0
  36. package/lib/cjs/charts/ChartTooltip.js.map +1 -0
  37. package/lib/cjs/charts/Charts.js +99 -0
  38. package/lib/cjs/charts/Charts.js.map +1 -0
  39. package/lib/cjs/charts/Dot.js +31 -0
  40. package/lib/cjs/charts/Dot.js.map +1 -0
  41. package/lib/cjs/charts/Legend.js +180 -0
  42. package/lib/cjs/charts/Legend.js.map +1 -0
  43. package/lib/cjs/charts/Line.js +101 -0
  44. package/lib/cjs/charts/Line.js.map +1 -0
  45. package/lib/cjs/{code-block → charts}/index.js +1 -1
  46. package/lib/cjs/charts/index.js.map +1 -0
  47. package/lib/cjs/{table/TableContext.js → charts/utils.js} +18 -14
  48. package/lib/cjs/charts/utils.js.map +1 -0
  49. package/lib/cjs/checkbox/Checkbox.js +2 -14
  50. package/lib/cjs/checkbox/Checkbox.js.map +1 -1
  51. package/lib/cjs/clipboard-copier/ClipboardButton.js +16 -20
  52. package/lib/cjs/clipboard-copier/ClipboardButton.js.map +1 -1
  53. package/lib/cjs/code/Code.js +179 -0
  54. package/lib/cjs/code/Code.js.map +1 -0
  55. package/lib/cjs/{cypher-code-block → code}/index.js +1 -1
  56. package/lib/cjs/code/index.js.map +1 -0
  57. package/lib/cjs/code/languages.js +49 -0
  58. package/lib/cjs/code/languages.js.map +1 -0
  59. package/lib/cjs/context-menu/ContextMenu.js +202 -319
  60. package/lib/cjs/context-menu/ContextMenu.js.map +1 -1
  61. package/lib/cjs/data-grid/Components.js +73 -44
  62. package/lib/cjs/data-grid/Components.js.map +1 -1
  63. package/lib/cjs/data-grid/DataGrid.js +6 -6
  64. package/lib/cjs/data-grid/DataGrid.js.map +1 -1
  65. package/lib/cjs/data-grid/illustrations/NoData.js +27 -0
  66. package/lib/cjs/data-grid/illustrations/NoData.js.map +1 -0
  67. package/lib/cjs/date-picker/DatePicker.js +33 -10
  68. package/lib/cjs/date-picker/DatePicker.js.map +1 -1
  69. package/lib/cjs/dialog/Dialog.js +21 -35
  70. package/lib/cjs/dialog/Dialog.js.map +1 -1
  71. package/lib/cjs/divider/Divider.js +2 -14
  72. package/lib/cjs/divider/Divider.js.map +1 -1
  73. package/lib/cjs/drawer/Drawer.js +10 -8
  74. package/lib/cjs/drawer/Drawer.js.map +1 -1
  75. package/lib/cjs/dropdown/Dropdown.js +18 -34
  76. package/lib/cjs/dropdown/Dropdown.js.map +1 -1
  77. package/lib/cjs/dropdown/Overrides.js +6 -2
  78. package/lib/cjs/dropdown/Overrides.js.map +1 -1
  79. package/lib/cjs/dropdown-button/DropdownButton.js +2 -21
  80. package/lib/cjs/dropdown-button/DropdownButton.js.map +1 -1
  81. package/lib/{types/context-menu/SafeArea.d.ts → cjs/dropdown-button/avatar-test.stories.tsx.js} +10 -18
  82. package/lib/cjs/dropdown-button/avatar-test.stories.tsx.js.map +1 -0
  83. package/lib/cjs/dropzone/Dropzone.js +4 -15
  84. package/lib/cjs/dropzone/Dropzone.js.map +1 -1
  85. package/lib/cjs/graph-label/GraphLabel.js +33 -34
  86. package/lib/cjs/graph-label/GraphLabel.js.map +1 -1
  87. package/lib/cjs/helpers/index.js +0 -1
  88. package/lib/cjs/helpers/index.js.map +1 -1
  89. package/lib/cjs/hooks/index.js +5 -3
  90. package/lib/cjs/hooks/index.js.map +1 -1
  91. package/lib/cjs/icons/generated/heroIcons.js +917 -596
  92. package/lib/cjs/icons/generated/heroIcons.js.map +1 -1
  93. package/lib/cjs/index.js +3 -5
  94. package/lib/cjs/index.js.map +1 -1
  95. package/lib/cjs/inline-edit/InlineEdit.js +12 -7
  96. package/lib/cjs/inline-edit/InlineEdit.js.map +1 -1
  97. package/lib/cjs/label/Label.js +4 -16
  98. package/lib/cjs/label/Label.js.map +1 -1
  99. package/lib/cjs/layout/Box.js +4 -16
  100. package/lib/cjs/layout/Box.js.map +1 -1
  101. package/lib/cjs/layout/Flex.js +4 -16
  102. package/lib/cjs/layout/Flex.js.map +1 -1
  103. package/lib/cjs/loading-spinner/LoadingSpinner.js +2 -13
  104. package/lib/cjs/loading-spinner/LoadingSpinner.js.map +1 -1
  105. package/lib/cjs/modal/Modal.js +2 -2
  106. package/lib/cjs/modal/Modal.js.map +1 -1
  107. package/lib/cjs/popover/Popover.js +89 -207
  108. package/lib/cjs/popover/Popover.js.map +1 -1
  109. package/lib/cjs/popover/use-popover.js +86 -0
  110. package/lib/cjs/popover/use-popover.js.map +1 -0
  111. package/lib/cjs/progress-bar/ProgressBar.js +2 -14
  112. package/lib/cjs/progress-bar/ProgressBar.js.map +1 -1
  113. package/lib/cjs/radio/Radio.js +2 -1
  114. package/lib/cjs/radio/Radio.js.map +1 -1
  115. package/lib/cjs/segmented-control/SegmentedControl.js +6 -19
  116. package/lib/cjs/segmented-control/SegmentedControl.js.map +1 -1
  117. package/lib/cjs/side-navigation/SideNavigation.js +52 -59
  118. package/lib/cjs/side-navigation/SideNavigation.js.map +1 -1
  119. package/lib/cjs/slider/Slider.js +5 -6
  120. package/lib/cjs/slider/Slider.js.map +1 -1
  121. package/lib/cjs/status-indicator/StatusIndicator.js.map +1 -1
  122. package/lib/cjs/switch/Switch.js +13 -1
  123. package/lib/cjs/switch/Switch.js.map +1 -1
  124. package/lib/cjs/tabs/Tabs.js +11 -27
  125. package/lib/cjs/tabs/Tabs.js.map +1 -1
  126. package/lib/cjs/tag/Tag.js +5 -18
  127. package/lib/cjs/tag/Tag.js.map +1 -1
  128. package/lib/cjs/text-input/TextInput.js +14 -24
  129. package/lib/cjs/text-input/TextInput.js.map +1 -1
  130. package/lib/cjs/text-link/TextLink.js +4 -17
  131. package/lib/cjs/text-link/TextLink.js.map +1 -1
  132. package/lib/cjs/textarea/Textarea.js +6 -20
  133. package/lib/cjs/textarea/Textarea.js.map +1 -1
  134. package/lib/cjs/toast/Toast.js +2 -3
  135. package/lib/cjs/toast/Toast.js.map +1 -1
  136. package/lib/cjs/tooltip/Tooltip.js +125 -0
  137. package/lib/cjs/tooltip/Tooltip.js.map +1 -0
  138. package/lib/cjs/{tip → tooltip}/index.js +15 -16
  139. package/lib/cjs/tooltip/index.js.map +1 -0
  140. package/lib/cjs/tooltip/use-tooltip.js +78 -0
  141. package/lib/cjs/tooltip/use-tooltip.js.map +1 -0
  142. package/lib/cjs/tree-view/TreeView.js +4 -16
  143. package/lib/cjs/tree-view/TreeView.js.map +1 -1
  144. package/lib/cjs/tree-view/TreeViewTextItem.js +11 -7
  145. package/lib/cjs/tree-view/TreeViewTextItem.js.map +1 -1
  146. package/lib/cjs/typography/Typography.js +4 -4
  147. package/lib/cjs/typography/Typography.js.map +1 -1
  148. package/lib/cjs/widget/Widget.js +3 -15
  149. package/lib/cjs/widget/Widget.js.map +1 -1
  150. package/lib/cjs/wizard/Wizard.js +106 -80
  151. package/lib/cjs/wizard/Wizard.js.map +1 -1
  152. package/lib/esm/_common/CodeBlockWrapper.js +10 -8
  153. package/lib/esm/_common/CodeBlockWrapper.js.map +1 -1
  154. package/lib/esm/_common/ConditionalWrap.js +1 -1
  155. package/lib/esm/_common/ConditionalWrap.js.map +1 -1
  156. package/lib/esm/_common/coditionalWrap.js +1 -1
  157. package/lib/esm/_common/coditionalWrap.js.map +1 -1
  158. package/lib/esm/_common/input/RadioAndCheckboxWrapper.js +7 -21
  159. package/lib/esm/_common/input/RadioAndCheckboxWrapper.js.map +1 -1
  160. package/lib/esm/_common/messages.js +0 -1
  161. package/lib/esm/_common/messages.js.map +1 -1
  162. package/lib/esm/{helpers → _common}/types.js +0 -1
  163. package/lib/esm/_common/types.js.map +1 -0
  164. package/lib/esm/accordion/Accordion.js +25 -25
  165. package/lib/esm/accordion/Accordion.js.map +1 -1
  166. package/lib/esm/avatar/Avatar.js +7 -17
  167. package/lib/esm/avatar/Avatar.js.map +1 -1
  168. package/lib/esm/banner/Banner.js +30 -25
  169. package/lib/esm/banner/Banner.js.map +1 -1
  170. package/lib/esm/breadcrumbs/Breadcrumbs.js +39 -92
  171. package/lib/esm/breadcrumbs/Breadcrumbs.js.map +1 -1
  172. package/lib/esm/button/Button.js +11 -27
  173. package/lib/esm/button/Button.js.map +1 -1
  174. package/lib/esm/button/IconButton.js +13 -21
  175. package/lib/esm/button/IconButton.js.map +1 -1
  176. package/lib/esm/button/IconButtonArray.js +43 -22
  177. package/lib/esm/button/IconButtonArray.js.map +1 -1
  178. package/lib/esm/callout/Callout.js +2 -14
  179. package/lib/esm/callout/Callout.js.map +1 -1
  180. package/lib/esm/charts/Axis.js +187 -0
  181. package/lib/esm/charts/Axis.js.map +1 -0
  182. package/lib/esm/charts/CartesianGrid.js +66 -0
  183. package/lib/esm/charts/CartesianGrid.js.map +1 -0
  184. package/lib/esm/charts/Chart.js +517 -0
  185. package/lib/esm/charts/Chart.js.map +1 -0
  186. package/lib/esm/charts/ChartTooltip.js +50 -0
  187. package/lib/esm/charts/ChartTooltip.js.map +1 -0
  188. package/lib/esm/charts/Charts.js +96 -0
  189. package/lib/esm/charts/Charts.js.map +1 -0
  190. package/lib/esm/charts/Dot.js +28 -0
  191. package/lib/esm/charts/Dot.js.map +1 -0
  192. package/lib/esm/charts/Legend.js +174 -0
  193. package/lib/esm/charts/Legend.js.map +1 -0
  194. package/lib/esm/charts/Line.js +75 -0
  195. package/lib/esm/charts/Line.js.map +1 -0
  196. package/lib/esm/charts/index.js +22 -0
  197. package/lib/esm/charts/index.js.map +1 -0
  198. package/lib/esm/{table/TableContext.js → charts/utils.js} +16 -11
  199. package/lib/esm/charts/utils.js.map +1 -0
  200. package/lib/esm/checkbox/Checkbox.js +2 -14
  201. package/lib/esm/checkbox/Checkbox.js.map +1 -1
  202. package/lib/esm/clipboard-copier/ClipboardButton.js +16 -20
  203. package/lib/esm/clipboard-copier/ClipboardButton.js.map +1 -1
  204. package/lib/esm/code/Code.js +150 -0
  205. package/lib/esm/code/Code.js.map +1 -0
  206. package/lib/{types/text-input-preview/index.d.ts → esm/code/index.js} +2 -1
  207. package/lib/esm/code/index.js.map +1 -0
  208. package/lib/esm/code/languages.js +46 -0
  209. package/lib/esm/code/languages.js.map +1 -0
  210. package/lib/esm/context-menu/ContextMenu.js +198 -295
  211. package/lib/esm/context-menu/ContextMenu.js.map +1 -1
  212. package/lib/esm/data-grid/Components.js +69 -43
  213. package/lib/esm/data-grid/Components.js.map +1 -1
  214. package/lib/esm/data-grid/DataGrid.js +6 -6
  215. package/lib/esm/data-grid/DataGrid.js.map +1 -1
  216. package/lib/esm/data-grid/illustrations/NoData.js +25 -0
  217. package/lib/esm/data-grid/illustrations/NoData.js.map +1 -0
  218. package/lib/esm/date-picker/DatePicker.js +33 -10
  219. package/lib/esm/date-picker/DatePicker.js.map +1 -1
  220. package/lib/esm/dialog/Dialog.js +21 -35
  221. package/lib/esm/dialog/Dialog.js.map +1 -1
  222. package/lib/esm/divider/Divider.js +2 -14
  223. package/lib/esm/divider/Divider.js.map +1 -1
  224. package/lib/esm/drawer/Drawer.js +11 -9
  225. package/lib/esm/drawer/Drawer.js.map +1 -1
  226. package/lib/esm/dropdown/Dropdown.js +18 -34
  227. package/lib/esm/dropdown/Dropdown.js.map +1 -1
  228. package/lib/esm/dropdown/Overrides.js +6 -2
  229. package/lib/esm/dropdown/Overrides.js.map +1 -1
  230. package/lib/esm/dropdown-button/DropdownButton.js +2 -21
  231. package/lib/esm/dropdown-button/DropdownButton.js.map +1 -1
  232. package/lib/esm/dropdown-button/avatar-test.stories.tsx.js +27 -0
  233. package/lib/esm/dropdown-button/avatar-test.stories.tsx.js.map +1 -0
  234. package/lib/esm/dropzone/Dropzone.js +4 -15
  235. package/lib/esm/dropzone/Dropzone.js.map +1 -1
  236. package/lib/esm/graph-label/GraphLabel.js +33 -34
  237. package/lib/esm/graph-label/GraphLabel.js.map +1 -1
  238. package/lib/esm/helpers/index.js +0 -1
  239. package/lib/esm/helpers/index.js.map +1 -1
  240. package/lib/esm/hooks/index.js +1 -1
  241. package/lib/esm/hooks/index.js.map +1 -1
  242. package/lib/esm/icons/generated/heroIcons.js +904 -584
  243. package/lib/esm/icons/generated/heroIcons.js.map +1 -1
  244. package/lib/esm/index.js +3 -5
  245. package/lib/esm/index.js.map +1 -1
  246. package/lib/esm/inline-edit/InlineEdit.js +12 -7
  247. package/lib/esm/inline-edit/InlineEdit.js.map +1 -1
  248. package/lib/esm/label/Label.js +4 -16
  249. package/lib/esm/label/Label.js.map +1 -1
  250. package/lib/esm/layout/Box.js +6 -18
  251. package/lib/esm/layout/Box.js.map +1 -1
  252. package/lib/esm/layout/Flex.js +5 -17
  253. package/lib/esm/layout/Flex.js.map +1 -1
  254. package/lib/esm/loading-spinner/LoadingSpinner.js +2 -13
  255. package/lib/esm/loading-spinner/LoadingSpinner.js.map +1 -1
  256. package/lib/esm/modal/Modal.js +2 -2
  257. package/lib/esm/modal/Modal.js.map +1 -1
  258. package/lib/esm/popover/Popover.js +64 -204
  259. package/lib/esm/popover/Popover.js.map +1 -1
  260. package/lib/esm/popover/use-popover.js +83 -0
  261. package/lib/esm/popover/use-popover.js.map +1 -0
  262. package/lib/esm/progress-bar/ProgressBar.js +2 -14
  263. package/lib/esm/progress-bar/ProgressBar.js.map +1 -1
  264. package/lib/esm/radio/Radio.js +2 -1
  265. package/lib/esm/radio/Radio.js.map +1 -1
  266. package/lib/esm/segmented-control/SegmentedControl.js +7 -20
  267. package/lib/esm/segmented-control/SegmentedControl.js.map +1 -1
  268. package/lib/esm/side-navigation/SideNavigation.js +52 -59
  269. package/lib/esm/side-navigation/SideNavigation.js.map +1 -1
  270. package/lib/esm/slider/Slider.js +5 -6
  271. package/lib/esm/slider/Slider.js.map +1 -1
  272. package/lib/esm/status-indicator/StatusIndicator.js.map +1 -1
  273. package/lib/esm/switch/Switch.js +13 -1
  274. package/lib/esm/switch/Switch.js.map +1 -1
  275. package/lib/esm/tabs/Tabs.js +12 -28
  276. package/lib/esm/tabs/Tabs.js.map +1 -1
  277. package/lib/esm/tag/Tag.js +5 -18
  278. package/lib/esm/tag/Tag.js.map +1 -1
  279. package/lib/esm/text-input/TextInput.js +14 -24
  280. package/lib/esm/text-input/TextInput.js.map +1 -1
  281. package/lib/esm/text-link/TextLink.js +4 -17
  282. package/lib/esm/text-link/TextLink.js.map +1 -1
  283. package/lib/esm/textarea/Textarea.js +6 -20
  284. package/lib/esm/textarea/Textarea.js.map +1 -1
  285. package/lib/esm/toast/Toast.js +2 -3
  286. package/lib/esm/toast/Toast.js.map +1 -1
  287. package/lib/esm/tooltip/Tooltip.js +119 -0
  288. package/lib/esm/tooltip/Tooltip.js.map +1 -0
  289. package/lib/esm/{tip → tooltip}/index.js +0 -1
  290. package/lib/esm/tooltip/index.js.map +1 -0
  291. package/lib/esm/tooltip/use-tooltip.js +73 -0
  292. package/lib/esm/tooltip/use-tooltip.js.map +1 -0
  293. package/lib/esm/tree-view/TreeView.js +4 -16
  294. package/lib/esm/tree-view/TreeView.js.map +1 -1
  295. package/lib/esm/tree-view/TreeViewTextItem.js +11 -7
  296. package/lib/esm/tree-view/TreeViewTextItem.js.map +1 -1
  297. package/lib/esm/typography/Typography.js +5 -5
  298. package/lib/esm/typography/Typography.js.map +1 -1
  299. package/lib/esm/widget/Widget.js +3 -15
  300. package/lib/esm/widget/Widget.js.map +1 -1
  301. package/lib/esm/wizard/Wizard.js +83 -76
  302. package/lib/esm/wizard/Wizard.js.map +1 -1
  303. package/lib/types/_common/CodeBlockWrapper.d.ts +10 -6
  304. package/lib/types/_common/ConditionalWrap.d.ts +2 -2
  305. package/lib/types/_common/coditionalWrap.d.ts +2 -2
  306. package/lib/types/_common/input/RadioAndCheckboxWrapper.d.ts +15 -4
  307. package/lib/types/_common/input/types.d.ts +7 -9
  308. package/lib/types/_common/messages.d.ts +0 -1
  309. package/lib/types/_common/types.d.ts +40 -0
  310. package/lib/types/accordion/Accordion.d.ts +15 -9
  311. package/lib/types/avatar/Avatar.d.ts +14 -7
  312. package/lib/types/banner/Banner.d.ts +39 -19
  313. package/lib/types/breadcrumbs/Breadcrumbs.d.ts +18 -21
  314. package/lib/types/button/Button.d.ts +35 -13
  315. package/lib/types/button/IconButton.d.ts +31 -12
  316. package/lib/types/button/IconButtonArray.d.ts +20 -15
  317. package/lib/types/callout/Callout.d.ts +6 -3
  318. package/lib/types/charts/Axis.d.ts +37 -0
  319. package/lib/types/{tip/Tooltip.d.ts → charts/CartesianGrid.d.ts} +7 -6
  320. package/lib/types/charts/Chart.d.ts +105 -0
  321. package/lib/types/charts/ChartTooltip.d.ts +59 -0
  322. package/lib/types/charts/Charts.d.ts +94 -0
  323. package/lib/types/charts/Dot.d.ts +27 -0
  324. package/lib/types/charts/Legend.d.ts +25 -0
  325. package/lib/types/charts/Line.d.ts +43 -0
  326. package/lib/types/{code-block → charts}/index.d.ts +1 -1
  327. package/lib/{esm/cypher-code-block/index.js → types/charts/utils.d.ts} +3 -2
  328. package/lib/types/clipboard-copier/ClipboardButton.d.ts +6 -4
  329. package/lib/types/{code-block/CodeBlock.d.ts → code/Code.d.ts} +29 -7
  330. package/lib/types/{cypher-code-block → code}/index.d.ts +1 -1
  331. package/lib/types/code/languages.d.ts +22 -0
  332. package/lib/types/context-menu/ContextMenu.d.ts +43 -66
  333. package/lib/types/data-grid/Components.d.ts +12 -5
  334. package/lib/types/data-grid/DataGrid.d.ts +8 -5
  335. package/lib/types/data-grid/DataGridContext.d.ts +3 -3
  336. package/lib/types/data-grid/datagrid-types.d.ts +3 -3
  337. package/lib/types/data-grid/illustrations/NoData.d.ts +23 -0
  338. package/lib/types/date-picker/DatePicker.d.ts +6 -6
  339. package/lib/types/dialog/Dialog.d.ts +14 -10
  340. package/lib/types/divider/Divider.d.ts +6 -3
  341. package/lib/types/drawer/Drawer.d.ts +11 -8
  342. package/lib/types/dropdown/Dropdown.d.ts +4 -1
  343. package/lib/types/dropdown/Overrides.d.ts +1 -1
  344. package/lib/types/dropdown/types.d.ts +5 -6
  345. package/lib/types/dropdown-button/DropdownButton.d.ts +7 -2
  346. package/lib/{esm/code-block/index.js → types/dropdown-button/avatar-test.stories.tsx.d.ts} +3 -2
  347. package/lib/types/dropzone/Dropzone.d.ts +8 -2
  348. package/lib/types/graph-label/GraphLabel.d.ts +18 -7
  349. package/lib/types/helpers/index.d.ts +0 -1
  350. package/lib/types/hooks/index.d.ts +1 -1
  351. package/lib/types/icons/generated/heroIcons.d.ts +256 -0
  352. package/lib/types/index.d.ts +3 -5
  353. package/lib/types/inline-edit/InlineEdit.d.ts +5 -2
  354. package/lib/types/label/Label.d.ts +4 -3
  355. package/lib/types/layout/Box.d.ts +6 -10
  356. package/lib/types/layout/Flex.d.ts +6 -11
  357. package/lib/types/loading-spinner/LoadingSpinner.d.ts +2 -0
  358. package/lib/types/modal/Modal.d.ts +6 -4
  359. package/lib/types/popover/Popover.d.ts +37 -66
  360. package/lib/types/popover/index.d.ts +4 -0
  361. package/lib/types/popover/use-popover.d.ts +44 -0
  362. package/lib/types/portal/Portal.d.ts +1 -1
  363. package/lib/types/progress-bar/ProgressBar.d.ts +5 -2
  364. package/lib/types/segmented-control/SegmentedControl.d.ts +11 -5
  365. package/lib/types/side-navigation/SideNavigation.d.ts +35 -19
  366. package/lib/types/slider/Slider.d.ts +7 -4
  367. package/lib/types/status-indicator/StatusIndicator.d.ts +4 -2
  368. package/lib/types/tabs/Tabs.d.ts +10 -19
  369. package/lib/types/tag/Tag.d.ts +9 -7
  370. package/lib/types/text-input/TextInput.d.ts +18 -10
  371. package/lib/types/text-link/TextLink.d.ts +8 -6
  372. package/lib/types/textarea/Textarea.d.ts +11 -4
  373. package/lib/types/toast/Toast.d.ts +3 -0
  374. package/lib/types/tooltip/Tooltip.d.ts +80 -0
  375. package/lib/types/{tip → tooltip}/index.d.ts +0 -1
  376. package/lib/types/tooltip/use-tooltip.d.ts +38 -0
  377. package/lib/types/tree-view/TreeView.d.ts +7 -3
  378. package/lib/types/tree-view/tree-view-types.d.ts +2 -2
  379. package/lib/types/typography/Typography.d.ts +16 -5
  380. package/lib/types/widget/Widget.d.ts +3 -0
  381. package/lib/types/wizard/Wizard.d.ts +18 -10
  382. package/package.json +38 -36
  383. package/lib/cjs/code-block/CodeBlock.js +0 -105
  384. package/lib/cjs/code-block/CodeBlock.js.map +0 -1
  385. package/lib/cjs/code-block/index.js.map +0 -1
  386. package/lib/cjs/code-block/languages.js +0 -303
  387. package/lib/cjs/code-block/languages.js.map +0 -1
  388. package/lib/cjs/context-menu/SafeArea.js +0 -84
  389. package/lib/cjs/context-menu/SafeArea.js.map +0 -1
  390. package/lib/cjs/cypher-code-block/CypherCodeBlock.js +0 -74
  391. package/lib/cjs/cypher-code-block/CypherCodeBlock.js.map +0 -1
  392. package/lib/cjs/cypher-code-block/index.js.map +0 -1
  393. package/lib/cjs/helpers/types.js.map +0 -1
  394. package/lib/cjs/table/Components.js +0 -264
  395. package/lib/cjs/table/Components.js.map +0 -1
  396. package/lib/cjs/table/Table.js +0 -100
  397. package/lib/cjs/table/Table.js.map +0 -1
  398. package/lib/cjs/table/TableContext.js.map +0 -1
  399. package/lib/cjs/table/helpers.js +0 -86
  400. package/lib/cjs/table/helpers.js.map +0 -1
  401. package/lib/cjs/table/index.js +0 -55
  402. package/lib/cjs/table/index.js.map +0 -1
  403. package/lib/cjs/text-input-preview/TextInputPreview.js +0 -75
  404. package/lib/cjs/text-input-preview/TextInputPreview.js.map +0 -1
  405. package/lib/cjs/text-input-preview/index.js +0 -38
  406. package/lib/cjs/text-input-preview/index.js.map +0 -1
  407. package/lib/cjs/tip/Tip.js +0 -196
  408. package/lib/cjs/tip/Tip.js.map +0 -1
  409. package/lib/cjs/tip/Tooltip.js +0 -56
  410. package/lib/cjs/tip/Tooltip.js.map +0 -1
  411. package/lib/cjs/tip/index.js.map +0 -1
  412. package/lib/esm/code-block/CodeBlock.js +0 -79
  413. package/lib/esm/code-block/CodeBlock.js.map +0 -1
  414. package/lib/esm/code-block/index.js.map +0 -1
  415. package/lib/esm/code-block/languages.js +0 -302
  416. package/lib/esm/code-block/languages.js.map +0 -1
  417. package/lib/esm/context-menu/SafeArea.js +0 -81
  418. package/lib/esm/context-menu/SafeArea.js.map +0 -1
  419. package/lib/esm/cypher-code-block/CypherCodeBlock.js +0 -48
  420. package/lib/esm/cypher-code-block/CypherCodeBlock.js.map +0 -1
  421. package/lib/esm/cypher-code-block/index.js.map +0 -1
  422. package/lib/esm/helpers/types.js.map +0 -1
  423. package/lib/esm/table/Components.js +0 -244
  424. package/lib/esm/table/Components.js.map +0 -1
  425. package/lib/esm/table/Table.js +0 -97
  426. package/lib/esm/table/Table.js.map +0 -1
  427. package/lib/esm/table/TableContext.js.map +0 -1
  428. package/lib/esm/table/helpers.js +0 -81
  429. package/lib/esm/table/helpers.js.map +0 -1
  430. package/lib/esm/table/index.js +0 -25
  431. package/lib/esm/table/index.js.map +0 -1
  432. package/lib/esm/text-input-preview/TextInputPreview.js +0 -72
  433. package/lib/esm/text-input-preview/TextInputPreview.js.map +0 -1
  434. package/lib/esm/text-input-preview/index.js +0 -22
  435. package/lib/esm/text-input-preview/index.js.map +0 -1
  436. package/lib/esm/tip/Tip.js +0 -186
  437. package/lib/esm/tip/Tip.js.map +0 -1
  438. package/lib/esm/tip/Tooltip.js +0 -50
  439. package/lib/esm/tip/Tooltip.js.map +0 -1
  440. package/lib/esm/tip/index.js.map +0 -1
  441. package/lib/types/code-block/languages.d.ts +0 -23
  442. package/lib/types/cypher-code-block/CypherCodeBlock.d.ts +0 -33
  443. package/lib/types/helpers/types.d.ts +0 -42
  444. package/lib/types/table/Components.d.ts +0 -81
  445. package/lib/types/table/Table.d.ts +0 -62
  446. package/lib/types/table/TableContext.d.ts +0 -61
  447. package/lib/types/table/helpers.d.ts +0 -39
  448. package/lib/types/table/index.d.ts +0 -24
  449. package/lib/types/text-input-preview/TextInputPreview.d.ts +0 -59
  450. package/lib/types/tip/Tip.d.ts +0 -168
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  /**
2
3
  *
3
4
  * Copyright (c) "Neo4j"
@@ -18,30 +19,13 @@
18
19
  * You should have received a copy of the GNU General Public License
19
20
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
20
21
  */
21
-
22
- var __rest = (this && this.__rest) || function (s, e) {
23
- var t = {};
24
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
25
- t[p] = s[p];
26
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
27
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
28
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
29
- t[p[i]] = s[p[i]];
30
- }
31
- return t;
32
- };
33
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
34
22
  import React from 'react';
35
23
  import { classNames } from '../_common/defaultImports';
36
24
  import { removeNewlines, removeSpaces } from '../_common/utils';
37
25
  import { LoadingSpinner } from '../loading-spinner';
38
- export const Button = React.forwardRef(function Button(_a, ref) {
39
- var { children, as, type = 'button', loading = false, color = 'primary', disabled = false, fill = 'filled', size = 'medium', className, onClick, floating = false, tabIndex = 0 } = _a, restProps = __rest(_a, ["children", "as", "type", "loading", "color", "disabled", "fill", "size", "className", "onClick", "floating", "tabIndex"]);
40
- let Component = as || 'button';
41
- if (!as && restProps.href) {
42
- Component = 'a';
43
- }
44
- const isInteractable = !disabled && !loading;
26
+ export const Button = React.forwardRef(function Button({ children, as, type = 'button', isLoading = false, color = 'primary', isDisabled = false, fill = 'filled', size = 'medium', className, onClick, isFloating = false, htmlAttributes, }, ref) {
27
+ const Component = as || 'button';
28
+ const isInteractable = !isDisabled && !isLoading;
45
29
  const classes = classNames('ndl-btn', {
46
30
  'ndl-small': size === 'small',
47
31
  'ndl-medium': size === 'medium',
@@ -49,9 +33,9 @@ export const Button = React.forwardRef(function Button(_a, ref) {
49
33
  'ndl-filled': fill === 'filled',
50
34
  'ndl-outlined': fill === 'outlined',
51
35
  'ndl-text': fill === 'text',
52
- 'ndl-disabled': disabled,
53
- 'ndl-loading': loading,
54
- 'ndl-floating-btn': floating,
36
+ 'ndl-disabled': isDisabled,
37
+ 'ndl-loading': isLoading,
38
+ 'ndl-floating-btn': isFloating,
55
39
  /** Now check button is outlined or filled */
56
40
  /**
57
41
  * Notice:
@@ -91,12 +75,12 @@ export const Button = React.forwardRef(function Button(_a, ref) {
91
75
  active:n-bg-palette-${color}-pressed-weak
92
76
  `}
93
77
  `]: fill === 'text' && color !== 'neutral',
94
- [`
78
+ [`
95
79
  n-text-palette-neutral-text-weak
96
80
  ${isInteractable && `hover:n-bg-palette-neutral-bg-default`}
97
81
  `]: fill === 'text' && color == 'neutral',
98
82
  });
99
- const sanitisedClasses = removeSpaces(removeNewlines(classes));
83
+ const sanitizedClasses = removeSpaces(removeNewlines(classes));
100
84
  const handleClick = (e) => {
101
85
  if (!isInteractable) {
102
86
  // By default, a <button /> element with disabled set to true will not get its
@@ -112,7 +96,7 @@ export const Button = React.forwardRef(function Button(_a, ref) {
112
96
  }
113
97
  };
114
98
  return (_jsxs(Component
115
- /** First props and then className to avoid overriding in classNames */
116
- , Object.assign({}, restProps, (Component === 'button' ? { type } : {}), { onClick: handleClick, disabled: !isInteractable, className: [sanitisedClasses, className].join(' '), ref: ref, tabIndex: !isInteractable ? -1 : tabIndex, children: [loading ? (_jsx(LoadingSpinner, { className: "n-my-auto n-mr-token-3", size: "small" })) : null, children] })));
99
+ /** Add button type prop only for button components */
100
+ , Object.assign({}, (Component === 'button' ? { type } : {}), { onClick: handleClick, disabled: !isInteractable, className: [sanitizedClasses, className].join(' '), ref: ref, tabIndex: !isInteractable ? -1 : 0 }, htmlAttributes, { children: [isLoading ? (_jsx(LoadingSpinner, { className: "n-my-auto n-mr-token-3", size: "small" })) : null, children] })));
117
101
  });
118
102
  //# sourceMappingURL=Button.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/button/Button.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAqBA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhE,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AA8BpD,MAAM,CAAC,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,MAAM,CACpD,EAcc,EACd,GAAG;QAfH,EACE,QAAQ,EACR,EAAE,EACF,IAAI,GAAG,QAAQ,EACf,OAAO,GAAG,KAAK,EACf,KAAK,GAAG,SAAS,EACjB,QAAQ,GAAG,KAAK,EAChB,IAAI,GAAG,QAAQ,EACf,IAAI,GAAG,QAAQ,EACf,SAAS,EACT,OAAO,EACP,QAAQ,GAAG,KAAK,EAChB,QAAQ,GAAG,CAAC,OAEA,EADT,SAAS,cAbd,0HAcC,CADa;IAId,IAAI,SAAS,GAAG,EAAE,IAAI,QAAQ,CAAC;IAE/B,IAAI,CAAC,EAAE,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;QAC1B,SAAS,GAAG,GAAG,CAAC;IAClB,CAAC;IAED,MAAM,cAAc,GAAG,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC;IAE7C,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,EAAE;QACpC,WAAW,EAAE,IAAI,KAAK,OAAO;QAC7B,YAAY,EAAE,IAAI,KAAK,QAAQ;QAC/B,WAAW,EAAE,IAAI,KAAK,OAAO;QAC7B,YAAY,EAAE,IAAI,KAAK,QAAQ;QAC/B,cAAc,EAAE,IAAI,KAAK,UAAU;QACnC,UAAU,EAAE,IAAI,KAAK,MAAM;QAC3B,cAAc,EAAE,QAAQ;QACxB,aAAa,EAAE,OAAO;QACtB,kBAAkB,EAAE,QAAQ;QAC5B,6CAA6C;QAC7C;;;;WAIG;QACH,CAAC;QAEG,KAAK,KAAK,SAAS;YACjB,CAAC,CAAC,gBAAgB,KAAK,eAAe;YACtC,CAAC,CAAC,gBAAgB,KAAK,YAC3B;QAEE,cAAc;YACd,sBAAsB,KAAK;+BACJ,KAAK,iBAC9B;OACC,CAAC,EAAE,IAAI,KAAK,QAAQ;QACvB,CAAC;uBACkB,KAAK;QAEpB,cAAc;YACd,sBAAsB,KAAK;8BACL,KAAK,eAC7B;yBACmB,KAAK;OACvB,CAAC,EAAE,IAAI,KAAK,UAAU,IAAI,KAAK,KAAK,SAAS;QAChD;;;WAGG;QACH,CAAC;;qBAEgB,KAAK;QAClB,cAAc,IAAI,sBAAsB,KAAK,aAAa;;;OAG3D,CAAC,EAAE,IAAI,KAAK,UAAU,IAAI,KAAK,KAAK,SAAS;QAChD,CAAC;uBACkB,KAAK;QAEpB,cAAc;YACd,sBAAsB,KAAK;+BACJ,KAAK;OAE9B;OACC,CAAC,EAAE,IAAI,KAAK,MAAM,IAAI,KAAK,KAAK,SAAS;QAC5C,CAAC;;QAEG,cAAc,IAAI,uCAAuC;OAC1D,CAAC,EAAE,IAAI,KAAK,MAAM,IAAI,KAAK,IAAI,SAAS;KAC5C,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,YAAY,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IAE/D,MAAM,WAAW,GAAG,CAAC,CAAkD,EAAE,EAAE;QACzE,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,8EAA8E;YAC9E,yEAAyE;YACzE,iFAAiF;YACjF,4CAA4C;YAC5C,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,CAAC,CAAC,eAAe,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,CAAC,CAAC,CAAC;QACb,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,MAAC,SAAS;IACR,uEAAuE;wBACnE,SAAS,EAET,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,IAC5C,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,CAAC,cAAc,EACzB,SAAS,EAAE,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAClD,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,aAExC,OAAO,CAAC,CAAC,CAAC,CACT,KAAC,cAAc,IAAC,SAAS,EAAC,wBAAwB,EAAC,IAAI,EAAC,OAAO,GAAG,CACnE,CAAC,CAAC,CAAC,IAAI,EACP,QAAQ,KACC,CACb,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/button/Button.tsx"],"names":[],"mappings":"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"}
@@ -35,28 +35,25 @@ import { classNames } from '../_common/defaultImports';
35
35
  import { needleWarningMessage } from '../_common/utils';
36
36
  import { LoadingSpinner } from '../loading-spinner';
37
37
  export const IconButton = React.forwardRef(function Button(_a, ref) {
38
- var { children, as, type = 'button', loading = false, disabled = false, size = 'medium', className, onClick, grouped, floating = false, danger, clean, active = false } = _a, restProps = __rest(_a, ["children", "as", "type", "loading", "disabled", "size", "className", "onClick", "grouped", "floating", "danger", "clean", "active"]);
39
- let Component = as || 'button';
40
- if (!as && restProps.href) {
41
- Component = 'a';
42
- }
43
- const isInteractable = !disabled && !loading;
38
+ var { children, as, isLoading = false, isDisabled = false, size = 'medium', className, isGrouped, isFloating = false, isDanger, isClean, isActive = false, ariaLabel, htmlAttributes, onClick } = _a, restProps = __rest(_a, ["children", "as", "isLoading", "isDisabled", "size", "className", "isGrouped", "isFloating", "isDanger", "isClean", "isActive", "ariaLabel", "htmlAttributes", "onClick"]);
39
+ const Component = as || 'button';
40
+ const isInteractable = !isDisabled && !isLoading;
44
41
  const classes = classNames('ndl-icon-btn', className, {
45
42
  'ndl-small': size === 'small',
46
43
  'ndl-medium': size === 'medium',
47
44
  'ndl-large': size === 'large',
48
- 'ndl-grouped': grouped,
49
- 'ndl-disabled': disabled,
50
- 'ndl-loading': loading,
51
- 'ndl-floating': floating,
52
- 'ndl-danger': danger,
53
- 'ndl-clean': clean,
54
- 'ndl-active': active,
45
+ 'ndl-grouped': isGrouped,
46
+ 'ndl-disabled': isDisabled,
47
+ 'ndl-loading': isLoading,
48
+ 'ndl-floating': isFloating,
49
+ 'ndl-danger': isDanger,
50
+ 'ndl-clean': isClean,
51
+ 'ndl-active': isActive,
55
52
  });
56
- if (clean && floating) {
53
+ if (isClean && isFloating) {
57
54
  needleWarningMessage("Can't have 'clean' and 'floating' props true at the same time");
58
55
  }
59
- if (!restProps['aria-label']) {
56
+ if (!htmlAttributes || (htmlAttributes && !htmlAttributes['aria-label'])) {
60
57
  needleWarningMessage('Icon buttons do not have text, be sure to include an aria-label for screen readers link: https://dequeuniversity.com/rules/axe/4.4/button-name?application=axeAPI');
61
58
  }
62
59
  const handleClick = (e) => {
@@ -72,12 +69,7 @@ export const IconButton = React.forwardRef(function Button(_a, ref) {
72
69
  if (onClick) {
73
70
  onClick(e);
74
71
  }
75
- else if (!restProps.href) {
76
- console.error('onClick was not provided');
77
- }
78
72
  };
79
- return (_jsx(Component
80
- /** First props and then className to avoid overriding in classNames */
81
- , Object.assign({}, restProps, (Component === 'button' ? { type } : {}), { onClick: handleClick, disabled: !isInteractable, className: classes, ref: ref, children: loading ? (_jsx(LoadingSpinner, { size: "small" })) : (_jsx("div", { className: "ndl-icon", children: children })) })));
73
+ return (_jsx(Component, Object.assign({ onClick: handleClick, disabled: !isInteractable, "aria-label": ariaLabel, className: classes, ref: ref }, restProps, htmlAttributes, { children: isLoading ? (_jsx(LoadingSpinner, { size: "small" })) : (_jsx("div", { className: "ndl-icon", children: children })) })));
82
74
  });
83
75
  //# sourceMappingURL=IconButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"IconButton.js","sourceRoot":"","sources":["../../../src/button/IconButton.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAsCpD,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,MAAM,CACxD,EAekB,EAClB,GAAG;QAhBH,EACE,QAAQ,EACR,EAAE,EACF,IAAI,GAAG,QAAQ,EACf,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,KAAK,EAChB,IAAI,GAAG,QAAQ,EACf,SAAS,EACT,OAAO,EACP,OAAO,EACP,QAAQ,GAAG,KAAK,EAChB,MAAM,EACN,KAAK,EACL,MAAM,GAAG,KAAK,OAEE,EADb,SAAS,cAdd,qIAeC,CADa;IAId,IAAI,SAAS,GAAG,EAAE,IAAI,QAAQ,CAAC;IAE/B,IAAI,CAAC,EAAE,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;QAC1B,SAAS,GAAG,GAAG,CAAC;IAClB,CAAC;IAED,MAAM,cAAc,GAAG,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC;IAE7C,MAAM,OAAO,GAAG,UAAU,CAAC,cAAc,EAAE,SAAS,EAAE;QACpD,WAAW,EAAE,IAAI,KAAK,OAAO;QAC7B,YAAY,EAAE,IAAI,KAAK,QAAQ;QAC/B,WAAW,EAAE,IAAI,KAAK,OAAO;QAC7B,aAAa,EAAE,OAAO;QACtB,cAAc,EAAE,QAAQ;QACxB,aAAa,EAAE,OAAO;QACtB,cAAc,EAAE,QAAQ;QACxB,YAAY,EAAE,MAAM;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,MAAM;KACrB,CAAC,CAAC;IAEH,IAAI,KAAK,IAAI,QAAQ,EAAE,CAAC;QACtB,oBAAoB,CAClB,+DAA+D,CAChE,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7B,oBAAoB,CAClB,mKAAmK,CACpK,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,CAAC,CAAkD,EAAE,EAAE;QACzE,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,8EAA8E;YAC9E,yEAAyE;YACzE,iFAAiF;YACjF,4CAA4C;YAC5C,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,CAAC,CAAC,eAAe,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,CAAC,CAAC,CAAC;QACb,CAAC;aAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;YAC3B,OAAO,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,KAAC,SAAS;IACR,uEAAuE;wBACnE,SAAS,EAET,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,IAC5C,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,CAAC,cAAc,EACzB,SAAS,EAAE,OAAO,EAClB,GAAG,EAAE,GAAG,YAEP,OAAO,CAAC,CAAC,CAAC,CACT,KAAC,cAAc,IAAC,IAAI,EAAC,OAAO,GAAG,CAChC,CAAC,CAAC,CAAC,CACF,cAAK,SAAS,EAAC,UAAU,YAAE,QAAQ,GAAO,CAC3C,IACS,CACb,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"IconButton.js","sourceRoot":"","sources":["../../../src/button/IconButton.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AA4EpD,MAAM,CAAC,MAAM,UAAU,GAAwB,KAAK,CAAC,UAAU,CAAC,SAAS,MAAM,CAG7E,EAgBgD,EAChD,GAAsB;QAjBtB,EACE,QAAQ,EACR,EAAE,EACF,SAAS,GAAG,KAAK,EACjB,UAAU,GAAG,KAAK,EAClB,IAAI,GAAG,QAAQ,EACf,SAAS,EACT,SAAS,EACT,UAAU,GAAG,KAAK,EAClB,QAAQ,EACR,OAAO,EACP,QAAQ,GAAG,KAAK,EAChB,SAAS,EACT,cAAc,EACd,OAAO,OAEuC,EAD3C,SAAS,cAfd,0KAgBC,CADa;IAId,MAAM,SAAS,GAAsB,EAAE,IAAI,QAAQ,CAAC;IAEpD,MAAM,cAAc,GAAG,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC;IAEjD,MAAM,OAAO,GAAG,UAAU,CAAC,cAAc,EAAE,SAAS,EAAE;QACpD,WAAW,EAAE,IAAI,KAAK,OAAO;QAC7B,YAAY,EAAE,IAAI,KAAK,QAAQ;QAC/B,WAAW,EAAE,IAAI,KAAK,OAAO;QAC7B,aAAa,EAAE,SAAS;QACxB,cAAc,EAAE,UAAU;QAC1B,aAAa,EAAE,SAAS;QACxB,cAAc,EAAE,UAAU;QAC1B,YAAY,EAAE,QAAQ;QACtB,WAAW,EAAE,OAAO;QACpB,YAAY,EAAE,QAAQ;KACvB,CAAC,CAAC;IAEH,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC;QAC1B,oBAAoB,CAClB,+DAA+D,CAChE,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,cAAc,IAAI,CAAC,cAAc,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;QACzE,oBAAoB,CAClB,mKAAmK,CACpK,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,CAAC,CAAkD,EAAE,EAAE;QACzE,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,8EAA8E;YAC9E,yEAAyE;YACzE,iFAAiF;YACjF,4CAA4C;YAC5C,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,CAAC,CAAC,eAAe,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,CAAC,CAAC,CAAC;QACb,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,KAAC,SAAS,kBACR,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,CAAC,cAAc,gBACb,SAAS,EACrB,SAAS,EAAE,OAAO,EAClB,GAAG,EAAE,GAAG,IAEJ,SAAS,EACT,cAAc,cAEjB,SAAS,CAAC,CAAC,CAAC,CACX,KAAC,cAAc,IAAC,IAAI,EAAC,OAAO,GAAG,CAChC,CAAC,CAAC,CAAC,CACF,cAAK,SAAS,EAAC,UAAU,YAAE,QAAQ,GAAO,CAC3C,IACS,CACb,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -1,15 +1,4 @@
1
- var __rest = (this && this.__rest) || function (s, e) {
2
- var t = {};
3
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
- t[p] = s[p];
5
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
- t[p[i]] = s[p[i]];
9
- }
10
- return t;
11
- };
12
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
2
  /**
14
3
  *
15
4
  * Copyright (c) "Neo4j"
@@ -32,19 +21,51 @@ import { jsx as _jsx } from "react/jsx-runtime";
32
21
  */
33
22
  import React from 'react';
34
23
  import { classNames } from '../_common/defaultImports';
35
- /**
36
- * TODO: v3. Incorporate the `size` prop into the component, and pass it to IconButton children.
37
- * We need to use also the `size` prop to adjust padding in various sizes, now it has a fixed padding.
38
- */
39
- export const IconButtonArray = React.forwardRef(function Button(_a, ref) {
40
- var { children, as, className, floating = false, orientation = 'horizontal' } = _a, restProps = __rest(_a, ["children", "as", "className", "floating", "orientation"]);
41
- const Component = as || 'div';
24
+ import { IconButton } from './IconButton';
25
+ import { ChevronDownIconOutline, ChevronUpIconOutline, ChevronLeftIconOutline, ChevronRightIconOutline, } from '../icons';
26
+ const CollapsibleButtonWrapper = ({ children, }) => {
27
+ return _jsx(_Fragment, { children: children });
28
+ };
29
+ CollapsibleButtonWrapper.displayName = 'CollapsibleButtonWrapper';
30
+ export const IconButtonArrayComponent = React.forwardRef(function IconButtonArrayComponent({ children, as, className, isFloating = false, orientation = 'horizontal', size = 'medium', htmlAttributes, }, ref) {
31
+ const [isCollapsed, setIsCollapsed] = React.useState(true);
42
32
  const classes = classNames('ndl-icon-btn-array', {
43
33
  'n-flex-row': orientation === 'horizontal',
44
34
  'n-flex-col': orientation === 'vertical',
45
- 'ndl-array-floating': floating,
46
- [`${className}`]: className,
35
+ 'ndl-array-floating': isFloating,
36
+ [`ndl-${size}`]: size,
37
+ [className]: className,
47
38
  });
48
- return (_jsx(Component, Object.assign({}, restProps, { className: classes, ref: ref, children: children })));
39
+ const Component = as || 'div';
40
+ const applySizeProp = (child) => {
41
+ if (React.isValidElement(child) &&
42
+ child.type === IconButton) {
43
+ return React.cloneElement(child, { size: child.props.size || size });
44
+ }
45
+ return child;
46
+ };
47
+ const childrenArray = React.Children.toArray(children);
48
+ const fixedButtons = childrenArray.filter((child) => !React.isValidElement(child) ||
49
+ child.type.displayName !==
50
+ 'CollapsibleButtonWrapper');
51
+ const fixedButtonsWithProps = React.Children.map(fixedButtons, applySizeProp);
52
+ const collapsibleButtonWrapper = childrenArray.find((child) => React.isValidElement(child) &&
53
+ child.type.displayName ===
54
+ 'CollapsibleButtonWrapper');
55
+ const collapsibleButtonsWithProps = collapsibleButtonWrapper
56
+ ? React.Children.map(collapsibleButtonWrapper.props.children, applySizeProp)
57
+ : null;
58
+ const renderChevronIcon = () => {
59
+ if (orientation === 'horizontal') {
60
+ return isCollapsed ? (_jsx(ChevronRightIconOutline, {})) : (_jsx(ChevronLeftIconOutline, {}));
61
+ }
62
+ return isCollapsed ? (_jsx(ChevronDownIconOutline, {})) : (_jsx(ChevronUpIconOutline, {}));
63
+ };
64
+ return (_jsxs(Component, Object.assign({ role: "group", className: classes, ref: ref }, htmlAttributes, { children: [fixedButtonsWithProps, collapsibleButtonsWithProps && (_jsxs(_Fragment, { children: [!isCollapsed && collapsibleButtonsWithProps, _jsx(IconButton, { onClick: () => setIsCollapsed(!isCollapsed), size: size, ariaLabel: "Show more", "aria-expanded": !isCollapsed, isClean: true, isGrouped: true, children: renderChevronIcon() })] }))] })));
65
+ });
66
+ const IconButtonArray = Object.assign(IconButtonArrayComponent, {
67
+ CollapsibleButtonWrapper,
49
68
  });
69
+ IconButtonArray.displayName = 'IconButtonArray';
70
+ export { IconButtonArray };
50
71
  //# sourceMappingURL=IconButtonArray.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"IconButtonArray.js","sourceRoot":"","sources":["../../../src/button/IconButtonArray.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAqBvD;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,MAAM,CAC7D,EAOuB,EACvB,GAAG;QARH,EACE,QAAQ,EACR,EAAE,EACF,SAAS,EACT,QAAQ,GAAG,KAAK,EAChB,WAAW,GAAG,YAAY,OAEL,EADlB,SAAS,cANd,0DAOC,CADa;IAId,MAAM,SAAS,GAAG,EAAE,IAAI,KAAK,CAAC;IAE9B,MAAM,OAAO,GAAG,UAAU,CAAC,oBAAoB,EAAE;QAC/C,YAAY,EAAE,WAAW,KAAK,YAAY;QAC1C,YAAY,EAAE,WAAW,KAAK,UAAU;QACxC,oBAAoB,EAAE,QAAQ;QAC9B,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,SAAS;KAC5B,CAAC,CAAC;IAEH,OAAO,CACL,KAAC,SAAS,oBAAK,SAAS,IAAE,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,YACnD,QAAQ,IACC,CACb,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"IconButtonArray.js","sourceRoot":"","sources":["../../../src/button/IconButtonArray.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,UAAU,EAAwB,MAAM,cAAc,CAAC;AAChE,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,UAAU,CAAC;AAuBlB,MAAM,wBAAwB,GAA4C,CAAC,EACzE,QAAQ,GACT,EAAE,EAAE;IACH,OAAO,4BAAG,QAAQ,GAAI,CAAC;AACzB,CAAC,CAAC;AACF,wBAAwB,CAAC,WAAW,GAAG,0BAA0B,CAAC;AAElE,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC,UAAU,CACtD,SAAS,wBAAwB,CAC/B,EACE,QAAQ,EACR,EAAE,EACF,SAAS,EACT,UAAU,GAAG,KAAK,EAClB,WAAW,GAAG,YAAY,EAC1B,IAAI,GAAG,QAAQ,EACf,cAAc,GACqC,EACrD,GAAsB;IAEtB,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE3D,MAAM,OAAO,GAAG,UAAU,CAAC,oBAAoB,EAAE;QAC/C,YAAY,EAAE,WAAW,KAAK,YAAY;QAC1C,YAAY,EAAE,WAAW,KAAK,UAAU;QACxC,oBAAoB,EAAE,UAAU;QAChC,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,IAAI;QACrB,CAAC,SAAU,CAAC,EAAE,SAAS;KACxB,CAAC,CAAC;IAEH,MAAM,SAAS,GAAsB,EAAE,IAAI,KAAK,CAAC;IAEjD,MAAM,aAAa,GAAG,CAAC,KAAyB,EAAE,EAAE;QAClD,IACE,KAAK,CAAC,cAAc,CAAkB,KAAK,CAAC;YAC5C,KAAK,CAAC,IAAI,KAAK,UAAU,EACzB,CAAC;YACD,OAAO,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAC1C,QAAQ,CACe,CAAC;IAE1B,MAAM,YAAY,GAAG,aAAa,CAAC,MAAM,CACvC,CAAC,KAAK,EAAE,EAAE,CACR,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC;QAC3B,KAAK,CAAC,IAA4B,CAAC,WAAW;YAC7C,0BAA0B,CAC/B,CAAC;IAEF,MAAM,qBAAqB,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAC9C,YAAY,EACZ,aAAa,CACd,CAAC;IAEF,MAAM,wBAAwB,GAAG,aAAa,CAAC,IAAI,CACjD,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC;QAC1B,KAAK,CAAC,IAA4B,CAAC,WAAW;YAC7C,0BAA0B,CAC/B,CAAC;IAEF,MAAM,2BAA2B,GAAG,wBAAwB;QAC1D,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAChB,wBAAwB,CAAC,KAAK,CAAC,QAAQ,EACvC,aAAa,CACd;QACH,CAAC,CAAC,IAAI,CAAC;IAET,MAAM,iBAAiB,GAAG,GAAG,EAAE;QAC7B,IAAI,WAAW,KAAK,YAAY,EAAE,CAAC;YACjC,OAAO,WAAW,CAAC,CAAC,CAAC,CACnB,KAAC,uBAAuB,KAAG,CAC5B,CAAC,CAAC,CAAC,CACF,KAAC,sBAAsB,KAAG,CAC3B,CAAC;QACJ,CAAC;QACD,OAAO,WAAW,CAAC,CAAC,CAAC,CACnB,KAAC,sBAAsB,KAAG,CAC3B,CAAC,CAAC,CAAC,CACF,KAAC,oBAAoB,KAAG,CACzB,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,CACL,MAAC,SAAS,kBAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,IAAM,cAAc,eACrE,qBAAqB,EACrB,2BAA2B,IAAI,CAC9B,8BACG,CAAC,WAAW,IAAI,2BAA2B,EAC5C,KAAC,UAAU,IACT,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,CAAC,WAAW,CAAC,EAC3C,IAAI,EAAE,IAAI,EACV,SAAS,EAAC,WAAW,mBACN,CAAC,WAAW,EAC3B,OAAO,QACP,SAAS,kBAER,iBAAiB,EAAE,GACT,IACZ,CACJ,KACS,CACb,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,wBAAwB,EAAE;IAC9D,wBAAwB;CACzB,CAAC,CAAC;AACH,eAAe,CAAC,WAAW,GAAG,iBAAiB,CAAC;AAEhD,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -1,14 +1,3 @@
1
- var __rest = (this && this.__rest) || function (s, e) {
2
- var t = {};
3
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
- t[p] = s[p];
5
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
- t[p[i]] = s[p[i]];
9
- }
10
- return t;
11
- };
12
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
2
  /**
14
3
  *
@@ -66,8 +55,7 @@ const getStatusIcon = (iconType) => {
66
55
  *
67
56
  *
68
57
  */
69
- export const Callout = React.forwardRef(function Callout(_a, ref) {
70
- var { as, type = 'note', header = null, children, description = null, className } = _a, restProps = __rest(_a, ["as", "type", "header", "children", "description", "className"]);
58
+ export const Callout = React.forwardRef(function Callout({ as, type = 'note', header = null, children, description = null, className, htmlAttributes, }, ref) {
71
59
  const Component = as || 'div';
72
60
  const classes = classNames('ndl-callout', className, {
73
61
  'ndl-callout-note': type === 'note',
@@ -75,6 +63,6 @@ export const Callout = React.forwardRef(function Callout(_a, ref) {
75
63
  'ndl-callout-example': type === 'example',
76
64
  'ndl-callout-tip': type === 'tip',
77
65
  });
78
- return (_jsxs(Component, Object.assign({ ref: ref }, restProps, { className: classes, children: [_jsx("div", { className: "ndl-callout-rectangle" }), _jsxs("div", { className: "ndl-callout-wrapper", children: [getStatusIcon(type), _jsxs("div", { className: "ndl-callout-content", children: [_jsx(Typography, { variant: "h6", className: "ndl-callout-title", children: type.toUpperCase() }), header && (_jsx(Typography, { variant: "subheading-medium", className: "ndl-callout-header", children: header })), (description || children) && (_jsx(Typography, { variant: "body-medium", className: "ndl-callout-description", children: children || description }))] })] })] })));
66
+ return (_jsxs(Component, Object.assign({ ref: ref, className: classes }, htmlAttributes, { children: [_jsx("div", { className: "ndl-callout-rectangle" }), _jsxs("div", { className: "ndl-callout-wrapper", children: [getStatusIcon(type), _jsxs("div", { className: "ndl-callout-content", children: [_jsx(Typography, { variant: "h6", className: "ndl-callout-title", children: type.toUpperCase() }), header && (_jsx(Typography, { variant: "subheading-medium", className: "ndl-callout-header", children: header })), (description || children) && (_jsx(Typography, { variant: "body-medium", className: "ndl-callout-description", children: children || description }))] })] })] })));
79
67
  });
80
68
  //# sourceMappingURL=Callout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Callout.js","sourceRoot":"","sources":["../../../src/callout/Callout.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,OAAO,EACL,4BAA4B,EAC5B,8BAA8B,EAC9B,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAwB3C;;;;;;GAMG;AAEH,MAAM,aAAa,GAAG,CAAC,QAAqB,EAAE,EAAE;IAC9C,IAAI,aAAiC,CAAC;IAEtC,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,WAAW;YACd,aAAa,GAAG,CACd,KAAC,8BAA8B,IAAC,SAAS,EAAC,4BAA4B,GAAG,CAC1E,CAAC;YACF,MAAM;QACR,KAAK,SAAS;YACZ,aAAa,GAAG,CACd,KAAC,iBAAiB,IAAC,SAAS,EAAC,0BAA0B,GAAG,CAC3D,CAAC;YACF,MAAM;QACR,KAAK,KAAK;YACR,aAAa,GAAG,KAAC,oBAAoB,IAAC,SAAS,EAAC,sBAAsB,GAAG,CAAC;YAC1E,MAAM;QACR,KAAK,MAAM,CAAC;QACZ;YACE,aAAa,GAAG,CACd,KAAC,4BAA4B,IAAC,SAAS,EAAC,uBAAuB,GAAG,CACnE,CAAC;IACN,CAAC;IAED,OAAO,cAAK,SAAS,EAAC,kBAAkB,YAAE,aAAa,GAAO,CAAC;AACjE,CAAC,CAAC;AAEF;;;;;;GAMG;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,OAAO,CACtD,EAQe,EACf,GAAgC;QAThC,EACE,EAAE,EACF,IAAI,GAAG,MAAM,EACb,MAAM,GAAG,IAAI,EACb,QAAQ,EACR,WAAW,GAAG,IAAI,EAClB,SAAS,OAEI,EADV,SAAS,cAPd,gEAQC,CADa;IAId,MAAM,SAAS,GAAG,EAAE,IAAI,KAAK,CAAC;IAE9B,MAAM,OAAO,GAAG,UAAU,CAAC,aAAa,EAAE,SAAS,EAAE;QACnD,kBAAkB,EAAE,IAAI,KAAK,MAAM;QACnC,uBAAuB,EAAE,IAAI,KAAK,WAAW;QAC7C,qBAAqB,EAAE,IAAI,KAAK,SAAS;QACzC,iBAAiB,EAAE,IAAI,KAAK,KAAK;KAClC,CAAC,CAAC;IAEH,OAAO,CACL,MAAC,SAAS,kBAAC,GAAG,EAAE,GAAG,IAAM,SAAS,IAAE,SAAS,EAAE,OAAO,aACpD,cAAK,SAAS,EAAC,uBAAuB,GAAO,EAC7C,eAAK,SAAS,EAAC,qBAAqB,aACjC,aAAa,CAAC,IAAI,CAAC,EACpB,eAAK,SAAS,EAAC,qBAAqB,aAClC,KAAC,UAAU,IAAC,OAAO,EAAC,IAAI,EAAC,SAAS,EAAC,mBAAmB,YACnD,IAAI,CAAC,WAAW,EAAE,GACR,EACZ,MAAM,IAAI,CACT,KAAC,UAAU,IACT,OAAO,EAAC,mBAAmB,EAC3B,SAAS,EAAC,oBAAoB,YAE7B,MAAM,GACI,CACd,EACA,CAAC,WAAW,IAAI,QAAQ,CAAC,IAAI,CAC5B,KAAC,UAAU,IACT,OAAO,EAAC,aAAa,EACrB,SAAS,EAAC,yBAAyB,YAElC,QAAQ,IAAI,WAAW,GACb,CACd,IACG,IACF,KACI,CACb,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"Callout.js","sourceRoot":"","sources":["../../../src/callout/Callout.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,OAAO,EACL,4BAA4B,EAC5B,8BAA8B,EAC9B,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AA6B3C;;;;;;GAMG;AAEH,MAAM,aAAa,GAAG,CAAC,QAAqB,EAAE,EAAE;IAC9C,IAAI,aAAiC,CAAC;IAEtC,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,WAAW;YACd,aAAa,GAAG,CACd,KAAC,8BAA8B,IAAC,SAAS,EAAC,4BAA4B,GAAG,CAC1E,CAAC;YACF,MAAM;QACR,KAAK,SAAS;YACZ,aAAa,GAAG,CACd,KAAC,iBAAiB,IAAC,SAAS,EAAC,0BAA0B,GAAG,CAC3D,CAAC;YACF,MAAM;QACR,KAAK,KAAK;YACR,aAAa,GAAG,KAAC,oBAAoB,IAAC,SAAS,EAAC,sBAAsB,GAAG,CAAC;YAC1E,MAAM;QACR,KAAK,MAAM,CAAC;QACZ;YACE,aAAa,GAAG,CACd,KAAC,4BAA4B,IAAC,SAAS,EAAC,uBAAuB,GAAG,CACnE,CAAC;IACN,CAAC;IAED,OAAO,cAAK,SAAS,EAAC,kBAAkB,YAAE,aAAa,GAAO,CAAC;AACjE,CAAC,CAAC;AAEF;;;;;;GAMG;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,OAAO,CAGtD,EACE,EAAE,EACF,IAAI,GAAG,MAAM,EACb,MAAM,GAAG,IAAI,EACb,QAAQ,EACR,WAAW,GAAG,IAAI,EAClB,SAAS,EACT,cAAc,GAC6B,EAC7C,GAAsB;IAEtB,MAAM,SAAS,GAAG,EAAE,IAAI,KAAK,CAAC;IAE9B,MAAM,OAAO,GAAG,UAAU,CAAC,aAAa,EAAE,SAAS,EAAE;QACnD,kBAAkB,EAAE,IAAI,KAAK,MAAM;QACnC,uBAAuB,EAAE,IAAI,KAAK,WAAW;QAC7C,qBAAqB,EAAE,IAAI,KAAK,SAAS;QACzC,iBAAiB,EAAE,IAAI,KAAK,KAAK;KAClC,CAAC,CAAC;IAEH,OAAO,CACL,MAAC,SAAS,kBAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,IAAM,cAAc,eACzD,cAAK,SAAS,EAAC,uBAAuB,GAAO,EAC7C,eAAK,SAAS,EAAC,qBAAqB,aACjC,aAAa,CAAC,IAAI,CAAC,EACpB,eAAK,SAAS,EAAC,qBAAqB,aAClC,KAAC,UAAU,IAAC,OAAO,EAAC,IAAI,EAAC,SAAS,EAAC,mBAAmB,YACnD,IAAI,CAAC,WAAW,EAAE,GACR,EACZ,MAAM,IAAI,CACT,KAAC,UAAU,IACT,OAAO,EAAC,mBAAmB,EAC3B,SAAS,EAAC,oBAAoB,YAE7B,MAAM,GACI,CACd,EACA,CAAC,WAAW,IAAI,QAAQ,CAAC,IAAI,CAC5B,KAAC,UAAU,IACT,OAAO,EAAC,aAAa,EACrB,SAAS,EAAC,yBAAyB,YAElC,QAAQ,IAAI,WAAW,GACb,CACd,IACG,IACF,KACI,CACb,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,187 @@
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 { forwardRef, useContext, useEffect, useMemo, useRef, useState, useImperativeHandle, } from 'react';
23
+ import classNames from 'classnames';
24
+ import { useResizeObserver } from 'usehooks-ts';
25
+ import { Typography } from '../typography';
26
+ import { ChartsChartContext } from './Chart';
27
+ import * as d3 from 'd3';
28
+ export const XAxis = forwardRef(function XAxis({ position,
29
+ //numberOfTicks = 8,
30
+ title, labelFormat: labelFormatProp, scale: scaleId, }, ref) {
31
+ var _a, _b, _c, _d, _e, _f;
32
+ const classes = useMemo(() => classNames('ndl-charts-chart-axis', 'ndl-charts-chart-axis-x', {
33
+ 'ndl-charts-chart-axis-top': position === 'top',
34
+ 'ndl-charts-chart-axis-bottom': position === 'bottom',
35
+ }), [position]);
36
+ const svgRef = useRef(null);
37
+ const chartsChartContextValue = useContext(ChartsChartContext);
38
+ const xAxisRef = useRef(null);
39
+ const [largestTextWidth, setLargestTextWidth] = useState(50);
40
+ const scale = (_a = chartsChartContextValue === null || chartsChartContextValue === void 0 ? void 0 : chartsChartContextValue.scales) === null || _a === void 0 ? void 0 : _a[scaleId];
41
+ const containerRef = useRef(null);
42
+ useImperativeHandle(ref, () => {
43
+ // console.info('Axis.tsx - useImperativeHandle');
44
+ const svgChart = containerRef.current;
45
+ if (!svgChart) {
46
+ return null;
47
+ }
48
+ return svgChart;
49
+ });
50
+ useResizeObserver({
51
+ ref: containerRef,
52
+ onResize: () => {
53
+ // Delay by 0ms to ensure all rendering is complete
54
+ setTimeout(() => {
55
+ var _a;
56
+ const childNodes = (_a = svgRef.current) === null || _a === void 0 ? void 0 : _a.querySelectorAll('text');
57
+ if (!childNodes) {
58
+ return;
59
+ }
60
+ const textWidths = Array.from(childNodes).map((node) => {
61
+ if (node instanceof SVGTextElement) {
62
+ return node.getBoundingClientRect().width;
63
+ }
64
+ return 0;
65
+ });
66
+ setLargestTextWidth(Math.max(...textWidths));
67
+ }, 0);
68
+ },
69
+ });
70
+ const xScale = scale === null || scale === void 0 ? void 0 : scale.functionWithContentWidthAsRange;
71
+ /* @ts-expect-error we don't have the correct type for the tick values */
72
+ const labelFormat = useMemo(() => {
73
+ if (labelFormatProp) {
74
+ return labelFormatProp;
75
+ }
76
+ if (xScale === undefined) {
77
+ return (dataPoint) => dataPoint.toString();
78
+ }
79
+ return xScale.tickFormat();
80
+ }, [labelFormatProp, xScale]);
81
+ useEffect(() => {
82
+ const AxisRefCurrent = xAxisRef.current;
83
+ if (AxisRefCurrent === null || xScale === undefined) {
84
+ return;
85
+ }
86
+ const xAxis = d3
87
+ .axisBottom(xScale)
88
+ .tickValues([xScale.domain()[0], ...xScale.ticks(), xScale.domain()[1]]); // Ensure the start and end ticks
89
+ xAxis.tickPadding(8);
90
+ d3.select(AxisRefCurrent).call(xAxis);
91
+ return () => {
92
+ d3.select(AxisRefCurrent).selectAll('*').remove();
93
+ };
94
+ }, [xScale]);
95
+ //const ticks = d3.ticks(xScale?.range()[0], xScale?.range()[1], 5);
96
+ const pixelsPerTick = largestTextWidth;
97
+ const pixelsAvailable = (_c = (_b = chartsChartContextValue.contentSize) === null || _b === void 0 ? void 0 : _b.width) !== null && _c !== void 0 ? _c : 0;
98
+ const tickCount = Math.floor(pixelsAvailable / pixelsPerTick); // Adjust the number of ticks based on width (example logic)
99
+ const ticks = (_d = xScale === null || xScale === void 0 ? void 0 : xScale.ticks(Math.floor(tickCount))) !== null && _d !== void 0 ? _d : [];
100
+ if (xScale === undefined) {
101
+ return null;
102
+ }
103
+ const domainStrokeWidth = 2;
104
+ const tickLength = domainStrokeWidth + 8;
105
+ const marginBetweenTickAndLabel = tickLength + 8;
106
+ const height = '2';
107
+ return (_jsxs("div", { ref: containerRef, className: classes, children: [position === 'top' && (_jsx(Typography, { className: "ndl-charts-chart-axis-title", variant: "body-medium", children: title })), _jsx("svg", { ref: svgRef, children: _jsxs("g", { children: [_jsx("line", { x1: 0, x2: (_f = (_e = chartsChartContextValue.contentSize) === null || _e === void 0 ? void 0 : _e.width) !== null && _f !== void 0 ? _f : 0, y1: height, y2: height, className: "domain" }), ticks.map((tick, index) => {
108
+ const x = xScale(tick);
109
+ return (_jsxs("g", { className: "tick", transform: `translate(${x} 0)`, children: [_jsx("text", { y: position === 'bottom' ? marginBetweenTickAndLabel : 0, textAnchor: "middle", fill: "currentColor", children: labelFormat(tick) }), _jsx("line", { y1: position === 'bottom'
110
+ ? 0
111
+ : marginBetweenTickAndLabel + tickLength, y2: position === 'bottom'
112
+ ? tickLength
113
+ : marginBetweenTickAndLabel, stroke: "currentColor" })] }, index));
114
+ })] }) }), position === 'bottom' && (_jsx(Typography, { className: "ndl-charts-chart-axis-title", variant: "body-medium", children: title }))] }));
115
+ });
116
+ export const YAxis = forwardRef(function YAxis({ position, title, labelFormat: labelFormatProp, scale: scaleId }, ref) {
117
+ var _a, _b, _c, _d;
118
+ const [offsetHeight, setOffsetHeight] = useState(0);
119
+ const [largestTextWidth, setLargestTextWidth] = useState(0);
120
+ const chartsChartContextValue = useContext(ChartsChartContext);
121
+ const scale = (_a = chartsChartContextValue === null || chartsChartContextValue === void 0 ? void 0 : chartsChartContextValue.scales) === null || _a === void 0 ? void 0 : _a[scaleId];
122
+ const svgRef = useRef(null);
123
+ const classes = useMemo(() => classNames('ndl-charts-chart-axis', 'ndl-charts-chart-axis-y', {
124
+ 'ndl-charts-chart-axis-left': position === 'left',
125
+ 'ndl-charts-chart-axis-right': position === 'right',
126
+ }), [position]);
127
+ const containerRef = useRef(null);
128
+ useImperativeHandle(ref, () => {
129
+ // console.info('Axis.tsx - useImperativeHandle');
130
+ const svgChart = containerRef.current;
131
+ if (!svgChart) {
132
+ return null;
133
+ }
134
+ return svgChart;
135
+ });
136
+ useResizeObserver({
137
+ ref: containerRef,
138
+ onResize: () => {
139
+ var _a, _b;
140
+ setOffsetHeight((_b = (_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.clientHeight) !== null && _b !== void 0 ? _b : 0);
141
+ if (svgRef.current === null) {
142
+ return;
143
+ }
144
+ // Delay by 0ms to ensure all rendering is complete
145
+ setTimeout(() => {
146
+ var _a;
147
+ const childNodes = (_a = svgRef.current) === null || _a === void 0 ? void 0 : _a.childNodes;
148
+ if (!childNodes) {
149
+ return;
150
+ }
151
+ const textWidths = Array.from(childNodes).map((node) => {
152
+ if (node instanceof SVGTextElement) {
153
+ return node.getBoundingClientRect().width;
154
+ }
155
+ return 0;
156
+ });
157
+ setLargestTextWidth(Math.max(...textWidths));
158
+ }, 0);
159
+ },
160
+ });
161
+ //const yScale = scale?.function.copy().range(range);
162
+ const yScale = scale === null || scale === void 0 ? void 0 : scale.functionWithContentHeightAsRange;
163
+ //@ts-expect-error - this is a hack to get the yScale to work
164
+ const labelFormat = useMemo(() => {
165
+ var _a;
166
+ if (labelFormatProp) {
167
+ return labelFormatProp;
168
+ }
169
+ return (_a = yScale === null || yScale === void 0 ? void 0 : yScale.tickFormat()) !== null && _a !== void 0 ? _a : (() => '');
170
+ }, [labelFormatProp, yScale]);
171
+ //TODO: make this dynamic
172
+ const pixelsPerTick = 20;
173
+ const pixelsAvailable = (_c = (_b = chartsChartContextValue.contentSize) === null || _b === void 0 ? void 0 : _b.height) !== null && _c !== void 0 ? _c : 0;
174
+ const ticks = (_d = yScale === null || yScale === void 0 ? void 0 : yScale.ticks(Math.floor(pixelsAvailable / pixelsPerTick))) !== null && _d !== void 0 ? _d : [];
175
+ if (yScale === undefined) {
176
+ return null;
177
+ }
178
+ return (_jsxs("div", { ref: containerRef, className: classes, style: { paddingLeft: '8px', paddingRight: '8px' }, children: [position === 'left' && (_jsx(Typography, { className: "ndl-charts-chart-axis-title", variant: "body-medium", children: title })), _jsx("svg", { style: {
179
+ position: 'relative',
180
+ height: offsetHeight,
181
+ width: largestTextWidth,
182
+ }, ref: svgRef, children: ticks.map((tick) => {
183
+ const y = yScale(tick);
184
+ return (_jsx("text", { className: "tick", textAnchor: position === 'left' ? 'end' : 'start', x: position === 'left' ? '100%' : 0, y: y, dy: "0.4em", children: labelFormat(tick) }, labelFormat(tick)));
185
+ }) }), position === 'right' && (_jsx(Typography, { className: "ndl-charts-chart-axis-title", variant: "body-medium", children: title }))] }));
186
+ });
187
+ //# sourceMappingURL=Axis.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Axis.js","sourceRoot":"","sources":["../../../src/charts/Axis.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,66 @@
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 { useContext, useRef } from 'react';
24
+ import { ChartsChartContext } from './Chart';
25
+ export const CartesianGrid = ({ className, htmlAttributes, scaleXAxis: scaleXAxisId, scaleYAxis: scaleYAxisId, }) => {
26
+ var _a, _b, _c, _d, _e, _f;
27
+ const containerElement = useRef(null);
28
+ const classes = classNames('ndl-charts-chart-cartesian-grid', className);
29
+ const { scales, contentSize } = useContext(ChartsChartContext);
30
+ let scaleXAxis = undefined;
31
+ let scaleYAxis = undefined;
32
+ if (scaleXAxisId) {
33
+ scaleXAxis = (_a = scales === null || scales === void 0 ? void 0 : scales[scaleXAxisId]) === null || _a === void 0 ? void 0 : _a.functionWithContentWidthAsRange;
34
+ }
35
+ if (scaleYAxisId) {
36
+ scaleYAxis = (_b = scales === null || scales === void 0 ? void 0 : scales[scaleYAxisId]) === null || _b === void 0 ? void 0 : _b.functionWithContentHeightAsRange;
37
+ }
38
+ //TODO: make this dynamic
39
+ const pixelsPerYTick = 20;
40
+ const pixelsYAvailable = (_c = contentSize === null || contentSize === void 0 ? void 0 : contentSize.height) !== null && _c !== void 0 ? _c : 0;
41
+ const yTicks = (_d = scaleYAxis === null || scaleYAxis === void 0 ? void 0 : scaleYAxis.ticks(Math.floor(pixelsYAvailable / pixelsPerYTick))) !== null && _d !== void 0 ? _d : [];
42
+ //TODO: make this dynamic
43
+ const pixelsPerXTick = 30;
44
+ const pixelsXAvailable = (_e = contentSize === null || contentSize === void 0 ? void 0 : contentSize.width) !== null && _e !== void 0 ? _e : 0;
45
+ const xTicks = (_f = scaleXAxis === null || scaleXAxis === void 0 ? void 0 : scaleXAxis.ticks(Math.floor(pixelsXAvailable / pixelsPerXTick))) !== null && _f !== void 0 ? _f : [];
46
+ if (!scaleXAxis && !scaleYAxis) {
47
+ return null;
48
+ }
49
+ return (_jsxs("div", Object.assign({ className: classes, ref: containerElement }, htmlAttributes, { children: [yTicks.map((tick) => {
50
+ const y = scaleYAxis === null || scaleYAxis === void 0 ? void 0 : scaleYAxis(tick);
51
+ return (_jsx("div", { className: "ndl-charts-chart-cartesian-grid-line", style: {
52
+ top: y,
53
+ position: 'absolute',
54
+ width: '100%',
55
+ } }, tick.toString()));
56
+ }), xTicks.map((tick) => {
57
+ const x = scaleXAxis === null || scaleXAxis === void 0 ? void 0 : scaleXAxis(tick);
58
+ return (_jsx("div", { className: "ndl-charts-chart-cartesian-grid-line", style: {
59
+ left: x,
60
+ position: 'absolute',
61
+ width: '1px',
62
+ height: '100%',
63
+ } }, tick.toString()));
64
+ })] })));
65
+ };
66
+ //# sourceMappingURL=CartesianGrid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CartesianGrid.js","sourceRoot":"","sources":["../../../src/charts/CartesianGrid.tsx"],"names":[],"mappings":"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"}