@colijnit/product 1.9.5 → 2.9.1

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.
Files changed (70) hide show
  1. package/app/components/product-additional-info/product-additional-info.component.d.ts +4 -3
  2. package/app/components/product-external-source/product-external-source.component.d.ts +30 -0
  3. package/app/components/product-external-source/product-external-source.module.d.ts +2 -0
  4. package/app/components/product-page/product-page.component.d.ts +4 -0
  5. package/app/components/product-page/product-page.module.d.ts +2 -0
  6. package/app/ione-product.component.d.ts +5 -5
  7. package/app/ione-product.module.d.ts +0 -2
  8. package/app/model/{settings.d.ts → productSettings.d.ts} +3 -2
  9. package/app/pipe/pipe.module.d.ts +2 -0
  10. package/app/service/product-connector-adapter.service.d.ts +8 -2
  11. package/app/service/product-connector.service.d.ts +10 -5
  12. package/app/service/product-settings.service.d.ts +3 -3
  13. package/bundles/colijnit-product.umd.js +1469 -1258
  14. package/bundles/colijnit-product.umd.js.map +1 -1
  15. package/bundles/colijnit-product.umd.min.js +2 -2
  16. package/bundles/colijnit-product.umd.min.js.map +1 -1
  17. package/colijnit-product.d.ts +28 -28
  18. package/colijnit-product.metadata.json +1 -1
  19. package/esm2015/app/components/product-additional-info/product-additional-info.component.js +23 -16
  20. package/esm2015/app/components/product-addtocart/product-addtocart.component.js +2 -2
  21. package/esm2015/app/components/product-delivery/product-delivery.component.js +1 -2
  22. package/esm2015/app/components/product-external-source/product-external-source.component.js +123 -0
  23. package/esm2015/app/components/product-external-source/product-external-source.module.js +23 -0
  24. package/esm2015/app/components/product-page/product-page.component.js +45 -15
  25. package/esm2015/app/components/product-page/product-page.module.js +66 -0
  26. package/esm2015/app/ione-product.component.js +53 -20
  27. package/esm2015/app/ione-product.module.js +9 -74
  28. package/esm2015/app/model/productSettings.js +16 -0
  29. package/esm2015/app/pipe/pipe.module.js +20 -0
  30. package/esm2015/app/product-version.js +3 -3
  31. package/esm2015/app/service/dictionary.service.js +1 -1
  32. package/esm2015/app/service/product-connector-adapter.service.js +34 -9
  33. package/esm2015/app/service/product-connector.service.js +33 -35
  34. package/esm2015/app/service/product-event.service.js +2 -6
  35. package/esm2015/app/service/product-settings.service.js +13 -74
  36. package/esm2015/colijnit-product.js +29 -29
  37. package/esm2015/public_api.js +3 -1
  38. package/esm5/app/components/product-additional-info/product-additional-info.component.js +43 -24
  39. package/esm5/app/components/product-addtocart/product-addtocart.component.js +2 -2
  40. package/esm5/app/components/product-delivery/product-delivery.component.js +1 -2
  41. package/esm5/app/components/product-external-source/product-external-source.component.js +126 -0
  42. package/esm5/app/components/product-external-source/product-external-source.module.js +26 -0
  43. package/esm5/app/components/product-page/product-page.component.js +49 -15
  44. package/esm5/app/components/product-page/product-page.module.js +69 -0
  45. package/esm5/app/ione-product.component.js +81 -21
  46. package/esm5/app/ione-product.module.js +9 -74
  47. package/esm5/app/model/productSettings.js +18 -0
  48. package/esm5/app/pipe/pipe.module.js +23 -0
  49. package/esm5/app/product-version.js +3 -3
  50. package/esm5/app/service/dictionary.service.js +1 -1
  51. package/esm5/app/service/product-connector-adapter.service.js +61 -10
  52. package/esm5/app/service/product-connector.service.js +65 -52
  53. package/esm5/app/service/product-event.service.js +2 -6
  54. package/esm5/app/service/product-settings.service.js +14 -74
  55. package/esm5/colijnit-product.js +29 -29
  56. package/esm5/public_api.js +3 -1
  57. package/fesm2015/colijnit-product.js +1185 -1056
  58. package/fesm2015/colijnit-product.js.map +1 -1
  59. package/fesm5/colijnit-product.js +1442 -1230
  60. package/fesm5/colijnit-product.js.map +1 -1
  61. package/package.json +5 -4
  62. package/public_api.d.ts +2 -0
  63. package/app/service/product-initializer.service.d.ts +0 -6
  64. package/app/service/product-module.service.d.ts +0 -9
  65. package/esm2015/app/model/settings.js +0 -15
  66. package/esm2015/app/service/product-initializer.service.js +0 -26
  67. package/esm2015/app/service/product-module.service.js +0 -39
  68. package/esm5/app/model/settings.js +0 -17
  69. package/esm5/app/service/product-initializer.service.js +0 -29
  70. package/esm5/app/service/product-module.service.js +0 -50
@@ -1,15 +1,16 @@
1
1
  import { __awaiter, __decorate } from "tslib";
2
2
  import { ChangeDetectorRef, Component, Input, OnInit, SecurityContext } from '@angular/core';
3
3
  import { DomSanitizer, SafeHtml } from '@angular/platform-browser';
4
- import { ProductModuleService } from '../../service/product-module.service';
5
4
  import { BitUtils } from '../../utils/bit-utils';
