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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/CHANGELOG.md +176 -1
  2. package/README.md +27 -9
  3. package/lib/cjs/presentation-shared.d.ts +16 -8
  4. package/lib/cjs/presentation-shared.d.ts.map +1 -1
  5. package/lib/cjs/presentation-shared.js +10 -4
  6. package/lib/cjs/presentation-shared.js.map +1 -1
  7. package/lib/cjs/shared/ConcatenatedValue.d.ts +1 -1
  8. package/lib/cjs/shared/ConcatenatedValue.d.ts.map +1 -1
  9. package/lib/cjs/shared/ECSqlCore.d.ts +1 -1
  10. package/lib/cjs/shared/ECSqlCore.d.ts.map +1 -1
  11. package/lib/cjs/shared/Event.d.ts +20 -2
  12. package/lib/cjs/shared/Event.d.ts.map +1 -1
  13. package/lib/cjs/shared/Formatting.d.ts +1 -1
  14. package/lib/cjs/shared/Formatting.d.ts.map +1 -1
  15. package/lib/cjs/shared/Formatting.js +10 -6
  16. package/lib/cjs/shared/Formatting.js.map +1 -1
  17. package/lib/cjs/shared/InstanceLabelSelectClauseFactory.d.ts +5 -65
  18. package/lib/cjs/shared/InstanceLabelSelectClauseFactory.d.ts.map +1 -1
  19. package/lib/cjs/shared/InstanceLabelSelectClauseFactory.js +0 -136
  20. package/lib/cjs/shared/InstanceLabelSelectClauseFactory.js.map +1 -1
  21. package/lib/cjs/shared/Logging.js +2 -1
  22. package/lib/cjs/shared/Logging.js.map +1 -1
  23. package/lib/cjs/shared/MappedTypes.d.ts +3 -13
  24. package/lib/cjs/shared/MappedTypes.d.ts.map +1 -1
  25. package/lib/cjs/shared/Metadata.d.ts +13 -10
  26. package/lib/cjs/shared/Metadata.d.ts.map +1 -1
  27. package/lib/cjs/shared/Metadata.js +4 -1
  28. package/lib/cjs/shared/Metadata.js.map +1 -1
  29. package/lib/cjs/shared/Utils.d.ts +12 -1
  30. package/lib/cjs/shared/Utils.d.ts.map +1 -1
  31. package/lib/cjs/shared/Utils.js +25 -11
  32. package/lib/cjs/shared/Utils.js.map +1 -1
  33. package/lib/cjs/shared/Values.d.ts +3 -3
  34. package/lib/cjs/shared/Values.d.ts.map +1 -1
  35. package/lib/cjs/shared/Values.js +13 -47
  36. package/lib/cjs/shared/Values.js.map +1 -1
  37. package/lib/cjs/shared/ecsql-snippets/ECSqlJoinSnippets.d.ts +1 -1
  38. package/lib/cjs/shared/ecsql-snippets/ECSqlJoinSnippets.d.ts.map +1 -1
  39. package/lib/cjs/shared/ecsql-snippets/ECSqlJoinSnippets.js +10 -12
  40. package/lib/cjs/shared/ecsql-snippets/ECSqlJoinSnippets.js.map +1 -1
  41. package/lib/cjs/shared/ecsql-snippets/ECSqlValueSelectorSnippets.d.ts +4 -3
  42. package/lib/cjs/shared/ecsql-snippets/ECSqlValueSelectorSnippets.d.ts.map +1 -1
  43. package/lib/cjs/shared/ecsql-snippets/ECSqlValueSelectorSnippets.js +8 -6
  44. package/lib/cjs/shared/ecsql-snippets/ECSqlValueSelectorSnippets.js.map +1 -1
  45. package/lib/cjs/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.d.ts +17 -0
  46. package/lib/cjs/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.d.ts.map +1 -0
  47. package/lib/cjs/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.js +51 -0
  48. package/lib/cjs/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.js.map +1 -0
  49. package/lib/cjs/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.d.ts +39 -0
  50. package/lib/cjs/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.d.ts.map +1 -0
  51. package/lib/cjs/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.js +63 -0
  52. package/lib/cjs/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.js.map +1 -0
  53. package/lib/cjs/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.d.ts +12 -0
  54. package/lib/cjs/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.d.ts.map +1 -0
  55. package/lib/cjs/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.js +39 -0
  56. package/lib/cjs/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.js.map +1 -0
  57. package/lib/cjs/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.d.ts +198 -0
  58. package/lib/cjs/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.d.ts.map +1 -0
  59. package/lib/cjs/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.js +10 -0
  60. package/lib/cjs/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.js.map +1 -0
  61. package/lib/cjs/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.d.ts +34 -0
  62. package/lib/cjs/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.d.ts.map +1 -0
  63. package/lib/cjs/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.js +335 -0
  64. package/lib/cjs/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.js.map +1 -0
  65. package/lib/cjs/shared/instance-label-factory-impls/Utils.d.ts +6 -0
  66. package/lib/cjs/shared/instance-label-factory-impls/Utils.d.ts.map +1 -0
  67. package/lib/cjs/shared/instance-label-factory-impls/Utils.js +24 -0
  68. package/lib/cjs/shared/instance-label-factory-impls/Utils.js.map +1 -0
  69. package/lib/esm/presentation-shared.d.ts +16 -8
  70. package/lib/esm/presentation-shared.d.ts.map +1 -1
  71. package/lib/esm/presentation-shared.js +6 -2
  72. package/lib/esm/presentation-shared.js.map +1 -1
  73. package/lib/esm/shared/ConcatenatedValue.d.ts +1 -1
  74. package/lib/esm/shared/ConcatenatedValue.d.ts.map +1 -1
  75. package/lib/esm/shared/ECSqlCore.d.ts +1 -1
  76. package/lib/esm/shared/ECSqlCore.d.ts.map +1 -1
  77. package/lib/esm/shared/Event.d.ts +20 -2
  78. package/lib/esm/shared/Event.d.ts.map +1 -1
  79. package/lib/esm/shared/Formatting.d.ts +1 -1
  80. package/lib/esm/shared/Formatting.d.ts.map +1 -1
  81. package/lib/esm/shared/Formatting.js +10 -6
  82. package/lib/esm/shared/Formatting.js.map +1 -1
  83. package/lib/esm/shared/InstanceLabelSelectClauseFactory.d.ts +5 -65
  84. package/lib/esm/shared/InstanceLabelSelectClauseFactory.d.ts.map +1 -1
  85. package/lib/esm/shared/InstanceLabelSelectClauseFactory.js +0 -133
  86. package/lib/esm/shared/InstanceLabelSelectClauseFactory.js.map +1 -1
  87. package/lib/esm/shared/Logging.js +2 -1
  88. package/lib/esm/shared/Logging.js.map +1 -1
  89. package/lib/esm/shared/MappedTypes.d.ts +3 -13
  90. package/lib/esm/shared/MappedTypes.d.ts.map +1 -1
  91. package/lib/esm/shared/Metadata.d.ts +13 -10
  92. package/lib/esm/shared/Metadata.d.ts.map +1 -1
  93. package/lib/esm/shared/Metadata.js +4 -1
  94. package/lib/esm/shared/Metadata.js.map +1 -1
  95. package/lib/esm/shared/Utils.d.ts +12 -1
  96. package/lib/esm/shared/Utils.d.ts.map +1 -1
  97. package/lib/esm/shared/Utils.js +24 -11
  98. package/lib/esm/shared/Utils.js.map +1 -1
  99. package/lib/esm/shared/Values.d.ts +3 -3
  100. package/lib/esm/shared/Values.d.ts.map +1 -1
  101. package/lib/esm/shared/Values.js +13 -47
  102. package/lib/esm/shared/Values.js.map +1 -1
  103. package/lib/esm/shared/ecsql-snippets/ECSqlJoinSnippets.d.ts +1 -1
  104. package/lib/esm/shared/ecsql-snippets/ECSqlJoinSnippets.d.ts.map +1 -1
  105. package/lib/esm/shared/ecsql-snippets/ECSqlJoinSnippets.js +10 -12
  106. package/lib/esm/shared/ecsql-snippets/ECSqlJoinSnippets.js.map +1 -1
  107. package/lib/esm/shared/ecsql-snippets/ECSqlValueSelectorSnippets.d.ts +4 -3
  108. package/lib/esm/shared/ecsql-snippets/ECSqlValueSelectorSnippets.d.ts.map +1 -1
  109. package/lib/esm/shared/ecsql-snippets/ECSqlValueSelectorSnippets.js +8 -6
  110. package/lib/esm/shared/ecsql-snippets/ECSqlValueSelectorSnippets.js.map +1 -1
  111. package/lib/esm/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.d.ts +17 -0
  112. package/lib/esm/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.d.ts.map +1 -0
  113. package/lib/esm/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.js +48 -0
  114. package/lib/esm/shared/instance-label-factory-impls/BisInstanceLabelSelectClauseFactory.js.map +1 -0
  115. package/lib/esm/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.d.ts +39 -0
  116. package/lib/esm/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.d.ts.map +1 -0
  117. package/lib/esm/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.js +60 -0
  118. package/lib/esm/shared/instance-label-factory-impls/ClassBasedInstanceLabelSelectClauseFactory.js.map +1 -0
  119. package/lib/esm/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.d.ts +12 -0
  120. package/lib/esm/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.d.ts.map +1 -0
  121. package/lib/esm/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.js +36 -0
  122. package/lib/esm/shared/instance-label-factory-impls/DefaultInstanceLabelSelectClauseFactory.js.map +1 -0
  123. package/lib/esm/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.d.ts +198 -0
  124. package/lib/esm/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.d.ts.map +1 -0
  125. package/lib/esm/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.js +9 -0
  126. package/lib/esm/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.Rules.js.map +1 -0
  127. package/lib/esm/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.d.ts +34 -0
  128. package/lib/esm/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.d.ts.map +1 -0
  129. package/lib/esm/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.js +332 -0
  130. package/lib/esm/shared/instance-label-factory-impls/IModelInstanceLabelSelectClauseFactory.js.map +1 -0
  131. package/lib/esm/shared/instance-label-factory-impls/Utils.d.ts +6 -0
  132. package/lib/esm/shared/instance-label-factory-impls/Utils.d.ts.map +1 -0
  133. package/lib/esm/shared/instance-label-factory-impls/Utils.js +20 -0
  134. package/lib/esm/shared/instance-label-factory-impls/Utils.js.map +1 -0
  135. package/package.json +14 -22
