@itwin/components-react 5.4.0 → 5.6.0
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/CHANGELOG.md +355 -13
- package/lib/components-react/UiComponents.js +1 -1
- package/lib/components-react/UiComponents.js.map +1 -1
- package/lib/components-react/common/DisposePolyfill.d.ts +5 -0
- package/lib/components-react/common/DisposePolyfill.d.ts.map +1 -0
- package/lib/components-react/common/DisposePolyfill.js +14 -0
- package/lib/components-react/common/DisposePolyfill.js.map +1 -0
- package/lib/components-react/common/ImageRenderer.js +1 -1
- package/lib/components-react/common/ImageRenderer.js.map +1 -1
- package/lib/components-react/converters/PointTypeConverter.d.ts.map +1 -1
- package/lib/components-react/converters/PointTypeConverter.js +1 -0
- package/lib/components-react/converters/PointTypeConverter.js.map +1 -1
- package/lib/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
- package/lib/components-react/filter-builder/FilterBuilderRule.js +2 -5
- package/lib/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
- package/lib/components-react/filter-builder/FilterBuilderRuleValue.d.ts +6 -0
- package/lib/components-react/filter-builder/FilterBuilderRuleValue.d.ts.map +1 -1
- package/lib/components-react/filter-builder/FilterBuilderRuleValue.js +3 -2
- package/lib/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
- package/lib/components-react/new-editors/EditorRenderer.d.ts +9 -1
- package/lib/components-react/new-editors/EditorRenderer.d.ts.map +1 -1
- package/lib/components-react/new-editors/EditorRenderer.js +6 -3
- package/lib/components-react/new-editors/EditorRenderer.js.map +1 -1
- package/lib/components-react/new-editors/editors/NumericEditor.d.ts.map +1 -1
- package/lib/components-react/new-editors/editors/NumericEditor.js +9 -4
- package/lib/components-react/new-editors/editors/NumericEditor.js.map +1 -1
- package/lib/components-react/properties/renderers/PropertyGridColumns.d.ts.map +1 -1
- package/lib/components-react/properties/renderers/PropertyGridColumns.js +1 -1
- package/lib/components-react/properties/renderers/PropertyGridColumns.js.map +1 -1
- package/lib/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +1 -1
- package/lib/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
- package/lib/components-react/propertygrid/dataproviders/FilteringDataProvider.d.ts +6 -2
- package/lib/components-react/propertygrid/dataproviders/FilteringDataProvider.d.ts.map +1 -1
- package/lib/components-react/propertygrid/dataproviders/FilteringDataProvider.js +16 -1
- package/lib/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
- package/lib/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts.map +1 -1
- package/lib/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +1 -1
- package/lib/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
- package/lib/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts.map +1 -1
- package/lib/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +1 -1
- package/lib/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
- package/lib/components-react/tree/controlled/TreeEventHandler.d.ts +8 -3
- package/lib/components-react/tree/controlled/TreeEventHandler.d.ts.map +1 -1
- package/lib/components-react/tree/controlled/TreeEventHandler.js +18 -2
- package/lib/components-react/tree/controlled/TreeEventHandler.js.map +1 -1
- package/package.json +16 -15
|
@@ -5,6 +5,13 @@
|
|
|
5
5
|
/** @packageDocumentation
|
|
6
6
|
* @module Tree
|
|
7
7
|
*/
|
|
8
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
9
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
10
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
11
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
|
+
};
|
|
13
|
+
var _TreeEventHandler_instances, _TreeEventHandler_dispose;
|
|
14
|
+
import "../../common/DisposePolyfill.js";
|
|
8
15
|
import { Subject, takeUntil } from "rxjs";
|
|
9
16
|
import { TreeModelMutator } from "./internal/TreeModelMutator.js";
|
|
10
17
|
import { toRxjsObservable } from "./Observable.js";
|
|
@@ -14,14 +21,23 @@ import { toRxjsObservable } from "./Observable.js";
|
|
|
14
21
|
*/
|
|
15
22
|
export class TreeEventHandler {
|
|
16
23
|
constructor(params) {
|
|
24
|
+
_TreeEventHandler_instances.add(this);
|
|
17
25
|
this._disposed = new Subject();
|
|
18
26
|
this._selectionReplaced = new Subject();
|
|
19
27
|
this._modelMutator = new TreeModelMutator(params.modelSource, params.nodeLoader, !!params.collapsedChildrenDisposalEnabled);
|
|
20
28
|
this._editingParams = params.editingParams;
|
|
21
29
|
}
|
|
22
|
-
/**
|
|
23
|
-
|
|
30
|
+
/** Destructor. Must be called to clean up. */
|
|
31
|
+
[(_TreeEventHandler_instances = new WeakSet(), _TreeEventHandler_dispose = function _TreeEventHandler_dispose() {
|
|
24
32
|
this._disposed.next();
|
|
33
|
+
}, Symbol.dispose)]() {
|
|
34
|
+
__classPrivateFieldGet(this, _TreeEventHandler_instances, "m", _TreeEventHandler_dispose).call(this);
|
|
35
|
+
}
|
|
36
|
+
/** Disposes tree event handler.
|
|
37
|
+
* @deprecated in 5.5.0. Use `[Symbol.dispose]` instead.
|
|
38
|
+
*/
|
|
39
|
+
dispose() {
|
|
40
|
+
__classPrivateFieldGet(this, _TreeEventHandler_instances, "m", _TreeEventHandler_dispose).call(this);
|
|
25
41
|
}
|
|
26
42
|
get modelSource() {
|
|
27
43
|
return this._modelMutator.modelSource;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TreeEventHandler.js","sourceRoot":"","sources":["../../../../src/components-react/tree/controlled/TreeEventHandler.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG
|
|
1
|
+
{"version":3,"file":"TreeEventHandler.js","sourceRoot":"","sources":["../../../../src/components-react/tree/controlled/TreeEventHandler.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Tree\n */\n\nimport \"../../common/DisposePolyfill.js\";\n\nimport { Subject, takeUntil } from \"rxjs\";\nimport { TreeModelMutator } from \"./internal/TreeModelMutator.js\";\nimport type { Subscription } from \"./Observable.js\";\nimport { toRxjsObservable } from \"./Observable.js\";\nimport type {\n TreeCheckboxStateChangeEventArgs,\n TreeEvents,\n TreeNodeEventArgs,\n TreeSelectionModificationEventArgs,\n TreeSelectionReplacementEventArgs,\n} from \"./TreeEvents.js\";\nimport type { TreeModelNode } from \"./TreeModel.js\";\nimport type { TreeModelSource } from \"./TreeModelSource.js\";\nimport type { ITreeNodeLoader } from \"./TreeNodeLoader.js\";\n\n/**\n * Params used for tree node editing.\n * @public\n */\nexport interface TreeEditingParams {\n /** Callback that is called when node is updated. */\n onNodeUpdated: (node: TreeModelNode, newValue: string) => void;\n}\n\n/**\n * Data structure that describes tree event handler params.\n * @public\n */\nexport interface TreeEventHandlerParams {\n /** Model source used to modify tree model while handling events. */\n modelSource: TreeModelSource;\n /** Node loader used to load children when node is expanded. */\n nodeLoader: ITreeNodeLoader;\n /** Specifies whether children should be disposed when parent node is collapsed or not. */\n collapsedChildrenDisposalEnabled?: boolean;\n /** Parameters used for node editing. */\n editingParams?: TreeEditingParams;\n}\n\n/**\n * Default tree event handler.\n * @public\n */\nexport class TreeEventHandler implements TreeEvents, Disposable {\n private _modelMutator: TreeModelMutator;\n private _editingParams?: TreeEditingParams;\n\n private _disposed = new Subject<void>();\n private _selectionReplaced = new Subject<void>();\n\n constructor(params: TreeEventHandlerParams) {\n this._modelMutator = new TreeModelMutator(\n params.modelSource,\n params.nodeLoader,\n !!params.collapsedChildrenDisposalEnabled\n );\n this._editingParams = params.editingParams;\n }\n\n #dispose() {\n this._disposed.next();\n }\n\n /** Destructor. Must be called to clean up. */\n public [Symbol.dispose]() {\n this.#dispose();\n }\n\n /** Disposes tree event handler.\n * @deprecated in 5.5.0. Use `[Symbol.dispose]` instead.\n */\n public dispose() {\n this.#dispose();\n }\n\n public get modelSource() {\n return this._modelMutator.modelSource;\n }\n\n /** Expands node and starts loading children. */\n public onNodeExpanded({ nodeId }: TreeNodeEventArgs) {\n toRxjsObservable(this._modelMutator.expandNode(nodeId))\n .pipe(takeUntil(this._disposed))\n .subscribe();\n }\n\n /** Collapses node */\n public onNodeCollapsed({ nodeId }: TreeNodeEventArgs) {\n this._modelMutator.collapseNode(nodeId);\n }\n\n /** Selects and deselects nodes until event is handled, handler is disposed or selection replaced event occurs. */\n public onSelectionModified({\n modifications,\n }: TreeSelectionModificationEventArgs): Subscription | undefined {\n return toRxjsObservable(modifications)\n .pipe(takeUntil(this._disposed), takeUntil(this._selectionReplaced))\n .subscribe({\n next: ({ selectedNodeItems, deselectedNodeItems }) => {\n this._modelMutator.modifySelection(\n selectedNodeItems,\n deselectedNodeItems\n );\n },\n });\n }\n\n /** Replaces currently selected nodes until event is handled, handler is disposed or another selection replaced event occurs. */\n public onSelectionReplaced({\n replacements,\n }: TreeSelectionReplacementEventArgs): Subscription | undefined {\n this._selectionReplaced.next();\n\n let firstEmission = true;\n return toRxjsObservable(replacements)\n .pipe(takeUntil(this._disposed), takeUntil(this._selectionReplaced))\n .subscribe({\n next: ({ selectedNodeItems }) => {\n if (firstEmission) {\n firstEmission = false;\n this._modelMutator.replaceSelection(selectedNodeItems);\n }\n\n this._modelMutator.modifySelection(selectedNodeItems, []);\n },\n });\n }\n\n /** Changes nodes checkbox states. */\n public onCheckboxStateChanged({\n stateChanges,\n }: TreeCheckboxStateChangeEventArgs): Subscription | undefined {\n return stateChanges.subscribe((changes) =>\n this._modelMutator.setCheckboxStates(changes)\n );\n }\n\n /** Activates node editing if editing parameters are supplied and node is editable. */\n public onDelayedNodeClick({ nodeId }: TreeNodeEventArgs) {\n this.activateEditor(nodeId);\n }\n\n /** This method is declared here to be overridden by classes that extend TreeEventHandler */\n public onNodeDoubleClick(_: TreeNodeEventArgs) {}\n\n /** Activates node editing if editing parameters are supplied and node is editable. */\n public onNodeEditorActivated({ nodeId }: TreeNodeEventArgs) {\n this.activateEditor(nodeId);\n }\n\n /** Activates node editing if editing parameters are supplied and node is editable. */\n private activateEditor(nodeId: string) {\n if (this._editingParams === undefined) return;\n\n this._modelMutator.activateEditing(\n nodeId,\n this._editingParams.onNodeUpdated\n );\n }\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@itwin/components-react",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.6.0",
|
|
4
4
|
"description": "A react component library of iTwin.js UI data-oriented components",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"types": "./lib/components-react.d.ts",
|
|
@@ -35,20 +35,20 @@
|
|
|
35
35
|
"url": "http://www.bentley.com"
|
|
36
36
|
},
|
|
37
37
|
"peerDependencies": {
|
|
38
|
-
"@itwin/appui-abstract": "^4.0.0",
|
|
39
|
-
"@itwin/core-bentley": "^4.0.0",
|
|
40
|
-
"@itwin/core-react": "^5.4.0",
|
|
38
|
+
"@itwin/appui-abstract": "^4.0.0 || ^5.0.0",
|
|
39
|
+
"@itwin/core-bentley": "^4.0.0 || ^5.0.0",
|
|
41
40
|
"@itwin/itwinui-react": "^3.15.0",
|
|
42
41
|
"react": "^18.0.0",
|
|
43
|
-
"react-dom": "^18.0.0"
|
|
42
|
+
"react-dom": "^18.0.0",
|
|
43
|
+
"@itwin/core-react": "5.6.0"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
|
-
"@itwin/appui-abstract": "
|
|
46
|
+
"@itwin/appui-abstract": "rc",
|
|
47
47
|
"@itwin/build-tools": "4.10.2",
|
|
48
|
-
"@itwin/core-bentley": "
|
|
49
|
-
"@itwin/core-common": "
|
|
50
|
-
"@itwin/core-i18n": "
|
|
51
|
-
"@itwin/eslint-plugin": "5.
|
|
48
|
+
"@itwin/core-bentley": "rc",
|
|
49
|
+
"@itwin/core-common": "rc",
|
|
50
|
+
"@itwin/core-i18n": "rc",
|
|
51
|
+
"@itwin/eslint-plugin": "5.1.0",
|
|
52
52
|
"@itwin/itwinui-react": "^3.17.0",
|
|
53
53
|
"@testing-library/dom": "^10.1.0",
|
|
54
54
|
"@testing-library/react": "^15.0.7",
|
|
@@ -61,6 +61,7 @@
|
|
|
61
61
|
"@types/react-window": "^1.8.2",
|
|
62
62
|
"@vitest/coverage-v8": "^3.0.6",
|
|
63
63
|
"cpx2": "^3.0.0",
|
|
64
|
+
"cross-env": "^5.1.4",
|
|
64
65
|
"eslint": "^8.57.1",
|
|
65
66
|
"eslint-config-prettier": "~8.8.0",
|
|
66
67
|
"ignore-styles": "^5.0.1",
|
|
@@ -75,7 +76,7 @@
|
|
|
75
76
|
"typescript": "~5.6.2",
|
|
76
77
|
"upath": "^2.0.1",
|
|
77
78
|
"vitest": "^3.0.6",
|
|
78
|
-
"@itwin/core-react": "5.
|
|
79
|
+
"@itwin/core-react": "5.6.0"
|
|
79
80
|
},
|
|
80
81
|
"dependencies": {
|
|
81
82
|
"@itwin/itwinui-icons-react": "^2.8.0",
|
|
@@ -95,15 +96,15 @@
|
|
|
95
96
|
"compat:css": "npm run compat:cjs && npm run compat:esm",
|
|
96
97
|
"compat:cjs": "cpx \"./src/**/*.{*css,svg}\" ./lib/cjs",
|
|
97
98
|
"compat:esm": "cpx \"./src/**/*.{*css,svg}\" ./lib/esm",
|
|
98
|
-
"clean": "rimraf -g lib
|
|
99
|
+
"clean": "rimraf -g lib",
|
|
99
100
|
"cover": "vitest run --coverage",
|
|
100
|
-
"lint": "eslint
|
|
101
|
+
"lint": "eslint \"./src/**/*.{ts,tsx}\"",
|
|
101
102
|
"lint:fix": "npm run -s lint -- --fix",
|
|
102
|
-
"extract-api": "betools extract-api --entry=./lib/components-react",
|
|
103
|
+
"extract-api": "betools extract-api --entry=./lib/components-react --apiReportFolder=../../common/api --apiReportTempFolder=../../common/temp/api --apiSummaryFolder=../../common/api/summary",
|
|
103
104
|
"test": "vitest",
|
|
104
105
|
"docs": "npm run -s docs:extract && npm run -s docs:reference && npm run -s docs:changelog",
|
|
105
106
|
"docs:changelog": "cpx ./CHANGELOG.md ../../generated-docs/reference/components-react",
|
|
106
|
-
"docs:reference": "betools docs --includes=../../generated-docs/extract --json=../../generated-docs/reference/components-react/file.json --tsIndexFile=./components-react.ts --onlyJson",
|
|
107
|
+
"docs:reference": "cross-env NODE_PROJECT_ROOT_DIRECTORY=../../ betools docs --includes=../../generated-docs/extract --json=../../generated-docs/reference/components-react/file.json --tsIndexFile=./components-react.ts --onlyJson",
|
|
107
108
|
"docs:extract": "betools extract --fileExt=ts,tsx --extractFrom=./src/test --recursive --out=../../generated-docs/extract"
|
|
108
109
|
}
|
|
109
110
|
}
|