5
+ import { ProductConnectorService } from '../../service/product-connector.service';
6
6
  let ProductAdditionalInfoComponent = class ProductAdditionalInfoComponent {
7
- constructor(_sanitizer, _moduleService, _changeDetector) {
7
+ constructor(_sanitizer, _connectorService, _changeDetector) {
8
8
  this._sanitizer = _sanitizer;
9
- this._moduleService = _moduleService;
9
+ this._connectorService = _connectorService;
10
10
  this._changeDetector = _changeDetector;
11
11
  this.showLabel = false;
12
12
  this.textParts = [];
13
+ this._superArticles = new Map();
13
14
  }
14
15
  set article(value) {
15
16
  if (value) {
@@ -25,10 +26,18 @@ let ProductAdditionalInfoComponent = class ProductAdditionalInfoComponent {
25
26
  ngOnInit() {
26
27
  }
27
28
  _getTextsSuperArticle() {
28
- return new Promise((resolve, reject) => {
29
- const texts = [];
30
- if (this.article.superArticleNr) {
31
- this._moduleService.getArticle(this.article.superArticleNr).then((mainArticle) => {
29
+ return __awaiter(this, void 0, void 0, function* () {
30
+ return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
31
+ const texts = [];
32
+ if (this.article.superArticleNr) {
33
+ let mainArticle;
34
+ if (this._superArticles.has(this.article.superArticleNr)) {
35
+ mainArticle = this._superArticles.get(this.article.superArticleNr);
36
+ }
37
+ else {
38
+ mainArticle = yield this._connectorService.getSuperArticle(this.article.superArticleNr);
39
+ this._superArticles.set(this.article.superArticleNr, mainArticle);
40
+ }
32
41
  mainArticle.texts.forEach((txt) => {
33
42
  if (BitUtils.IsFullDescription(txt.publication)) {
34
43
  const safeTxt = this._sanitizer.sanitize(SecurityContext.HTML, txt.text);
@@ -36,13 +45,11 @@ let ProductAdditionalInfoComponent = class ProductAdditionalInfoComponent {
36
45
  }
37
46
  });
38
47
  resolve(texts);
39
- }).catch(() => {
40
- resolve([]);
41
- });
42
- }
43
- else {
44
- resolve(texts);
45
- }
48
+ }
49
+ else {
50
+ resolve(texts);
51
+ }
52
+ }));
46
53
  });
47
54
  }
48
55
  _prepareArticleTexts() {
@@ -79,7 +86,7 @@ let ProductAdditionalInfoComponent = class ProductAdditionalInfoComponent {
79
86
  };
80
87
  ProductAdditionalInfoComponent.ctorParameters = () => [
81
88
  { type: DomSanitizer },
82
- { type: ProductModuleService },
89
+ { type: ProductConnectorService },
83
90
  { type: ChangeDetectorRef }
84
91
  ];
85
92
  __decorate([
@@ -96,4 +103,4 @@ ProductAdditionalInfoComponent = __decorate([
96
103
  })
97
104
  ], ProductAdditionalInfoComponent);
98
105
  export { ProductAdditionalInfoComponent };
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1hZGRpdGlvbmFsLWluZm8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvbGlqbml0L3Byb2R1Y3QvIiwic291cmNlcyI6WyJhcHAvY29tcG9uZW50cy9wcm9kdWN0LWFkZGl0aW9uYWwtaW5mby9wcm9kdWN0LWFkZGl0aW9uYWwtaW5mby5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxlQUFlLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0YsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVuRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUU1RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFPakQsSUFBYSw4QkFBOEIsR0FBM0MsTUFBYSw4QkFBOEI7SUF3QnpDLFlBQ1UsVUFBd0IsRUFDeEIsY0FBb0MsRUFDcEMsZUFBa0M7UUFGbEMsZUFBVSxHQUFWLFVBQVUsQ0FBYztRQUN4QixtQkFBYyxHQUFkLGNBQWMsQ0FBc0I7UUFDcEMsb0JBQWUsR0FBZixlQUFlLENBQW1CO1FBVnJDLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFFM0IsY0FBUyxHQUFlLEVBQUUsQ0FBQztJQVVsQyxDQUFDO0lBMUJELElBQVcsT0FBTyxDQUFDLEtBQXdCO1FBQ3pDLElBQUksS0FBSyxFQUFFO1lBQ1QsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7WUFDdEIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQzFCLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDdkMsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJ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QUFFOzZEQVFQO0FBT0Q7SUFEQyxLQUFLLEVBQUU7aUVBQzBCO0FBakJ2Qiw4QkFBOEI7SUFMMUMsU0FBUyxDQUFDO1FBQ1QsUUFBUSxFQUFFLDZCQUE2QjtRQUN2Qyw0UUFBdUQ7O0tBRXhELENBQUM7R0FDVyw4QkFBOEIsQ0FtRjFDO1NBbkZZLDhCQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIFNlY3VyaXR5Q29udGV4dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29UZXh0IH0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvY28tdGV4dCc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVIdG1sIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBBcnRpY2xlRnVsbE9iamVjdCB9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZnVsbC1vYmplY3QnO1xuaW1wb3J0IHsgUHJvZHVjdE1vZHVsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3Byb2R1Y3QtbW9kdWxlLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3VwZXJBcnRpY2xlIH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3VwZXItYXJ0aWNsZSc7XG5pbXBvcnQgeyBCaXRVdGlscyB9IGZyb20gJy4uLy4uL3V0aWxzL2JpdC11dGlscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1wcm9kdWN0LWFkZGl0aW9uYWwtaW5mbycsXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9kdWN0LWFkZGl0aW9uYWwtaW5mby5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Byb2R1Y3QtYWRkaXRpb25hbC1pbmZvLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgUHJvZHVjdEFkZGl0aW9uYWxJbmZvQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGFydGljbGUodmFsdWU6IEFydGljbGVGdWxsT2JqZWN0KSB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLl9hcnRpY2xlID0gdmFsdWU7XG4gICAgICB0aGlzLl9idWlsZEluZm8oKS50aGVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBhcnRpY2xlKCk6IEFydGljbGVGdWxsT2JqZWN0IHtcbiAgICByZXR1cm4gdGhpcy5fYXJ0aWNsZTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaG93TGFiZWw6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwdWJsaWMgdGV4dFBhcnRzOiBTYWZlSHRtbFtdID0gW107XG4gIHB1YmxpYyBpbmZvOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBfYXJ0aWNsZTogQXJ0aWNsZUZ1bGxPYmplY3Q7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIsXG4gICAgcHJpdmF0ZSBfbW9kdWxlU2VydmljZTogUHJvZHVjdE1vZHVsZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmXG4gICkge1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gIH1cblxuICBwcml2YXRlIF9nZXRUZXh0c1N1cGVyQXJ0aWNsZSgpOiBQcm9taXNlPFNhZmVIdG1sW10+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmU6IEZ1bmN0aW9uLCByZWplY3Q6IEZ1bmN0aW9uKSA9PiB7XG4gICAgICBjb25zdCB0ZXh0czogU2FmZUh0bWxbXSA9IFtdO1xuICAgICAgaWYgKHRoaXMuYXJ0aWNsZS5zdXBlckFydGljbGVOcikge1xuICAgICAgICB0aGlzLl9tb2R1bGVTZXJ2aWNlLmdldEFydGljbGUodGhpcy5hcnRpY2xlLnN1cGVyQXJ0aWNsZU5yKS50aGVuKChtYWluQXJ0aWNsZTogU3VwZXJBcnRpY2xlKSA9PiB7XG4gICAgICAgICAgbWFpbkFydGljbGUudGV4dHMuZm9yRWFjaCgodHh0OiBDb1RleHQpID0+IHtcbiAgICAgICAgICAgIGlmIChCaXRVdGlscy5Jc0Z1bGxEZXNjcmlwdGlvbih0eHQucHVibGljYXRpb24pKSB7XG4gICAgICAgICAgICAgIGNvbnN0IHNhZmVUeHQ6IFNhZmVIdG1sID0gdGhpcy5fc2FuaXRpemVyLnNhbml0aXplKFNlY3VyaXR5Q29udGV4dC5IVE1MLCB0eHQudGV4dCk7XG4gICAgICAgICAgICAgIHRleHRzLnB1c2goc2FmZVR4dCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgcmVzb2x2ZSh0ZXh0cyk7XG4gICAgICAgIH0pLmNhdGNoKCgpID0+IHtcbiAgICAgICAgICByZXNvbHZlKFtdKTtcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXNvbHZlKHRleHRzKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgX3ByZXBhcmVBcnRpY2xlVGV4dHMoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgdGV4dHM6IFNhZmVIdG1sW10gPSBhd2FpdCB0aGlzLl9nZXRUZXh0c1N1cGVyQXJ0aWNsZSgpO1xuICAgIGlmICh0ZXh0cy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLnRleHRQYXJ0cy5wdXNoKC4uLnRleHRzKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuYXJ0aWNsZS50ZXh0cykge1xuICAgICAgdGhpcy5hcnRpY2xlLnRleHRzLmZvckVhY2goKHR4dDogQ29UZXh0KSA9PiB7XG4gICAgICAgIGlmIChCaXRVdGlscy5Jc0Z1bGxEZXNjcmlwdGlvbih0eHQucHVibGljYXRpb24pKSB7XG4gICAgICAgICAgY29uc3Qgc2FmZVR4dDogU2FmZUh0bWwgPSB0aGlzLl9zYW5pdGl6ZXIuc2FuaXRpemUoU2VjdXJpdHlDb250ZXh0LkhUTUwsIHR4dC50ZXh0KTtcbiAgICAgICAgICB0aGlzLnRleHRQYXJ0cy5wdXNoKHNhZmVUeHQpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIF9idWlsZEluZm8oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy50ZXh0UGFydHMubGVuZ3RoID0gMDtcbiAgICBhd2FpdCB0aGlzLl9wcmVwYXJlQXJ0aWNsZVRleHRzKCk7XG4gICAgaWYgKHRoaXMudGV4dFBhcnRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgaWYgKHRoaXMuYXJ0aWNsZS5hZGRpdGlvbmFsRGVzY3JpcHRpb24pIHtcbiAgICAgICAgdGhpcy50ZXh0UGFydHMucHVzaCh0aGlzLmFydGljbGUuYWRkaXRpb25hbERlc2NyaXB0aW9uKTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5hcnRpY2xlLmRlc2NyaXB0aW9uKSB7XG4gICAgICAgIHRoaXMudGV4dFBhcnRzLnB1c2godGhpcy5hcnRpY2xlLmRlc2NyaXB0aW9uKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuO1xuICB9XG5cbn1cbiJdfQ==
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1hZGRpdGlvbmFsLWluZm8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvbGlqbml0L3Byb2R1Y3QvIiwic291cmNlcyI6WyJhcHAvY29tcG9uZW50cy9wcm9kdWN0LWFkZGl0aW9uYWwtaW5mby9wcm9kdWN0LWFkZGl0aW9uYWwtaW5mby5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxlQUFlLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0YsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUduRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDakQsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFPaEYsSUFBYSw4QkFBOEIsR0FBM0MsTUFBYSw4QkFBOEI7SUF5QnpDLFlBQ1UsVUFBd0IsRUFDeEIsaUJBQTBDLEVBQzFDLGVBQWtDO1FBRmxDLGVBQVUsR0FBVixVQUFVLENBQWM7UUFDeEIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUF5QjtRQUMxQyxvQkFBZSxHQUFmLGVBQWUsQ0FBbUI7UUFYckMsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUUzQixjQUFTLEdBQWUsRUFBRSxDQUFDO1FBSTFCLG1CQUFjLEdBQThCLElBQUksR0FBRyxFQUFFLENBQUM7SUFPOUQsQ0FBQztJQTNCRCxJQUFXLE9BQU8sQ0FBQyxLQUF3QjtRQUN6QyxJQUFJLEtBQUssRUFBRTtZQUNULElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1lBQ3RCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUMxQixJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3ZDLENBQUMsQ0FBQyxDQUFDO1NB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QUMsQ0FBQztpQkFDekQ7cUJBQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRTtvQkFDbkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztpQkFDL0M7YUFDRjtZQUNELE9BQU87UUFDVCxDQUFDO0tBQUE7Q0FFRixDQUFBOztZQTdEdUIsWUFBWTtZQUNMLHVCQUF1QjtZQUN6QixpQkFBaUI7O0FBekI1QztJQURDLEtBQUssRUFBRTs2REFRUDtBQU9EO0lBREMsS0FBSyxFQUFFO2lFQUMwQjtBQWpCdkIsOEJBQThCO0lBTDFDLFNBQVMsQ0FBQztRQUNULFFBQVEsRUFBRSw2QkFBNkI7UUFDdkMsNFFBQXVEOztLQUV4RCxDQUFDO0dBQ1csOEJBQThCLENBdUYxQztTQXZGWSw4QkFBOEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBTZWN1cml0eUNvbnRleHQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvVGV4dCB9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL2NvLXRleHQnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlSHRtbCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgQXJ0aWNsZUZ1bGxPYmplY3QgfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWZ1bGwtb2JqZWN0JztcbmltcG9ydCB7IFN1cGVyQXJ0aWNsZSB9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N1cGVyLWFydGljbGUnO1xuaW1wb3J0IHsgQml0VXRpbHMgfSBmcm9tICcuLi8uLi91dGlscy9iaXQtdXRpbHMnO1xuaW1wb3J0IHtQcm9kdWN0Q29ubmVjdG9yU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS9wcm9kdWN0LWNvbm5lY3Rvci5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXByb2R1Y3QtYWRkaXRpb25hbC1pbmZvJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb2R1Y3QtYWRkaXRpb25hbC1pbmZvLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcHJvZHVjdC1hZGRpdGlvbmFsLWluZm8uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBQcm9kdWN0QWRkaXRpb25hbEluZm9Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgYXJ0aWNsZSh2YWx1ZTogQXJ0aWNsZUZ1bGxPYmplY3QpIHtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuX2FydGljbGUgPSB2YWx1ZTtcbiAgICAgIHRoaXMuX2J1aWxkSW5mbygpLnRoZW4oKCkgPT4ge1xuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFydGljbGUoKTogQXJ0aWNsZUZ1bGxPYmplY3Qge1xuICAgIHJldHVybiB0aGlzLl9hcnRpY2xlO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNob3dMYWJlbDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHB1YmxpYyB0ZXh0UGFydHM6IFNhZmVIdG1sW10gPSBbXTtcbiAgcHVibGljIGluZm86IHN0cmluZztcblxuICBwcml2YXRlIF9hcnRpY2xlOiBBcnRpY2xlRnVsbE9iamVjdDtcbiAgcHJpdmF0ZSBfc3VwZXJBcnRpY2xlczogTWFwPHN0cmluZywgU3VwZXJBcnRpY2xlPiA9IG5ldyBNYXAoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9zYW5pdGl6ZXI6IERvbVNhbml0aXplcixcbiAgICBwcml2YXRlIF9jb25uZWN0b3JTZXJ2aWNlOiBQcm9kdWN0Q29ubmVjdG9yU2VydmljZSxcbiAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgX2dldFRleHRzU3VwZXJBcnRpY2xlKCk6IFByb21pc2U8U2FmZUh0bWxbXT4ge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZShhc3luYyAocmVzb2x2ZTogRnVuY3Rpb24sIHJlamVjdDogRnVuY3Rpb24pID0+IHtcbiAgICAgIGNvbnN0IHRleHRzOiBTYWZlSHRtbFtdID0gW107XG4gICAgICBpZiAodGhpcy5hcnRpY2xlLnN1cGVyQXJ0aWNsZU5yKSB7XG4gICAgICAgIGxldCBtYWluQXJ0aWNsZTtcbiAgICAgICAgaWYgKHRoaXMuX3N1cGVyQXJ0aWNsZXMuaGFzKHRoaXMuYXJ0aWNsZS5zdXBlckFydGljbGVOcikpIHtcbiAgICAgICAgICBtYWluQXJ0aWNsZSA9IHRoaXMuX3N1cGVyQXJ0aWNsZXMuZ2V0KHRoaXMuYXJ0aWNsZS5zdXBlckFydGljbGVOcik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbWFpbkFydGljbGUgPSBhd2FpdCB0aGlzLl9jb25uZWN0b3JTZXJ2aWNlLmdldFN1cGVyQXJ0aWNsZSh0aGlzLmFydGljbGUuc3VwZXJBcnRpY2xlTnIpO1xuICAgICAgICAgIHRoaXMuX3N1cGVyQXJ0aWNsZXMuc2V0KHRoaXMuYXJ0aWNsZS5zdXBlckFydGljbGVOciwgbWFpbkFydGljbGUpO1xuICAgICAgICB9XG4gICAgICAgIG1haW5BcnRpY2xlLnRleHRzLmZvckVhY2goKHR4dDogQ29UZXh0KSA9PiB7XG4gICAgICAgICAgaWYgKEJpdFV0aWxzLklzRnVsbERlc2NyaXB0aW9uKHR4dC5wdWJsaWNhdGlvbikpIHtcbiAgICAgICAgICAgIGNvbnN0IHNhZmVUeHQ6IFNhZmVIdG1sID0gdGhpcy5fc2FuaXRpemVyLnNhbml0aXplKFNlY3VyaXR5Q29udGV4dC5IVE1MLCB0eHQudGV4dCk7XG4gICAgICAgICAgICB0ZXh0cy5wdXNoKHNhZmVUeHQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHJlc29sdmUodGV4dHMpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzb2x2ZSh0ZXh0cyk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIF9wcmVwYXJlQXJ0aWNsZVRleHRzKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHRleHRzOiBTYWZlSHRtbFtdID0gYXdhaXQgdGhpcy5fZ2V0VGV4dHNTdXBlckFydGljbGUoKTtcbiAgICBpZiAodGV4dHMubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy50ZXh0UGFydHMucHVzaCguLi50ZXh0cyk7XG4gICAgfVxuICAgIGlmICh0aGlzLmFydGljbGUudGV4dHMpIHtcbiAgICAgIHRoaXMuYXJ0aWNsZS50ZXh0cy5mb3JFYWNoKCh0eHQ6IENvVGV4dCkgPT4ge1xuICAgICAgICBpZiAoQml0VXRpbHMuSXNGdWxsRGVzY3JpcHRpb24odHh0LnB1YmxpY2F0aW9uKSkge1xuICAgICAgICAgIGNvbnN0IHNhZmVUeHQ6IFNhZmVIdG1sID0gdGhpcy5fc2FuaXRpemVyLnNhbml0aXplKFNlY3VyaXR5Q29udGV4dC5IVE1MLCB0eHQudGV4dCk7XG4gICAgICAgICAgdGhpcy50ZXh0UGFydHMucHVzaChzYWZlVHh0KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBfYnVpbGRJbmZvKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRoaXMudGV4dFBhcnRzLmxlbmd0aCA9IDA7XG4gICAgYXdhaXQgdGhpcy5fcHJlcGFyZUFydGljbGVUZXh0cygpO1xuICAgIGlmICh0aGlzLnRleHRQYXJ0cy5sZW5ndGggPT09IDApIHtcbiAgICAgIGlmICh0aGlzLmFydGljbGUuYWRkaXRpb25hbERlc2NyaXB0aW9uKSB7XG4gICAgICAgIHRoaXMudGV4dFBhcnRzLnB1c2godGhpcy5hcnRpY2xlLmFkZGl0aW9uYWxEZXNjcmlwdGlvbik7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuYXJ0aWNsZS5kZXNjcmlwdGlvbikge1xuICAgICAgICB0aGlzLnRleHRQYXJ0cy5wdXNoKHRoaXMuYXJ0aWNsZS5kZXNjcmlwdGlvbik7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybjtcbiAgfVxuXG59XG4iXX0=
@@ -52,7 +52,7 @@ let ProductAddtocartComponent = class ProductAddtocartComponent {
52
52
  configuratorStatistics.sessionId = this._settingsService.settings.session ? this._settingsService.settings.session.sessionId : 'unknown';
53
53
  configuratorStatistics.webHost = window.location.host;
54
54
  configuratorStatistics.bundleHost = window.location.host;
55
- return yield this._ioneControllerService.getJsonArticleFlatTree(article.article.goodId, article.article.goodType, article.quantity, true, undefined, configuratorStatistics);
55
+ return yield this._ioneControllerService.getJsonArticleFlatTree(article.article.goodId, article.article.goodType, article.quantity, true, configuratorStatistics);
56
56
  });
57
57
  }
58
58
  };
@@ -98,4 +98,4 @@ ProductAddtocartComponent = __decorate([
98
98
  })
99
99
  ], ProductAddtocartComponent);
100
100
  export { ProductAddtocartComponent };
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1hZGR0b2NhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvbGlqbml0L3Byb2R1Y3QvIiwic291cmNlcyI6WyJhcHAvY29tcG9uZW50cy9wcm9kdWN0LWFkZHRvY2FydC9wcm9kdWN0LWFkZHRvY2FydC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNsRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUcxRSxPQUFPLEVBQUMsaUNBQWlDLEVBQUMsTUFBTSxzRUFBc0UsQ0FBQztBQUN2SCxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQU85RSxJQUFhLHlCQUF5QixHQUF0QyxNQUFhLHlCQUF5QjtJQTBDcEMsWUFDUyxTQUEyQixFQUMxQixzQkFBK0MsRUFDL0MsZ0JBQXFDLEVBQ25DLGdCQUF3QztRQUgzQyxjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMxQiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXlCO1FBQy9DLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBcUI7UUFDbkMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUF3QjtRQTVDcEMsU0FBSSxHQUFvQixRQUFRLENBQUM7UUFTMUMsaUJBQVksR0FBWSxLQUFLLENBQUM7UUFHOUIsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFJN0IsZUFBVSxHQUFZLEtBQUssQ0FBQztRQVk1Qix1QkFBa0Is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QUFwQy9ELHlCQUF5QjtJQUxyQyxTQUFTLENBQUM7UUFDVCxRQUFRLEVBQUUsdUJBQXVCO1FBQ2pDLDZpQ0FBaUQ7O0tBRWxELENBQUM7R0FDVyx5QkFBeUIsQ0EyRXJDO1NBM0VZLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSWNvbkNhY2hlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlJztcbmltcG9ydCB7IEljb25FbnVtIH0gZnJvbSAnLi4vLi4vZW51bS9pY29uLmVudW0nO1xuaW1wb3J0IHsgQXJ0aWNsZVF1YW50aXR5IH0gZnJvbSAnLi4vLi4vbW9kZWwvYXJ0aWNsZS1xdWFudGl0eS5tb2RlbCc7XG5pbXBvcnQgeyBQcm9kdWN0Q29ubmVjdG9yU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2UvcHJvZHVjdC1jb25uZWN0b3Iuc2VydmljZSc7XG5pbXBvcnQgeyBQcm9kdWN0RXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZS9wcm9kdWN0LWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgQXJ0aWNsZUZ1bGxPYmplY3QgfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWZ1bGwtb2JqZWN0JztcbmltcG9ydCB7QXJ0aWNsZUV4dGVuZGVkfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWV4dGVuZGVkLmJvJztcbmltcG9ydCB7Q29uZmlndXJhdG9yU3RhdGlzdGljc0Vudmlyb25tZW50fSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9jb25maWd1cmF0b3Itc3RhdGlzdGljcy1lbnZpcm9ubWVudCc7XG5pbXBvcnQge1Byb2R1Y3RTZXR0aW5nc1NlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvcHJvZHVjdC1zZXR0aW5ncy5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXByb2R1Y3QtYWRkdG9jYXJ0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb2R1Y3QtYWRkdG9jYXJ0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcHJvZHVjdC1hZGR0b2NhcnQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBQcm9kdWN0QWRkdG9jYXJ0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIHB1YmxpYyByZWFkb25seSBpY29uOiB0eXBlb2YgSWNvbkVudW0gPSBJY29uRW51bTtcblxuICBAVmlld0NoaWxkKCdhZGR0b2NhcnRidXR0b24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSlcbiAgcHVibGljIGFkZFRvQ2FydEJ1dHRvbjogRWxlbWVudFJlZjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgYXJ0aWNsZTogQXJ0aWNsZUZ1bGxPYmplY3Q7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGNvbmZpZ3VyYWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjb25maWd1cmluZzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuZnVsbC1zY3JlZW4nKVxuICBASW5wdXQoKVxuICBwdWJsaWMgZnVsbHNjcmVlbjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgcXVhbnRpdHkodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX3F1YW50aXR5ID0gTWF0aC5tYXgoMSwgdmFsdWUpO1xuICB9XG5cbiAgcHVibGljIGdldCBxdWFudGl0eSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9xdWFudGl0eTtcbiAgfVxuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgc3RhcnRDb25maWd1cmF0aW9uOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBhZGRUb0NhcnRDbGljazogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGFkZFRvUXVvdGVDbGljazogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICBwdWJsaWMgc2hvd1F1b3RlQnV0dG9uOiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBfcXVhbnRpdHkgPSAxO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBpY29uQ2FjaGU6IEljb25DYWNoZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBfaW9uZUNvbnRyb2xsZXJTZXJ2aWNlOiBQcm9kdWN0Q29ubmVjdG9yU2VydmljZSxcbiAgICBwcml2YXRlIF9hcHBFdmVudFNlcnZpY2U6IFByb2R1Y3RFdmVudFNlcnZpY2UsXG4gICAgICBwcml2YXRlIF9zZXR0aW5nc1NlcnZpY2U6IFByb2R1Y3RTZXR0aW5nc1NlcnZpY2VcbiAgICApIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5hZGRUb0NhcnRCdXR0b24gPSB1bmRlZmluZWQ7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgaGFuZGxlQWRkVG9DYXJ0Q2xpY2socXVhbnRpdHk6IG51bWJlcik6IFByb21pc2U8dm9pZD4ge1xuICAgIHRoaXMuX2FwcEV2ZW50U2VydmljZS5vbkFkZFRvQ2FydC5uZXh0KGF3YWl0IHRoaXMuX2dldEpTT05Gcm9tQXJ0aWNsZU9iamVjdCh7YXJ0aWNsZTogdGhpcy5hcnRpY2xlLCBxdWFudGl0eTogcXVhbnRpdHl9KSk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgaGFuZGxlQWRkVG9RdW90ZUNsaWNrKHF1YW50aXR5OiBudW1iZXIpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0aGlzLl9hcHBFdmVudFNlcnZpY2Uub25BZGRUb1F1b3RlLm5leHQoYXdhaXQgdGhpcy5fZ2V0SlNPTkZyb21BcnRpY2xlT2JqZWN0KHthcnRpY2xlOiB0aGlzLmFydGljbGUsIHF1YW50aXR5OiBxdWFudGl0eX0pKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgX2dldEpTT05Gcm9tQXJ0aWNsZU9iamVjdChhcnRpY2xlOiBBcnRpY2xlUXVhbnRpdHkpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGNvbnN0IGNvbmZpZ3VyYXRvclN0YXRpc3RpY3MgPSBuZXcgQ29uZmlndXJhdG9yU3RhdGlzdGljc0Vudmlyb25tZW50KCk7XG4gICAgY29uZmlndXJhdG9yU3RhdGlzdGljcy51c2VyVHlwZSA9ICdpT25lUHJvZHVjdFBhZ2UnO1xuICAgIGNvbmZpZ3VyYXRvclN0YXRpc3RpY3MudHJhbnNhY3Rpb25UeXBlID0gJ1NhbGVzJztcbiAgICBjb25maWd1cmF0b3JTdGF0aXN0aWNzLmFjdGlvbkRvbWFpbiA9ICdidW5kbGUnO1xuICAgIGNvbmZpZ3VyYXRvclN0YXRpc3RpY3Muc2Vzc2lvbklkID0gdGhpcy5fc2V0dGluZ3NTZXJ2aWNlLnNldHRpbmdzLnNlc3Npb24gPyB0aGlzLl9zZXR0aW5nc1NlcnZpY2Uuc2V0dGluZ3Muc2Vzc2lvbi5zZXNzaW9uSWQgOiAndW5rbm93bic7XG4gICAgY29uZmlndXJhdG9yU3RhdGlzdGljcy53ZWJIb3N0ID0gd2luZG93LmxvY2F0aW9uLmhvc3Q7XG4gICAgY29uZmlndXJhdG9yU3RhdGlzdGljcy5idW5kbGVIb3N0ID0gd2luZG93LmxvY2F0aW9uLmhvc3Q7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuX2lvbmVDb250cm9sbGVyU2VydmljZS5nZXRKc29uQXJ0aWNsZUZsYXRUcmVlKFxuICAgICAgICBhcnRpY2xlLmFydGljbGUuZ29vZElkLCBhcnRpY2xlLmFydGljbGUuZ29vZFR5cGUsIGFydGljbGUucXVhbnRpdHksIHRydWUsIHVuZGVmaW5lZCwgY29uZmlndXJhdG9yU3RhdGlzdGljcyk7XG4gIH1cbn1cbiJdfQ==
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1hZGR0b2NhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvbGlqbml0L3Byb2R1Y3QvIiwic291cmNlcyI6WyJhcHAvY29tcG9uZW50cy9wcm9kdWN0LWFkZHRvY2FydC9wcm9kdWN0LWFkZHRvY2FydC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNsRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUcxRSxPQUFPLEVBQUMsaUNBQWlDLEVBQUMsTUFBTSxzRUFBc0UsQ0FBQztBQUN2SCxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQU85RSxJQUFhLHlCQUF5QixHQUF0QyxNQUFhLHlCQUF5QjtJQTBDcEMsWUFDUyxTQUEyQixFQUMxQixzQkFBK0MsRUFDL0MsZ0JBQXFDLEVBQ25DLGdCQUF3QztRQUgzQyxjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMxQiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXlCO1FBQy9DLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBcUI7UUFDbkMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUF3QjtRQTVDcEMsU0FBSSxHQUFvQixRQUFRLENBQUM7UUFTMUMsaUJBQVksR0FBWSxLQUFLLENBQUM7UUFHOUIsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFJN0IsZUFBVSxHQUFZLEtBQUssQ0FBQztRQVk1Qix1QkFBa0Is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QXlCO0lBTHJDLFNBQVMsQ0FBQztRQUNULFFBQVEsRUFBRSx1QkFBdUI7UUFDakMsNmlDQUFpRDs7S0FFbEQsQ0FBQztHQUNXLHlCQUF5QixDQTJFckM7U0EzRVkseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJY29uQ2FjaGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2UnO1xuaW1wb3J0IHsgSWNvbkVudW0gfSBmcm9tICcuLi8uLi9lbnVtL2ljb24uZW51bSc7XG5pbXBvcnQgeyBBcnRpY2xlUXVhbnRpdHkgfSBmcm9tICcuLi8uLi9tb2RlbC9hcnRpY2xlLXF1YW50aXR5Lm1vZGVsJztcbmltcG9ydCB7IFByb2R1Y3RDb25uZWN0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZS9wcm9kdWN0LWNvbm5lY3Rvci5zZXJ2aWNlJztcbmltcG9ydCB7IFByb2R1Y3RFdmVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3Byb2R1Y3QtZXZlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBBcnRpY2xlRnVsbE9iamVjdCB9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZnVsbC1vYmplY3QnO1xuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWR9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZXh0ZW5kZWQuYm8nO1xuaW1wb3J0IHtDb25maWd1cmF0b3JTdGF0aXN0aWNzRW52aXJvbm1lbnR9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2NvbmZpZ3VyYXRvci1zdGF0aXN0aWNzLWVudmlyb25tZW50JztcbmltcG9ydCB7UHJvZHVjdFNldHRpbmdzU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS9wcm9kdWN0LXNldHRpbmdzLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtcHJvZHVjdC1hZGR0b2NhcnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vcHJvZHVjdC1hZGR0b2NhcnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wcm9kdWN0LWFkZHRvY2FydC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFByb2R1Y3RBZGR0b2NhcnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgcHVibGljIHJlYWRvbmx5IGljb246IHR5cGVvZiBJY29uRW51bSA9IEljb25FbnVtO1xuXG4gIEBWaWV3Q2hpbGQoJ2FkZHRvY2FydGJ1dHRvbicsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICBwdWJsaWMgYWRkVG9DYXJ0QnV0dG9uOiBFbGVtZW50UmVmO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhcnRpY2xlOiBBcnRpY2xlRnVsbE9iamVjdDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgY29uZmlndXJhYmxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGNvbmZpZ3VyaW5nOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mdWxsLXNjcmVlbicpXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmdWxsc2NyZWVuOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBxdWFudGl0eSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5fcXVhbnRpdHkgPSBNYXRoLm1heCgxLCB2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHF1YW50aXR5KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3F1YW50aXR5O1xuICB9XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBzdGFydENvbmZpZ3VyYXRpb246IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGFkZFRvQ2FydENsaWNrOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgYWRkVG9RdW90ZUNsaWNrOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gIHB1YmxpYyBzaG93UXVvdGVCdXR0b246IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwcml2YXRlIF9xdWFudGl0eSA9IDE7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGljb25DYWNoZTogSWNvbkNhY2hlU2VydmljZSxcbiAgICBwcml2YXRlIF9pb25lQ29udHJvbGxlclNlcnZpY2U6IFByb2R1Y3RDb25uZWN0b3JTZXJ2aWNlLFxuICAgIHByaXZhdGUgX2FwcEV2ZW50U2VydmljZTogUHJvZHVjdEV2ZW50U2VydmljZSxcbiAgICAgIHByaXZhdGUgX3NldHRpbmdzU2VydmljZTogUHJvZHVjdFNldHRpbmdzU2VydmljZVxuICAgICkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmFkZFRvQ2FydEJ1dHRvbiA9IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBoYW5kbGVBZGRUb0NhcnRDbGljayhxdWFudGl0eTogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5fYXBwRXZlbnRTZXJ2aWNlLm9uQWRkVG9DYXJ0Lm5leHQoYXdhaXQgdGhpcy5fZ2V0SlNPTkZyb21BcnRpY2xlT2JqZWN0KHthcnRpY2xlOiB0aGlzLmFydGljbGUsIHF1YW50aXR5OiBxdWFudGl0eX0pKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBoYW5kbGVBZGRUb1F1b3RlQ2xpY2socXVhbnRpdHk6IG51bWJlcik6IFByb21pc2U8dm9pZD4ge1xuICAgIHRoaXMuX2FwcEV2ZW50U2VydmljZS5vbkFkZFRvUXVvdGUubmV4dChhd2FpdCB0aGlzLl9nZXRKU09ORnJvbUFydGljbGVPYmplY3Qoe2FydGljbGU6IHRoaXMuYXJ0aWNsZSwgcXVhbnRpdHk6IHF1YW50aXR5fSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBfZ2V0SlNPTkZyb21BcnRpY2xlT2JqZWN0KGFydGljbGU6IEFydGljbGVRdWFudGl0eSk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgY29uc3QgY29uZmlndXJhdG9yU3RhdGlzdGljcyA9IG5ldyBDb25maWd1cmF0b3JTdGF0aXN0aWNzRW52aXJvbm1lbnQoKTtcbiAgICBjb25maWd1cmF0b3JTdGF0aXN0aWNzLnVzZXJUeXBlID0gJ2lPbmVQcm9kdWN0UGFnZSc7XG4gICAgY29uZmlndXJhdG9yU3RhdGlzdGljcy50cmFuc2FjdGlvblR5cGUgPSAnU2FsZXMnO1xuICAgIGNvbmZpZ3VyYXRvclN0YXRpc3RpY3MuYWN0aW9uRG9tYWluID0gJ2J1bmRsZSc7XG4gICAgY29uZmlndXJhdG9yU3RhdGlzdGljcy5zZXNzaW9uSWQgPSB0aGlzLl9zZXR0aW5nc1NlcnZpY2Uuc2V0dGluZ3Muc2Vzc2lvbiA/IHRoaXMuX3NldHRpbmdzU2VydmljZS5zZXR0aW5ncy5zZXNzaW9uLnNlc3Npb25JZCA6ICd1bmtub3duJztcbiAgICBjb25maWd1cmF0b3JTdGF0aXN0aWNzLndlYkhvc3QgPSB3aW5kb3cubG9jYXRpb24uaG9zdDtcbiAgICBjb25maWd1cmF0b3JTdGF0aXN0aWNzLmJ1bmRsZUhvc3QgPSB3aW5kb3cubG9jYXRpb24uaG9zdDtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5faW9uZUNvbnRyb2xsZXJTZXJ2aWNlLmdldEpzb25BcnRpY2xlRmxhdFRyZWUoXG4gICAgICAgIGFydGljbGUuYXJ0aWNsZS5nb29kSWQsIGFydGljbGUuYXJ0aWNsZS5nb29kVHlwZSwgYXJ0aWNsZS5xdWFudGl0eSwgdHJ1ZSwgY29uZmlndXJhdG9yU3RhdGlzdGljcyk7XG4gIH1cbn1cbiJdfQ==
@@ -35,9 +35,8 @@ ProductDeliveryComponent = __decorate([
35
35
  Component({
36
36
  selector: 'app-product-delivery',
37
37
  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",
38
- providers: [LocalizePipe],
39
38
  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}}"]
40
39
  })
41
40
  ], ProductDeliveryComponent);
