fabrikantencore 2.6.12 → 2.6.13

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 (45) hide show
  1. package/esm2022/src/app/modules/fabrikantencore/beheer/components/beheer-categories/beheer-categories.component.mjs +3 -13
  2. package/esm2022/src/app/modules/fabrikantencore/beheer/components/beheer-connect-category-dialog/beheer-connect-category-dialog.component.mjs +3 -13
  3. package/esm2022/src/app/modules/fabrikantencore/beheer/components/beheer-filter/beheer-filter.component.mjs +5 -25
  4. package/esm2022/src/app/modules/fabrikantencore/beheer/components/beheer-filters/beheer-filters.component.mjs +2 -7
  5. package/esm2022/src/app/modules/fabrikantencore/beheer/components/beheer-import-sets/beheer-import-sets-dialog/beheer-import-sets-dialog.component.mjs +2 -7
  6. package/esm2022/src/app/modules/fabrikantencore/beheer/components/beheer-nav/beheer-nav.component.mjs +2 -7
  7. package/esm2022/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-bcbproduct/beheer-products-bcbproduct.component.mjs +2 -7
  8. package/esm2022/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-koppel-filteroption-dailog/beheer-products-koppel-filteroption-dailog.component.mjs +4 -19
  9. package/esm2022/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products.component.mjs +2 -7
  10. package/esm2022/src/app/modules/fabrikantencore/beheer/components/beheer-rangeinput/beheer-rangeinput.component.mjs +2 -7
  11. package/esm2022/src/app/modules/fabrikantencore/beheer/components/beheer-searchproducts/beheer-searchproducts-koppel-dialog/beheer-searchproducts-koppel-dialog.component.mjs +3 -13
  12. package/esm2022/src/app/modules/fabrikantencore/beheer/components/beheer-searchproducts/beheer-searchproducts.component.mjs +2 -7
  13. package/esm2022/src/app/modules/fabrikantencore/beheer/components/beheer-select-filter-dialog/beheer-select-filter-dialog.component.mjs +3 -13
  14. package/esm2022/src/app/modules/fabrikantencore/beheer/components/beheer-select-filteroption-dialog/beheer-select-filteroption-dialog.component.mjs +2 -7
  15. package/esm2022/src/app/modules/fabrikantencore/beheer/components/beheer-translate/beheer-translate.component.mjs +177 -19
  16. package/esm2022/src/app/modules/fabrikantencore/beheer/components/beheer-users/beheer-users.component.mjs +2 -7
  17. package/esm2022/src/app/modules/fabrikantencore/components/fab-actionmenu/fab-actionmenu.component.mjs +3 -3
  18. package/esm2022/src/app/modules/fabrikantencore/components/fab-breadcrumb/fab-breadcrumb.component.mjs +2 -2
  19. package/esm2022/src/app/modules/fabrikantencore/components/fab-category-navigator/fab-category-navigator.component.mjs +2 -7
  20. package/esm2022/src/app/modules/fabrikantencore/components/fab-category-tile/fab-category-tile.component.mjs +2 -2
  21. package/esm2022/src/app/modules/fabrikantencore/components/fab-filter/fab-filter.component.mjs +3 -3
  22. package/esm2022/src/app/modules/fabrikantencore/components/fab-filters/fab-filters.component.mjs +2 -2
  23. package/esm2022/src/app/modules/fabrikantencore/components/fab-filters-input/fab-filters-input.component.mjs +2 -2
  24. package/esm2022/src/app/modules/fabrikantencore/components/fab-product/fab-product-bestek/fab-product-bestek.component.mjs +2 -2
  25. package/esm2022/src/app/modules/fabrikantencore/components/fab-product/fab-product.component.mjs +2 -2
  26. package/esm2022/src/app/modules/fabrikantencore/components/fab-product-select/fab-product-select.component.mjs +2 -2
  27. package/esm2022/src/app/modules/fabrikantencore/components/fab-product-tile/fab-product-tile.component.mjs +2 -2
  28. package/esm2022/src/app/modules/fabrikantencore/fabrikantencore.module.mjs +5 -1
  29. package/esm2022/src/app/modules/fabrikantencore/services/bestek.service.mjs +2 -7
  30. package/esm2022/src/app/modules/fabrikantencore/services/fabrikanten.service.mjs +19 -109
  31. package/esm2022/src/app/modules/fabrikantencore/services/importsets.service.mjs +3 -13
  32. package/esm2022/src/app/modules/fabrikantencore/services/products.service.mjs +3 -13
  33. package/esm2022/src/app/modules/fabrikantencore/services/svg.service.mjs +2 -7
  34. package/esm2022/src/app/modules/fabrikantencore/services/texture.service.mjs +2 -7
  35. package/esm2022/src/app/modules/fabrikantencore/services/toebehoren.service.mjs +2 -7
  36. package/esm2022/src/app/modules/fabrikantencore/services/translate.service.mjs +8 -5
  37. package/esm2022/src/app/modules/fabrikantencore/services/webgl.service.mjs +2 -7
  38. package/esm2022/src/app/modules/fabrikantencore/swagger/SwaggerClient.mjs +69 -1
  39. package/fesm2022/fabrikantencore.mjs +424 -454
  40. package/fesm2022/fabrikantencore.mjs.map +1 -1
  41. package/package.json +3 -2
  42. package/src/app/modules/fabrikantencore/beheer/components/beheer-translate/beheer-translate.component.d.ts +20 -4
  43. package/src/app/modules/fabrikantencore/fabrikantencore.module.d.ts +27 -26
  44. package/src/app/modules/fabrikantencore/services/translate.service.d.ts +2 -2
  45. package/src/app/modules/fabrikantencore/swagger/SwaggerClient.d.ts +16 -1
@@ -120,15 +120,15 @@ class FabFilterComponent {
120
120
  return result;
121
121
  }
