@colijnit/configurator 261.20.5 → 261.20.6
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/colijnit-configurator-261.20.6.tgz +0 -0
- package/fesm2022/colijnit-configurator.mjs +987 -288
- package/fesm2022/colijnit-configurator.mjs.map +1 -1
- package/index.d.ts +139 -36
- package/lib/components/answers-slideout/style/_layout.scss +2 -2
- package/lib/components/configuration-preset/style/_layout.scss +42 -0
- package/lib/components/configuration-preset/style/_material-definition.scss +5 -0
- package/lib/components/configuration-preset/style/_theme.scss +20 -0
- package/lib/components/configuration-preset/style/material.scss +3 -0
- package/lib/components/configuration-preset-dialog/style/_layout.scss +82 -0
- package/lib/components/configuration-preset-dialog/style/_material-definition.scss +5 -0
- package/lib/components/configuration-preset-dialog/style/_theme.scss +7 -0
- package/lib/components/configuration-preset-dialog/style/material.scss +3 -0
- package/lib/components/product-configurator/style/_layout.scss +4 -0
- package/lib/components/product-configurator/style/_material-definition.scss +1 -0
- package/lib/components/product-configurator/style/_theme.scss +7 -1
- package/lib/components/product-configurator-selector/style/_layout.scss +26 -1
- package/lib/components/product-configurator-selector/style/_theme.scss +20 -3
- package/lib/components/product-configurator-selector-option-checkbox/style/_theme.scss +3 -0
- package/lib/components/product-configurator-selector-option-tile/style/_layout.scss +12 -4
- package/lib/components/product-configurator-selector-option-tile/style/_theme.scss +28 -2
- package/lib/style/_variables.scss +20 -7
- package/package.json +1 -1
|
@@ -65,6 +65,8 @@ import { trigger, state, style, transition, animate } from '@angular/animations'
|
|
|
65
65
|
import * as i4 from '@colijnit/corecomponents_v12';
|
|
66
66
|
import { LoaderModule, IconModule, CardModule, InputTextModule, ButtonModule, PriceDisplayPipeModule, ImageModule, TooltipDirectiveModule } from '@colijnit/corecomponents_v12';
|
|
67
67
|
import { ConfigurationDisplayOption } from '@colijnit/configuratorapi/build/enum/refcode/configuration-display-option.enum';
|
|
68
|
+
import * as i7 from '@angular/cdk/clipboard';
|
|
69
|
+
import { CdkCopyToClipboard } from '@angular/cdk/clipboard';
|
|
68
70
|
import * as i6$1 from '@angular/forms';
|
|
69
71
|
import { FormsModule } from '@angular/forms';
|
|
70
72
|
import { GLTFExporter } from 'three/examples/jsm/exporters/GLTFExporter.js';
|
|
@@ -148,6 +150,9 @@ class SettingOptions {
|
|
|
148
150
|
useExternalOpenSave = false;
|
|
149
151
|
floorFadeStart = 2.0;
|
|
150
152
|
floorFadeEnd = 6.0;
|
|
153
|
+
maxVisibleTiles = 10;
|
|
154
|
+
maxVisibleSmallTiles = 24;
|
|
155
|
+
groupedShowAllBtn = false;
|
|
151
156
|
}
|
|
152
157
|
|
|
153
158
|
class RenderParameters {
|
|
@@ -509,6 +514,7 @@ class AppEventService {
|
|
|
509
514
|
articleInfoReceived = new Subject(); // TODO check; _onAnswerInfoReceived has a todo from 17-06-2024
|
|
510
515
|
onObjectSelected = new Subject();
|
|
511
516
|
onObjectUnSelected = new Subject();
|
|
517
|
+
changeConfigurationPresetDialogMode = new Subject();
|
|
512
518
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: AppEventService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
513
519
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: AppEventService, providedIn: 'root' });
|
|
514
520
|
}
|
|
@@ -951,14 +957,13 @@ class ConfiguratorService {
|
|
|
951
957
|
return this._configuratorApi.copyInstance(instanceId, shouldSaveCurrentInstanceId, showLoader);
|
|
952
958
|
}
|
|
953
959
|
async saveConfigurations(showLoader = true) {
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
return true;
|
|
960
|
+
return await this._configuratorApi.saveConfigurations(showLoader);
|
|
961
|
+
}
|
|
962
|
+
async storePreset(instanceId, showLoader = true) {
|
|
963
|
+
return await this._configuratorApi.storePreset(instanceId, showLoader);
|
|
964
|
+
}
|
|
965
|
+
async initForPreset(presetId, goodId, showLoader = true) {
|
|
966
|
+
return await this._configuratorApi.initForPreset(presetId, goodId, showLoader);
|
|
962
967
|
}
|
|
963
968
|
async googleTranslateEnabled() {
|
|
964
969
|
// this should always be fetched from the mainapi from the client
|
|
@@ -1399,6 +1404,12 @@ class ConfiguratorConnectorService {
|
|
|
1399
1404
|
console.error('error saving configurations');
|
|
1400
1405
|
}
|
|
1401
1406
|
}
|
|
1407
|
+
async storePreset(instanceId, showLoader = true) {
|
|
1408
|
+
return this._configuratorService.storePreset(instanceId, showLoader);
|
|
1409
|
+
}
|
|
1410
|
+
async initForPreset(presetId, goodId, showLoader = true) {
|
|
1411
|
+
return this._configuratorService.initForPreset(presetId, goodId, showLoader);
|
|
1412
|
+
}
|
|
1402
1413
|
async getDefaultLanguage(upId) {
|
|
1403
1414
|
return await this._configuratorService.getDefaultLanguage(upId);
|
|
1404
1415
|
}
|
|
@@ -10181,11 +10192,6 @@ class LoadFurnitureService extends LoadFurnitureBaseService {
|
|
|
10181
10192
|
if (!this.needs3DModel(result.placement)) {
|
|
10182
10193
|
result.resultType = ResultType.No3DModel;
|
|
10183
10194
|
}
|
|
10184
|
-
if (!result.assetUrl && result.resultType !== ResultType.No3DModel || result.resultType === ResultType.ArticleNotFound) {
|
|
10185
|
-
result.errorMessages.push(new ConfiguratorErrorMessage('ARTICLE_NOT_FOUND', 'ARTICLE_NOT_FOUND_DESC'));
|
|
10186
|
-
DebugUtils.log('Article not found');
|
|
10187
|
-
return Promise.reject(result);
|
|
10188
|
-
}
|
|
10189
10195
|
});
|
|
10190
10196
|
if (this.article) {
|
|
10191
10197
|
// Add the data to the result
|
|
@@ -12243,6 +12249,7 @@ var IconEnum;
|
|
|
12243
12249
|
IconEnum["ArrowTurnRight"] = "arrow_turn_right";
|
|
12244
12250
|
IconEnum["ArrowTurnRightRegular"] = "arrow_turn_right_regular";
|
|
12245
12251
|
IconEnum["ArCircle"] = "ar_circle";
|
|
12252
|
+
IconEnum["BarsLightFull"] = "bars_light_full";
|
|
12246
12253
|
IconEnum["Brush"] = "brush";
|
|
12247
12254
|
IconEnum["CameraSolid"] = "camera_solid";
|
|
12248
12255
|
IconEnum["CameraTopdown"] = "camera_topdown";
|
|
@@ -12267,6 +12274,7 @@ var IconEnum;
|
|
|
12267
12274
|
IconEnum["ConfFrame"] = "conf_frame";
|
|
12268
12275
|
IconEnum["ConfPlane"] = "conf_plane";
|
|
12269
12276
|
IconEnum["CopyLight"] = "copy_light";
|
|
12277
|
+
IconEnum["CopyRegularFull"] = "copy_regular_full";
|
|
12270
12278
|
IconEnum["Couch"] = "couch";
|
|
12271
12279
|
IconEnum["Cross"] = "cross";
|
|
12272
12280
|
IconEnum["CubeOutline"] = "cube-outline";
|
|
@@ -12279,7 +12287,9 @@ var IconEnum;
|
|
|
12279
12287
|
IconEnum["EditButton"] = "edit-button";
|
|
12280
12288
|
IconEnum["Expand"] = "expand";
|
|
12281
12289
|
IconEnum["FillDripLight"] = "fill_drip_light";
|
|
12290
|
+
IconEnum["FloppyDiskLightFull"] = "floppy_disk_light_full";
|
|
12282
12291
|
IconEnum["Flower"] = "flower";
|
|
12292
|
+
IconEnum["FolderOpenLightFull"] = "folder_open_light_full";
|
|
12283
12293
|
IconEnum["GaugeHighSolidFull"] = "gauge_high_solid_full";
|
|
12284
12294
|
IconEnum["GaugeLowSolidFull"] = "gauge_low_solid_full";
|
|
12285
12295
|
IconEnum["GaugeMaxSolidFull"] = "gauge_max_solid_full";
|
|
@@ -12333,6 +12343,7 @@ var IconEnum;
|
|
|
12333
12343
|
IconEnum["WandMagicSparkles"] = "wand_magic_sparkles";
|
|
12334
12344
|
IconEnum["WifiSolidFull"] = "wifi_solid_full";
|
|
12335
12345
|
IconEnum["XmarkLight"] = "xmark_light";
|
|
12346
|
+
IconEnum["XmarkLightFull"] = "xmark_light_full";
|
|
12336
12347
|
IconEnum["XmarkRegular"] = "xmark_regular";
|
|
12337
12348
|
})(IconEnum || (IconEnum = {}));
|
|
12338
12349
|
|
|
@@ -12355,6 +12366,7 @@ const IconSvg = {
|
|
|
12355
12366
|
"arrow_turn_right": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path d=\"M379.3 363.3c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6L457.4 240 80 240c-26.5 0-48 21.5-48 48l0 176c0 8.8-7.2 16-16 16s-16-7.2-16-16L0 288c0-44.2 35.8-80 80-80l377.4 0L356.7 107.3c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0l128 128c6.2 6.2 6.2 16.4 0 22.6l-128 128z\"/></svg>",
|
|
12356
12367
|
"arrow_turn_right_regular": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path d=\"M377 369c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l87-87L88 248c-22.1 0-40 17.9-40 40l0 168c0 13.3-10.7 24-24 24s-24-10.7-24-24L0 288c0-48.6 39.4-88 88-88l342.1 0-87-87c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0L505 207c9.4 9.4 9.4 24.6 0 33.9L377 369z\"/></svg>",
|
|
12357
12368
|
"ar_circle": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 50 50\"><path d=\"M25,11A14,14,0,1,1,11,25,14,14,0,0,1,25,11m0-1A15,15,0,1,0,40,25,15,15,0,0,0,25,10Z\" fill=\"#484f60\"/><path d=\"M23.23,30.1l-.85-2.2H18.53l-.85,2.2H15.5l4-10.2h2l4,10.2Zm-2.77-7.16-1.15,3h2.3Z\" fill=\"#484f60\"/><path d=\"M33.92,23.29c0,1.63-.58,2.69-1.74,3.16L34.5,30.1H32l-2-3.25H28.53V30.1H26.48V19.9H30a4.65,4.65,0,0,1,3,.8A3.29,3.29,0,0,1,33.92,23.29ZM31.45,24.5a1.64,1.64,0,0,0,.39-1.21,1.38,1.38,0,0,0-.4-1.13,2.35,2.35,0,0,0-1.38-.3H28.53v3H30A2,2,0,0,0,31.45,24.5Z\" fill=\"#484f60\"/></svg>",
|
|
12369
|
+
"bars_light_full": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\"><path d=\"M96 144C96 135.2 103.2 128 112 128L528 128C536.8 128 544 135.2 544 144C544 152.8 536.8 160 528 160L112 160C103.2 160 96 152.8 96 144zM96 320C96 311.2 103.2 304 112 304L528 304C536.8 304 544 311.2 544 320C544 328.8 536.8 336 528 336L112 336C103.2 336 96 328.8 96 320zM544 496C544 504.8 536.8 512 528 512L112 512C103.2 512 96 504.8 96 496C96 487.2 103.2 480 112 480L528 480C536.8 480 544 487.2 544 496z\"/></svg>",
|
|
12358
12370
|
"brush": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 50 50\"><path d=\"M28.16,26a9.71,9.71,0,0,1-4-3.66A.88.88,0,0,0,22.92,22c-1.08.48-2.19.92-3.27,1.43-3.71,1.74-6,4.5-6.23,8.75-.17,2.75-.89,5.32-3.42,7.25,1.18,0,2.12,0,3.05,0,.73,0,1.46-.07,2.18-.12a10.82,10.82,0,0,0,4.86-3.38c1.31-1.61,3.14-3.58,3.95-5.49l-.08.38a22.78,22.78,0,0,1-3.09,5.74A11.79,11.79,0,0,1,18.13,39a22.35,22.35,0,0,0,4.29-1A8.2,8.2,0,0,0,28.06,32c.38-1.62.44-3.31.66-5A1,1,0,0,0,28.16,26Z\" fill=\"#484f60\"/><path d=\"M26.23,20.43l6.57-9.32a1.23,1.23,0,0,1,1.87-.18l4.94,4.7a1.24,1.24,0,0,1-.11,1.9l-9.15,6.78a1.25,1.25,0,0,1-1.58-.08L26.4,22.06A1.23,1.23,0,0,1,26.23,20.43Z\" fill=\"#484f60\"/></svg>",
|
|
12359
12371
|
"camera_solid": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path d=\"M149.1 64.8L138.7 96 64 96C28.7 96 0 124.7 0 160L0 416c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-256c0-35.3-28.7-64-64-64l-74.7 0L362.9 64.8C356.4 45.2 338.1 32 317.4 32L194.6 32c-20.7 0-39 13.2-45.5 32.8zM256 192a96 96 0 1 1 0 192 96 96 0 1 1 0-192z\"/></svg>",
|
|
12360
12372
|
"camera_topdown": "<svg version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" x=\"0px\" y=\"0px\" viewBox=\"0 0 600 600\" style=\"enable-background:new 0 0 600 600;\" ><g><path d=\"M198.4,473.9c-12.3,0-23.9-6.8-29.4-17.4c-2.4-4.6-3.7-9.8-3.7-15c0-6.7,2-13.1,5.9-18.6l57.5-82.1c3.7-5.2,9.7-8.4,16.1-8.4c4,0,7.9,1.2,11.2,3.5c8.8,6.2,11,18.4,4.8,27.3l-49.9,71.4h178.2l-50-71.4c-3.2-4.7-4.3-10.5-3-16c1.1-5,4-9.1,8.1-11.5c3.3-2.2,7.1-3.4,11-3.4c6.4,0,12.4,3.1,16.1,8.4l57.6,82.1c6.9,9.9,7.8,22.7,2.1,33.6c-5.6,10.8-16.7,17.4-28.7,17.4H198.4z M219.9,320.5c-32,0-58-26-58-58V58c0-32,26-58,58-58h160.2c32,0,58,26,58,58v204.6c0,32-26,58-58,58H219.9z M219.9,39.3c-10.3,0-18.7,8.4-18.7,18.7v204.6c0,10.3,8.4,18.7,18.7,18.7h160.2c10.3,0,18.7-8.4,18.7-18.7V58c0-10.3-8.4-18.7-18.7-18.7H219.9z\"/><path d=\"M300,600c-4,0-7.2-3.2-7.2-7.2v-85.3c0-4,3.2-7.2,7.2-7.2s7.2,3.2,7.2,7.2v85.3C307.2,596.8,304,600,300,600z\"/><path d=\"M179.7,591.6c-1.5,0-2.9-0.5-4.1-1.3c-1.6-1.1-2.6-2.8-3-4.6c-0.3-1.9,0.1-3.8,1.2-5.4l50.6-77c1.3-1.9,3.5-3,5.9-3c1.5,0,2.9,0.5,4.1,1.3c1.6,1.1,2.6,2.8,3,4.6c0.3,1.9-0.1,3.8-1.2,5.4l-50.6,77C184.2,590.5,182,591.6,179.7,591.6z\"/><path d=\"M420.3,591.6c-2.3,0-4.5-1.1-5.9-3l-50.6-77c-2.3-3.3-1.5-7.7,1.8-10c1.2-0.9,2.6-1.3,4.1-1.3c2.3,0,4.5,1.1,5.9,3l50.5,76.9l0,0.1c1.1,1.6,1.5,3.5,1.2,5.4c-0.3,1.9-1.4,3.5-3,4.6C423.2,591.2,421.8,591.6,420.3,591.6z\"/><path d=\"M375.9,65v38.7c0,1.5-1.2,2.8-2.8,2.8h-19.9c-1.5,0-2.8-1.2-2.8-2.8V65c0-1.5,1.2-2.8,2.8-2.8h19.9C374.6,62.2,375.9,63.5,375.9,65z\"/></g></svg>",
|
|
@@ -12379,6 +12391,7 @@ const IconSvg = {
|
|
|
12379
12391
|
"conf_frame": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 50 50\"><title>conf_frame</title><path d=\"M37,11.5,38.5,10h-27V40L13,38.5v-27H37Z\" fill=\"#484f60\"/><g opacity=\"0.25\"><rect x=\"14.5\" y=\"13\" width=\"21\" height=\"24\" fill=\"#484f60\"/></g><polygon points=\"18.27 15.01 20.28 13 14.5 13 14.5 18.78 16.51 16.77 20.24 20.5 22 18.74 18.27 15.01\" fill=\"#484f60\"/></svg>",
|
|
12380
12392
|
"conf_plane": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 50 50\"><title>conf_plane</title><g opacity=\"0.25\"><path d=\"M37,11.5,38.5,10h-27V40L13,38.5v-27H37Z\" fill=\"#484f60\"/></g><rect x=\"14.5\" y=\"13\" width=\"21\" height=\"24\" fill=\"#484f60\"/><polygon points=\"19.26 16 17.5 17.76 21.23 21.49 19.22 23.5 25 23.5 25 17.72 22.99 19.73 19.26 16\" fill=\"#fff\"/></svg>",
|
|
12381
12393
|
"copy_light": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\"><path d=\"M384 352l-160 0c-17.7 0-32-14.3-32-32l0-256c0-17.7 14.3-32 32-32l108.1 0c4.2 0 8.3 1.7 11.3 4.7l67.9 67.9c3 3 4.7 7.1 4.7 11.3L416 320c0 17.7-14.3 32-32 32zM433.9 81.9L366.1 14.1c-9-9-21.2-14.1-33.9-14.1L224 0c-35.3 0-64 28.7-64 64l0 256c0 35.3 28.7 64 64 64l160 0c35.3 0 64-28.7 64-64l0-204.1c0-12.7-5.1-24.9-14.1-33.9zM64 128c-35.3 0-64 28.7-64 64L0 448c0 35.3 28.7 64 64 64l160 0c35.3 0 64-28.7 64-64l0-32-32 0 0 32c0 17.7-14.3 32-32 32L64 480c-17.7 0-32-14.3-32-32l0-256c0-17.7 14.3-32 32-32l64 0 0-32-64 0z\"/></svg>",
|
|
12394
|
+
"copy_regular_full": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\"><path d=\"M480 400L288 400C279.2 400 272 392.8 272 384L272 128C272 119.2 279.2 112 288 112L421.5 112C425.7 112 429.8 113.7 432.8 116.7L491.3 175.2C494.3 178.2 496 182.3 496 186.5L496 384C496 392.8 488.8 400 480 400zM288 448L480 448C515.3 448 544 419.3 544 384L544 186.5C544 169.5 537.3 153.2 525.3 141.2L466.7 82.7C454.7 70.7 438.5 64 421.5 64L288 64C252.7 64 224 92.7 224 128L224 384C224 419.3 252.7 448 288 448zM160 192C124.7 192 96 220.7 96 256L96 512C96 547.3 124.7 576 160 576L352 576C387.3 576 416 547.3 416 512L416 496L368 496L368 512C368 520.8 360.8 528 352 528L160 528C151.2 528 144 520.8 144 512L144 256C144 247.2 151.2 240 160 240L176 240L176 192L160 192z\"/></svg>",
|
|
12382
12395
|
"couch": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 512\"><path d=\"M448 64c53 0 96 43 96 96l0 37.5c10-3.5 20.8-5.5 32-5.5l0-32c0-70.7-57.3-128-128-128L192 32C121.3 32 64 89.3 64 160l0 32c11.2 0 22 1.9 32 5.5L96 160c0-53 43-96 96-96l256 0zM96 320l0 96 0 16c0 8.8-7.2 16-16 16l-32 0c-8.8 0-16-7.2-16-16l0-144c0-17.7 14.3-32 32-32s32 14.3 32 32l0 32zM80 480c20.9 0 38.7-13.4 45.3-32l389.5 0c6.6 18.6 24.4 32 45.3 32l32 0c26.5 0 48-21.5 48-48l0-144c0-35.3-28.7-64-64-64s-64 28.7-64 64l-384 0c0-35.3-28.7-64-64-64s-64 28.7-64 64L0 432c0 26.5 21.5 48 48 48l32 0zm48-64l0-96 384 0 0 96-384 0zm416 16l0-16 0-96 0-32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 144c0 8.8-7.2 16-16 16l-32 0c-8.8 0-16-7.2-16-16z\"/></svg>",
|
|
12383
12396
|
"cross": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 50 50\"><polygon points=\"35.35 15.52 34.65 14.81 25 24.46 15.35 14.81 14.65 15.52 24.29 25.17 14.65 34.81 15.35 35.52 25 25.87 34.65 35.52 35.35 34.81 25.71 25.17 35.35 15.52\" fill=\"#484f60\"/></svg>",
|
|
12384
12397
|
"cube-outline": "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\"><svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"><path d=\"M21,16.5C21,16.88 20.79,17.21 20.47,17.38L12.57,21.82C12.41,21.94 12.21,22 12,22C11.79,22 11.59,21.94 11.43,21.82L3.53,17.38C3.21,17.21 3,16.88 3,16.5V7.5C3,7.12 3.21,6.79 3.53,6.62L11.43,2.18C11.59,2.06 11.79,2 12,2C12.21,2 12.41,2.06 12.57,2.18L20.47,6.62C20.79,6.79 21,7.12 21,7.5V16.5M12,4.15L6.04,7.5L12,10.85L17.96,7.5L12,4.15M5,15.91L11,19.29V12.58L5,9.21V15.91M19,15.91V9.21L13,12.58V19.29L19,15.91Z\" /></svg>",
|
|
@@ -12391,7 +12404,9 @@ const IconSvg = {
|
|
|
12391
12404
|
"edit-button": "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\"><svg version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" x=\"0px\" y=\"0px\" viewBox=\"0 0 43 43\" ><g><rect x=\"13.011\" y=\"20.038\" transform=\"matrix(0.7071 -0.7071 0.7071 0.7071 -8.7899 19.4259)\" fill=\"#FFFFFF\" width=\"12.085\" height=\"0.57\"/><rect x=\"19.341\" y=\"16.641\" transform=\"matrix(0.7072 0.707 -0.707 0.7072 22.3084 -8.4979)\" fill=\"#FFFFFF\" width=\"4.145\" height=\"12.086\"/><path fill=\"#FFFFFF\" d=\"M30.839,14.931l-2.772-2.769c-0.348-0.348-0.91-0.348-1.257,0L25.9,13.069l4.032,4.028l0.905-0.908C31.187,15.841,31.187,15.28,30.839,14.931z\"/><rect x=\"23.68\" y=\"15.743\" transform=\"matrix(-0.7072 -0.7071 0.7071 -0.7072 33.6426 46.8755)\" fill=\"#FFFFFF\" width=\"5.696\" height=\"1.456\"/><polygon fill=\"#FFFFFF\" points=\"11.9,31.099 13.546,30.663 12.337,29.456 \"/><polygon fill=\"#FFFFFF\" points=\"13.579,25.643 12.711,28.079 14.921,30.29 17.356,29.421 \"/></g></svg>",
|
|
12392
12405
|
"expand": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\"><path d=\"M144 32c8.8 0 16 7.2 16 16s-7.2 16-16 16L32 64l0 112c0 8.8-7.2 16-16 16s-16-7.2-16-16L0 48c0-8.8 7.2-16 16-16l128 0zM0 336c0-8.8 7.2-16 16-16s16 7.2 16 16l0 112 112 0c8.8 0 16 7.2 16 16s-7.2 16-16 16L16 480c-8.8 0-16-7.2-16-16L0 336zM432 32c8.8 0 16 7.2 16 16l0 128c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-112L304 64c-8.8 0-16-7.2-16-16s7.2-16 16-16l128 0zM416 336c0-8.8 7.2-16 16-16s16 7.2 16 16l0 128c0 8.8-7.2 16-16 16l-128 0c-8.8 0-16-7.2-16-16s7.2-16 16-16l112 0 0-112z\"/></svg>",
|
|
12393
12406
|
"fill_drip_light": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 576 512\"><path d=\"M36.7 4.7c6.2-6.2 16.4-6.2 22.6 0l97.4 97.4 64.4-64.4c28.1-28.1 73.7-28.1 101.8 0L474.3 189.1c28.1 28.1 28.1 73.7 0 101.8L283.9 481.4c-37.5 37.5-98.3 37.5-135.8 0L30.6 363.9c-37.5-37.5-37.5-98.3 0-135.8L134.1 124.7 36.7 27.3c-6.2-6.2-6.2-16.4 0-22.6zm208 230.6l-88-88L53.3 250.7C42.8 261.2 36.7 274.4 35 288l397 0 19.7-19.7c15.6-15.6 15.6-40.9 0-56.6L300.3 60.3c-15.6-15.6-40.9-15.6-56.6 0l-64.4 64.4 88 88c6.2 6.2 6.2 16.4 0 22.6s-16.4 6.2-22.6 0zM39.2 320c3.1 7.7 7.8 15 14.1 21.3L170.7 458.7c25 25 65.5 25 90.5 0L400 320 39.2 320zM544 448s0 0 0 0c0 0 0 0 0 0c0-.1-.1-1.2-.6-3.4c-.6-2.4-1.5-5.4-2.8-9.1c-2.7-7.4-6.8-16.2-11.7-25.8c-5.2-10.2-11.2-20.6-16.9-30.3c-5.8 9.7-11.7 20.1-16.9 30.3c-4.9 9.6-8.9 18.4-11.7 25.8c-1.4 3.7-2.3 6.7-2.8 9.1c-.5 2.2-.6 3.3-.6 3.4c0 0 0 0 0 0c0 17.7 14.3 32 32 32s32-14.3 32-32zm32 0c0 35.3-28.7 64-64 64s-64-28.7-64-64c0-25.2 32.6-79.6 51.2-108.7c6-9.4 19.5-9.4 25.5 0C543.4 368.4 576 422.8 576 448z\"/></svg>",
|
|
12407
|
+
"floppy_disk_light_full": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\"><path d=\"M160 128C142.3 128 128 142.3 128 160L128 480C128 497.7 142.3 512 160 512L480 512C497.7 512 512 497.7 512 480L512 237.3C512 228.8 508.6 220.7 502.6 214.7L425.4 137.4C422.7 134.7 419.5 132.5 416 130.9L416 240C416 257.7 401.7 272 384 272L224 272C206.3 272 192 257.7 192 240L192 128L160 128zM224 128L224 240L384 240L384 128L224 128zM96 160C96 124.7 124.7 96 160 96L402.7 96C419.7 96 436 102.7 448 114.7L525.3 192C537.3 204 544 220.3 544 237.3L544 480C544 515.3 515.3 544 480 544L160 544C124.7 544 96 515.3 96 480L96 160zM352 384C352 366.3 337.7 352 320 352C302.3 352 288 366.3 288 384C288 401.7 302.3 416 320 416C337.7 416 352 401.7 352 384zM256 384C256 348.7 284.7 320 320 320C355.3 320 384 348.7 384 384C384 419.3 355.3 448 320 448C284.7 448 256 419.3 256 384z\"/></svg>",
|
|
12394
12408
|
"flower": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path d=\"M200 0c-48.6 0-88 39.4-88 88c0 21.3 7.6 40.8 20.1 56c-12.6 15.2-20.1 34.7-20.1 56c0 48.6 39.4 88 88 88c14.4 0 28-3.5 40-9.6l0 118.2C200.8 331.5 129.5 288 48 288l-20 0c-15.5 0-28 12.5-28 28C0 424.2 87.8 512 196 512l44 0 16 0 16 0 44 0c108.2 0 196-87.8 196-196c0-15.5-12.5-28-28-28l-20 0c-81.5 0-152.8 43.5-192 108.6l0-118.2c12 6.1 25.6 9.6 40 9.6c48.6 0 88-39.4 88-88c0-21.3-7.6-40.8-20.1-56c12.6-15.2 20.1-34.7 20.1-56c0-48.6-39.4-88-88-88c-21.3 0-40.8 7.6-56 20.1C240.8 7.6 221.3 0 200 0zM144 88c0-30.9 25.1-56 56-56c17.6 0 33.3 8.1 43.6 20.8c3 3.8 7.6 5.9 12.4 5.9s9.4-2.2 12.4-5.9C278.7 40.1 294.4 32 312 32c30.9 0 56 25.1 56 56c0 17.6-8.1 33.3-20.8 43.6c-3.8 3-5.9 7.6-5.9 12.4s2.2 9.4 5.9 12.4c12.7 10.3 20.8 26 20.8 43.6c0 30.9-25.1 56-56 56c-17.6 0-33.3-8.1-43.6-20.8c-3-3.8-7.6-5.9-12.4-5.9s-9.4 2.2-12.4 5.9c-10.3 12.7-26 20.8-43.6 20.8c-30.9 0-56-25.1-56-56c0-17.6 8.1-33.3 20.8-43.6c3.8-3 5.9-7.6 5.9-12.4s-2.2-9.4-5.9-12.4C152.1 121.3 144 105.6 144 88zM32 320l16 0c95.1 0 174.1 69.2 189.3 160L196 480c-89.2 0-161.8-71.3-164-160zM480 320c-2.1 88.7-74.7 160-164 160l-41.3 0c15.2-90.8 94.2-160 189.3-160l16 0zM288 144a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z\"/></svg>",
|
|
12409
|
+
"folder_open_light_full": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\"><path d=\"M129.5 480C118.7 480 111 469.5 114.2 459.2L164.2 299.2C166.3 292.5 172.5 288 179.5 288L559 288C569.8 288 577.5 298.5 574.3 308.8L524.3 468.8C522.1 475.5 516 480 509 480L129.5 480zM256.2 512L509 512C530 512 548.6 498.4 554.8 478.3L604.8 318.3C614.5 287.4 591.4 256 559 256L179.6 256C158.6 256 140 269.6 133.8 289.7L96.2 409.6L96.2 160C96.2 142.3 110.5 128 128.2 128L266.9 128C273.8 128 280.6 130.2 286.1 134.4L324.5 163.2C335.6 171.5 349.1 176 362.9 176L480.2 176C497.9 176 512.2 190.3 512.2 208L544.2 208C544.2 172.7 515.5 144 480.2 144L362.9 144C356 144 349.2 141.8 343.7 137.6L305.3 108.8C294.2 100.5 280.8 96 266.9 96L128.2 96C92.9 96 64.2 124.7 64.2 160L64.2 448C64.2 483.3 92.9 512 128.2 512L256.2 512z\"/></svg>",
|
|
12395
12410
|
"gauge_high_solid_full": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\"><path d=\"M64 320C64 178.6 178.6 64 320 64C461.4 64 576 178.6 576 320C576 461.4 461.4 576 320 576C178.6 576 64 461.4 64 320zM352 160C352 142.3 337.7 128 320 128C302.3 128 288 142.3 288 160C288 177.7 302.3 192 320 192C337.7 192 352 177.7 352 160zM320 480C355.3 480 384 451.3 384 416C384 399.8 378 384.9 368 373.7L437.5 234.8C443.4 222.9 438.6 208.5 426.8 202.6C415 196.7 400.5 201.5 394.6 213.3L325.1 352.2C323.4 352.1 321.7 352 320 352C284.7 352 256 380.7 256 416C256 451.3 284.7 480 320 480zM240 208C240 190.3 225.7 176 208 176C190.3 176 176 190.3 176 208C176 225.7 190.3 240 208 240C225.7 240 240 225.7 240 208zM160 352C177.7 352 192 337.7 192 320C192 302.3 177.7 288 160 288C142.3 288 128 302.3 128 320C128 337.7 142.3 352 160 352zM512 320C512 302.3 497.7 288 480 288C462.3 288 448 302.3 448 320C448 337.7 462.3 352 480 352C497.7 352 512 337.7 512 320z\"/></svg>",
|
|
12396
12411
|
"gauge_low_solid_full": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\"><path d=\"M64 320C64 178.6 178.6 64 320 64C461.4 64 576 178.6 576 320C576 461.4 461.4 576 320 576C178.6 576 64 461.4 64 320zM352 160C352 142.3 337.7 128 320 128C302.3 128 288 142.3 288 160C288 177.7 302.3 192 320 192C337.7 192 352 177.7 352 160zM320 480C355.3 480 384 451.3 384 416C384 380.7 355.3 352 320 352C318.3 352 316.6 352.1 314.9 352.2L245.5 213.3C239.6 201.4 225.2 196.6 213.3 202.6C201.4 208.6 196.6 222.9 202.6 234.8L272 373.7C262 385 256 399.8 256 416C256 451.3 284.7 480 320 480zM192 320C192 302.3 177.7 288 160 288C142.3 288 128 302.3 128 320C128 337.7 142.3 352 160 352C177.7 352 192 337.7 192 320zM480 352C497.7 352 512 337.7 512 320C512 302.3 497.7 288 480 288C462.3 288 448 302.3 448 320C448 337.7 462.3 352 480 352zM464 208C464 190.3 449.7 176 432 176C414.3 176 400 190.3 400 208C400 225.7 414.3 240 432 240C449.7 240 464 225.7 464 208z\"/></svg>",
|
|
12397
12412
|
"gauge_max_solid_full": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\"><path d=\"M64 320C64 178.6 178.6 64 320 64C461.4 64 576 178.6 576 320C576 461.4 461.4 576 320 576C178.6 576 64 461.4 64 320zM352 160C352 142.3 337.7 128 320 128C302.3 128 288 142.3 288 160C288 177.7 302.3 192 320 192C337.7 192 352 177.7 352 160zM320 480C355.3 480 384 451.3 384 416C384 412.6 383.7 409.3 383.2 406.1L492.3 340.6C503.7 333.8 507.3 319 500.5 307.7C493.7 296.4 478.9 292.6 467.6 299.5L358.5 364.9C347.8 356.8 334.4 352 320 352C284.7 352 256 380.7 256 416C256 451.3 284.7 480 320 480zM240 208C240 190.3 225.7 176 208 176C190.3 176 176 190.3 176 208C176 225.7 190.3 240 208 240C225.7 240 240 225.7 240 208zM160 352C177.7 352 192 337.7 192 320C192 302.3 177.7 288 160 288C142.3 288 128 302.3 128 320C128 337.7 142.3 352 160 352zM464 208C464 190.3 449.7 176 432 176C414.3 176 400 190.3 400 208C400 225.7 414.3 240 432 240C449.7 240 464 225.7 464 208z\"/></svg>",
|
|
@@ -12445,6 +12460,7 @@ const IconSvg = {
|
|
|
12445
12460
|
"wand_magic_sparkles": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 576 512\"><path d=\"M458.3 34.9c3.1-3.1 8.2-3.1 11.3 0l39.4 39.4c3.1 3.1 3.1 8.2 0 11.3L388.7 206.1l-50.7-50.7L458.3 34.9zM66.9 426.3L315.3 177.9l50.7 50.7L117.7 477.1c-3.1 3.1-8.2 3.1-11.3 0L66.9 437.7c-3.1-3.1-3.1-8.2 0-11.3zM435.7 12.3L44.3 403.7c-15.6 15.6-15.6 40.9 0 56.6l39.4 39.4c15.6 15.6 40.9 15.6 56.6 0L531.7 108.3c15.6-15.6 15.6-40.9 0-56.6L492.3 12.3c-15.6-15.6-40.9-15.6-56.6 0zM128 80c0-8.8-7.2-16-16-16s-16 7.2-16 16l0 48-48 0c-8.8 0-16 7.2-16 16s7.2 16 16 16l48 0 0 48c0 8.8 7.2 16 16 16s16-7.2 16-16l0-48 48 0c8.8 0 16-7.2 16-16s-7.2-16-16-16l-48 0 0-48zM464 320c-8.8 0-16 7.2-16 16l0 48-48 0c-8.8 0-16 7.2-16 16s7.2 16 16 16l48 0 0 48c0 8.8 7.2 16 16 16s16-7.2 16-16l0-48 48 0c8.8 0 16-7.2 16-16s-7.2-16-16-16l-48 0 0-48c0-8.8-7.2-16-16-16zM252.2 16c0-6.7-5.4-12.2-12.2-12.2s-12.2 5.4-12.2 12.2l0 19.8-19.8 0c-6.7 0-12.2 5.4-12.2 12.2s5.4 12.2 12.2 12.2l19.8 0 0 19.8c0 6.7 5.4 12.2 12.2 12.2s12.2-5.4 12.2-12.2l0-19.8 19.8 0c6.7 0 12.2-5.4 12.2-12.2s-5.4-12.2-12.2-12.2l-19.8 0 0-19.8z\"/></svg>",
|
|
12446
12461
|
"wifi_solid_full": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\"><path d=\"M320 160C229.1 160 146.8 196 86.3 254.6C73.6 266.9 53.3 266.6 41.1 253.9C28.9 241.2 29.1 220.9 41.8 208.7C113.7 138.9 211.9 96 320 96C428.1 96 526.3 138.9 598.3 208.7C611 221 611.3 241.3 599 253.9C586.7 266.5 566.4 266.9 553.8 254.6C493.2 196 410.9 160 320 160zM272 496C272 469.5 293.5 448 320 448C346.5 448 368 469.5 368 496C368 522.5 346.5 544 320 544C293.5 544 272 522.5 272 496zM200 390.2C188.3 403.5 168.1 404.7 154.8 393C141.5 381.3 140.3 361.1 152 347.8C193 301.4 253.1 272 320 272C386.9 272 447 301.4 488 347.8C499.7 361.1 498.4 381.3 485.2 393C472 404.7 451.7 403.4 440 390.2C410.6 356.9 367.8 336 320 336C272.2 336 229.4 356.9 200 390.2z\"/></svg>",
|
|
12447
12462
|
"xmark_light": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 384 512\"><path d=\"M324.5 411.1c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6L214.6 256 347.1 123.5c6.2-6.2 6.2-16.4 0-22.6s-16.4-6.2-22.6 0L192 233.4 59.6 100.9c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6L169.4 256 36.9 388.5c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0L192 278.6 324.5 411.1z\"/></svg>",
|
|
12463
|
+
"xmark_light_full": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 640\"><path d=\"M507.3 155.3C513.5 149.1 513.5 138.9 507.3 132.7C501.1 126.5 490.9 126.5 484.7 132.7L320 297.4L155.3 132.7C149.1 126.5 138.9 126.5 132.7 132.7C126.5 138.9 126.5 149.1 132.7 155.3L297.4 320L132.7 484.7C126.5 490.9 126.5 501.1 132.7 507.3C138.9 513.5 149.1 513.5 155.3 507.3L320 342.6L484.7 507.3C490.9 513.5 501.1 513.5 507.3 507.3C513.5 501.1 513.5 490.9 507.3 484.7L342.6 320L507.3 155.3z\"/></svg>",
|
|
12448
12464
|
"xmark_regular": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 384 512\"><path d=\"M345 137c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-119 119L73 103c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l119 119L39 375c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l119-119L311 409c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-119-119L345 137z\"/></svg>"
|
|
12449
12465
|
};
|
|
12450
12466
|
|
|
@@ -12861,7 +12877,7 @@ class GoogleTranslateService {
|
|
|
12861
12877
|
return input;
|
|
12862
12878
|
}
|
|
12863
12879
|
const sourceLang = this._defaultLanguage.toLowerCase();
|
|
12864
|
-
const targetLang = this._clientLanguage.toLowerCase();
|
|
12880
|
+
const targetLang = this._clientLanguage ? this._clientLanguage.toLowerCase() : sourceLang;
|
|
12865
12881
|
const translationList = [input];
|
|
12866
12882
|
// When we do not need a translation
|
|
12867
12883
|
if (!input || (sourceLang === targetLang)) {
|
|
@@ -14726,6 +14742,108 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
14726
14742
|
args: ['class.should-be-hidden']
|
|
14727
14743
|
}] } });
|
|
14728
14744
|
|
|
14745
|
+
var PresetDialogMode;
|
|
14746
|
+
(function (PresetDialogMode) {
|
|
14747
|
+
PresetDialogMode[PresetDialogMode["SAVE"] = 0] = "SAVE";
|
|
14748
|
+
PresetDialogMode[PresetDialogMode["LOAD"] = 1] = "LOAD";
|
|
14749
|
+
})(PresetDialogMode || (PresetDialogMode = {}));
|
|
14750
|
+
|
|
14751
|
+
class ConfigurationPresetComponent {
|
|
14752
|
+
iconService;
|
|
14753
|
+
_appEventService;
|
|
14754
|
+
icons = IconEnum;
|
|
14755
|
+
isSaveLoadMenuOpen = false;
|
|
14756
|
+
showClass() {
|
|
14757
|
+
return true;
|
|
14758
|
+
}
|
|
14759
|
+
closeSaveLoadMenu() {
|
|
14760
|
+
this.isSaveLoadMenuOpen = false;
|
|
14761
|
+
}
|
|
14762
|
+
constructor(iconService, _appEventService) {
|
|
14763
|
+
this.iconService = iconService;
|
|
14764
|
+
this._appEventService = _appEventService;
|
|
14765
|
+
}
|
|
14766
|
+
toggleSaveLoadMenu(event) {
|
|
14767
|
+
event.stopPropagation();
|
|
14768
|
+
this.isSaveLoadMenuOpen = !this.isSaveLoadMenuOpen;
|
|
14769
|
+
}
|
|
14770
|
+
handleSavePresetClicked() {
|
|
14771
|
+
this.isSaveLoadMenuOpen = false;
|
|
14772
|
+
this._appEventService.changeConfigurationPresetDialogMode.next(PresetDialogMode.SAVE);
|
|
14773
|
+
}
|
|
14774
|
+
handleLoadPresetClicked() {
|
|
14775
|
+
this.isSaveLoadMenuOpen = false;
|
|
14776
|
+
this._appEventService.changeConfigurationPresetDialogMode.next(PresetDialogMode.LOAD);
|
|
14777
|
+
}
|
|
14778
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ConfigurationPresetComponent, deps: [{ token: IconCacheService }, { token: AppEventService }], target: i0.ɵɵFactoryTarget.Component });
|
|
14779
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: ConfigurationPresetComponent, isStandalone: false, selector: "co-configuration-preset", host: { listeners: { "document:click": "closeSaveLoadMenu()" }, properties: { "class.co-configuration-preset": "this.showClass" } }, ngImport: i0, template: `
|
|
14780
|
+
<div class="save-load-config-wrapper">
|
|
14781
|
+
<div class="open-save-load" (click)="toggleSaveLoadMenu($event)">
|
|
14782
|
+
<co-icon [iconData]="iconService.getIcon(icons.BarsLightFull)"></co-icon>
|
|
14783
|
+
</div>
|
|
14784
|
+
<div
|
|
14785
|
+
class="save-load-configuration-buttons"
|
|
14786
|
+
[class.is-open]="isSaveLoadMenuOpen"
|
|
14787
|
+
(click)="$event.stopPropagation()">
|
|
14788
|
+
<co-button
|
|
14789
|
+
class="preset-button save-preset-button"
|
|
14790
|
+
[iconData]="iconService.getIcon(icons.FloppyDiskLightFull)"
|
|
14791
|
+
[label]="'SAVE_CONFIGURATION' | localize"
|
|
14792
|
+
(onClick)="handleSavePresetClicked()">
|
|
14793
|
+
</co-button>
|
|
14794
|
+
<co-button
|
|
14795
|
+
class="preset-button load-preset-button"
|
|
14796
|
+
[iconData]="iconService.getIcon(icons.FolderOpenLightFull)"
|
|
14797
|
+
[label]="'LOAD_CONFIGURATION' | localize"
|
|
14798
|
+
(onClick)="handleLoadPresetClicked()">
|
|
14799
|
+
</co-button>
|
|
14800
|
+
</div>
|
|
14801
|
+
</div>
|
|
14802
|
+
|
|
14803
|
+
|
|
14804
|
+
`, isInline: true, dependencies: [{ kind: "component", type: i4.ButtonComponent, selector: "co-button", inputs: ["label", "iconData", "iconDataRight", "isToggleButton", "isToggled", "hidden", "disabled"], outputs: ["onClick", "clickedWhileDisabled", "isToggledChange"] }, { kind: "component", type: i4.IconComponent, selector: "co-icon", inputs: ["icon", "iconData"] }, { kind: "pipe", type: LocalizePipe, name: "localize" }], encapsulation: i0.ViewEncapsulation.None });
|
|
14805
|
+
}
|
|
14806
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ConfigurationPresetComponent, decorators: [{
|
|
14807
|
+
type: Component,
|
|
14808
|
+
args: [{
|
|
14809
|
+
selector: 'co-configuration-preset',
|
|
14810
|
+
template: `
|
|
14811
|
+
<div class="save-load-config-wrapper">
|
|
14812
|
+
<div class="open-save-load" (click)="toggleSaveLoadMenu($event)">
|
|
14813
|
+
<co-icon [iconData]="iconService.getIcon(icons.BarsLightFull)"></co-icon>
|
|
14814
|
+
</div>
|
|
14815
|
+
<div
|
|
14816
|
+
class="save-load-configuration-buttons"
|
|
14817
|
+
[class.is-open]="isSaveLoadMenuOpen"
|
|
14818
|
+
(click)="$event.stopPropagation()">
|
|
14819
|
+
<co-button
|
|
14820
|
+
class="preset-button save-preset-button"
|
|
14821
|
+
[iconData]="iconService.getIcon(icons.FloppyDiskLightFull)"
|
|
14822
|
+
[label]="'SAVE_CONFIGURATION' | localize"
|
|
14823
|
+
(onClick)="handleSavePresetClicked()">
|
|
14824
|
+
</co-button>
|
|
14825
|
+
<co-button
|
|
14826
|
+
class="preset-button load-preset-button"
|
|
14827
|
+
[iconData]="iconService.getIcon(icons.FolderOpenLightFull)"
|
|
14828
|
+
[label]="'LOAD_CONFIGURATION' | localize"
|
|
14829
|
+
(onClick)="handleLoadPresetClicked()">
|
|
14830
|
+
</co-button>
|
|
14831
|
+
</div>
|
|
14832
|
+
</div>
|
|
14833
|
+
|
|
14834
|
+
|
|
14835
|
+
`,
|
|
14836
|
+
encapsulation: ViewEncapsulation.None,
|
|
14837
|
+
standalone: false
|
|
14838
|
+
}]
|
|
14839
|
+
}], ctorParameters: () => [{ type: IconCacheService }, { type: AppEventService }], propDecorators: { showClass: [{
|
|
14840
|
+
type: HostBinding,
|
|
14841
|
+
args: ['class.co-configuration-preset']
|
|
14842
|
+
}], closeSaveLoadMenu: [{
|
|
14843
|
+
type: HostListener,
|
|
14844
|
+
args: ['document:click']
|
|
14845
|
+
}] } });
|
|
14846
|
+
|
|
14729
14847
|
class SelectionsSummaryComponent {
|
|
14730
14848
|
configuratorConnectorService;
|
|
14731
14849
|
iconService;
|
|
@@ -14738,6 +14856,7 @@ class SelectionsSummaryComponent {
|
|
|
14738
14856
|
canClose = true;
|
|
14739
14857
|
answersTemplate;
|
|
14740
14858
|
answerToShowFromSelectionText;
|
|
14859
|
+
showSaveAndLoadConfiguration;
|
|
14741
14860
|
customDimensions = false;
|
|
14742
14861
|
disableMouse = false;
|
|
14743
14862
|
handledocumentMouseUp(event) {
|
|
@@ -14787,82 +14906,88 @@ class SelectionsSummaryComponent {
|
|
|
14787
14906
|
this.selectionToCustomize = sel;
|
|
14788
14907
|
}
|
|
14789
14908
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SelectionsSummaryComponent, deps: [{ token: ConfiguratorConnectorService }, { token: IconCacheService }], target: i0.ɵɵFactoryTarget.Component });
|
|
14790
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: SelectionsSummaryComponent, isStandalone: false, selector: "co-selections-summary", inputs: { selections: "selections", showLabel: "showLabel", canClose: "canClose", answersTemplate: "answersTemplate", answerToShowFromSelectionText: "answerToShowFromSelectionText", customDimensions: "customDimensions" }, outputs: { closeClick: "closeClick", cancelAnswers: "cancelAnswers", selectSelection: "selectSelection", repeatSelection: "repeatSelection", deleteSelection: "deleteSelection" }, host: { listeners: { "document:mouseup": "handledocumentMouseUp($event)", "document:mousemove": "handleDocumentMouseDown($event)" }, properties: { "class.co-selections-summary": "this.showClass", "class.custom-dimensions": "this.customDimensions", "class.disable-mouse": "this.disableMouse" } }, ngImport: i0, template: `
|
|
14791
|
-
|
|
14792
|
-
|
|
14793
|
-
|
|
14794
|
-
|
|
14795
|
-
|
|
14796
|
-
|
|
14797
|
-
|
|
14798
|
-
|
|
14799
|
-
|
|
14800
|
-
|
|
14801
|
-
|
|
14802
|
-
|
|
14803
|
-
|
|
14804
|
-
|
|
14805
|
-
|
|
14806
|
-
|
|
14807
|
-
|
|
14808
|
-
|
|
14809
|
-
|
|
14810
|
-
|
|
14811
|
-
|
|
14812
|
-
|
|
14813
|
-
|
|
14814
|
-
|
|
14815
|
-
|
|
14816
|
-
|
|
14817
|
-
|
|
14818
|
-
|
|
14819
|
-
|
|
14820
|
-
|
|
14821
|
-
|
|
14822
|
-
|
|
14823
|
-
|
|
14824
|
-
|
|
14825
|
-
|
|
14909
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: SelectionsSummaryComponent, isStandalone: false, selector: "co-selections-summary", inputs: { selections: "selections", showLabel: "showLabel", canClose: "canClose", answersTemplate: "answersTemplate", answerToShowFromSelectionText: "answerToShowFromSelectionText", showSaveAndLoadConfiguration: "showSaveAndLoadConfiguration", customDimensions: "customDimensions" }, outputs: { closeClick: "closeClick", cancelAnswers: "cancelAnswers", selectSelection: "selectSelection", repeatSelection: "repeatSelection", deleteSelection: "deleteSelection" }, host: { listeners: { "document:mouseup": "handledocumentMouseUp($event)", "document:mousemove": "handleDocumentMouseDown($event)" }, properties: { "class.co-selections-summary": "this.showClass", "class.custom-dimensions": "this.customDimensions", "class.disable-mouse": "this.disableMouse" } }, ngImport: i0, template: `
|
|
14910
|
+
@if (showLabel || canClose) {
|
|
14911
|
+
<header class="drawer__header">
|
|
14912
|
+
@if (showLabel) {
|
|
14913
|
+
<h2 class="mat-title">{{ 'CONFIGURATION' | localize }}</h2>
|
|
14914
|
+
}
|
|
14915
|
+
@if (canClose) {
|
|
14916
|
+
<button class="close-lite-selector" (click)="closeClick.emit()">
|
|
14917
|
+
<co-icon [iconData]="iconService.getIcon(icons.Cross)"></co-icon>
|
|
14918
|
+
</button>
|
|
14919
|
+
}
|
|
14920
|
+
</header>
|
|
14921
|
+
}
|
|
14922
|
+
@if (selections && selections.length > 0) {
|
|
14923
|
+
<div class="selections-content small-scrollbar">
|
|
14924
|
+
@for (sel of selections; track sel; let index = $index) {
|
|
14925
|
+
<co-selections-summary-line
|
|
14926
|
+
[selection]="sel"
|
|
14927
|
+
[answersTemplate]="answersTemplate ? answersTemplate : undefined"
|
|
14928
|
+
[answerToShowFromSelectionText]="answerToShowFromSelectionText"
|
|
14929
|
+
[valutaSymbol]="valutaSymbol"
|
|
14930
|
+
(summaryLineClick)="handleClick(sel)"
|
|
14931
|
+
(summaryLineDelete)="handleDelete($event, sel)"
|
|
14932
|
+
(summaryLineRepeat)="handleRepeat($event, sel)"
|
|
14933
|
+
(customizeButtonClicked)="toggleElement(sel)"
|
|
14934
|
+
></co-selections-summary-line>
|
|
14935
|
+
}
|
|
14936
|
+
@if (showSaveAndLoadConfiguration) {
|
|
14937
|
+
<co-configuration-preset></co-configuration-preset>
|
|
14938
|
+
}
|
|
14939
|
+
@if (showAsConfigured) {
|
|
14940
|
+
<div class="sum">
|
|
14941
|
+
<label [textContent]="'AS_CONFIGURED' | localize"></label><span class="total-price"></span>
|
|
14942
|
+
<div class="price"> {{ configuratorConnectorService.totalPrice | priceDisplay }}</div>
|
|
14943
|
+
</div>
|
|
14944
|
+
}
|
|
14945
|
+
</div>
|
|
14946
|
+
}
|
|
14947
|
+
`, isInline: true, dependencies: [{ kind: "component", type: SelectionsSummaryLineComponent, selector: "co-selections-summary-line", inputs: ["selection", "valutaSymbol", "answersTemplate", "answerToShowFromSelectionText"], outputs: ["customizeButtonClicked", "summaryLineClick", "summaryLineRepeat", "summaryLineDelete"] }, { kind: "component", type: i4.IconComponent, selector: "co-icon", inputs: ["icon", "iconData"] }, { kind: "component", type: ConfigurationPresetComponent, selector: "co-configuration-preset" }, { kind: "pipe", type: LocalizePipe, name: "localize" }, { kind: "pipe", type: i4.PriceDisplayPipe, name: "priceDisplay" }], encapsulation: i0.ViewEncapsulation.None });
|
|
14826
14948
|
}
|
|
14827
14949
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SelectionsSummaryComponent, decorators: [{
|
|
14828
14950
|
type: Component,
|
|
14829
14951
|
args: [{
|
|
14830
14952
|
selector: 'co-selections-summary',
|
|
14831
14953
|
template: `
|
|
14832
|
-
|
|
14833
|
-
|
|
14834
|
-
|
|
14835
|
-
|
|
14836
|
-
|
|
14837
|
-
|
|
14838
|
-
|
|
14839
|
-
|
|
14840
|
-
|
|
14841
|
-
|
|
14842
|
-
|
|
14843
|
-
|
|
14844
|
-
|
|
14845
|
-
|
|
14846
|
-
|
|
14847
|
-
|
|
14848
|
-
|
|
14849
|
-
|
|
14850
|
-
|
|
14851
|
-
|
|
14852
|
-
|
|
14853
|
-
|
|
14854
|
-
|
|
14855
|
-
|
|
14856
|
-
|
|
14857
|
-
|
|
14858
|
-
|
|
14859
|
-
|
|
14860
|
-
|
|
14861
|
-
|
|
14862
|
-
|
|
14863
|
-
|
|
14864
|
-
|
|
14865
|
-
|
|
14954
|
+
@if (showLabel || canClose) {
|
|
14955
|
+
<header class="drawer__header">
|
|
14956
|
+
@if (showLabel) {
|
|
14957
|
+
<h2 class="mat-title">{{ 'CONFIGURATION' | localize }}</h2>
|
|
14958
|
+
}
|
|
14959
|
+
@if (canClose) {
|
|
14960
|
+
<button class="close-lite-selector" (click)="closeClick.emit()">
|
|
14961
|
+
<co-icon [iconData]="iconService.getIcon(icons.Cross)"></co-icon>
|
|
14962
|
+
</button>
|
|
14963
|
+
}
|
|
14964
|
+
</header>
|
|
14965
|
+
}
|
|
14966
|
+
@if (selections && selections.length > 0) {
|
|
14967
|
+
<div class="selections-content small-scrollbar">
|
|
14968
|
+
@for (sel of selections; track sel; let index = $index) {
|
|
14969
|
+
<co-selections-summary-line
|
|
14970
|
+
[selection]="sel"
|
|
14971
|
+
[answersTemplate]="answersTemplate ? answersTemplate : undefined"
|
|
14972
|
+
[answerToShowFromSelectionText]="answerToShowFromSelectionText"
|
|
14973
|
+
[valutaSymbol]="valutaSymbol"
|
|
14974
|
+
(summaryLineClick)="handleClick(sel)"
|
|
14975
|
+
(summaryLineDelete)="handleDelete($event, sel)"
|
|
14976
|
+
(summaryLineRepeat)="handleRepeat($event, sel)"
|
|
14977
|
+
(customizeButtonClicked)="toggleElement(sel)"
|
|
14978
|
+
></co-selections-summary-line>
|
|
14979
|
+
}
|
|
14980
|
+
@if (showSaveAndLoadConfiguration) {
|
|
14981
|
+
<co-configuration-preset></co-configuration-preset>
|
|
14982
|
+
}
|
|
14983
|
+
@if (showAsConfigured) {
|
|
14984
|
+
<div class="sum">
|
|
14985
|
+
<label [textContent]="'AS_CONFIGURED' | localize"></label><span class="total-price"></span>
|
|
14986
|
+
<div class="price"> {{ configuratorConnectorService.totalPrice | priceDisplay }}</div>
|
|
14987
|
+
</div>
|
|
14988
|
+
}
|
|
14989
|
+
</div>
|
|
14990
|
+
}
|
|
14866
14991
|
`,
|
|
14867
14992
|
encapsulation: ViewEncapsulation.None,
|
|
14868
14993
|
standalone: false
|
|
@@ -14880,6 +15005,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
14880
15005
|
type: Input
|
|
14881
15006
|
}], answerToShowFromSelectionText: [{
|
|
14882
15007
|
type: Input
|
|
15008
|
+
}], showSaveAndLoadConfiguration: [{
|
|
15009
|
+
type: Input
|
|
14883
15010
|
}], customDimensions: [{
|
|
14884
15011
|
type: HostBinding,
|
|
14885
15012
|
args: ['class.custom-dimensions']
|
|
@@ -14939,6 +15066,7 @@ class LiteSelectorComponent {
|
|
|
14939
15066
|
canClose = true;
|
|
14940
15067
|
animateSlideout = true;
|
|
14941
15068
|
customDimensions = false;
|
|
15069
|
+
showSaveAndLoadConfiguration;
|
|
14942
15070
|
showChange = new EventEmitter();
|
|
14943
15071
|
answerChosen = new EventEmitter();
|
|
14944
15072
|
answerToShowFromSelectionText;
|
|
@@ -14991,7 +15119,7 @@ class LiteSelectorComponent {
|
|
|
14991
15119
|
// this.iOne.getMoodImageForAnswerSelection(answerSelected.answer, false);
|
|
14992
15120
|
}
|
|
14993
15121
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: LiteSelectorComponent, deps: [{ token: SwitchBuildFurnitureService }, { token: ConfiguratorConnectorService }, { token: ConfiguringService }], target: i0.ɵɵFactoryTarget.Component });
|
|
14994
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: LiteSelectorComponent, isStandalone: false, selector: "co-lite-selector", inputs: { showAnswers: "showAnswers", show: "show", showSelections: "showSelections", showLabel: "showLabel", canClose: "canClose", animateSlideout: "animateSlideout", customDimensions: "customDimensions" }, outputs: { showChange: "showChange", answerChosen: "answerChosen" }, host: { properties: { "class.co-lite-selector": "this.showClass", "class.custom-dimensions": "this.customDimensions" } }, viewQueries: [{ propertyName: "templateAnswers", first: true, predicate: ["templateAnswers"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: `
|
|
15122
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: LiteSelectorComponent, isStandalone: false, selector: "co-lite-selector", inputs: { showAnswers: "showAnswers", show: "show", showSelections: "showSelections", showLabel: "showLabel", canClose: "canClose", animateSlideout: "animateSlideout", customDimensions: "customDimensions", showSaveAndLoadConfiguration: "showSaveAndLoadConfiguration" }, outputs: { showChange: "showChange", answerChosen: "answerChosen" }, host: { properties: { "class.co-lite-selector": "this.showClass", "class.custom-dimensions": "this.customDimensions" } }, viewQueries: [{ propertyName: "templateAnswers", first: true, predicate: ["templateAnswers"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: `
|
|
14995
15123
|
<ng-container>
|
|
14996
15124
|
@if (showSelections && configuratorConnectorService.selectionsToDisplay.length > 0) {
|
|
14997
15125
|
<co-selections-summary
|
|
@@ -15003,11 +15131,11 @@ class LiteSelectorComponent {
|
|
|
15003
15131
|
[answersTemplate]="inlineAnswers ? templateAnswers : undefined"
|
|
15004
15132
|
[answerToShowFromSelectionText]="answerToShowFromSelectionText"
|
|
15005
15133
|
[selections]="configuratorConnectorService.selectionsToDisplay"
|
|
15134
|
+
[showSaveAndLoadConfiguration]="showSaveAndLoadConfiguration"
|
|
15006
15135
|
(selectSelection)="onSelectionsSummarySelectSelection($event)"
|
|
15007
15136
|
(repeatSelection)="onSelectionsSummarySelectSelection($event, false, true)"
|
|
15008
15137
|
(deleteSelection)="onSelectionsSummaryDeleteSelection($event)"
|
|
15009
|
-
(closeClick)="onCloseLiteSelectorButtonClick()"
|
|
15010
|
-
>
|
|
15138
|
+
(closeClick)="onCloseLiteSelectorButtonClick()">
|
|
15011
15139
|
</co-selections-summary>
|
|
15012
15140
|
}
|
|
15013
15141
|
@if (!inlineAnswers) {
|
|
@@ -15028,7 +15156,7 @@ class LiteSelectorComponent {
|
|
|
15028
15156
|
(answerChosen)="onAnswersSlideoutAnswerChosen($event)"
|
|
15029
15157
|
></co-answers-slideout>
|
|
15030
15158
|
</ng-template>
|
|
15031
|
-
`, isInline: true, dependencies: [{ kind: "component", type: AnswersSlideoutComponent, selector: "co-answers-slideout", inputs: ["isShown", "question", "showTitle", "showFilter", "answers", "useSlideout", "customDimensions"], outputs: ["isShownChange", "answerChosen"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SelectionsSummaryComponent, selector: "co-selections-summary", inputs: ["selections", "showLabel", "canClose", "answersTemplate", "answerToShowFromSelectionText", "customDimensions"], outputs: ["closeClick", "cancelAnswers", "selectSelection", "repeatSelection", "deleteSelection"] }], animations: [
|
|
15159
|
+
`, isInline: true, dependencies: [{ kind: "component", type: AnswersSlideoutComponent, selector: "co-answers-slideout", inputs: ["isShown", "question", "showTitle", "showFilter", "answers", "useSlideout", "customDimensions"], outputs: ["isShownChange", "answerChosen"] }, { kind: "directive", type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SelectionsSummaryComponent, selector: "co-selections-summary", inputs: ["selections", "showLabel", "canClose", "answersTemplate", "answerToShowFromSelectionText", "showSaveAndLoadConfiguration", "customDimensions"], outputs: ["closeClick", "cancelAnswers", "selectSelection", "repeatSelection", "deleteSelection"] }], animations: [
|
|
15032
15160
|
trigger('showSelections', [
|
|
15033
15161
|
state('void', style({ 'transform': 'translateX(100%)', opacity: 0 })),
|
|
15034
15162
|
state('*', style({ 'transform': 'translateX(0%)', opacity: 1 })),
|
|
@@ -15052,11 +15180,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
15052
15180
|
[answersTemplate]="inlineAnswers ? templateAnswers : undefined"
|
|
15053
15181
|
[answerToShowFromSelectionText]="answerToShowFromSelectionText"
|
|
15054
15182
|
[selections]="configuratorConnectorService.selectionsToDisplay"
|
|
15183
|
+
[showSaveAndLoadConfiguration]="showSaveAndLoadConfiguration"
|
|
15055
15184
|
(selectSelection)="onSelectionsSummarySelectSelection($event)"
|
|
15056
15185
|
(repeatSelection)="onSelectionsSummarySelectSelection($event, false, true)"
|
|
15057
15186
|
(deleteSelection)="onSelectionsSummaryDeleteSelection($event)"
|
|
15058
|
-
(closeClick)="onCloseLiteSelectorButtonClick()"
|
|
15059
|
-
>
|
|
15187
|
+
(closeClick)="onCloseLiteSelectorButtonClick()">
|
|
15060
15188
|
</co-selections-summary>
|
|
15061
15189
|
}
|
|
15062
15190
|
@if (!inlineAnswers) {
|
|
@@ -15111,6 +15239,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
15111
15239
|
args: ['class.custom-dimensions']
|
|
15112
15240
|
}, {
|
|
15113
15241
|
type: Input
|
|
15242
|
+
}], showSaveAndLoadConfiguration: [{
|
|
15243
|
+
type: Input
|
|
15114
15244
|
}], showChange: [{
|
|
15115
15245
|
type: Output
|
|
15116
15246
|
}], answerChosen: [{
|
|
@@ -15139,6 +15269,7 @@ class ProductConfiguratorSelectorOptionTileComponent {
|
|
|
15139
15269
|
icons = IconEnum;
|
|
15140
15270
|
option;
|
|
15141
15271
|
tileClass = 'small';
|
|
15272
|
+
noLabel = false;
|
|
15142
15273
|
selectionClicked = new EventEmitter();
|
|
15143
15274
|
constructor(configuratorConnectorService, iconService, settingsService) {
|
|
15144
15275
|
this.configuratorConnectorService = configuratorConnectorService;
|
|
@@ -15149,7 +15280,7 @@ class ProductConfiguratorSelectorOptionTileComponent {
|
|
|
15149
15280
|
this.selectionClicked.emit();
|
|
15150
15281
|
}
|
|
15151
15282
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ProductConfiguratorSelectorOptionTileComponent, deps: [{ token: ConfiguratorConnectorService }, { token: IconCacheService }, { token: SettingsService }], target: i0.ɵɵFactoryTarget.Component });
|
|
15152
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: ProductConfiguratorSelectorOptionTileComponent, isStandalone: false, selector: "co-product-configurator-selector-option-tile", inputs: { option: "option", tileClass: "tileClass" }, outputs: { selectionClicked: "selectionClicked" }, host: { properties: { "class.co-product-configurator-selector-option-tile": "this.showClass" } }, ngImport: i0, template: `
|
|
15283
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: ProductConfiguratorSelectorOptionTileComponent, isStandalone: false, selector: "co-product-configurator-selector-option-tile", inputs: { option: "option", tileClass: "tileClass", noLabel: "noLabel" }, outputs: { selectionClicked: "selectionClicked" }, host: { properties: { "class.co-product-configurator-selector-option-tile": "this.showClass" } }, ngImport: i0, template: `
|
|
15153
15284
|
<!-- When selected show checkmark -->
|
|
15154
15285
|
<div
|
|
15155
15286
|
class="configurator-selector-option-tile-container configurator-selector-option-tile-container-{{this.tileClass}}"
|
|
@@ -15173,14 +15304,16 @@ class ProductConfiguratorSelectorOptionTileComponent {
|
|
|
15173
15304
|
}
|
|
15174
15305
|
</div>
|
|
15175
15306
|
<!-- Answer text -->
|
|
15176
|
-
|
|
15177
|
-
|
|
15178
|
-
|
|
15179
|
-
|
|
15180
|
-
|
|
15181
|
-
|
|
15307
|
+
@if (!noLabel) {
|
|
15308
|
+
<div class="product-configurator-selector-option-tile-description">
|
|
15309
|
+
@if (option.nodeText) {
|
|
15310
|
+
<p [textContent]="option.nodeText | googleTranslate | async"></p>
|
|
15311
|
+
}
|
|
15312
|
+
@if (!option.nodeText) {
|
|
15313
|
+
<p [textContent]="'Skip / Cancel' | googleTranslate | async"></p>
|
|
15314
|
+
}
|
|
15315
|
+
</div>
|
|
15182
15316
|
}
|
|
15183
|
-
</div>
|
|
15184
15317
|
</div>
|
|
15185
15318
|
`, isInline: true, dependencies: [{ kind: "component", type: i4.IconComponent, selector: "co-icon", inputs: ["icon", "iconData"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: GoogleTranslatePipe, name: "googleTranslate" }], encapsulation: i0.ViewEncapsulation.None });
|
|
15186
15319
|
}
|
|
@@ -15212,14 +15345,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
15212
15345
|
}
|
|
15213
15346
|
</div>
|
|
15214
15347
|
<!-- Answer text -->
|
|
15215
|
-
|
|
15216
|
-
|
|
15217
|
-
|
|
15218
|
-
|
|
15219
|
-
|
|
15220
|
-
|
|
15348
|
+
@if (!noLabel) {
|
|
15349
|
+
<div class="product-configurator-selector-option-tile-description">
|
|
15350
|
+
@if (option.nodeText) {
|
|
15351
|
+
<p [textContent]="option.nodeText | googleTranslate | async"></p>
|
|
15352
|
+
}
|
|
15353
|
+
@if (!option.nodeText) {
|
|
15354
|
+
<p [textContent]="'Skip / Cancel' | googleTranslate | async"></p>
|
|
15355
|
+
}
|
|
15356
|
+
</div>
|
|
15221
15357
|
}
|
|
15222
|
-
</div>
|
|
15223
15358
|
</div>
|
|
15224
15359
|
`,
|
|
15225
15360
|
encapsulation: ViewEncapsulation.None,
|
|
@@ -15232,6 +15367,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
15232
15367
|
type: Input
|
|
15233
15368
|
}], tileClass: [{
|
|
15234
15369
|
type: Input
|
|
15370
|
+
}], noLabel: [{
|
|
15371
|
+
type: Input
|
|
15235
15372
|
}], selectionClicked: [{
|
|
15236
15373
|
type: Output
|
|
15237
15374
|
}] } });
|
|
@@ -15498,13 +15635,24 @@ class ProductConfiguratorSelectorOptionComponent {
|
|
|
15498
15635
|
selection;
|
|
15499
15636
|
listOfChoices;
|
|
15500
15637
|
markAsException;
|
|
15638
|
+
showGlobalAll = false;
|
|
15639
|
+
groupedSubShow = true;
|
|
15501
15640
|
configurationDisplayOption = ConfigurationDisplayOption;
|
|
15502
15641
|
selectionClass = '';
|
|
15503
15642
|
showAllTiles = false;
|
|
15504
15643
|
maxVisibleTiles = 10;
|
|
15505
|
-
maxVisibleSmallTiles =
|
|
15644
|
+
maxVisibleSmallTiles = 7;
|
|
15506
15645
|
visibleAnswers = [];
|
|
15507
15646
|
remainingTilesCount = 0;
|
|
15647
|
+
smallTileOptions = [
|
|
15648
|
+
ConfigurationDisplayOption.TileSmall,
|
|
15649
|
+
ConfigurationDisplayOption.SmallCircle,
|
|
15650
|
+
ConfigurationDisplayOption.SmallSquare
|
|
15651
|
+
];
|
|
15652
|
+
largeTileOptions = [
|
|
15653
|
+
ConfigurationDisplayOption.TileLarge,
|
|
15654
|
+
ConfigurationDisplayOption.TileRounded
|
|
15655
|
+
];
|
|
15508
15656
|
constructor(configuratorConnectorService, settingsService, productConfiguratorService) {
|
|
15509
15657
|
this.configuratorConnectorService = configuratorConnectorService;
|
|
15510
15658
|
this.settingsService = settingsService;
|
|
@@ -15512,7 +15660,7 @@ class ProductConfiguratorSelectorOptionComponent {
|
|
|
15512
15660
|
}
|
|
15513
15661
|
ngOnInit() {
|
|
15514
15662
|
if (this.selection && this.selection.displayOptionControl == null) {
|
|
15515
|
-
this.selection.displayOptionControl = ConfigurationDisplayOption.
|
|
15663
|
+
this.selection.displayOptionControl = ConfigurationDisplayOption.TileLarge;
|
|
15516
15664
|
}
|
|
15517
15665
|
if (this.markAsException) {
|
|
15518
15666
|
this.selectionClass = 'selection-exception selection-container-' + this.selection.displayOptionControl;
|
|
@@ -15528,8 +15676,23 @@ class ProductConfiguratorSelectorOptionComponent {
|
|
|
15528
15676
|
this.configuratorConnectorService.getImageForAnswer(selectionCopy);
|
|
15529
15677
|
this.listOfChoices.push(selectionCopy);
|
|
15530
15678
|
}
|
|
15679
|
+
if (this.showGlobalAll) {
|
|
15680
|
+
this.showAllTiles = true;
|
|
15681
|
+
}
|
|
15531
15682
|
this._calculateVisibleAnswers();
|
|
15532
15683
|
}
|
|
15684
|
+
ngOnChanges(changes) {
|
|
15685
|
+
if (changes.showGlobalAll && !changes.showGlobalAll.firstChange) {
|
|
15686
|
+
this.showAllTiles = !!changes.showGlobalAll.currentValue;
|
|
15687
|
+
this._calculateVisibleAnswers();
|
|
15688
|
+
}
|
|
15689
|
+
if (changes.listOfChoices && !changes.listOfChoices.firstChange) {
|
|
15690
|
+
this._calculateVisibleAnswers();
|
|
15691
|
+
}
|
|
15692
|
+
if (changes.selection && !changes.selection.firstChange) {
|
|
15693
|
+
this._calculateVisibleAnswers();
|
|
15694
|
+
}
|
|
15695
|
+
}
|
|
15533
15696
|
selectionClicked(answer) {
|
|
15534
15697
|
this.productConfiguratorService.selectSelection.emit(answer);
|
|
15535
15698
|
}
|
|
@@ -15541,23 +15704,39 @@ class ProductConfiguratorSelectorOptionComponent {
|
|
|
15541
15704
|
this.showAllTiles = false;
|
|
15542
15705
|
this._calculateVisibleAnswers();
|
|
15543
15706
|
}
|
|
15707
|
+
getTileClass() {
|
|
15708
|
+
switch (this.selection.displayOptionControl) {
|
|
15709
|
+
case this.configurationDisplayOption.TileLarge:
|
|
15710
|
+
return 'large';
|
|
15711
|
+
case this.configurationDisplayOption.TileRounded:
|
|
15712
|
+
return 'rounded';
|
|
15713
|
+
case this.configurationDisplayOption.SmallCircle:
|
|
15714
|
+
return 'small-rounded';
|
|
15715
|
+
case this.configurationDisplayOption.SmallSquare:
|
|
15716
|
+
return 'small-square';
|
|
15717
|
+
default:
|
|
15718
|
+
return 'small';
|
|
15719
|
+
}
|
|
15720
|
+
}
|
|
15544
15721
|
_calculateVisibleAnswers() {
|
|
15545
|
-
if (this.selection.displayOptionControl
|
|
15546
|
-
|
|
15547
|
-
|
|
15548
|
-
|
|
15549
|
-
|
|
15550
|
-
|
|
15551
|
-
|
|
15722
|
+
if (this.largeTileOptions.includes(this.selection.displayOptionControl)) {
|
|
15723
|
+
const configuredMaxVisibleTiles = this.settingsService?.settings?.options?.maxVisibleTiles;
|
|
15724
|
+
if (configuredMaxVisibleTiles != null) {
|
|
15725
|
+
this.maxVisibleTiles = configuredMaxVisibleTiles;
|
|
15726
|
+
}
|
|
15727
|
+
this.visibleAnswers = this.showAllTiles
|
|
15728
|
+
? this.listOfChoices
|
|
15729
|
+
: this.listOfChoices.slice(0, this.maxVisibleTiles);
|
|
15552
15730
|
this.remainingTilesCount = Math.max(0, this.listOfChoices.length - this.maxVisibleTiles);
|
|
15553
15731
|
}
|
|
15554
|
-
else if (this.selection.displayOptionControl
|
|
15555
|
-
|
|
15556
|
-
|
|
15557
|
-
|
|
15558
|
-
else {
|
|
15559
|
-
this.visibleAnswers = this.listOfChoices.slice(0, this.maxVisibleSmallTiles);
|
|
15732
|
+
else if (this.smallTileOptions.includes(this.selection.displayOptionControl)) {
|
|
15733
|
+
const configuredMaxVisibleTiles = this.settingsService?.settings?.options?.maxVisibleSmallTiles;
|
|
15734
|
+
if (configuredMaxVisibleTiles != null) {
|
|
15735
|
+
this.maxVisibleSmallTiles = configuredMaxVisibleTiles;
|
|
15560
15736
|
}
|
|
15737
|
+
this.visibleAnswers = this.showAllTiles
|
|
15738
|
+
? this.listOfChoices
|
|
15739
|
+
: this.listOfChoices.slice(0, this.maxVisibleSmallTiles);
|
|
15561
15740
|
this.remainingTilesCount = Math.max(0, this.listOfChoices.length - this.maxVisibleSmallTiles);
|
|
15562
15741
|
}
|
|
15563
15742
|
else {
|
|
@@ -15566,11 +15745,11 @@ class ProductConfiguratorSelectorOptionComponent {
|
|
|
15566
15745
|
}
|
|
15567
15746
|
}
|
|
15568
15747
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ProductConfiguratorSelectorOptionComponent, deps: [{ token: ConfiguratorConnectorService }, { token: SettingsService }, { token: ProductConfiguratorService }], target: i0.ɵɵFactoryTarget.Component });
|
|
15569
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: ProductConfiguratorSelectorOptionComponent, isStandalone: false, selector: "co-product-configurator-selector-option", inputs: { selection: "selection", listOfChoices: "listOfChoices", markAsException: "markAsException" }, host: { properties: { "class.co-product-configurator-selector-option": "this.showClass" } }, ngImport: i0, template: `
|
|
15748
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: ProductConfiguratorSelectorOptionComponent, isStandalone: false, selector: "co-product-configurator-selector-option", inputs: { selection: "selection", listOfChoices: "listOfChoices", markAsException: "markAsException", showGlobalAll: "showGlobalAll", groupedSubShow: "groupedSubShow" }, host: { properties: { "class.co-product-configurator-selector-option": "this.showClass" } }, usesOnChanges: true, ngImport: i0, template: `
|
|
15570
15749
|
<div class="selector-wrapper {{this.selectionClass}}">
|
|
15571
15750
|
@if (this.selection.displayOptionControl !== configurationDisplayOption.DropDown
|
|
15572
|
-
&& this.selection.displayOptionControl
|
|
15573
|
-
&& this.selection.displayOptionControl
|
|
15751
|
+
&& !this.largeTileOptions.includes(this.selection.displayOptionControl)
|
|
15752
|
+
&& !this.smallTileOptions.includes(this.selection.displayOptionControl)) {
|
|
15574
15753
|
@for (child of listOfChoices; track child) {
|
|
15575
15754
|
<div class="selector-option-wrapper" [class.active]="child.selected ==='F'">
|
|
15576
15755
|
@if (this.selection.displayOptionControl === configurationDisplayOption.Button) {
|
|
@@ -15592,18 +15771,25 @@ class ProductConfiguratorSelectorOptionComponent {
|
|
|
15592
15771
|
(selectionClicked)="selectionClicked(child)">
|
|
15593
15772
|
</co-product-configurator-selector-option-tile>
|
|
15594
15773
|
}
|
|
15595
|
-
@if (this.selection.displayOptionControl === configurationDisplayOption.
|
|
15774
|
+
@if (this.selection.displayOptionControl === configurationDisplayOption.HorizontalTiles) {
|
|
15596
15775
|
<co-product-configurator-selector-option-tile
|
|
15597
15776
|
[option]="child"
|
|
15598
|
-
[tileClass]="'
|
|
15777
|
+
[tileClass]="'horizontal'"
|
|
15599
15778
|
(selectionClicked)="selectionClicked(child)">
|
|
15600
15779
|
</co-product-configurator-selector-option-tile>
|
|
15601
15780
|
}
|
|
15602
|
-
@if (this.selection.displayOptionControl === configurationDisplayOption.
|
|
15781
|
+
@if (this.selection.displayOptionControl === configurationDisplayOption.OnPage) {
|
|
15603
15782
|
<co-product-configurator-selector-option-tile
|
|
15604
|
-
|
|
15605
|
-
|
|
15606
|
-
|
|
15783
|
+
[option]="child"
|
|
15784
|
+
[tileClass]="'on-page'"
|
|
15785
|
+
(selectionClicked)="selectionClicked(child)">
|
|
15786
|
+
</co-product-configurator-selector-option-tile>
|
|
15787
|
+
}
|
|
15788
|
+
@if (this.selection.displayOptionControl === configurationDisplayOption.SlideOut) {
|
|
15789
|
+
<co-product-configurator-selector-option-tile
|
|
15790
|
+
[option]="child"
|
|
15791
|
+
[tileClass]="'slide-out'"
|
|
15792
|
+
(selectionClicked)="selectionClicked(child)">
|
|
15607
15793
|
</co-product-configurator-selector-option-tile>
|
|
15608
15794
|
}
|
|
15609
15795
|
</div>
|
|
@@ -15611,13 +15797,14 @@ class ProductConfiguratorSelectorOptionComponent {
|
|
|
15611
15797
|
}
|
|
15612
15798
|
|
|
15613
15799
|
@if (
|
|
15614
|
-
|
|
15615
|
-
|
|
15800
|
+
this.largeTileOptions.includes(this.selection.displayOptionControl)
|
|
15801
|
+
|| this.smallTileOptions.includes(this.selection.displayOptionControl)) {
|
|
15616
15802
|
@for (child of visibleAnswers; track child) {
|
|
15617
15803
|
<div class="selector-option-wrapper" [class.active]="child.selected ==='F'">
|
|
15618
15804
|
<co-product-configurator-selector-option-tile
|
|
15619
15805
|
[option]="child"
|
|
15620
|
-
[
|
|
15806
|
+
[noLabel]="this.selection.displayOptionControl === configurationDisplayOption.SmallCircle || this.selection.displayOptionControl === configurationDisplayOption.SmallSquare"
|
|
15807
|
+
[tileClass]="getTileClass()"
|
|
15621
15808
|
(selectionClicked)="selectionClicked(child)"
|
|
15622
15809
|
></co-product-configurator-selector-option-tile>
|
|
15623
15810
|
</div>
|
|
@@ -15625,18 +15812,16 @@ class ProductConfiguratorSelectorOptionComponent {
|
|
|
15625
15812
|
}
|
|
15626
15813
|
|
|
15627
15814
|
@if (this.selection.displayOptionControl === configurationDisplayOption.DropDown) {
|
|
15628
|
-
|
|
15629
|
-
|
|
15630
|
-
|
|
15631
|
-
|
|
15632
|
-
></co-product-configurator-selector-option-dropdown>
|
|
15633
|
-
}
|
|
15815
|
+
<co-product-configurator-selector-option-dropdown
|
|
15816
|
+
[options]="listOfChoices"
|
|
15817
|
+
(selectionClicked)="selectionClicked($event)"
|
|
15818
|
+
></co-product-configurator-selector-option-dropdown>
|
|
15634
15819
|
}
|
|
15635
15820
|
</div>
|
|
15636
15821
|
|
|
15637
15822
|
@if (
|
|
15638
|
-
|
|
15639
|
-
|
|
15823
|
+
(this.largeTileOptions.includes(this.selection.displayOptionControl) ||
|
|
15824
|
+
this.smallTileOptions.includes(this.selection.displayOptionControl)) && groupedSubShow) {
|
|
15640
15825
|
@if (!showAllTiles && remainingTilesCount > 0) {
|
|
15641
15826
|
<div class="show-more-container">
|
|
15642
15827
|
<span (click)="showMore()">
|
|
@@ -15653,7 +15838,7 @@ class ProductConfiguratorSelectorOptionComponent {
|
|
|
15653
15838
|
}
|
|
15654
15839
|
}
|
|
15655
15840
|
|
|
15656
|
-
`, isInline: true, dependencies: [{ kind: "component", type: ProductConfiguratorSelectorOptionTileComponent, selector: "co-product-configurator-selector-option-tile", inputs: ["option", "tileClass"], outputs: ["selectionClicked"] }, { kind: "component", type: ProductConfiguratorOptionCheckboxComponent, selector: "co-product-configurator-option-checkbox", inputs: ["option"], outputs: ["selectionClicked"] }, { kind: "component", type: ProductConfiguratorSelectorOptionButtonComponent, selector: "co-product-configurator-selector-option-button", inputs: ["option"], outputs: ["selectionClicked"] }, { kind: "component", type: ProductConfiguratorSelectorOptionDropDownComponent, selector: "co-product-configurator-selector-option-dropdown", inputs: ["options", "tileClass"], outputs: ["selectionClicked"] }, { kind: "pipe", type: LocalizePipe, name: "localize" }], animations: [
|
|
15841
|
+
`, isInline: true, dependencies: [{ kind: "component", type: ProductConfiguratorSelectorOptionTileComponent, selector: "co-product-configurator-selector-option-tile", inputs: ["option", "tileClass", "noLabel"], outputs: ["selectionClicked"] }, { kind: "component", type: ProductConfiguratorOptionCheckboxComponent, selector: "co-product-configurator-option-checkbox", inputs: ["option"], outputs: ["selectionClicked"] }, { kind: "component", type: ProductConfiguratorSelectorOptionButtonComponent, selector: "co-product-configurator-selector-option-button", inputs: ["option"], outputs: ["selectionClicked"] }, { kind: "component", type: ProductConfiguratorSelectorOptionDropDownComponent, selector: "co-product-configurator-selector-option-dropdown", inputs: ["options", "tileClass"], outputs: ["selectionClicked"] }, { kind: "pipe", type: LocalizePipe, name: "localize" }], animations: [
|
|
15657
15842
|
trigger('showSelections', [
|
|
15658
15843
|
state('void', style({ 'transform': 'translateX(100%)', opacity: 0 })),
|
|
15659
15844
|
state('*', style({ 'transform': 'translateX(0%)', opacity: 1 })),
|
|
@@ -15668,8 +15853,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
15668
15853
|
template: `
|
|
15669
15854
|
<div class="selector-wrapper {{this.selectionClass}}">
|
|
15670
15855
|
@if (this.selection.displayOptionControl !== configurationDisplayOption.DropDown
|
|
15671
|
-
&& this.selection.displayOptionControl
|
|
15672
|
-
&& this.selection.displayOptionControl
|
|
15856
|
+
&& !this.largeTileOptions.includes(this.selection.displayOptionControl)
|
|
15857
|
+
&& !this.smallTileOptions.includes(this.selection.displayOptionControl)) {
|
|
15673
15858
|
@for (child of listOfChoices; track child) {
|
|
15674
15859
|
<div class="selector-option-wrapper" [class.active]="child.selected ==='F'">
|
|
15675
15860
|
@if (this.selection.displayOptionControl === configurationDisplayOption.Button) {
|
|
@@ -15691,18 +15876,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
15691
15876
|
(selectionClicked)="selectionClicked(child)">
|
|
15692
15877
|
</co-product-configurator-selector-option-tile>
|
|
15693
15878
|
}
|
|
15694
|
-
@if (this.selection.displayOptionControl === configurationDisplayOption.
|
|
15879
|
+
@if (this.selection.displayOptionControl === configurationDisplayOption.HorizontalTiles) {
|
|
15695
15880
|
<co-product-configurator-selector-option-tile
|
|
15696
15881
|
[option]="child"
|
|
15697
|
-
[tileClass]="'
|
|
15882
|
+
[tileClass]="'horizontal'"
|
|
15698
15883
|
(selectionClicked)="selectionClicked(child)">
|
|
15699
15884
|
</co-product-configurator-selector-option-tile>
|
|
15700
15885
|
}
|
|
15701
|
-
@if (this.selection.displayOptionControl === configurationDisplayOption.
|
|
15886
|
+
@if (this.selection.displayOptionControl === configurationDisplayOption.OnPage) {
|
|
15702
15887
|
<co-product-configurator-selector-option-tile
|
|
15703
|
-
|
|
15704
|
-
|
|
15705
|
-
|
|
15888
|
+
[option]="child"
|
|
15889
|
+
[tileClass]="'on-page'"
|
|
15890
|
+
(selectionClicked)="selectionClicked(child)">
|
|
15891
|
+
</co-product-configurator-selector-option-tile>
|
|
15892
|
+
}
|
|
15893
|
+
@if (this.selection.displayOptionControl === configurationDisplayOption.SlideOut) {
|
|
15894
|
+
<co-product-configurator-selector-option-tile
|
|
15895
|
+
[option]="child"
|
|
15896
|
+
[tileClass]="'slide-out'"
|
|
15897
|
+
(selectionClicked)="selectionClicked(child)">
|
|
15706
15898
|
</co-product-configurator-selector-option-tile>
|
|
15707
15899
|
}
|
|
15708
15900
|
</div>
|
|
@@ -15710,13 +15902,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
15710
15902
|
}
|
|
15711
15903
|
|
|
15712
15904
|
@if (
|
|
15713
|
-
|
|
15714
|
-
|
|
15905
|
+
this.largeTileOptions.includes(this.selection.displayOptionControl)
|
|
15906
|
+
|| this.smallTileOptions.includes(this.selection.displayOptionControl)) {
|
|
15715
15907
|
@for (child of visibleAnswers; track child) {
|
|
15716
15908
|
<div class="selector-option-wrapper" [class.active]="child.selected ==='F'">
|
|
15717
15909
|
<co-product-configurator-selector-option-tile
|
|
15718
15910
|
[option]="child"
|
|
15719
|
-
[
|
|
15911
|
+
[noLabel]="this.selection.displayOptionControl === configurationDisplayOption.SmallCircle || this.selection.displayOptionControl === configurationDisplayOption.SmallSquare"
|
|
15912
|
+
[tileClass]="getTileClass()"
|
|
15720
15913
|
(selectionClicked)="selectionClicked(child)"
|
|
15721
15914
|
></co-product-configurator-selector-option-tile>
|
|
15722
15915
|
</div>
|
|
@@ -15724,18 +15917,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
15724
15917
|
}
|
|
15725
15918
|
|
|
15726
15919
|
@if (this.selection.displayOptionControl === configurationDisplayOption.DropDown) {
|
|
15727
|
-
|
|
15728
|
-
|
|
15729
|
-
|
|
15730
|
-
|
|
15731
|
-
></co-product-configurator-selector-option-dropdown>
|
|
15732
|
-
}
|
|
15920
|
+
<co-product-configurator-selector-option-dropdown
|
|
15921
|
+
[options]="listOfChoices"
|
|
15922
|
+
(selectionClicked)="selectionClicked($event)"
|
|
15923
|
+
></co-product-configurator-selector-option-dropdown>
|
|
15733
15924
|
}
|
|
15734
15925
|
</div>
|
|
15735
15926
|
|
|
15736
15927
|
@if (
|
|
15737
|
-
|
|
15738
|
-
|
|
15928
|
+
(this.largeTileOptions.includes(this.selection.displayOptionControl) ||
|
|
15929
|
+
this.smallTileOptions.includes(this.selection.displayOptionControl)) && groupedSubShow) {
|
|
15739
15930
|
@if (!showAllTiles && remainingTilesCount > 0) {
|
|
15740
15931
|
<div class="show-more-container">
|
|
15741
15932
|
<span (click)="showMore()">
|
|
@@ -15772,25 +15963,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
15772
15963
|
type: Input
|
|
15773
15964
|
}], markAsException: [{
|
|
15774
15965
|
type: Input
|
|
15966
|
+
}], showGlobalAll: [{
|
|
15967
|
+
type: Input
|
|
15968
|
+
}], groupedSubShow: [{
|
|
15969
|
+
type: Input
|
|
15775
15970
|
}] } });
|
|
15776
15971
|
|
|
15777
15972
|
class ProductConfiguratorSelectorComponent {
|
|
15778
15973
|
configuratorConnectorService;
|
|
15779
15974
|
settingsService;
|
|
15780
15975
|
iconService;
|
|
15781
|
-
showClass() {
|
|
15782
|
-
return true;
|
|
15783
|
-
}
|
|
15784
|
-
icons = IconEnum;
|
|
15785
|
-
exceptionContainer;
|
|
15786
15976
|
get hostClasses() {
|
|
15787
|
-
const classes = [
|
|
15788
|
-
|
|
15789
|
-
|
|
15790
|
-
|
|
15977
|
+
const classes = [
|
|
15978
|
+
'co-product-configurator-selector',
|
|
15979
|
+
`treelevel-${this.treeLevelIndex}`
|
|
15980
|
+
];
|
|
15981
|
+
if (!this._shouldBeVisible()) {
|
|
15982
|
+
classes.push('hidden-frontend');
|
|
15791
15983
|
}
|
|
15792
15984
|
return classes.join(' ');
|
|
15793
15985
|
}
|
|
15986
|
+
icons = IconEnum;
|
|
15987
|
+
exceptionContainer;
|
|
15794
15988
|
selection;
|
|
15795
15989
|
options;
|
|
15796
15990
|
lastNodeWithChildren;
|
|
@@ -15798,13 +15992,37 @@ class ProductConfiguratorSelectorComponent {
|
|
|
15798
15992
|
treeLevelIndex = 1;
|
|
15799
15993
|
isActive = true;
|
|
15800
15994
|
markAsException = false;
|
|
15995
|
+
showAll = false;
|
|
15996
|
+
suppressSubShowMore = false;
|
|
15997
|
+
useGroupedParentVisibility = false;
|
|
15801
15998
|
activate = new EventEmitter();
|
|
15802
|
-
get selectionIndexText() {
|
|
15803
|
-
return this.selectionIndex + '. ';
|
|
15804
|
-
}
|
|
15805
15999
|
selectionClass = '';
|
|
15806
16000
|
listOfChoices = [];
|
|
15807
16001
|
activeChildIndex = 0;
|
|
16002
|
+
localShowAll = false;
|
|
16003
|
+
get selectionIndexText() {
|
|
16004
|
+
return this.selectionIndex + '. ';
|
|
16005
|
+
}
|
|
16006
|
+
get expandButtonText() {
|
|
16007
|
+
if (this.getChildShowAll()) {
|
|
16008
|
+
return 'VIEW_LESS';
|
|
16009
|
+
}
|
|
16010
|
+
return this.groupedRemainingTilesCount > 0
|
|
16011
|
+
? `SHOW_ALL`
|
|
16012
|
+
: 'SHOW_ALL';
|
|
16013
|
+
}
|
|
16014
|
+
get suppressSubShowMoreForChildren() {
|
|
16015
|
+
return this.suppressSubShowMore || this.isGroupedSection();
|
|
16016
|
+
}
|
|
16017
|
+
get groupedRemainingTilesCount() {
|
|
16018
|
+
if (!this.isGroupedSection() || this.getChildShowAll()) {
|
|
16019
|
+
return 0;
|
|
16020
|
+
}
|
|
16021
|
+
return this._countGroupedTilesToReveal(this.options);
|
|
16022
|
+
}
|
|
16023
|
+
get useGroupedVisibilityForChildren() {
|
|
16024
|
+
return this.useGroupedParentVisibility || this.isGroupedSection();
|
|
16025
|
+
}
|
|
15808
16026
|
constructor(configuratorConnectorService, settingsService, iconService) {
|
|
15809
16027
|
this.configuratorConnectorService = configuratorConnectorService;
|
|
15810
16028
|
this.settingsService = settingsService;
|
|
@@ -15826,6 +16044,15 @@ class ProductConfiguratorSelectorComponent {
|
|
|
15826
16044
|
if (this.markAsException) {
|
|
15827
16045
|
this.showAndScroll();
|
|
15828
16046
|
}
|
|
16047
|
+
this._setActiveChildIndexFromSelection();
|
|
16048
|
+
}
|
|
16049
|
+
ngOnChanges(changes) {
|
|
16050
|
+
if (changes.options && !changes.options.firstChange) {
|
|
16051
|
+
this._setActiveChildIndexFromSelection();
|
|
16052
|
+
}
|
|
16053
|
+
if (changes.showAll && !changes.showAll.firstChange) {
|
|
16054
|
+
this._setActiveChildIndexFromSelection();
|
|
16055
|
+
}
|
|
15829
16056
|
}
|
|
15830
16057
|
showAndScroll() {
|
|
15831
16058
|
setTimeout(() => {
|
|
@@ -15835,8 +16062,128 @@ class ProductConfiguratorSelectorComponent {
|
|
|
15835
16062
|
onSubHeaderClick() {
|
|
15836
16063
|
this.activate.emit();
|
|
15837
16064
|
}
|
|
16065
|
+
onShowAllClick() {
|
|
16066
|
+
this.localShowAll = !this.localShowAll;
|
|
16067
|
+
}
|
|
16068
|
+
getIsChildVisible(index) {
|
|
16069
|
+
if (!this.useGroupedVisibilityForChildren) {
|
|
16070
|
+
return true;
|
|
16071
|
+
}
|
|
16072
|
+
if (this.getChildShowAll()) {
|
|
16073
|
+
return true;
|
|
16074
|
+
}
|
|
16075
|
+
return index === this.activeChildIndex;
|
|
16076
|
+
}
|
|
16077
|
+
isGroupedSection() {
|
|
16078
|
+
return this.treeLevelIndex === 1
|
|
16079
|
+
&& !this.lastNodeWithChildren
|
|
16080
|
+
&& this.settingsService.settings.options.groupedShowAllBtn
|
|
16081
|
+
&& Array.isArray(this.options)
|
|
16082
|
+
&& this.options.length > 1;
|
|
16083
|
+
}
|
|
16084
|
+
shouldShowExpandButton() {
|
|
16085
|
+
return this.isGroupedSection();
|
|
16086
|
+
}
|
|
16087
|
+
getChildShowAll() {
|
|
16088
|
+
return this.showAll || this.localShowAll;
|
|
16089
|
+
}
|
|
16090
|
+
_shouldBeVisible() {
|
|
16091
|
+
if (!this.useGroupedVisibilityForChildren) {
|
|
16092
|
+
return true;
|
|
16093
|
+
}
|
|
16094
|
+
if (this.getChildShowAll()) {
|
|
16095
|
+
return true;
|
|
16096
|
+
}
|
|
16097
|
+
return this.isActive;
|
|
16098
|
+
}
|
|
16099
|
+
_setActiveChildIndexFromSelection() {
|
|
16100
|
+
if (!Array.isArray(this.options) || this.options.length === 0) {
|
|
16101
|
+
this.activeChildIndex = 0;
|
|
16102
|
+
return;
|
|
16103
|
+
}
|
|
16104
|
+
const selectedIndex = this.options.findIndex(option => this._hasSelectedOption(option));
|
|
16105
|
+
this.activeChildIndex = selectedIndex >= 0 ? selectedIndex : 0;
|
|
16106
|
+
}
|
|
16107
|
+
_hasSelectedOption(option) {
|
|
16108
|
+
if (!option) {
|
|
16109
|
+
return false;
|
|
16110
|
+
}
|
|
16111
|
+
if (option.selector && option.selector.selected === 'F') {
|
|
16112
|
+
return true;
|
|
16113
|
+
}
|
|
16114
|
+
if (!Array.isArray(option.selectorOptions) || option.selectorOptions.length === 0) {
|
|
16115
|
+
return false;
|
|
16116
|
+
}
|
|
16117
|
+
return option.selectorOptions.some(childOption => this._hasSelectedOption(childOption));
|
|
16118
|
+
}
|
|
16119
|
+
_countRemainingTiles(options) {
|
|
16120
|
+
if (!Array.isArray(options) || options.length === 0) {
|
|
16121
|
+
return 0;
|
|
16122
|
+
}
|
|
16123
|
+
let total = 0;
|
|
16124
|
+
for (const option of options) {
|
|
16125
|
+
if (!option) {
|
|
16126
|
+
continue;
|
|
16127
|
+
}
|
|
16128
|
+
if (option.lastNodeWithChildren) {
|
|
16129
|
+
total += this._remainingTilesForLeaf(option);
|
|
16130
|
+
}
|
|
16131
|
+
else if (Array.isArray(option.selectorOptions)) {
|
|
16132
|
+
total += this._countRemainingTiles(option.selectorOptions);
|
|
16133
|
+
}
|
|
16134
|
+
}
|
|
16135
|
+
return total;
|
|
16136
|
+
}
|
|
16137
|
+
_countGroupedTilesToReveal(options) {
|
|
16138
|
+
if (!Array.isArray(options) || options.length === 0) {
|
|
16139
|
+
return 0;
|
|
16140
|
+
}
|
|
16141
|
+
let total = 0;
|
|
16142
|
+
options.forEach((option, index) => {
|
|
16143
|
+
if (index === this.activeChildIndex) {
|
|
16144
|
+
total += this._countRemainingTiles([option]);
|
|
16145
|
+
}
|
|
16146
|
+
else {
|
|
16147
|
+
total += this._countAllTiles(option);
|
|
16148
|
+
}
|
|
16149
|
+
});
|
|
16150
|
+
return total;
|
|
16151
|
+
}
|
|
16152
|
+
_countAllTiles(option) {
|
|
16153
|
+
if (!option) {
|
|
16154
|
+
return 0;
|
|
16155
|
+
}
|
|
16156
|
+
if (option.lastNodeWithChildren) {
|
|
16157
|
+
return Array.isArray(option.selectorOptions)
|
|
16158
|
+
? option.selectorOptions.length
|
|
16159
|
+
: 0;
|
|
16160
|
+
}
|
|
16161
|
+
if (!Array.isArray(option.selectorOptions)) {
|
|
16162
|
+
return 0;
|
|
16163
|
+
}
|
|
16164
|
+
return option.selectorOptions.reduce((total, childOption) => total + this._countAllTiles(childOption), 0);
|
|
16165
|
+
}
|
|
16166
|
+
_remainingTilesForLeaf(option) {
|
|
16167
|
+
if (!option?.selectorOptions || !option.selector) {
|
|
16168
|
+
return 0;
|
|
16169
|
+
}
|
|
16170
|
+
const displayOption = option.selector.displayOptionControl;
|
|
16171
|
+
const count = option.selectorOptions.length;
|
|
16172
|
+
if (displayOption === ConfigurationDisplayOption.TileLarge
|
|
16173
|
+
|| displayOption === ConfigurationDisplayOption.TileRounded) {
|
|
16174
|
+
const maxVisibleTiles = this.settingsService?.settings?.options?.maxVisibleTiles ?? 10;
|
|
16175
|
+
return Math.max(0, count - maxVisibleTiles);
|
|
16176
|
+
}
|
|
16177
|
+
if (displayOption === ConfigurationDisplayOption.TileSmall
|
|
16178
|
+
|| displayOption === ConfigurationDisplayOption.SmallCircle
|
|
16179
|
+
|| displayOption === ConfigurationDisplayOption.SmallSquare) {
|
|
16180
|
+
const maxVisibleSmallTiles = this.settingsService?.settings?.options?.maxVisibleSmallTiles ?? 24;
|
|
16181
|
+
return Math.max(0, count - maxVisibleSmallTiles);
|
|
16182
|
+
}
|
|
16183
|
+
return 0;
|
|
16184
|
+
}
|
|
15838
16185
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ProductConfiguratorSelectorComponent, deps: [{ token: ConfiguratorConnectorService }, { token: SettingsService }, { token: IconCacheService }], target: i0.ɵɵFactoryTarget.Component });
|
|
15839
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: ProductConfiguratorSelectorComponent, isStandalone: false, selector: "co-product-configurator-selector", inputs: { selection: "selection", options: "options", lastNodeWithChildren: "lastNodeWithChildren", selectionIndex: "selectionIndex", treeLevelIndex: "treeLevelIndex", isActive: "isActive", markAsException: "markAsException" }, outputs: { activate: "activate" }, host: { properties: { "class
|
|
16186
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: ProductConfiguratorSelectorComponent, isStandalone: false, selector: "co-product-configurator-selector", inputs: { selection: "selection", options: "options", lastNodeWithChildren: "lastNodeWithChildren", selectionIndex: "selectionIndex", treeLevelIndex: "treeLevelIndex", isActive: "isActive", markAsException: "markAsException", showAll: "showAll", suppressSubShowMore: "suppressSubShowMore", useGroupedParentVisibility: "useGroupedParentVisibility" }, outputs: { activate: "activate" }, host: { properties: { "class": "this.hostClasses" } }, viewQueries: [{ propertyName: "exceptionContainer", first: true, predicate: ["exceptionContainer"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
|
15840
16187
|
<div class="selector-container">
|
|
15841
16188
|
<!--
|
|
15842
16189
|
Based on the threeLevel and the length op options we got a couple of flavours
|
|
@@ -15885,7 +16232,9 @@ class ProductConfiguratorSelectorComponent {
|
|
|
15885
16232
|
<co-product-configurator-selector-option
|
|
15886
16233
|
[selection]="selection"
|
|
15887
16234
|
[listOfChoices]="listOfChoices"
|
|
15888
|
-
[
|
|
16235
|
+
[groupedSubShow]="!suppressSubShowMoreForChildren"
|
|
16236
|
+
[markAsException]="markAsException"
|
|
16237
|
+
[showGlobalAll]="getChildShowAll()">
|
|
15889
16238
|
</co-product-configurator-selector-option>
|
|
15890
16239
|
}
|
|
15891
16240
|
</div>
|
|
@@ -15898,13 +16247,29 @@ class ProductConfiguratorSelectorComponent {
|
|
|
15898
16247
|
[lastNodeWithChildren]="displaySelection.lastNodeWithChildren"
|
|
15899
16248
|
[selectionIndex]="index + 1"
|
|
15900
16249
|
[treeLevelIndex]="treeLevelIndex + 1"
|
|
15901
|
-
[
|
|
16250
|
+
[showAll]="getChildShowAll()"
|
|
16251
|
+
[isActive]="getIsChildVisible(index)"
|
|
16252
|
+
[suppressSubShowMore]="suppressSubShowMoreForChildren"
|
|
16253
|
+
[useGroupedParentVisibility]="useGroupedVisibilityForChildren"
|
|
15902
16254
|
[markAsException]="displaySelection.markForExceptionNotification"
|
|
15903
16255
|
(activate)="activeChildIndex = index">
|
|
15904
16256
|
</co-product-configurator-selector>
|
|
15905
16257
|
}
|
|
15906
16258
|
}
|
|
15907
|
-
|
|
16259
|
+
@if (shouldShowExpandButton()) {
|
|
16260
|
+
<div class="show-more-container" (click)="onShowAllClick()">
|
|
16261
|
+
<span class="show-all-button show-more-text-link"
|
|
16262
|
+
[textContent]="expandButtonText | localize">
|
|
16263
|
+
</span>
|
|
16264
|
+
|
|
16265
|
+
@if (this.groupedRemainingTilesCount > 0) {
|
|
16266
|
+
<span class="show-all-button show-more-text-link counter"
|
|
16267
|
+
[textContent]="'(' + this.groupedRemainingTilesCount + ')'">
|
|
16268
|
+
</span>
|
|
16269
|
+
}
|
|
16270
|
+
</div>
|
|
16271
|
+
}
|
|
16272
|
+
`, isInline: true, dependencies: [{ kind: "component", type: i4.IconComponent, selector: "co-icon", inputs: ["icon", "iconData"] }, { kind: "component", type: ProductConfiguratorSelectorOptionComponent, selector: "co-product-configurator-selector-option", inputs: ["selection", "listOfChoices", "markAsException", "showGlobalAll", "groupedSubShow"] }, { kind: "component", type: ProductConfiguratorSelectorComponent, selector: "co-product-configurator-selector", inputs: ["selection", "options", "lastNodeWithChildren", "selectionIndex", "treeLevelIndex", "isActive", "markAsException", "showAll", "suppressSubShowMore", "useGroupedParentVisibility"], outputs: ["activate"] }, { kind: "pipe", type: LocalizePipe, name: "localize" }, { kind: "pipe", type: GoogleTranslatePipe, name: "googleTranslate" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }], animations: [
|
|
15908
16273
|
trigger('showSelections', [
|
|
15909
16274
|
state('void', style({ 'transform': 'translateX(100%)', opacity: 0 })),
|
|
15910
16275
|
state('*', style({ 'transform': 'translateX(0%)', opacity: 1 })),
|
|
@@ -15965,7 +16330,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
15965
16330
|
<co-product-configurator-selector-option
|
|
15966
16331
|
[selection]="selection"
|
|
15967
16332
|
[listOfChoices]="listOfChoices"
|
|
15968
|
-
[
|
|
16333
|
+
[groupedSubShow]="!suppressSubShowMoreForChildren"
|
|
16334
|
+
[markAsException]="markAsException"
|
|
16335
|
+
[showGlobalAll]="getChildShowAll()">
|
|
15969
16336
|
</co-product-configurator-selector-option>
|
|
15970
16337
|
}
|
|
15971
16338
|
</div>
|
|
@@ -15978,12 +16345,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
15978
16345
|
[lastNodeWithChildren]="displaySelection.lastNodeWithChildren"
|
|
15979
16346
|
[selectionIndex]="index + 1"
|
|
15980
16347
|
[treeLevelIndex]="treeLevelIndex + 1"
|
|
15981
|
-
[
|
|
16348
|
+
[showAll]="getChildShowAll()"
|
|
16349
|
+
[isActive]="getIsChildVisible(index)"
|
|
16350
|
+
[suppressSubShowMore]="suppressSubShowMoreForChildren"
|
|
16351
|
+
[useGroupedParentVisibility]="useGroupedVisibilityForChildren"
|
|
15982
16352
|
[markAsException]="displaySelection.markForExceptionNotification"
|
|
15983
16353
|
(activate)="activeChildIndex = index">
|
|
15984
16354
|
</co-product-configurator-selector>
|
|
15985
16355
|
}
|
|
15986
16356
|
}
|
|
16357
|
+
@if (shouldShowExpandButton()) {
|
|
16358
|
+
<div class="show-more-container" (click)="onShowAllClick()">
|
|
16359
|
+
<span class="show-all-button show-more-text-link"
|
|
16360
|
+
[textContent]="expandButtonText | localize">
|
|
16361
|
+
</span>
|
|
16362
|
+
|
|
16363
|
+
@if (this.groupedRemainingTilesCount > 0) {
|
|
16364
|
+
<span class="show-all-button show-more-text-link counter"
|
|
16365
|
+
[textContent]="'(' + this.groupedRemainingTilesCount + ')'">
|
|
16366
|
+
</span>
|
|
16367
|
+
}
|
|
16368
|
+
</div>
|
|
16369
|
+
}
|
|
15987
16370
|
`,
|
|
15988
16371
|
encapsulation: ViewEncapsulation.None,
|
|
15989
16372
|
animations: [
|
|
@@ -15995,15 +16378,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
15995
16378
|
],
|
|
15996
16379
|
standalone: false
|
|
15997
16380
|
}]
|
|
15998
|
-
}], ctorParameters: () => [{ type: ConfiguratorConnectorService }, { type: SettingsService }, { type: IconCacheService }], propDecorators: {
|
|
16381
|
+
}], ctorParameters: () => [{ type: ConfiguratorConnectorService }, { type: SettingsService }, { type: IconCacheService }], propDecorators: { hostClasses: [{
|
|
15999
16382
|
type: HostBinding,
|
|
16000
|
-
args: ['class
|
|
16383
|
+
args: ['class']
|
|
16001
16384
|
}], exceptionContainer: [{
|
|
16002
16385
|
type: ViewChild,
|
|
16003
16386
|
args: ['exceptionContainer']
|
|
16004
|
-
}], hostClasses: [{
|
|
16005
|
-
type: HostBinding,
|
|
16006
|
-
args: ['class']
|
|
16007
16387
|
}], selection: [{
|
|
16008
16388
|
type: Input
|
|
16009
16389
|
}], options: [{
|
|
@@ -16018,6 +16398,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
16018
16398
|
type: Input
|
|
16019
16399
|
}], markAsException: [{
|
|
16020
16400
|
type: Input
|
|
16401
|
+
}], showAll: [{
|
|
16402
|
+
type: Input
|
|
16403
|
+
}], suppressSubShowMore: [{
|
|
16404
|
+
type: Input
|
|
16405
|
+
}], useGroupedParentVisibility: [{
|
|
16406
|
+
type: Input
|
|
16021
16407
|
}], activate: [{
|
|
16022
16408
|
type: Output
|
|
16023
16409
|
}] } });
|
|
@@ -16050,6 +16436,7 @@ class ProductConfiguratorComponent {
|
|
|
16050
16436
|
showLabel = true;
|
|
16051
16437
|
canClose = true;
|
|
16052
16438
|
customDimensions = false;
|
|
16439
|
+
showSaveAndLoadConfiguration;
|
|
16053
16440
|
showChange = new EventEmitter();
|
|
16054
16441
|
answerChosen = new EventEmitter();
|
|
16055
16442
|
valutaSymbol = '€'; // TODO this should be a setting
|
|
@@ -16103,7 +16490,7 @@ class ProductConfiguratorComponent {
|
|
|
16103
16490
|
this.showChange.emit(false);
|
|
16104
16491
|
}
|
|
16105
16492
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ProductConfiguratorComponent, deps: [{ token: ConfiguratorConnectorService }, { token: SwitchBuildFurnitureService }, { token: SettingsService }, { token: ProductConfiguratorService }, { token: IconCacheService }, { token: i1.DomSanitizer }, { token: ConfiguringService }], target: i0.ɵɵFactoryTarget.Component });
|
|
16106
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: ProductConfiguratorComponent, isStandalone: false, selector: "co-product-configurator", inputs: { show: "show", showHeaderInformation: "showHeaderInformation", showSelections: "showSelections", showLabel: "showLabel", canClose: "canClose", customDimensions: "customDimensions" }, outputs: { showChange: "showChange", answerChosen: "answerChosen" }, host: { properties: { "class.co-product-configurator": "this.showClass" } }, ngImport: i0, template: `
|
|
16493
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: ProductConfiguratorComponent, isStandalone: false, selector: "co-product-configurator", inputs: { show: "show", showHeaderInformation: "showHeaderInformation", showSelections: "showSelections", showLabel: "showLabel", canClose: "canClose", customDimensions: "customDimensions", showSaveAndLoadConfiguration: "showSaveAndLoadConfiguration" }, outputs: { showChange: "showChange", answerChosen: "answerChosen" }, host: { properties: { "class.co-product-configurator": "this.showClass" } }, ngImport: i0, template: `
|
|
16107
16494
|
@if (show) {
|
|
16108
16495
|
<div class="product-configurator-container">
|
|
16109
16496
|
@if (showHeaderInformation) {
|
|
@@ -16112,11 +16499,16 @@ class ProductConfiguratorComponent {
|
|
|
16112
16499
|
<h2 class="product-configurator-header-text" [textContent]="article.name"></h2>
|
|
16113
16500
|
<p class="product-configurator-text" [innerHTML]="safeDescription"></p>
|
|
16114
16501
|
</div>
|
|
16115
|
-
|
|
16116
|
-
|
|
16117
|
-
<co-
|
|
16118
|
-
|
|
16119
|
-
|
|
16502
|
+
<div class="product-configurator-header-actions">
|
|
16503
|
+
@if (showSaveAndLoadConfiguration) {
|
|
16504
|
+
<co-configuration-preset></co-configuration-preset>
|
|
16505
|
+
}
|
|
16506
|
+
@if (canClose) {
|
|
16507
|
+
<div class="product-configurator-close" (click)="handleCloseClick()">
|
|
16508
|
+
<co-icon [iconData]="iconService.getIcon(icons.XmarkLightFull)"></co-icon>
|
|
16509
|
+
</div>
|
|
16510
|
+
}
|
|
16511
|
+
</div>
|
|
16120
16512
|
</div>
|
|
16121
16513
|
}
|
|
16122
16514
|
<div class="product-configurator-details" #scrollcontainer>
|
|
@@ -16144,7 +16536,7 @@ class ProductConfiguratorComponent {
|
|
|
16144
16536
|
}
|
|
16145
16537
|
</div>
|
|
16146
16538
|
}
|
|
16147
|
-
`, isInline: true, dependencies: [{ kind: "component", type: i4.IconComponent, selector: "co-icon", inputs: ["icon", "iconData"] }, { kind: "component", type: ProductConfiguratorSelectorComponent, selector: "co-product-configurator-selector", inputs: ["selection", "options", "lastNodeWithChildren", "selectionIndex", "treeLevelIndex", "isActive", "markAsException"], outputs: ["activate"] }, { kind: "pipe", type: i4.PriceDisplayPipe, name: "priceDisplay" }, { kind: "pipe", type: LocalizePipe, name: "localize" }], encapsulation: i0.ViewEncapsulation.None });
|
|
16539
|
+
`, isInline: true, dependencies: [{ kind: "component", type: i4.IconComponent, selector: "co-icon", inputs: ["icon", "iconData"] }, { kind: "component", type: ProductConfiguratorSelectorComponent, selector: "co-product-configurator-selector", inputs: ["selection", "options", "lastNodeWithChildren", "selectionIndex", "treeLevelIndex", "isActive", "markAsException", "showAll", "suppressSubShowMore", "useGroupedParentVisibility"], outputs: ["activate"] }, { kind: "component", type: ConfigurationPresetComponent, selector: "co-configuration-preset" }, { kind: "pipe", type: i4.PriceDisplayPipe, name: "priceDisplay" }, { kind: "pipe", type: LocalizePipe, name: "localize" }], encapsulation: i0.ViewEncapsulation.None });
|
|
16148
16540
|
}
|
|
16149
16541
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ProductConfiguratorComponent, decorators: [{
|
|
16150
16542
|
type: Component,
|
|
@@ -16159,11 +16551,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
16159
16551
|
<h2 class="product-configurator-header-text" [textContent]="article.name"></h2>
|
|
16160
16552
|
<p class="product-configurator-text" [innerHTML]="safeDescription"></p>
|
|
16161
16553
|
</div>
|
|
16162
|
-
|
|
16163
|
-
|
|
16164
|
-
<co-
|
|
16165
|
-
|
|
16166
|
-
|
|
16554
|
+
<div class="product-configurator-header-actions">
|
|
16555
|
+
@if (showSaveAndLoadConfiguration) {
|
|
16556
|
+
<co-configuration-preset></co-configuration-preset>
|
|
16557
|
+
}
|
|
16558
|
+
@if (canClose) {
|
|
16559
|
+
<div class="product-configurator-close" (click)="handleCloseClick()">
|
|
16560
|
+
<co-icon [iconData]="iconService.getIcon(icons.XmarkLightFull)"></co-icon>
|
|
16561
|
+
</div>
|
|
16562
|
+
}
|
|
16563
|
+
</div>
|
|
16167
16564
|
</div>
|
|
16168
16565
|
}
|
|
16169
16566
|
<div class="product-configurator-details" #scrollcontainer>
|
|
@@ -16210,12 +16607,225 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
16210
16607
|
type: Input
|
|
16211
16608
|
}], customDimensions: [{
|
|
16212
16609
|
type: Input
|
|
16610
|
+
}], showSaveAndLoadConfiguration: [{
|
|
16611
|
+
type: Input
|
|
16213
16612
|
}], showChange: [{
|
|
16214
16613
|
type: Output
|
|
16215
16614
|
}], answerChosen: [{
|
|
16216
16615
|
type: Output
|
|
16217
16616
|
}] } });
|
|
16218
16617
|
|
|
16618
|
+
class ConfigurationPresetDialogComponent {
|
|
16619
|
+
iconService;
|
|
16620
|
+
_configuringService;
|
|
16621
|
+
_configuratorConnectorService;
|
|
16622
|
+
_dictionaryService;
|
|
16623
|
+
_appEventService;
|
|
16624
|
+
icons = IconEnum;
|
|
16625
|
+
presetDialogMode = PresetDialogMode;
|
|
16626
|
+
showClass() {
|
|
16627
|
+
return true;
|
|
16628
|
+
}
|
|
16629
|
+
showDialog = false;
|
|
16630
|
+
instanceIdInput;
|
|
16631
|
+
dialogMode = PresetDialogMode.SAVE;
|
|
16632
|
+
showValidationErrors = false;
|
|
16633
|
+
validationError;
|
|
16634
|
+
_subs = [];
|
|
16635
|
+
constructor(iconService, _configuringService, _configuratorConnectorService, _dictionaryService, _appEventService) {
|
|
16636
|
+
this.iconService = iconService;
|
|
16637
|
+
this._configuringService = _configuringService;
|
|
16638
|
+
this._configuratorConnectorService = _configuratorConnectorService;
|
|
16639
|
+
this._dictionaryService = _dictionaryService;
|
|
16640
|
+
this._appEventService = _appEventService;
|
|
16641
|
+
this._subs.push(this._appEventService.changeConfigurationPresetDialogMode.subscribe((mode) => {
|
|
16642
|
+
this.handleOpenDialog(mode);
|
|
16643
|
+
}));
|
|
16644
|
+
}
|
|
16645
|
+
ngOnDestroy() {
|
|
16646
|
+
this._subs.forEach((sub) => sub.unsubscribe());
|
|
16647
|
+
}
|
|
16648
|
+
handleOpenDialog(mode) {
|
|
16649
|
+
if (mode === PresetDialogMode.SAVE) {
|
|
16650
|
+
const instanceId = this._configuringService.buildResult.instanceId;
|
|
16651
|
+
this._configuratorConnectorService.storePreset(instanceId).then((response) => {
|
|
16652
|
+
if (response && response.validationResult && response.validationResult.success) {
|
|
16653
|
+
this.instanceIdInput = response.resultObject;
|
|
16654
|
+
this.dialogMode = mode;
|
|
16655
|
+
this.showDialog = true;
|
|
16656
|
+
}
|
|
16657
|
+
});
|
|
16658
|
+
}
|
|
16659
|
+
else if (mode === PresetDialogMode.LOAD) {
|
|
16660
|
+
this.dialogMode = mode;
|
|
16661
|
+
this.showDialog = true;
|
|
16662
|
+
}
|
|
16663
|
+
}
|
|
16664
|
+
handleCloseClick() {
|
|
16665
|
+
this.showDialog = false;
|
|
16666
|
+
}
|
|
16667
|
+
handleCopySuccess() {
|
|
16668
|
+
this.instanceIdInput = this._dictionaryService.get('COPIED');
|
|
16669
|
+
}
|
|
16670
|
+
loadConfiguration() {
|
|
16671
|
+
const goodId = +this._configuringService.buildResult.goodId;
|
|
16672
|
+
this._configuratorConnectorService.initForPreset(this.instanceIdInput, goodId).then((response) => {
|
|
16673
|
+
if (response && response.validationResult && response.validationResult.success) {
|
|
16674
|
+
this.showDialog = false;
|
|
16675
|
+
const resultObject = this._configuringService.buildResult;
|
|
16676
|
+
resultObject.instanceId = response.resultObject;
|
|
16677
|
+
this._configuringService.configure(resultObject);
|
|
16678
|
+
}
|
|
16679
|
+
else {
|
|
16680
|
+
// error, shit not found
|
|
16681
|
+
if (response.validationResult && response.validationResult.messages && response.validationResult.messages.length > 0) {
|
|
16682
|
+
const firstMessage = response.validationResult.messages[0].message;
|
|
16683
|
+
this.showValidationErrors = true;
|
|
16684
|
+
this.validationError = firstMessage;
|
|
16685
|
+
}
|
|
16686
|
+
}
|
|
16687
|
+
});
|
|
16688
|
+
}
|
|
16689
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ConfigurationPresetDialogComponent, deps: [{ token: IconCacheService }, { token: ConfiguringService }, { token: ConfiguratorConnectorService }, { token: DictionaryService }, { token: AppEventService }], target: i0.ɵɵFactoryTarget.Component });
|
|
16690
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: ConfigurationPresetDialogComponent, isStandalone: false, selector: "co-configuration-preset-dialog", host: { properties: { "class.co-configuration-preset-dialog": "this.showClass" } }, ngImport: i0, template: `
|
|
16691
|
+
@if (showDialog) {
|
|
16692
|
+
<div class="configuration-preset-dialog">
|
|
16693
|
+
<div class="configuration-preset-dialog-container">
|
|
16694
|
+
<div class="configuration-preset-dialog-container-header">
|
|
16695
|
+
@if (dialogMode === presetDialogMode.SAVE) {
|
|
16696
|
+
<co-icon [iconData]="iconService.getIcon(icons.FloppyDiskLightFull)"></co-icon>
|
|
16697
|
+
<h3 [textContent]="'SAVE_CONFIGURATION' | localize"></h3>
|
|
16698
|
+
} @else if (dialogMode === presetDialogMode.LOAD) {
|
|
16699
|
+
<co-icon [iconData]="iconService.getIcon(icons.FolderOpenLightFull)"></co-icon>
|
|
16700
|
+
<h3 [textContent]="'LOAD_CONFIGURATION' | localize"></h3>
|
|
16701
|
+
}
|
|
16702
|
+
</div>
|
|
16703
|
+
<div class="configuration-preset-dialog-container-body">
|
|
16704
|
+
@if (dialogMode === presetDialogMode.SAVE) {
|
|
16705
|
+
<div class="save-success">
|
|
16706
|
+
<p class="save-success-text" [textContent]="instanceIdInput"></p>
|
|
16707
|
+
<co-button
|
|
16708
|
+
class="save-success-button"
|
|
16709
|
+
[cdkCopyToClipboard]="instanceIdInput"
|
|
16710
|
+
[iconData]="iconService.getIcon(icons.CopyRegularFull)"
|
|
16711
|
+
(onClick)="handleCopySuccess()">
|
|
16712
|
+
</co-button>
|
|
16713
|
+
</div>
|
|
16714
|
+
} @else if (dialogMode === presetDialogMode.LOAD) {
|
|
16715
|
+
<co-input-text
|
|
16716
|
+
[placeholder]="'CONFIGURATION_CODE' | localize"
|
|
16717
|
+
[(model)]="instanceIdInput"
|
|
16718
|
+
></co-input-text>
|
|
16719
|
+
|
|
16720
|
+
@if (showValidationErrors) {
|
|
16721
|
+
<div class="validation-error">
|
|
16722
|
+
<p [textContent]="validationError"></p>
|
|
16723
|
+
</div>
|
|
16724
|
+
}
|
|
16725
|
+
}
|
|
16726
|
+
</div>
|
|
16727
|
+
<div class="configuration-preset-dialog-container-footer">
|
|
16728
|
+
@if (dialogMode === presetDialogMode.LOAD) {
|
|
16729
|
+
<co-button
|
|
16730
|
+
class="button-as-link"
|
|
16731
|
+
[label]="'CANCEL' | localize"
|
|
16732
|
+
(onClick)="handleCloseClick()"
|
|
16733
|
+
></co-button>
|
|
16734
|
+
}
|
|
16735
|
+
@if (dialogMode === presetDialogMode.SAVE) {
|
|
16736
|
+
<co-button
|
|
16737
|
+
class="save-preset-button"
|
|
16738
|
+
[label]="'OK' | localize"
|
|
16739
|
+
(onClick)="handleCloseClick()">
|
|
16740
|
+
</co-button>
|
|
16741
|
+
} @else if (dialogMode === presetDialogMode.LOAD) {
|
|
16742
|
+
<co-button
|
|
16743
|
+
class="open-preset-button"
|
|
16744
|
+
[label]="'OPEN' | localize"
|
|
16745
|
+
(onClick)="loadConfiguration()">
|
|
16746
|
+
</co-button>
|
|
16747
|
+
}
|
|
16748
|
+
</div>
|
|
16749
|
+
</div>
|
|
16750
|
+
</div>
|
|
16751
|
+
}
|
|
16752
|
+
`, isInline: true, dependencies: [{ kind: "component", type: i4.ButtonComponent, selector: "co-button", inputs: ["label", "iconData", "iconDataRight", "isToggleButton", "isToggled", "hidden", "disabled"], outputs: ["onClick", "clickedWhileDisabled", "isToggledChange"] }, { kind: "component", type: i4.IconComponent, selector: "co-icon", inputs: ["icon", "iconData"] }, { kind: "component", type: i4.InputTextComponent, selector: "co-input-text", inputs: ["useContent", "placeholder", "align", "type", "formatPipe", "min", "max", "pattern", "digitsOnly", "excludePlusMinus", "showClearButton", "keyDownWhiteList", "showPlaceholderOnFocus", "leftIcon", "rightIcon", "leftIconData", "rightIconData", "selectOnFocus", "emptyPlace", "firstDayOfWeek", "noStyle", "hideArrowButtons", "model"], outputs: ["leftIconClick", "leftIconMouseDown", "leftIconMouseUp", "rightIconClick", "rightIconMouseDown", "rightIconMouseUp", "clearIconClick", "isFocused"] }, { kind: "directive", type: i7.CdkCopyToClipboard, selector: "[cdkCopyToClipboard]", inputs: ["cdkCopyToClipboard", "cdkCopyToClipboardAttempts"], outputs: ["cdkCopyToClipboardCopied"] }, { kind: "pipe", type: LocalizePipe, name: "localize" }], encapsulation: i0.ViewEncapsulation.None });
|
|
16753
|
+
}
|
|
16754
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ConfigurationPresetDialogComponent, decorators: [{
|
|
16755
|
+
type: Component,
|
|
16756
|
+
args: [{
|
|
16757
|
+
selector: 'co-configuration-preset-dialog',
|
|
16758
|
+
template: `
|
|
16759
|
+
@if (showDialog) {
|
|
16760
|
+
<div class="configuration-preset-dialog">
|
|
16761
|
+
<div class="configuration-preset-dialog-container">
|
|
16762
|
+
<div class="configuration-preset-dialog-container-header">
|
|
16763
|
+
@if (dialogMode === presetDialogMode.SAVE) {
|
|
16764
|
+
<co-icon [iconData]="iconService.getIcon(icons.FloppyDiskLightFull)"></co-icon>
|
|
16765
|
+
<h3 [textContent]="'SAVE_CONFIGURATION' | localize"></h3>
|
|
16766
|
+
} @else if (dialogMode === presetDialogMode.LOAD) {
|
|
16767
|
+
<co-icon [iconData]="iconService.getIcon(icons.FolderOpenLightFull)"></co-icon>
|
|
16768
|
+
<h3 [textContent]="'LOAD_CONFIGURATION' | localize"></h3>
|
|
16769
|
+
}
|
|
16770
|
+
</div>
|
|
16771
|
+
<div class="configuration-preset-dialog-container-body">
|
|
16772
|
+
@if (dialogMode === presetDialogMode.SAVE) {
|
|
16773
|
+
<div class="save-success">
|
|
16774
|
+
<p class="save-success-text" [textContent]="instanceIdInput"></p>
|
|
16775
|
+
<co-button
|
|
16776
|
+
class="save-success-button"
|
|
16777
|
+
[cdkCopyToClipboard]="instanceIdInput"
|
|
16778
|
+
[iconData]="iconService.getIcon(icons.CopyRegularFull)"
|
|
16779
|
+
(onClick)="handleCopySuccess()">
|
|
16780
|
+
</co-button>
|
|
16781
|
+
</div>
|
|
16782
|
+
} @else if (dialogMode === presetDialogMode.LOAD) {
|
|
16783
|
+
<co-input-text
|
|
16784
|
+
[placeholder]="'CONFIGURATION_CODE' | localize"
|
|
16785
|
+
[(model)]="instanceIdInput"
|
|
16786
|
+
></co-input-text>
|
|
16787
|
+
|
|
16788
|
+
@if (showValidationErrors) {
|
|
16789
|
+
<div class="validation-error">
|
|
16790
|
+
<p [textContent]="validationError"></p>
|
|
16791
|
+
</div>
|
|
16792
|
+
}
|
|
16793
|
+
}
|
|
16794
|
+
</div>
|
|
16795
|
+
<div class="configuration-preset-dialog-container-footer">
|
|
16796
|
+
@if (dialogMode === presetDialogMode.LOAD) {
|
|
16797
|
+
<co-button
|
|
16798
|
+
class="button-as-link"
|
|
16799
|
+
[label]="'CANCEL' | localize"
|
|
16800
|
+
(onClick)="handleCloseClick()"
|
|
16801
|
+
></co-button>
|
|
16802
|
+
}
|
|
16803
|
+
@if (dialogMode === presetDialogMode.SAVE) {
|
|
16804
|
+
<co-button
|
|
16805
|
+
class="save-preset-button"
|
|
16806
|
+
[label]="'OK' | localize"
|
|
16807
|
+
(onClick)="handleCloseClick()">
|
|
16808
|
+
</co-button>
|
|
16809
|
+
} @else if (dialogMode === presetDialogMode.LOAD) {
|
|
16810
|
+
<co-button
|
|
16811
|
+
class="open-preset-button"
|
|
16812
|
+
[label]="'OPEN' | localize"
|
|
16813
|
+
(onClick)="loadConfiguration()">
|
|
16814
|
+
</co-button>
|
|
16815
|
+
}
|
|
16816
|
+
</div>
|
|
16817
|
+
</div>
|
|
16818
|
+
</div>
|
|
16819
|
+
}
|
|
16820
|
+
`,
|
|
16821
|
+
encapsulation: ViewEncapsulation.None,
|
|
16822
|
+
standalone: false
|
|
16823
|
+
}]
|
|
16824
|
+
}], ctorParameters: () => [{ type: IconCacheService }, { type: ConfiguringService }, { type: ConfiguratorConnectorService }, { type: DictionaryService }, { type: AppEventService }], propDecorators: { showClass: [{
|
|
16825
|
+
type: HostBinding,
|
|
16826
|
+
args: ['class.co-configuration-preset-dialog']
|
|
16827
|
+
}] } });
|
|
16828
|
+
|
|
16219
16829
|
class ThreedselectorComponent {
|
|
16220
16830
|
_appEventService;
|
|
16221
16831
|
_buildFurnitureService;
|
|
@@ -16229,6 +16839,7 @@ class ThreedselectorComponent {
|
|
|
16229
16839
|
canCloseConfigurator = true;
|
|
16230
16840
|
animateSlideout = true;
|
|
16231
16841
|
showHeaderInformation = true;
|
|
16842
|
+
showSaveAndLoadConfiguration;
|
|
16232
16843
|
buildFinished = new EventEmitter();
|
|
16233
16844
|
showChange = new EventEmitter();
|
|
16234
16845
|
showElementToolbar = false;
|
|
@@ -16291,29 +16902,34 @@ class ThreedselectorComponent {
|
|
|
16291
16902
|
}
|
|
16292
16903
|
}
|
|
16293
16904
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ThreedselectorComponent, deps: [{ token: AppEventService }, { token: SwitchBuildFurnitureService }, { token: ConfiguringService }, { token: ConfiguratorService }], target: i0.ɵɵFactoryTarget.Component });
|
|
16294
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: ThreedselectorComponent, isStandalone: false, selector: "co-threedselector", inputs: { selections: "selections", canCloseConfigurator: "canCloseConfigurator", animateSlideout: "animateSlideout", showHeaderInformation: "showHeaderInformation" }, outputs: { customizeButtonClicked: "customizeButtonClicked", buildFinished: "buildFinished", showChange: "showChange" }, host: { properties: { "class.co-threedselector": "this.showClass" } }, ngImport: i0, template: `
|
|
16295
|
-
|
|
16296
|
-
|
|
16297
|
-
|
|
16298
|
-
|
|
16299
|
-
|
|
16300
|
-
|
|
16301
|
-
|
|
16302
|
-
|
|
16303
|
-
|
|
16304
|
-
|
|
16305
|
-
|
|
16306
|
-
|
|
16307
|
-
|
|
16308
|
-
|
|
16309
|
-
|
|
16310
|
-
|
|
16311
|
-
|
|
16312
|
-
|
|
16313
|
-
|
|
16314
|
-
|
|
16315
|
-
|
|
16316
|
-
|
|
16905
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: ThreedselectorComponent, isStandalone: false, selector: "co-threedselector", inputs: { selections: "selections", canCloseConfigurator: "canCloseConfigurator", animateSlideout: "animateSlideout", showHeaderInformation: "showHeaderInformation", showSaveAndLoadConfiguration: "showSaveAndLoadConfiguration" }, outputs: { customizeButtonClicked: "customizeButtonClicked", buildFinished: "buildFinished", showChange: "showChange" }, host: { properties: { "class.co-threedselector": "this.showClass" } }, ngImport: i0, template: `
|
|
16906
|
+
@if (!showFullConfiguration) {
|
|
16907
|
+
<co-lite-selector
|
|
16908
|
+
class="floating"
|
|
16909
|
+
[showSelections]="showTemplate"
|
|
16910
|
+
[showAnswers]="showTemplate"
|
|
16911
|
+
[animateSlideout]="animateSlideout"
|
|
16912
|
+
[canClose]="canCloseConfigurator"
|
|
16913
|
+
[showSaveAndLoadConfiguration]="showSaveAndLoadConfiguration"
|
|
16914
|
+
(showChange)="handleShowChangeSelector($event)">
|
|
16915
|
+
</co-lite-selector>
|
|
16916
|
+
}
|
|
16917
|
+
|
|
16918
|
+
@if (showFullConfiguration) {
|
|
16919
|
+
<co-product-configurator
|
|
16920
|
+
class="floating"
|
|
16921
|
+
[show]="showTemplate"
|
|
16922
|
+
[showSelections]="showSelections"
|
|
16923
|
+
[canClose]="canCloseConfigurator"
|
|
16924
|
+
[showHeaderInformation]="showHeaderInformation"
|
|
16925
|
+
[showSaveAndLoadConfiguration]="showSaveAndLoadConfiguration"
|
|
16926
|
+
(showChange)="handleShowChangeSelector($event)">
|
|
16927
|
+
</co-product-configurator>
|
|
16928
|
+
}
|
|
16929
|
+
@if (showSaveAndLoadConfiguration) {
|
|
16930
|
+
<co-configuration-preset-dialog></co-configuration-preset-dialog>
|
|
16931
|
+
}
|
|
16932
|
+
`, isInline: true, dependencies: [{ kind: "component", type: LiteSelectorComponent, selector: "co-lite-selector", inputs: ["showAnswers", "show", "showSelections", "showLabel", "canClose", "animateSlideout", "customDimensions", "showSaveAndLoadConfiguration"], outputs: ["showChange", "answerChosen"] }, { kind: "component", type: ProductConfiguratorComponent, selector: "co-product-configurator", inputs: ["show", "showHeaderInformation", "showSelections", "showLabel", "canClose", "customDimensions", "showSaveAndLoadConfiguration"], outputs: ["showChange", "answerChosen"] }, { kind: "component", type: ConfigurationPresetDialogComponent, selector: "co-configuration-preset-dialog" }], animations: [
|
|
16317
16933
|
trigger('showElementToolbar', [
|
|
16318
16934
|
state('void', style({ opacity: 0 })),
|
|
16319
16935
|
state('*', style({ opacity: 1 })),
|
|
@@ -16326,27 +16942,32 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
16326
16942
|
args: [{
|
|
16327
16943
|
selector: 'co-threedselector',
|
|
16328
16944
|
template: `
|
|
16329
|
-
|
|
16330
|
-
|
|
16331
|
-
|
|
16332
|
-
|
|
16333
|
-
|
|
16334
|
-
|
|
16335
|
-
|
|
16336
|
-
|
|
16337
|
-
|
|
16338
|
-
|
|
16339
|
-
|
|
16340
|
-
|
|
16341
|
-
|
|
16342
|
-
|
|
16343
|
-
|
|
16344
|
-
|
|
16345
|
-
|
|
16346
|
-
|
|
16347
|
-
|
|
16348
|
-
|
|
16349
|
-
|
|
16945
|
+
@if (!showFullConfiguration) {
|
|
16946
|
+
<co-lite-selector
|
|
16947
|
+
class="floating"
|
|
16948
|
+
[showSelections]="showTemplate"
|
|
16949
|
+
[showAnswers]="showTemplate"
|
|
16950
|
+
[animateSlideout]="animateSlideout"
|
|
16951
|
+
[canClose]="canCloseConfigurator"
|
|
16952
|
+
[showSaveAndLoadConfiguration]="showSaveAndLoadConfiguration"
|
|
16953
|
+
(showChange)="handleShowChangeSelector($event)">
|
|
16954
|
+
</co-lite-selector>
|
|
16955
|
+
}
|
|
16956
|
+
|
|
16957
|
+
@if (showFullConfiguration) {
|
|
16958
|
+
<co-product-configurator
|
|
16959
|
+
class="floating"
|
|
16960
|
+
[show]="showTemplate"
|
|
16961
|
+
[showSelections]="showSelections"
|
|
16962
|
+
[canClose]="canCloseConfigurator"
|
|
16963
|
+
[showHeaderInformation]="showHeaderInformation"
|
|
16964
|
+
[showSaveAndLoadConfiguration]="showSaveAndLoadConfiguration"
|
|
16965
|
+
(showChange)="handleShowChangeSelector($event)">
|
|
16966
|
+
</co-product-configurator>
|
|
16967
|
+
}
|
|
16968
|
+
@if (showSaveAndLoadConfiguration) {
|
|
16969
|
+
<co-configuration-preset-dialog></co-configuration-preset-dialog>
|
|
16970
|
+
}
|
|
16350
16971
|
`,
|
|
16351
16972
|
encapsulation: ViewEncapsulation.None,
|
|
16352
16973
|
animations: [
|
|
@@ -16371,6 +16992,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
16371
16992
|
type: Input
|
|
16372
16993
|
}], showHeaderInformation: [{
|
|
16373
16994
|
type: Input
|
|
16995
|
+
}], showSaveAndLoadConfiguration: [{
|
|
16996
|
+
type: Input
|
|
16374
16997
|
}], buildFinished: [{
|
|
16375
16998
|
type: Output
|
|
16376
16999
|
}], showChange: [{
|
|
@@ -16392,6 +17015,7 @@ class ConfiguratorComponent {
|
|
|
16392
17015
|
canCloseConfigurator = true;
|
|
16393
17016
|
animateSlideout = true;
|
|
16394
17017
|
showHeaderInformation = true;
|
|
17018
|
+
showSaveAndLoadConfiguration;
|
|
16395
17019
|
buildResult = new EventEmitter();
|
|
16396
17020
|
// TODO
|
|
16397
17021
|
isLoading = new EventEmitter();
|
|
@@ -16444,54 +17068,56 @@ class ConfiguratorComponent {
|
|
|
16444
17068
|
}
|
|
16445
17069
|
}
|
|
16446
17070
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ConfiguratorComponent, deps: [{ token: SettingsService }, { token: LoaderService }, { token: AppEventService }, { token: ConfiguringService }], target: i0.ɵɵFactoryTarget.Component });
|
|
16447
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: ConfiguratorComponent, isStandalone: false, selector: "co-configurator", inputs: { showLoader: "showLoader", showProgressBar: "showProgressBar", showErrorMessages: "showErrorMessages", outputErrorMessages: "outputErrorMessages", canCloseConfigurator: "canCloseConfigurator", animateSlideout: "animateSlideout", showHeaderInformation: "showHeaderInformation" }, outputs: { buildResult: "buildResult", isLoading: "isLoading", updateProgressBar: "updateProgressBar", errorMessages: "errorMessages", showChange: "showChange" }, host: { properties: { "class.co-configurator": "this.showClass" } }, ngImport: i0, template: `
|
|
16448
|
-
|
|
16449
|
-
|
|
16450
|
-
|
|
16451
|
-
|
|
16452
|
-
|
|
16453
|
-
|
|
16454
|
-
|
|
16455
|
-
|
|
16456
|
-
|
|
16457
|
-
|
|
16458
|
-
|
|
16459
|
-
|
|
17071
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: ConfiguratorComponent, isStandalone: false, selector: "co-configurator", inputs: { showLoader: "showLoader", showProgressBar: "showProgressBar", showErrorMessages: "showErrorMessages", outputErrorMessages: "outputErrorMessages", canCloseConfigurator: "canCloseConfigurator", animateSlideout: "animateSlideout", showHeaderInformation: "showHeaderInformation", showSaveAndLoadConfiguration: "showSaveAndLoadConfiguration" }, outputs: { buildResult: "buildResult", isLoading: "isLoading", updateProgressBar: "updateProgressBar", errorMessages: "errorMessages", showChange: "showChange" }, host: { properties: { "class.co-configurator": "this.showClass" } }, ngImport: i0, template: `
|
|
17072
|
+
@if (showProgressBar) {
|
|
17073
|
+
<co-progress-bar></co-progress-bar>
|
|
17074
|
+
}
|
|
17075
|
+
@if (showLoader) {
|
|
17076
|
+
<co-configurator-loader [show]="loaderService.showLoader"></co-configurator-loader>
|
|
17077
|
+
}
|
|
17078
|
+
@if (showErrorMessages && resultHasErrors && showErrorDiagram) {
|
|
17079
|
+
<co-configurator-error-dialog
|
|
17080
|
+
[errorMessages]="configurationResultObject.errorMessages"
|
|
17081
|
+
(closeErrorDialoag)="handleCloseErrorDialog()"
|
|
17082
|
+
></co-configurator-error-dialog>
|
|
17083
|
+
}
|
|
16460
17084
|
|
|
16461
|
-
|
|
16462
|
-
|
|
16463
|
-
|
|
16464
|
-
|
|
16465
|
-
|
|
16466
|
-
|
|
16467
|
-
|
|
16468
|
-
|
|
17085
|
+
<co-threedselector
|
|
17086
|
+
[canCloseConfigurator]="canCloseConfigurator"
|
|
17087
|
+
[animateSlideout]="animateSlideout"
|
|
17088
|
+
[showHeaderInformation]="showHeaderInformation"
|
|
17089
|
+
[showSaveAndLoadConfiguration]="showSaveAndLoadConfiguration"
|
|
17090
|
+
(buildFinished)="handleBuildFinished($event)"
|
|
17091
|
+
(showChange)="handleShowChange($event)">
|
|
17092
|
+
</co-threedselector>
|
|
17093
|
+
`, isInline: true, dependencies: [{ kind: "component", type: ProgressBarComponent, selector: "co-progress-bar" }, { kind: "component", type: ConfiguratorLoaderComponent, selector: "co-configurator-loader", inputs: ["show"] }, { kind: "component", type: ConfiguratorErrorDialogComponent, selector: "co-configurator-error-dialog", inputs: ["errorMessages"], outputs: ["closeErrorDialoag"] }, { kind: "component", type: ThreedselectorComponent, selector: "co-threedselector", inputs: ["selections", "canCloseConfigurator", "animateSlideout", "showHeaderInformation", "showSaveAndLoadConfiguration"], outputs: ["customizeButtonClicked", "buildFinished", "showChange"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
16469
17094
|
}
|
|
16470
17095
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ConfiguratorComponent, decorators: [{
|
|
16471
17096
|
type: Component,
|
|
16472
17097
|
args: [{
|
|
16473
17098
|
selector: 'co-configurator',
|
|
16474
17099
|
template: `
|
|
16475
|
-
|
|
16476
|
-
|
|
16477
|
-
|
|
16478
|
-
|
|
16479
|
-
|
|
16480
|
-
|
|
16481
|
-
|
|
16482
|
-
|
|
16483
|
-
|
|
16484
|
-
|
|
16485
|
-
|
|
16486
|
-
|
|
17100
|
+
@if (showProgressBar) {
|
|
17101
|
+
<co-progress-bar></co-progress-bar>
|
|
17102
|
+
}
|
|
17103
|
+
@if (showLoader) {
|
|
17104
|
+
<co-configurator-loader [show]="loaderService.showLoader"></co-configurator-loader>
|
|
17105
|
+
}
|
|
17106
|
+
@if (showErrorMessages && resultHasErrors && showErrorDiagram) {
|
|
17107
|
+
<co-configurator-error-dialog
|
|
17108
|
+
[errorMessages]="configurationResultObject.errorMessages"
|
|
17109
|
+
(closeErrorDialoag)="handleCloseErrorDialog()"
|
|
17110
|
+
></co-configurator-error-dialog>
|
|
17111
|
+
}
|
|
16487
17112
|
|
|
16488
|
-
|
|
16489
|
-
|
|
16490
|
-
|
|
16491
|
-
|
|
16492
|
-
|
|
16493
|
-
|
|
16494
|
-
|
|
17113
|
+
<co-threedselector
|
|
17114
|
+
[canCloseConfigurator]="canCloseConfigurator"
|
|
17115
|
+
[animateSlideout]="animateSlideout"
|
|
17116
|
+
[showHeaderInformation]="showHeaderInformation"
|
|
17117
|
+
[showSaveAndLoadConfiguration]="showSaveAndLoadConfiguration"
|
|
17118
|
+
(buildFinished)="handleBuildFinished($event)"
|
|
17119
|
+
(showChange)="handleShowChange($event)">
|
|
17120
|
+
</co-threedselector>
|
|
16495
17121
|
`,
|
|
16496
17122
|
encapsulation: ViewEncapsulation.None,
|
|
16497
17123
|
standalone: false
|
|
@@ -16513,6 +17139,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
16513
17139
|
type: Input
|
|
16514
17140
|
}], showHeaderInformation: [{
|
|
16515
17141
|
type: Input
|
|
17142
|
+
}], showSaveAndLoadConfiguration: [{
|
|
17143
|
+
type: Input
|
|
16516
17144
|
}], buildResult: [{
|
|
16517
17145
|
type: Output
|
|
16518
17146
|
}], isLoading: [{
|
|
@@ -17390,6 +18018,37 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
17390
18018
|
}]
|
|
17391
18019
|
}] });
|
|
17392
18020
|
|
|
18021
|
+
class ConfigurationPresetModule {
|
|
18022
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ConfigurationPresetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
18023
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.18", ngImport: i0, type: ConfigurationPresetModule, declarations: [ConfigurationPresetComponent], imports: [PipesModule,
|
|
18024
|
+
ButtonModule,
|
|
18025
|
+
IconModule,
|
|
18026
|
+
InputTextModule,
|
|
18027
|
+
CdkCopyToClipboard], exports: [ConfigurationPresetComponent] });
|
|
18028
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ConfigurationPresetModule, imports: [PipesModule,
|
|
18029
|
+
ButtonModule,
|
|
18030
|
+
IconModule,
|
|
18031
|
+
InputTextModule] });
|
|
18032
|
+
}
|
|
18033
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ConfigurationPresetModule, decorators: [{
|
|
18034
|
+
type: NgModule,
|
|
18035
|
+
args: [{
|
|
18036
|
+
imports: [
|
|
18037
|
+
PipesModule,
|
|
18038
|
+
ButtonModule,
|
|
18039
|
+
IconModule,
|
|
18040
|
+
InputTextModule,
|
|
18041
|
+
CdkCopyToClipboard
|
|
18042
|
+
],
|
|
18043
|
+
declarations: [
|
|
18044
|
+
ConfigurationPresetComponent
|
|
18045
|
+
],
|
|
18046
|
+
exports: [
|
|
18047
|
+
ConfigurationPresetComponent
|
|
18048
|
+
]
|
|
18049
|
+
}]
|
|
18050
|
+
}] });
|
|
18051
|
+
|
|
17393
18052
|
class SelectionsSummaryModule {
|
|
17394
18053
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SelectionsSummaryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
17395
18054
|
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.18", ngImport: i0, type: SelectionsSummaryModule, declarations: [SelectionsSummaryComponent], imports: [CoSummaryLineModule,
|
|
@@ -17397,13 +18056,15 @@ class SelectionsSummaryModule {
|
|
|
17397
18056
|
PipesModule,
|
|
17398
18057
|
PriceDisplayPipeModule,
|
|
17399
18058
|
SelectionsSummaryLineModule,
|
|
17400
|
-
IconModule
|
|
18059
|
+
IconModule,
|
|
18060
|
+
ConfigurationPresetModule], exports: [SelectionsSummaryComponent] });
|
|
17401
18061
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SelectionsSummaryModule, imports: [CoSummaryLineModule,
|
|
17402
18062
|
CommonModule,
|
|
17403
18063
|
PipesModule,
|
|
17404
18064
|
PriceDisplayPipeModule,
|
|
17405
18065
|
SelectionsSummaryLineModule,
|
|
17406
|
-
IconModule
|
|
18066
|
+
IconModule,
|
|
18067
|
+
ConfigurationPresetModule] });
|
|
17407
18068
|
}
|
|
17408
18069
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SelectionsSummaryModule, decorators: [{
|
|
17409
18070
|
type: NgModule,
|
|
@@ -17414,7 +18075,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
17414
18075
|
PipesModule,
|
|
17415
18076
|
PriceDisplayPipeModule,
|
|
17416
18077
|
SelectionsSummaryLineModule,
|
|
17417
|
-
IconModule
|
|
18078
|
+
IconModule,
|
|
18079
|
+
ConfigurationPresetModule
|
|
17418
18080
|
],
|
|
17419
18081
|
declarations: [
|
|
17420
18082
|
SelectionsSummaryComponent,
|
|
@@ -17625,7 +18287,8 @@ class ProductConfiguratorModule {
|
|
|
17625
18287
|
PipesModule,
|
|
17626
18288
|
IconModule,
|
|
17627
18289
|
TooltipDirectiveModule,
|
|
17628
|
-
ProductConfiguratorSelectorModule
|
|
18290
|
+
ProductConfiguratorSelectorModule,
|
|
18291
|
+
ConfigurationPresetModule], exports: [ProductConfiguratorComponent] });
|
|
17629
18292
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ProductConfiguratorModule, imports: [CommonModule,
|
|
17630
18293
|
MatIconModule,
|
|
17631
18294
|
MatButtonModule,
|
|
@@ -17638,7 +18301,8 @@ class ProductConfiguratorModule {
|
|
|
17638
18301
|
PipesModule,
|
|
17639
18302
|
IconModule,
|
|
17640
18303
|
TooltipDirectiveModule,
|
|
17641
|
-
ProductConfiguratorSelectorModule
|
|
18304
|
+
ProductConfiguratorSelectorModule,
|
|
18305
|
+
ConfigurationPresetModule] });
|
|
17642
18306
|
}
|
|
17643
18307
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ProductConfiguratorModule, decorators: [{
|
|
17644
18308
|
type: NgModule,
|
|
@@ -17656,7 +18320,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
17656
18320
|
PipesModule,
|
|
17657
18321
|
IconModule,
|
|
17658
18322
|
TooltipDirectiveModule,
|
|
17659
|
-
ProductConfiguratorSelectorModule
|
|
18323
|
+
ProductConfiguratorSelectorModule,
|
|
18324
|
+
ConfigurationPresetModule
|
|
17660
18325
|
],
|
|
17661
18326
|
schemas: [
|
|
17662
18327
|
NO_ERRORS_SCHEMA
|
|
@@ -17670,14 +18335,47 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
17670
18335
|
}]
|
|
17671
18336
|
}] });
|
|
17672
18337
|
|
|
18338
|
+
class ConfigurationPresetDialogModule {
|
|
18339
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ConfigurationPresetDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
18340
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.18", ngImport: i0, type: ConfigurationPresetDialogModule, declarations: [ConfigurationPresetDialogComponent], imports: [PipesModule,
|
|
18341
|
+
ButtonModule,
|
|
18342
|
+
IconModule,
|
|
18343
|
+
InputTextModule,
|
|
18344
|
+
CdkCopyToClipboard], exports: [ConfigurationPresetDialogComponent] });
|
|
18345
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ConfigurationPresetDialogModule, imports: [PipesModule,
|
|
18346
|
+
ButtonModule,
|
|
18347
|
+
IconModule,
|
|
18348
|
+
InputTextModule] });
|
|
18349
|
+
}
|
|
18350
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ConfigurationPresetDialogModule, decorators: [{
|
|
18351
|
+
type: NgModule,
|
|
18352
|
+
args: [{
|
|
18353
|
+
imports: [
|
|
18354
|
+
PipesModule,
|
|
18355
|
+
ButtonModule,
|
|
18356
|
+
IconModule,
|
|
18357
|
+
InputTextModule,
|
|
18358
|
+
CdkCopyToClipboard
|
|
18359
|
+
],
|
|
18360
|
+
declarations: [
|
|
18361
|
+
ConfigurationPresetDialogComponent
|
|
18362
|
+
],
|
|
18363
|
+
exports: [
|
|
18364
|
+
ConfigurationPresetDialogComponent
|
|
18365
|
+
]
|
|
18366
|
+
}]
|
|
18367
|
+
}] });
|
|
18368
|
+
|
|
17673
18369
|
class ThreedselectorModule {
|
|
17674
18370
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ThreedselectorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
17675
18371
|
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.18", ngImport: i0, type: ThreedselectorModule, declarations: [ThreedselectorComponent], imports: [LiteSelectorModule,
|
|
17676
18372
|
ProductConfiguratorModule,
|
|
17677
|
-
CommonModule
|
|
18373
|
+
CommonModule,
|
|
18374
|
+
ConfigurationPresetDialogModule], exports: [ThreedselectorComponent] });
|
|
17678
18375
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ThreedselectorModule, imports: [LiteSelectorModule,
|
|
17679
18376
|
ProductConfiguratorModule,
|
|
17680
|
-
CommonModule
|
|
18377
|
+
CommonModule,
|
|
18378
|
+
ConfigurationPresetDialogModule] });
|
|
17681
18379
|
}
|
|
17682
18380
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ThreedselectorModule, decorators: [{
|
|
17683
18381
|
type: NgModule,
|
|
@@ -17685,7 +18383,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
|
|
|
17685
18383
|
imports: [
|
|
17686
18384
|
LiteSelectorModule,
|
|
17687
18385
|
ProductConfiguratorModule,
|
|
17688
|
-
CommonModule
|
|
18386
|
+
CommonModule,
|
|
18387
|
+
ConfigurationPresetDialogModule
|
|
17689
18388
|
],
|
|
17690
18389
|
declarations: [
|
|
17691
18390
|
ThreedselectorComponent
|