@itwin/presentation-hierarchies-react 2.0.0-alpha.62 → 2.0.0-alpha.64

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/CHANGELOG.md +97 -0
  2. package/README.md +62 -37
  3. package/lib/presentation-hierarchies-react/FlatTreeNode.d.ts +1 -2
  4. package/lib/presentation-hierarchies-react/FlatTreeNode.d.ts.map +1 -1
  5. package/lib/presentation-hierarchies-react/FlatTreeNode.js.map +1 -1
  6. package/lib/presentation-hierarchies-react/LocalizationContext.d.ts +1 -5
  7. package/lib/presentation-hierarchies-react/LocalizationContext.d.ts.map +1 -1
  8. package/lib/presentation-hierarchies-react/LocalizationContext.js.map +1 -1
  9. package/lib/presentation-hierarchies-react/Renderers.d.ts +0 -1
  10. package/lib/presentation-hierarchies-react/Renderers.d.ts.map +1 -1
  11. package/lib/presentation-hierarchies-react/TreeNode.d.ts +1 -2
  12. package/lib/presentation-hierarchies-react/TreeNode.d.ts.map +1 -1
  13. package/lib/presentation-hierarchies-react/UseIModelTree.d.ts +0 -1
  14. package/lib/presentation-hierarchies-react/UseIModelTree.d.ts.map +1 -1
  15. package/lib/presentation-hierarchies-react/UseIModelTree.js.map +1 -1
  16. package/lib/presentation-hierarchies-react/UseNodeHighlighting.d.ts +1 -4
  17. package/lib/presentation-hierarchies-react/UseNodeHighlighting.d.ts.map +1 -1
  18. package/lib/presentation-hierarchies-react/UseNodeHighlighting.js.map +1 -1
  19. package/lib/presentation-hierarchies-react/UseSelectionHandler.d.ts +1 -0
  20. package/lib/presentation-hierarchies-react/UseSelectionHandler.d.ts.map +1 -1
  21. package/lib/presentation-hierarchies-react/UseSelectionHandler.js.map +1 -1
  22. package/lib/presentation-hierarchies-react/UseTree.d.ts +4 -11
  23. package/lib/presentation-hierarchies-react/UseTree.d.ts.map +1 -1
  24. package/lib/presentation-hierarchies-react/UseTree.js +3 -2
  25. package/lib/presentation-hierarchies-react/UseTree.js.map +1 -1
  26. package/lib/presentation-hierarchies-react/Utils.js.map +1 -1
  27. package/lib/presentation-hierarchies-react/internal/DisposePolyfill.js.map +1 -1
  28. package/lib/presentation-hierarchies-react/internal/LocalizedStrings.d.ts.map +1 -1
  29. package/lib/presentation-hierarchies-react/internal/LocalizedStrings.js.map +1 -1
  30. package/lib/presentation-hierarchies-react/internal/TreeActions.js +5 -0
  31. package/lib/presentation-hierarchies-react/internal/TreeActions.js.map +1 -1
  32. package/lib/presentation-hierarchies-react/internal/TreeLoader.js +3 -0
  33. package/lib/presentation-hierarchies-react/internal/TreeLoader.js.map +1 -1
  34. package/lib/presentation-hierarchies-react/internal/TreeModel.d.ts +2 -0
  35. package/lib/presentation-hierarchies-react/internal/TreeModel.js.map +1 -1
  36. package/lib/presentation-hierarchies-react/internal/UseUnifiedSelection.d.ts +2 -1
  37. package/lib/presentation-hierarchies-react/internal/UseUnifiedSelection.d.ts.map +1 -1
  38. package/lib/presentation-hierarchies-react/internal/UseUnifiedSelection.js +1 -1
  39. package/lib/presentation-hierarchies-react/internal/UseUnifiedSelection.js.map +1 -1
  40. package/lib/presentation-hierarchies-react/internal/Utils.js.map +1 -1
  41. package/lib/presentation-hierarchies-react/stratakit/ErrorItemRenderer.d.ts +1 -9
  42. package/lib/presentation-hierarchies-react/stratakit/ErrorItemRenderer.d.ts.map +1 -1
  43. package/lib/presentation-hierarchies-react/stratakit/ErrorItemRenderer.js +53 -46
  44. package/lib/presentation-hierarchies-react/stratakit/ErrorItemRenderer.js.map +1 -1
  45. package/lib/presentation-hierarchies-react/stratakit/RootErrorRenderer.d.ts +2 -7
  46. package/lib/presentation-hierarchies-react/stratakit/RootErrorRenderer.d.ts.map +1 -1
  47. package/lib/presentation-hierarchies-react/stratakit/RootErrorRenderer.js +5 -4
  48. package/lib/presentation-hierarchies-react/stratakit/RootErrorRenderer.js.map +1 -1
  49. package/lib/presentation-hierarchies-react/stratakit/TreeAction.d.ts +6 -4
  50. package/lib/presentation-hierarchies-react/stratakit/TreeAction.d.ts.map +1 -1
  51. package/lib/presentation-hierarchies-react/stratakit/TreeAction.js +37 -13
  52. package/lib/presentation-hierarchies-react/stratakit/TreeAction.js.map +1 -1
  53. package/lib/presentation-hierarchies-react/stratakit/TreeErrorRenderer.d.ts +1 -7
  54. package/lib/presentation-hierarchies-react/stratakit/TreeErrorRenderer.d.ts.map +1 -1
  55. package/lib/presentation-hierarchies-react/stratakit/TreeErrorRenderer.js.map +1 -1
  56. package/lib/presentation-hierarchies-react/stratakit/TreeNodeFilterAction.d.ts +0 -1
  57. package/lib/presentation-hierarchies-react/stratakit/TreeNodeFilterAction.d.ts.map +1 -1
  58. package/lib/presentation-hierarchies-react/stratakit/TreeNodeFilterAction.js.map +1 -1
  59. package/lib/presentation-hierarchies-react/stratakit/TreeNodeRenameAction.d.ts.map +1 -1
  60. package/lib/presentation-hierarchies-react/stratakit/TreeNodeRenameAction.js.map +1 -1
  61. package/lib/presentation-hierarchies-react/stratakit/TreeNodeRenderer.d.ts +3 -0
  62. package/lib/presentation-hierarchies-react/stratakit/TreeNodeRenderer.d.ts.map +1 -1
  63. package/lib/presentation-hierarchies-react/stratakit/TreeNodeRenderer.js +152 -140
  64. package/lib/presentation-hierarchies-react/stratakit/TreeNodeRenderer.js.map +1 -1
  65. package/lib/presentation-hierarchies-react/stratakit/TreeRenderer.d.ts +0 -1
  66. package/lib/presentation-hierarchies-react/stratakit/TreeRenderer.d.ts.map +1 -1
  67. package/lib/presentation-hierarchies-react/stratakit/TreeRenderer.js.map +1 -1
  68. package/lib/presentation-hierarchies-react-extract.d.ts +2 -1
  69. package/package.json +43 -35
package/CHANGELOG.md CHANGED
@@ -1,5 +1,31 @@
1
1
  # @itwin/presentation-hierarchies-react
2
2
 
