synapse-react-client 2.1.22 → 2.1.23
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/dist/containers/ToastMessage.d.ts +1 -1
- package/dist/containers/entity/annotations/AdditionalPropertiesSchemaField.d.ts +1 -1
- package/dist/containers/entity_finder/EntityFinder.d.ts +1 -1
- package/dist/containers/entity_finder/EntityFinder.js +4 -4
- package/dist/containers/entity_finder/EntityFinder.js.map +1 -1
- package/dist/containers/entity_finder/tree/{TreeView.d.ts → EntityTree.d.ts} +4 -4
- package/dist/containers/entity_finder/tree/{TreeView.js → EntityTree.js} +43 -30
- package/dist/containers/entity_finder/tree/EntityTree.js.map +1 -0
- package/dist/containers/entity_finder/tree/VirtualizedTree.d.ts +89 -0
- package/dist/containers/entity_finder/tree/VirtualizedTree.js +379 -0
- package/dist/containers/entity_finder/tree/VirtualizedTree.js.map +1 -0
- package/dist/containers/table/datasets/DatasetItemsEditor.js +3 -4
- package/dist/containers/table/datasets/DatasetItemsEditor.js.map +1 -1
- package/dist/index.d.ts +1 -3
- package/dist/index.js +0 -2
- package/dist/index.js.map +1 -1
- package/dist/style/components/entity_finder/_tree-node-browse.scss +5 -10
- package/dist/style/components/entity_finder/_tree-node-select.scss +17 -23
- package/dist/style/components/entity_finder/_tree-view.scss +17 -20
- package/dist/style/main.css +23 -25
- package/dist/umd/synapse-react-client.development.css +23 -25
- package/dist/umd/synapse-react-client.development.css.map +2 -2
- package/dist/umd/synapse-react-client.development.js +7627 -1146
- package/dist/umd/synapse-react-client.development.js.map +3 -3
- package/dist/umd/synapse-react-client.production.min.css +1 -1
- package/dist/umd/synapse-react-client.production.min.js +106 -79
- package/dist/umd.index.d.ts +1 -1
- package/dist/utils/functions/facetUtils.d.ts +1 -25
- package/dist/utils/functions/facetUtils.js +4 -51
- package/dist/utils/functions/facetUtils.js.map +1 -1
- package/dist/utils/types/Writable.d.ts +8 -0
- package/dist/utils/types/Writable.js +3 -0
- package/dist/utils/types/Writable.js.map +1 -0
- package/dist/utils/typography/Typography.styles.d.ts +1 -1
- package/package.json +6 -1
- package/dist/containers/Facets.d.ts +0 -43
- package/dist/containers/Facets.js +0 -199
- package/dist/containers/Facets.js.map +0 -1
- package/dist/containers/entity_finder/tree/TreeNode.d.ts +0 -25
- package/dist/containers/entity_finder/tree/TreeNode.js +0 -89
- package/dist/containers/entity_finder/tree/TreeNode.js.map +0 -1
- package/dist/containers/entity_finder/tree/TreeView.js.map +0 -1
|
@@ -38,5 +38,5 @@ declare type ToastMessageOptions = {
|
|
|
38
38
|
*
|
|
39
39
|
* The rest of the options params are undefined by default.
|
|
40
40
|
*/
|
|
41
|
-
export declare const displayToast: (message: string, variant?: "success" | "
|
|
41
|
+
export declare const displayToast: (message: string, variant?: "success" | "danger" | "warning" | "info" | undefined, toastMessageOptions?: ToastMessageOptions) => void;
|
|
42
42
|
export {};
|
|
@@ -13,7 +13,7 @@ export declare enum AdditionalPropertyWidget {
|
|
|
13
13
|
CheckboxWidget = "CheckboxWidget"
|
|
14
14
|
}
|
|
15
15
|
export declare function guessPropertyType(list: Array<any>): PropertyType;
|
|
16
|
-
export declare function transformDataFromPropertyType(list: Array<any>, propertyType: PropertyType): (string |
|
|
16
|
+
export declare function transformDataFromPropertyType(list: Array<any>, propertyType: PropertyType): boolean[] | (string | undefined)[] | (string | number)[] | (number | undefined)[];
|
|
17
17
|
export declare function getWidgetFromPropertyType(propertyType: PropertyType): AdditionalPropertyWidget;
|
|
18
18
|
/**
|
|
19
19
|
* react-jsonschema-form SchemaField override for "additionalProperties" only.
|
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import 'react-reflex/styles.css';
|
|
3
3
|
import { Reference } from '../../utils/synapseTypes';
|
|
4
4
|
import { EntityType } from '../../utils/synapseTypes/EntityType';
|
|
5
|
-
import { FinderScope } from './tree/
|
|
5
|
+
import { FinderScope } from './tree/EntityTree';
|
|
6
6
|
export declare const NO_VERSION_NUMBER = -1;
|
|
7
7
|
export declare type EntityFinderProps = {
|
|
8
8
|
/** Whether or not it is possible to select multiple entities */
|
|
@@ -21,8 +21,8 @@ var ErrorBanner_1 = require("../ErrorBanner");
|
|
|
21
21
|
var Breadcrumbs_1 = require("./Breadcrumbs");
|
|
22
22
|
var EntityDetailsList_1 = require("./details/EntityDetailsList");
|
|
23
23
|
var SelectionPane_1 = require("./SelectionPane");
|
|
24
|
-
var
|
|
25
|
-
var
|
|
24
|
+
var VirtualizedTree_1 = require("./tree/VirtualizedTree");
|
|
25
|
+
var EntityTree_1 = require("./tree/EntityTree");
|
|
26
26
|
var pluralize_1 = (0, tslib_1.__importDefault)(require("pluralize"));
|
|
27
27
|
var EntityTypeUtils_1 = require("../../utils/functions/EntityTypeUtils");
|
|
28
28
|
fontawesome_svg_core_1.library.add(free_solid_svg_icons_1.faTimes, free_solid_svg_icons_1.faSearch);
|
|
@@ -200,12 +200,12 @@ var EntityFinder = function (_a) {
|
|
|
200
200
|
},
|
|
201
201
|
}, showVersionSelection: showVersionSelection, mustSelectVersionNumber: mustSelectVersionNumber, selectColumnType: selectMultiple ? 'checkbox' : 'none', selected: selectedEntities, visibleTypes: selectableTypes, selectableTypes: selectableTypes, toggleSelection: toggleSelection, enableSelectAll: selectMultiple, latestVersionText: latestVersionText })),
|
|
202
202
|
react_1.default.createElement("div", { style: searchActive ? { display: 'none' } : {} }, treeOnly ? (react_1.default.createElement("div", null,
|
|
203
|
-
react_1.default.createElement(
|
|
203
|
+
react_1.default.createElement(EntityTree_1.EntityTree, { toggleSelection: toggleSelection, showDropdown: true, visibleTypes: selectableAndVisibleTypesInTree, initialScope: initialScope, selectedEntities: selectedEntities, projectId: projectId, initialContainer: initialContainer, showScopeAsRootNode: false, treeNodeType: VirtualizedTree_1.EntityTreeNodeType.SINGLE_PANE, selectableTypes: selectableTypes }))) : (react_1.default.createElement("div", { className: "EntityFinderReflexContainer" },
|
|
204
204
|
react_1.default.createElement(react_sizeme_1.SizeMe, null, function (_a) {
|
|
205
205
|
var size = _a.size;
|
|
206
206
|
return (react_1.default.createElement(react_reflex_1.ReflexContainer, { key: (!!size.width).toString(), orientation: "vertical", windowResizeAware: true },
|
|
207
207
|
react_1.default.createElement(react_reflex_1.ReflexElement, { className: "TreeViewReflexElement", flex: 0.24 },
|
|
208
|
-
react_1.default.createElement(
|
|
208
|
+
react_1.default.createElement(EntityTree_1.EntityTree, { selectedEntities: selectedEntities, setDetailsViewConfiguration: setConfigFromTreeView, showDropdown: true, visibleTypes: visibleTypesInTree, initialScope: initialScope, projectId: projectId, initialContainer: initialContainer, treeNodeType: VirtualizedTree_1.EntityTreeNodeType.DUAL_PANE, setBreadcrumbItems: setBreadcrumbs, selectableTypes: visibleTypesInTree })),
|
|
209
209
|
react_1.default.createElement(react_reflex_1.ReflexSplitter, null),
|
|
210
210
|
react_1.default.createElement(react_reflex_1.ReflexElement, { className: "DetailsViewReflexElement" },
|
|
211
211
|
react_1.default.createElement(EntityDetailsList_1.EntityDetailsList, { configuration: configFromTreeView, mustSelectVersionNumber: mustSelectVersionNumber, showVersionSelection: showVersionSelection, selected: selectedEntities, visibleTypes: selectableAndVisibleTypesInList, selectableTypes: selectableTypes, selectColumnType: selectMultiple ? 'checkbox' : 'none', toggleSelection: toggleSelection, enableSelectAll: selectMultiple, latestVersionText: latestVersionText }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityFinder.js","sourceRoot":"","sources":["../../../src/lib/containers/entity_finder/EntityFinder.tsx"],"names":[],"mappings":";;;;AAAA,0EAA2D;AAC3D,0EAAqE;AACrE,oEAAgE;AAChE,uCAA+B;AAC/B,0DAOc;AACd,mDAAwC;AACxC,6DAAsD;AACtD,6CAA6E;AAC7E,mCAAgC;AAChC,6CAAqC;AACrC,gFAA4C;AAC5C,qCAA2C;AAC3C,+EAAkF;AAClF,6DAA8D;AAE9D,kEAAgE;AAEhE,8CAAqD;AACrD,6CAA6E;AAC7E,iEAIoC;AACpC,iDAA+C;AAC/C,
|
|
1
|
+
{"version":3,"file":"EntityFinder.js","sourceRoot":"","sources":["../../../src/lib/containers/entity_finder/EntityFinder.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
+
import { Map } from 'immutable';
|
|
1
2
|
import React from 'react';
|
|
2
3
|
import { EntityType, Reference } from '../../../utils/synapseTypes';
|
|
3
4
|
import { BreadcrumbItem } from '../Breadcrumbs';
|
|
4
5
|
import { EntityDetailsListDataConfiguration } from '../details/EntityDetailsList';
|
|
5
|
-
import { EntityTreeNodeType } from './
|
|
6
|
-
import { Map } from 'immutable';
|
|
6
|
+
import { EntityTreeNodeType } from './VirtualizedTree';
|
|
7
7
|
export declare enum FinderScope {
|
|
8
8
|
CURRENT_PROJECT = "Current Project",
|
|
9
9
|
ALL_PROJECTS = "All Projects",
|
|
10
10
|
CREATED_BY_ME = "Projects Created By Me",
|
|
11
11
|
FAVORITES = "My Favorites"
|
|
12
12
|
}
|
|
13
|
-
export declare type
|
|
13
|
+
export declare type EntityTreeProps = {
|
|
14
14
|
initialScope?: FinderScope;
|
|
15
15
|
/** To show the current project, projectId must be defined */
|
|
16
16
|
projectId?: string;
|
|
@@ -32,4 +32,4 @@ export declare type TreeViewProps = {
|
|
|
32
32
|
*
|
|
33
33
|
* The tree view currently can only be used to drive a DetailsView using the `setDetailsViewConfiguration` property.
|
|
34
34
|
*/
|
|
35
|
-
export declare const
|
|
35
|
+
export declare const EntityTree: React.FunctionComponent<EntityTreeProps>;
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.EntityTree = exports.FinderScope = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
5
|
var react_1 = (0, tslib_1.__importStar)(require("react"));
|
|
6
6
|
var react_bootstrap_1 = require("react-bootstrap");
|
|
7
7
|
var react_error_boundary_1 = require("react-error-boundary");
|
|
8
|
-
var react_intersection_observer_1 = require("react-intersection-observer");
|
|
9
8
|
var utils_1 = require("../../../utils");
|
|
10
9
|
var EntityTypeUtils_1 = require("../../../utils/functions/EntityTypeUtils");
|
|
11
10
|
var RegularExpressions_1 = require("../../../utils/functions/RegularExpressions");
|
|
@@ -15,7 +14,8 @@ var SynapseContext_1 = require("../../../utils/SynapseContext");
|
|
|
15
14
|
var synapseTypes_1 = require("../../../utils/synapseTypes");
|
|
16
15
|
var LoadingScreen_1 = require("../../LoadingScreen");
|
|
17
16
|
var EntityDetailsList_1 = require("../details/EntityDetailsList");
|
|
18
|
-
var
|
|
17
|
+
var VirtualizedTree_1 = require("./VirtualizedTree");
|
|
18
|
+
var VirtualizedTree_2 = require("./VirtualizedTree");
|
|
19
19
|
var isEntityIdInPath = function (entityId, path) {
|
|
20
20
|
for (var _i = 0, _a = path.path; _i < _a.length; _i++) {
|
|
21
21
|
var eh = _a[_i];
|
|
@@ -47,7 +47,7 @@ function getScopeOptionNodeName(scope) {
|
|
|
47
47
|
*
|
|
48
48
|
* The tree view currently can only be used to drive a DetailsView using the `setDetailsViewConfiguration` property.
|
|
49
49
|
*/
|
|
50
|
-
var
|
|
50
|
+
var EntityTree = function (_a) {
|
|
51
51
|
var _b = _a.initialScope, initialScope = _b === void 0 ? FinderScope.CURRENT_PROJECT : _b, projectId = _a.projectId, _c = _a.initialContainer, initialContainer = _c === void 0 ? null : _c, _d = _a.visibleTypes, visibleTypes = _d === void 0 ? [synapseTypes_1.EntityType.PROJECT, synapseTypes_1.EntityType.FOLDER] : _d, toggleSelection = _a.toggleSelection, selectedEntities = _a.selectedEntities, setDetailsViewConfiguration = _a.setDetailsViewConfiguration, setBreadcrumbItems = _a.setBreadcrumbItems, _e = _a.showScopeAsRootNode, showScopeAsRootNode = _e === void 0 ? true : _e, treeNodeType = _a.treeNodeType, selectableTypes = _a.selectableTypes;
|
|
52
52
|
var DEFAULT_CONFIGURATION = {
|
|
53
53
|
type: EntityDetailsList_1.EntityDetailsListDataConfigurationType.PROMPT,
|
|
@@ -57,9 +57,7 @@ var TreeView = function (_a) {
|
|
|
57
57
|
var _g = (0, react_1.useState)([]), topLevelEntities = _g[0], setTopLevelEntities = _g[1];
|
|
58
58
|
var _h = (0, react_1.useState)(initialScope), scope = _h[0], setScope = _h[1];
|
|
59
59
|
var _j = (0, react_1.useState)(), initialContainerPath = _j[0], setInitialContainerPath = _j[1];
|
|
60
|
-
var _k = (0, react_1.useState)(
|
|
61
|
-
? initialContainer
|
|
62
|
-
: initialContainer), currentContainer = _k[0], setCurrentContainer = _k[1];
|
|
60
|
+
var _k = (0, react_1.useState)(initialContainer), currentContainer = _k[0], setCurrentContainer = _k[1];
|
|
63
61
|
var handleError = (0, react_error_boundary_1.useErrorHandler)();
|
|
64
62
|
(0, react_1.useEffect)(function () {
|
|
65
63
|
if (setDetailsViewConfiguration) {
|
|
@@ -79,11 +77,12 @@ var TreeView = function (_a) {
|
|
|
79
77
|
? { filter: 'CREATED', sort: 'PROJECT_NAME', sortDirection: 'ASC' }
|
|
80
78
|
: { sort: 'PROJECT_NAME', sortDirection: 'ASC' }, {
|
|
81
79
|
enabled: useProjectData,
|
|
80
|
+
// Don't refetch the projects. Updating the entity headers will drop all of the children that VirtualizedTree has fetched
|
|
81
|
+
refetchInterval: Infinity,
|
|
82
82
|
}), projectData = _l.data, isSuccessProjects = _l.isSuccess, fetchNextPageProjects = _l.fetchNextPage, hasNextPageProjects = _l.hasNextPage, isLoadingProjects = _l.isLoading;
|
|
83
83
|
var _m = (0, useEntityBundle_1.default)(currentContainer, undefined, undefined, {
|
|
84
84
|
enabled: !!currentContainer && currentContainer !== 'root',
|
|
85
85
|
}), currentContainerBundle = _m.data, isSuccessBundle = _m.isSuccess;
|
|
86
|
-
var _o = (0, react_intersection_observer_1.useInView)({ rootMargin: '500px' }), ref = _o.ref, inView = _o.inView;
|
|
87
86
|
(0, react_1.useEffect)(function () {
|
|
88
87
|
if (useProjectData && isSuccessProjects) {
|
|
89
88
|
if (projectData === null || projectData === void 0 ? void 0 : projectData.pages) {
|
|
@@ -91,18 +90,6 @@ var TreeView = function (_a) {
|
|
|
91
90
|
}
|
|
92
91
|
}
|
|
93
92
|
}, [useProjectData, isSuccessProjects, projectData]);
|
|
94
|
-
(0, react_1.useEffect)(function () {
|
|
95
|
-
if (useProjectData && inView && hasNextPageProjects && !isLoadingProjects) {
|
|
96
|
-
fetchNextPageProjects();
|
|
97
|
-
}
|
|
98
|
-
}, [
|
|
99
|
-
useProjectData,
|
|
100
|
-
inView,
|
|
101
|
-
hasNextPageProjects,
|
|
102
|
-
fetchNextPageProjects,
|
|
103
|
-
scope,
|
|
104
|
-
isLoadingProjects,
|
|
105
|
-
]);
|
|
106
93
|
// Populates the first level of entities in the tree view
|
|
107
94
|
(0, react_1.useEffect)(function () {
|
|
108
95
|
setIsLoading(true);
|
|
@@ -254,16 +241,43 @@ var TreeView = function (_a) {
|
|
|
254
241
|
currentContainerBundle,
|
|
255
242
|
isSuccessBundle,
|
|
256
243
|
]);
|
|
257
|
-
var rootNodeConfiguration = {
|
|
244
|
+
var rootNodeConfiguration = (0, react_1.useMemo)(function () { return ({
|
|
245
|
+
show: showScopeAsRootNode,
|
|
258
246
|
nodeText: getScopeOptionNodeName(scope),
|
|
259
247
|
children: topLevelEntities,
|
|
260
|
-
|
|
248
|
+
fetchNextPage: function () { return (0, tslib_1.__awaiter)(void 0, void 0, void 0, function () {
|
|
249
|
+
return (0, tslib_1.__generator)(this, function (_a) {
|
|
250
|
+
switch (_a.label) {
|
|
251
|
+
case 0: return [4 /*yield*/, fetchNextPageProjects()];
|
|
252
|
+
case 1:
|
|
253
|
+
_a.sent();
|
|
254
|
+
return [2 /*return*/];
|
|
255
|
+
}
|
|
256
|
+
});
|
|
257
|
+
}); },
|
|
258
|
+
hasNextPage: useProjectData && hasNextPageProjects && !isLoadingProjects,
|
|
259
|
+
}); }, [
|
|
260
|
+
showScopeAsRootNode,
|
|
261
|
+
scope,
|
|
262
|
+
topLevelEntities,
|
|
263
|
+
useProjectData,
|
|
264
|
+
hasNextPageProjects,
|
|
265
|
+
isLoadingProjects,
|
|
266
|
+
fetchNextPageProjects,
|
|
267
|
+
]);
|
|
261
268
|
var shouldAutoExpand = (0, react_1.useCallback)(function (entityId) {
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
269
|
+
if (entityId === 'root') {
|
|
270
|
+
return true;
|
|
271
|
+
}
|
|
272
|
+
else {
|
|
273
|
+
return !!(scope === FinderScope.CURRENT_PROJECT &&
|
|
274
|
+
initialContainerPath &&
|
|
275
|
+
isEntityIdInPath(entityId, initialContainerPath));
|
|
276
|
+
}
|
|
265
277
|
}, [scope, initialContainerPath]);
|
|
266
|
-
return (react_1.default.createElement("div", { className: "TreeView " + (treeNodeType ===
|
|
278
|
+
return (react_1.default.createElement("div", { className: "TreeView " + (treeNodeType === VirtualizedTree_1.EntityTreeNodeType.SINGLE_PANE
|
|
279
|
+
? 'SelectTree'
|
|
280
|
+
: 'BrowseTree') },
|
|
267
281
|
react_1.default.createElement("div", { className: "Header" },
|
|
268
282
|
react_1.default.createElement("div", { className: "Browse" }, "Browse:"),
|
|
269
283
|
react_1.default.createElement("div", { onClick: function (e) { return e.stopPropagation(); } },
|
|
@@ -284,8 +298,7 @@ var TreeView = function (_a) {
|
|
|
284
298
|
}))))),
|
|
285
299
|
isLoading ? (react_1.default.createElement("div", { className: "Placeholder" },
|
|
286
300
|
react_1.default.createElement(LoadingScreen_1.SynapseSpinner, { size: 30 }))) : (react_1.default.createElement("div", { className: "Tree", role: "tree" },
|
|
287
|
-
|
|
288
|
-
react_1.default.createElement("div", { ref: ref, style: { height: '5px', width: '100%' } })))));
|
|
301
|
+
react_1.default.createElement(VirtualizedTree_2.VirtualizedTree, { selected: selectedEntities, visibleTypes: visibleTypes, autoExpand: shouldAutoExpand, rootNodeConfiguration: rootNodeConfiguration, treeNodeType: treeNodeType, selectableTypes: selectableTypes, currentContainer: currentContainer, setSelectedId: setSelectedId })))));
|
|
289
302
|
};
|
|
290
|
-
exports.
|
|
291
|
-
//# sourceMappingURL=
|
|
303
|
+
exports.EntityTree = EntityTree;
|
|
304
|
+
//# sourceMappingURL=EntityTree.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EntityTree.js","sourceRoot":"","sources":["../../../../src/lib/containers/entity_finder/tree/EntityTree.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { Map } from 'immutable';
|
|
3
|
+
import { TreeWalker, TreeWalkerValue, VariableSizeNodeData, VariableSizeNodePublicState } from 'react-vtree';
|
|
4
|
+
import { NodeComponentProps } from 'react-vtree/dist/es/Tree';
|
|
5
|
+
import { EntityHeader, EntityType, ProjectHeader } from '../../../utils/synapseTypes';
|
|
6
|
+
import { Writable } from '../../../utils/types/Writable';
|
|
7
|
+
export declare enum EntityTreeNodeType {
|
|
8
|
+
/** The tree component's appearance and interactions will facilitate selection. Nodes will be larger and styles will indicate primary selection */
|
|
9
|
+
SINGLE_PANE = 0,
|
|
10
|
+
/** The tree component's appearance and interactions will facilitate browsing. Nodes will be smaller and styles will indicate secondary selection */
|
|
11
|
+
DUAL_PANE = 1
|
|
12
|
+
}
|
|
13
|
+
declare type EntityFinderHeader = Pick<EntityHeader, 'id' | 'name' | 'type'> | ProjectHeader;
|
|
14
|
+
declare type NodeChildren = Readonly<{
|
|
15
|
+
/** The node's children. If undefined, then children have not been fetched. */
|
|
16
|
+
children?: EntityHeaderNode[];
|
|
17
|
+
/** The token used to fetch the next page of children for this entity. If this property is nullish and children is defined, then all children have been fetched. */
|
|
18
|
+
childrenNextPageToken?: string | null;
|
|
19
|
+
}>;
|
|
20
|
+
declare type EntityHeaderNode = EntityFinderHeader & NodeChildren;
|
|
21
|
+
declare type PaginationNode = {
|
|
22
|
+
__paginationNode: true;
|
|
23
|
+
};
|
|
24
|
+
declare type TreeNode = EntityHeaderNode | RootNodeConfiguration | PaginationNode;
|
|
25
|
+
export declare type TreeData = VariableSizeNodeData & Readonly<{
|
|
26
|
+
node: TreeNode;
|
|
27
|
+
getNextPageOfChildren: () => Promise<void>;
|
|
28
|
+
isLeaf: boolean;
|
|
29
|
+
nestingLevel: number;
|
|
30
|
+
setSelectedId: (entityId: string) => void;
|
|
31
|
+
treeNodeType: EntityTreeNodeType;
|
|
32
|
+
isSelected: boolean;
|
|
33
|
+
isDisabled: boolean;
|
|
34
|
+
}>;
|
|
35
|
+
declare type NodeMeta = Readonly<{
|
|
36
|
+
nestingLevel: number;
|
|
37
|
+
node: TreeNode;
|
|
38
|
+
}>;
|
|
39
|
+
export declare type RootNodeConfiguration = {
|
|
40
|
+
show: boolean;
|
|
41
|
+
nodeText: string;
|
|
42
|
+
children: EntityHeaderNode[];
|
|
43
|
+
/** If undefined, no more entities to fetch */
|
|
44
|
+
fetchNextPage: () => Promise<void>;
|
|
45
|
+
hasNextPage: boolean;
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* Converts a TreeNode and related data into a TreeWalkerValue that react-vtree can use to render the tree.
|
|
49
|
+
* Exported for testing purposes only.
|
|
50
|
+
* @param config
|
|
51
|
+
* @returns
|
|
52
|
+
*/
|
|
53
|
+
export declare const getNodeData: (config: {
|
|
54
|
+
node: TreeNode;
|
|
55
|
+
nestingLevel: number;
|
|
56
|
+
getNextPageOfChildren: () => Promise<void>;
|
|
57
|
+
setSelectedId: (entityId: string) => void;
|
|
58
|
+
treeNodeType: EntityTreeNodeType;
|
|
59
|
+
selected: Map<string, number>;
|
|
60
|
+
selectableTypes: EntityType[];
|
|
61
|
+
autoExpand: (entityId: string) => boolean;
|
|
62
|
+
defaultHeight: number;
|
|
63
|
+
currentContainer?: string | null | undefined;
|
|
64
|
+
}) => TreeWalkerValue<TreeData, NodeMeta>;
|
|
65
|
+
/**
|
|
66
|
+
* Node component for the react-vtree virtualized tree. Exported only for testing purposes
|
|
67
|
+
*/
|
|
68
|
+
export declare function Node(props: NodeComponentProps<TreeData, VariableSizeNodePublicState<TreeData>>): JSX.Element;
|
|
69
|
+
/**
|
|
70
|
+
* Extracted from the React component for testing purposes
|
|
71
|
+
* @returns a generator function compatible with react-vtree
|
|
72
|
+
*/
|
|
73
|
+
export declare function getTreeWalkerFunction(rootNode: RootNodeConfiguration, setSelectedId: VirtualizedTreeProps['setSelectedId'], treeNodeType: VirtualizedTreeProps['treeNodeType'], selected: VirtualizedTreeProps['selected'], selectableTypes: VirtualizedTreeProps['selectableTypes'], autoExpand: VirtualizedTreeProps['autoExpand'], itemSize: (index?: number) => number, currentContainer: VirtualizedTreeProps['currentContainer'], fetchNextPageOfChildren: (node: Writable<EntityHeaderNode>) => Promise<void>): TreeWalker<TreeData, NodeMeta>;
|
|
74
|
+
export declare type VirtualizedTreeProps = Readonly<{
|
|
75
|
+
treeNodeType: EntityTreeNodeType;
|
|
76
|
+
rootNodeConfiguration: RootNodeConfiguration;
|
|
77
|
+
setSelectedId: (entityId: string) => void;
|
|
78
|
+
selected: Map<string, number>;
|
|
79
|
+
currentContainer?: string | 'root' | null;
|
|
80
|
+
autoExpand: (entityId: string) => boolean;
|
|
81
|
+
selectableTypes: EntityType[];
|
|
82
|
+
visibleTypes: EntityType[];
|
|
83
|
+
}>;
|
|
84
|
+
/**
|
|
85
|
+
* Component that utilizes react-vtree to efficiently display a tree of entities. react-vtree utilizes react-window
|
|
86
|
+
* to only render visible nodes, which eliminates performance issues as seen in SWC-5978.
|
|
87
|
+
*/
|
|
88
|
+
export declare const VirtualizedTree: (props: VirtualizedTreeProps) => JSX.Element;
|
|
89
|
+
export {};
|