@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
|
@@ -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
|
*
|
|
@@ -13,7 +14,7 @@ export interface ECSchemaProvider {
|
|
|
13
14
|
* @public
|
|
14
15
|
*/
|
|
15
16
|
export interface ECClassHierarchyInspector {
|
|
16
|
-
classDerivesFrom(derivedClassFullName: EC.
|
|
17
|
+
classDerivesFrom(derivedClassFullName: EC.FullClassNameDotNotation, candidateBaseClassFullName: EC.FullClassNameDotNotation): Promise<boolean> | boolean;
|
|
17
18
|
}
|
|
18
19
|
/**
|
|
19
20
|
* Creates a new `ECClassHierarchyInspector` that caches results of `derivesFrom` calls.
|
|
@@ -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
|
}
|
|
@@ -51,9 +67,10 @@ export declare namespace EC {
|
|
|
51
67
|
*/
|
|
52
68
|
interface SchemaItem {
|
|
53
69
|
schema: Schema;
|
|
54
|
-
fullName:
|
|
70
|
+
fullName: FullClassNameDotNotation;
|
|
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;
|
|
@@ -78,7 +97,10 @@ export declare namespace EC {
|
|
|
78
97
|
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/entityclass/
|
|
79
98
|
* @public
|
|
80
99
|
*/
|
|
81
|
-
|
|
100
|
+
interface EntityClass extends Class {
|
|
101
|
+
/** Gets the mixins applied directly to this entity class. */
|
|
102
|
+
getMixins(): Promise<Mixin[]>;
|
|
103
|
+
}
|
|
82
104
|
/**
|
|
83
105
|
* Represents a struct class.
|
|
84
106
|
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/structclass/
|
|
@@ -97,6 +119,15 @@ export declare namespace EC {
|
|
|
97
119
|
* @public
|
|
98
120
|
*/
|
|
99
121
|
type KindOfQuantity = SchemaItem;
|
|
122
|
+
/**
|
|
123
|
+
* Represents a property category used to group related properties.
|
|
124
|
+
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/propertycategory/
|
|
125
|
+
* @public
|
|
126
|
+
*/
|
|
127
|
+
interface PropertyCategory extends SchemaItem {
|
|
128
|
+
/** Determines the display order of the category relative to other categories. Higher priority categories are displayed first. */
|
|
129
|
+
priority: number;
|
|
130
|
+
}
|
|
100
131
|
/**
|
|
101
132
|
* Represents a relationship constraint multiplicity.
|
|
102
133
|
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/relationshipmultiplicity/
|
|
@@ -157,6 +188,7 @@ export declare namespace EC {
|
|
|
157
188
|
class: Class;
|
|
158
189
|
label?: string;
|
|
159
190
|
kindOfQuantity: Promise<KindOfQuantity | undefined>;
|
|
191
|
+
category: Promise<PropertyCategory | undefined>;
|
|
160
192
|
isArray(): this is ArrayProperty;
|
|
161
193
|
isStruct(): this is StructProperty;
|
|
162
194
|
isPrimitive(): this is PrimitiveProperty;
|
|
@@ -244,8 +276,8 @@ export declare namespace EC {
|
|
|
244
276
|
* @public
|
|
245
277
|
*/
|
|
246
278
|
interface CustomAttributeSet {
|
|
247
|
-
[Symbol.iterator]: () => IterableIterator<[
|
|
248
|
-
get(className:
|
|
279
|
+
[Symbol.iterator]: () => IterableIterator<[FullClassNameDotNotation, CustomAttribute]>;
|
|
280
|
+
get(className: FullClassNameDotNotation): CustomAttribute | undefined;
|
|
249
281
|
}
|
|
250
282
|
/**
|
|
251
283
|
* Defines a custom attribute that may be applied to a class or property.
|
|
@@ -253,32 +285,213 @@ export declare namespace EC {
|
|
|
253
285
|
* @public
|
|
254
286
|
*/
|
|
255
287
|
interface CustomAttribute {
|
|
256
|
-
className:
|
|
288
|
+
className: FullClassNameDotNotation;
|
|
257
289
|
[propName: string]: any;
|
|
258
290
|
}
|
|
259
291
|
}
|
|
260
292
|
/**
|
|
261
|
-
*
|
|
293
|
+
* A union of all primitive value types supported by the Presentation packages.
|
|
294
|
+
*
|
|
295
|
+
* Compared to `EC.PrimitiveType`:
|
|
296
|
+
* - Adds `"Id"` to support id properties such as `ECInstanceId` or `ECClassId`, which have no equivalent in `EC.PrimitiveType`.
|
|
297
|
+
* - Excludes `"Binary"` and `"IGeometry"`, as properties of those types are not supported by the Presentation packages.
|
|
298
|
+
*
|
|
262
299
|
* @public
|
|
263
300
|
*/
|
|
264
301
|
export type PrimitiveValueType = "Id" | Exclude<EC.PrimitiveType, "Binary" | "IGeometry">;
|
|
302
|
+
/**
|
|
303
|
+
* A type descriptor for a value's shape.
|
|
304
|
+
*
|
|
305
|
+
* - `PrimitiveValueDescriptor`: a scalar primitive.
|
|
306
|
+
* - `StructValueDescriptor`: a named struct with typed members.
|
|
307
|
+
* - `ArrayValueDescriptor`: an ordered collection of a single element type.
|
|
308
|
+
* - `NavigationValueDescriptor`: a reference to another EC instance, carrying the reference's target class name.
|
|
309
|
+
*
|
|
310
|
+
* @public
|
|
311
|
+
*/
|
|
312
|
+
export type ValueDescriptor = PrimitiveValueDescriptor | StructValueDescriptor | ArrayValueDescriptor | NavigationValueDescriptor;
|
|
313
|
+
/**
|
|
314
|
+
* Describes a scalar primitive value.
|
|
315
|
+
*
|
|
316
|
+
* When the value is backed by an enumeration (only possible for `String`-, `Integer`- and
|
|
317
|
+
* `Long`-typed values), `enumeration` carries the enumeration's metadata (its declared enumerators
|
|
318
|
+
* and their labels) so consumers can map raw values to display labels without re-reading schema. The
|
|
319
|
+
* `type` discriminates the enumerator value type (`String` → `string`, `Integer | Long` → `number`).
|
|
320
|
+
*
|
|
321
|
+
* @public
|
|
322
|
+
*/
|
|
323
|
+
export type PrimitiveValueDescriptor = {
|
|
324
|
+
kind: "primitive";
|
|
325
|
+
} & ({
|
|
326
|
+
/** The primitive value type. */
|
|
327
|
+
type: Extract<PrimitiveValueType, "String">;
|
|
328
|
+
kindOfQuantity?: undefined;
|
|
329
|
+
/** Metadata of the enumeration backing this value, when it is enumeration-backed. */
|
|
330
|
+
enumeration?: EnumerationInfo<string>;
|
|
331
|
+
} | {
|
|
332
|
+
/** The primitive value type. */
|
|
333
|
+
type: Extract<PrimitiveValueType, "Integer" | "Long">;
|
|
334
|
+
/**
|
|
335
|
+
* Full name of the KindOfQuantity associated with this property (e.g., `"Units.LENGTH"`).
|
|
336
|
+
* Determines how the value should be formatted and which units to display.
|
|
337
|
+
*/
|
|
338
|
+
kindOfQuantity?: string;
|
|
339
|
+
/** Metadata of the enumeration backing this value, when it is enumeration-backed. */
|
|
340
|
+
enumeration?: EnumerationInfo<number>;
|
|
341
|
+
} | {
|
|
342
|
+
/** The primitive value type. */
|
|
343
|
+
type: Extract<PrimitiveValueType, "Double">;
|
|
344
|
+
/**
|
|
345
|
+
* Full name of the KindOfQuantity associated with this property (e.g., `"Units.LENGTH"`).
|
|
346
|
+
* Determines how the value should be formatted and which units to display.
|
|
347
|
+
*/
|
|
348
|
+
kindOfQuantity?: string;
|
|
349
|
+
enumeration?: undefined;
|
|
350
|
+
} | {
|
|
351
|
+
/** The primitive value type. */
|
|
352
|
+
type: Exclude<PrimitiveValueType, "Integer" | "Long" | "Double" | "String">;
|
|
353
|
+
kindOfQuantity?: undefined;
|
|
354
|
+
enumeration?: undefined;
|
|
355
|
+
});
|
|
356
|
+
/**
|
|
357
|
+
* Metadata about the enumeration backing a primitive value. Preserved on a
|
|
358
|
+
* `PrimitiveValueDescriptor` so consumers can map raw enum values to their display labels
|
|
359
|
+
* without re-reading schema.
|
|
360
|
+
* @public
|
|
361
|
+
*/
|
|
362
|
+
interface EnumerationInfo<TValue extends string | number = string | number> {
|
|
363
|
+
/** Name of the enumeration type (e.g., `"MySchema.MyEnum"` for schema-backed enums). */
|
|
364
|
+
name: string;
|
|
365
|
+
/** When `true`, values are restricted to the declared enumerators. */
|
|
366
|
+
isStrict: boolean;
|
|
367
|
+
/** The declared enumerators. */
|
|
368
|
+
enumerators: EnumeratorInfo<TValue>[];
|
|
369
|
+
}
|
|
370
|
+
/**
|
|
371
|
+
* A single enumerator of an `EnumerationInfo`.
|
|
372
|
+
* @public
|
|
373
|
+
*/
|
|
374
|
+
interface EnumeratorInfo<TValue extends string | number = string | number> {
|
|
375
|
+
/** Display label for the enumerator. */
|
|
376
|
+
label: string;
|
|
377
|
+
/** The enumerator's raw value (string- or integer-backed, per the owning descriptor's `type`). */
|
|
378
|
+
value: TValue;
|
|
379
|
+
/** Optional description. */
|
|
380
|
+
description?: string;
|
|
381
|
+
}
|
|
382
|
+
/**
|
|
383
|
+
* Describes a named struct value with typed members.
|
|
384
|
+
* @public
|
|
385
|
+
*/
|
|
386
|
+
export interface StructValueDescriptor {
|
|
387
|
+
kind: "struct";
|
|
388
|
+
/** The list of named, typed members that make up this struct. */
|
|
389
|
+
members: StructMember[];
|
|
390
|
+
}
|
|
391
|
+
/**
|
|
392
|
+
* Describes a single member of a `StructValueDescriptor`.
|
|
393
|
+
* @public
|
|
394
|
+
*/
|
|
395
|
+
interface StructMember {
|
|
396
|
+
/** The member's property name. */
|
|
397
|
+
name: string;
|
|
398
|
+
/** A human-readable label for display purposes. */
|
|
399
|
+
label: string;
|
|
400
|
+
/** The type descriptor for this member's value. */
|
|
401
|
+
type: ValueDescriptor;
|
|
402
|
+
}
|
|
403
|
+
/**
|
|
404
|
+
* Describes an ordered collection of values of a single element type.
|
|
405
|
+
* @public
|
|
406
|
+
*/
|
|
407
|
+
export interface ArrayValueDescriptor {
|
|
408
|
+
kind: "array";
|
|
409
|
+
/** The type descriptor for each element in the array. */
|
|
410
|
+
elementType: ValueDescriptor;
|
|
411
|
+
}
|
|
412
|
+
/**
|
|
413
|
+
* Describes a navigation property value — a reference to another EC instance.
|
|
414
|
+
* The runtime value is the referenced instance's id (`Id64String`); this descriptor
|
|
415
|
+
* additionally carries the reference's target class name as metadata, so consumers can
|
|
416
|
+
* build selects against the referenced instance (e.g. to resolve its label).
|
|
417
|
+
* @public
|
|
418
|
+
*/
|
|
419
|
+
export interface NavigationValueDescriptor {
|
|
420
|
+
kind: "navigation";
|
|
421
|
+
/**
|
|
422
|
+
* Full name of the relationship's target-constraint class the navigation points at
|
|
423
|
+
* (the referenced instance's class, or its base constraint class).
|
|
424
|
+
*/
|
|
425
|
+
targetClassName: EC.FullClassNameDotNotation;
|
|
426
|
+
}
|
|
265
427
|
/**
|
|
266
428
|
* Describes a single step through an ECRelationship from source ECClass to target ECClass.
|
|
267
429
|
* @public
|
|
268
430
|
*/
|
|
269
431
|
export interface RelationshipPathStep {
|
|
270
432
|
/** Full name of the source ECClass */
|
|
271
|
-
sourceClassName: EC.
|
|
433
|
+
sourceClassName: EC.FullClassNameDotNotation;
|
|
272
434
|
/** Full name of the target ECClass */
|
|
273
|
-
targetClassName: EC.
|
|
435
|
+
targetClassName: EC.FullClassNameDotNotation;
|
|
274
436
|
/** Full name of the ECRelationshipClass */
|
|
275
|
-
relationshipName: EC.
|
|
437
|
+
relationshipName: EC.FullClassNameDotNotation;
|
|
276
438
|
/**
|
|
277
439
|
* Indicates that the relationship direction be reversed. This should be set to `true` when step direction
|
|
278
440
|
* doesn't match relationship direction, e.g. relationship is from source `A` to target `B` and the step
|
|
279
441
|
* describes a step from `B` to `A`.
|
|
280
442
|
*/
|
|
281
443
|
relationshipReverse?: boolean;
|
|
444
|
+
/**
|
|
445
|
+
* Optional filter applied to instances at this step.
|
|
446
|
+
* Only instances matching the filter will be included when traversing this relationship.
|
|
447
|
+
* The filter expression can reference target class properties and, for non-navigation-property
|
|
448
|
+
* relationships (link table relationships), also relationship class properties.
|
|
449
|
+
* Referencing relationship class properties via `relationshipAlias` is not supported for
|
|
450
|
+
* navigation-property steps because the relationship table is not part of the query in that case.
|
|
451
|
+
*/
|
|
452
|
+
instanceFilter?: {
|
|
453
|
+
/**
|
|
454
|
+
* ECSQL WHERE clause expression (without the WHERE keyword).
|
|
455
|
+
*
|
|
456
|
+
* Use `targetAlias` (defaults to `"this"`) followed by a dot to reference properties
|
|
457
|
+
* of the filtered class, and `relationshipAlias` (defaults to `"rel"`) to reference
|
|
458
|
+
* properties on the relationship class. At query generation time, the pipeline replaces
|
|
459
|
+
* all `{alias}.` occurrences (in both their bare `{alias}.` and bracket-quoted `[{alias}].`
|
|
460
|
+
* forms) with the actual query aliases.
|
|
461
|
+
*
|
|
462
|
+
* @example
|
|
463
|
+
* ```
|
|
464
|
+
* expression: "this.Area > :minArea AND rel.Priority > 0"
|
|
465
|
+
* ```
|
|
466
|
+
*/
|
|
467
|
+
expression: string;
|
|
468
|
+
/**
|
|
469
|
+
* The placeholder used in `expression` to reference the target class (`targetClassName`).
|
|
470
|
+
* Every occurrence of `{targetAlias}.` in the expression, whether bare (`{targetAlias}.`)
|
|
471
|
+
* or bracket-quoted (`[{targetAlias}].`), will be replaced with the actual query alias at
|
|
472
|
+
* query generation time.
|
|
473
|
+
*
|
|
474
|
+
* @default "this"
|
|
475
|
+
*/
|
|
476
|
+
targetAlias?: string;
|
|
477
|
+
/**
|
|
478
|
+
* The placeholder used in `expression` to reference the relationship class (`relationshipName`).
|
|
479
|
+
* Every occurrence of `{relationshipAlias}.` in the expression, whether bare (`{relationshipAlias}.`)
|
|
480
|
+
* or bracket-quoted (`[{relationshipAlias}].`), will be replaced with the actual relationship alias
|
|
481
|
+
* at query generation time.
|
|
482
|
+
*
|
|
483
|
+
* Only meaningful for non-navigation-property (link table) relationships. When the step uses a
|
|
484
|
+
* navigation property, the relationship table is not part of the query, so any reference via
|
|
485
|
+
* this alias will produce invalid ECSQL.
|
|
486
|
+
*
|
|
487
|
+
* @default "rel"
|
|
488
|
+
*/
|
|
489
|
+
relationshipAlias?: string;
|
|
490
|
+
/**
|
|
491
|
+
* Bind values for the expression, keyed by parameter name.
|
|
492
|
+
*/
|
|
493
|
+
bindings?: Record<string, ECSqlBinding>;
|
|
494
|
+
};
|
|
282
495
|
}
|
|
283
496
|
/**
|
|
284
497
|
* Describes a path from source ECClass to target ECClass through multiple ECRelationships.
|
|
@@ -290,5 +503,6 @@ export type RelationshipPath<TStep extends RelationshipPathStep = RelationshipPa
|
|
|
290
503
|
* @throws Error if the schema or class is not found.
|
|
291
504
|
* @public
|
|
292
505
|
*/
|
|
293
|
-
export declare function getClass(schemaProvider: ECSchemaProvider, fullClassName: EC.
|
|
506
|
+
export declare function getClass(schemaProvider: ECSchemaProvider, fullClassName: EC.FullClassNameDotNotation): Promise<EC.Class>;
|
|
507
|
+
export {};
|
|
294
508
|
//# sourceMappingURL=Metadata.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Metadata.d.ts","sourceRoot":"","sources":["../../src/shared/Metadata.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CAC/D;AAED;;;;GAIG;AACH,MAAM,WAAW,yBAAyB;IACxC,gBAAgB,CACd,oBAAoB,EAAE,EAAE,CAAC,wBAAwB,EACjD,0BAA0B,EAAE,EAAE,CAAC,wBAAwB,GACtD,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;CAC/B;AAED;;;GAGG;AACH,wBAAgB,sCAAsC,CAAC,KAAK,EAAE;IAC5D,8DAA8D;IAC9D,cAAc,EAAE,gBAAgB,CAAC;IACjC,gJAAgJ;IAChJ,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,yBAAyB,CA0B5B;AAED;;;;GAIG;AACH,yBAAiB,EAAE,CAAC;IAClB,KAAY,wBAAwB,GAAG,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC;IAC7D,KAAY,0BAA0B,GAAG,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC;IAC/D,KAAY,aAAa,GAAG,0BAA0B,GAAG,wBAAwB,CAAC;IAElF;;;;OAIG;IACH,UAAiB,aAAa;QAC5B,2DAA2D;QAC3D,IAAI,EAAE,MAAM,CAAC;QACb,iGAAiG;QACjG,KAAK,EAAE,MAAM,CAAC;QACd,2DAA2D;QAC3D,KAAK,EAAE,MAAM,CAAC;KACf;IAED;;;;OAIG;IACH,UAAiB,MAAM;QACrB,IAAI,EAAE,MAAM,CAAC;QACb,gGAAgG;QAChG,OAAO,EAAE,aAAa,CAAC;QACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC;QACnD,mBAAmB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;KACpD;IAED;;;;OAIG;IACH,UAAiB,UAAU;QACzB,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,wBAAwB,CAAC;QACnC,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB;IAED;;;;OAIG;IACH,UAAiB,KAAM,SAAQ,UAAU;QACvC,SAAS,EAAE,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC;QACtC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QAC5D,EAAE,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QACnC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC;QACzD,aAAa,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC1C,4GAA4G;QAC5G,gBAAgB,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC7C,aAAa,IAAI,IAAI,IAAI,WAAW,CAAC;QACrC,mBAAmB,IAAI,IAAI,IAAI,iBAAiB,CAAC;QACjD,aAAa,IAAI,IAAI,IAAI,WAAW,CAAC;QACrC,OAAO,IAAI,IAAI,IAAI,KAAK,CAAC;QACzB,iBAAiB,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QACtC,mBAAmB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;KACpD;IAED;;;;OAIG;IACH,UAAiB,WAAY,SAAQ,KAAK;QACxC,6DAA6D;QAC7D,SAAS,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;KAC/B;IAED;;;;OAIG;IACH,KAAY,WAAW,GAAG,KAAK,CAAC;IAEhC;;;;OAIG;IACH,KAAY,KAAK,GAAG,KAAK,CAAC;IAE1B;;;;OAIG;IACH,KAAY,cAAc,GAAG,UAAU,CAAC;IAExC;;;;OAIG;IACH,UAAiB,gBAAiB,SAAQ,UAAU;QAClD,iIAAiI;QACjI,QAAQ,EAAE,MAAM,CAAC;KAClB;IAED;;;;OAIG;IACH,UAAiB,kCAAkC;QACjD,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;KACpB;IAED;;;;OAIG;IACH,UAAiB,sBAAsB;QACrC,YAAY,EAAE,kCAAkC,CAAC;QACjD,WAAW,EAAE,OAAO,CAAC;QACrB,kBAAkB,EAAE,OAAO,CAAC,WAAW,GAAG,KAAK,GAAG,iBAAiB,GAAG,SAAS,CAAC,CAAC;KAClF;IAED;;;;OAIG;IACH,UAAiB,iBAAkB,SAAQ,KAAK;QAC9C,SAAS,EAAE,SAAS,GAAG,UAAU,CAAC;QAClC,MAAM,EAAE,sBAAsB,CAAC;QAC/B,MAAM,EAAE,sBAAsB,CAAC;KAChC;IAED;;;;OAIG;IACH,UAAiB,UAAU,CAAC,CAAC;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,CAAC,CAAC;QACT,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB;IAED;;;;OAIG;IACH,UAAiB,WAAY,SAAQ,UAAU;QAC7C,WAAW,EAAE,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC;QAChD,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;QAC1B,QAAQ,EAAE,OAAO,CAAC;KACnB;IAED;;;;OAIG;IACH,UAAiB,QAAQ;QACvB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,cAAc,EAAE,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAAC;QACpD,QAAQ,EAAE,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC;QAEhD,OAAO,IAAI,IAAI,IAAI,aAAa,CAAC;QACjC,QAAQ,IAAI,IAAI,IAAI,cAAc,CAAC;QACnC,WAAW,IAAI,IAAI,IAAI,iBAAiB,CAAC;QACzC,aAAa,IAAI,IAAI,IAAI,mBAAmB,CAAC;QAC7C,YAAY,IAAI,IAAI,IAAI,kBAAkB,CAAC;QAE3C,mBAAmB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;KACpD;IAED;;;;OAIG;IACH,UAAiB,uBAAuB;QACtC,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB;IAED;;;;OAIG;IACH,KAAY,mBAAmB,GAAG,cAAc,GAAG,uBAAuB,CAAC;IAC3E;;;;OAIG;IACH,KAAY,wBAAwB,GAAG,mBAAmB,GAAG,uBAAuB,CAAC;IACrF;;;;OAIG;IACH,KAAY,sBAAsB,GAAG,iBAAiB,GAAG,uBAAuB,CAAC;IACjF;;;;OAIG;IACH,KAAY,aAAa,GAAG,mBAAmB,GAAG,wBAAwB,GAAG,sBAAsB,CAAC;IAEpG;;;;OAIG;IACH,UAAiB,cAAe,SAAQ,QAAQ;QAC9C,WAAW,EAAE,WAAW,CAAC;KAC1B;IAED;;;;OAIG;IACH,UAAiB,mBAAoB,SAAQ,QAAQ;QACnD,WAAW,EAAE,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;QAC9C,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B;IAED;;;;OAIG;IACH,UAAiB,kBAAmB,SAAQ,QAAQ;QAClD,iBAAiB,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAC9C,SAAS,EAAE,SAAS,GAAG,UAAU,CAAC;KACnC;IAED;;;;OAIG;IACH,KAAY,aAAa,GACrB,QAAQ,GACR,SAAS,GACT,UAAU,GACV,QAAQ,GACR,SAAS,GACT,MAAM,GACN,SAAS,GACT,SAAS,GACT,QAAQ,GACR,WAAW,CAAC;IAEhB;;;;OAIG;IACH,UAAiB,iBAAkB,SAAQ,QAAQ;QACjD,aAAa,EAAE,aAAa,CAAC;QAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B;IAED;;;;OAIG;IACH,UAAiB,kBAAkB;QACjC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,gBAAgB,CAAC,CAAC,wBAAwB,EAAE,eAAe,CAAC,CAAC,CAAC;QACvF,GAAG,CAAC,SAAS,EAAE,wBAAwB,GAAG,eAAe,GAAG,SAAS,CAAC;KACvE;IAED;;;;OAIG;IACH,UAAiB,eAAe;QAC9B,SAAS,EAAE,wBAAwB,CAAC;QACpC,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG,CAAC;KACzB;CACF;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,kBAAkB,GAAG,IAAI,GAAG,OAAO,CAAC,EAAE,CAAC,aAAa,EAAE,QAAQ,GAAG,WAAW,CAAC,CAAC;AAE1F;;;;;;;;;GASG;AACH,MAAM,MAAM,eAAe,GACvB,wBAAwB,GACxB,qBAAqB,GACrB,oBAAoB,GACpB,yBAAyB,CAAC;AAE9B;;;;;;;;;GASG;AACH,MAAM,MAAM,wBAAwB,GAAG;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GAAG,CAC3D;IACE,gCAAgC;IAChC,IAAI,EAAE,OAAO,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;IAC5C,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B,qFAAqF;IACrF,WAAW,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;CACvC,GACD;IACE,gCAAgC;IAChC,IAAI,EAAE,OAAO,CAAC,kBAAkB,EAAE,SAAS,GAAG,MAAM,CAAC,CAAC;IACtD;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qFAAqF;IACrF,WAAW,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;CACvC,GACD;IACE,gCAAgC;IAChC,IAAI,EAAE,OAAO,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;IAC5C;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,SAAS,CAAC;CACzB,GACD;IACE,gCAAgC;IAChC,IAAI,EAAE,OAAO,CAAC,kBAAkB,EAAE,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC,CAAC;IAC5E,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B,WAAW,CAAC,EAAE,SAAS,CAAC;CACzB,CACJ,CAAC;AAEF;;;;;GAKG;AACH,UAAU,eAAe,CAAC,MAAM,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM;IACxE,wFAAwF;IACxF,IAAI,EAAE,MAAM,CAAC;IACb,sEAAsE;IACtE,QAAQ,EAAE,OAAO,CAAC;IAClB,gCAAgC;IAChC,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;CACvC;AAED;;;GAGG;AACH,UAAU,cAAc,CAAC,MAAM,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM;IACvE,wCAAwC;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,kGAAkG;IAClG,KAAK,EAAE,MAAM,CAAC;IACd,4BAA4B;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,QAAQ,CAAC;IACf,iEAAiE;IACjE,OAAO,EAAE,YAAY,EAAE,CAAC;CACzB;AAED;;;GAGG;AACH,UAAU,YAAY;IACpB,kCAAkC;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,mDAAmD;IACnD,IAAI,EAAE,eAAe,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,OAAO,CAAC;IACd,yDAAyD;IACzD,WAAW,EAAE,eAAe,CAAC;CAC9B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,YAAY,CAAC;IACnB;;;OAGG;IACH,eAAe,EAAE,EAAE,CAAC,wBAAwB,CAAC;CAC9C;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,sCAAsC;IACtC,eAAe,EAAE,EAAE,CAAC,wBAAwB,CAAC;IAC7C,sCAAsC;IACtC,eAAe,EAAE,EAAE,CAAC,wBAAwB,CAAC;IAC7C,2CAA2C;IAC3C,gBAAgB,EAAE,EAAE,CAAC,wBAAwB,CAAC;IAC9C;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;OAOG;IACH,cAAc,CAAC,EAAE;QACf;;;;;;;;;;;;;WAaG;QACH,UAAU,EAAE,MAAM,CAAC;QAEnB;;;;;;;WAOG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB;;;;;;;;;;;WAWG;QACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAE3B;;WAEG;QACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;KACzC,CAAC;CACH;AAED;;;GAGG;AACH,MAAM,MAAM,gBAAgB,CAAC,KAAK,SAAS,oBAAoB,GAAG,oBAAoB,IAAI,KAAK,EAAE,CAAC;AAElG;;;;GAIG;AACH,wBAAsB,QAAQ,CAC5B,cAAc,EAAE,gBAAgB,EAChC,aAAa,EAAE,EAAE,CAAC,wBAAwB,GACzC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAWnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Metadata.js","sourceRoot":"","sources":["../../src/shared/Metadata.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AA0BhD;;;GAGG;AACH,MAAM,UAAU,sCAAsC,CAAC,KAKtD;IACC,MAAM,GAAG,GAAG,IAAI,MAAM,CAAqC,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC;IACjF,SAAS,cAAc,CAAC,gBAA6C,EAAE,aAA0C;QAC/G,OAAO,GAAG,gBAAgB,IAAI,aAAa,EAAE,CAAC;IAChD,CAAC;IACD,OAAO;QACL,gBAAgB,CACd,oBAAiD,EACjD,0BAAuD;YAEvD,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;AAohBD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,cAAgC,EAChC,aAA0C;IAE1C,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,kBAAkB,CAAC,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"}
|
|
@@ -18,12 +18,6 @@ export declare function parseFullClassName(fullClassName: string): {
|
|
|
18
18
|
* @public
|
|
19
19
|
*/
|
|
20
20
|
export declare function normalizeFullClassName(fullClassName: string): EC.FullClassNameDotNotation;
|
|
21
|
-
/**
|
|
22
|
-
* An utility that compares two full class names in a case insensitive way, ignoring different
|
|
23
|
-
* supported schema-class name separators (`.` or `:`).
|
|
24
|
-
* @public
|
|
25
|
-
*/
|
|
26
|
-
export declare function compareFullClassNames(lhs: EC.FullClassName, rhs: EC.FullClassName): number;
|
|
27
21
|
/**
|
|
28
22
|
* An utility to remove all extra whitespace from a given string.
|
|
29
23
|
* @public
|
|
@@ -0,0 +1 @@
|
|
|
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;IAmB7C,UAAU;IAA+B,SAAS;EAC5D;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG,EAAE,CAAC,wBAAwB,CAGzF;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"}
|
|
@@ -2,6 +2,7 @@
|
|
|
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
|
+
import { assert } from "@itwin/core-bentley";
|
|
5
6
|
/**
|
|
6
7
|
* An utility to parse schema and class names from full class name, where
|
|
7
8
|
* schema and class names are separated by either `:` or `.`.
|
|
@@ -10,11 +11,22 @@
|
|
|
10
11
|
* @public
|
|
11
12
|
*/
|
|
12
13
|
export function parseFullClassName(fullClassName) {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
let idx = fullClassName.indexOf(".");
|
|
15
|
+
let includesDot = true;
|
|
16
|
+
if (idx <= 0) {
|
|
17
|
+
includesDot = false;
|
|
18
|
+
idx = fullClassName.indexOf(":");
|
|
19
|
+
if (idx <= 0) {
|
|
20
|
+
throw new Error(`Invalid full class name: ${fullClassName}`);
|
|
21
|
+
}
|
|
16
22
|
}
|
|
17
|
-
|
|
23
|
+
assert(() => {
|
|
24
|
+
return (idx < fullClassName.length - 1 &&
|
|
25
|
+
(includesDot
|
|
26
|
+
? fullClassName.lastIndexOf(".") === idx && fullClassName.indexOf(":") === -1
|
|
27
|
+
: fullClassName.lastIndexOf(":") === idx));
|
|
28
|
+
}, `Invalid full class name: ${fullClassName}`);
|
|
29
|
+
return { schemaName: fullClassName.slice(0, idx), className: fullClassName.slice(idx + 1) };
|
|
18
30
|
}
|
|
19
31
|
/**
|
|
20
32
|
* An utility to normalize full class name from either `SchemaName:ClassName` or
|
|
@@ -27,21 +39,6 @@ export function normalizeFullClassName(fullClassName) {
|
|
|
27
39
|
const { schemaName, className } = parseFullClassName(fullClassName);
|
|
28
40
|
return `${schemaName}.${className}`;
|
|
29
41
|
}
|
|
30
|
-
/**
|
|
31
|
-
* An utility that compares two full class names in a case insensitive way, ignoring different
|
|
32
|
-
* supported schema-class name separators (`.` or `:`).
|
|
33
|
-
* @public
|
|
34
|
-
*/
|
|
35
|
-
export function compareFullClassNames(lhs, rhs) {
|
|
36
|
-
const parsed = { lhs: parseFullClassName(lhs), rhs: parseFullClassName(rhs) };
|
|
37
|
-
const schemaCompare = parsed.lhs.schemaName
|
|
38
|
-
.toLocaleLowerCase()
|
|
39
|
-
.localeCompare(parsed.rhs.schemaName.toLocaleLowerCase());
|
|
40
|
-
if (schemaCompare !== 0) {
|
|
41
|
-
return schemaCompare;
|
|
42
|
-
}
|
|
43
|
-
return parsed.lhs.className.toLocaleLowerCase().localeCompare(parsed.rhs.className.toLocaleLowerCase());
|
|
44
|
-
}
|
|
45
42
|
/** @public */
|
|
46
43
|
export function trimWhitespace(str) {
|
|
47
44
|
if (!str) {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../src/shared/Utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import type { EC, PrimitiveValueType } from "./Metadata.js";
|
|
|
6
6
|
*/
|
|
7
7
|
export interface InstanceKey {
|
|
8
8
|
/** Full class name in format `SchemaName.ClassName` */
|
|
9
|
-
className: EC.
|
|
9
|
+
className: EC.FullClassNameDotNotation;
|
|
10
10
|
/** ECInstance ID */
|
|
11
11
|
id: Id64String;
|
|
12
12
|
}
|
|
@@ -30,7 +30,7 @@ export declare namespace InstanceKey {
|
|
|
30
30
|
* A data structure for a 2d point.
|
|
31
31
|
* @public
|
|
32
32
|
*/
|
|
33
|
-
export interface
|
|
33
|
+
export interface Point2dValue {
|
|
34
34
|
x: number;
|
|
35
35
|
y: number;
|
|
36
36
|
}
|
|
@@ -38,7 +38,7 @@ export interface Point2d {
|
|
|
38
38
|
* A data structure for a 3d point.
|
|
39
39
|
* @public
|
|
40
40
|
*/
|
|
41
|
-
export interface
|
|
41
|
+
export interface Point3dValue {
|
|
42
42
|
x: number;
|
|
43
43
|
y: number;
|
|
44
44
|
z: number;
|
|
@@ -47,20 +47,20 @@ export interface Point3d {
|
|
|
47
47
|
* A union for all supported primitive value types.
|
|
48
48
|
* @public
|
|
49
49
|
*/
|
|
50
|
-
export type PrimitiveValue = Id64String | string | number | boolean | Date |
|
|
50
|
+
export type PrimitiveValue = Id64String | string | number | boolean | Date | Point2dValue | Point3dValue;
|
|
51
51
|
/** @public */
|
|
52
52
|
export declare namespace PrimitiveValue {
|
|
53
53
|
/**
|
|
54
|
-
* Checks whether the given value is a `
|
|
55
|
-
* @note Since `
|
|
54
|
+
* Checks whether the given value is a `Point2dValue`.
|
|
55
|
+
* @note Since `Point3dValue` is a superset of `Point2dValue`, this function will return `true` for `Point3dValue` as well.
|
|
56
56
|
* @public
|
|
57
57
|
*/
|
|
58
|
-
function isPoint2d(value: PrimitiveValue): value is
|
|
58
|
+
function isPoint2d(value: PrimitiveValue): value is Point2dValue;
|
|
59
59
|
/**
|
|
60
|
-
* Checks whether the given value is a `
|
|
60
|
+
* Checks whether the given value is a `Point3dValue`.
|
|
61
61
|
* @public
|
|
62
62
|
*/
|
|
63
|
-
function isPoint3d(value: PrimitiveValue): value is
|
|
63
|
+
function isPoint3d(value: PrimitiveValue): value is Point3dValue;
|
|
64
64
|
}
|
|
65
65
|
/**
|
|
66
66
|
* A type for a primitive value, its type and, optionally, its extended type.
|
|
@@ -69,29 +69,34 @@ export declare namespace PrimitiveValue {
|
|
|
69
69
|
*/
|
|
70
70
|
export type TypedPrimitiveValue = ({
|
|
71
71
|
value: number;
|
|
72
|
-
type:
|
|
72
|
+
type: Extract<PrimitiveValueType, "Double">;
|
|
73
|
+
koqName?: string;
|
|
74
|
+
} | {
|
|
75
|
+
value: number;
|
|
76
|
+
type: Extract<PrimitiveValueType, "Integer">;
|
|
77
|
+
koqName?: string;
|
|
73
78
|
} | {
|
|
74
79
|
value: number;
|
|
75
|
-
type: "
|
|
80
|
+
type: Extract<PrimitiveValueType, "Long">;
|
|
76
81
|
koqName?: string;
|
|
77
82
|
} | {
|
|
78
83
|
value: boolean;
|
|
79
|
-
type: "Boolean"
|
|
84
|
+
type: Extract<PrimitiveValueType, "Boolean">;
|
|
80
85
|
} | {
|
|
81
86
|
value: Id64String;
|
|
82
|
-
type: "Id"
|
|
87
|
+
type: Extract<PrimitiveValueType, "Id">;
|
|
83
88
|
} | {
|
|
84
89
|
value: string;
|
|
85
|
-
type: "String"
|
|
90
|
+
type: Extract<PrimitiveValueType, "String">;
|
|
86
91
|
} | {
|
|
87
92
|
value: number | string | Date;
|
|
88
|
-
type: "DateTime"
|
|
93
|
+
type: Extract<PrimitiveValueType, "DateTime">;
|
|
89
94
|
} | {
|
|
90
|
-
value:
|
|
91
|
-
type: "Point2d"
|
|
95
|
+
value: Point2dValue;
|
|
96
|
+
type: Extract<PrimitiveValueType, "Point2d">;
|
|
92
97
|
} | {
|
|
93
|
-
value:
|
|
94
|
-
type: "Point3d"
|
|
98
|
+
value: Point3dValue;
|
|
99
|
+
type: Extract<PrimitiveValueType, "Point3d">;
|
|
95
100
|
}) & {
|
|
96
101
|
extendedType?: string;
|
|
97
102
|
};
|
|
@@ -102,6 +107,25 @@ export declare namespace TypedPrimitiveValue {
|
|
|
102
107
|
* @throws Error if primitive type and value are incompatible.
|
|
103
108
|
* @public
|
|
104
109
|
*/
|
|
105
|
-
function create(value:
|
|
110
|
+
function create<TValue extends PrimitiveValue, TType extends PrimitiveValueType>(value: TValue, type: TType, koqName?: string, extendedType?: string): Extract<TypedPrimitiveValue, {
|
|
111
|
+
type: TType;
|
|
112
|
+
}>;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* A composite value representing a struct (named record with member values).
|
|
116
|
+
* @public
|
|
117
|
+
*/
|
|
118
|
+
export interface StructValue {
|
|
119
|
+
[memberName: string]: Value;
|
|
106
120
|
}
|
|
121
|
+
/**
|
|
122
|
+
* A composite value representing an array of values.
|
|
123
|
+
* @public
|
|
124
|
+
*/
|
|
125
|
+
export type ArrayValue = Value[];
|
|
126
|
+
/**
|
|
127
|
+
* Any value that can be assigned to an ECInstance — a primitive, struct, array, or undefined (null/empty).
|
|
128
|
+
* @public
|
|
129
|
+
*/
|
|
130
|
+
export type Value = PrimitiveValue | StructValue | ArrayValue | undefined;
|
|
107
131
|
//# sourceMappingURL=Values.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Values.d.ts","sourceRoot":"","sources":["../../src/shared/Values.ts"],"names":[],"mappings":"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"}
|