3
+ ## 2.0.0-alpha.64
4
+
5
+ ### Patch Changes
6
+
7
+ - [#1469](https://github.com/iTwin/presentation/pull/1469): `TreeActionBase`: Made the `onClick` prop optional.
8
+ - Updated dependencies:
9
+ - @itwin/presentation-shared@2.0.0-alpha.12
10
+ - @itwin/presentation-hierarchies@2.0.0-alpha.17
11
+ - @itwin/unified-selection@2.0.0-alpha.0
12
+
13
+ ## 2.0.0-alpha.63
14
+
15
+ ### Major Changes
16
+
17
+ - [#1425](https://github.com/iTwin/presentation/pull/1425): Moved the package to use `@mui/material` and `@stratakit/mui`.
18
+
19
+ **Breaking:** Removed `@stratakit/foundations`, `@stratakit/icons` optional peer dependencies. Added `@mui/material` and `@stratakit/mui` as optional peer dependencies.
20
+
21
+ ### Patch Changes
22
+
23
+ - [#1325](https://github.com/iTwin/presentation/pull/1325): Add accessible name for tree context menu.
24
+ - Updated dependencies:
25
+ - @itwin/presentation-shared@2.0.0-alpha.11
26
+ - @itwin/presentation-hierarchies@2.0.0-alpha.16
27
+ - @itwin/unified-selection@1.8.1-alpha.0
28
+
3
29
  ## 2.0.0-alpha.62
4
30
 
5
31
  ### Patch Changes
@@ -971,6 +997,77 @@
971
997
 
972
998
  - [#847](https://github.com/iTwin/presentation/pull/847): Moving tree rendering components to a new design systems.
973
999
 
1000
+ ## 1.11.3
1001
+
1002
+ ### Patch Changes
1003
+
1004
+ - [#1430](https://github.com/iTwin/presentation/pull/1430): Bump dependencies.
1005
+ - Updated dependencies:
1006
+ - @itwin/presentation-hierarchies@1.7.18
1007
+ - @itwin/presentation-shared@1.2.18
1008
+ - @itwin/unified-selection@1.8.3
1009
+
1010
+ ## 1.11.2
1011
+
1012
+ ### Patch Changes
1013
+
1014
+ - [#1400](https://github.com/iTwin/presentation/pull/1400): Bump dependencies.
1015
+ - Updated dependencies:
1016
+ - @itwin/unified-selection@1.8.2
1017
+ - @itwin/presentation-hierarchies@1.7.17
1018
+ - @itwin/presentation-shared@1.2.17
1019
+
1020
+ ## 1.11.1
1021
+
1022
+ ### Patch Changes
1023
+
1024
+ - [#1390](https://github.com/iTwin/presentation/pull/1390): Update `@itwin/core-*` dependencies to `^5.10.0`.
1025
+ - Updated dependencies:
1026
+ - @itwin/presentation-hierarchies@1.7.16
1027
+ - @itwin/presentation-shared@1.2.16
1028
+ - @itwin/unified-selection@1.7.6
1029
+
1030
+ ## 1.11.0
1031
+
1032
+ ### Minor Changes
1033
+
1034
+ - [#1387](https://github.com/iTwin/presentation/pull/1387): Added support for React version 19
1035
+
1036
+ ### Patch Changes
1037
+
1038
+ - Updated dependencies:
1039
+ - @itwin/presentation-shared@1.2.15
1040
+
1041
+ ## 1.10.4
1042
+
1043
+ ### Patch Changes
1044
+
1045
+ - [#1358](https://github.com/iTwin/presentation/pull/1358): Bump dependencies.
1046
+ - Updated dependencies:
1047
+ - @itwin/presentation-hierarchies@1.7.15
1048
+ - @itwin/presentation-shared@1.2.14
1049
+ - @itwin/unified-selection@1.7.5
1050
+
1051
+ ## 1.10.3
1052
+
1053
+ ### Patch Changes
1054
+
1055
+ - [#1338](https://github.com/iTwin/presentation/pull/1338): Bump iTwin.js core dependencies to `^5.9.1`.
1056
+ - Updated dependencies:
1057
+ - @itwin/unified-selection@1.7.3
1058
+ - @itwin/presentation-hierarchies@1.7.14
1059
+ - @itwin/presentation-shared@1.2.13
1060
+
1061
+ ## 1.10.2
1062
+
1063
+ ### Patch Changes
1064
+
1065
+ - [#1313](https://github.com/iTwin/presentation/pull/1313): Bump dependencies.
1066
+ - Updated dependencies:
1067
+ - @itwin/presentation-shared@1.2.12
1068
+ - @itwin/unified-selection@1.7.1
1069
+ - @itwin/presentation-hierarchies@1.7.13
1070
+
974
1071
  ## 1.10.1
975
1072
 
976
1073
  ### Patch Changes
package/README.md CHANGED
@@ -60,6 +60,9 @@ The hook takes 2 required properties:
60
60
 
61
61
  - `imodelAccess` provides access to iModel's data and metadata, required to build the hierarchy. Generally, `@itwin/presentation-core-interop` and `@itwin/presentation-shared` packages are used to create this object:
62
62
 
63
+ <!-- [[include: [Presentation.HierarchiesReact.iModelAccess.Imports, Presentation.HierarchiesReact.iModelAccess], tsx]] -->
64
+ <!-- BEGIN EXTRACTION -->
65
+
63
66
  ```tsx
64
67
  import { IModelConnection } from "@itwin/core-frontend";
65
68
  import { createCachingECClassHierarchyInspector } from "@itwin/presentation-shared";
@@ -80,6 +83,8 @@ The hook takes 2 required properties:
80
83
  }
81
84
  ```
82
85
 
86
+ <!-- END EXTRACTION -->
87
+
83
88
  - `getHierarchyDefinition` is a factory function that creates a hierarchy definition, describing the hierarchy the tree component will render. The `@itwin/presentation-hierarchies` package describes the concept of hierarchy definitions [in more detail](https://github.com/iTwin/presentation/blob/master/packages/hierarchies/learning/imodel/HierarchyDefinition.md).
84
89
 
85
90
  #### `useIModelUnifiedSelectionTree` props
@@ -99,16 +104,21 @@ The component renders a virtualized tree using the `Tree` component from `@strat
99
104
 
100
105
  ## Full example
101
106
 
107
+ <!-- [[include: [Presentation.HierarchiesReact.iModelAccess.Imports, Presentation.HierarchiesReact.SelectionStorage.Imports, Presentation.HierarchiesReact.CustomTreeExample.Imports, Presentation.HierarchiesReact.iModelAccess, Presentation.HierarchiesReact.SelectionStorage, Presentation.HierarchiesReact.CustomTreeExample], tsx]] -->
108
+ <!-- BEGIN EXTRACTION -->
109
+
102
110
  ```tsx
103
111
  import { IModelConnection } from "@itwin/core-frontend";
104
- import { createCachingECClassHierarchyInspector, Props } from "@itwin/presentation-shared";
112
+ import { createCachingECClassHierarchyInspector } from "@itwin/presentation-shared";
105
113
  import { createECSchemaProvider, createECSqlQueryExecutor, createIModelKey } from "@itwin/presentation-core-interop";
106
- import { createLimitingECSqlQueryExecutor, HierarchyDefinition } from "@itwin/presentation-hierarchies";
114
+ import { createLimitingECSqlQueryExecutor } from "@itwin/presentation-hierarchies";
107
115
 
108
- import { useIModelUnifiedSelectionTree } from "@itwin/presentation-hierarchies-react";
109
- import { StrataKitTreeRenderer, StrataKitRootErrorRenderer } from "@itwin/presentation-hierarchies-react/stratakit";
110
116
  import { createStorage, SelectionStorage } from "@itwin/unified-selection";
117
+
111
118
  import { useEffect, useState } from "react";
119
+ import { Props } from "@itwin/presentation-shared";
120
+ import { useIModelUnifiedSelectionTree } from "@itwin/presentation-hierarchies-react";
121
+ import { StrataKitRootErrorRenderer, StrataKitTreeRenderer } from "@itwin/presentation-hierarchies-react/stratakit";
112
122
 
113
123
  function createIModelAccess(imodel: IModelConnection) {
114
124
  const schemaProvider = createECSchemaProvider(imodel.schemaContext);
@@ -143,24 +153,18 @@ function MyTreeComponent({ imodel }: { imodel: IModelConnection }) {
143
153
  type IModelAccess = Props<typeof useIModelUnifiedSelectionTree>["imodelAccess"];
144
154
 
145
155
  // The hierarchy definition describes the hierarchy using ECSQL queries; here it just returns all `BisCore.PhysicalModel` instances
146
- function getHierarchyDefinition({ imodelAccess }: { imodelAccess: IModelAccess }): HierarchyDefinition {
156
+ function getHierarchyDefinition(): HierarchyDefinition {
147
157
  return {
148
- // The `instanceLabelSelectClauseFactory` and `nodeSelectClauseFactory` are provided automatically by the hierarchy provider
149
- defineHierarchyLevel: async ({ instanceLabelSelectClauseFactory, nodeSelectClauseFactory }) => [
158
+ defineHierarchyLevel: async ({ createSelectClause }) => [
150
159
  {
151
160
  fullClassName: "BisCore.PhysicalModel",
152
161
  query: {
153
162
  ecsql: `
154
163
  SELECT
155
- ${await nodeSelectClauseFactory.createSelectClause({
164
+ ${await createSelectClause({
156
165
  ecClassId: { selector: "this.ECClassId" },
157
166
  ecInstanceId: { selector: "this.ECInstanceId" },
158
- nodeLabel: {
159
- selector: await instanceLabelSelectClauseFactory.createSelectClause({
160
- classAlias: "this",
161
- className: "BisCore.PhysicalModel",
162
- }),
163
- },
167
+ nodeLabel: { of: { classAlias: "this", className: "BisCore.PhysicalModel" } },
164
168
  hasChildren: false,
165
169
  })}
166
170
  FROM BisCore.PhysicalModel this
@@ -189,13 +193,10 @@ function MyTreeComponentInternal({
189
193
  // supply the hierarchy definition
190
194
  getHierarchyDefinition,
191
195
  });
192
-
193
196
  if (treeProps.rootErrorRendererProps) {
194
- // render error component if tree fails to load
195
197
  return <StrataKitRootErrorRenderer {...treeProps.rootErrorRendererProps} />;
196
198
  }
197
-
198
- if (treeProps.isReloading || treeProps.treeRendererProps === undefined) {
199
+ if (!treeProps.treeRendererProps || treeProps.isReloading) {
199
200
  return "Loading...";
200
201
  }
201
202
 
@@ -203,25 +204,54 @@ function MyTreeComponentInternal({
203
204
  }
204
205
  ```
205
206
 
207
+ <!-- END EXTRACTION -->
208
+
206
209
  ## Localization
207
210
 
208
- This package delivers a locale JSON file with English strings that follows the [`i18next JSON format`](https://www.i18next.com/misc/json-format). To enable localization, register `LOCALIZATION_NAMESPACES` during initialization and wrap components in `LocalizationContextProvider`:
211
+ This package delivers a locale JSON file with English strings that follows the [`i18next JSON format`](https://www.i18next.com/misc/json-format). To enable localization, register `LOCALIZATION_NAMESPACES` during initialization and wrap components in `LocalizationContextProvider`.
212
+
213
+ Import the localization and tree APIs:
214
+
215
+ <!-- [[include: [Presentation.HierarchiesReact.Localization.Tree.Imports, Presentation.HierarchiesReact.Localization.TreeRenderer.Imports], tsx]] -->
216
+ <!-- BEGIN EXTRACTION -->
209
217
 
210
218
  ```tsx
211
219
  import {
212
- LocalizationContextProvider,
213
220
  LOCALIZATION_NAMESPACES,
214
- useIModelUnifiedSelectionTree,
221
+ LocalizationContextProvider,
222
+ useIModelTree,
215
223
  } from "@itwin/presentation-hierarchies-react";
216
- import { StrataKitTreeRenderer } from "@itwin/presentation-hierarchies-react/stratakit";
217
224
 
218
- // Register localization namespaces with `i18next` based localization provider.
225
+ import { StrataKitRootErrorRenderer, StrataKitTreeRenderer } from "@itwin/presentation-hierarchies-react/stratakit";
226
+ ```
227
+
228
+ <!-- END EXTRACTION -->
229
+
230
+ Register the localization namespaces with your localization provider during application initialization:
231
+
232
+ <!-- [[include: Presentation.HierarchiesReact.Localization.RegisterNamespaces, tsx]] -->
233
+ <!-- BEGIN EXTRACTION -->
234
+
235
+ ```tsx
236
+ // Register the localization namespaces delivered by the package with your localization provider
237
+ // (e.g. `IModelApp.localization`) during application initialization.
219
238
  for (const namespace of LOCALIZATION_NAMESPACES) {
220
239
  await localization.registerNamespace(namespace);
221
240
  }
241
+ ```
242
+
243
+ <!-- END EXTRACTION -->
244
+
245
+ Wrap the tree components with `LocalizationContextProvider`:
246
+
247
+ <!-- [[include: Presentation.HierarchiesReact.Localization.Tree, tsx]] -->
248
+ <!-- BEGIN EXTRACTION -->
222
249
 
223
- // Wrap components with LocalizationContextProvider
224
- function Tree() {
250
+ ```tsx
251
+ // Wrap the tree components with `LocalizationContextProvider`, passing the same localization provider
252
+ // used to register the namespaces. The provider resolves the package's localized strings at runtime.
253
+ type IModelAccess = Props<typeof useIModelTree>["imodelAccess"];
254
+ function LocalizedTree({ imodelAccess }: { imodelAccess: IModelAccess }) {
225
255
  return (
226
256
  <LocalizationContextProvider localization={localization}>
227
257
  <MyTreeComponent imodelAccess={imodelAccess} />
@@ -230,22 +260,17 @@ function Tree() {
230
260
  }
231
261
 
232
262
  function MyTreeComponent({ imodelAccess }: { imodelAccess: IModelAccess }) {
233
- const treeProps = useIModelUnifiedSelectionTree({
234
- sourceName: "MyTreeComponent",
235
- imodelAccess,
236
- getHierarchyDefinition,
237
- });
238
-
263
+ const treeProps = useIModelTree({ imodelAccess, getHierarchyDefinition });
239
264
  if (treeProps.rootErrorRendererProps) {
240
- return <div>Error</div>;
265
+ return <StrataKitRootErrorRenderer {...treeProps.rootErrorRendererProps} />;
241
266
  }
242
-
243
- if (treeProps.isReloading || treeProps.treeRendererProps === undefined) {
244
- return <div>Loading...</div>;
267
+ if (!treeProps.treeRendererProps || treeProps.isReloading) {
268
+ return "Loading";
245
269
  }
246
-
247
- return <StrataKitTreeRenderer {...treeProps.treeRendererProps} treeLabel="My Tree" />;
270
+ return <StrataKitTreeRenderer {...treeProps.treeRendererProps} treeLabel="Localized tree" />;
248
271
  }
249
272
  ```
250
273
 
274
+ <!-- END EXTRACTION -->
275
+
251
276
  `LocalizationContextProvider` accepts a `localization` prop — an object with a `getLocalizedString(key: string): string` method. It is designed to work with the `Localization` interface from `@itwin/core-common`, but a custom implementation can be used as well by providing an object with a custom `getLocalizedString` function. The provider uses it internally to resolve translation keys prefixed with localization namespace.
@@ -1,5 +1,4 @@
1
1
  import { TreeNode } from "./TreeNode.js";
2
-
3
2
  //#region src/presentation-hierarchies-react/FlatTreeNode.d.ts
4
3
  /**
5
4
  * Placeholder item that is added to hierarchy as a child for a parent item while its child items are loading.
@@ -45,5 +44,5 @@ declare function useFlatTreeItems(rootNodes: TreeNode[]): FlatTreeItem[];
45
44
  */
46
45
  declare function useErrorNodes(rootNodes: TreeNode[]): TreeNode[];
47
46
  //#endregion
48
- export { FlatTreeItem, useErrorNodes, useFlatTreeItems };
47
+ export { FlatTreeItem, FlatTreeNodeItem, useErrorNodes, useFlatTreeItems };
49
48
  //# sourceMappingURL=FlatTreeNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FlatTreeNode.d.ts","names":[],"sources":["../../src/presentation-hierarchies-react/FlatTreeNode.ts"],"mappings":";;;;;AAOyD;;;UAO/C,mBAAA;EACR,EAAA;EACA,KAAA;EACA,WAAA;AAAA;;AAQF;;;;UAAiB,gBAAA;EACf,EAAA;EACA,KAAA;EACA,SAAA;EACA,UAAA;EACA,IAAA,EAAM,QAAA;AAAA;;AASR;;;;;KAAY,YAAA,GAAe,gBAAA,GAAmB,mBAAA;;;;;;;AAkD9C;iBApCgB,gBAAA,CAAiB,SAAA,EAAW,QAAA,KAAU,YAAA;;;;;;iBAoCtC,aAAA,CAAc,SAAA,EAAW,QAAA,KAAa,QAAA"}
1
+ {"version":3,"file":"FlatTreeNode.d.ts","names":[],"sources":["../../src/presentation-hierarchies-react/FlatTreeNode.ts"],"mappings":";;;;;;;UAcU;EACR;EACA;EACA;;;;;;;UAQe;EACf;EACA;EACA;EACA;EACA,MAAM;;;;;;;;KASI,eAAe,mBAAmB;;;;;;;;iBAc9B,iBAAiB,WAAW,aAAU;;;;;;iBAoCtC,cAAc,WAAW,aAAa"}
@@ -1 +1 @@
1
- {"version":3,"file":"FlatTreeNode.js","names":["useMemo","ErrorInfo","TreeNode","FlatPlaceholderItem","id","level","placeholder","FlatTreeNodeItem","levelSize","posInLevel","node","FlatTreeItem","isPlaceholderItem","item","useFlatTreeItems","rootNodes","$","_c","t0","getFlatItems","nodes","flatItems","forEach","index","push","length","isExpanded","errors","some","isErrorBlockingExpansion","children","childNodes","useErrorNodes","flatMap","_temp","rootNode","errorNodes","isErrorNode","getErrorNodes","parent","errorList","childErrorList","error","type","isNodeExpandable"],"sources":["../../src/presentation-hierarchies-react/FlatTreeNode.ts"],"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\nimport { useMemo } from \"react\";\n\nimport type { ErrorInfo, TreeNode } from \"./TreeNode.js\";\n\n/**\n * Placeholder item that is added to hierarchy as a child for a parent item while its child items are loading.\n *\n * @alpha\n */\ninterface FlatPlaceholderItem {\n id: string;\n level: number;\n placeholder: true;\n}\n\n/**\n * An item containing `TreeNode` node with properties needed for a flat tree structure.\n *\n * @alpha\n */\nexport interface FlatTreeNodeItem {\n id: string;\n level: number;\n levelSize: number;\n posInLevel: number;\n node: TreeNode;\n}\n\n/**\n * An Item describing single tree item position and its content inside tree.\n * Returned by `useFlatTreeNodeList` hook.\n *\n * @alpha\n */\nexport type FlatTreeItem = FlatTreeNodeItem | FlatPlaceholderItem;\n\n/** @alpha */\nexport function isPlaceholderItem(item: FlatTreeItem): item is FlatPlaceholderItem {\n return \"placeholder\" in item;\n}\n\n/**\n * Used to get a list of `FlatTreeItem` objects for the given list of `TreeNode` objects that represent\n * a hierarchical structure. The resulting items can be used to render the hierarchy in a flat manner, e.g. using a\n * virtualized list.\n *\n * @alpha\n */\nexport function useFlatTreeItems(rootNodes: TreeNode[]) {\n return useMemo(() => getFlatItems(rootNodes, 1), [rootNodes]);\n}\n\nfunction getFlatItems(nodes: TreeNode[], level: number) {\n const flatItems: FlatTreeItem[] = [];\n nodes.forEach((node, index) => {\n flatItems.push({ node, id: node.id, level, levelSize: nodes.length, posInLevel: index + 1 });\n if (!node.isExpanded) {\n return;\n }\n\n if (node.errors.some(isErrorBlockingExpansion)) {\n return;\n }\n\n if (node.children !== true) {\n const childNodes = getFlatItems(node.children, level + 1);\n flatItems.push(...childNodes);\n return;\n }\n\n flatItems.push({\n id: `${node.id}-children-placeholder`,\n level: level + 1,\n placeholder: true,\n } satisfies FlatPlaceholderItem);\n });\n return flatItems;\n}\n\n/**\n * Finds and returns all nodes containing errors in a given hierarchy.\n *\n * @alpha\n */\nexport function useErrorNodes(rootNodes: TreeNode[]): TreeNode[] {\n return useMemo(\n () =>\n rootNodes.flatMap((rootNode) => {\n const errorNodes = isErrorNode(rootNode) ? [rootNode] : [];\n if (rootNode.children === true) {\n return errorNodes;\n }\n\n if (errorNodes.length === 1 && errorNodes[0].errors.some(isErrorBlockingExpansion)) {\n return errorNodes;\n }\n errorNodes.push(...getErrorNodes(rootNode));\n return errorNodes;\n }),\n [rootNodes],\n );\n}\n\nfunction getErrorNodes(parent: TreeNode) {\n const errorList: TreeNode[] = [];\n\n if (parent.children === true) {\n return [];\n }\n\n parent.children.forEach((node) => {\n if (isErrorNode(node)) {\n errorList.push(node);\n if (node.errors.some(isErrorBlockingExpansion)) {\n return;\n }\n }\n\n if (node.children !== true) {\n const childErrorList = getErrorNodes(node);\n errorList.push(...childErrorList);\n return;\n }\n });\n return errorList;\n}\n\nfunction isErrorNode(node: TreeNode): boolean {\n return node.errors.length > 0;\n}\n\nfunction isErrorBlockingExpansion(error: ErrorInfo): boolean {\n return error.type !== \"Unknown\" || !error.isNodeExpandable;\n}\n"],"mappings":";;;AA0CA,SAAgBY,kBAAkBC,MAAiD;AACjF,QAAO,iBAAiBA;;;;;;;;;AAU1B,SAAOC,iBAAAC,WAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAA,IAAAC;AAAA,KAAAF,EAAA,OAAAD,WAAA;AACgBG,OAAAC,aAAaJ,WAAW,EAAE;AAAAC,IAAA,KAAAD;AAAAC,IAAA,KAAAE;OAAAA,MAAAF,EAAA;AAAA,QAA1BE;;AAGvB,SAASC,aAAaC,OAAmBf,OAAe;CACtD,MAAMgB,YAA4B,EAAE;AACpCD,OAAME,SAASZ,MAAMa,UAAU;AAC7BF,YAAUG,KAAK;GAAEd;GAAMN,IAAIM,KAAKN;GAAIC;GAAOG,WAAWY,MAAMK;GAAQhB,YAAYc,QAAQ;GAAG,CAAC;AAC5F,MAAI,CAACb,KAAKgB,WACR;AAGF,MAAIhB,KAAKiB,OAAOC,KAAKC,yBAAyB,CAC5C;AAGF,MAAInB,KAAKoB,aAAa,MAAM;GAC1B,MAAMC,aAAaZ,aAAaT,KAAKoB,UAAUzB,QAAQ,EAAE;AACzDgB,aAAUG,KAAK,GAAGO,WAAW;AAC7B;;AAGFV,YAAUG,KAAK;GACbpB,IAAI,GAAGM,KAAKN,GAAE;GACdC,OAAOA,QAAQ;GACfC,aAAa;GACd,CAA+B;GAChC;AACF,QAAOe;;;;;;;AAQT,SAAOW,cAAAjB,WAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAA,IAAAC;AAAA,KAAAF,EAAA,OAAAD,WAAA;AAGDG,OAAAH,UAASkB,QAASC,MAWhB;AAAAlB,IAAA,KAAAD;AAAAC,IAAA,KAAAE;OAAAA,MAAAF,EAAA;AAAA,QAXFE;;AAHC,SAAAgB,MAAAC,UAAA;CAIC,MAAAC,aAAmBC,YAAYF,SAA2B,GAAvC,CAAyBA,SAAc,GAAvC,EAAuC;AAC1D,KAAIA,SAAQL,aAAc,KAAI,QACrBM;AAGT,KAAIA,WAAUX,WAAY,KAAKW,WAAU,GAAGT,OAAOC,KAAMC,yBAAyB,CAAA,QACzEO;AAETA,YAAUZ,KAAK,GAAIc,cAAcH,SAAS,CAAC;AAAA,QACpCC;;AAMf,SAASE,cAAcC,QAAkB;CACvC,MAAMC,YAAwB,EAAE;AAEhC,KAAID,OAAOT,aAAa,KACtB,QAAO,EAAE;AAGXS,QAAOT,SAASR,SAASZ,SAAS;AAChC,MAAI2B,YAAY3B,KAAK,EAAE;AACrB8B,aAAUhB,KAAKd,KAAK;AACpB,OAAIA,KAAKiB,OAAOC,KAAKC,yBAAyB,CAC5C;;AAIJ,MAAInB,KAAKoB,aAAa,MAAM;GAC1B,MAAMW,iBAAiBH,cAAc5B,KAAK;AAC1C8B,aAAUhB,KAAK,GAAGiB,eAAe;AACjC;;GAEF;AACF,QAAOD;;AAGT,SAASH,YAAY3B,MAAyB;AAC5C,QAAOA,KAAKiB,OAAOF,SAAS;;AAG9B,SAASI,yBAAyBa,OAA2B;AAC3D,QAAOA,MAAMC,SAAS,aAAa,CAACD,MAAME"}
1
+ {"version":3,"file":"FlatTreeNode.js","names":["useMemo","ErrorInfo","TreeNode","FlatPlaceholderItem","id","level","placeholder","FlatTreeNodeItem","levelSize","posInLevel","node","FlatTreeItem","isPlaceholderItem","item","useFlatTreeItems","rootNodes","$","_c","t0","getFlatItems","nodes","flatItems","forEach","index","push","length","isExpanded","errors","some","isErrorBlockingExpansion","children","childNodes","useErrorNodes","flatMap","_temp","rootNode","errorNodes","isErrorNode","getErrorNodes","parent","errorList","childErrorList","error","type","isNodeExpandable"],"sources":["../../src/presentation-hierarchies-react/FlatTreeNode.ts"],"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\nimport { useMemo } from \"react\";\n\nimport type { ErrorInfo, TreeNode } from \"./TreeNode.js\";\n\n/**\n * Placeholder item that is added to hierarchy as a child for a parent item while its child items are loading.\n *\n * @alpha\n */\ninterface FlatPlaceholderItem {\n id: string;\n level: number;\n placeholder: true;\n}\n\n/**\n * An item containing `TreeNode` node with properties needed for a flat tree structure.\n *\n * @alpha\n */\nexport interface FlatTreeNodeItem {\n id: string;\n level: number;\n levelSize: number;\n posInLevel: number;\n node: TreeNode;\n}\n\n/**\n * An Item describing single tree item position and its content inside tree.\n * Returned by `useFlatTreeNodeList` hook.\n *\n * @alpha\n */\nexport type FlatTreeItem = FlatTreeNodeItem | FlatPlaceholderItem;\n\n/** @alpha */\nexport function isPlaceholderItem(item: FlatTreeItem): item is FlatPlaceholderItem {\n return \"placeholder\" in item;\n}\n\n/**\n * Used to get a list of `FlatTreeItem` objects for the given list of `TreeNode` objects that represent\n * a hierarchical structure. The resulting items can be used to render the hierarchy in a flat manner, e.g. using a\n * virtualized list.\n *\n * @alpha\n */\nexport function useFlatTreeItems(rootNodes: TreeNode[]) {\n return useMemo(() => getFlatItems(rootNodes, 1), [rootNodes]);\n}\n\nfunction getFlatItems(nodes: TreeNode[], level: number) {\n const flatItems: FlatTreeItem[] = [];\n nodes.forEach((node, index) => {\n flatItems.push({ node, id: node.id, level, levelSize: nodes.length, posInLevel: index + 1 });\n if (!node.isExpanded) {\n return;\n }\n\n if (node.errors.some(isErrorBlockingExpansion)) {\n return;\n }\n\n if (node.children !== true) {\n const childNodes = getFlatItems(node.children, level + 1);\n flatItems.push(...childNodes);\n return;\n }\n\n flatItems.push({\n id: `${node.id}-children-placeholder`,\n level: level + 1,\n placeholder: true,\n } satisfies FlatPlaceholderItem);\n });\n return flatItems;\n}\n\n/**\n * Finds and returns all nodes containing errors in a given hierarchy.\n *\n * @alpha\n */\nexport function useErrorNodes(rootNodes: TreeNode[]): TreeNode[] {\n return useMemo(\n () =>\n rootNodes.flatMap((rootNode) => {\n const errorNodes = isErrorNode(rootNode) ? [rootNode] : [];\n if (rootNode.children === true) {\n return errorNodes;\n }\n\n if (errorNodes.length === 1 && errorNodes[0].errors.some(isErrorBlockingExpansion)) {\n return errorNodes;\n }\n errorNodes.push(...getErrorNodes(rootNode));\n return errorNodes;\n }),\n [rootNodes],\n );\n}\n\nfunction getErrorNodes(parent: TreeNode) {\n const errorList: TreeNode[] = [];\n\n if (parent.children === true) {\n return [];\n }\n\n parent.children.forEach((node) => {\n if (isErrorNode(node)) {\n errorList.push(node);\n if (node.errors.some(isErrorBlockingExpansion)) {\n return;\n }\n }\n\n if (node.children !== true) {\n const childErrorList = getErrorNodes(node);\n errorList.push(...childErrorList);\n return;\n }\n });\n return errorList;\n}\n\nfunction isErrorNode(node: TreeNode): boolean {\n return node.errors.length > 0;\n}\n\nfunction isErrorBlockingExpansion(error: ErrorInfo): boolean {\n return error.type !== \"Unknown\" || !error.isNodeExpandable;\n}\n"],"mappings":";;;AA0CA,SAAgBY,kBAAkBC,MAAiD;CACjF,OAAO,iBAAiBA;AAC1B;;;;;;;;AASA,SAAOC,iBAAAC,WAAA;CAAA,MAAAC,IAAAC,EAAA,CAAA;CAAA,IAAAC;CAAA,IAAAF,EAAA,OAAAD,WAAA;EACgBG,KAAAC,aAAaJ,WAAW,CAAC;EAACC,EAAA,KAAAD;EAAAC,EAAA,KAAAE;CAAA,OAAAA,KAAAF,EAAA;CAAA,OAA1BE;AAA0B;AAGjD,SAASC,aAAaC,OAAmBf,OAAe;CACtD,MAAMgB,YAA4B,CAAA;CAClCD,MAAME,SAASZ,MAAMa,UAAU;EAC7BF,UAAUG,KAAK;GAAEd;GAAMN,IAAIM,KAAKN;GAAIC;GAAOG,WAAWY,MAAMK;GAAQhB,YAAYc,QAAQ;EAAE,CAAC;EAC3F,IAAI,CAACb,KAAKgB,YACR;EAGF,IAAIhB,KAAKiB,OAAOC,KAAKC,wBAAwB,GAC3C;EAGF,IAAInB,KAAKoB,aAAa,MAAM;GAC1B,MAAMC,aAAaZ,aAAaT,KAAKoB,UAAUzB,QAAQ,CAAC;GACxDgB,UAAUG,KAAK,GAAGO,UAAU;GAC5B;EACF;EAEAV,UAAUG,KAAK;GACbpB,IAAI,GAAGM,KAAKN,GAAE;GACdC,OAAOA,QAAQ;GACfC,aAAa;EACf,CAA+B;CACjC,CAAC;CACD,OAAOe;AACT;;;;;;AAOA,SAAOW,cAAAjB,WAAA;CAAA,MAAAC,IAAAC,EAAA,CAAA;CAAA,IAAAC;CAAA,IAAAF,EAAA,OAAAD,WAAA;EAGDG,KAAAH,UAASkB,QAASC,KAWjB;EAAClB,EAAA,KAAAD;EAAAC,EAAA,KAAAE;CAAA,OAAAA,KAAAF,EAAA;CAAA,OAXFE;AAWE;AAdD,SAAAgB,MAAAC,UAAA;CAIC,MAAAC,aAAmBC,YAAYF,QAA0B,IAAtC,CAAyBA,QAAQ,IAAjC,CAAA;CACnB,IAAIA,SAAQL,aAAc,MAAI,OACrBM;CAGT,IAAIA,WAAUX,WAAY,KAAKW,WAAU,EAAG,CAAAT,OAAOC,KAAMC,wBAAwB,GAAC,OACzEO;CAETA,WAAUZ,KAAK,GAAIc,cAAcH,QAAQ,CAAC;CAAC,OACpCC;AAAU;AAMzB,SAASE,cAAcC,QAAkB;CACvC,MAAMC,YAAwB,CAAA;CAE9B,IAAID,OAAOT,aAAa,MACtB,OAAO,CAAA;CAGTS,OAAOT,SAASR,SAASZ,SAAS;EAChC,IAAI2B,YAAY3B,IAAI,GAAG;GACrB8B,UAAUhB,KAAKd,IAAI;GACnB,IAAIA,KAAKiB,OAAOC,KAAKC,wBAAwB,GAC3C;EAEJ;EAEA,IAAInB,KAAKoB,aAAa,MAAM;GAC1B,MAAMW,iBAAiBH,cAAc5B,IAAI;GACzC8B,UAAUhB,KAAK,GAAGiB,cAAc;GAChC;EACF;CACF,CAAC;CACD,OAAOD;AACT;AAEA,SAASH,YAAY3B,MAAyB;CAC5C,OAAOA,KAAKiB,OAAOF,SAAS;AAC9B;AAEA,SAASI,yBAAyBa,OAA2B;CAC3D,OAAOA,MAAMC,SAAS,aAAa,CAACD,MAAME;AAC5C"}
@@ -1,5 +1,4 @@
1
1
  import { JSX, PropsWithChildren } from "react";
2
-
3
2
  //#region src/presentation-hierarchies-react/LocalizationContext.d.ts
4
3
  /**
5
4
  * Properties for `LocalizationContextProvider`.
@@ -15,10 +14,7 @@ interface LocalizationContextProviderProps {
15
14
  * Context provider for localizing components.
16
15
  * @public
17
16
  */
18
- declare function LocalizationContextProvider({
19
- localization,
20
- children
21
- }: PropsWithChildren<LocalizationContextProviderProps>): JSX.Element;
17
+ declare function LocalizationContextProvider({ localization, children }: PropsWithChildren<LocalizationContextProviderProps>): JSX.Element;
22
18
  //#endregion
23
19
  export { LocalizationContextProvider };
24
20
  //# sourceMappingURL=LocalizationContext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LocalizationContext.d.ts","names":[],"sources":["../../src/presentation-hierarchies-react/LocalizationContext.tsx"],"mappings":";;;AAW0C;;;;AAAA,UAQhC,gCAAA;EAEQ;EAAhB,YAAA;IAAgB,kBAAA,GAAqB,GAAA;EAAA;AAAA;;;;;iBAOvB,2BAAA,CAAA;EACd,YAAA;EACA;AAAA,GACC,iBAAA,CAAkB,gCAAA,IAAoC,GAAA,CAAI,OAAA"}
1
+ {"version":3,"file":"LocalizationContext.d.ts","names":[],"sources":["../../src/presentation-hierarchies-react/LocalizationContext.tsx"],"mappings":";;;;;;UAmBU;;EAER;IAAgB,qBAAqB;;;;;;;iBAOvB,8BACd,cACA,YACC,kBAAkB,oCAAoC,IAAI"}
@@ -1 +1 @@
1
- {"version":3,"file":"LocalizationContext.js","names":["createContext","useContext","useMemo","LOCALIZATION_NAMESPACE","JSX","PropsWithChildren","LocalizationKey","TranslateFunc","key","localizationContext","LocalizationContextProviderProps","localization","getLocalizedString","LocalizationContextProvider","t0","$","_c","children","t1","translate","t2","useTranslation"],"sources":["../../src/presentation-hierarchies-react/LocalizationContext.tsx"],"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\nimport { createContext, useContext, useMemo } from \"react\";\nimport { LOCALIZATION_NAMESPACE } from \"./internal/LocalizedStrings.js\";\n\nimport type { JSX, PropsWithChildren } from \"react\";\nimport type { LocalizationKey } from \"./internal/LocalizedStrings.js\";\n\ntype TranslateFunc = (key: LocalizationKey) => string;\n\nconst localizationContext = createContext<TranslateFunc>((key) => key);\n\n/**\n * Properties for `LocalizationContextProvider`.\n * @public\n */\ninterface LocalizationContextProviderProps {\n /** Localization object compatible with `@itwin/core-common` */\n localization: { getLocalizedString: (key: string) => string };\n}\n\n/**\n * Context provider for localizing components.\n * @public\n */\nexport function LocalizationContextProvider({\n localization,\n children,\n}: PropsWithChildren<LocalizationContextProviderProps>): JSX.Element {\n const translate = useMemo<TranslateFunc>(() => {\n return (key: LocalizationKey) => localization.getLocalizedString(`${LOCALIZATION_NAMESPACE}:${key}`);\n }, [localization]);\n return <localizationContext.Provider value={translate}>{children}</localizationContext.Provider>;\n}\n\n/** @internal */\nexport function useTranslation() {\n return useContext(localizationContext);\n}\n"],"mappings":";;;;;AAaA,MAAMS,sBAAsBT,eAA8BQ,QAAQA,IAAI;;;;;AAetE,SAAOK,4BAAAC,IAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAqC,MAAA,EAAAL,cAAAM,aAAAH;CAGU,IAAAI;AAAA,KAAAH,EAAA,OAAAJ,cAAA;AAE3CO,QAAAV,QAA0BG,aAAYC,mBAAoB,GAAGT,uBAAsB,GAAIK,MAAM;AAAAO,IAAA,KAAAJ;AAAAI,IAAA,KAAAG;OAAAA,MAAAH,EAAA;CADtG,MAAAI,YACED;CACiB,IAAAE;AAAA,KAAAL,EAAA,OAAAE,YAAAF,EAAA,OAAAI,WAAA;AACZC,OAAA,oBAAA,oBAAA,UAAA;GAAqCD,OAAAA;GAAYF;GAAwC,CAAA;AAAAF,IAAA,KAAAE;AAAAF,IAAA,KAAAI;AAAAJ,IAAA,KAAAK;OAAAA,MAAAL,EAAA;AAAA,QAAzFK;;;AAIT,SAAOC,iBAAA;AAAA,QACEpB,WAAWQ,oBAAoB"}
1
+ {"version":3,"file":"LocalizationContext.js","names":["createContext","useContext","useMemo","LOCALIZATION_NAMESPACE","JSX","PropsWithChildren","LocalizationKey","TranslateFunc","key","localizationContext","LocalizationContextProviderProps","localization","getLocalizedString","LocalizationContextProvider","t0","$","_c","children","t1","translate","t2","useTranslation"],"sources":["../../src/presentation-hierarchies-react/LocalizationContext.tsx"],"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\nimport { createContext, useContext, useMemo } from \"react\";\nimport { LOCALIZATION_NAMESPACE } from \"./internal/LocalizedStrings.js\";\n\nimport type { JSX, PropsWithChildren } from \"react\";\nimport type { LocalizationKey } from \"./internal/LocalizedStrings.js\";\n\ntype TranslateFunc = (key: LocalizationKey) => string;\n\nconst localizationContext = createContext<TranslateFunc>((key) => key);\n\n/**\n * Properties for `LocalizationContextProvider`.\n * @public\n */\ninterface LocalizationContextProviderProps {\n /** Localization object compatible with `@itwin/core-common` */\n localization: { getLocalizedString: (key: string) => string };\n}\n\n/**\n * Context provider for localizing components.\n * @public\n */\nexport function LocalizationContextProvider({\n localization,\n children,\n}: PropsWithChildren<LocalizationContextProviderProps>): JSX.Element {\n const translate = useMemo<TranslateFunc>(() => {\n return (key: LocalizationKey) => localization.getLocalizedString(`${LOCALIZATION_NAMESPACE}:${key}`);\n }, [localization]);\n return <localizationContext.Provider value={translate}>{children}</localizationContext.Provider>;\n}\n\n/** @internal */\nexport function useTranslation() {\n return useContext(localizationContext);\n}\n"],"mappings":";;;;;AAaA,MAAMS,sBAAsBT,eAA8BQ,QAAQA,GAAG;;;;;AAerE,SAAOK,4BAAAC,IAAA;CAAA,MAAAC,IAAAC,EAAA,CAAA;CAAqC,MAAA,EAAAL,cAAAM,aAAAH;CAGU,IAAAI;CAAA,IAAAH,EAAA,OAAAJ,cAAA;EAE3CO,MAAAV,QAA0BG,aAAYC,mBAAoB,GAAGT,uBAAsB,GAAIK,KAAK;EAACO,EAAA,KAAAJ;EAAAI,EAAA,KAAAG;CAAA,OAAAA,KAAAH,EAAA;CADtG,MAAAI,YACED;CACiB,IAAAE;CAAA,IAAAL,EAAA,OAAAE,YAAAF,EAAA,OAAAI,WAAA;EACZC,KAAA,oBAAA,oBAAA,UAAA;GAAqCD,OAAAA;GAAYF;EAAS,CAAA;EAA+BF,EAAA,KAAAE;EAAAF,EAAA,KAAAI;EAAAJ,EAAA,KAAAK;CAAA,OAAAA,KAAAL,EAAA;CAAA,OAAzFK;AAAyF;;AAIlG,SAAOC,iBAAA;CAAA,OACEpB,WAAWQ,mBAAmB;AAAC"}
@@ -2,7 +2,6 @@ import { ErrorInfo, TreeNode } from "./TreeNode.js";
2
2
  import { SelectionChangeType } from "./UseSelectionHandler.js";
3
3
  import { GenericInstanceFilter, HierarchyNode } from "@itwin/presentation-hierarchies";
4
4
  import { InstanceKey } from "@itwin/presentation-shared";
5
-
6
5
  //#region src/presentation-hierarchies-react/Renderers.d.ts
7
6
  /**
8
7
  * Type definition used to render tree rendering UI component.
@@ -1 +1 @@
1
- {"version":3,"file":"Renderers.d.ts","names":[],"sources":["../../src/presentation-hierarchies-react/Renderers.ts"],"mappings":";;;;;;;;AAcA;;KAAY,iBAAA;EAIC;;;EAAX,SAAA,EAAW,QAAA;EAeU;;;EAXrB,UAAA,GAAa,MAAA,UAAgB,UAAA;EAA7B;;;;;EAMA,WAAA,GAAc,OAAA,EAAS,KAAA,UAAe,UAAA,EAAY,mBAAA;EAAA;;;EAIlD,cAAA,GAAiB,MAAA;AAAA,IACf,mBAAA;;;AAMJ;;KAAY,sBAAA;EAKW;;;EADrB,KAAA,EAAO,SAAA;AAAA,IACL,mBAAA;;AAAoB;;UAKd,mBAAA;EAMuE;;;EAF/E,UAAA,GAAa,OAAA,GAAU,iBAAA;EAEvB;EAAA,wBAAA,GAA2B,MAAA,yBAA+B,qBAAA;AAAA;;;AAAqB;;UAOvE,iBAAA;EAER;EAAA,YAAA;EAiBe;;;;;;;;EAPf,KAAA;AAAA;;;;;UAOe,qBAAA;EAMI;EAJnB,aAAA,EAAe,aAAA;EAGW;EAA1B,uBAAA,GAA0B,KAAA;IACxB,cAAA,GAAiB,qBAAA;IACjB,uBAAA;EAAA,MACI,qBAAA,CAAsB,WAAA;EAKb;EAFf,SAAA;EAKiB;EAHjB,YAAA,GAAe,KAAA;EAKa;EAF5B,cAAA,GAAiB,qBAAA;EAE4C;EAA7D,iBAAA,GAAoB,MAAA,EAAQ,qBAAA;AAAA"}
1
+ {"version":3,"file":"Renderers.d.ts","names":[],"sources":["../../src/presentation-hierarchies-react/Renderers.ts"],"mappings":";;;;;;;;;KAcY;;;;EAIV,WAAW;;;;EAIX,aAAa,gBAAgB;;;;;;EAM7B,cAAc,SAAS,eAAe,YAAY;;;;EAIlD,iBAAiB;IACf;;;;;KAMQ;;;;EAIV,OAAO;IACL;;;;UAKM;;;;EAIR,aAAa,UAAU;;EAEvB,2BAA2B,+BAA+B;;;;;;UAOlD;;EAER;;;;;;;;;EAUA;;;;;;UAOe;;EAEf,eAAe;;EAGf,0BAA0B;IACxB,iBAAiB;IACjB;QACI,sBAAsB;;EAG5B;;EAEA,eAAe;;EAGf,iBAAiB;;EAEjB,oBAAoB,QAAQ"}
@@ -1,5 +1,4 @@
1
1
  import { HierarchyNode } from "@itwin/presentation-hierarchies";
2
-
3
2
  //#region src/presentation-hierarchies-react/TreeNode.d.ts
4
3
  /**
5
4
  * A type that defines an node in a UI tree component, built with `useTree` hook.
@@ -76,5 +75,5 @@ interface GenericErrorInfo {
76
75
  */
77
76
  type ErrorInfo = GenericErrorInfo | ResultSetTooLargeErrorInfo | NoFilterMatchesErrorInfo | ChildrenLoadErrorInfo;
78
77
  //#endregion
79
- export { ErrorInfo, GenericErrorInfo, ResultSetTooLargeErrorInfo, TreeNode };
78
+ export { ChildrenLoadErrorInfo, ErrorInfo, GenericErrorInfo, NoFilterMatchesErrorInfo, ResultSetTooLargeErrorInfo, TreeNode };
80
79
  //# sourceMappingURL=TreeNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TreeNode.d.ts","names":[],"sources":["../../src/presentation-hierarchies-react/TreeNode.ts"],"mappings":";;;;;AAWA;;UAAiB,QAAA;EACf,EAAA;EACA,KAAA;EACA,QAAA,SAAiB,KAAA,CAAM,QAAA;EACvB,UAAA;EACA,SAAA;EACA,YAAA;EACA,UAAA;EALA;EAOA,QAAA,EAAU,aAAA;EANO;EAQjB,MAAA,EAAQ,SAAA;AAAA;;;;;;;UASO,wBAAA;EACf,EAAA;EACA,IAAA;AAAA;;;;;AAUF;;;UAAiB,0BAAA;EACf,EAAA;EACA,IAAA;EACA,kBAAA;AAAA;;AAUF;;;;;;UAAiB,qBAAA;EACf,EAAA;EACA,IAAA;EACA,OAAA;AAAA;;;;;;;;;UAWe,gBAAA;EACf,EAAA;EACA,IAAA;EACA,OAAA;EAaE;EAXF,gBAAA;EACA,cAAA;AAAA;;;;;;;KASU,SAAA,GACR,gBAAA,GACA,0BAAA,GACA,wBAAA,GACA,qBAAA"}
1
+ {"version":3,"file":"TreeNode.d.ts","names":[],"sources":["../../src/presentation-hierarchies-react/TreeNode.ts"],"mappings":";;;;;;UAWiB;EACf;EACA;EACA,iBAAiB,MAAM;EACvB;EACA;EACA;EACA;;EAEA,UAAU;;EAEV,QAAQ;;;;;;;;UASO;EACf;EACA;;;;;;;;;UAUe;EACf;EACA;EACA;;;;;;;;;UAUe;EACf;EACA;EACA;;;;;;;;;;UAWe;EACf;EACA;EACA;;EAEA;EACA;;;;;;;;KASU,YACR,mBACA,6BACA,2BACA"}
@@ -2,7 +2,6 @@ import { UseUnifiedTreeSelectionProps } from "./internal/UseUnifiedSelection.js"
2
2
  import { UseTreeProps, UseTreeResult } from "./UseTree.js";
3
3
  import { HierarchyDefinition, HierarchySearchTree, createIModelHierarchyProvider } from "@itwin/presentation-hierarchies";
4
4
  import { Props } from "@itwin/presentation-shared";
5
-
6
5
  //#region src/presentation-hierarchies-react/UseIModelTree.d.ts
7
6
  /** @public */
8
7
  type IModelHierarchyProviderProps = Props<typeof createIModelHierarchyProvider>;
@@ -1 +1 @@
1
- {"version":3,"file":"UseIModelTree.d.ts","names":[],"sources":["../../src/presentation-hierarchies-react/UseIModelTree.ts"],"mappings":";;;;;;;KAgBK,4BAAA,GAA+B,KAAA,QAAa,6BAAA;;KAG5C,YAAA,GAAe,4BAAA;;;AAH0D;;KASzE,kBAAA,GAAqB,IAAA,CAAK,YAAA,+CAC7B,IAAA,CAAK,4BAAA;EAPa;;AAA4B;EAW5C,sBAAA,GAAyB,KAAA;IAAS,YAAA,EAAc,YAAA;EAAA,MAAmB,mBAAA;EAL7C;;;EAUtB,cAAA,IAAkB,KAAA;IALiD;;;IASjE,YAAA,EAAc,YAAA;IAKV;;;IADJ,WAAA,EAAa,WAAA;EAAA,MACT,OAAA,CAAQ,mBAAA;AAAA;;;;;;;;;;;;;;iBAgBF,aAAA,CAAc,KAAA,EAAO,kBAAA,GAAqB,aAAA;;;AAA1D;;;;;;;;;AAuBA;;;;iBAAgB,6BAAA,CAA8B,KAAA,EAAO,kBAAA,GAAqB,4BAAA,GAA+B,aAAA"}
1
+ {"version":3,"file":"UseIModelTree.d.ts","names":[],"sources":["../../src/presentation-hierarchies-react/UseIModelTree.ts"],"mappings":";;;;;;KAgBK,+BAA+B,aAAa;;KAG5C,eAAe;;;;;KAMf,qBAAqB,KAAK,2DAC7B,KAAK;;;;EAIH,yBAAyB;IAAS,cAAc;QAAmB;;;;EAKnE,kBAAkB;;;;IAIhB,cAAc;;;;IAId,aAAa;QACT,QAAQ;;;;;;;;;;;;;;;iBAgBF,cAAc,OAAO,qBAAqB;;;;;;;;;;;;;;;;iBAuB1C,8BAA8B,OAAO,qBAAqB,+BAA+B"}
@@ -1 +1 @@
1
- {"version":3,"file":"UseIModelTree.js","names":["useCallback","createIModelHierarchyProvider","useTranslation","useTree","useUnifiedSelectionTree","HierarchyDefinition","HierarchySearchTree","Props","UseUnifiedTreeSelectionProps","UseTreeProps","UseTreeResult","IModelHierarchyProviderProps","IModelAccess","UseIModelTreeProps","Omit","Pick","getHierarchyDefinition","props","imodelAccess","getSearchPaths","abortSignal","AbortSignal","Promise","useIModelTree","$","_c","imodelChanged","rest","t0","t1","useIModelTreeProps","t2","useIModelUnifiedSelectionTree","translate","hierarchyDefinition","localizedStrings","other","unspecified","t3","t4","getHierarchyProvider"],"sources":["../../src/presentation-hierarchies-react/UseIModelTree.ts"],"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\nimport { useCallback } from \"react\";\nimport { createIModelHierarchyProvider } from \"@itwin/presentation-hierarchies\";\nimport { useTranslation } from \"./LocalizationContext.js\";\nimport { useTree, useUnifiedSelectionTree } from \"./UseTree.js\";\n\nimport type { HierarchyDefinition, HierarchySearchTree } from \"@itwin/presentation-hierarchies\";\nimport type { Props } from \"@itwin/presentation-shared\";\nimport type { UseUnifiedTreeSelectionProps } from \"./internal/UseUnifiedSelection.js\";\nimport type { UseTreeProps, UseTreeResult } from \"./UseTree.js\";\n\n/** @public */\ntype IModelHierarchyProviderProps = Props<typeof createIModelHierarchyProvider>;\n\n/** @public */\ntype IModelAccess = IModelHierarchyProviderProps[\"imodelAccess\"];\n\n/**\n * Props for `useIModelTree` and `useIModelUnifiedSelectionTree` hooks.\n * @public\n */\ntype UseIModelTreeProps = Omit<UseTreeProps, \"getHierarchyProvider\" | \"getSearchPaths\"> &\n Pick<IModelHierarchyProviderProps, \"imodelAccess\" | \"imodelChanged\"> & {\n /**\n * Provides the hierarchy definition for the tree.\n */\n getHierarchyDefinition: (props: { imodelAccess: IModelAccess }) => HierarchyDefinition;\n\n /**\n * Provides paths to target nodes.\n */\n getSearchPaths?: (props: {\n /**\n * Object that provides access to the iModel schema and can run queries against the iModel.\n */\n imodelAccess: IModelAccess;\n /**\n * Signal indicating that that the request was canceled\n */\n abortSignal: AbortSignal;\n }) => Promise<HierarchySearchTree[] | undefined>;\n };\n\n/**\n * A React hook that creates state for a tree component whose displayed hierarchy is based on\n * iModel data.\n *\n * The hook uses `@itwin/presentation-hierarchies` package to load the hierarchy data and returns a\n * component-agnostic result which may be used to render the hierarchy using any UI framework.\n *\n * See `README.md` for an example\n *\n * @see `useTree`\n * @see `useIModelUnifiedSelectionTree`\n * @public\n */\nexport function useIModelTree(props: UseIModelTreeProps): UseTreeResult {\n const { imodelAccess, imodelChanged, getHierarchyDefinition, getSearchPaths, ...rest } = props;\n return useTree({\n ...rest,\n ...useIModelTreeProps({ imodelAccess, imodelChanged, getHierarchyDefinition, getSearchPaths }),\n });\n}\n\n/**\n * A React hook that creates state for a tree component whose displayed hierarchy is based on\n * iModel data and that is integrated with unified selection through the given selection\n * storage (previously the storage was provided through the, now deprecated, `UnifiedSelectionProvider`).\n *\n * The hook uses `@itwin/presentation-hierarchies` package to load the hierarchy data and returns a\n * component-agnostic result which may be used to render the hierarchy using any UI framework.\n *\n * See `README.md` for an example\n *\n * @see `useIModelTree`\n * @see `useUnifiedSelectionTree`\n * @see `UnifiedSelectionProvider`\n * @public\n */\nexport function useIModelUnifiedSelectionTree(props: UseIModelTreeProps & UseUnifiedTreeSelectionProps): UseTreeResult {\n const { imodelAccess, imodelChanged, getHierarchyDefinition, getSearchPaths, ...rest } = props;\n return useUnifiedSelectionTree({\n ...rest,\n ...useIModelTreeProps({ imodelAccess, imodelChanged, getHierarchyDefinition, getSearchPaths }),\n });\n}\n\nfunction useIModelTreeProps(\n props: Pick<UseIModelTreeProps, \"imodelAccess\" | \"imodelChanged\" | \"getHierarchyDefinition\" | \"getSearchPaths\">,\n): Pick<UseTreeProps, \"getHierarchyProvider\" | \"getSearchPaths\"> {\n const { imodelAccess, imodelChanged, getHierarchyDefinition, getSearchPaths } = props;\n const translate = useTranslation();\n return {\n getHierarchyProvider: useCallback(\n () =>\n createIModelHierarchyProvider({\n imodelAccess,\n imodelChanged,\n hierarchyDefinition: getHierarchyDefinition({ imodelAccess }),\n localizedStrings: { other: translate(\"other\"), unspecified: translate(\"unspecified\") },\n }),\n [imodelAccess, imodelChanged, translate, getHierarchyDefinition],\n ),\n getSearchPaths: useCallback(\n async ({ abortSignal }: { abortSignal: AbortSignal }) => getSearchPaths?.({ imodelAccess, abortSignal }),\n [imodelAccess, getSearchPaths],\n ),\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"UseIModelTree.js","names":["useCallback","createIModelHierarchyProvider","useTranslation","useTree","useUnifiedSelectionTree","HierarchyDefinition","HierarchySearchTree","Props","UseUnifiedTreeSelectionProps","UseTreeProps","UseTreeResult","IModelHierarchyProviderProps","IModelAccess","UseIModelTreeProps","Omit","Pick","getHierarchyDefinition","props","imodelAccess","getSearchPaths","abortSignal","AbortSignal","Promise","useIModelTree","$","_c","imodelChanged","rest","t0","t1","useIModelTreeProps","t2","useIModelUnifiedSelectionTree","translate","hierarchyDefinition","localizedStrings","other","unspecified","t3","t4","getHierarchyProvider"],"sources":["../../src/presentation-hierarchies-react/UseIModelTree.ts"],"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\nimport { useCallback } from \"react\";\nimport { createIModelHierarchyProvider } from \"@itwin/presentation-hierarchies\";\nimport { useTranslation } from \"./LocalizationContext.js\";\nimport { useTree, useUnifiedSelectionTree } from \"./UseTree.js\";\n\nimport type { HierarchyDefinition, HierarchySearchTree } from \"@itwin/presentation-hierarchies\";\nimport type { Props } from \"@itwin/presentation-shared\";\nimport type { UseUnifiedTreeSelectionProps } from \"./internal/UseUnifiedSelection.js\";\nimport type { UseTreeProps, UseTreeResult } from \"./UseTree.js\";\n\n/** @public */\ntype IModelHierarchyProviderProps = Props<typeof createIModelHierarchyProvider>;\n\n/** @public */\ntype IModelAccess = IModelHierarchyProviderProps[\"imodelAccess\"];\n\n/**\n * Props for `useIModelTree` and `useIModelUnifiedSelectionTree` hooks.\n * @public\n */\ntype UseIModelTreeProps = Omit<UseTreeProps, \"getHierarchyProvider\" | \"getSearchPaths\"> &\n Pick<IModelHierarchyProviderProps, \"imodelAccess\" | \"imodelChanged\"> & {\n /**\n * Provides the hierarchy definition for the tree.\n */\n getHierarchyDefinition: (props: { imodelAccess: IModelAccess }) => HierarchyDefinition;\n\n /**\n * Provides paths to target nodes.\n */\n getSearchPaths?: (props: {\n /**\n * Object that provides access to the iModel schema and can run queries against the iModel.\n */\n imodelAccess: IModelAccess;\n /**\n * Signal indicating that that the request was canceled\n */\n abortSignal: AbortSignal;\n }) => Promise<HierarchySearchTree[] | undefined>;\n };\n\n/**\n * A React hook that creates state for a tree component whose displayed hierarchy is based on\n * iModel data.\n *\n * The hook uses `@itwin/presentation-hierarchies` package to load the hierarchy data and returns a\n * component-agnostic result which may be used to render the hierarchy using any UI framework.\n *\n * See `README.md` for an example\n *\n * @see `useTree`\n * @see `useIModelUnifiedSelectionTree`\n * @public\n */\nexport function useIModelTree(props: UseIModelTreeProps): UseTreeResult {\n const { imodelAccess, imodelChanged, getHierarchyDefinition, getSearchPaths, ...rest } = props;\n return useTree({\n ...rest,\n ...useIModelTreeProps({ imodelAccess, imodelChanged, getHierarchyDefinition, getSearchPaths }),\n });\n}\n\n/**\n * A React hook that creates state for a tree component whose displayed hierarchy is based on\n * iModel data and that is integrated with unified selection through the given selection\n * storage (previously the storage was provided through the, now deprecated, `UnifiedSelectionProvider`).\n *\n * The hook uses `@itwin/presentation-hierarchies` package to load the hierarchy data and returns a\n * component-agnostic result which may be used to render the hierarchy using any UI framework.\n *\n * See `README.md` for an example\n *\n * @see `useIModelTree`\n * @see `useUnifiedSelectionTree`\n * @see `UnifiedSelectionProvider`\n * @public\n */\nexport function useIModelUnifiedSelectionTree(props: UseIModelTreeProps & UseUnifiedTreeSelectionProps): UseTreeResult {\n const { imodelAccess, imodelChanged, getHierarchyDefinition, getSearchPaths, ...rest } = props;\n return useUnifiedSelectionTree({\n ...rest,\n ...useIModelTreeProps({ imodelAccess, imodelChanged, getHierarchyDefinition, getSearchPaths }),\n });\n}\n\nfunction useIModelTreeProps(\n props: Pick<UseIModelTreeProps, \"imodelAccess\" | \"imodelChanged\" | \"getHierarchyDefinition\" | \"getSearchPaths\">,\n): Pick<UseTreeProps, \"getHierarchyProvider\" | \"getSearchPaths\"> {\n const { imodelAccess, imodelChanged, getHierarchyDefinition, getSearchPaths } = props;\n const translate = useTranslation();\n return {\n getHierarchyProvider: useCallback(\n () =>\n createIModelHierarchyProvider({\n imodelAccess,\n imodelChanged,\n hierarchyDefinition: getHierarchyDefinition({ imodelAccess }),\n localizedStrings: { other: translate(\"other\"), unspecified: translate(\"unspecified\") },\n }),\n [imodelAccess, imodelChanged, translate, getHierarchyDefinition],\n ),\n getSearchPaths: useCallback(\n async ({ abortSignal }: { abortSignal: AbortSignal }) => getSearchPaths?.({ imodelAccess, abortSignal }),\n [imodelAccess, getSearchPaths],\n ),\n };\n}\n"],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import { TreeNode } from "./TreeNode.js";
2
2
  import { ReactElement } from "react";
3
-
4
3
  //#region src/presentation-hierarchies-react/UseNodeHighlighting.d.ts
5
4
  /**
6
5
  * Props for `useNodeHighlighting` hook.
@@ -22,9 +21,7 @@ interface UseNodeHighlightingResult {
22
21
  * A react hook that helps create highlighted node labels based on provided highlight.
23
22
  * @alpha
24
23
  */
25
- declare function useNodeHighlighting({
26
- highlightText
27
- }: UseNodeHighlightingProps): UseNodeHighlightingResult;
24
+ declare function useNodeHighlighting({ highlightText }: UseNodeHighlightingProps): UseNodeHighlightingResult;
28
25
  //#endregion
29
26
  export { useNodeHighlighting };
30
27
  //# sourceMappingURL=UseNodeHighlighting.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UseNodeHighlighting.d.ts","names":[],"sources":["../../src/presentation-hierarchies-react/UseNodeHighlighting.tsx"],"mappings":";;;;;;AAS8C;;UAMpC,wBAAA;EAER;EAAA,aAAA;AAAA;;;;;UAOQ,yBAAA;EAEG;EAAX,QAAA,GAAW,IAAA,EAAM,QAAA,KAAa,YAAA;AAAA;;AAOhC;;;iBAAgB,mBAAA,CAAA;EAAsB;AAAA,GAAiB,wBAAA,GAA2B,yBAAA"}
1
+ {"version":3,"file":"UseNodeHighlighting.d.ts","names":[],"sources":["../../src/presentation-hierarchies-react/UseNodeHighlighting.tsx"],"mappings":";;;;;;;UAeU;;EAER;;;;;;UAOQ;;EAER,WAAW,MAAM,aAAa;;;;;;iBAOhB,sBAAsB,iBAAiB,2BAA2B"}
@@ -1 +1 @@
1
- {"version":3,"file":"UseNodeHighlighting.js","names":["useCallback","HierarchyNode","JSX","ReactElement","TreeNode","UseNodeHighlightingProps","highlightText","UseNodeHighlightingResult","getLabel","node","useNodeHighlighting","t0","$","_c","t1","isGroupingNode","nodeData","search","isSearchTarget","label","matchedIndexes","Array","nodeLabel","toLocaleLowerCase","searchText","fromPosition","foundIndex","indexOf","push","length","finalLabel","lastAddedPosition","i","matchedIndex","substring","endingPlace","t2"],"sources":["../../src/presentation-hierarchies-react/UseNodeHighlighting.tsx"],"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\nimport { useCallback } from \"react\";\nimport { HierarchyNode } from \"@itwin/presentation-hierarchies\";\n\nimport type { JSX, ReactElement } from \"react\";\nimport type { TreeNode } from \"./TreeNode.js\";\n\n/**\n * Props for `useNodeHighlighting` hook.\n * @alpha\n */\ninterface UseNodeHighlightingProps {\n /** Text that should be highlighted */\n highlightText?: string;\n}\n\n/**\n * Result of `useNodeHighlighting` hook.\n * @alpha\n */\ninterface UseNodeHighlightingResult {\n /** Function that creates highlighted node labels. */\n getLabel: (node: TreeNode) => ReactElement;\n}\n\n/**\n * A react hook that helps create highlighted node labels based on provided highlight.\n * @alpha\n */\nexport function useNodeHighlighting({ highlightText }: UseNodeHighlightingProps): UseNodeHighlightingResult {\n const getLabel = useCallback(\n (node: TreeNode) => {\n if (!highlightText || HierarchyNode.isGroupingNode(node.nodeData) || !node.nodeData.search?.isSearchTarget) {\n return <span>{node.label}</span>;\n }\n\n const matchedIndexes = new Array<number>();\n const nodeLabel = node.label.toLocaleLowerCase();\n const searchText = highlightText.toLocaleLowerCase();\n let fromPosition = 0;\n // Find all occurrences of the search text in the node label\n while (true) {\n const foundIndex = nodeLabel.indexOf(searchText, fromPosition);\n if (foundIndex === -1) {\n break;\n }\n matchedIndexes.push(foundIndex);\n fromPosition = foundIndex + searchText.length;\n }\n\n if (matchedIndexes.length === 0) {\n return <span>{node.label}</span>;\n }\n\n // Create the final label with highlighted parts\n const finalLabel = new Array<JSX.Element>();\n let lastAddedPosition = 0;\n for (let i = 0; i < matchedIndexes.length; ++i) {\n const matchedIndex = matchedIndexes[i];\n if (matchedIndex > lastAddedPosition) {\n finalLabel.push(<span key={`normal-${i}`}>{node.label.substring(lastAddedPosition, matchedIndex)}</span>);\n lastAddedPosition = matchedIndex;\n }\n const endingPlace = matchedIndex + highlightText.length;\n finalLabel.push(<mark key={`marked-${i}`}>{node.label.substring(lastAddedPosition, endingPlace)}</mark>);\n lastAddedPosition = endingPlace;\n }\n if (lastAddedPosition < node.label.length) {\n finalLabel.push(\n <span key={`normal-${matchedIndexes.length + 1}`}>{node.label.substring(lastAddedPosition)}</span>,\n );\n }\n\n return <>{finalLabel}</>;\n },\n [highlightText],\n );\n\n return { getLabel };\n}\n"],"mappings":";;;;;;;;AAiCA,SAAOU,oBAAAC,IAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAA6B,MAAA,EAAAP,kBAAAK;CAA2C,IAAAG;AAAA,KAAAF,EAAA,OAAAN,eAAA;AAE3EQ,QAAAL,SAAA;AACE,OAAI,CAACH,iBAAiBL,cAAac,eAAgBN,KAAIO,SAAmD,IAAtG,CAAkEP,KAAIO,SAASC,QAAuBC,eAAA,QACjG,oBAAA,QAAA,EAAA,UAAOT,KAAIU,OAAc,CAAA;GAGlC,MAAAC,iBAAuB,IAAIC,OAAe;GAC1C,MAAAC,YAAkBb,KAAIU,MAAMI,mBAAoB;GAChD,MAAAC,aAAmBlB,cAAaiB,mBAAoB;GACpD,IAAAE,eAAmB;AAEnB,UAAO,MAAI;IACT,MAAAC,aAAmBJ,UAASK,QAASH,YAAYC,aAAa;AAC9D,QAAIC,eAAe,GACjB;AAEFN,mBAAcQ,KAAMF,WAAW;AAC/BD,mBAAeC,aAAaF,WAAUK;;AAGxC,OAAIT,eAAcS,WAAY,EAAC,QACtB,oBAAA,QAAA,EAAA,UAAOpB,KAAIU,OAAc,CAAA;GAIlC,MAAAW,aAAmB,IAAIT,OAAoB;GAC3C,IAAAU,oBAAwB;AACxB,QAAA,IAAAC,IAAa,GAAGA,IAAIZ,eAAcS,QAAS,EAAEG,GAAC;IAC5C,MAAAC,eAAqBb,eAAeY;AACpC,QAAIC,eAAeF,mBAAiB;AAClCD,gBAAUF,KAAM,oBAAA,QAAA,EAAA,UAA2BnB,KAAIU,MAAMe,UAAWH,mBAAmBE,aAAY,EAAS,EAA7E,UAAUD,IAAmE,CAAC;AACzGD,yBAAoBE;;IAEtB,MAAAE,cAAoBF,eAAe3B,cAAauB;AAChDC,eAAUF,KAAM,oBAAA,QAAA,EAAA,UAA2BnB,KAAIU,MAAMe,UAAWH,mBAAmBI,YAAW,EAAS,EAA5E,UAAUH,IAAkE,CAAC;AACxGD,wBAAoBI;;AAEtB,OAAIJ,oBAAoBtB,KAAIU,MAAMU,OAChCC,YAAUF,KACR,oBAAA,QAAA,EAAA,UAAmDnB,KAAIU,MAAMe,UAAWH,kBAAiB,EAC3F,EADa,UAAUX,eAAcS,SAAU,IAC/C,CAAC;AACF,UAEM,oBAAA,UAAA,EAAA,UAAGC,YAAc,CAAA;;AACzBlB,IAAA,KAAAN;AAAAM,IAAA,KAAAE;OAAAA,MAAAF,EAAA;CA5CH,MAAAJ,WAAiBM;CA8Cf,IAAAsB;AAAA,KAAAxB,EAAA,OAAAJ,UAAA;AAEK4B,OAAA,EAAA5B,UAAY;AAAAI,IAAA,KAAAJ;AAAAI,IAAA,KAAAwB;OAAAA,MAAAxB,EAAA;AAAA,QAAZwB"}
1
+ {"version":3,"file":"UseNodeHighlighting.js","names":["useCallback","HierarchyNode","JSX","ReactElement","TreeNode","UseNodeHighlightingProps","highlightText","UseNodeHighlightingResult","getLabel","node","useNodeHighlighting","t0","$","_c","t1","isGroupingNode","nodeData","search","isSearchTarget","label","matchedIndexes","Array","nodeLabel","toLocaleLowerCase","searchText","fromPosition","foundIndex","indexOf","push","length","finalLabel","lastAddedPosition","i","matchedIndex","substring","endingPlace","t2"],"sources":["../../src/presentation-hierarchies-react/UseNodeHighlighting.tsx"],"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\nimport { useCallback } from \"react\";\nimport { HierarchyNode } from \"@itwin/presentation-hierarchies\";\n\nimport type { JSX, ReactElement } from \"react\";\nimport type { TreeNode } from \"./TreeNode.js\";\n\n/**\n * Props for `useNodeHighlighting` hook.\n * @alpha\n */\ninterface UseNodeHighlightingProps {\n /** Text that should be highlighted */\n highlightText?: string;\n}\n\n/**\n * Result of `useNodeHighlighting` hook.\n * @alpha\n */\ninterface UseNodeHighlightingResult {\n /** Function that creates highlighted node labels. */\n getLabel: (node: TreeNode) => ReactElement;\n}\n\n/**\n * A react hook that helps create highlighted node labels based on provided highlight.\n * @alpha\n */\nexport function useNodeHighlighting({ highlightText }: UseNodeHighlightingProps): UseNodeHighlightingResult {\n const getLabel = useCallback(\n (node: TreeNode) => {\n if (!highlightText || HierarchyNode.isGroupingNode(node.nodeData) || !node.nodeData.search?.isSearchTarget) {\n return <span>{node.label}</span>;\n }\n\n const matchedIndexes = new Array<number>();\n const nodeLabel = node.label.toLocaleLowerCase();\n const searchText = highlightText.toLocaleLowerCase();\n let fromPosition = 0;\n // Find all occurrences of the search text in the node label\n while (true) {\n const foundIndex = nodeLabel.indexOf(searchText, fromPosition);\n if (foundIndex === -1) {\n break;\n }\n matchedIndexes.push(foundIndex);\n fromPosition = foundIndex + searchText.length;\n }\n\n if (matchedIndexes.length === 0) {\n return <span>{node.label}</span>;\n }\n\n // Create the final label with highlighted parts\n const finalLabel = new Array<JSX.Element>();\n let lastAddedPosition = 0;\n for (let i = 0; i < matchedIndexes.length; ++i) {\n const matchedIndex = matchedIndexes[i];\n if (matchedIndex > lastAddedPosition) {\n finalLabel.push(<span key={`normal-${i}`}>{node.label.substring(lastAddedPosition, matchedIndex)}</span>);\n lastAddedPosition = matchedIndex;\n }\n const endingPlace = matchedIndex + highlightText.length;\n finalLabel.push(<mark key={`marked-${i}`}>{node.label.substring(lastAddedPosition, endingPlace)}</mark>);\n lastAddedPosition = endingPlace;\n }\n if (lastAddedPosition < node.label.length) {\n finalLabel.push(\n <span key={`normal-${matchedIndexes.length + 1}`}>{node.label.substring(lastAddedPosition)}</span>,\n );\n }\n\n return <>{finalLabel}</>;\n },\n [highlightText],\n );\n\n return { getLabel };\n}\n"],"mappings":";;;;;;;;AAiCA,SAAOU,oBAAAC,IAAA;CAAA,MAAAC,IAAAC,EAAA,CAAA;CAA6B,MAAA,EAAAP,kBAAAK;CAA2C,IAAAG;CAAA,IAAAF,EAAA,OAAAN,eAAA;EAE3EQ,MAAAL,SAAA;GACE,IAAI,CAACH,iBAAiBL,cAAac,eAAgBN,KAAIO,QAAS,KAA5D,CAAkEP,KAAIO,SAASC,QAAuBC,gBAAA,OACjG,oBAAA,QAAA,EAAA,UAAOT,KAAIU,MAAc,CAAA;GAGlC,MAAAC,iBAAuB,IAAIC,MAAc;GACzC,MAAAC,YAAkBb,KAAIU,MAAMI,kBAAmB;GAC/C,MAAAC,aAAmBlB,cAAaiB,kBAAmB;GACnD,IAAAE,eAAmB;GAEnB,OAAO,MAAI;IACT,MAAAC,aAAmBJ,UAASK,QAASH,YAAYC,YAAY;IAC7D,IAAIC,eAAe,IACjB;IAEFN,eAAcQ,KAAMF,UAAU;IAC9BD,eAAeC,aAAaF,WAAUK;GAA1B;GAGd,IAAIT,eAAcS,WAAY,GAAC,OACtB,oBAAA,QAAA,EAAA,UAAOpB,KAAIU,MAAc,CAAA;GAIlC,MAAAW,aAAmB,IAAIT,MAAmB;GAC1C,IAAAU,oBAAwB;GACxB,KAAA,IAAAC,IAAa,GAAGA,IAAIZ,eAAcS,QAAS,EAAEG,GAAC;IAC5C,MAAAC,eAAqBb,eAAeY;IACpC,IAAIC,eAAeF,mBAAiB;KAClCD,WAAUF,KAAM,oBAAA,QAAA,EAAA,UAA2BnB,KAAIU,MAAMe,UAAWH,mBAAmBE,YAAY,EAAS,GAA7E,UAAUD,GAAmE,CAAA;KACxGD,oBAAoBE;IAAH;IAEnB,MAAAE,cAAoBF,eAAe3B,cAAauB;IAChDC,WAAUF,KAAM,oBAAA,QAAA,EAAA,UAA2BnB,KAAIU,MAAMe,UAAWH,mBAAmBI,WAAW,EAAS,GAA5E,UAAUH,GAAkE,CAAA;IACvGD,oBAAoBI;GAAH;GAEnB,IAAIJ,oBAAoBtB,KAAIU,MAAMU,QAChCC,WAAUF,KACR,oBAAA,QAAA,EAAA,UAAmDnB,KAAIU,MAAMe,UAAWH,iBAAiB,EAAS,GAAvF,UAAUX,eAAcS,SAAU,GAAqD,CACpG;GACD,OAEM,oBAAA,UAAA,EAAA,UAAGC,WAAU,CAAA;EAAI;EACzBlB,EAAA,KAAAN;EAAAM,EAAA,KAAAE;CAAA,OAAAA,KAAAF,EAAA;CA5CH,MAAAJ,WAAiBM;CA8Cf,IAAAsB;CAAA,IAAAxB,EAAA,OAAAJ,UAAA;EAEK4B,KAAA,EAAA5B,SAAW;EAACI,EAAA,KAAAJ;EAAAI,EAAA,KAAAwB;CAAA,OAAAA,KAAAxB,EAAA;CAAA,OAAZwB;AAAY"}
@@ -1,3 +1,4 @@
1
+ import "./Renderers.js";
1
2
  //#region src/presentation-hierarchies-react/UseSelectionHandler.d.ts
2
3
  /**
3
4
  * A union of different supported selection modes in a tree component:
@@ -1 +1 @@
1
- {"version":3,"file":"UseSelectionHandler.d.ts","names":[],"sources":["../../src/presentation-hierarchies-react/UseSelectionHandler.ts"],"mappings":";;;AAmBA;;;;;AAUA;;KAVY,aAAA;;;;;;;;;KAUA,mBAAA"}
1
+ {"version":3,"file":"UseSelectionHandler.d.ts","names":[],"sources":["../../src/presentation-hierarchies-react/UseSelectionHandler.ts"],"mappings":";;;;;;;;;;;KAmBY;;;;;;;;;KAUA"}