@itwin/ecschema-editing 4.8.0-dev.2 → 4.8.0-dev.21

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 (126) hide show
  1. package/CHANGELOG.md +23 -1
  2. package/lib/cjs/Differencing/Errors.js.map +1 -1
  3. package/lib/cjs/Differencing/SchemaConflicts.js.map +1 -1
  4. package/lib/cjs/Differencing/SchemaDiagnosticVisitor.js.map +1 -1
  5. package/lib/cjs/Differencing/SchemaDifference.d.ts +10 -119
  6. package/lib/cjs/Differencing/SchemaDifference.d.ts.map +1 -1
  7. package/lib/cjs/Differencing/SchemaDifference.js +28 -198
  8. package/lib/cjs/Differencing/SchemaDifference.js.map +1 -1
  9. package/lib/cjs/Differencing/Utils.d.ts +100 -0
  10. package/lib/cjs/Differencing/Utils.d.ts.map +1 -0
  11. package/lib/cjs/Differencing/Utils.js +165 -0
  12. package/lib/cjs/Differencing/Utils.js.map +1 -0
  13. package/lib/cjs/Editing/Constants.js.map +1 -1
  14. package/lib/cjs/Editing/CustomAttributes.js.map +1 -1
  15. package/lib/cjs/Editing/ECClasses.d.ts +0 -7
  16. package/lib/cjs/Editing/ECClasses.d.ts.map +1 -1
  17. package/lib/cjs/Editing/ECClasses.js +0 -27
  18. package/lib/cjs/Editing/ECClasses.js.map +1 -1
  19. package/lib/cjs/Editing/Editor.d.ts +19 -3
  20. package/lib/cjs/Editing/Editor.d.ts.map +1 -1
  21. package/lib/cjs/Editing/Editor.js +48 -3
  22. package/lib/cjs/Editing/Editor.js.map +1 -1
  23. package/lib/cjs/Editing/Entities.js.map +1 -1
  24. package/lib/cjs/Editing/Enumerations.js +4 -4
  25. package/lib/cjs/Editing/Enumerations.js.map +1 -1
  26. package/lib/cjs/Editing/Exception.d.ts +237 -140
  27. package/lib/cjs/Editing/Exception.d.ts.map +1 -1
  28. package/lib/cjs/Editing/Exception.js +216 -196
  29. package/lib/cjs/Editing/Exception.js.map +1 -1
  30. package/lib/cjs/Editing/Formats.d.ts.map +1 -1
  31. package/lib/cjs/Editing/Formats.js +4 -1
  32. package/lib/cjs/Editing/Formats.js.map +1 -1
  33. package/lib/cjs/Editing/InvertedUnits.js.map +1 -1
  34. package/lib/cjs/Editing/KindOfQuantities.d.ts.map +1 -1
  35. package/lib/cjs/Editing/KindOfQuantities.js +3 -1
  36. package/lib/cjs/Editing/KindOfQuantities.js.map +1 -1
  37. package/lib/cjs/Editing/Mixins.js.map +1 -1
  38. package/lib/cjs/Editing/Mutable/MutableArrayProperty.js.map +1 -1
  39. package/lib/cjs/Editing/Mutable/MutableCAClass.js.map +1 -1
  40. package/lib/cjs/Editing/Mutable/MutableClass.js.map +1 -1
  41. package/lib/cjs/Editing/Mutable/MutableConstant.js.map +1 -1
  42. package/lib/cjs/Editing/Mutable/MutableEntityClass.js.map +1 -1
  43. package/lib/cjs/Editing/Mutable/MutableEnumeration.js.map +1 -1
  44. package/lib/cjs/Editing/Mutable/MutableFormat.js.map +1 -1
  45. package/lib/cjs/Editing/Mutable/MutableInvertedUnit.js.map +1 -1
  46. package/lib/cjs/Editing/Mutable/MutableKindOfQuantity.js.map +1 -1
  47. package/lib/cjs/Editing/Mutable/MutableMixin.js.map +1 -1
  48. package/lib/cjs/Editing/Mutable/MutableNavigationProperty.js.map +1 -1
  49. package/lib/cjs/Editing/Mutable/MutablePhenomenon.js.map +1 -1
  50. package/lib/cjs/Editing/Mutable/MutablePrimitiveOrEnumProperty.js.map +1 -1
  51. package/lib/cjs/Editing/Mutable/MutableProperty.js.map +1 -1
  52. package/lib/cjs/Editing/Mutable/MutablePropertyCategory.js.map +1 -1
  53. package/lib/cjs/Editing/Mutable/MutableRelationshipClass.js.map +1 -1
  54. package/lib/cjs/Editing/Mutable/MutableSchema.d.ts +2 -0
  55. package/lib/cjs/Editing/Mutable/MutableSchema.d.ts.map +1 -1
  56. package/lib/cjs/Editing/Mutable/MutableSchema.js.map +1 -1
  57. package/lib/cjs/Editing/Mutable/MutableSchemaItem.d.ts +11 -0
  58. package/lib/cjs/Editing/Mutable/MutableSchemaItem.d.ts.map +1 -0
  59. package/lib/cjs/Editing/Mutable/MutableSchemaItem.js +16 -0
  60. package/lib/cjs/Editing/Mutable/MutableSchemaItem.js.map +1 -0
  61. package/lib/cjs/Editing/Mutable/MutableStructProperty.js.map +1 -1
  62. package/lib/cjs/Editing/Mutable/MutableUnit.js.map +1 -1
  63. package/lib/cjs/Editing/Mutable/MutableUnitSystem.js.map +1 -1
  64. package/lib/cjs/Editing/Phenomena.js.map +1 -1
  65. package/lib/cjs/Editing/Properties.d.ts +1 -4
  66. package/lib/cjs/Editing/Properties.d.ts.map +1 -1
  67. package/lib/cjs/Editing/Properties.js +4 -5
  68. package/lib/cjs/Editing/Properties.js.map +1 -1
  69. package/lib/cjs/Editing/PropertyCategories.js.map +1 -1
  70. package/lib/cjs/Editing/RelationshipClasses.js.map +1 -1
  71. package/lib/cjs/Editing/SchemaItems.d.ts +21 -2
  72. package/lib/cjs/Editing/SchemaItems.d.ts.map +1 -1
  73. package/lib/cjs/Editing/SchemaItems.js +55 -24
  74. package/lib/cjs/Editing/SchemaItems.js.map +1 -1
  75. package/lib/cjs/Editing/Structs.js.map +1 -1
  76. package/lib/cjs/Editing/UnitSystems.js.map +1 -1
  77. package/lib/cjs/Editing/Units.js.map +1 -1
  78. package/lib/cjs/Merging/CAClassMerger.js.map +1 -1
  79. package/lib/cjs/Merging/ClassMerger.d.ts.map +1 -1
  80. package/lib/cjs/Merging/ClassMerger.js +10 -10
  81. package/lib/cjs/Merging/ClassMerger.js.map +1 -1
  82. package/lib/cjs/Merging/ConstantMerger.js.map +1 -1
  83. package/lib/cjs/Merging/CustomAttributeMerger.js.map +1 -1
  84. package/lib/cjs/Merging/EntityClassMerger.js.map +1 -1
  85. package/lib/cjs/Merging/EnumerationMerger.js.map +1 -1
  86. package/lib/cjs/Merging/KindOfQuantityMerger.js.map +1 -1
  87. package/lib/cjs/Merging/MixinMerger.js.map +1 -1
  88. package/lib/cjs/Merging/PhenomenonMerger.js.map +1 -1
  89. package/lib/cjs/Merging/PropertyCategoryMerger.js.map +1 -1
  90. package/lib/cjs/Merging/PropertyMerger.js.map +1 -1
  91. package/lib/cjs/Merging/RelationshipClassMerger.js.map +1 -1
  92. package/lib/cjs/Merging/SchemaItemMerger.d.ts +4 -4
  93. package/lib/cjs/Merging/SchemaItemMerger.d.ts.map +1 -1
  94. package/lib/cjs/Merging/SchemaItemMerger.js +18 -18
  95. package/lib/cjs/Merging/SchemaItemMerger.js.map +1 -1
  96. package/lib/cjs/Merging/SchemaMerger.d.ts +7 -7
  97. package/lib/cjs/Merging/SchemaMerger.d.ts.map +1 -1
  98. package/lib/cjs/Merging/SchemaMerger.js +32 -31
  99. package/lib/cjs/Merging/SchemaMerger.js.map +1 -1
  100. package/lib/cjs/Merging/SchemaReferenceMerger.js.map +1 -1
  101. package/lib/cjs/Merging/UnitSystemMerger.js.map +1 -1
  102. package/lib/cjs/Validation/Diagnostic.js.map +1 -1
  103. package/lib/cjs/Validation/DiagnosticReporter.js.map +1 -1
  104. package/lib/cjs/Validation/ECRules.js.map +1 -1
  105. package/lib/cjs/Validation/LoggingDiagnosticReporter.js.map +1 -1
  106. package/lib/cjs/Validation/RuleSuppressionSet.js.map +1 -1
  107. package/lib/cjs/Validation/Rules.js.map +1 -1
  108. package/lib/cjs/Validation/SchemaChanges.js.map +1 -1
  109. package/lib/cjs/Validation/SchemaCompareDiagnostics.js.map +1 -1
  110. package/lib/cjs/Validation/SchemaCompareReporter.js.map +1 -1
  111. package/lib/cjs/Validation/SchemaCompareResultDelegate.js.map +1 -1
  112. package/lib/cjs/Validation/SchemaCompareVisitor.d.ts.map +1 -1
  113. package/lib/cjs/Validation/SchemaCompareVisitor.js +25 -14
  114. package/lib/cjs/Validation/SchemaCompareVisitor.js.map +1 -1
  115. package/lib/cjs/Validation/SchemaComparer.d.ts.map +1 -1
  116. package/lib/cjs/Validation/SchemaComparer.js +33 -10
  117. package/lib/cjs/Validation/SchemaComparer.js.map +1 -1
  118. package/lib/cjs/Validation/SchemaValidater.js.map +1 -1
  119. package/lib/cjs/Validation/SchemaValidationVisitor.js.map +1 -1
  120. package/lib/cjs/Validation/SchemaWalker.js.map +1 -1
  121. package/lib/cjs/ecschema-editing.d.ts +3 -1
  122. package/lib/cjs/ecschema-editing.d.ts.map +1 -1
  123. package/lib/cjs/ecschema-editing.js +4 -2
  124. package/lib/cjs/ecschema-editing.js.map +1 -1
  125. package/package.json +9 -9
  126. package/public/locales/en/ECSchemaEditing.json +26 -26