42
41
  export { ProductDeliveryComponent };
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1kZWxpdmVyeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29saWpuaXQvcHJvZHVjdC8iLCJzb3VyY2VzIjpbImFwcC9jb21wb25lbnRzL3Byb2R1Y3QtZGVsaXZlcnkvcHJvZHVjdC1kZWxpdmVyeS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRXBFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFReEQsSUFBYSx3QkFBd0IsR0FBckMsTUFBYSx3QkFBd0I7SUFpQm5DLFlBQ1UsYUFBMkIsRUFDM0IsS0FBOEIsRUFDOUIsVUFBNEI7UUFGNUIsa0JBQWEsR0FBYixhQUFhLENBQWM7UUFDM0IsVUFBSyxHQUFMLEtBQUssQ0FBeUI7UUFDOUIsZUFBVSxHQUFWLFVBQVUsQ0FBa0I7UUFsQnRCLFNBQUksR0FBb0IsUUFBUSxDQUFDO1FBb0IvQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQWxCRCxJQUFXLGdCQUFnQixDQUFDLEtBQXVCO1FBQ2pELElBQUksS0FBSyxFQUFFO1lBQ1QsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQztZQUNyRCxJQUFJLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLEVBQUU7Z0JBQzlFLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO2FBQ2hGO1NBQ0Y7SUFDSCxDQUFDO0lBYUQsUUFBUTtJQUNSLENBQUM7Q0FDRixDQUFBOztZQVQwQixZQUFZO1lBQ3BCLHVCQUF1QjtZQUNsQixnQkFBZ0I7O0FBZnRDO0lBREMsS0FBSyxFQUFFO2dFQVFQO0FBWlUsd0JBQXdCO0lBTnBDLFNBQVMsQ0FBQztRQUNULFFBQVEsRUFBRSxzQkFBc0I7UUFDaEMsd2RBQWdEO1FBRWhELFNBQVMsRUFBRSxDQUFFLFlBQVksQ0FBRTs7S0FDNUIsQ0FBQztHQUNXLHdCQUF3QixDQTJCcEM7U0EzQlksd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQcm9kdWN0Q29ubmVjdG9yU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2UvcHJvZHVjdC1jb25uZWN0b3Iuc2VydmljZSc7XG5pbXBvcnQgeyBJY29uQ2FjaGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2FmZUh0bWwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IEljb25FbnVtIH0gZnJvbSAnLi4vLi4vZW51bS9pY29uLmVudW0nO1xuaW1wb3J0IHsgU3RvY2tBbmREZWxpdmVyeSB9IGZyb20gJy4uLy4uL21vZGVsL3N0b2NrLWFuZC1kZWxpdmVyeSc7XG5pbXBvcnQgeyBMb2NhbGl6ZVBpcGUgfSBmcm9tICcuLi8uLi9waXBlL2xvY2FsaXplLnBpcGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtcHJvZHVjdC1kZWxpdmVyeScsXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9kdWN0LWRlbGl2ZXJ5LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcHJvZHVjdC1kZWxpdmVyeS5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFsgTG9jYWxpemVQaXBlIF1cbn0pXG5leHBvcnQgY2xhc3MgUHJvZHVjdERlbGl2ZXJ5Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBwdWJsaWMgcmVhZG9ubHkgaWNvbjogdHlwZW9mIEljb25FbnVtID0gSWNvbkVudW07XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBzdG9ja0FuZERlbGl2ZXJ5KHZhbHVlOiBTdG9ja0FuZERlbGl2ZXJ5KSB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLmRlbGl2ZXJ5RGVzY3JpcHRpb24gPSB2YWx1ZS5kZWxpdmVyeURlc2NyaXB0aW9uO1xuICAgICAgaWYgKHRoaXMuZGVsaXZlcnlEZXNjcmlwdGlvbi5sZW5ndGggPiAwICYmIHRoaXMuZGVsaXZlcnlEZXNjcmlwdGlvblswXSA9PT0gJyAnKSB7XG4gICAgICAgIHRoaXMuZGVsaXZlcnlEZXNjcmlwdGlvbiA9IHRoaXMuX2xvY2FsaXplUGlwZS50cmFuc2Zvcm0oJ0FTS19GT1JfSU5GT1JNQVRJT04nKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZGVsaXZlcnlEZXNjcmlwdGlvbjogc3RyaW5nO1xuICBwdWJsaWMgaWNvbkRhdGE6IFNhZmVIdG1sO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2xvY2FsaXplUGlwZTogTG9jYWxpemVQaXBlLFxuICAgIHByaXZhdGUgX2lPbmU6IFByb2R1Y3RDb25uZWN0b3JTZXJ2aWNlLFxuICAgIHByaXZhdGUgX2ljb25DYWNoZTogSWNvbkNhY2hlU2VydmljZVxuICApIHtcbiAgICB0aGlzLmljb25EYXRhID0gdGhpcy5faWNvbkNhY2hlLmdldEljb24odGhpcy5pY29uLlRydWNrKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICB9XG59XG4iXX0=
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1kZWxpdmVyeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29saWpuaXQvcHJvZHVjdC8iLCJzb3VyY2VzIjpbImFwcC9jb21wb25lbnRzL3Byb2R1Y3QtZGVsaXZlcnkvcHJvZHVjdC1kZWxpdmVyeS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRXBFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFPeEQsSUFBYSx3QkFBd0IsR0FBckMsTUFBYSx3QkFBd0I7SUFpQm5DLFlBQ1UsYUFBMkIsRUFDM0IsS0FBOEIsRUFDOUIsVUFBNEI7UUFGNUIsa0JBQWEsR0FBYixhQUFhLENBQWM7UUFDM0IsVUFBSyxHQUFMLEtBQUssQ0FBeUI7UUFDOUIsZUFBVSxHQUFWLFVBQVUsQ0FBa0I7UUFsQnRCLFNBQUksR0FBb0IsUUFBUSxDQUFDO1FBb0IvQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQWxCRCxJQUFXLGdCQUFnQixDQUFDLEtBQXVCO1FBQ2pELElBQUksS0FBSyxFQUFFO1lBQ1QsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQztZQUNyRCxJQUFJLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLEVBQUU7Z0JBQzlFLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO2FBQ2hGO1NBQ0Y7SUFDSCxDQUFDO0lBYUQsUUFBUTtJQUNSLENBQUM7Q0FDRixDQUFBOztZQVQwQixZQUFZO1lBQ3BCLHVCQUF1QjtZQUNsQixnQkFBZ0I7O0FBZnRDO0lBREMsS0FBSyxFQUFFO2dFQVFQO0FBWlUsd0JBQXdCO0lBTHBDLFNBQVMsQ0FBQztRQUNULFFBQVEsRUFBRSxzQkFBc0I7UUFDaEMsd2RBQWdEOztLQUVqRCxDQUFDO0dBQ1csd0JBQXdCLENBMkJwQztTQTNCWSx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFByb2R1Y3RDb25uZWN0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZS9wcm9kdWN0LWNvbm5lY3Rvci5zZXJ2aWNlJztcbmltcG9ydCB7IEljb25DYWNoZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZSc7XG5pbXBvcnQgeyBTYWZlSHRtbCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgSWNvbkVudW0gfSBmcm9tICcuLi8uLi9lbnVtL2ljb24uZW51bSc7XG5pbXBvcnQgeyBTdG9ja0FuZERlbGl2ZXJ5IH0gZnJvbSAnLi4vLi4vbW9kZWwvc3RvY2stYW5kLWRlbGl2ZXJ5JztcbmltcG9ydCB7IExvY2FsaXplUGlwZSB9IGZyb20gJy4uLy4uL3BpcGUvbG9jYWxpemUucGlwZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1wcm9kdWN0LWRlbGl2ZXJ5JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb2R1Y3QtZGVsaXZlcnkuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wcm9kdWN0LWRlbGl2ZXJ5LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgUHJvZHVjdERlbGl2ZXJ5Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBwdWJsaWMgcmVhZG9ubHkgaWNvbjogdHlwZW9mIEljb25FbnVtID0gSWNvbkVudW07XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBzdG9ja0FuZERlbGl2ZXJ5KHZhbHVlOiBTdG9ja0FuZERlbGl2ZXJ5KSB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLmRlbGl2ZXJ5RGVzY3JpcHRpb24gPSB2YWx1ZS5kZWxpdmVyeURlc2NyaXB0aW9uO1xuICAgICAgaWYgKHRoaXMuZGVsaXZlcnlEZXNjcmlwdGlvbi5sZW5ndGggPiAwICYmIHRoaXMuZGVsaXZlcnlEZXNjcmlwdGlvblswXSA9PT0gJyAnKSB7XG4gICAgICAgIHRoaXMuZGVsaXZlcnlEZXNjcmlwdGlvbiA9IHRoaXMuX2xvY2FsaXplUGlwZS50cmFuc2Zvcm0oJ0FTS19GT1JfSU5GT1JNQVRJT04nKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZGVsaXZlcnlEZXNjcmlwdGlvbjogc3RyaW5nO1xuICBwdWJsaWMgaWNvbkRhdGE6IFNhZmVIdG1sO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2xvY2FsaXplUGlwZTogTG9jYWxpemVQaXBlLFxuICAgIHByaXZhdGUgX2lPbmU6IFByb2R1Y3RDb25uZWN0b3JTZXJ2aWNlLFxuICAgIHByaXZhdGUgX2ljb25DYWNoZTogSWNvbkNhY2hlU2VydmljZVxuICApIHtcbiAgICB0aGlzLmljb25EYXRhID0gdGhpcy5faWNvbkNhY2hlLmdldEljb24odGhpcy5pY29uLlRydWNrKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICB9XG59XG4iXX0=
@@ -0,0 +1,123 @@
1
+ import { __awaiter, __decorate } from "tslib";
2
+ import { Component, EventEmitter, HostBinding, Input, Output, ViewEncapsulation } from '@angular/core';
3
+ import { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';
4
+ import { ProductConnectorService } from '../../service/product-connector.service';
5
+ import { ProductEventService } from '../../service/product-event.service';
6
+ import { ProductSettingsService } from '../../service/product-settings.service';
7
+ import { ProductConnectorAdapterService } from '../../service/product-connector-adapter.service';
8
+ let ProductExternalSourceComponent = class ProductExternalSourceComponent {
9
+ constructor(_sanitizer, _productConnectorService, _appEventService) {
10
+ this._sanitizer = _sanitizer;
11
+ this._productConnectorService = _productConnectorService;
12
+ this._appEventService = _appEventService;
13
+ this.addToCart = new EventEmitter();
14
+ this.addToQuote = new EventEmitter();
15
+ this.alternativeClick = new EventEmitter();
16
+ this.showProduct = false;
17
+ this.loaded = false;
18
+ this.externalSettings = {};
19
+ this._subs = [];
20
+ }
21
+ set externalSource(value) {
22
+ this._externalSource = value;
23
+ this.loaded = false;
24
+ this._prepareExternalSource();
25
+ }
26
+ get externalSource() {
27
+ return this._externalSource;
28
+ }
29
+ showClass() {
30
+ return true;
31
+ }
32
+ ngOnInit() {
33
+ this._subs.push(this._appEventService.onAddToCart.subscribe(json => this.addToCart.next(json)), this._appEventService.onAddToQuote.subscribe(json => this.addToQuote.next(json)), this._appEventService.onAlternativeClick.subscribe(article => this.alternativeClick.next(article)));
34
+ }
35
+ ngOnDestroy() {
36
+ this._subs.forEach(s => s.unsubscribe());
37
+ }
38
+ _prepareExternalSource() {
39
+ return __awaiter(this, void 0, void 0, function* () {
40
+ if (!this._externalSource) {
41
+ return;
42
+ }
43
+ this.externalUrl = undefined;
44
+ this.externalSettings = {};
45
+ if (this.externalSource.type === 'CATF') {
46
+ // get bundle settings from external source
47
+ const bundleSettings = yield this._productConnectorService.getProductBundleSettings(this.externalSource.url, parseInt(this.externalSource.schema, 0));
48
+ this.externalSettings = JSON.parse(bundleSettings);
49
+ if (this.options) {
50
+ this.externalSettings.options = this.options;
51
+ }
52
+ // this.externalSettings.assetPath = "https://cdn1.colijn-it.nl/content43";
53
+ // this.externalSettings.threeDAssetPath = "https://cdn1.colijn-it.nl/content43";
54
+ if (this.externalSource.username && this.externalSource.password) {
55
+ this.externalSettings.useLoginEncryption = true;
56
+ this.externalSettings.username = this.externalSource.username;
57
+ this.externalSettings.password = this.externalSource.password;
58
+ }
59
+ // finally show the catalog
60
+ this.showProduct = true;
61
+ }
62
+ else {
63
+ this.externalUrl = this.externalSource.url;
64
+ this.safeUrl = this._sanitizer.bypassSecurityTrustResourceUrl(this.externalUrl);
65
+ this.showProduct = false;
66
+ }
67
+ this.loaded = true;
68
+ });
69
+ }
70
+ };
71
+ ProductExternalSourceComponent.ctorParameters = () => [
72
+ { type: DomSanitizer },
73
+ { type: ProductConnectorService },
74
+ { type: ProductEventService }
75
+ ];
76
+ __decorate([
77
+ Input()
78
+ ], ProductExternalSourceComponent.prototype, "sku", void 0);
79
+ __decorate([
80
+ Input()
81
+ ], ProductExternalSourceComponent.prototype, "externalSource", null);
82
+ __decorate([
83
+ Input()
84
+ ], ProductExternalSourceComponent.prototype, "options", void 0);
85
+ __decorate([
86
+ Output()
87
+ ], ProductExternalSourceComponent.prototype, "addToCart", void 0);
88
+ __decorate([
89
+ Output()
90
+ ], ProductExternalSourceComponent.prototype, "addToQuote", void 0);
91
+ __decorate([
92
+ Output()
93
+ ], ProductExternalSourceComponent.prototype, "alternativeClick", void 0);
94
+ __decorate([
95
+ HostBinding('class.co-product-external-source')
96
+ ], ProductExternalSourceComponent.prototype, "showClass", null);
97
+ ProductExternalSourceComponent = __decorate([
98
+ Component({
99
+ selector: 'co-product-external-source',
100
+ template: `
101
+ <ng-container *ngIf="loaded">
102
+ <ng-container *ngIf="showProduct">
103
+ <app-product-page
104
+ [sku]="sku"
105
+ [settings]="externalSettings"
106
+ ></app-product-page>
107
+ </ng-container>
108
+ <ng-container *ngIf="!showProduct">
109
+ <iframe width="100%" height="100%" [src]="safeUrl" frameborder="0" allowfullscreen></iframe>
110
+ </ng-container>
111
+ </ng-container>
112
+ `,
113
+ providers: [
114
+ ProductEventService,
115
+ ProductSettingsService,
116
+ ProductConnectorAdapterService,
117
+ ProductConnectorService
118
+ ],
119
+ encapsulation: ViewEncapsulation.None
120
+ })
121
+ ], ProductExternalSourceComponent);
122
+ export { ProductExternalSourceComponent };
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1leHRlcm5hbC1zb3VyY2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvbGlqbml0L3Byb2R1Y3QvIiwic291cmNlcyI6WyJhcHAvY29tcG9uZW50cy9wcm9kdWN0LWV4dGVybmFsLXNvdXJjZS9wcm9kdWN0LWV4dGVybmFsLXNvdXJjZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4SCxPQUFPLEVBQUMsWUFBWSxFQUFFLGVBQWUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRXhFLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBRWhGLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBRXhFLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQzlFLE9BQU8sRUFBQyw4QkFBOEIsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBeUIvRixJQUFhLDhCQUE4QixHQUEzQyxNQUFhLDhCQUE4QjtJQTBDdkMsWUFDWSxVQUF3QixFQUN4Qix3QkFBaUQsRUFDakQsZ0JBQXFDO1FBRnJDLGVBQVUsR0FBVixVQUFVLENBQWM7UUFDeEIsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUF5QjtRQUNqRCxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXFCO1FBekIxQyxjQUFTLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7UUFHN0QsZUFBVSxHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBRzlELHFCQUFnQixHQUFvQyxJQUFJLFlBQVksRUFBcUIsQ0FBQztRQU8xRixnQkFBVyxHQUFZLEtBQUssQ0FBQztRQUU3QixXQUFNLEdBQVksS0FBSyxDQUFDO1FBRXhCLHFCQUFnQixHQUFRLEVBQUUs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QyxDQUFDO2dCQUNoRixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQzthQUM1QjtZQUNELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLENBQUM7S0FBQTtDQUNKLENBQUE7O1lBL0MyQixZQUFZO1lBQ0UsdUJBQXVCO1lBQy9CLG1CQUFtQjs7QUExQ2pEO0lBREMsS0FBSyxFQUFFOzJEQUNXO0FBR25CO0lBREMsS0FBSyxFQUFFO29FQUtQO0FBT0Q7SUFEQyxLQUFLLEVBQUU7K0RBQ1c7QUFHbkI7SUFEQyxNQUFNLEVBQUU7aUVBQzJEO0FBR3BFO0lBREMsTUFBTSxFQUFFO2tFQUM0RDtBQUdyRTtJQURDLE1BQU0sRUFBRTt3RUFDd0Y7QUFHakc7SUFEQyxXQUFXLENBQUMsa0NBQWtDLENBQUM7K0RBRy9DO0FBL0JRLDhCQUE4QjtJQXZCMUMsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLDRCQUE0QjtRQUN0QyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7OztLQVlUO1FBQ0QsU0FBUyxFQUFFO1lBQ1AsbUJBQW1CO1lBQ25CLHNCQUFzQjtZQUN0Qiw4QkFBOEI7WUFDOUIsdUJBQXVCO1NBQzFCO1FBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7S0FDeEMsQ0FBQztHQUNXLDhCQUE4QixDQTBGMUM7U0ExRlksOEJBQThCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7RG9tU2FuaXRpemVyLCBTYWZlUmVzb3VyY2VVcmx9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5pbXBvcnQge0V4dGVybmFsU291cmNlfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9leHRlcm5hbC1zb3VyY2UuYm8nO1xyXG5pbXBvcnQge1Byb2R1Y3RDb25uZWN0b3JTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3Byb2R1Y3QtY29ubmVjdG9yLnNlcnZpY2UnO1xyXG5pbXBvcnQge0FydGljbGVMaXN0T2JqZWN0fSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWxpc3Qtb2JqZWN0JztcclxuaW1wb3J0IHtQcm9kdWN0RXZlbnRTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3Byb2R1Y3QtZXZlbnQuc2VydmljZSc7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtQcm9kdWN0U2V0dGluZ3NTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3Byb2R1Y3Qtc2V0dGluZ3Muc2VydmljZSc7XHJcbmltcG9ydCB7UHJvZHVjdENvbm5lY3RvckFkYXB0ZXJTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3Byb2R1Y3QtY29ubmVjdG9yLWFkYXB0ZXIuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY28tcHJvZHVjdC1leHRlcm5hbC1zb3VyY2UnLFxyXG4gICAgdGVtcGxhdGU6IGBcclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibG9hZGVkXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzaG93UHJvZHVjdFwiPlxyXG4gICAgICAgICAgICAgICAgPGFwcC1wcm9kdWN0LXBhZ2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3NrdV09XCJza3VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbc2V0dGluZ3NdPVwiZXh0ZXJuYWxTZXR0aW5nc1wiXHJcbiAgICAgICAgICAgICAgICA+PC9hcHAtcHJvZHVjdC1wYWdlPlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFzaG93UHJvZHVjdFwiPlxyXG4gICAgICAgICAgICAgICAgPGlmcmFtZSB3aWR0aD1cIjEwMCVcIiBoZWlnaHQ9XCIxMDAlXCIgW3NyY109XCJzYWZlVXJsXCIgZnJhbWVib3JkZXI9XCIwXCIgYWxsb3dmdWxsc2NyZWVuPjwvaWZyYW1lPlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIGAsXHJcbiAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICBQcm9kdWN0RXZlbnRTZXJ2aWNlLFxyXG4gICAgICAgIFByb2R1Y3RTZXR0aW5nc1NlcnZpY2UsXHJcbiAgICAgICAgUHJvZHVjdENvbm5lY3RvckFkYXB0ZXJTZXJ2aWNlLFxyXG4gICAgICAgIFByb2R1Y3RDb25uZWN0b3JTZXJ2aWNlXHJcbiAgICBdLFxyXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUHJvZHVjdEV4dGVybmFsU291cmNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgc2t1OiBzdHJpbmc7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBzZXQgZXh0ZXJuYWxTb3VyY2UodmFsdWU6IEV4dGVybmFsU291cmNlKSB7XHJcbiAgICAgICAgdGhpcy5fZXh0ZXJuYWxTb3VyY2UgPSB2YWx1ZTtcclxuICAgICAgICB0aGlzLmxvYWRlZCA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuX3ByZXBhcmVFeHRlcm5hbFNvdXJjZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgZXh0ZXJuYWxTb3VyY2UoKTogRXh0ZXJuYWxTb3VyY2Uge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9leHRlcm5hbFNvdXJjZTtcclxuICAgIH1cclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIG9wdGlvbnM6IHt9O1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIGFkZFRvQ2FydDogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyBhZGRUb1F1b3RlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIGFsdGVybmF0aXZlQ2xpY2s6IEV2ZW50RW1pdHRlcjxBcnRpY2xlTGlzdE9iamVjdD4gPSBuZXcgRXZlbnRFbWl0dGVyPEFydGljbGVMaXN0T2JqZWN0PigpO1xyXG5cclxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuY28tcHJvZHVjdC1leHRlcm5hbC1zb3VyY2UnKVxyXG4gICAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc2hvd1Byb2R1Y3Q6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHB1YmxpYyBzYWZlVXJsOiBTYWZlUmVzb3VyY2VVcmw7XHJcbiAgICBwdWJsaWMgbG9hZGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBwdWJsaWMgZXh0ZXJuYWxVcmw6IHN0cmluZztcclxuICAgIHB1YmxpYyBleHRlcm5hbFNldHRpbmdzOiBhbnkgPSB7fTtcclxuXHJcbiAgICBwcml2YXRlIF9leHRlcm5hbFNvdXJjZTogRXh0ZXJuYWxTb3VyY2U7XHJcbiAgICBwcml2YXRlIF9zdWJzOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgX3Nhbml0aXplcjogRG9tU2FuaXRpemVyLFxyXG4gICAgICAgIHByaXZhdGUgX3Byb2R1Y3RDb25uZWN0b3JTZXJ2aWNlOiBQcm9kdWN0Q29ubmVjdG9yU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9hcHBFdmVudFNlcnZpY2U6IFByb2R1Y3RFdmVudFNlcnZpY2VcclxuICAgICkge1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIHRoaXMuX3N1YnMucHVzaChcclxuICAgICAgICAgICAgdGhpcy5fYXBwRXZlbnRTZXJ2aWNlLm9uQWRkVG9DYXJ0LnN1YnNjcmliZShqc29uID0+IHRoaXMuYWRkVG9DYXJ0Lm5leHQoanNvbikpLFxyXG4gICAgICAgICAgICB0aGlzLl9hcHBFdmVudFNlcnZpY2Uub25BZGRUb1F1b3RlLnN1YnNjcmliZShqc29uID0+IHRoaXMuYWRkVG9RdW90ZS5uZXh0KGpzb24pKSxcclxuICAgICAgICAgICAgdGhpcy5fYXBwRXZlbnRTZXJ2aWNlLm9uQWx0ZXJuYXRpdmVDbGljay5zdWJzY3JpYmUoYXJ0aWNsZSA9PiB0aGlzLmFsdGVybmF0aXZlQ2xpY2submV4dChhcnRpY2xlKSlcclxuICAgICAgICApXHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgICAgdGhpcy5fc3Vicy5mb3JFYWNoKHMgPT4gcy51bnN1YnNjcmliZSgpKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGFzeW5jIF9wcmVwYXJlRXh0ZXJuYWxTb3VyY2UoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgaWYgKCF0aGlzLl9leHRlcm5hbFNvdXJjZSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuZXh0ZXJuYWxVcmwgPSB1bmRlZmluZWQ7XHJcbiAgICAgICAgdGhpcy5leHRlcm5hbFNldHRpbmdzID0ge307XHJcbiAgICAgICAgaWYgKHRoaXMuZXh0ZXJuYWxTb3VyY2UudHlwZSA9PT0gJ0NBVEYnKSB7XHJcbiAgICAgICAgICAgIC8vIGdldCBidW5kbGUgc2V0dGluZ3MgZnJvbSBleHRlcm5hbCBzb3VyY2VcclxuICAgICAgICAgICAgY29uc3QgYnVuZGxlU2V0dGluZ3M6IHN0cmluZyA9IGF3YWl0IHRoaXMuX3Byb2R1Y3RDb25uZWN0b3JTZXJ2aWNlLmdldFByb2R1Y3RCdW5kbGVTZXR0aW5ncyh0aGlzLmV4dGVybmFsU291cmNlLnVybCwgcGFyc2VJbnQodGhpcy5leHRlcm5hbFNvdXJjZS5zY2hlbWEsIDApKTtcclxuICAgICAgICAgICAgdGhpcy5leHRlcm5hbFNldHRpbmdzID0gSlNPTi5wYXJzZShidW5kbGVTZXR0aW5ncyk7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLm9wdGlvbnMpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZXh0ZXJuYWxTZXR0aW5ncy5vcHRpb25zID0gdGhpcy5vcHRpb25zO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC8vIHRoaXMuZXh0ZXJuYWxTZXR0aW5ncy5hc3NldFBhdGggPSBcImh0dHBzOi8vY2RuMS5jb2xpam4taXQubmwvY29udGVudDQzXCI7XHJcbiAgICAgICAgICAgIC8vIHRoaXMuZXh0ZXJuYWxTZXR0aW5ncy50aHJlZURBc3NldFBhdGggPSBcImh0dHBzOi8vY2RuMS5jb2xpam4taXQubmwvY29udGVudDQzXCI7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmV4dGVybmFsU291cmNlLnVzZXJuYW1lICYmIHRoaXMuZXh0ZXJuYWxTb3VyY2UucGFzc3dvcmQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZXh0ZXJuYWxTZXR0aW5ncy51c2VMb2dpbkVuY3J5cHRpb24gPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5leHRlcm5hbFNldHRpbmdzLnVzZXJuYW1lID0gdGhpcy5leHRlcm5hbFNvdXJjZS51c2VybmFtZTtcclxuICAgICAgICAgICAgICAgIHRoaXMuZXh0ZXJuYWxTZXR0aW5ncy5wYXNzd29yZCA9IHRoaXMuZXh0ZXJuYWxTb3VyY2UucGFzc3dvcmQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLy8gZmluYWxseSBzaG93IHRoZSBjYXRhbG9nXHJcbiAgICAgICAgICAgIHRoaXMuc2hvd1Byb2R1Y3QgPSB0cnVlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuZXh0ZXJuYWxVcmwgPSB0aGlzLmV4dGVybmFsU291cmNlLnVybDtcclxuICAgICAgICAgICAgdGhpcy5zYWZlVXJsID0gdGhpcy5fc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybCh0aGlzLmV4dGVybmFsVXJsKTtcclxuICAgICAgICAgICAgdGhpcy5zaG93UHJvZHVjdCA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmxvYWRlZCA9IHRydWU7XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -0,0 +1,23 @@
1
+ import { __decorate } from "tslib";
2
+ import { NgModule } from '@angular/core';
3
+ import { CommonModule } from '@angular/common';
4
+ import { ProductExternalSourceComponent } from './product-external-source.component';
5
+ import { ProductPageModule } from '../product-page/product-page.module';
6
+ let ProductExternalSourceModule = class ProductExternalSourceModule {
7
+ };
8
+ ProductExternalSourceModule = __decorate([
9
+ NgModule({
10
+ imports: [
11
+ CommonModule,
12
+ ProductPageModule
13
+ ],
14
+ declarations: [
15
+ ProductExternalSourceComponent
16
+ ],
17
+ exports: [
18
+ ProductExternalSourceComponent
19
+ ]
20
+ })
21
+ ], ProductExternalSourceModule);
22
+ export { ProductExternalSourceModule };
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1leHRlcm5hbC1zb3VyY2UubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvbGlqbml0L3Byb2R1Y3QvIiwic291cmNlcyI6WyJhcHAvY29tcG9uZW50cy9wcm9kdWN0LWV4dGVybmFsLXNvdXJjZS9wcm9kdWN0LWV4dGVybmFsLXNvdXJjZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyw4QkFBOEIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ25GLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBY3RFLElBQWEsMkJBQTJCLEdBQXhDLE1BQWEsMkJBQTJCO0NBQ3ZDLENBQUE7QUFEWSwyQkFBMkI7SUFadkMsUUFBUSxDQUFDO1FBQ04sT0FBTyxFQUFFO1lBQ0wsWUFBWTtZQUNaLGlCQUFpQjtTQUNwQjtRQUNELFlBQVksRUFBRTtZQUNWLDhCQUE4QjtTQUNqQztRQUNELE9BQU8sRUFBRTtZQUNMLDhCQUE4QjtTQUNqQztLQUNKLENBQUM7R0FDVywyQkFBMkIsQ0FDdkM7U0FEWSwyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7UHJvZHVjdEV4dGVybmFsU291cmNlQ29tcG9uZW50fSBmcm9tICcuL3Byb2R1Y3QtZXh0ZXJuYWwtc291cmNlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7UHJvZHVjdFBhZ2VNb2R1bGV9IGZyb20gJy4uL3Byb2R1Y3QtcGFnZS9wcm9kdWN0LXBhZ2UubW9kdWxlJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgICBpbXBvcnRzOiBbXHJcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgICAgIFByb2R1Y3RQYWdlTW9kdWxlXHJcbiAgICBdLFxyXG4gICAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICAgICAgUHJvZHVjdEV4dGVybmFsU291cmNlQ29tcG9uZW50XHJcbiAgICBdLFxyXG4gICAgZXhwb3J0czogW1xyXG4gICAgICAgIFByb2R1Y3RFeHRlcm5hbFNvdXJjZUNvbXBvbmVudFxyXG4gICAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUHJvZHVjdEV4dGVybmFsU291cmNlTW9kdWxlIHtcclxufVxyXG4iXX0=
@@ -30,8 +30,8 @@ let ProductPageComponent = class ProductPageComponent {
30
30
  if (this.selections.nativeElement) {
31
31
  this.selections.nativeElement.forceRenderImage();
32
32
  }
33
- }), this.settingsService.settingsLoaded.subscribe((loaded) => {
34
- this.settingsLoaded = loaded;
33
+ }), this.settingsService.settingsLoaded.subscribe(loaded => this._handleSettingsLoaded(loaded)), this._ione.controllerInitialized.subscribe((initialized) => {
34
+ this.settingsLoaded = initialized;
35
35
  }));
