@neo4j-ndl/react 3.3.9 → 3.3.11
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/data-grid/Components.js +13 -9
- package/lib/cjs/data-grid/Components.js.map +1 -1
- package/lib/cjs/data-grid/DataGrid.js +10 -2
- package/lib/cjs/data-grid/DataGrid.js.map +1 -1
- package/lib/cjs/data-grid/DataGridContext.js.map +1 -1
- package/lib/cjs/skeleton/Skeleton.js +1 -1
- package/lib/cjs/skeleton/Skeleton.js.map +1 -1
- package/lib/cjs/text-input/TextInput.js +6 -2
- package/lib/cjs/text-input/TextInput.js.map +1 -1
- package/lib/cjs/tree-view/TreeItemWrapper.js +1 -1
- package/lib/cjs/tree-view/TreeItemWrapper.js.map +1 -1
- package/lib/cjs/tree-view/TreeViewTextItem.js +53 -52
- package/lib/cjs/tree-view/TreeViewTextItem.js.map +1 -1
- package/lib/cjs/tree-view/tree-view-utils.js +12 -24
- package/lib/cjs/tree-view/tree-view-utils.js.map +1 -1
- package/lib/esm/data-grid/Components.js +13 -9
- package/lib/esm/data-grid/Components.js.map +1 -1
- package/lib/esm/data-grid/DataGrid.js +10 -2
- package/lib/esm/data-grid/DataGrid.js.map +1 -1
- package/lib/esm/data-grid/DataGridContext.js.map +1 -1
- package/lib/esm/skeleton/Skeleton.js +1 -1
- package/lib/esm/skeleton/Skeleton.js.map +1 -1
- package/lib/esm/text-input/TextInput.js +6 -2
- package/lib/esm/text-input/TextInput.js.map +1 -1
- package/lib/esm/tree-view/TreeItemWrapper.js +1 -1
- package/lib/esm/tree-view/TreeItemWrapper.js.map +1 -1
- package/lib/esm/tree-view/TreeViewTextItem.js +53 -52
- package/lib/esm/tree-view/TreeViewTextItem.js.map +1 -1
- package/lib/esm/tree-view/tree-view-utils.js +12 -24
- package/lib/esm/tree-view/tree-view-utils.js.map +1 -1
- package/lib/types/data-grid/Components.d.ts +12 -2
- package/lib/types/data-grid/DataGrid.d.ts +4 -1
- package/lib/types/data-grid/DataGridContext.d.ts +3 -0
- package/lib/types/text-input/TextInput.d.ts +3 -0
- package/lib/types/tree-view/tree-view-types.d.ts +5 -0
- package/package.json +1 -1
|
@@ -38,6 +38,7 @@ import { Checkbox } from '../checkbox';
|
|
|
38
38
|
import { ChevronDownIconOutline, ChevronRightIconOutline } from '../icons';
|
|
39
39
|
import { Typography } from '../typography';
|
|
40
40
|
import { TreeItemWrapper } from './TreeItemWrapper';
|
|
41
|
+
import { Skeleton } from '../skeleton';
|
|
41
42
|
/**
|
|
42
43
|
* checks if any parent is checked
|
|
43
44
|
* @param item
|
|
@@ -87,63 +88,63 @@ export const TreeViewTextItem = React.forwardRef(function TreeViewTextItem(_a, r
|
|
|
87
88
|
* Tab index is set to -1 to prevent the item from being focused when the tree is navigated with tab
|
|
88
89
|
* since we use the arrow keys instead
|
|
89
90
|
*/
|
|
90
|
-
tabIndex: tabIndex, children: [item.isCollapsed && _jsx(ChevronRightIconOutline, { className: "ndl-icon" }), !item.isCollapsed && _jsx(ChevronDownIconOutline, { className: "ndl-icon" })] })), item.isSelected !== undefined && (_jsx(Checkbox, { ref: checkboxRef, isChecked: item.isSelected, ariaLabel: item.data.text, htmlAttributes: {
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
}
|
|
97
|
-
return i;
|
|
98
|
-
});
|
|
99
|
-
// Uncheck parents if a child is unchecked
|
|
100
|
-
if (!event.target.checked) {
|
|
101
|
-
let parentId = item.parentId;
|
|
102
|
-
while (parentId !== null) {
|
|
103
|
-
const parent = newItems.find((newItem) => newItem.id === parentId);
|
|
104
|
-
if (parent) {
|
|
105
|
-
newItems.forEach((newItem) => {
|
|
106
|
-
if (newItem.id === parent.id) {
|
|
107
|
-
newItem.isSelected = false;
|
|
108
|
-
}
|
|
109
|
-
});
|
|
110
|
-
parentId = parent.parentId;
|
|
91
|
+
tabIndex: tabIndex, children: [item.isCollapsed && _jsx(ChevronRightIconOutline, { className: "ndl-icon" }), !item.isCollapsed && _jsx(ChevronDownIconOutline, { className: "ndl-icon" })] })), item.isSelected !== undefined && (_jsx(Skeleton, Object.assign({ onBackground: "weak", variant: "rectangular" }, item.skeletonProps, { isLoading: item.isSkeletonLoading, children: _jsx(Checkbox, { ref: checkboxRef, isChecked: item.isSelected, ariaLabel: item.data.text, htmlAttributes: {
|
|
92
|
+
tabIndex,
|
|
93
|
+
}, onChange: (event) => {
|
|
94
|
+
const newItems = items.map((i) => {
|
|
95
|
+
if (i.id === item.id) {
|
|
96
|
+
return Object.assign(Object.assign({}, i), { isSelected: event.target.checked });
|
|
111
97
|
}
|
|
112
|
-
|
|
113
|
-
|
|
98
|
+
return i;
|
|
99
|
+
});
|
|
100
|
+
// Uncheck parents if a child is unchecked
|
|
101
|
+
if (!event.target.checked) {
|
|
102
|
+
let parentId = item.parentId;
|
|
103
|
+
while (parentId !== null) {
|
|
104
|
+
const parent = newItems.find((newItem) => newItem.id === parentId);
|
|
105
|
+
if (parent) {
|
|
106
|
+
newItems.forEach((newItem) => {
|
|
107
|
+
if (newItem.id === parent.id) {
|
|
108
|
+
newItem.isSelected = false;
|
|
109
|
+
}
|
|
110
|
+
});
|
|
111
|
+
parentId = parent.parentId;
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
parentId = null;
|
|
115
|
+
}
|
|
114
116
|
}
|
|
115
117
|
}
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
.
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
}
|
|
118
|
+
// Check children if a parent is checked
|
|
119
|
+
if (item.canHaveSubItems) {
|
|
120
|
+
const childIdsToUncheck = items
|
|
121
|
+
.filter((i) => i.parentId === item.id)
|
|
122
|
+
.map((i) => i.id);
|
|
123
|
+
while (childIdsToUncheck.length > 0) {
|
|
124
|
+
const childId = childIdsToUncheck.pop();
|
|
125
|
+
const child = items.find((i) => i.id === childId);
|
|
126
|
+
if (child) {
|
|
127
|
+
newItems.forEach((newItem) => {
|
|
128
|
+
if (newItem.id === child.id) {
|
|
129
|
+
newItem.isSelected = event.target.checked;
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
newItems
|
|
133
|
+
.filter((i) => i.parentId === child.id)
|
|
134
|
+
.forEach((i) => {
|
|
135
|
+
childIdsToUncheck.push(i.id);
|
|
136
|
+
});
|
|
137
|
+
}
|
|
136
138
|
}
|
|
137
139
|
}
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
},
|
|
146
|
-
}, children: item.data.text }) }), _jsx("div", { className: "ndl-tree-view-actions", children: item.data.actions &&
|
|
140
|
+
onItemsChanged(newItems, { item, reason: 'selected' });
|
|
141
|
+
}, "aria-label": item.data.text }) }))), _jsx(Skeleton, Object.assign({ onBackground: "weak", variant: "rectangular", height: "20px" }, item.skeletonProps, { isLoading: item.isSkeletonLoading, children: _jsx(ConditionalWrap, { shouldWrap: item.data.onTextClick !== undefined, wrapper: (children) => (_jsx("button", { onClick: item.data.onTextClick, className: "ndl-tree-view-text-clickable", tabIndex: tabIndex, children: children })), children: _jsx(Typography, { variant: item.canHaveSubItems ? 'subheading-small' : 'body-medium', htmlAttributes: {
|
|
142
|
+
style: {
|
|
143
|
+
overflow: 'hidden',
|
|
144
|
+
textOverflow: 'ellipsis',
|
|
145
|
+
whiteSpace: 'nowrap',
|
|
146
|
+
},
|
|
147
|
+
}, children: item.data.text }) }) })), _jsx("div", { className: "ndl-tree-view-actions", children: item.data.actions &&
|
|
147
148
|
item.data.actions.map((action, index) => {
|
|
148
149
|
return (_createElement(IconButton, Object.assign({}, action.buttonProps, { key: index, className: "ndl-tree-view-action", isClean: true, size: "small", htmlAttributes: Object.assign({ tabIndex }, action.buttonProps.htmlAttributes) }), action.icon));
|
|
149
150
|
}) })] })));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TreeViewTextItem.js","sourceRoot":"","sources":["../../../src/tree-view/TreeViewTextItem.tsx"],"names":[],"mappings":";;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"TreeViewTextItem.js","sourceRoot":"","sources":["../../../src/tree-view/TreeViewTextItem.tsx"],"names":[],"mappings":"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"}
|
|
@@ -31,7 +31,10 @@ import { arrayMove } from '@dnd-kit/sortable';
|
|
|
31
31
|
export const flattenTree = (tree, depth = 0, parentId = null) => {
|
|
32
32
|
const flattened = [];
|
|
33
33
|
tree.forEach((item) => {
|
|
34
|
-
|
|
34
|
+
var _a;
|
|
35
|
+
flattened.push(Object.assign(Object.assign({}, item), { depth: depth, parentId: parentId,
|
|
36
|
+
// Default values can go here for items
|
|
37
|
+
isSkeletonLoading: (_a = item.isSkeletonLoading) !== null && _a !== void 0 ? _a : false }));
|
|
35
38
|
if (item.canHaveSubItems) {
|
|
36
39
|
flattenTree(item.subItems, depth + 1, item.id).forEach((subItem) => flattened.push(Object.assign({}, subItem)));
|
|
37
40
|
}
|
|
@@ -63,30 +66,15 @@ export function removeChildrenOf(items, ids) {
|
|
|
63
66
|
*/
|
|
64
67
|
export function buildTree(items) {
|
|
65
68
|
const tree = [];
|
|
66
|
-
|
|
67
|
-
items.
|
|
69
|
+
// Map array to object
|
|
70
|
+
const itemMap = items.reduce((newItemMap, item) => {
|
|
68
71
|
const { id } = item;
|
|
69
|
-
if
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
data: item.data,
|
|
76
|
-
isSelected: item.isSelected,
|
|
77
|
-
isSortable: item.isSortable,
|
|
78
|
-
};
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
itemMap[id] = {
|
|
82
|
-
id: id,
|
|
83
|
-
canHaveSubItems: false,
|
|
84
|
-
data: item.data,
|
|
85
|
-
isSortable: item.isSortable,
|
|
86
|
-
isSelected: item.isSelected,
|
|
87
|
-
};
|
|
88
|
-
}
|
|
89
|
-
});
|
|
72
|
+
// Add sub items array if it's allowed to have sub items.
|
|
73
|
+
const newItem = Object.assign(Object.assign({}, item), (item.canHaveSubItems && {
|
|
74
|
+
subItems: [],
|
|
75
|
+
}));
|
|
76
|
+
return Object.assign(Object.assign({}, newItemMap), { [id]: newItem });
|
|
77
|
+
}, {});
|
|
90
78
|
// Build the tree structure by assigning children to their parent items
|
|
91
79
|
items.forEach((item) => {
|
|
92
80
|
const { id, parentId } = item;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree-view-utils.js","sourceRoot":"","sources":["../../../src/tree-view/tree-view-utils.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAU9C;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,IAAmB,EACnB,KAAK,GAAG,CAAC,EACT,WAAoC,IAAI,EAChB,EAAE;IAC1B,MAAM,SAAS,GAA2B,EAAE,CAAC;IAE7C,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE
|
|
1
|
+
{"version":3,"file":"tree-view-utils.js","sourceRoot":"","sources":["../../../src/tree-view/tree-view-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -87,7 +87,14 @@ export interface TableResultProps extends CommonInnerProps<HTMLSpanElement> {
|
|
|
87
87
|
};
|
|
88
88
|
}
|
|
89
89
|
declare const TableResults: ({ children, innerProps, manualPagination, }: TableResultProps) => import("react/jsx-runtime").JSX.Element;
|
|
90
|
-
|
|
90
|
+
export interface RowsPerPageProps extends CommonInnerProps<HTMLDivElement> {
|
|
91
|
+
/**
|
|
92
|
+
* The target element to portal the menu of the select component to.
|
|
93
|
+
* Should be document.body normally, or the modal root if the select is inside a modal.
|
|
94
|
+
*/
|
|
95
|
+
menuPortalTarget?: HTMLElement | null;
|
|
96
|
+
}
|
|
97
|
+
declare const RowsPerPage: ({ children, innerProps, menuPortalTarget, }: RowsPerPageProps) => import("react/jsx-runtime").JSX.Element;
|
|
91
98
|
export interface PaginationArrowButtonProps extends CommonInnerProps<HTMLButtonElement> {
|
|
92
99
|
action: 'previous' | 'next';
|
|
93
100
|
}
|
|
@@ -115,7 +122,10 @@ export interface DropDownCellProps<T extends RowData> {
|
|
|
115
122
|
value: string;
|
|
116
123
|
label: string;
|
|
117
124
|
}[];
|
|
118
|
-
/**
|
|
125
|
+
/**
|
|
126
|
+
* The target element to portal the menu of the select component to, e.g. the modal root if the data grid is inside a modal.
|
|
127
|
+
* @defaultValue document.body
|
|
128
|
+
*/
|
|
119
129
|
portalTarget?: HTMLElement | null;
|
|
120
130
|
ariaLabel?: string;
|
|
121
131
|
}
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
20
20
|
*/
|
|
21
21
|
|
|
22
|
+
import { type SkeletonProps } from '../skeleton';
|
|
22
23
|
import { type Table as DataGridType, type RowData } from '@tanstack/react-table';
|
|
23
24
|
import { type DataGridComponentsInterface } from './DataGridContext';
|
|
24
25
|
import { type HtmlAttributes } from '../_common/types';
|
|
@@ -37,7 +38,7 @@ export declare const DataGridComponents: {
|
|
|
37
38
|
ColumnControls: <T extends RowData>({ cell, children, innerProps, }: import("./Components").ColumnControlsProps<T>) => import("react/jsx-runtime").JSX.Element | null;
|
|
38
39
|
Navigation: ({ children, innerProps, }: import("./Components").CommonInnerProps<HTMLDivElement>) => import("react/jsx-runtime").JSX.Element;
|
|
39
40
|
TableResults: ({ children, innerProps, manualPagination, }: import("./Components").TableResultProps) => import("react/jsx-runtime").JSX.Element;
|
|
40
|
-
RowsPerPage: ({ children, innerProps, }: import("./Components").
|
|
41
|
+
RowsPerPage: ({ children, innerProps, menuPortalTarget, }: import("./Components").RowsPerPageProps) => import("react/jsx-runtime").JSX.Element;
|
|
41
42
|
Pagination: ({ children, innerProps, }: import("./Components").CommonInnerProps<HTMLDivElement>) => import("react/jsx-runtime").JSX.Element;
|
|
42
43
|
PaginationNumericButtons: () => import("react/jsx-runtime").JSX.Element;
|
|
43
44
|
PaginationNumericButton: ({ currentIndex, isSelected, children, innerProps, }: import("./Components").PaginationNumericButtonProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -102,6 +103,8 @@ export type DataGridProps<T extends RowData> = {
|
|
|
102
103
|
components?: DataGridComponentsInterface<T>;
|
|
103
104
|
/** Root `div` props */
|
|
104
105
|
rootProps?: HtmlAttributes<'div'>;
|
|
106
|
+
isSkeletonLoading?: boolean;
|
|
107
|
+
skeletonProps?: SkeletonProps;
|
|
105
108
|
};
|
|
106
109
|
export declare const DataGrid: <T extends RowData>(props: DataGridProps<T> & import("react").RefAttributes<HTMLDivElement>) => import("react").ReactElement | null;
|
|
107
110
|
export {};
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
import { type Table as DataGridType, type RowData } from '@tanstack/react-table';
|
|
22
22
|
import { type ActionButton, type Body, type BodyCell, type BodyRow, type ColumnControls, type Header, type HeaderCell, type HeaderTitle, type LoadingPlaceholder, type Navigation, type NoDataPlaceholder, type Pagination, type PaginationArrowButton, type PaginationNumericButton, type PaginationNumericButtons, type ResizingBar, type RowActionCell, type RowsPerPage, type Scrollable, type TableResults } from './Components';
|
|
23
23
|
import { DataGridNav } from './data-grid-nav/data-grid-nav';
|
|
24
|
+
import { type SkeletonProps } from '../skeleton';
|
|
24
25
|
type Nullable<T> = T | null;
|
|
25
26
|
export interface DataGridComponentsInterface<T extends RowData> {
|
|
26
27
|
ResizingBar?: Nullable<typeof ResizingBar<T>>;
|
|
@@ -60,6 +61,8 @@ export interface DataGridContextType<T extends RowData> {
|
|
|
60
61
|
isLoading: boolean;
|
|
61
62
|
hasResizeColumns: boolean;
|
|
62
63
|
isKeyboardNavigationEnabled: boolean;
|
|
64
|
+
isSkeletonLoading: boolean;
|
|
65
|
+
skeletonProps: SkeletonProps;
|
|
63
66
|
dataGridNav: DataGridNav;
|
|
64
67
|
}
|
|
65
68
|
export declare const DataGridContext: import("react").Context<DataGridContextType<any>>;
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
import { type ReactElement, type ReactNode } from 'react';
|
|
22
22
|
import { type TooltipObjectProps } from '../_common/input/types';
|
|
23
23
|
import { type HtmlAttributes } from '../_common/types';
|
|
24
|
+
import { type SkeletonProps } from '../skeleton';
|
|
24
25
|
export interface TextInputProps {
|
|
25
26
|
helpText?: string | ReactNode;
|
|
26
27
|
/** Error message */
|
|
@@ -52,6 +53,8 @@ export interface TextInputProps {
|
|
|
52
53
|
/** Pass props to the underlying Tip component */
|
|
53
54
|
tooltipProps?: TooltipObjectProps;
|
|
54
55
|
htmlAttributes?: HtmlAttributes<'input'>;
|
|
56
|
+
isSkeletonLoading?: boolean;
|
|
57
|
+
skeletonProps?: SkeletonProps;
|
|
55
58
|
}
|
|
56
59
|
/**
|
|
57
60
|
*
|
|
@@ -21,12 +21,15 @@
|
|
|
21
21
|
import { type UniqueIdentifier } from '@dnd-kit/core';
|
|
22
22
|
import { type RefAttributes } from 'react';
|
|
23
23
|
import { type IconButton } from '../button';
|
|
24
|
+
import { type SkeletonProps } from '../skeleton';
|
|
24
25
|
export type TreeItem<T> = {
|
|
25
26
|
id: UniqueIdentifier;
|
|
26
27
|
canHaveSubItems: false;
|
|
27
28
|
isSortable?: boolean;
|
|
28
29
|
data: T;
|
|
29
30
|
isSelected?: boolean;
|
|
31
|
+
isSkeletonLoading?: boolean;
|
|
32
|
+
skeletonProps?: SkeletonProps;
|
|
30
33
|
} | {
|
|
31
34
|
id: UniqueIdentifier;
|
|
32
35
|
canHaveSubItems: true;
|
|
@@ -35,6 +38,8 @@ export type TreeItem<T> = {
|
|
|
35
38
|
isSortable?: boolean;
|
|
36
39
|
data: T;
|
|
37
40
|
isSelected?: boolean;
|
|
41
|
+
isSkeletonLoading?: boolean;
|
|
42
|
+
skeletonProps?: SkeletonProps;
|
|
38
43
|
};
|
|
39
44
|
export type TextItemData = {
|
|
40
45
|
text: string;
|