@@ -1 +1 @@
1
- {"version":3,"file":"Enumerations.js","sourceRoot":"","sources":["../../../src/Editing/Enumerations.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 Editing\r\n */\r\n\r\nimport { AnyEnumerator, Enumeration, EnumerationProps, PrimitiveType, SchemaItemKey, SchemaItemType, SchemaKey } from \"@itwin/ecschema-metadata\";\r\nimport { SchemaContextEditor } from \"./Editor\";\r\nimport { MutableEnumeration } from \"./Mutable/MutableEnumeration\";\r\nimport { ECEditingStatus, EnumerationId, SchemaEditingError, SchemaItemId } from \"./Exception\";\r\nimport { SchemaItems } from \"./SchemaItems\";\r\n\r\ntype MutableEnumerator = {\r\n -readonly [P in keyof AnyEnumerator]: AnyEnumerator[P]\r\n};\r\n\r\n/**\r\n * @alpha\r\n * A class allowing you to create schema items of type Enumeration.\r\n */\r\nexport class Enumerations extends SchemaItems {\r\n public constructor(schemaEditor: SchemaContextEditor) {\r\n super(SchemaItemType.Enumeration, schemaEditor);\r\n }\r\n\r\n public async create(schemaKey: SchemaKey, name: string, type: PrimitiveType.Integer | PrimitiveType.String, displayLabel?: string, isStrict?: boolean, enumerators?: AnyEnumerator[]): Promise<SchemaItemKey> {\r\n try {\r\n const newEnum = await this.createSchemaItem<Enumeration>(schemaKey, this.schemaItemType, (schema) => schema.createEnumeration.bind(schema), name, type) as MutableEnumeration;\r\n\r\n if (undefined !== isStrict)\r\n newEnum.setIsStrict(isStrict);\r\n\r\n if (undefined !== enumerators)\r\n for (const enumerator of enumerators)\r\n await this.addEnumerator(newEnum.key, enumerator);\r\n\r\n if (displayLabel)\r\n newEnum.setDisplayLabel(displayLabel);\r\n\r\n return newEnum.key;\r\n } catch (e: any) {\r\n throw new SchemaEditingError(ECEditingStatus.CreateSchemaItemFailed, new SchemaItemId(this.schemaItemType, name, schemaKey), e);\r\n }\r\n }\r\n\r\n /**\r\n * Creates an Enumeration through an EnumeratorProps.\r\n * @param schemaKey a SchemaKey of the Schema that will house the new object.\r\n * @param relationshipProps a json object that will be used to populate the new RelationshipClass. Needs a name value passed in.\r\n */\r\n public async createFromProps(schemaKey: SchemaKey, enumProps: EnumerationProps): Promise<SchemaItemKey> {\r\n try {\r\n const newEnum = await this.createSchemaItemFromProps(schemaKey, this.schemaItemType, (schema) => schema.createEnumeration.bind(schema), enumProps);\r\n return newEnum.key;\r\n } catch (e: any) {\r\n throw new SchemaEditingError(ECEditingStatus.CreateSchemaItemFromProps, new SchemaItemId(this.schemaItemType, enumProps.name!, schemaKey), e);\r\n }\r\n }\r\n\r\n public async addEnumerator(enumerationKey: SchemaItemKey, enumerator: AnyEnumerator): Promise<void> {\r\n try {\r\n const enumeration = await this.getSchemaItem<Enumeration>(enumerationKey, SchemaItemType.Enumeration);\r\n\r\n if (enumeration.isInt && typeof (enumerator.value) !== \"number\")\r\n throw new SchemaEditingError(ECEditingStatus.InvalidEnumeratorType, new EnumerationId(enumeration, enumerator));\r\n\r\n if (enumeration.isString && typeof (enumerator.value) !== \"string\")\r\n throw new SchemaEditingError(ECEditingStatus.InvalidEnumeratorType, new EnumerationId(enumeration, enumerator));\r\n\r\n (enumeration as MutableEnumeration).addEnumerator(enumerator);\r\n } catch(e: any) {\r\n throw new SchemaEditingError(ECEditingStatus.AddEnumerator, new SchemaItemId(this.schemaItemType, enumerationKey), e);\r\n }\r\n }\r\n\r\n public async setEnumeratorLabel(enumerationKey: SchemaItemKey, enumeratorName: string, label: string | undefined): Promise<void> {\r\n try {\r\n const enumeration = await this.getSchemaItem<Enumeration>(enumerationKey, SchemaItemType.Enumeration);\r\n\r\n const enumerator = enumeration.getEnumeratorByName(enumeratorName);\r\n if (enumerator === undefined)\r\n throw new SchemaEditingError(ECEditingStatus.EnumeratorDoesNotExist, new EnumerationId(enumeration, enumeratorName));\r\n\r\n (enumerator as MutableEnumerator).label = label;\r\n } catch(e: any) {\r\n throw new SchemaEditingError(ECEditingStatus.SetEnumeratorLabel, new SchemaItemId(this.schemaItemType, enumerationKey), e);\r\n }\r\n }\r\n\r\n public async setEnumeratorDescription(enumerationKey: SchemaItemKey, enumeratorName: string, description: string | undefined): Promise<void> {\r\n try {\r\n const enumeration = await this.getSchemaItem<Enumeration>(enumerationKey, SchemaItemType.Enumeration);\r\n\r\n const enumerator = enumeration.getEnumeratorByName(enumeratorName);\r\n if (enumerator === undefined)\r\n throw new SchemaEditingError(ECEditingStatus.EnumeratorDoesNotExist, new EnumerationId(enumeration, enumeratorName));\r\n\r\n (enumerator as MutableEnumerator).description = description;\r\n } catch(e: any) {\r\n throw new SchemaEditingError(ECEditingStatus.SetEnumeratorLabel, new SchemaItemId(this.schemaItemType, enumerationKey), e);\r\n }\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"Enumerations.js","sourceRoot":"","sources":["../../../src/Editing/Enumerations.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 Editing\n */\n\nimport { AnyEnumerator, Enumeration, EnumerationProps, PrimitiveType, SchemaItemKey, SchemaItemType, SchemaKey } from \"@itwin/ecschema-metadata\";\nimport { SchemaContextEditor } from \"./Editor\";\nimport { MutableEnumeration } from \"./Mutable/MutableEnumeration\";\nimport { ECEditingStatus, EnumeratorId, SchemaEditingError, SchemaItemId } from \"./Exception\";\nimport { SchemaItems } from \"./SchemaItems\";\n\ntype MutableEnumerator = {\n -readonly [P in keyof AnyEnumerator]: AnyEnumerator[P]\n};\n\n/**\n * @alpha\n * A class allowing you to create schema items of type Enumeration.\n */\nexport class Enumerations extends SchemaItems {\n public constructor(schemaEditor: SchemaContextEditor) {\n super(SchemaItemType.Enumeration, schemaEditor);\n }\n\n public async create(schemaKey: SchemaKey, name: string, type: PrimitiveType.Integer | PrimitiveType.String, displayLabel?: string, isStrict?: boolean, enumerators?: AnyEnumerator[]): Promise<SchemaItemKey> {\n try {\n const newEnum = await this.createSchemaItem<Enumeration>(schemaKey, this.schemaItemType, (schema) => schema.createEnumeration.bind(schema), name, type) as MutableEnumeration;\n\n if (undefined !== isStrict)\n newEnum.setIsStrict(isStrict);\n\n if (undefined !== enumerators)\n for (const enumerator of enumerators)\n await this.addEnumerator(newEnum.key, enumerator);\n\n if (displayLabel)\n newEnum.setDisplayLabel(displayLabel);\n\n return newEnum.key;\n } catch (e: any) {\n throw new SchemaEditingError(ECEditingStatus.CreateSchemaItemFailed, new SchemaItemId(this.schemaItemType, name, schemaKey), e);\n }\n }\n\n /**\n * Creates an Enumeration through an EnumeratorProps.\n * @param schemaKey a SchemaKey of the Schema that will house the new object.\n * @param relationshipProps a json object that will be used to populate the new RelationshipClass. Needs a name value passed in.\n */\n public async createFromProps(schemaKey: SchemaKey, enumProps: EnumerationProps): Promise<SchemaItemKey> {\n try {\n const newEnum = await this.createSchemaItemFromProps(schemaKey, this.schemaItemType, (schema) => schema.createEnumeration.bind(schema), enumProps);\n return newEnum.key;\n } catch (e: any) {\n throw new SchemaEditingError(ECEditingStatus.CreateSchemaItemFromProps, new SchemaItemId(this.schemaItemType, enumProps.name!, schemaKey), e);\n }\n }\n\n public async addEnumerator(enumerationKey: SchemaItemKey, enumerator: AnyEnumerator): Promise<void> {\n try {\n const enumeration = await this.getSchemaItem<Enumeration>(enumerationKey, SchemaItemType.Enumeration);\n\n if (enumeration.isInt && typeof (enumerator.value) !== \"number\")\n throw new SchemaEditingError(ECEditingStatus.InvalidEnumeratorType, new EnumeratorId(enumerator, enumeration));\n\n if (enumeration.isString && typeof (enumerator.value) !== \"string\")\n throw new SchemaEditingError(ECEditingStatus.InvalidEnumeratorType, new EnumeratorId(enumerator, enumeration));\n\n (enumeration as MutableEnumeration).addEnumerator(enumerator);\n } catch(e: any) {\n throw new SchemaEditingError(ECEditingStatus.AddEnumerator, new SchemaItemId(this.schemaItemType, enumerationKey), e);\n }\n }\n\n public async setEnumeratorLabel(enumerationKey: SchemaItemKey, enumeratorName: string, label: string | undefined): Promise<void> {\n try {\n const enumeration = await this.getSchemaItem<Enumeration>(enumerationKey, SchemaItemType.Enumeration);\n\n const enumerator = enumeration.getEnumeratorByName(enumeratorName);\n if (enumerator === undefined)\n throw new SchemaEditingError(ECEditingStatus.EnumeratorDoesNotExist, new EnumeratorId(enumeratorName, enumeration));\n\n (enumerator as MutableEnumerator).label = label;\n } catch(e: any) {\n throw new SchemaEditingError(ECEditingStatus.SetEnumeratorLabel, new SchemaItemId(this.schemaItemType, enumerationKey), e);\n }\n }\n\n public async setEnumeratorDescription(enumerationKey: SchemaItemKey, enumeratorName: string, description: string | undefined): Promise<void> {\n try {\n const enumeration = await this.getSchemaItem<Enumeration>(enumerationKey, SchemaItemType.Enumeration);\n\n const enumerator = enumeration.getEnumeratorByName(enumeratorName);\n if (enumerator === undefined)\n throw new SchemaEditingError(ECEditingStatus.EnumeratorDoesNotExist, new EnumeratorId(enumeratorName, enumeration));\n\n (enumerator as MutableEnumerator).description = description;\n } catch(e: any) {\n throw new SchemaEditingError(ECEditingStatus.SetEnumeratorLabel, new SchemaItemId(this.schemaItemType, enumerationKey), e);\n }\n }\n}\n"]}
@@ -1,7 +1,6 @@
1
1
  /** @packageDocumentation
2
2
  * @module Editing
3
3
  */