36
36
  }
37
37
  set sku(value) {
@@ -49,6 +49,19 @@ let ProductPageComponent = class ProductPageComponent {
49
49
  get sku() {
50
50
  return this._sku;
51
51
  }
52
+ set settings(value) {
53
+ if (value) {
54
+ if (typeof value === 'string') {
55
+ this._settings = JSON.parse(value);
56
+ }
57
+ else {
58
+ this._settings = value;
59
+ }
60
+ }
61
+ }
62
+ get settings() {
63
+ return this._settings;
64
+ }
52
65
  set fullScreen(value) {
53
66
  this._fullScreen = value;
54
67
  this.fullscreenAnimationEnd = true;
@@ -73,6 +86,13 @@ let ProductPageComponent = class ProductPageComponent {
73
86
  return this._currentView;
74
87
  }
75
88
  ngOnInit() {
89
+ if (this._settings) {
90
+ this.settingsService.settings = undefined;
91
+ this.settingsService.createSettingsFromObject(this._settings);
92
+ }
93
+ else {
94
+ this._settings = this.settingsService.settings;
95
+ }
76
96
  }
77
97
  ngAfterViewInit() {
78
98
  }
@@ -97,6 +117,11 @@ let ProductPageComponent = class ProductPageComponent {
97
117
  showFullScreen() {
98
118
  this.fullScreen = !this.fullScreen;
99
119
  }
120
+ _handleSettingsLoaded(loaded) {
121
+ if (loaded) {
122
+ this._ione.initConnection();
123
+ }
124
+ }
100
125
  _getArticle() {
101
126
  return __awaiter(this, void 0, void 0, function* () {
102
127
  if (this._initializedSub) {
@@ -106,18 +131,20 @@ let ProductPageComponent = class ProductPageComponent {
106
131
  if (init) {
107
132
  this._ione.getFullArticle(this._sku).then((article) => {
108
133
  this.article = article;
109
- this.configurable = this.article.goodType === 'B';
110
- if (this.configurable) {
111
- this.currentView = SelectorType.TwoD;
112
- }
113
- this.threeD = this.article.is3D;
114
- this.selectorType = this.article.selectorTypeCustomer;
115
- this._ione.getDeliveryPrognosis(this.article.goodId).then((stockInfo) => {
116
- const stockAndDelivery = stockInfo;
117
- this.stockAndDelivery = new StockAndDelivery(0, stockAndDelivery.returnValue ? stockAndDelivery.returnValue : ' ');
134
+ if (this.article) {
135
+ this.configurable = this.article.goodType === 'B';
136
+ if (this.configurable) {
137
+ this.currentView = SelectorType.TwoD;
138
+ }
139
+ this.threeD = this.article.is3D;
140
+ this.selectorType = this.article.selectorTypeCustomer;
141
+ this._ione.getDeliveryPrognosis(this.article.goodId).then((stockInfo) => {
142
+ const stockAndDelivery = stockInfo;
143
+ this.stockAndDelivery = new StockAndDelivery(0, stockAndDelivery.returnValue ? stockAndDelivery.returnValue : ' ');
144
+ this._changeDetector.detectChanges();
145
+ });
118
146
  this._changeDetector.detectChanges();
119
- });
120
- this._changeDetector.detectChanges();
147
+ }
121
148
  });
122
149
  }
123
150
  }));
@@ -144,10 +171,13 @@ __decorate([
144
171
  __decorate([
145
172
  Input()
146
173
  ], ProductPageComponent.prototype, "sku", null);
174
+ __decorate([
175
+ Input()
176
+ ], ProductPageComponent.prototype, "settings", null);
147
177
  ProductPageComponent = __decorate([
148
178
  Component({
149
179
  selector: 'app-product-page',
150
- 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",
180
+ template: "<ng-container *ngIf=\"settingsLoaded\">\r\n <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]=\"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</ng-container>\r\n",
151
181
  animations: [
152
182
  trigger('toggleFullScreen', [
153
183
  state('fullscreen', style({ 'position': 'fixed', 'top': '0', 'left': '0', 'width': '100%', 'height': '100%' })),
@@ -184,4 +214,4 @@ ProductPageComponent = __decorate([
184
214
  })
185
215
  ], ProductPageComponent);
186
216
  export { ProductPageComponent };
187
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb2xpam5pdC9wcm9kdWN0LyIsInNvdXJjZXMiOlsiYXBwL2NvbXBvbmVudHMvcHJvZHVjdC1wYWdlL3Byb2R1Y3QtcGFnZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCxhQUFhLEVBQ2IsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUNMLFNBQVMsRUFDVCxNQUFNLEVBQ04sU0FBUyxFQUNULFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUdsRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDN0QsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDcEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDaEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUF3QzFFLElBQWEsb0JBQW9CLEdBQWpDLE1BQWEsb0JBQW9CO0lBMkUvQixZQUFvQixLQUE4QixFQUM5QixTQUFvQixFQUNwQixlQUFrQyxFQUNuQyxTQUEyQixFQUMzQixlQUF1QyxFQUN2QyxlQUFvQztRQUxuQyxVQUFLLEdBQUwsS0FBSyxDQUF5QjtRQUM5QixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQ3BCLG9CQUFlLEdBQWYsZUFBZSxDQUFtQjtRQUNuQyxj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RUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFDLENBQUMsQ0FBQztnQkFDMUQsVUFBVSxDQUFDLGVBQWUsRUFBRSxPQUFPLENBQUMseUJBQXlCLENBQUMsQ0FBQzthQUNoRSxDQUFDO1lBQ0YsT0FBTyxDQUFDLGtCQUFrQixFQUFFO2dCQUMxQixLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxFQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUMsQ0FBQyxDQUFDO2dCQUN0QyxLQUFLLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUMsQ0FBQyxDQUFDO2dCQUNuQyxVQUFVLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO2FBQ3RELENBQUM7U0FDSDs7S0FDRixDQUFDO0dBQ1csb0JBQW9CLENBdUpoQztTQXZKWSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFJlbmRlcmVyMixcbiAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUHJvZHVjdENvbm5lY3RvclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3Byb2R1Y3QtY29ubmVjdG9yLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXJ0aWNsZUZ1bGxPYmplY3QgfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWZ1bGwtb2JqZWN0JztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU3RvY2tBbmREZWxpdmVyeSB9IGZyb20gJy4uLy4uL21vZGVsL3N0b2NrLWFuZC1kZWxpdmVyeSc7XG5pbXBvcnQgeyBTZWxlY3RvclR5cGUgfSBmcm9tICcuLi8uLi9lbnVtL3NlbGVjdG9yLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBhbmltYXRlLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IEljb25FbnVtIH0gZnJvbSAnLi4vLi4vZW51bS9pY29uLmVudW0nO1xuaW1wb3J0IHsgSWNvbkNhY2hlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlJztcbmltcG9ydCB7IFByb2R1Y3RTZXR0aW5nc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3Byb2R1Y3Qtc2V0dGluZ3Muc2VydmljZSc7XG5pbXBvcnQgeyBQcm9kdWN0RXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZS9wcm9kdWN0LWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHtEZWxpdmVyeVByb2dub3Npc30gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvZGVsaXZlcnktcHJvZ25vc2lzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXByb2R1Y3QtcGFnZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9kdWN0LXBhZ2UuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wcm9kdWN0LXBhZ2UuY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ3RvZ2dsZUZ1bGxTY3JlZW4nLCBbXG4gICAgICBzdGF0ZSgnZnVsbHNjcmVlbicsIHN0eWxlKHsncG9zaXRpb24nOiAnZml4ZWQnLCAndG9wJzogJzAnLCAnbGVmdCc6ICcwJywgJ3dpZHRoJzogJzEwMCUnLCAnaGVpZ2h0JzogJzEwMCUnfSkpLFxuICAgICAgc3RhdGUoJ2hhbGZzY3JlZW4nLCBzdHlsZSh7J3Bvc2l0aW9uJzogJyonLCAndG9wJzogJyonLCAnbGVmdCc6ICcqJywgJ3dpZHRoJzogJyonLCAnaGVpZ2h0JzogJyonfSkpLFxuICAgICAgdHJhbnNpdGlvbignaGFsZnNjcmVlbiA8PT4gZnVsbHNjcmVlbicsIGFuaW1hdGUoJzIwMG1zIGVhc2UtaW4tb3V0JykpLFxuICAgIF0pLFxuICAgIHRyaWdnZXIoJ3RvZ2dsZVRvcExlZnQnLCBbXG4gICAgICBzdGF0ZSgnZnVsbHNjcmVlbicsIHN0eWxlKHsncG9zaXRpb24nOiAnZml4ZWQnLCAndG9wJzogJzAnLCAnbGVmdCc6ICcwJ30pKSxcbiAgICAgIHN0YXRlKCdoYWxmc2NyZWVuJywgc3R5bGUoeydwb3NpdGlvbic6ICdhYnNvbHV0ZScsICd0b3AnOiAnKicsICdsZWZ0JzogJyonfSkpLFxuICAgICAgdHJhbnNpdGlvbignaGFsZnNjcmVlbiA8PT4gZnVsbHNjcmVlbicsIGFuaW1hdGUoJzIwMG1zIGVhc2UtaW4tb3V0JykpLFxuICAgIF0pLFxuICAgIHRyaWdnZXIoJ3RvZ2dsZVRvcFJpZ2h0JywgW1xuICAgICAgc3RhdGUoJ2Z1bGxzY3JlZW4nLCBzdHlsZSh7J3Bvc2l0aW9uJzogJ2ZpeGVkJywgJ3RvcCc6ICcwJywgJ3JpZ2h0JzogJzAnfSkpLFxuICAgICAgc3RhdGUoJ2hhbGZzY3JlZW4nLCBzdHlsZSh7J3Bvc2l0aW9uJzogJyonLCAndG9wJzogJyonLCAncmlnaHQnOiAnKid9KSksXG4gICAgICB0cmFuc2l0aW9uKCdoYWxmc2NyZWVuIDw9PiBmdWxsc2NyZWVuJywgYW5pbWF0ZSgnMjAwbXMgZWFzZS1pbi1vdXQnKSksXG4gICAgXSksXG4gICAgdHJpZ2dlcigndG9nZ2xlRnVsbFNjcmVlblJpZ2h0JywgW1xuICAgICAgc3RhdGUoJ2Z1bGxzY3JlZW4nLCBzdHlsZSh7J3Bvc2l0aW9uJzogJ2ZpeGVkJywgJ3dpZHRoJzogJzQwMHB4JywgJ3RvcCc6ICcwJywgJ3JpZ2h0JzogJzAnfSkpLFxuICAgICAgc3RhdGUoJ2hhbGZzY3JlZW4nLCBzdHlsZSh7J3Bvc2l0aW9uJzogJyonLCAnd2lkdGgnOiAnKicsICd0b3AnOiAnKicsICdyaWdodCc6ICcqJ30pKSxcbiAgICAgIHRyYW5zaXRpb24oJ2hhbGZzY3JlZW4gPD0+IGZ1bGxzY3JlZW4nLCBhbmltYXRlKCcyMDBtcyBlYXNlLWluLW91dCcpKSxcbiAgICBdKSxcbiAgICB0cmlnZ2VyKCd0b2dnbGVWaXNpYmlsaXR5QnlTdGF0ZScsIFtcbiAgICAgIHN0YXRlKCdoaWRlJywgc3R5bGUoeydvcGFjaXR5JzogJzAnLCAnZGlzcGxheSc6ICdub25lJ30pKSxcbiAgICAgIHN0YXRlKCdzaG93Jywgc3R5bGUoeydkaXNwbGF5JzogJ2Jsb2NrJywgJ29wYWNpdHknOiAnMSd9KSksXG4gICAgICB0cmFuc2l0aW9uKCdoaWRlIDw9PiBzaG93JywgYW5pbWF0ZSgnMjAwbXMgMTAwbXMgZWFzZS1pbi1vdXQnKSksXG4gICAgXSksXG4gICAgdHJpZ2dlcigndG9nZ2xlVmlzaWJpbGl0eScsIFtcbiAgICAgIHN0YXRlKCd2b2lkJywgc3R5bGUoeydvcGFjaXR5JzogJzAnfSkpLFxuICAgICAgc3RhdGUoJyonLCBzdHlsZSh7J29wYWNpdHknOiAnMSd9KSksXG4gICAgICB0cmFuc2l0aW9uKCd2b2lkID0+IConLCBhbmltYXRlKCcyMDBtcyBlYXNlLWluLW91dCcpKSxcbiAgICBdKVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFByb2R1Y3RQYWdlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xuXG4gIHB1YmxpYyByZWFkb25seSBpY29uOiB0eXBlb2YgSWNvbkVudW0gPSBJY29uRW51bTtcblxuICBAVmlld0NoaWxkKCdjb25maWd1cmF0b3InLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSlcbiAgcHVibGljIGNvbmZpZ3VyYXRvcjogRWxlbWVudFJlZjtcblxuICBAVmlld0NoaWxkKCdzZWxlY3Rpb25zJywgeyByZWFkOiBFbGVtZW50UmVmIH0pXG4gIHB1YmxpYyBzZWxlY3Rpb25zOiBFbGVtZW50UmVmO1xuXG4gIEBWaWV3Q2hpbGQoJ2Z1bGxzY3JlZW5idXR0b24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSlcbiAgcHVibGljIGZ1bGxzY3JlZW5idXR0b246IEVsZW1lbnRSZWY7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBza3UodmFsdWU6IHN0cmluZykge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgaWYgKHRoaXMuY29uZmlndXJpbmcpIHtcbiAgICAgICAgdGhpcy5zaG93M0QgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5mdWxsU2NyZWVuID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY29uZmlndXJpbmcgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfVxuICAgICAgdGhpcy5fc2t1ID0gdmFsdWU7XG4gICAgICB0aGlzLl9nZXRBcnRpY2xlKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBza3UoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fc2t1O1xuICB9XG5cbiAgcHVibGljIHNldCBmdWxsU2NyZWVuKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZnVsbFNjcmVlbiA9IHZhbHVlO1xuICAgIHRoaXMuZnVsbHNjcmVlbkFuaW1hdGlvbkVuZCA9IHRydWU7XG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIC8vIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgIC8vICAgdGhpcy5mdWxsc2NyZWVuQW5pbWF0aW9uRW5kID0gdHJ1ZTtcbiAgICAvLyB9LCA0MDApXG4gIH1cblxuICBwdWJsaWMgZ2V0IGZ1bGxTY3JlZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Z1bGxTY3JlZW47XG4gIH1cblxuICBwdWJsaWMgZ2V0IGZ1bGxTY3JlZW5JY29uKCk6IEljb25FbnVtIHtcbiAgICByZXR1cm4gdGhpcy5mdWxsU2NyZWVuID8gdGhpcy5pY29uLk5vcm1hbFNjcmVlbiA6IHRoaXMuaWNvbi5GdWxsU2NyZWVuO1xuICB9XG5cbiAgcHVibGljIHNldCBjdXJyZW50Vmlldyh2YWx1ZTogU2VsZWN0b3JUeXBlKSB7XG4gICAgdGhpcy5fY3VycmVudFZpZXcgPSB2YWx1ZTtcbiAgICB0aGlzLnNob3cyRCA9IHRoaXMuX2N1cnJlbnRWaWV3ID09PSBTZWxlY3RvclR5cGUuVHdvRDtcbiAgICB0aGlzLnNob3czRCA9IHRoaXMuX2N1cnJlbnRWaWV3ID09PSBTZWxlY3RvclR5cGUuVGhyZWVEO1xuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY3VycmVudFZpZXcoKTogU2VsZWN0b3JUeXBlIHtcbiAgICByZXR1cm4gdGhpcy5fY3VycmVudFZpZXc7XG4gIH1cblxuICBwdWJsaWMgYXJ0aWNsZTogQXJ0aWNsZUZ1bGxPYmplY3Q7XG4gIHB1YmxpYyBzdG9ja0FuZERlbGl2ZXJ5OiBTdG9ja0FuZERlbGl2ZXJ5O1xuICBwdWJsaWMgY29uZmlndXJhYmxlID0gZmFsc2U7XG4gIHB1YmxpYyB0aHJlZUQgPSBmYWxzZTtcbiAgcHVibGljIHNlbGVjdG9yVHlwZTogU2VsZWN0b3JUeXBlO1xuICBwdWJsaWMgc2hvdzJEID0gdHJ1ZTtcbiAgcHVibGljIHNob3czRCA9IGZhbHNlO1xuICBwdWJsaWMgY29uZmlndXJpbmc6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGZ1bGxzY3JlZW5BbmltYXRpb25FbmQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIHNldHRpbmdzTG9hZGVkOiBib29sZWFuID0gZmFsc2U7XG4gIHByaXZhdGUgX3NrdTogc3RyaW5nO1xuICBwcml2YXRlIF9pbml0aWFsaXplZFN1YjogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIF9mdWxsU2NyZWVuOiBib29sZWFuID0gZmFsc2U7XG4gIHByaXZhdGUgX2N1cnJlbnRWaWV3OiBTZWxlY3RvclR5cGU7XG4gIHByaXZhdGUgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfaW9uZTogUHJvZHVjdENvbm5lY3RvclNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgX3JlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICAgICAgICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgICAgICAgcHVibGljIGljb25DYWNoZTogSWNvbkNhY2hlU2VydmljZSxcbiAgICAgICAgICAgICAgcHVibGljIHNldHRpbmdzU2VydmljZTogUHJvZHVjdFNldHRpbmdzU2VydmljZSxcbiAgICAgICAgICAgICAgcHVibGljIGFwcEV2ZW50U2VydmljZTogUHJvZHVjdEV2ZW50U2VydmljZVxuICApIHtcbiAgICB0aGlzLl9zdWJzLnB1c2goXG4gICAgICB0aGlzLmFwcEV2ZW50U2VydmljZS5vbkZvcmNlUmVuZGVySW1hZ2Uuc3Vic2NyaWJlKCh4KSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGlvbnMubmF0aXZlRWxlbWVudCl7XG4gICAgICAgICAgdGhpcy5zZWxlY3Rpb25zLm5hdGl2ZUVsZW1lbnQuZm9yY2VSZW5kZXJJbWFnZSgpO1xuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIHRoaXMuc2V0dGluZ3NTZXJ2aWNlLnNldHRpbmdzTG9hZGVkLnN1YnNjcmliZSgobG9hZGVkOiBib29sZWFuKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0dGluZ3NMb2FkZWQgPSBsb2FkZWQ7XG4gICAgICB9KVxuICAgICk7XG5cbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fc3Vicy5mb3JFYWNoKHMgPT4gcy51bnN1YnNjcmliZSgpKTtcbiAgICBpZiAodGhpcy5faW5pdGlhbGl6ZWRTdWIpIHtcbiAgICAgIHRoaXMuX2luaXRpYWxpemVkU3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICAgIHRoaXMuY29uZmlndXJhdG9yID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuc2VsZWN0aW9ucyA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLmZ1bGxzY3JlZW5idXR0b24gPSB1bmRlZmluZWQ7XG4gIH1cblxuICBwdWJsaWMgc2V0SW5zdGFuY2UoZXZlbnQ6IEN1c3RvbUV2ZW50KTogdm9pZCB7XG4gICAgaWYgKGV2ZW50LmRldGFpbCkge1xuICAgICAgdGhpcy5faW9uZS5zZXRJbnN0YW5jZShldmVudC5kZXRhaWwpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGVTdGFydENvbmZpZ3VyYXRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5jb25maWd1cmluZyA9IHRydWU7XG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgcHVibGljIHNob3dGdWxsU2NyZWVuKCk6IHZvaWQge1xuICAgIHRoaXMuZnVsbFNjcmVlbiA9ICF0aGlzLmZ1bGxTY3JlZW47XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIF9nZXRBcnRpY2xlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICh0aGlzLl9pbml0aWFsaXplZFN1Yikge1xuICAgICAgdGhpcy5faW5pdGlhbGl6ZWRTdWIudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgdGhpcy5faW5pdGlhbGl6ZWRTdWIgPSB0aGlzLl9pb25lLmNvbnRyb2xsZXJJbml0aWFsaXplZC5zdWJzY3JpYmUoYXN5bmMgKGluaXQ6IGJvb2xlYW4pID0+IHtcbiAgICAgIGlmIChpbml0KSB7XG4gICAgICAgIHRoaXMuX2lvbmUuZ2V0RnVsbEFydGljbGUodGhpcy5fc2t1KS50aGVuKChhcnRpY2xlOiBBcnRpY2xlRnVsbE9iamVjdCkgPT4ge1xuICAgICAgICAgIHRoaXMuYXJ0aWNsZSA9IGFydGljbGU7XG4gICAgICAgICAgdGhpcy5jb25maWd1cmFibGUgPSB0aGlzLmFydGljbGUuZ29vZFR5cGUgPT09ICdCJztcbiAgICAgICAgICBpZiAodGhpcy5jb25maWd1cmFibGUpIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFZpZXcgPSBTZWxlY3RvclR5cGUuVHdvRDtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy50aHJlZUQgPSB0aGlzLmFydGljbGUuaXMzRDtcbiAgICAgICAgICB0aGlzLnNlbGVjdG9yVHlwZSA9IHRoaXMuYXJ0aWNsZS5zZWxlY3RvclR5cGVDdXN0b21lcjtcbiAgICAgICAgICB0aGlzLl9pb25lLmdldERlbGl2ZXJ5UHJvZ25vc2lzKHRoaXMuYXJ0aWNsZS5nb29kSWQpLnRoZW4oKHN0b2NrSW5mbzogRGVsaXZlcnlQcm9nbm9zaXMpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHN0b2NrQW5kRGVsaXZlcnk6IERlbGl2ZXJ5UHJvZ25vc2lzID0gc3RvY2tJbmZvO1xuICAgICAgICAgICAgdGhpcy5zdG9ja0FuZERlbGl2ZXJ5ID0gbmV3IFN0b2NrQW5kRGVsaXZlcnkoMCwgc3RvY2tBbmREZWxpdmVyeS5yZXR1cm5WYWx1ZSA/IHN0b2NrQW5kRGVsaXZlcnkucmV0dXJuVmFsdWUgOiAnICcpO1xuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxufVxuIl19
217
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb2xpam5pdC9wcm9kdWN0LyIsInNvdXJjZXMiOlsiYXBwL2NvbXBvbmVudHMvcHJvZHVjdC1wYWdlL3Byb2R1Y3QtcGFnZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCxhQUFhLEVBQ2IsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUNMLFNBQVMsRUFDVCxNQUFNLEVBQ04sU0FBUyxFQUNULFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUdsRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDN0QsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDcEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDaEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUF3QzFFLElBQWEsb0JBQW9CLEdBQWpDLE1BQWEsb0JBQW9CO0lBMkYvQixZQUFvQixLQUE4QixFQUM5QixTQUFvQixFQUNwQixlQUFrQyxFQUNuQyxTQUEyQixFQUMzQixlQUF1QyxFQUN2QyxlQUFvQztRQUxuQyxVQUFLLEdBQUwsS0FBSyxDQUF5QjtRQUM5QixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQ3BCLG9CQUFlLEdBQWYsZUFBZSxDQUFtQjtRQUNuQyxj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QUUsS0FBSyxDQUFDLEVBQUMsU0FBUyxFQUFFLEdBQUcsRUFBQyxDQUFDLENBQUM7Z0JBQ3RDLEtBQUssQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUMsU0FBUyxFQUFFLEdBQUcsRUFBQyxDQUFDLENBQUM7Z0JBQ25DLFVBQVUsQ0FBQyxXQUFXLEVBQUUsT0FBTyxDQUFDLG1CQUFtQixDQUFDLENBQUM7YUFDdEQsQ0FBQztTQUNIOztLQUNGLENBQUM7R0FDVyxvQkFBb0IsQ0FzTGhDO1NBdExZLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgUmVuZGVyZXIyLFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQcm9kdWN0Q29ubmVjdG9yU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2UvcHJvZHVjdC1jb25uZWN0b3Iuc2VydmljZSc7XG5pbXBvcnQgeyBBcnRpY2xlRnVsbE9iamVjdCB9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZnVsbC1vYmplY3QnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTdG9ja0FuZERlbGl2ZXJ5IH0gZnJvbSAnLi4vLi4vbW9kZWwvc3RvY2stYW5kLWRlbGl2ZXJ5JztcbmltcG9ydCB7IFNlbGVjdG9yVHlwZSB9IGZyb20gJy4uLy4uL2VudW0vc2VsZWN0b3ItdHlwZS5lbnVtJztcbmltcG9ydCB7IGFuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgSWNvbkVudW0gfSBmcm9tICcuLi8uLi9lbnVtL2ljb24uZW51bSc7XG5pbXBvcnQgeyBJY29uQ2FjaGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2UnO1xuaW1wb3J0IHsgUHJvZHVjdFNldHRpbmdzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2UvcHJvZHVjdC1zZXR0aW5ncy5zZXJ2aWNlJztcbmltcG9ydCB7IFByb2R1Y3RFdmVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3Byb2R1Y3QtZXZlbnQuc2VydmljZSc7XG5pbXBvcnQge0RlbGl2ZXJ5UHJvZ25vc2lzfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9kZWxpdmVyeS1wcm9nbm9zaXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtcHJvZHVjdC1wYWdlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb2R1Y3QtcGFnZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Byb2R1Y3QtcGFnZS5jb21wb25lbnQuc2NzcyddLFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcigndG9nZ2xlRnVsbFNjcmVlbicsIFtcbiAgICAgIHN0YXRlKCdmdWxsc2NyZWVuJywgc3R5bGUoeydwb3NpdGlvbic6ICdmaXhlZCcsICd0b3AnOiAnMCcsICdsZWZ0JzogJzAnLCAnd2lkdGgnOiAnMTAwJScsICdoZWlnaHQnOiAnMTAwJSd9KSksXG4gICAgICBzdGF0ZSgnaGFsZnNjcmVlbicsIHN0eWxlKHsncG9zaXRpb24nOiAnKicsICd0b3AnOiAnKicsICdsZWZ0JzogJyonLCAnd2lkdGgnOiAnKicsICdoZWlnaHQnOiAnKid9KSksXG4gICAgICB0cmFuc2l0aW9uKCdoYWxmc2NyZWVuIDw9PiBmdWxsc2NyZWVuJywgYW5pbWF0ZSgnMjAwbXMgZWFzZS1pbi1vdXQnKSksXG4gICAgXSksXG4gICAgdHJpZ2dlcigndG9nZ2xlVG9wTGVmdCcsIFtcbiAgICAgIHN0YXRlKCdmdWxsc2NyZWVuJywgc3R5bGUoeydwb3NpdGlvbic6ICdmaXhlZCcsICd0b3AnOiAnMCcsICdsZWZ0JzogJzAnfSkpLFxuICAgICAgc3RhdGUoJ2hhbGZzY3JlZW4nLCBzdHlsZSh7J3Bvc2l0aW9uJzogJ2Fic29sdXRlJywgJ3RvcCc6ICcqJywgJ2xlZnQnOiAnKid9KSksXG4gICAgICB0cmFuc2l0aW9uKCdoYWxmc2NyZWVuIDw9PiBmdWxsc2NyZWVuJywgYW5pbWF0ZSgnMjAwbXMgZWFzZS1pbi1vdXQnKSksXG4gICAgXSksXG4gICAgdHJpZ2dlcigndG9nZ2xlVG9wUmlnaHQnLCBbXG4gICAgICBzdGF0ZSgnZnVsbHNjcmVlbicsIHN0eWxlKHsncG9zaXRpb24nOiAnZml4ZWQnLCAndG9wJzogJzAnLCAncmlnaHQnOiAnMCd9KSksXG4gICAgICBzdGF0ZSgnaGFsZnNjcmVlbicsIHN0eWxlKHsncG9zaXRpb24nOiAnKicsICd0b3AnOiAnKicsICdyaWdodCc6ICcqJ30pKSxcbiAgICAgIHRyYW5zaXRpb24oJ2hhbGZzY3JlZW4gPD0+IGZ1bGxzY3JlZW4nLCBhbmltYXRlKCcyMDBtcyBlYXNlLWluLW91dCcpKSxcbiAgICBdKSxcbiAgICB0cmlnZ2VyKCd0b2dnbGVGdWxsU2NyZWVuUmlnaHQnLCBbXG4gICAgICBzdGF0ZSgnZnVsbHNjcmVlbicsIHN0eWxlKHsncG9zaXRpb24nOiAnZml4ZWQnLCAnd2lkdGgnOiAnNDAwcHgnLCAndG9wJzogJzAnLCAncmlnaHQnOiAnMCd9KSksXG4gICAgICBzdGF0ZSgnaGFsZnNjcmVlbicsIHN0eWxlKHsncG9zaXRpb24nOiAnKicsICd3aWR0aCc6ICcqJywgJ3RvcCc6ICcqJywgJ3JpZ2h0JzogJyonfSkpLFxuICAgICAgdHJhbnNpdGlvbignaGFsZnNjcmVlbiA8PT4gZnVsbHNjcmVlbicsIGFuaW1hdGUoJzIwMG1zIGVhc2UtaW4tb3V0JykpLFxuICAgIF0pLFxuICAgIHRyaWdnZXIoJ3RvZ2dsZVZpc2liaWxpdHlCeVN0YXRlJywgW1xuICAgICAgc3RhdGUoJ2hpZGUnLCBzdHlsZSh7J29wYWNpdHknOiAnMCcsICdkaXNwbGF5JzogJ25vbmUnfSkpLFxuICAgICAgc3RhdGUoJ3Nob3cnLCBzdHlsZSh7J2Rpc3BsYXknOiAnYmxvY2snLCAnb3BhY2l0eSc6ICcxJ30pKSxcbiAgICAgIHRyYW5zaXRpb24oJ2hpZGUgPD0+IHNob3cnLCBhbmltYXRlKCcyMDBtcyAxMDBtcyBlYXNlLWluLW91dCcpKSxcbiAgICBdKSxcbiAgICB0cmlnZ2VyKCd0b2dnbGVWaXNpYmlsaXR5JywgW1xuICAgICAgc3RhdGUoJ3ZvaWQnLCBzdHlsZSh7J29wYWNpdHknOiAnMCd9KSksXG4gICAgICBzdGF0ZSgnKicsIHN0eWxlKHsnb3BhY2l0eSc6ICcxJ30pKSxcbiAgICAgIHRyYW5zaXRpb24oJ3ZvaWQgPT4gKicsIGFuaW1hdGUoJzIwMG1zIGVhc2UtaW4tb3V0JykpLFxuICAgIF0pXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgUHJvZHVjdFBhZ2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgcHVibGljIHJlYWRvbmx5IGljb246IHR5cGVvZiBJY29uRW51bSA9IEljb25FbnVtO1xuXG4gIEBWaWV3Q2hpbGQoJ2NvbmZpZ3VyYXRvcicsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICBwdWJsaWMgY29uZmlndXJhdG9yOiBFbGVtZW50UmVmO1xuXG4gIEBWaWV3Q2hpbGQoJ3NlbGVjdGlvbnMnLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSlcbiAgcHVibGljIHNlbGVjdGlvbnM6IEVsZW1lbnRSZWY7XG5cbiAgQFZpZXdDaGlsZCgnZnVsbHNjcmVlbmJ1dHRvbicsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICBwdWJsaWMgZnVsbHNjcmVlbmJ1dHRvbjogRWxlbWVudFJlZjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNrdSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICBpZiAodGhpcy5jb25maWd1cmluZykge1xuICAgICAgICB0aGlzLnNob3czRCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmZ1bGxTY3JlZW4gPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jb25maWd1cmluZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9XG4gICAgICB0aGlzLl9za3UgPSB2YWx1ZTtcbiAgICAgIHRoaXMuX2dldEFydGljbGUoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNrdSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9za3U7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNldHRpbmdzKHZhbHVlOiBhbnkpIHtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHRoaXMuX3NldHRpbmdzID0gSlNPTi5wYXJzZSh2YWx1ZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl9zZXR0aW5ncyA9IHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgc2V0dGluZ3MoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fc2V0dGluZ3M7XG4gIH1cblxuICBwdWJsaWMgc2V0IGZ1bGxTY3JlZW4odmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9mdWxsU2NyZWVuID0gdmFsdWU7XG4gICAgdGhpcy5mdWxsc2NyZWVuQW5pbWF0aW9uRW5kID0gdHJ1ZTtcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgLy8gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgLy8gICB0aGlzLmZ1bGxzY3JlZW5BbmltYXRpb25FbmQgPSB0cnVlO1xuICAgIC8vIH0sIDQwMClcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZnVsbFNjcmVlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZnVsbFNjcmVlbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZnVsbFNjcmVlbkljb24oKTogSWNvbkVudW0ge1xuICAgIHJldHVybiB0aGlzLmZ1bGxTY3JlZW4gPyB0aGlzLmljb24uTm9ybWFsU2NyZWVuIDogdGhpcy5pY29uLkZ1bGxTY3JlZW47XG4gIH1cblxuICBwdWJsaWMgc2V0IGN1cnJlbnRWaWV3KHZhbHVlOiBTZWxlY3RvclR5cGUpIHtcbiAgICB0aGlzLl9jdXJyZW50VmlldyA9IHZhbHVlO1xuICAgIHRoaXMuc2hvdzJEID0gdGhpcy5fY3VycmVudFZpZXcgPT09IFNlbGVjdG9yVHlwZS5Ud29EO1xuICAgIHRoaXMuc2hvdzNEID0gdGhpcy5fY3VycmVudFZpZXcgPT09IFNlbGVjdG9yVHlwZS5UaHJlZUQ7XG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgcHVibGljIGdldCBjdXJyZW50VmlldygpOiBTZWxlY3RvclR5cGUge1xuICAgIHJldHVybiB0aGlzLl9jdXJyZW50VmlldztcbiAgfVxuXG4gIHB1YmxpYyBhcnRpY2xlOiBBcnRpY2xlRnVsbE9iamVjdDtcbiAgcHVibGljIHN0b2NrQW5kRGVsaXZlcnk6IFN0b2NrQW5kRGVsaXZlcnk7XG4gIHB1YmxpYyBjb25maWd1cmFibGUgPSBmYWxzZTtcbiAgcHVibGljIHRocmVlRCA9IGZhbHNlO1xuICBwdWJsaWMgc2VsZWN0b3JUeXBlOiBTZWxlY3RvclR5cGU7XG4gIHB1YmxpYyBzaG93MkQgPSB0cnVlO1xuICBwdWJsaWMgc2hvdzNEID0gZmFsc2U7XG4gIHB1YmxpYyBjb25maWd1cmluZzogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgZnVsbHNjcmVlbkFuaW1hdGlvbkVuZDogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgc2V0dGluZ3NMb2FkZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBfc2t1OiBzdHJpbmc7XG4gIHByaXZhdGUgX2luaXRpYWxpemVkU3ViOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgX2Z1bGxTY3JlZW46IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBfY3VycmVudFZpZXc6IFNlbGVjdG9yVHlwZTtcbiAgcHJpdmF0ZSBfc3ViczogU3Vic2NyaXB0aW9uW10gPSBbXTtcbiAgcHJpdmF0ZSBfc2V0dGluZ3M6IGFueTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9pb25lOiBQcm9kdWN0Q29ubmVjdG9yU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICAgICAgICBwdWJsaWMgaWNvbkNhY2hlOiBJY29uQ2FjaGVTZXJ2aWNlLFxuICAgICAgICAgICAgICBwdWJsaWMgc2V0dGluZ3NTZXJ2aWNlOiBQcm9kdWN0U2V0dGluZ3NTZXJ2aWNlLFxuICAgICAgICAgICAgICBwdWJsaWMgYXBwRXZlbnRTZXJ2aWNlOiBQcm9kdWN0RXZlbnRTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuX3N1YnMucHVzaChcbiAgICAgIHRoaXMuYXBwRXZlbnRTZXJ2aWNlLm9uRm9yY2VSZW5kZXJJbWFnZS5zdWJzY3JpYmUoKHgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0aW9ucy5uYXRpdmVFbGVtZW50KSB7XG4gICAgICAgICAgdGhpcy5zZWxlY3Rpb25zLm5hdGl2ZUVsZW1lbnQuZm9yY2VSZW5kZXJJbWFnZSgpO1xuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgICAgdGhpcy5zZXR0aW5nc1NlcnZpY2Uuc2V0dGluZ3NMb2FkZWQuc3Vic2NyaWJlKGxvYWRlZCA9PiB0aGlzLl9oYW5kbGVTZXR0aW5nc0xvYWRlZChsb2FkZWQpKSxcbiAgICAgICAgdGhpcy5faW9uZS5jb250cm9sbGVySW5pdGlhbGl6ZWQuc3Vic2NyaWJlKChpbml0aWFsaXplZDogYm9vbGVhbikgPT4ge1xuICAgICAgICB0aGlzLnNldHRpbmdzTG9hZGVkID0gaW5pdGlhbGl6ZWQ7XG4gICAgICB9KVxuICAgICk7XG5cbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmICh0aGlzLl9zZXR0aW5ncykge1xuICAgICAgdGhpcy5zZXR0aW5nc1NlcnZpY2Uuc2V0dGluZ3MgPSB1bmRlZmluZWQ7XG4gICAgICB0aGlzLnNldHRpbmdzU2VydmljZS5jcmVhdGVTZXR0aW5nc0Zyb21PYmplY3QodGhpcy5fc2V0dGluZ3MpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9zZXR0aW5ncyA9IHRoaXMuc2V0dGluZ3NTZXJ2aWNlLnNldHRpbmdzO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX3N1YnMuZm9yRWFjaChzID0+IHMudW5zdWJzY3JpYmUoKSk7XG4gICAgaWYgKHRoaXMuX2luaXRpYWxpemVkU3ViKSB7XG4gICAgICB0aGlzLl9pbml0aWFsaXplZFN1Yi51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgICB0aGlzLmNvbmZpZ3VyYXRvciA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLnNlbGVjdGlvbnMgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5mdWxsc2NyZWVuYnV0dG9uID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHVibGljIHNldEluc3RhbmNlKGV2ZW50OiBDdXN0b21FdmVudCk6IHZvaWQge1xuICAgIGlmIChldmVudC5kZXRhaWwpIHtcbiAgICAgIHRoaXMuX2lvbmUuc2V0SW5zdGFuY2UoZXZlbnQuZGV0YWlsKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlU3RhcnRDb25maWd1cmF0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuY29uZmlndXJpbmcgPSB0cnVlO1xuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBzaG93RnVsbFNjcmVlbigpOiB2b2lkIHtcbiAgICB0aGlzLmZ1bGxTY3JlZW4gPSAhdGhpcy5mdWxsU2NyZWVuO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlU2V0dGluZ3NMb2FkZWQobG9hZGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKGxvYWRlZCkge1xuICAgICAgdGhpcy5faW9uZS5pbml0Q29ubmVjdGlvbigpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgX2dldEFydGljbGUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKHRoaXMuX2luaXRpYWxpemVkU3ViKSB7XG4gICAgICB0aGlzLl9pbml0aWFsaXplZFN1Yi51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgICB0aGlzLl9pbml0aWFsaXplZFN1YiA9IHRoaXMuX2lvbmUuY29udHJvbGxlckluaXRpYWxpemVkLnN1YnNjcmliZShhc3luYyAoaW5pdDogYm9vbGVhbikgPT4ge1xuICAgICAgaWYgKGluaXQpIHtcbiAgICAgICAgdGhpcy5faW9uZS5nZXRGdWxsQXJ0aWNsZSh0aGlzLl9za3UpLnRoZW4oKGFydGljbGU6IEFydGljbGVGdWxsT2JqZWN0KSA9PiB7XG4gICAgICAgICAgdGhpcy5hcnRpY2xlID0gYXJ0aWNsZTtcbiAgICAgICAgICBpZiAodGhpcy5hcnRpY2xlKSB7XG4gICAgICAgICAgICB0aGlzLmNvbmZpZ3VyYWJsZSA9IHRoaXMuYXJ0aWNsZS5nb29kVHlwZSA9PT0gJ0InO1xuICAgICAgICAgICAgaWYgKHRoaXMuY29uZmlndXJhYmxlKSB7XG4gICAgICAgICAgICAgIHRoaXMuY3VycmVudFZpZXcgPSBTZWxlY3RvclR5cGUuVHdvRDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMudGhyZWVEID0gdGhpcy5hcnRpY2xlLmlzM0Q7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdG9yVHlwZSA9IHRoaXMuYXJ0aWNsZS5zZWxlY3RvclR5cGVDdXN0b21lcjtcbiAgICAgICAgICAgIHRoaXMuX2lvbmUuZ2V0RGVsaXZlcnlQcm9nbm9zaXModGhpcy5hcnRpY2xlLmdvb2RJZCkudGhlbigoc3RvY2tJbmZvOiBEZWxpdmVyeVByb2dub3NpcykgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBzdG9ja0FuZERlbGl2ZXJ5OiBEZWxpdmVyeVByb2dub3NpcyA9IHN0b2NrSW5mbztcbiAgICAgICAgICAgICAgdGhpcy5zdG9ja0FuZERlbGl2ZXJ5ID0gbmV3IFN0b2NrQW5kRGVsaXZlcnkoMCwgc3RvY2tBbmREZWxpdmVyeS5yZXR1cm5WYWx1ZSA/IHN0b2NrQW5kRGVsaXZlcnkucmV0dXJuVmFsdWUgOiAnICcpO1xuICAgICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbn1cbiJdfQ==