@itwin/presentation-shared 2.0.0-alpha.10 → 2.0.0-alpha.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/CHANGELOG.md +120 -0
  2. package/lib/cjs/presentation-shared.d.ts +3 -3
  3. package/lib/cjs/presentation-shared.d.ts.map +1 -1
  4. package/lib/cjs/presentation-shared.js +1 -2
  5. package/lib/cjs/presentation-shared.js.map +1 -1
  6. package/lib/cjs/shared/ECSqlCore.d.ts +6 -1
  7. package/lib/cjs/shared/ECSqlCore.d.ts.map +1 -1
  8. package/lib/cjs/shared/Metadata.d.ts +212 -1
  9. package/lib/cjs/shared/Metadata.d.ts.map +1 -1
  10. package/lib/cjs/shared/Metadata.js.map +1 -1
  11. package/lib/cjs/shared/Utils.d.ts.map +1 -1
  12. package/lib/cjs/shared/Utils.js +16 -4
  13. package/lib/cjs/shared/Utils.js.map +1 -1
  14. package/lib/cjs/shared/Values.d.ts +24 -10
  15. package/lib/cjs/shared/Values.d.ts.map +1 -1
  16. package/lib/cjs/shared/Values.js +1 -5
  17. package/lib/cjs/shared/Values.js.map +1 -1
  18. package/lib/cjs/shared/ecsql-snippets/ECSqlJoinSnippets.d.ts +19 -4
  19. package/lib/cjs/shared/ecsql-snippets/ECSqlJoinSnippets.d.ts.map +1 -1
  20. package/lib/cjs/shared/ecsql-snippets/ECSqlJoinSnippets.js +46 -13
  21. package/lib/cjs/shared/ecsql-snippets/ECSqlJoinSnippets.js.map +1 -1
  22. package/lib/cjs/shared/ecsql-snippets/ECSqlValueSelectorSnippets.d.ts +8 -0
  23. package/lib/cjs/shared/ecsql-snippets/ECSqlValueSelectorSnippets.d.ts.map +1 -1
  24. package/lib/cjs/shared/ecsql-snippets/ECSqlValueSelectorSnippets.js +13 -0
  25. package/lib/cjs/shared/ecsql-snippets/ECSqlValueSelectorSnippets.js.map +1 -1
  26. package/lib/cjs/shared/ecsql-snippets/index.d.ts +1 -1
  27. package/lib/cjs/shared/ecsql-snippets/index.d.ts.map +1 -1
  28. package/lib/cjs/shared/ecsql-snippets/index.js +2 -1
  29. package/lib/cjs/shared/ecsql-snippets/index.js.map +1 -1
  30. package/lib/cjs/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.d.ts.map +1 -1
  31. package/lib/cjs/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.js +8 -5
  32. package/lib/cjs/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.js.map +1 -1
  33. package/lib/cjs/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.d.ts.map +1 -1
  34. package/lib/cjs/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.js +5 -4
  35. package/lib/cjs/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.js.map +1 -1
  36. package/lib/cjs/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.d.ts.map +1 -1
  37. package/lib/cjs/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.js +5 -4
  38. package/lib/cjs/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.js.map +1 -1
  39. package/lib/cjs/shared/instance-label-factory-impls/Utils.d.ts +1 -0
  40. package/lib/cjs/shared/instance-label-factory-impls/Utils.d.ts.map +1 -1
  41. package/lib/cjs/shared/instance-label-factory-impls/Utils.js +2 -0
  42. package/lib/cjs/shared/instance-label-factory-impls/Utils.js.map +1 -1
  43. package/lib/esm/presentation-shared.d.ts +3 -3
  44. package/lib/esm/presentation-shared.d.ts.map +1 -1
  45. package/lib/esm/presentation-shared.js +1 -2
  46. package/lib/esm/presentation-shared.js.map +1 -1
  47. package/lib/esm/shared/ECSqlCore.d.ts +6 -1
  48. package/lib/esm/shared/ECSqlCore.d.ts.map +1 -1
  49. package/lib/esm/shared/Metadata.d.ts +212 -1
  50. package/lib/esm/shared/Metadata.d.ts.map +1 -1
  51. package/lib/esm/shared/Metadata.js.map +1 -1
  52. package/lib/esm/shared/Utils.d.ts.map +1 -1
  53. package/lib/esm/shared/Utils.js +16 -4
  54. package/lib/esm/shared/Utils.js.map +1 -1
  55. package/lib/esm/shared/Values.d.ts +24 -10
  56. package/lib/esm/shared/Values.d.ts.map +1 -1
  57. package/lib/esm/shared/Values.js +1 -5
  58. package/lib/esm/shared/Values.js.map +1 -1
  59. package/lib/esm/shared/ecsql-snippets/ECSqlJoinSnippets.d.ts +19 -4
  60. package/lib/esm/shared/ecsql-snippets/ECSqlJoinSnippets.d.ts.map +1 -1
  61. package/lib/esm/shared/ecsql-snippets/ECSqlJoinSnippets.js +46 -13
  62. package/lib/esm/shared/ecsql-snippets/ECSqlJoinSnippets.js.map +1 -1
  63. package/lib/esm/shared/ecsql-snippets/ECSqlValueSelectorSnippets.d.ts +8 -0
  64. package/lib/esm/shared/ecsql-snippets/ECSqlValueSelectorSnippets.d.ts.map +1 -1
  65. package/lib/esm/shared/ecsql-snippets/ECSqlValueSelectorSnippets.js +12 -0
  66. package/lib/esm/shared/ecsql-snippets/ECSqlValueSelectorSnippets.js.map +1 -1
  67. package/lib/esm/shared/ecsql-snippets/index.d.ts +1 -1
  68. package/lib/esm/shared/ecsql-snippets/index.d.ts.map +1 -1
  69. package/lib/esm/shared/ecsql-snippets/index.js +1 -1
  70. package/lib/esm/shared/ecsql-snippets/index.js.map +1 -1
  71. package/lib/esm/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.d.ts.map +1 -1
  72. package/lib/esm/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.js +9 -6
  73. package/lib/esm/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.js.map +1 -1
  74. package/lib/esm/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.d.ts.map +1 -1
  75. package/lib/esm/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.js +6 -5
  76. package/lib/esm/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.js.map +1 -1
  77. package/lib/esm/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.d.ts.map +1 -1
  78. package/lib/esm/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.js +4 -3
  79. package/lib/esm/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.js.map +1 -1
  80. package/lib/esm/shared/instance-label-factory-impls/Utils.d.ts +1 -0
  81. package/lib/esm/shared/instance-label-factory-impls/Utils.d.ts.map +1 -1
  82. package/lib/esm/shared/instance-label-factory-impls/Utils.js +1 -0
  83. package/lib/esm/shared/instance-label-factory-impls/Utils.js.map +1 -1
  84. package/package.json +8 -8
