@colijnit/product 1.9.3 → 1.9.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/components/image-carousel/image-carousel.component.d.ts +4 -4
- package/app/components/product-additional-description/product-additional-description.component.d.ts +3 -3
- package/app/components/product-additional-info/product-additional-info.component.d.ts +3 -3
- package/app/components/product-addtocart/product-addtocart.component.d.ts +6 -4
- package/app/components/product-delivery/product-delivery.component.d.ts +2 -2
- package/app/components/product-description/product-description.component.d.ts +1 -1
- package/app/components/product-documents/product-documents.component.d.ts +1 -1
- package/app/components/product-info/product-info.component.d.ts +1 -1
- package/app/components/product-info-tabs/product-info-tabs.component.d.ts +3 -3
- package/app/components/product-page/product-page.component.d.ts +8 -7
- package/app/components/product-properties/product-properties.component.d.ts +1 -1
- package/app/components/product-related/product-related.component.d.ts +4 -4
- package/app/components/product-stock/product-stock.component.d.ts +2 -2
- package/app/ione-product.component.d.ts +8 -8
- package/app/ione-product.module.d.ts +2 -2
- package/app/model/article-quantity.model.d.ts +1 -1
- package/app/product-version.d.ts +6 -0
- package/app/service/product-connector-adapter.service.d.ts +27 -0
- package/app/service/product-connector.service.d.ts +32 -0
- package/app/service/{app-event.service.d.ts → product-event.service.d.ts} +5 -5
- package/app/service/product-initializer.service.d.ts +6 -0
- package/app/service/product-module.service.d.ts +9 -0
- package/app/service/{settings.service.d.ts → product-settings.service.d.ts} +1 -1
- package/app/style/product-globals.scss +12 -10
- package/bundles/colijnit-product.umd.js +340 -261
- package/bundles/colijnit-product.umd.js.map +1 -1
- package/bundles/colijnit-product.umd.min.js +2 -2
- package/bundles/colijnit-product.umd.min.js.map +1 -1
- package/colijnit-product.d.ts +6 -6
- package/colijnit-product.metadata.json +1 -1
- package/esm2015/app/components/image-carousel/image-carousel.component.js +10 -8
- package/esm2015/app/components/product-additional-description/product-additional-description.component.js +3 -3
- package/esm2015/app/components/product-additional-info/product-additional-info.component.js +3 -3
- package/esm2015/app/components/product-addtocart/product-addtocart.component.js +18 -28
- package/esm2015/app/components/product-delivery/product-delivery.component.js +4 -4
- package/esm2015/app/components/product-description/product-description.component.js +1 -1
- package/esm2015/app/components/product-documents/product-documents.component.js +1 -1
- package/esm2015/app/components/product-info/product-info.component.js +1 -1
- package/esm2015/app/components/product-info-tabs/product-info-tabs.component.js +3 -3
- package/esm2015/app/components/product-page/product-page.component.js +13 -10
- package/esm2015/app/components/product-price/product-price.component.js +1 -1
- package/esm2015/app/components/product-properties/product-properties.component.js +1 -1
- package/esm2015/app/components/product-related/product-related.component.js +10 -6
- package/esm2015/app/components/product-stock/product-stock.component.js +3 -3
- package/esm2015/app/ione-product.component.js +9 -8
- package/esm2015/app/ione-product.module.js +9 -9
- package/esm2015/app/model/article-quantity.model.js +1 -1
- package/esm2015/app/product-version.js +10 -0
- package/esm2015/app/service/dictionary.service.js +2 -2
- package/esm2015/app/service/product-connector-adapter.service.js +128 -0
- package/esm2015/app/service/product-connector.service.js +108 -0
- package/esm2015/app/service/product-event.service.js +41 -0
- package/esm2015/app/service/product-initializer.service.js +26 -0
- package/esm2015/app/service/product-module.service.js +39 -0
- package/esm2015/app/service/product-settings.service.js +142 -0
- package/esm2015/colijnit-product.js +7 -7
- package/esm2015/public_api.js +2 -1
- package/esm5/app/components/image-carousel/image-carousel.component.js +10 -8
- package/esm5/app/components/product-additional-description/product-additional-description.component.js +3 -3
- package/esm5/app/components/product-additional-info/product-additional-info.component.js +3 -3
- package/esm5/app/components/product-addtocart/product-addtocart.component.js +20 -35
- package/esm5/app/components/product-delivery/product-delivery.component.js +4 -4
- package/esm5/app/components/product-description/product-description.component.js +1 -1
- package/esm5/app/components/product-documents/product-documents.component.js +1 -1
- package/esm5/app/components/product-info/product-info.component.js +1 -1
- package/esm5/app/components/product-info-tabs/product-info-tabs.component.js +3 -3
- package/esm5/app/components/product-page/product-page.component.js +13 -10
- package/esm5/app/components/product-price/product-price.component.js +1 -1
- package/esm5/app/components/product-properties/product-properties.component.js +1 -1
- package/esm5/app/components/product-related/product-related.component.js +10 -6
- package/esm5/app/components/product-stock/product-stock.component.js +3 -3
- package/esm5/app/ione-product.component.js +9 -8
- package/esm5/app/ione-product.module.js +9 -9
- package/esm5/app/model/article-quantity.model.js +1 -1
- package/esm5/app/product-version.js +12 -0
- package/esm5/app/service/dictionary.service.js +2 -2
- package/esm5/app/service/product-connector-adapter.service.js +197 -0
- package/esm5/app/service/product-connector.service.js +128 -0
- package/esm5/app/service/product-event.service.js +42 -0
- package/esm5/app/service/product-initializer.service.js +29 -0
- package/esm5/app/service/product-module.service.js +50 -0
- package/esm5/app/service/product-settings.service.js +165 -0
- package/esm5/colijnit-product.js +7 -7
- package/esm5/public_api.js +2 -1
- package/fesm2015/colijnit-product.js +227 -204
- package/fesm2015/colijnit-product.js.map +1 -1
- package/fesm5/colijnit-product.js +337 -253
- package/fesm5/colijnit-product.js.map +1 -1
- package/package.json +7 -5
- package/public_api.d.ts +1 -0
- package/app/service/app-initializer.service.d.ts +0 -6
- package/app/service/i-one-connector-adapter.service.d.ts +0 -27
- package/app/service/i-one-controller.service.d.ts +0 -37
- package/app/service/module.service.d.ts +0 -9
- package/app/utils/string-utils.d.ts +0 -21
- package/esm2015/app/service/app-event.service.js +0 -41
- package/esm2015/app/service/app-initializer.service.js +0 -26
- package/esm2015/app/service/i-one-connector-adapter.service.js +0 -58
- package/esm2015/app/service/i-one-controller.service.js +0 -117
- package/esm2015/app/service/module.service.js +0 -39
- package/esm2015/app/service/settings.service.js +0 -136
- package/esm2015/app/utils/string-utils.js +0 -51
- package/esm5/app/service/app-event.service.js +0 -42
- package/esm5/app/service/app-initializer.service.js +0 -29
- package/esm5/app/service/i-one-connector-adapter.service.js +0 -61
- package/esm5/app/service/i-one-controller.service.js +0 -131
- package/esm5/app/service/module.service.js +0 -50
- package/esm5/app/service/settings.service.js +0 -159
- package/esm5/app/utils/string-utils.js +0 -59
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@colijnit/corecomponents'), require('@colijnit
|
|
3
|
-
typeof define === 'function' && define.amd ? define('@colijnit/product', ['exports', '@angular/core', '@colijnit/corecomponents', '@colijnit
|
|
4
|
-
(global = global || self, factory((global.colijnit = global.colijnit || {}, global.colijnit.product = {}), global.ng.core, global.corecomponents, global.coDocument, global.options, global.
|
|
5
|
-
}(this, (function (exports, core, corecomponents, coDocument, options,
|
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@colijnit/corecomponents'), require('@colijnit/mainapi/build/model/co-document'), require('rxjs'), require('@colijnit/ioneconnector/build/model/options'), require('@colijnit/articleapi/build/model/article-full-object'), require('@colijnit/articleapi/build/model/super-article'), require('@colijnit/articleapi/build/articles'), require('@colijnit/ioneconnector/build/factory/business-object-factory'), require('@colijnit/articleapi/build/model/delivery-prognosis'), require('@colijnit/articleapi/build/model/document-content'), require('@angular/common/http'), require('@colijnit/ioneconnector/build/utils/string-utils'), require('@angular/platform-browser'), require('@angular/animations'), require('@colijnit/articleapi/build/model/configurator-statistics-environment'), require('@angular/common')) :
|
|
3
|
+
typeof define === 'function' && define.amd ? define('@colijnit/product', ['exports', '@angular/core', '@colijnit/corecomponents', '@colijnit/mainapi/build/model/co-document', 'rxjs', '@colijnit/ioneconnector/build/model/options', '@colijnit/articleapi/build/model/article-full-object', '@colijnit/articleapi/build/model/super-article', '@colijnit/articleapi/build/articles', '@colijnit/ioneconnector/build/factory/business-object-factory', '@colijnit/articleapi/build/model/delivery-prognosis', '@colijnit/articleapi/build/model/document-content', '@angular/common/http', '@colijnit/ioneconnector/build/utils/string-utils', '@angular/platform-browser', '@angular/animations', '@colijnit/articleapi/build/model/configurator-statistics-environment', '@angular/common'], factory) :
|
|
4
|
+
(global = global || self, factory((global.colijnit = global.colijnit || {}, global.colijnit.product = {}), global.ng.core, global.corecomponents, global.coDocument, global.rxjs, global.options, global.articleFullObject, global.superArticle, global.articles, global.businessObjectFactory, global.deliveryPrognosis, global.documentContent, global.ng.common.http, global.stringUtils, global.ng.platformBrowser, global.ng.animations, global.configuratorStatisticsEnvironment, global.ng.common));
|
|
5
|
+
}(this, (function (exports, core, corecomponents, coDocument, rxjs, options, articleFullObject, superArticle, articles, businessObjectFactory, deliveryPrognosis, documentContent, http, stringUtils, platformBrowser, animations, configuratorStatisticsEnvironment, common) { 'use strict';
|
|
6
6
|
|
|
7
7
|
/*! *****************************************************************************
|
|
8
8
|
Copyright (c) Microsoft Corporation.
|
|
@@ -223,6 +223,17 @@
|
|
|
223
223
|
return value;
|
|
224
224
|
}
|
|
225
225
|
|
|
226
|
+
// this file is dynamically created, do not change this
|
|
227
|
+
var Version = /** @class */ (function () {
|
|
228
|
+
function Version() {
|
|
229
|
+
this.name = "@colijnit/product";
|
|
230
|
+
this.description = "Product detail page project for iOne";
|
|
231
|
+
this.symVer = "1.9.4";
|
|
232
|
+
this.publishDate = "20-4-2023 15:19:25";
|
|
233
|
+
}
|
|
234
|
+
return Version;
|
|
235
|
+
}());
|
|
236
|
+
|
|
226
237
|
var ProductDescriptionComponent = /** @class */ (function () {
|
|
227
238
|
function ProductDescriptionComponent() {
|
|
228
239
|
}
|
|
@@ -243,57 +254,188 @@
|
|
|
243
254
|
|
|
244
255
|
// Sole responsibility is simply to wrap around a colijn.Connector to create a stable inner interface to the library in a 1:1 method way.
|
|
245
256
|
// Only to be used by the IOneControllerService.
|
|
246
|
-
var
|
|
247
|
-
function
|
|
257
|
+
var ProductConnectorAdapterService = /** @class */ (function () {
|
|
258
|
+
function ProductConnectorAdapterService() {
|
|
248
259
|
this.showLoader = new rxjs.Subject();
|
|
260
|
+
this._boFactory = new businessObjectFactory.BusinessObjectFactory();
|
|
249
261
|
}
|
|
250
|
-
|
|
251
|
-
this.
|
|
262
|
+
ProductConnectorAdapterService.prototype.ngOnDestroy = function () {
|
|
263
|
+
this.articleConnector.showLoader.unsubscribe();
|
|
252
264
|
};
|
|
253
|
-
|
|
265
|
+
ProductConnectorAdapterService.prototype.initConnector = function (options) {
|
|
254
266
|
var _this = this;
|
|
255
|
-
this.
|
|
256
|
-
options.session = this.
|
|
257
|
-
this.
|
|
267
|
+
this.articleConnector = new articles.Articles(options);
|
|
268
|
+
options.session = this.articleConnector.session;
|
|
269
|
+
this.articleConnector.showLoader.subscribe(function (value) { return _this.showLoader.next(value); });
|
|
258
270
|
};
|
|
259
|
-
|
|
260
|
-
this.
|
|
271
|
+
ProductConnectorAdapterService.prototype.setInstance = function (instanceId) {
|
|
272
|
+
// this.articleConnector.setInstanceToConfigure(instanceId, false);
|
|
261
273
|
};
|
|
262
|
-
|
|
263
|
-
return this
|
|
274
|
+
ProductConnectorAdapterService.prototype.getDeliveryPrognosis = function (goodId, branchNr) {
|
|
275
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
276
|
+
var deliveryPrognosis;
|
|
277
|
+
return __generator(this, function (_a) {
|
|
278
|
+
switch (_a.label) {
|
|
279
|
+
case 0: return [4 /*yield*/, this.getSelectorDeliveryDate()];
|
|
280
|
+
case 1:
|
|
281
|
+
deliveryPrognosis = _a.sent();
|
|
282
|
+
if (!deliveryPrognosis || !deliveryPrognosis.returnValue) {
|
|
283
|
+
return [2 /*return*/, this.getDeliveryDate2(goodId)];
|
|
284
|
+
}
|
|
285
|
+
return [2 /*return*/, deliveryPrognosis];
|
|
286
|
+
}
|
|
287
|
+
});
|
|
288
|
+
});
|
|
264
289
|
};
|
|
265
|
-
|
|
266
|
-
return this
|
|
290
|
+
ProductConnectorAdapterService.prototype.getSelectorDeliveryDate = function () {
|
|
291
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
292
|
+
var response;
|
|
293
|
+
return __generator(this, function (_a) {
|
|
294
|
+
switch (_a.label) {
|
|
295
|
+
case 0: return [4 /*yield*/, this.articleConnector.getSelectorDeliveryDate()];
|
|
296
|
+
case 1:
|
|
297
|
+
response = _a.sent();
|
|
298
|
+
if (response && response.validationResult && response.validationResult.success) {
|
|
299
|
+
return [2 /*return*/, this._boFactory.makeWithRawBackendData(deliveryPrognosis.DeliveryPrognosis, response.resultObject)];
|
|
300
|
+
}
|
|
301
|
+
else {
|
|
302
|
+
return [2 /*return*/, null];
|
|
303
|
+
}
|
|
304
|
+
return [2 /*return*/];
|
|
305
|
+
}
|
|
306
|
+
});
|
|
307
|
+
});
|
|
267
308
|
};
|
|
268
|
-
|
|
269
|
-
return this
|
|
309
|
+
ProductConnectorAdapterService.prototype.getDeliveryDate2 = function (goodId) {
|
|
310
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
311
|
+
var response;
|
|
312
|
+
return __generator(this, function (_a) {
|
|
313
|
+
switch (_a.label) {
|
|
314
|
+
case 0: return [4 /*yield*/, this.articleConnector.getDeliveryDate2(goodId)];
|
|
315
|
+
case 1:
|
|
316
|
+
response = _a.sent();
|
|
317
|
+
if (response && response.validationResult && response.validationResult.success) {
|
|
318
|
+
return [2 /*return*/, this._boFactory.makeWithRawBackendData(deliveryPrognosis.DeliveryPrognosis, response.resultObject)];
|
|
319
|
+
}
|
|
320
|
+
else {
|
|
321
|
+
return [2 /*return*/, null];
|
|
322
|
+
}
|
|
323
|
+
return [2 /*return*/];
|
|
324
|
+
}
|
|
325
|
+
});
|
|
326
|
+
});
|
|
270
327
|
};
|
|
271
|
-
|
|
272
|
-
return this
|
|
328
|
+
ProductConnectorAdapterService.prototype.getJsonConfiguredArticles = function (configuratorStatistics) {
|
|
329
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
330
|
+
var response;
|
|
331
|
+
return __generator(this, function (_a) {
|
|
332
|
+
switch (_a.label) {
|
|
333
|
+
case 0: return [4 /*yield*/, this.articleConnector.getJsonConfiguredArticles(configuratorStatistics)];
|
|
334
|
+
case 1:
|
|
335
|
+
response = _a.sent();
|
|
336
|
+
if (response && response.validationResult && response.validationResult.success) {
|
|
337
|
+
return [2 /*return*/, response.resultObject];
|
|
338
|
+
}
|
|
339
|
+
else {
|
|
340
|
+
return [2 /*return*/, ''];
|
|
341
|
+
}
|
|
342
|
+
return [2 /*return*/];
|
|
343
|
+
}
|
|
344
|
+
});
|
|
345
|
+
});
|
|
273
346
|
};
|
|
274
|
-
|
|
275
|
-
|
|
347
|
+
ProductConnectorAdapterService.prototype.getJsonArticleFlatTree = function (goodId, goodType, quantity, showLoader, instanceId, configuratorStatistics) {
|
|
348
|
+
if (showLoader === void 0) { showLoader = true; }
|
|
349
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
350
|
+
return __generator(this, function (_a) {
|
|
351
|
+
return [2 /*return*/, this.articleConnector.getJsonArticleFlatTree(goodId, goodType, quantity, showLoader, instanceId, configuratorStatistics)];
|
|
352
|
+
});
|
|
353
|
+
});
|
|
276
354
|
};
|
|
277
|
-
|
|
278
|
-
return this
|
|
355
|
+
ProductConnectorAdapterService.prototype.getGoodIdFromArticleNr = function (sku) {
|
|
356
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
357
|
+
var response;
|
|
358
|
+
return __generator(this, function (_a) {
|
|
359
|
+
switch (_a.label) {
|
|
360
|
+
case 0: return [4 /*yield*/, this.articleConnector.getGoodIdFromArticleNr(sku)];
|
|
361
|
+
case 1:
|
|
362
|
+
response = _a.sent();
|
|
363
|
+
if (response && response.validationResult && response.validationResult.success) {
|
|
364
|
+
return [2 /*return*/, response.resultObject];
|
|
365
|
+
}
|
|
366
|
+
else {
|
|
367
|
+
return [2 /*return*/, null];
|
|
368
|
+
}
|
|
369
|
+
return [2 /*return*/];
|
|
370
|
+
}
|
|
371
|
+
});
|
|
372
|
+
});
|
|
279
373
|
};
|
|
280
|
-
|
|
281
|
-
return this
|
|
374
|
+
ProductConnectorAdapterService.prototype.getArticleFullObject = function (goodId) {
|
|
375
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
376
|
+
var response;
|
|
377
|
+
return __generator(this, function (_a) {
|
|
378
|
+
switch (_a.label) {
|
|
379
|
+
case 0: return [4 /*yield*/, this.articleConnector.getArticleFullObject(goodId)];
|
|
380
|
+
case 1:
|
|
381
|
+
response = _a.sent();
|
|
382
|
+
if (response && response.validationResult && response.validationResult.success) {
|
|
383
|
+
return [2 /*return*/, this._boFactory.makeWithRawBackendData(articleFullObject.ArticleFullObject, response.resultObject)];
|
|
384
|
+
}
|
|
385
|
+
else {
|
|
386
|
+
return [2 /*return*/, null];
|
|
387
|
+
}
|
|
388
|
+
return [2 /*return*/];
|
|
389
|
+
}
|
|
390
|
+
});
|
|
391
|
+
});
|
|
282
392
|
};
|
|
283
|
-
|
|
284
|
-
return this
|
|
393
|
+
ProductConnectorAdapterService.prototype.getSuperArticle = function (id, branch) {
|
|
394
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
395
|
+
var response;
|
|
396
|
+
return __generator(this, function (_a) {
|
|
397
|
+
switch (_a.label) {
|
|
398
|
+
case 0: return [4 /*yield*/, this.articleConnector.getSuperArticleQuickSel(id, branch)];
|
|
399
|
+
case 1:
|
|
400
|
+
response = _a.sent();
|
|
401
|
+
if (response && response.validationResult && response.validationResult.success) {
|
|
402
|
+
return [2 /*return*/, this._boFactory.makeWithRawBackendData(superArticle.SuperArticle, response.resultObject)];
|
|
403
|
+
}
|
|
404
|
+
else {
|
|
405
|
+
return [2 /*return*/, null];
|
|
406
|
+
}
|
|
407
|
+
return [2 /*return*/];
|
|
408
|
+
}
|
|
409
|
+
});
|
|
410
|
+
});
|
|
285
411
|
};
|
|
286
|
-
|
|
412
|
+
ProductConnectorAdapterService.prototype.getDocumentContent = function (docId, thumbnail) {
|
|
287
413
|
if (thumbnail === void 0) { thumbnail = true; }
|
|
288
|
-
return this
|
|
414
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
415
|
+
var response;
|
|
416
|
+
return __generator(this, function (_a) {
|
|
417
|
+
switch (_a.label) {
|
|
418
|
+
case 0: return [4 /*yield*/, this.articleConnector.getDocumentContent(docId, thumbnail)];
|
|
419
|
+
case 1:
|
|
420
|
+
response = _a.sent();
|
|
421
|
+
if (response && response.validationResult && response.validationResult.success) {
|
|
422
|
+
return [2 /*return*/, this._boFactory.makeWithRawBackendData(documentContent.DocumentContent, response.resultObject)];
|
|
423
|
+
}
|
|
424
|
+
else {
|
|
425
|
+
return [2 /*return*/, null];
|
|
426
|
+
}
|
|
427
|
+
return [2 /*return*/];
|
|
428
|
+
}
|
|
429
|
+
});
|
|
430
|
+
});
|
|
289
431
|
};
|
|
290
|
-
|
|
291
|
-
|
|
432
|
+
ProductConnectorAdapterService.ɵprov = core.ɵɵdefineInjectable({ factory: function ProductConnectorAdapterService_Factory() { return new ProductConnectorAdapterService(); }, token: ProductConnectorAdapterService, providedIn: "root" });
|
|
433
|
+
ProductConnectorAdapterService = __decorate([
|
|
292
434
|
core.Injectable({
|
|
293
435
|
providedIn: 'root'
|
|
294
436
|
})
|
|
295
|
-
],
|
|
296
|
-
return
|
|
437
|
+
], ProductConnectorAdapterService);
|
|
438
|
+
return ProductConnectorAdapterService;
|
|
297
439
|
}());
|
|
298
440
|
|
|
299
441
|
var JsonUtilsService = /** @class */ (function () {
|
|
@@ -342,64 +484,6 @@
|
|
|
342
484
|
LanguageCode["French"] = "fr-FR";
|
|
343
485
|
})(LanguageCode || (LanguageCode = {}));
|
|
344
486
|
|
|
345
|
-
var StringUtils = /** @class */ (function () {
|
|
346
|
-
function StringUtils() {
|
|
347
|
-
}
|
|
348
|
-
/**
|
|
349
|
-
* Returns a new string where given placeholder in given source string are replaced by given replacement texts.
|
|
350
|
-
*
|
|
351
|
-
* Example usage:
|
|
352
|
-
*
|
|
353
|
-
* source = "ABCDABCD"
|
|
354
|
-
* placeholder = "BC"
|
|
355
|
-
* replacementTexts = "Z", "Z" (REST arguments)
|
|
356
|
-
* OUTPUT = "AZDAZD"
|
|
357
|
-
*
|
|
358
|
-
* @param {string} source
|
|
359
|
-
* @param {string} placeholder
|
|
360
|
-
* @param {string} replacementTexts If only one is given, this function replaces all placeholders with that single replacementText.
|
|
361
|
-
* If more are given, placeholders without a corresponding replacementText will remain their original placeholder characters.
|
|
362
|
-
*/
|
|
363
|
-
StringUtils.ReplaceOccurrencesIn = function (source, placeholder) {
|
|
364
|
-
var replacementTexts = [];
|
|
365
|
-
for (var _i = 2; _i < arguments.length; _i++) {
|
|
366
|
-
replacementTexts[_i - 2] = arguments[_i];
|
|
367
|
-
}
|
|
368
|
-
// parameter guards
|
|
369
|
-
if (!(source)) {
|
|
370
|
-
return undefined;
|
|
371
|
-
}
|
|
372
|
-
if (!placeholder || replacementTexts.length === 0) {
|
|
373
|
-
return source;
|
|
374
|
-
}
|
|
375
|
-
var outString = source;
|
|
376
|
-
// one replacementText means replace for all
|
|
377
|
-
if (replacementTexts.length === 1) {
|
|
378
|
-
// "g" is the g flag to replace globally
|
|
379
|
-
outString = outString.replace(new RegExp(this._escapeRegExp(placeholder), "g"), replacementTexts[0]);
|
|
380
|
-
}
|
|
381
|
-
else {
|
|
382
|
-
// replace occurence i by replacementTexts[i], one at a time in loop (there might be a faster way..)
|
|
383
|
-
for (var i = 0, len = replacementTexts.length; i < len; i++) {
|
|
384
|
-
outString = outString.replace(placeholder, replacementTexts[i]);
|
|
385
|
-
}
|
|
386
|
-
}
|
|
387
|
-
return outString;
|
|
388
|
-
};
|
|
389
|
-
StringUtils.IsString = function (str) {
|
|
390
|
-
return typeof str === 'string';
|
|
391
|
-
};
|
|
392
|
-
// Returns whether given str is a string and has a length > 0.
|
|
393
|
-
StringUtils.IsStringWithLength = function (str) {
|
|
394
|
-
return str && StringUtils.IsString(str) && str.length > 0;
|
|
395
|
-
};
|
|
396
|
-
// Returns given string, escaped for use as string literal in regular expressions.
|
|
397
|
-
StringUtils._escapeRegExp = function (str) {
|
|
398
|
-
return str; // .replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^$\|]/g, "\\$&");
|
|
399
|
-
};
|
|
400
|
-
return StringUtils;
|
|
401
|
-
}());
|
|
402
|
-
|
|
403
487
|
var Dictionary = /** @class */ (function () {
|
|
404
488
|
function Dictionary() {
|
|
405
489
|
this.strings = {
|
|
@@ -521,11 +605,11 @@
|
|
|
521
605
|
for (var _i = 2; _i < arguments.length; _i++) {
|
|
522
606
|
replacementTexts[_i - 2] = arguments[_i];
|
|
523
607
|
}
|
|
524
|
-
if (!StringUtils.IsStringWithLength(key)) {
|
|
608
|
+
if (!stringUtils.StringUtils.IsStringWithLength(key)) {
|
|
525
609
|
return key || '';
|
|
526
610
|
}
|
|
527
611
|
var text = this._dictionaries.get(this.language)[key];
|
|
528
|
-
text = StringUtils.IsStringWithLength(text) ? text : key;
|
|
612
|
+
text = stringUtils.StringUtils.IsStringWithLength(text) ? text : key;
|
|
529
613
|
if (upperCaseFirst) {
|
|
530
614
|
text = text.charAt(0).toUpperCase() + text.slice(1);
|
|
531
615
|
}
|
|
@@ -533,7 +617,7 @@
|
|
|
533
617
|
text = text.charAt(0).toLowerCase() + text.slice(1);
|
|
534
618
|
}
|
|
535
619
|
if (replacementTexts.length > 0) {
|
|
536
|
-
text = StringUtils.ReplaceOccurrencesIn.apply(StringUtils, __spread([text, this._placeholder], replacementTexts));
|
|
620
|
+
text = stringUtils.StringUtils.ReplaceOccurrencesIn.apply(stringUtils.StringUtils, __spread([text, this._placeholder], replacementTexts));
|
|
537
621
|
}
|
|
538
622
|
return text;
|
|
539
623
|
};
|
|
@@ -595,13 +679,13 @@
|
|
|
595
679
|
return Settings;
|
|
596
680
|
}());
|
|
597
681
|
|
|
598
|
-
var
|
|
599
|
-
function
|
|
682
|
+
var ProductSettingsService = /** @class */ (function () {
|
|
683
|
+
function ProductSettingsService(_jsonUtilsService, _dictionaryService) {
|
|
600
684
|
this._jsonUtilsService = _jsonUtilsService;
|
|
601
685
|
this._dictionaryService = _dictionaryService;
|
|
602
686
|
this.settingsLoaded = new rxjs.BehaviorSubject(false);
|
|
603
687
|
}
|
|
604
|
-
Object.defineProperty(
|
|
688
|
+
Object.defineProperty(ProductSettingsService.prototype, "settings", {
|
|
605
689
|
get: function () {
|
|
606
690
|
return this._settings;
|
|
607
691
|
},
|
|
@@ -611,7 +695,7 @@
|
|
|
611
695
|
enumerable: true,
|
|
612
696
|
configurable: true
|
|
613
697
|
});
|
|
614
|
-
|
|
698
|
+
ProductSettingsService.prototype.initializeSettings = function () {
|
|
615
699
|
return __awaiter(this, void 0, void 0, function () {
|
|
616
700
|
var jsonSettings;
|
|
617
701
|
return __generator(this, function (_a) {
|
|
@@ -635,7 +719,7 @@
|
|
|
635
719
|
});
|
|
636
720
|
});
|
|
637
721
|
};
|
|
638
|
-
|
|
722
|
+
ProductSettingsService.prototype.createSettingsFromObject = function (obj) {
|
|
639
723
|
return __awaiter(this, void 0, void 0, function () {
|
|
640
724
|
return __generator(this, function (_a) {
|
|
641
725
|
if (!this.settings) {
|
|
@@ -723,7 +807,7 @@
|
|
|
723
807
|
});
|
|
724
808
|
});
|
|
725
809
|
};
|
|
726
|
-
|
|
810
|
+
ProductSettingsService.prototype.settingsFinished = function () {
|
|
727
811
|
return __awaiter(this, void 0, void 0, function () {
|
|
728
812
|
return __generator(this, function (_a) {
|
|
729
813
|
switch (_a.label) {
|
|
@@ -736,45 +820,41 @@
|
|
|
736
820
|
});
|
|
737
821
|
});
|
|
738
822
|
};
|
|
739
|
-
|
|
823
|
+
ProductSettingsService.ctorParameters = function () { return [
|
|
740
824
|
{ type: JsonUtilsService },
|
|
741
825
|
{ type: DictionaryService }
|
|
742
826
|
]; };
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
827
|
+
ProductSettingsService.ɵprov = core.ɵɵdefineInjectable({ factory: function ProductSettingsService_Factory() { return new ProductSettingsService(core.ɵɵinject(JsonUtilsService), core.ɵɵinject(DictionaryService)); }, token: ProductSettingsService, providedIn: "root" });
|
|
828
|
+
ProductSettingsService = __decorate([
|
|
829
|
+
core.Injectable({
|
|
830
|
+
providedIn: 'root'
|
|
831
|
+
})
|
|
832
|
+
], ProductSettingsService);
|
|
833
|
+
return ProductSettingsService;
|
|
747
834
|
}());
|
|
748
835
|
|
|
749
836
|
// Holds all iONE backend related state and methods for a running HomeDecorator. To be used anywhere internally.
|
|
750
|
-
var
|
|
751
|
-
function
|
|
837
|
+
var ProductConnectorService = /** @class */ (function () {
|
|
838
|
+
function ProductConnectorService(connector, _settingsService) {
|
|
752
839
|
this.connector = connector;
|
|
753
840
|
this._settingsService = _settingsService;
|
|
754
841
|
this.controllerInitialized = new rxjs.BehaviorSubject(false);
|
|
755
842
|
this._initializing = false;
|
|
756
843
|
this._initialized = false;
|
|
757
|
-
this.
|
|
844
|
+
this.connectorOptions = new options.Options();
|
|
758
845
|
this.subs = [];
|
|
759
846
|
}
|
|
760
|
-
Object.defineProperty(
|
|
761
|
-
get: function () {
|
|
762
|
-
return this._article;
|
|
763
|
-
},
|
|
764
|
-
enumerable: true,
|
|
765
|
-
configurable: true
|
|
766
|
-
});
|
|
767
|
-
Object.defineProperty(IOneControllerService.prototype, "shouldShowLoader", {
|
|
847
|
+
Object.defineProperty(ProductConnectorService.prototype, "shouldShowLoader", {
|
|
768
848
|
get: function () {
|
|
769
849
|
return this._shouldShowLoader;
|
|
770
850
|
},
|
|
771
851
|
enumerable: true,
|
|
772
852
|
configurable: true
|
|
773
853
|
});
|
|
774
|
-
|
|
854
|
+
ProductConnectorService.prototype.ngOnDestroy = function () {
|
|
775
855
|
this.subs.forEach(function (sub) { return sub.unsubscribe(); });
|
|
776
856
|
};
|
|
777
|
-
|
|
857
|
+
ProductConnectorService.prototype.initDefaultDevelopTestConnection = function () {
|
|
778
858
|
return __awaiter(this, void 0, void 0, function () {
|
|
779
859
|
var settings;
|
|
780
860
|
return __generator(this, function (_a) {
|
|
@@ -787,18 +867,20 @@
|
|
|
787
867
|
if (!settings) {
|
|
788
868
|
throw Error('Settings are not defined!');
|
|
789
869
|
}
|
|
790
|
-
this.
|
|
791
|
-
this.
|
|
792
|
-
this.
|
|
793
|
-
this.
|
|
794
|
-
this.
|
|
795
|
-
this.
|
|
796
|
-
this.
|
|
797
|
-
this.
|
|
798
|
-
this.
|
|
799
|
-
this.
|
|
800
|
-
this.
|
|
801
|
-
this.
|
|
870
|
+
this.connectorOptions.url = settings.url;
|
|
871
|
+
this.connectorOptions.schema = settings.schema;
|
|
872
|
+
this.connectorOptions.version = settings.version;
|
|
873
|
+
this.connectorOptions.branch = settings.branch;
|
|
874
|
+
this.connectorOptions.username = settings.username;
|
|
875
|
+
this.connectorOptions.password = settings.password;
|
|
876
|
+
this.connectorOptions.session = settings.session;
|
|
877
|
+
this.connectorOptions.currencyId = settings.currency;
|
|
878
|
+
this.connectorOptions.useGroups = settings.useGroups;
|
|
879
|
+
this.connectorOptions.useRenders = settings.useRenders;
|
|
880
|
+
this.connectorOptions.useLoginEncryption = settings.useEncryption;
|
|
881
|
+
this.connectorOptions.languageCode = settings.languageCode;
|
|
882
|
+
this.connector.initConnector(this.connectorOptions);
|
|
883
|
+
this._settingsService.settings.session = this.connectorOptions.session;
|
|
802
884
|
this.controllerInitialized.next(true);
|
|
803
885
|
this._initialized = true;
|
|
804
886
|
this._initializing = false;
|
|
@@ -810,64 +892,67 @@
|
|
|
810
892
|
});
|
|
811
893
|
});
|
|
812
894
|
};
|
|
813
|
-
|
|
895
|
+
ProductConnectorService.prototype.setInstance = function (instanceId) {
|
|
814
896
|
this.connector.setInstance(instanceId);
|
|
815
897
|
};
|
|
816
|
-
|
|
817
|
-
return this
|
|
898
|
+
ProductConnectorService.prototype.getFullArticle = function (sku) {
|
|
899
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
900
|
+
var goodId;
|
|
901
|
+
return __generator(this, function (_a) {
|
|
902
|
+
switch (_a.label) {
|
|
903
|
+
case 0: return [4 /*yield*/, this.connector.getGoodIdFromArticleNr(sku)];
|
|
904
|
+
case 1:
|
|
905
|
+
goodId = _a.sent();
|
|
906
|
+
if (goodId) {
|
|
907
|
+
return [2 /*return*/, this.connector.getArticleFullObject(goodId)];
|
|
908
|
+
}
|
|
909
|
+
return [2 /*return*/, null];
|
|
910
|
+
}
|
|
911
|
+
});
|
|
912
|
+
});
|
|
818
913
|
};
|
|
819
|
-
|
|
914
|
+
ProductConnectorService.prototype.getDocumentContent = function (docId, thumbnail) {
|
|
820
915
|
if (thumbnail === void 0) { thumbnail = true; }
|
|
821
916
|
return this.connector.getDocumentContent(docId, thumbnail);
|
|
822
917
|
};
|
|
823
|
-
|
|
918
|
+
ProductConnectorService.prototype.getDeliveryPrognosis = function (goodId) {
|
|
824
919
|
return this.connector.getDeliveryPrognosis(goodId);
|
|
825
920
|
};
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
921
|
+
ProductConnectorService.prototype.getSelectorDeliveryDate = function () {
|
|
922
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
923
|
+
return __generator(this, function (_a) {
|
|
924
|
+
return [2 /*return*/, this.connector.getSelectorDeliveryDate()];
|
|
925
|
+
});
|
|
926
|
+
});
|
|
832
927
|
};
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
return this.connector.getSuperArticleImages();
|
|
928
|
+
ProductConnectorService.prototype.getDeliveryDate2 = function (goodId) {
|
|
929
|
+
return this.connector.getDeliveryDate2(goodId);
|
|
836
930
|
};
|
|
837
|
-
|
|
931
|
+
ProductConnectorService.prototype.getSuperArticle = function (id) {
|
|
838
932
|
return this.connector.getSuperArticle(id);
|
|
839
933
|
};
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
configuratorStatistics.transactionType = 'Sales';
|
|
844
|
-
configuratorStatistics.actionDomain = 'bundle';
|
|
845
|
-
configuratorStatistics.sessionId = this._settingsService.settings.session ? this._settingsService.settings.session.sessionId : 'unknown';
|
|
846
|
-
configuratorStatistics.webHost = window.location.host;
|
|
847
|
-
configuratorStatistics.bundleHost = window.location.host;
|
|
848
|
-
return this.connector.getJsonConfiguredArticles(configuratorStatistics);
|
|
849
|
-
};
|
|
850
|
-
IOneControllerService.prototype.getJsonArticleFlatTree = function (goodId) {
|
|
851
|
-
return this.connector.getJsonArticleFlatTree(goodId);
|
|
934
|
+
ProductConnectorService.prototype.getJsonArticleFlatTree = function (goodId, goodType, quantity, showLoader, instanceId, configuratorStatistics) {
|
|
935
|
+
if (showLoader === void 0) { showLoader = true; }
|
|
936
|
+
return this.connector.getJsonArticleFlatTree(goodId, goodType, quantity, showLoader, instanceId, configuratorStatistics);
|
|
852
937
|
};
|
|
853
|
-
|
|
938
|
+
ProductConnectorService.prototype.onShowLoaderChange = function (showLoader) {
|
|
854
939
|
this._shouldShowLoader = showLoader;
|
|
855
940
|
};
|
|
856
|
-
|
|
857
|
-
{ type:
|
|
858
|
-
{ type:
|
|
941
|
+
ProductConnectorService.ctorParameters = function () { return [
|
|
942
|
+
{ type: ProductConnectorAdapterService },
|
|
943
|
+
{ type: ProductSettingsService }
|
|
859
944
|
]; };
|
|
860
|
-
|
|
861
|
-
|
|
945
|
+
ProductConnectorService.ɵprov = core.ɵɵdefineInjectable({ factory: function ProductConnectorService_Factory() { return new ProductConnectorService(core.ɵɵinject(ProductConnectorAdapterService), core.ɵɵinject(ProductSettingsService)); }, token: ProductConnectorService, providedIn: "root" });
|
|
946
|
+
ProductConnectorService = __decorate([
|
|
862
947
|
core.Injectable({
|
|
863
948
|
providedIn: 'root'
|
|
864
949
|
})
|
|
865
|
-
],
|
|
866
|
-
return
|
|
950
|
+
], ProductConnectorService);
|
|
951
|
+
return ProductConnectorService;
|
|
867
952
|
}());
|
|
868
953
|
|
|
869
|
-
var
|
|
870
|
-
function
|
|
954
|
+
var ProductEventService = /** @class */ (function () {
|
|
955
|
+
function ProductEventService() {
|
|
871
956
|
this.onAddToCart = new rxjs.Subject();
|
|
872
957
|
this.onAlternativeClick = new rxjs.Subject();
|
|
873
958
|
this.onAddToQuote = new rxjs.Subject();
|
|
@@ -881,26 +966,26 @@
|
|
|
881
966
|
this.onArticleInfoReceived = new rxjs.Subject();
|
|
882
967
|
this.onUpdateProductInfoTab = new rxjs.Subject();
|
|
883
968
|
}
|
|
884
|
-
|
|
969
|
+
ProductEventService.ɵprov = core.ɵɵdefineInjectable({ factory: function ProductEventService_Factory() { return new ProductEventService(); }, token: ProductEventService, providedIn: "root" });
|
|
885
970
|
__decorate([
|
|
886
971
|
core.Output()
|
|
887
|
-
],
|
|
972
|
+
], ProductEventService.prototype, "onAddToCart", void 0);
|
|
888
973
|
__decorate([
|
|
889
974
|
core.Output()
|
|
890
|
-
],
|
|
975
|
+
], ProductEventService.prototype, "onAlternativeClick", void 0);
|
|
891
976
|
__decorate([
|
|
892
977
|
core.Output()
|
|
893
|
-
],
|
|
978
|
+
], ProductEventService.prototype, "onAddToQuote", void 0);
|
|
894
979
|
__decorate([
|
|
895
980
|
core.Output()
|
|
896
|
-
],
|
|
897
|
-
|
|
981
|
+
], ProductEventService.prototype, "onForceRenderImage", void 0);
|
|
982
|
+
ProductEventService = __decorate([
|
|
898
983
|
core.Directive(),
|
|
899
984
|
core.Injectable({
|
|
900
985
|
providedIn: 'root'
|
|
901
986
|
})
|
|
902
|
-
],
|
|
903
|
-
return
|
|
987
|
+
], ProductEventService);
|
|
988
|
+
return ProductEventService;
|
|
904
989
|
}());
|
|
905
990
|
|
|
906
991
|
/** AUTO GENERATED FILE. DO NOT CHANGE.. **/
|
|
@@ -1082,8 +1167,10 @@
|
|
|
1082
1167
|
if (this._images) {
|
|
1083
1168
|
this._images.forEach(function (i) {
|
|
1084
1169
|
if (!i.documentBody && !i.filePath) {
|
|
1085
|
-
_this._ione.getDocumentContent(i.documentId, false).then(function (
|
|
1086
|
-
|
|
1170
|
+
_this._ione.getDocumentContent(i.documentId, false).then(function (content) {
|
|
1171
|
+
if (content) {
|
|
1172
|
+
i.documentBody = content.documentContent;
|
|
1173
|
+
}
|
|
1087
1174
|
});
|
|
1088
1175
|
}
|
|
1089
1176
|
});
|
|
@@ -1102,8 +1189,8 @@
|
|
|
1102
1189
|
}
|
|
1103
1190
|
};
|
|
1104
1191
|
ImageCarouselComponent.ctorParameters = function () { return [
|
|
1105
|
-
{ type:
|
|
1106
|
-
{ type:
|
|
1192
|
+
{ type: ProductConnectorService },
|
|
1193
|
+
{ type: ProductEventService },
|
|
1107
1194
|
{ type: core.ChangeDetectorRef },
|
|
1108
1195
|
{ type: platformBrowser.DomSanitizer },
|
|
1109
1196
|
{ type: IconCacheService }
|
|
@@ -1171,12 +1258,15 @@
|
|
|
1171
1258
|
this.show3D = false;
|
|
1172
1259
|
this.configuring = false;
|
|
1173
1260
|
this.fullscreenAnimationEnd = false;
|
|
1261
|
+
this.settingsLoaded = false;
|
|
1174
1262
|
this._fullScreen = false;
|
|
1175
1263
|
this._subs = [];
|
|
1176
1264
|
this._subs.push(this.appEventService.onForceRenderImage.subscribe(function (x) {
|
|
1177
1265
|
if (_this.selections.nativeElement) {
|
|
1178
1266
|
_this.selections.nativeElement.forceRenderImage();
|
|
1179
1267
|
}
|
|
1268
|
+
}), this.settingsService.settingsLoaded.subscribe(function (loaded) {
|
|
1269
|
+
_this.settingsLoaded = loaded;
|
|
1180
1270
|
}));
|
|
1181
1271
|
}
|
|
1182
1272
|
Object.defineProperty(ProductPageComponent.prototype, "sku", {
|
|
@@ -1275,11 +1365,11 @@
|
|
|
1275
1365
|
if (_this.configurable) {
|
|
1276
1366
|
_this.currentView = SelectorType.TwoD;
|
|
1277
1367
|
}
|
|
1278
|
-
_this.threeD = _this.article.
|
|
1368
|
+
_this.threeD = _this.article.is3D;
|
|
1279
1369
|
_this.selectorType = _this.article.selectorTypeCustomer;
|
|
1280
1370
|
_this._ione.getDeliveryPrognosis(_this.article.goodId).then(function (stockInfo) {
|
|
1281
1371
|
var stockAndDelivery = stockInfo;
|
|
1282
|
-
_this.stockAndDelivery = new StockAndDelivery(stockAndDelivery.
|
|
1372
|
+
_this.stockAndDelivery = new StockAndDelivery(0, stockAndDelivery.returnValue ? stockAndDelivery.returnValue : ' ');
|
|
1283
1373
|
_this._changeDetector.detectChanges();
|
|
1284
1374
|
});
|
|
1285
1375
|
_this._changeDetector.detectChanges();
|
|
@@ -1293,12 +1383,12 @@
|
|
|
1293
1383
|
});
|
|
1294
1384
|
};
|
|
1295
1385
|
ProductPageComponent.ctorParameters = function () { return [
|
|
1296
|
-
{ type:
|
|
1386
|
+
{ type: ProductConnectorService },
|
|
1297
1387
|
{ type: core.Renderer2 },
|
|
1298
1388
|
{ type: core.ChangeDetectorRef },
|
|
1299
1389
|
{ type: IconCacheService },
|
|
1300
|
-
{ type:
|
|
1301
|
-
{ type:
|
|
1390
|
+
{ type: ProductSettingsService },
|
|
1391
|
+
{ type: ProductEventService }
|
|
1302
1392
|
]; };
|
|
1303
1393
|
__decorate([
|
|
1304
1394
|
core.ViewChild('configurator', { read: core.ElementRef })
|
|
@@ -1315,7 +1405,7 @@
|
|
|
1315
1405
|
ProductPageComponent = __decorate([
|
|
1316
1406
|
core.Component({
|
|
1317
1407
|
selector: 'app-product-page',
|
|
1318
|
-
template: "<div class=\"page-wrapper\">\r\n <div class=\"page-wrapper-content\">\r\n <div class=\"page-wrapper-left\">\r\n <div class=\"product-image-container\">\r\n <div class=\"product-page-block-selector-type\">\r\n <app-product-selector-type class=\"default-padding\"\r\n [(currentType)]=\"currentView\"\r\n [show2D]=\"configurable\"\r\n [show3D]=\"threeD\"\r\n ></app-product-selector-type>\r\n </div>\r\n <div class=\"product-page-block-image default-padding\" [class.full]=\"fullScreen\">\r\n <app-image-carousel [@toggleVisibilityByState]=\"show2D ? 'show' : 'hide'\" [images]=\"article?.images\" [showRefresh]=\"configurable && threeD\"></app-image-carousel>\r\n <threed-configurator #configurator class=\"threed-configurator\"\r\n
|
|
1408
|
+
template: "<div class=\"page-wrapper\">\r\n <div class=\"page-wrapper-content\">\r\n <div class=\"page-wrapper-left\">\r\n <div class=\"product-image-container\">\r\n <div class=\"product-page-block-selector-type\">\r\n <app-product-selector-type class=\"default-padding\"\r\n [(currentType)]=\"currentView\"\r\n [show2D]=\"configurable\"\r\n [show3D]=\"threeD\"\r\n ></app-product-selector-type>\r\n </div>\r\n <div class=\"product-page-block-image default-padding\" [class.full]=\"fullScreen\">\r\n <app-image-carousel [@toggleVisibilityByState]=\"show2D ? 'show' : 'hide'\" [images]=\"article?.images\" [showRefresh]=\"configurable && threeD\"></app-image-carousel>\r\n <ng-container *ngIf=\"settingsLoaded\">\r\n <threed-configurator #configurator class=\"threed-configurator\"\r\n [class.configurator-full-screen]=\"fullScreen\"\r\n [@toggleVisibilityByState]=\"show3D ? 'show' : 'hide'\"\r\n [@toggleFullScreen]=\"fullScreen ? 'fullscreen' : 'halfscreen'\"\r\n ></threed-configurator>\r\n </ng-container>\r\n <co-icon #fullscreenbutton class=\"fullscreen-button\" *ngIf=\"show3D\"\r\n [@toggleTopLeft]=\"fullScreen ? 'fullscreen' : 'halfscreen'\"\r\n [iconData]=\"iconCache.getIcon(fullScreenIcon)\"\r\n (click)=\"showFullScreen()\"></co-icon>\r\n <co-icon class=\"threed-watermark\" *ngIf=\"show3D && fullScreen\"\r\n [iconData]=\"iconCache.getIcon(icon.Logo)\"></co-icon>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"page-wrapper-right\">\r\n <div class=\"product-page-block-description\">\r\n <app-product-description class=\"default-padding\" [article]=\"article\"></app-product-description>\r\n </div>\r\n <div class=\"product-page-block-additional\">\r\n <div class=\"product-page-block-additional-description\">\r\n <app-product-additional-description class=\"default-padding\" [article]=\"article\"></app-product-additional-description>\r\n </div>\r\n <div class=\"product-page-block-price\" [class.full]=\"configuring\">\r\n <app-product-price class=\"s-padding\" *ngIf=\"!configuring\"\r\n [pricing]=\"article?.pricing\"\r\n [configurable]=\"configurable\"\r\n ></app-product-price>\r\n <ng-container *ngIf=\"settingsLoaded\">\r\n <threed-selections #selections class=\"threed-selections\" [class.show-selections]=\"configuring\" [@toggleFullScreenRight]=\"fullScreen ? 'fullscreen' : 'halfscreen'\"\r\n [class.default-padding]=\"!fullScreen\"\r\n [class.show-full-screen]=\"fullScreen\"\r\n [class.mini-scrollbar]=\"fullScreen\"\r\n [sku]=\"sku\"\r\n [settings]=\"settingsService.settings\"\r\n (onUserActionFromThreeD)=\"configuring = true\"\r\n (instanceSet)=\"setInstance($event)\"\r\n (onImageReceived)=\"appEventService.onImageReceived.next($event)\"\r\n (onRenderStarted)=\"appEventService.onRenderStarted.next()\"\r\n (onDraftRenderImageReceived)=\"appEventService.onDraftRenderImageReceived.next($event)\"\r\n (onArticleReceived)=\"appEventService.onArticleReceived.next($event.detail)\"\r\n (onSelectionsReceived)=\"appEventService.onSelectionsReceived.next($event.detail)\"\r\n (onArticleInfoReceived)=\"appEventService.onArticleInfoReceived.next($event.detail)\"\r\n ></threed-selections>\r\n </ng-container>\r\n </div>\r\n <div class=\"product-page-block-addtocart no-padding product-action-buttons\" *ngIf=\"!configuring\" [@toggleTopRight]=\"fullScreen ? 'fullscreen' : 'halfscreen'\">\r\n <app-product-addtocart\r\n [configurable]=\"configurable\"\r\n [configuring]=\"configuring\"\r\n [article]=\"article\"\r\n (startConfiguration)=\"handleStartConfiguration()\"\r\n ></app-product-addtocart>\r\n </div>\r\n <div class=\"addtocart-reserved product-action-buttons\" *ngIf=\"configuring\" [class.full-screen]=\"fullScreen\">\r\n <app-product-addtocart class=\"default-padding\"\r\n [configurable]=\"false\"\r\n [fullscreen]=\"fullScreen\"\r\n [configuring]=\"configuring\"\r\n [article]=\"article\"\r\n (startConfiguration)=\"handleStartConfiguration()\"\r\n ></app-product-addtocart>\r\n </div>\r\n <div class=\"product-page-block-variants\">\r\n <app-product-related class=\"no-padding\" *ngIf=\"article?.relatedArticles && article?.relatedArticles.length > 0\"\r\n [articles]=\"article?.relatedArticles\" [refType]=\"64\" [label]=\"'VARIANTS' | localize\"></app-product-related>\r\n </div>\r\n <div class=\"product-page-block-stock\">\r\n <app-product-stock class=\"no-padding\" [stockAndDelivery]=\"stockAndDelivery\"></app-product-stock>\r\n </div>\r\n <div class=\"product-page-block-delivery\">\r\n <app-product-delivery class=\"no-padding\" [stockAndDelivery]=\"stockAndDelivery\"></app-product-delivery>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"page-wrapper-content\">\r\n <div class=\"page-wrapper-left\">\r\n <app-product-info-tabs class=\"no-padding\" [article]=\"article\"></app-product-info-tabs>\r\n </div>\r\n <div class=\"page-wrapper-right\">\r\n <div class=\"product-page-block-related s-padding\">\r\n <app-product-related *ngIf=\"article?.relatedArticles && article?.relatedArticles.length > 0\"\r\n [articles]=\"article?.relatedArticles\" [refType]=\"1\" [label]=\"'RELATED_PRODUCTS' | localize\"></app-product-related>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"page-wrapper-content no-top-margin\">\r\n <div class=\"page-wrapper-full\">\r\n <div class=\"product-page-block-alternatives s-padding\">\r\n <app-product-related *ngIf=\"article?.relatedArticles && article?.relatedArticles.length > 0\"\r\n [articles]=\"article?.relatedArticles\" [refType]=\"4\" [isSmallModus]=\"false\" [label]=\"'ALTERNATIVE_PRODUCTS' | localize\"></app-product-related>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
1319
1409
|
animations: [
|
|
1320
1410
|
animations.trigger('toggleFullScreen', [
|
|
1321
1411
|
animations.state('fullscreen', animations.style({ 'position': 'fixed', 'top': '0', 'left': '0', 'width': '100%', 'height': '100%' })),
|
|
@@ -1419,13 +1509,17 @@
|
|
|
1419
1509
|
var _this = this;
|
|
1420
1510
|
this._articles.forEach(function (a) {
|
|
1421
1511
|
if (!a.image.documentBody) {
|
|
1422
|
-
_this._iOne.getDocumentContent(a.image.documentId).then(function (
|
|
1512
|
+
_this._iOne.getDocumentContent(a.image.documentId).then(function (content) {
|
|
1513
|
+
if (content) {
|
|
1514
|
+
a.image.documentBody = content.documentContent;
|
|
1515
|
+
}
|
|
1516
|
+
});
|
|
1423
1517
|
}
|
|
1424
1518
|
});
|
|
1425
1519
|
};
|
|
1426
1520
|
ProductRelatedComponent.ctorParameters = function () { return [
|
|
1427
|
-
{ type:
|
|
1428
|
-
{ type:
|
|
1521
|
+
{ type: ProductConnectorService },
|
|
1522
|
+
{ type: ProductEventService }
|
|
1429
1523
|
]; };
|
|
1430
1524
|
__decorate([
|
|
1431
1525
|
core.Input()
|
|
@@ -1505,12 +1599,12 @@
|
|
|
1505
1599
|
return ProductInfoComponent;
|
|
1506
1600
|
}());
|
|
1507
1601
|
|
|
1508
|
-
var
|
|
1509
|
-
function
|
|
1602
|
+
var ProductModuleService = /** @class */ (function () {
|
|
1603
|
+
function ProductModuleService(_iOneConnectorService) {
|
|
1510
1604
|
this._iOneConnectorService = _iOneConnectorService;
|
|
1511
1605
|
this._superArticles = new Map();
|
|
1512
1606
|
}
|
|
1513
|
-
|
|
1607
|
+
ProductModuleService.prototype.getArticle = function (id) {
|
|
1514
1608
|
return __awaiter(this, void 0, void 0, function () {
|
|
1515
1609
|
return __generator(this, function (_a) {
|
|
1516
1610
|
switch (_a.label) {
|
|
@@ -1520,7 +1614,7 @@
|
|
|
1520
1614
|
});
|
|
1521
1615
|
});
|
|
1522
1616
|
};
|
|
1523
|
-
|
|
1617
|
+
ProductModuleService.prototype._getArticle = function (id) {
|
|
1524
1618
|
return __awaiter(this, void 0, void 0, function () {
|
|
1525
1619
|
var mainArticle;
|
|
1526
1620
|
return __generator(this, function (_a) {
|
|
@@ -1537,16 +1631,16 @@
|
|
|
1537
1631
|
});
|
|
1538
1632
|
});
|
|
1539
1633
|
};
|
|
1540
|
-
|
|
1541
|
-
{ type:
|
|
1634
|
+
ProductModuleService.ctorParameters = function () { return [
|
|
1635
|
+
{ type: ProductConnectorService }
|
|
1542
1636
|
]; };
|
|
1543
|
-
|
|
1544
|
-
|
|
1637
|
+
ProductModuleService.ɵprov = core.ɵɵdefineInjectable({ factory: function ProductModuleService_Factory() { return new ProductModuleService(core.ɵɵinject(ProductConnectorService)); }, token: ProductModuleService, providedIn: "root" });
|
|
1638
|
+
ProductModuleService = __decorate([
|
|
1545
1639
|
core.Injectable({
|
|
1546
1640
|
providedIn: 'root'
|
|
1547
1641
|
})
|
|
1548
|
-
],
|
|
1549
|
-
return
|
|
1642
|
+
], ProductModuleService);
|
|
1643
|
+
return ProductModuleService;
|
|
1550
1644
|
}());
|
|
1551
1645
|
|
|
1552
1646
|
var BitUtils = /** @class */ (function () {
|
|
@@ -1668,7 +1762,7 @@
|
|
|
1668
1762
|
};
|
|
1669
1763
|
ProductAdditionalInfoComponent.ctorParameters = function () { return [
|
|
1670
1764
|
{ type: platformBrowser.DomSanitizer },
|
|
1671
|
-
{ type:
|
|
1765
|
+
{ type: ProductModuleService },
|
|
1672
1766
|
{ type: core.ChangeDetectorRef }
|
|
1673
1767
|
]; };
|
|
1674
1768
|
__decorate([
|
|
@@ -1797,7 +1891,7 @@
|
|
|
1797
1891
|
};
|
|
1798
1892
|
ProductDeliveryComponent.ctorParameters = function () { return [
|
|
1799
1893
|
{ type: LocalizePipe },
|
|
1800
|
-
{ type:
|
|
1894
|
+
{ type: ProductConnectorService },
|
|
1801
1895
|
{ type: IconCacheService }
|
|
1802
1896
|
]; };
|
|
1803
1897
|
__decorate([
|
|
@@ -1806,7 +1900,7 @@
|
|
|
1806
1900
|
ProductDeliveryComponent = __decorate([
|
|
1807
1901
|
core.Component({
|
|
1808
1902
|
selector: 'app-product-delivery',
|
|
1809
|
-
template: "<!--<app-header [label]=\"'DELIVERY_TIME_PERIOD' | localize\"></app-header>-->\n<div class=\"product-delivery-wrapper\">\n <co-icon class=\"delivery-icon\" [iconData]=\"iconData\"></co-icon>\n <div class=\"product-delivery-fields\">\n <div class=\"pp-default-label\" [textContent]=\"'DELIVERY_TIME_PERIOD' | localize\"></div>\n <div class=\"pp-default-description\" [textContent]=\"deliveryDescription\"></div>\n </div>\n</div>\n",
|
|
1903
|
+
template: "<!--<app-header [label]=\"'DELIVERY_TIME_PERIOD' | localize\"></app-header>-->\n<div class=\"product-delivery-wrapper\">\n <co-icon class=\"delivery-icon\" [iconData]=\"iconData\"></co-icon>\n <div class=\"product-delivery-fields\">\n <div class=\"pp-default-label\" [textContent]=\"'DELIVERY_TIME_PERIOD' | localize\"></div>\n <div class=\"pp-default-description\" [textContent]=\"deliveryDescription | date:'dd MMMM yyyy'\"></div>\n </div>\n</div>\n",
|
|
1810
1904
|
providers: [LocalizePipe],
|
|
1811
1905
|
styles: [":host{display:block}.product-delivery-wrapper{display:flex;flex-direction:row;align-items:center;border-bottom:1px solid #f6f5f4;padding:20px 15px}.product-delivery-wrapper .delivery-icon{margin:0 15px 0 0;width:40px;height:37px}.product-delivery-wrapper .product-delivery-fields{display:flex;flex-direction:column}.product-delivery-wrapper .product-delivery-fields .pp-default-label{font-size:14px;margin:0}@media screen and (max-width:400px){.product-delivery-wrapper{padding:15px 0 15px 10px}.product-delivery-wrapper .delivery-icon{margin:0 15px 0 0;width:32px;height:28px}.product-delivery-wrapper .product-delivery-fields .pp-default-label{font-size:13px}}"]
|
|
1812
1906
|
})
|
|
@@ -1833,7 +1927,7 @@
|
|
|
1833
1927
|
ProductStockComponent.prototype.ngOnInit = function () {
|
|
1834
1928
|
};
|
|
1835
1929
|
ProductStockComponent.ctorParameters = function () { return [
|
|
1836
|
-
{ type:
|
|
1930
|
+
{ type: ProductConnectorService },
|
|
1837
1931
|
{ type: IconCacheService }
|
|
1838
1932
|
]; };
|
|
1839
1933
|
__decorate([
|
|
@@ -1961,10 +2055,11 @@
|
|
|
1961
2055
|
}());
|
|
1962
2056
|
|
|
1963
2057
|
var ProductAddtocartComponent = /** @class */ (function () {
|
|
1964
|
-
function ProductAddtocartComponent(iconCache, _ioneControllerService, _appEventService) {
|
|
2058
|
+
function ProductAddtocartComponent(iconCache, _ioneControllerService, _appEventService, _settingsService) {
|
|
1965
2059
|
this.iconCache = iconCache;
|
|
1966
2060
|
this._ioneControllerService = _ioneControllerService;
|
|
1967
2061
|
this._appEventService = _appEventService;
|
|
2062
|
+
this._settingsService = _settingsService;
|
|
1968
2063
|
this.icon = IconEnum;
|
|
1969
2064
|
this.configurable = false;
|
|
1970
2065
|
this.configuring = false;
|
|
@@ -2022,46 +2117,28 @@
|
|
|
2022
2117
|
};
|
|
2023
2118
|
ProductAddtocartComponent.prototype._getJSONFromArticleObject = function (article) {
|
|
2024
2119
|
return __awaiter(this, void 0, void 0, function () {
|
|
2025
|
-
var
|
|
2120
|
+
var configuratorStatistics;
|
|
2026
2121
|
return __generator(this, function (_a) {
|
|
2027
2122
|
switch (_a.label) {
|
|
2028
2123
|
case 0:
|
|
2029
|
-
|
|
2030
|
-
|
|
2031
|
-
|
|
2032
|
-
|
|
2033
|
-
|
|
2034
|
-
|
|
2035
|
-
|
|
2036
|
-
|
|
2037
|
-
|
|
2038
|
-
returnObject.goodId = selectorDataObject.hasOwnProperty('compositionGoodId') ? selectorDataObject['compositionGoodId'] : selectorDataObject['goodId'];
|
|
2039
|
-
returnObject.selectorData = selectorDataObject;
|
|
2040
|
-
return [4 /*yield*/, this._ioneControllerService.getJsonArticleFlatTree(returnObject.goodId)];
|
|
2041
|
-
case 2:
|
|
2042
|
-
articleFlatTreeJson = _a.sent();
|
|
2043
|
-
if (articleFlatTreeJson) {
|
|
2044
|
-
returnObject.articleTree = JSON.parse(articleFlatTreeJson);
|
|
2045
|
-
}
|
|
2046
|
-
return [3 /*break*/, 5];
|
|
2047
|
-
case 3:
|
|
2048
|
-
returnObject.goodId = article.article.goodId;
|
|
2049
|
-
return [4 /*yield*/, this._ioneControllerService.getJsonArticleFlatTree(returnObject.goodId)];
|
|
2050
|
-
case 4:
|
|
2051
|
-
articleFlatTreeJson = _a.sent();
|
|
2052
|
-
if (articleFlatTreeJson) {
|
|
2053
|
-
returnObject.articleTree = JSON.parse(articleFlatTreeJson);
|
|
2054
|
-
}
|
|
2055
|
-
_a.label = 5;
|
|
2056
|
-
case 5: return [2 /*return*/, JSON.stringify(returnObject)];
|
|
2124
|
+
configuratorStatistics = new configuratorStatisticsEnvironment.ConfiguratorStatisticsEnvironment();
|
|
2125
|
+
configuratorStatistics.userType = 'iOneProductPage';
|
|
2126
|
+
configuratorStatistics.transactionType = 'Sales';
|
|
2127
|
+
configuratorStatistics.actionDomain = 'bundle';
|
|
2128
|
+
configuratorStatistics.sessionId = this._settingsService.settings.session ? this._settingsService.settings.session.sessionId : 'unknown';
|
|
2129
|
+
configuratorStatistics.webHost = window.location.host;
|
|
2130
|
+
configuratorStatistics.bundleHost = window.location.host;
|
|
2131
|
+
return [4 /*yield*/, this._ioneControllerService.getJsonArticleFlatTree(article.article.goodId, article.article.goodType, article.quantity, true, undefined, configuratorStatistics)];
|
|
2132
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
2057
2133
|
}
|
|
2058
2134
|
});
|
|
2059
2135
|
});
|
|
2060
2136
|
};
|
|
2061
2137
|
ProductAddtocartComponent.ctorParameters = function () { return [
|
|
2062
2138
|
{ type: IconCacheService },
|
|
2063
|
-
{ type:
|
|
2064
|
-
{ type:
|
|
2139
|
+
{ type: ProductConnectorService },
|
|
2140
|
+
{ type: ProductEventService },
|
|
2141
|
+
{ type: ProductSettingsService }
|
|
2065
2142
|
]; };
|
|
2066
2143
|
__decorate([
|
|
2067
2144
|
core.ViewChild('addtocartbutton', { read: core.ElementRef })
|
|
@@ -2156,6 +2233,7 @@
|
|
|
2156
2233
|
// this.sku = 'CF-39904ANT';
|
|
2157
2234
|
// this.sku = 'CF-22346001';
|
|
2158
2235
|
// this.sku = '104';
|
|
2236
|
+
// this.sku = '1000561986';
|
|
2159
2237
|
var _this = this;
|
|
2160
2238
|
this._dictionary = _dictionary;
|
|
2161
2239
|
this._jsonUtils = _jsonUtils;
|
|
@@ -2228,10 +2306,10 @@
|
|
|
2228
2306
|
IoneProductComponent.ctorParameters = function () { return [
|
|
2229
2307
|
{ type: DictionaryService },
|
|
2230
2308
|
{ type: JsonUtilsService },
|
|
2231
|
-
{ type:
|
|
2309
|
+
{ type: ProductConnectorService },
|
|
2232
2310
|
{ type: core.ChangeDetectorRef },
|
|
2233
|
-
{ type:
|
|
2234
|
-
{ type:
|
|
2311
|
+
{ type: ProductEventService },
|
|
2312
|
+
{ type: ProductSettingsService }
|
|
2235
2313
|
]; };
|
|
2236
2314
|
__decorate([
|
|
2237
2315
|
core.Input()
|
|
@@ -2310,7 +2388,7 @@
|
|
|
2310
2388
|
}
|
|
2311
2389
|
};
|
|
2312
2390
|
ProductAdditionalDescriptionComponent.ctorParameters = function () { return [
|
|
2313
|
-
{ type:
|
|
2391
|
+
{ type: ProductEventService }
|
|
2314
2392
|
]; };
|
|
2315
2393
|
__decorate([
|
|
2316
2394
|
core.Input()
|
|
@@ -2373,7 +2451,7 @@
|
|
|
2373
2451
|
}
|
|
2374
2452
|
};
|
|
2375
2453
|
ProductInfoTabsComponent.ctorParameters = function () { return [
|
|
2376
|
-
{ type:
|
|
2454
|
+
{ type: ProductEventService }
|
|
2377
2455
|
]; };
|
|
2378
2456
|
__decorate([
|
|
2379
2457
|
core.ViewChild('tabContent')
|
|
@@ -2391,27 +2469,27 @@
|
|
|
2391
2469
|
return ProductInfoTabsComponent;
|
|
2392
2470
|
}());
|
|
2393
2471
|
|
|
2394
|
-
var
|
|
2395
|
-
function
|
|
2472
|
+
var ProductInitializerService = /** @class */ (function () {
|
|
2473
|
+
function ProductInitializerService(_settingsService) {
|
|
2396
2474
|
this._settingsService = _settingsService;
|
|
2397
2475
|
}
|
|
2398
|
-
|
|
2476
|
+
ProductInitializerService.prototype.initializeApp = function () {
|
|
2399
2477
|
return __awaiter(this, void 0, void 0, function () {
|
|
2400
2478
|
return __generator(this, function (_a) {
|
|
2401
2479
|
return [2 /*return*/, this._settingsService.initializeSettings()];
|
|
2402
2480
|
});
|
|
2403
2481
|
});
|
|
2404
2482
|
};
|
|
2405
|
-
|
|
2406
|
-
{ type:
|
|
2483
|
+
ProductInitializerService.ctorParameters = function () { return [
|
|
2484
|
+
{ type: ProductSettingsService }
|
|
2407
2485
|
]; };
|
|
2408
|
-
|
|
2409
|
-
|
|
2486
|
+
ProductInitializerService.ɵprov = core.ɵɵdefineInjectable({ factory: function ProductInitializerService_Factory() { return new ProductInitializerService(core.ɵɵinject(ProductSettingsService)); }, token: ProductInitializerService, providedIn: "root" });
|
|
2487
|
+
ProductInitializerService = __decorate([
|
|
2410
2488
|
core.Injectable({
|
|
2411
2489
|
providedIn: 'root',
|
|
2412
2490
|
})
|
|
2413
|
-
],
|
|
2414
|
-
return
|
|
2491
|
+
], ProductInitializerService);
|
|
2492
|
+
return ProductInitializerService;
|
|
2415
2493
|
}());
|
|
2416
2494
|
|
|
2417
2495
|
function initializeApp(context) {
|
|
@@ -2464,14 +2542,14 @@
|
|
|
2464
2542
|
IoneProductComponent
|
|
2465
2543
|
],
|
|
2466
2544
|
providers: [
|
|
2467
|
-
|
|
2468
|
-
|
|
2469
|
-
|
|
2545
|
+
ProductSettingsService,
|
|
2546
|
+
ProductConnectorService,
|
|
2547
|
+
ProductConnectorAdapterService,
|
|
2470
2548
|
IconCacheService,
|
|
2471
2549
|
{
|
|
2472
2550
|
provide: core.APP_INITIALIZER,
|
|
2473
2551
|
useFactory: initializeApp,
|
|
2474
|
-
deps: [
|
|
2552
|
+
deps: [ProductInitializerService],
|
|
2475
2553
|
multi: true
|
|
2476
2554
|
}
|
|
2477
2555
|
],
|
|
@@ -2485,16 +2563,17 @@
|
|
|
2485
2563
|
}());
|
|
2486
2564
|
|
|
2487
2565
|
exports.IoneProductModule = IoneProductModule;
|
|
2566
|
+
exports.Version = Version;
|
|
2488
2567
|
exports.initializeApp = initializeApp;
|
|
2489
2568
|
exports.ɵa = IoneProductComponent;
|
|
2490
2569
|
exports.ɵb = DictionaryService;
|
|
2491
2570
|
exports.ɵba = ProductAdditionalDescriptionComponent;
|
|
2492
|
-
exports.ɵbb =
|
|
2571
|
+
exports.ɵbb = ProductInitializerService;
|
|
2493
2572
|
exports.ɵc = JsonUtilsService;
|
|
2494
|
-
exports.ɵd =
|
|
2495
|
-
exports.ɵe =
|
|
2496
|
-
exports.ɵf =
|
|
2497
|
-
exports.ɵg =
|
|
2573
|
+
exports.ɵd = ProductConnectorService;
|
|
2574
|
+
exports.ɵe = ProductConnectorAdapterService;
|
|
2575
|
+
exports.ɵf = ProductSettingsService;
|
|
2576
|
+
exports.ɵg = ProductEventService;
|
|
2498
2577
|
exports.ɵh = ProductPageComponent;
|
|
2499
2578
|
exports.ɵi = IconCacheService;
|
|
2500
2579
|
exports.ɵj = ImageCarouselComponent;
|
|
@@ -2504,7 +2583,7 @@
|
|
|
2504
2583
|
exports.ɵn = HeaderComponent;
|
|
2505
2584
|
exports.ɵo = ProductInfoComponent;
|
|
2506
2585
|
exports.ɵp = ProductAdditionalInfoComponent;
|
|
2507
|
-
exports.ɵq =
|
|
2586
|
+
exports.ɵq = ProductModuleService;
|
|
2508
2587
|
exports.ɵr = ProductPropertiesComponent;
|
|
2509
2588
|
exports.ɵs = ProductDeliveryComponent;
|
|
2510
2589
|
exports.ɵt = LocalizePipe;
|