@@ -5,10 +5,6 @@
5
5
  *--------------------------------------------------------------------------------------------*/
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.parseInstanceLabel = parseInstanceLabel;
8
- exports.createDefaultInstanceLabelSelectClauseFactory = createDefaultInstanceLabelSelectClauseFactory;
9
- exports.createClassBasedInstanceLabelSelectClauseFactory = createClassBasedInstanceLabelSelectClauseFactory;
10
- exports.createBisInstanceLabelSelectClauseFactory = createBisInstanceLabelSelectClauseFactory;
11
- const ECSqlValueSelectorSnippets_js_1 = require("./ecsql-snippets/ECSqlValueSelectorSnippets.js");
12
8
  /**
13
9
  * Parses an instance label from query result into a string or a `ConcatenatedValue`. The latter type of result
14
10
  * is expected when label selector is created using `IInstanceLabelSelectClauseFactory.createSelectClause` with
@@ -31,136 +27,4 @@ function parseInstanceLabel(value) {
31
27
  // not a JSON object/array
32
28
  return value;
33
29
  }
34
- /**
35
- * Creates a label select clause in a format `Class label [base36(briefcase id)-base36(local id)]`, where
36
- * local and briefcase IDs are calculated based on ECInstance ID:
37
- * - `{briefcase id} = ECInstanceId >> 40`
38
- * - `{local id} = ECInstanceId & (1 << 40 - 1)`
39
- *
40
- * @see https://www.itwinjs.org/presentation/advanced/defaultbisrules/#label-overrides
41
- * @public
42
- */
43
- function createDefaultInstanceLabelSelectClauseFactory() {
44
- return {
45
- async createSelectClause(props) {
46
- return `(
47
- SELECT
48
- ${concatenate(props, [
49
- {
50
- selector: `COALESCE(
51
- ${(0, ECSqlValueSelectorSnippets_js_1.createRawPropertyValueSelector)("c", "DisplayLabel")},
52
- ${(0, ECSqlValueSelectorSnippets_js_1.createRawPropertyValueSelector)("c", "Name")}
53
- )`,
54
- },
55
- ...createECInstanceIdSuffixSelectors(props.classAlias),
56
- ])}
57
- FROM [meta].[ECClassDef] AS [c]
58
- WHERE [c].[ECInstanceId] = ${(0, ECSqlValueSelectorSnippets_js_1.createRawPropertyValueSelector)(props.classAlias, "ECClassId")}
59
- )`;
60
- },
61
- };
62
- }
63
- /**
64
- * Creates an instance label select clause based on its class.
65
- * @public
66
- */
67
- function createClassBasedInstanceLabelSelectClauseFactory(props) {
68
- const { classHierarchyInspector, clauses: labelClausesByClass } = props;
69
- const defaultClauseFactory = props.defaultClauseFactory ?? createDefaultInstanceLabelSelectClauseFactory();
70
- async function getLabelClausesForClass(queryClassName) {
71
- const matchingLabelClauses = await Promise.all(labelClausesByClass.map(async (entry) => {
72
- if (await classHierarchyInspector.classDerivesFrom(entry.className, queryClassName)) {
73
- // label selector is intended for a more specific class than we're selecting from - need to include it
74
- // as query results (on polymorphic select) are going to include more specific class instances too
75
- return entry;
76
- }
77
- if (await classHierarchyInspector.classDerivesFrom(queryClassName, entry.className)) {
78
- // label selector is intended for a base class of what query is selecting - need to include it as
79
- // we want base class label selectors to apply to subclass instances
80
- return entry;
81
- }
82
- return undefined;
83
- }));
84
- function filterNotUndefined(x) {
85
- return !!x;
86
- }
87
- return matchingLabelClauses.filter(filterNotUndefined);
88
- }
89
- return {
90
- async createSelectClause(clauseProps) {
91
- if (labelClausesByClass.length === 0) {
92
- return defaultClauseFactory.createSelectClause(clauseProps);
93
- }
94
- const labelClausePromises = clauseProps.className ? await getLabelClausesForClass(clauseProps.className) : labelClausesByClass;
95
- if (labelClausePromises.length === 0) {
96
- return defaultClauseFactory.createSelectClause(clauseProps);
97
- }
98
- const labelClauses = await Promise.all(labelClausePromises.map(async ({ className, clause }) => ({
99
- className,
100
- clause: await clause(clauseProps),
101
- })));
102
- return `COALESCE(
103
- ${labelClauses
104
- .map(({ className, clause }) => `
105
- IIF(
106
- ${(0, ECSqlValueSelectorSnippets_js_1.createRawPropertyValueSelector)(clauseProps.classAlias, "ECClassId")} IS (${className}),
107
- ${clause.trim()},
108
- NULL
109
- )
110
- `.trim())
111
- .join(", ")},
112
- ${await defaultClauseFactory.createSelectClause(clauseProps)}
113
- )`;
114
- },
115
- };
116
- }
117
- /**
118
- * Creates a label select clause according to BIS instance label rules.
119
- * @see https://www.itwinjs.org/presentation/advanced/defaultbisrules/#label-overrides
120
- * @public
121
- */
122
- function createBisInstanceLabelSelectClauseFactory(props) {
123
- const clauses = [];
124
- const factory = createClassBasedInstanceLabelSelectClauseFactory({
125
- classHierarchyInspector: props.classHierarchyInspector,
126
- clauses,
127
- });
128
- clauses.push({
129
- className: "BisCore.GeometricElement",
130
- clause: async ({ classAlias, ...rest }) => `
131
- COALESCE(
132
- ${(0, ECSqlValueSelectorSnippets_js_1.createRawPropertyValueSelector)(classAlias, "CodeValue")},
133
- ${concatenate(rest, [{ selector: (0, ECSqlValueSelectorSnippets_js_1.createRawPropertyValueSelector)(classAlias, "UserLabel") }, ...createECInstanceIdSuffixSelectors(classAlias)], `${(0, ECSqlValueSelectorSnippets_js_1.createRawPropertyValueSelector)(classAlias, "UserLabel")} IS NOT NULL`)}
134
- )
135
- `,
136
- }, {
137
- className: "BisCore.Element",
138
- clause: async ({ classAlias }) => `
139
- COALESCE(
140
- ${(0, ECSqlValueSelectorSnippets_js_1.createRawPropertyValueSelector)(classAlias, "UserLabel")},
141
- ${(0, ECSqlValueSelectorSnippets_js_1.createRawPropertyValueSelector)(classAlias, "CodeValue")}
142
- )
143
- `,
144
- }, {
145
- className: "BisCore.Model",
146
- clause: async ({ classAlias, ...rest }) => `(
147
- SELECT ${await factory.createSelectClause({ ...rest, classAlias: "e", className: "BisCore.Element" })}
148
- FROM [bis].[Element] AS [e]
149
- WHERE [e].[ECInstanceId] = ${(0, ECSqlValueSelectorSnippets_js_1.createRawPropertyValueSelector)(classAlias, "ModeledElement", "Id")}
150
- )`,
151
- });
152
- return factory;
153
- }
154
- function createECInstanceIdSuffixSelectors(classAlias) {
155
- return [
156
- { value: ` [`, type: "String" },
157
- { selector: `CAST(base36(${(0, ECSqlValueSelectorSnippets_js_1.createRawPropertyValueSelector)(classAlias, "ECInstanceId")} >> 40) AS TEXT)` },
158
- { value: `-`, type: "String" },
159
- { selector: `CAST(base36(${(0, ECSqlValueSelectorSnippets_js_1.createRawPropertyValueSelector)(classAlias, "ECInstanceId")} & ((1 << 40) - 1)) AS TEXT)` },
160
- { value: `]`, type: "String" },
161
- ];
162
- }
163
- function concatenate(props, selectors, checkSelector) {
164
- return (props.selectorsConcatenator ?? ECSqlValueSelectorSnippets_js_1.createConcatenatedValueJsonSelector)(selectors, checkSelector);
165
- }
166
30
  //# sourceMappingURL=InstanceLabelSelectClauseFactory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InstanceLabelSelectClauseFactory.js","sourceRoot":"","sources":["../../../src/shared/InstanceLabelSelectClauseFactory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InstanceLabelSelectClauseFactory.js","sourceRoot":"","sources":["../../../src/shared/InstanceLabelSelectClauseFactory.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;AA8EhG,gDAaC;AApBD;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAAC,KAAyB;IAC1D,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACrG,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,eAAe;QACjB,CAAC;IACH,CAAC;IACD,0BAA0B;IAC1B,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -9,7 +9,7 @@ exports.NOOP_LOGGER = void 0;
