@itwin/ecschema-editing 4.3.2 → 4.4.0-dev.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1 -1
- package/lib/cjs/Editing/ECClasses.d.ts +2 -0
- package/lib/cjs/Editing/ECClasses.d.ts.map +1 -1
- package/lib/cjs/Editing/ECClasses.js +23 -0
- package/lib/cjs/Editing/ECClasses.js.map +1 -1
- package/lib/cjs/Editing/Mutable/MutableArrayProperty.d.ts +10 -0
- package/lib/cjs/Editing/Mutable/MutableArrayProperty.d.ts.map +1 -0
- package/lib/cjs/Editing/Mutable/MutableArrayProperty.js +16 -0
- package/lib/cjs/Editing/Mutable/MutableArrayProperty.js.map +1 -0
- package/lib/cjs/Editing/Mutable/MutableClass.d.ts +2 -0
- package/lib/cjs/Editing/Mutable/MutableClass.d.ts.map +1 -1
- package/lib/cjs/Editing/Mutable/MutableClass.js.map +1 -1
- package/lib/cjs/Editing/Mutable/MutablePrimitiveOrEnumProperty.d.ts +13 -0
- package/lib/cjs/Editing/Mutable/MutablePrimitiveOrEnumProperty.d.ts.map +1 -0
- package/lib/cjs/Editing/Mutable/MutablePrimitiveOrEnumProperty.js +16 -0
- package/lib/cjs/Editing/Mutable/MutablePrimitiveOrEnumProperty.js.map +1 -0
- package/lib/cjs/Editing/Mutable/MutableProperty.d.ts +6 -1
- package/lib/cjs/Editing/Mutable/MutableProperty.d.ts.map +1 -1
- package/lib/cjs/Editing/Mutable/MutableProperty.js.map +1 -1
- package/lib/cjs/Merging/AnyPropertyMerger.d.ts +15 -0
- package/lib/cjs/Merging/AnyPropertyMerger.d.ts.map +1 -0
- package/lib/cjs/Merging/AnyPropertyMerger.js +71 -0
- package/lib/cjs/Merging/AnyPropertyMerger.js.map +1 -0
- package/lib/cjs/Merging/ArrayPropertyMerger.d.ts +32 -0
- package/lib/cjs/Merging/ArrayPropertyMerger.d.ts.map +1 -0
- package/lib/cjs/Merging/ArrayPropertyMerger.js +143 -0
- package/lib/cjs/Merging/ArrayPropertyMerger.js.map +1 -0
- package/lib/cjs/Merging/CAClassMerger.d.ts +6 -8
- package/lib/cjs/Merging/CAClassMerger.d.ts.map +1 -1
- package/lib/cjs/Merging/CAClassMerger.js +27 -10
- package/lib/cjs/Merging/CAClassMerger.js.map +1 -1
- package/lib/cjs/Merging/ClassMerger.d.ts +14 -6
- package/lib/cjs/Merging/ClassMerger.d.ts.map +1 -1
- package/lib/cjs/Merging/ClassMerger.js +133 -35
- package/lib/cjs/Merging/ClassMerger.js.map +1 -1
- package/lib/cjs/Merging/ClassPropertyMerger.d.ts +16 -0
- package/lib/cjs/Merging/ClassPropertyMerger.d.ts.map +1 -0
- package/lib/cjs/Merging/ClassPropertyMerger.js +90 -0
- package/lib/cjs/Merging/ClassPropertyMerger.js.map +1 -0
- package/lib/cjs/Merging/CustomAttributeMerger.d.ts +21 -0
- package/lib/cjs/Merging/CustomAttributeMerger.d.ts.map +1 -0
- package/lib/cjs/Merging/CustomAttributeMerger.js +51 -0
- package/lib/cjs/Merging/CustomAttributeMerger.js.map +1 -0
- package/lib/cjs/Merging/EntityClassMerger.d.ts +11 -0
- package/lib/cjs/Merging/EntityClassMerger.d.ts.map +1 -0
- package/lib/cjs/Merging/EntityClassMerger.js +26 -0
- package/lib/cjs/Merging/EntityClassMerger.js.map +1 -0
- package/lib/cjs/Merging/MixinMerger.d.ts +11 -0
- package/lib/cjs/Merging/MixinMerger.d.ts.map +1 -0
- package/lib/cjs/Merging/MixinMerger.js +38 -0
- package/lib/cjs/Merging/MixinMerger.js.map +1 -0
- package/lib/cjs/Merging/PrimitiveOrEnumPropertyMerger.d.ts +24 -0
- package/lib/cjs/Merging/PrimitiveOrEnumPropertyMerger.d.ts.map +1 -0
- package/lib/cjs/Merging/PrimitiveOrEnumPropertyMerger.js +106 -0
- package/lib/cjs/Merging/PrimitiveOrEnumPropertyMerger.js.map +1 -0
- package/lib/cjs/Merging/SchemaMerger.d.ts.map +1 -1
- package/lib/cjs/Merging/SchemaMerger.js +13 -3
- package/lib/cjs/Merging/SchemaMerger.js.map +1 -1
- package/lib/cjs/Merging/StructClassMerger.d.ts +10 -0
- package/lib/cjs/Merging/StructClassMerger.d.ts.map +1 -0
- package/lib/cjs/Merging/StructClassMerger.js +13 -0
- package/lib/cjs/Merging/StructClassMerger.js.map +1 -0
- package/lib/cjs/Merging/StructPropertyMerger.d.ts +11 -0
- package/lib/cjs/Merging/StructPropertyMerger.d.ts.map +1 -0
- package/lib/cjs/Merging/StructPropertyMerger.js +47 -0
- package/lib/cjs/Merging/StructPropertyMerger.js.map +1 -0
- package/package.json +15 -15
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { SchemaItemKey, StructProperty } from "@itwin/ecschema-metadata";
|
|
2
|
+
import { AnyPropertyMerger } from "./AnyPropertyMerger";
|
|
3
|
+
import { PropertyEditResults } from "../Editing/Editor";
|
|
4
|
+
/**
|
|
5
|
+
* @internal
|
|
6
|
+
*/
|
|
7
|
+
export declare class StructPropertyMerger extends AnyPropertyMerger<StructProperty> {
|
|
8
|
+
mergeAttributes(property: StructProperty, attributeName: string, attributeNewValue: any, attributeOldValue: any): Promise<PropertyEditResults | boolean>;
|
|
9
|
+
createFromProps(classKey: SchemaItemKey, property: StructProperty): Promise<PropertyEditResults>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=StructPropertyMerger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StructPropertyMerger.d.ts","sourceRoot":"","sources":["../../../src/Merging/StructPropertyMerger.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAe,cAAc,EAAuB,MAAM,0BAA0B,CAAC;AAC3G,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,iBAAiB,CAAC,cAAc,CAAC;IACnD,eAAe,CAAC,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,EAAE,iBAAiB,EAAE,GAAG,GAAG,OAAO,CAAC,mBAAmB,GAAG,OAAO,CAAC;IAcxJ,eAAe,CAAC,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAsBvH"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.StructPropertyMerger = void 0;
|
|
4
|
+
/*---------------------------------------------------------------------------------------------
|
|
5
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
6
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
7
|
+
*--------------------------------------------------------------------------------------------*/
|
|
8
|
+
const ecschema_metadata_1 = require("@itwin/ecschema-metadata");
|
|
9
|
+
const AnyPropertyMerger_1 = require("./AnyPropertyMerger");
|
|
10
|
+
/**
|
|
11
|
+
* @internal
|
|
12
|
+
*/
|
|
13
|
+
class StructPropertyMerger extends AnyPropertyMerger_1.AnyPropertyMerger {
|
|
14
|
+
async mergeAttributes(property, attributeName, attributeNewValue, attributeOldValue) {
|
|
15
|
+
const results = await super.mergeAttributes(property, attributeName, attributeNewValue, attributeOldValue);
|
|
16
|
+
if (results === true || this.isPropertyEditResults(results) && results.errorMessage !== undefined) {
|
|
17
|
+
return results;
|
|
18
|
+
}
|
|
19
|
+
switch (attributeName) {
|
|
20
|
+
case "structClass": {
|
|
21
|
+
return { errorMessage: `Changing the property '${property.name}' structClass is not supported.` };
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return false;
|
|
25
|
+
}
|
|
26
|
+
async createFromProps(classKey, property) {
|
|
27
|
+
const results = await super.getPropertyProps(property);
|
|
28
|
+
if (this.isPropertyEditResults(results) && results.errorMessage !== undefined) {
|
|
29
|
+
return results;
|
|
30
|
+
}
|
|
31
|
+
const itemKey = new ecschema_metadata_1.SchemaItemKey(property.structClass.name, this.context.sourceSchema.schemaKey.matches(property.structClass.schema.schemaKey)
|
|
32
|
+
? this.context.targetSchema.schemaKey
|
|
33
|
+
: property.structClass.schema.schemaKey);
|
|
34
|
+
const type = await this.context.targetSchema.lookupItem(itemKey);
|
|
35
|
+
if (type === undefined) {
|
|
36
|
+
return { errorMessage: `Unable to locate the struct class ${property.structClass.name} in the merged schema.` };
|
|
37
|
+
}
|
|
38
|
+
const props = {
|
|
39
|
+
...property.toJSON(),
|
|
40
|
+
...results,
|
|
41
|
+
typeName: type.fullName,
|
|
42
|
+
};
|
|
43
|
+
return this.context.editor.entities.createStructPropertyFromProps(classKey, property.name, type, props);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
exports.StructPropertyMerger = StructPropertyMerger;
|
|
47
|
+
//# sourceMappingURL=StructPropertyMerger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StructPropertyMerger.js","sourceRoot":"","sources":["../../../src/Merging/StructPropertyMerger.ts"],"names":[],"mappings":";;;AAAA;;;+FAG+F;AAC/F,gEAA2G;AAC3G,2DAAwD;AAGxD;;GAEG;AACH,MAAa,oBAAqB,SAAQ,qCAAiC;IACzD,KAAK,CAAC,eAAe,CAAC,QAAwB,EAAE,aAAqB,EAAE,iBAAsB,EAAE,iBAAsB;QACnI,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,eAAe,CAAC,QAAQ,EAAE,aAAa,EAAE,iBAAiB,EAAE,iBAAiB,CAAC,CAAC;QAC3G,IAAI,OAAO,KAAK,IAAI,IAAI,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE;YACjG,OAAO,OAAO,CAAC;SAChB;QAED,QAAQ,aAAa,EAAE;YACrB,KAAK,aAAa,CAAC,CAAC;gBAClB,OAAO,EAAE,YAAY,EAAE,0BAA0B,QAAQ,CAAC,IAAI,iCAAiC,EAAE,CAAC;aACnG;SACF;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEe,KAAK,CAAC,eAAe,CAAC,QAAuB,EAAE,QAAwB;QACrF,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QACvD,IAAI,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE;YAC7E,OAAO,OAAO,CAAC;SAChB;QAED,MAAM,OAAO,GAAG,IAAI,iCAAa,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC;YAC7I,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,SAAS;YACrC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CACxC,CAAC;QACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,UAAU,CAAc,OAAO,CAAC,CAAC;QAC9E,IAAI,IAAI,KAAK,SAAS,EAAE;YACtB,OAAO,EAAE,YAAY,EAAE,qCAAqC,QAAQ,CAAC,WAAW,CAAC,IAAI,wBAAwB,EAAE,CAAC;SACjH;QAED,MAAM,KAAK,GAAwB;YACjC,GAAG,QAAQ,CAAC,MAAM,EAAE;YACpB,GAAG,OAAO;YACV,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAC;QACF,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,6BAA6B,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1G,CAAC;CACF;AArCD,oDAqCC","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*--------------------------------------------------------------------------------------------*/\nimport { SchemaItemKey, StructClass, StructProperty, StructPropertyProps } from \"@itwin/ecschema-metadata\";\nimport { AnyPropertyMerger } from \"./AnyPropertyMerger\";\nimport { PropertyEditResults } from \"../Editing/Editor\";\n\n/**\n * @internal\n */\nexport class StructPropertyMerger extends AnyPropertyMerger<StructProperty> {\n public override async mergeAttributes(property: StructProperty, attributeName: string, attributeNewValue: any, attributeOldValue: any): Promise<PropertyEditResults | boolean> {\n const results = await super.mergeAttributes(property, attributeName, attributeNewValue, attributeOldValue);\n if (results === true || this.isPropertyEditResults(results) && results.errorMessage !== undefined) {\n return results;\n }\n\n switch (attributeName) {\n case \"structClass\": {\n return { errorMessage: `Changing the property '${property.name}' structClass is not supported.` };\n }\n }\n return false;\n }\n\n public override async createFromProps(classKey: SchemaItemKey, property: StructProperty): Promise<PropertyEditResults> {\n const results = await super.getPropertyProps(property);\n if (this.isPropertyEditResults(results) && results.errorMessage !== undefined) {\n return results;\n }\n\n const itemKey = new SchemaItemKey(property.structClass.name, this.context.sourceSchema.schemaKey.matches(property.structClass.schema.schemaKey)\n ? this.context.targetSchema.schemaKey\n : property.structClass.schema.schemaKey,\n );\n const type = await this.context.targetSchema.lookupItem<StructClass>(itemKey);\n if (type === undefined) {\n return { errorMessage: `Unable to locate the struct class ${property.structClass.name} in the merged schema.` };\n }\n\n const props: StructPropertyProps = {\n ...property.toJSON(),\n ...results,\n typeName: type.fullName,\n };\n return this.context.editor.entities.createStructPropertyFromProps(classKey, property.name, type, props);\n }\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@itwin/ecschema-editing",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.4.0-dev.10",
|
|
4
4
|
"description": "ECSchema editing and validation API",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "lib/cjs/ecschema-editing.js",
|
|
@@ -22,36 +22,36 @@
|
|
|
22
22
|
"url": "http://www.bentley.com"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
|
-
"@bentley/units-schema": "^1.0.
|
|
25
|
+
"@bentley/units-schema": "^1.0.7",
|
|
26
26
|
"@itwin/eslint-plugin": "4.0.0-dev.44",
|
|
27
27
|
"@types/almost-equal": "1.1.0",
|
|
28
28
|
"@types/benchmark": "^2.1.0",
|
|
29
29
|
"@types/chai": "4.3.1",
|
|
30
30
|
"@types/chai-as-promised": "^7",
|
|
31
|
-
"@types/mocha": "^
|
|
31
|
+
"@types/mocha": "^10.0.6",
|
|
32
32
|
"@types/node": "~18.16.20",
|
|
33
|
-
"@types/sinon": "^
|
|
33
|
+
"@types/sinon": "^17.0.2",
|
|
34
34
|
"@xmldom/xmldom": "~0.8.5",
|
|
35
35
|
"benchmark": "^2.1.4",
|
|
36
36
|
"chai": "^4.3.10",
|
|
37
|
-
"chai-as-promised": "^7",
|
|
37
|
+
"chai-as-promised": "^7.1.1",
|
|
38
38
|
"cpx2": "^3.0.0",
|
|
39
39
|
"eslint": "^8.44.0",
|
|
40
|
-
"mocha": "^10.
|
|
40
|
+
"mocha": "^10.2.0",
|
|
41
41
|
"nyc": "^15.1.0",
|
|
42
42
|
"rimraf": "^3.0.2",
|
|
43
|
-
"sinon": "^
|
|
43
|
+
"sinon": "^17.0.1",
|
|
44
44
|
"typescript": "~5.0.2",
|
|
45
|
-
"@itwin/build-tools": "4.
|
|
46
|
-
"@itwin/core-
|
|
47
|
-
"@itwin/
|
|
48
|
-
"@itwin/core-
|
|
49
|
-
"@itwin/
|
|
45
|
+
"@itwin/build-tools": "4.4.0-dev.10",
|
|
46
|
+
"@itwin/core-quantity": "4.4.0-dev.10",
|
|
47
|
+
"@itwin/ecschema-metadata": "4.4.0-dev.10",
|
|
48
|
+
"@itwin/core-bentley": "4.4.0-dev.10",
|
|
49
|
+
"@itwin/core-common": "4.4.0-dev.10"
|
|
50
50
|
},
|
|
51
51
|
"peerDependencies": {
|
|
52
|
-
"@itwin/core-bentley": "^4.
|
|
53
|
-
"@itwin/core-quantity": "^4.
|
|
54
|
-
"@itwin/ecschema-metadata": "^4.
|
|
52
|
+
"@itwin/core-bentley": "^4.4.0-dev.10",
|
|
53
|
+
"@itwin/core-quantity": "^4.4.0-dev.10",
|
|
54
|
+
"@itwin/ecschema-metadata": "^4.4.0-dev.10"
|
|
55
55
|
},
|
|
56
56
|
"nyc": {
|
|
57
57
|
"extends": "./node_modules/@itwin/build-tools/.nycrc"
|