4
- import { BentleyError } from "@itwin/core-bentley";
5
4
  import { AnyDiagnostic } from "../Validation/Diagnostic";
6
5
  import { AnyEnumerator, CustomAttributeContainerProps, Enumeration, Property, RelationshipConstraint, SchemaItemKey, SchemaItemType, SchemaKey } from "@itwin/ecschema-metadata";
7
6
  /** @alpha */
@@ -24,75 +23,75 @@ export declare enum ECEditingStatus {
24
23
  InvalidEnumeratorType = 196622,
25
24
  InvalidBaseClass = 196623,
26
25
  EnumeratorDoesNotExist = 196624,
27
- InvalidStrengthDirection = 196625,
28
- InvalidECName = 196626,
29
- InvalidFormatUnitsSpecified = 196627,
30
- CreateSchemaItemFailed = 196628,
31
- CreateSchemaItemFromProps = 196629,
32
- CreateElement = 196630,
33
- CreateElementUniqueAspect = 196631,
34
- CreateElementMultiAspect = 196632,
35
- SetBaseClass = 196633,
36
- SetSourceConstraint = 196634,
37
- SetTargetConstraint = 196635,
38
- AddConstraintClass = 196636,
39
- RemoveConstraintClass = 196637,
40
- SetAbstractConstraint = 196638,
41
- AddCustomAttributeToConstraint = 196639,
42
- AddCustomAttributeToProperty = 196640,
43
- AddCustomAttributeToClass = 196641,
44
- CreateNavigationProperty = 196642,
45
- CreateNavigationPropertyFromProps = 196643,
46
- SetInvertsUnit = 196644,
47
- SetUnitSystem = 196645,
48
- SetDescription = 196646,
49
- SetLabel = 196647,
50
- SetIsReadOnly = 196648,
51
- SetPriority = 196649,
52
- SetCategory = 196650,
53
- SetMinOccurs = 196651,
54
- SetMaxOccurs = 196652,
55
- SetExtendedTypeName = 196653,
56
- SetMinLength = 196654,
57
- SetMaxLength = 196655,
58
- SetMinValue = 196656,
59
- SetMaxValue = 196657,
60
- SetPropertyName = 196658,
61
- AddMixin = 196659,
62
- AddEnumerator = 196660,
63
- SetEnumeratorLabel = 196661,
64
- SetEnumeratorDescription = 196662,
65
- AddPresentationUnit = 196663,
66
- AddPresentationOverride = 196664,
67
- CreateFormatOverride = 196665,
68
- SetPropertyCategoryPriority = 196666,
69
- CreatePrimitiveProperty = 196667,
70
- CreatePrimitivePropertyFromProps = 196668,
71
- CreateEnumerationProperty = 196669,
72
- CreateEnumerationPropertyFromProps = 196670,
73
- CreatePrimitiveArrayProperty = 196671,
74
- CreatePrimitiveArrayPropertyFromProps = 196672,
75
- CreateEnumerationArrayProperty = 196673,
76
- CreateEnumerationArrayPropertyFromProps = 196674,
77
- CreateStructProperty = 196675,
78
- CreateStructPropertyFromProps = 196676,
79
- CreateStructArrayProperty = 196677,
80
- CreateStructArrayPropertyFromProps = 196678,
81
- DeleteProperty = 196679,
82
- DeleteClass = 196680,
83
- SetClassName = 196681,
84
- AddSchemaReference = 196682,
85
- SetSchemaVersion = 196683,
86
- IncrementSchemaMinorVersion = 196684
26
+ InvalidECName = 196625,
27
+ InvalidFormatUnitsSpecified = 196626,
28
+ CreateSchemaItemFailed = 196627,
29
+ CreateSchemaItemFromProps = 196628,
30
+ CreateElement = 196629,
31
+ CreateElementUniqueAspect = 196630,
32
+ CreateElementMultiAspect = 196631,
33
+ SetBaseClass = 196632,
34
+ SetSourceConstraint = 196633,
35
+ SetTargetConstraint = 196634,
36
+ AddConstraintClass = 196635,
37
+ RemoveConstraintClass = 196636,
38
+ SetAbstractConstraint = 196637,
39
+ AddCustomAttributeToConstraint = 196638,
40
+ AddCustomAttributeToProperty = 196639,
41
+ AddCustomAttributeToClass = 196640,
42
+ CreateNavigationProperty = 196641,
43
+ CreateNavigationPropertyFromProps = 196642,
44
+ SetInvertsUnit = 196643,
45
+ SetUnitSystem = 196644,
46
+ SetDescription = 196645,
47
+ SetLabel = 196646,
48
+ SetIsReadOnly = 196647,
49
+ SetPriority = 196648,
50
+ SetCategory = 196649,
51
+ SetMinOccurs = 196650,
52
+ SetMaxOccurs = 196651,
53
+ SetExtendedTypeName = 196652,
54
+ SetMinLength = 196653,
55
+ SetMaxLength = 196654,
56
+ SetMinValue = 196655,
57
+ SetMaxValue = 196656,
58
+ SetPropertyName = 196657,
59
+ AddMixin = 196658,
60
+ AddEnumerator = 196659,
61
+ SetEnumeratorLabel = 196660,
62
+ SetEnumeratorDescription = 196661,
63
+ AddPresentationUnit = 196662,
64
+ AddPresentationOverride = 196663,
65
+ CreateFormatOverride = 196664,
66
+ SetPropertyCategoryPriority = 196665,
67
+ CreatePrimitiveProperty = 196666,
68
+ CreatePrimitivePropertyFromProps = 196667,
69
+ CreateEnumerationProperty = 196668,
70
+ CreateEnumerationPropertyFromProps = 196669,
71
+ CreatePrimitiveArrayProperty = 196670,
72
+ CreatePrimitiveArrayPropertyFromProps = 196671,
73
+ CreateEnumerationArrayProperty = 196672,
74
+ CreateEnumerationArrayPropertyFromProps = 196673,
75
+ CreateStructProperty = 196674,
76
+ CreateStructPropertyFromProps = 196675,
77
+ CreateStructArrayProperty = 196676,
78
+ CreateStructArrayPropertyFromProps = 196677,
79
+ DeleteProperty = 196678,
80
+ DeleteClass = 196679,
81
+ SetClassName = 196680,
82
+ AddSchemaReference = 196681,
83
+ SetSchemaVersion = 196682,
84
+ IncrementSchemaMinorVersion = 196683
87
85
  }
