@itwin/presentation-shared 2.0.0-alpha.10 → 2.0.0-alpha.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +154 -0
- package/lib/{esm/presentation-shared.d.ts → presentation-shared.d.ts} +6 -5
- package/lib/presentation-shared.d.ts.map +1 -0
- package/lib/{esm/presentation-shared.js → presentation-shared.js} +3 -3
- package/lib/presentation-shared.js.map +1 -0
- package/lib/shared/ConcatenatedValue.d.ts.map +1 -0
- package/lib/shared/ConcatenatedValue.js.map +1 -0
- package/lib/{cjs/shared → shared}/ECSqlCore.d.ts +15 -1
- package/lib/shared/ECSqlCore.d.ts.map +1 -0
- package/lib/shared/ECSqlCore.js +37 -0
- package/lib/shared/ECSqlCore.js.map +1 -0
- package/lib/shared/Event.d.ts.map +1 -0
- package/lib/{esm/shared → shared}/Event.js.map +1 -1
- package/lib/shared/Formatting.d.ts.map +1 -0
- package/lib/shared/Formatting.js.map +1 -0
- package/lib/{cjs/shared → shared}/InstanceLabelSelectClauseFactory.d.ts +1 -1
- package/lib/shared/InstanceLabelSelectClauseFactory.d.ts.map +1 -0
- package/lib/shared/InstanceLabelSelectClauseFactory.js.map +1 -0
- package/lib/shared/Logging.d.ts.map +1 -0
- package/lib/shared/Logging.js.map +1 -0
- package/lib/shared/MappedTypes.d.ts +48 -0
- package/lib/shared/MappedTypes.d.ts.map +1 -0
- package/lib/shared/MappedTypes.js.map +1 -0
- package/lib/{cjs/shared → shared}/Metadata.d.ts +225 -11
- package/lib/shared/Metadata.d.ts.map +1 -0
- package/lib/shared/Metadata.js.map +1 -0
- package/lib/{cjs/shared → shared}/Utils.d.ts +0 -6
- package/lib/shared/Utils.d.ts.map +1 -0
- package/lib/{esm/shared → shared}/Utils.js +16 -19
- package/lib/shared/Utils.js.map +1 -0
- package/lib/{esm/shared → shared}/Values.d.ts +44 -20
- package/lib/shared/Values.d.ts.map +1 -0
- package/lib/shared/Values.js +121 -0
- package/lib/shared/Values.js.map +1 -0
- package/lib/shared/ecsql-snippets/ECSqlJoinSnippets.d.ts +167 -0
- package/lib/shared/ecsql-snippets/ECSqlJoinSnippets.d.ts.map +1 -0
- package/lib/shared/ecsql-snippets/ECSqlJoinSnippets.js +177 -0
- package/lib/shared/ecsql-snippets/ECSqlJoinSnippets.js.map +1 -0
- package/lib/{cjs/shared → shared}/ecsql-snippets/ECSqlValueSelectorSnippets.d.ts +9 -1
- package/lib/shared/ecsql-snippets/ECSqlValueSelectorSnippets.d.ts.map +1 -0
- package/lib/{esm/shared → shared}/ecsql-snippets/ECSqlValueSelectorSnippets.js +12 -0
- package/lib/shared/ecsql-snippets/ECSqlValueSelectorSnippets.js.map +1 -0
- package/lib/shared/ecsql-snippets/index.d.ts +3 -0
- package/lib/shared/ecsql-snippets/index.d.ts.map +1 -0
- package/lib/shared/ecsql-snippets/index.js +7 -0
- package/lib/shared/ecsql-snippets/index.js.map +1 -0
- package/lib/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.d.ts.map +1 -0
- package/lib/{esm/shared → shared}/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.js +9 -6
- package/lib/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.js.map +1 -0
- package/lib/{esm/shared → shared}/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.d.ts +1 -1
- package/lib/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.d.ts.map +1 -0
- package/lib/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.js.map +1 -0
- package/lib/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.d.ts.map +1 -0
- package/lib/{esm/shared → shared}/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.js +6 -5
- package/lib/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.js.map +1 -0
- package/lib/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.d.ts.map +1 -0
- package/lib/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.js.map +1 -0
- package/lib/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.d.ts.map +1 -0
- package/lib/{esm/shared → shared}/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.js +4 -3
- package/lib/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.js.map +1 -0
- package/lib/{esm/shared → shared}/instance-label-factory-impls/Utils.d.ts +1 -0
- package/lib/shared/instance-label-factory-impls/Utils.d.ts.map +1 -0
- package/lib/{esm/shared → shared}/instance-label-factory-impls/Utils.js +1 -0
- package/lib/shared/instance-label-factory-impls/Utils.js.map +1 -0
- package/package.json +16 -18
- package/lib/cjs/package.json +0 -1
- package/lib/cjs/presentation-shared.d.ts +0 -21
- package/lib/cjs/presentation-shared.d.ts.map +0 -1
- package/lib/cjs/presentation-shared.js +0 -76
- package/lib/cjs/presentation-shared.js.map +0 -1
- package/lib/cjs/shared/ConcatenatedValue.d.ts.map +0 -1
- package/lib/cjs/shared/ConcatenatedValue.js +0 -49
- package/lib/cjs/shared/ConcatenatedValue.js.map +0 -1
- package/lib/cjs/shared/ECSqlCore.d.ts.map +0 -1
- package/lib/cjs/shared/ECSqlCore.js +0 -7
- package/lib/cjs/shared/ECSqlCore.js.map +0 -1
- package/lib/cjs/shared/Event.d.ts.map +0 -1
- package/lib/cjs/shared/Event.js +0 -7
- package/lib/cjs/shared/Event.js.map +0 -1
- package/lib/cjs/shared/Formatting.d.ts.map +0 -1
- package/lib/cjs/shared/Formatting.js +0 -118
- package/lib/cjs/shared/Formatting.js.map +0 -1
- package/lib/cjs/shared/InstanceLabelSelectClauseFactory.d.ts.map +0 -1
- package/lib/cjs/shared/InstanceLabelSelectClauseFactory.js +0 -30
- package/lib/cjs/shared/InstanceLabelSelectClauseFactory.js.map +0 -1
- package/lib/cjs/shared/Logging.d.ts.map +0 -1
- package/lib/cjs/shared/Logging.js +0 -21
- package/lib/cjs/shared/Logging.js.map +0 -1
- package/lib/cjs/shared/MappedTypes.d.ts +0 -17
- package/lib/cjs/shared/MappedTypes.d.ts.map +0 -1
- package/lib/cjs/shared/MappedTypes.js +0 -7
- package/lib/cjs/shared/MappedTypes.js.map +0 -1
- package/lib/cjs/shared/Metadata.d.ts.map +0 -1
- package/lib/cjs/shared/Metadata.js +0 -56
- package/lib/cjs/shared/Metadata.js.map +0 -1
- package/lib/cjs/shared/Utils.d.ts.map +0 -1
- package/lib/cjs/shared/Utils.js +0 -111
- package/lib/cjs/shared/Utils.js.map +0 -1
- package/lib/cjs/shared/Values.d.ts +0 -107
- package/lib/cjs/shared/Values.d.ts.map +0 -1
- package/lib/cjs/shared/Values.js +0 -122
- package/lib/cjs/shared/Values.js.map +0 -1
- package/lib/cjs/shared/ecsql-snippets/ECSqlJoinSnippets.d.ts +0 -51
- package/lib/cjs/shared/ecsql-snippets/ECSqlJoinSnippets.d.ts.map +0 -1
- package/lib/cjs/shared/ecsql-snippets/ECSqlJoinSnippets.js +0 -138
- package/lib/cjs/shared/ecsql-snippets/ECSqlJoinSnippets.js.map +0 -1
- package/lib/cjs/shared/ecsql-snippets/ECSqlValueSelectorSnippets.d.ts.map +0 -1
- package/lib/cjs/shared/ecsql-snippets/ECSqlValueSelectorSnippets.js +0 -262
- package/lib/cjs/shared/ecsql-snippets/ECSqlValueSelectorSnippets.js.map +0 -1
- package/lib/cjs/shared/ecsql-snippets/index.d.ts +0 -3
- package/lib/cjs/shared/ecsql-snippets/index.d.ts.map +0 -1
- package/lib/cjs/shared/ecsql-snippets/index.js +0 -18
- package/lib/cjs/shared/ecsql-snippets/index.js.map +0 -1
- package/lib/cjs/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.d.ts.map +0 -1
- package/lib/cjs/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.js +0 -51
- package/lib/cjs/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.js.map +0 -1
- package/lib/cjs/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.d.ts +0 -39
- package/lib/cjs/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.d.ts.map +0 -1
- package/lib/cjs/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.js +0 -63
- package/lib/cjs/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.js.map +0 -1
- package/lib/cjs/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.d.ts.map +0 -1
- package/lib/cjs/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.js +0 -39
- package/lib/cjs/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.js.map +0 -1
- package/lib/cjs/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.d.ts.map +0 -1
- package/lib/cjs/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.js +0 -10
- package/lib/cjs/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.js.map +0 -1
- package/lib/cjs/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.d.ts.map +0 -1
- package/lib/cjs/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.js +0 -335
- package/lib/cjs/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.js.map +0 -1
- package/lib/cjs/shared/instance-label-factory-impls/Utils.d.ts +0 -6
- package/lib/cjs/shared/instance-label-factory-impls/Utils.d.ts.map +0 -1
- package/lib/cjs/shared/instance-label-factory-impls/Utils.js +0 -24
- package/lib/cjs/shared/instance-label-factory-impls/Utils.js.map +0 -1
- package/lib/esm/presentation-shared.d.ts.map +0 -1
- package/lib/esm/presentation-shared.js.map +0 -1
- package/lib/esm/shared/ConcatenatedValue.d.ts +0 -46
- package/lib/esm/shared/ConcatenatedValue.d.ts.map +0 -1
- package/lib/esm/shared/ConcatenatedValue.js.map +0 -1
- package/lib/esm/shared/ECSqlCore.d.ts +0 -94
- package/lib/esm/shared/ECSqlCore.d.ts.map +0 -1
- package/lib/esm/shared/ECSqlCore.js +0 -6
- package/lib/esm/shared/ECSqlCore.js.map +0 -1
- package/lib/esm/shared/Event.d.ts +0 -27
- package/lib/esm/shared/Event.d.ts.map +0 -1
- package/lib/esm/shared/Formatting.d.ts +0 -44
- package/lib/esm/shared/Formatting.d.ts.map +0 -1
- package/lib/esm/shared/Formatting.js.map +0 -1
- package/lib/esm/shared/InstanceLabelSelectClauseFactory.d.ts +0 -73
- package/lib/esm/shared/InstanceLabelSelectClauseFactory.d.ts.map +0 -1
- package/lib/esm/shared/InstanceLabelSelectClauseFactory.js.map +0 -1
- package/lib/esm/shared/Logging.d.ts +0 -27
- package/lib/esm/shared/Logging.d.ts.map +0 -1
- package/lib/esm/shared/Logging.js.map +0 -1
- package/lib/esm/shared/MappedTypes.d.ts +0 -17
- package/lib/esm/shared/MappedTypes.d.ts.map +0 -1
- package/lib/esm/shared/MappedTypes.js.map +0 -1
- package/lib/esm/shared/Metadata.d.ts +0 -294
- package/lib/esm/shared/Metadata.d.ts.map +0 -1
- package/lib/esm/shared/Metadata.js.map +0 -1
- package/lib/esm/shared/Utils.d.ts +0 -66
- package/lib/esm/shared/Utils.d.ts.map +0 -1
- package/lib/esm/shared/Utils.js.map +0 -1
- package/lib/esm/shared/Values.d.ts.map +0 -1
- package/lib/esm/shared/Values.js +0 -119
- package/lib/esm/shared/Values.js.map +0 -1
- package/lib/esm/shared/ecsql-snippets/ECSqlJoinSnippets.d.ts +0 -51
- package/lib/esm/shared/ecsql-snippets/ECSqlJoinSnippets.d.ts.map +0 -1
- package/lib/esm/shared/ecsql-snippets/ECSqlJoinSnippets.js +0 -135
- package/lib/esm/shared/ecsql-snippets/ECSqlJoinSnippets.js.map +0 -1
- package/lib/esm/shared/ecsql-snippets/ECSqlValueSelectorSnippets.d.ts +0 -122
- package/lib/esm/shared/ecsql-snippets/ECSqlValueSelectorSnippets.d.ts.map +0 -1
- package/lib/esm/shared/ecsql-snippets/ECSqlValueSelectorSnippets.js.map +0 -1
- package/lib/esm/shared/ecsql-snippets/index.d.ts +0 -3
- package/lib/esm/shared/ecsql-snippets/index.d.ts.map +0 -1
- package/lib/esm/shared/ecsql-snippets/index.js +0 -7
- package/lib/esm/shared/ecsql-snippets/index.js.map +0 -1
- package/lib/esm/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.d.ts +0 -17
- package/lib/esm/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.d.ts.map +0 -1
- package/lib/esm/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.js.map +0 -1
- package/lib/esm/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.d.ts.map +0 -1
- package/lib/esm/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.js.map +0 -1
- package/lib/esm/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.d.ts +0 -12
- package/lib/esm/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.d.ts.map +0 -1
- package/lib/esm/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.js.map +0 -1
- package/lib/esm/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.d.ts +0 -198
- package/lib/esm/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.d.ts.map +0 -1
- package/lib/esm/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.js.map +0 -1
- package/lib/esm/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.d.ts +0 -34
- package/lib/esm/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.d.ts.map +0 -1
- package/lib/esm/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.js.map +0 -1
- package/lib/esm/shared/instance-label-factory-impls/Utils.d.ts.map +0 -1
- package/lib/esm/shared/instance-label-factory-impls/Utils.js.map +0 -1
- /package/lib/{cjs/shared → shared}/ConcatenatedValue.d.ts +0 -0
- /package/lib/{esm/shared → shared}/ConcatenatedValue.js +0 -0
- /package/lib/{cjs/shared → shared}/Event.d.ts +0 -0
- /package/lib/{esm/shared → shared}/Event.js +0 -0
- /package/lib/{cjs/shared → shared}/Formatting.d.ts +0 -0
- /package/lib/{esm/shared → shared}/Formatting.js +0 -0
- /package/lib/{esm/shared → shared}/InstanceLabelSelectClauseFactory.js +0 -0
- /package/lib/{cjs/shared → shared}/Logging.d.ts +0 -0
- /package/lib/{esm/shared → shared}/Logging.js +0 -0
- /package/lib/{esm/shared → shared}/MappedTypes.js +0 -0
- /package/lib/{esm/shared → shared}/Metadata.js +0 -0
- /package/lib/{cjs/shared → shared}/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.d.ts +0 -0
- /package/lib/{esm/shared → shared}/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.js +0 -0
- /package/lib/{cjs/shared → shared}/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.d.ts +0 -0
- /package/lib/{cjs/shared → shared}/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.d.ts +0 -0
- /package/lib/{esm/shared → shared}/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.js +0 -0
- /package/lib/{cjs/shared → shared}/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.d.ts +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,116 @@
|
|
|
1
1
|
# @itwin/presentation-shared
|
|
2
2
|
|
|
3
|
+
## 2.0.0-alpha.12
|
|
4
|
+
|
|
5
|
+
### Major Changes
|
|
6
|
+
|
|
7
|
+
- [#1446](https://github.com/iTwin/presentation/pull/1446): `EC.EntityClass`: Added `getMixins` method that returns the mixins applied directly to the entity class.
|
|
8
|
+
- [#1454](https://github.com/iTwin/presentation/pull/1454): Dropped CommonJS support. These packages are now published as ES modules (ESM) only.
|
|
9
|
+
|
|
10
|
+
### Minor Changes
|
|
11
|
+
|
|
12
|
+
- [#1455](https://github.com/iTwin/presentation/pull/1455): Added `ECSqlBinding.create` for creating ECSQL bindings from typed primitive values.
|
|
13
|
+
- [#1455](https://github.com/iTwin/presentation/pull/1455): Added exported `Point2dValue` and `Point3dValue` types for representing point primitive values.
|
|
14
|
+
- [#1452](https://github.com/iTwin/presentation/pull/1452): `Props`: Added support for overloaded functions.
|
|
15
|
+
|
|
16
|
+
When the given function has multiple overload signatures, `Props` now resolves to the union of the parameter types across all overloads instead of only reflecting the last signature.
|
|
17
|
+
|
|
18
|
+
- [#1452](https://github.com/iTwin/presentation/pull/1452): Add `createRelationshipPathJoinInfo` that resolves a relationship path into a flat, structured list of join descriptors without producing ECSQL. The returned result lets callers inspect the resolved join structure — e.g. to count the number of join tables without re-reading the schema.
|
|
19
|
+
|
|
20
|
+
In addition, add a sync `createRelationshipPathJoinClause(info)` overload that renders a pre-resolved result of `createRelationshipPathJoinInfo` into an ECSQL JOIN clause without any async schema access.
|
|
21
|
+
|
|
22
|
+
- [#1455](https://github.com/iTwin/presentation/pull/1455): `TypedPrimitiveValue.create`: The return type is now narrowed based on the given `type` argument, so the result only exposes the properties valid for that type. For example, creating a value with type `"Point3d"` no longer exposes the `koqName` property.
|
|
23
|
+
- [#1459](https://github.com/iTwin/presentation/pull/1459): `ECSql.createRelationshipPathJoinInfo`: The `joins` array moved from the top-level result into each entry of the returned `steps[]`, so every step now carries its own ordered `joins`. In addition, each step exposes selectors for the path step's concrete `ECClassId` — `relationshipClassIdSelector`, `sourceClassIdSelector` (`[sourceAlias].[ECClassId]`) and `targetClassIdSelector` (`[targetAlias].[ECClassId]`). For a link-table step the relationship selector is `[relationshipAlias].[ECClassId]`; for a navigation-property step it is `[ownerAlias].[navigationProperty].[RelECClassId]`. For `outer` joins the relationship and target selectors yield `NULL` when nothing is related.
|
|
24
|
+
|
|
25
|
+
## 2.0.0-alpha.11
|
|
26
|
+
|
|
27
|
+
### Major Changes
|
|
28
|
+
|
|
29
|
+
- [#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.
|
|
30
|
+
- [#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:
|
|
31
|
+
|
|
32
|
+
```ts
|
|
33
|
+
// Before
|
|
34
|
+
const joinClause = await createRelationshipPathJoinClause({
|
|
35
|
+
schemaProvider,
|
|
36
|
+
path,
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
// After
|
|
40
|
+
const { joins: joinClause, bindings } =
|
|
41
|
+
await createRelationshipPathJoinClause({ schemaProvider, path });
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
`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.
|
|
45
|
+
|
|
46
|
+
- [#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.
|
|
47
|
+
|
|
48
|
+
Migration example:
|
|
49
|
+
|
|
50
|
+
```ts
|
|
51
|
+
// Before
|
|
52
|
+
function handleBindings(bindings: ECSqlBinding[]) {
|
|
53
|
+
bindings.forEach((b, i) => bind(i + 1, b));
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
// After
|
|
57
|
+
function handleBindings(
|
|
58
|
+
bindings: ECSqlBinding[] | Record<string, ECSqlBinding>
|
|
59
|
+
) {
|
|
60
|
+
const entries: Array<[string | number, ECSqlBinding]> = Array.isArray(
|
|
61
|
+
bindings
|
|
62
|
+
)
|
|
63
|
+
? bindings.map((b, i) => [i + 1, b])
|
|
64
|
+
: Object.entries(bindings);
|
|
65
|
+
for (const [key, b] of entries) {
|
|
66
|
+
bind(key, b);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Alternatively, update to the latest `@itwin/presentation-core-interop` which handles both binding formats out of the box.
|
|
72
|
+
|
|
73
|
+
- [#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`.
|
|
74
|
+
- [#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"`.
|
|
75
|
+
|
|
76
|
+
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.
|
|
77
|
+
|
|
78
|
+
Migration example for custom `EC.Schema` implementations:
|
|
79
|
+
|
|
80
|
+
```ts
|
|
81
|
+
// Before
|
|
82
|
+
const schema: EC.Schema = {
|
|
83
|
+
name: "MySchema",
|
|
84
|
+
getClass: async () => undefined,
|
|
85
|
+
getCustomAttributes: async () => new Map(),
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
// After
|
|
89
|
+
const schema: EC.Schema = {
|
|
90
|
+
name: "MySchema",
|
|
91
|
+
version: { read: 1, write: 0, minor: 0 },
|
|
92
|
+
getClass: async () => undefined,
|
|
93
|
+
getCustomAttributes: async () => new Map(),
|
|
94
|
+
};
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
### Minor Changes
|
|
98
|
+
|
|
99
|
+
- [#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.
|
|
100
|
+
- [#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"`.
|
|
101
|
+
- [#1357](https://github.com/iTwin/presentation/pull/1357): Added new public APIs for describing and carrying property values:
|
|
102
|
+
|
|
103
|
+
- `ValueDescriptor` — a discriminated union (`PrimitiveValueDescriptor | StructValueDescriptor | ArrayValueDescriptor | NavigationValueDescriptor`) that describes the shape of a value without carrying the value itself.
|
|
104
|
+
- `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.
|
|
105
|
+
- `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.
|
|
106
|
+
- `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.
|
|
107
|
+
|
|
108
|
+
### Patch Changes
|
|
109
|
+
|
|
110
|
+
- [#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.
|
|
111
|
+
|
|
112
|
+
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.
|
|
113
|
+
|
|
3
114
|
## 2.0.0-alpha.10
|
|
4
115
|
|
|
5
116
|
### Minor Changes
|
|
@@ -137,6 +248,49 @@
|
|
|
137
248
|
|
|
138
249
|
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
250
|
|
|
251
|
+
## 1.2.18
|
|
252
|
+
|
|
253
|
+
### Patch Changes
|
|
254
|
+
|
|
255
|
+
- [#1430](https://github.com/iTwin/presentation/pull/1430): Bump dependencies.
|
|
256
|
+
|
|
257
|
+
## 1.2.17
|
|
258
|
+
|
|
259
|
+
### Patch Changes
|
|
260
|
+
|
|
261
|
+
- [#1400](https://github.com/iTwin/presentation/pull/1400): Bump dependencies.
|
|
262
|
+
|
|
263
|
+
## 1.2.16
|
|
264
|
+
|
|
265
|
+
### Patch Changes
|
|
266
|
+
|
|
267
|
+
- [#1390](https://github.com/iTwin/presentation/pull/1390): Update `@itwin/core-*` dependencies to `^5.10.0`.
|
|
268
|
+
|
|
269
|
+
## 1.2.15
|
|
270
|
+
|
|
271
|
+
### Patch Changes
|
|
272
|
+
|
|
273
|
+
- [#1383](https://github.com/iTwin/presentation/pull/1383): Optimize `parseFullClassName` parsing performance.
|
|
274
|
+
|
|
275
|
+
## 1.2.14
|
|
276
|
+
|
|
277
|
+
### Patch Changes
|
|
278
|
+
|
|
279
|
+
- [#1358](https://github.com/iTwin/presentation/pull/1358): Bump dependencies.
|
|
280
|
+
|
|
281
|
+
## 1.2.13
|
|
282
|
+
|
|
283
|
+
### Patch Changes
|
|
284
|
+
|
|
285
|
+
- [#1338](https://github.com/iTwin/presentation/pull/1338): Bump iTwin.js core dependencies to `^5.9.1`.
|
|
286
|
+
|
|
287
|
+
## 1.2.12
|
|
288
|
+
|
|
289
|
+
### Patch Changes
|
|
290
|
+
|
|
291
|
+
- [#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.
|
|
292
|
+
- [#1313](https://github.com/iTwin/presentation/pull/1313): Bump dependencies.
|
|
293
|
+
|
|
140
294
|
## 1.2.11
|
|
141
295
|
|
|
142
296
|
### Patch Changes
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
export { ECSql };
|
|
1
|
+
export * as ECSql from "./shared/ecsql-snippets/index.js";
|
|
3
2
|
export { ConcatenatedValue, ConcatenatedValuePart } from "./shared/ConcatenatedValue.js";
|
|
4
|
-
export
|
|
3
|
+
export { ECSqlBinding } from "./shared/ECSqlCore.js";
|
|
4
|
+
export type { ECSqlQueryDef, ECSqlQueryExecutor, ECSqlQueryReaderOptions, ECSqlQueryRow } from "./shared/ECSqlCore.js";
|
|
5
5
|
export type { IPrimitiveValueFormatter } from "./shared/Formatting.js";
|
|
6
6
|
export { createDefaultValueFormatter, formatConcatenatedValue } from "./shared/Formatting.js";
|
|
7
7
|
export type { IInstanceLabelSelectClauseFactory } from "./shared/InstanceLabelSelectClauseFactory.js";
|
|
@@ -13,9 +13,10 @@ export { createIModelInstanceLabelSelectClauseFactory } from "./shared/instance-
|
|
|
13
13
|
export type { ILogger, LogFunction, LogLevel } from "./shared/Logging.js";
|
|
14
14
|
export { NOOP_LOGGER } from "./shared/Logging.js";
|
|
15
15
|
export type { ArrayElement, OmitOverUnion, Props } from "./shared/MappedTypes.js";
|
|
16
|
-
export type { EC, ECClassHierarchyInspector, ECSchemaProvider } from "./shared/Metadata.js";
|
|
16
|
+
export type { ArrayValueDescriptor, EC, ECClassHierarchyInspector, ECSchemaProvider, NavigationValueDescriptor, PrimitiveValueDescriptor, PrimitiveValueType, RelationshipPath, StructValueDescriptor, ValueDescriptor, } from "./shared/Metadata.js";
|
|
17
17
|
export { createCachingECClassHierarchyInspector, getClass } from "./shared/Metadata.js";
|
|
18
|
-
export { createMainThreadReleaseOnTimePassedHandler, julianToDateTime,
|
|
18
|
+
export { createMainThreadReleaseOnTimePassedHandler, julianToDateTime, normalizeFullClassName, parseFullClassName, releaseMainThread, trimWhitespace, } from "./shared/Utils.js";
|
|
19
19
|
export { InstanceKey, PrimitiveValue, TypedPrimitiveValue } from "./shared/Values.js";
|
|
20
|
+
export type { ArrayValue, StructValue, Value, Point2dValue, Point3dValue } from "./shared/Values.js";
|
|
20
21
|
export type { Event, RaisableEvent, EventArgs, EventListener } from "./shared/Event.js";
|
|
21
22
|
//# sourceMappingURL=presentation-shared.d.ts.map
|
|
@@ -0,0 +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,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACzF,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACvH,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,kBAAkB,EAClB,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,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,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACrG,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
3
3
|
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
4
4
|
*--------------------------------------------------------------------------------------------*/
|
|
5
|
-
|
|
6
|
-
export { ECSql };
|
|
5
|
+
export * as ECSql from "./shared/ecsql-snippets/index.js";
|
|
7
6
|
export { ConcatenatedValue, ConcatenatedValuePart } from "./shared/ConcatenatedValue.js";
|
|
7
|
+
export { ECSqlBinding } from "./shared/ECSqlCore.js";
|
|
8
8
|
export { createDefaultValueFormatter, formatConcatenatedValue } from "./shared/Formatting.js";
|
|
9
9
|
export { parseInstanceLabel } from "./shared/InstanceLabelSelectClauseFactory.js";
|
|
10
10
|
export { createDefaultInstanceLabelSelectClauseFactory } from "./shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.js";
|
|
@@ -13,6 +13,6 @@ export { createBisInstanceLabelSelectClauseFactory } from "./shared/instance-lab
|
|
|
13
13
|
export { createIModelInstanceLabelSelectClauseFactory } from "./shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.js";
|
|
14
14
|
export { NOOP_LOGGER } from "./shared/Logging.js";
|
|
15
15
|
export { createCachingECClassHierarchyInspector, getClass } from "./shared/Metadata.js";
|
|
16
|
-
export { createMainThreadReleaseOnTimePassedHandler, julianToDateTime,
|
|
16
|
+
export { createMainThreadReleaseOnTimePassedHandler, julianToDateTime, normalizeFullClassName, parseFullClassName, releaseMainThread, trimWhitespace, } from "./shared/Utils.js";
|
|
17
17
|
export { InstanceKey, PrimitiveValue, TypedPrimitiveValue } from "./shared/Values.js";
|
|
18
18
|
//# sourceMappingURL=presentation-shared.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presentation-shared.js","sourceRoot":"","sources":["../src/presentation-shared.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,KAAK,KAAK,MAAM,kCAAkC,CAAC;AAE1D,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACzF,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAGrD,OAAO,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAE9F,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;AAE/I,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAclD,OAAO,EAAE,sCAAsC,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACxF,OAAO,EACL,0CAA0C,EAC1C,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,GACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConcatenatedValue.d.ts","sourceRoot":"","sources":["../../src/shared/ConcatenatedValue.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD;;;;;;;;;GASG;AACH,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,GAAG,mBAAmB,GAAG,MAAM,CAAC;AAErF,cAAc;AAEd,yBAAiB,qBAAqB,CAAC;IACrC,cAAc;IACd,SAAgB,QAAQ,CAAC,IAAI,EAAE,qBAAqB,GAAG,IAAI,IAAI,MAAM,CAEpE;IAED,cAAc;IACd,SAAgB,WAAW,CAAC,IAAI,EAAE,qBAAqB,GAAG,IAAI,IAAI,mBAAmB,CAEpF;IAED,cAAc;IACd,SAAgB,mBAAmB,CAAC,IAAI,EAAE,qBAAqB,GAAG,IAAI,IAAI,iBAAiB,CAE1F;CACF;AAED;;;;;GAKG;AACH,MAAM,MAAM,iBAAiB,GAAG,qBAAqB,EAAE,CAAC;AAExD,cAAc;AAEd,yBAAiB,iBAAiB,CAAC;IACjC;;;;;OAKG;IACH,SAAsB,SAAS,CAAC,KAAK,EAAE;QACrC,yBAAyB;QACzB,KAAK,EAAE,iBAAiB,CAAC;QACzB,qDAAqD;QACrD,aAAa,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,qBAAqB,EAAE,iBAAiB,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;QAC5F,6EAA6E;QAC7E,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GAAG,OAAO,CAAC,MAAM,CAAC,CAYlB;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConcatenatedValue.js","sourceRoot":"","sources":["../../src/shared/ConcatenatedValue.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAgBhG,cAAc;AACd,2DAA2D;AAC3D,MAAM,KAAW,qBAAqB,CAerC;AAfD,WAAiB,qBAAqB;IACpC,cAAc;IACd,SAAgB,QAAQ,CAAC,IAA2B;QAClD,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAC;IAClC,CAAC;IAFe,sBAAA,QAAQ,WAEvB,CAAA;IAED,cAAc;IACd,SAAgB,WAAW,CAAC,IAA2B;QACrD,OAAO,CAAC,CAAE,IAA4B,CAAC,IAAI,CAAC;IAC9C,CAAC;IAFe,sBAAA,WAAW,cAE1B,CAAA;IAED,cAAc;IACd,SAAgB,mBAAmB,CAAC,IAA2B;QAC7D,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAFe,sBAAA,mBAAmB,sBAElC,CAAA;AACH,CAAC,EAfgB,qBAAqB,KAArB,qBAAqB,QAerC;AAUD,cAAc;AACd,2DAA2D;AAC3D,MAAM,KAAW,iBAAiB,CA2BjC;AA3BD,WAAiB,iBAAiB;IAChC;;;;;OAKG;IACI,KAAK,UAAU,SAAS,CAAC,KAO/B;QACC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;QAClD,OAAO,CACL,MAAM,OAAO,CAAC,GAAG,CACf,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YACvB,IAAI,qBAAqB,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpD,OAAO,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC,CAAC;YAC9D,CAAC;YACD,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC,CAAC,CACH,CACF,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;IAC1B,CAAC;IAnBqB,kBAAA,SAAS,YAmB9B,CAAA;AACH,CAAC,EA3BgB,iBAAiB,KAAjB,iBAAiB,QA2BjC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { Id64String } from "@itwin/core-bentley";
|
|
2
|
+
import type { TypedPrimitiveValue } from "./Values.js";
|
|
2
3
|
/**
|
|
3
4
|
* Defines an ECSql binding consisting of a value and its type. Necessary to differentiate between numeric
|
|
4
5
|
* types and `Id64String` vs `string`.
|
|
@@ -34,6 +35,14 @@ export type ECSqlBinding = {
|
|
|
34
35
|
z: number;
|
|
35
36
|
};
|
|
36
37
|
};
|
|
38
|
+
/**
|
|
39
|
+
* Helpers for creating ECSQL bindings.
|
|
40
|
+
* @public
|
|
41
|
+
*/
|
|
42
|
+
export declare namespace ECSqlBinding {
|
|
43
|
+
/** Creates an ECSQL binding for the supplied typed primitive value. */
|
|
44
|
+
function create({ value, type }: TypedPrimitiveValue): ECSqlBinding;
|
|
45
|
+
}
|
|
37
46
|
/**
|
|
38
47
|
* Defines an ECSQL query and its bindings.
|
|
39
48
|
* @public
|
|
@@ -48,9 +57,14 @@ export interface ECSqlQueryDef {
|
|
|
48
57
|
ecsql: string;
|
|
49
58
|
/**
|
|
50
59
|
* Values to bind to the query.
|
|
60
|
+
*
|
|
61
|
+
* Provide bindings either as an array or as a record:
|
|
62
|
+
* - `ECSqlBinding[]` binds values by parameter position.
|
|
63
|
+
* - `Record<string, ECSqlBinding>` binds values by parameter name, where each key is the ECSQL parameter name.
|
|
64
|
+
*
|
|
51
65
|
* @see https://www.itwinjs.org/learning/ecsql/#ecsql-parameters
|
|
52
66
|
*/
|
|
53
|
-
bindings?: ECSqlBinding[]
|
|
67
|
+
bindings?: ECSqlBinding[] | Record<string, ECSqlBinding>;
|
|
54
68
|
}
|
|
55
69
|
/**
|
|
56
70
|
* Defines requested ECSQL result row format.
|
|
@@ -0,0 +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;AACtD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD;;;;;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;AAEH,yBAAiB,YAAY,CAAC;IAC5B,uEAAuE;IACvE,SAAgB,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,mBAAmB,GAAG,YAAY,CAqBzE;CACF;AAED;;;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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/*---------------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
3
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
4
|
+
*--------------------------------------------------------------------------------------------*/
|
|
5
|
+
/**
|
|
6
|
+
* Helpers for creating ECSQL bindings.
|
|
7
|
+
* @public
|
|
8
|
+
*/
|
|
9
|
+
// eslint-disable-next-line @typescript-eslint/no-redeclare
|
|
10
|
+
export var ECSqlBinding;
|
|
11
|
+
(function (ECSqlBinding) {
|
|
12
|
+
/** Creates an ECSQL binding for the supplied typed primitive value. */
|
|
13
|
+
function create({ value, type }) {
|
|
14
|
+
switch (type) {
|
|
15
|
+
case "Boolean":
|
|
16
|
+
return { type: "boolean", value };
|
|
17
|
+
case "Integer":
|
|
18
|
+
return { type: "int", value };
|
|
19
|
+
case "Long":
|
|
20
|
+
return { type: "long", value };
|
|
21
|
+
case "Double":
|
|
22
|
+
return { type: "double", value };
|
|
23
|
+
case "Id":
|
|
24
|
+
return { type: "id", value };
|
|
25
|
+
case "String":
|
|
26
|
+
return { type: "string", value };
|
|
27
|
+
case "DateTime":
|
|
28
|
+
return { type: "string", value: value instanceof Date ? value.toISOString() : value.toString() };
|
|
29
|
+
case "Point2d":
|
|
30
|
+
return { type: "point2d", value };
|
|
31
|
+
case "Point3d":
|
|
32
|
+
return { type: "point3d", value };
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
ECSqlBinding.create = create;
|
|
36
|
+
})(ECSqlBinding || (ECSqlBinding = {}));
|
|
37
|
+
//# sourceMappingURL=ECSqlCore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ECSqlCore.js","sourceRoot":"","sources":["../../src/shared/ECSqlCore.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAoBhG;;;GAGG;AACH,2DAA2D;AAC3D,MAAM,KAAW,YAAY,CAwB5B;AAxBD,WAAiB,YAAY;IAC3B,uEAAuE;IACvE,SAAgB,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAuB;QACzD,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,SAAS;gBACZ,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;YACpC,KAAK,SAAS;gBACZ,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;YAChC,KAAK,MAAM;gBACT,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;YACjC,KAAK,QAAQ;gBACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;YACnC,KAAK,IAAI;gBACP,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;YAC/B,KAAK,QAAQ;gBACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;YACnC,KAAK,UAAU;gBACb,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,YAAY,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;YACnG,KAAK,SAAS;gBACZ,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;YACpC,KAAK,SAAS;gBACZ,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;QACtC,CAAC;IACH,CAAC;IArBe,aAAA,MAAM,SAqBrB,CAAA;AACH,CAAC,EAxBgB,YAAY,KAAZ,YAAY,QAwB5B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Event.d.ts","sourceRoot":"","sources":["../../src/shared/Event.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;;GAGG;AACH,MAAM,WAAW,KAAK,CAAC,SAAS,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,MAAM,IAAI;IAC5E,WAAW,EAAE,CAAC,QAAQ,EAAE,SAAS,KAAK,MAAM,IAAI,CAAC;IACjD,cAAc,EAAE,CAAC,QAAQ,EAAE,SAAS,KAAK,IAAI,CAAC;CAC/C;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa,CAAC,SAAS,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,MAAM,IAAI,CAAE,SAAQ,KAAK,CAAC,SAAS,CAAC;IAC9G,UAAU,EAAE,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC;CACtD;AAED;;;GAGG;AACH,MAAM,MAAM,aAAa,CAAC,MAAM,SAAS,EAAE,IAAI,MAAM,SAAS,KAAK,CAAC,MAAM,SAAS,CAAC,GAAG,SAAS,GAAG,KAAK,CAAC;AAEzG;;;GAGG;AACH,MAAM,MAAM,SAAS,CAAC,MAAM,SAAS,EAAE,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Event.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"Event.js","sourceRoot":"","sources":["../../src/shared/Event.ts"],"names":[],"mappings":"AAAA;;;gGAGgG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Formatting.d.ts","sourceRoot":"","sources":["../../src/shared/Formatting.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAAyB,MAAM,wBAAwB,CAAC;AAGlF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD;;;;GAIG;AACH,MAAM,MAAM,wBAAwB,GAAG,CAAC,KAAK,EAAE,mBAAmB,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAEvF;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAAC,KAAK,EAAE;IACnD,KAAK,EAAE,iBAAiB,GAAG,MAAM,CAAC;IAClC,cAAc,EAAE,wBAAwB,CAAC;CAC1C,GAAG,OAAO,CAAC,MAAM,CAAC,CAgBlB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,2BAA2B,IAAI,wBAAwB,CAkBtE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Formatting.js","sourceRoot":"","sources":["../../src/shared/Formatting.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,7 +26,7 @@ export interface CreateInstanceLabelSelectClauseProps {
|
|
|
26
26
|
* implementations may be able to create a more efficient select clause (e.g. drop some pieces of clause
|
|
27
27
|
* that don't apply for given class).
|
|
28
28
|
*/
|
|
29
|
-
className?: EC.
|
|
29
|
+
className?: EC.FullClassNameDotNotation;
|
|
30
30
|
/**
|
|
31
31
|
* An optional function for concatenating multiple `TypedValueSelectClauseProps`. Selectors' concatenation
|
|
32
32
|
* is used when a label consists of multiple pieces, e.g.:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InstanceLabelSelectClauseFactory.d.ts","sourceRoot":"","sources":["../../src/shared/InstanceLabelSelectClauseFactory.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAClG,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAExC;;;GAGG;AACH,MAAM,WAAW,oCAAoC;IACnD;;;;;;;;;;OAUG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,EAAE,CAAC,wBAAwB,CAAC;IAExC;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,qBAAqB,CAAC,EAAE,CAAC,SAAS,EAAE,2BAA2B,EAAE,EAAE,aAAa,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;CACtG;AAED;;;;;;GAMG;AACH,MAAM,WAAW,iCAAiC;IAChD,qDAAqD;IACrD,kBAAkB,CAAC,KAAK,EAAE,oCAAoC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAClF;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,iBAAiB,GAAG,MAAM,CAaxF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InstanceLabelSelectClauseFactory.js","sourceRoot":"","sources":["../../src/shared/InstanceLabelSelectClauseFactory.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAuEhG;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAyB;IAC1D,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACrG,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,eAAe;QACjB,CAAC;IACH,CAAC;IACD,0BAA0B;IAC1B,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Logging.d.ts","sourceRoot":"","sources":["../../src/shared/Logging.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;AAEtE;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;AAE9D;;;GAGG;AACH,MAAM,WAAW,OAAO;IACtB,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAC;IAC1D,QAAQ,EAAE,WAAW,CAAC;IACtB,UAAU,EAAE,WAAW,CAAC;IACxB,OAAO,EAAE,WAAW,CAAC;IACrB,QAAQ,EAAE,WAAW,CAAC;CACvB;AAED;;;GAGG;AAEH,eAAO,MAAM,WAAW,EAAE,OAMzB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Logging.js","sourceRoot":"","sources":["../../src/shared/Logging.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AA0BhG;;;GAGG;AACH,qBAAqB;AACrB,MAAM,CAAC,MAAM,WAAW,GAAY;IAClC,SAAS,EAAE,GAAG,EAAE,CAAC,KAAK;IACtB,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;IAClB,UAAU,EAAE,GAAG,EAAE,GAAE,CAAC;IACpB,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;IACjB,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;CACnB,CAAC;AACF,oBAAoB"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* An utility `Omit` type which works with union types.
|
|
3
|
+
* @public
|
|
4
|
+
*/
|
|
5
|
+
export type OmitOverUnion<T, K extends PropertyKey> = T extends T ? Omit<T, K> : never;
|
|
6
|
+
/**
|
|
7
|
+
* An utility generic type to get array element's type.
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
export type ArrayElement<ArrayType extends readonly unknown[]> = ArrayType extends readonly (infer ElementType)[] ? ElementType : never;
|
|
11
|
+
/**
|
|
12
|
+
* Extracts the union of parameter tuples from a function type, including all of its
|
|
13
|
+
* overload signatures.
|
|
14
|
+
*
|
|
15
|
+
* `Parameters` from the standard library only ever reflects the last overload signature,
|
|
16
|
+
* so this helper matches against up to four call signatures to recover the full set.
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
19
|
+
type OverloadParameters<TFunc> = TFunc extends {
|
|
20
|
+
(...args: infer A1): any;
|
|
21
|
+
(...args: infer A2): any;
|
|
22
|
+
(...args: infer A3): any;
|
|
23
|
+
(...args: infer A4): any;
|
|
24
|
+
} ? A1 | A2 | A3 | A4 : TFunc extends {
|
|
25
|
+
(...args: infer A1): any;
|
|
26
|
+
(...args: infer A2): any;
|
|
27
|
+
(...args: infer A3): any;
|
|
28
|
+
} ? A1 | A2 | A3 : TFunc extends {
|
|
29
|
+
(...args: infer A1): any;
|
|
30
|
+
(...args: infer A2): any;
|
|
31
|
+
} ? A1 | A2 : TFunc extends (...args: infer A1) => any ? A1 : never;
|
|
32
|
+
/**
|
|
33
|
+
* Maps a single parameter tuple to the type of its lone object argument, preserving
|
|
34
|
+
* `undefined` when the argument is optional.
|
|
35
|
+
* @public
|
|
36
|
+
*/
|
|
37
|
+
type PropsFromParameters<TParams> = TParams extends [infer TProps] ? Exclude<TProps, undefined> extends object ? TProps : never : TParams extends [(infer TProps)?] ? Exclude<TProps, undefined> extends object ? TProps | undefined : never : never;
|
|
38
|
+
/**
|
|
39
|
+
* Returns type of `TFunc` parameter, when `TFunc` accepts exactly one object argument
|
|
40
|
+
* that can also be `undefined` / optional.
|
|
41
|
+
*
|
|
42
|
+
* When `TFunc` is an overloaded function, the result is a union of the parameter types
|
|
43
|
+
* across all of its overload signatures.
|
|
44
|
+
* @public
|
|
45
|
+
*/
|
|
46
|
+
export type Props<TFunc extends (...args: any[]) => any> = PropsFromParameters<OverloadParameters<TFunc>>;
|
|
47
|
+
export {};
|
|
48
|
+
//# sourceMappingURL=MappedTypes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MappedTypes.d.ts","sourceRoot":"","sources":["../../src/shared/MappedTypes.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,EAAE,CAAC,SAAS,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC;AAEvF;;;GAGG;AACH,MAAM,MAAM,YAAY,CAAC,SAAS,SAAS,SAAS,OAAO,EAAE,IAAI,SAAS,SAAS,SAAS,CAAC,MAAM,WAAW,CAAC,EAAE,GAC7G,WAAW,GACX,KAAK,CAAC;AAEV;;;;;;;GAOG;AACH,KAAK,kBAAkB,CAAC,KAAK,IAAI,KAAK,SAAS;IAC7C,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;IACzB,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;IACzB,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;IACzB,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;CAC1B,GACG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GACjB,KAAK,SAAS;IAAE,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;IAAC,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;IAAC,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,GAAG,CAAA;CAAE,GAC5F,EAAE,GAAG,EAAE,GAAG,EAAE,GACZ,KAAK,SAAS;IAAE,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;IAAC,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,GAAG,CAAA;CAAE,GAClE,EAAE,GAAG,EAAE,GACP,KAAK,SAAS,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,KAAK,GAAG,GACtC,EAAE,GACF,KAAK,CAAC;AAEhB;;;;GAIG;AACH,KAAK,mBAAmB,CAAC,OAAO,IAAI,OAAO,SAAS,CAAC,MAAM,MAAM,CAAC,GAC9D,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,SAAS,MAAM,GACvC,MAAM,GACN,KAAK,GACP,OAAO,SAAS,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,CAAC,GAC/B,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,SAAS,MAAM,GACvC,MAAM,GAAG,SAAS,GAClB,KAAK,GACP,KAAK,CAAC;AAEZ;;;;;;;GAOG;AACH,MAAM,MAAM,KAAK,CAAC,KAAK,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,IAAI,mBAAmB,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MappedTypes.js","sourceRoot":"","sources":["../../src/shared/MappedTypes.ts"],"names":[],"mappings":"AAAA;;;gGAGgG"}
|