@colijnit/configurator 259.1.2 → 259.1.3
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/app/components/selections/selections.component.d.ts +1 -1
- package/bundles/colijnit-configurator.umd.js +162 -105
- package/bundles/colijnit-configurator.umd.js.map +1 -1
- package/colijnit-configurator.metadata.json +1 -1
- package/esm2015/app/builder.js +42 -25
- package/esm2015/app/components/selections/selections.component.js +2 -2
- package/esm2015/app/services/configurator.service.js +15 -11
- package/esm2015/app/utils/object.utils.js +14 -12
- package/esm2015/helper/variation-helper.js +5 -9
- package/esm2015/utils/base-utils.js +9 -0
- package/esm2015/utils/image.utils.js +27 -29
- package/esm2015/utils/scene-utils.js +38 -15
- package/esm2015/utils/variation-utils.js +1 -1
- package/fesm2015/colijnit-configurator.js +144 -97
- package/fesm2015/colijnit-configurator.js.map +1 -1
- package/helper/variation-helper.d.ts +2 -3
- package/package.json +4 -4
- package/utils/base-utils.d.ts +4 -0
- package/utils/image.utils.d.ts +2 -1
- package/colijnit-configurator-259.1.1.tgz +0 -0
- package/configurator/index.html +0 -14
- package/configurator/main.js +0 -3555
- package/configurator/main.js.map +0 -1
- package/configurator/polyfills.js +0 -5683
- package/configurator/polyfills.js.map +0 -1
- package/configurator/runtime.js +0 -149
- package/configurator/runtime.js.map +0 -1
- package/configurator/styles.css +0 -48
- package/configurator/styles.css.map +0 -1
- package/configurator/vendor.js +0 -210213
- package/configurator/vendor.js.map +0 -1
|
@@ -10,8 +10,8 @@ declare class SelectionViewModel {
|
|
|
10
10
|
export declare class SelectionsComponent {
|
|
11
11
|
private _builder;
|
|
12
12
|
set selections(value: Selection[]);
|
|
13
|
-
selectionViewModels: SelectionViewModel[];
|
|
14
13
|
selectionClick: EventEmitter<Selection>;
|
|
14
|
+
selectionViewModels: SelectionViewModel[];
|
|
15
15
|
constructor(_builder: Builder);
|
|
16
16
|
expandClicked(selectionViewModel: SelectionViewModel, mouseEvent: MouseEvent): void;
|
|
17
17
|
selectSelection(selection: Selection, mouseEvent: MouseEvent): void;
|
|
@@ -959,6 +959,9 @@
|
|
|
959
959
|
var con2Name = (con2.constructor.name === 'Mesh' || con2.constructor.name === 'Object3D') ? con2.name : con2.connector;
|
|
960
960
|
var sameParent = (con1.constructor.name === 'Mesh' || con1.constructor.name === 'Object3D') &&
|
|
961
961
|
(con2.constructor.name === 'Mesh' || con2.constructor.name === 'Object3D') ? con1.parent === con2.parent : false;
|
|
962
|
+
if (!con1Name || !con2Name) {
|
|
963
|
+
return false;
|
|
964
|
+
}
|
|
962
965
|
var parts1 = con1Name.toUpperCase().split('_'), parts2 = con2Name.toUpperCase().split('_');
|
|
963
966
|
if (parts1.length >= 3 && parts2.length >= 3 && !sameParent) {
|
|
964
967
|
var connectable = parts1[0] === 'C' && parts2[0] === 'C' &&
|
|
@@ -984,8 +987,8 @@
|
|
|
984
987
|
if (!scene || !parent) {
|
|
985
988
|
return false;
|
|
986
989
|
}
|
|
987
|
-
con1['connectedTo'] = con2.parent.name;
|
|
988
|
-
con2['connectedTo'] = con1.parent.name;
|
|
990
|
+
con1['connectedTo'] = con2 && con2.parent ? con2.parent.name : '';
|
|
991
|
+
con2['connectedTo'] = con1 && con1.parent ? con1.parent.name : '';
|
|
989
992
|
var motherRotation = new THREE__namespace.Euler(0, 0, 0);
|
|
990
993
|
var motherPosition = new THREE__namespace.Vector3(0, 0, 0);
|
|
991
994
|
parent.updateMatrixWorld();
|
|
@@ -995,33 +998,53 @@
|
|
|
995
998
|
parent.position.set(0, 0, 0);
|
|
996
999
|
scene.updateMatrixWorld(true);
|
|
997
1000
|
var con1Quat = new THREE__namespace.Quaternion();
|
|
998
|
-
con1
|
|
1001
|
+
if (con1) {
|
|
1002
|
+
con1.getWorldQuaternion(con1Quat);
|
|
1003
|
+
}
|
|
999
1004
|
var con2Quat = new THREE__namespace.Quaternion();
|
|
1000
|
-
con2
|
|
1005
|
+
if (con2) {
|
|
1006
|
+
con2.getWorldQuaternion(con2Quat);
|
|
1007
|
+
}
|
|
1001
1008
|
var con1QuatParent = new THREE__namespace.Quaternion();
|
|
1002
|
-
con1.parent
|
|
1009
|
+
if (con1 && con1.parent) {
|
|
1010
|
+
con1.parent.getWorldQuaternion(con1QuatParent);
|
|
1011
|
+
}
|
|
1003
1012
|
var con2QuatParent = new THREE__namespace.Quaternion();
|
|
1004
|
-
con2.parent
|
|
1013
|
+
if (con2 && con2.parent) {
|
|
1014
|
+
con2.parent.getWorldQuaternion(con2QuatParent);
|
|
1015
|
+
}
|
|
1005
1016
|
var rotation = new THREE__namespace.Quaternion().multiplyQuaternions(con1Quat.invert(), con2Quat).multiply(new THREE__namespace.Quaternion().multiplyQuaternions(con1QuatParent, con1QuatParent));
|
|
1006
|
-
con2.parent
|
|
1017
|
+
if (con2 && con2.parent) {
|
|
1018
|
+
con2.parent.quaternion.copy(rotation);
|
|
1019
|
+
}
|
|
1007
1020
|
// Update because the matrix has been tempered with
|
|
1008
1021
|
scene.updateMatrixWorld(true);
|
|
1009
1022
|
// Move the connectors towards eachother
|
|
1010
1023
|
var con1Pos = new THREE__namespace.Vector3();
|
|
1011
|
-
con1
|
|
1024
|
+
if (con1) {
|
|
1025
|
+
con1.getWorldPosition(con1Pos);
|
|
1026
|
+
}
|
|
1012
1027
|
var con2Pos = new THREE__namespace.Vector3();
|
|
1013
|
-
con2
|
|
1028
|
+
if (con2) {
|
|
1029
|
+
con2.getWorldPosition(con2Pos);
|
|
1030
|
+
}
|
|
1014
1031
|
var move = con1Pos.sub(con2Pos);
|
|
1015
|
-
con2.parent
|
|
1016
|
-
|
|
1017
|
-
|
|
1032
|
+
if (con2 && con2.parent) {
|
|
1033
|
+
con2.parent.position.x += move.x;
|
|
1034
|
+
con2.parent.position.y += move.y;
|
|
1035
|
+
con2.parent.position.z += move.z;
|
|
1036
|
+
}
|
|
1018
1037
|
// reset parent's objects rotation and position
|
|
1019
1038
|
parent.rotation.copy(motherRotation);
|
|
1020
1039
|
parent.position.copy(motherPosition);
|
|
1021
1040
|
scene.updateMatrixWorld(true);
|
|
1022
1041
|
// Set the connected flag
|
|
1023
|
-
con1
|
|
1024
|
-
|
|
1042
|
+
if (con1) {
|
|
1043
|
+
con1['connected'] = true;
|
|
1044
|
+
}
|
|
1045
|
+
if (con2) {
|
|
1046
|
+
con2['connected'] = true;
|
|
1047
|
+
}
|
|
1025
1048
|
return true;
|
|
1026
1049
|
};
|
|
1027
1050
|
return SceneUtils;
|
|
@@ -1095,52 +1118,66 @@
|
|
|
1095
1118
|
return Material;
|
|
1096
1119
|
}());
|
|
1097
1120
|
|
|
1121
|
+
var BaseUtils = /** @class */ (function () {
|
|
1122
|
+
function BaseUtils() {
|
|
1123
|
+
}
|
|
1124
|
+
BaseUtils.prototype.log = function (message) {
|
|
1125
|
+
if (this.debug) {
|
|
1126
|
+
this.debug(message);
|
|
1127
|
+
console.log(new Date(), message);
|
|
1128
|
+
}
|
|
1129
|
+
};
|
|
1130
|
+
return BaseUtils;
|
|
1131
|
+
}());
|
|
1132
|
+
|
|
1098
1133
|
// @dynamic
|
|
1099
|
-
var ImageUtils = /** @class */ (function () {
|
|
1134
|
+
var ImageUtils = /** @class */ (function (_super) {
|
|
1135
|
+
__extends(ImageUtils, _super);
|
|
1100
1136
|
function ImageUtils() {
|
|
1137
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
1101
1138
|
}
|
|
1102
1139
|
ImageUtils.CreateTextureFromBase64 = function (id, base64, material, defaultFlip) {
|
|
1103
|
-
var _this = this;
|
|
1104
1140
|
if (defaultFlip === void 0) { defaultFlip = false; }
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1141
|
+
var _a, _b;
|
|
1142
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
1143
|
+
var texture_1, loader_1, texture, err_1;
|
|
1144
|
+
return __generator(this, function (_c) {
|
|
1145
|
+
switch (_c.label) {
|
|
1109
1146
|
case 0:
|
|
1110
|
-
if (
|
|
1111
|
-
|
|
1112
|
-
|
|
1147
|
+
if (ImageUtils.textures.has(id)) {
|
|
1148
|
+
return [2 /*return*/, ImageUtils.textures.get(id)];
|
|
1149
|
+
}
|
|
1150
|
+
_c.label = 1;
|
|
1113
1151
|
case 1:
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
return [
|
|
1152
|
+
_c.trys.push([1, 5, , 6]);
|
|
1153
|
+
if (!window.textureLoader) return [3 /*break*/, 3];
|
|
1154
|
+
return [4 /*yield*/, window.textureLoader(base64, material)];
|
|
1117
1155
|
case 2:
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
return [
|
|
1156
|
+
texture_1 = _c.sent();
|
|
1157
|
+
ImageUtils.textures.set(id, texture_1);
|
|
1158
|
+
return [2 /*return*/, texture_1];
|
|
1121
1159
|
case 3:
|
|
1122
|
-
|
|
1123
|
-
return [
|
|
1160
|
+
loader_1 = new THREE__namespace.TextureLoader();
|
|
1161
|
+
return [4 /*yield*/, new Promise(function (resolve, reject) {
|
|
1162
|
+
loader_1.load(base64, resolve, undefined, function (err) { return reject(err); });
|
|
1163
|
+
})];
|
|
1124
1164
|
case 4:
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
});
|
|
1139
|
-
_b.label = 5;
|
|
1140
|
-
case 5: return [2 /*return*/];
|
|
1165
|
+
texture = _c.sent();
|
|
1166
|
+
texture.anisotropy = 16;
|
|
1167
|
+
texture.wrapS = THREE__namespace.RepeatWrapping;
|
|
1168
|
+
texture.wrapT = THREE__namespace.RepeatWrapping;
|
|
1169
|
+
texture.repeat = new THREE__namespace.Vector2((_a = material === null || material === void 0 ? void 0 : material.repeatX) !== null && _a !== void 0 ? _a : 1, (_b = material === null || material === void 0 ? void 0 : material.repeatY) !== null && _b !== void 0 ? _b : 1);
|
|
1170
|
+
texture.flipY = defaultFlip;
|
|
1171
|
+
texture.needsUpdate = true;
|
|
1172
|
+
ImageUtils.textures.set(id, texture);
|
|
1173
|
+
return [2 /*return*/, texture];
|
|
1174
|
+
case 5:
|
|
1175
|
+
err_1 = _c.sent();
|
|
1176
|
+
return [2 /*return*/, null];
|
|
1177
|
+
case 6: return [2 /*return*/];
|
|
1141
1178
|
}
|
|
1142
1179
|
});
|
|
1143
|
-
});
|
|
1180
|
+
});
|
|
1144
1181
|
};
|
|
1145
1182
|
ImageUtils.getDocBodyWithMimeTypeDefinition = function (fileName, documentBody) {
|
|
1146
1183
|
if (documentBody === null) {
|
|
@@ -1171,7 +1208,7 @@
|
|
|
1171
1208
|
ImageUtils.textures.clear();
|
|
1172
1209
|
};
|
|
1173
1210
|
return ImageUtils;
|
|
1174
|
-
}());
|
|
1211
|
+
}(BaseUtils));
|
|
1175
1212
|
ImageUtils.textures = new Map();
|
|
1176
1213
|
|
|
1177
1214
|
var FurnitureMaterial = /** @class */ (function (_super) {
|
|
@@ -1857,10 +1894,13 @@
|
|
|
1857
1894
|
}());
|
|
1858
1895
|
VariationUtils.MaterialCache = new Map();
|
|
1859
1896
|
|
|
1860
|
-
var VariationHelper = /** @class */ (function () {
|
|
1897
|
+
var VariationHelper = /** @class */ (function (_super) {
|
|
1898
|
+
__extends(VariationHelper, _super);
|
|
1861
1899
|
function VariationHelper() {
|
|
1862
|
-
|
|
1863
|
-
|
|
1900
|
+
var _this = _super.apply(this, __spreadArray([], __read(arguments))) || this;
|
|
1901
|
+
_this._variations = [];
|
|
1902
|
+
_this._lastKnownVariations = new Map();
|
|
1903
|
+
return _this;
|
|
1864
1904
|
}
|
|
1865
1905
|
VariationHelper.prototype.clearCache = function () {
|
|
1866
1906
|
var variationMap = Array.from(this._lastKnownVariations.values());
|
|
@@ -2004,7 +2044,7 @@
|
|
|
2004
2044
|
case 4: return [3 /*break*/, 6];
|
|
2005
2045
|
case 5:
|
|
2006
2046
|
e_2 = _a.sent();
|
|
2007
|
-
this.
|
|
2047
|
+
this.log(e_2.message);
|
|
2008
2048
|
return [3 /*break*/, 6];
|
|
2009
2049
|
case 6: return [2 /*return*/];
|
|
2010
2050
|
}
|
|
@@ -2444,14 +2484,8 @@
|
|
|
2444
2484
|
}
|
|
2445
2485
|
return new THREE.Color();
|
|
2446
2486
|
};
|
|
2447
|
-
VariationHelper.prototype._log = function (message) {
|
|
2448
|
-
if (this.debug) {
|
|
2449
|
-
this.debug(message);
|
|
2450
|
-
console.log(new Date(), message);
|
|
2451
|
-
}
|
|
2452
|
-
};
|
|
2453
2487
|
return VariationHelper;
|
|
2454
|
-
}());
|
|
2488
|
+
}(BaseUtils));
|
|
2455
2489
|
|
|
2456
2490
|
var ConfiguratorService = /** @class */ (function () {
|
|
2457
2491
|
function ConfiguratorService() {
|
|
@@ -2512,10 +2546,12 @@
|
|
|
2512
2546
|
case 0: return [4 /*yield*/, this._configuratorApi.getSelections(showLoader)];
|
|
2513
2547
|
case 1:
|
|
2514
2548
|
selections = _a.sent();
|
|
2515
|
-
selections.resultObjects
|
|
2516
|
-
|
|
2517
|
-
(s.nodeType === nodeType_enum.NodeType.
|
|
2518
|
-
|
|
2549
|
+
if (selections && selections.resultObjects) {
|
|
2550
|
+
selections.resultObjects.filter(function (s) {
|
|
2551
|
+
(isNill_function.isNill(s.hierarchicalPublicationCode) || ((s.hierarchicalPublicationCode & publicationCode) > 0)) && ((s.nodeType === nodeType_enum.NodeType.Question && (((s.questionPublicationCode & publicationCode) > 0) || isNill_function.isNill(s.questionPublicationCode))) ||
|
|
2552
|
+
(s.nodeType === nodeType_enum.NodeType.Answer && (((s.answerPublicationCode & publicationCode) > 0) || isNill_function.isNill(s.answerPublicationCode))));
|
|
2553
|
+
});
|
|
2554
|
+
}
|
|
2519
2555
|
return [2 /*return*/, selections];
|
|
2520
2556
|
}
|
|
2521
2557
|
});
|
|
@@ -2542,11 +2578,13 @@
|
|
|
2542
2578
|
case 0: return [4 /*yield*/, this._configuratorApi.getQuestionAndAnswers(showLoader)];
|
|
2543
2579
|
case 1:
|
|
2544
2580
|
questionAndAnswers = _a.sent();
|
|
2545
|
-
questionAndAnswers.answers
|
|
2546
|
-
|
|
2547
|
-
(answer.
|
|
2548
|
-
|
|
2549
|
-
|
|
2581
|
+
if (questionAndAnswers && questionAndAnswers.answers) {
|
|
2582
|
+
questionAndAnswers.answers.filter(function (answer) {
|
|
2583
|
+
(notNill_function.notNill(answer.hierarchicalPublicationCode) && (answer.hierarchicalPublicationCode & publicationCode) === 0) ||
|
|
2584
|
+
(answer.type === nodeType_enum.NodeType.Question && (answer.questionPublicationCode & publicationCode) === 0 && notNill_function.notNill(answer.questionPublicationCode)) ||
|
|
2585
|
+
(answer.type === nodeType_enum.NodeType.Answer && (answer.publicationCode & publicationCode) === 0 && notNill_function.notNill(answer.publicationCode));
|
|
2586
|
+
});
|
|
2587
|
+
}
|
|
2550
2588
|
return [2 /*return*/, questionAndAnswers];
|
|
2551
2589
|
}
|
|
2552
2590
|
});
|
|
@@ -2595,18 +2633,20 @@
|
|
|
2595
2633
|
function ObjectUtils() {
|
|
2596
2634
|
}
|
|
2597
2635
|
ObjectUtils.DisposeNode = function (node) {
|
|
2598
|
-
|
|
2599
|
-
|
|
2600
|
-
if (obj.
|
|
2601
|
-
obj.geometry
|
|
2636
|
+
if (node) {
|
|
2637
|
+
node.traverse(function (obj) {
|
|
2638
|
+
if (obj instanceof THREE.Mesh) {
|
|
2639
|
+
if (obj.geometry) {
|
|
2640
|
+
obj.geometry.dispose();
|
|
2641
|
+
}
|
|
2642
|
+
ObjectUtils.DisposeMaterial(obj.material);
|
|
2602
2643
|
}
|
|
2603
|
-
|
|
2604
|
-
|
|
2605
|
-
|
|
2606
|
-
|
|
2607
|
-
|
|
2608
|
-
|
|
2609
|
-
});
|
|
2644
|
+
if (typeof obj.dispose === 'function') {
|
|
2645
|
+
// @ts-ignore
|
|
2646
|
+
obj.dispose();
|
|
2647
|
+
}
|
|
2648
|
+
});
|
|
2649
|
+
}
|
|
2610
2650
|
};
|
|
2611
2651
|
ObjectUtils.DisposeMaterial = function (material) {
|
|
2612
2652
|
var _this = this;
|
|
@@ -2819,8 +2859,8 @@
|
|
|
2819
2859
|
case 0: return [4 /*yield*/, this._configuratorService.getQuestionAndAnswers(false, publicationCode)];
|
|
2820
2860
|
case 1:
|
|
2821
2861
|
questionsAndAnswers = _a.sent();
|
|
2822
|
-
this._answers = questionsAndAnswers.answers;
|
|
2823
|
-
this.answersReceived.next(
|
|
2862
|
+
this._answers = questionsAndAnswers && questionsAndAnswers.answers ? questionsAndAnswers.answers : [];
|
|
2863
|
+
this.answersReceived.next(this._answers);
|
|
2824
2864
|
return [2 /*return*/];
|
|
2825
2865
|
}
|
|
2826
2866
|
});
|
|
@@ -2836,7 +2876,7 @@
|
|
|
2836
2876
|
return [4 /*yield*/, this.getQuestionAndAnswers()];
|
|
2837
2877
|
case 2:
|
|
2838
2878
|
_a.sent();
|
|
2839
|
-
if (this._answers.length === 0) {
|
|
2879
|
+
if (this._answers && this._answers.length === 0) {
|
|
2840
2880
|
this._build();
|
|
2841
2881
|
}
|
|
2842
2882
|
return [2 /*return*/];
|
|
@@ -2893,9 +2933,12 @@
|
|
|
2893
2933
|
}
|
|
2894
2934
|
};
|
|
2895
2935
|
Builder.prototype._preloadMaterials = function () {
|
|
2896
|
-
this.
|
|
2897
|
-
|
|
2898
|
-
|
|
2936
|
+
if (this._decos && this._decos.length) {
|
|
2937
|
+
var materials = __spreadArray([], __read(new Set(this._decos
|
|
2938
|
+
.filter(function (d) { return d.gameObjectName && d.type === decoNodeType_enum.DecoNodeType.Variation; })
|
|
2939
|
+
.map(function (d) { return d.gameObjectName; }))));
|
|
2940
|
+
this._variationHelper.preloadVariations(materials);
|
|
2941
|
+
}
|
|
2899
2942
|
};
|
|
2900
2943
|
Builder.prototype._setInstanceId = function (sku, instanceId, goodId) {
|
|
2901
2944
|
return __awaiter(this, void 0, void 0, function () {
|
|
@@ -3041,6 +3084,9 @@
|
|
|
3041
3084
|
};
|
|
3042
3085
|
Builder.prototype._prepareTheSelections = function () {
|
|
3043
3086
|
var _this = this;
|
|
3087
|
+
if (!this._selections || !this._selections.length) {
|
|
3088
|
+
return;
|
|
3089
|
+
}
|
|
3044
3090
|
var selections = this._selections.slice();
|
|
3045
3091
|
var selectionOfArticle = selections.find(function (s) { return s.nodeType === nodeType_enum.NodeType.Article; });
|
|
3046
3092
|
var adjustableSelections = selections.filter(function (s) { return s.addAdjust === '2'; });
|
|
@@ -3170,17 +3216,19 @@
|
|
|
3170
3216
|
* @private
|
|
3171
3217
|
*/
|
|
3172
3218
|
Builder.prototype._getMaterialIdFromParent = function (id) {
|
|
3173
|
-
|
|
3174
|
-
|
|
3175
|
-
|
|
3176
|
-
|
|
3177
|
-
var
|
|
3178
|
-
|
|
3179
|
-
|
|
3180
|
-
|
|
3181
|
-
|
|
3182
|
-
|
|
3183
|
-
|
|
3219
|
+
if (this._selections) {
|
|
3220
|
+
var idx = this._selections.findIndex(function (s) { return s.node === id; });
|
|
3221
|
+
var currentLevel = 999;
|
|
3222
|
+
if (idx > -1) {
|
|
3223
|
+
for (var i = idx; i > 0; i--) {
|
|
3224
|
+
var selection = this._selections[i];
|
|
3225
|
+
if (selection.presentationLevel >= currentLevel) {
|
|
3226
|
+
break;
|
|
3227
|
+
}
|
|
3228
|
+
currentLevel = selection.presentationLevel;
|
|
3229
|
+
if (selection.hdecoGameObject) {
|
|
3230
|
+
return selection.hdecoGameObject;
|
|
3231
|
+
}
|
|
3184
3232
|
}
|
|
3185
3233
|
}
|
|
3186
3234
|
}
|
|
@@ -3268,7 +3316,7 @@
|
|
|
3268
3316
|
case 0: return [4 /*yield*/, this._configuratorService.getGoodIdFromSku(sku, false)];
|
|
3269
3317
|
case 1:
|
|
3270
3318
|
response = _a.sent();
|
|
3271
|
-
if (response.validationResult.success && response.resultObject) {
|
|
3319
|
+
if (response && response.validationResult && response.validationResult.success && response.resultObject) {
|
|
3272
3320
|
return [2 /*return*/, response.resultObject];
|
|
3273
3321
|
}
|
|
3274
3322
|
return [2 /*return*/];
|
|
@@ -3297,7 +3345,7 @@
|
|
|
3297
3345
|
case 2: return [4 /*yield*/, this._configuratorService.getArticleQuickSel(goodId, false)];
|
|
3298
3346
|
case 3:
|
|
3299
3347
|
articleResponse = _a.sent();
|
|
3300
|
-
if (articleResponse.validationResult.success && articleResponse.resultObject) {
|
|
3348
|
+
if (articleResponse && articleResponse.validationResult && articleResponse.validationResult.success && articleResponse.resultObject) {
|
|
3301
3349
|
if (articleResponse.resultObject.hasOwnProperty('oArticle')) {
|
|
3302
3350
|
obj = Array.isArray(articleResponse.resultObject['oArticle']) ? articleResponse.resultObject['oArticle'][0] : articleResponse.resultObject['oArticle'];
|
|
3303
3351
|
article$1 = this._boFactory.makeWithRawBackendData(article.Article, obj);
|
|
@@ -3323,7 +3371,7 @@
|
|
|
3323
3371
|
return [4 /*yield*/, this._configuratorService.getSelections(false, publicationCode)];
|
|
3324
3372
|
case 1:
|
|
3325
3373
|
selectionResponse = _a.sent();
|
|
3326
|
-
if (selectionResponse.resultObjects && selectionResponse.resultObjects.length > 0) {
|
|
3374
|
+
if (selectionResponse && selectionResponse.resultObjects && selectionResponse.resultObjects.length > 0) {
|
|
3327
3375
|
this._selections = this._boFactory.makeBOArrayFromRawBackendDataArray(selection.Selection, selectionResponse.resultObjects);
|
|
3328
3376
|
this._selections.forEach(function (s) { return s.instanceId = instanceId; });
|
|
3329
3377
|
// const filtered: Selection[] = this._selections.filter(s => s.nodeType !== NodeType.Article && s.presentationLevel === 1);
|
|
@@ -3347,7 +3395,7 @@
|
|
|
3347
3395
|
return [4 /*yield*/, this._configuratorService.getDecos(false)];
|
|
3348
3396
|
case 1:
|
|
3349
3397
|
decosResponse = _a.sent();
|
|
3350
|
-
if (decosResponse.resultObjects && decosResponse.resultObjects.length > 0) {
|
|
3398
|
+
if (decosResponse && decosResponse.resultObjects && decosResponse.resultObjects.length > 0) {
|
|
3351
3399
|
this._decos = this._boFactory.makeBOArrayFromRawBackendDataArray(decoNode.DecoNode, decosResponse.resultObjects);
|
|
3352
3400
|
this.decosReceived.next(this._decos);
|
|
3353
3401
|
}
|
|
@@ -3361,6 +3409,9 @@
|
|
|
3361
3409
|
};
|
|
3362
3410
|
Builder.prototype._linkSelectionsAndDecos = function () {
|
|
3363
3411
|
var _this = this;
|
|
3412
|
+
if (!this._selections || !this._selections.length) {
|
|
3413
|
+
return;
|
|
3414
|
+
}
|
|
3364
3415
|
var len = this._selections.length;
|
|
3365
3416
|
var _loop_2 = function (i) {
|
|
3366
3417
|
// const id: string = this.selections[i].artNodeIdDeco;
|
|
@@ -3382,9 +3433,12 @@
|
|
|
3382
3433
|
}
|
|
3383
3434
|
};
|
|
3384
3435
|
Builder.prototype._getVariations = function () {
|
|
3385
|
-
|
|
3386
|
-
return
|
|
3387
|
-
|
|
3436
|
+
if (this._decos && this._decos.length) {
|
|
3437
|
+
return this._decos.filter(function (deco) {
|
|
3438
|
+
return deco.type === decoNodeType_enum.DecoNodeType.Variation;
|
|
3439
|
+
});
|
|
3440
|
+
}
|
|
3441
|
+
return [];
|
|
3388
3442
|
};
|
|
3389
3443
|
Builder.prototype._loadVariations = function (obj) {
|
|
3390
3444
|
return __awaiter(this, void 0, void 0, function () {
|
|
@@ -3412,6 +3466,9 @@
|
|
|
3412
3466
|
});
|
|
3413
3467
|
};
|
|
3414
3468
|
Builder.prototype._getAdjustables = function () {
|
|
3469
|
+
if (!this._selections || !this._selections.length) {
|
|
3470
|
+
return [];
|
|
3471
|
+
}
|
|
3415
3472
|
return this._selections.filter(function (s) {
|
|
3416
3473
|
var node = s.decoNode;
|
|
3417
3474
|
return node && node.gameObjectName && node.type === decoNodeType_enum.DecoNodeType.Part && node.kind === decoNodeKind_enum.DecoNodeKind.Adjustable;
|
|
@@ -3710,8 +3767,8 @@
|
|
|
3710
3767
|
var SelectionsComponent = /** @class */ (function () {
|
|
3711
3768
|
function SelectionsComponent(_builder) {
|
|
3712
3769
|
this._builder = _builder;
|
|
3713
|
-
this.selectionViewModels = [];
|
|
3714
3770
|
this.selectionClick = new i0.EventEmitter();
|
|
3771
|
+
this.selectionViewModels = [];
|
|
3715
3772
|
}
|
|
3716
3773
|
Object.defineProperty(SelectionsComponent.prototype, "selections", {
|
|
3717
3774
|
set: function (value) {
|