@xeokit/xeokit-sdk 2.4.0-alpha-40 → 2.4.0-alpha-42
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/dist/xeokit-sdk.cjs.js
CHANGED
|
@@ -103482,21 +103482,23 @@ class MetaScene {
|
|
|
103482
103482
|
|
|
103483
103483
|
// Create global Property Sets
|
|
103484
103484
|
|
|
103485
|
-
|
|
103486
|
-
|
|
103487
|
-
|
|
103488
|
-
|
|
103489
|
-
propertySet
|
|
103490
|
-
|
|
103491
|
-
|
|
103492
|
-
|
|
103493
|
-
|
|
103494
|
-
|
|
103495
|
-
|
|
103496
|
-
|
|
103485
|
+
if (metaModelData.propertySets) {
|
|
103486
|
+
for (let i = 0, len = metaModelData.propertySets.length; i < len; i++) {
|
|
103487
|
+
const propertySetData = metaModelData.propertySets[i];
|
|
103488
|
+
let propertySet = this.propertySets[propertySetData.id];
|
|
103489
|
+
if (!propertySet) {
|
|
103490
|
+
propertySet = new PropertySet({
|
|
103491
|
+
id: propertySetData.id,
|
|
103492
|
+
originalSystemId: propertySetData.originalSystemId,
|
|
103493
|
+
type: propertySetData.type,
|
|
103494
|
+
name: propertySetData.name,
|
|
103495
|
+
properties: propertySetData.properties
|
|
103496
|
+
});
|
|
103497
|
+
this.propertySets[propertySet.id] = propertySet;
|
|
103498
|
+
}
|
|
103499
|
+
propertySet.metaModels.push(metaModel);
|
|
103500
|
+
metaModel.propertySets.push(propertySet);
|
|
103497
103501
|
}
|
|
103498
|
-
propertySet.metaModels.push(metaModel);
|
|
103499
|
-
metaModel.propertySets.push(propertySet);
|
|
103500
103502
|
}
|
|
103501
103503
|
|
|
103502
103504
|
// Create MetaObjects
|
|
@@ -103504,27 +103506,29 @@ class MetaScene {
|
|
|
103504
103506
|
// Save root MetaObjects on MetaModel
|
|
103505
103507
|
// Save root MetaObjects on MetaScene
|
|
103506
103508
|
|
|
103507
|
-
|
|
103508
|
-
|
|
103509
|
-
|
|
103510
|
-
|
|
103511
|
-
|
|
103512
|
-
|
|
103513
|
-
metaObject
|
|
103514
|
-
|
|
103515
|
-
|
|
103516
|
-
|
|
103517
|
-
|
|
103518
|
-
|
|
103519
|
-
|
|
103520
|
-
|
|
103521
|
-
|
|
103522
|
-
|
|
103523
|
-
|
|
103524
|
-
|
|
103525
|
-
|
|
103509
|
+
if (metaModelData.metaObjects) {
|
|
103510
|
+
for (let i = 0, len = metaModelData.metaObjects.length; i < len; i++) {
|
|
103511
|
+
const metaObjectData = metaModelData.metaObjects[i];
|
|
103512
|
+
const type = metaObjectData.type;
|
|
103513
|
+
const id = metaObjectData.id;
|
|
103514
|
+
let metaObject = this.metaObjects[id];
|
|
103515
|
+
if (!metaObject) {
|
|
103516
|
+
metaObject = new MetaObject({
|
|
103517
|
+
id,
|
|
103518
|
+
parentId: metaObjectData.parent,
|
|
103519
|
+
type,
|
|
103520
|
+
name: metaObjectData.name,
|
|
103521
|
+
propertySetIds: metaObjectData.propertySetIds
|
|
103522
|
+
});
|
|
103523
|
+
this.metaObjects[id] = metaObject;
|
|
103524
|
+
}
|
|
103525
|
+
metaObject.metaModels.push(metaModel);
|
|
103526
|
+
if (!metaObjectData.parent) {
|
|
103527
|
+
metaModel.rootMetaObjects.push(metaObject);
|
|
103528
|
+
this.rootMetaObjects[id] = metaObject;
|
|
103529
|
+
}
|
|
103530
|
+
metaModel.metaObjects.push(metaObject);
|
|
103526
103531
|
}
|
|
103527
|
-
metaModel.metaObjects.push(metaObject);
|
|
103528
103532
|
}
|
|
103529
103533
|
|
|
103530
103534
|
// Re-link entire MetaObject parent/child hierarchy
|
|
@@ -103562,39 +103566,45 @@ class MetaScene {
|
|
|
103562
103566
|
}
|
|
103563
103567
|
|
|
103564
103568
|
_globalizeIDs(modelId, metaModelData, options) {
|
|
103569
|
+
|
|
103565
103570
|
const globalize = !!options.globalizeObjectIds;
|
|
103566
|
-
for (let i = 0, len = metaModelData.metaObjects.length; i < len; i++) {
|
|
103567
|
-
const metaObjectData = metaModelData.metaObjects[i];
|
|
103568
103571
|
|
|
103569
|
-
|
|
103572
|
+
if (metaModelData.metaObjects) {
|
|
103573
|
+
for (let i = 0, len = metaModelData.metaObjects.length; i < len; i++) {
|
|
103574
|
+
const metaObjectData = metaModelData.metaObjects[i];
|
|
103570
103575
|
|
|
103571
|
-
|
|
103572
|
-
metaObjectData.originalParentSystemId = metaObjectData.parent;
|
|
103573
|
-
if (globalize) {
|
|
103574
|
-
metaObjectData.id = math.globalizeObjectId(modelId, metaObject.id);
|
|
103575
|
-
metaObjectData.parent = math.globalizeObjectId(modelId, metaObject.parent);
|
|
103576
|
-
}
|
|
103576
|
+
// Globalize MetaObject IDs and parent IDs
|
|
103577
103577
|
|
|
103578
|
-
|
|
103578
|
+
metaObjectData.originalSystemId = metaObjectData.id;
|
|
103579
|
+
metaObjectData.originalParentSystemId = metaObjectData.parent;
|
|
103580
|
+
if (globalize) {
|
|
103581
|
+
metaObjectData.id = math.globalizeObjectId(modelId, metaObject.id);
|
|
103582
|
+
metaObjectData.parent = math.globalizeObjectId(modelId, metaObject.parent);
|
|
103583
|
+
}
|
|
103579
103584
|
|
|
103580
|
-
|
|
103581
|
-
|
|
103582
|
-
const
|
|
103583
|
-
|
|
103584
|
-
propertySetGlobalIds
|
|
103585
|
+
// Globalize MetaObject property set IDs
|
|
103586
|
+
|
|
103587
|
+
const propertySetIds = metaObjectData.propertySetIds;
|
|
103588
|
+
if (propertySetIds) {
|
|
103589
|
+
const propertySetGlobalIds = [];
|
|
103590
|
+
for (let j = 0, lenj = propertySetIds.length; j < lenj; j++) {
|
|
103591
|
+
propertySetGlobalIds.push(math.globalizeObjectId(modelId, propertySetIds[j]));
|
|
103592
|
+
}
|
|
103593
|
+
metaObjectData.propertySetIds = propertySetGlobalIds;
|
|
103594
|
+
metaObjectData.originalSystemPropertySetIds = propertySetIds;
|
|
103585
103595
|
}
|
|
103586
|
-
metaObjectData.propertySetIds = propertySetGlobalIds;
|
|
103587
|
-
metaObjectData.originalSystemPropertySetIds = propertySetIds;
|
|
103588
103596
|
}
|
|
103589
103597
|
}
|
|
103590
103598
|
|
|
103591
103599
|
// Globalize global PropertySet IDs
|
|
103592
103600
|
|
|
103593
|
-
|
|
103594
|
-
|
|
103595
|
-
|
|
103596
|
-
|
|
103597
|
-
|
|
103601
|
+
if (metaModelData.propertySets) {
|
|
103602
|
+
for (let i = 0, len = metaModelData.propertySets.length; i < len; i++) {
|
|
103603
|
+
const propertySet = metaModelData.propertySets[i];
|
|
103604
|
+
propertySet.originalSystemId = propertySet.id;
|
|
103605
|
+
if (globalize) {
|
|
103606
|
+
propertySet.id = math.globalizeObjectId(modelId, propertySet.id);
|
|
103607
|
+
}
|
|
103598
103608
|
}
|
|
103599
103609
|
}
|
|
103600
103610
|
}
|
|
@@ -103615,41 +103625,45 @@ class MetaScene {
|
|
|
103615
103625
|
|
|
103616
103626
|
// Remove global PropertySets
|
|
103617
103627
|
|
|
103618
|
-
|
|
103619
|
-
|
|
103620
|
-
|
|
103621
|
-
|
|
103622
|
-
|
|
103623
|
-
|
|
103624
|
-
|
|
103625
|
-
|
|
103626
|
-
|
|
103628
|
+
if (metaModel.propertySets) {
|
|
103629
|
+
for (let i = 0, len = metaModel.propertySets.length; i < len; i++) {
|
|
103630
|
+
const propertySet = metaModel.propertySets[i];
|
|
103631
|
+
if (propertySet.metaModels.length === 1) { // Property set owned by one model, delete
|
|
103632
|
+
delete this.propertySets[propertySet.id];
|
|
103633
|
+
} else {
|
|
103634
|
+
const newMetaModels = [];
|
|
103635
|
+
for (let j = 0, lenj = propertySet.metaModels.length; j < lenj; j++) {
|
|
103636
|
+
if (propertySet.metaModels[i].id !== id) {
|
|
103637
|
+
newMetaModels.push(propertySet.metaModels[i]);
|
|
103638
|
+
}
|
|
103627
103639
|
}
|
|
103640
|
+
propertySet.metaModels = newMetaModels;
|
|
103628
103641
|
}
|
|
103629
|
-
propertySet.metaModels = newMetaModels;
|
|
103630
103642
|
}
|
|
103631
103643
|
}
|
|
103632
103644
|
|
|
103633
103645
|
// Remove MetaObjects
|
|
103634
103646
|
|
|
103635
|
-
|
|
103636
|
-
|
|
103637
|
-
|
|
103638
|
-
|
|
103639
|
-
|
|
103640
|
-
|
|
103641
|
-
|
|
103642
|
-
|
|
103643
|
-
|
|
103644
|
-
|
|
103645
|
-
|
|
103646
|
-
|
|
103647
|
-
|
|
103648
|
-
|
|
103649
|
-
|
|
103647
|
+
if (metaModel.metaObjects) {
|
|
103648
|
+
for (let i = 0, len = metaModel.metaObjects.length; i < len; i++) {
|
|
103649
|
+
const metaObject = metaModel.metaObjects[i];
|
|
103650
|
+
metaObject.type;
|
|
103651
|
+
const id = metaObject.id;
|
|
103652
|
+
if (metaObject.metaModels.length === 1) { // MetaObject owned by one model, delete
|
|
103653
|
+
delete this.metaObjects[id];
|
|
103654
|
+
if (!metaObject.parent) {
|
|
103655
|
+
delete this.rootMetaObjects[id];
|
|
103656
|
+
}
|
|
103657
|
+
} else {
|
|
103658
|
+
const newMetaModels = [];
|
|
103659
|
+
const metaModelId = metaModel.id;
|
|
103660
|
+
for (let i = 0, len = metaObject.metaModels.length; i < len; i++) {
|
|
103661
|
+
if (metaObject.metaModels[i].id !== metaModelId) {
|
|
103662
|
+
newMetaModels.push(metaObject.metaModels[i]);
|
|
103663
|
+
}
|
|
103650
103664
|
}
|
|
103665
|
+
metaObject.metaModels = newMetaModels;
|
|
103651
103666
|
}
|
|
103652
|
-
metaObject.metaModels = newMetaModels;
|
|
103653
103667
|
}
|
|
103654
103668
|
}
|
|
103655
103669
|
|
package/dist/xeokit-sdk.es.js
CHANGED
|
@@ -103478,21 +103478,23 @@ class MetaScene {
|
|
|
103478
103478
|
|
|
103479
103479
|
// Create global Property Sets
|
|
103480
103480
|
|
|
103481
|
-
|
|
103482
|
-
|
|
103483
|
-
|
|
103484
|
-
|
|
103485
|
-
propertySet
|
|
103486
|
-
|
|
103487
|
-
|
|
103488
|
-
|
|
103489
|
-
|
|
103490
|
-
|
|
103491
|
-
|
|
103492
|
-
|
|
103481
|
+
if (metaModelData.propertySets) {
|
|
103482
|
+
for (let i = 0, len = metaModelData.propertySets.length; i < len; i++) {
|
|
103483
|
+
const propertySetData = metaModelData.propertySets[i];
|
|
103484
|
+
let propertySet = this.propertySets[propertySetData.id];
|
|
103485
|
+
if (!propertySet) {
|
|
103486
|
+
propertySet = new PropertySet({
|
|
103487
|
+
id: propertySetData.id,
|
|
103488
|
+
originalSystemId: propertySetData.originalSystemId,
|
|
103489
|
+
type: propertySetData.type,
|
|
103490
|
+
name: propertySetData.name,
|
|
103491
|
+
properties: propertySetData.properties
|
|
103492
|
+
});
|
|
103493
|
+
this.propertySets[propertySet.id] = propertySet;
|
|
103494
|
+
}
|
|
103495
|
+
propertySet.metaModels.push(metaModel);
|
|
103496
|
+
metaModel.propertySets.push(propertySet);
|
|
103493
103497
|
}
|
|
103494
|
-
propertySet.metaModels.push(metaModel);
|
|
103495
|
-
metaModel.propertySets.push(propertySet);
|
|
103496
103498
|
}
|
|
103497
103499
|
|
|
103498
103500
|
// Create MetaObjects
|
|
@@ -103500,27 +103502,29 @@ class MetaScene {
|
|
|
103500
103502
|
// Save root MetaObjects on MetaModel
|
|
103501
103503
|
// Save root MetaObjects on MetaScene
|
|
103502
103504
|
|
|
103503
|
-
|
|
103504
|
-
|
|
103505
|
-
|
|
103506
|
-
|
|
103507
|
-
|
|
103508
|
-
|
|
103509
|
-
metaObject
|
|
103510
|
-
|
|
103511
|
-
|
|
103512
|
-
|
|
103513
|
-
|
|
103514
|
-
|
|
103515
|
-
|
|
103516
|
-
|
|
103517
|
-
|
|
103518
|
-
|
|
103519
|
-
|
|
103520
|
-
|
|
103521
|
-
|
|
103505
|
+
if (metaModelData.metaObjects) {
|
|
103506
|
+
for (let i = 0, len = metaModelData.metaObjects.length; i < len; i++) {
|
|
103507
|
+
const metaObjectData = metaModelData.metaObjects[i];
|
|
103508
|
+
const type = metaObjectData.type;
|
|
103509
|
+
const id = metaObjectData.id;
|
|
103510
|
+
let metaObject = this.metaObjects[id];
|
|
103511
|
+
if (!metaObject) {
|
|
103512
|
+
metaObject = new MetaObject({
|
|
103513
|
+
id,
|
|
103514
|
+
parentId: metaObjectData.parent,
|
|
103515
|
+
type,
|
|
103516
|
+
name: metaObjectData.name,
|
|
103517
|
+
propertySetIds: metaObjectData.propertySetIds
|
|
103518
|
+
});
|
|
103519
|
+
this.metaObjects[id] = metaObject;
|
|
103520
|
+
}
|
|
103521
|
+
metaObject.metaModels.push(metaModel);
|
|
103522
|
+
if (!metaObjectData.parent) {
|
|
103523
|
+
metaModel.rootMetaObjects.push(metaObject);
|
|
103524
|
+
this.rootMetaObjects[id] = metaObject;
|
|
103525
|
+
}
|
|
103526
|
+
metaModel.metaObjects.push(metaObject);
|
|
103522
103527
|
}
|
|
103523
|
-
metaModel.metaObjects.push(metaObject);
|
|
103524
103528
|
}
|
|
103525
103529
|
|
|
103526
103530
|
// Re-link entire MetaObject parent/child hierarchy
|
|
@@ -103558,39 +103562,45 @@ class MetaScene {
|
|
|
103558
103562
|
}
|
|
103559
103563
|
|
|
103560
103564
|
_globalizeIDs(modelId, metaModelData, options) {
|
|
103565
|
+
|
|
103561
103566
|
const globalize = !!options.globalizeObjectIds;
|
|
103562
|
-
for (let i = 0, len = metaModelData.metaObjects.length; i < len; i++) {
|
|
103563
|
-
const metaObjectData = metaModelData.metaObjects[i];
|
|
103564
103567
|
|
|
103565
|
-
|
|
103568
|
+
if (metaModelData.metaObjects) {
|
|
103569
|
+
for (let i = 0, len = metaModelData.metaObjects.length; i < len; i++) {
|
|
103570
|
+
const metaObjectData = metaModelData.metaObjects[i];
|
|
103566
103571
|
|
|
103567
|
-
|
|
103568
|
-
metaObjectData.originalParentSystemId = metaObjectData.parent;
|
|
103569
|
-
if (globalize) {
|
|
103570
|
-
metaObjectData.id = math.globalizeObjectId(modelId, metaObject.id);
|
|
103571
|
-
metaObjectData.parent = math.globalizeObjectId(modelId, metaObject.parent);
|
|
103572
|
-
}
|
|
103572
|
+
// Globalize MetaObject IDs and parent IDs
|
|
103573
103573
|
|
|
103574
|
-
|
|
103574
|
+
metaObjectData.originalSystemId = metaObjectData.id;
|
|
103575
|
+
metaObjectData.originalParentSystemId = metaObjectData.parent;
|
|
103576
|
+
if (globalize) {
|
|
103577
|
+
metaObjectData.id = math.globalizeObjectId(modelId, metaObject.id);
|
|
103578
|
+
metaObjectData.parent = math.globalizeObjectId(modelId, metaObject.parent);
|
|
103579
|
+
}
|
|
103575
103580
|
|
|
103576
|
-
|
|
103577
|
-
|
|
103578
|
-
const
|
|
103579
|
-
|
|
103580
|
-
propertySetGlobalIds
|
|
103581
|
+
// Globalize MetaObject property set IDs
|
|
103582
|
+
|
|
103583
|
+
const propertySetIds = metaObjectData.propertySetIds;
|
|
103584
|
+
if (propertySetIds) {
|
|
103585
|
+
const propertySetGlobalIds = [];
|
|
103586
|
+
for (let j = 0, lenj = propertySetIds.length; j < lenj; j++) {
|
|
103587
|
+
propertySetGlobalIds.push(math.globalizeObjectId(modelId, propertySetIds[j]));
|
|
103588
|
+
}
|
|
103589
|
+
metaObjectData.propertySetIds = propertySetGlobalIds;
|
|
103590
|
+
metaObjectData.originalSystemPropertySetIds = propertySetIds;
|
|
103581
103591
|
}
|
|
103582
|
-
metaObjectData.propertySetIds = propertySetGlobalIds;
|
|
103583
|
-
metaObjectData.originalSystemPropertySetIds = propertySetIds;
|
|
103584
103592
|
}
|
|
103585
103593
|
}
|
|
103586
103594
|
|
|
103587
103595
|
// Globalize global PropertySet IDs
|
|
103588
103596
|
|
|
103589
|
-
|
|
103590
|
-
|
|
103591
|
-
|
|
103592
|
-
|
|
103593
|
-
|
|
103597
|
+
if (metaModelData.propertySets) {
|
|
103598
|
+
for (let i = 0, len = metaModelData.propertySets.length; i < len; i++) {
|
|
103599
|
+
const propertySet = metaModelData.propertySets[i];
|
|
103600
|
+
propertySet.originalSystemId = propertySet.id;
|
|
103601
|
+
if (globalize) {
|
|
103602
|
+
propertySet.id = math.globalizeObjectId(modelId, propertySet.id);
|
|
103603
|
+
}
|
|
103594
103604
|
}
|
|
103595
103605
|
}
|
|
103596
103606
|
}
|
|
@@ -103611,41 +103621,45 @@ class MetaScene {
|
|
|
103611
103621
|
|
|
103612
103622
|
// Remove global PropertySets
|
|
103613
103623
|
|
|
103614
|
-
|
|
103615
|
-
|
|
103616
|
-
|
|
103617
|
-
|
|
103618
|
-
|
|
103619
|
-
|
|
103620
|
-
|
|
103621
|
-
|
|
103622
|
-
|
|
103624
|
+
if (metaModel.propertySets) {
|
|
103625
|
+
for (let i = 0, len = metaModel.propertySets.length; i < len; i++) {
|
|
103626
|
+
const propertySet = metaModel.propertySets[i];
|
|
103627
|
+
if (propertySet.metaModels.length === 1) { // Property set owned by one model, delete
|
|
103628
|
+
delete this.propertySets[propertySet.id];
|
|
103629
|
+
} else {
|
|
103630
|
+
const newMetaModels = [];
|
|
103631
|
+
for (let j = 0, lenj = propertySet.metaModels.length; j < lenj; j++) {
|
|
103632
|
+
if (propertySet.metaModels[i].id !== id) {
|
|
103633
|
+
newMetaModels.push(propertySet.metaModels[i]);
|
|
103634
|
+
}
|
|
103623
103635
|
}
|
|
103636
|
+
propertySet.metaModels = newMetaModels;
|
|
103624
103637
|
}
|
|
103625
|
-
propertySet.metaModels = newMetaModels;
|
|
103626
103638
|
}
|
|
103627
103639
|
}
|
|
103628
103640
|
|
|
103629
103641
|
// Remove MetaObjects
|
|
103630
103642
|
|
|
103631
|
-
|
|
103632
|
-
|
|
103633
|
-
|
|
103634
|
-
|
|
103635
|
-
|
|
103636
|
-
|
|
103637
|
-
|
|
103638
|
-
|
|
103639
|
-
|
|
103640
|
-
|
|
103641
|
-
|
|
103642
|
-
|
|
103643
|
-
|
|
103644
|
-
|
|
103645
|
-
|
|
103643
|
+
if (metaModel.metaObjects) {
|
|
103644
|
+
for (let i = 0, len = metaModel.metaObjects.length; i < len; i++) {
|
|
103645
|
+
const metaObject = metaModel.metaObjects[i];
|
|
103646
|
+
metaObject.type;
|
|
103647
|
+
const id = metaObject.id;
|
|
103648
|
+
if (metaObject.metaModels.length === 1) { // MetaObject owned by one model, delete
|
|
103649
|
+
delete this.metaObjects[id];
|
|
103650
|
+
if (!metaObject.parent) {
|
|
103651
|
+
delete this.rootMetaObjects[id];
|
|
103652
|
+
}
|
|
103653
|
+
} else {
|
|
103654
|
+
const newMetaModels = [];
|
|
103655
|
+
const metaModelId = metaModel.id;
|
|
103656
|
+
for (let i = 0, len = metaObject.metaModels.length; i < len; i++) {
|
|
103657
|
+
if (metaObject.metaModels[i].id !== metaModelId) {
|
|
103658
|
+
newMetaModels.push(metaObject.metaModels[i]);
|
|
103659
|
+
}
|
|
103646
103660
|
}
|
|
103661
|
+
metaObject.metaModels = newMetaModels;
|
|
103647
103662
|
}
|
|
103648
|
-
metaObject.metaModels = newMetaModels;
|
|
103649
103663
|
}
|
|
103650
103664
|
}
|
|
103651
103665
|
|
package/dist/xeokit-sdk.es5.js
CHANGED
|
@@ -23448,26 +23448,26 @@ value=value||"qwerty";if(value!=="qwerty"&&value!=="azerty"){this.error("Unsuppo
|
|
|
23448
23448
|
* @returns {MetaModel} The new MetaModel.
|
|
23449
23449
|
*/},{key:"createMetaModel",value:function createMetaModel(modelId,metaModelData){var options=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};this._globalizeIDs(modelId,metaModelData,options);// Create MetaModel
|
|
23450
23450
|
var metaModel=new MetaModel({metaScene:this,id:modelId,projectId:metaModelData.projectId||"none",revisionId:metaModelData.revisionId||"none",author:metaModelData.author||"none",createdAt:metaModelData.createdAt||"none",creatingApplication:metaModelData.creatingApplication||"none",schema:metaModelData.schema||"none",propertySets:[]});this.metaModels[modelId]=metaModel;// Create global Property Sets
|
|
23451
|
-
for(var _i542=0,len=metaModelData.propertySets.length;_i542<len;_i542++){var propertySetData=metaModelData.propertySets[_i542];var propertySet=this.propertySets[propertySetData.id];if(!propertySet){propertySet=new PropertySet({id:propertySetData.id,originalSystemId:propertySetData.originalSystemId,type:propertySetData.type,name:propertySetData.name,properties:propertySetData.properties});this.propertySets[propertySet.id]=propertySet;}propertySet.metaModels.push(metaModel);metaModel.propertySets.push(propertySet);}// Create MetaObjects
|
|
23451
|
+
if(metaModelData.propertySets){for(var _i542=0,len=metaModelData.propertySets.length;_i542<len;_i542++){var propertySetData=metaModelData.propertySets[_i542];var propertySet=this.propertySets[propertySetData.id];if(!propertySet){propertySet=new PropertySet({id:propertySetData.id,originalSystemId:propertySetData.originalSystemId,type:propertySetData.type,name:propertySetData.name,properties:propertySetData.properties});this.propertySets[propertySet.id]=propertySet;}propertySet.metaModels.push(metaModel);metaModel.propertySets.push(propertySet);}}// Create MetaObjects
|
|
23452
23452
|
// Don't re-create reused MetaObjects
|
|
23453
23453
|
// Save root MetaObjects on MetaModel
|
|
23454
23454
|
// Save root MetaObjects on MetaScene
|
|
23455
|
-
for(var _i543=0,_len116=metaModelData.metaObjects.length;_i543<_len116;_i543++){var metaObjectData=metaModelData.metaObjects[_i543];var type=metaObjectData.type;var id=metaObjectData.id;var _metaObject4=this.metaObjects[id];if(!_metaObject4){_metaObject4=new MetaObject({id:id,parentId:metaObjectData.parent,type:type,name:metaObjectData.name,propertySetIds:metaObjectData.propertySetIds});this.metaObjects[id]=_metaObject4;}_metaObject4.metaModels.push(metaModel);if(!metaObjectData.parent){metaModel.rootMetaObjects.push(_metaObject4);this.rootMetaObjects[id]=_metaObject4;}metaModel.metaObjects.push(_metaObject4);}// Re-link entire MetaObject parent/child hierarchy
|
|
23455
|
+
if(metaModelData.metaObjects){for(var _i543=0,_len116=metaModelData.metaObjects.length;_i543<_len116;_i543++){var metaObjectData=metaModelData.metaObjects[_i543];var type=metaObjectData.type;var id=metaObjectData.id;var _metaObject4=this.metaObjects[id];if(!_metaObject4){_metaObject4=new MetaObject({id:id,parentId:metaObjectData.parent,type:type,name:metaObjectData.name,propertySetIds:metaObjectData.propertySetIds});this.metaObjects[id]=_metaObject4;}_metaObject4.metaModels.push(metaModel);if(!metaObjectData.parent){metaModel.rootMetaObjects.push(_metaObject4);this.rootMetaObjects[id]=_metaObject4;}metaModel.metaObjects.push(_metaObject4);}}// Re-link entire MetaObject parent/child hierarchy
|
|
23456
23456
|
for(var objectId in this.metaObjects){var _metaObject5=this.metaObjects[objectId];if(_metaObject5.children){_metaObject5.children=[];}}for(var _objectId in this.metaObjects){var _metaObject6=this.metaObjects[_objectId];if(_metaObject6.parentId){var parentMetaObject=this.metaObjects[_metaObject6.parentId];if(parentMetaObject){_metaObject6.parent=parentMetaObject;(parentMetaObject.children||(parentMetaObject.children=[])).push(_metaObject6);}}}// Create MetaObjects-by-type lookup
|
|
23457
|
-
this.metaObjectsByType={};for(var _objectId2 in this.metaObjects){var _metaObject7=this.metaObjects[_objectId2];var _type=_metaObject7.type;(this.metaObjectsByType[_type]||(this.metaObjectsByType[_type]={}))[_objectId2]=_metaObject7;}this.fire("metaModelCreated",modelId);return metaModel;}},{key:"_globalizeIDs",value:function _globalizeIDs(modelId,metaModelData,options){var globalize=!!options.globalizeObjectIds;for(var _i544=0,len=metaModelData.metaObjects.length;_i544<len;_i544++){var metaObjectData=metaModelData.metaObjects[_i544];// Globalize MetaObject IDs and parent IDs
|
|
23457
|
+
this.metaObjectsByType={};for(var _objectId2 in this.metaObjects){var _metaObject7=this.metaObjects[_objectId2];var _type=_metaObject7.type;(this.metaObjectsByType[_type]||(this.metaObjectsByType[_type]={}))[_objectId2]=_metaObject7;}this.fire("metaModelCreated",modelId);return metaModel;}},{key:"_globalizeIDs",value:function _globalizeIDs(modelId,metaModelData,options){var globalize=!!options.globalizeObjectIds;if(metaModelData.metaObjects){for(var _i544=0,len=metaModelData.metaObjects.length;_i544<len;_i544++){var metaObjectData=metaModelData.metaObjects[_i544];// Globalize MetaObject IDs and parent IDs
|
|
23458
23458
|
metaObjectData.originalSystemId=metaObjectData.id;metaObjectData.originalParentSystemId=metaObjectData.parent;if(globalize){metaObjectData.id=math.globalizeObjectId(modelId,metaObject.id);metaObjectData.parent=math.globalizeObjectId(modelId,metaObject.parent);}// Globalize MetaObject property set IDs
|
|
23459
|
-
var propertySetIds=metaObjectData.propertySetIds;if(propertySetIds){var propertySetGlobalIds=[];for(var _j5=0,lenj=propertySetIds.length;_j5<lenj;_j5++){propertySetGlobalIds.push(math.globalizeObjectId(modelId,propertySetIds[_j5]));}metaObjectData.propertySetIds=propertySetGlobalIds;metaObjectData.originalSystemPropertySetIds=propertySetIds;}}// Globalize global PropertySet IDs
|
|
23460
|
-
for(var _i545=0,_len117=metaModelData.propertySets.length;_i545<_len117;_i545++){var propertySet=metaModelData.propertySets[_i545];propertySet.originalSystemId=propertySet.id;if(globalize){propertySet.id=math.globalizeObjectId(modelId,propertySet.id);}}}/**
|
|
23459
|
+
var propertySetIds=metaObjectData.propertySetIds;if(propertySetIds){var propertySetGlobalIds=[];for(var _j5=0,lenj=propertySetIds.length;_j5<lenj;_j5++){propertySetGlobalIds.push(math.globalizeObjectId(modelId,propertySetIds[_j5]));}metaObjectData.propertySetIds=propertySetGlobalIds;metaObjectData.originalSystemPropertySetIds=propertySetIds;}}}// Globalize global PropertySet IDs
|
|
23460
|
+
if(metaModelData.propertySets){for(var _i545=0,_len117=metaModelData.propertySets.length;_i545<_len117;_i545++){var propertySet=metaModelData.propertySets[_i545];propertySet.originalSystemId=propertySet.id;if(globalize){propertySet.id=math.globalizeObjectId(modelId,propertySet.id);}}}}/**
|
|
23461
23461
|
* Removes a {@link MetaModel} from this MetaScene.
|
|
23462
23462
|
*
|
|
23463
23463
|
* Fires a "metaModelDestroyed" event with the value of the {@link MetaModel#id}.
|
|
23464
23464
|
*
|
|
23465
23465
|
* @param {String} id ID of the target {@link MetaModel}.
|
|
23466
23466
|
*/},{key:"destroyMetaModel",value:function destroyMetaModel(id){var metaModel=this.metaModels[id];if(!metaModel){return;}// Remove global PropertySets
|
|
23467
|
-
for(var _i546=0,len=metaModel.propertySets.length;_i546<len;_i546++){var propertySet=metaModel.propertySets[_i546];if(propertySet.metaModels.length===1){// Property set owned by one model, delete
|
|
23468
|
-
delete this.propertySets[propertySet.id];}else{var newMetaModels=[];for(var _j6=0,lenj=propertySet.metaModels.length;_j6<lenj;_j6++){if(propertySet.metaModels[_i546].id!==id){newMetaModels.push(propertySet.metaModels[_i546]);}}propertySet.metaModels=newMetaModels;}}// Remove MetaObjects
|
|
23469
|
-
for(var _i547=0,_len118=metaModel.metaObjects.length;_i547<_len118;_i547++){var _metaObject8=metaModel.metaObjects[_i547];_metaObject8.type;var _id4=_metaObject8.id;if(_metaObject8.metaModels.length===1){// MetaObject owned by one model, delete
|
|
23470
|
-
delete this.metaObjects[_id4];if(!_metaObject8.parent){delete this.rootMetaObjects[_id4];}}else{var _newMetaModels=[];var metaModelId=metaModel.id;for(var _i548=0,_len119=_metaObject8.metaModels.length;_i548<_len119;_i548++){if(_metaObject8.metaModels[_i548].id!==metaModelId){_newMetaModels.push(_metaObject8.metaModels[_i548]);}}_metaObject8.metaModels=_newMetaModels;}}// Re-link entire MetaObject parent/child hierarchy
|
|
23467
|
+
if(metaModel.propertySets){for(var _i546=0,len=metaModel.propertySets.length;_i546<len;_i546++){var propertySet=metaModel.propertySets[_i546];if(propertySet.metaModels.length===1){// Property set owned by one model, delete
|
|
23468
|
+
delete this.propertySets[propertySet.id];}else{var newMetaModels=[];for(var _j6=0,lenj=propertySet.metaModels.length;_j6<lenj;_j6++){if(propertySet.metaModels[_i546].id!==id){newMetaModels.push(propertySet.metaModels[_i546]);}}propertySet.metaModels=newMetaModels;}}}// Remove MetaObjects
|
|
23469
|
+
if(metaModel.metaObjects){for(var _i547=0,_len118=metaModel.metaObjects.length;_i547<_len118;_i547++){var _metaObject8=metaModel.metaObjects[_i547];_metaObject8.type;var _id4=_metaObject8.id;if(_metaObject8.metaModels.length===1){// MetaObject owned by one model, delete
|
|
23470
|
+
delete this.metaObjects[_id4];if(!_metaObject8.parent){delete this.rootMetaObjects[_id4];}}else{var _newMetaModels=[];var metaModelId=metaModel.id;for(var _i548=0,_len119=_metaObject8.metaModels.length;_i548<_len119;_i548++){if(_metaObject8.metaModels[_i548].id!==metaModelId){_newMetaModels.push(_metaObject8.metaModels[_i548]);}}_metaObject8.metaModels=_newMetaModels;}}}// Re-link entire MetaObject parent/child hierarchy
|
|
23471
23471
|
for(var objectId in this.metaObjects){var _metaObject9=this.metaObjects[objectId];if(_metaObject9.children){_metaObject9.children=[];}}this.metaObjectsByType={};for(var _objectId3 in this.metaObjects){var _metaObject10=this.metaObjects[_objectId3];var type=_metaObject10.type;if(_metaObject10.children){_metaObject10.children=null;}(this.metaObjectsByType[type]||(this.metaObjectsByType[type]={}))[_objectId3]=_metaObject10;}for(var _objectId4 in this.metaObjects){var _metaObject11=this.metaObjects[_objectId4];if(_metaObject11.parentId){var parentMetaObject=this.metaObjects[_metaObject11.parentId];if(parentMetaObject){_metaObject11.parent=parentMetaObject;(parentMetaObject.children||(parentMetaObject.children=[])).push(_metaObject11);}}}delete this.metaModels[id];this.fire("metaModelDestroyed",id);}/**
|
|
23472
23472
|
* Gets the {@link MetaObject#id}s of the {@link MetaObject}s that have the given {@link MetaObject#type}.
|
|
23473
23473
|
*
|