@itwin/presentation-shared 2.0.0-alpha.9 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +675 -0
- package/README.md +59 -27
- package/lib/presentation-shared.d.ts +24 -0
- package/lib/presentation-shared.d.ts.map +1 -0
- package/lib/presentation-shared.js +22 -0
- 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 +16 -2
- 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/EachValueFrom.d.ts +30 -0
- package/lib/shared/EachValueFrom.d.ts.map +1 -0
- package/lib/shared/EachValueFrom.js +115 -0
- package/lib/shared/EachValueFrom.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/{esm/shared → shared}/Formatting.js +10 -6
- package/lib/shared/Formatting.js.map +1 -0
- package/lib/shared/HiddenClasses.d.ts +21 -0
- package/lib/shared/HiddenClasses.d.ts.map +1 -0
- package/lib/shared/HiddenClasses.js +52 -0
- package/lib/shared/HiddenClasses.js.map +1 -0
- package/lib/{cjs/shared → shared}/InstanceLabelSelectClauseFactory.d.ts +3 -63
- package/lib/shared/InstanceLabelSelectClauseFactory.d.ts.map +1 -0
- package/lib/shared/InstanceLabelSelectClauseFactory.js +27 -0
- package/lib/shared/InstanceLabelSelectClauseFactory.js.map +1 -0
- package/lib/shared/Logging.d.ts.map +1 -0
- package/lib/{esm/shared → shared}/Logging.js +2 -1
- package/lib/shared/Logging.js.map +1 -0
- package/lib/shared/MappedTypes.d.ts +55 -0
- package/lib/shared/MappedTypes.d.ts.map +1 -0
- package/lib/shared/MappedTypes.js.map +1 -0
- package/lib/shared/Metadata.d.ts +572 -0
- package/lib/shared/Metadata.d.ts.map +1 -0
- package/lib/{esm/shared → shared}/Metadata.js +7 -3
- 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 -21
- package/lib/shared/Utils.js.map +1 -0
- package/lib/shared/Values.d.ts +144 -0
- 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/ECSqlHiddenClassesSnippets.d.ts +40 -0
- package/lib/shared/ecsql-snippets/ECSqlHiddenClassesSnippets.d.ts.map +1 -0
- package/lib/shared/ecsql-snippets/ECSqlHiddenClassesSnippets.js +66 -0
- package/lib/shared/ecsql-snippets/ECSqlHiddenClassesSnippets.js.map +1 -0
- package/lib/shared/ecsql-snippets/ECSqlJoinSnippets.d.ts +174 -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 +22 -8
- package/lib/shared/ecsql-snippets/ECSqlValueSelectorSnippets.js.map +1 -0
- package/lib/shared/ecsql-snippets/index.d.ts +4 -0
- package/lib/shared/ecsql-snippets/index.d.ts.map +1 -0
- package/lib/shared/ecsql-snippets/index.js +8 -0
- package/lib/shared/ecsql-snippets/index.js.map +1 -0
- package/lib/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.d.ts +17 -0
- package/lib/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.d.ts.map +1 -0
- package/lib/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.js +48 -0
- package/lib/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.js.map +1 -0
- package/lib/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.d.ts +39 -0
- package/lib/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.d.ts.map +1 -0
- package/lib/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.js +60 -0
- package/lib/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.js.map +1 -0
- package/lib/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.d.ts +12 -0
- package/lib/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.d.ts.map +1 -0
- package/lib/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.js +37 -0
- package/lib/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.js.map +1 -0
- package/lib/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.d.ts +198 -0
- package/lib/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.d.ts.map +1 -0
- package/lib/{esm/shared/ECSqlCore.js → shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.js} +4 -1
- package/lib/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.js.map +1 -0
- package/lib/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.d.ts +34 -0
- package/lib/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.d.ts.map +1 -0
- package/lib/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.js +332 -0
- package/lib/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.js.map +1 -0
- package/lib/shared/instance-label-factory-impls/Utils.d.ts +7 -0
- package/lib/shared/instance-label-factory-impls/Utils.d.ts.map +1 -0
- package/lib/shared/instance-label-factory-impls/Utils.js +21 -0
- package/lib/shared/instance-label-factory-impls/Utils.js.map +1 -0
- package/package.json +22 -31
- package/lib/cjs/package.json +0 -1
- package/lib/cjs/presentation-shared.d.ts +0 -17
- package/lib/cjs/presentation-shared.d.ts.map +0 -1
- package/lib/cjs/presentation-shared.js +0 -71
- 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 -114
- 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 -166
- 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 -20
- 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 +0 -294
- package/lib/cjs/shared/Metadata.d.ts.map +0 -1
- package/lib/cjs/shared/Metadata.js +0 -53
- 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 -113
- 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 -155
- 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 -140
- 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 -260
- 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/esm/presentation-shared.d.ts +0 -17
- package/lib/esm/presentation-shared.d.ts.map +0 -1
- package/lib/esm/presentation-shared.js +0 -14
- 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.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 -133
- package/lib/esm/shared/InstanceLabelSelectClauseFactory.d.ts.map +0 -1
- package/lib/esm/shared/InstanceLabelSelectClauseFactory.js +0 -160
- 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 +0 -107
- package/lib/esm/shared/Values.d.ts.map +0 -1
- package/lib/esm/shared/Values.js +0 -152
- 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 -137
- 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/{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/{cjs/shared → shared}/Logging.d.ts +0 -0
- /package/lib/{esm/shared → shared}/MappedTypes.js +0 -0
|
@@ -1,17 +0,0 @@
|
|
|
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
|
-
* Returns type of `TFunc` parameter, when `TFunc` accepts exactly one object argument
|
|
13
|
-
* that can also be `undefined` / optional.
|
|
14
|
-
* @public
|
|
15
|
-
*/
|
|
16
|
-
export type Props<TFunc extends (...args: any[]) => any> = Parameters<TFunc> extends [infer TProps] ? Exclude<TProps, undefined> extends object ? TProps : never : Parameters<TFunc> extends [(infer TProps)?] ? Exclude<TProps, undefined> extends object ? TProps | undefined : never : never;
|
|
17
|
-
//# sourceMappingURL=MappedTypes.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
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,GAAG,WAAW,GAAG,KAAK,CAAC;AAExI;;;;GAIG;AACH,MAAM,MAAM,KAAK,CAAC,KAAK,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,IACrD,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,MAAM,CAAC,GACpC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,SAAS,MAAM,GACvC,MAAM,GACN,KAAK,GACP,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,CAAC,GACzC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,SAAS,MAAM,GACvC,MAAM,GAAG,SAAS,GAClB,KAAK,GACP,KAAK,CAAC"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*---------------------------------------------------------------------------------------------
|
|
3
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
4
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
5
|
-
*--------------------------------------------------------------------------------------------*/
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
//# sourceMappingURL=MappedTypes.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MappedTypes.js","sourceRoot":"","sources":["../../../src/shared/MappedTypes.ts"],"names":[],"mappings":";AAAA;;;gGAGgG"}
|
|
@@ -1,294 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* An interface for an object that knows how to get an ECSchema from an iModel.
|
|
3
|
-
*
|
|
4
|
-
* @see `createECSchemaProvider` in `@itwin/presentation-core-interop`.
|
|
5
|
-
* @public
|
|
6
|
-
*/
|
|
7
|
-
export interface ECSchemaProvider {
|
|
8
|
-
getSchema(schemaName: string): Promise<EC.Schema | undefined>;
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* An interface for a class hierarchy inspector that can be used to determine if one class derives from another.
|
|
12
|
-
* @see `createCachingECClassHierarchyInspector`
|
|
13
|
-
* @public
|
|
14
|
-
*/
|
|
15
|
-
export interface ECClassHierarchyInspector {
|
|
16
|
-
classDerivesFrom(derivedClassFullName: EC.FullClassName, candidateBaseClassFullName: EC.FullClassName): Promise<boolean> | boolean;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Creates a new `ECClassHierarchyInspector` that caches results of `derivesFrom` calls.
|
|
20
|
-
* @public
|
|
21
|
-
*/
|
|
22
|
-
export declare function createCachingECClassHierarchyInspector(props: {
|
|
23
|
-
/** Schema provider used to load schemas and their classes. */
|
|
24
|
-
schemaProvider: ECSchemaProvider;
|
|
25
|
-
/** Optional cache size, describing the number of derived/base class combinations to store in cache. Defaults to `0`, which means no caching. */
|
|
26
|
-
cacheSize?: number;
|
|
27
|
-
}): ECClassHierarchyInspector;
|
|
28
|
-
/**
|
|
29
|
-
* A namespace containing various [EC types](https://www.itwinjs.org/bis/ec/).
|
|
30
|
-
* @public
|
|
31
|
-
* @see `ECSchemaProvider`
|
|
32
|
-
*/
|
|
33
|
-
export declare namespace EC {
|
|
34
|
-
type FullClassNameDotNotation = `${string}.${string}`;
|
|
35
|
-
type FullClassNameColonNotation = `${string}:${string}`;
|
|
36
|
-
type FullClassName = FullClassNameColonNotation | FullClassNameDotNotation;
|
|
37
|
-
/**
|
|
38
|
-
* Represents an ECSchema that contains classes, relationships, etc.
|
|
39
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/schema/
|
|
40
|
-
* @public
|
|
41
|
-
*/
|
|
42
|
-
interface Schema {
|
|
43
|
-
name: string;
|
|
44
|
-
getClass(name: string): Promise<Class | undefined>;
|
|
45
|
-
getCustomAttributes(): Promise<CustomAttributeSet>;
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* Represents an ECSchema item - a class, relationship, etc.
|
|
49
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/schemaitem/
|
|
50
|
-
* @public
|
|
51
|
-
*/
|
|
52
|
-
interface SchemaItem {
|
|
53
|
-
schema: Schema;
|
|
54
|
-
fullName: FullClassName;
|
|
55
|
-
name: string;
|
|
56
|
-
label?: string;
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* Represents an ECClass.
|
|
60
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/ecclass/
|
|
61
|
-
* @public
|
|
62
|
-
*/
|
|
63
|
-
interface Class extends SchemaItem {
|
|
64
|
-
baseClass: Promise<Class | undefined>;
|
|
65
|
-
is(className: string, schemaName: string): Promise<boolean>;
|
|
66
|
-
is(other: Class): Promise<boolean>;
|
|
67
|
-
getProperty(name: string): Promise<Property | undefined>;
|
|
68
|
-
getProperties(): Promise<Array<Property>>;
|
|
69
|
-
isEntityClass(): this is EntityClass;
|
|
70
|
-
isRelationshipClass(): this is RelationshipClass;
|
|
71
|
-
isStructClass(): this is StructClass;
|
|
72
|
-
isMixin(): this is Mixin;
|
|
73
|
-
getDerivedClasses(): Promise<Class[]>;
|
|
74
|
-
getCustomAttributes(): Promise<CustomAttributeSet>;
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Represents an entity class.
|
|
78
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/entityclass/
|
|
79
|
-
* @public
|
|
80
|
-
*/
|
|
81
|
-
type EntityClass = Class;
|
|
82
|
-
/**
|
|
83
|
-
* Represents a struct class.
|
|
84
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/structclass/
|
|
85
|
-
* @public
|
|
86
|
-
*/
|
|
87
|
-
type StructClass = Class;
|
|
88
|
-
/**
|
|
89
|
-
* Represents a mixin.
|
|
90
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/mixin/
|
|
91
|
-
* @public
|
|
92
|
-
*/
|
|
93
|
-
type Mixin = Class;
|
|
94
|
-
/**
|
|
95
|
-
* Represents a kind of quantity.
|
|
96
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/kindofquantity/
|
|
97
|
-
* @public
|
|
98
|
-
*/
|
|
99
|
-
type KindOfQuantity = SchemaItem;
|
|
100
|
-
/**
|
|
101
|
-
* Represents a relationship constraint multiplicity.
|
|
102
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/relationshipmultiplicity/
|
|
103
|
-
* @public
|
|
104
|
-
*/
|
|
105
|
-
interface RelationshipConstraintMultiplicity {
|
|
106
|
-
lowerLimit: number;
|
|
107
|
-
upperLimit: number;
|
|
108
|
-
}
|
|
109
|
-
/**
|
|
110
|
-
* Represents a relationship constraint.
|
|
111
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/relationshipconstraint/
|
|
112
|
-
* @public
|
|
113
|
-
*/
|
|
114
|
-
interface RelationshipConstraint {
|
|
115
|
-
multiplicity: RelationshipConstraintMultiplicity;
|
|
116
|
-
polymorphic: boolean;
|
|
117
|
-
abstractConstraint: Promise<EntityClass | Mixin | RelationshipClass | undefined>;
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* Represents a relationship class.
|
|
121
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/relationshipclass/
|
|
122
|
-
* @public
|
|
123
|
-
*/
|
|
124
|
-
interface RelationshipClass extends Class {
|
|
125
|
-
direction: "Forward" | "Backward";
|
|
126
|
-
source: RelationshipConstraint;
|
|
127
|
-
target: RelationshipConstraint;
|
|
128
|
-
}
|
|
129
|
-
/**
|
|
130
|
-
* Represents an enumerator.
|
|
131
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/enumerator/
|
|
132
|
-
* @public
|
|
133
|
-
*/
|
|
134
|
-
interface Enumerator<T> {
|
|
135
|
-
name: string;
|
|
136
|
-
value: T;
|
|
137
|
-
label?: string;
|
|
138
|
-
description?: string;
|
|
139
|
-
}
|
|
140
|
-
/**
|
|
141
|
-
* Represents an enumeration.
|
|
142
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/enumeration/
|
|
143
|
-
* @public
|
|
144
|
-
*/
|
|
145
|
-
interface Enumeration extends SchemaItem {
|
|
146
|
-
enumerators: Array<Enumerator<string | number>>;
|
|
147
|
-
type: "String" | "Number";
|
|
148
|
-
isStrict: boolean;
|
|
149
|
-
}
|
|
150
|
-
/**
|
|
151
|
-
* Represents a property.
|
|
152
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/property/
|
|
153
|
-
* @public
|
|
154
|
-
*/
|
|
155
|
-
interface Property {
|
|
156
|
-
name: string;
|
|
157
|
-
class: Class;
|
|
158
|
-
label?: string;
|
|
159
|
-
kindOfQuantity: Promise<KindOfQuantity | undefined>;
|
|
160
|
-
isArray(): this is ArrayProperty;
|
|
161
|
-
isStruct(): this is StructProperty;
|
|
162
|
-
isPrimitive(): this is PrimitiveProperty;
|
|
163
|
-
isEnumeration(): this is EnumerationProperty;
|
|
164
|
-
isNavigation(): this is NavigationProperty;
|
|
165
|
-
getCustomAttributes(): Promise<CustomAttributeSet>;
|
|
166
|
-
}
|
|
167
|
-
/**
|
|
168
|
-
* Defines array property attributes.
|
|
169
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/arrayproperty/
|
|
170
|
-
* @public
|
|
171
|
-
*/
|
|
172
|
-
interface ArrayPropertyAttributes {
|
|
173
|
-
minOccurs: number;
|
|
174
|
-
maxOccurs?: number;
|
|
175
|
-
}
|
|
176
|
-
/**
|
|
177
|
-
* Defines a structs array property.
|
|
178
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/structarrayproperty/
|
|
179
|
-
* @public
|
|
180
|
-
*/
|
|
181
|
-
type StructArrayProperty = StructProperty & ArrayPropertyAttributes;
|
|
182
|
-
/**
|
|
183
|
-
* Defines an enumerations array property.
|
|
184
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/enumerationarrayproperty/
|
|
185
|
-
* @public
|
|
186
|
-
*/
|
|
187
|
-
type EnumerationArrayProperty = EnumerationProperty & ArrayPropertyAttributes;
|
|
188
|
-
/**
|
|
189
|
-
* Defines a primitives array property.
|
|
190
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/primitivearrayproperty/
|
|
191
|
-
* @public
|
|
192
|
-
*/
|
|
193
|
-
type PrimitiveArrayProperty = PrimitiveProperty & ArrayPropertyAttributes;
|
|
194
|
-
/**
|
|
195
|
-
* Defines an array property.
|
|
196
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/anyarrayproperty/
|
|
197
|
-
* @public
|
|
198
|
-
*/
|
|
199
|
-
type ArrayProperty = StructArrayProperty | EnumerationArrayProperty | PrimitiveArrayProperty;
|
|
200
|
-
/**
|
|
201
|
-
* Defines a struct property.
|
|
202
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/structproperty/
|
|
203
|
-
* @public
|
|
204
|
-
*/
|
|
205
|
-
interface StructProperty extends Property {
|
|
206
|
-
structClass: StructClass;
|
|
207
|
-
}
|
|
208
|
-
/**
|
|
209
|
-
* Defines an enumeration property.
|
|
210
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/enumerationproperty/
|
|
211
|
-
* @public
|
|
212
|
-
*/
|
|
213
|
-
interface EnumerationProperty extends Property {
|
|
214
|
-
enumeration: Promise<Enumeration | undefined>;
|
|
215
|
-
extendedTypeName?: string;
|
|
216
|
-
}
|
|
217
|
-
/**
|
|
218
|
-
* Defines a navigation property.
|
|
219
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/navigationproperty/
|
|
220
|
-
* @public
|
|
221
|
-
*/
|
|
222
|
-
interface NavigationProperty extends Property {
|
|
223
|
-
relationshipClass: Promise<RelationshipClass>;
|
|
224
|
-
direction: "Forward" | "Backward";
|
|
225
|
-
}
|
|
226
|
-
/**
|
|
227
|
-
* Defines a primitive property type.
|
|
228
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/primitivetype/
|
|
229
|
-
* @public
|
|
230
|
-
*/
|
|
231
|
-
type PrimitiveType = "Binary" | "Boolean" | "DateTime" | "Double" | "Integer" | "Long" | "Point2d" | "Point3d" | "String" | "IGeometry";
|
|
232
|
-
/**
|
|
233
|
-
* Defines a primitive property.
|
|
234
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/primitiveproperty/
|
|
235
|
-
* @public
|
|
236
|
-
*/
|
|
237
|
-
interface PrimitiveProperty extends Property {
|
|
238
|
-
primitiveType: PrimitiveType;
|
|
239
|
-
extendedTypeName?: string;
|
|
240
|
-
}
|
|
241
|
-
/**
|
|
242
|
-
* Defines a set of custom attributes that may be applied to a class or property.
|
|
243
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/customattribute/
|
|
244
|
-
* @public
|
|
245
|
-
*/
|
|
246
|
-
interface CustomAttributeSet {
|
|
247
|
-
[Symbol.iterator]: () => IterableIterator<[FullClassName, CustomAttribute]>;
|
|
248
|
-
get(className: FullClassName): CustomAttribute | undefined;
|
|
249
|
-
}
|
|
250
|
-
/**
|
|
251
|
-
* Defines a custom attribute that may be applied to a class or property.
|
|
252
|
-
* @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/customattribute/
|
|
253
|
-
* @public
|
|
254
|
-
*/
|
|
255
|
-
interface CustomAttribute {
|
|
256
|
-
className: FullClassName;
|
|
257
|
-
[propName: string]: any;
|
|
258
|
-
}
|
|
259
|
-
}
|
|
260
|
-
/**
|
|
261
|
-
* An identifiers' union of all supported primitive value types.
|
|
262
|
-
* @public
|
|
263
|
-
*/
|
|
264
|
-
export type PrimitiveValueType = "Id" | Exclude<EC.PrimitiveType, "Binary" | "IGeometry">;
|
|
265
|
-
/**
|
|
266
|
-
* Describes a single step through an ECRelationship from source ECClass to target ECClass.
|
|
267
|
-
* @public
|
|
268
|
-
*/
|
|
269
|
-
export interface RelationshipPathStep {
|
|
270
|
-
/** Full name of the source ECClass */
|
|
271
|
-
sourceClassName: EC.FullClassName;
|
|
272
|
-
/** Full name of the target ECClass */
|
|
273
|
-
targetClassName: EC.FullClassName;
|
|
274
|
-
/** Full name of the ECRelationshipClass */
|
|
275
|
-
relationshipName: EC.FullClassName;
|
|
276
|
-
/**
|
|
277
|
-
* Indicates that the relationship direction be reversed. This should be set to `true` when step direction
|
|
278
|
-
* doesn't match relationship direction, e.g. relationship is from source `A` to target `B` and the step
|
|
279
|
-
* describes a step from `B` to `A`.
|
|
280
|
-
*/
|
|
281
|
-
relationshipReverse?: boolean;
|
|
282
|
-
}
|
|
283
|
-
/**
|
|
284
|
-
* Describes a path from source ECClass to target ECClass through multiple ECRelationships.
|
|
285
|
-
* @public
|
|
286
|
-
*/
|
|
287
|
-
export type RelationshipPath<TStep extends RelationshipPathStep = RelationshipPathStep> = TStep[];
|
|
288
|
-
/**
|
|
289
|
-
* Finds a class with the specified full class name using the given `ECSchemaProvider`.
|
|
290
|
-
* @throws Error if the schema or class is not found.
|
|
291
|
-
* @public
|
|
292
|
-
*/
|
|
293
|
-
export declare function getClass(schemaProvider: ECSchemaProvider, fullClassName: EC.FullClassName): Promise<EC.Class>;
|
|
294
|
-
//# sourceMappingURL=Metadata.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Metadata.d.ts","sourceRoot":"","sources":["../../../src/shared/Metadata.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*---------------------------------------------------------------------------------------------
|
|
3
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
4
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
5
|
-
*--------------------------------------------------------------------------------------------*/
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.createCachingECClassHierarchyInspector = createCachingECClassHierarchyInspector;
|
|
8
|
-
exports.getClass = getClass;
|
|
9
|
-
const core_bentley_1 = require("@itwin/core-bentley");
|
|
10
|
-
const Utils_js_1 = require("./Utils.js");
|
|
11
|
-
/**
|
|
12
|
-
* Creates a new `ECClassHierarchyInspector` that caches results of `derivesFrom` calls.
|
|
13
|
-
* @public
|
|
14
|
-
*/
|
|
15
|
-
function createCachingECClassHierarchyInspector(props) {
|
|
16
|
-
const map = new core_bentley_1.LRUMap(props.cacheSize ?? 0);
|
|
17
|
-
function createCacheKey(derivedClassName, baseClassName) {
|
|
18
|
-
return `${derivedClassName}/${baseClassName}`;
|
|
19
|
-
}
|
|
20
|
-
return {
|
|
21
|
-
classDerivesFrom(derivedClassFullName, candidateBaseClassFullName) {
|
|
22
|
-
const cacheKey = createCacheKey(derivedClassFullName, candidateBaseClassFullName);
|
|
23
|
-
let result = map.get(cacheKey);
|
|
24
|
-
if (result === undefined) {
|
|
25
|
-
result = Promise.all([getClass(props.schemaProvider, derivedClassFullName), getClass(props.schemaProvider, candidateBaseClassFullName)]).then(async ([derivedClass, baseClass]) => {
|
|
26
|
-
const resolvedResult = await derivedClass.is(baseClass);
|
|
27
|
-
map.set(cacheKey, resolvedResult);
|
|
28
|
-
return resolvedResult;
|
|
29
|
-
});
|
|
30
|
-
map.set(cacheKey, result);
|
|
31
|
-
}
|
|
32
|
-
return result;
|
|
33
|
-
},
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Finds a class with the specified full class name using the given `ECSchemaProvider`.
|
|
38
|
-
* @throws Error if the schema or class is not found.
|
|
39
|
-
* @public
|
|
40
|
-
*/
|
|
41
|
-
async function getClass(schemaProvider, fullClassName) {
|
|
42
|
-
const { schemaName, className } = (0, Utils_js_1.parseFullClassName)(fullClassName);
|
|
43
|
-
const schema = await schemaProvider.getSchema(schemaName);
|
|
44
|
-
if (!schema) {
|
|
45
|
-
throw new Error(`Schema "${schemaName}" not found.`);
|
|
46
|
-
}
|
|
47
|
-
const lookupClass = await schema.getClass(className);
|
|
48
|
-
if (!lookupClass) {
|
|
49
|
-
throw new Error(`Class "${className}" not found in schema "${schemaName}".`);
|
|
50
|
-
}
|
|
51
|
-
return lookupClass;
|
|
52
|
-
}
|
|
53
|
-
//# sourceMappingURL=Metadata.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Metadata.js","sourceRoot":"","sources":["../../../src/shared/Metadata.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;AA4BhG,wFA2BC;AAuSD,4BAWC;AAvWD,sDAA6C;AAC7C,yCAAgD;AAqBhD;;;GAGG;AACH,SAAgB,sCAAsC,CAAC,KAKtD;IACC,MAAM,GAAG,GAAG,IAAI,qBAAM,CAAqC,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC;IACjF,SAAS,cAAc,CAAC,gBAAkC,EAAE,aAA+B;QACzF,OAAO,GAAG,gBAAgB,IAAI,aAAa,EAAE,CAAC;IAChD,CAAC;IACD,OAAO;QACL,gBAAgB,CAAC,oBAAsC,EAAE,0BAA4C;YACnG,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,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,oBAAoB,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,0BAA0B,CAAC,CAAC,CAAC,CAAC,IAAI,CAC3I,KAAK,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC,EAAE,EAAE;oBAClC,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,CACF,CAAC;gBACF,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC5B,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;KACF,CAAC;AACJ,CAAC;AAkSD;;;;GAIG;AACI,KAAK,UAAU,QAAQ,CAAC,cAAgC,EAAE,aAA+B;IAC9F,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,IAAA,6BAAkB,EAAC,aAAa,CAAC,CAAC;IACpE,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAC1D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,WAAW,UAAU,cAAc,CAAC,CAAC;IACvD,CAAC;IACD,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACrD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,0BAA0B,UAAU,IAAI,CAAC,CAAC;IAC/E,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Utils.d.ts","sourceRoot":"","sources":["../../../src/shared/Utils.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAExC;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,MAAM;;;EAMvD;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG,EAAE,CAAC,wBAAwB,CAGzF;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,CAAC,aAAa,GAAG,MAAM,CAU1F;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;AAe5E;;;;;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"}
|
package/lib/cjs/shared/Utils.js
DELETED
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*---------------------------------------------------------------------------------------------
|
|
3
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
4
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
5
|
-
*--------------------------------------------------------------------------------------------*/
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.parseFullClassName = parseFullClassName;
|
|
8
|
-
exports.normalizeFullClassName = normalizeFullClassName;
|
|
9
|
-
exports.compareFullClassNames = compareFullClassNames;
|
|
10
|
-
exports.trimWhitespace = trimWhitespace;
|
|
11
|
-
exports.releaseMainThread = releaseMainThread;
|
|
12
|
-
exports.createMainThreadReleaseOnTimePassedHandler = createMainThreadReleaseOnTimePassedHandler;
|
|
13
|
-
exports.julianToDateTime = julianToDateTime;
|
|
14
|
-
/**
|
|
15
|
-
* An utility to parse schema and class names from full class name, where
|
|
16
|
-
* schema and class names are separated by either `:` or `.`.
|
|
17
|
-
*
|
|
18
|
-
* @throws Error if the provided full class name is not valid.
|
|
19
|
-
* @public
|
|
20
|
-
*/
|
|
21
|
-
function parseFullClassName(fullClassName) {
|
|
22
|
-
const [schemaName, className, ...rest] = fullClassName.split(/[\.:]/);
|
|
23
|
-
if (!schemaName || !className || rest.length > 0) {
|
|
24
|
-
throw new Error(`Invalid full class name: ${fullClassName}`);
|
|
25
|
-
}
|
|
26
|
-
return { schemaName, className };
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* An utility to normalize full class name from either `SchemaName:ClassName` or
|
|
30
|
-
* `SchemaName.ClassName` to always use the dot format.
|
|
31
|
-
*
|
|
32
|
-
* @throws Error if the provided full class name is not valid.
|
|
33
|
-
* @public
|
|
34
|
-
*/
|
|
35
|
-
function normalizeFullClassName(fullClassName) {
|
|
36
|
-
const { schemaName, className } = parseFullClassName(fullClassName);
|
|
37
|
-
return `${schemaName}.${className}`;
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* An utility that compares two full class names in a case insensitive way, ignoring different
|
|
41
|
-
* supported schema-class name separators (`.` or `:`).
|
|
42
|
-
* @public
|
|
43
|
-
*/
|
|
44
|
-
function compareFullClassNames(lhs, rhs) {
|
|
45
|
-
const parsed = {
|
|
46
|
-
lhs: parseFullClassName(lhs),
|
|
47
|
-
rhs: parseFullClassName(rhs),
|
|
48
|
-
};
|
|
49
|
-
const schemaCompare = parsed.lhs.schemaName.toLocaleLowerCase().localeCompare(parsed.rhs.schemaName.toLocaleLowerCase());
|
|
50
|
-
if (schemaCompare !== 0) {
|
|
51
|
-
return schemaCompare;
|
|
52
|
-
}
|
|
53
|
-
return parsed.lhs.className.toLocaleLowerCase().localeCompare(parsed.rhs.className.toLocaleLowerCase());
|
|
54
|
-
}
|
|
55
|
-
/** @public */
|
|
56
|
-
function trimWhitespace(str) {
|
|
57
|
-
/* c8 ignore next 3 */
|
|
58
|
-
if (!str) {
|
|
59
|
-
return str;
|
|
60
|
-
}
|
|
61
|
-
return str
|
|
62
|
-
.replaceAll(/\s+/gm, " ") // replace all consecutive spaces with a single space
|
|
63
|
-
.replaceAll(/\(\s+/g, "(") // remove spaces after opening parentheses
|
|
64
|
-
.replaceAll(/\s+\)/g, ")") // remove spaces before closing parentheses
|
|
65
|
-
.replaceAll(/\s+,/g, ",") // remove spaces before comma
|
|
66
|
-
.trim(); // remove spaces from beginning and end of the string
|
|
67
|
-
}
|
|
68
|
-
/**
|
|
69
|
-
* An utility that returns a promise that immediately resolves. Awaiting on the returned
|
|
70
|
-
* promise releases the main thread and allows other tasks to run.
|
|
71
|
-
*
|
|
72
|
-
* @public
|
|
73
|
-
*/
|
|
74
|
-
async function releaseMainThread() {
|
|
75
|
-
return new Promise((resolve) => setTimeout(resolve, 0));
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* An utility that returns a `releaseMainThread` promise if the given amount of time has passed since the handler
|
|
79
|
-
* was created or the main thread was last released using this handler. Otherwise, returns `undefined`.
|
|
80
|
-
*
|
|
81
|
-
* Example:
|
|
82
|
-
* ```ts
|
|
83
|
-
* const releaseMainThread = createMainThreadReleaseOnTimePassedHandler();
|
|
84
|
-
* for (const value of someVeryLargeArray) {
|
|
85
|
-
* await releaseMainThread();
|
|
86
|
-
* // do something with value
|
|
87
|
-
* }
|
|
88
|
-
* ```
|
|
89
|
-
*
|
|
90
|
-
* @param releaseOnTimePassed The amount of time in milliseconds after which the main thread should be released. Defaults to `40` ms.
|
|
91
|
-
* @public
|
|
92
|
-
*/
|
|
93
|
-
function createMainThreadReleaseOnTimePassedHandler(releaseOnTimePassed = 40) {
|
|
94
|
-
let start = Date.now();
|
|
95
|
-
return () => {
|
|
96
|
-
const elapsed = Date.now() - start;
|
|
97
|
-
if (elapsed < releaseOnTimePassed) {
|
|
98
|
-
return undefined;
|
|
99
|
-
}
|
|
100
|
-
return releaseMainThread().then(() => {
|
|
101
|
-
start = Date.now();
|
|
102
|
-
});
|
|
103
|
-
};
|
|
104
|
-
}
|
|
105
|
-
/**
|
|
106
|
-
* An utility to convert a julian day format to `Date`.
|
|
107
|
-
* @public
|
|
108
|
-
*/
|
|
109
|
-
function julianToDateTime(julianDate) {
|
|
110
|
-
const millis = (julianDate - 2440587.5) * 86400000;
|
|
111
|
-
return new Date(millis);
|
|
112
|
-
}
|
|
113
|
-
//# sourceMappingURL=Utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../../src/shared/Utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
import type { Id64String } from "@itwin/core-bentley";
|
|
2
|
-
import type { EC, PrimitiveValueType } from "./Metadata.js";
|
|
3
|
-
/**
|
|
4
|
-
* A data structure uniquely identifying an ECInstance in an iModel.
|
|
5
|
-
* @public
|
|
6
|
-
*/
|
|
7
|
-
export interface InstanceKey {
|
|
8
|
-
/** Full class name in format `SchemaName.ClassName` */
|
|
9
|
-
className: EC.FullClassName;
|
|
10
|
-
/** ECInstance ID */
|
|
11
|
-
id: Id64String;
|
|
12
|
-
}
|
|
13
|
-
/** @public */
|
|
14
|
-
export declare namespace InstanceKey {
|
|
15
|
-
/**
|
|
16
|
-
* Checks whether the two given instance keys are equal.
|
|
17
|
-
* @public
|
|
18
|
-
*/
|
|
19
|
-
function equals(lhs: InstanceKey, rhs: InstanceKey): boolean;
|
|
20
|
-
/**
|
|
21
|
-
* Compares two given instance keys.
|
|
22
|
-
* @returns
|
|
23
|
-
*- `0` if they are equal
|
|
24
|
-
*- `negative value` if lhs key is less than rhs key
|
|
25
|
-
*- `positive value` if lhs key is more than rhs key
|
|
26
|
-
*/
|
|
27
|
-
function compare(lhs: InstanceKey, rhs: InstanceKey): number;
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* A data structure for a 2d point.
|
|
31
|
-
* @public
|
|
32
|
-
*/
|
|
33
|
-
export interface Point2d {
|
|
34
|
-
x: number;
|
|
35
|
-
y: number;
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* A data structure for a 3d point.
|
|
39
|
-
* @public
|
|
40
|
-
*/
|
|
41
|
-
export interface Point3d {
|
|
42
|
-
x: number;
|
|
43
|
-
y: number;
|
|
44
|
-
z: number;
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* A union for all supported primitive value types.
|
|
48
|
-
* @public
|
|
49
|
-
*/
|
|
50
|
-
export type PrimitiveValue = Id64String | string | number | boolean | Date | Point2d | Point3d;
|
|
51
|
-
/** @public */
|
|
52
|
-
export declare namespace PrimitiveValue {
|
|
53
|
-
/**
|
|
54
|
-
* Checks whether the given value is a `Point2d`.
|
|
55
|
-
* @note Since `Point3d` is a superset of `Point2d`, this function will return `true` for `Point3d` as well.
|
|
56
|
-
* @public
|
|
57
|
-
*/
|
|
58
|
-
function isPoint2d(value: PrimitiveValue): value is Point2d;
|
|
59
|
-
/**
|
|
60
|
-
* Checks whether the given value is a `Point3d`.
|
|
61
|
-
* @public
|
|
62
|
-
*/
|
|
63
|
-
function isPoint3d(value: PrimitiveValue): value is Point3d;
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* A type for a primitive value, its type and, optionally, its extended type.
|
|
67
|
-
* @note Use `TypedPrimitiveValue.create` to create an instance of this type.
|
|
68
|
-
* @public
|
|
69
|
-
*/
|
|
70
|
-
export type TypedPrimitiveValue = ({
|
|
71
|
-
value: number;
|
|
72
|
-
type: "Integer" | "Long";
|
|
73
|
-
} | {
|
|
74
|
-
value: number;
|
|
75
|
-
type: "Double";
|
|
76
|
-
koqName?: string;
|
|
77
|
-
} | {
|
|
78
|
-
value: boolean;
|
|
79
|
-
type: "Boolean";
|
|
80
|
-
} | {
|
|
81
|
-
value: Id64String;
|
|
82
|
-
type: "Id";
|
|
83
|
-
} | {
|
|
84
|
-
value: string;
|
|
85
|
-
type: "String";
|
|
86
|
-
} | {
|
|
87
|
-
value: number | string | Date;
|
|
88
|
-
type: "DateTime";
|
|
89
|
-
} | {
|
|
90
|
-
value: Point2d;
|
|
91
|
-
type: "Point2d";
|
|
92
|
-
} | {
|
|
93
|
-
value: Point3d;
|
|
94
|
-
type: "Point3d";
|
|
95
|
-
}) & {
|
|
96
|
-
extendedType?: string;
|
|
97
|
-
};
|
|
98
|
-
/** @public */
|
|
99
|
-
export declare namespace TypedPrimitiveValue {
|
|
100
|
-
/**
|
|
101
|
-
* A function for a creating a `TypedPrimitiveValue` object.
|
|
102
|
-
* @throws Error if primitive type and value are incompatible.
|
|
103
|
-
* @public
|
|
104
|
-
*/
|
|
105
|
-
function create(value: PrimitiveValue, type: PrimitiveValueType, koqName?: string, extendedType?: string): TypedPrimitiveValue;
|
|
106
|
-
}
|
|
107
|
-
//# sourceMappingURL=Values.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Values.d.ts","sourceRoot":"","sources":["../../../src/shared/Values.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,EAAE,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAE5D;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,uDAAuD;IACvD,SAAS,EAAE,EAAE,CAAC,aAAa,CAAC;IAC5B,oBAAoB;IACpB,EAAE,EAAE,UAAU,CAAC;CAChB;AAED,cAAc;AACd,yBAAiB,WAAW,CAAC;IAC3B;;;OAGG;IACH,SAAgB,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW,GAAG,OAAO,CAElE;IACD;;;;;;OAMG;IACH,SAAgB,OAAO,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW,GAAG,MAAM,CASlE;CACF;AAED;;;GAGG;AACH,MAAM,WAAW,OAAO;IACtB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED;;;GAGG;AACH,MAAM,WAAW,OAAO;IACtB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,OAAO,GAAG,OAAO,CAAC;AAE/F,cAAc;AAEd,yBAAiB,cAAc,CAAC;IAC9B;;;;OAIG;IACH,SAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,KAAK,IAAI,OAAO,CAKjE;IAED;;;OAGG;IACH,SAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,KAAK,IAAI,OAAO,CAKjE;CACF;AAED;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAC9B;IACE,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC1B,GACD;IACE,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GACD;IACE,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,SAAS,CAAC;CACjB,GACD;IACE,KAAK,EAAE,UAAU,CAAC;IAClB,IAAI,EAAE,IAAI,CAAC;CACZ,GACD;IACE,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,CAAC;CAChB,GACD;IACE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC9B,IAAI,EAAE,UAAU,CAAC;CAClB,GACD;IACE,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,SAAS,CAAC;CACjB,GACD;IACE,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,SAAS,CAAC;CACjB,CACJ,GAAG;IACF,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,cAAc;AAEd,yBAAiB,mBAAmB,CAAC;IACnC;;;;OAIG;IACH,SAAgB,MAAM,CAAC,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,mBAAmB,CA8EpI;CACF"}
|