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