package/CHANGELOG.md CHANGED
@@ -1,5 +1,94 @@
1
1
  # @itwin/presentation-shared
2
2
 
3
+ ## 2.0.0-alpha.11
4
+
5
+ ### Major Changes
6
+
7
+ - [#1445](https://github.com/iTwin/presentation/pull/1445): `EC.Class`: Added `getOwnProperties` method that returns only the properties defined directly on the class, excluding those inherited from base classes.
8
+ - [#1360](https://github.com/iTwin/presentation/pull/1360): `createRelationshipPathJoinClause` now returns `{ joins: string; bindings?: Record<string, ECSqlBinding> }` instead of a plain `string`. Callers must be updated to read the SQL clause from the `joins` property:
9
+
10
+ ```ts
11
+ // Before
12
+ const joinClause = await createRelationshipPathJoinClause({
13
+ schemaProvider,
14
+ path,
15
+ });
16
+
17
+ // After
18
+ const { joins: joinClause, bindings } =
19
+ await createRelationshipPathJoinClause({ schemaProvider, path });
20
+ ```
21
+
22
+ `RelationshipPathStep` now accepts an optional `instanceFilter` attribute. When provided, the resolved expression is appended as an `AND` condition to the relevant JOIN's `ON` clause. ECSQL parameter bindings declared in `instanceFilter.bindings` are collected across all steps and returned in the `bindings` field of the result.
23
+
24
+ - [#1350](https://github.com/iTwin/presentation/pull/1350): `ECSqlQueryDef.bindings` is now `ECSqlBinding[] | Record<string, ECSqlBinding>` (previously `ECSqlBinding[]`). This is non-breaking for consumers who only define queries, but breaking for code that reads or forwards bindings (e.g., custom `ECSqlQueryExecutor` implementations) because it must now handle both formats.
25
+
26
+ Migration example:
27
+
28
+ ```ts
29
+ // Before
30
+ function handleBindings(bindings: ECSqlBinding[]) {
31
+ bindings.forEach((b, i) => bind(i + 1, b));
32
+ }
33
+
34
+ // After
35
+ function handleBindings(
36
+ bindings: ECSqlBinding[] | Record<string, ECSqlBinding>
37
+ ) {
38
+ const entries: Array<[string | number, ECSqlBinding]> = Array.isArray(
39
+ bindings
40
+ )
41
+ ? bindings.map((b, i) => [i + 1, b])
42
+ : Object.entries(bindings);
43
+ for (const [key, b] of entries) {
44
+ bind(key, b);
45
+ }
46
+ }
47
+ ```
48
+
49
+ Alternatively, update to the latest `@itwin/presentation-core-interop` which handles both binding formats out of the box.
50
+
51
+ - [#1444](https://github.com/iTwin/presentation/pull/1444): `EC.Property`: Added `category` attribute that provides access to the property's `EC.PropertyCategory`. Also added a `description` attribute to `EC.SchemaItem`.
52
+ - [#1363](https://github.com/iTwin/presentation/pull/1363): Add `version` property to `EC.Schema` interface. Any code that manually implements the `EC.Schema` interface must now provide a `version: { read: number; write: number; minor: number }` object matching the EC schema version format `"read.write.minor"`.
53
+
54
+ Consumers who obtain `EC.Schema` objects exclusively through `createECSchemaProvider` from `@itwin/presentation-core-interop` are unaffected — upgrading to the latest `@itwin/presentation-core-interop` is sufficient.
55
+
56
+ Migration example for custom `EC.Schema` implementations:
57
+
58
+ ```ts
59
+ // Before
60
+ const schema: EC.Schema = {
61
+ name: "MySchema",
62
+ getClass: async () => undefined,
63
+ getCustomAttributes: async () => new Map(),
64
+ };
65
+
66
+ // After
67
+ const schema: EC.Schema = {
68
+ name: "MySchema",
69
+ version: { read: 1, write: 0, minor: 0 },
70
+ getClass: async () => undefined,
71
+ getCustomAttributes: async () => new Map(),
72
+ };
73
+ ```
74
+
75
+ ### Minor Changes
76
+
77
+ - [#1379](https://github.com/iTwin/presentation/pull/1379): `ECSql.createClassSelector`: Add a utility that creates a bracket-quoted ECSQL class selector (`[SchemaName].[ClassName]`) from a full class name.
78
+ - [#1361](https://github.com/iTwin/presentation/pull/1361): `TypedPrimitiveValue`: The `type` fields now use `Extract<PrimitiveValueType, ...>` to stay in sync with `PrimitiveValueType`. Additionally, the `koqName` property is now available for `"Integer"` and `"Long"` typed values, not just `"Double"`.
79
+ - [#1357](https://github.com/iTwin/presentation/pull/1357): Added new public APIs for describing and carrying property values:
80
+
81
+ - `ValueDescriptor` — a discriminated union (`PrimitiveValueDescriptor | StructValueDescriptor | ArrayValueDescriptor | NavigationValueDescriptor`) that describes the shape of a value without carrying the value itself.
82
+ - `NavigationValueDescriptor` — describes a navigation property value (a reference to another EC instance). The runtime value stays the referenced instance's id, while this descriptor additionally carries the reference's target class name (`targetClassName`) as metadata.
83
+ - `PrimitiveValueDescriptor` now carries optional enumeration metadata (via `enumeration`) for enumeration-backed values. Only available on `String | Integer | Long`-typed descriptors, with the enumerator value type discriminated by `type` (`String` → `string`, `Integer | Long` → `number`). The runtime value stays the raw backing primitive, while the descriptor preserves the enumeration's name, strictness, and declared enumerators (value, label, optional description) so consumers can map raw values to display labels without re-reading schema.
84
+ - `StructValue` and `ArrayValue` — composite value types complementing the existing `PrimitiveValue`. `Value` is the new top-level union (`PrimitiveValue | StructValue | ArrayValue | undefined`) that represents any value that can be assigned to an EC instance property.
85
+
86
+ ### Patch Changes
87
+
88
+ - [#1429](https://github.com/iTwin/presentation/pull/1429): `createRelationshipPathJoinClause`: The step `instanceFilter` alias placeholders are now substituted in both their bare (`this.`, `rel.`) and bracket-quoted (`[this].`, `[rel].`) forms.
89
+
90
+ Previously only the bare form was replaced, so a bracket-quoted placeholder was left referencing a non-existent alias in the generated JOIN `ON` clause.
91
+
3
92
  ## 2.0.0-alpha.10
4
93
 
5
94
  ### Minor Changes
@@ -137,6 +226,37 @@
137
226
 
138
227
  In reality, consumers will likely use `@itwin/presentation-core-interop` package for creating them, and the package has been updated to handle the change, so reacting to the breaking change is as simple as bumping the version of `@itwin/presentation-core-interop` package in the consumer's `package.json`.
139
228
 
229
+ ## 1.2.16
230
+
231
+ ### Patch Changes
232
+
233
+ - [#1390](https://github.com/iTwin/presentation/pull/1390): Update `@itwin/core-*` dependencies to `^5.10.0`.
234
+
235
+ ## 1.2.15
236
+
237
+ ### Patch Changes
238
+
239
+ - [#1383](https://github.com/iTwin/presentation/pull/1383): Optimize `parseFullClassName` parsing performance.
240
+
241
+ ## 1.2.14
242
+
243
+ ### Patch Changes
244
+
245
+ - [#1358](https://github.com/iTwin/presentation/pull/1358): Bump dependencies.
246
+
247
+ ## 1.2.13
248
+
249
+ ### Patch Changes
250
+
251
+ - [#1338](https://github.com/iTwin/presentation/pull/1338): Bump iTwin.js core dependencies to `^5.9.1`.
252
+
253
+ ## 1.2.12
254
+
255
+ ### Patch Changes
256
+
257
+ - [#1300](https://github.com/iTwin/presentation/pull/1300): Use more distinctive aliases in label select clauses to avoid collisions with aliases in outer FROM clause.
258
+ - [#1313](https://github.com/iTwin/presentation/pull/1313): Bump dependencies.
259
+
140
260
  ## 1.2.11
141
261
 
142
262
  ### Patch Changes
@@ -1,5 +1,4 @@
1
- import * as ECSql from "./shared/ecsql-snippets/index.js";
2
- export { ECSql };
1
+ export * as ECSql from "./shared/ecsql-snippets/index.js";
3
2
  export { ConcatenatedValue, ConcatenatedValuePart } from "./shared/ConcatenatedValue.js";
4
3
  export type { ECSqlBinding, ECSqlQueryDef, ECSqlQueryExecutor, ECSqlQueryReaderOptions, ECSqlQueryRow, } from "./shared/ECSqlCore.js";
5
4
  export type { IPrimitiveValueFormatter } from "./shared/Formatting.js";
@@ -13,9 +12,10 @@ export { createIModelInstanceLabelSelectClauseFactory } from "./shared/instance-
13
12
  export type { ILogger, LogFunction, LogLevel } from "./shared/Logging.js";
14
13
  export { NOOP_LOGGER } from "./shared/Logging.js";
15
14
  export type { ArrayElement, OmitOverUnion, Props } from "./shared/MappedTypes.js";
16
- export type { EC, ECClassHierarchyInspector, ECSchemaProvider } from "./shared/Metadata.js";
15
+ export type { ArrayValueDescriptor, EC, ECClassHierarchyInspector, ECSchemaProvider, NavigationValueDescriptor, PrimitiveValueDescriptor, RelationshipPath, StructValueDescriptor, ValueDescriptor, } from "./shared/Metadata.js";
17
16
  export { createCachingECClassHierarchyInspector, getClass } from "./shared/Metadata.js";
18
17
  export { createMainThreadReleaseOnTimePassedHandler, julianToDateTime, compareFullClassNames, normalizeFullClassName, parseFullClassName, releaseMainThread, trimWhitespace, } from "./shared/Utils.js";
19
18
  export { InstanceKey, PrimitiveValue, TypedPrimitiveValue } from "./shared/Values.js";
19
+ export type { ArrayValue, StructValue, Value } from "./shared/Values.js";
20
20
  export type { Event, RaisableEvent, EventArgs, EventListener } from "./shared/Event.js";
21
21
  //# sourceMappingURL=presentation-shared.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"presentation-shared.d.ts","sourceRoot":"","sources":["../../src/presentation-shared.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,KAAK,MAAM,kCAAkC,CAAC;AAE1D,OAAO,EAAE,KAAK,EAAE,CAAC;AAEjB,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACzF,YAAY,EACV,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,uBAAuB,EACvB,aAAa,GACd,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAC9F,YAAY,EAAE,iCAAiC,EAAE,MAAM,8CAA8C,CAAC;AACtG,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,6CAA6C,EAAE,MAAM,kFAAkF,CAAC;AACjJ,OAAO,EAAE,gDAAgD,EAAE,MAAM,qFAAqF,CAAC;AACvJ,OAAO,EAAE,yCAAyC,EAAE,MAAM,8EAA8E,CAAC;AACzI,OAAO,EAAE,4CAA4C,EAAE,MAAM,iFAAiF,CAAC;AAC/I,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAClF,YAAY,EAAE,EAAE,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,sCAAsC,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACxF,OAAO,EACL,0CAA0C,EAC1C,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,GACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACtF,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"presentation-shared.d.ts","sourceRoot":"","sources":["../../src/presentation-shared.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,KAAK,MAAM,kCAAkC,CAAC;AAE1D,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACzF,YAAY,EACV,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,uBAAuB,EACvB,aAAa,GACd,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAC9F,YAAY,EAAE,iCAAiC,EAAE,MAAM,8CAA8C,CAAC;AACtG,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,6CAA6C,EAAE,MAAM,kFAAkF,CAAC;AACjJ,OAAO,EAAE,gDAAgD,EAAE,MAAM,qFAAqF,CAAC;AACvJ,OAAO,EAAE,yCAAyC,EAAE,MAAM,8EAA8E,CAAC;AACzI,OAAO,EAAE,4CAA4C,EAAE,MAAM,iFAAiF,CAAC;AAC/I,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAClF,YAAY,EACV,oBAAoB,EACpB,EAAE,EACF,yBAAyB,EACzB,gBAAgB,EAChB,yBAAyB,EACzB,wBAAwB,EACxB,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,sCAAsC,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACxF,OAAO,EACL,0CAA0C,EAC1C,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,GACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACtF,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACzE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC"}
@@ -38,8 +38,7 @@ var __importStar = (this && this.__importStar) || (function () {
38
38
  })();
39
39
  Object.defineProperty(exports, "__esModule", { value: true });
40
40
  exports.TypedPrimitiveValue = exports.PrimitiveValue = exports.InstanceKey = exports.trimWhitespace = exports.releaseMainThread = exports.parseFullClassName = exports.normalizeFullClassName = exports.compareFullClassNames = exports.julianToDateTime = exports.createMainThreadReleaseOnTimePassedHandler = exports.getClass = exports.createCachingECClassHierarchyInspector = exports.NOOP_LOGGER = exports.createIModelInstanceLabelSelectClauseFactory = exports.createBisInstanceLabelSelectClauseFactory = exports.createClassBasedInstanceLabelSelectClauseFactory = exports.createDefaultInstanceLabelSelectClauseFactory = exports.parseInstanceLabel = exports.formatConcatenatedValue = exports.createDefaultValueFormatter = exports.ConcatenatedValuePart = exports.ConcatenatedValue = exports.ECSql = void 0;
41
- const ECSql = __importStar(require("./shared/ecsql-snippets/index.js"));
42
- exports.ECSql = ECSql;
41
+ exports.ECSql = __importStar(require("./shared/ecsql-snippets/index.js"));
43
42
  var ConcatenatedValue_js_1 = require("./shared/ConcatenatedValue.js");
44
43
  Object.defineProperty(exports, "ConcatenatedValue", { enumerable: true, get: function () { return ConcatenatedValue_js_1.ConcatenatedValue; } });
45
44
  Object.defineProperty(exports, "ConcatenatedValuePart", { enumerable: true, get: function () { return ConcatenatedValue_js_1.ConcatenatedValuePart; } });
@@ -1 +1 @@
1
- {"version":3,"file":"presentation-shared.js","sourceRoot":"","sources":["../../src/presentation-shared.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEhG,wEAA0D;AAEjD,sBAAK;AAEd,sEAAyF;AAAhF,yHAAA,iBAAiB,OAAA;AAAE,6HAAA,qBAAqB,OAAA;AASjD,wDAA8F;AAArF,4HAAA,2BAA2B,OAAA;AAAE,wHAAA,uBAAuB,OAAA;AAE7D,oGAAkF;AAAzE,yIAAA,kBAAkB,OAAA;AAC3B,+IAAiJ;AAAxI,2KAAA,6CAA6C,OAAA;AACtD,qJAAuJ;AAA9I,iLAAA,gDAAgD,OAAA;AACzD,uIAAyI;AAAhI,mKAAA,yCAAyC,OAAA;AAClD,6IAA+I;AAAtI,yKAAA,4CAA4C,OAAA;AAErD,kDAAkD;AAAzC,yGAAA,WAAW,OAAA;AAGpB,oDAAwF;AAA/E,qIAAA,sCAAsC,OAAA;AAAE,uGAAA,QAAQ,OAAA;AACzD,8CAQ2B;AAPzB,sIAAA,0CAA0C,OAAA;AAC1C,4GAAA,gBAAgB,OAAA;AAChB,iHAAA,qBAAqB,OAAA;AACrB,kHAAA,sBAAsB,OAAA;AACtB,8GAAA,kBAAkB,OAAA;AAClB,6GAAA,iBAAiB,OAAA;AACjB,0GAAA,cAAc,OAAA;AAEhB,gDAAsF;AAA7E,wGAAA,WAAW,OAAA;AAAE,2GAAA,cAAc,OAAA;AAAE,gHAAA,mBAAmB,OAAA"}
1
+ {"version":3,"file":"presentation-shared.js","sourceRoot":"","sources":["../../src/presentation-shared.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEhG,0EAA0D;AAE1D,sEAAyF;AAAhF,yHAAA,iBAAiB,OAAA;AAAE,6HAAA,qBAAqB,OAAA;AASjD,wDAA8F;AAArF,4HAAA,2BAA2B,OAAA;AAAE,wHAAA,uBAAuB,OAAA;AAE7D,oGAAkF;AAAzE,yIAAA,kBAAkB,OAAA;AAC3B,+IAAiJ;AAAxI,2KAAA,6CAA6C,OAAA;AACtD,qJAAuJ;AAA9I,iLAAA,gDAAgD,OAAA;AACzD,uIAAyI;AAAhI,mKAAA,yCAAyC,OAAA;AAClD,6IAA+I;AAAtI,yKAAA,4CAA4C,OAAA;AAErD,kDAAkD;AAAzC,yGAAA,WAAW,OAAA;AAapB,oDAAwF;AAA/E,qIAAA,sCAAsC,OAAA;AAAE,uGAAA,QAAQ,OAAA;AACzD,8CAQ2B;AAPzB,sIAAA,0CAA0C,OAAA;AAC1C,4GAAA,gBAAgB,OAAA;AAChB,iHAAA,qBAAqB,OAAA;AACrB,kHAAA,sBAAsB,OAAA;AACtB,8GAAA,kBAAkB,OAAA;AAClB,6GAAA,iBAAiB,OAAA;AACjB,0GAAA,cAAc,OAAA;AAEhB,gDAAsF;AAA7E,wGAAA,WAAW,OAAA;AAAE,2GAAA,cAAc,OAAA;AAAE,gHAAA,mBAAmB,OAAA"}
@@ -48,9 +48,14 @@ export interface ECSqlQueryDef {
48
48
  ecsql: string;
49
49
  /**
50
50
  * Values to bind to the query.
51
+ *
52
+ * Provide bindings either as an array or as a record:
53
+ * - `ECSqlBinding[]` binds values by parameter position.
54
+ * - `Record<string, ECSqlBinding>` binds values by parameter name, where each key is the ECSQL parameter name.
55
+ *
51
56
  * @see https://www.itwinjs.org/learning/ecsql/#ecsql-parameters
52
57
  */
53
- bindings?: ECSqlBinding[];
58
+ bindings?: ECSqlBinding[] | Record<string, ECSqlBinding>;
54
59
  }
55
60
  /**
56
61
  * Defines requested ECSQL result row format.
@@ -1 +1 @@
1
- {"version":3,"file":"ECSqlCore.d.ts","sourceRoot":"","sources":["../../../src/shared/ECSqlCore.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GACpB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,UAAU,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,UAAU,EAAE,CAAA;CAAE,GACvC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACrD;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC;AAErE;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhB;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;CAC3B;AAED;;;;GAIG;AACH,KAAK,mBAAmB,GAAG,oBAAoB,GAAG,SAAS,CAAC;AAE5D;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,CAAC,YAAY,EAAE,MAAM,GAAG,GAAG,CAAC;IAC5B,CAAC,aAAa,EAAE,MAAM,GAAG,GAAG,CAAC;CAC9B;AAED;;;;GAIG;AACH,KAAK,gBAAgB,GAAG,qBAAqB,CAAC,aAAa,CAAC,CAAC;AAE7D;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,iBAAiB,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,uBAAuB,GAAG,gBAAgB,CAAC;CAC7F"}
1
+ {"version":3,"file":"ECSqlCore.d.ts","sourceRoot":"","sources":["../../../src/shared/ECSqlCore.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GACpB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,UAAU,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,UAAU,EAAE,CAAA;CAAE,GACvC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACrD;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC;AAErE;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhB;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CAC1D;AAED;;;;GAIG;AACH,KAAK,mBAAmB,GAAG,oBAAoB,GAAG,SAAS,CAAC;AAE5D;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,CAAC,YAAY,EAAE,MAAM,GAAG,GAAG,CAAC;IAC5B,CAAC,aAAa,EAAE,MAAM,GAAG,GAAG,CAAC;CAC9B;AAED;;;;GAIG;AACH,KAAK,gBAAgB,GAAG,qBAAqB,CAAC,aAAa,CAAC,CAAC;AAE7D;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,iBAAiB,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,uBAAuB,GAAG,gBAAgB,CAAC;CAC7F"}
@@ -1,3 +1,4 @@
1
+ import type { ECSqlBinding } from "./ECSqlCore.js";
1
2
  /**
2
3
  * An interface for an object that knows how to get an ECSchema from an iModel.
3
4
  *
@@ -34,6 +35,19 @@ export declare namespace EC {
34
35
  type FullClassNameDotNotation = `${string}.${string}`;
35
36
  type FullClassNameColonNotation = `${string}:${string}`;
36
37
  type FullClassName = FullClassNameColonNotation | FullClassNameDotNotation;
38
+ /**
39
+ * Schema version components.
40
+ * Note: comparison order is write > read > minor (not left-to-right).
41
+ * @public
42
+ */
43
+ interface SchemaVersion {
44
+ /** First component in "read.write.minor" string format. */
45
+ read: number;
46
+ /** Second component in "read.write.minor" string format (most significant for compatibility). */
47
+ write: number;
48
+ /** Third component in "read.write.minor" string format. */
49
+ minor: number;
50
+ }
37
51
  /**
38
52
  * Represents an ECSchema that contains classes, relationships, etc.
39
53
  * @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/schema/
@@ -41,6 +55,8 @@ export declare namespace EC {
41
55
  */
42
56
  interface Schema {
43
57
  name: string;
58
+ /** The schema version. Format: `"read.write.minor"`, comparison order: write > read > minor. */
59
+ version: SchemaVersion;
44
60
  getClass(name: string): Promise<Class | undefined>;
45
61
  getCustomAttributes(): Promise<CustomAttributeSet>;
46
62
  }
@@ -54,6 +70,7 @@ export declare namespace EC {
54
70
  fullName: FullClassName;
55
71
  name: string;
56
72
  label?: string;
73
+ description?: string;
57
74
  }
58
75
  /**
59
76
  * Represents an ECClass.
@@ -66,6 +83,8 @@ export declare namespace EC {
66
83
  is(other: Class): Promise<boolean>;
67
84
  getProperty(name: string): Promise<Property | undefined>;
68
85
  getProperties(): Promise<Array<Property>>;
86
+ /** Gets only the properties defined directly on this class, excluding those inherited from base classes. */
87
+ getOwnProperties(): Promise<Array<Property>>;
69
88
  isEntityClass(): this is EntityClass;
70
89
  isRelationshipClass(): this is RelationshipClass;
71
90
  isStructClass(): this is StructClass;
@@ -97,6 +116,15 @@ export declare namespace EC {
97
116
  * @public
98
117
  */
99
118
  type KindOfQuantity = SchemaItem;
119
+ /**
120
+ * Represents a property category used to group related properties.
121
+ * @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/propertycategory/
122
+ * @public
123
+ */
124
+ interface PropertyCategory extends SchemaItem {
125
+ /** Determines the display order of the category relative to other categories. Higher priority categories are displayed first. */
126
+ priority: number;
127
+ }
100
128
  /**
101
129
  * Represents a relationship constraint multiplicity.
102
130
  * @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/relationshipmultiplicity/
@@ -157,6 +185,7 @@ export declare namespace EC {
157
185
  class: Class;
158
186
  label?: string;
159
187
  kindOfQuantity: Promise<KindOfQuantity | undefined>;
188
+ category: Promise<PropertyCategory | undefined>;
160
189
  isArray(): this is ArrayProperty;
161
190
  isStruct(): this is StructProperty;
162
191
  isPrimitive(): this is PrimitiveProperty;
@@ -258,10 +287,140 @@ export declare namespace EC {
258
287
  }
259
288
  }
260
289
  /**
261
- * An identifiers' union of all supported primitive value types.
290
+ * A union of all primitive value types supported by the Presentation packages.
291
+ *
292
+ * Compared to `EC.PrimitiveType`:
293
+ * - Adds `"Id"` to support id properties such as `ECInstanceId` or `ECClassId`, which have no equivalent in `EC.PrimitiveType`.
294
+ * - Excludes `"Binary"` and `"IGeometry"`, as properties of those types are not supported by the Presentation packages.
295
+ *
262
296
  * @public
263
297
  */
264
298
  export type PrimitiveValueType = "Id" | Exclude<EC.PrimitiveType, "Binary" | "IGeometry">;
299
+ /**
300
+ * A type descriptor for a value's shape.
301
+ *
302
+ * - `PrimitiveValueDescriptor`: a scalar primitive.
303
+ * - `StructValueDescriptor`: a named struct with typed members.
304
+ * - `ArrayValueDescriptor`: an ordered collection of a single element type.
305
+ * - `NavigationValueDescriptor`: a reference to another EC instance, carrying the reference's target class name.
306
+ *
307
+ * @public
308
+ */
309
+ export type ValueDescriptor = PrimitiveValueDescriptor | StructValueDescriptor | ArrayValueDescriptor | NavigationValueDescriptor;
310
+ /**
311
+ * Describes a scalar primitive value.
312
+ *
313
+ * When the value is backed by an enumeration (only possible for `String`-, `Integer`- and
314
+ * `Long`-typed values), `enumeration` carries the enumeration's metadata (its declared enumerators
315
+ * and their labels) so consumers can map raw values to display labels without re-reading schema. The
316
+ * `type` discriminates the enumerator value type (`String` → `string`, `Integer | Long` → `number`).
317
+ *
318
+ * @public
319
+ */
320
+ export type PrimitiveValueDescriptor = {
321
+ kind: "primitive";
322
+ } & ({
323
+ /** The primitive value type. */
324
+ type: Extract<PrimitiveValueType, "String">;
325
+ kindOfQuantity?: undefined;
326
+ /** Metadata of the enumeration backing this value, when it is enumeration-backed. */
327
+ enumeration?: EnumerationInfo<string>;
328
+ } | {
329
+ /** The primitive value type. */
330
+ type: Extract<PrimitiveValueType, "Integer" | "Long">;
331
+ /**
332
+ * Full name of the KindOfQuantity associated with this property (e.g., `"Units.LENGTH"`).
333
+ * Determines how the value should be formatted and which units to display.
334
+ */
335
+ kindOfQuantity?: string;
336
+ /** Metadata of the enumeration backing this value, when it is enumeration-backed. */
337
+ enumeration?: EnumerationInfo<number>;
338
+ } | {
339
+ /** The primitive value type. */
340
+ type: Extract<PrimitiveValueType, "Double">;
341
+ /**
342
+ * Full name of the KindOfQuantity associated with this property (e.g., `"Units.LENGTH"`).
343
+ * Determines how the value should be formatted and which units to display.
344
+ */
345
+ kindOfQuantity?: string;
346
+ enumeration?: undefined;
347
+ } | {
348
+ /** The primitive value type. */
349
+ type: Exclude<PrimitiveValueType, "Integer" | "Long" | "Double" | "String">;
350
+ kindOfQuantity?: undefined;
351
+ enumeration?: undefined;
352
+ });
353
+ /**
354
+ * Metadata about the enumeration backing a primitive value. Preserved on a
355
+ * `PrimitiveValueDescriptor` so consumers can map raw enum values to their display labels
356
+ * without re-reading schema.
357
+ * @public
358
+ */
359
+ interface EnumerationInfo<TValue extends string | number = string | number> {
360
+ /** Name of the enumeration type (e.g., `"MySchema.MyEnum"` for schema-backed enums). */
361
+ name: string;
362
+ /** When `true`, values are restricted to the declared enumerators. */
363
+ isStrict: boolean;
364
+ /** The declared enumerators. */
365
+ enumerators: EnumeratorInfo<TValue>[];
366
+ }
367
+ /**
368
+ * A single enumerator of an `EnumerationInfo`.
369
+ * @public
370
+ */
371
+ interface EnumeratorInfo<TValue extends string | number = string | number> {
372
+ /** Display label for the enumerator. */
373
+ label: string;
374
+ /** The enumerator's raw value (string- or integer-backed, per the owning descriptor's `type`). */
375
+ value: TValue;
376
+ /** Optional description. */
377
+ description?: string;
378
+ }
379
+ /**
380
+ * Describes a named struct value with typed members.
381
+ * @public
382
+ */
383
+ export interface StructValueDescriptor {
384
+ kind: "struct";
385
+ /** The list of named, typed members that make up this struct. */
386
+ members: StructMember[];
387
+ }
388
+ /**
389
+ * Describes a single member of a `StructValueDescriptor`.
390
+ * @public
391
+ */
392
+ interface StructMember {
393
+ /** The member's property name. */
394
+ name: string;
395
+ /** A human-readable label for display purposes. */
396
+ label: string;
397
+ /** The type descriptor for this member's value. */
398
+ type: ValueDescriptor;
399
+ }
400
+ /**
401
+ * Describes an ordered collection of values of a single element type.
402
+ * @public
403
+ */
404
+ export interface ArrayValueDescriptor {
405
+ kind: "array";
406
+ /** The type descriptor for each element in the array. */
407
+ elementType: ValueDescriptor;
408
+ }
409
+ /**
410
+ * Describes a navigation property value — a reference to another EC instance.
411
+ * The runtime value is the referenced instance's id (`Id64String`); this descriptor
412
+ * additionally carries the reference's target class name as metadata, so consumers can
413
+ * build selects against the referenced instance (e.g. to resolve its label).
414
+ * @public
415
+ */
416
+ export interface NavigationValueDescriptor {
417
+ kind: "navigation";
418
+ /**
419
+ * Full name of the relationship's target-constraint class the navigation points at
420
+ * (the referenced instance's class, or its base constraint class).
421
+ */
422
+ targetClassName: EC.FullClassName;
423
+ }
265
424
  /**
266
425
  * Describes a single step through an ECRelationship from source ECClass to target ECClass.
267
426
  * @public
@@ -279,6 +438,57 @@ export interface RelationshipPathStep {
279
438
  * describes a step from `B` to `A`.
280
439
  */
281
440
  relationshipReverse?: boolean;
441
+ /**
442
+ * Optional filter applied to instances at this step.
443
+ * Only instances matching the filter will be included when traversing this relationship.
444
+ * The filter expression can reference target class properties and, for non-navigation-property
445
+ * relationships (link table relationships), also relationship class properties.
446
+ * Referencing relationship class properties via `relationshipAlias` is not supported for
447
+ * navigation-property steps because the relationship table is not part of the query in that case.
448
+ */
449
+ instanceFilter?: {
450
+ /**
451
+ * ECSQL WHERE clause expression (without the WHERE keyword).
452
+ *
453
+ * Use `targetAlias` (defaults to `"this"`) followed by a dot to reference properties
454
+ * of the filtered class, and `relationshipAlias` (defaults to `"rel"`) to reference
455
+ * properties on the relationship class. At query generation time, the pipeline replaces
456
+ * all `{alias}.` occurrences (in both their bare `{alias}.` and bracket-quoted `[{alias}].`
457
+ * forms) with the actual query aliases.
458
+ *
459
+ * @example
460
+ * ```
461
+ * expression: "this.Area > :minArea AND rel.Priority > 0"
462
+ * ```
463
+ */
464
+ expression: string;
465
+ /**
466
+ * The placeholder used in `expression` to reference the target class (`targetClassName`).
467
+ * Every occurrence of `{targetAlias}.` in the expression, whether bare (`{targetAlias}.`)
468
+ * or bracket-quoted (`[{targetAlias}].`), will be replaced with the actual query alias at
469
+ * query generation time.
470
+ *
471
+ * @default "this"
472
+ */
473
+ targetAlias?: string;
474
+ /**
475
+ * The placeholder used in `expression` to reference the relationship class (`relationshipName`).
476
+ * Every occurrence of `{relationshipAlias}.` in the expression, whether bare (`{relationshipAlias}.`)
477
+ * or bracket-quoted (`[{relationshipAlias}].`), will be replaced with the actual relationship alias
478
+ * at query generation time.
479
+ *
480
+ * Only meaningful for non-navigation-property (link table) relationships. When the step uses a
481
+ * navigation property, the relationship table is not part of the query, so any reference via
482
+ * this alias will produce invalid ECSQL.
483
+ *
484
+ * @default "rel"
485
+ */
486
+ relationshipAlias?: string;
487
+ /**
488
+ * Bind values for the expression, keyed by parameter name.
489
+ */
490
+ bindings?: Record<string, ECSqlBinding>;
491
+ };
282
492
  }
283
493
  /**
284
494
  * Describes a path from source ECClass to target ECClass through multiple ECRelationships.
@@ -291,4 +501,5 @@ export type RelationshipPath<TStep extends RelationshipPathStep = RelationshipPa
291
501
  * @public
292
502
  */
293
503
  export declare function getClass(schemaProvider: ECSchemaProvider, fullClassName: EC.FullClassName): Promise<EC.Class>;
504
+ export {};
294
505
  //# sourceMappingURL=Metadata.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Metadata.d.ts","sourceRoot":"","sources":["../../../src/shared/Metadata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Metadata.d.ts","sourceRoot":"","sources":["../../../src/shared/Metadata.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Metadata.js","sourceRoot":"","sources":["../../../src/shared/Metadata.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;AA+BhG,wFA+BC;AAiTD,4BAWC;AAxXD,sDAA6C;AAC7C,yCAAgD;AAwBhD;;;GAGG;AACH,SAAgB,sCAAsC,CAAC,KAKtD;IACC,MAAM,GAAG,GAAG,IAAI,qBAAM,CAAqC,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC;IACjF,SAAS,cAAc,CAAC,gBAAkC,EAAE,aAA+B;QACzF,OAAO,GAAG,gBAAgB,IAAI,aAAa,EAAE,CAAC;IAChD,CAAC;IACD,OAAO;QACL,gBAAgB,CACd,oBAAsC,EACtC,0BAA4C;YAE5C,MAAM,QAAQ,GAAG,cAAc,CAAC,oBAAoB,EAAE,0BAA0B,CAAC,CAAC;YAClF,IAAI,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC/B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;oBACnB,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,oBAAoB,CAAC;oBACpD,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,0BAA0B,CAAC;iBAC3D,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC,EAAE,EAAE;oBAC1C,MAAM,cAAc,GAAG,MAAM,YAAY,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;oBACxD,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;oBAClC,OAAO,cAAc,CAAC;gBACxB,CAAC,CAAC,CAAC;gBACH,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC5B,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;KACF,CAAC;AACJ,CAAC;AA4SD;;;;GAIG;AACI,KAAK,UAAU,QAAQ,CAAC,cAAgC,EAAE,aAA+B;IAC9F,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,IAAA,6BAAkB,EAAC,aAAa,CAAC,CAAC;IACpE,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAC1D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,WAAW,UAAU,cAAc,CAAC,CAAC;IACvD,CAAC;IACD,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACrD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,0BAA0B,UAAU,IAAI,CAAC,CAAC;IAC/E,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"Metadata.js","sourceRoot":"","sources":["../../../src/shared/Metadata.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;AAiChG,wFA+BC;AAshBD,4BAWC;AA/lBD,sDAA6C;AAC7C,yCAAgD;AA0BhD;;;GAGG;AACH,SAAgB,sCAAsC,CAAC,KAKtD;IACC,MAAM,GAAG,GAAG,IAAI,qBAAM,CAAqC,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC;IACjF,SAAS,cAAc,CAAC,gBAAkC,EAAE,aAA+B;QACzF,OAAO,GAAG,gBAAgB,IAAI,aAAa,EAAE,CAAC;IAChD,CAAC;IACD,OAAO;QACL,gBAAgB,CACd,oBAAsC,EACtC,0BAA4C;YAE5C,MAAM,QAAQ,GAAG,cAAc,CAAC,oBAAoB,EAAE,0BAA0B,CAAC,CAAC;YAClF,IAAI,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC/B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;oBACnB,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,oBAAoB,CAAC;oBACpD,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,0BAA0B,CAAC;iBAC3D,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC,EAAE,EAAE;oBAC1C,MAAM,cAAc,GAAG,MAAM,YAAY,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;oBACxD,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;oBAClC,OAAO,cAAc,CAAC;gBACxB,CAAC,CAAC,CAAC;gBACH,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC5B,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;KACF,CAAC;AACJ,CAAC;AAihBD;;;;GAIG;AACI,KAAK,UAAU,QAAQ,CAAC,cAAgC,EAAE,aAA+B;IAC9F,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,IAAA,6BAAkB,EAAC,aAAa,CAAC,CAAC;IACpE,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAC1D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,WAAW,UAAU,cAAc,CAAC,CAAC;IACvD,CAAC;IACD,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACrD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,0BAA0B,UAAU,IAAI,CAAC,CAAC;IAC/E,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Utils.d.ts","sourceRoot":"","sources":["../../../src/shared/Utils.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAExC;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,MAAM;;;EAMvD;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG,EAAE,CAAC,wBAAwB,CAGzF;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,CAAC,aAAa,GAAG,MAAM,CAS1F;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;AACpD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AAc5E;;;;;GAKG;AACH,wBAAsB,iBAAiB,kBAEtC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,0CAA0C,CAAC,mBAAmB,SAAK,SAEtE,OAAO,CAAC,IAAI,CAAC,GAAG,SAAS,CASrC;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAGzD"}
1
+ {"version":3,"file":"Utils.d.ts","sourceRoot":"","sources":["../../../src/shared/Utils.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAExC;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,MAAM;;;EAoBvD;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG,EAAE,CAAC,wBAAwB,CAGzF;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,CAAC,aAAa,GAAG,MAAM,CAS1F;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;AACpD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AAc5E;;;;;GAKG;AACH,wBAAsB,iBAAiB,kBAEtC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,0CAA0C,CAAC,mBAAmB,SAAK,SAEtE,OAAO,CAAC,IAAI,CAAC,GAAG,SAAS,CASrC;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAGzD"}
@@ -11,6 +11,7 @@ exports.trimWhitespace = trimWhitespace;
11
11
  exports.releaseMainThread = releaseMainThread;
12
12
  exports.createMainThreadReleaseOnTimePassedHandler = createMainThreadReleaseOnTimePassedHandler;
13
13
  exports.julianToDateTime = julianToDateTime;
14
+ const core_bentley_1 = require("@itwin/core-bentley");
14
15
  /**
15
16
  * An utility to parse schema and class names from full class name, where
16
17
  * schema and class names are separated by either `:` or `.`.
@@ -19,11 +20,22 @@ exports.julianToDateTime = julianToDateTime;
19
20
  * @public
20
21
  */
21
22
  function parseFullClassName(fullClassName) {
22
- const [schemaName, className, ...rest] = fullClassName.split(/[\.:]/);
23
- if (!schemaName || !className || rest.length > 0) {
24
- throw new Error(`Invalid full class name: ${fullClassName}`);
23
+ let idx = fullClassName.indexOf(".");
24
+ let includesDot = true;
25
+ if (idx <= 0) {
26
+ includesDot = false;
27
+ idx = fullClassName.indexOf(":");
28
+ if (idx <= 0) {
29
+ throw new Error(`Invalid full class name: ${fullClassName}`);
30
+ }
25
31
  }
26
- return { schemaName, className };
32
+ (0, core_bentley_1.assert)(() => {
33
+ return (idx < fullClassName.length - 1 &&
34
+ (includesDot
35
+ ? fullClassName.lastIndexOf(".") === idx && fullClassName.indexOf(":") === -1
36
+ : fullClassName.lastIndexOf(":") === idx));
37
+ }, `Invalid full class name: ${fullClassName}`);
38
+ return { schemaName: fullClassName.slice(0, idx), className: fullClassName.slice(idx + 1) };
27
39
  }
28
40
  /**
29
41
  * An utility to normalize full class name from either `SchemaName:ClassName` or
@@ -1 +1 @@
1
- {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../../src/shared/Utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../../src/shared/Utils.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;AAahG,gDAoBC;AASD,wDAGC;AAOD,sDASC;AAaD,wCAUC;AAQD,8CAEC;AAkBD,gGAWC;AAMD,4CAGC;AAlID,sDAA6C;AAI7C;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAAC,aAAqB;IACtD,IAAI,GAAG,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,WAAW,GAAG,IAAI,CAAC;IACvB,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;QACb,WAAW,GAAG,KAAK,CAAC;QACpB,GAAG,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,4BAA4B,aAAa,EAAE,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IACD,IAAA,qBAAM,EAAC,GAAG,EAAE;QACV,OAAO,CACL,GAAG,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC;YAC9B,CAAC,WAAW;gBACV,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAC7E,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAC5C,CAAC;IACJ,CAAC,EAAE,4BAA4B,aAAa,EAAE,CAAC,CAAC;IAEhD,OAAO,EAAE,UAAU,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,aAAa,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC;AAC9F,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,sBAAsB,CAAC,aAAqB;IAC1D,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;IACpE,OAAO,GAAG,UAAU,IAAI,SAAS,EAAE,CAAC;AACtC,CAAC;AAED;;;;GAIG;AACH,SAAgB,qBAAqB,CAAC,GAAqB,EAAE,GAAqB;IAChF,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE,kBAAkB,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC;IAC9E,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU;SACxC,iBAAiB,EAAE;SACnB,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAC5D,IAAI,aAAa,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,aAAa,CAAC;IACvB,CAAC;IACD,OAAO,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC,CAAC;AAC1G,CAAC;AAYD,cAAc;AACd,SAAgB,cAAc,CAAC,GAAuB;IACpD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,GAAG,CAAC;IACb,CAAC;IACD,OAAO,GAAG;SACP,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,qDAAqD;SAC9E,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,0CAA0C;SACpE,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,2CAA2C;SACrE,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,6BAA6B;SACtD,IAAI,EAAE,CAAC,CAAC,qDAAqD;AAClE,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,iBAAiB;IACrC,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;AAChE,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,SAAgB,0CAA0C,CAAC,mBAAmB,GAAG,EAAE;IACjF,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,OAAO,GAA8B,EAAE;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;QACnC,IAAI,OAAO,GAAG,mBAAmB,EAAE,CAAC;YAClC,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,iBAAiB,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YACnC,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,gBAAgB,CAAC,UAAkB;IACjD,MAAM,MAAM,GAAG,CAAC,UAAU,GAAG,SAAS,CAAC,GAAG,QAAQ,CAAC;IACnD,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC;AAC1B,CAAC"}
@@ -69,29 +69,26 @@ export declare namespace PrimitiveValue {
69
69
  */
70
70
  export type TypedPrimitiveValue = ({
71
71
  value: number;
72
- type: "Integer" | "Long";
73
- } | {
74
- value: number;
75
- type: "Double";
72
+ type: Extract<PrimitiveValueType, "Double" | "Integer" | "Long">;
76
73
  koqName?: string;
77
74
  } | {
78
75
  value: boolean;
79
- type: "Boolean";
76
+ type: Extract<PrimitiveValueType, "Boolean">;
80
77
  } | {
81
78
  value: Id64String;
82
- type: "Id";
79
+ type: Extract<PrimitiveValueType, "Id">;
83
80
  } | {
84
81
  value: string;
85
- type: "String";
82
+ type: Extract<PrimitiveValueType, "String">;
86
83
  } | {
87
84
  value: number | string | Date;
88
- type: "DateTime";
85
+ type: Extract<PrimitiveValueType, "DateTime">;
89
86
  } | {
90
87
  value: Point2d;
91
- type: "Point2d";
88
+ type: Extract<PrimitiveValueType, "Point2d">;
92
89
  } | {
93
90
  value: Point3d;
94
- type: "Point3d";
91
+ type: Extract<PrimitiveValueType, "Point3d">;
95
92
  }) & {
96
93
  extendedType?: string;
97
94
  };
@@ -104,4 +101,21 @@ export declare namespace TypedPrimitiveValue {
104
101
  */
105
102
  function create(value: PrimitiveValue, type: PrimitiveValueType, koqName?: string, extendedType?: string): TypedPrimitiveValue;
106
103
  }
104
+ /**
105
+ * A composite value representing a struct (named record with member values).
106
+ * @public
107
+ */
108
+ export interface StructValue {
109
+ [memberName: string]: Value;
110
+ }
111
+ /**
112
+ * A composite value representing an array of values.
113
+ * @public
114
+ */
115
+ export type ArrayValue = Value[];
116
+ /**
117
+ * Any value that can be assigned to an ECInstance — a primitive, struct, array, or undefined (null/empty).
118
+ * @public
119
+ */
120
+ export type Value = PrimitiveValue | StructValue | ArrayValue | undefined;
107
121
  //# sourceMappingURL=Values.d.ts.map