@colijnit/product 2.9.0 → 12.0.0

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 (142) hide show
  1. package/app/components/core/header/header.module.d.ts +2 -0
  2. package/app/components/image-carousel/image-carousel.module.d.ts +2 -0
  3. package/app/components/product-additional-description/product-additional-description.module.d.ts +2 -0
  4. package/app/components/product-additional-info/product-additional-info.module.d.ts +2 -0
  5. package/app/components/product-addtocart/product-addtocart.module.d.ts +2 -0
  6. package/app/components/product-delivery/product-delivery.module.d.ts +2 -0
  7. package/app/components/product-description/product-description.module.d.ts +2 -0
  8. package/app/components/product-documents/product-document.module.d.ts +2 -0
  9. package/app/components/product-info-tabs/product-info-tabs.module.d.ts +2 -0
  10. package/app/components/product-page/product-page.component.d.ts +3 -1
  11. package/app/components/product-price/product-price.module.d.ts +2 -0
  12. package/app/components/product-properties/product-properties.module.d.ts +2 -0
  13. package/app/components/product-related/product-related.module.d.ts +2 -0
  14. package/app/components/product-selector-type/product-selector-type.module.d.ts +2 -0
  15. package/app/components/product-stock/product-stock.component.d.ts +3 -1
  16. package/app/components/product-stock/product-stock.module.d.ts +2 -0
  17. package/app/components/product-symbols/product-symbols.module.d.ts +2 -0
  18. package/app/ione-product.component.d.ts +6 -2
  19. package/app/ione-product.module.d.ts +0 -2
  20. package/bundles/colijnit-product.umd.js +1467 -998
  21. package/bundles/colijnit-product.umd.js.map +1 -1
  22. package/colijnit-product.d.ts +40 -28
  23. package/colijnit-product.metadata.json +1 -1
  24. package/esm2015/app/components/core/header/header.component.js +21 -17
  25. package/esm2015/app/components/core/header/header.module.js +19 -0
  26. package/esm2015/app/components/image-carousel/image-carousel.component.js +51 -35
  27. package/esm2015/app/components/image-carousel/image-carousel.module.js +23 -0
  28. package/esm2015/app/components/product-additional-description/product-additional-description.component.js +20 -15
  29. package/esm2015/app/components/product-additional-description/product-additional-description.module.js +21 -0
  30. package/esm2015/app/components/product-additional-info/product-additional-info.component.js +22 -20
  31. package/esm2015/app/components/product-additional-info/product-additional-info.module.js +21 -0
  32. package/esm2015/app/components/product-addtocart/product-addtocart.component.js +43 -40
  33. package/esm2015/app/components/product-addtocart/product-addtocart.module.js +24 -0
  34. package/esm2015/app/components/product-delivery/product-delivery.component.js +22 -15
  35. package/esm2015/app/components/product-delivery/product-delivery.module.js +23 -0
  36. package/esm2015/app/components/product-description/product-description.component.js +18 -14
  37. package/esm2015/app/components/product-description/product-description.module.js +19 -0
  38. package/esm2015/app/components/product-documents/product-document.module.js +25 -0
  39. package/esm2015/app/components/product-documents/product-documents.component.js +19 -18
  40. package/esm2015/app/components/product-external-source/product-external-source.component.js +32 -45
  41. package/esm2015/app/components/product-external-source/product-external-source.module.js +17 -19
  42. package/esm2015/app/components/product-info-tabs/product-info-tabs.component.js +36 -18
  43. package/esm2015/app/components/product-info-tabs/product-info-tabs.module.js +29 -0
  44. package/esm2015/app/components/product-page/product-page.component.js +56 -60
  45. package/esm2015/app/components/product-page/product-page.module.js +40 -62
  46. package/esm2015/app/components/product-price/product-price.component.js +26 -19
  47. package/esm2015/app/components/product-price/product-price.module.js +23 -0
  48. package/esm2015/app/components/product-properties/product-properties.component.js +24 -17
  49. package/esm2015/app/components/product-properties/product-properties.module.js +21 -0
  50. package/esm2015/app/components/product-related/product-related.component.js +33 -24
  51. package/esm2015/app/components/product-related/product-related.module.js +24 -0
  52. package/esm2015/app/components/product-selector-type/product-selector-type.component.js +32 -28
  53. package/esm2015/app/components/product-selector-type/product-selector-type.module.js +23 -0
  54. package/esm2015/app/components/product-stock/product-stock.component.js +29 -16
  55. package/esm2015/app/components/product-stock/product-stock.module.js +23 -0
  56. package/esm2015/app/components/product-symbols/product-symbols.component.js +28 -17
  57. package/esm2015/app/components/product-symbols/product-symbols.module.js +26 -0
  58. package/esm2015/app/enum/icon.enum.js +1 -1
  59. package/esm2015/app/enum/language-code.enum.js +1 -1
  60. package/esm2015/app/enum/selector-type.enum.js +1 -1
  61. package/esm2015/app/ione-product.component.js +58 -56
  62. package/esm2015/app/ione-product.module.js +21 -39
  63. package/esm2015/app/model/article-quantity.model.js +1 -1
  64. package/esm2015/app/model/icon.js +1 -1
  65. package/esm2015/app/model/productSettings.js +1 -1
  66. package/esm2015/app/model/render-modes.js +1 -1
  67. package/esm2015/app/model/render-parameters.js +1 -1
  68. package/esm2015/app/model/settings-options.js +1 -1
  69. package/esm2015/app/model/stock-and-delivery.js +1 -1
  70. package/esm2015/app/pipe/localize.pipe.js +8 -12
  71. package/esm2015/app/pipe/pipe.module.js +16 -18
  72. package/esm2015/app/product-version.js +3 -3
  73. package/esm2015/app/service/dictionary.service.js +10 -11
  74. package/esm2015/app/service/icon-cache.service.js +10 -12
  75. package/esm2015/app/service/product-connector-adapter.service.js +8 -8
  76. package/esm2015/app/service/product-connector.service.js +7 -8
  77. package/esm2015/app/service/product-event.service.js +12 -20
  78. package/esm2015/app/service/product-settings.service.js +7 -8
  79. package/esm2015/app/utils/bit-utils.js +1 -1
  80. package/esm2015/app/utils/json-utils.service.js +9 -10
  81. package/esm2015/assets/dictionary/text.properties.js +1 -1
  82. package/esm2015/colijnit-product.js +41 -29
  83. package/esm2015/public_api.js +2 -1
  84. package/fesm2015/colijnit-product.js +1070 -756
  85. package/fesm2015/colijnit-product.js.map +1 -1
  86. package/package.json +15 -18
  87. package/public_api.d.ts +1 -0
  88. package/app/components/product-info/product-info.component.d.ts +0 -14
  89. package/app/service/product-initializer.service.d.ts +0 -6
  90. package/bundles/colijnit-product.umd.min.js +0 -16
  91. package/bundles/colijnit-product.umd.min.js.map +0 -1
  92. package/esm2015/app/components/product-info/product-info.component.js +0 -38
  93. package/esm2015/app/service/product-initializer.service.js +0 -26
  94. package/esm5/app/components/core/header/header.component.js +0 -24
  95. package/esm5/app/components/image-carousel/image-carousel.component.js +0 -170
  96. package/esm5/app/components/product-additional-description/product-additional-description.component.js +0 -59
  97. package/esm5/app/components/product-additional-info/product-additional-info.component.js +0 -142
  98. package/esm5/app/components/product-addtocart/product-addtocart.component.js +0 -133
  99. package/esm5/app/components/product-delivery/product-delivery.component.js +0 -47
  100. package/esm5/app/components/product-description/product-description.component.js +0 -21
  101. package/esm5/app/components/product-documents/product-documents.component.js +0 -31
  102. package/esm5/app/components/product-external-source/product-external-source.component.js +0 -126
  103. package/esm5/app/components/product-external-source/product-external-source.module.js +0 -26
  104. package/esm5/app/components/product-info/product-info.component.js +0 -39
  105. package/esm5/app/components/product-info-tabs/product-info-tabs.component.js +0 -70
  106. package/esm5/app/components/product-page/product-page.component.js +0 -247
  107. package/esm5/app/components/product-page/product-page.module.js +0 -69
  108. package/esm5/app/components/product-price/product-price.component.js +0 -74
  109. package/esm5/app/components/product-properties/product-properties.component.js +0 -60
  110. package/esm5/app/components/product-related/product-related.component.js +0 -78
  111. package/esm5/app/components/product-selector-type/product-selector-type.component.js +0 -54
  112. package/esm5/app/components/product-stock/product-stock.component.js +0 -41
  113. package/esm5/app/components/product-symbols/product-symbols.component.js +0 -43
  114. package/esm5/app/enum/icon.enum.js +0 -19
  115. package/esm5/app/enum/language-code.enum.js +0 -8
  116. package/esm5/app/enum/selector-type.enum.js +0 -7
  117. package/esm5/app/ione-product.component.js +0 -161
  118. package/esm5/app/ione-product.module.js +0 -47
  119. package/esm5/app/model/article-quantity.model.js +0 -7
  120. package/esm5/app/model/icon.js +0 -18
  121. package/esm5/app/model/productSettings.js +0 -18
  122. package/esm5/app/model/render-modes.js +0 -7
  123. package/esm5/app/model/render-parameters.js +0 -12
  124. package/esm5/app/model/settings-options.js +0 -15
  125. package/esm5/app/model/stock-and-delivery.js +0 -10
  126. package/esm5/app/pipe/localize.pipe.js +0 -33
  127. package/esm5/app/pipe/pipe.module.js +0 -23
  128. package/esm5/app/product-version.js +0 -12
  129. package/esm5/app/service/dictionary.service.js +0 -95
  130. package/esm5/app/service/icon-cache.service.js +0 -47
  131. package/esm5/app/service/product-connector-adapter.service.js +0 -248
  132. package/esm5/app/service/product-connector.service.js +0 -141
  133. package/esm5/app/service/product-event.service.js +0 -38
  134. package/esm5/app/service/product-initializer.service.js +0 -29
  135. package/esm5/app/service/product-settings.service.js +0 -107
  136. package/esm5/app/utils/bit-utils.js +0 -22
  137. package/esm5/app/utils/json-utils.service.js +0 -42
  138. package/esm5/assets/dictionary/text.properties.js +0 -67
  139. package/esm5/colijnit-product.js +0 -34
  140. package/esm5/public_api.js +0 -5
  141. package/fesm5/colijnit-product.js +0 -2582
  142. package/fesm5/colijnit-product.js.map +0 -1