122
122
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: FabFilterComponent, deps: [{ token: i1.FabrikantenService }, { token: i2.TranslateService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
123
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: FabFilterComponent, selector: "app-fab-filter", inputs: { filter: "filter" }, outputs: { filterchanged: "filterchanged" }, ngImport: i0, template: "<div class=\"row\" *ngIf=\"!filter.hidden\">\r\n <div class=\"select\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label class=\"select-mat-label\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Filter, TranslationSubCategory.Name, filter.id) }}\r\n <span *ngIf=\"filter.blocksProductSelect || filter.required\">*</span>\r\n </mat-label>\r\n <mat-select [(ngModel)]=\"SelectedOptionId\" (selectionChange)=\"SelectOption()\" [disabled]=\"IsDisabled()\">\r\n <ng-container *ngFor=\"let option of filter.options\">\r\n <mat-option [value]=\"option.id\" class=\"select-mat-option\" *ngIf=\"!option.hidden\">\r\n <ng-container *ngIf=\"option.colour != null && option.colour != ''\">\r\n <span [ngStyle]=\"{'background-color': option.colour}\" class=\"colour-preview\">\r\n &nbsp;\r\n &nbsp;\r\n </span>\r\n </ng-container>\r\n <ng-container *ngIf=\"option.imagePath != null && option.imagePath != ''\">\r\n <div class=\"filter-option-image-div\">\r\n <img src=\"{{ option.imagePath }}\" class=\"filter-option-image\" />\r\n </div>\r\n </ng-container>\r\n <span class=\"name-span\">{{ TranslateService.GetActiveValue(TranslationCategory.FilterOption, TranslationSubCategory.Name, option.id) }}</span>\r\n </mat-option>\r\n </ng-container>\r\n </mat-select>\r\n </mat-form-field>\r\n <p *ngIf=\"ShowDescription()\">{{ GetDescription() }}</p>\r\n </div>\r\n <div *ngIf=\"GetSelectedOption() != null && GetSelectedOption().colour != null && GetSelectedOption().colour != ''\">\r\n <div [ngStyle]=\"{'background-color': GetSelectedOption().colour}\" class=\"colour-preview-selected\">\r\n &nbsp;\r\n &nbsp;\r\n </div>\r\n </div>\r\n <div class=\"reset\" *ngIf=\"filter.selectedOption != 0\" (click)=\"ResetSelection()\">\r\n <mat-icon class=\"icon-position clear\" [inline]=\"true\">clear</mat-icon>\r\n </div>\r\n</div>\r\n<div *ngFor=\"let description of filter.descriptions\" class=\"description-block\">\r\n {{ description.description }}\r\n</div>\r\n", styles: ["app-fab-filter .select-mat-label:first-letter{text-transform:capitalize}app-fab-filter .mat-select-min-line:first-letter{text-transform:capitalize}app-fab-filter .description-block{padding-bottom:15px;font-size:12px}app-fab-filter .row{display:flex}app-fab-filter .full-width{width:100%}app-fab-filter .icon-position{margin-top:14px}app-fab-filter .select{flex:auto}app-fab-filter .reset{cursor:pointer;font-size:26px}app-fab-filter .colour-preview-selected{padding:5px;margin-left:5px;margin-top:8px;border:1px solid #000}.colour-preview{padding:5px;border:1px solid #000;line-height:20px;margin:10px}.name-span{line-height:52px}.select-mat-option .mat-option-text:first-letter{text-transform:capitalize}.select-mat-option .mat-option-text{display:flex}.mat-select-disabled .mat-select-arrow{display:none}.mat-select-panel-wrap{top:15px;position:relative}.mat-select-panel{max-width:100%!important}.filter-option-image{max-width:40px;max-height:40px}.filter-option-image-div{max-height:40px;padding-right:4px}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i4.MatLegacyFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLegacyLabel, selector: "mat-label" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i7.MatLegacySelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatLegacyOption, selector: "mat-option", exportAs: ["matOption"] }], encapsulation: i0.ViewEncapsulation.None });
123
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: FabFilterComponent, selector: "app-fab-filter", inputs: { filter: "filter" }, outputs: { filterchanged: "filterchanged" }, ngImport: i0, template: "<div class=\"row\" *ngIf=\"!filter.hidden\">\r\n <div class=\"select\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label class=\"select-mat-label filter-name\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Filter, TranslationSubCategory.Name, filter.id) }}\r\n <span *ngIf=\"filter.blocksProductSelect || filter.required\">*</span>\r\n </mat-label>\r\n <mat-select [(ngModel)]=\"SelectedOptionId\" (selectionChange)=\"SelectOption()\" [disabled]=\"IsDisabled()\">\r\n <ng-container *ngFor=\"let option of filter.options\">\r\n <mat-option [value]=\"option.id\" class=\"select-mat-option\" *ngIf=\"!option.hidden\">\r\n <ng-container *ngIf=\"option.colour != null && option.colour != ''\">\r\n <span [ngStyle]=\"{'background-color': option.colour}\" class=\"colour-preview\">\r\n &nbsp;\r\n &nbsp;\r\n </span>\r\n </ng-container>\r\n <ng-container *ngIf=\"option.imagePath != null && option.imagePath != ''\">\r\n <div class=\"filter-option-image-div\">\r\n <img src=\"{{ option.imagePath }}\" class=\"filter-option-image\" />\r\n </div>\r\n </ng-container>\r\n <span class=\"name-span\">{{ TranslateService.GetActiveValue(TranslationCategory.FilterOption, TranslationSubCategory.Name, option.id) }}</span>\r\n </mat-option>\r\n </ng-container>\r\n </mat-select>\r\n </mat-form-field>\r\n <p *ngIf=\"ShowDescription()\" class=\"description-block\">{{ GetDescription() }}</p>\r\n </div>\r\n <div *ngIf=\"GetSelectedOption() != null && GetSelectedOption().colour != null && GetSelectedOption().colour != ''\">\r\n <div [ngStyle]=\"{'background-color': GetSelectedOption().colour}\" class=\"colour-preview-selected\">\r\n &nbsp;\r\n &nbsp;\r\n </div>\r\n </div>\r\n <div class=\"reset\" *ngIf=\"filter.selectedOption != 0\" (click)=\"ResetSelection()\">\r\n <mat-icon class=\"icon-position clear\" [inline]=\"true\">clear</mat-icon>\r\n </div>\r\n</div>\r\n<div *ngFor=\"let description of filter.descriptions\" class=\"description-block\">\r\n {{ description.description }}\r\n</div>\r\n", styles: ["app-fab-filter .description-block{padding-bottom:15px;font-size:12px}app-fab-filter .row{display:flex}app-fab-filter .full-width{width:100%}app-fab-filter .icon-position{margin-top:14px}app-fab-filter .select{flex:auto}app-fab-filter .reset{cursor:pointer;font-size:26px}app-fab-filter .colour-preview-selected{padding:5px;margin-left:5px;margin-top:8px;border:1px solid #000}.mat-select-min-line:first-letter{text-transform:capitalize}.filter-name:first-letter{text-transform:capitalize}.colour-preview{padding:5px;border:1px solid #000;line-height:20px;margin:10px}.name-span{line-height:52px}.select-mat-option .mat-option-text:first-letter{text-transform:capitalize}.select-mat-option .mat-option-text{display:flex}.mat-select-disabled .mat-select-arrow{display:none}.mat-select-panel-wrap{top:15px;position:relative}.mat-select-panel{max-width:100%!important}.filter-option-image{max-width:40px;max-height:40px}.filter-option-image-div{max-height:40px;padding-right:4px}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i4.MatLegacyFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLegacyLabel, selector: "mat-label" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i7.MatLegacySelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatLegacyOption, selector: "mat-option", exportAs: ["matOption"] }], encapsulation: i0.ViewEncapsulation.None });
124
124
  }
125
125
  export { FabFilterComponent };
126
126
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: FabFilterComponent, decorators: [{
127
127
  type: Component,
128
- args: [{ selector: 'app-fab-filter', encapsulation: ViewEncapsulation.None, template: "<div class=\"row\" *ngIf=\"!filter.hidden\">\r\n <div class=\"select\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label class=\"select-mat-label\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Filter, TranslationSubCategory.Name, filter.id) }}\r\n <span *ngIf=\"filter.blocksProductSelect || filter.required\">*</span>\r\n </mat-label>\r\n <mat-select [(ngModel)]=\"SelectedOptionId\" (selectionChange)=\"SelectOption()\" [disabled]=\"IsDisabled()\">\r\n <ng-container *ngFor=\"let option of filter.options\">\r\n <mat-option [value]=\"option.id\" class=\"select-mat-option\" *ngIf=\"!option.hidden\">\r\n <ng-container *ngIf=\"option.colour != null && option.colour != ''\">\r\n <span [ngStyle]=\"{'background-color': option.colour}\" class=\"colour-preview\">\r\n &nbsp;\r\n &nbsp;\r\n </span>\r\n </ng-container>\r\n <ng-container *ngIf=\"option.imagePath != null && option.imagePath != ''\">\r\n <div class=\"filter-option-image-div\">\r\n <img src=\"{{ option.imagePath }}\" class=\"filter-option-image\" />\r\n </div>\r\n </ng-container>\r\n <span class=\"name-span\">{{ TranslateService.GetActiveValue(TranslationCategory.FilterOption, TranslationSubCategory.Name, option.id) }}</span>\r\n </mat-option>\r\n </ng-container>\r\n </mat-select>\r\n </mat-form-field>\r\n <p *ngIf=\"ShowDescription()\">{{ GetDescription() }}</p>\r\n </div>\r\n <div *ngIf=\"GetSelectedOption() != null && GetSelectedOption().colour != null && GetSelectedOption().colour != ''\">\r\n <div [ngStyle]=\"{'background-color': GetSelectedOption().colour}\" class=\"colour-preview-selected\">\r\n &nbsp;\r\n &nbsp;\r\n </div>\r\n </div>\r\n <div class=\"reset\" *ngIf=\"filter.selectedOption != 0\" (click)=\"ResetSelection()\">\r\n <mat-icon class=\"icon-position clear\" [inline]=\"true\">clear</mat-icon>\r\n </div>\r\n</div>\r\n<div *ngFor=\"let description of filter.descriptions\" class=\"description-block\">\r\n {{ description.description }}\r\n</div>\r\n", styles: ["app-fab-filter .select-mat-label:first-letter{text-transform:capitalize}app-fab-filter .mat-select-min-line:first-letter{text-transform:capitalize}app-fab-filter .description-block{padding-bottom:15px;font-size:12px}app-fab-filter .row{display:flex}app-fab-filter .full-width{width:100%}app-fab-filter .icon-position{margin-top:14px}app-fab-filter .select{flex:auto}app-fab-filter .reset{cursor:pointer;font-size:26px}app-fab-filter .colour-preview-selected{padding:5px;margin-left:5px;margin-top:8px;border:1px solid #000}.colour-preview{padding:5px;border:1px solid #000;line-height:20px;margin:10px}.name-span{line-height:52px}.select-mat-option .mat-option-text:first-letter{text-transform:capitalize}.select-mat-option .mat-option-text{display:flex}.mat-select-disabled .mat-select-arrow{display:none}.mat-select-panel-wrap{top:15px;position:relative}.mat-select-panel{max-width:100%!important}.filter-option-image{max-width:40px;max-height:40px}.filter-option-image-div{max-height:40px;padding-right:4px}\n"] }]
128
+ args: [{ selector: 'app-fab-filter', encapsulation: ViewEncapsulation.None, template: "<div class=\"row\" *ngIf=\"!filter.hidden\">\r\n <div class=\"select\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label class=\"select-mat-label filter-name\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Filter, TranslationSubCategory.Name, filter.id) }}\r\n <span *ngIf=\"filter.blocksProductSelect || filter.required\">*</span>\r\n </mat-label>\r\n <mat-select [(ngModel)]=\"SelectedOptionId\" (selectionChange)=\"SelectOption()\" [disabled]=\"IsDisabled()\">\r\n <ng-container *ngFor=\"let option of filter.options\">\r\n <mat-option [value]=\"option.id\" class=\"select-mat-option\" *ngIf=\"!option.hidden\">\r\n <ng-container *ngIf=\"option.colour != null && option.colour != ''\">\r\n <span [ngStyle]=\"{'background-color': option.colour}\" class=\"colour-preview\">\r\n &nbsp;\r\n &nbsp;\r\n </span>\r\n </ng-container>\r\n <ng-container *ngIf=\"option.imagePath != null && option.imagePath != ''\">\r\n <div class=\"filter-option-image-div\">\r\n <img src=\"{{ option.imagePath }}\" class=\"filter-option-image\" />\r\n </div>\r\n </ng-container>\r\n <span class=\"name-span\">{{ TranslateService.GetActiveValue(TranslationCategory.FilterOption, TranslationSubCategory.Name, option.id) }}</span>\r\n </mat-option>\r\n </ng-container>\r\n </mat-select>\r\n </mat-form-field>\r\n <p *ngIf=\"ShowDescription()\" class=\"description-block\">{{ GetDescription() }}</p>\r\n </div>\r\n <div *ngIf=\"GetSelectedOption() != null && GetSelectedOption().colour != null && GetSelectedOption().colour != ''\">\r\n <div [ngStyle]=\"{'background-color': GetSelectedOption().colour}\" class=\"colour-preview-selected\">\r\n &nbsp;\r\n &nbsp;\r\n </div>\r\n </div>\r\n <div class=\"reset\" *ngIf=\"filter.selectedOption != 0\" (click)=\"ResetSelection()\">\r\n <mat-icon class=\"icon-position clear\" [inline]=\"true\">clear</mat-icon>\r\n </div>\r\n</div>\r\n<div *ngFor=\"let description of filter.descriptions\" class=\"description-block\">\r\n {{ description.description }}\r\n</div>\r\n", styles: ["app-fab-filter .description-block{padding-bottom:15px;font-size:12px}app-fab-filter .row{display:flex}app-fab-filter .full-width{width:100%}app-fab-filter .icon-position{margin-top:14px}app-fab-filter .select{flex:auto}app-fab-filter .reset{cursor:pointer;font-size:26px}app-fab-filter .colour-preview-selected{padding:5px;margin-left:5px;margin-top:8px;border:1px solid #000}.mat-select-min-line:first-letter{text-transform:capitalize}.filter-name:first-letter{text-transform:capitalize}.colour-preview{padding:5px;border:1px solid #000;line-height:20px;margin:10px}.name-span{line-height:52px}.select-mat-option .mat-option-text:first-letter{text-transform:capitalize}.select-mat-option .mat-option-text{display:flex}.mat-select-disabled .mat-select-arrow{display:none}.mat-select-panel-wrap{top:15px;position:relative}.mat-select-panel{max-width:100%!important}.filter-option-image{max-width:40px;max-height:40px}.filter-option-image-div{max-height:40px;padding-right:4px}\n"] }]
129
129
  }], ctorParameters: function () { return [{ type: i1.FabrikantenService }, { type: i2.TranslateService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { filter: [{
130
130
  type: Input
131
131
  }], filterchanged: [{
132
132
  type: Output
133
133
  }] } });
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFiLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvZmFicmlrYW50ZW5jb3JlL2NvbXBvbmVudHMvZmFiLWZpbHRlci9mYWItZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9mYWJyaWthbnRlbmNvcmUvY29tcG9uZW50cy9mYWItZmlsdGVyL2ZhYi1maWx0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHckgsT0FBTyxFQUFnRSxtQkFBbUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7Ozs7Ozs7O0FBRXhKLE1BTWEsa0JBQWtCO0lBK0JuQjtJQUNEO0lBQ0M7SUFoQ0gsZ0JBQWdCLENBQVM7SUFFaEMsT0FBTyxDQUE2QjtJQUNwQyxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVELElBQWEsTUFBTSxDQUFDLEtBQWlDO1FBQ25ELElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQztRQUVwRCxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxDQUFDLEVBQUU7WUFDOUIsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7WUFDbkMsSUFBSSxPQUFPLElBQUksSUFBSSxJQUFJLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFO2dCQUMxQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLENB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TUFBTSxHQUFHLENBQUMsRUFBRTtvQkFDbEQsSUFBSSxNQUFNLElBQUksRUFBRSxFQUFFO3dCQUNoQixNQUFNLElBQUksR0FBRyxDQUFDO3FCQUNmO29CQUVELE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7aUJBQ3hDO2FBQ0Y7U0FDRjtRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7dUdBdElVLGtCQUFrQjsyRkFBbEIsa0JBQWtCLGlJQ1gvQixpc0VBeUNBOztTRDlCYSxrQkFBa0I7MkZBQWxCLGtCQUFrQjtrQkFOOUIsU0FBUzsrQkFDRSxnQkFBZ0IsaUJBR1gsaUJBQWlCLENBQUMsSUFBSTt3S0FVeEIsTUFBTTtzQkFBbEIsS0FBSztnQkFZSSxhQUFhO3NCQUF0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZhYnJpa2FudGVuU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2ZhYnJpa2FudGVuLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdHJhbnNsYXRlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBGYWJyaWthbnRlbkZpbHRlck9wdGlvblZpZXdNb2RlbCwgRmFicmlrYW50ZW5GaWx0ZXJWaWV3TW9kZWwsIFRyYW5zbGF0aW9uQ2F0ZWdvcnksIFRyYW5zbGF0aW9uU3ViQ2F0ZWdvcnkgfSBmcm9tICcuLi8uLi9zd2FnZ2VyL1N3YWdnZXJDbGllbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtZmFiLWZpbHRlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2ZhYi1maWx0ZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2ZhYi1maWx0ZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGYWJGaWx0ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHB1YmxpYyBTZWxlY3RlZE9wdGlvbklkOiBudW1iZXI7XHJcblxyXG4gIF9maWx0ZXI6IEZhYnJpa2FudGVuRmlsdGVyVmlld01vZGVsO1xyXG4gIGdldCBmaWx0ZXIoKTogRmFicmlrYW50ZW5GaWx0ZXJWaWV3TW9kZWwge1xyXG4gICAgcmV0dXJuIHRoaXMuX2ZpbHRlcjtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpIHNldCBmaWx0ZXIodmFsdWU6IEZhYnJpa2FudGVuRmlsdGVyVmlld01vZGVsKSB7XHJcbiAgICB0aGlzLl9maWx0ZXIgPSB2YWx1ZTtcclxuICAgIHRoaXMuU2VsZWN0ZWRPcHRpb25JZCA9IHRoaXMuX2ZpbHRlci5zZWxlY3RlZE9wdGlvbjtcclxuXHJcbiAgICBpZiAodGhpcy5TZWxlY3RlZE9wdGlvbklkID09IDApIHtcclxuICAgICAgdmFyIG9wdGlvbnMgPSB0aGlzLl9maWx0ZXIub3B0aW9ucztcclxuICAgICAgaWYgKG9wdGlvbnMgIT0gbnVsbCAmJiBvcHRpb25zLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgdGhpcy5TZWxlY3RlZE9wdGlvbklkID0gb3B0aW9uc1swXS5pZDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQE91dHB1dCgpIGZpbHRlcmNoYW5nZWQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgcHVibGljIGdldCBUcmFuc2xhdGlvbkNhdGVnb3J5KCkge1xyXG4gICAgcmV0dXJuIFRyYW5zbGF0aW9uQ2F0ZWdvcnk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IFRyYW5zbGF0aW9uU3ViQ2F0ZWdvcnkoKSB7XHJcbiAgICByZXR1cm4gVHJhbnNsYXRpb25TdWJDYXRlZ29yeTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBGYWJyaWthbnRlblNlcnZpY2U6IEZhYnJpa2FudGVuU2VydmljZSxcclxuICAgIHB1YmxpYyBUcmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBDaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBTZWxlY3RPcHRpb24oKTogdm9pZCB7XHJcbiAgICB0aGlzLkZhYnJpa2FudGVuU2VydmljZS5TZWxlY3RPcHRpb24odGhpcy5maWx0ZXIuaWQsIHRoaXMuU2VsZWN0ZWRPcHRpb25JZCwgdGhpcy5DaGFuZ2VEZXRlY3RvclJlZik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgUmVzZXRTZWxlY3Rpb24oKTogdm9pZCB7XHJcbiAgICB0aGlzLkZhYnJpa2FudGVuU2VydmljZS5SZXNldFNlbGVjdGlvbkZpbHRlcih0aGlzLmZpbHRlciwgdGhpcy5DaGFuZ2VEZXRlY3RvclJlZik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgSXNEaXNhYmxlZCgpOiBib29sZWFuIHtcclxuXHJcbiAgICBpZiAodGhpcy5maWx0ZXIuc2VsZWN0ZWRPcHRpb24gIT0gMCkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5maWx0ZXIub3B0aW9ucz8ubGVuZ3RoID09IDEpIHtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIFNob3dEZXNjcmlwdGlvbigpOiBib29sZWFuIHtcclxuICAgIGlmICh0aGlzLl9maWx0ZXIuZGVzY3JpcHRpb24gIT0gbnVsbCkge1xyXG5cclxuICAgICAgaWYgKHRoaXMuX2ZpbHRlci5kZXNjcmlwdGlvbi5pbmRleE9mKFwiI3tTY2h1aWZncmVuZGVsIG1ldCBoYW5nc2xvdH1cIikgIT0gLTEpIHtcclxuICAgICAgICBpZiAodGhpcy5fZmlsdGVyLm9wdGlvbnMgIT0gbnVsbCkge1xyXG4gICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLl9maWx0ZXIub3B0aW9ucy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5fZmlsdGVyLm9wdGlvbnNbaV0ubmFtZT8udG9Mb2NhbGVMb3dlckNhc2UoKSA9PSBcInNjaHVpZmdyZW5kZWwgbWV0IGhhbmdzbG90XCIpIHtcclxuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAodGhpcy5fZmlsdGVyLmRlc2NyaXB0aW9uLmluZGV4T2YoXCIje0dldEFsbE9wdGlvbnNFeGNlcHRGaXJzdEFuZExhc3R9XCIpICE9IC0xKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuX2ZpbHRlci5vcHRpb25zICE9IG51bGwpIHtcclxuICAgICAgICAgIGlmICh0aGlzLl9maWx0ZXIub3B0aW9ucy5sZW5ndGggPCAyKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBHZXREZXNjcmlwdGlvbigpOiBzdHJpbmcge1xyXG4gICAgdmFyIHJlc3VsdCA9IFwiXCI7XHJcbiAgICBpZiAodGhpcy5fZmlsdGVyLmRlc2NyaXB0aW9uICE9IG51bGwpIHtcclxuICAgICAgcmVzdWx0ID0gdGhpcy5fZmlsdGVyLmRlc2NyaXB0aW9uLnJlcGxhY2UoXCIje1NjaHVpZmdyZW5kZWwgbWV0IGhhbmdzbG90fVwiLCBcIlwiKTtcclxuXHJcbiAgICAgIGlmIChyZXN1bHQuaW5kZXhPZihcIiN7R2V0QWxsT3B0aW9uc0V4Y2VwdEZpcnN0QW5kTGFzdH1cIikgIT0gLTEpIHtcclxuICAgICAgICByZXN1bHQgPSB0aGlzLl9maWx0ZXIuZGVzY3JpcHRpb24ucmVwbGFjZShcIiN7R2V0QWxsT3B0aW9uc0V4Y2VwdEZpcnN0QW5kTGFzdH1cIiwgdGhpcy5HZXRBbGxPcHRpb25zRXhjZXB0Rmlyc3RBbmRMYXN0KCkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBHZXRTZWxlY3RlZE9wdGlvbigpOiBGYWJyaWthbnRlbkZpbHRlck9wdGlvblZpZXdNb2RlbCB8IG51bGwge1xyXG4gICAgaWYgKHRoaXMuX2ZpbHRlci5vcHRpb25zICE9IG51bGwpIHtcclxuICAgICAgaWYgKHRoaXMuX2ZpbHRlci5vcHRpb25zLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbHRlci5vcHRpb25zWzBdO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5fZmlsdGVyLm9wdGlvbnMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgIGlmICh0aGlzLl9maWx0ZXIuc2VsZWN0ZWRPcHRpb24gPT0gdGhpcy5fZmlsdGVyLm9wdGlvbnNbaV0uaWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbHRlci5vcHRpb25zW2ldO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBHZXRBbGxPcHRpb25zRXhjZXB0Rmlyc3RBbmRMYXN0KCk6IHN0cmluZyB7XHJcbiAgICB2YXIgcmVzdWx0ID0gXCJcIjtcclxuXHJcbiAgICBpZiAodGhpcy5fZmlsdGVyLm9wdGlvbnMgIT0gbnVsbCkge1xyXG4gICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMuX2ZpbHRlci5vcHRpb25zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgaWYgKGkgIT0gMCAmJiBpICE9IHRoaXMuX2ZpbHRlci5vcHRpb25zLmxlbmd0aCAtIDEpIHtcclxuICAgICAgICAgIGlmIChyZXN1bHQgIT0gXCJcIikge1xyXG4gICAgICAgICAgICByZXN1bHQgKz0gXCIsXCI7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgcmVzdWx0ICs9IHRoaXMuX2ZpbHRlci5vcHRpb25zW2ldLm5hbWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInJvd1wiICpuZ0lmPVwiIWZpbHRlci5oaWRkZW5cIj5cclxuICA8ZGl2IGNsYXNzPVwic2VsZWN0XCI+XHJcbiAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cImZpbGxcIiBjbGFzcz1cImZ1bGwtd2lkdGhcIj5cclxuICAgICAgPG1hdC1sYWJlbCBjbGFzcz1cInNlbGVjdC1tYXQtbGFiZWxcIj5cclxuICAgICAgICB7eyBUcmFuc2xhdGVTZXJ2aWNlLkdldEFjdGl2ZVZhbHVlKFRyYW5zbGF0aW9uQ2F0ZWdvcnkuRmlsdGVyLCBUcmFuc2xhdGlvblN1YkNhdGVnb3J5Lk5hbWUsIGZpbHRlci5pZCkgfX1cclxuICAgICAgICA8c3BhbiAqbmdJZj1cImZpbHRlci5ibG9ja3NQcm9kdWN0U2VsZWN0IHx8IGZpbHRlci5yZXF1aXJlZFwiPio8L3NwYW4+XHJcbiAgICAgIDwvbWF0LWxhYmVsPlxyXG4gICAgICA8bWF0LXNlbGVjdCBbKG5nTW9kZWwpXT1cIlNlbGVjdGVkT3B0aW9uSWRcIiAoc2VsZWN0aW9uQ2hhbmdlKT1cIlNlbGVjdE9wdGlvbigpXCIgW2Rpc2FibGVkXT1cIklzRGlzYWJsZWQoKVwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBmaWx0ZXIub3B0aW9uc1wiPlxyXG4gICAgICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cIm9wdGlvbi5pZFwiIGNsYXNzPVwic2VsZWN0LW1hdC1vcHRpb25cIiAqbmdJZj1cIiFvcHRpb24uaGlkZGVuXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvcHRpb24uY29sb3VyICE9IG51bGwgJiYgb3B0aW9uLmNvbG91ciAhPSAnJ1wiPlxyXG4gICAgICAgICAgICAgIDxzcGFuIFtuZ1N0eWxlXT1cInsnYmFja2dyb3VuZC1jb2xvcic6IG9wdGlvbi5jb2xvdXJ9XCIgY2xhc3M9XCJjb2xvdXItcHJldmlld1wiPlxyXG4gICAgICAgICAgICAgICAgJm5ic3A7XHJcbiAgICAgICAgICAgICAgICAmbmJzcDtcclxuICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwib3B0aW9uLmltYWdlUGF0aCAhPSBudWxsICYmIG9wdGlvbi5pbWFnZVBhdGggIT0gJydcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLW9wdGlvbi1pbWFnZS1kaXZcIj5cclxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwie3sgb3B0aW9uLmltYWdlUGF0aCB9fVwiIGNsYXNzPVwiZmlsdGVyLW9wdGlvbi1pbWFnZVwiIC8+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm5hbWUtc3BhblwiPnt7IFRyYW5zbGF0ZVNlcnZpY2UuR2V0QWN0aXZlVmFsdWUoVHJhbnNsYXRpb25DYXRlZ29yeS5GaWx0ZXJPcHRpb24sIFRyYW5zbGF0aW9uU3ViQ2F0ZWdvcnkuTmFtZSwgb3B0aW9uLmlkKSB9fTwvc3Bhbj5cclxuICAgICAgICAgIDwvbWF0LW9wdGlvbj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgIDxwICpuZ0lmPVwiU2hvd0Rlc2NyaXB0aW9uKClcIj57eyBHZXREZXNjcmlwdGlvbigpIH19PC9wPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgKm5nSWY9XCJHZXRTZWxlY3RlZE9wdGlvbigpICE9IG51bGwgJiYgR2V0U2VsZWN0ZWRPcHRpb24oKS5jb2xvdXIgIT0gbnVsbCAmJiBHZXRTZWxlY3RlZE9wdGlvbigpLmNvbG91ciAhPSAnJ1wiPlxyXG4gICAgPGRpdiBbbmdTdHlsZV09XCJ7J2JhY2tncm91bmQtY29sb3InOiBHZXRTZWxlY3RlZE9wdGlvbigpLmNvbG91cn1cIiBjbGFzcz1cImNvbG91ci1wcmV2aWV3LXNlbGVjdGVkXCI+XHJcbiAgICAgICZuYnNwO1xyXG4gICAgICAmbmJzcDtcclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJyZXNldFwiICpuZ0lmPVwiZmlsdGVyLnNlbGVjdGVkT3B0aW9uICE9IDBcIiAoY2xpY2spPVwiUmVzZXRTZWxlY3Rpb24oKVwiPlxyXG4gICAgPG1hdC1pY29uIGNsYXNzPVwiaWNvbi1wb3NpdGlvbiBjbGVhclwiIFtpbmxpbmVdPVwidHJ1ZVwiPmNsZWFyPC9tYXQtaWNvbj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbjxkaXYgKm5nRm9yPVwibGV0IGRlc2NyaXB0aW9uIG9mIGZpbHRlci5kZXNjcmlwdGlvbnNcIiBjbGFzcz1cImRlc2NyaXB0aW9uLWJsb2NrXCI+XHJcbiAge3sgZGVzY3JpcHRpb24uZGVzY3JpcHRpb24gfX1cclxuPC9kaXY+XHJcbiJdfQ==
134
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFiLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvZmFicmlrYW50ZW5jb3JlL2NvbXBvbmVudHMvZmFiLWZpbHRlci9mYWItZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9mYWJyaWthbnRlbmNvcmUvY29tcG9uZW50cy9mYWItZmlsdGVyL2ZhYi1maWx0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHckgsT0FBTyxFQUFnRSxtQkFBbUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7Ozs7Ozs7O0FBRXhKLE1BTWEsa0JBQWtCO0lBK0JuQjtJQUNEO0lBQ0M7SUFoQ0gsZ0JBQWdCLENBQVM7SUFFaEMsT0FBTyxDQUE2QjtJQUNwQyxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVELElBQWEsTUFBTSxDQUFDLEtBQWlDO1FBQ25ELElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQztRQUVwRCxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxDQUFDLEVBQUU7WUFDOUIsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7WUFDbkMsSUFBSSxPQUFPLElBQUksSUFBSSxJQUFJLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFO2dCQUMxQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLENB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TUFBTSxHQUFHLENBQUMsRUFBRTtvQkFDbEQsSUFBSSxNQUFNLElBQUksRUFBRSxFQUFFO3dCQUNoQixNQUFNLElBQUksR0FBRyxDQUFDO3FCQUNmO29CQUVELE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7aUJBQ3hDO2FBQ0Y7U0FDRjtRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7dUdBdElVLGtCQUFrQjsyRkFBbEIsa0JBQWtCLGlJQ1gvQix5dUVBeUNBOztTRDlCYSxrQkFBa0I7MkZBQWxCLGtCQUFrQjtrQkFOOUIsU0FBUzsrQkFDRSxnQkFBZ0IsaUJBR1gsaUJBQWlCLENBQUMsSUFBSTt3S0FVeEIsTUFBTTtzQkFBbEIsS0FBSztnQkFZSSxhQUFhO3NCQUF0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZhYnJpa2FudGVuU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2ZhYnJpa2FudGVuLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdHJhbnNsYXRlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBGYWJyaWthbnRlbkZpbHRlck9wdGlvblZpZXdNb2RlbCwgRmFicmlrYW50ZW5GaWx0ZXJWaWV3TW9kZWwsIFRyYW5zbGF0aW9uQ2F0ZWdvcnksIFRyYW5zbGF0aW9uU3ViQ2F0ZWdvcnkgfSBmcm9tICcuLi8uLi9zd2FnZ2VyL1N3YWdnZXJDbGllbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtZmFiLWZpbHRlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2ZhYi1maWx0ZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2ZhYi1maWx0ZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGYWJGaWx0ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHB1YmxpYyBTZWxlY3RlZE9wdGlvbklkOiBudW1iZXI7XHJcblxyXG4gIF9maWx0ZXI6IEZhYnJpa2FudGVuRmlsdGVyVmlld01vZGVsO1xyXG4gIGdldCBmaWx0ZXIoKTogRmFicmlrYW50ZW5GaWx0ZXJWaWV3TW9kZWwge1xyXG4gICAgcmV0dXJuIHRoaXMuX2ZpbHRlcjtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpIHNldCBmaWx0ZXIodmFsdWU6IEZhYnJpa2FudGVuRmlsdGVyVmlld01vZGVsKSB7XHJcbiAgICB0aGlzLl9maWx0ZXIgPSB2YWx1ZTtcclxuICAgIHRoaXMuU2VsZWN0ZWRPcHRpb25JZCA9IHRoaXMuX2ZpbHRlci5zZWxlY3RlZE9wdGlvbjtcclxuXHJcbiAgICBpZiAodGhpcy5TZWxlY3RlZE9wdGlvbklkID09IDApIHtcclxuICAgICAgdmFyIG9wdGlvbnMgPSB0aGlzLl9maWx0ZXIub3B0aW9ucztcclxuICAgICAgaWYgKG9wdGlvbnMgIT0gbnVsbCAmJiBvcHRpb25zLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgdGhpcy5TZWxlY3RlZE9wdGlvbklkID0gb3B0aW9uc1swXS5pZDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQE91dHB1dCgpIGZpbHRlcmNoYW5nZWQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgcHVibGljIGdldCBUcmFuc2xhdGlvbkNhdGVnb3J5KCkge1xyXG4gICAgcmV0dXJuIFRyYW5zbGF0aW9uQ2F0ZWdvcnk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IFRyYW5zbGF0aW9uU3ViQ2F0ZWdvcnkoKSB7XHJcbiAgICByZXR1cm4gVHJhbnNsYXRpb25TdWJDYXRlZ29yeTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBGYWJyaWthbnRlblNlcnZpY2U6IEZhYnJpa2FudGVuU2VydmljZSxcclxuICAgIHB1YmxpYyBUcmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBDaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBTZWxlY3RPcHRpb24oKTogdm9pZCB7XHJcbiAgICB0aGlzLkZhYnJpa2FudGVuU2VydmljZS5TZWxlY3RPcHRpb24odGhpcy5maWx0ZXIuaWQsIHRoaXMuU2VsZWN0ZWRPcHRpb25JZCwgdGhpcy5DaGFuZ2VEZXRlY3RvclJlZik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgUmVzZXRTZWxlY3Rpb24oKTogdm9pZCB7XHJcbiAgICB0aGlzLkZhYnJpa2FudGVuU2VydmljZS5SZXNldFNlbGVjdGlvbkZpbHRlcih0aGlzLmZpbHRlciwgdGhpcy5DaGFuZ2VEZXRlY3RvclJlZik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgSXNEaXNhYmxlZCgpOiBib29sZWFuIHtcclxuXHJcbiAgICBpZiAodGhpcy5maWx0ZXIuc2VsZWN0ZWRPcHRpb24gIT0gMCkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5maWx0ZXIub3B0aW9ucz8ubGVuZ3RoID09IDEpIHtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIFNob3dEZXNjcmlwdGlvbigpOiBib29sZWFuIHtcclxuICAgIGlmICh0aGlzLl9maWx0ZXIuZGVzY3JpcHRpb24gIT0gbnVsbCkge1xyXG5cclxuICAgICAgaWYgKHRoaXMuX2ZpbHRlci5kZXNjcmlwdGlvbi5pbmRleE9mKFwiI3tTY2h1aWZncmVuZGVsIG1ldCBoYW5nc2xvdH1cIikgIT0gLTEpIHtcclxuICAgICAgICBpZiAodGhpcy5fZmlsdGVyLm9wdGlvbnMgIT0gbnVsbCkge1xyXG4gICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLl9maWx0ZXIub3B0aW9ucy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5fZmlsdGVyLm9wdGlvbnNbaV0ubmFtZT8udG9Mb2NhbGVMb3dlckNhc2UoKSA9PSBcInNjaHVpZmdyZW5kZWwgbWV0IGhhbmdzbG90XCIpIHtcclxuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAodGhpcy5fZmlsdGVyLmRlc2NyaXB0aW9uLmluZGV4T2YoXCIje0dldEFsbE9wdGlvbnNFeGNlcHRGaXJzdEFuZExhc3R9XCIpICE9IC0xKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuX2ZpbHRlci5vcHRpb25zICE9IG51bGwpIHtcclxuICAgICAgICAgIGlmICh0aGlzLl9maWx0ZXIub3B0aW9ucy5sZW5ndGggPCAyKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBHZXREZXNjcmlwdGlvbigpOiBzdHJpbmcge1xyXG4gICAgdmFyIHJlc3VsdCA9IFwiXCI7XHJcbiAgICBpZiAodGhpcy5fZmlsdGVyLmRlc2NyaXB0aW9uICE9IG51bGwpIHtcclxuICAgICAgcmVzdWx0ID0gdGhpcy5fZmlsdGVyLmRlc2NyaXB0aW9uLnJlcGxhY2UoXCIje1NjaHVpZmdyZW5kZWwgbWV0IGhhbmdzbG90fVwiLCBcIlwiKTtcclxuXHJcbiAgICAgIGlmIChyZXN1bHQuaW5kZXhPZihcIiN7R2V0QWxsT3B0aW9uc0V4Y2VwdEZpcnN0QW5kTGFzdH1cIikgIT0gLTEpIHtcclxuICAgICAgICByZXN1bHQgPSB0aGlzLl9maWx0ZXIuZGVzY3JpcHRpb24ucmVwbGFjZShcIiN7R2V0QWxsT3B0aW9uc0V4Y2VwdEZpcnN0QW5kTGFzdH1cIiwgdGhpcy5HZXRBbGxPcHRpb25zRXhjZXB0Rmlyc3RBbmRMYXN0KCkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBHZXRTZWxlY3RlZE9wdGlvbigpOiBGYWJyaWthbnRlbkZpbHRlck9wdGlvblZpZXdNb2RlbCB8IG51bGwge1xyXG4gICAgaWYgKHRoaXMuX2ZpbHRlci5vcHRpb25zICE9IG51bGwpIHtcclxuICAgICAgaWYgKHRoaXMuX2ZpbHRlci5vcHRpb25zLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbHRlci5vcHRpb25zWzBdO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5fZmlsdGVyLm9wdGlvbnMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgIGlmICh0aGlzLl9maWx0ZXIuc2VsZWN0ZWRPcHRpb24gPT0gdGhpcy5fZmlsdGVyLm9wdGlvbnNbaV0uaWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbHRlci5vcHRpb25zW2ldO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBHZXRBbGxPcHRpb25zRXhjZXB0Rmlyc3RBbmRMYXN0KCk6IHN0cmluZyB7XHJcbiAgICB2YXIgcmVzdWx0ID0gXCJcIjtcclxuXHJcbiAgICBpZiAodGhpcy5fZmlsdGVyLm9wdGlvbnMgIT0gbnVsbCkge1xyXG4gICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMuX2ZpbHRlci5vcHRpb25zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgaWYgKGkgIT0gMCAmJiBpICE9IHRoaXMuX2ZpbHRlci5vcHRpb25zLmxlbmd0aCAtIDEpIHtcclxuICAgICAgICAgIGlmIChyZXN1bHQgIT0gXCJcIikge1xyXG4gICAgICAgICAgICByZXN1bHQgKz0gXCIsXCI7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgcmVzdWx0ICs9IHRoaXMuX2ZpbHRlci5vcHRpb25zW2ldLm5hbWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInJvd1wiICpuZ0lmPVwiIWZpbHRlci5oaWRkZW5cIj5cclxuICA8ZGl2IGNsYXNzPVwic2VsZWN0XCI+XHJcbiAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cImZpbGxcIiBjbGFzcz1cImZ1bGwtd2lkdGhcIj5cclxuICAgICAgPG1hdC1sYWJlbCBjbGFzcz1cInNlbGVjdC1tYXQtbGFiZWwgZmlsdGVyLW5hbWVcIj5cclxuICAgICAgICB7eyBUcmFuc2xhdGVTZXJ2aWNlLkdldEFjdGl2ZVZhbHVlKFRyYW5zbGF0aW9uQ2F0ZWdvcnkuRmlsdGVyLCBUcmFuc2xhdGlvblN1YkNhdGVnb3J5Lk5hbWUsIGZpbHRlci5pZCkgfX1cclxuICAgICAgICA8c3BhbiAqbmdJZj1cImZpbHRlci5ibG9ja3NQcm9kdWN0U2VsZWN0IHx8IGZpbHRlci5yZXF1aXJlZFwiPio8L3NwYW4+XHJcbiAgICAgIDwvbWF0LWxhYmVsPlxyXG4gICAgICA8bWF0LXNlbGVjdCBbKG5nTW9kZWwpXT1cIlNlbGVjdGVkT3B0aW9uSWRcIiAoc2VsZWN0aW9uQ2hhbmdlKT1cIlNlbGVjdE9wdGlvbigpXCIgW2Rpc2FibGVkXT1cIklzRGlzYWJsZWQoKVwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBmaWx0ZXIub3B0aW9uc1wiPlxyXG4gICAgICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cIm9wdGlvbi5pZFwiIGNsYXNzPVwic2VsZWN0LW1hdC1vcHRpb25cIiAqbmdJZj1cIiFvcHRpb24uaGlkZGVuXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvcHRpb24uY29sb3VyICE9IG51bGwgJiYgb3B0aW9uLmNvbG91ciAhPSAnJ1wiPlxyXG4gICAgICAgICAgICAgIDxzcGFuIFtuZ1N0eWxlXT1cInsnYmFja2dyb3VuZC1jb2xvcic6IG9wdGlvbi5jb2xvdXJ9XCIgY2xhc3M9XCJjb2xvdXItcHJldmlld1wiPlxyXG4gICAgICAgICAgICAgICAgJm5ic3A7XHJcbiAgICAgICAgICAgICAgICAmbmJzcDtcclxuICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwib3B0aW9uLmltYWdlUGF0aCAhPSBudWxsICYmIG9wdGlvbi5pbWFnZVBhdGggIT0gJydcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLW9wdGlvbi1pbWFnZS1kaXZcIj5cclxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwie3sgb3B0aW9uLmltYWdlUGF0aCB9fVwiIGNsYXNzPVwiZmlsdGVyLW9wdGlvbi1pbWFnZVwiIC8+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm5hbWUtc3BhblwiPnt7IFRyYW5zbGF0ZVNlcnZpY2UuR2V0QWN0aXZlVmFsdWUoVHJhbnNsYXRpb25DYXRlZ29yeS5GaWx0ZXJPcHRpb24sIFRyYW5zbGF0aW9uU3ViQ2F0ZWdvcnkuTmFtZSwgb3B0aW9uLmlkKSB9fTwvc3Bhbj5cclxuICAgICAgICAgIDwvbWF0LW9wdGlvbj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgIDxwICpuZ0lmPVwiU2hvd0Rlc2NyaXB0aW9uKClcIiBjbGFzcz1cImRlc2NyaXB0aW9uLWJsb2NrXCI+e3sgR2V0RGVzY3JpcHRpb24oKSB9fTwvcD5cclxuICA8L2Rpdj5cclxuICA8ZGl2ICpuZ0lmPVwiR2V0U2VsZWN0ZWRPcHRpb24oKSAhPSBudWxsICYmIEdldFNlbGVjdGVkT3B0aW9uKCkuY29sb3VyICE9IG51bGwgJiYgR2V0U2VsZWN0ZWRPcHRpb24oKS5jb2xvdXIgIT0gJydcIj5cclxuICAgIDxkaXYgW25nU3R5bGVdPVwieydiYWNrZ3JvdW5kLWNvbG9yJzogR2V0U2VsZWN0ZWRPcHRpb24oKS5jb2xvdXJ9XCIgY2xhc3M9XCJjb2xvdXItcHJldmlldy1zZWxlY3RlZFwiPlxyXG4gICAgICAmbmJzcDtcclxuICAgICAgJm5ic3A7XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwicmVzZXRcIiAqbmdJZj1cImZpbHRlci5zZWxlY3RlZE9wdGlvbiAhPSAwXCIgKGNsaWNrKT1cIlJlc2V0U2VsZWN0aW9uKClcIj5cclxuICAgIDxtYXQtaWNvbiBjbGFzcz1cImljb24tcG9zaXRpb24gY2xlYXJcIiBbaW5saW5lXT1cInRydWVcIj5jbGVhcjwvbWF0LWljb24+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG48ZGl2ICpuZ0Zvcj1cImxldCBkZXNjcmlwdGlvbiBvZiBmaWx0ZXIuZGVzY3JpcHRpb25zXCIgY2xhc3M9XCJkZXNjcmlwdGlvbi1ibG9ja1wiPlxyXG4gIHt7IGRlc2NyaXB0aW9uLmRlc2NyaXB0aW9uIH19XHJcbjwvZGl2PlxyXG4iXX0=
@@ -36,12 +36,12 @@ class FabFiltersComponent {
36
36
  return this.FabrikantenService.Loading || this.TranslateService.Loading;
37
37
  }
38
38
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: FabFiltersComponent, deps: [{ token: i1.MobileService }, { token: i2.FabrikantenService }, { token: i3.BestekService }, { token: i4.TranslateService }, { token: i5.ActivatedRoute }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
39
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: FabFiltersComponent, selector: "fab-filters", host: { listeners: { "window:resize": "onResize($event)" } }, ngImport: i0, template: "<!--<div *ngIf=\"FabrikantenService.Loading\" class=\"loader\">\r\n <mat-card class=\"loader-card\">\r\n <mat-card-content>\r\n <mat-spinner class=\"loader-spinner\" [diameter]=\"80\"></mat-spinner>\r\n </mat-card-content>\r\n <mat-card-subtitle class=\"loader-subtitle\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, \"Products loading\") }}\r\n </mat-card-subtitle>\r\n </mat-card>\r\n</div>\r\n\r\n<mat-drawer-container class=\"view-container\" *ngIf=\"FabrikantenService.FabrikantenViewModel != null\">\r\n <mat-drawer #drawer [mode]=\"MobileService.NavMode\" [(opened)]=\"MobileService.NavOpened\">\r\n <div class=\"filter-view\">\r\n <fab-filters-input></fab-filters-input>\r\n </div>\r\n </mat-drawer>\r\n <mat-drawer-content class=\"view-content\">\r\n <div class=\"product-view\">\r\n <fab-filters-overview></fab-filters-overview>\r\n </div>\r\n </mat-drawer-content>\r\n</mat-drawer-container>-->\r\n", styles: [".row{display:flex}.loader-card{margin:auto;width:300px}.loader-subtitle{text-align:center}.loader-spinner{margin:auto}.view-content{background-color:#fff}.loader{position:absolute;display:flex;align-items:center;z-index:20;background-color:#ffffffb3;top:0;left:0}.filter-view{width:300px;min-width:300px;background-color:#fafafa}.product-view{flex:auto}\n"] });
39
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: FabFiltersComponent, selector: "fab-filters", host: { listeners: { "window:resize": "onResize($event)" } }, ngImport: i0, template: "<!--<div *ngIf=\"FabrikantenService.Loading\" class=\"loader\">\r\n <mat-card class=\"loader-card\">\r\n <mat-card-content>\r\n <mat-spinner class=\"loader-spinner\" [diameter]=\"80\"></mat-spinner>\r\n </mat-card-content>\r\n <mat-card-subtitle class=\"loader-subtitle\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, \"Products loading\") }}\r\n </mat-card-subtitle>\r\n </mat-card>\r\n</div>\r\n\r\n<mat-drawer-container class=\"view-container\" *ngIf=\"FabrikantenService.FabrikantenViewModel != null\">\r\n <mat-drawer #drawer [mode]=\"MobileService.NavMode\" [(opened)]=\"MobileService.NavOpened\">\r\n <div class=\"filter-view\">\r\n <fab-filters-input></fab-filters-input>\r\n </div>\r\n </mat-drawer>\r\n <mat-drawer-content class=\"view-content\">\r\n <div class=\"product-view\">\r\n <fab-filters-overview></fab-filters-overview>\r\n </div>\r\n </mat-drawer-content>\r\n</mat-drawer-container>-->\r\n", styles: [".row{display:flex}.loader-card{margin:auto;width:300px}.loader-subtitle{text-transform:capitalize;text-align:center}.loader-spinner{margin:auto}.view-content{background-color:#fff}.loader{position:absolute;display:flex;align-items:center;z-index:20;background-color:#ffffffb3;top:0;left:0}.filter-view{width:300px;min-width:300px;background-color:#fafafa}.product-view{flex:auto}\n"] });
40
40
  }
