@itwin/ecschema-metadata 5.1.0-dev.5 → 5.1.0-dev.51
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 +71 -1
- package/lib/cjs/Constants.js.map +1 -1
- package/lib/cjs/Context.d.ts +1 -1
- package/lib/cjs/Context.js +1 -1
- package/lib/cjs/Context.js.map +1 -1
- package/lib/cjs/DelayedPromise.js.map +1 -1
- package/lib/cjs/Deserialization/AbstractParser.js.map +1 -1
- package/lib/cjs/Deserialization/Helper.js.map +1 -1
- package/lib/cjs/Deserialization/JsonParser.js.map +1 -1
- package/lib/cjs/Deserialization/JsonProps.js.map +1 -1
- package/lib/cjs/Deserialization/SchemaGraphUtil.d.ts +12 -3
- package/lib/cjs/Deserialization/SchemaGraphUtil.d.ts.map +1 -1
- package/lib/cjs/Deserialization/SchemaGraphUtil.js +36 -23
- package/lib/cjs/Deserialization/SchemaGraphUtil.js.map +1 -1
- package/lib/cjs/Deserialization/XmlParser.js.map +1 -1
- package/lib/cjs/Deserialization/XmlSerializationUtils.js +1 -1
- package/lib/cjs/Deserialization/XmlSerializationUtils.js.map +1 -1
- package/lib/cjs/ECName.js +1 -1
- package/lib/cjs/ECName.js.map +1 -1
- package/lib/cjs/ECObjects.d.ts +1 -1
- package/lib/cjs/ECObjects.js +2 -2
- package/lib/cjs/ECObjects.js.map +1 -1
- package/lib/cjs/Exception.js.map +1 -1
- package/lib/cjs/Interfaces.js.map +1 -1
- package/lib/cjs/Metadata/Class.d.ts +4 -16
- package/lib/cjs/Metadata/Class.d.ts.map +1 -1
- package/lib/cjs/Metadata/Class.js +51 -60
- package/lib/cjs/Metadata/Class.js.map +1 -1
- package/lib/cjs/Metadata/Constant.js.map +1 -1
- package/lib/cjs/Metadata/CustomAttribute.d.ts +7 -1
- package/lib/cjs/Metadata/CustomAttribute.d.ts.map +1 -1
- package/lib/cjs/Metadata/CustomAttribute.js.map +1 -1
- package/lib/cjs/Metadata/CustomAttributeClass.d.ts +1 -1
- package/lib/cjs/Metadata/CustomAttributeClass.js +1 -1
- package/lib/cjs/Metadata/CustomAttributeClass.js.map +1 -1
- package/lib/cjs/Metadata/EntityClass.d.ts +6 -6
- package/lib/cjs/Metadata/EntityClass.d.ts.map +1 -1
- package/lib/cjs/Metadata/EntityClass.js +48 -26
- package/lib/cjs/Metadata/EntityClass.js.map +1 -1
- package/lib/cjs/Metadata/Enumeration.js.map +1 -1
- package/lib/cjs/Metadata/Format.js.map +1 -1
- package/lib/cjs/Metadata/InvertedUnit.js.map +1 -1
- package/lib/cjs/Metadata/KindOfQuantity.js.map +1 -1
- package/lib/cjs/Metadata/Mixin.js.map +1 -1
- package/lib/cjs/Metadata/OverrideFormat.js.map +1 -1
- package/lib/cjs/Metadata/Phenomenon.js.map +1 -1
- package/lib/cjs/Metadata/Property.js.map +1 -1
- package/lib/cjs/Metadata/PropertyCategory.js.map +1 -1
- package/lib/cjs/Metadata/RelationshipClass.js.map +1 -1
- package/lib/cjs/Metadata/Schema.js.map +1 -1
- package/lib/cjs/Metadata/SchemaItem.js.map +1 -1
- package/lib/cjs/Metadata/UnitSystem.js.map +1 -1
- package/lib/cjs/PropertyTypes.js.map +1 -1
- package/lib/cjs/SchemaFormatsProvider.d.ts.map +1 -1
- package/lib/cjs/SchemaFormatsProvider.js +40 -14
- package/lib/cjs/SchemaFormatsProvider.js.map +1 -1
- package/lib/cjs/SchemaJsonLocater.js.map +1 -1
- package/lib/cjs/SchemaKey.js.map +1 -1
- package/lib/cjs/SchemaLoader.d.ts +4 -1
- package/lib/cjs/SchemaLoader.d.ts.map +1 -1
- package/lib/cjs/SchemaLoader.js +4 -1
- package/lib/cjs/SchemaLoader.js.map +1 -1
- package/lib/cjs/SchemaPartVisitorDelegate.js.map +1 -1
- package/lib/cjs/UnitConversion/Graph.js.map +1 -1
- package/lib/cjs/UnitConversion/Parser.js.map +1 -1
- package/lib/cjs/UnitConversion/UnitConversion.js.map +1 -1
- package/lib/cjs/UnitConversion/UnitConverter.js.map +1 -1
- package/lib/cjs/UnitConversion/UnitTree.js.map +1 -1
- package/lib/cjs/UnitProvider/SchemaUnitProvider.js.map +1 -1
- package/lib/cjs/Validation/SchemaWalker.js.map +1 -1
- package/lib/cjs/ecschema-metadata.js.map +1 -1
- package/lib/cjs/utils/SchemaGraph.js.map +1 -1
- package/lib/esm/Constants.js.map +1 -1
- package/lib/esm/Context.d.ts +1 -1
- package/lib/esm/Context.js +1 -1
- package/lib/esm/Context.js.map +1 -1
- package/lib/esm/DelayedPromise.js.map +1 -1
- package/lib/esm/Deserialization/AbstractParser.js.map +1 -1
- package/lib/esm/Deserialization/Helper.js.map +1 -1
- package/lib/esm/Deserialization/JsonParser.js.map +1 -1
- package/lib/esm/Deserialization/JsonProps.js.map +1 -1
- package/lib/esm/Deserialization/SchemaGraphUtil.d.ts +12 -3
- package/lib/esm/Deserialization/SchemaGraphUtil.d.ts.map +1 -1
- package/lib/esm/Deserialization/SchemaGraphUtil.js +36 -23
- package/lib/esm/Deserialization/SchemaGraphUtil.js.map +1 -1
- package/lib/esm/Deserialization/XmlParser.js.map +1 -1
- package/lib/esm/Deserialization/XmlSerializationUtils.js +1 -1
- package/lib/esm/Deserialization/XmlSerializationUtils.js.map +1 -1
- package/lib/esm/ECName.js +1 -1
- package/lib/esm/ECName.js.map +1 -1
- package/lib/esm/ECObjects.d.ts +1 -1
- package/lib/esm/ECObjects.js +2 -2
- package/lib/esm/ECObjects.js.map +1 -1
- package/lib/esm/Exception.js.map +1 -1
- package/lib/esm/Interfaces.js.map +1 -1
- package/lib/esm/Metadata/Class.d.ts +4 -16
- package/lib/esm/Metadata/Class.d.ts.map +1 -1
- package/lib/esm/Metadata/Class.js +51 -60
- package/lib/esm/Metadata/Class.js.map +1 -1
- package/lib/esm/Metadata/Constant.js.map +1 -1
- package/lib/esm/Metadata/CustomAttribute.d.ts +7 -1
- package/lib/esm/Metadata/CustomAttribute.d.ts.map +1 -1
- package/lib/esm/Metadata/CustomAttribute.js.map +1 -1
- package/lib/esm/Metadata/CustomAttributeClass.d.ts +1 -1
- package/lib/esm/Metadata/CustomAttributeClass.js +1 -1
- package/lib/esm/Metadata/CustomAttributeClass.js.map +1 -1
- package/lib/esm/Metadata/EntityClass.d.ts +6 -6
- package/lib/esm/Metadata/EntityClass.d.ts.map +1 -1
- package/lib/esm/Metadata/EntityClass.js +48 -26
- package/lib/esm/Metadata/EntityClass.js.map +1 -1
- package/lib/esm/Metadata/Enumeration.js.map +1 -1
- package/lib/esm/Metadata/Format.js.map +1 -1
- package/lib/esm/Metadata/InvertedUnit.js.map +1 -1
- package/lib/esm/Metadata/KindOfQuantity.js.map +1 -1
- package/lib/esm/Metadata/Mixin.js.map +1 -1
- package/lib/esm/Metadata/OverrideFormat.js.map +1 -1
- package/lib/esm/Metadata/Phenomenon.js.map +1 -1
- package/lib/esm/Metadata/Property.js.map +1 -1
- package/lib/esm/Metadata/PropertyCategory.js.map +1 -1
- package/lib/esm/Metadata/RelationshipClass.js.map +1 -1
- package/lib/esm/Metadata/Schema.js.map +1 -1
- package/lib/esm/Metadata/SchemaItem.js.map +1 -1
- package/lib/esm/Metadata/UnitSystem.js.map +1 -1
- package/lib/esm/PropertyTypes.js.map +1 -1
- package/lib/esm/SchemaFormatsProvider.d.ts.map +1 -1
- package/lib/esm/SchemaFormatsProvider.js +41 -15
- package/lib/esm/SchemaFormatsProvider.js.map +1 -1
- package/lib/esm/SchemaJsonLocater.js.map +1 -1
- package/lib/esm/SchemaKey.js.map +1 -1
- package/lib/esm/SchemaLoader.d.ts +4 -1
- package/lib/esm/SchemaLoader.d.ts.map +1 -1
- package/lib/esm/SchemaLoader.js +4 -1
- package/lib/esm/SchemaLoader.js.map +1 -1
- package/lib/esm/SchemaPartVisitorDelegate.js.map +1 -1
- package/lib/esm/UnitConversion/Graph.js.map +1 -1
- package/lib/esm/UnitConversion/Parser.js.map +1 -1
- package/lib/esm/UnitConversion/UnitConversion.js.map +1 -1
- package/lib/esm/UnitConversion/UnitConverter.js.map +1 -1
- package/lib/esm/UnitConversion/UnitTree.js.map +1 -1
- package/lib/esm/UnitProvider/SchemaUnitProvider.js.map +1 -1
- package/lib/esm/Validation/SchemaWalker.js.map +1 -1
- package/lib/esm/ecschema-metadata.js.map +1 -1
- package/lib/esm/utils/SchemaGraph.js.map +1 -1
- package/package.json +12 -8
package/lib/esm/ECName.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import { assert } from "@itwin/core-bentley";
|
|
9
9
|
import { ECSchemaError, ECSchemaStatus } from "./Exception";
|
|
10
|
-
const validECNameRegex = /^
|
|
10
|
+
const validECNameRegex = /^[a-zA-Z_]\w*$/i;
|
|
11
11
|
const ecNameReplacerRegex = /__x([0-9a-fA-F]{4})__/g;
|
|
12
12
|
const leadingDigits = ["0000", "000", "00", "0", ""];
|
|
13
13
|
function isDigit(character) {
|
package/lib/esm/ECName.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ECName.js","sourceRoot":"","sources":["../../src/ECName.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE5D,MAAM,gBAAgB,GAAG,
|
|
1
|
+
{"version":3,"file":"ECName.js","sourceRoot":"","sources":["../../src/ECName.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Metadata\r\n */\r\n\r\nimport { assert } from \"@itwin/core-bentley\";\r\nimport { ECSchemaError, ECSchemaStatus } from \"./Exception\";\r\n\r\nconst validECNameRegex = /^[a-zA-Z_]\\w*$/i;\r\nconst ecNameReplacerRegex = /__x([0-9a-fA-F]{4})__/g;\r\nconst leadingDigits = [\"0000\", \"000\", \"00\", \"0\", \"\"];\r\n\r\nfunction isDigit(character: string): boolean {\r\n assert(1 === character.length);\r\n return character >= \"0\" && character <= \"9\";\r\n}\r\n\r\nfunction isValidAlphaNumericCharacter(c: string): boolean {\r\n assert(1 === c.length);\r\n return (((c >= \"0\" && c <= \"9\") || (c >= \"A\" && c <= \"Z\") || (c >= \"a\" && c <= \"z\") || c === \"_\"));\r\n}\r\n\r\n/** The name of an item in a [[Schema]], encoded to meet restrictions on the characters usable in such names.\r\n * An ECName meets the following criteria:\r\n * - Contains at least one character.\r\n * - Does not begin with a digit.\r\n * - Consists entirely of characters in the ASCII ranges A-Z, a-z, and 0-9; and the underscore (\"_\") character.\r\n *\r\n * All characters not meeting the above criteria are encoded as \"__x####__\" where \"####\" is the UTF-16 character code.\r\n * Such names are often automatically generated from the item's display label, which is unrestricted in the characters it may contain.\r\n * @public\r\n */\r\nexport class ECName {\r\n private _name: string;\r\n\r\n /** Construct a new ECName from a valid EC name.\r\n * throws ECSchemaError if `name` does not meet the criteria for a valid EC name.\r\n */\r\n constructor(name: string) {\r\n if (!ECName.validate(name))\r\n throw new ECSchemaError(ECSchemaStatus.InvalidECName);\r\n\r\n this._name = name;\r\n }\r\n\r\n /** Returns true if a string meets the criteria of a valid EC name. */\r\n public static validate(name: string): boolean {\r\n return validECNameRegex.test(name);\r\n }\r\n\r\n /** The underlying name as a string. */\r\n public get name(): string {\r\n return this._name;\r\n }\r\n\r\n /** Create an ECName from an arbitrary string, encoding any special characters as \"__x####__\" where \"####\" is the UTF-16 character code.\r\n * @throws ECSchemaError if `input` is an empty string.\r\n */\r\n public static encode(input: string): ECName {\r\n if (0 === input.length)\r\n throw new ECSchemaError(ECSchemaStatus.InvalidECName);\r\n\r\n if (ECName.validate(input)) {\r\n // It's already a valid EC name.\r\n return new ECName(input);\r\n }\r\n\r\n let output = \"\";\r\n\r\n function appendEncodedCharacter(index: number): void {\r\n const hex = input.charCodeAt(index).toString(16).toUpperCase();\r\n assert(hex.length > 0 && hex.length < 5);\r\n output += `__x${leadingDigits[hex.length]}${hex}__`;\r\n }\r\n\r\n // First character cannot be a digit.\r\n const firstCharIsDigit = isDigit(input[0]);\r\n if (firstCharIsDigit)\r\n appendEncodedCharacter(0);\r\n\r\n for (let i = firstCharIsDigit ? 1 : 0; i < input.length; i++) {\r\n const char = input[i];\r\n if (!isValidAlphaNumericCharacter(char))\r\n appendEncodedCharacter(i);\r\n else\r\n output += char;\r\n }\r\n\r\n return new ECName(output);\r\n }\r\n\r\n /** Decode this ECName, replacing encoded special characters with the characters they encode. */\r\n public decode(): string {\r\n return this.name.replace(ecNameReplacerRegex, (_match, hex) => String.fromCharCode(Number.parseInt(hex, 16)));\r\n }\r\n}\r\n"]}
|
package/lib/esm/ECObjects.d.ts
CHANGED
|
@@ -147,7 +147,7 @@ export declare function parseSchemaItemType(type: string): SchemaItemType | unde
|
|
|
147
147
|
* @param value The SchemaItemType to stringify.
|
|
148
148
|
* @return A string representing the provided SchemaItemType. If the type is not valid, an empty string is returned.
|
|
149
149
|
* @beta
|
|
150
|
-
* @deprecated in 4.6.0 SchemaItemType is a string enum so just use it directly
|
|
150
|
+
* @deprecated in 4.6.0 - will not be removed until after 2026-06-13. SchemaItemType is a string enum so just use it directly
|
|
151
151
|
*/
|
|
152
152
|
export declare function schemaItemTypeToString(value: SchemaItemType): string;
|
|
153
153
|
/** @internal */
|
package/lib/esm/ECObjects.js
CHANGED
|
@@ -109,7 +109,7 @@ export var SchemaMatchType;
|
|
|
109
109
|
(function (SchemaMatchType) {
|
|
110
110
|
/*
|
|
111
111
|
* Find exact VersionRead, VersionWrite, VersionMinor match as well as Data. NOTE data is not yet matched
|
|
112
|
-
* @deprecated in 4.10 Use Exact instead.
|
|
112
|
+
* @deprecated in 4.10 - will not be removed until after 2026-06-13. Use Exact instead.
|
|
113
113
|
*/
|
|
114
114
|
SchemaMatchType[SchemaMatchType["Identical"] = 0] = "Identical";
|
|
115
115
|
/* Find exact VersionRead, VersionWrite, VersionMinor match. */
|
|
@@ -209,7 +209,7 @@ export function parseSchemaItemType(type) {
|
|
|
209
209
|
* @param value The SchemaItemType to stringify.
|
|
210
210
|
* @return A string representing the provided SchemaItemType. If the type is not valid, an empty string is returned.
|
|
211
211
|
* @beta
|
|
212
|
-
* @deprecated in 4.6.0 SchemaItemType is a string enum so just use it directly
|
|
212
|
+
* @deprecated in 4.6.0 - will not be removed until after 2026-06-13. SchemaItemType is a string enum so just use it directly
|
|
213
213
|
*/
|
|
214
214
|
export function schemaItemTypeToString(value) {
|
|
215
215
|
return value; // TODO: Remove
|
package/lib/esm/ECObjects.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ECObjects.js","sourceRoot":"","sources":["../../src/ECObjects.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Metadata\n */\n\nimport { ECStringConstants } from \"./Constants\";\nimport { ECSchemaError, ECSchemaStatus } from \"./Exception\";\n\nexport { PropertyType } from \"./PropertyTypes\";\n\n// NEEDSWORK: This shim is currently required to use async iterators. See https://github.com/Microsoft/TypeScript/issues/14151\nif (!(Symbol as any).asyncIterator) {\n (Symbol as any).asyncIterator = Symbol.for(\"Symbol.asyncIterator\");\n}\n\n/**\n * Identifies a class as abstract or sealed\n *\n * @public @preview\n */\nexport enum ECClassModifier {\n /* normal, instantiable class, can be subclassed */\n None,\n /* abstract class, cannot be instantiated, can be subclassed */\n Abstract,\n /* sealed class, instantiable class, cannot be subclassed */\n Sealed,\n}\n\n/**\n * An enumeration that has all the schema item type names as values\n *\n * @enum {string}\n * @public @preview\n */\nexport enum SchemaItemType {\n EntityClass = \"EntityClass\",\n Mixin = \"Mixin\",\n StructClass = \"StructClass\",\n CustomAttributeClass = \"CustomAttributeClass\",\n RelationshipClass = \"RelationshipClass\",\n Enumeration = \"Enumeration\",\n KindOfQuantity = \"KindOfQuantity\",\n PropertyCategory = \"PropertyCategory\",\n Unit = \"Unit\",\n InvertedUnit = \"InvertedUnit\",\n Constant = \"Constant\",\n Phenomenon = \"Phenomenon\",\n UnitSystem = \"UnitSystem\",\n Format = \"Format\",\n}\n\n/**\n * Additional Schema Item Types which define classes of item types\n * @public @preview\n */\nexport enum AbstractSchemaItemType {\n /* Item is EntityClass, Mixin, StructClass, CustomAttributeClass, or RelationshipClass */\n Class = \"Class\",\n /* Any item type including the Class types */\n SchemaItem = \"SchemaItem\",\n}\n\n/**\n * Defines types of items that may be provided to identify supported items\n * @public @preview\n */\nexport type SupportedSchemaItemType = SchemaItemType | AbstractSchemaItemType;\n\n/**\n * Primitive data types for ECProperties.\n * @public @preview\n */\nexport enum PrimitiveType {\n Uninitialized = 0x00,\n Binary = 0x101,\n Boolean = 0x201,\n DateTime = 0x301,\n Double = 0x401,\n Integer = 0x501,\n Long = 0x601,\n Point2d = 0x701,\n Point3d = 0x801,\n String = 0x901,\n IGeometry = 0xa01,\n}\n\n/**\n * Defines the valid CustomAttribute container types.\n * @public @preview\n */\nexport enum CustomAttributeContainerType {\n Schema = 0x0001 << 0,\n EntityClass = 0x0001 << 1,\n CustomAttributeClass = 0x0001 << 2,\n StructClass = 0x0001 << 3,\n RelationshipClass = 0x0001 << 4,\n AnyClass = EntityClass | CustomAttributeClass | StructClass | RelationshipClass,\n PrimitiveProperty = 0x0001 << 5,\n StructProperty = 0x0001 << 6,\n PrimitiveArrayProperty = 0x0001 << 7,\n StructArrayProperty = 0x0001 << 8,\n NavigationProperty = 0x0001 << 9,\n AnyProperty = PrimitiveProperty | StructProperty | PrimitiveArrayProperty | StructArrayProperty | NavigationProperty,\n SourceRelationshipConstraint = 0x0001 << 10,\n TargetRelationshipConstraint = 0x0001 << 11,\n AnyRelationshipConstraint = SourceRelationshipConstraint | TargetRelationshipConstraint,\n Any = Schema | AnyClass | AnyProperty | AnyRelationshipConstraint,\n}\n\n/**\n * Defines what sort of match should be used when locating a schema.\n * @public @preview\n */\nexport enum SchemaMatchType {\n /*\n * Find exact VersionRead, VersionWrite, VersionMinor match as well as Data. NOTE data is not yet matched\n * @deprecated in 4.10 Use Exact instead.\n */\n Identical,\n /* Find exact VersionRead, VersionWrite, VersionMinor match. */\n Exact,\n /* Find latest version with matching VersionRead and VersionWrite */\n LatestWriteCompatible,\n /* Find latest version. */\n Latest,\n /* Find latest version with matching VersionRead */\n LatestReadCompatible,\n}\n\n/**\n * Identifer for an ECRelationshipConstraint. Used to determine the side of the relationship the constraint is representing.\n * @public @preview\n */\nexport enum RelationshipEnd {\n Source = 0,\n Target = 1,\n}\n\n/**\n * Defines the how the lifetime of the source and target are related.\n *\n * @public @preview */\nexport enum StrengthType {\n Referencing,\n Holding,\n Embedding,\n}\n\n/**\n * Defines the which side of the relationship is the starting point of the relationship. This impacts how relationship strength is applied.\n *\n * @public @preview */\nexport enum StrengthDirection {\n /** The source is the starting point of the relationship. */\n Forward = 1,\n /** The target is the starting point of the relationship. */\n Backward = 2,\n}\n\n// Helper methods for going to/from string for the above Enumerations.\n\n/**\n * Parses the provided string into an ECClassModifier if the string is a valid modifier.\n * @param modifier The modifier string to parse.\n * @beta\n */\nexport function parseClassModifier(modifier: string): ECClassModifier | undefined {\n const lowerModifier = modifier.toLowerCase();\n switch (lowerModifier) {\n case \"abstract\": return ECClassModifier.Abstract;\n case \"none\": return ECClassModifier.None;\n case \"sealed\": return ECClassModifier.Sealed;\n }\n return undefined;\n}\n\n/**\n * @return A string representing the provided ECClassModifier. If the modifier is not valid, an empty string is returned.\n * @beta\n */\nexport function classModifierToString(modifier: ECClassModifier): string {\n switch (modifier) {\n case ECClassModifier.Abstract: return \"Abstract\";\n case ECClassModifier.None: return \"None\";\n case ECClassModifier.Sealed: return \"Sealed\";\n default:\n throw new ECSchemaError(ECSchemaStatus.InvalidModifier, \"An invalid ECClassModifier has been provided.\");\n }\n}\n\n/**\n * Tries to parse the given string as one of the 8 schema item types.\n * @param type The schema item type string to parse.\n * @returns A valid SchemaItemType if successfully parsed. Otherwise, undefined if the provided string is not a valid SchemaItemType.\n * @beta\n */\nexport function parseSchemaItemType(type: string): SchemaItemType | undefined {\n switch (type.toLowerCase()) {\n case \"entityclass\": return SchemaItemType.EntityClass;\n case \"mixin\": return SchemaItemType.Mixin;\n case \"structclass\": return SchemaItemType.StructClass;\n case \"customattributeclass\": return SchemaItemType.CustomAttributeClass;\n case \"relationshipclass\": return SchemaItemType.RelationshipClass;\n case \"enumeration\": return SchemaItemType.Enumeration;\n case \"kindofquantity\": return SchemaItemType.KindOfQuantity;\n case \"propertycategory\": return SchemaItemType.PropertyCategory;\n case \"unit\": return SchemaItemType.Unit;\n case \"invertedunit\": return SchemaItemType.InvertedUnit;\n case \"constant\": return SchemaItemType.Constant;\n case \"phenomenon\": return SchemaItemType.Phenomenon;\n case \"unitsystem\": return SchemaItemType.UnitSystem;\n case \"format\": return SchemaItemType.Format;\n }\n return undefined;\n}\n\n/**\n * Converts a valid SchemaItemType to a display string.\n * @param value The SchemaItemType to stringify.\n * @return A string representing the provided SchemaItemType. If the type is not valid, an empty string is returned.\n * @beta\n * @deprecated in 4.6.0 SchemaItemType is a string enum so just use it directly\n */\nexport function schemaItemTypeToString(value: SchemaItemType): string {\n return value; // TODO: Remove\n}\n\n/** @internal */\nexport function schemaItemTypeToXmlString(value: SchemaItemType): string {\n switch (value) {\n case SchemaItemType.EntityClass: return \"ECEntityClass\";\n case SchemaItemType.Mixin: return \"ECEntityClass\";\n case SchemaItemType.StructClass: return \"ECStructClass\";\n case SchemaItemType.CustomAttributeClass: return \"ECCustomAttributeClass\";\n case SchemaItemType.RelationshipClass: return \"ECRelationshipClass\";\n case SchemaItemType.Enumeration: return \"ECEnumeration\";\n case SchemaItemType.KindOfQuantity: return \"KindOfQuantity\";\n case SchemaItemType.PropertyCategory: return \"PropertyCategory\";\n case SchemaItemType.Unit: return \"Unit\";\n case SchemaItemType.InvertedUnit: return \"InvertedUnit\";\n case SchemaItemType.Constant: return \"Constant\";\n case SchemaItemType.Phenomenon: return \"Phenomenon\";\n case SchemaItemType.UnitSystem: return \"UnitSystem\";\n case SchemaItemType.Format: return \"Format\";\n default:\n throw new ECSchemaError(ECSchemaStatus.InvalidSchemaItemType, \"An invalid SchemaItemType has been provided.\");\n }\n}\n\n/**\n * Tries to parse the given string as one of the 10 primitive types.\n * @param type The primitive type string to parse.\n * @returns A valid PrimitiveType if successfully parsed, or undefined if the provided string is not a valid PrimitiveType.\n * @beta\n */\nexport function parsePrimitiveType(type: string): PrimitiveType | undefined {\n switch (type.toLowerCase()) {\n case \"binary\": return PrimitiveType.Binary;\n case \"boolean\": case \"bool\": return PrimitiveType.Boolean;\n case \"datetime\": return PrimitiveType.DateTime;\n case \"double\": return PrimitiveType.Double;\n case \"int\": return PrimitiveType.Integer;\n case \"long\": return PrimitiveType.Long;\n case \"point2d\": return PrimitiveType.Point2d;\n case \"point3d\": return PrimitiveType.Point3d;\n case \"string\": return PrimitiveType.String;\n case \"bentley.geometry.common.igeometry\": return PrimitiveType.IGeometry;\n }\n\n return undefined;\n}\n\n/** @beta */\nexport function primitiveTypeToString(type: PrimitiveType): string {\n switch (type) {\n case PrimitiveType.Binary: return \"binary\";\n case PrimitiveType.Boolean: return \"boolean\";\n case PrimitiveType.DateTime: return \"dateTime\";\n case PrimitiveType.Double: return \"double\";\n case PrimitiveType.Integer: return \"int\";\n case PrimitiveType.IGeometry: return \"Bentley.Geometry.Common.IGeometry\";\n case PrimitiveType.Long: return \"long\";\n case PrimitiveType.Point2d: return \"point2d\";\n case PrimitiveType.Point3d: return \"point3d\";\n case PrimitiveType.String: return \"string\";\n default:\n throw new ECSchemaError(ECSchemaStatus.InvalidPrimitiveType, \"An invalid PrimitiveType has been provided.\");\n }\n}\n\n/**\n * Parses the given string into the appropriate CustomAttributeContainerType if the string is valid.\n * @param type The container type string to parse.\n * @beta\n */\nexport function parseCustomAttributeContainerType(type: string): CustomAttributeContainerType | undefined {\n const typeTokens = type.split(/[|,;]+/);\n\n let containerType = 0;\n\n typeTokens.forEach((typeToken) => {\n typeToken = typeToken.trim();\n if (typeToken.length === 0) return;\n\n typeToken = typeToken.toLowerCase();\n switch (typeToken) {\n case \"schema\":\n containerType = containerType | CustomAttributeContainerType.Schema;\n break;\n case \"entityclass\":\n containerType = containerType | CustomAttributeContainerType.EntityClass;\n break;\n case \"customattributeclass\":\n containerType = containerType | CustomAttributeContainerType.CustomAttributeClass;\n break;\n case \"structclass\":\n containerType = containerType | CustomAttributeContainerType.StructClass;\n break;\n case \"relationshipclass\":\n containerType = containerType | CustomAttributeContainerType.RelationshipClass;\n break;\n case \"anyclass\":\n containerType = containerType | CustomAttributeContainerType.AnyClass;\n break;\n case \"primitiveproperty\":\n containerType = containerType | CustomAttributeContainerType.PrimitiveProperty;\n break;\n case \"structproperty\":\n containerType = containerType | CustomAttributeContainerType.StructProperty;\n break;\n case \"arrayproperty\":\n containerType = containerType | CustomAttributeContainerType.PrimitiveArrayProperty;\n break;\n case \"structarrayproperty\":\n containerType = containerType | CustomAttributeContainerType.StructArrayProperty;\n break;\n case \"navigationproperty\":\n containerType = containerType | CustomAttributeContainerType.NavigationProperty;\n break;\n case \"anyproperty\":\n containerType = containerType | CustomAttributeContainerType.AnyProperty;\n break;\n case \"sourcerelationshipconstraint\":\n containerType = containerType | CustomAttributeContainerType.SourceRelationshipConstraint;\n break;\n case \"targetrelationshipconstraint\":\n containerType = containerType | CustomAttributeContainerType.TargetRelationshipConstraint;\n break;\n case \"anyrelationshipconstraint\":\n containerType = containerType | CustomAttributeContainerType.AnyRelationshipConstraint;\n break;\n case \"any\":\n containerType = containerType | CustomAttributeContainerType.Any;\n break;\n default:\n throw new ECSchemaError(ECSchemaStatus.InvalidContainerType, `${typeToken} is not a valid CustomAttributeContainerType value.`);\n }\n });\n\n return containerType as CustomAttributeContainerType;\n}\n\n/**\n * Creates a string representing a valid CustomAttributeContainerType.\n * @param value The CustomAttributeContainerType to stringify.\n * @return A string representing the provided CustomAttributeContainerType. If the type is not valid, an empty string is returned.\n * @beta\n */\nexport function containerTypeToString(type: CustomAttributeContainerType): string {\n const testContainerTypeValue = (compareType: CustomAttributeContainerType, otherType: CustomAttributeContainerType) => {\n return compareType === (compareType & otherType);\n };\n\n if (testContainerTypeValue(CustomAttributeContainerType.Any, type))\n return ECStringConstants.CONTAINERTYPE_ANY;\n\n let containerType = \"\";\n const setOrAppend = (val: string) => {\n if (containerType.length === 0) containerType = val;\n else containerType = `${containerType}, ${val}`;\n };\n\n if (testContainerTypeValue(CustomAttributeContainerType.Schema, type))\n setOrAppend(\"Schema\");\n\n if (testContainerTypeValue(CustomAttributeContainerType.AnyClass, type))\n setOrAppend(\"AnyClass\");\n else {\n if (testContainerTypeValue(CustomAttributeContainerType.EntityClass, type))\n setOrAppend(ECStringConstants.CONTAINERTYPE_ENTITYCLASS);\n if (testContainerTypeValue(CustomAttributeContainerType.CustomAttributeClass, type))\n setOrAppend(ECStringConstants.CONTAINERTYPE_CUSTOMATTRIBUTECLASS);\n if (testContainerTypeValue(CustomAttributeContainerType.StructClass, type))\n setOrAppend(ECStringConstants.CONTAINERTYPE_STRUCTCLASS);\n if (testContainerTypeValue(CustomAttributeContainerType.RelationshipClass, type))\n setOrAppend(ECStringConstants.CONTAINERTYPE_RELATIONSHIPCLASS);\n }\n\n if (testContainerTypeValue(CustomAttributeContainerType.AnyProperty, type))\n setOrAppend(ECStringConstants.CONTAINERTYPE_ANYPROPERTY);\n else {\n if (testContainerTypeValue(CustomAttributeContainerType.PrimitiveProperty, type))\n setOrAppend(ECStringConstants.CONTAINERTYPE_PRIMITIVEPROPERTY);\n if (testContainerTypeValue(CustomAttributeContainerType.StructProperty, type))\n setOrAppend(ECStringConstants.CONTAINERTYPE_STRUCTPROPERTY);\n if (testContainerTypeValue(CustomAttributeContainerType.PrimitiveArrayProperty, type))\n setOrAppend(ECStringConstants.CONTAINERTYPE_PRIMITIVEARRAYPROPERTY);\n if (testContainerTypeValue(CustomAttributeContainerType.StructArrayProperty, type))\n setOrAppend(ECStringConstants.CONTAINERTYPE_STRUCTARRAYPROPERTY);\n if (testContainerTypeValue(CustomAttributeContainerType.NavigationProperty, type))\n setOrAppend(ECStringConstants.CONTAINERTYPE_NAVIGATIONPROPERTY);\n }\n\n if (testContainerTypeValue(CustomAttributeContainerType.AnyRelationshipConstraint, type))\n setOrAppend(ECStringConstants.CONTAINERTYPE_ANYRELATIONSHIPCONSTRAINT);\n else {\n if (testContainerTypeValue(CustomAttributeContainerType.SourceRelationshipConstraint, type))\n setOrAppend(ECStringConstants.CONTAINERTYPE_SOURCERELATIONSHIPCONSTRAINT);\n if (testContainerTypeValue(CustomAttributeContainerType.TargetRelationshipConstraint, type))\n setOrAppend(ECStringConstants.CONTAINERTYPE_TARGETRELATIONSHIPCONSTRAINT);\n }\n\n return containerType;\n}\n\n/** @beta */\nexport function parseRelationshipEnd(end: string): RelationshipEnd | undefined {\n switch (end.toLowerCase()) {\n case \"source\": return RelationshipEnd.Source;\n case \"target\": return RelationshipEnd.Target;\n }\n return undefined;\n}\n\n/** @beta */\nexport function relationshipEndToString(end: RelationshipEnd): string {\n switch (end) {\n case RelationshipEnd.Source: return ECStringConstants.RELATIONSHIP_END_SOURCE;\n case RelationshipEnd.Target: return ECStringConstants.RELATIONSHIP_END_TARGET;\n default:\n throw new ECSchemaError(ECSchemaStatus.InvalidRelationshipEnd, `An invalid RelationshipEnd has been provided.`);\n }\n}\n\n/**\n * Takes a string representing a StrengthType, will parse it and return the corresponding StrengthType.\n * @throws ECSchemaStatus.InvalidStrength if the provided string that is not valid\n * @param strength\n * @beta\n */\nexport function parseStrength(strength: string): StrengthType | undefined {\n switch (strength.toLowerCase()) {\n case \"referencing\": return StrengthType.Referencing;\n case \"holding\": return StrengthType.Holding;\n case \"embedding\": return StrengthType.Embedding;\n }\n return undefined;\n}\n\n/** @beta */\nexport function strengthToString(strength: StrengthType): string {\n switch (strength) {\n case StrengthType.Embedding: return \"Embedding\";\n case StrengthType.Holding: return \"Holding\";\n case StrengthType.Referencing: return \"Referencing\";\n default:\n throw new ECSchemaError(ECSchemaStatus.InvalidStrength, `An invalid Strength has been provided.`);\n }\n}\n\n/** @beta */\nexport function parseStrengthDirection(direction: string): StrengthDirection | undefined {\n switch (direction.toLowerCase()) {\n case \"forward\": return StrengthDirection.Forward;\n case \"backward\": return StrengthDirection.Backward;\n }\n return undefined;\n}\n\n/** @beta */\nexport function strengthDirectionToString(direction: StrengthDirection): string {\n switch (direction) {\n case StrengthDirection.Forward: return \"Forward\";\n case StrengthDirection.Backward: return \"Backward\";\n default:\n throw new ECSchemaError(ECSchemaStatus.InvalidStrengthDirection, `An invalid StrengthDirection has been provided.`);\n }\n}\n\n/** Compares a SchemaItemType against supported type.\n * @beta\n */\nexport function isSupportedSchemaItemType(value: SchemaItemType, supported: SupportedSchemaItemType): boolean {\n if (value === supported) return true;\n\n if (supported === AbstractSchemaItemType.Class && (\n value === SchemaItemType.EntityClass ||\n value === SchemaItemType.Mixin ||\n value === SchemaItemType.StructClass ||\n value === SchemaItemType.CustomAttributeClass ||\n value === SchemaItemType.RelationshipClass)) {\n return true;\n }\n\n if (supported === AbstractSchemaItemType.SchemaItem) {\n return true;\n }\n\n return false;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"ECObjects.js","sourceRoot":"","sources":["../../src/ECObjects.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n * See LICENSE.md in the project root for license terms and full copyright notice.\r\n *--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Metadata\r\n */\r\n\r\nimport { ECStringConstants } from \"./Constants\";\r\nimport { ECSchemaError, ECSchemaStatus } from \"./Exception\";\r\n\r\nexport { PropertyType } from \"./PropertyTypes\";\r\n\r\n// NEEDSWORK: This shim is currently required to use async iterators. See https://github.com/Microsoft/TypeScript/issues/14151\r\nif (!(Symbol as any).asyncIterator) {\r\n (Symbol as any).asyncIterator = Symbol.for(\"Symbol.asyncIterator\");\r\n}\r\n\r\n/**\r\n * Identifies a class as abstract or sealed\r\n *\r\n * @public @preview\r\n */\r\nexport enum ECClassModifier {\r\n /* normal, instantiable class, can be subclassed */\r\n None,\r\n /* abstract class, cannot be instantiated, can be subclassed */\r\n Abstract,\r\n /* sealed class, instantiable class, cannot be subclassed */\r\n Sealed,\r\n}\r\n\r\n/**\r\n * An enumeration that has all the schema item type names as values\r\n *\r\n * @enum {string}\r\n * @public @preview\r\n */\r\nexport enum SchemaItemType {\r\n EntityClass = \"EntityClass\",\r\n Mixin = \"Mixin\",\r\n StructClass = \"StructClass\",\r\n CustomAttributeClass = \"CustomAttributeClass\",\r\n RelationshipClass = \"RelationshipClass\",\r\n Enumeration = \"Enumeration\",\r\n KindOfQuantity = \"KindOfQuantity\",\r\n PropertyCategory = \"PropertyCategory\",\r\n Unit = \"Unit\",\r\n InvertedUnit = \"InvertedUnit\",\r\n Constant = \"Constant\",\r\n Phenomenon = \"Phenomenon\",\r\n UnitSystem = \"UnitSystem\",\r\n Format = \"Format\",\r\n}\r\n\r\n/**\r\n * Additional Schema Item Types which define classes of item types\r\n * @public @preview\r\n */\r\nexport enum AbstractSchemaItemType {\r\n /* Item is EntityClass, Mixin, StructClass, CustomAttributeClass, or RelationshipClass */\r\n Class = \"Class\",\r\n /* Any item type including the Class types */\r\n SchemaItem = \"SchemaItem\",\r\n}\r\n\r\n/**\r\n * Defines types of items that may be provided to identify supported items\r\n * @public @preview\r\n */\r\nexport type SupportedSchemaItemType = SchemaItemType | AbstractSchemaItemType;\r\n\r\n/**\r\n * Primitive data types for ECProperties.\r\n * @public @preview\r\n */\r\nexport enum PrimitiveType {\r\n Uninitialized = 0x00,\r\n Binary = 0x101,\r\n Boolean = 0x201,\r\n DateTime = 0x301,\r\n Double = 0x401,\r\n Integer = 0x501,\r\n Long = 0x601,\r\n Point2d = 0x701,\r\n Point3d = 0x801,\r\n String = 0x901,\r\n IGeometry = 0xa01,\r\n}\r\n\r\n/**\r\n * Defines the valid CustomAttribute container types.\r\n * @public @preview\r\n */\r\nexport enum CustomAttributeContainerType {\r\n Schema = 0x0001 << 0,\r\n EntityClass = 0x0001 << 1,\r\n CustomAttributeClass = 0x0001 << 2,\r\n StructClass = 0x0001 << 3,\r\n RelationshipClass = 0x0001 << 4,\r\n AnyClass = EntityClass | CustomAttributeClass | StructClass | RelationshipClass,\r\n PrimitiveProperty = 0x0001 << 5,\r\n StructProperty = 0x0001 << 6,\r\n PrimitiveArrayProperty = 0x0001 << 7,\r\n StructArrayProperty = 0x0001 << 8,\r\n NavigationProperty = 0x0001 << 9,\r\n AnyProperty = PrimitiveProperty | StructProperty | PrimitiveArrayProperty | StructArrayProperty | NavigationProperty,\r\n SourceRelationshipConstraint = 0x0001 << 10,\r\n TargetRelationshipConstraint = 0x0001 << 11,\r\n AnyRelationshipConstraint = SourceRelationshipConstraint | TargetRelationshipConstraint,\r\n Any = Schema | AnyClass | AnyProperty | AnyRelationshipConstraint,\r\n}\r\n\r\n/**\r\n * Defines what sort of match should be used when locating a schema.\r\n * @public @preview\r\n */\r\nexport enum SchemaMatchType {\r\n /*\r\n * Find exact VersionRead, VersionWrite, VersionMinor match as well as Data. NOTE data is not yet matched\r\n * @deprecated in 4.10 - will not be removed until after 2026-06-13. Use Exact instead.\r\n */\r\n Identical,\r\n /* Find exact VersionRead, VersionWrite, VersionMinor match. */\r\n Exact,\r\n /* Find latest version with matching VersionRead and VersionWrite */\r\n LatestWriteCompatible,\r\n /* Find latest version. */\r\n Latest,\r\n /* Find latest version with matching VersionRead */\r\n LatestReadCompatible,\r\n}\r\n\r\n/**\r\n * Identifer for an ECRelationshipConstraint. Used to determine the side of the relationship the constraint is representing.\r\n * @public @preview\r\n */\r\nexport enum RelationshipEnd {\r\n Source = 0,\r\n Target = 1,\r\n}\r\n\r\n/**\r\n * Defines the how the lifetime of the source and target are related.\r\n *\r\n * @public @preview */\r\nexport enum StrengthType {\r\n Referencing,\r\n Holding,\r\n Embedding,\r\n}\r\n\r\n/**\r\n * Defines the which side of the relationship is the starting point of the relationship. This impacts how relationship strength is applied.\r\n *\r\n * @public @preview */\r\nexport enum StrengthDirection {\r\n /** The source is the starting point of the relationship. */\r\n Forward = 1,\r\n /** The target is the starting point of the relationship. */\r\n Backward = 2,\r\n}\r\n\r\n// Helper methods for going to/from string for the above Enumerations.\r\n\r\n/**\r\n * Parses the provided string into an ECClassModifier if the string is a valid modifier.\r\n * @param modifier The modifier string to parse.\r\n * @beta\r\n */\r\nexport function parseClassModifier(modifier: string): ECClassModifier | undefined {\r\n const lowerModifier = modifier.toLowerCase();\r\n switch (lowerModifier) {\r\n case \"abstract\": return ECClassModifier.Abstract;\r\n case \"none\": return ECClassModifier.None;\r\n case \"sealed\": return ECClassModifier.Sealed;\r\n }\r\n return undefined;\r\n}\r\n\r\n/**\r\n * @return A string representing the provided ECClassModifier. If the modifier is not valid, an empty string is returned.\r\n * @beta\r\n */\r\nexport function classModifierToString(modifier: ECClassModifier): string {\r\n switch (modifier) {\r\n case ECClassModifier.Abstract: return \"Abstract\";\r\n case ECClassModifier.None: return \"None\";\r\n case ECClassModifier.Sealed: return \"Sealed\";\r\n default:\r\n throw new ECSchemaError(ECSchemaStatus.InvalidModifier, \"An invalid ECClassModifier has been provided.\");\r\n }\r\n}\r\n\r\n/**\r\n * Tries to parse the given string as one of the 8 schema item types.\r\n * @param type The schema item type string to parse.\r\n * @returns A valid SchemaItemType if successfully parsed. Otherwise, undefined if the provided string is not a valid SchemaItemType.\r\n * @beta\r\n */\r\nexport function parseSchemaItemType(type: string): SchemaItemType | undefined {\r\n switch (type.toLowerCase()) {\r\n case \"entityclass\": return SchemaItemType.EntityClass;\r\n case \"mixin\": return SchemaItemType.Mixin;\r\n case \"structclass\": return SchemaItemType.StructClass;\r\n case \"customattributeclass\": return SchemaItemType.CustomAttributeClass;\r\n case \"relationshipclass\": return SchemaItemType.RelationshipClass;\r\n case \"enumeration\": return SchemaItemType.Enumeration;\r\n case \"kindofquantity\": return SchemaItemType.KindOfQuantity;\r\n case \"propertycategory\": return SchemaItemType.PropertyCategory;\r\n case \"unit\": return SchemaItemType.Unit;\r\n case \"invertedunit\": return SchemaItemType.InvertedUnit;\r\n case \"constant\": return SchemaItemType.Constant;\r\n case \"phenomenon\": return SchemaItemType.Phenomenon;\r\n case \"unitsystem\": return SchemaItemType.UnitSystem;\r\n case \"format\": return SchemaItemType.Format;\r\n }\r\n return undefined;\r\n}\r\n\r\n/**\r\n * Converts a valid SchemaItemType to a display string.\r\n * @param value The SchemaItemType to stringify.\r\n * @return A string representing the provided SchemaItemType. If the type is not valid, an empty string is returned.\r\n * @beta\r\n * @deprecated in 4.6.0 - will not be removed until after 2026-06-13. SchemaItemType is a string enum so just use it directly\r\n */\r\nexport function schemaItemTypeToString(value: SchemaItemType): string {\r\n return value; // TODO: Remove\r\n}\r\n\r\n/** @internal */\r\nexport function schemaItemTypeToXmlString(value: SchemaItemType): string {\r\n switch (value) {\r\n case SchemaItemType.EntityClass: return \"ECEntityClass\";\r\n case SchemaItemType.Mixin: return \"ECEntityClass\";\r\n case SchemaItemType.StructClass: return \"ECStructClass\";\r\n case SchemaItemType.CustomAttributeClass: return \"ECCustomAttributeClass\";\r\n case SchemaItemType.RelationshipClass: return \"ECRelationshipClass\";\r\n case SchemaItemType.Enumeration: return \"ECEnumeration\";\r\n case SchemaItemType.KindOfQuantity: return \"KindOfQuantity\";\r\n case SchemaItemType.PropertyCategory: return \"PropertyCategory\";\r\n case SchemaItemType.Unit: return \"Unit\";\r\n case SchemaItemType.InvertedUnit: return \"InvertedUnit\";\r\n case SchemaItemType.Constant: return \"Constant\";\r\n case SchemaItemType.Phenomenon: return \"Phenomenon\";\r\n case SchemaItemType.UnitSystem: return \"UnitSystem\";\r\n case SchemaItemType.Format: return \"Format\";\r\n default:\r\n throw new ECSchemaError(ECSchemaStatus.InvalidSchemaItemType, \"An invalid SchemaItemType has been provided.\");\r\n }\r\n}\r\n\r\n/**\r\n * Tries to parse the given string as one of the 10 primitive types.\r\n * @param type The primitive type string to parse.\r\n * @returns A valid PrimitiveType if successfully parsed, or undefined if the provided string is not a valid PrimitiveType.\r\n * @beta\r\n */\r\nexport function parsePrimitiveType(type: string): PrimitiveType | undefined {\r\n switch (type.toLowerCase()) {\r\n case \"binary\": return PrimitiveType.Binary;\r\n case \"boolean\": case \"bool\": return PrimitiveType.Boolean;\r\n case \"datetime\": return PrimitiveType.DateTime;\r\n case \"double\": return PrimitiveType.Double;\r\n case \"int\": return PrimitiveType.Integer;\r\n case \"long\": return PrimitiveType.Long;\r\n case \"point2d\": return PrimitiveType.Point2d;\r\n case \"point3d\": return PrimitiveType.Point3d;\r\n case \"string\": return PrimitiveType.String;\r\n case \"bentley.geometry.common.igeometry\": return PrimitiveType.IGeometry;\r\n }\r\n\r\n return undefined;\r\n}\r\n\r\n/** @beta */\r\nexport function primitiveTypeToString(type: PrimitiveType): string {\r\n switch (type) {\r\n case PrimitiveType.Binary: return \"binary\";\r\n case PrimitiveType.Boolean: return \"boolean\";\r\n case PrimitiveType.DateTime: return \"dateTime\";\r\n case PrimitiveType.Double: return \"double\";\r\n case PrimitiveType.Integer: return \"int\";\r\n case PrimitiveType.IGeometry: return \"Bentley.Geometry.Common.IGeometry\";\r\n case PrimitiveType.Long: return \"long\";\r\n case PrimitiveType.Point2d: return \"point2d\";\r\n case PrimitiveType.Point3d: return \"point3d\";\r\n case PrimitiveType.String: return \"string\";\r\n default:\r\n throw new ECSchemaError(ECSchemaStatus.InvalidPrimitiveType, \"An invalid PrimitiveType has been provided.\");\r\n }\r\n}\r\n\r\n/**\r\n * Parses the given string into the appropriate CustomAttributeContainerType if the string is valid.\r\n * @param type The container type string to parse.\r\n * @beta\r\n */\r\nexport function parseCustomAttributeContainerType(type: string): CustomAttributeContainerType | undefined {\r\n const typeTokens = type.split(/[|,;]+/);\r\n\r\n let containerType = 0;\r\n\r\n typeTokens.forEach((typeToken) => {\r\n typeToken = typeToken.trim();\r\n if (typeToken.length === 0) return;\r\n\r\n typeToken = typeToken.toLowerCase();\r\n switch (typeToken) {\r\n case \"schema\":\r\n containerType = containerType | CustomAttributeContainerType.Schema;\r\n break;\r\n case \"entityclass\":\r\n containerType = containerType | CustomAttributeContainerType.EntityClass;\r\n break;\r\n case \"customattributeclass\":\r\n containerType = containerType | CustomAttributeContainerType.CustomAttributeClass;\r\n break;\r\n case \"structclass\":\r\n containerType = containerType | CustomAttributeContainerType.StructClass;\r\n break;\r\n case \"relationshipclass\":\r\n containerType = containerType | CustomAttributeContainerType.RelationshipClass;\r\n break;\r\n case \"anyclass\":\r\n containerType = containerType | CustomAttributeContainerType.AnyClass;\r\n break;\r\n case \"primitiveproperty\":\r\n containerType = containerType | CustomAttributeContainerType.PrimitiveProperty;\r\n break;\r\n case \"structproperty\":\r\n containerType = containerType | CustomAttributeContainerType.StructProperty;\r\n break;\r\n case \"arrayproperty\":\r\n containerType = containerType | CustomAttributeContainerType.PrimitiveArrayProperty;\r\n break;\r\n case \"structarrayproperty\":\r\n containerType = containerType | CustomAttributeContainerType.StructArrayProperty;\r\n break;\r\n case \"navigationproperty\":\r\n containerType = containerType | CustomAttributeContainerType.NavigationProperty;\r\n break;\r\n case \"anyproperty\":\r\n containerType = containerType | CustomAttributeContainerType.AnyProperty;\r\n break;\r\n case \"sourcerelationshipconstraint\":\r\n containerType = containerType | CustomAttributeContainerType.SourceRelationshipConstraint;\r\n break;\r\n case \"targetrelationshipconstraint\":\r\n containerType = containerType | CustomAttributeContainerType.TargetRelationshipConstraint;\r\n break;\r\n case \"anyrelationshipconstraint\":\r\n containerType = containerType | CustomAttributeContainerType.AnyRelationshipConstraint;\r\n break;\r\n case \"any\":\r\n containerType = containerType | CustomAttributeContainerType.Any;\r\n break;\r\n default:\r\n throw new ECSchemaError(ECSchemaStatus.InvalidContainerType, `${typeToken} is not a valid CustomAttributeContainerType value.`);\r\n }\r\n });\r\n\r\n return containerType as CustomAttributeContainerType;\r\n}\r\n\r\n/**\r\n * Creates a string representing a valid CustomAttributeContainerType.\r\n * @param value The CustomAttributeContainerType to stringify.\r\n * @return A string representing the provided CustomAttributeContainerType. If the type is not valid, an empty string is returned.\r\n * @beta\r\n */\r\nexport function containerTypeToString(type: CustomAttributeContainerType): string {\r\n const testContainerTypeValue = (compareType: CustomAttributeContainerType, otherType: CustomAttributeContainerType) => {\r\n return compareType === (compareType & otherType);\r\n };\r\n\r\n if (testContainerTypeValue(CustomAttributeContainerType.Any, type))\r\n return ECStringConstants.CONTAINERTYPE_ANY;\r\n\r\n let containerType = \"\";\r\n const setOrAppend = (val: string) => {\r\n if (containerType.length === 0) containerType = val;\r\n else containerType = `${containerType}, ${val}`;\r\n };\r\n\r\n if (testContainerTypeValue(CustomAttributeContainerType.Schema, type))\r\n setOrAppend(\"Schema\");\r\n\r\n if (testContainerTypeValue(CustomAttributeContainerType.AnyClass, type))\r\n setOrAppend(\"AnyClass\");\r\n else {\r\n if (testContainerTypeValue(CustomAttributeContainerType.EntityClass, type))\r\n setOrAppend(ECStringConstants.CONTAINERTYPE_ENTITYCLASS);\r\n if (testContainerTypeValue(CustomAttributeContainerType.CustomAttributeClass, type))\r\n setOrAppend(ECStringConstants.CONTAINERTYPE_CUSTOMATTRIBUTECLASS);\r\n if (testContainerTypeValue(CustomAttributeContainerType.StructClass, type))\r\n setOrAppend(ECStringConstants.CONTAINERTYPE_STRUCTCLASS);\r\n if (testContainerTypeValue(CustomAttributeContainerType.RelationshipClass, type))\r\n setOrAppend(ECStringConstants.CONTAINERTYPE_RELATIONSHIPCLASS);\r\n }\r\n\r\n if (testContainerTypeValue(CustomAttributeContainerType.AnyProperty, type))\r\n setOrAppend(ECStringConstants.CONTAINERTYPE_ANYPROPERTY);\r\n else {\r\n if (testContainerTypeValue(CustomAttributeContainerType.PrimitiveProperty, type))\r\n setOrAppend(ECStringConstants.CONTAINERTYPE_PRIMITIVEPROPERTY);\r\n if (testContainerTypeValue(CustomAttributeContainerType.StructProperty, type))\r\n setOrAppend(ECStringConstants.CONTAINERTYPE_STRUCTPROPERTY);\r\n if (testContainerTypeValue(CustomAttributeContainerType.PrimitiveArrayProperty, type))\r\n setOrAppend(ECStringConstants.CONTAINERTYPE_PRIMITIVEARRAYPROPERTY);\r\n if (testContainerTypeValue(CustomAttributeContainerType.StructArrayProperty, type))\r\n setOrAppend(ECStringConstants.CONTAINERTYPE_STRUCTARRAYPROPERTY);\r\n if (testContainerTypeValue(CustomAttributeContainerType.NavigationProperty, type))\r\n setOrAppend(ECStringConstants.CONTAINERTYPE_NAVIGATIONPROPERTY);\r\n }\r\n\r\n if (testContainerTypeValue(CustomAttributeContainerType.AnyRelationshipConstraint, type))\r\n setOrAppend(ECStringConstants.CONTAINERTYPE_ANYRELATIONSHIPCONSTRAINT);\r\n else {\r\n if (testContainerTypeValue(CustomAttributeContainerType.SourceRelationshipConstraint, type))\r\n setOrAppend(ECStringConstants.CONTAINERTYPE_SOURCERELATIONSHIPCONSTRAINT);\r\n if (testContainerTypeValue(CustomAttributeContainerType.TargetRelationshipConstraint, type))\r\n setOrAppend(ECStringConstants.CONTAINERTYPE_TARGETRELATIONSHIPCONSTRAINT);\r\n }\r\n\r\n return containerType;\r\n}\r\n\r\n/** @beta */\r\nexport function parseRelationshipEnd(end: string): RelationshipEnd | undefined {\r\n switch (end.toLowerCase()) {\r\n case \"source\": return RelationshipEnd.Source;\r\n case \"target\": return RelationshipEnd.Target;\r\n }\r\n return undefined;\r\n}\r\n\r\n/** @beta */\r\nexport function relationshipEndToString(end: RelationshipEnd): string {\r\n switch (end) {\r\n case RelationshipEnd.Source: return ECStringConstants.RELATIONSHIP_END_SOURCE;\r\n case RelationshipEnd.Target: return ECStringConstants.RELATIONSHIP_END_TARGET;\r\n default:\r\n throw new ECSchemaError(ECSchemaStatus.InvalidRelationshipEnd, `An invalid RelationshipEnd has been provided.`);\r\n }\r\n}\r\n\r\n/**\r\n * Takes a string representing a StrengthType, will parse it and return the corresponding StrengthType.\r\n * @throws ECSchemaStatus.InvalidStrength if the provided string that is not valid\r\n * @param strength\r\n * @beta\r\n */\r\nexport function parseStrength(strength: string): StrengthType | undefined {\r\n switch (strength.toLowerCase()) {\r\n case \"referencing\": return StrengthType.Referencing;\r\n case \"holding\": return StrengthType.Holding;\r\n case \"embedding\": return StrengthType.Embedding;\r\n }\r\n return undefined;\r\n}\r\n\r\n/** @beta */\r\nexport function strengthToString(strength: StrengthType): string {\r\n switch (strength) {\r\n case StrengthType.Embedding: return \"Embedding\";\r\n case StrengthType.Holding: return \"Holding\";\r\n case StrengthType.Referencing: return \"Referencing\";\r\n default:\r\n throw new ECSchemaError(ECSchemaStatus.InvalidStrength, `An invalid Strength has been provided.`);\r\n }\r\n}\r\n\r\n/** @beta */\r\nexport function parseStrengthDirection(direction: string): StrengthDirection | undefined {\r\n switch (direction.toLowerCase()) {\r\n case \"forward\": return StrengthDirection.Forward;\r\n case \"backward\": return StrengthDirection.Backward;\r\n }\r\n return undefined;\r\n}\r\n\r\n/** @beta */\r\nexport function strengthDirectionToString(direction: StrengthDirection): string {\r\n switch (direction) {\r\n case StrengthDirection.Forward: return \"Forward\";\r\n case StrengthDirection.Backward: return \"Backward\";\r\n default:\r\n throw new ECSchemaError(ECSchemaStatus.InvalidStrengthDirection, `An invalid StrengthDirection has been provided.`);\r\n }\r\n}\r\n\r\n/** Compares a SchemaItemType against supported type.\r\n * @beta\r\n */\r\nexport function isSupportedSchemaItemType(value: SchemaItemType, supported: SupportedSchemaItemType): boolean {\r\n if (value === supported) return true;\r\n\r\n if (supported === AbstractSchemaItemType.Class && (\r\n value === SchemaItemType.EntityClass ||\r\n value === SchemaItemType.Mixin ||\r\n value === SchemaItemType.StructClass ||\r\n value === SchemaItemType.CustomAttributeClass ||\r\n value === SchemaItemType.RelationshipClass)) {\r\n return true;\r\n }\r\n\r\n if (supported === AbstractSchemaItemType.SchemaItem) {\r\n return true;\r\n }\r\n\r\n return false;\r\n}\r\n"]}
|
package/lib/esm/Exception.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Exception.js","sourceRoot":"","sources":["../../src/Exception.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Metadata\n */\n\nimport { BentleyError } from \"@itwin/core-bentley\";\n\n/** @public @preview */\nexport enum ECSchemaStatus {\n ECSCHEMA_ERROR_BASE = 0x88EC,\n Success = 0,\n DuplicateItem = ECSCHEMA_ERROR_BASE + 1,\n DuplicateProperty = ECSCHEMA_ERROR_BASE + 2,\n DuplicateSchema = ECSCHEMA_ERROR_BASE + 3,\n ImmutableSchema = ECSCHEMA_ERROR_BASE + 4,\n InvalidContainerType = ECSCHEMA_ERROR_BASE + 5,\n InvalidECJson = ECSCHEMA_ERROR_BASE + 6,\n InvalidECName = ECSCHEMA_ERROR_BASE + 7,\n InvalidECVersion = ECSCHEMA_ERROR_BASE + 8,\n InvalidEnumValue = ECSCHEMA_ERROR_BASE + 9,\n InvalidModifier = ECSCHEMA_ERROR_BASE + 10,\n InvalidMultiplicity = ECSCHEMA_ERROR_BASE + 11,\n InvalidPrimitiveType = ECSCHEMA_ERROR_BASE + 12,\n InvalidSchemaItemType = ECSCHEMA_ERROR_BASE + 13,\n InvalidStrength = ECSCHEMA_ERROR_BASE + 14,\n InvalidStrengthDirection = ECSCHEMA_ERROR_BASE + 15,\n InvalidRelationshipEnd = ECSCHEMA_ERROR_BASE + 16,\n InvalidType = ECSCHEMA_ERROR_BASE + 17,\n MissingSchemaUrl = ECSCHEMA_ERROR_BASE + 18,\n UnableToLocateSchema = ECSCHEMA_ERROR_BASE + 19,\n InvalidSchemaXML = ECSCHEMA_ERROR_BASE + 20,\n InvalidSchemaString = ECSCHEMA_ERROR_BASE + 21,\n ClassNotFound = ECSCHEMA_ERROR_BASE + 22,\n SchemaContextUndefined = ECSCHEMA_ERROR_BASE + 23,\n DifferentSchemaContexts = ECSCHEMA_ERROR_BASE + 24,\n InvalidSchemaComparisonArgument = ECSCHEMA_ERROR_BASE + 25,\n InvalidSchemaAlias = ECSCHEMA_ERROR_BASE + 26,\n InvalidSchemaKey = ECSCHEMA_ERROR_BASE + 27,\n UnableToLoadSchema = ECSCHEMA_ERROR_BASE + 28,\n NewerECSpecVersion = ECSCHEMA_ERROR_BASE + 29,\n}\n\n/** @internal */\nexport class ECSchemaError extends BentleyError {\n public constructor(public override readonly errorNumber: number, message?: string) {\n super(errorNumber, message);\n }\n\n public toDebugString(): string {\n switch (this.errorNumber) {\n case ECSchemaStatus.DuplicateItem: return this._appendMessage(\"ECSchemaStatus.DuplicateItem\");\n case ECSchemaStatus.DuplicateProperty: return this._appendMessage(\"ECSchemaStatus.DuplicateProperty\");\n case ECSchemaStatus.DuplicateSchema: return this._appendMessage(\"ECSchemaStatus.DuplicateSchema\");\n case ECSchemaStatus.ImmutableSchema: return this._appendMessage(\"ECSchemaStatus.ImmutableSchema\");\n case ECSchemaStatus.InvalidContainerType: return this._appendMessage(\"ECSchemaStatus.InvalidContainerType\");\n case ECSchemaStatus.InvalidECJson: return this._appendMessage(\"ECSchemaStatus.InvalidECJson\");\n case ECSchemaStatus.InvalidECName: return this._appendMessage(\"ECSchemaStatus.InvalidECName\");\n case ECSchemaStatus.InvalidECVersion: return this._appendMessage(\"ECSchemaStatus.InvalidECVersion\");\n case ECSchemaStatus.InvalidEnumValue: return this._appendMessage(\"ECSchemaStatus.InvalidEnumValue\");\n case ECSchemaStatus.InvalidModifier: return this._appendMessage(\"ECSchemaStatus.InvalidModifier\");\n case ECSchemaStatus.InvalidMultiplicity: return this._appendMessage(\"ECSchemaStatus.InvalidMultiplicity\");\n case ECSchemaStatus.InvalidPrimitiveType: return this._appendMessage(\"ECSchemaStatus.InvalidPrimitiveType\");\n case ECSchemaStatus.InvalidSchemaItemType: return this._appendMessage(\"ECSchemaStatus.InvalidSchemaItemType\");\n case ECSchemaStatus.InvalidStrength: return this._appendMessage(\"ECSchemaStatus.InvalidStrength\");\n case ECSchemaStatus.InvalidStrengthDirection: return this._appendMessage(\"ECSchemaStatus.InvalidStrengthDirection\");\n case ECSchemaStatus.InvalidRelationshipEnd: return this._appendMessage(\"ECSchemaStatus.InvalidRelationshipEnd\");\n case ECSchemaStatus.InvalidType: return this._appendMessage(\"ECSchemaStatus.InvalidType\");\n case ECSchemaStatus.MissingSchemaUrl: return this._appendMessage(\"ECSchemaStatus.MissingSchemaUrl\");\n case ECSchemaStatus.UnableToLocateSchema: return this._appendMessage(\"ECSchemaStatus.UnableToLocateSchema\");\n case ECSchemaStatus.ClassNotFound: return this._appendMessage(\"ECSchemaStatus.ClassNotFound\");\n case ECSchemaStatus.SchemaContextUndefined: return this._appendMessage(\"ECSchemaStatus.SchemaContextUndefined\");\n case ECSchemaStatus.DifferentSchemaContexts: return this._appendMessage(\"ECSchemaStatus.DifferentSchemaContexts\");\n default:\n /* istanbul ignore next */\n return this._appendMessage(`Error ${this.errorNumber.toString()}`);\n }\n }\n\n private _appendMessage(e: string): string {\n return this.message ? `${e}: ${this.message}` : e;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"Exception.js","sourceRoot":"","sources":["../../src/Exception.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Metadata\r\n */\r\n\r\nimport { BentleyError } from \"@itwin/core-bentley\";\r\n\r\n/** @public @preview */\r\nexport enum ECSchemaStatus {\r\n ECSCHEMA_ERROR_BASE = 0x88EC,\r\n Success = 0,\r\n DuplicateItem = ECSCHEMA_ERROR_BASE + 1,\r\n DuplicateProperty = ECSCHEMA_ERROR_BASE + 2,\r\n DuplicateSchema = ECSCHEMA_ERROR_BASE + 3,\r\n ImmutableSchema = ECSCHEMA_ERROR_BASE + 4,\r\n InvalidContainerType = ECSCHEMA_ERROR_BASE + 5,\r\n InvalidECJson = ECSCHEMA_ERROR_BASE + 6,\r\n InvalidECName = ECSCHEMA_ERROR_BASE + 7,\r\n InvalidECVersion = ECSCHEMA_ERROR_BASE + 8,\r\n InvalidEnumValue = ECSCHEMA_ERROR_BASE + 9,\r\n InvalidModifier = ECSCHEMA_ERROR_BASE + 10,\r\n InvalidMultiplicity = ECSCHEMA_ERROR_BASE + 11,\r\n InvalidPrimitiveType = ECSCHEMA_ERROR_BASE + 12,\r\n InvalidSchemaItemType = ECSCHEMA_ERROR_BASE + 13,\r\n InvalidStrength = ECSCHEMA_ERROR_BASE + 14,\r\n InvalidStrengthDirection = ECSCHEMA_ERROR_BASE + 15,\r\n InvalidRelationshipEnd = ECSCHEMA_ERROR_BASE + 16,\r\n InvalidType = ECSCHEMA_ERROR_BASE + 17,\r\n MissingSchemaUrl = ECSCHEMA_ERROR_BASE + 18,\r\n UnableToLocateSchema = ECSCHEMA_ERROR_BASE + 19,\r\n InvalidSchemaXML = ECSCHEMA_ERROR_BASE + 20,\r\n InvalidSchemaString = ECSCHEMA_ERROR_BASE + 21,\r\n ClassNotFound = ECSCHEMA_ERROR_BASE + 22,\r\n SchemaContextUndefined = ECSCHEMA_ERROR_BASE + 23,\r\n DifferentSchemaContexts = ECSCHEMA_ERROR_BASE + 24,\r\n InvalidSchemaComparisonArgument = ECSCHEMA_ERROR_BASE + 25,\r\n InvalidSchemaAlias = ECSCHEMA_ERROR_BASE + 26,\r\n InvalidSchemaKey = ECSCHEMA_ERROR_BASE + 27,\r\n UnableToLoadSchema = ECSCHEMA_ERROR_BASE + 28,\r\n NewerECSpecVersion = ECSCHEMA_ERROR_BASE + 29,\r\n}\r\n\r\n/** @internal */\r\nexport class ECSchemaError extends BentleyError {\r\n public constructor(public override readonly errorNumber: number, message?: string) {\r\n super(errorNumber, message);\r\n }\r\n\r\n public toDebugString(): string {\r\n switch (this.errorNumber) {\r\n case ECSchemaStatus.DuplicateItem: return this._appendMessage(\"ECSchemaStatus.DuplicateItem\");\r\n case ECSchemaStatus.DuplicateProperty: return this._appendMessage(\"ECSchemaStatus.DuplicateProperty\");\r\n case ECSchemaStatus.DuplicateSchema: return this._appendMessage(\"ECSchemaStatus.DuplicateSchema\");\r\n case ECSchemaStatus.ImmutableSchema: return this._appendMessage(\"ECSchemaStatus.ImmutableSchema\");\r\n case ECSchemaStatus.InvalidContainerType: return this._appendMessage(\"ECSchemaStatus.InvalidContainerType\");\r\n case ECSchemaStatus.InvalidECJson: return this._appendMessage(\"ECSchemaStatus.InvalidECJson\");\r\n case ECSchemaStatus.InvalidECName: return this._appendMessage(\"ECSchemaStatus.InvalidECName\");\r\n case ECSchemaStatus.InvalidECVersion: return this._appendMessage(\"ECSchemaStatus.InvalidECVersion\");\r\n case ECSchemaStatus.InvalidEnumValue: return this._appendMessage(\"ECSchemaStatus.InvalidEnumValue\");\r\n case ECSchemaStatus.InvalidModifier: return this._appendMessage(\"ECSchemaStatus.InvalidModifier\");\r\n case ECSchemaStatus.InvalidMultiplicity: return this._appendMessage(\"ECSchemaStatus.InvalidMultiplicity\");\r\n case ECSchemaStatus.InvalidPrimitiveType: return this._appendMessage(\"ECSchemaStatus.InvalidPrimitiveType\");\r\n case ECSchemaStatus.InvalidSchemaItemType: return this._appendMessage(\"ECSchemaStatus.InvalidSchemaItemType\");\r\n case ECSchemaStatus.InvalidStrength: return this._appendMessage(\"ECSchemaStatus.InvalidStrength\");\r\n case ECSchemaStatus.InvalidStrengthDirection: return this._appendMessage(\"ECSchemaStatus.InvalidStrengthDirection\");\r\n case ECSchemaStatus.InvalidRelationshipEnd: return this._appendMessage(\"ECSchemaStatus.InvalidRelationshipEnd\");\r\n case ECSchemaStatus.InvalidType: return this._appendMessage(\"ECSchemaStatus.InvalidType\");\r\n case ECSchemaStatus.MissingSchemaUrl: return this._appendMessage(\"ECSchemaStatus.MissingSchemaUrl\");\r\n case ECSchemaStatus.UnableToLocateSchema: return this._appendMessage(\"ECSchemaStatus.UnableToLocateSchema\");\r\n case ECSchemaStatus.ClassNotFound: return this._appendMessage(\"ECSchemaStatus.ClassNotFound\");\r\n case ECSchemaStatus.SchemaContextUndefined: return this._appendMessage(\"ECSchemaStatus.SchemaContextUndefined\");\r\n case ECSchemaStatus.DifferentSchemaContexts: return this._appendMessage(\"ECSchemaStatus.DifferentSchemaContexts\");\r\n default:\r\n /* istanbul ignore next */\r\n return this._appendMessage(`Error ${this.errorNumber.toString()}`);\r\n }\r\n }\r\n\r\n private _appendMessage(e: string): string {\r\n return this.message ? `${e}: ${this.message}` : e;\r\n }\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Interfaces.js","sourceRoot":"","sources":["../../src/Interfaces.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Metadata\n */\n\nimport { ECClass, StructClass } from \"./Metadata/Class\";\nimport { Constant } from \"./Metadata/Constant\";\nimport { CustomAttribute, CustomAttributeContainerProps } from \"./Metadata/CustomAttribute\";\nimport { CustomAttributeClass } from \"./Metadata/CustomAttributeClass\";\nimport { EntityClass } from \"./Metadata/EntityClass\";\nimport { AnyEnumerator, Enumeration } from \"./Metadata/Enumeration\";\nimport { Format } from \"./Metadata/Format\";\nimport { InvertedUnit } from \"./Metadata/InvertedUnit\";\nimport { KindOfQuantity } from \"./Metadata/KindOfQuantity\";\nimport { Mixin } from \"./Metadata/Mixin\";\nimport { OverrideFormat } from \"./Metadata/OverrideFormat\";\nimport { Phenomenon } from \"./Metadata/Phenomenon\";\nimport { AnyProperty } from \"./Metadata/Property\";\nimport { PropertyCategory } from \"./Metadata/PropertyCategory\";\nimport { RelationshipClass, RelationshipConstraint } from \"./Metadata/RelationshipClass\";\nimport { Schema } from \"./Metadata/Schema\";\nimport { SchemaItem } from \"./Metadata/SchemaItem\";\nimport { Unit } from \"./Metadata/Unit\";\nimport { UnitSystem } from \"./Metadata/UnitSystem\";\nimport { SchemaItemKey, SchemaKey } from \"./SchemaKey\";\n\n/** @public @preview */\nexport type LazyLoadedSchema = SchemaKey & Promise<Schema>;\n\n/** @public @preview */\nexport type LazyLoadedSchemaItem<T extends SchemaItem> = SchemaItemKey & Promise<T>;\n/** @public @preview */\nexport type LazyLoadedECClass = LazyLoadedSchemaItem<ECClass>;\n/** @public @preview */\nexport type LazyLoadedEntityClass = LazyLoadedSchemaItem<EntityClass>;\n/** @public @preview */\nexport type LazyLoadedMixin = LazyLoadedSchemaItem<Mixin>;\n/** @public @preview */\nexport type LazyLoadedStructClass = LazyLoadedSchemaItem<StructClass>;\n/** @public @preview */\nexport type LazyLoadedRelationshipClass = LazyLoadedSchemaItem<RelationshipClass>;\n/** @public @preview */\nexport type LazyLoadedEnumeration = LazyLoadedSchemaItem<Enumeration>;\n/** @public @preview */\nexport type LazyLoadedFormat = LazyLoadedSchemaItem<Format>;\n/** @public @preview */\nexport type LazyLoadedKindOfQuantity = LazyLoadedSchemaItem<KindOfQuantity>;\n/** @public @preview */\nexport type LazyLoadedPropertyCategory = LazyLoadedSchemaItem<PropertyCategory>;\n/** @public @preview */\nexport type LazyLoadedRelationshipConstraintClass = LazyLoadedSchemaItem<EntityClass | Mixin | RelationshipClass>;\n/** @public @preview */\nexport type LazyLoadedUnit = LazyLoadedSchemaItem<Unit>;\n/** @public @preview */\nexport type LazyLoadedInvertedUnit = LazyLoadedSchemaItem<InvertedUnit>;\n/** @public @preview */\nexport type LazyLoadedPhenomenon = LazyLoadedSchemaItem<Phenomenon>;\n/** @public @preview */\nexport type LazyLoadedUnitSystem = LazyLoadedSchemaItem<UnitSystem>;\n\n/** @public @preview */\nexport type AnyClass =\n EntityClass |\n Mixin |\n StructClass |\n CustomAttributeClass |\n RelationshipClass;\n\n/** @public @preview */\nexport type AnySchemaItem =\n AnyClass |\n Enumeration |\n KindOfQuantity |\n PropertyCategory |\n Unit |\n InvertedUnit |\n Constant |\n Phenomenon |\n UnitSystem |\n Format;\n\n/** @public @preview */\nexport type AnyECType =\n Schema |\n SchemaItem |\n AnyProperty |\n RelationshipConstraint |\n CustomAttributeContainerProps |\n CustomAttribute |\n OverrideFormat |\n AnyEnumerator;\n\n/**\n * Holds the SchemaKeys for a schema and it's references. Designed so that Schema fulfills this interface.\n * @public @preview\n */\nexport interface SchemaInfo {\n readonly alias: string;\n readonly schemaKey: SchemaKey;\n readonly references: ReadonlyArray<WithSchemaKey>;\n}\n\n/** @public @preview */\nexport interface WithSchemaKey {\n readonly schemaKey: SchemaKey;\n}\n\n/** This is needed to break a circular dependency between Class and EntityClass.\n * @public @preview\n */\nexport interface HasMixins {\n readonly mixins: ReadonlyArray<LazyLoadedMixin>;\n getMixinsSync(): Iterable<Mixin>;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"Interfaces.js","sourceRoot":"","sources":["../../src/Interfaces.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Metadata\r\n */\r\n\r\nimport { ECClass, StructClass } from \"./Metadata/Class\";\r\nimport { Constant } from \"./Metadata/Constant\";\r\nimport { CustomAttribute, CustomAttributeContainerProps } from \"./Metadata/CustomAttribute\";\r\nimport { CustomAttributeClass } from \"./Metadata/CustomAttributeClass\";\r\nimport { EntityClass } from \"./Metadata/EntityClass\";\r\nimport { AnyEnumerator, Enumeration } from \"./Metadata/Enumeration\";\r\nimport { Format } from \"./Metadata/Format\";\r\nimport { InvertedUnit } from \"./Metadata/InvertedUnit\";\r\nimport { KindOfQuantity } from \"./Metadata/KindOfQuantity\";\r\nimport { Mixin } from \"./Metadata/Mixin\";\r\nimport { OverrideFormat } from \"./Metadata/OverrideFormat\";\r\nimport { Phenomenon } from \"./Metadata/Phenomenon\";\r\nimport { AnyProperty } from \"./Metadata/Property\";\r\nimport { PropertyCategory } from \"./Metadata/PropertyCategory\";\r\nimport { RelationshipClass, RelationshipConstraint } from \"./Metadata/RelationshipClass\";\r\nimport { Schema } from \"./Metadata/Schema\";\r\nimport { SchemaItem } from \"./Metadata/SchemaItem\";\r\nimport { Unit } from \"./Metadata/Unit\";\r\nimport { UnitSystem } from \"./Metadata/UnitSystem\";\r\nimport { SchemaItemKey, SchemaKey } from \"./SchemaKey\";\r\n\r\n/** @public @preview */\r\nexport type LazyLoadedSchema = SchemaKey & Promise<Schema>;\r\n\r\n/** @public @preview */\r\nexport type LazyLoadedSchemaItem<T extends SchemaItem> = SchemaItemKey & Promise<T>;\r\n/** @public @preview */\r\nexport type LazyLoadedECClass = LazyLoadedSchemaItem<ECClass>;\r\n/** @public @preview */\r\nexport type LazyLoadedEntityClass = LazyLoadedSchemaItem<EntityClass>;\r\n/** @public @preview */\r\nexport type LazyLoadedMixin = LazyLoadedSchemaItem<Mixin>;\r\n/** @public @preview */\r\nexport type LazyLoadedStructClass = LazyLoadedSchemaItem<StructClass>;\r\n/** @public @preview */\r\nexport type LazyLoadedRelationshipClass = LazyLoadedSchemaItem<RelationshipClass>;\r\n/** @public @preview */\r\nexport type LazyLoadedEnumeration = LazyLoadedSchemaItem<Enumeration>;\r\n/** @public @preview */\r\nexport type LazyLoadedFormat = LazyLoadedSchemaItem<Format>;\r\n/** @public @preview */\r\nexport type LazyLoadedKindOfQuantity = LazyLoadedSchemaItem<KindOfQuantity>;\r\n/** @public @preview */\r\nexport type LazyLoadedPropertyCategory = LazyLoadedSchemaItem<PropertyCategory>;\r\n/** @public @preview */\r\nexport type LazyLoadedRelationshipConstraintClass = LazyLoadedSchemaItem<EntityClass | Mixin | RelationshipClass>;\r\n/** @public @preview */\r\nexport type LazyLoadedUnit = LazyLoadedSchemaItem<Unit>;\r\n/** @public @preview */\r\nexport type LazyLoadedInvertedUnit = LazyLoadedSchemaItem<InvertedUnit>;\r\n/** @public @preview */\r\nexport type LazyLoadedPhenomenon = LazyLoadedSchemaItem<Phenomenon>;\r\n/** @public @preview */\r\nexport type LazyLoadedUnitSystem = LazyLoadedSchemaItem<UnitSystem>;\r\n\r\n/** @public @preview */\r\nexport type AnyClass =\r\n EntityClass |\r\n Mixin |\r\n StructClass |\r\n CustomAttributeClass |\r\n RelationshipClass;\r\n\r\n/** @public @preview */\r\nexport type AnySchemaItem =\r\n AnyClass |\r\n Enumeration |\r\n KindOfQuantity |\r\n PropertyCategory |\r\n Unit |\r\n InvertedUnit |\r\n Constant |\r\n Phenomenon |\r\n UnitSystem |\r\n Format;\r\n\r\n/** @public @preview */\r\nexport type AnyECType =\r\n Schema |\r\n SchemaItem |\r\n AnyProperty |\r\n RelationshipConstraint |\r\n CustomAttributeContainerProps |\r\n CustomAttribute |\r\n OverrideFormat |\r\n AnyEnumerator;\r\n\r\n/**\r\n * Holds the SchemaKeys for a schema and it's references. Designed so that Schema fulfills this interface.\r\n * @public @preview\r\n */\r\nexport interface SchemaInfo {\r\n readonly alias: string;\r\n readonly schemaKey: SchemaKey;\r\n readonly references: ReadonlyArray<WithSchemaKey>;\r\n}\r\n\r\n/** @public @preview */\r\nexport interface WithSchemaKey {\r\n readonly schemaKey: SchemaKey;\r\n}\r\n\r\n/** This is needed to break a circular dependency between Class and EntityClass.\r\n * @public @preview\r\n */\r\nexport interface HasMixins {\r\n readonly mixins: ReadonlyArray<LazyLoadedMixin>;\r\n getMixinsSync(): Iterable<Mixin>;\r\n}\r\n"]}
|
|
@@ -216,32 +216,20 @@ export declare abstract class ECClass extends SchemaItem implements CustomAttrib
|
|
|
216
216
|
getAllBaseClassesSync(): Iterable<AnyClass>;
|
|
217
217
|
/**
|
|
218
218
|
*
|
|
219
|
-
* @param
|
|
220
|
-
* @param existingValues
|
|
221
|
-
* @param propertiesToMerge
|
|
222
|
-
* @param overwriteExisting
|
|
223
|
-
*
|
|
224
|
-
* @internal
|
|
225
|
-
*/
|
|
226
|
-
protected static mergeProperties(target: Property[], existingValues: Map<string, number>, propertiesToMerge: Iterable<Property>, overwriteExisting: boolean): void;
|
|
227
|
-
/**
|
|
228
|
-
*
|
|
229
|
-
* @param result
|
|
230
|
-
* @param existingValues
|
|
219
|
+
* @param cache
|
|
231
220
|
* @returns
|
|
232
221
|
*
|
|
233
222
|
* @internal
|
|
234
223
|
*/
|
|
235
|
-
protected buildPropertyCache(
|
|
224
|
+
protected buildPropertyCache(): Promise<Map<string, Property>>;
|
|
236
225
|
/**
|
|
237
226
|
*
|
|
238
|
-
* @param
|
|
239
|
-
* @param existingValues
|
|
227
|
+
* @param cache
|
|
240
228
|
* @returns
|
|
241
229
|
*
|
|
242
230
|
* @internal
|
|
243
231
|
*/
|
|
244
|
-
protected buildPropertyCacheSync(
|
|
232
|
+
protected buildPropertyCacheSync(): Map<string, Property>;
|
|
245
233
|
/**
|
|
246
234
|
* Clears all caches on this object. This is called implicitly for this class,
|
|
247
235
|
* but needs to be called if derived classes have changed.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Class.d.ts","sourceRoot":"","sources":["../../../src/Metadata/Class.ts"],"names":[],"mappings":"AAIA;;GAEG;AAIH,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAE1D,OAAO,EAAiD,eAAe,EAA0C,aAAa,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAE9L,OAAO,EAAE,QAAQ,EAAa,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEvE,OAAO,EAAE,eAAe,EAAE,6BAA6B,EAAE,kBAAkB,EAA6B,MAAM,mBAAmB,CAAC;AAClI,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EACL,wBAAwB,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,QAAQ,EAAE,mBAAmB,EAAE,cAAc,EACxI,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C;;;GAGG;AACH,8BAAsB,OAAQ,SAAQ,UAAW,YAAW,6BAA6B;IACvF,gBAAgB;IAChB,WAA2B,cAAc,IAAI,uBAAuB,CAAyC;IAC7G,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,UAAU,CAAC,CAAoB;IACvC,OAAO,CAAC,eAAe,CAAC,CAAiC;IACzD,OAAO,CAAC,WAAW,CAAC,CAAwB;IAC5C,OAAO,CAAC,iBAAiB,CAAC,CAA+B;IACzD,OAAO,CAAC,oBAAoB,CAAC,
|
|
1
|
+
{"version":3,"file":"Class.d.ts","sourceRoot":"","sources":["../../../src/Metadata/Class.ts"],"names":[],"mappings":"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"}
|
|
@@ -121,34 +121,44 @@ export class ECClass extends SchemaItem {
|
|
|
121
121
|
* @param name The name of the property to retrieve.
|
|
122
122
|
* @param excludeInherited If true, excludes inherited properties from the results. Defaults to false.
|
|
123
123
|
*/
|
|
124
|
-
async getProperty(name, excludeInherited
|
|
124
|
+
async getProperty(name, excludeInherited) {
|
|
125
|
+
const upperKey = name.toUpperCase();
|
|
126
|
+
let property;
|
|
125
127
|
if (this._properties) {
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
if (property)
|
|
128
|
+
property = this._properties.get(upperKey);
|
|
129
|
+
if (property) {
|
|
129
130
|
return property;
|
|
131
|
+
}
|
|
130
132
|
}
|
|
131
133
|
if (excludeInherited) {
|
|
132
134
|
return undefined;
|
|
133
135
|
}
|
|
134
|
-
|
|
136
|
+
if (!this._mergedPropertyCache) {
|
|
137
|
+
this._mergedPropertyCache = await this.buildPropertyCache();
|
|
138
|
+
}
|
|
139
|
+
return this._mergedPropertyCache.get(upperKey);
|
|
135
140
|
}
|
|
136
141
|
/**
|
|
137
142
|
* Searches, case-insensitive, for a local ECProperty with the name provided.
|
|
138
143
|
* @param name The name of the property to retrieve.
|
|
139
144
|
* @param excludeInherited If true, excludes inherited properties from the results. Defaults to false.
|
|
140
145
|
*/
|
|
141
|
-
getPropertySync(name, excludeInherited
|
|
146
|
+
getPropertySync(name, excludeInherited) {
|
|
147
|
+
const upperKey = name.toUpperCase();
|
|
148
|
+
let property;
|
|
142
149
|
if (this._properties) {
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
if (property)
|
|
150
|
+
property = this._properties.get(upperKey);
|
|
151
|
+
if (property) {
|
|
146
152
|
return property;
|
|
153
|
+
}
|
|
147
154
|
}
|
|
148
155
|
if (excludeInherited) {
|
|
149
156
|
return undefined;
|
|
150
157
|
}
|
|
151
|
-
|
|
158
|
+
if (!this._mergedPropertyCache) {
|
|
159
|
+
this._mergedPropertyCache = this.buildPropertyCacheSync();
|
|
160
|
+
}
|
|
161
|
+
return this._mergedPropertyCache.get(upperKey);
|
|
152
162
|
}
|
|
153
163
|
/**
|
|
154
164
|
* Searches the base class, if one exists, for the property with the name provided.
|
|
@@ -368,7 +378,7 @@ export class ECClass extends SchemaItem {
|
|
|
368
378
|
baseClassElement.textContent = baseClassName;
|
|
369
379
|
itemElement.appendChild(baseClassElement);
|
|
370
380
|
}
|
|
371
|
-
if (
|
|
381
|
+
if (this._properties) {
|
|
372
382
|
for (const prop of this._properties.values()) {
|
|
373
383
|
const propXml = await prop.toXml(schemaXml);
|
|
374
384
|
itemElement.appendChild(propXml);
|
|
@@ -480,69 +490,51 @@ export class ECClass extends SchemaItem {
|
|
|
480
490
|
}
|
|
481
491
|
/**
|
|
482
492
|
*
|
|
483
|
-
* @param
|
|
484
|
-
* @
|
|
485
|
-
* @param propertiesToMerge
|
|
486
|
-
* @param overwriteExisting
|
|
493
|
+
* @param cache
|
|
494
|
+
* @returns
|
|
487
495
|
*
|
|
488
496
|
* @internal
|
|
489
497
|
*/
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
if (
|
|
496
|
-
|
|
498
|
+
async buildPropertyCache() {
|
|
499
|
+
const cache = new Map();
|
|
500
|
+
const baseClass = await this.baseClass;
|
|
501
|
+
if (baseClass) {
|
|
502
|
+
for (const property of await baseClass.getProperties()) {
|
|
503
|
+
if (!cache.has(property.name.toUpperCase())) {
|
|
504
|
+
cache.set(property.name.toUpperCase(), property);
|
|
497
505
|
}
|
|
498
506
|
}
|
|
499
|
-
else {
|
|
500
|
-
existingValues.set(upperCaseName, target.length);
|
|
501
|
-
target.push(property);
|
|
502
|
-
}
|
|
503
|
-
}
|
|
504
|
-
}
|
|
505
|
-
/**
|
|
506
|
-
*
|
|
507
|
-
* @param result
|
|
508
|
-
* @param existingValues
|
|
509
|
-
* @returns
|
|
510
|
-
*
|
|
511
|
-
* @internal
|
|
512
|
-
*/
|
|
513
|
-
async buildPropertyCache(result, existingValues) {
|
|
514
|
-
if (!existingValues) {
|
|
515
|
-
existingValues = new Map();
|
|
516
507
|
}
|
|
517
|
-
if (this.
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
}
|
|
508
|
+
if (this._properties) {
|
|
509
|
+
this._properties.forEach(property => {
|
|
510
|
+
cache.set(property.name.toUpperCase(), property);
|
|
511
|
+
});
|
|
522
512
|
}
|
|
523
|
-
|
|
524
|
-
return;
|
|
525
|
-
ECClass.mergeProperties(result, existingValues, [...this._properties.values()], true);
|
|
513
|
+
return cache;
|
|
526
514
|
}
|
|
527
515
|
/**
|
|
528
516
|
*
|
|
529
|
-
* @param
|
|
530
|
-
* @param existingValues
|
|
517
|
+
* @param cache
|
|
531
518
|
* @returns
|
|
532
519
|
*
|
|
533
520
|
* @internal
|
|
534
521
|
*/
|
|
535
|
-
buildPropertyCacheSync(
|
|
536
|
-
|
|
537
|
-
existingValues = new Map();
|
|
538
|
-
}
|
|
522
|
+
buildPropertyCacheSync() {
|
|
523
|
+
const cache = new Map();
|
|
539
524
|
const baseClass = this.getBaseClassSync();
|
|
540
525
|
if (baseClass) {
|
|
541
|
-
|
|
526
|
+
for (const property of baseClass.getPropertiesSync()) {
|
|
527
|
+
if (!cache.has(property.name.toUpperCase())) {
|
|
528
|
+
cache.set(property.name.toUpperCase(), property);
|
|
529
|
+
}
|
|
530
|
+
}
|
|
542
531
|
}
|
|
543
|
-
if (
|
|
544
|
-
|
|
545
|
-
|
|
532
|
+
if (this._properties) {
|
|
533
|
+
this._properties.forEach(property => {
|
|
534
|
+
cache.set(property.name.toUpperCase(), property);
|
|
535
|
+
});
|
|
536
|
+
}
|
|
537
|
+
return cache;
|
|
546
538
|
}
|
|
547
539
|
/**
|
|
548
540
|
* Clears all caches on this object. This is called implicitly for this class,
|
|
@@ -563,10 +555,9 @@ export class ECClass extends SchemaItem {
|
|
|
563
555
|
return this._properties && this._properties.size > 0 ? this._properties.values() : [];
|
|
564
556
|
}
|
|
565
557
|
if (!this._mergedPropertyCache) {
|
|
566
|
-
this._mergedPropertyCache =
|
|
567
|
-
this.buildPropertyCacheSync(this._mergedPropertyCache, undefined);
|
|
558
|
+
this._mergedPropertyCache = this.buildPropertyCacheSync();
|
|
568
559
|
}
|
|
569
|
-
return this._mergedPropertyCache;
|
|
560
|
+
return this._mergedPropertyCache.values();
|
|
570
561
|
}
|
|
571
562
|
/**
|
|
572
563
|
* Quick way to check whether this class has any local properties without having to use the iterable
|