@@ -1,21 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { Component, Input } from '@angular/core';
3
- var ProductDescriptionComponent = /** @class */ (function () {
4
- function ProductDescriptionComponent() {
5
- }
6
- ProductDescriptionComponent.prototype.ngOnInit = function () {
7
- };
8
- __decorate([
9
- Input()
10
- ], ProductDescriptionComponent.prototype, "article", void 0);
11
- ProductDescriptionComponent = __decorate([
12
- Component({
13
- selector: 'app-product-description',
14
- template: "<div class=\"pd-title-wrapper\">\n <span class=\"pd-description\" [textContent]=\"article?.descriptionRetail\" *ngIf=\"article?.descriptionRetail\"></span>\n <span class=\"pd-sku\" [textContent]=\"article?.articleNr\" *ngIf=\"article?.articleNr\"></span>\n</div>\n",
15
- styles: [":host{display:block}.pd-title-wrapper{margin:20px 0 0}.pd-description{color:#22313c;font-size:25px;font-weight:700;width:100%;display:block}.pd-sku{color:#5b6875;font-size:16px}@media screen and (max-width:650px){.pd-description{font-size:21px}.pd-sku{font-size:13px}}"]
16
- })
17
- ], ProductDescriptionComponent);
18
- return ProductDescriptionComponent;
19
- }());
20
- export { ProductDescriptionComponent };
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1kZXNjcmlwdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29saWpuaXQvcHJvZHVjdC8iLCJzb3VyY2VzIjpbImFwcC9jb21wb25lbnRzL3Byb2R1Y3QtZGVzY3JpcHRpb24vcHJvZHVjdC1kZXNjcmlwdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBUXpEO0lBS0U7SUFBZ0IsQ0FBQztJQUVqQiw4Q0FBUSxHQUFSO0lBQ0EsQ0FBQztJQUxEO1FBREMsS0FBSyxFQUFFO2dFQUMwQjtJQUh2QiwyQkFBMkI7UUFMdkMsU0FBUyxDQUFDO1lBQ1QsUUFBUSxFQUFFLHlCQUF5QjtZQUNuQyxzUkFBbUQ7O1NBRXBELENBQUM7T0FDVywyQkFBMkIsQ0FVdkM7SUFBRCxrQ0FBQztDQUFBLEFBVkQsSUFVQztTQVZZLDJCQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXJ0aWNsZUZ1bGxPYmplY3QgfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWZ1bGwtb2JqZWN0JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXByb2R1Y3QtZGVzY3JpcHRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vcHJvZHVjdC1kZXNjcmlwdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Byb2R1Y3QtZGVzY3JpcHRpb24uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBQcm9kdWN0RGVzY3JpcHRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhcnRpY2xlOiBBcnRpY2xlRnVsbE9iamVjdDtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuICB9XG5cbn1cbiJdfQ==
@@ -1,31 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { Component, Input } from '@angular/core';
3
- import { IconEnum } from '../../enum/icon.enum';
4
- import { IconCacheService } from '../../service/icon-cache.service';
5
- var ProductDocumentsComponent = /** @class */ (function () {
6
- function ProductDocumentsComponent(iconCache) {
7
- this.iconCache = iconCache;
8
- this.icon = IconEnum;
9
- this.showLabel = false;
10
- this.documents = [];
11
- }
12
- ProductDocumentsComponent.ctorParameters = function () { return [
13
- { type: IconCacheService }
14
- ]; };
15
- __decorate([
16
- Input()
17
- ], ProductDocumentsComponent.prototype, "showLabel", void 0);
18
- __decorate([
19
- Input()
20
- ], ProductDocumentsComponent.prototype, "documents", void 0);
21
- ProductDocumentsComponent = __decorate([
22
- Component({
23
- selector: 'app-product-documents',
24
- template: "<app-header *ngIf=\"showLabel\" [label]=\"'DOCUMENTS' | localize\" [amount]=\"documents?.length\"></app-header>\n<div *ngIf=\"documents && documents.length > 0\">\n <co-files-upload [documents]=\"documents\" [canAdd]=\"false\" readonly></co-files-upload>\n</div>\n",
25
- styles: [":host{display:block}::ng-deep co-files-upload{flex-direction:column!important;width:100%}::ng-deep co-file-upload{margin:0!important;border-bottom:1px solid #f6f5f4}::ng-deep co-file-upload:first-child{border-top:1px solid #f6f5f4}::ng-deep co-files-upload .files-upload-wrapper{flex-direction:column!important;width:100%}::ng-deep co-file-upload co-tile{max-width:100%!important;width:100%;position:relative}::ng-deep co-file-upload co-tile:hover{box-shadow:none!important}::ng-deep co-file-upload co-tile:hover .tile-extra-bottom{background-color:#f6f5f4!important}::ng-deep co-file-upload co-tile .tile-wrapper{position:absolute!important;left:0;top:0;width:100%;height:100%;z-index:2;opacity:0;box-sizing:border-box}::ng-deep co-file-upload co-tile .tile-wrapper .image{position:absolute!important;left:0;top:0;width:100%!important;height:100%!important;cursor:pointer}::ng-deep co-file-upload co-tile .tile-extra-bottom{outline:0!important;border:none!important;background:url(../../../assets/icons/download.svg) left 6px center/36px auto no-repeat!important;line-height:20px;padding:20px 20px 20px 60px!important;margin:0!important}::ng-deep co-file-upload co-tile .tile-extra-bottom .main{padding:0!important}"]
26
- })
27
- ], ProductDocumentsComponent);
28
- return ProductDocumentsComponent;
29
- }());
30
- export { ProductDocumentsComponent };
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1kb2N1bWVudHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvbGlqbml0L3Byb2R1Y3QvIiwic291cmNlcyI6WyJhcHAvY29tcG9uZW50cy9wcm9kdWN0LWRvY3VtZW50cy9wcm9kdWN0LWRvY3VtZW50cy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRXpELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQU9wRTtJQVVFLG1DQUFtQixTQUEyQjtRQUEzQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQVI5QixTQUFJLEdBQW9CLFFBQVEsQ0FBQztRQUcxQyxjQUFTLEdBQVksS0FBSyxDQUFDO1FBRzNCLGNBQVMsR0FBaUIsRUFBRSxDQUFDO0lBRWMsQ0FBQzs7Z0JBQXJCLGdCQUFnQjs7SUFMOUM7UUFEQyxLQUFLLEVBQUU7Z0VBQzBCO0lBR2xDO1FBREMsS0FBSyxFQUFFO2dFQUM0QjtJQVJ6Qix5QkFBeUI7UUFMckMsU0FBUyxDQUFDO1lBQ1QsUUFBUSxFQUFFLHVCQUF1QjtZQUNqQyxxUkFBaUQ7O1NBRWxELENBQUM7T0FDVyx5QkFBeUIsQ0FZckM7SUFBRCxnQ0FBQztDQUFBLEFBWkQsSUFZQztTQVpZLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29Eb2N1bWVudCB9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL2NvLWRvY3VtZW50JztcbmltcG9ydCB7IEljb25FbnVtIH0gZnJvbSAnLi4vLi4vZW51bS9pY29uLmVudW0nO1xuaW1wb3J0IHsgUHJvZHVjdENvbm5lY3RvclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3Byb2R1Y3QtY29ubmVjdG9yLnNlcnZpY2UnO1xuaW1wb3J0IHsgSWNvbkNhY2hlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXByb2R1Y3QtZG9jdW1lbnRzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb2R1Y3QtZG9jdW1lbnRzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcHJvZHVjdC1kb2N1bWVudHMuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIFByb2R1Y3REb2N1bWVudHNDb21wb25lbnQge1xuXG4gIHB1YmxpYyByZWFkb25seSBpY29uOiB0eXBlb2YgSWNvbkVudW0gPSBJY29uRW51bTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2hvd0xhYmVsOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGRvY3VtZW50czogQ29Eb2N1bWVudFtdID0gW107XG5cbiAgY29uc3RydWN0b3IocHVibGljIGljb25DYWNoZTogSWNvbkNhY2hlU2VydmljZSkgeyB9XG5cbn1cbiJdfQ==
@@ -1,126 +0,0 @@
1
- import { __awaiter, __decorate, __generator } 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
- var ProductExternalSourceComponent = /** @class */ (function () {
9
- function ProductExternalSourceComponent(_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
- Object.defineProperty(ProductExternalSourceComponent.prototype, "externalSource", {
22
- get: function () {
23
- return this._externalSource;
24
- },
25
- set: function (value) {
26
- this._externalSource = value;
27
- this.loaded = false;
28
- this._prepareExternalSource();
29
- },
30
- enumerable: true,
31
- configurable: true
32
- });
33
- ProductExternalSourceComponent.prototype.showClass = function () {
34
- return true;
35
- };
36
- ProductExternalSourceComponent.prototype.ngOnInit = function () {
37
- var _this = this;
38
- this._subs.push(this._appEventService.onAddToCart.subscribe(function (json) { return _this.addToCart.next(json); }), this._appEventService.onAddToQuote.subscribe(function (json) { return _this.addToQuote.next(json); }), this._appEventService.onAlternativeClick.subscribe(function (article) { return _this.alternativeClick.next(article); }));
39
- };
40
- ProductExternalSourceComponent.prototype.ngOnDestroy = function () {
41
- this._subs.forEach(function (s) { return s.unsubscribe(); });
42
- };
43
- ProductExternalSourceComponent.prototype._prepareExternalSource = function () {
44
- return __awaiter(this, void 0, void 0, function () {
45
- var bundleSettings;
46
- return __generator(this, function (_a) {
47
- switch (_a.label) {
48
- case 0:
49
- if (!this._externalSource) {
50
- return [2 /*return*/];
51
- }
52
- this.externalUrl = undefined;
53
- this.externalSettings = {};
54
- if (!(this.externalSource.type === 'CATF')) return [3 /*break*/, 2];
55
- return [4 /*yield*/, this._productConnectorService.getProductBundleSettings(this.externalSource.url, parseInt(this.externalSource.schema, 0))];
56
- case 1:
57
- bundleSettings = _a.sent();
58
- this.externalSettings = JSON.parse(bundleSettings);
59
- if (this.options) {
60
- this.externalSettings.options = this.options;
61
- }
62
- // this.externalSettings.assetPath = "https://cdn1.colijn-it.nl/content43";
63
- // this.externalSettings.threeDAssetPath = "https://cdn1.colijn-it.nl/content43";
64
- if (this.externalSource.username && this.externalSource.password) {
65
- this.externalSettings.useLoginEncryption = true;
66
- this.externalSettings.username = this.externalSource.username;
67
- this.externalSettings.password = this.externalSource.password;
68
- }
69
- // finally show the catalog
70
- this.showProduct = true;
71
- return [3 /*break*/, 3];
72
- case 2:
73
- this.externalUrl = this.externalSource.url;
74
- this.safeUrl = this._sanitizer.bypassSecurityTrustResourceUrl(this.externalUrl);
75
- this.showProduct = false;
76
- _a.label = 3;
77
- case 3:
78
- this.loaded = true;
79
- return [2 /*return*/];
80
- }
81
- });
82
- });
83
- };
84
- ProductExternalSourceComponent.ctorParameters = function () { return [
85
- { type: DomSanitizer },
86
- { type: ProductConnectorService },
87
- { type: ProductEventService }
88
- ]; };
89
- __decorate([
90
- Input()
91
- ], ProductExternalSourceComponent.prototype, "sku", void 0);
92
- __decorate([
93
- Input()
94
- ], ProductExternalSourceComponent.prototype, "externalSource", null);
95
- __decorate([
96
- Input()
97
- ], ProductExternalSourceComponent.prototype, "options", void 0);
98
- __decorate([
99
- Output()
100
- ], ProductExternalSourceComponent.prototype, "addToCart", void 0);
101
- __decorate([
102
- Output()
103
- ], ProductExternalSourceComponent.prototype, "addToQuote", void 0);
104
- __decorate([
105
- Output()
106
- ], ProductExternalSourceComponent.prototype, "alternativeClick", void 0);
107
- __decorate([
108
- HostBinding('class.co-product-external-source')
109
- ], ProductExternalSourceComponent.prototype, "showClass", null);
110
- ProductExternalSourceComponent = __decorate([
111
- Component({
112
- selector: 'co-product-external-source',
113
- template: "\n <ng-container *ngIf=\"loaded\">\n <ng-container *ngIf=\"showProduct\">\n <app-product-page\n [sku]=\"sku\"\n [settings]=\"externalSettings\"\n ></app-product-page>\n </ng-container>\n <ng-container *ngIf=\"!showProduct\">\n <iframe width=\"100%\" height=\"100%\" [src]=\"safeUrl\" frameborder=\"0\" allowfullscreen></iframe>\n </ng-container>\n </ng-container>\n ",
114
- providers: [
115
- ProductEventService,
116
- ProductSettingsService,
117
- ProductConnectorAdapterService,
118
- ProductConnectorService
119
- ],
120
- encapsulation: ViewEncapsulation.None
121
- })
122
- ], ProductExternalSourceComponent);
123
- return ProductExternalSourceComponent;
124
- }());
125
- export { ProductExternalSourceComponent };
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1leHRlcm5hbC1zb3VyY2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvbGlqbml0L3Byb2R1Y3QvIiwic291cmNlcyI6WyJhcHAvY29tcG9uZW50cy9wcm9kdWN0LWV4dGVybmFsLXNvdXJjZS9wcm9kdWN0LWV4dGVybmFsLXNvdXJjZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4SCxPQUFPLEVBQUMsWUFBWSxFQUFFLGVBQWUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRXhFLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBRWhGLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBRXhFLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQzlFLE9BQU8sRUFBQyw4QkFBOEIsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBeUIvRjtJQTBDSSx3Q0FDWSxVQUF3QixFQUN4Qix3QkFBaUQsRUFDakQsZ0JBQXFDO1FBRnJDLGVBQVUsR0FBVixVQUFVLENBQWM7UUFDeEIsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUF5QjtRQUNqRCxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXFCO1FBekIxQyxjQUFTLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7UUFHN0QsZUFBVSxHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBRzlELHFCQUFnQixHQUFvQyxJQUFJLFlBQVksRUFBcUIsQ0FBQztRQU8xRixnQkFBVyxHQUFZLEtBQUssQ0FBQztRQUU3QixXQUFNLEdBQVksS0FBSyxDQUFDO1FBRXhCLHFCQUFnQixHQUFRLEVBQUUsQ0FBQztRQUcxQixVQUFLLEdBQW1CLEVBQUUsQ0FBQztJQU9uQyxDQUFDO0lBekNELHNCQUFXLDBEQUFjO2FBTXpCO1lBQ0ksT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO1FBQ2hDLENBQUM7YUFSRCxVQUEwQixLQUFxQjtZQUMzQyxJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztZQUM3QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUNwQixJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztRQUNsQyxDQUFDOzs7T0FBQTtJQW1CTSxrREFBUyxHQUFoQjtRQUNJLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFrQkQsaURBQVEsR0FBUjtRQUFBLGlCQU1DO1FBTEcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ1gsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsVUFBQSxJQUFJLElBQUksT0FBQSxLQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBekIsQ0FBeUIsQ0FBQyxFQUM5RSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxVQUFBLElBQUksSUFBSSxPQUFBLEtBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUExQixDQUEwQixDQUFDLEVBQ2hGLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsVUFBQSxPQUFPLElBQUksT0FBQSxLQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFuQyxDQUFtQyxDQUFDLENBQ3JHLENBQUE7SUFDTCxDQUFDO0lBRUQsb0RBQVcsR0FBWDtRQUNJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQUEsQ0FBQyxJQUFJLE9BQUEsQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFmLENBQWUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFYSwrREFBc0IsR0FBcEM7Ozs7Ozt3QkFDSSxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRTs0QkFDdkIsc0JBQU87eUJBQ1Y7d0JBQ0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxTQUFTLENBQUM7d0JBQzdCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7NkJBQ3ZCLENBQUEsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEtBQUssTUFBTSxDQUFBLEVBQW5DLHdCQUFtQzt3QkFFSixxQkFBTSxJQUFJLENBQUMsd0JBQXdCLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUE7O3dCQUF2SixjQUFjLEdBQVcsU0FBOEg7d0JBQzdKLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO3dCQUNuRCxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7NEJBQ2QsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO3lCQUNoRDt3QkFDRCwyRUFBMkU7d0JBQzNFLGlGQUFpRjt3QkFDakYsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRTs0QkFDOUQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQzs0QkFDaEQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQzs0QkFDOUQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQzt5QkFDakU7d0JBQ0QsMkJBQTJCO3dCQUMzQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQzs7O3dCQUV4QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDO3dCQUMzQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsOEJBQThCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO3dCQUNoRixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQzs7O3dCQUU3QixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQzs7Ozs7S0FDdEI7O2dCQTlDdUIsWUFBWTtnQkFDRSx1QkFBdUI7Z0JBQy9CLG1CQUFtQjs7SUExQ2pEO1FBREMsS0FBSyxFQUFFOytEQUNXO0lBR25CO1FBREMsS0FBSyxFQUFFO3dFQUtQO0lBT0Q7UUFEQyxLQUFLLEVBQUU7bUVBQ1c7SUFHbkI7UUFEQyxNQUFNLEVBQUU7cUVBQzJEO0lBR3BFO1FBREMsTUFBTSxFQUFFO3NFQUM0RDtJQUdyRTtRQURDLE1BQU0sRUFBRTs0RUFDd0Y7SUFHakc7UUFEQyxXQUFXLENBQUMsa0NBQWtDLENBQUM7bUVBRy9DO0lBL0JRLDhCQUE4QjtRQXZCMUMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLDRCQUE0QjtZQUN0QyxRQUFRLEVBQUUsd2dCQVlUO1lBQ0QsU0FBUyxFQUFFO2dCQUNQLG1CQUFtQjtnQkFDbkIsc0JBQXNCO2dCQUN0Qiw4QkFBOEI7Z0JBQzlCLHVCQUF1QjthQUMxQjtZQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO1NBQ3hDLENBQUM7T0FDVyw4QkFBOEIsQ0EwRjFDO0lBQUQscUNBQUM7Q0FBQSxBQTFGRCxJQTBGQztTQTFGWSw4QkFBOEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtEb21TYW5pdGl6ZXIsIFNhZmVSZXNvdXJjZVVybH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcbmltcG9ydCB7RXh0ZXJuYWxTb3VyY2V9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2V4dGVybmFsLXNvdXJjZS5ibyc7XHJcbmltcG9ydCB7UHJvZHVjdENvbm5lY3RvclNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvcHJvZHVjdC1jb25uZWN0b3Iuc2VydmljZSc7XHJcbmltcG9ydCB7QXJ0aWNsZUxpc3RPYmplY3R9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtbGlzdC1vYmplY3QnO1xyXG5pbXBvcnQge1Byb2R1Y3RFdmVudFNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvcHJvZHVjdC1ldmVudC5zZXJ2aWNlJztcclxuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge1Byb2R1Y3RTZXR0aW5nc1NlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvcHJvZHVjdC1zZXR0aW5ncy5zZXJ2aWNlJztcclxuaW1wb3J0IHtQcm9kdWN0Q29ubmVjdG9yQWRhcHRlclNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvcHJvZHVjdC1jb25uZWN0b3ItYWRhcHRlci5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdjby1wcm9kdWN0LWV4dGVybmFsLXNvdXJjZScsXHJcbiAgICB0ZW1wbGF0ZTogYFxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsb2FkZWRcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNob3dQcm9kdWN0XCI+XHJcbiAgICAgICAgICAgICAgICA8YXBwLXByb2R1Y3QtcGFnZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbc2t1XT1cInNrdVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzZXR0aW5nc109XCJleHRlcm5hbFNldHRpbmdzXCJcclxuICAgICAgICAgICAgICAgID48L2FwcC1wcm9kdWN0LXBhZ2U+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXNob3dQcm9kdWN0XCI+XHJcbiAgICAgICAgICAgICAgICA8aWZyYW1lIHdpZHRoPVwiMTAwJVwiIGhlaWdodD1cIjEwMCVcIiBbc3JjXT1cInNhZmVVcmxcIiBmcmFtZWJvcmRlcj1cIjBcIiBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgYCxcclxuICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIFByb2R1Y3RFdmVudFNlcnZpY2UsXHJcbiAgICAgICAgUHJvZHVjdFNldHRpbmdzU2VydmljZSxcclxuICAgICAgICBQcm9kdWN0Q29ubmVjdG9yQWRhcHRlclNlcnZpY2UsXHJcbiAgICAgICAgUHJvZHVjdENvbm5lY3RvclNlcnZpY2VcclxuICAgIF0sXHJcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQcm9kdWN0RXh0ZXJuYWxTb3VyY2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBza3U6IHN0cmluZztcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIHNldCBleHRlcm5hbFNvdXJjZSh2YWx1ZTogRXh0ZXJuYWxTb3VyY2UpIHtcclxuICAgICAgICB0aGlzLl9leHRlcm5hbFNvdXJjZSA9IHZhbHVlO1xyXG4gICAgICAgIHRoaXMubG9hZGVkID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5fcHJlcGFyZUV4dGVybmFsU291cmNlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldCBleHRlcm5hbFNvdXJjZSgpOiBFeHRlcm5hbFNvdXJjZSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2V4dGVybmFsU291cmNlO1xyXG4gICAgfVxyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgb3B0aW9uczoge307XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgYWRkVG9DYXJ0OiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIGFkZFRvUXVvdGU6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgYWx0ZXJuYXRpdmVDbGljazogRXZlbnRFbWl0dGVyPEFydGljbGVMaXN0T2JqZWN0PiA9IG5ldyBFdmVudEVtaXR0ZXI8QXJ0aWNsZUxpc3RPYmplY3Q+KCk7XHJcblxyXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jby1wcm9kdWN0LWV4dGVybmFsLXNvdXJjZScpXHJcbiAgICBwdWJsaWMgc2hvd0NsYXNzKCkge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzaG93UHJvZHVjdDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgcHVibGljIHNhZmVVcmw6IFNhZmVSZXNvdXJjZVVybDtcclxuICAgIHB1YmxpYyBsb2FkZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHB1YmxpYyBleHRlcm5hbFVybDogc3RyaW5nO1xyXG4gICAgcHVibGljIGV4dGVybmFsU2V0dGluZ3M6IGFueSA9IHt9O1xyXG5cclxuICAgIHByaXZhdGUgX2V4dGVybmFsU291cmNlOiBFeHRlcm5hbFNvdXJjZTtcclxuICAgIHByaXZhdGUgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBfc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIsXHJcbiAgICAgICAgcHJpdmF0ZSBfcHJvZHVjdENvbm5lY3RvclNlcnZpY2U6IFByb2R1Y3RDb25uZWN0b3JTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgX2FwcEV2ZW50U2VydmljZTogUHJvZHVjdEV2ZW50U2VydmljZVxyXG4gICAgKSB7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgdGhpcy5fc3Vicy5wdXNoKFxyXG4gICAgICAgICAgICB0aGlzLl9hcHBFdmVudFNlcnZpY2Uub25BZGRUb0NhcnQuc3Vic2NyaWJlKGpzb24gPT4gdGhpcy5hZGRUb0NhcnQubmV4dChqc29uKSksXHJcbiAgICAgICAgICAgIHRoaXMuX2FwcEV2ZW50U2VydmljZS5vbkFkZFRvUXVvdGUuc3Vic2NyaWJlKGpzb24gPT4gdGhpcy5hZGRUb1F1b3RlLm5leHQoanNvbikpLFxyXG4gICAgICAgICAgICB0aGlzLl9hcHBFdmVudFNlcnZpY2Uub25BbHRlcm5hdGl2ZUNsaWNrLnN1YnNjcmliZShhcnRpY2xlID0+IHRoaXMuYWx0ZXJuYXRpdmVDbGljay5uZXh0KGFydGljbGUpKVxyXG4gICAgICAgIClcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpIHtcclxuICAgICAgICB0aGlzLl9zdWJzLmZvckVhY2gocyA9PiBzLnVuc3Vic2NyaWJlKCkpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgYXN5bmMgX3ByZXBhcmVFeHRlcm5hbFNvdXJjZSgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBpZiAoIXRoaXMuX2V4dGVybmFsU291cmNlKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5leHRlcm5hbFVybCA9IHVuZGVmaW5lZDtcclxuICAgICAgICB0aGlzLmV4dGVybmFsU2V0dGluZ3MgPSB7fTtcclxuICAgICAgICBpZiAodGhpcy5leHRlcm5hbFNvdXJjZS50eXBlID09PSAnQ0FURicpIHtcclxuICAgICAgICAgICAgLy8gZ2V0IGJ1bmRsZSBzZXR0aW5ncyBmcm9tIGV4dGVybmFsIHNvdXJjZVxyXG4gICAgICAgICAgICBjb25zdCBidW5kbGVTZXR0aW5nczogc3RyaW5nID0gYXdhaXQgdGhpcy5fcHJvZHVjdENvbm5lY3RvclNlcnZpY2UuZ2V0UHJvZHVjdEJ1bmRsZVNldHRpbmdzKHRoaXMuZXh0ZXJuYWxTb3VyY2UudXJsLCBwYXJzZUludCh0aGlzLmV4dGVybmFsU291cmNlLnNjaGVtYSwgMCkpO1xyXG4gICAgICAgICAgICB0aGlzLmV4dGVybmFsU2V0dGluZ3MgPSBKU09OLnBhcnNlKGJ1bmRsZVNldHRpbmdzKTtcclxuICAgICAgICAgICAgaWYgKHRoaXMub3B0aW9ucykge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5leHRlcm5hbFNldHRpbmdzLm9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLy8gdGhpcy5leHRlcm5hbFNldHRpbmdzLmFzc2V0UGF0aCA9IFwiaHR0cHM6Ly9jZG4xLmNvbGlqbi1pdC5ubC9jb250ZW50NDNcIjtcclxuICAgICAgICAgICAgLy8gdGhpcy5leHRlcm5hbFNldHRpbmdzLnRocmVlREFzc2V0UGF0aCA9IFwiaHR0cHM6Ly9jZG4xLmNvbGlqbi1pdC5ubC9jb250ZW50NDNcIjtcclxuICAgICAgICAgICAgaWYgKHRoaXMuZXh0ZXJuYWxTb3VyY2UudXNlcm5hbWUgJiYgdGhpcy5leHRlcm5hbFNvdXJjZS5wYXNzd29yZCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5leHRlcm5hbFNldHRpbmdzLnVzZUxvZ2luRW5jcnlwdGlvbiA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmV4dGVybmFsU2V0dGluZ3MudXNlcm5hbWUgPSB0aGlzLmV4dGVybmFsU291cmNlLnVzZXJuYW1lO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5leHRlcm5hbFNldHRpbmdzLnBhc3N3b3JkID0gdGhpcy5leHRlcm5hbFNvdXJjZS5wYXNzd29yZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAvLyBmaW5hbGx5IHNob3cgdGhlIGNhdGFsb2dcclxuICAgICAgICAgICAgdGhpcy5zaG93UHJvZHVjdCA9IHRydWU7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5leHRlcm5hbFVybCA9IHRoaXMuZXh0ZXJuYWxTb3VyY2UudXJsO1xyXG4gICAgICAgICAgICB0aGlzLnNhZmVVcmwgPSB0aGlzLl9zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKHRoaXMuZXh0ZXJuYWxVcmwpO1xyXG4gICAgICAgICAgICB0aGlzLnNob3dQcm9kdWN0ID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubG9hZGVkID0gdHJ1ZTtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -1,26 +0,0 @@
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
- var ProductExternalSourceModule = /** @class */ (function () {
7
- function ProductExternalSourceModule() {
8
- }
9
- ProductExternalSourceModule = __decorate([
10
- NgModule({
11
- imports: [
12
- CommonModule,
13
- ProductPageModule
14
- ],
15
- declarations: [
16
- ProductExternalSourceComponent
17
- ],
18
- exports: [
19
- ProductExternalSourceComponent
20
- ]
21
- })
22
- ], ProductExternalSourceModule);
23
- return ProductExternalSourceModule;
24
- }());
25
- export { ProductExternalSourceModule };
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1leHRlcm5hbC1zb3VyY2UubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvbGlqbml0L3Byb2R1Y3QvIiwic291cmNlcyI6WyJhcHAvY29tcG9uZW50cy9wcm9kdWN0LWV4dGVybmFsLXNvdXJjZS9wcm9kdWN0LWV4dGVybmFsLXNvdXJjZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyw4QkFBOEIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ25GLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBY3RFO0lBQUE7SUFDQSxDQUFDO0lBRFksMkJBQTJCO1FBWnZDLFFBQVEsQ0FBQztZQUNOLE9BQU8sRUFBRTtnQkFDTCxZQUFZO2dCQUNaLGlCQUFpQjthQUNwQjtZQUNELFlBQVksRUFBRTtnQkFDViw4QkFBOEI7YUFDakM7WUFDRCxPQUFPLEVBQUU7Z0JBQ0wsOEJBQThCO2FBQ2pDO1NBQ0osQ0FBQztPQUNXLDJCQUEyQixDQUN2QztJQUFELGtDQUFDO0NBQUEsQUFERCxJQUNDO1NBRFksMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQge1Byb2R1Y3RFeHRlcm5hbFNvdXJjZUNvbXBvbmVudH0gZnJvbSAnLi9wcm9kdWN0LWV4dGVybmFsLXNvdXJjZS5jb21wb25lbnQnO1xyXG5pbXBvcnQge1Byb2R1Y3RQYWdlTW9kdWxlfSBmcm9tICcuLi9wcm9kdWN0LXBhZ2UvcHJvZHVjdC1wYWdlLm1vZHVsZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIENvbW1vbk1vZHVsZSxcclxuICAgICAgICBQcm9kdWN0UGFnZU1vZHVsZVxyXG4gICAgXSxcclxuICAgIGRlY2xhcmF0aW9uczogW1xyXG4gICAgICAgIFByb2R1Y3RFeHRlcm5hbFNvdXJjZUNvbXBvbmVudFxyXG4gICAgXSxcclxuICAgIGV4cG9ydHM6IFtcclxuICAgICAgICBQcm9kdWN0RXh0ZXJuYWxTb3VyY2VDb21wb25lbnRcclxuICAgIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFByb2R1Y3RFeHRlcm5hbFNvdXJjZU1vZHVsZSB7XHJcbn1cclxuIl19
@@ -1,39 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { Component, Input } from '@angular/core';
3
- import { animate, state, style, transition, trigger } from '@angular/animations';
4
- export var TabType;
5
- (function (TabType) {
6
- TabType["Additional"] = "additional";
7
- TabType["Properties"] = "properties";
8
- })(TabType || (TabType = {}));
9
- var ProductInfoComponent = /** @class */ (function () {
10
- function ProductInfoComponent() {
11
- this.tabType = TabType;
12
- this.currentTab = TabType.Additional;
13
- }
14
- ProductInfoComponent.prototype.ngOnInit = function () {
15
- };
16
- ProductInfoComponent.prototype.switchTab = function (tab) {
17
- this.currentTab = tab;
18
- };
19
- __decorate([
20
- Input()
21
- ], ProductInfoComponent.prototype, "article", void 0);
22
- ProductInfoComponent = __decorate([
23
- Component({
24
- selector: 'app-product-info',
25
- template: "<div>\n <div class=\"info-wrapper\">\n <div class=\"info-navigation\">\n <span [textContent]=\"'ADDITIONAL_DATA' | localize\" class=\"navigator\" [class.selected]=\"currentTab === tabType.Additional\" (mouseup)=\"switchTab(tabType.Additional)\"></span>\n <span [textContent]=\"'PROPERTIES' | localize\" class=\"navigator\" [class.selected]=\"currentTab === tabType.Properties\" (mouseup)=\"switchTab(tabType.Properties)\"></span>\n </div>\n <ng-container [ngSwitch]=\"currentTab\" class=\"content\">\n <div *ngSwitchCase=\"tabType.Additional\" @showContent>\n <app-product-additional-info\n [article]=\"article\"\n ></app-product-additional-info>\n </div>\n <div *ngSwitchCase=\"tabType.Properties\" @showContent>\n <app-product-properties [article]=\"article\"></app-product-properties>\n </div>\n </ng-container>\n </div>\n</div>\n",
26
- animations: [
27
- trigger('showContent', [
28
- state('void', style({ 'opacity': '0' })),
29
- state('*', style({ 'opacity': '1' })),
30
- transition('void => *', animate('200ms 100ms ease-in-out')),
31
- ])
32
- ],
33
- styles: [".info-navigation{margin:30px 0}.info-navigation .navigator:not(:last-child){margin-right:30px}.navigator{font-size:15px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.navigator.selected{color:#2b60a7}"]
34
- })
35
- ], ProductInfoComponent);
36
- return ProductInfoComponent;
37
- }());
38
- export { ProductInfoComponent };
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1pbmZvLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb2xpam5pdC9wcm9kdWN0LyIsInNvdXJjZXMiOlsiYXBwL2NvbXBvbmVudHMvcHJvZHVjdC1pbmZvL3Byb2R1Y3QtaW5mby5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRXpELE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFakYsTUFBTSxDQUFOLElBQVksT0FHWDtBQUhELFdBQVksT0FBTztJQUNqQixvQ0FBeUIsQ0FBQTtJQUN6QixvQ0FBeUIsQ0FBQTtBQUMzQixDQUFDLEVBSFcsT0FBTyxLQUFQLE9BQU8sUUFHbEI7QUFjRDtJQVNFO1FBUGdCLFlBQU8sR0FBbUIsT0FBTyxDQUFDO1FBSzNDLGVBQVUsR0FBWSxPQUFPLENBQUMsVUFBVSxDQUFDO0lBRWhDLENBQUM7SUFFakIsdUNBQVEsR0FBUjtJQUNBLENBQUM7SUFFTSx3Q0FBUyxHQUFoQixVQUFpQixHQUFZO1FBQzNCLElBQUksQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDO0lBQ3hCLENBQUM7SUFYRDtRQURDLEtBQUssRUFBRTt5REFDMEI7SUFMdkIsb0JBQW9CO1FBWmhDLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSxrQkFBa0I7WUFDNUIsdTVCQUE0QztZQUU1QyxVQUFVLEVBQUU7Z0JBQ1YsT0FBTyxDQUFDLGFBQWEsRUFBRTtvQkFDckIsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBQyxTQUFTLEVBQUUsR0FBRyxFQUFDLENBQUMsQ0FBQztvQkFDdEMsS0FBSyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBQyxTQUFTLEVBQUUsR0FBRyxFQUFDLENBQUMsQ0FBQztvQkFDbkMsVUFBVSxDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMseUJBQXlCLENBQUMsQ0FBQztpQkFDNUQsQ0FBQzthQUNIOztTQUNGLENBQUM7T0FDVyxvQkFBb0IsQ0FrQmhDO0lBQUQsMkJBQUM7Q0FBQSxBQWxCRCxJQWtCQztTQWxCWSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFydGljbGVGdWxsT2JqZWN0IH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1mdWxsLW9iamVjdCc7XG5pbXBvcnQgeyBhbmltYXRlLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcblxuZXhwb3J0IGVudW0gVGFiVHlwZSB7XG4gIEFkZGl0aW9uYWwgPSAnYWRkaXRpb25hbCcsXG4gIFByb3BlcnRpZXMgPSAncHJvcGVydGllcydcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXByb2R1Y3QtaW5mbycsXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9kdWN0LWluZm8uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wcm9kdWN0LWluZm8uY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ3Nob3dDb250ZW50JywgW1xuICAgICAgc3RhdGUoJ3ZvaWQnLCBzdHlsZSh7J29wYWNpdHknOiAnMCd9KSksXG4gICAgICBzdGF0ZSgnKicsIHN0eWxlKHsnb3BhY2l0eSc6ICcxJ30pKSxcbiAgICAgIHRyYW5zaXRpb24oJ3ZvaWQgPT4gKicsIGFuaW1hdGUoJzIwMG1zIDEwMG1zIGVhc2UtaW4tb3V0JykpLFxuICAgIF0pXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgUHJvZHVjdEluZm9Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIHB1YmxpYyByZWFkb25seSB0YWJUeXBlOiB0eXBlb2YgVGFiVHlwZSA9IFRhYlR5cGU7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGFydGljbGU6IEFydGljbGVGdWxsT2JqZWN0O1xuXG4gIHB1YmxpYyBjdXJyZW50VGFiOiBUYWJUeXBlID0gVGFiVHlwZS5BZGRpdGlvbmFsO1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gIH1cblxuICBwdWJsaWMgc3dpdGNoVGFiKHRhYjogVGFiVHlwZSk6IHZvaWQge1xuICAgIHRoaXMuY3VycmVudFRhYiA9IHRhYjtcbiAgfVxuXG59XG4iXX0=
@@ -1,70 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { Component, Input, ViewChild } from '@angular/core';
3
- import { ProductEventService } from '../../service/product-event.service';
4
- var ProductInfoTabsComponent = /** @class */ (function () {
5
- function ProductInfoTabsComponent(_appEventService) {
6
- var _this = this;
7
- this._appEventService = _appEventService;
8
- this.activeTabHeight = 0;
9
- this.tabs = [];
10
- this._subs = [];
11
- this._subs.push(this._appEventService.onUpdateProductInfoTab.subscribe(function (index) {
12
- _this.updateTab(index);
13
- _this.tabContent.nativeElement.scrollIntoView({ behavior: 'smooth' });
14
- }));
15
- }
16
- Object.defineProperty(ProductInfoTabsComponent.prototype, "article", {
17
- set: function (value) {
18
- if (value) {
19
- this.articleObject = value;
20
- this._setupTabs();
21
- this.updateTab(0);
22
- }
23
- },
24
- enumerable: true,
25
- configurable: true
26
- });
27
- ProductInfoTabsComponent.prototype.ngOnDestroy = function () {
28
- this._subs.forEach(function (s) { return s.unsubscribe(); });
29
- };
30
- ProductInfoTabsComponent.prototype.updateTab = function (tabIndex) {
31
- this.activeTab = tabIndex;
32
- this.updateHeight(tabIndex);
33
- };
34
- ProductInfoTabsComponent.prototype.updateHeight = function (tabIndex) {
35
- if (this.tabContent.nativeElement.children.length > 0) {
36
- if (this.tabContent.nativeElement.children[tabIndex] !== undefined) {
37
- this.activeTabHeight = this.tabContent.nativeElement.children[tabIndex].offsetHeight;
38
- }
39
- }
40
- };
41
- ProductInfoTabsComponent.prototype._setupTabs = function () {
42
- this.tabs.push({ title: 'DESCRIPTION' });
43
- this.tabs.push({ title: 'FEATURES' });
44
- if (this.articleObject.documents !== undefined && this.articleObject.documents.length > 0) {
45
- this.tabs.push({ title: 'DOWNLOADS' });
46
- }
47
- if (this.articleObject.symbols !== undefined && this.articleObject.symbols.length > 0) {
48
- this.tabs.push({ title: 'SYMBOLS' });
49
- }
50
- };
51
- ProductInfoTabsComponent.ctorParameters = function () { return [
52
- { type: ProductEventService }
53
- ]; };
54
- __decorate([
55
- ViewChild('tabContent')
56
- ], ProductInfoTabsComponent.prototype, "tabContent", void 0);
57
- __decorate([
58
- Input()
59
- ], ProductInfoTabsComponent.prototype, "article", null);
60
- ProductInfoTabsComponent = __decorate([
61
- Component({
62
- selector: 'app-product-info-tabs',
63
- template: "<div class=\"tab-container\">\r\n <div class=\"tab-header\">\r\n <button *ngFor=\"let tab of tabs; let i = index\" class=\"tab-header-button\" [class.active]=\"activeTab === i\" [textContent]=\"tab.title | localize\" (click)=\"updateTab(i)\"></button>\r\n </div>\r\n <div class=\"tab-content\" #tabContent [style.height.px]=\"(activeTabHeight > 0 ? activeTabHeight : '')\">\r\n <div class=\"tab-content-item\" *ngFor=\"let tab of tabs; let i = index\" [class.active]=\"activeTab === i\">\r\n <ng-container *ngIf=\"i === 0\">\r\n <app-product-additional-info class=\"\" [article]=\"articleObject\" [showLabel]=\"false\"></app-product-additional-info>\r\n </ng-container>\r\n <ng-container *ngIf=\"i === 1\">\r\n <app-product-properties class=\"\" [article]=\"articleObject\" [showLabel]=\"false\"></app-product-properties>\r\n </ng-container>\r\n <ng-container *ngIf=\"i === 2\">\r\n <app-product-documents [showLabel]=\"false\" class=\"\" *ngIf=\"articleObject?.documents && articleObject?.documents.length > 0\" [documents]=\"articleObject?.documents\"></app-product-documents>\r\n </ng-container>\r\n <ng-container *ngIf=\"i === 3\">\r\n <app-product-symbols class=\"\" *ngIf=\"articleObject?.symbols && articleObject?.symbols.length > 0\" [symbols]=\"articleObject?.symbols\"></app-product-symbols>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n",
64
- styles: [":focus{outline:0}:host .tab-header{border-bottom:3px solid #f6f5f4;margin:0 0 30px}:host .tab-header .tab-header-button{background:0 0;border:none;border-bottom:3px solid transparent;line-height:20px;padding:15px 20px;cursor:pointer;font-family:iOneMontserrat;color:#22313c;font-weight:700;margin:0 0 -3px;opacity:.5}:host .tab-header .tab-header-button:hover{opacity:1}:host .tab-header .tab-header-button.active{opacity:1;border-color:#74b77f}:host .tab-content{padding:0 20px 30px;margin:0 0 20px;border-bottom:2px solid #f6f5f4;transition:.2s ease-in-out;position:relative}:host .tab-content .tab-content-item{opacity:0;position:absolute;left:0;top:0;visibility:hidden;width:100%}:host .tab-content .tab-content-item.active{opacity:1;visibility:visible;position:static}@media screen and (max-width:650px){:host .tab-content{padding:0 10px 15px}}@media screen and (max-width:450px){:host .tab-header{display:flex}:host .tab-header .tab-header-button{width:100%;padding:10px;font-size:11px}}"]
65
- })
66
- ], ProductInfoTabsComponent);
67
- return ProductInfoTabsComponent;
68
- }());
69
- export { ProductInfoTabsComponent };
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1pbmZvLXRhYnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvbGlqbml0L3Byb2R1Y3QvIiwic291cmNlcyI6WyJhcHAvY29tcG9uZW50cy9wcm9kdWN0LWluZm8tdGFicy9wcm9kdWN0LWluZm8tdGFicy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBcUIsU0FBUyxFQUFjLEtBQUssRUFBYSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHdEcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFPMUU7SUF1QkUsa0NBQ1UsZ0JBQXFDO1FBRC9DLGlCQVNDO1FBUlMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFxQjtRQXJCeEMsb0JBQWUsR0FBVyxDQUFDLENBQUM7UUFLNUIsU0FBSSxHQUFVLEVBQUUsQ0FBQztRQWFoQixVQUFLLEdBQW1CLEVBQUUsQ0FBQztRQUtqQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDYixJQUFJLENBQUMsZ0JBQWdCLENBQUMsc0JBQXNCLENBQUMsU0FBUyxDQUFDLFVBQUMsS0FBYTtZQUNuRSxLQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3RCLEtBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZFLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBbkJELHNCQUFJLDZDQUFPO2FBQVgsVUFBWSxLQUF3QjtZQUNsQyxJQUFJLEtBQUssRUFBRTtnQkFDVCxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztnQkFDM0IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNsQixJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ25CO1FBQ0gsQ0FBQzs7O09BQUE7SUFlRCw4Q0FBVyxHQUFYO1FBQ0UsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQWYsQ0FBZSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVNLDRDQUFTLEdBQWhCLFVBQWlCLFFBQWdCO1FBQy9CLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQzFCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVNLCtDQUFZLEdBQW5CLFVBQW9CLFFBQWdCO1FBQ2xDLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDckQsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssU0FBUyxFQUFFO2dCQUNsRSxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxZQUFZLENBQUM7YUFDdEY7U0FDRjtJQUNILENBQUM7SUFFTyw2Q0FBVSxHQUFsQjtRQUNFLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUV0QyxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3pGLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7U0FDeEM7UUFFRCxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3JGLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7U0FDdEM7SUFFSCxDQUFDOztnQkF2QzJCLG1CQUFtQjs7SUFsQi9DO1FBREMsU0FBUyxDQUFDLFlBQVksQ0FBQztnRUFDTTtJQU85QjtRQURDLEtBQUssRUFBRzsyREFPUjtJQW5CVSx3QkFBd0I7UUFMcEMsU0FBUyxDQUFDO1lBQ1QsUUFBUSxFQUFFLHVCQUF1QjtZQUNqQywwNkNBQWlEOztTQUVsRCxDQUFDO09BQ1csd0JBQXdCLENBaUVwQztJQUFELCtCQUFDO0NBQUEsQUFqRUQsSUFpRUM7U0FqRVksd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIE9uRGVzdHJveSwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBcnRpY2xlRnVsbE9iamVjdCB9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZnVsbC1vYmplY3QnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQcm9kdWN0RXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZS9wcm9kdWN0LWV2ZW50LnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtcHJvZHVjdC1pbmZvLXRhYnMnLFxuICB0ZW1wbGF0ZVVybDogJy4vcHJvZHVjdC1pbmZvLXRhYnMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wcm9kdWN0LWluZm8tdGFicy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFByb2R1Y3RJbmZvVGFic0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG5cbiAgcHVibGljIGFjdGl2ZVRhYjogbnVtYmVyO1xuICBwdWJsaWMgYWN0aXZlVGFiSGVpZ2h0OiBudW1iZXIgPSAwO1xuXG4gIEBWaWV3Q2hpbGQoJ3RhYkNvbnRlbnQnKVxuICBwdWJsaWMgdGFiQ29udGVudDogRWxlbWVudFJlZjtcblxuICBwdWJsaWMgdGFiczogYW55W10gPSBbXTtcblxuICBwdWJsaWMgYXJ0aWNsZU9iamVjdDogQXJ0aWNsZUZ1bGxPYmplY3Q7XG5cbiAgQElucHV0ICgpXG4gIHNldCBhcnRpY2xlKHZhbHVlOiBBcnRpY2xlRnVsbE9iamVjdCkge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5hcnRpY2xlT2JqZWN0ID0gdmFsdWU7XG4gICAgICB0aGlzLl9zZXR1cFRhYnMoKTtcbiAgICAgIHRoaXMudXBkYXRlVGFiKDApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfYXBwRXZlbnRTZXJ2aWNlOiBQcm9kdWN0RXZlbnRTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuX3N1YnMucHVzaChcbiAgICAgIHRoaXMuX2FwcEV2ZW50U2VydmljZS5vblVwZGF0ZVByb2R1Y3RJbmZvVGFiLnN1YnNjcmliZSgoaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICB0aGlzLnVwZGF0ZVRhYihpbmRleCk7XG4gICAgICAgIHRoaXMudGFiQ29udGVudC5uYXRpdmVFbGVtZW50LnNjcm9sbEludG9WaWV3KHsgYmVoYXZpb3I6ICdzbW9vdGgnIH0pO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fc3Vicy5mb3JFYWNoKHMgPT4gcy51bnN1YnNjcmliZSgpKTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVUYWIodGFiSW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMuYWN0aXZlVGFiID0gdGFiSW5kZXg7XG4gICAgdGhpcy51cGRhdGVIZWlnaHQodGFiSW5kZXgpO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZUhlaWdodCh0YWJJbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudGFiQ29udGVudC5uYXRpdmVFbGVtZW50LmNoaWxkcmVuLmxlbmd0aCA+IDApIHtcbiAgICAgIGlmICh0aGlzLnRhYkNvbnRlbnQubmF0aXZlRWxlbWVudC5jaGlsZHJlblt0YWJJbmRleF0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLmFjdGl2ZVRhYkhlaWdodCA9IHRoaXMudGFiQ29udGVudC5uYXRpdmVFbGVtZW50LmNoaWxkcmVuW3RhYkluZGV4XS5vZmZzZXRIZWlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfc2V0dXBUYWJzKCk6IHZvaWQge1xuICAgIHRoaXMudGFicy5wdXNoKHsgdGl0bGU6ICdERVNDUklQVElPTicgfSk7XG4gICAgdGhpcy50YWJzLnB1c2goeyB0aXRsZTogJ0ZFQVRVUkVTJyB9KTtcblxuICAgIGlmICh0aGlzLmFydGljbGVPYmplY3QuZG9jdW1lbnRzICE9PSB1bmRlZmluZWQgJiYgdGhpcy5hcnRpY2xlT2JqZWN0LmRvY3VtZW50cy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLnRhYnMucHVzaCh7IHRpdGxlOiAnRE9XTkxPQURTJyB9KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5hcnRpY2xlT2JqZWN0LnN5bWJvbHMgIT09IHVuZGVmaW5lZCAmJiB0aGlzLmFydGljbGVPYmplY3Quc3ltYm9scy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLnRhYnMucHVzaCh7IHRpdGxlOiAnU1lNQk9MUycgfSk7XG4gICAgfVxuXG4gIH1cblxufVxuIl19