41
41
  export { FabFiltersComponent };
42
42
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: FabFiltersComponent, decorators: [{
43
43
  type: Component,
44
- args: [{ selector: 'fab-filters', template: "<!--<div *ngIf=\"FabrikantenService.Loading\" class=\"loader\">\r\n <mat-card class=\"loader-card\">\r\n <mat-card-content>\r\n <mat-spinner class=\"loader-spinner\" [diameter]=\"80\"></mat-spinner>\r\n </mat-card-content>\r\n <mat-card-subtitle class=\"loader-subtitle\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, \"Products loading\") }}\r\n </mat-card-subtitle>\r\n </mat-card>\r\n</div>\r\n\r\n<mat-drawer-container class=\"view-container\" *ngIf=\"FabrikantenService.FabrikantenViewModel != null\">\r\n <mat-drawer #drawer [mode]=\"MobileService.NavMode\" [(opened)]=\"MobileService.NavOpened\">\r\n <div class=\"filter-view\">\r\n <fab-filters-input></fab-filters-input>\r\n </div>\r\n </mat-drawer>\r\n <mat-drawer-content class=\"view-content\">\r\n <div class=\"product-view\">\r\n <fab-filters-overview></fab-filters-overview>\r\n </div>\r\n </mat-drawer-content>\r\n</mat-drawer-container>-->\r\n", styles: [".row{display:flex}.loader-card{margin:auto;width:300px}.loader-subtitle{text-align:center}.loader-spinner{margin:auto}.view-content{background-color:#fff}.loader{position:absolute;display:flex;align-items:center;z-index:20;background-color:#ffffffb3;top:0;left:0}.filter-view{width:300px;min-width:300px;background-color:#fafafa}.product-view{flex:auto}\n"] }]
44
+ args: [{ selector: 'fab-filters', template: "<!--<div *ngIf=\"FabrikantenService.Loading\" class=\"loader\">\r\n <mat-card class=\"loader-card\">\r\n <mat-card-content>\r\n <mat-spinner class=\"loader-spinner\" [diameter]=\"80\"></mat-spinner>\r\n </mat-card-content>\r\n <mat-card-subtitle class=\"loader-subtitle\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, \"Products loading\") }}\r\n </mat-card-subtitle>\r\n </mat-card>\r\n</div>\r\n\r\n<mat-drawer-container class=\"view-container\" *ngIf=\"FabrikantenService.FabrikantenViewModel != null\">\r\n <mat-drawer #drawer [mode]=\"MobileService.NavMode\" [(opened)]=\"MobileService.NavOpened\">\r\n <div class=\"filter-view\">\r\n <fab-filters-input></fab-filters-input>\r\n </div>\r\n </mat-drawer>\r\n <mat-drawer-content class=\"view-content\">\r\n <div class=\"product-view\">\r\n <fab-filters-overview></fab-filters-overview>\r\n </div>\r\n </mat-drawer-content>\r\n</mat-drawer-container>-->\r\n", styles: [".row{display:flex}.loader-card{margin:auto;width:300px}.loader-subtitle{text-transform:capitalize;text-align:center}.loader-spinner{margin:auto}.view-content{background-color:#fff}.loader{position:absolute;display:flex;align-items:center;z-index:20;background-color:#ffffffb3;top:0;left:0}.filter-view{width:300px;min-width:300px;background-color:#fafafa}.product-view{flex:auto}\n"] }]
45
45
  }], ctorParameters: function () { return [{ type: i1.MobileService }, { type: i2.FabrikantenService }, { type: i3.BestekService }, { type: i4.TranslateService }, { type: i5.ActivatedRoute }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { onResize: [{
46
46
  type: HostListener,
47
47
  args: ['window:resize', ['$event']]
@@ -49,11 +49,11 @@ class FabFiltersInputComponent {
49
49
  return false;
50
50
  }
51
51
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: FabFiltersInputComponent, deps: [{ token: i1.FabrikantenService }, { token: i2.TranslateService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
52
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: FabFiltersInputComponent, selector: "fab-filters-input", ngImport: i0, template: "<div class=\"filter-view-margin\">\r\n <div class=\"filter-view-header\">\r\n <div class=\"filter-view-header-h1\">\r\n <h1>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Filters) }}</h1>\r\n </div>\r\n <div class=\"filter-view-header-reset\" (click)=\"ResetAllFilters()\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ResetFilters) }}\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"!ShowCategories()\">\r\n <ng-container *ngFor=\"let inputviewmodel of FabrikantenService.FabrikantenViewModel.inputs\">\r\n <app-fab-input [input]=\"inputviewmodel\"></app-fab-input>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"ShowAffectsOnlyBestek()\">\r\n <div class=\"affects-only-bestek\">\r\n <span><sup>1</sup></span>\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.AffectsOnlyBestek) }}\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n \r\n <div *ngIf=\"ShowCategories()\">\r\n <mat-stepper orientation=\"vertical\" #stepper>\r\n <mat-step *ngFor=\"let cat of FabrikantenService.FabrikantenViewModel.filterCategories\">\r\n <ng-template matStepLabel>{{ cat.name }}</ng-template>\r\n\r\n <ng-container *ngFor=\"let inputviewmodel of cat.inputs\">\r\n <app-fab-input [input]=\"inputviewmodel\"></app-fab-input>\r\n </ng-container>\r\n </mat-step>\r\n </mat-stepper>\r\n </div>\r\n</div>\r\n", styles: ["fab-filters-input .filter-view-header{display:flex}fab-filters-input .filter-view-header-h1{flex:auto}fab-filters-input .filter-view-margin{padding:10px}fab-filters-input .filter-view-header-reset{cursor:pointer}fab-filters-input .mat-vertical-content-container{padding-top:10px}fab-filters-input .mat-vertical-content{padding:0}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatStep, selector: "mat-step", inputs: ["color"], exportAs: ["matStep"] }, { kind: "directive", type: i4.MatStepLabel, selector: "[matStepLabel]" }, { kind: "component", type: i4.MatStepper, selector: "mat-stepper, mat-vertical-stepper, mat-horizontal-stepper, [matStepper]", inputs: ["selectedIndex", "disableRipple", "color", "labelPosition", "headerPosition", "animationDuration"], outputs: ["animationDone"], exportAs: ["matStepper", "matVerticalStepper", "matHorizontalStepper"] }, { kind: "component", type: i5.FabInputComponent, selector: "app-fab-input", inputs: ["input"] }], encapsulation: i0.ViewEncapsulation.None });
52
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: FabFiltersInputComponent, selector: "fab-filters-input", ngImport: i0, template: "<div class=\"filter-view-margin\">\r\n <div class=\"filter-view-header\">\r\n <div class=\"filter-view-header-h1\">\r\n <h1>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Filters) }}</h1>\r\n </div>\r\n <div class=\"filter-view-header-reset\" (click)=\"ResetAllFilters()\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ResetFilters) }}\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"!ShowCategories()\">\r\n <ng-container *ngFor=\"let inputviewmodel of FabrikantenService.FabrikantenViewModel.inputs\">\r\n <app-fab-input [input]=\"inputviewmodel\"></app-fab-input>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"ShowAffectsOnlyBestek()\">\r\n <div class=\"affects-only-bestek\">\r\n <span><sup>1</sup></span>\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.AffectsOnlyBestek) }}\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n \r\n <div *ngIf=\"ShowCategories()\">\r\n <mat-stepper orientation=\"vertical\" #stepper>\r\n <mat-step *ngFor=\"let cat of FabrikantenService.FabrikantenViewModel.filterCategories\">\r\n <ng-template matStepLabel>{{ cat.name }}</ng-template>\r\n\r\n <ng-container *ngFor=\"let inputviewmodel of cat.inputs\">\r\n <app-fab-input [input]=\"inputviewmodel\"></app-fab-input>\r\n </ng-container>\r\n </mat-step>\r\n </mat-stepper>\r\n </div>\r\n</div>\r\n", styles: ["fab-filters-input .filter-view-header{display:flex}fab-filters-input .filter-view-header-h1{flex:auto;text-transform:capitalize}fab-filters-input .filter-view-margin{padding:10px}fab-filters-input .filter-view-header-reset{cursor:pointer}fab-filters-input .mat-vertical-content-container{padding-top:10px}fab-filters-input .mat-vertical-content{padding:0}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatStep, selector: "mat-step", inputs: ["color"], exportAs: ["matStep"] }, { kind: "directive", type: i4.MatStepLabel, selector: "[matStepLabel]" }, { kind: "component", type: i4.MatStepper, selector: "mat-stepper, mat-vertical-stepper, mat-horizontal-stepper, [matStepper]", inputs: ["selectedIndex", "disableRipple", "color", "labelPosition", "headerPosition", "animationDuration"], outputs: ["animationDone"], exportAs: ["matStepper", "matVerticalStepper", "matHorizontalStepper"] }, { kind: "component", type: i5.FabInputComponent, selector: "app-fab-input", inputs: ["input"] }], encapsulation: i0.ViewEncapsulation.None });
53
53
  }
54
54
  export { FabFiltersInputComponent };
55
55
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: FabFiltersInputComponent, decorators: [{
56
56
  type: Component,
57
- args: [{ selector: 'fab-filters-input', encapsulation: ViewEncapsulation.None, template: "<div class=\"filter-view-margin\">\r\n <div class=\"filter-view-header\">\r\n <div class=\"filter-view-header-h1\">\r\n <h1>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Filters) }}</h1>\r\n </div>\r\n <div class=\"filter-view-header-reset\" (click)=\"ResetAllFilters()\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ResetFilters) }}\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"!ShowCategories()\">\r\n <ng-container *ngFor=\"let inputviewmodel of FabrikantenService.FabrikantenViewModel.inputs\">\r\n <app-fab-input [input]=\"inputviewmodel\"></app-fab-input>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"ShowAffectsOnlyBestek()\">\r\n <div class=\"affects-only-bestek\">\r\n <span><sup>1</sup></span>\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.AffectsOnlyBestek) }}\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n \r\n <div *ngIf=\"ShowCategories()\">\r\n <mat-stepper orientation=\"vertical\" #stepper>\r\n <mat-step *ngFor=\"let cat of FabrikantenService.FabrikantenViewModel.filterCategories\">\r\n <ng-template matStepLabel>{{ cat.name }}</ng-template>\r\n\r\n <ng-container *ngFor=\"let inputviewmodel of cat.inputs\">\r\n <app-fab-input [input]=\"inputviewmodel\"></app-fab-input>\r\n </ng-container>\r\n </mat-step>\r\n </mat-stepper>\r\n </div>\r\n</div>\r\n", styles: ["fab-filters-input .filter-view-header{display:flex}fab-filters-input .filter-view-header-h1{flex:auto}fab-filters-input .filter-view-margin{padding:10px}fab-filters-input .filter-view-header-reset{cursor:pointer}fab-filters-input .mat-vertical-content-container{padding-top:10px}fab-filters-input .mat-vertical-content{padding:0}\n"] }]
57
+ args: [{ selector: 'fab-filters-input', encapsulation: ViewEncapsulation.None, template: "<div class=\"filter-view-margin\">\r\n <div class=\"filter-view-header\">\r\n <div class=\"filter-view-header-h1\">\r\n <h1>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Filters) }}</h1>\r\n </div>\r\n <div class=\"filter-view-header-reset\" (click)=\"ResetAllFilters()\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ResetFilters) }}\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"!ShowCategories()\">\r\n <ng-container *ngFor=\"let inputviewmodel of FabrikantenService.FabrikantenViewModel.inputs\">\r\n <app-fab-input [input]=\"inputviewmodel\"></app-fab-input>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"ShowAffectsOnlyBestek()\">\r\n <div class=\"affects-only-bestek\">\r\n <span><sup>1</sup></span>\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.AffectsOnlyBestek) }}\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n \r\n <div *ngIf=\"ShowCategories()\">\r\n <mat-stepper orientation=\"vertical\" #stepper>\r\n <mat-step *ngFor=\"let cat of FabrikantenService.FabrikantenViewModel.filterCategories\">\r\n <ng-template matStepLabel>{{ cat.name }}</ng-template>\r\n\r\n <ng-container *ngFor=\"let inputviewmodel of cat.inputs\">\r\n <app-fab-input [input]=\"inputviewmodel\"></app-fab-input>\r\n </ng-container>\r\n </mat-step>\r\n </mat-stepper>\r\n </div>\r\n</div>\r\n", styles: ["fab-filters-input .filter-view-header{display:flex}fab-filters-input .filter-view-header-h1{flex:auto;text-transform:capitalize}fab-filters-input .filter-view-margin{padding:10px}fab-filters-input .filter-view-header-reset{cursor:pointer}fab-filters-input .mat-vertical-content-container{padding-top:10px}fab-filters-input .mat-vertical-content{padding:0}\n"] }]
58
58
  }], ctorParameters: function () { return [{ type: i1.FabrikantenService }, { type: i2.TranslateService }, { type: i0.ChangeDetectorRef }]; } });
59
59
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFiLWZpbHRlcnMtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2ZhYnJpa2FudGVuY29yZS9jb21wb25lbnRzL2ZhYi1maWx0ZXJzLWlucHV0L2ZhYi1maWx0ZXJzLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9mYWJyaWthbnRlbmNvcmUvY29tcG9uZW50cy9mYWItZmlsdGVycy1pbnB1dC9mYWItZmlsdGVycy1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBVSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUd4RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7OztBQUUxRixNQU1hLHdCQUF3QjtJQVcxQjtJQUNBO0lBQ0E7SUFYVCxJQUFXLG1CQUFtQjtRQUM1QixPQUFPLG1CQUFtQixDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFXLHNCQUFzQjtRQUMvQixPQUFPLHNCQUFzQixDQUFDO0lBQ2hDLENBQUM7SUFFRCxZQUNTLGtCQUFzQyxFQUN0QyxnQkFBa0MsRUFDbEMsaUJBQW9DO1FBRnBDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO0lBQUksQ0FBQztJQUVsRCxRQUFRO0lBQ1IsQ0FBQztJQUVNLGVBQWU7UUFDcEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRU0sY0FBYztRQUNuQixJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxvQkFBb0IsRUFBRSxnQkFBZ0IsSUFBSSxJQUFJLEVBQUU7WUFDMUUsSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsb0JBQW9CLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDNUUsSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsb0JBQW9CLENBQUMsZUFBZSxJQUFJLElBQUksRUFBRTtvQkFDeEUsT0FBTyxJQUFJLENBQUM7aUJBQ2I7YUFDRjtTQUNGO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRU0scUJBQXFCO1FBQzFCLElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLG9CQUFvQixFQUFFLE1BQU0sSUFBSSxJQUFJLEVBQUU7WUFDaEUsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO2dCQUNuRixJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxJQUFJLElBQUksRUFBRTtvQkFDekUsSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxpQkFBaUIsSUFBSSxJQUFJLEVBQUU7d0JBQzVGLE9BQU8sSUFBSSxDQUFDO3FCQUNiO2lCQUNGO2FBQ0Y7U0FDRjtRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzt1R0E5Q1Usd0JBQXdCOzJGQUF4Qix3QkFBd0IseURDWHJDLG1nREFtQ0E7O1NEeEJhLHdCQUF3QjsyRkFBeEIsd0JBQXdCO2tCQU5wQyxTQUFTOytCQUNFLG1CQUFtQixpQkFHZCxpQkFBaUIsQ0FBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGYWJyaWthbnRlblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9mYWJyaWthbnRlbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3RyYW5zbGF0ZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRpb25DYXRlZ29yeSwgVHJhbnNsYXRpb25TdWJDYXRlZ29yeSB9IGZyb20gJy4uLy4uL3N3YWdnZXIvU3dhZ2dlckNsaWVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2ZhYi1maWx0ZXJzLWlucHV0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZmFiLWZpbHRlcnMtaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2ZhYi1maWx0ZXJzLWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRmFiRmlsdGVyc0lucHV0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgcHVibGljIGdldCBUcmFuc2xhdGlvbkNhdGVnb3J5KCkge1xyXG4gICAgcmV0dXJuIFRyYW5zbGF0aW9uQ2F0ZWdvcnk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IFRyYW5zbGF0aW9uU3ViQ2F0ZWdvcnkoKSB7XHJcbiAgICByZXR1cm4gVHJhbnNsYXRpb25TdWJDYXRlZ29yeTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIEZhYnJpa2FudGVuU2VydmljZTogRmFicmlrYW50ZW5TZXJ2aWNlLFxyXG4gICAgcHVibGljIFRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICBwdWJsaWMgQ2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgUmVzZXRBbGxGaWx0ZXJzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5GYWJyaWthbnRlblNlcnZpY2UuUmVzZXRBbGxGaWx0ZXJzKHRoaXMuQ2hhbmdlRGV0ZWN0b3JSZWYpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIFNob3dDYXRlZ29yaWVzKCk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKHRoaXMuRmFicmlrYW50ZW5TZXJ2aWNlLkZhYnJpa2FudGVuVmlld01vZGVsPy5maWx0ZXJDYXRlZ29yaWVzICE9IG51bGwpIHtcclxuICAgICAgaWYgKHRoaXMuRmFicmlrYW50ZW5TZXJ2aWNlLkZhYnJpa2FudGVuVmlld01vZGVsLmZpbHRlckNhdGVnb3JpZXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgIGlmICh0aGlzLkZhYnJpa2FudGVuU2VydmljZS5GYWJyaWthbnRlblZpZXdNb2RlbC5zZWxlY3RlZFByb2R1Y3QgIT0gbnVsbCkge1xyXG4gICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIFNob3dBZmZlY3RzT25seUJlc3RlaygpOiBib29sZWFuIHtcclxuICAgIGlmICh0aGlzLkZhYnJpa2FudGVuU2VydmljZS5GYWJyaWthbnRlblZpZXdNb2RlbD8uaW5wdXRzICE9IG51bGwpIHtcclxuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLkZhYnJpa2FudGVuU2VydmljZS5GYWJyaWthbnRlblZpZXdNb2RlbC5pbnB1dHMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICBpZiAodGhpcy5GYWJyaWthbnRlblNlcnZpY2UuRmFicmlrYW50ZW5WaWV3TW9kZWwuaW5wdXRzW2ldLmZpbHRlciAhPSBudWxsKSB7XHJcbiAgICAgICAgICBpZiAodGhpcy5GYWJyaWthbnRlblNlcnZpY2UuRmFicmlrYW50ZW5WaWV3TW9kZWwuaW5wdXRzW2ldLmZpbHRlcj8uYWZmZWN0c09ubHlCZXN0ZWsgPT0gdHJ1ZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJmaWx0ZXItdmlldy1tYXJnaW5cIj5cclxuICA8ZGl2IGNsYXNzPVwiZmlsdGVyLXZpZXctaGVhZGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLXZpZXctaGVhZGVyLWgxXCI+XHJcbiAgICAgIDxoMT57eyBUcmFuc2xhdGVTZXJ2aWNlLkdldEFjdGl2ZVZhbHVlKFRyYW5zbGF0aW9uQ2F0ZWdvcnkuQ29tbW9uLCBUcmFuc2xhdGlvblN1YkNhdGVnb3J5LkZpbHRlcnMpIH19PC9oMT5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImZpbHRlci12aWV3LWhlYWRlci1yZXNldFwiIChjbGljayk9XCJSZXNldEFsbEZpbHRlcnMoKVwiPlxyXG4gICAgICB7eyBUcmFuc2xhdGVTZXJ2aWNlLkdldEFjdGl2ZVZhbHVlKFRyYW5zbGF0aW9uQ2F0ZWdvcnkuQ29tbW9uLCBUcmFuc2xhdGlvblN1YkNhdGVnb3J5LlJlc2V0RmlsdGVycykgfX1cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIVNob3dDYXRlZ29yaWVzKClcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGlucHV0dmlld21vZGVsIG9mIEZhYnJpa2FudGVuU2VydmljZS5GYWJyaWthbnRlblZpZXdNb2RlbC5pbnB1dHNcIj5cclxuICAgICAgPGFwcC1mYWItaW5wdXQgW2lucHV0XT1cImlucHV0dmlld21vZGVsXCI+PC9hcHAtZmFiLWlucHV0PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIlNob3dBZmZlY3RzT25seUJlc3RlaygpXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJhZmZlY3RzLW9ubHktYmVzdGVrXCI+XHJcbiAgICAgICAgPHNwYW4+PHN1cD4xPC9zdXA+PC9zcGFuPlxyXG4gICAgICAgIHt7IFRyYW5zbGF0ZVNlcnZpY2UuR2V0QWN0aXZlVmFsdWUoVHJhbnNsYXRpb25DYXRlZ29yeS5Db21tb24sIFRyYW5zbGF0aW9uU3ViQ2F0ZWdvcnkuQWZmZWN0c09ubHlCZXN0ZWspIH19XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbiAgXHJcbiAgPGRpdiAqbmdJZj1cIlNob3dDYXRlZ29yaWVzKClcIj5cclxuICAgIDxtYXQtc3RlcHBlciBvcmllbnRhdGlvbj1cInZlcnRpY2FsXCIgI3N0ZXBwZXI+XHJcbiAgICAgIDxtYXQtc3RlcCAqbmdGb3I9XCJsZXQgY2F0IG9mIEZhYnJpa2FudGVuU2VydmljZS5GYWJyaWthbnRlblZpZXdNb2RlbC5maWx0ZXJDYXRlZ29yaWVzXCI+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIG1hdFN0ZXBMYWJlbD57eyBjYXQubmFtZSB9fTwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGlucHV0dmlld21vZGVsIG9mIGNhdC5pbnB1dHNcIj5cclxuICAgICAgICAgIDxhcHAtZmFiLWlucHV0IFtpbnB1dF09XCJpbnB1dHZpZXdtb2RlbFwiPjwvYXBwLWZhYi1pbnB1dD5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9tYXQtc3RlcD5cclxuICAgIDwvbWF0LXN0ZXBwZXI+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -40,12 +40,12 @@ class FabProductBestekComponent {
40
40
  return false;
41
41
  }
42
42
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: FabProductBestekComponent, deps: [{ token: i1.MobileService }, { token: i2.FabrikantenService }, { token: i3.TranslateService }, { token: i4.BestekService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
43
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: FabProductBestekComponent, selector: "app-fab-product-bestek", viewQueries: [{ propertyName: "fabProductBestek", first: true, predicate: ["fabProductBestek"], descendants: true }], ngImport: i0, template: "<div class=\"main-window\" [ngClass]=\"{'tinybutton': this.MobileService.MobileInterfaceTiny}\">\r\n <div *ngIf=\"FabrikantenService.ShowVariants()\" class=\"multiplevariants\">\r\n <app-fab-select-bcbproduct></app-fab-select-bcbproduct> \r\n </div>\r\n <app-fab-loader *ngIf=\"BestekService.Loading\"></app-fab-loader>\r\n <div *ngIf=\"ShowBestek()\">\r\n <div *ngIf=\"!BestekService.Loading\">\r\n\r\n <div class=\"bestek-viewer\" #fabProductBestek [innerHTML]=\"BestekService.GetBestekTekst()\">\r\n </div>\r\n\r\n <div class=\"bestek-settings\" *ngIf=\"MobileService.ShowActionMenu()\">\r\n <mat-card>\r\n <mat-card-content>\r\n <app-fab-actionmenu [display]=\"'Bestek'\"></app-fab-actionmenu>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["app-fab-product-bestek .multiplevariants{padding:10px}app-fab-product-bestek .bestek-settings{position:absolute;top:10px;right:10px;display:flex}app-fab-product-bestek .tinybutton{font-size:9px}app-fab-product-bestek .row-title{flex:auto}app-fab-product-bestek .main-window{margin:10px}app-fab-product-bestek .bestek-type-select{text-align:right}app-fab-product-bestek .bestek-type-select-mobile{padding-top:10px}app-fab-product-bestek .button{margin:5px;width:100%}app-fab-product-bestek .bestek-style2{width:80px}app-fab-product-bestek .bestek-style3{width:50px}app-fab-product-bestek .bestek-style4{width:20px}app-fab-product-bestek .bestek-style5{color:red}app-fab-product-bestek .bestek-style6{color:gray}app-fab-product-bestek .bestek-style7{color:#000}app-fab-product-bestek .bestek-style8{width:25px}\n"], dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.MatLegacyCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i6.MatLegacyCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { kind: "component", type: i7.FabLoaderComponent, selector: "app-fab-loader" }, { kind: "component", type: i8.FabActionmenuComponent, selector: "app-fab-actionmenu", inputs: ["display"] }, { kind: "component", type: i9.FabSelectBcbproductComponent, selector: "app-fab-select-bcbproduct" }], encapsulation: i0.ViewEncapsulation.None });
43
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: FabProductBestekComponent, selector: "app-fab-product-bestek", viewQueries: [{ propertyName: "fabProductBestek", first: true, predicate: ["fabProductBestek"], descendants: true }], ngImport: i0, template: "<div class=\"main-window\" [ngClass]=\"{'tinybutton': this.MobileService.MobileInterfaceTiny}\">\r\n <div *ngIf=\"FabrikantenService.ShowVariants()\" class=\"multiplevariants\">\r\n <app-fab-select-bcbproduct></app-fab-select-bcbproduct> \r\n </div>\r\n <app-fab-loader *ngIf=\"BestekService.Loading\"></app-fab-loader>\r\n <div *ngIf=\"ShowBestek()\">\r\n <div *ngIf=\"!BestekService.Loading\">\r\n\r\n <div class=\"bestek-viewer\" #fabProductBestek [innerHTML]=\"BestekService.GetBestekTekst()\">\r\n </div>\r\n\r\n <div class=\"bestek-settings\" *ngIf=\"MobileService.ShowActionMenu()\">\r\n <mat-card>\r\n <mat-card-content>\r\n <app-fab-actionmenu [display]=\"'Bestek'\"></app-fab-actionmenu>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["app-fab-product-bestek .multiplevariants{padding:10px}app-fab-product-bestek .bestek-settings{position:absolute;top:10px;right:10px;display:flex}app-fab-product-bestek .tinybutton{font-size:9px}app-fab-product-bestek .row-title{text-transform:capitalize;flex:auto}app-fab-product-bestek .main-window{margin:10px}app-fab-product-bestek .bestek-type-select{text-align:right}app-fab-product-bestek .bestek-type-select-mobile{padding-top:10px}app-fab-product-bestek .button{margin:5px;width:100%}app-fab-product-bestek .bestek-style2{width:80px}app-fab-product-bestek .bestek-style3{width:50px}app-fab-product-bestek .bestek-style4{width:20px}app-fab-product-bestek .bestek-style5{color:red}app-fab-product-bestek .bestek-style6{color:gray}app-fab-product-bestek .bestek-style7{color:#000}app-fab-product-bestek .bestek-style8{width:25px}\n"], dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.MatLegacyCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i6.MatLegacyCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { kind: "component", type: i7.FabLoaderComponent, selector: "app-fab-loader" }, { kind: "component", type: i8.FabActionmenuComponent, selector: "app-fab-actionmenu", inputs: ["display"] }, { kind: "component", type: i9.FabSelectBcbproductComponent, selector: "app-fab-select-bcbproduct" }], encapsulation: i0.ViewEncapsulation.None });
44
44
  }
45
45
  export { FabProductBestekComponent };
46
46
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: FabProductBestekComponent, decorators: [{
47
47
  type: Component,
48
- args: [{ selector: 'app-fab-product-bestek', encapsulation: ViewEncapsulation.None, template: "<div class=\"main-window\" [ngClass]=\"{'tinybutton': this.MobileService.MobileInterfaceTiny}\">\r\n <div *ngIf=\"FabrikantenService.ShowVariants()\" class=\"multiplevariants\">\r\n <app-fab-select-bcbproduct></app-fab-select-bcbproduct> \r\n </div>\r\n <app-fab-loader *ngIf=\"BestekService.Loading\"></app-fab-loader>\r\n <div *ngIf=\"ShowBestek()\">\r\n <div *ngIf=\"!BestekService.Loading\">\r\n\r\n <div class=\"bestek-viewer\" #fabProductBestek [innerHTML]=\"BestekService.GetBestekTekst()\">\r\n </div>\r\n\r\n <div class=\"bestek-settings\" *ngIf=\"MobileService.ShowActionMenu()\">\r\n <mat-card>\r\n <mat-card-content>\r\n <app-fab-actionmenu [display]=\"'Bestek'\"></app-fab-actionmenu>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["app-fab-product-bestek .multiplevariants{padding:10px}app-fab-product-bestek .bestek-settings{position:absolute;top:10px;right:10px;display:flex}app-fab-product-bestek .tinybutton{font-size:9px}app-fab-product-bestek .row-title{flex:auto}app-fab-product-bestek .main-window{margin:10px}app-fab-product-bestek .bestek-type-select{text-align:right}app-fab-product-bestek .bestek-type-select-mobile{padding-top:10px}app-fab-product-bestek .button{margin:5px;width:100%}app-fab-product-bestek .bestek-style2{width:80px}app-fab-product-bestek .bestek-style3{width:50px}app-fab-product-bestek .bestek-style4{width:20px}app-fab-product-bestek .bestek-style5{color:red}app-fab-product-bestek .bestek-style6{color:gray}app-fab-product-bestek .bestek-style7{color:#000}app-fab-product-bestek .bestek-style8{width:25px}\n"] }]
48
+ args: [{ selector: 'app-fab-product-bestek', encapsulation: ViewEncapsulation.None, template: "<div class=\"main-window\" [ngClass]=\"{'tinybutton': this.MobileService.MobileInterfaceTiny}\">\r\n <div *ngIf=\"FabrikantenService.ShowVariants()\" class=\"multiplevariants\">\r\n <app-fab-select-bcbproduct></app-fab-select-bcbproduct> \r\n </div>\r\n <app-fab-loader *ngIf=\"BestekService.Loading\"></app-fab-loader>\r\n <div *ngIf=\"ShowBestek()\">\r\n <div *ngIf=\"!BestekService.Loading\">\r\n\r\n <div class=\"bestek-viewer\" #fabProductBestek [innerHTML]=\"BestekService.GetBestekTekst()\">\r\n </div>\r\n\r\n <div class=\"bestek-settings\" *ngIf=\"MobileService.ShowActionMenu()\">\r\n <mat-card>\r\n <mat-card-content>\r\n <app-fab-actionmenu [display]=\"'Bestek'\"></app-fab-actionmenu>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["app-fab-product-bestek .multiplevariants{padding:10px}app-fab-product-bestek .bestek-settings{position:absolute;top:10px;right:10px;display:flex}app-fab-product-bestek .tinybutton{font-size:9px}app-fab-product-bestek .row-title{text-transform:capitalize;flex:auto}app-fab-product-bestek .main-window{margin:10px}app-fab-product-bestek .bestek-type-select{text-align:right}app-fab-product-bestek .bestek-type-select-mobile{padding-top:10px}app-fab-product-bestek .button{margin:5px;width:100%}app-fab-product-bestek .bestek-style2{width:80px}app-fab-product-bestek .bestek-style3{width:50px}app-fab-product-bestek .bestek-style4{width:20px}app-fab-product-bestek .bestek-style5{color:red}app-fab-product-bestek .bestek-style6{color:gray}app-fab-product-bestek .bestek-style7{color:#000}app-fab-product-bestek .bestek-style8{width:25px}\n"] }]
49
49
  }], ctorParameters: function () { return [{ type: i1.MobileService }, { type: i2.FabrikantenService }, { type: i3.TranslateService }, { type: i4.BestekService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { fabProductBestek: [{
50
50
  type: ViewChild,
51
51
  args: ['fabProductBestek']
@@ -102,12 +102,12 @@ class FabProductComponent {
102
102
  return "calc(100% - " + height + "px)";
103
103
  }
104
104
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: FabProductComponent, deps: [{ token: i1.MobileService }, { token: i2.FabrikantenService }, { token: i3.BestekService }, { token: i4.TranslateService }, { token: i5.WebGLService }, { token: i6.ActivatedRoute }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
105
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: FabProductComponent, selector: "app-fab-product", viewQueries: [{ propertyName: "header", first: true, predicate: ["header"], descendants: true }], ngImport: i0, template: "<div *ngIf=\"FabrikantenService.Loading\" class=\"loader\">\r\n <mat-card class=\"loader-card\">\r\n <mat-card-content>\r\n <mat-spinner class=\"loader-spinner\" [diameter]=\"80\"></mat-spinner>\r\n </mat-card-content>\r\n <mat-card-subtitle class=\"loader-subtitle\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductsLoading) }}\r\n </mat-card-subtitle>\r\n </mat-card>\r\n</div>\r\n\r\n<mat-drawer-container class=\"view-container\" *ngIf=\"FabrikantenService.Loaded\">\r\n <mat-drawer #drawer [mode]=\"MobileService.NavMode\" [(opened)]=\"MobileService.NavOpened\" *ngIf=\"FabrikantenService.FabrikantenViewModel != null\">\r\n <div class=\"filter-view\">\r\n <fab-filters-input></fab-filters-input>\r\n </div>\r\n </mat-drawer>\r\n <mat-drawer mode=\"over\" position=\"end\" [(opened)]=\"MobileService.ActionOpened\">\r\n <div class=\"actionwrapper\">\r\n <app-fab-actionmenu [display]=\"FabrikantenService.SelectedTab\"></app-fab-actionmenu>\r\n </div>\r\n </mat-drawer>\r\n <mat-drawer-content class=\"view-content\">\r\n <div #header>\r\n <app-fab-header [showfiltermenubutton]=\"true\"></app-fab-header>\r\n </div>\r\n\r\n <ng-container *ngIf=\"FabrikantenService.ShowRequired()\">\r\n <div class=\"required-div\">{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.NotAllRequiredFilled) }}</div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!FabrikantenService.ShowRequired()\">\r\n <div [style.height]=\"Height\" *ngIf=\"FabrikantenService.FabrikantenViewModel != null\">\r\n <mat-tab-group class=\"view-container\" [selectedIndex]=\"FabrikantenService.SelectedTabIndex\" (selectedTabChange)=\"SelectedTabChange($event)\">\r\n <mat-tab label=\"Informatie\" *ngIf=\"ShowInformation()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.TabInformation) }}</span>\r\n </ng-template>\r\n <app-fab-product-info></app-fab-product-info>\r\n </mat-tab>\r\n <mat-tab label=\"3D\" *ngIf=\"Show3D()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Tab3D) }}</span>\r\n </ng-template>\r\n <app-fab-webgl-viewer></app-fab-webgl-viewer>\r\n </mat-tab>\r\n <mat-tab label=\"2D\" *ngIf=\"Show2D()\" style=\"height: 100%;\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Tab2D) }}</span>\r\n </ng-template>\r\n <app-fab-svg-viewer></app-fab-svg-viewer>\r\n </mat-tab>\r\n <mat-tab label=\"Bestek\" *ngIf=\"TranslateService.ShowSpecification()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.TabSpecification) }}</span>\r\n </ng-template>\r\n <app-fab-product-bestek></app-fab-product-bestek>\r\n </mat-tab>\r\n <mat-tab label=\"Texture\" *ngIf=\"FabrikantenService.ShowTexture()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Texture) }}</span>\r\n </ng-template>\r\n <app-fab-texture></app-fab-texture>\r\n </mat-tab>\r\n <mat-tab label=\"Toebehoren\" *ngIf=\"FabrikantenService.ShowToebehoren()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Toebehoren) }}</span>\r\n </ng-template>\r\n <app-fab-toebehoren></app-fab-toebehoren>\r\n </mat-tab>\r\n </mat-tab-group>\r\n </div>\r\n </ng-container>\r\n </mat-drawer-content>\r\n</mat-drawer-container>\r\n\r\n\r\n", styles: ["app-fab-product .tabs{height:100%}app-fab-product .required-div{padding:40px}app-fab-product .row{display:flex}app-fab-product .loader-card{margin:auto;width:300px}app-fab-product .loader-subtitle{text-align:center}app-fab-product .actionwrapper{width:250px;padding:20px}app-fab-product .loader-spinner{margin:auto}app-fab-product .view-container{height:100%}app-fab-product .view-content{background-color:#fff}app-fab-product .loader{position:absolute;display:flex;width:100%;height:100%;align-items:center;z-index:20;background-color:#ffffffb3;top:0;left:0}app-fab-product .filter-view{height:100%;width:300px;min-width:300px;background-color:#fafafa}app-fab-product .product-view{flex:auto}app-fab-product .mat-drawer-inner-container{overflow-y:scroll}.mat-tab-body-wrapper{height:100%}\n"], dependencies: [{ kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i8.MatLegacyCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i8.MatLegacyCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { kind: "directive", type: i8.MatLegacyCardSubtitle, selector: "mat-card-subtitle, [mat-card-subtitle], [matCardSubtitle]" }, { kind: "component", type: i9.MatDrawer, selector: "mat-drawer", inputs: ["position", "mode", "disableClose", "autoFocus", "opened"], outputs: ["openedChange", "opened", "openedStart", "closed", "closedStart", "positionChanged"], exportAs: ["matDrawer"] }, { kind: "component", type: i9.MatDrawerContainer, selector: "mat-drawer-container", inputs: ["autosize", "hasBackdrop"], outputs: ["backdropClick"], exportAs: ["matDrawerContainer"] }, { kind: "component", type: i9.MatDrawerContent, selector: "mat-drawer-content" }, { kind: "component", type: i10.MatLegacyTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple"], exportAs: ["matTabGroup"] }, { kind: "directive", type: i10.MatLegacyTabLabel, selector: "[mat-tab-label], [matTabLabel]" }, { kind: "component", type: i10.MatLegacyTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i11.MatLegacyProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i12.FabProductInfoComponent, selector: "app-fab-product-info" }, { kind: "component", type: i13.FabProductBestekComponent, selector: "app-fab-product-bestek" }, { kind: "component", type: i14.FabFiltersInputComponent, selector: "fab-filters-input" }, { kind: "component", type: i15.FabHeaderComponent, selector: "app-fab-header", inputs: ["showfiltermenubutton"] }, { kind: "component", type: i16.FabWebglViewerComponent, selector: "app-fab-webgl-viewer" }, { kind: "component", type: i17.FabSvgViewerComponent, selector: "app-fab-svg-viewer" }, { kind: "component", type: i18.FabTextureComponent, selector: "app-fab-texture" }, { kind: "component", type: i19.FabToebehorenComponent, selector: "app-fab-toebehoren" }, { kind: "component", type: i20.FabActionmenuComponent, selector: "app-fab-actionmenu", inputs: ["display"] }], encapsulation: i0.ViewEncapsulation.None });
105
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: FabProductComponent, selector: "app-fab-product", viewQueries: [{ propertyName: "header", first: true, predicate: ["header"], descendants: true }], ngImport: i0, template: "<div *ngIf=\"FabrikantenService.Loading\" class=\"loader\">\r\n <mat-card class=\"loader-card\">\r\n <mat-card-content>\r\n <mat-spinner class=\"loader-spinner\" [diameter]=\"80\"></mat-spinner>\r\n </mat-card-content>\r\n <mat-card-subtitle class=\"loader-subtitle\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductsLoading) }}\r\n </mat-card-subtitle>\r\n </mat-card>\r\n</div>\r\n\r\n<mat-drawer-container class=\"view-container\" *ngIf=\"FabrikantenService.Loaded\">\r\n <mat-drawer #drawer [mode]=\"MobileService.NavMode\" [(opened)]=\"MobileService.NavOpened\" *ngIf=\"FabrikantenService.FabrikantenViewModel != null\">\r\n <div class=\"filter-view\">\r\n <fab-filters-input></fab-filters-input>\r\n </div>\r\n </mat-drawer>\r\n <mat-drawer mode=\"over\" position=\"end\" [(opened)]=\"MobileService.ActionOpened\">\r\n <div class=\"actionwrapper\">\r\n <app-fab-actionmenu [display]=\"FabrikantenService.SelectedTab\"></app-fab-actionmenu>\r\n </div>\r\n </mat-drawer>\r\n <mat-drawer-content class=\"view-content\">\r\n <div #header>\r\n <app-fab-header [showfiltermenubutton]=\"true\"></app-fab-header>\r\n </div>\r\n\r\n <ng-container *ngIf=\"FabrikantenService.ShowRequired()\">\r\n <div class=\"required-div\">{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.NotAllRequiredFilled) }}</div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!FabrikantenService.ShowRequired()\">\r\n <div [style.height]=\"Height\" *ngIf=\"FabrikantenService.FabrikantenViewModel != null\">\r\n <mat-tab-group class=\"view-container\" [selectedIndex]=\"FabrikantenService.SelectedTabIndex\" (selectedTabChange)=\"SelectedTabChange($event)\">\r\n <mat-tab label=\"Informatie\" *ngIf=\"ShowInformation()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.TabInformation) }}</span>\r\n </ng-template>\r\n <app-fab-product-info></app-fab-product-info>\r\n </mat-tab>\r\n <mat-tab label=\"3D\" *ngIf=\"Show3D()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Tab3D) }}</span>\r\n </ng-template>\r\n <app-fab-webgl-viewer></app-fab-webgl-viewer>\r\n </mat-tab>\r\n <mat-tab label=\"2D\" *ngIf=\"Show2D()\" style=\"height: 100%;\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Tab2D) }}</span>\r\n </ng-template>\r\n <app-fab-svg-viewer></app-fab-svg-viewer>\r\n </mat-tab>\r\n <mat-tab label=\"Bestek\" *ngIf=\"TranslateService.ShowSpecification()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.TabSpecification) }}</span>\r\n </ng-template>\r\n <app-fab-product-bestek></app-fab-product-bestek>\r\n </mat-tab>\r\n <mat-tab label=\"Texture\" *ngIf=\"FabrikantenService.ShowTexture()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Texture) }}</span>\r\n </ng-template>\r\n <app-fab-texture></app-fab-texture>\r\n </mat-tab>\r\n <mat-tab label=\"Toebehoren\" *ngIf=\"FabrikantenService.ShowToebehoren()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Toebehoren) }}</span>\r\n </ng-template>\r\n <app-fab-toebehoren></app-fab-toebehoren>\r\n </mat-tab>\r\n </mat-tab-group>\r\n </div>\r\n </ng-container>\r\n </mat-drawer-content>\r\n</mat-drawer-container>\r\n\r\n\r\n", styles: ["app-fab-product .tabs{height:100%}app-fab-product .required-div{padding:40px}app-fab-product .row{display:flex}app-fab-product .loader-card{margin:auto;width:300px}app-fab-product .loader-subtitle{text-transform:capitalize;text-align:center}app-fab-product .actionwrapper{width:250px;padding:20px}app-fab-product .loader-spinner{margin:auto}app-fab-product .view-container{height:100%}app-fab-product .view-content{background-color:#fff}app-fab-product .loader{position:absolute;display:flex;width:100%;height:100%;align-items:center;z-index:20;background-color:#ffffffb3;top:0;left:0}app-fab-product .filter-view{height:100%;width:300px;min-width:300px;background-color:#fafafa}app-fab-product .product-view{flex:auto}app-fab-product .mat-drawer-inner-container{overflow-y:scroll}.mat-tab-body-wrapper{height:100%}\n"], dependencies: [{ kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i8.MatLegacyCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i8.MatLegacyCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { kind: "directive", type: i8.MatLegacyCardSubtitle, selector: "mat-card-subtitle, [mat-card-subtitle], [matCardSubtitle]" }, { kind: "component", type: i9.MatDrawer, selector: "mat-drawer", inputs: ["position", "mode", "disableClose", "autoFocus", "opened"], outputs: ["openedChange", "opened", "openedStart", "closed", "closedStart", "positionChanged"], exportAs: ["matDrawer"] }, { kind: "component", type: i9.MatDrawerContainer, selector: "mat-drawer-container", inputs: ["autosize", "hasBackdrop"], outputs: ["backdropClick"], exportAs: ["matDrawerContainer"] }, { kind: "component", type: i9.MatDrawerContent, selector: "mat-drawer-content" }, { kind: "component", type: i10.MatLegacyTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple"], exportAs: ["matTabGroup"] }, { kind: "directive", type: i10.MatLegacyTabLabel, selector: "[mat-tab-label], [matTabLabel]" }, { kind: "component", type: i10.MatLegacyTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i11.MatLegacyProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i12.FabProductInfoComponent, selector: "app-fab-product-info" }, { kind: "component", type: i13.FabProductBestekComponent, selector: "app-fab-product-bestek" }, { kind: "component", type: i14.FabFiltersInputComponent, selector: "fab-filters-input" }, { kind: "component", type: i15.FabHeaderComponent, selector: "app-fab-header", inputs: ["showfiltermenubutton"] }, { kind: "component", type: i16.FabWebglViewerComponent, selector: "app-fab-webgl-viewer" }, { kind: "component", type: i17.FabSvgViewerComponent, selector: "app-fab-svg-viewer" }, { kind: "component", type: i18.FabTextureComponent, selector: "app-fab-texture" }, { kind: "component", type: i19.FabToebehorenComponent, selector: "app-fab-toebehoren" }, { kind: "component", type: i20.FabActionmenuComponent, selector: "app-fab-actionmenu", inputs: ["display"] }], encapsulation: i0.ViewEncapsulation.None });
106
106
  }
107
107
  export { FabProductComponent };
108
108
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: FabProductComponent, decorators: [{
109
109
  type: Component,
110
- args: [{ selector: 'app-fab-product', encapsulation: ViewEncapsulation.None, template: "<div *ngIf=\"FabrikantenService.Loading\" class=\"loader\">\r\n <mat-card class=\"loader-card\">\r\n <mat-card-content>\r\n <mat-spinner class=\"loader-spinner\" [diameter]=\"80\"></mat-spinner>\r\n </mat-card-content>\r\n <mat-card-subtitle class=\"loader-subtitle\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductsLoading) }}\r\n </mat-card-subtitle>\r\n </mat-card>\r\n</div>\r\n\r\n<mat-drawer-container class=\"view-container\" *ngIf=\"FabrikantenService.Loaded\">\r\n <mat-drawer #drawer [mode]=\"MobileService.NavMode\" [(opened)]=\"MobileService.NavOpened\" *ngIf=\"FabrikantenService.FabrikantenViewModel != null\">\r\n <div class=\"filter-view\">\r\n <fab-filters-input></fab-filters-input>\r\n </div>\r\n </mat-drawer>\r\n <mat-drawer mode=\"over\" position=\"end\" [(opened)]=\"MobileService.ActionOpened\">\r\n <div class=\"actionwrapper\">\r\n <app-fab-actionmenu [display]=\"FabrikantenService.SelectedTab\"></app-fab-actionmenu>\r\n </div>\r\n </mat-drawer>\r\n <mat-drawer-content class=\"view-content\">\r\n <div #header>\r\n <app-fab-header [showfiltermenubutton]=\"true\"></app-fab-header>\r\n </div>\r\n\r\n <ng-container *ngIf=\"FabrikantenService.ShowRequired()\">\r\n <div class=\"required-div\">{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.NotAllRequiredFilled) }}</div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!FabrikantenService.ShowRequired()\">\r\n <div [style.height]=\"Height\" *ngIf=\"FabrikantenService.FabrikantenViewModel != null\">\r\n <mat-tab-group class=\"view-container\" [selectedIndex]=\"FabrikantenService.SelectedTabIndex\" (selectedTabChange)=\"SelectedTabChange($event)\">\r\n <mat-tab label=\"Informatie\" *ngIf=\"ShowInformation()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.TabInformation) }}</span>\r\n </ng-template>\r\n <app-fab-product-info></app-fab-product-info>\r\n </mat-tab>\r\n <mat-tab label=\"3D\" *ngIf=\"Show3D()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Tab3D) }}</span>\r\n </ng-template>\r\n <app-fab-webgl-viewer></app-fab-webgl-viewer>\r\n </mat-tab>\r\n <mat-tab label=\"2D\" *ngIf=\"Show2D()\" style=\"height: 100%;\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Tab2D) }}</span>\r\n </ng-template>\r\n <app-fab-svg-viewer></app-fab-svg-viewer>\r\n </mat-tab>\r\n <mat-tab label=\"Bestek\" *ngIf=\"TranslateService.ShowSpecification()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.TabSpecification) }}</span>\r\n </ng-template>\r\n <app-fab-product-bestek></app-fab-product-bestek>\r\n </mat-tab>\r\n <mat-tab label=\"Texture\" *ngIf=\"FabrikantenService.ShowTexture()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Texture) }}</span>\r\n </ng-template>\r\n <app-fab-texture></app-fab-texture>\r\n </mat-tab>\r\n <mat-tab label=\"Toebehoren\" *ngIf=\"FabrikantenService.ShowToebehoren()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Toebehoren) }}</span>\r\n </ng-template>\r\n <app-fab-toebehoren></app-fab-toebehoren>\r\n </mat-tab>\r\n </mat-tab-group>\r\n </div>\r\n </ng-container>\r\n </mat-drawer-content>\r\n</mat-drawer-container>\r\n\r\n\r\n", styles: ["app-fab-product .tabs{height:100%}app-fab-product .required-div{padding:40px}app-fab-product .row{display:flex}app-fab-product .loader-card{margin:auto;width:300px}app-fab-product .loader-subtitle{text-align:center}app-fab-product .actionwrapper{width:250px;padding:20px}app-fab-product .loader-spinner{margin:auto}app-fab-product .view-container{height:100%}app-fab-product .view-content{background-color:#fff}app-fab-product .loader{position:absolute;display:flex;width:100%;height:100%;align-items:center;z-index:20;background-color:#ffffffb3;top:0;left:0}app-fab-product .filter-view{height:100%;width:300px;min-width:300px;background-color:#fafafa}app-fab-product .product-view{flex:auto}app-fab-product .mat-drawer-inner-container{overflow-y:scroll}.mat-tab-body-wrapper{height:100%}\n"] }]
110
+ args: [{ selector: 'app-fab-product', encapsulation: ViewEncapsulation.None, template: "<div *ngIf=\"FabrikantenService.Loading\" class=\"loader\">\r\n <mat-card class=\"loader-card\">\r\n <mat-card-content>\r\n <mat-spinner class=\"loader-spinner\" [diameter]=\"80\"></mat-spinner>\r\n </mat-card-content>\r\n <mat-card-subtitle class=\"loader-subtitle\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductsLoading) }}\r\n </mat-card-subtitle>\r\n </mat-card>\r\n</div>\r\n\r\n<mat-drawer-container class=\"view-container\" *ngIf=\"FabrikantenService.Loaded\">\r\n <mat-drawer #drawer [mode]=\"MobileService.NavMode\" [(opened)]=\"MobileService.NavOpened\" *ngIf=\"FabrikantenService.FabrikantenViewModel != null\">\r\n <div class=\"filter-view\">\r\n <fab-filters-input></fab-filters-input>\r\n </div>\r\n </mat-drawer>\r\n <mat-drawer mode=\"over\" position=\"end\" [(opened)]=\"MobileService.ActionOpened\">\r\n <div class=\"actionwrapper\">\r\n <app-fab-actionmenu [display]=\"FabrikantenService.SelectedTab\"></app-fab-actionmenu>\r\n </div>\r\n </mat-drawer>\r\n <mat-drawer-content class=\"view-content\">\r\n <div #header>\r\n <app-fab-header [showfiltermenubutton]=\"true\"></app-fab-header>\r\n </div>\r\n\r\n <ng-container *ngIf=\"FabrikantenService.ShowRequired()\">\r\n <div class=\"required-div\">{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.NotAllRequiredFilled) }}</div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!FabrikantenService.ShowRequired()\">\r\n <div [style.height]=\"Height\" *ngIf=\"FabrikantenService.FabrikantenViewModel != null\">\r\n <mat-tab-group class=\"view-container\" [selectedIndex]=\"FabrikantenService.SelectedTabIndex\" (selectedTabChange)=\"SelectedTabChange($event)\">\r\n <mat-tab label=\"Informatie\" *ngIf=\"ShowInformation()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.TabInformation) }}</span>\r\n </ng-template>\r\n <app-fab-product-info></app-fab-product-info>\r\n </mat-tab>\r\n <mat-tab label=\"3D\" *ngIf=\"Show3D()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Tab3D) }}</span>\r\n </ng-template>\r\n <app-fab-webgl-viewer></app-fab-webgl-viewer>\r\n </mat-tab>\r\n <mat-tab label=\"2D\" *ngIf=\"Show2D()\" style=\"height: 100%;\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Tab2D) }}</span>\r\n </ng-template>\r\n <app-fab-svg-viewer></app-fab-svg-viewer>\r\n </mat-tab>\r\n <mat-tab label=\"Bestek\" *ngIf=\"TranslateService.ShowSpecification()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.TabSpecification) }}</span>\r\n </ng-template>\r\n <app-fab-product-bestek></app-fab-product-bestek>\r\n </mat-tab>\r\n <mat-tab label=\"Texture\" *ngIf=\"FabrikantenService.ShowTexture()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Texture) }}</span>\r\n </ng-template>\r\n <app-fab-texture></app-fab-texture>\r\n </mat-tab>\r\n <mat-tab label=\"Toebehoren\" *ngIf=\"FabrikantenService.ShowToebehoren()\">\r\n <ng-template mat-tab-label>\r\n <span>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.Toebehoren) }}</span>\r\n </ng-template>\r\n <app-fab-toebehoren></app-fab-toebehoren>\r\n </mat-tab>\r\n </mat-tab-group>\r\n </div>\r\n </ng-container>\r\n </mat-drawer-content>\r\n</mat-drawer-container>\r\n\r\n\r\n", styles: ["app-fab-product .tabs{height:100%}app-fab-product .required-div{padding:40px}app-fab-product .row{display:flex}app-fab-product .loader-card{margin:auto;width:300px}app-fab-product .loader-subtitle{text-transform:capitalize;text-align:center}app-fab-product .actionwrapper{width:250px;padding:20px}app-fab-product .loader-spinner{margin:auto}app-fab-product .view-container{height:100%}app-fab-product .view-content{background-color:#fff}app-fab-product .loader{position:absolute;display:flex;width:100%;height:100%;align-items:center;z-index:20;background-color:#ffffffb3;top:0;left:0}app-fab-product .filter-view{height:100%;width:300px;min-width:300px;background-color:#fafafa}app-fab-product .product-view{flex:auto}app-fab-product .mat-drawer-inner-container{overflow-y:scroll}.mat-tab-body-wrapper{height:100%}\n"] }]
111
111
  }], ctorParameters: function () { return [{ type: i1.MobileService }, { type: i2.FabrikantenService }, { type: i3.BestekService }, { type: i4.TranslateService }, { type: i5.WebGLService }, { type: i6.ActivatedRoute }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { header: [{
112
112
  type: ViewChild,
113
113
  args: ['header']
@@ -63,12 +63,12 @@ class FabProductSelectComponent {
63
63
  return "calc(100% - " + height + "px)";
64
64
  }
65
65
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: FabProductSelectComponent, deps: [{ token: i1.MobileService }, { token: i2.FabrikantenService }, { token: i3.BestekService }, { token: i4.TranslateService }, { token: i5.ActivatedRoute }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
66
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: FabProductSelectComponent, selector: "app-fab-product-select", viewQueries: [{ propertyName: "header", first: true, predicate: ["header"], descendants: true }, { propertyName: "info", first: true, predicate: ["info"], descendants: true }], ngImport: i0, template: "<div *ngIf=\"FabrikantenService.Loading\" class=\"loader\">\r\n <mat-card class=\"loader-card\">\r\n <mat-card-content>\r\n <mat-spinner class=\"loader-spinner\" [diameter]=\"80\"></mat-spinner>\r\n </mat-card-content>\r\n <mat-card-subtitle class=\"loader-subtitle\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductsLoading) }}\r\n </mat-card-subtitle>\r\n </mat-card>\r\n</div>\r\n\r\n<mat-drawer-container class=\"view-container\" *ngIf=\"FabrikantenService.FabrikantenViewModel != null\">\r\n <mat-drawer #drawer [mode]=\"MobileService.NavMode\" [(opened)]=\"MobileService.NavOpened\">\r\n <div class=\"filter-view\">\r\n <fab-filters-input></fab-filters-input>\r\n </div>\r\n </mat-drawer>\r\n <mat-drawer-content class=\"view-content\">\r\n <div #header>\r\n <app-fab-header [showfiltermenubutton]=\"true\"></app-fab-header>\r\n </div>\r\n\r\n <div #info class=\"header\">\r\n <div class=\"title\">\r\n <h1>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductSelection) }}</h1>\r\n </div>\r\n <div class=\"subtitle\" *ngIf=\"!FabrikantenService.FabrikantenViewModel.productSelectBlockedByFilters\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductSelectionInfo) }}\r\n </div>\r\n <div class=\"subtitle\" *ngIf=\"FabrikantenService.FabrikantenViewModel.productSelectBlockedByFilters\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductSelectionBlocked) }}\r\n </div>\r\n </div>\r\n\r\n <div [style.height]=\"Height\" *ngIf=\"!FabrikantenService.FabrikantenViewModel.productSelectBlockedByFilters\">\r\n <div class=\"main-window\">\r\n <app-fab-product-tile *ngFor=\"let product of FabrikantenService.FabrikantenViewModel.products\" [product]=\"product\"></app-fab-product-tile>\r\n </div>\r\n </div>\r\n </mat-drawer-content>\r\n</mat-drawer-container>\r\n\r\n\r\n", styles: ["app-fab-product-select .main-window{display:flex;flex-flow:row wrap;overflow:auto}app-fab-product-select .subtitle{margin-bottom:10px}app-fab-product-select .header{padding:4px}app-fab-product-select .row{display:flex}app-fab-product-select .loader-card{margin:auto;width:300px}app-fab-product-select .loader-subtitle{text-align:center}app-fab-product-select .loader-spinner{margin:auto}app-fab-product-select .view-container{height:100%}app-fab-product-select .view-content{background-color:#fff}app-fab-product-select .loader{position:absolute;width:100%;height:100%;display:flex;align-items:center;z-index:20;background-color:#ffffffb3;top:0;left:0}app-fab-product-select .filter-view{width:300px;min-width:300px;background-color:#fafafa;height:100%}app-fab-product-select .product-view{flex:auto}\n"], dependencies: [{ kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.MatLegacyCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i7.MatLegacyCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { kind: "directive", type: i7.MatLegacyCardSubtitle, selector: "mat-card-subtitle, [mat-card-subtitle], [matCardSubtitle]" }, { kind: "component", type: i8.MatDrawer, selector: "mat-drawer", inputs: ["position", "mode", "disableClose", "autoFocus", "opened"], outputs: ["openedChange", "opened", "openedStart", "closed", "closedStart", "positionChanged"], exportAs: ["matDrawer"] }, { kind: "component", type: i8.MatDrawerContainer, selector: "mat-drawer-container", inputs: ["autosize", "hasBackdrop"], outputs: ["backdropClick"], exportAs: ["matDrawerContainer"] }, { kind: "component", type: i8.MatDrawerContent, selector: "mat-drawer-content" }, { kind: "component", type: i9.MatLegacyProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i10.FabProductTileComponent, selector: "app-fab-product-tile", inputs: ["product"] }, { kind: "component", type: i11.FabFiltersInputComponent, selector: "fab-filters-input" }, { kind: "component", type: i12.FabHeaderComponent, selector: "app-fab-header", inputs: ["showfiltermenubutton"] }], encapsulation: i0.ViewEncapsulation.None });
66
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: FabProductSelectComponent, selector: "app-fab-product-select", viewQueries: [{ propertyName: "header", first: true, predicate: ["header"], descendants: true }, { propertyName: "info", first: true, predicate: ["info"], descendants: true }], ngImport: i0, template: "<div *ngIf=\"FabrikantenService.Loading\" class=\"loader\">\r\n <mat-card class=\"loader-card\">\r\n <mat-card-content>\r\n <mat-spinner class=\"loader-spinner\" [diameter]=\"80\"></mat-spinner>\r\n </mat-card-content>\r\n <mat-card-subtitle class=\"loader-subtitle\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductsLoading) }}\r\n </mat-card-subtitle>\r\n </mat-card>\r\n</div>\r\n\r\n<mat-drawer-container class=\"view-container\" *ngIf=\"FabrikantenService.FabrikantenViewModel != null\">\r\n <mat-drawer #drawer [mode]=\"MobileService.NavMode\" [(opened)]=\"MobileService.NavOpened\">\r\n <div class=\"filter-view\">\r\n <fab-filters-input></fab-filters-input>\r\n </div>\r\n </mat-drawer>\r\n <mat-drawer-content class=\"view-content\">\r\n <div #header>\r\n <app-fab-header [showfiltermenubutton]=\"true\"></app-fab-header>\r\n </div>\r\n\r\n <div #info class=\"header\">\r\n <div class=\"title\">\r\n <h1>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductSelection) }}</h1>\r\n </div>\r\n <div class=\"subtitle\" *ngIf=\"!FabrikantenService.FabrikantenViewModel.productSelectBlockedByFilters\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductSelectionInfo) }}\r\n </div>\r\n <div class=\"subtitle\" *ngIf=\"FabrikantenService.FabrikantenViewModel.productSelectBlockedByFilters\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductSelectionBlocked) }}\r\n </div>\r\n </div>\r\n\r\n <div [style.height]=\"Height\" *ngIf=\"!FabrikantenService.FabrikantenViewModel.productSelectBlockedByFilters\">\r\n <div class=\"main-window\">\r\n <app-fab-product-tile *ngFor=\"let product of FabrikantenService.FabrikantenViewModel.products\" [product]=\"product\"></app-fab-product-tile>\r\n </div>\r\n </div>\r\n </mat-drawer-content>\r\n</mat-drawer-container>\r\n\r\n\r\n", styles: ["app-fab-product-select .main-window{display:flex;flex-flow:row wrap;overflow:auto}app-fab-product-select .subtitle{margin-bottom:10px}app-fab-product-select .subtitle:first-letter{text-transform:uppercase}app-fab-product-select .title:first-letter{text-transform:uppercase}app-fab-product-select .header{padding:4px}app-fab-product-select .row{display:flex}app-fab-product-select .loader-card{margin:auto;width:300px}app-fab-product-select .loader-subtitle{text-align:center}app-fab-product-select .loader-spinner{margin:auto}app-fab-product-select .view-container{height:100%}app-fab-product-select .view-content{background-color:#fff}app-fab-product-select .loader{position:absolute;width:100%;height:100%;display:flex;align-items:center;z-index:20;background-color:#ffffffb3;top:0;left:0}app-fab-product-select .filter-view{width:300px;min-width:300px;background-color:#fafafa;height:100%}app-fab-product-select .product-view{flex:auto}\n"], dependencies: [{ kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.MatLegacyCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i7.MatLegacyCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { kind: "directive", type: i7.MatLegacyCardSubtitle, selector: "mat-card-subtitle, [mat-card-subtitle], [matCardSubtitle]" }, { kind: "component", type: i8.MatDrawer, selector: "mat-drawer", inputs: ["position", "mode", "disableClose", "autoFocus", "opened"], outputs: ["openedChange", "opened", "openedStart", "closed", "closedStart", "positionChanged"], exportAs: ["matDrawer"] }, { kind: "component", type: i8.MatDrawerContainer, selector: "mat-drawer-container", inputs: ["autosize", "hasBackdrop"], outputs: ["backdropClick"], exportAs: ["matDrawerContainer"] }, { kind: "component", type: i8.MatDrawerContent, selector: "mat-drawer-content" }, { kind: "component", type: i9.MatLegacyProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i10.FabProductTileComponent, selector: "app-fab-product-tile", inputs: ["product"] }, { kind: "component", type: i11.FabFiltersInputComponent, selector: "fab-filters-input" }, { kind: "component", type: i12.FabHeaderComponent, selector: "app-fab-header", inputs: ["showfiltermenubutton"] }], encapsulation: i0.ViewEncapsulation.None });
67
67
  }
68
68
  export { FabProductSelectComponent };
69
69
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: FabProductSelectComponent, decorators: [{
70
70
  type: Component,
71
- args: [{ selector: 'app-fab-product-select', encapsulation: ViewEncapsulation.None, template: "<div *ngIf=\"FabrikantenService.Loading\" class=\"loader\">\r\n <mat-card class=\"loader-card\">\r\n <mat-card-content>\r\n <mat-spinner class=\"loader-spinner\" [diameter]=\"80\"></mat-spinner>\r\n </mat-card-content>\r\n <mat-card-subtitle class=\"loader-subtitle\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductsLoading) }}\r\n </mat-card-subtitle>\r\n </mat-card>\r\n</div>\r\n\r\n<mat-drawer-container class=\"view-container\" *ngIf=\"FabrikantenService.FabrikantenViewModel != null\">\r\n <mat-drawer #drawer [mode]=\"MobileService.NavMode\" [(opened)]=\"MobileService.NavOpened\">\r\n <div class=\"filter-view\">\r\n <fab-filters-input></fab-filters-input>\r\n </div>\r\n </mat-drawer>\r\n <mat-drawer-content class=\"view-content\">\r\n <div #header>\r\n <app-fab-header [showfiltermenubutton]=\"true\"></app-fab-header>\r\n </div>\r\n\r\n <div #info class=\"header\">\r\n <div class=\"title\">\r\n <h1>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductSelection) }}</h1>\r\n </div>\r\n <div class=\"subtitle\" *ngIf=\"!FabrikantenService.FabrikantenViewModel.productSelectBlockedByFilters\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductSelectionInfo) }}\r\n </div>\r\n <div class=\"subtitle\" *ngIf=\"FabrikantenService.FabrikantenViewModel.productSelectBlockedByFilters\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductSelectionBlocked) }}\r\n </div>\r\n </div>\r\n\r\n <div [style.height]=\"Height\" *ngIf=\"!FabrikantenService.FabrikantenViewModel.productSelectBlockedByFilters\">\r\n <div class=\"main-window\">\r\n <app-fab-product-tile *ngFor=\"let product of FabrikantenService.FabrikantenViewModel.products\" [product]=\"product\"></app-fab-product-tile>\r\n </div>\r\n </div>\r\n </mat-drawer-content>\r\n</mat-drawer-container>\r\n\r\n\r\n", styles: ["app-fab-product-select .main-window{display:flex;flex-flow:row wrap;overflow:auto}app-fab-product-select .subtitle{margin-bottom:10px}app-fab-product-select .header{padding:4px}app-fab-product-select .row{display:flex}app-fab-product-select .loader-card{margin:auto;width:300px}app-fab-product-select .loader-subtitle{text-align:center}app-fab-product-select .loader-spinner{margin:auto}app-fab-product-select .view-container{height:100%}app-fab-product-select .view-content{background-color:#fff}app-fab-product-select .loader{position:absolute;width:100%;height:100%;display:flex;align-items:center;z-index:20;background-color:#ffffffb3;top:0;left:0}app-fab-product-select .filter-view{width:300px;min-width:300px;background-color:#fafafa;height:100%}app-fab-product-select .product-view{flex:auto}\n"] }]
71
+ args: [{ selector: 'app-fab-product-select', encapsulation: ViewEncapsulation.None, template: "<div *ngIf=\"FabrikantenService.Loading\" class=\"loader\">\r\n <mat-card class=\"loader-card\">\r\n <mat-card-content>\r\n <mat-spinner class=\"loader-spinner\" [diameter]=\"80\"></mat-spinner>\r\n </mat-card-content>\r\n <mat-card-subtitle class=\"loader-subtitle\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductsLoading) }}\r\n </mat-card-subtitle>\r\n </mat-card>\r\n</div>\r\n\r\n<mat-drawer-container class=\"view-container\" *ngIf=\"FabrikantenService.FabrikantenViewModel != null\">\r\n <mat-drawer #drawer [mode]=\"MobileService.NavMode\" [(opened)]=\"MobileService.NavOpened\">\r\n <div class=\"filter-view\">\r\n <fab-filters-input></fab-filters-input>\r\n </div>\r\n </mat-drawer>\r\n <mat-drawer-content class=\"view-content\">\r\n <div #header>\r\n <app-fab-header [showfiltermenubutton]=\"true\"></app-fab-header>\r\n </div>\r\n\r\n <div #info class=\"header\">\r\n <div class=\"title\">\r\n <h1>{{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductSelection) }}</h1>\r\n </div>\r\n <div class=\"subtitle\" *ngIf=\"!FabrikantenService.FabrikantenViewModel.productSelectBlockedByFilters\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductSelectionInfo) }}\r\n </div>\r\n <div class=\"subtitle\" *ngIf=\"FabrikantenService.FabrikantenViewModel.productSelectBlockedByFilters\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Common, TranslationSubCategory.ProductSelectionBlocked) }}\r\n </div>\r\n </div>\r\n\r\n <div [style.height]=\"Height\" *ngIf=\"!FabrikantenService.FabrikantenViewModel.productSelectBlockedByFilters\">\r\n <div class=\"main-window\">\r\n <app-fab-product-tile *ngFor=\"let product of FabrikantenService.FabrikantenViewModel.products\" [product]=\"product\"></app-fab-product-tile>\r\n </div>\r\n </div>\r\n </mat-drawer-content>\r\n</mat-drawer-container>\r\n\r\n\r\n", styles: ["app-fab-product-select .main-window{display:flex;flex-flow:row wrap;overflow:auto}app-fab-product-select .subtitle{margin-bottom:10px}app-fab-product-select .subtitle:first-letter{text-transform:uppercase}app-fab-product-select .title:first-letter{text-transform:uppercase}app-fab-product-select .header{padding:4px}app-fab-product-select .row{display:flex}app-fab-product-select .loader-card{margin:auto;width:300px}app-fab-product-select .loader-subtitle{text-align:center}app-fab-product-select .loader-spinner{margin:auto}app-fab-product-select .view-container{height:100%}app-fab-product-select .view-content{background-color:#fff}app-fab-product-select .loader{position:absolute;width:100%;height:100%;display:flex;align-items:center;z-index:20;background-color:#ffffffb3;top:0;left:0}app-fab-product-select .filter-view{width:300px;min-width:300px;background-color:#fafafa;height:100%}app-fab-product-select .product-view{flex:auto}\n"] }]
72
72
  }], ctorParameters: function () { return [{ type: i1.MobileService }, { type: i2.FabrikantenService }, { type: i3.BestekService }, { type: i4.TranslateService }, { type: i5.ActivatedRoute }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { header: [{
73
73
  type: ViewChild,
74
74
  args: ['header']
@@ -47,12 +47,12 @@ class FabProductTileComponent {
47
47
  return this.sanitization.bypassSecurityTrustStyle('url(\'' + this.GetPhoto() + '\')');
48
48
  }
49
49
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: FabProductTileComponent, deps: [{ token: i1.FabrikantenService }, { token: i2.TranslateService }, { token: i3.PhotoService }, { token: i4.DomSanitizer }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
50
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: FabProductTileComponent, selector: "app-fab-product-tile", inputs: { product: "product" }, ngImport: i0, template: "<mat-card class=\"tile\" (click)=\"Select()\" [style.backgroundImage]=\"getSafeUrl()\">\r\n <mat-card-title class=\"title\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Product, TranslationSubCategory.Name, product.id) }}\r\n </mat-card-title>\r\n <!--<mat-card-subtitle *ngIf=\"TranslateService.GetActiveValueProductDescription(product.id) != null && TranslateService.GetActiveValueProductDescription(product.id) != ''\">\r\n \r\n </mat-card-subtitle>-->\r\n</mat-card>\r\n\r\n\r\n", styles: [".tile{margin:5px;width:150px;height:250px;cursor:pointer;background-size:cover;background-position:center;background-repeat:no-repeat;position:relative;border:1px solid #EEE}.tile:hover{border:1px solid #000}.tile:hover .title{text-decoration:underline}.title{background-color:#ffffffb3;padding:4px;text-align:center;position:absolute;bottom:0;width:calc(100% - 8px);left:0;font-size:16px}.title:first-letter{text-transform:capitalize}\n"], dependencies: [{ kind: "component", type: i5.MatLegacyCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i5.MatLegacyCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }] });
50
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: FabProductTileComponent, selector: "app-fab-product-tile", inputs: { product: "product" }, ngImport: i0, template: "<mat-card class=\"tile\" (click)=\"Select()\" [style.backgroundImage]=\"getSafeUrl()\">\r\n <mat-card-title class=\"title\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Product, TranslationSubCategory.Name, product.id) }}\r\n </mat-card-title>\r\n <!--<mat-card-subtitle *ngIf=\"TranslateService.GetActiveValueProductDescription(product.id) != null && TranslateService.GetActiveValueProductDescription(product.id) != ''\">\r\n \r\n </mat-card-subtitle>-->\r\n</mat-card>\r\n\r\n\r\n", styles: [".tile{margin:5px;width:150px;height:250px;cursor:pointer;background-size:cover;background-position:center;background-repeat:no-repeat;position:relative;border:1px solid #EEE}.tile:hover{border:1px solid #000}.tile:hover .title{text-decoration:underline}.title:first-letter{text-transform:uppercase}.title{background-color:#ffffffb3;padding:4px;text-align:center;position:absolute;bottom:0;width:calc(100% - 8px);left:0;font-size:16px}.title:first-letter{text-transform:capitalize}\n"], dependencies: [{ kind: "component", type: i5.MatLegacyCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i5.MatLegacyCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }] });
51
51
  }
52
52
  export { FabProductTileComponent };
53
53
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: FabProductTileComponent, decorators: [{
54
54
  type: Component,
55
- args: [{ selector: 'app-fab-product-tile', template: "<mat-card class=\"tile\" (click)=\"Select()\" [style.backgroundImage]=\"getSafeUrl()\">\r\n <mat-card-title class=\"title\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Product, TranslationSubCategory.Name, product.id) }}\r\n </mat-card-title>\r\n <!--<mat-card-subtitle *ngIf=\"TranslateService.GetActiveValueProductDescription(product.id) != null && TranslateService.GetActiveValueProductDescription(product.id) != ''\">\r\n \r\n </mat-card-subtitle>-->\r\n</mat-card>\r\n\r\n\r\n", styles: [".tile{margin:5px;width:150px;height:250px;cursor:pointer;background-size:cover;background-position:center;background-repeat:no-repeat;position:relative;border:1px solid #EEE}.tile:hover{border:1px solid #000}.tile:hover .title{text-decoration:underline}.title{background-color:#ffffffb3;padding:4px;text-align:center;position:absolute;bottom:0;width:calc(100% - 8px);left:0;font-size:16px}.title:first-letter{text-transform:capitalize}\n"] }]
55
+ args: [{ selector: 'app-fab-product-tile', template: "<mat-card class=\"tile\" (click)=\"Select()\" [style.backgroundImage]=\"getSafeUrl()\">\r\n <mat-card-title class=\"title\">\r\n {{ TranslateService.GetActiveValue(TranslationCategory.Product, TranslationSubCategory.Name, product.id) }}\r\n </mat-card-title>\r\n <!--<mat-card-subtitle *ngIf=\"TranslateService.GetActiveValueProductDescription(product.id) != null && TranslateService.GetActiveValueProductDescription(product.id) != ''\">\r\n \r\n </mat-card-subtitle>-->\r\n</mat-card>\r\n\r\n\r\n", styles: [".tile{margin:5px;width:150px;height:250px;cursor:pointer;background-size:cover;background-position:center;background-repeat:no-repeat;position:relative;border:1px solid #EEE}.tile:hover{border:1px solid #000}.tile:hover .title{text-decoration:underline}.title:first-letter{text-transform:uppercase}.title{background-color:#ffffffb3;padding:4px;text-align:center;position:absolute;bottom:0;width:calc(100% - 8px);left:0;font-size:16px}.title:first-letter{text-transform:capitalize}\n"] }]
56
56
  }], ctorParameters: function () { return [{ type: i1.FabrikantenService }, { type: i2.TranslateService }, { type: i3.PhotoService }, { type: i4.DomSanitizer }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { product: [{
57
57
  type: Input
58
58
  }] } });