9
9
  * A logger implementation that does nothing.
10
10
  * @public
11
11
  */
12
- /* c8 ignore next 7 */
12
+ /* v8 ignore start */
13
13
  exports.NOOP_LOGGER = {
14
14
  isEnabled: () => false,
15
15
  logError: () => { },
@@ -17,4 +17,5 @@ exports.NOOP_LOGGER = {
17
17
  logInfo: () => { },
18
18
  logTrace: () => { },
19
19
  };
20
+ /* v8 ignore stop */
20
21
  //# sourceMappingURL=Logging.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Logging.js","sourceRoot":"","sources":["../../../src/shared/Logging.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;;AA0BhG;;;GAGG;AACH,sBAAsB;AACT,QAAA,WAAW,GAAY;IAClC,SAAS,EAAE,GAAG,EAAE,CAAC,KAAK;IACtB,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;IAClB,UAAU,EAAE,GAAG,EAAE,GAAE,CAAC;IACpB,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;IACjB,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;CACnB,CAAC"}
1
+ {"version":3,"file":"Logging.js","sourceRoot":"","sources":["../../../src/shared/Logging.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;;AA0BhG;;;GAGG;AACH,qBAAqB;AACR,QAAA,WAAW,GAAY;IAClC,SAAS,EAAE,GAAG,EAAE,CAAC,KAAK;IACtB,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;IAClB,UAAU,EAAE,GAAG,EAAE,GAAE,CAAC;IACpB,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;IACjB,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;CACnB,CAAC;AACF,oBAAoB"}
@@ -1,4 +1,3 @@
1
- import { Event } from "./Event.js";
2
1
  /**
3
2
  * An utility `Omit` type which works with union types.
4
3
  * @public
@@ -10,18 +9,9 @@ export type OmitOverUnion<T, K extends PropertyKey> = T extends T ? Omit<T, K> :
10
9
  */
11
10
  export type ArrayElement<ArrayType extends readonly unknown[]> = ArrayType extends readonly (infer ElementType)[] ? ElementType : never;
12
11
  /**
13
- * Returns type of the first `TFunc` parameter.
12
+ * Returns type of `TFunc` parameter, when `TFunc` accepts exactly one object argument
13
+ * that can also be `undefined` / optional.
14
14
  * @public
15
15
  */
16
- export type Props<TFunc extends (...args: any[]) => any> = Parameters<TFunc>[0];
17
- /**
18
- * Returns type of the given `Event` listener.
19
- * @public
20
- */
21
- export type EventListener<TEvent extends Event> = TEvent extends Event<infer TListener> ? TListener : never;
22
- /**
23
- * Returns type of the given `Event` arguments.
24
- * @public
25
- */
26
- export type EventArgs<TEvent extends Event> = Props<EventListener<TEvent>>;
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;
27
17
  //# sourceMappingURL=MappedTypes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MappedTypes.d.ts","sourceRoot":"","sources":["../../../src/shared/MappedTypes.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC;;;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;;;GAGG;AACH,MAAM,MAAM,KAAK,CAAC,KAAK,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAEhF;;;GAGG;AACH,MAAM,MAAM,aAAa,CAAC,MAAM,SAAS,KAAK,IAAI,MAAM,SAAS,KAAK,CAAC,MAAM,SAAS,CAAC,GAAG,SAAS,GAAG,KAAK,CAAC;AAE5G;;;GAGG;AACH,MAAM,MAAM,SAAS,CAAC,MAAM,SAAS,KAAK,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"MappedTypes.d.ts","sourceRoot":"","sources":["../../../src/shared/MappedTypes.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,EAAE,CAAC,SAAS,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC;AAEvF;;;GAGG;AACH,MAAM,MAAM,YAAY,CAAC,SAAS,SAAS,SAAS,OAAO,EAAE,IAAI,SAAS,SAAS,SAAS,CAAC,MAAM,WAAW,CAAC,EAAE,GAC7G,WAAW,GACX,KAAK,CAAC;AAEV;;;;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"}
@@ -13,7 +13,7 @@ export interface ECSchemaProvider {
13
13
  * @public
14
14
  */
15
15
  export interface ECClassHierarchyInspector {
16
- classDerivesFrom(derivedClassFullName: string, candidateBaseClassFullName: string): Promise<boolean> | boolean;
16
+ classDerivesFrom(derivedClassFullName: EC.FullClassName, candidateBaseClassFullName: EC.FullClassName): Promise<boolean> | boolean;
17
17
  }
18
18
  /**
19
19
  * Creates a new `ECClassHierarchyInspector` that caches results of `derivesFrom` calls.
@@ -31,6 +31,9 @@ export declare function createCachingECClassHierarchyInspector(props: {
31
31
  * @see `ECSchemaProvider`
32
32
  */
33
33
  export declare namespace EC {
34
+ type FullClassNameDotNotation = `${string}.${string}`;
35
+ type FullClassNameColonNotation = `${string}:${string}`;
36
+ type FullClassName = FullClassNameColonNotation | FullClassNameDotNotation;
34
37
  /**
35
38
  * Represents an ECSchema that contains classes, relationships, etc.
36
39
  * @see https://www.itwinjs.org/reference/ecschema-metadata/metadata/schema/
@@ -48,7 +51,7 @@ export declare namespace EC {
48
51
  */
49
52
  interface SchemaItem {
50
53
  schema: Schema;
51
- fullName: string;
54
+ fullName: FullClassName;
52
55
  name: string;
53
56
  label?: string;
54
57
  }
@@ -109,7 +112,7 @@ export declare namespace EC {
109
112
  * @public
110
113
  */
111
114
  interface RelationshipConstraint {
112
- multiplicity?: RelationshipConstraintMultiplicity;
115
+ multiplicity: RelationshipConstraintMultiplicity;
113
116
  polymorphic: boolean;
114
117
  abstractConstraint: Promise<EntityClass | Mixin | RelationshipClass | undefined>;
115
118
  }
@@ -241,8 +244,8 @@ export declare namespace EC {
241
244
  * @public
242
245
  */
243
246
  interface CustomAttributeSet {
244
- [Symbol.iterator]: () => IterableIterator<[string, CustomAttribute]>;
245
- get(className: string): CustomAttribute | undefined;
247
+ [Symbol.iterator]: () => IterableIterator<[FullClassName, CustomAttribute]>;
248
+ get(className: FullClassName): CustomAttribute | undefined;
246
249
  }
247
250
  /**
248
251
  * Defines a custom attribute that may be applied to a class or property.
@@ -250,7 +253,7 @@ export declare namespace EC {
250
253
  * @public
251
254
  */
252
255
  interface CustomAttribute {
253
- className: string;
256
+ className: FullClassName;
254
257
  [propName: string]: any;
255
258
  }
256
259
  }
@@ -265,11 +268,11 @@ export type PrimitiveValueType = "Id" | Exclude<EC.PrimitiveType, "Binary" | "IG
265
268
  */
266
269
  export interface RelationshipPathStep {
267
270
  /** Full name of the source ECClass */
268
- sourceClassName: string;
271
+ sourceClassName: EC.FullClassName;
269
272
  /** Full name of the target ECClass */
270
- targetClassName: string;
273
+ targetClassName: EC.FullClassName;
271
274
  /** Full name of the ECRelationshipClass */
272
- relationshipName: string;
275
+ relationshipName: EC.FullClassName;
273
276
  /**
274
277
  * Indicates that the relationship direction be reversed. This should be set to `true` when step direction
275
278
  * doesn't match relationship direction, e.g. relationship is from source `A` to target `B` and the step
@@ -287,5 +290,5 @@ export type RelationshipPath<TStep extends RelationshipPathStep = RelationshipPa
287
290
  * @throws Error if the schema or class is not found.
288
291
  * @public
289
292
  */
290
- export declare function getClass(schemaProvider: ECSchemaProvider, fullClassName: string): Promise<EC.Class>;
293
+ export declare function getClass(schemaProvider: ECSchemaProvider, fullClassName: EC.FullClassName): Promise<EC.Class>;
291
294
  //# sourceMappingURL=Metadata.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Metadata.d.ts","sourceRoot":"","sources":["../../../src/shared/Metadata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Metadata.d.ts","sourceRoot":"","sources":["../../../src/shared/Metadata.ts"],"names":[],"mappings":"AAQA;;;;;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,aAAa,EACtC,0BAA0B,EAAE,EAAE,CAAC,aAAa,GAC3C,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,MAAM;QACrB,IAAI,EAAE,MAAM,CAAC;QACb,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,aAAa,CAAC;QACxB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB;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,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,KAAY,WAAW,GAAG,KAAK,CAAC;IAEhC;;;;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,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;QAEpD,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,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC;QAC5E,GAAG,CAAC,SAAS,EAAE,aAAa,GAAG,eAAe,GAAG,SAAS,CAAC;KAC5D;IAED;;;;OAIG;IACH,UAAiB,eAAe;QAC9B,SAAS,EAAE,aAAa,CAAC;QACzB,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG,CAAC;KACzB;CACF;AAED;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,IAAI,GAAG,OAAO,CAAC,EAAE,CAAC,aAAa,EAAE,QAAQ,GAAG,WAAW,CAAC,CAAC;AAE1F;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,sCAAsC;IACtC,eAAe,EAAE,EAAE,CAAC,aAAa,CAAC;IAClC,sCAAsC;IACtC,eAAe,EAAE,EAAE,CAAC,aAAa,CAAC;IAClC,2CAA2C;IAC3C,gBAAgB,EAAE,EAAE,CAAC,aAAa,CAAC;IACnC;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;;GAGG;AACH,MAAM,MAAM,gBAAgB,CAAC,KAAK,SAAS,oBAAoB,GAAG,oBAAoB,IAAI,KAAK,EAAE,CAAC;AAElG;;;;GAIG;AACH,wBAAsB,QAAQ,CAAC,cAAc,EAAE,gBAAgB,EAAE,aAAa,EAAE,EAAE,CAAC,aAAa,GAAG,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAWnH"}
@@ -22,7 +22,10 @@ function createCachingECClassHierarchyInspector(props) {
22
22
  const cacheKey = createCacheKey(derivedClassFullName, candidateBaseClassFullName);
23
23
  let result = map.get(cacheKey);
24
24
  if (result === undefined) {
25
- result = Promise.all([getClass(props.schemaProvider, derivedClassFullName), getClass(props.schemaProvider, candidateBaseClassFullName)]).then(async ([derivedClass, baseClass]) => {
25
+ result = Promise.all([
26
+ getClass(props.schemaProvider, derivedClassFullName),
27
+ getClass(props.schemaProvider, candidateBaseClassFullName),
28
+ ]).then(async ([derivedClass, baseClass]) => {
26
29
  const resolvedResult = await derivedClass.is(baseClass);
27
30
  map.set(cacheKey, resolvedResult);
28
31
  return resolvedResult;
@@ -1 +1 @@
1
- {"version":3,"file":"Metadata.js","sourceRoot":"","sources":["../../../src/shared/Metadata.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;AA4BhG,wFA2BC;AAmSD,4BAWC;AAnWD,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,gBAAwB,EAAE,aAAqB;QACrE,OAAO,GAAG,gBAAgB,IAAI,aAAa,EAAE,CAAC;IAChD,CAAC;IACD,OAAO;QACL,gBAAgB,CAAC,oBAA4B,EAAE,0BAAkC;YAC/E,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;AA8RD;;;;GAIG;AACI,KAAK,UAAU,QAAQ,CAAC,cAAgC,EAAE,aAAqB;IACpF,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,IAAA,6BAAkB,EAAC,aAAa,CAAC,CAAC;IACpE,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAC1D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,WAAW,UAAU,cAAc,CAAC,CAAC;IACvD,CAAC;IACD,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACrD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,0BAA0B,UAAU,IAAI,CAAC,CAAC;IAC/E,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"Metadata.js","sourceRoot":"","sources":["../../../src/shared/Metadata.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;AA+BhG,wFA+BC;AAiTD,4BAWC;AAxXD,sDAA6C;AAC7C,yCAAgD;AAwBhD;;;GAGG;AACH,SAAgB,sCAAsC,CAAC,KAKtD;IACC,MAAM,GAAG,GAAG,IAAI,qBAAM,CAAqC,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC;IACjF,SAAS,cAAc,CAAC,gBAAkC,EAAE,aAA+B;QACzF,OAAO,GAAG,gBAAgB,IAAI,aAAa,EAAE,CAAC;IAChD,CAAC;IACD,OAAO;QACL,gBAAgB,CACd,oBAAsC,EACtC,0BAA4C;YAE5C,MAAM,QAAQ,GAAG,cAAc,CAAC,oBAAoB,EAAE,0BAA0B,CAAC,CAAC;YAClF,IAAI,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC/B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;oBACnB,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,oBAAoB,CAAC;oBACpD,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,0BAA0B,CAAC;iBAC3D,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC,EAAE,EAAE;oBAC1C,MAAM,cAAc,GAAG,MAAM,YAAY,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;oBACxD,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;oBAClC,OAAO,cAAc,CAAC;gBACxB,CAAC,CAAC,CAAC;gBACH,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC5B,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;KACF,CAAC;AACJ,CAAC;AA4SD;;;;GAIG;AACI,KAAK,UAAU,QAAQ,CAAC,cAAgC,EAAE,aAA+B;IAC9F,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,IAAA,6BAAkB,EAAC,aAAa,CAAC,CAAC;IACpE,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAC1D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,WAAW,UAAU,cAAc,CAAC,CAAC;IACvD,CAAC;IACD,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACrD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,0BAA0B,UAAU,IAAI,CAAC,CAAC;IAC/E,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC"}
@@ -1,6 +1,9 @@
1
+ import type { EC } from "./Metadata.js";
1
2
  /**
2
3
  * An utility to parse schema and class names from full class name, where
3
4
  * schema and class names are separated by either `:` or `.`.
5
+ *
6
+ * @throws Error if the provided full class name is not valid.
4
7
  * @public
5
8
  */
6
9
  export declare function parseFullClassName(fullClassName: string): {
@@ -10,9 +13,17 @@ export declare function parseFullClassName(fullClassName: string): {
10
13
  /**
11
14
  * An utility to normalize full class name from either `SchemaName:ClassName` or
12
15
  * `SchemaName.ClassName` to always use the dot format.
16
+ *
17
+ * @throws Error if the provided full class name is not valid.
18
+ * @public
19
+ */
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 `:`).
13
24
  * @public
14
25
  */
15
- export declare function normalizeFullClassName(fullClassName: string): string;
26
+ export declare function compareFullClassNames(lhs: EC.FullClassName, rhs: EC.FullClassName): number;
16
27
  /**
17
28
  * An utility to remove all extra whitespace from a given string.
18
29
  * @public
@@ -1 +1 @@
1
- {"version":3,"file":"Utils.d.ts","sourceRoot":"","sources":["../../../src/shared/Utils.ts"],"names":[],"mappings":"AAOA;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,MAAM;;;EAIvD;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CASpE;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"}
1
+ {"version":3,"file":"Utils.d.ts","sourceRoot":"","sources":["../../../src/shared/Utils.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAExC;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,MAAM;;;EAMvD;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG,EAAE,CAAC,wBAAwB,CAGzF;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,CAAC,aAAa,GAAG,MAAM,CAS1F;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;AACpD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AAc5E;;;;;GAKG;AACH,wBAAsB,iBAAiB,kBAEtC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,0CAA0C,CAAC,mBAAmB,SAAK,SAEtE,OAAO,CAAC,IAAI,CAAC,GAAG,SAAS,CASrC;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAGzD"}
@@ -6,39 +6,53 @@
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.parseFullClassName = parseFullClassName;
8
8
  exports.normalizeFullClassName = normalizeFullClassName;
9
+ exports.compareFullClassNames = compareFullClassNames;
9
10
  exports.trimWhitespace = trimWhitespace;
10
11
  exports.releaseMainThread = releaseMainThread;
11
12
  exports.createMainThreadReleaseOnTimePassedHandler = createMainThreadReleaseOnTimePassedHandler;
12
13
  exports.julianToDateTime = julianToDateTime;
13
- const core_bentley_1 = require("@itwin/core-bentley");
14
14
  /**
15
15
  * An utility to parse schema and class names from full class name, where
16
16
  * schema and class names are separated by either `:` or `.`.
17
+ *
18
+ * @throws Error if the provided full class name is not valid.
17
19
  * @public
18
20
  */
19
21
  function parseFullClassName(fullClassName) {
20
- const [schemaName, className] = fullClassName.split(/[\.:]/);
21
- (0, core_bentley_1.assert)(!!schemaName && !!className, "Invalid full class name");
22
+ const [schemaName, className, ...rest] = fullClassName.split(/[\.:]/);
23
+ if (!schemaName || !className || rest.length > 0) {
24
+ throw new Error(`Invalid full class name: ${fullClassName}`);
25
+ }
22
26
  return { schemaName, className };
23
27
  }
24
28
  /**
25
29
  * An utility to normalize full class name from either `SchemaName:ClassName` or
26
30
  * `SchemaName.ClassName` to always use the dot format.
31
+ *
32
+ * @throws Error if the provided full class name is not valid.
27
33
  * @public
28
34
  */
29
35
  function normalizeFullClassName(fullClassName) {
30
- const colonPos = fullClassName.indexOf(":");
31
- if (-1 === colonPos) {
32
- (0, core_bentley_1.assert)(fullClassName.indexOf(".") !== -1, "Invalid full class name");
33
- return fullClassName;
34
- }
35
- const schemaName = fullClassName.slice(0, colonPos);
36
- const className = fullClassName.slice(colonPos + 1);
36
+ const { schemaName, className } = parseFullClassName(fullClassName);
37
37
  return `${schemaName}.${className}`;
38
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 = { lhs: parseFullClassName(lhs), rhs: parseFullClassName(rhs) };
46
+ const schemaCompare = parsed.lhs.schemaName
47
+ .toLocaleLowerCase()
48
+ .localeCompare(parsed.rhs.schemaName.toLocaleLowerCase());
49
+ if (schemaCompare !== 0) {
50
+ return schemaCompare;
51
+ }
52
+ return parsed.lhs.className.toLocaleLowerCase().localeCompare(parsed.rhs.className.toLocaleLowerCase());
53
+ }
39
54
  /** @public */
40
55
  function trimWhitespace(str) {
41
- /* c8 ignore next 3 */
42
56
  if (!str) {
43
57
  return str;
44
58
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../../src/shared/Utils.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;AAShG,gDAIC;AAOD,wDASC;AAaD,wCAWC;AAQD,8CAEC;AAkBD,gGAWC;AAMD,4CAGC;AAnGD,sDAA6C;AAE7C;;;;GAIG;AACH,SAAgB,kBAAkB,CAAC,aAAqB;IACtD,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7D,IAAA,qBAAM,EAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,SAAS,EAAE,yBAAyB,CAAC,CAAC;IAC/D,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;AACnC,CAAC;AAED;;;;GAIG;AACH,SAAgB,sBAAsB,CAAC,aAAqB;IAC1D,MAAM,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC5C,IAAI,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QACpB,IAAA,qBAAM,EAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,yBAAyB,CAAC,CAAC;QACrE,OAAO,aAAa,CAAC;IACvB,CAAC;IACD,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;IACpD,OAAO,GAAG,UAAU,IAAI,SAAS,EAAE,CAAC;AACtC,CAAC;AAYD,cAAc;AACd,SAAgB,cAAc,CAAC,GAAuB;IACpD,sBAAsB;IACtB,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,GAAG,CAAC;IACb,CAAC;IACD,OAAO,GAAG;SACP,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,qDAAqD;SAC9E,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,0CAA0C;SACpE,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,2CAA2C;SACrE,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,6BAA6B;SACtD,IAAI,EAAE,CAAC,CAAC,qDAAqD;AAClE,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,iBAAiB;IACrC,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;AAChE,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,SAAgB,0CAA0C,CAAC,mBAAmB,GAAG,EAAE;IACjF,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,OAAO,GAA8B,EAAE;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;QACnC,IAAI,OAAO,GAAG,mBAAmB,EAAE,CAAC;YAClC,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,iBAAiB,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YACnC,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,gBAAgB,CAAC,UAAkB;IACjD,MAAM,MAAM,GAAG,CAAC,UAAU,GAAG,SAAS,CAAC,GAAG,QAAQ,CAAC;IACnD,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../../src/shared/Utils.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;AAWhG,gDAMC;AASD,wDAGC;AAOD,sDASC;AAaD,wCAUC;AAQD,8CAEC;AAkBD,gGAWC;AAMD,4CAGC;AAhHD;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAAC,aAAqB;IACtD,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACtE,IAAI,CAAC,UAAU,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjD,MAAM,IAAI,KAAK,CAAC,4BAA4B,aAAa,EAAE,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;AACnC,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,sBAAsB,CAAC,aAAqB;IAC1D,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;IACpE,OAAO,GAAG,UAAU,IAAI,SAAS,EAAE,CAAC;AACtC,CAAC;AAED;;;;GAIG;AACH,SAAgB,qBAAqB,CAAC,GAAqB,EAAE,GAAqB;IAChF,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE,kBAAkB,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC;IAC9E,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU;SACxC,iBAAiB,EAAE;SACnB,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAC5D,IAAI,aAAa,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,aAAa,CAAC;IACvB,CAAC;IACD,OAAO,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC,CAAC;AAC1G,CAAC;AAYD,cAAc;AACd,SAAgB,cAAc,CAAC,GAAuB;IACpD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,GAAG,CAAC;IACb,CAAC;IACD,OAAO,GAAG;SACP,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,qDAAqD;SAC9E,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,0CAA0C;SACpE,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,2CAA2C;SACrE,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,6BAA6B;SACtD,IAAI,EAAE,CAAC,CAAC,qDAAqD;AAClE,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,iBAAiB;IACrC,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;AAChE,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,SAAgB,0CAA0C,CAAC,mBAAmB,GAAG,EAAE;IACjF,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,OAAO,GAA8B,EAAE;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;QACnC,IAAI,OAAO,GAAG,mBAAmB,EAAE,CAAC;YAClC,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,iBAAiB,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YACnC,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,gBAAgB,CAAC,UAAkB;IACjD,MAAM,MAAM,GAAG,CAAC,UAAU,GAAG,SAAS,CAAC,GAAG,QAAQ,CAAC;IACnD,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC;AAC1B,CAAC"}
@@ -1,12 +1,12 @@
1
- import { Id64String } from "@itwin/core-bentley";
2
- import { PrimitiveValueType } from "./Metadata.js";
1
+ import type { Id64String } from "@itwin/core-bentley";
2
+ import type { EC, PrimitiveValueType } from "./Metadata.js";
3
3
  /**
4
4
  * A data structure uniquely identifying an ECInstance in an iModel.
5
5
  * @public
6
6
  */
7
7
  export interface InstanceKey {
8
8
  /** Full class name in format `SchemaName.ClassName` */
9
- className: string;
9
+ className: EC.FullClassName;
10
10
  /** ECInstance ID */
11
11
  id: Id64String;
12
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Values.d.ts","sourceRoot":"","sources":["../../../src/shared/Values.ts"],"names":[],"mappings":"AAKA,OAAO,EAAwB,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,uDAAuD;IACvD,SAAS,EAAE,MAAM,CAAC;IAClB,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,CAMlE;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,CAMjE;IAED;;;OAGG;IACH,SAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,KAAK,IAAI,OAAO,CAMjE;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"}
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;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAAA;CAAE,GAC3C;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GACnD;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GACnC;IAAE,KAAK,EAAE,UAAU,CAAC;IAAC,IAAI,EAAE,IAAI,CAAA;CAAE,GACjC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,GACjC;IACE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC9B,IAAI,EAAE,UAAU,CAAC;CAClB,GACD;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GACnC;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,SAAS,CAAA;CAAE,CACtC,GAAG;IAAE,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE9B,cAAc;AAEd,yBAAiB,mBAAmB,CAAC;IACnC;;;;OAIG;IACH,SAAgB,MAAM,CACpB,KAAK,EAAE,cAAc,EACrB,IAAI,EAAE,kBAAkB,EACxB,OAAO,CAAC,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,MAAM,GACpB,mBAAmB,CA6CrB;CACF"}
@@ -6,6 +6,7 @@
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.TypedPrimitiveValue = exports.PrimitiveValue = exports.InstanceKey = void 0;
8
8
  const core_bentley_1 = require("@itwin/core-bentley");
9
+ const Utils_js_1 = require("./Utils.js");
9
10
  /** @public */
10
11
  var InstanceKey;
11
12
  (function (InstanceKey) {
@@ -14,7 +15,7 @@ var InstanceKey;
14
15
  * @public
15
16
  */
16
17
  function equals(lhs, rhs) {
17
- return lhs.className === rhs.className && lhs.id === rhs.id;
18
+ return compare(lhs, rhs) === 0;
18
19
  }
19
20
  InstanceKey.equals = equals;
20
21
  /**
@@ -25,7 +26,7 @@ var InstanceKey;
25
26
  *- `positive value` if lhs key is more than rhs key
26
27
  */
27
28
  function compare(lhs, rhs) {
28
- const classNameCompareResult = (0, core_bentley_1.compareStrings)(lhs.className, rhs.className);
29
+ const classNameCompareResult = (0, core_bentley_1.compareStrings)((0, Utils_js_1.normalizeFullClassName)(lhs.className).toLocaleLowerCase(), (0, Utils_js_1.normalizeFullClassName)(rhs.className).toLocaleLowerCase());
29
30
  if (classNameCompareResult !== 0) {
30
31
  return classNameCompareResult;
31
32
  }
@@ -46,8 +47,7 @@ var PrimitiveValue;
46
47
  if (typeof value !== "object") {
47
48
  return false;
48
49
  }
49
- const pt = value;
50
- return pt.x !== undefined && pt.y !== undefined;
50
+ return "x" in value && "y" in value;
51
51
  }
52
52
  PrimitiveValue.isPoint2d = isPoint2d;
53
53
  /**
@@ -58,8 +58,7 @@ var PrimitiveValue;
58
58
  if (typeof value !== "object") {
59
59
  return false;
60
60
  }
61
- const pt = value;
62
- return pt.x !== undefined && pt.y !== undefined && pt.z !== undefined;
61
+ return "x" in value && "y" in value && "z" in value;
63
62
  }
64
63
  PrimitiveValue.isPoint3d = isPoint3d;
65
64
  })(PrimitiveValue || (exports.PrimitiveValue = PrimitiveValue = {}));
@@ -77,75 +76,42 @@ var TypedPrimitiveValue;
77
76
  case "Integer":
78
77
  case "Long":
79
78
  if (typeof value === "number") {
80
- return {
81
- type,
82
- extendedType,
83
- value,
84
- };
79
+ return { type, extendedType, value };
85
80
  }
86
81
  break;
87
82
  case "Double":
88
83
  if (typeof value === "number") {
89
- return {
90
- type,
91
- koqName,
92
- extendedType,
93
- value,
94
- };
84
+ return { type, koqName, extendedType, value };
95
85
  }
96
86
  break;
97
87
  case "Boolean":
98
88
  if (typeof value === "boolean") {
99
- return {
100
- type,
101
- extendedType,
102
- value,
103
- };
89
+ return { type, extendedType, value };
104
90
  }
105
91
  break;
106
92
  case "Id":
107
93
  if (typeof value === "string" && core_bentley_1.Id64.isId64(value)) {
108
- return {
109
- type,
110
- extendedType,
111
- value,
112
- };
94
+ return { type, extendedType, value };
113
95
  }
114
96
  break;
115
97
  case "String":
116
98
  if (typeof value === "string") {
117
- return {
118
- type,
119
- extendedType,
120
- value,
121
- };
99
+ return { type, extendedType, value };
122
100
  }
123
101
  break;
124
102
  case "DateTime":
125
103
  if (typeof value === "string" || typeof value === "number" || value instanceof Date) {
126
- return {
127
- type,
128
- extendedType,
129
- value,
130
- };
104
+ return { type, extendedType, value };
131
105
  }
132
106
  break;
133
107
  case "Point3d":
134
108
  if (PrimitiveValue.isPoint3d(value)) {
135
- return {
136
- type,
137
- extendedType,
138
- value,
139
- };
109
+ return { type, extendedType, value };
140
110
  }
141
111
  break;
142
112
  case "Point2d":
143
113
  if (PrimitiveValue.isPoint2d(value)) {
144
- return {
145
- type,
146
- extendedType,
147
- value,
148
- };
114
+ return { type, extendedType, value };
149
115
  }
150
116
  break;
151
117
  }