86
+ /**
87
+ * A type that constrains the possible error types handled by SchemaEditingError
88
+ * @alpha
89
+ */
88
90
  export type AnyEditingError = SchemaEditingError | Error;
89
- export declare enum TaskType {
90
- Add = 0,
91
- Create = 1,
92
- Update = 2,
93
- Change = 3,
94
- Delete = 4
95
- }
91
+ /**
92
+ * Defines the possible property type names.
93
+ * @alpha
94
+ */
96
95
  export declare enum PropertyTypeName {
97
96
  ArrayProperty = "ArrayProperty",
98
97
  PrimitiveProperty = "PrimitiveProperty",
@@ -100,26 +99,141 @@ export declare enum PropertyTypeName {
100
99
  NavigationProperty = "NavigationProperty",
101
100
  StructProperty = "StructProperty"
102
101
  }
103
- type ECClassSchemaItems = SchemaItemType.EntityClass | SchemaItemType.StructClass | SchemaItemType.RelationshipClass | SchemaItemType.Mixin | SchemaItemType.CustomAttributeClass;
104
- export interface SchemaTypeIdentifier {
105
- name: string;
102
+ /**
103
+ * Defines the possible schema type identifiers.
104
+ * @alpha
105
+ */
106
+ export declare enum SchemaTypeIdentifiers {
107
+ SchemaIdentifier = "Schema",
108
+ SchemaItemIdentifier = "SchemaItem",
109
+ ClassIdentifier = "Class",
110
+ PropertyIdentifier = "Property",
111
+ EnumeratorIdentifier = "Enumerator",
112
+ CustomAttributeIdentifier = "CustomAttribute",
113
+ RelationshipConstraintIdentifier = "RelationshipConstraint"
106
114
  }
107
- export declare class SchemaId implements SchemaTypeIdentifier {
115
+ /**
116
+ * Type that constrains SchemaItemType enum to those used by EC Class types.
117
+ * @alpha
118
+ */
119
+ export type ECClassSchemaItems = SchemaItemType.EntityClass | SchemaItemType.StructClass | SchemaItemType.RelationshipClass | SchemaItemType.Mixin | SchemaItemType.CustomAttributeClass;
120
+ /**
121
+ * Type that defines the possible SchemaTypeIdentifiers for SchemaItemId classes.
122
+ * @alpha
123
+ */
124
+ export type AnySchemaItemTypeIdentifier = SchemaTypeIdentifiers.SchemaItemIdentifier | SchemaTypeIdentifiers.ClassIdentifier;
125
+ /**
126
+ * Type that encompasses all ISchemaTypeIdentifier interfaces
127
+ * @alpha
128
+ */
129
+ export type AnyIdentifier = ISchemaIdentifier | ISchemaItemIdentifier | IClassIdentifier | IPropertyIdentifier | ICustomAttributeIdentifier | IRelationshipConstraintIdentifier | IEnumeratorIdentifier;
130
+ /**
131
+ * A base interface that defines what is needed to identity any schema type.
132
+ * @alpha
133
+ */
134
+ export interface ISchemaTypeIdentifier {
135
+ readonly name: string;
136
+ readonly schemaKey: SchemaKey;
137
+ readonly typeIdentifier: SchemaTypeIdentifiers;
138
+ }
139
+ /**
140
+ * Interface that defines the data needed to identify a Schema.
141
+ * @alpha
142
+ */
143
+ export interface ISchemaIdentifier extends ISchemaTypeIdentifier {
144
+ readonly typeIdentifier: SchemaTypeIdentifiers.SchemaIdentifier;
145
+ }
146
+ /**
147
+ * Interface that defines the data needed to identify a SchemaItem.
148
+ * @alpha
149
+ */
150
+ export interface ISchemaItemIdentifier extends ISchemaTypeIdentifier {
151
+ readonly schemaItemType: SchemaItemType;
152
+ readonly schemaItemKey: SchemaItemKey;
153
+ readonly typeIdentifier: AnySchemaItemTypeIdentifier;
154
+ }
155
+ /**
156
+ * Interface that defines the data needed to identify an EC Class.
157
+ * @alpha
158
+ */
159
+ export interface IClassIdentifier extends ISchemaTypeIdentifier {
160
+ readonly schemaItemType: ECClassSchemaItems;
161
+ readonly schemaItemKey: SchemaItemKey;
162
+ readonly typeIdentifier: SchemaTypeIdentifiers.ClassIdentifier;
163
+ }
164
+ /**
165
+ * Interface that defines the data needed to identify an EC Property.
166
+ * @alpha
167
+ */
168
+ export interface IPropertyIdentifier extends ISchemaTypeIdentifier {
169
+ readonly fullName: string;
170
+ readonly ecClass: ClassId;
171
+ readonly typeName?: PropertyTypeName;
172
+ readonly typeIdentifier: SchemaTypeIdentifiers.PropertyIdentifier;
173
+ }
174
+ /**
175
+ * Interface that defines the data needed to identify an Enumerator.
176
+ * @alpha
177
+ */
178
+ interface IEnumeratorIdentifier extends ISchemaTypeIdentifier {
179
+ readonly enumeratorType: string;
180
+ readonly enumeration: SchemaItemKey;
181
+ readonly enumerationType: string;
182
+ readonly typeIdentifier: SchemaTypeIdentifiers.EnumeratorIdentifier;
183
+ }
184
+ /**
185
+ * Interface that defines the data needed to identify a CustomAttribute.
186
+ * @alpha
187
+ */
188
+ export interface ICustomAttributeIdentifier extends ISchemaTypeIdentifier {
189
+ readonly containerFullName: string;
190
+ readonly typeIdentifier: SchemaTypeIdentifiers.CustomAttributeIdentifier;
191
+ }
192
+ /**
193
+ * Interface that defines the data needed to identify a RelationshipConstraint.
194
+ * @alpha
195
+ */
196
+ export interface IRelationshipConstraintIdentifier extends ISchemaTypeIdentifier {
197
+ readonly relationshipKey: SchemaItemKey;
198
+ readonly typeIdentifier: SchemaTypeIdentifiers.RelationshipConstraintIdentifier;
199
+ }
200
+ /**
201
+ * An ISchemaIdentifier implementation to identify Schemas
202
+ * @alpha
203
+ */
204
+ export declare class SchemaId implements ISchemaIdentifier {
205
+ readonly typeIdentifier = SchemaTypeIdentifiers.SchemaIdentifier;
108
206
  readonly name: string;
109
207
  readonly schemaKey: SchemaKey;
110
208
  constructor(schemaKey: SchemaKey);
111
209
  }
112
- export declare class SchemaItemId implements SchemaTypeIdentifier {
210
+ /**
211
+ * An ISchemItemIdentifier implementation to identify SchemaItems
212
+ * @alpha
213
+ */
214
+ export declare class SchemaItemId implements ISchemaItemIdentifier {
215
+ readonly typeIdentifier: AnySchemaItemTypeIdentifier;
113
216
  readonly name: string;
114
- readonly type: SchemaItemType;
115
217
  readonly schemaKey: SchemaKey;
218
+ readonly schemaItemType: SchemaItemType;
116
219
  readonly schemaItemKey: SchemaItemKey;
117
220
  constructor(schemaItemType: SchemaItemType, schemaItemKeyOrName: SchemaItemKey | string, schemaKey?: SchemaKey);
118
221
  }
119
- export declare class ClassId extends SchemaItemId {
222
+ /**
223
+ * An IClassIdentifier implementation to identify Class instances.
224
+ * @alpha
225
+ */
226
+ export declare class ClassId extends SchemaItemId implements IClassIdentifier {
227
+ readonly typeIdentifier = SchemaTypeIdentifiers.ClassIdentifier;
228
+ readonly schemaItemType: ECClassSchemaItems;
120
229
  constructor(schemaItemType: ECClassSchemaItems, schemaItemKeyOrName: SchemaItemKey | string, schemaKey?: SchemaKey);
121
230
  }
122
- export declare class PropertyId implements SchemaTypeIdentifier {
231
+ /**
232
+ * An IPropertyIdentifier implementation to identify Property instances.
233
+ * @alpha
234
+ */
235
+ export declare class PropertyId implements IPropertyIdentifier {
236
+ readonly typeIdentifier = SchemaTypeIdentifiers.PropertyIdentifier;
123
237
  readonly name: string;
124
238
  readonly fullName: string;
125
239
  readonly ecClass: ClassId;
@@ -127,78 +241,51 @@ export declare class PropertyId implements SchemaTypeIdentifier {
127
241
  readonly typeName?: PropertyTypeName;
128
242
  constructor(schemaItemType: ECClassSchemaItems, classKey: SchemaItemKey, property: Property | string, typeName?: PropertyTypeName);
129
243
  }
130
- export declare class EnumerationId extends SchemaItemId {
244
+ /**
245
+ * An IEnumeratorIdentifier implementation to identify Enumerator instances.
246
+ * @alpha
247
+ */
248
+ export declare class EnumeratorId implements IEnumeratorIdentifier {
249
+ readonly typeIdentifier = SchemaTypeIdentifiers.EnumeratorIdentifier;
250
+ readonly enumeration: SchemaItemKey;
131
251
  readonly enumerationType: string;
132
- readonly enumeratorName: string;
133
252
  readonly enumeratorType: string;
134
- constructor(enumeration: Enumeration, enumerator: AnyEnumerator | string);
135
- private getEnumeratorType;
253
+ readonly name: string;
254
+ readonly schemaKey: SchemaKey;
255
+ constructor(enumerator: AnyEnumerator | string, enumeration: Enumeration);
136
256
  }
137
- export declare class CustomAttributeId implements SchemaTypeIdentifier {
257
+ /**
258
+ * An ICustomAttributeIdentifier implementation to identify CustomAttribute instances.
259
+ * @alpha
260
+ */
261
+ export declare class CustomAttributeId implements ICustomAttributeIdentifier {
262
+ readonly typeIdentifier = SchemaTypeIdentifiers.CustomAttributeIdentifier;
138
263
  readonly name: string;
139
264
  readonly schemaKey: SchemaKey;
140
265
  readonly containerFullName: string;
141
266
  constructor(name: string, container: CustomAttributeContainerProps);
142
267
  }
143
- export declare class RelationshipConstraintId implements SchemaTypeIdentifier {
268
+ /**
269
+ * An IRelationshipConstraintIdentifier implementation to identify RelationshipConstraints.
270
+ * @alpha
271
+ */
272
+ export declare class RelationshipConstraintId implements IRelationshipConstraintIdentifier {
273
+ readonly typeIdentifier = SchemaTypeIdentifiers.RelationshipConstraintIdentifier;
144
274
  readonly name: string;
145
275
  readonly relationshipKey: SchemaItemKey;
146
276
  readonly schemaKey: SchemaKey;
147
277
  constructor(constraint: RelationshipConstraint);
148
278
  }
149
- type AnyIdentifier = SchemaId | PropertyId | CustomAttributeId | RelationshipConstraintId | EnumerationId;
150
- /**
151
- * Indicates if the given identifier is a SchemaId instance.
152
- * @param identifier The identifier to check.
153
- * @returns true if the identifier is the correct type.
154
- */
155
- export declare function isSchemaIdentifier(identifier: AnyIdentifier): identifier is SchemaId;
156
- /**
157
- * Indicates if the given identifier is a SchemaId instance.
158
- * @param identifier The identifier to check.
159
- * @returns true if the identifier is the correct type.
160
- */
161
- export declare function isSchemaItemIdentifier(identifier: AnyIdentifier): identifier is SchemaItemId;
162
- /**
163
- * Indicates if the given identifier is a ClassId instance.
164
- * @param identifier The identifier to check.
165
- * @returns true if the identifier is the correct type.
166
- */
167
- export declare function isClassIdentifier(identifier: AnyIdentifier): identifier is ClassId;
168
- /**
169
- * Indicates if the given identifier is a PropertyId instance.
170
- * @param identifier The identifier to check.
171
- * @returns true if the identifier is the correct type.
172
- */
173
- export declare function isPropertyIdentifier(identifier: AnyIdentifier): identifier is PropertyId;
174
- /**
175
- * Indicates if the given identifier is a EnumerationId instance.
176
- * @param identifier The identifier to check.
177
- * @returns true if the identifier is the correct type.
178
- */
179
- export declare function isEnumerationIdentifier(identifier: AnyIdentifier): identifier is EnumerationId;
180
- /**
181
- * Indicates if the given identifier is a CustomAttributeId instance.
182
- * @param identifier The identifier to check.
183
- * @returns true if the identifier is the correct type.
184
- */
185
- export declare function isCustomAttributeIdentifier(identifier: AnyIdentifier): identifier is CustomAttributeId;
186
- /**
187
- * Indicates if the given identifier is a RelationshipConstraintId instance.
188
- * @param identifier The identifier to check.
189
- * @returns true if the identifier is the correct type.
190
- */
191
- export declare function isRelationshipConstraintIdentifier(identifier: AnyIdentifier): identifier is RelationshipConstraintId;
192
279
  /**
193
- * @internal
194
280
  * An exception class for the ecschema-editing API. Contains identifiers for schema types involved in the
195
281
  * exception. An example being SchemaItemId which contains the name of the SchemaItem, SchemaItemKey, SchemaItemType, etc.
196
282
  * Typically will contain an innerError of type SchemaEditingError containing the identifier of the schema item that
197
283
  * caused the exception. The containing error instance will identify the method called (identified by the errorNumber)
198
284
  * and the identifier of the schema item being modified/created.
285
+ * @alpha
199
286
  */
200
- export declare class SchemaEditingError extends BentleyError {
201
- readonly errorNumber: number;
287
+ export declare class SchemaEditingError extends Error {
288
+ readonly errorNumber: ECEditingStatus;
202
289
  readonly identifier: AnyIdentifier;
203
290
  readonly innerError?: AnyEditingError | undefined;
204
291
  private _ruleViolations?;
@@ -211,47 +298,57 @@ export declare class SchemaEditingError extends BentleyError {
211
298
  * @param ruleViolations Will contain EC rule violations of type [[AnyDiagnostic]] for exceptions with the error code ECEditingStatus.RuleViolation.
212
299
  * @param message Optional error message. Most messages on automatically generated by this class based on the ECEditingStatus code.
213
300
  */
214
- constructor(errorNumber: number, identifier: AnyIdentifier, innerError?: AnyEditingError | undefined, ruleViolations?: AnyDiagnostic[], message?: string);
301
+ constructor(errorNumber: ECEditingStatus, identifier: AnyIdentifier, innerError?: AnyEditingError | undefined, ruleViolations?: AnyDiagnostic[], message?: string);
215
302
  /**
216
303
  * Gets the SchemaId instance.
217
304
  * @throws Error if the identifier is not an instance of SchemaId.
218
305
  */
219
- get schemaId(): SchemaId;
306
+ private get _schemaId();
220
307
  /**
221
308
  * Gets the SchemaItemId instance.
222
309
  * @throws Error if the identifier is not an instance of SchemaItemId.
223
310
  */
224
- get schemaItemId(): SchemaItemId;
311
+ private get _schemaItemId();
225
312
  /**
226
313
  * Gets the ClassId instance.
227
314
  * @throws Error if the identifier is not an instance of ClassId.
228
315
  */
229
- get classId(): ClassId;
316
+ private get _classId();
230
317
  /**
231
318
  * Gets the PropertyId instance.
232
319
  * @throws Error if the identifier is not an instance of PropertyId.
233
320
  */
234
- get propertyId(): PropertyId;
321
+ private get _propertyId();
235
322
  /**
236
- * Gets the EnumerationId instance.
237
- * @throws Error if the identifier is not an instance of EnumerationId.
323
+ * Gets the EnumeratorId instance.
324
+ * @throws Error if the identifier is not an instance of EnumeratorId.
238
325
  */
239
- get enumerationId(): EnumerationId;
326
+ private get _enumeratorId();
240
327
  /**
241
328
  * Gets the CustomAttributeId instance.
242
329
  * @throws Error if the identifier is not an instance of CustomAttributeId.
243
330
  */
244
- get customAttributeId(): CustomAttributeId;
331
+ private get _customAttributeId();
245
332
  /**
246
333
  * Gets the RelationshipConstraintId instance.
247
334
  * @throws Error if the identifier is not an instance of RelationshipConstraintId.
248
335
  */
249
- get relationshipConstraintId(): RelationshipConstraintId;
336
+ private get _relationshipConstraintId();
337
+ /** Gets rule violations that were reported during validation. Returns an array of [[AnyDiagnostic]] if
338
+ * the errorNumber is ECEditingStatus.RuleViolation, otherwise undefined.
339
+ */
250
340
  get ruleViolations(): AnyDiagnostic[] | undefined;
341
+ /**
342
+ * Returns a readable string containing the ECEditingStatus along with the error message. Any
343
+ * innerError will also be appended.
344
+ * @returns
345
+ */
251
346
  toDebugString(): string;
252
- private _appendMessage;
253
347
  private generateMessage;
254
- private getRuleViolationMessage;
348
+ private _appendMessage;
349
+ private _getRuleViolationMessage;
350
+ private _createTaskErrorMessage;
351
+ private isSchemaItemIdentifier;
255
352
  }
256
353
  export {};
257
354
  //# sourceMappingURL=Exception.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Exception.d.ts","sourceRoot":"","sources":["../../../src/Editing/Exception.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Exception.d.ts","sourceRoot":"","sources":["../../../src/Editing/Exception.ts"],"names":[],"mappings":"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"}