@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,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, Fragment as _Fragment } from "react/jsx-runtime";
13
2
  /**
14
3
  *
@@ -30,308 +19,222 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
30
19
  * You should have received a copy of the GNU General Public License
31
20
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
32
21
  */
33
- import React, { useCallback, useContext, useEffect, useImperativeHandle, useRef, useState, } from 'react';
34
- import { classNames } from '../_common/defaultImports';
35
- import { findUntil } from '../_common/utils';
36
- import { IconButton } from '../button';
37
- import { debounce } from '../helpers/debounce';
22
+ import { autoUpdate, flip, FloatingFocusManager, FloatingList, FloatingNode, FloatingPortal, FloatingTree, offset, safePolygon, shift, useClick, useDismiss, useFloating, useFloatingNodeId, useFloatingParentNodeId, useFloatingTree, useHover, useInteractions, useListItem, useListNavigation, useMergeRefs, useRole, useTypeahead, } from '@floating-ui/react';
23
+ import classNames from 'classnames';
24
+ import { createContext, forwardRef, useContext, useEffect, useRef, useState, } from 'react';
25
+ import { useNeedleTheme } from '../theme';
38
26
  import { ChevronRightIconOutline, XMarkIconOutline } from '../icons';
39
- import { Popover } from '../popover';
40
- import { useNeedleTheme } from '../theme/ThemeProvider';
41
- import { SafeArea } from './SafeArea';
42
- const MenuContext = React.createContext(null);
43
- const useMenuContext = () => {
44
- const context = useContext(MenuContext);
45
- if (context === null) {
46
- throw new Error('Menu used without context. Did you render this component inside a <Menu />?');
47
- }
48
- return context;
49
- };
50
- const MenuComponent = React.forwardRef(function MenuComponent(_a, ref) {
51
- var { size = 'small', className, minWidth = 250, open, onClose, children, level = 0, nested } = _a, rest = __rest(_a, ["size", "className", "minWidth", "open", "onClose", "children", "level", "nested"]);
52
- const menuRef = useRef();
53
- const focus = useCallback(() => {
54
- const menu = menuRef.current;
55
- if (!menu)
56
- return;
57
- const menuItems = menu.querySelectorAll(':scope > .ndl-menu-items');
58
- if (menuItems.length > 0) {
59
- menuItems[0].focus();
27
+ import { Divider } from '../divider';
28
+ import { IconButton } from '../button';
29
+ const MenuContext = createContext({
30
+ getItemProps: () => ({}),
31
+ activeIndex: null,
32
+ setActiveIndex: () => { },
33
+ setHasFocusInside: () => { },
34
+ isOpen: false,
35
+ });
36
+ const MenuComponent = forwardRef(function MenuComponent({ children, isOpen: controlledOpen, onClose, isRoot, anchorRef, as, className, minWidth, title, description, htmlAttributes, }, forwardedRef) {
37
+ const [isOpen, setIsOpen] = useState(false);
38
+ const [hasFocusInside, setHasFocusInside] = useState(false);
39
+ const [activeIndex, setActiveIndex] = useState(null);
40
+ const elementsRef = useRef([]);
41
+ const labelsRef = useRef([]);
42
+ const parent = useContext(MenuContext);
43
+ const tree = useFloatingTree();
44
+ const nodeId = useFloatingNodeId();
45
+ const parentId = useFloatingParentNodeId();
46
+ const item = useListItem();
47
+ const { themeClassName } = useNeedleTheme();
48
+ useEffect(() => {
49
+ if (controlledOpen === undefined) {
60
50
  return;
61
51
  }
62
- menu.focus();
63
- }, []);
64
- // Override ref to map to internal ref
65
- // as well as change focus to focus the
66
- // first menu item
67
- useImperativeHandle(ref, () => {
68
- const menu = menuRef.current;
69
- if (!menu) {
70
- return null;
71
- }
72
- return Object.assign(Object.assign({}, menu), { getElem: () => menu, focus: focus });
52
+ setIsOpen(controlledOpen);
53
+ }, [controlledOpen]);
54
+ const Component = as || 'div';
55
+ const isNested = parentId != null;
56
+ const { floatingStyles, refs, context } = useFloating({
57
+ nodeId,
58
+ open: isOpen,
59
+ onOpenChange: (open, event) => {
60
+ setIsOpen(open);
61
+ if (!open) {
62
+ onClose === null || onClose === void 0 ? void 0 : onClose(event);
63
+ }
64
+ },
65
+ placement: isNested ? 'right-start' : 'bottom-start',
66
+ elements: {
67
+ reference: anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.current,
68
+ },
69
+ middleware: [
70
+ offset({
71
+ mainAxis: isNested ? 0 : 4,
72
+ alignmentAxis: isNested ? -4 : 0,
73
+ }),
74
+ flip(),
75
+ shift(),
76
+ ],
77
+ whileElementsMounted: autoUpdate,
78
+ });
79
+ const hover = useHover(context, {
80
+ enabled: isNested,
81
+ delay: { open: 75 },
82
+ handleClose: safePolygon({ blockPointerEvents: true }),
83
+ });
84
+ const click = useClick(context, {
85
+ event: 'mousedown',
86
+ toggle: !isNested,
87
+ ignoreMouse: isNested,
88
+ });
89
+ const role = useRole(context, { role: 'menu' });
90
+ const dismiss = useDismiss(context, { bubbles: true });
91
+ const listNavigation = useListNavigation(context, {
92
+ listRef: elementsRef,
93
+ activeIndex,
94
+ nested: isNested,
95
+ onNavigate: setActiveIndex,
96
+ });
97
+ const typeahead = useTypeahead(context, {
98
+ listRef: labelsRef,
99
+ onMatch: isOpen ? setActiveIndex : undefined,
100
+ activeIndex,
73
101
  });
102
+ const { getReferenceProps, getFloatingProps, getItemProps } = useInteractions([hover, click, role, dismiss, listNavigation, typeahead]);
103
+ // Event emitter allows you to communicate across tree components.
104
+ // This effect closes all menus when an item gets clicked anywhere
105
+ // in the tree.
74
106
  useEffect(() => {
75
- // Focus menu item immediately, when
76
- // menu is not nested
77
- if (open && !nested) {
78
- focus();
79
- }
80
- }, [open, nested, focus]);
81
- const { themeClassName } = useNeedleTheme();
82
- const classes = classNames('ndl-menu', themeClassName, {
83
- 'ndl-small': size === 'small',
84
- 'ndl-large': size === 'large',
85
- }, className);
86
- return (_jsx(MenuContext.Provider, { value: { onClose, level, size }, children: _jsx(Popover, Object.assign({ tabIndex: -1, captureFocus: false }, rest, { open: open, style: Object.assign({ minWidth }, (rest.style || {})), className: classes, ref: menuRef, onClose: onClose, children: children })) }));
87
- });
88
- MenuComponent.displayName = 'Menu';
89
- const getMenuItem = (direction) => {
90
- const activeElement = document.activeElement;
91
- if (!activeElement)
92
- return null;
93
- const ITEM_SELECTOR = '.ndl-menu-item:not(.ndl-disabled)';
94
- // Focused in wrapper case, return first or last item
95
- if (activeElement.matches('.ndl-menu-items')) {
96
- const children = [...activeElement.children].filter((sibling) => sibling instanceof HTMLElement && sibling.matches(ITEM_SELECTOR));
97
- return direction === 'next'
98
- ? children[0]
99
- : children[children.length - 1];
100
- }
101
- else {
102
- const itemParent = activeElement.closest('.ndl-menu-item:not(.ndl-disabled)');
103
- if (!(itemParent instanceof HTMLElement))
104
- return null;
105
- const newItemElement = findUntil(direction, itemParent, ITEM_SELECTOR);
106
- if (!newItemElement || !(newItemElement instanceof HTMLElement)) {
107
- return null;
108
- }
109
- return newItemElement;
110
- }
111
- };
112
- /** Get all siblings of an element */
113
- function getAllSiblings(element) {
114
- var _a;
115
- const children = [...(((_a = element.parentNode) === null || _a === void 0 ? void 0 : _a.children) || [])];
116
- return children.filter((child) => child !== element && child.tagName !== 'svg');
117
- }
118
- const MenuItems = React.forwardRef(function MenuItems(_a, ref) {
119
- var { as = 'ul', children, className } = _a, rest = __rest(_a, ["as", "children", "className"]);
120
- const menuItemsRef = useRef();
121
- const { onClose } = useMenuContext();
122
- const handleKeyDown = (event) => {
123
- const menuItems = menuItemsRef.current;
124
- if (!menuItems) {
107
+ if (!tree)
125
108
  return;
109
+ function handleTreeClick() {
110
+ setIsOpen(false);
111
+ onClose === null || onClose === void 0 ? void 0 : onClose();
112
+ }
113
+ function onSubMenuOpen(event) {
114
+ if (event.nodeId !== nodeId && event.parentId === parentId) {
115
+ setIsOpen(false);
116
+ onClose === null || onClose === void 0 ? void 0 : onClose();
117
+ }
126
118
  }
127
- if (event.key === 'ArrowDown') {
128
- event.preventDefault();
129
- event.stopPropagation();
130
- const newFocusedElement = getMenuItem('next');
131
- newFocusedElement === null || newFocusedElement === void 0 ? void 0 : newFocusedElement.focus();
132
- }
133
- else if (event.key === 'ArrowUp') {
134
- event.preventDefault();
135
- event.stopPropagation();
136
- const newFocusedElement = getMenuItem('prev');
137
- newFocusedElement === null || newFocusedElement === void 0 ? void 0 : newFocusedElement.focus();
138
- }
139
- else if (event.key === 'Escape') {
140
- event.preventDefault();
141
- event.stopPropagation();
142
- onClose === null || onClose === void 0 ? void 0 : onClose(event);
143
- }
144
- };
145
- useImperativeHandle(ref, () => menuItemsRef.current);
146
- const Component = as;
147
- const classes = classNames('ndl-menu-items', className);
148
- return (_jsx(Component, Object.assign({ tabIndex: -1, onKeyDown: handleKeyDown, role: "menu" }, rest, { className: classes, ref: menuItemsRef, children: children })));
119
+ tree.events.on('click', handleTreeClick);
120
+ tree.events.on('menuopen', onSubMenuOpen);
121
+ return () => {
122
+ tree.events.off('click', handleTreeClick);
123
+ tree.events.off('menuopen', onSubMenuOpen);
124
+ };
125
+ }, [tree, nodeId, parentId, onClose]);
126
+ useEffect(() => {
127
+ if (isOpen && tree) {
128
+ tree.events.emit('menuopen', { parentId, nodeId });
129
+ }
130
+ }, [tree, isOpen, nodeId, parentId]);
131
+ const menuClasses = classNames('ndl-menu', themeClassName, className);
132
+ const ref = useMergeRefs([refs.setReference, item.ref, forwardedRef]);
133
+ return (_jsxs(FloatingNode, { id: nodeId, children: [!isRoot && (_jsx(NestedMenuItem, { ref: ref, className: isNested ? 'MenuItem' : 'RootMenu', htmlAttributes: Object.assign(Object.assign({ tabIndex: !isNested
134
+ ? undefined
135
+ : parent.activeIndex === item.index
136
+ ? 0
137
+ : -1, role: isNested ? 'menuitem' : undefined, 'data-open': isOpen ? '' : undefined, 'data-nested': isNested ? '' : undefined, 'data-focus-inside': hasFocusInside ? '' : undefined }, htmlAttributes), getReferenceProps(parent.getItemProps({
138
+ onFocus(event) {
139
+ var _a;
140
+ (_a = htmlAttributes === null || htmlAttributes === void 0 ? void 0 : htmlAttributes.onFocus) === null || _a === void 0 ? void 0 : _a.call(htmlAttributes, event);
141
+ setHasFocusInside(false);
142
+ parent.setHasFocusInside(true);
143
+ },
144
+ }))), title: title, description: description })), _jsx(MenuContext.Provider, { value: {
145
+ activeIndex,
146
+ setActiveIndex,
147
+ getItemProps,
148
+ setHasFocusInside,
149
+ isOpen,
150
+ }, children: _jsx(FloatingList, { elementsRef: elementsRef, labelsRef: labelsRef, children: isOpen && (_jsx(FloatingPortal, { children: _jsx(FloatingFocusManager, { context: context, modal: false, initialFocus: isNested ? -1 : 0, returnFocus: !isNested, closeOnFocusOut: true, guards: true, children: _jsx(Component, Object.assign({ ref: refs.setFloating, className: menuClasses, style: Object.assign({ minWidth: minWidth ? `${minWidth}px` : undefined }, floatingStyles) }, getFloatingProps(), { children: children })) }) })) }) })] }));
149
151
  });
150
- MenuItems.displayName = 'Menu.Items';
151
- const isNested = (props) => {
152
- return !!props.children;
153
- };
154
- const MenuItem = React.forwardRef(function MenuItem(props, ref) {
155
- if (isNested(props)) {
156
- return _jsx(NestedMenuItem, Object.assign({}, props, { ref: ref }));
157
- }
158
- return _jsx(StandardMenuItem, Object.assign({}, props, { ref: ref }));
152
+ const MenuItem = forwardRef(function MenuItem({ title, className, icon, description, isDisabled, as, onClick, onFocus, htmlAttributes, }, forwardedRef) {
153
+ const menu = useContext(MenuContext);
154
+ const itemLabel = typeof title === 'string' ? title : undefined;
155
+ const item = useListItem({ label: isDisabled ? null : itemLabel });
156
+ const tree = useFloatingTree();
157
+ const isActive = item.index === menu.activeIndex;
158
+ const classes = classNames(`ndl-menu-item n-flex n-flex-col`, className, {
159
+ 'ndl-disabled': isDisabled,
160
+ //nested: isNested,
161
+ });
162
+ const ref = useMergeRefs([item.ref, forwardedRef]);
163
+ const Component = as || 'button';
164
+ return (_jsx(_Fragment, { children: _jsx(Component, Object.assign({ className: classes, ref: ref, type: "button", role: "menuitem", tabIndex: isActive ? 0 : -1, disabled: isDisabled }, htmlAttributes, menu.getItemProps({
165
+ onClick(event) {
166
+ onClick === null || onClick === void 0 ? void 0 : onClick(event);
167
+ tree === null || tree === void 0 ? void 0 : tree.events.emit('click');
168
+ },
169
+ onFocus(event) {
170
+ onFocus === null || onFocus === void 0 ? void 0 : onFocus(event);
171
+ menu.setHasFocusInside(true);
172
+ },
173
+ }), { children: _jsxs("div", { className: "n-flex n-flex-row n-gap-token-4", children: [icon && _jsx("div", { className: "ndl-menu-item-icon", children: icon }), _jsxs("div", { className: "n-flex n-flex-col n-gap-token-2 n-w-full", children: [_jsx("div", { className: "ndl-menu-item-title", children: title }), description && (_jsx("div", { className: "ndl-menu-item-description", children: description }))] })] }) })) }));
159
174
  });
160
- MenuItem.displayName = 'Menu.Item';
161
- const StandardMenuItem = React.forwardRef(function MenuItem(_a, ref) {
162
- var { as = 'li', icon, title, description, className, disabled = false, nested = false, onClick, onKeyDown } = _a, rest = __rest(_a, ["as", "icon", "title", "description", "className", "disabled", "nested", "onClick", "onKeyDown"]);
163
- const Component = as;
175
+ const NestedMenuItem = forwardRef(function MenuItem({ title, isDisabled, className, description, as, onFocus, onClick, htmlAttributes, }, forwardedRef) {
176
+ const menu = useContext(MenuContext);
177
+ const itemLabel = typeof title === 'string' ? title : undefined;
178
+ const item = useListItem({ label: isDisabled ? null : itemLabel });
179
+ const tree = useFloatingTree();
180
+ const isActive = item.index === menu.activeIndex;
181
+ const Component = as || 'button';
182
+ const ref = useMergeRefs([item.ref, forwardedRef]);
164
183
  const classes = classNames(`ndl-menu-item n-flex n-flex-col`, className, {
165
- 'ndl-disabled': disabled,
166
- nested,
184
+ 'ndl-disabled': isDisabled,
167
185
  });
168
- const handleClick = (e) => {
169
- if (disabled) {
170
- e.preventDefault();
171
- return;
172
- }
173
- if (onClick)
174
- onClick(e);
175
- };
176
- const handleKeyDown = (e) => {
177
- if (onKeyDown)
178
- onKeyDown(e);
179
- if (e.key === 'Enter') {
180
- if (disabled) {
181
- e.preventDefault();
182
- return;
183
- }
184
- if (onClick)
185
- onClick(e);
186
- }
187
- };
188
- return (_jsx(Component, Object.assign({ tabIndex: -1, role: "menuitem" }, rest, { className: classes, onClick: handleClick, onKeyDown: handleKeyDown, ref: ref, "aria-disabled": disabled, children: _jsxs("div", { className: "n-flex n-flex-row n-gap-token-4", children: [icon && _jsx("div", { className: "ndl-menu-item-icon", children: icon }), _jsxs("div", { className: "n-flex n-flex-col n-gap-token-2 n-w-full", children: [_jsx("div", { className: "ndl-menu-item-title", children: title }), description && (_jsx("div", { className: "ndl-menu-item-description", children: description }))] })] }) })));
186
+ return (_jsxs(Component, Object.assign({ className: classes, ref: ref, type: "button", role: "menuitem", tabIndex: isActive ? 0 : -1, disabled: isDisabled }, htmlAttributes, menu.getItemProps({
187
+ onClick(event) {
188
+ onClick === null || onClick === void 0 ? void 0 : onClick(event);
189
+ tree === null || tree === void 0 ? void 0 : tree.events.emit('click');
190
+ },
191
+ onFocus(event) {
192
+ onFocus === null || onFocus === void 0 ? void 0 : onFocus(event);
193
+ menu.setHasFocusInside(true);
194
+ },
195
+ }), { children: [_jsxs("div", { className: "n-flex n-flex-row n-items-center n-w-full", children: [_jsx("div", { className: "ndl-menu-item-title", children: title }), _jsx("span", { className: "n-text-palette-neutral-text-weak", children: _jsx(ChevronRightIconOutline, { className: "n-size-token-6" }) })] }), description && (_jsx("div", { className: "ndl-menu-item-description", children: description }))] })));
189
196
  });
190
- const MenuHeader = React.forwardRef(function MenuHeader(_a, ref) {
191
- var { as = 'div', title, description, className } = _a, rest = __rest(_a, ["as", "title", "description", "className"]);
192
- const Component = as;
193
- const { onClose, size } = useMenuContext();
194
- const handleClose = (e) => onClose && onClose(e);
195
- const classes = classNames('ndl-menu-header n-flex n-flex-col', className);
196
- return (_jsxs(Component, Object.assign({}, rest, { className: classes, ref: ref, children: [_jsxs("div", { className: "n-flex n-justify-between n-items-center", children: [_jsx("div", { className: "ndl-menu-header-title", children: title }), _jsx(IconButton, { clean: true, tabIndex: 0, onKeyDown: handleClose, onClick: handleClose, size: size, children: _jsx(XMarkIconOutline, {}) })] }), description && (_jsx("div", { className: "ndl-menu-header-description", children: description }))] })));
197
+ const MenuWrapper = forwardRef(function Menu(props, ref) {
198
+ const parentId = useFloatingParentNodeId();
199
+ if (parentId === null) {
200
+ return (_jsx(FloatingTree, { children: _jsx(MenuComponent, Object.assign({ ref: ref }, props, { isRoot: true })) }));
201
+ }
202
+ return _jsx(MenuComponent, Object.assign({ ref: ref }, props));
203
+ });
204
+ const MenuItems = ({ children, className }) => {
205
+ const classes = classNames('ndl-menu-items', className);
206
+ return _jsx("div", { className: classes, children: children });
207
+ };
208
+ const MenuDivider = forwardRef(function MenuDivider(props, ref) {
209
+ return _jsx(Divider, Object.assign({ ref: ref }, props));
197
210
  });
198
- MenuHeader.displayName = 'Menu.Header';
199
- const MenuDivider = () => _jsx("div", { className: "ndl-menu-divider" });
200
- MenuDivider.displayName = 'Menu.Divider';
201
211
  const MenuSubheader = (props) => (_jsx("div", { className: "ndl-menu-subheader", children: _jsx("div", { className: "ndl-menu-subheader-title", children: props.title }) }));
202
- MenuSubheader.displayName = 'Menu.Subheader';
203
- const NestedMenuItem = React.forwardRef(function NestedMenuItem(_a, ref) {
204
- var { title, className, children, disabled, safeArea = true } = _a, props = __rest(_a, ["title", "className", "children", "disabled", "safeArea"]);
205
- const [nestedAnchorEl, setNestedAnchorEl] = useState(null);
206
- const nestedMenuRef = useRef(null);
207
- const menuItemRef = useRef(null);
208
- const [safe, setSafe] = useState(undefined);
209
- const svgRef = useRef(null);
210
- const { level } = useMenuContext();
211
- const levelClass = `nested-level-${level}`;
212
- useImperativeHandle(ref, () => menuItemRef.current);
213
- const handleNestedOpen = (event) => {
214
- if (disabled)
215
- return;
216
- setNestedAnchorEl(event.currentTarget);
217
- if (!menuItemRef.current)
218
- return;
219
- const siblings = getAllSiblings(menuItemRef.current);
220
- siblings.forEach((sibling) => {
221
- if (sibling instanceof HTMLElement)
222
- sibling.focus();
223
- if (sibling instanceof HTMLElement)
224
- sibling.blur();
225
- });
226
- };
227
- const handleNestedClose = useCallback(() => {
228
- var _a;
229
- if (safe)
230
- return;
231
- (_a = menuItemRef.current) === null || _a === void 0 ? void 0 : _a.focus();
232
- }, [safe]);
233
- const handleNestedFocus = (event) => {
234
- if (disabled)
235
- return;
236
- const el = event.currentTarget;
237
- setNestedAnchorEl(el);
238
- el.focus();
239
- };
240
- const handleNestedMouseLeave = useCallback((event) => {
241
- var _a;
242
- // If the event comes from the safe hit area "path"
243
- // element then ignore it.
244
- if (event.relatedTarget instanceof SVGPathElement &&
245
- ((_a = event.relatedTarget.parentElement) === null || _a === void 0 ? void 0 : _a.previousElementSibling) ===
246
- menuItemRef.current) {
247
- return;
248
- }
249
- const el = event.relatedTarget;
250
- if (el instanceof Element && el.closest(`.${levelClass}`)) {
251
- setSafe(undefined);
252
- return;
253
- }
254
- setSafe(undefined);
255
- setNestedAnchorEl(null);
256
- }, [levelClass]);
257
- const handleNestedBlur = (event) => {
258
- const el = event.relatedTarget;
259
- if (el === null || el === void 0 ? void 0 : el.closest(`.${levelClass}`)) {
260
- return;
261
- }
262
- setNestedAnchorEl(null);
263
- };
264
- const handleMenuItemKeyDown = (event) => {
265
- //Select the first item in the children menu
266
- var _a, _b;
267
- if (event.key === 'ArrowRight' || event.key === 'Tab') {
268
- event.preventDefault();
269
- event.stopPropagation();
270
- (_a = nestedMenuRef.current) === null || _a === void 0 ? void 0 : _a.focus();
271
- const firstNestedChildElement = (_b = document.activeElement) === null || _b === void 0 ? void 0 : _b.children[0];
272
- if (firstNestedChildElement)
273
- firstNestedChildElement.focus();
274
- }
275
- };
276
- const handleNestedMenuKeyDown = (event) => {
277
- if (event.key === 'ArrowLeft' || event.key === 'Escape') {
278
- event.preventDefault();
279
- event.stopPropagation();
280
- nestedAnchorEl === null || nestedAnchorEl === void 0 ? void 0 : nestedAnchorEl.focus();
281
- }
282
- };
283
- const nestedMenuProps = {
284
- className: `nested-menu ${levelClass}`,
285
- open: Boolean(nestedAnchorEl),
286
- anchorEl: nestedAnchorEl,
287
- onClose: handleNestedClose,
288
- onMouseLeave: handleNestedClose,
289
- onKeyDown: handleNestedMenuKeyDown,
290
- disableBackdrop: true,
291
- ref: nestedMenuRef,
292
- nested: true,
293
- level: level + 1,
294
- };
295
- const handleMouseMove = (event) => {
296
- var _a;
297
- if (!nestedMenuRef.current)
298
- return;
299
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
300
- const nested = nestedMenuRef.current.getElem();
301
- // Update SVG Coordinates
302
- if (event.nativeEvent instanceof MouseEvent &&
303
- nestedMenuRef.current &&
304
- menuItemRef.current) {
305
- setSafe({
306
- mouse: {
307
- x: event.nativeEvent.clientX,
308
- y: event.nativeEvent.clientY,
309
- },
310
- nestedRect: nested.getBoundingClientRect(),
311
- anchorRect: menuItemRef.current.getBoundingClientRect(),
312
- });
313
- }
314
- // We need to continue the focus
315
- (_a = nestedMenuRef.current) === null || _a === void 0 ? void 0 : _a.focus();
316
- };
317
- const deleteSafeArea = useCallback(debounce(() => {
318
- setSafe(undefined);
319
- }, 200), [setSafe]);
320
- return (_jsxs(_Fragment, { children: [_jsx(StandardMenuItem, Object.assign({}, props, { title: _jsxs("span", { className: "n-flex n-justify-between n-items-center", children: [_jsx("span", { children: title }), _jsx("span", { className: "n-text-palette-neutral-text-weak", children: _jsx(ChevronRightIconOutline, { className: "n-size-token-6" }) })] }), onMouseOver: handleNestedOpen, onMouseMove: handleMouseMove, onMouseLeave: handleNestedMouseLeave, onFocus: handleNestedFocus, onBlur: handleNestedBlur, onKeyDown: handleMenuItemKeyDown, className: classNames(className, {
321
- 'ndl-nested-open': !!nestedAnchorEl,
322
- }), ref: menuItemRef, disabled: disabled })), safeArea && safe && safe.mouse && (_jsx(SafeArea, { onMouseMove: () => {
323
- var _a;
324
- (_a = nestedMenuRef.current) === null || _a === void 0 ? void 0 : _a.focus();
325
- deleteSafeArea();
326
- }, area: safe, ref: svgRef })), children({ nestedMenuProps })] }));
212
+ const MenuHeader = forwardRef(function MenuHeader({ as, title, description, className, htmlAttributes, }, forwardedRef) {
213
+ const Component = as || 'div';
214
+ const menu = useContext(MenuContext);
215
+ const item = useListItem({ label: null });
216
+ const tree = useFloatingTree();
217
+ const ref = useMergeRefs([item.ref, forwardedRef]);
218
+ const classes = classNames('ndl-menu-header n-flex n-flex-col', className);
219
+ return (_jsxs(Component, { className: classes, children: [_jsxs("div", { className: "n-flex n-justify-between n-items-center", children: [_jsx("div", { className: "ndl-menu-header-title", children: title }), _jsx(IconButton, { ariaLabel: "Close", isClean: true, htmlAttributes: Object.assign(Object.assign(Object.assign({}, htmlAttributes), { tabIndex: 0 }), menu.getItemProps({
220
+ onClick(event) {
221
+ var _a;
222
+ (_a = htmlAttributes === null || htmlAttributes === void 0 ? void 0 : htmlAttributes.onClick) === null || _a === void 0 ? void 0 : _a.call(htmlAttributes, event);
223
+ tree === null || tree === void 0 ? void 0 : tree.events.emit('click');
224
+ },
225
+ onFocus(event) {
226
+ var _a;
227
+ (_a = htmlAttributes === null || htmlAttributes === void 0 ? void 0 : htmlAttributes.onFocus) === null || _a === void 0 ? void 0 : _a.call(htmlAttributes, event);
228
+ menu.setHasFocusInside(true);
229
+ },
230
+ })), ref: ref, children: _jsx(XMarkIconOutline, {}) })] }), description && (_jsx("div", { className: "ndl-menu-header-description", children: description }))] }));
327
231
  });
328
- // Issue with TypeScript forwardRef and subcomponents: https://github.com/DefinitelyTyped/DefinitelyTyped/issues/34757#issuecomment-894053907
329
- const Menu = Object.assign(MenuComponent, {
232
+ const Menu = Object.assign(MenuWrapper, {
233
+ Item: MenuItem,
234
+ Items: MenuItems,
330
235
  Divider: MenuDivider,
331
236
  Subheader: MenuSubheader,
332
237
  Header: MenuHeader,
333
- Item: MenuItem,
334
- Items: MenuItems,
335
238
  });
336
239
  export { Menu };
337
240
  //# sourceMappingURL=ContextMenu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ContextMenu.js","sourceRoot":"","sources":["../../../src/context-menu/ContextMenu.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ContextMenu.js","sourceRoot":"","sources":["../../../src/context-menu/ContextMenu.tsx"],"names":[],"mappings":"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"}