@wizishop/img-manager 15.2.56 → 15.2.57

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 (58) hide show
  1. package/README.md +393 -393
  2. package/assets/i18n/en.json +1 -1
  3. package/assets/i18n/es.json +1 -1
  4. package/assets/i18n/fr.json +1 -1
  5. package/assets/i18n/it.json +1 -1
  6. package/esm2020/lib/components/canva-btn/canva-btn.component.mjs +3 -3
  7. package/esm2020/lib/components/images-view/images-actions-handler.mjs +12 -1
  8. package/esm2020/lib/components/images-view/images-view.component.mjs +3 -3
  9. package/esm2020/lib/components/images-view/mosaic-view/img-card/img-card.component.mjs +3 -3
  10. package/esm2020/lib/components/images-view/mosaic-view/mosaic-view.component.mjs +3 -3
  11. package/esm2020/lib/components/images-view/table-view/table-view.component.mjs +14 -3
  12. package/esm2020/lib/components/img-editor/cropper/cropper.component.mjs +3 -3
  13. package/esm2020/lib/components/img-editor/img-editor.component.mjs +3 -3
  14. package/esm2020/lib/components/img-editor/info-section/info-section.component.mjs +3 -3
  15. package/esm2020/lib/components/img-selection/img-selection.component.mjs +3 -3
  16. package/esm2020/lib/components/img-tabs/img-tabs.component.mjs +3 -3
  17. package/esm2020/lib/components/img-upload/img-upload.component.mjs +3 -3
  18. package/esm2020/lib/components/pexels-lib/pexels-lib.component.mjs +3 -3
  19. package/esm2020/lib/components/shared/alert/alert.component.mjs +1 -1
  20. package/esm2020/lib/components/shared/pagination/page-selector/page-selector.component.mjs +3 -3
  21. package/esm2020/lib/components/shared/select/select.component.mjs +3 -3
  22. package/esm2020/lib/components/upload-list/upload-list.component.mjs +3 -3
  23. package/esm2020/lib/directives/table/raw.directive.mjs +1 -1
  24. package/esm2020/lib/dto/config/image-cdn/image-cdn-config.dto.mjs +1 -1
  25. package/esm2020/lib/dto/config/img-manager.mjs +1 -1
  26. package/esm2020/lib/dto/img-manager.dto.mjs +1 -1
  27. package/esm2020/lib/dto/pexels-img.dto.mjs +1 -1
  28. package/esm2020/lib/pipes/pagination/large-number-of-page/large-number-of-page.pipe.mjs +1 -1
  29. package/esm2020/lib/services/alert.service.mjs +1 -1
  30. package/esm2020/lib/services/api.service.mjs +1 -1
  31. package/esm2020/lib/services/canva.service.mjs +1 -1
  32. package/esm2020/lib/services/config/img-cdn.service.mjs +1 -1
  33. package/esm2020/lib/services/dom.service.mjs +1 -1
  34. package/esm2020/lib/services/icon.service.mjs +1 -1
  35. package/esm2020/lib/services/image-not-found.service.mjs +1 -1
  36. package/esm2020/lib/services/img-event.service.mjs +1 -1
  37. package/esm2020/lib/services/img-manager.service.mjs +45 -2
  38. package/esm2020/lib/services/img-selection.service.mjs +1 -1
  39. package/esm2020/lib/services/pexels.service.mjs +1 -1
  40. package/esm2020/lib/services/rename-picture.service.mjs +1 -1
  41. package/esm2020/lib/services/snackbar.service.mjs +1 -1
  42. package/esm2020/lib/services/table/filters-table.service.mjs +1 -1
  43. package/esm2020/lib/services/upload.service.mjs +1 -1
  44. package/esm2020/lib/services/user-settings.service.mjs +1 -1
  45. package/esm2020/lib/wz-img-manager.component.mjs +3 -3
  46. package/esm2020/lib/wz-img-manager.module.mjs +1 -1
  47. package/esm2020/public-api.mjs +1 -1
  48. package/fesm2015/wizishop-img-manager.mjs +101 -33
  49. package/fesm2015/wizishop-img-manager.mjs.map +1 -1
  50. package/fesm2020/wizishop-img-manager.mjs +98 -33
  51. package/fesm2020/wizishop-img-manager.mjs.map +1 -1
  52. package/lib/components/images-view/images-actions-handler.d.ts +1 -0
  53. package/lib/components/images-view/table-view/table-view.component.d.ts +1 -0
  54. package/lib/services/img-manager.service.d.ts +3 -0
  55. package/package.json +2 -2
  56. package/wizishop-img-manager-15.2.57.tgz +0 -0
  57. package/wz-img-manager.scss +1994 -1956
  58. package/wizishop-img-manager-15.2.56.tgz +0 -0
@@ -41,13 +41,13 @@ export class ImgSelectionComponent {
41
41
  }
42
42
  }
43
43
  ImgSelectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ImgSelectionComponent, deps: [{ token: i1.ImgSelectionService }], target: i0.ɵɵFactoryTarget.Component });
44
- ImgSelectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ImgSelectionComponent, selector: "img-selection", inputs: { tabDisplayed: "tabDisplayed" }, outputs: { imgManagerClosed: "imgManagerClosed" }, ngImport: i0, template: "<div\r\n class=\"trash\"\r\n cdkDropList\r\n #unSelectList=\"cdkDropList\"\r\n (cdkDropListDropped)=\"removeImgFromSelection($event)\">\r\n <p>{{'ImgManager.ImgSelection.unselect' | translate}}</p>\r\n</div>\r\n\r\n<ng-container *ngIf=\"vm$ | async as vm\">\r\n\r\n <div\r\n class=\"img-selection\"\r\n *ngIf=\"!vm.isLoading; else Loading\"\r\n [ngClass]=\"{'img-selection--visible' : vm.imgSelectedList && vm.imgSelectedList.length}\"\r\n >\r\n\r\n <div\r\n cdkDropList\r\n #selectionList=\"cdkDropList\"\r\n cdkDropListOrientation=\"horizontal\"\r\n class=\"list_img_selection\"\r\n (cdkDropListDropped)=\"drop($event)\"\r\n [cdkDropListConnectedTo]=\"[unSelectList]\"\r\n >\r\n\r\n <div\r\n class=\"img_box\"\r\n *ngFor=\"let picture of vm.imgSelectedList; let index = index\"\r\n cdkDrag\r\n (cdkDragStarted)=\"dragStart = true;\"\r\n (cdkDragEnded)=\"dragStart = false;\"\r\n >\r\n\r\n <img\r\n *ngIf=\"index < 1\"\r\n class=\"drag__img\"\r\n [src]=\"picture.file_name | imgSrc : '400'\"\r\n [title]=\"picture.display_name\"\r\n />\r\n\r\n <img\r\n *ngIf=\"index > 0\"\r\n class=\"drag__img\"\r\n [src]=\"picture.file_name | imgSrc : '200'\"\r\n [title]=\"picture.display_name\"\r\n />\r\n\r\n <div class=\"delete-btn\" (click)=\"removeImg(index)\">{{'ImgManager.ImgSelection.deleteImg' | translate}}</div>\r\n\r\n <span class=\"drag__tooltips\">{{'ImgManager.ImgSelection.tooltips' | translate}}</span>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n</ng-container>\r\n<!-- Loader -->\r\n<ng-template #Loading>\r\n <wz-loader></wz-loader>\r\n</ng-template>\r\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i4.LoaderComponent, selector: "wz-loader", inputs: ["text", "small", "position"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "pipe", type: i6.ImageSrcPipe, name: "imgSrc" }] });
44
+ ImgSelectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ImgSelectionComponent, selector: "img-selection", inputs: { tabDisplayed: "tabDisplayed" }, outputs: { imgManagerClosed: "imgManagerClosed" }, ngImport: i0, template: "<div\n class=\"trash\"\n cdkDropList\n #unSelectList=\"cdkDropList\"\n (cdkDropListDropped)=\"removeImgFromSelection($event)\">\n <p>{{'ImgManager.ImgSelection.unselect' | translate}}</p>\n</div>\n\n<ng-container *ngIf=\"vm$ | async as vm\">\n\n <div\n class=\"img-selection\"\n *ngIf=\"!vm.isLoading; else Loading\"\n [ngClass]=\"{'img-selection--visible' : vm.imgSelectedList && vm.imgSelectedList.length}\"\n >\n\n <div\n cdkDropList\n #selectionList=\"cdkDropList\"\n cdkDropListOrientation=\"horizontal\"\n class=\"list_img_selection\"\n (cdkDropListDropped)=\"drop($event)\"\n [cdkDropListConnectedTo]=\"[unSelectList]\"\n >\n\n <div\n class=\"img_box\"\n *ngFor=\"let picture of vm.imgSelectedList; let index = index\"\n cdkDrag\n (cdkDragStarted)=\"dragStart = true;\"\n (cdkDragEnded)=\"dragStart = false;\"\n >\n\n <img\n *ngIf=\"index < 1\"\n class=\"drag__img\"\n [src]=\"picture.file_name | imgSrc : '400'\"\n [title]=\"picture.display_name\"\n />\n\n <img\n *ngIf=\"index > 0\"\n class=\"drag__img\"\n [src]=\"picture.file_name | imgSrc : '200'\"\n [title]=\"picture.display_name\"\n />\n\n <div class=\"delete-btn\" (click)=\"removeImg(index)\">{{'ImgManager.ImgSelection.deleteImg' | translate}}</div>\n\n <span class=\"drag__tooltips\">{{'ImgManager.ImgSelection.tooltips' | translate}}</span>\n\n </div>\n </div>\n </div>\n</ng-container>\n<!-- Loader -->\n<ng-template #Loading>\n <wz-loader></wz-loader>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i4.LoaderComponent, selector: "wz-loader", inputs: ["text", "small", "position"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "pipe", type: i6.ImageSrcPipe, name: "imgSrc" }] });
45
45
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ImgSelectionComponent, decorators: [{
46
46
  type: Component,
47
- args: [{ selector: 'img-selection', template: "<div\r\n class=\"trash\"\r\n cdkDropList\r\n #unSelectList=\"cdkDropList\"\r\n (cdkDropListDropped)=\"removeImgFromSelection($event)\">\r\n <p>{{'ImgManager.ImgSelection.unselect' | translate}}</p>\r\n</div>\r\n\r\n<ng-container *ngIf=\"vm$ | async as vm\">\r\n\r\n <div\r\n class=\"img-selection\"\r\n *ngIf=\"!vm.isLoading; else Loading\"\r\n [ngClass]=\"{'img-selection--visible' : vm.imgSelectedList && vm.imgSelectedList.length}\"\r\n >\r\n\r\n <div\r\n cdkDropList\r\n #selectionList=\"cdkDropList\"\r\n cdkDropListOrientation=\"horizontal\"\r\n class=\"list_img_selection\"\r\n (cdkDropListDropped)=\"drop($event)\"\r\n [cdkDropListConnectedTo]=\"[unSelectList]\"\r\n >\r\n\r\n <div\r\n class=\"img_box\"\r\n *ngFor=\"let picture of vm.imgSelectedList; let index = index\"\r\n cdkDrag\r\n (cdkDragStarted)=\"dragStart = true;\"\r\n (cdkDragEnded)=\"dragStart = false;\"\r\n >\r\n\r\n <img\r\n *ngIf=\"index < 1\"\r\n class=\"drag__img\"\r\n [src]=\"picture.file_name | imgSrc : '400'\"\r\n [title]=\"picture.display_name\"\r\n />\r\n\r\n <img\r\n *ngIf=\"index > 0\"\r\n class=\"drag__img\"\r\n [src]=\"picture.file_name | imgSrc : '200'\"\r\n [title]=\"picture.display_name\"\r\n />\r\n\r\n <div class=\"delete-btn\" (click)=\"removeImg(index)\">{{'ImgManager.ImgSelection.deleteImg' | translate}}</div>\r\n\r\n <span class=\"drag__tooltips\">{{'ImgManager.ImgSelection.tooltips' | translate}}</span>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n</ng-container>\r\n<!-- Loader -->\r\n<ng-template #Loading>\r\n <wz-loader></wz-loader>\r\n</ng-template>\r\n" }]
47
+ args: [{ selector: 'img-selection', template: "<div\n class=\"trash\"\n cdkDropList\n #unSelectList=\"cdkDropList\"\n (cdkDropListDropped)=\"removeImgFromSelection($event)\">\n <p>{{'ImgManager.ImgSelection.unselect' | translate}}</p>\n</div>\n\n<ng-container *ngIf=\"vm$ | async as vm\">\n\n <div\n class=\"img-selection\"\n *ngIf=\"!vm.isLoading; else Loading\"\n [ngClass]=\"{'img-selection--visible' : vm.imgSelectedList && vm.imgSelectedList.length}\"\n >\n\n <div\n cdkDropList\n #selectionList=\"cdkDropList\"\n cdkDropListOrientation=\"horizontal\"\n class=\"list_img_selection\"\n (cdkDropListDropped)=\"drop($event)\"\n [cdkDropListConnectedTo]=\"[unSelectList]\"\n >\n\n <div\n class=\"img_box\"\n *ngFor=\"let picture of vm.imgSelectedList; let index = index\"\n cdkDrag\n (cdkDragStarted)=\"dragStart = true;\"\n (cdkDragEnded)=\"dragStart = false;\"\n >\n\n <img\n *ngIf=\"index < 1\"\n class=\"drag__img\"\n [src]=\"picture.file_name | imgSrc : '400'\"\n [title]=\"picture.display_name\"\n />\n\n <img\n *ngIf=\"index > 0\"\n class=\"drag__img\"\n [src]=\"picture.file_name | imgSrc : '200'\"\n [title]=\"picture.display_name\"\n />\n\n <div class=\"delete-btn\" (click)=\"removeImg(index)\">{{'ImgManager.ImgSelection.deleteImg' | translate}}</div>\n\n <span class=\"drag__tooltips\">{{'ImgManager.ImgSelection.tooltips' | translate}}</span>\n\n </div>\n </div>\n </div>\n</ng-container>\n<!-- Loader -->\n<ng-template #Loading>\n <wz-loader></wz-loader>\n</ng-template>\n" }]
48
48
  }], ctorParameters: function () { return [{ type: i1.ImgSelectionService }]; }, propDecorators: { tabDisplayed: [{
49
49
  type: Input
50
50
  }], imgManagerClosed: [{
51
51
  type: Output
52
52
  }] } });
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1nLXNlbGVjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ei1pbWctbWFuYWdlci9zcmMvbGliL2NvbXBvbmVudHMvaW1nLXNlbGVjdGlvbi9pbWctc2VsZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3d6LWltZy1tYW5hZ2VyL3NyYy9saWIvY29tcG9uZW50cy9pbWctc2VsZWN0aW9uL2ltZy1zZWxlY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUczRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7OztBQU9yQyxNQUFNLE9BQU8scUJBQXFCO0lBa0JoQyxZQUNVLG1CQUF3QztRQUF4Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBaEJ4QyxxQkFBZ0IsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRWhELGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBQzdCLGtCQUFhLEdBQVksS0FBSyxDQUFDO1FBQy9CLGlCQUFZLEdBQVksS0FBSyxDQUFDO1FBQzlCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsUUFBRyxHQUFHLGFBQWEsQ0FBQztZQUNsQixlQUFlLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGFBQWE7WUFDdkQsU0FBUyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyx1QkFBdUI7U0FDNUQsQ0FBQyxDQUFDO1FBR0gsdUJBQWtCLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZCLHNCQUFpQixHQUFHLE1BQU0sQ0FBQztJQUlyQixDQUFDO0lBRVAsSUFBSTtRQUNGLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO0lBQzVCLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBYTtRQUNyQixJQUFJLENBQUMsbUJBQW1CLENBQUMsd0JBQXdCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELElBQUksQ0FBQyxLQUE0QjtRQUMvQixJQUFJLEtBQUssQ0FBQyxhQUFhLEtBQUssS0FBSyxDQUFDLFlBQVksRUFBRTtZQUM5QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzlDO0lBQ0gsQ0FBQztJQUVELHNCQUFzQixDQUFDLEtBQTRCO1FBQ2pELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyx3QkFBd0IsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDekUsQ0FBQzs7a0hBeENVLHFCQUFxQjtzR0FBckIscUJBQXFCLGtKQ1hsQyxnMkRBMkRBOzJGRGhEYSxxQkFBcUI7a0JBSmpDLFNBQVM7K0JBQ0UsZUFBZTswR0FLaEIsWUFBWTtzQkFBcEIsS0FBSztnQkFDSSxnQkFBZ0I7c0JBQXpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJbWdTZWxlY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvaW1nLXNlbGVjdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHtDZGtEcmFnRHJvcH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XHJcbmltcG9ydCB7IHRhYkRpc3BsYXllZCB9IGZyb20gJy4uLy4uL2R0by9leHBvcnQtZHRvcy5hcGknO1xyXG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0IH0gZnJvbSAncnhqcyc7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpbWctc2VsZWN0aW9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaW1nLXNlbGVjdGlvbi5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEltZ1NlbGVjdGlvbkNvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpIHRhYkRpc3BsYXllZDogdGFiRGlzcGxheWVkO1xyXG4gIEBPdXRwdXQoKSBpbWdNYW5hZ2VyQ2xvc2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICByZW1vdmluZ0FsbDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGNhbmNlbGxpbmdBbGw6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBpbXBvcnRpbmdBbGw6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBkcmFnU3RhcnQgPSBmYWxzZTtcclxuICB2bSQgPSBjb21iaW5lTGF0ZXN0KHtcclxuICAgIGltZ1NlbGVjdGVkTGlzdDogdGhpcy5pbWdTZWxlY3Rpb25TZXJ2aWNlLmltZ1NlbGVjdGlvbiQsXHJcbiAgICBpc0xvYWRpbmc6IHRoaXMuaW1nU2VsZWN0aW9uU2VydmljZS5pbWdTZWxlY3RlZExpc3RMb2FkaW5nJFxyXG4gIH0pO1xyXG5cclxuXHJcbiAgdHJhc2hQb3NpdGlvbkluZGV4ID0gMDtcclxuICB0cmFzaFBvc2l0aW9uTGVmdCA9ICctNXB4JztcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGltZ1NlbGVjdGlvblNlcnZpY2U6IEltZ1NlbGVjdGlvblNlcnZpY2VcclxuICAgICkgeyB9XHJcblxyXG4gIGluaXQoKSB7XHJcbiAgICB0aGlzLnJlbW92aW5nQWxsID0gZmFsc2U7XHJcbiAgICB0aGlzLmNhbmNlbGxpbmdBbGwgPSBmYWxzZTtcclxuICAgIHRoaXMuaW1wb3J0aW5nQWxsID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICByZW1vdmVJbWcoaW5kZXg6IG51bWJlcikge1xyXG4gICAgdGhpcy5pbWdTZWxlY3Rpb25TZXJ2aWNlLnJlbW92ZUltZ1NlbGVjdGVkQnlJbmRleChpbmRleCk7XHJcbiAgfVxyXG5cclxuICBkcm9wKGV2ZW50OiBDZGtEcmFnRHJvcDxzdHJpbmdbXT4pIHtcclxuICAgIGlmIChldmVudC5wcmV2aW91c0luZGV4ICE9PSBldmVudC5jdXJyZW50SW5kZXgpIHtcclxuICAgICAgdGhpcy5pbWdTZWxlY3Rpb25TZXJ2aWNlLm1vdmVJbWdPcmRlcihldmVudCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZW1vdmVJbWdGcm9tU2VsZWN0aW9uKGV2ZW50OiBDZGtEcmFnRHJvcDxzdHJpbmdbXT4pIHtcclxuICAgIHRoaXMuaW1nU2VsZWN0aW9uU2VydmljZS5yZW1vdmVJbWdTZWxlY3RlZEJ5SW5kZXgoZXZlbnQucHJldmlvdXNJbmRleCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICBjbGFzcz1cInRyYXNoXCJcclxuICBjZGtEcm9wTGlzdFxyXG4gICN1blNlbGVjdExpc3Q9XCJjZGtEcm9wTGlzdFwiXHJcbiAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJyZW1vdmVJbWdGcm9tU2VsZWN0aW9uKCRldmVudClcIj5cclxuICAgIDxwPnt7J0ltZ01hbmFnZXIuSW1nU2VsZWN0aW9uLnVuc2VsZWN0JyB8IHRyYW5zbGF0ZX19PC9wPlxyXG48L2Rpdj5cclxuXHJcbjxuZy1jb250YWluZXIgKm5nSWY9XCJ2bSQgfCBhc3luYyBhcyB2bVwiPlxyXG5cclxuICA8ZGl2XHJcbiAgY2xhc3M9XCJpbWctc2VsZWN0aW9uXCJcclxuICAqbmdJZj1cIiF2bS5pc0xvYWRpbmc7IGVsc2UgTG9hZGluZ1wiXHJcbiAgW25nQ2xhc3NdPVwieydpbWctc2VsZWN0aW9uLS12aXNpYmxlJyA6IHZtLmltZ1NlbGVjdGVkTGlzdCAmJiB2bS5pbWdTZWxlY3RlZExpc3QubGVuZ3RofVwiXHJcbiAgPlxyXG5cclxuICAgICAgPGRpdlxyXG4gICAgICAgIGNka0Ryb3BMaXN0XHJcbiAgICAgICAgI3NlbGVjdGlvbkxpc3Q9XCJjZGtEcm9wTGlzdFwiXHJcbiAgICAgICAgY2RrRHJvcExpc3RPcmllbnRhdGlvbj1cImhvcml6b250YWxcIlxyXG4gICAgICAgIGNsYXNzPVwibGlzdF9pbWdfc2VsZWN0aW9uXCJcclxuICAgICAgICAoY2RrRHJvcExpc3REcm9wcGVkKT1cImRyb3AoJGV2ZW50KVwiXHJcbiAgICAgICAgW2Nka0Ryb3BMaXN0Q29ubmVjdGVkVG9dPVwiW3VuU2VsZWN0TGlzdF1cIlxyXG4gICAgICAgID5cclxuXHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzPVwiaW1nX2JveFwiXHJcbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBwaWN0dXJlIG9mIHZtLmltZ1NlbGVjdGVkTGlzdDsgbGV0IGluZGV4ID0gaW5kZXhcIlxyXG4gICAgICAgICAgICBjZGtEcmFnXHJcbiAgICAgICAgICAgIChjZGtEcmFnU3RhcnRlZCk9XCJkcmFnU3RhcnQgPSB0cnVlO1wiXHJcbiAgICAgICAgICAgIChjZGtEcmFnRW5kZWQpPVwiZHJhZ1N0YXJ0ID0gZmFsc2U7XCJcclxuICAgICAgICAgICAgPlxyXG5cclxuICAgICAgICAgICAgPGltZ1xyXG4gICAgICAgICAgICAgICpuZ0lmPVwiaW5kZXggPCAxXCJcclxuICAgICAgICAgICAgICBjbGFzcz1cImRyYWdfX2ltZ1wiXHJcbiAgICAgICAgICAgICAgW3NyY109XCJwaWN0dXJlLmZpbGVfbmFtZSB8IGltZ1NyYyA6ICc0MDAnXCJcclxuICAgICAgICAgICAgICBbdGl0bGVdPVwicGljdHVyZS5kaXNwbGF5X25hbWVcIlxyXG4gICAgICAgICAgICAvPlxyXG5cclxuICAgICAgICAgICAgPGltZ1xyXG4gICAgICAgICAgICAgICpuZ0lmPVwiaW5kZXggPiAwXCJcclxuICAgICAgICAgICAgICBjbGFzcz1cImRyYWdfX2ltZ1wiXHJcbiAgICAgICAgICAgICAgW3NyY109XCJwaWN0dXJlLmZpbGVfbmFtZSB8IGltZ1NyYyA6ICcyMDAnXCJcclxuICAgICAgICAgICAgICBbdGl0bGVdPVwicGljdHVyZS5kaXNwbGF5X25hbWVcIlxyXG4gICAgICAgICAgICAvPlxyXG5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRlbGV0ZS1idG5cIiAoY2xpY2spPVwicmVtb3ZlSW1nKGluZGV4KVwiPnt7J0ltZ01hbmFnZXIuSW1nU2VsZWN0aW9uLmRlbGV0ZUltZycgfCB0cmFuc2xhdGV9fTwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJkcmFnX190b29sdGlwc1wiPnt7J0ltZ01hbmFnZXIuSW1nU2VsZWN0aW9uLnRvb2x0aXBzJyB8IHRyYW5zbGF0ZX19PC9zcGFuPlxyXG5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9uZy1jb250YWluZXI+XHJcbjwhLS0gTG9hZGVyIC0tPlxyXG48bmctdGVtcGxhdGUgI0xvYWRpbmc+XHJcbiAgPHd6LWxvYWRlcj48L3d6LWxvYWRlcj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1nLXNlbGVjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ei1pbWctbWFuYWdlci9zcmMvbGliL2NvbXBvbmVudHMvaW1nLXNlbGVjdGlvbi9pbWctc2VsZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3d6LWltZy1tYW5hZ2VyL3NyYy9saWIvY29tcG9uZW50cy9pbWctc2VsZWN0aW9uL2ltZy1zZWxlY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUczRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7OztBQU9yQyxNQUFNLE9BQU8scUJBQXFCO0lBa0JoQyxZQUNVLG1CQUF3QztRQUF4Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBaEJ4QyxxQkFBZ0IsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRWhELGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBQzdCLGtCQUFhLEdBQVksS0FBSyxDQUFDO1FBQy9CLGlCQUFZLEdBQVksS0FBSyxDQUFDO1FBQzlCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsUUFBRyxHQUFHLGFBQWEsQ0FBQztZQUNsQixlQUFlLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGFBQWE7WUFDdkQsU0FBUyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyx1QkFBdUI7U0FDNUQsQ0FBQyxDQUFDO1FBR0gsdUJBQWtCLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZCLHNCQUFpQixHQUFHLE1BQU0sQ0FBQztJQUlyQixDQUFDO0lBRVAsSUFBSTtRQUNGLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO0lBQzVCLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBYTtRQUNyQixJQUFJLENBQUMsbUJBQW1CLENBQUMsd0JBQXdCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELElBQUksQ0FBQyxLQUE0QjtRQUMvQixJQUFJLEtBQUssQ0FBQyxhQUFhLEtBQUssS0FBSyxDQUFDLFlBQVksRUFBRTtZQUM5QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzlDO0lBQ0gsQ0FBQztJQUVELHNCQUFzQixDQUFDLEtBQTRCO1FBQ2pELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyx3QkFBd0IsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDekUsQ0FBQzs7a0hBeENVLHFCQUFxQjtzR0FBckIscUJBQXFCLGtKQ1hsQywwdURBMkRBOzJGRGhEYSxxQkFBcUI7a0JBSmpDLFNBQVM7K0JBQ0UsZUFBZTswR0FLaEIsWUFBWTtzQkFBcEIsS0FBSztnQkFDSSxnQkFBZ0I7c0JBQXpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW1nU2VsZWN0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2ltZy1zZWxlY3Rpb24uc2VydmljZSc7XG5pbXBvcnQge0Nka0RyYWdEcm9wfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcbmltcG9ydCB7IHRhYkRpc3BsYXllZCB9IGZyb20gJy4uLy4uL2R0by9leHBvcnQtZHRvcy5hcGknO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCB9IGZyb20gJ3J4anMnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ltZy1zZWxlY3Rpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vaW1nLXNlbGVjdGlvbi5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgSW1nU2VsZWN0aW9uQ29tcG9uZW50IHtcblxuICBASW5wdXQoKSB0YWJEaXNwbGF5ZWQ6IHRhYkRpc3BsYXllZDtcbiAgQE91dHB1dCgpIGltZ01hbmFnZXJDbG9zZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgcmVtb3ZpbmdBbGw6IGJvb2xlYW4gPSBmYWxzZTtcbiAgY2FuY2VsbGluZ0FsbDogYm9vbGVhbiA9IGZhbHNlO1xuICBpbXBvcnRpbmdBbGw6IGJvb2xlYW4gPSBmYWxzZTtcbiAgZHJhZ1N0YXJ0ID0gZmFsc2U7XG4gIHZtJCA9IGNvbWJpbmVMYXRlc3Qoe1xuICAgIGltZ1NlbGVjdGVkTGlzdDogdGhpcy5pbWdTZWxlY3Rpb25TZXJ2aWNlLmltZ1NlbGVjdGlvbiQsXG4gICAgaXNMb2FkaW5nOiB0aGlzLmltZ1NlbGVjdGlvblNlcnZpY2UuaW1nU2VsZWN0ZWRMaXN0TG9hZGluZyRcbiAgfSk7XG5cblxuICB0cmFzaFBvc2l0aW9uSW5kZXggPSAwO1xuICB0cmFzaFBvc2l0aW9uTGVmdCA9ICctNXB4JztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGltZ1NlbGVjdGlvblNlcnZpY2U6IEltZ1NlbGVjdGlvblNlcnZpY2VcbiAgICApIHsgfVxuXG4gIGluaXQoKSB7XG4gICAgdGhpcy5yZW1vdmluZ0FsbCA9IGZhbHNlO1xuICAgIHRoaXMuY2FuY2VsbGluZ0FsbCA9IGZhbHNlO1xuICAgIHRoaXMuaW1wb3J0aW5nQWxsID0gZmFsc2U7XG4gIH1cblxuICByZW1vdmVJbWcoaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMuaW1nU2VsZWN0aW9uU2VydmljZS5yZW1vdmVJbWdTZWxlY3RlZEJ5SW5kZXgoaW5kZXgpO1xuICB9XG5cbiAgZHJvcChldmVudDogQ2RrRHJhZ0Ryb3A8c3RyaW5nW10+KSB7XG4gICAgaWYgKGV2ZW50LnByZXZpb3VzSW5kZXggIT09IGV2ZW50LmN1cnJlbnRJbmRleCkge1xuICAgICAgdGhpcy5pbWdTZWxlY3Rpb25TZXJ2aWNlLm1vdmVJbWdPcmRlcihldmVudCk7XG4gICAgfVxuICB9XG5cbiAgcmVtb3ZlSW1nRnJvbVNlbGVjdGlvbihldmVudDogQ2RrRHJhZ0Ryb3A8c3RyaW5nW10+KSB7XG4gICAgdGhpcy5pbWdTZWxlY3Rpb25TZXJ2aWNlLnJlbW92ZUltZ1NlbGVjdGVkQnlJbmRleChldmVudC5wcmV2aW91c0luZGV4KTtcbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cInRyYXNoXCJcbiAgY2RrRHJvcExpc3RcbiAgI3VuU2VsZWN0TGlzdD1cImNka0Ryb3BMaXN0XCJcbiAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJyZW1vdmVJbWdGcm9tU2VsZWN0aW9uKCRldmVudClcIj5cbiAgICA8cD57eydJbWdNYW5hZ2VyLkltZ1NlbGVjdGlvbi51bnNlbGVjdCcgfCB0cmFuc2xhdGV9fTwvcD5cbjwvZGl2PlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwidm0kIHwgYXN5bmMgYXMgdm1cIj5cblxuICA8ZGl2XG4gIGNsYXNzPVwiaW1nLXNlbGVjdGlvblwiXG4gICpuZ0lmPVwiIXZtLmlzTG9hZGluZzsgZWxzZSBMb2FkaW5nXCJcbiAgW25nQ2xhc3NdPVwieydpbWctc2VsZWN0aW9uLS12aXNpYmxlJyA6IHZtLmltZ1NlbGVjdGVkTGlzdCAmJiB2bS5pbWdTZWxlY3RlZExpc3QubGVuZ3RofVwiXG4gID5cblxuICAgICAgPGRpdlxuICAgICAgICBjZGtEcm9wTGlzdFxuICAgICAgICAjc2VsZWN0aW9uTGlzdD1cImNka0Ryb3BMaXN0XCJcbiAgICAgICAgY2RrRHJvcExpc3RPcmllbnRhdGlvbj1cImhvcml6b250YWxcIlxuICAgICAgICBjbGFzcz1cImxpc3RfaW1nX3NlbGVjdGlvblwiXG4gICAgICAgIChjZGtEcm9wTGlzdERyb3BwZWQpPVwiZHJvcCgkZXZlbnQpXCJcbiAgICAgICAgW2Nka0Ryb3BMaXN0Q29ubmVjdGVkVG9dPVwiW3VuU2VsZWN0TGlzdF1cIlxuICAgICAgICA+XG5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImltZ19ib3hcIlxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IHBpY3R1cmUgb2Ygdm0uaW1nU2VsZWN0ZWRMaXN0OyBsZXQgaW5kZXggPSBpbmRleFwiXG4gICAgICAgICAgICBjZGtEcmFnXG4gICAgICAgICAgICAoY2RrRHJhZ1N0YXJ0ZWQpPVwiZHJhZ1N0YXJ0ID0gdHJ1ZTtcIlxuICAgICAgICAgICAgKGNka0RyYWdFbmRlZCk9XCJkcmFnU3RhcnQgPSBmYWxzZTtcIlxuICAgICAgICAgICAgPlxuXG4gICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICpuZ0lmPVwiaW5kZXggPCAxXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJkcmFnX19pbWdcIlxuICAgICAgICAgICAgICBbc3JjXT1cInBpY3R1cmUuZmlsZV9uYW1lIHwgaW1nU3JjIDogJzQwMCdcIlxuICAgICAgICAgICAgICBbdGl0bGVdPVwicGljdHVyZS5kaXNwbGF5X25hbWVcIlxuICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAqbmdJZj1cImluZGV4ID4gMFwiXG4gICAgICAgICAgICAgIGNsYXNzPVwiZHJhZ19faW1nXCJcbiAgICAgICAgICAgICAgW3NyY109XCJwaWN0dXJlLmZpbGVfbmFtZSB8IGltZ1NyYyA6ICcyMDAnXCJcbiAgICAgICAgICAgICAgW3RpdGxlXT1cInBpY3R1cmUuZGlzcGxheV9uYW1lXCJcbiAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkZWxldGUtYnRuXCIgKGNsaWNrKT1cInJlbW92ZUltZyhpbmRleClcIj57eydJbWdNYW5hZ2VyLkltZ1NlbGVjdGlvbi5kZWxldGVJbWcnIHwgdHJhbnNsYXRlfX08L2Rpdj5cblxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJkcmFnX190b29sdGlwc1wiPnt7J0ltZ01hbmFnZXIuSW1nU2VsZWN0aW9uLnRvb2x0aXBzJyB8IHRyYW5zbGF0ZX19PC9zcGFuPlxuXG4gICAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbjwhLS0gTG9hZGVyIC0tPlxuPG5nLXRlbXBsYXRlICNMb2FkaW5nPlxuICA8d3otbG9hZGVyPjwvd3otbG9hZGVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -99,10 +99,10 @@ export class ImgTabsComponent {
99
99
  }
100
100
  }
101
101
  ImgTabsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ImgTabsComponent, deps: [{ token: i1.ImgEventService }, { token: i2.AlertService }, { token: i3.Router }], target: i0.ɵɵFactoryTarget.Component });
102
- ImgTabsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ImgTabsComponent, selector: "img-tabs", inputs: { multipleImgMode: "multipleImgMode", stateDisplayed: "stateDisplayed", listDisplayed: "listDisplayed" }, outputs: { imgManagerClosed: "imgManagerClosed", currentTab: "currentTab", switchDisplayWindow: "switchDisplayWindow" }, viewQueries: [{ propertyName: "imgUploadedComponent", first: true, predicate: ["imgUploadedImg"], descendants: true }], ngImport: i0, template: "<div\r\n class=\"img-tabs\" [ngClass]=\"{'small': stateDisplayed === 'small'}\">\r\n <div class=\"wrapper-tabs\">\r\n <div\r\n class=\"tabs\"\r\n [ngClass]=\"\r\n {\r\n 'tabs--notWindow': stateDisplayed !== 'window',\r\n 'tabs--notDisplayed': stateDisplayed === 'window' && tabActive.value === tabs[3].value\r\n }\">\r\n\r\n <ul>\r\n <li class=\"is-active\" [ngClass]=\"{'is-active': tabActive.value === tabs[0].value}\" (click)=\"toggleTabs(tabs[0])\"><a>{{ tabs[0].name | translate }}</a></li>\r\n <li [ngClass]=\"{'is-active': tabActive.value === tabs[1].value}\" (click)=\"toggleTabs(tabs[1])\"><a>{{ tabs[1].name | translate }}</a></li>\r\n <li [ngClass]=\"{'is-active': tabActive.value === tabs[2].value}\" (click)=\"toggleTabs(tabs[2])\"><a>{{ tabs[2].name | translate }}</a></li>\r\n <li [ngClass]=\"{'is-active': tabActive.value === tabs[3].value}\" *ngIf=\"editTab\"><a>{{ tabs[3].name | translate }}</a></li>\r\n </ul>\r\n <div\r\n class=\"img-tabs__canva\"\r\n [ngClass]=\"{'img-tabs__canva--window': stateDisplayed === 'window'}\">\r\n <canva-btn\r\n (showImgUploaded)=\"onShowImgUploaded()\"\r\n [stateDisplayed]=\"stateDisplayed\">\r\n </canva-btn>\r\n </div>\r\n </div>\r\n <div class=\"select-mobile-page\">\r\n <wac-select\r\n [(ngModel)]=\"tabActive\"\r\n name=\"tabs\"\r\n [items]=\"tabs\"\r\n ></wac-select>\r\n </div>\r\n </div>\r\n\r\n <!-- Upload section -->\r\n <div\r\n class=\"columns img-tabs__tabsFirst\"\r\n [ngClass]=\"{\r\n 'img-tabs__tabsFirst--small': stateDisplayed === 'small',\r\n 'img-tabs__tabsFirst--window': stateDisplayed === 'window'\r\n }\"\r\n *ngIf=\"tabActive.value === tabs[0].value\">\r\n <div class=\"column img-tabs__tabsFirst__upload\">\r\n <img-upload\r\n [stateDisplayed]=\"stateDisplayed\"\r\n (imgUploaded)=\"onImgUploaded($event)\"\r\n ></img-upload>\r\n </div>\r\n <div class=\"column img-tabs__tabsFirst__list\" [ngClass]=\"{\r\n 'img-tabs__tabsFirst__list--upload': imgUpload\r\n }\">\r\n <images-view\r\n *ngIf=\"!imgUpload\"\r\n [stateDisplayed]=\"stateDisplayed\"\r\n [listDisplayed]=\"false\"\r\n [multipleImgMode]=\"multipleImgMode\"\r\n [tabDisplayed]=\"tabActive.value\"\r\n [nbRowToShow]=\"2\"\r\n (switchDisplayWindow)=\"switchDisplayWindowImgView()\"\r\n [fullSize]=\"false\">\r\n </images-view>\r\n\r\n\r\n <div [hidden]=\"!imgUpload\">\r\n <upload-list\r\n #imgUploadedImg\r\n [stateDisplayed]=\"stateDisplayed\"\r\n [tabDisplayed]=\"tabActive.value\"\r\n [multipleImgMode]=\"multipleImgMode\"\r\n (switchDisplayWindow)=\"switchDisplayWindowImgView()\"\r\n >\r\n </upload-list>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Images section -->\r\n <div class=\"columns img-tabs__tabsSecond\" *ngIf=\"tabActive.value === tabs[1].value\">\r\n <div class=\"column\">\r\n\r\n <images-view\r\n [stateDisplayed]=\"stateDisplayed\"\r\n [listDisplayed]=\"listDisplayed\"\r\n [multipleImgMode]=\"multipleImgMode\"\r\n [tabDisplayed]=\"tabActive.value\"\r\n (switchDisplayWindow)=\"switchDisplayWindowImgView()\"\r\n [fullSize]=\"true\">\r\n </images-view>\r\n\r\n </div>\r\n </div>\r\n\r\n <!-- Pexels img section -->\r\n <div class=\"columns img-tabs__tabsThird\" *ngIf=\"tabActive.value === tabs[2].value\">\r\n <div class=\"column\">\r\n <pexels-lib\r\n [stateDisplayed]=\"stateDisplayed\"\r\n (showImgUploaded)=\"onShowImgUploaded()\">\r\n </pexels-lib>\r\n </div>\r\n </div>\r\n\r\n <!--Edition section -->\r\n <div class=\"columns img-tabs__tabsEdit\" *ngIf=\"tabActive.value === tabs[3].value\">\r\n <div class=\"column\">\r\n <img-editor\r\n [stateDisplayed]=\"stateDisplayed\"\r\n [imgToEdit]=\"imgToEdit\"\r\n (editClosed)=\"onEditClosed($event)\">\r\n </img-editor>\r\n </div>\r\n </div>\r\n\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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.ImgUploadComponent, selector: "img-upload", inputs: ["stateDisplayed"], outputs: ["imgUploaded"] }, { kind: "component", type: i7.PexelLibComponent, selector: "pexels-lib", inputs: ["stateDisplayed", "searchValue", "disableSearch"] }, { kind: "component", type: i8.UploadListComponent, selector: "upload-list", inputs: ["stateDisplayed", "tabDisplayed", "multipleImgMode"], outputs: ["switchDisplayWindow"] }, { kind: "component", type: i9.ImgEditorComponent, selector: "img-editor", inputs: ["stateDisplayed", "imgToEdit"], outputs: ["editClosed"] }, { kind: "component", type: i10.CanvaBtnComponent, selector: "canva-btn", inputs: ["stateDisplayed"], outputs: ["showImgUploaded"] }, { kind: "component", type: i11.ImagesViewComponent, selector: "images-view", inputs: ["stateDisplayed", "tabDisplayed", "fullSize", "nbRowToShow", "listDisplayed", "multipleImgMode"], outputs: ["switchDisplayWindow"] }, { kind: "component", type: i12.SelectComponent, selector: "wac-select", inputs: ["items", "placeholder", "label", "maxWidthItems", "search", "type", "callToAction", "maxWidth", "disabled"], outputs: ["selectValue", "clickOnCallToAction"] }, { kind: "pipe", type: i13.TranslatePipe, name: "translate" }] });
102
+ ImgTabsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ImgTabsComponent, selector: "img-tabs", inputs: { multipleImgMode: "multipleImgMode", stateDisplayed: "stateDisplayed", listDisplayed: "listDisplayed" }, outputs: { imgManagerClosed: "imgManagerClosed", currentTab: "currentTab", switchDisplayWindow: "switchDisplayWindow" }, viewQueries: [{ propertyName: "imgUploadedComponent", first: true, predicate: ["imgUploadedImg"], descendants: true }], ngImport: i0, template: "<div\n class=\"img-tabs\" [ngClass]=\"{'small': stateDisplayed === 'small'}\">\n <div class=\"wrapper-tabs\">\n <div\n class=\"tabs\"\n [ngClass]=\"\n {\n 'tabs--notWindow': stateDisplayed !== 'window',\n 'tabs--notDisplayed': stateDisplayed === 'window' && tabActive.value === tabs[3].value\n }\">\n\n <ul>\n <li class=\"is-active\" [ngClass]=\"{'is-active': tabActive.value === tabs[0].value}\" (click)=\"toggleTabs(tabs[0])\"><a>{{ tabs[0].name | translate }}</a></li>\n <li [ngClass]=\"{'is-active': tabActive.value === tabs[1].value}\" (click)=\"toggleTabs(tabs[1])\"><a>{{ tabs[1].name | translate }}</a></li>\n <li [ngClass]=\"{'is-active': tabActive.value === tabs[2].value}\" (click)=\"toggleTabs(tabs[2])\"><a>{{ tabs[2].name | translate }}</a></li>\n <li [ngClass]=\"{'is-active': tabActive.value === tabs[3].value}\" *ngIf=\"editTab\"><a>{{ tabs[3].name | translate }}</a></li>\n </ul>\n <div\n class=\"img-tabs__canva\"\n [ngClass]=\"{'img-tabs__canva--window': stateDisplayed === 'window'}\">\n <canva-btn\n (showImgUploaded)=\"onShowImgUploaded()\"\n [stateDisplayed]=\"stateDisplayed\">\n </canva-btn>\n </div>\n </div>\n <div class=\"select-mobile-page\">\n <wac-select\n [(ngModel)]=\"tabActive\"\n name=\"tabs\"\n [items]=\"tabs\"\n ></wac-select>\n </div>\n </div>\n\n <!-- Upload section -->\n <div\n class=\"columns img-tabs__tabsFirst\"\n [ngClass]=\"{\n 'img-tabs__tabsFirst--small': stateDisplayed === 'small',\n 'img-tabs__tabsFirst--window': stateDisplayed === 'window'\n }\"\n *ngIf=\"tabActive.value === tabs[0].value\">\n <div class=\"column img-tabs__tabsFirst__upload\">\n <img-upload\n [stateDisplayed]=\"stateDisplayed\"\n (imgUploaded)=\"onImgUploaded($event)\"\n ></img-upload>\n </div>\n <div class=\"column img-tabs__tabsFirst__list\" [ngClass]=\"{\n 'img-tabs__tabsFirst__list--upload': imgUpload\n }\">\n <images-view\n *ngIf=\"!imgUpload\"\n [stateDisplayed]=\"stateDisplayed\"\n [listDisplayed]=\"false\"\n [multipleImgMode]=\"multipleImgMode\"\n [tabDisplayed]=\"tabActive.value\"\n [nbRowToShow]=\"2\"\n (switchDisplayWindow)=\"switchDisplayWindowImgView()\"\n [fullSize]=\"false\">\n </images-view>\n\n\n <div [hidden]=\"!imgUpload\">\n <upload-list\n #imgUploadedImg\n [stateDisplayed]=\"stateDisplayed\"\n [tabDisplayed]=\"tabActive.value\"\n [multipleImgMode]=\"multipleImgMode\"\n (switchDisplayWindow)=\"switchDisplayWindowImgView()\"\n >\n </upload-list>\n </div>\n </div>\n </div>\n\n <!-- Images section -->\n <div class=\"columns img-tabs__tabsSecond\" *ngIf=\"tabActive.value === tabs[1].value\">\n <div class=\"column\">\n\n <images-view\n [stateDisplayed]=\"stateDisplayed\"\n [listDisplayed]=\"listDisplayed\"\n [multipleImgMode]=\"multipleImgMode\"\n [tabDisplayed]=\"tabActive.value\"\n (switchDisplayWindow)=\"switchDisplayWindowImgView()\"\n [fullSize]=\"true\">\n </images-view>\n\n </div>\n </div>\n\n <!-- Pexels img section -->\n <div class=\"columns img-tabs__tabsThird\" *ngIf=\"tabActive.value === tabs[2].value\">\n <div class=\"column\">\n <pexels-lib\n [stateDisplayed]=\"stateDisplayed\"\n (showImgUploaded)=\"onShowImgUploaded()\">\n </pexels-lib>\n </div>\n </div>\n\n <!--Edition section -->\n <div class=\"columns img-tabs__tabsEdit\" *ngIf=\"tabActive.value === tabs[3].value\">\n <div class=\"column\">\n <img-editor\n [stateDisplayed]=\"stateDisplayed\"\n [imgToEdit]=\"imgToEdit\"\n (editClosed)=\"onEditClosed($event)\">\n </img-editor>\n </div>\n </div>\n\n</div>\n", dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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.ImgUploadComponent, selector: "img-upload", inputs: ["stateDisplayed"], outputs: ["imgUploaded"] }, { kind: "component", type: i7.PexelLibComponent, selector: "pexels-lib", inputs: ["stateDisplayed", "searchValue", "disableSearch"] }, { kind: "component", type: i8.UploadListComponent, selector: "upload-list", inputs: ["stateDisplayed", "tabDisplayed", "multipleImgMode"], outputs: ["switchDisplayWindow"] }, { kind: "component", type: i9.ImgEditorComponent, selector: "img-editor", inputs: ["stateDisplayed", "imgToEdit"], outputs: ["editClosed"] }, { kind: "component", type: i10.CanvaBtnComponent, selector: "canva-btn", inputs: ["stateDisplayed"], outputs: ["showImgUploaded"] }, { kind: "component", type: i11.ImagesViewComponent, selector: "images-view", inputs: ["stateDisplayed", "tabDisplayed", "fullSize", "nbRowToShow", "listDisplayed", "multipleImgMode"], outputs: ["switchDisplayWindow"] }, { kind: "component", type: i12.SelectComponent, selector: "wac-select", inputs: ["items", "placeholder", "label", "maxWidthItems", "search", "type", "callToAction", "maxWidth", "disabled"], outputs: ["selectValue", "clickOnCallToAction"] }, { kind: "pipe", type: i13.TranslatePipe, name: "translate" }] });
103
103
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ImgTabsComponent, decorators: [{
104
104
  type: Component,
105
- args: [{ selector: 'img-tabs', template: "<div\r\n class=\"img-tabs\" [ngClass]=\"{'small': stateDisplayed === 'small'}\">\r\n <div class=\"wrapper-tabs\">\r\n <div\r\n class=\"tabs\"\r\n [ngClass]=\"\r\n {\r\n 'tabs--notWindow': stateDisplayed !== 'window',\r\n 'tabs--notDisplayed': stateDisplayed === 'window' && tabActive.value === tabs[3].value\r\n }\">\r\n\r\n <ul>\r\n <li class=\"is-active\" [ngClass]=\"{'is-active': tabActive.value === tabs[0].value}\" (click)=\"toggleTabs(tabs[0])\"><a>{{ tabs[0].name | translate }}</a></li>\r\n <li [ngClass]=\"{'is-active': tabActive.value === tabs[1].value}\" (click)=\"toggleTabs(tabs[1])\"><a>{{ tabs[1].name | translate }}</a></li>\r\n <li [ngClass]=\"{'is-active': tabActive.value === tabs[2].value}\" (click)=\"toggleTabs(tabs[2])\"><a>{{ tabs[2].name | translate }}</a></li>\r\n <li [ngClass]=\"{'is-active': tabActive.value === tabs[3].value}\" *ngIf=\"editTab\"><a>{{ tabs[3].name | translate }}</a></li>\r\n </ul>\r\n <div\r\n class=\"img-tabs__canva\"\r\n [ngClass]=\"{'img-tabs__canva--window': stateDisplayed === 'window'}\">\r\n <canva-btn\r\n (showImgUploaded)=\"onShowImgUploaded()\"\r\n [stateDisplayed]=\"stateDisplayed\">\r\n </canva-btn>\r\n </div>\r\n </div>\r\n <div class=\"select-mobile-page\">\r\n <wac-select\r\n [(ngModel)]=\"tabActive\"\r\n name=\"tabs\"\r\n [items]=\"tabs\"\r\n ></wac-select>\r\n </div>\r\n </div>\r\n\r\n <!-- Upload section -->\r\n <div\r\n class=\"columns img-tabs__tabsFirst\"\r\n [ngClass]=\"{\r\n 'img-tabs__tabsFirst--small': stateDisplayed === 'small',\r\n 'img-tabs__tabsFirst--window': stateDisplayed === 'window'\r\n }\"\r\n *ngIf=\"tabActive.value === tabs[0].value\">\r\n <div class=\"column img-tabs__tabsFirst__upload\">\r\n <img-upload\r\n [stateDisplayed]=\"stateDisplayed\"\r\n (imgUploaded)=\"onImgUploaded($event)\"\r\n ></img-upload>\r\n </div>\r\n <div class=\"column img-tabs__tabsFirst__list\" [ngClass]=\"{\r\n 'img-tabs__tabsFirst__list--upload': imgUpload\r\n }\">\r\n <images-view\r\n *ngIf=\"!imgUpload\"\r\n [stateDisplayed]=\"stateDisplayed\"\r\n [listDisplayed]=\"false\"\r\n [multipleImgMode]=\"multipleImgMode\"\r\n [tabDisplayed]=\"tabActive.value\"\r\n [nbRowToShow]=\"2\"\r\n (switchDisplayWindow)=\"switchDisplayWindowImgView()\"\r\n [fullSize]=\"false\">\r\n </images-view>\r\n\r\n\r\n <div [hidden]=\"!imgUpload\">\r\n <upload-list\r\n #imgUploadedImg\r\n [stateDisplayed]=\"stateDisplayed\"\r\n [tabDisplayed]=\"tabActive.value\"\r\n [multipleImgMode]=\"multipleImgMode\"\r\n (switchDisplayWindow)=\"switchDisplayWindowImgView()\"\r\n >\r\n </upload-list>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Images section -->\r\n <div class=\"columns img-tabs__tabsSecond\" *ngIf=\"tabActive.value === tabs[1].value\">\r\n <div class=\"column\">\r\n\r\n <images-view\r\n [stateDisplayed]=\"stateDisplayed\"\r\n [listDisplayed]=\"listDisplayed\"\r\n [multipleImgMode]=\"multipleImgMode\"\r\n [tabDisplayed]=\"tabActive.value\"\r\n (switchDisplayWindow)=\"switchDisplayWindowImgView()\"\r\n [fullSize]=\"true\">\r\n </images-view>\r\n\r\n </div>\r\n </div>\r\n\r\n <!-- Pexels img section -->\r\n <div class=\"columns img-tabs__tabsThird\" *ngIf=\"tabActive.value === tabs[2].value\">\r\n <div class=\"column\">\r\n <pexels-lib\r\n [stateDisplayed]=\"stateDisplayed\"\r\n (showImgUploaded)=\"onShowImgUploaded()\">\r\n </pexels-lib>\r\n </div>\r\n </div>\r\n\r\n <!--Edition section -->\r\n <div class=\"columns img-tabs__tabsEdit\" *ngIf=\"tabActive.value === tabs[3].value\">\r\n <div class=\"column\">\r\n <img-editor\r\n [stateDisplayed]=\"stateDisplayed\"\r\n [imgToEdit]=\"imgToEdit\"\r\n (editClosed)=\"onEditClosed($event)\">\r\n </img-editor>\r\n </div>\r\n </div>\r\n\r\n</div>\r\n" }]
105
+ args: [{ selector: 'img-tabs', template: "<div\n class=\"img-tabs\" [ngClass]=\"{'small': stateDisplayed === 'small'}\">\n <div class=\"wrapper-tabs\">\n <div\n class=\"tabs\"\n [ngClass]=\"\n {\n 'tabs--notWindow': stateDisplayed !== 'window',\n 'tabs--notDisplayed': stateDisplayed === 'window' && tabActive.value === tabs[3].value\n }\">\n\n <ul>\n <li class=\"is-active\" [ngClass]=\"{'is-active': tabActive.value === tabs[0].value}\" (click)=\"toggleTabs(tabs[0])\"><a>{{ tabs[0].name | translate }}</a></li>\n <li [ngClass]=\"{'is-active': tabActive.value === tabs[1].value}\" (click)=\"toggleTabs(tabs[1])\"><a>{{ tabs[1].name | translate }}</a></li>\n <li [ngClass]=\"{'is-active': tabActive.value === tabs[2].value}\" (click)=\"toggleTabs(tabs[2])\"><a>{{ tabs[2].name | translate }}</a></li>\n <li [ngClass]=\"{'is-active': tabActive.value === tabs[3].value}\" *ngIf=\"editTab\"><a>{{ tabs[3].name | translate }}</a></li>\n </ul>\n <div\n class=\"img-tabs__canva\"\n [ngClass]=\"{'img-tabs__canva--window': stateDisplayed === 'window'}\">\n <canva-btn\n (showImgUploaded)=\"onShowImgUploaded()\"\n [stateDisplayed]=\"stateDisplayed\">\n </canva-btn>\n </div>\n </div>\n <div class=\"select-mobile-page\">\n <wac-select\n [(ngModel)]=\"tabActive\"\n name=\"tabs\"\n [items]=\"tabs\"\n ></wac-select>\n </div>\n </div>\n\n <!-- Upload section -->\n <div\n class=\"columns img-tabs__tabsFirst\"\n [ngClass]=\"{\n 'img-tabs__tabsFirst--small': stateDisplayed === 'small',\n 'img-tabs__tabsFirst--window': stateDisplayed === 'window'\n }\"\n *ngIf=\"tabActive.value === tabs[0].value\">\n <div class=\"column img-tabs__tabsFirst__upload\">\n <img-upload\n [stateDisplayed]=\"stateDisplayed\"\n (imgUploaded)=\"onImgUploaded($event)\"\n ></img-upload>\n </div>\n <div class=\"column img-tabs__tabsFirst__list\" [ngClass]=\"{\n 'img-tabs__tabsFirst__list--upload': imgUpload\n }\">\n <images-view\n *ngIf=\"!imgUpload\"\n [stateDisplayed]=\"stateDisplayed\"\n [listDisplayed]=\"false\"\n [multipleImgMode]=\"multipleImgMode\"\n [tabDisplayed]=\"tabActive.value\"\n [nbRowToShow]=\"2\"\n (switchDisplayWindow)=\"switchDisplayWindowImgView()\"\n [fullSize]=\"false\">\n </images-view>\n\n\n <div [hidden]=\"!imgUpload\">\n <upload-list\n #imgUploadedImg\n [stateDisplayed]=\"stateDisplayed\"\n [tabDisplayed]=\"tabActive.value\"\n [multipleImgMode]=\"multipleImgMode\"\n (switchDisplayWindow)=\"switchDisplayWindowImgView()\"\n >\n </upload-list>\n </div>\n </div>\n </div>\n\n <!-- Images section -->\n <div class=\"columns img-tabs__tabsSecond\" *ngIf=\"tabActive.value === tabs[1].value\">\n <div class=\"column\">\n\n <images-view\n [stateDisplayed]=\"stateDisplayed\"\n [listDisplayed]=\"listDisplayed\"\n [multipleImgMode]=\"multipleImgMode\"\n [tabDisplayed]=\"tabActive.value\"\n (switchDisplayWindow)=\"switchDisplayWindowImgView()\"\n [fullSize]=\"true\">\n </images-view>\n\n </div>\n </div>\n\n <!-- Pexels img section -->\n <div class=\"columns img-tabs__tabsThird\" *ngIf=\"tabActive.value === tabs[2].value\">\n <div class=\"column\">\n <pexels-lib\n [stateDisplayed]=\"stateDisplayed\"\n (showImgUploaded)=\"onShowImgUploaded()\">\n </pexels-lib>\n </div>\n </div>\n\n <!--Edition section -->\n <div class=\"columns img-tabs__tabsEdit\" *ngIf=\"tabActive.value === tabs[3].value\">\n <div class=\"column\">\n <img-editor\n [stateDisplayed]=\"stateDisplayed\"\n [imgToEdit]=\"imgToEdit\"\n (editClosed)=\"onEditClosed($event)\">\n </img-editor>\n </div>\n </div>\n\n</div>\n" }]
106
106
  }], ctorParameters: function () { return [{ type: i1.ImgEventService }, { type: i2.AlertService }, { type: i3.Router }]; }, propDecorators: { multipleImgMode: [{
107
107
  type: Input
108
108
  }], stateDisplayed: [{
@@ -119,4 +119,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
119
119
  type: ViewChild,
120
120
  args: ['imgUploadedImg']
121
121
  }] } });
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1nLXRhYnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd3otaW1nLW1hbmFnZXIvc3JjL2xpYi9jb21wb25lbnRzL2ltZy10YWJzL2ltZy10YWJzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3d6LWltZy1tYW5hZ2VyL3NyYy9saWIvY29tcG9uZW50cy9pbWctdGFicy9pbWctdGFicy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBVSxTQUFTLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV4RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFHbkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0FBT3ZDLE1BQU0sT0FBTyxnQkFBZ0I7SUE2RDNCLFlBQ1UsbUJBQW9DLEVBQ3BDLFlBQTBCLEVBQzFCLEtBQWE7UUFGYix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQWlCO1FBQ3BDLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLFVBQUssR0FBTCxLQUFLLENBQVE7UUE3RHZCLG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBSWpDLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBR3RCLHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHdEMsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHaEMsd0JBQW1CLEdBQTBCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFaEUsU0FBSSxHQUFpQjtZQUNuQjtn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LGdCQUFnQjtzQkFEZixNQUFNO2dCQUlQLFVBQVU7c0JBRFQsTUFBTTtnQkFJUCxtQkFBbUI7c0JBRGxCLE1BQU07Z0JBdUNQLG9CQUFvQjtzQkFEbkIsU0FBUzt1QkFBRSxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkLCBPdXRwdXQsIEV2ZW50RW1pdHRlcn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEltZ1BpY3R1cmVEVE8gfSBmcm9tICcuLi8uLi9kdG8vaW1nLW1hbmFnZXIuZHRvJztcclxuaW1wb3J0IHsgVXBsb2FkTGlzdENvbXBvbmVudCB9IGZyb20gJy4uL3VwbG9hZC1saXN0L3VwbG9hZC1saXN0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEltZ0V2ZW50U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2ltZy1ldmVudC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTndiU25hY2tiYXJDb25maWcgfSBmcm9tICdAd2l6aXNob3Avbmctd2l6aS1idWxtYSc7XHJcbmltcG9ydCB7IHN0YXRlRGlzcGxheWVkIH0gZnJvbSAnLi4vLi4vZHRvL2V4cG9ydC1kdG9zLmFwaSc7XHJcbmltcG9ydCB7IEFsZXJ0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FsZXJ0LnNlcnZpY2UnO1xyXG5pbXBvcnQge1JvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgU2VsZWN0SXRlbSB9IGZyb20gJy4uL3NoYXJlZC9zZWxlY3Qvc2VsZWN0LWl0ZW1zLmR0byc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2ltZy10YWJzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaW1nLXRhYnMuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbWdUYWJzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgQElucHV0KClcclxuICBtdWx0aXBsZUltZ01vZGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKVxyXG4gIHN0YXRlRGlzcGxheWVkOiBzdGF0ZURpc3BsYXllZDtcclxuICBASW5wdXQoKVxyXG4gIGxpc3REaXNwbGF5ZWQgPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgaW1nTWFuYWdlckNsb3NlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgY3VycmVudFRhYiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgc3dpdGNoRGlzcGxheVdpbmRvdzogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICB0YWJzOiBTZWxlY3RJdGVtW10gPSBbXHJcbiAgICB7XHJcbiAgICAgIG5hbWU6ICdJbWdNYW5hZ2VyLlRhYnMuYWRkSW1nJyxcclxuICAgICAgdmFsdWU6ICdpbWctdXBsb2FkJyxcclxuICAgICAgc2VsZWN0ZWQ6IHRydWUsXHJcbiAgICAgIGlkOiAwXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBuYW1lOiAnSW1nTWFuYWdlci5UYWJzLmltZ0xpYicsXHJcbiAgICAgIHZhbHVlOiAnaW1hZ2VzLXZpZXcnLFxyXG4gICAgICBpZDogMVxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgbmFtZTogJ0ltZ01hbmFnZXIuVGFicy5mcmVlSW1nTGliJyxcclxuICAgICAgdmFsdWU6ICdwZXhlbHMtbGliJyxcclxuICAgICAgaWQ6IDJcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIG5hbWU6ICdJbWdNYW5hZ2VyLlRhYnMuRWRpdG9yJyxcclxuICAgICAgdmFsdWU6ICdpbWctZWRpdGlvbicsXHJcbiAgICAgIGhpZGU6IHRydWUsXHJcbiAgICAgIGlkOiAzXHJcbiAgICB9XHJcbiAgXTtcclxuXHJcbiAgdGFiQWN0aXZlOiBTZWxlY3RJdGVtID0gdGhpcy50YWJzWzBdO1xyXG5cclxuICAvKiB0YWJBY3RpdmUgPSAnaW1hZ2VzLXZpZXcnO1xyXG4gIHRhYnM6IHN0cmluZ1tdID0gWydpbWctdXBsb2FkJywgJ2ltYWdlcy12aWV3JywgJ3BleGVscy1saWInLCAnaW1nLWVkaXRpb24nXTsgKi9cclxuICBlZGl0VGFiID0gZmFsc2U7XHJcblxyXG4gIGltZ1RvRWRpdDogSW1nUGljdHVyZURUTztcclxuXHJcbiAgaW1nVXBsb2FkID0gZmFsc2U7XHJcblxyXG4gIEBWaWV3Q2hpbGQoICdpbWdVcGxvYWRlZEltZycgKVxyXG4gIGltZ1VwbG9hZGVkQ29tcG9uZW50OiBVcGxvYWRMaXN0Q29tcG9uZW50IDtcclxuXHJcbiAgc25hY2tCYXJOZXdWZXJzaW9uQ29uZmlnOiBOd2JTbmFja2JhckNvbmZpZyA9IHtcclxuICAgIG1lc3NhZ2U6ICcnLFxyXG4gICAgZHVyYXRpb246IDMwMDBcclxuICB9O1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgaW1nRXZlbnRFZGl0U2VydmljZTogSW1nRXZlbnRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhbGVydFNlcnZpY2U6IEFsZXJ0U2VydmljZSxcclxuICAgIHByaXZhdGUgcm91dGU6IFJvdXRlclxyXG4gICAgKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmltZ0V2ZW50RWRpdFNlcnZpY2UuZ2V0SW1nVG9FZGl0RXZlbnRMaXN0ZW5lcigpLnN1YnNjcmliZShpbWdUb0VkaXQgPT57XHJcbiAgICAgIHRoaXMudGFiQWN0aXZlID0gdGhpcy50YWJzWzNdO1xyXG4gICAgICB0aGlzLmltZ1RvRWRpdCA9IGltZ1RvRWRpdDtcclxuICAgICAgdGhpcy5lZGl0VGFiID0gdHJ1ZTtcclxuICAgICAgdGhpcy5jdXJyZW50VGFiLmVtaXQodGhpcy50YWJzWzNdKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgdG9nZ2xlVGFicyhpdGVtOiBTZWxlY3RJdGVtKSB7XHJcbiAgICB0aGlzLmltZ1VwbG9hZCA9IGZhbHNlO1xyXG4gICAgdGhpcy5lZGl0VGFiID0gZmFsc2U7XHJcbiAgICB0aGlzLnRhYkFjdGl2ZSA9IGl0ZW07XHJcbiAgfVxyXG5cclxuICBvbkltZ1VwbG9hZGVkKGltZzogSW1nUGljdHVyZURUT1tdKSB7XHJcbiAgICB0aGlzLmltZ1VwbG9hZCA9IHRydWU7XHJcbiAgICB0aGlzLmltZ1VwbG9hZGVkQ29tcG9uZW50Lm9uSW1nVXBsb2FkZWQoaW1nKTtcclxuICB9XHJcblxyXG4gIG9uRWRpdENsb3NlZChtc2dLZXk6IHN0cmluZykge1xyXG4gICAgdGhpcy5lZGl0VGFiID0gZmFsc2U7XHJcbiAgICB0aGlzLnRvZ2dsZVRhYnModGhpcy50YWJzWzFdKTtcclxuICAgIGlmIChtc2dLZXkpIHtcclxuICAgICAgdGhpcy5hbGVydFNlcnZpY2Uub3BlbkFsZXJ0KG1zZ0tleSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmN1cnJlbnRUYWIuZW1pdCgnY2xvc2UnKTtcclxuICB9XHJcblxyXG4gIG9uU2hvd0ltZ1VwbG9hZGVkKCkge1xyXG4gICAgdGhpcy50YWJBY3RpdmUgPSB0aGlzLnRhYnNbMV07XHJcbiAgfVxyXG5cclxuICBzd2l0Y2hEaXNwbGF5V2luZG93SW1nVmlldygpIHtcclxuICAgIHRoaXMuc3dpdGNoRGlzcGxheVdpbmRvdy5lbWl0KHRydWUpO1xyXG4gIH1cclxuXHJcbiAgc3dpdGNoUm91dGVyTGluayhldmVudCkge1xyXG5cclxuICB9XHJcblxyXG4gIG9uSW1nTWFuYWdlckNsb3NlZCgpIHtcclxuICAgIHRoaXMuaW1nTWFuYWdlckNsb3NlZC5lbWl0KCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICBjbGFzcz1cImltZy10YWJzXCIgW25nQ2xhc3NdPVwieydzbWFsbCc6IHN0YXRlRGlzcGxheWVkID09PSAnc21hbGwnfVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJ3cmFwcGVyLXRhYnNcIj5cclxuICAgIDxkaXZcclxuICAgICAgY2xhc3M9XCJ0YWJzXCJcclxuICAgICAgW25nQ2xhc3NdPVwiXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgJ3RhYnMtLW5vdFdpbmRvdyc6IHN0YXRlRGlzcGxheWVkICE9PSAnd2luZG93JyxcclxuICAgICAgICAgICd0YWJzLS1ub3REaXNwbGF5ZWQnOiBzdGF0ZURpc3BsYXllZCA9PT0gJ3dpbmRvdycgJiYgdGFiQWN0aXZlLnZhbHVlID09PSB0YWJzWzNdLnZhbHVlXHJcbiAgICAgICAgfVwiPlxyXG5cclxuICAgICAgPHVsPlxyXG4gICAgICAgIDxsaSBjbGFzcz1cImlzLWFjdGl2ZVwiIFtuZ0NsYXNzXT1cInsnaXMtYWN0aXZlJzogdGFiQWN0aXZlLnZhbHVlID09PSB0YWJzWzBdLnZhbHVlfVwiIChjbGljayk9XCJ0b2dnbGVUYWJzKHRhYnNbMF0pXCI+PGE+e3sgdGFic1swXS5uYW1lIHwgdHJhbnNsYXRlIH19PC9hPjwvbGk+XHJcbiAgICAgICAgPGxpIFtuZ0NsYXNzXT1cInsnaXMtYWN0aXZlJzogdGFiQWN0aXZlLnZhbHVlID09PSB0YWJzWzFdLnZhbHVlfVwiIChjbGljayk9XCJ0b2dnbGVUYWJzKHRhYnNbMV0pXCI+PGE+e3sgdGFic1sxXS5uYW1lIHwgdHJhbnNsYXRlIH19PC9hPjwvbGk+XHJcbiAgICAgICAgPGxpIFtuZ0NsYXNzXT1cInsnaXMtYWN0aXZlJzogdGFiQWN0aXZlLnZhbHVlID09PSB0YWJzWzJdLnZhbHVlfVwiIChjbGljayk9XCJ0b2dnbGVUYWJzKHRhYnNbMl0pXCI+PGE+e3sgdGFic1syXS5uYW1lIHwgdHJhbnNsYXRlIH19PC9hPjwvbGk+XHJcbiAgICAgICAgPGxpIFtuZ0NsYXNzXT1cInsnaXMtYWN0aXZlJzogdGFiQWN0aXZlLnZhbHVlID09PSB0YWJzWzNdLnZhbHVlfVwiICpuZ0lmPVwiZWRpdFRhYlwiPjxhPnt7IHRhYnNbM10ubmFtZSB8IHRyYW5zbGF0ZSB9fTwvYT48L2xpPlxyXG4gICAgICA8L3VsPlxyXG4gICAgICA8ZGl2XHJcbiAgICAgICAgY2xhc3M9XCJpbWctdGFic19fY2FudmFcIlxyXG4gICAgICAgIFtuZ0NsYXNzXT1cInsnaW1nLXRhYnNfX2NhbnZhLS13aW5kb3cnOiBzdGF0ZURpc3BsYXllZCA9PT0gJ3dpbmRvdyd9XCI+XHJcbiAgICAgICAgPGNhbnZhLWJ0blxyXG4gICAgICAgICAgKHNob3dJbWdVcGxvYWRlZCk9XCJvblNob3dJbWdVcGxvYWRlZCgpXCJcclxuICAgICAgICAgIFtzdGF0ZURpc3BsYXllZF09XCJzdGF0ZURpc3BsYXllZFwiPlxyXG4gICAgICAgIDwvY2FudmEtYnRuPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInNlbGVjdC1tb2JpbGUtcGFnZVwiPlxyXG4gICAgICA8d2FjLXNlbGVjdFxyXG4gICAgICAgIFsobmdNb2RlbCldPVwidGFiQWN0aXZlXCJcclxuICAgICAgICBuYW1lPVwidGFic1wiXHJcbiAgICAgICAgW2l0ZW1zXT1cInRhYnNcIlxyXG4gICAgICA+PC93YWMtc2VsZWN0PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDwhLS0gVXBsb2FkIHNlY3Rpb24gLS0+XHJcbiAgPGRpdlxyXG4gICAgY2xhc3M9XCJjb2x1bW5zIGltZy10YWJzX190YWJzRmlyc3RcIlxyXG4gICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICAnaW1nLXRhYnNfX3RhYnNGaXJzdC0tc21hbGwnOiBzdGF0ZURpc3BsYXllZCA9PT0gJ3NtYWxsJyxcclxuICAgICAgJ2ltZy10YWJzX190YWJzRmlyc3QtLXdpbmRvdyc6IHN0YXRlRGlzcGxheWVkID09PSAnd2luZG93J1xyXG4gICAgfVwiXHJcbiAgICAqbmdJZj1cInRhYkFjdGl2ZS52YWx1ZSA9PT0gdGFic1swXS52YWx1ZVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbHVtbiBpbWctdGFic19fdGFic0ZpcnN0X191cGxvYWRcIj5cclxuICAgICAgPGltZy11cGxvYWRcclxuICAgICAgICBbc3RhdGVEaXNwbGF5ZWRdPVwic3RhdGVEaXNwbGF5ZWRcIlxyXG4gICAgICAgIChpbWdVcGxvYWRlZCk9XCJvbkltZ1VwbG9hZGVkKCRldmVudClcIlxyXG4gICAgICA+PC9pbWctdXBsb2FkPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sdW1uIGltZy10YWJzX190YWJzRmlyc3RfX2xpc3RcIiBbbmdDbGFzc109XCJ7XHJcbiAgICAgICdpbWctdGFic19fdGFic0ZpcnN0X19saXN0LS11cGxvYWQnOiBpbWdVcGxvYWRcclxuICAgIH1cIj5cclxuICAgICAgPGltYWdlcy12aWV3XHJcbiAgICAgICAgKm5nSWY9XCIhaW1nVXBsb2FkXCJcclxuICAgICAgICBbc3RhdGVEaXNwbGF5ZWRdPVwic3RhdGVEaXNwbGF5ZWRcIlxyXG4gICAgICAgIFtsaXN0RGlzcGxheWVkXT1cImZhbHNlXCJcclxuICAgICAgICBbbXVsdGlwbGVJbWdNb2RlXT1cIm11bHRpcGxlSW1nTW9kZVwiXHJcbiAgICAgICAgW3RhYkRpc3BsYXllZF09XCJ0YWJBY3RpdmUudmFsdWVcIlxyXG4gICAgICAgIFtuYlJvd1RvU2hvd109XCIyXCJcclxuICAgICAgICAoc3dpdGNoRGlzcGxheVdpbmRvdyk9XCJzd2l0Y2hEaXNwbGF5V2luZG93SW1nVmlldygpXCJcclxuICAgICAgICBbZnVsbFNpemVdPVwiZmFsc2VcIj5cclxuICAgICAgPC9pbWFnZXMtdmlldz5cclxuXHJcblxyXG4gICAgICA8ZGl2IFtoaWRkZW5dPVwiIWltZ1VwbG9hZFwiPlxyXG4gICAgICAgIDx1cGxvYWQtbGlzdFxyXG4gICAgICAgICAgI2ltZ1VwbG9hZGVkSW1nXHJcbiAgICAgICAgICBbc3RhdGVEaXNwbGF5ZWRdPVwic3RhdGVEaXNwbGF5ZWRcIlxyXG4gICAgICAgICAgW3RhYkRpc3BsYXllZF09XCJ0YWJBY3RpdmUudmFsdWVcIlxyXG4gICAgICAgICAgW211bHRpcGxlSW1nTW9kZV09XCJtdWx0aXBsZUltZ01vZGVcIlxyXG4gICAgICAgICAgKHN3aXRjaERpc3BsYXlXaW5kb3cpPVwic3dpdGNoRGlzcGxheVdpbmRvd0ltZ1ZpZXcoKVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgPC91cGxvYWQtbGlzdD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPCEtLSBJbWFnZXMgc2VjdGlvbiAtLT5cclxuICA8ZGl2IGNsYXNzPVwiY29sdW1ucyBpbWctdGFic19fdGFic1NlY29uZFwiICpuZ0lmPVwidGFiQWN0aXZlLnZhbHVlID09PSB0YWJzWzFdLnZhbHVlXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sdW1uXCI+XHJcblxyXG4gICAgICA8aW1hZ2VzLXZpZXdcclxuICAgICAgICBbc3RhdGVEaXNwbGF5ZWRdPVwic3RhdGVEaXNwbGF5ZWRcIlxyXG4gICAgICAgIFtsaXN0RGlzcGxheWVkXT1cImxpc3REaXNwbGF5ZWRcIlxyXG4gICAgICAgIFttdWx0aXBsZUltZ01vZGVdPVwibXVsdGlwbGVJbWdNb2RlXCJcclxuICAgICAgICBbdGFiRGlzcGxheWVkXT1cInRhYkFjdGl2ZS52YWx1ZVwiXHJcbiAgICAgICAgKHN3aXRjaERpc3BsYXlXaW5kb3cpPVwic3dpdGNoRGlzcGxheVdpbmRvd0ltZ1ZpZXcoKVwiXHJcbiAgICAgICAgW2Z1bGxTaXplXT1cInRydWVcIj5cclxuICAgICAgPC9pbWFnZXMtdmlldz5cclxuXHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPCEtLSBQZXhlbHMgaW1nIHNlY3Rpb24gLS0+XHJcbiAgPGRpdiBjbGFzcz1cImNvbHVtbnMgaW1nLXRhYnNfX3RhYnNUaGlyZFwiICpuZ0lmPVwidGFiQWN0aXZlLnZhbHVlID09PSB0YWJzWzJdLnZhbHVlXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sdW1uXCI+XHJcbiAgICAgIDxwZXhlbHMtbGliXHJcbiAgICAgICAgW3N0YXRlRGlzcGxheWVkXT1cInN0YXRlRGlzcGxheWVkXCJcclxuICAgICAgICAoc2hvd0ltZ1VwbG9hZGVkKT1cIm9uU2hvd0ltZ1VwbG9hZGVkKClcIj5cclxuICAgICAgPC9wZXhlbHMtbGliPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDwhLS1FZGl0aW9uIHNlY3Rpb24gLS0+XHJcbiAgPGRpdiBjbGFzcz1cImNvbHVtbnMgaW1nLXRhYnNfX3RhYnNFZGl0XCIgKm5nSWY9XCJ0YWJBY3RpdmUudmFsdWUgPT09IHRhYnNbM10udmFsdWVcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5cIj5cclxuICAgICAgPGltZy1lZGl0b3JcclxuICAgICAgICBbc3RhdGVEaXNwbGF5ZWRdPVwic3RhdGVEaXNwbGF5ZWRcIlxyXG4gICAgICAgIFtpbWdUb0VkaXRdPVwiaW1nVG9FZGl0XCJcclxuICAgICAgICAoZWRpdENsb3NlZCk9XCJvbkVkaXRDbG9zZWQoJGV2ZW50KVwiPlxyXG4gICAgICA8L2ltZy1lZGl0b3I+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbjwvZGl2PlxyXG4iXX0=
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1nLXRhYnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd3otaW1nLW1hbmFnZXIvc3JjL2xpYi9jb21wb25lbnRzL2ltZy10YWJzL2ltZy10YWJzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3d6LWltZy1tYW5hZ2VyL3NyYy9saWIvY29tcG9uZW50cy9pbWctdGFicy9pbWctdGFicy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBVSxTQUFTLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV4RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFHbkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0FBT3ZDLE1BQU0sT0FBTyxnQkFBZ0I7SUE2RDNCLFlBQ1UsbUJBQW9DLEVBQ3BDLFlBQTBCLEVBQzFCLEtBQWE7UUFGYix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQWlCO1FBQ3BDLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLFVBQUssR0FBTCxLQUFLLENBQVE7UUE3RHZCLG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBSWpDLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBR3RCLHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHdEMsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHaEMsd0JBQW1CLEdBQTBCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFaEUsU0FBSSxHQUFpQjtZQUNuQjtn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LGdCQUFnQjtzQkFEZixNQUFNO2dCQUlQLFVBQVU7c0JBRFQsTUFBTTtnQkFJUCxtQkFBbUI7c0JBRGxCLE1BQU07Z0JBdUNQLG9CQUFvQjtzQkFEbkIsU0FBUzt1QkFBRSxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkLCBPdXRwdXQsIEV2ZW50RW1pdHRlcn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJbWdQaWN0dXJlRFRPIH0gZnJvbSAnLi4vLi4vZHRvL2ltZy1tYW5hZ2VyLmR0byc7XG5pbXBvcnQgeyBVcGxvYWRMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi4vdXBsb2FkLWxpc3QvdXBsb2FkLWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IEltZ0V2ZW50U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2ltZy1ldmVudC5zZXJ2aWNlJztcbmltcG9ydCB7IE53YlNuYWNrYmFyQ29uZmlnIH0gZnJvbSAnQHdpemlzaG9wL25nLXdpemktYnVsbWEnO1xuaW1wb3J0IHsgc3RhdGVEaXNwbGF5ZWQgfSBmcm9tICcuLi8uLi9kdG8vZXhwb3J0LWR0b3MuYXBpJztcbmltcG9ydCB7IEFsZXJ0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FsZXJ0LnNlcnZpY2UnO1xuaW1wb3J0IHtSb3V0ZXJ9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBTZWxlY3RJdGVtIH0gZnJvbSAnLi4vc2hhcmVkL3NlbGVjdC9zZWxlY3QtaXRlbXMuZHRvJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW1nLXRhYnMnLFxuICB0ZW1wbGF0ZVVybDogJy4vaW1nLXRhYnMuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEltZ1RhYnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBJbnB1dCgpXG4gIG11bHRpcGxlSW1nTW9kZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKVxuICBzdGF0ZURpc3BsYXllZDogc3RhdGVEaXNwbGF5ZWQ7XG4gIEBJbnB1dCgpXG4gIGxpc3REaXNwbGF5ZWQgPSBmYWxzZTtcblxuICBAT3V0cHV0KClcbiAgaW1nTWFuYWdlckNsb3NlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAT3V0cHV0KClcbiAgY3VycmVudFRhYiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAT3V0cHV0KClcbiAgc3dpdGNoRGlzcGxheVdpbmRvdzogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHRhYnM6IFNlbGVjdEl0ZW1bXSA9IFtcbiAgICB7XG4gICAgICBuYW1lOiAnSW1nTWFuYWdlci5UYWJzLmFkZEltZycsXG4gICAgICB2YWx1ZTogJ2ltZy11cGxvYWQnLFxuICAgICAgc2VsZWN0ZWQ6IHRydWUsXG4gICAgICBpZDogMFxuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogJ0ltZ01hbmFnZXIuVGFicy5pbWdMaWInLFxuICAgICAgdmFsdWU6ICdpbWFnZXMtdmlldycsXG4gICAgICBpZDogMVxuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogJ0ltZ01hbmFnZXIuVGFicy5mcmVlSW1nTGliJyxcbiAgICAgIHZhbHVlOiAncGV4ZWxzLWxpYicsXG4gICAgICBpZDogMlxuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogJ0ltZ01hbmFnZXIuVGFicy5FZGl0b3InLFxuICAgICAgdmFsdWU6ICdpbWctZWRpdGlvbicsXG4gICAgICBoaWRlOiB0cnVlLFxuICAgICAgaWQ6IDNcbiAgICB9XG4gIF07XG5cbiAgdGFiQWN0aXZlOiBTZWxlY3RJdGVtID0gdGhpcy50YWJzWzBdO1xuXG4gIC8qIHRhYkFjdGl2ZSA9ICdpbWFnZXMtdmlldyc7XG4gIHRhYnM6IHN0cmluZ1tdID0gWydpbWctdXBsb2FkJywgJ2ltYWdlcy12aWV3JywgJ3BleGVscy1saWInLCAnaW1nLWVkaXRpb24nXTsgKi9cbiAgZWRpdFRhYiA9IGZhbHNlO1xuXG4gIGltZ1RvRWRpdDogSW1nUGljdHVyZURUTztcblxuICBpbWdVcGxvYWQgPSBmYWxzZTtcblxuICBAVmlld0NoaWxkKCAnaW1nVXBsb2FkZWRJbWcnIClcbiAgaW1nVXBsb2FkZWRDb21wb25lbnQ6IFVwbG9hZExpc3RDb21wb25lbnQgO1xuXG4gIHNuYWNrQmFyTmV3VmVyc2lvbkNvbmZpZzogTndiU25hY2tiYXJDb25maWcgPSB7XG4gICAgbWVzc2FnZTogJycsXG4gICAgZHVyYXRpb246IDMwMDBcbiAgfTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGltZ0V2ZW50RWRpdFNlcnZpY2U6IEltZ0V2ZW50U2VydmljZSxcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcm91dGU6IFJvdXRlclxuICAgICkgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pbWdFdmVudEVkaXRTZXJ2aWNlLmdldEltZ1RvRWRpdEV2ZW50TGlzdGVuZXIoKS5zdWJzY3JpYmUoaW1nVG9FZGl0ID0+e1xuICAgICAgdGhpcy50YWJBY3RpdmUgPSB0aGlzLnRhYnNbM107XG4gICAgICB0aGlzLmltZ1RvRWRpdCA9IGltZ1RvRWRpdDtcbiAgICAgIHRoaXMuZWRpdFRhYiA9IHRydWU7XG4gICAgICB0aGlzLmN1cnJlbnRUYWIuZW1pdCh0aGlzLnRhYnNbM10pO1xuICAgIH0pO1xuICB9XG5cbiAgdG9nZ2xlVGFicyhpdGVtOiBTZWxlY3RJdGVtKSB7XG4gICAgdGhpcy5pbWdVcGxvYWQgPSBmYWxzZTtcbiAgICB0aGlzLmVkaXRUYWIgPSBmYWxzZTtcbiAgICB0aGlzLnRhYkFjdGl2ZSA9IGl0ZW07XG4gIH1cblxuICBvbkltZ1VwbG9hZGVkKGltZzogSW1nUGljdHVyZURUT1tdKSB7XG4gICAgdGhpcy5pbWdVcGxvYWQgPSB0cnVlO1xuICAgIHRoaXMuaW1nVXBsb2FkZWRDb21wb25lbnQub25JbWdVcGxvYWRlZChpbWcpO1xuICB9XG5cbiAgb25FZGl0Q2xvc2VkKG1zZ0tleTogc3RyaW5nKSB7XG4gICAgdGhpcy5lZGl0VGFiID0gZmFsc2U7XG4gICAgdGhpcy50b2dnbGVUYWJzKHRoaXMudGFic1sxXSk7XG4gICAgaWYgKG1zZ0tleSkge1xuICAgICAgdGhpcy5hbGVydFNlcnZpY2Uub3BlbkFsZXJ0KG1zZ0tleSk7XG4gICAgfVxuICAgIHRoaXMuY3VycmVudFRhYi5lbWl0KCdjbG9zZScpO1xuICB9XG5cbiAgb25TaG93SW1nVXBsb2FkZWQoKSB7XG4gICAgdGhpcy50YWJBY3RpdmUgPSB0aGlzLnRhYnNbMV07XG4gIH1cblxuICBzd2l0Y2hEaXNwbGF5V2luZG93SW1nVmlldygpIHtcbiAgICB0aGlzLnN3aXRjaERpc3BsYXlXaW5kb3cuZW1pdCh0cnVlKTtcbiAgfVxuXG4gIHN3aXRjaFJvdXRlckxpbmsoZXZlbnQpIHtcblxuICB9XG5cbiAgb25JbWdNYW5hZ2VyQ2xvc2VkKCkge1xuICAgIHRoaXMuaW1nTWFuYWdlckNsb3NlZC5lbWl0KCk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJpbWctdGFic1wiIFtuZ0NsYXNzXT1cInsnc21hbGwnOiBzdGF0ZURpc3BsYXllZCA9PT0gJ3NtYWxsJ31cIj5cbiAgPGRpdiBjbGFzcz1cIndyYXBwZXItdGFic1wiPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwidGFic1wiXG4gICAgICBbbmdDbGFzc109XCJcbiAgICAgICAge1xuICAgICAgICAgICd0YWJzLS1ub3RXaW5kb3cnOiBzdGF0ZURpc3BsYXllZCAhPT0gJ3dpbmRvdycsXG4gICAgICAgICAgJ3RhYnMtLW5vdERpc3BsYXllZCc6IHN0YXRlRGlzcGxheWVkID09PSAnd2luZG93JyAmJiB0YWJBY3RpdmUudmFsdWUgPT09IHRhYnNbM10udmFsdWVcbiAgICAgICAgfVwiPlxuXG4gICAgICA8dWw+XG4gICAgICAgIDxsaSBjbGFzcz1cImlzLWFjdGl2ZVwiIFtuZ0NsYXNzXT1cInsnaXMtYWN0aXZlJzogdGFiQWN0aXZlLnZhbHVlID09PSB0YWJzWzBdLnZhbHVlfVwiIChjbGljayk9XCJ0b2dnbGVUYWJzKHRhYnNbMF0pXCI+PGE+e3sgdGFic1swXS5uYW1lIHwgdHJhbnNsYXRlIH19PC9hPjwvbGk+XG4gICAgICAgIDxsaSBbbmdDbGFzc109XCJ7J2lzLWFjdGl2ZSc6IHRhYkFjdGl2ZS52YWx1ZSA9PT0gdGFic1sxXS52YWx1ZX1cIiAoY2xpY2spPVwidG9nZ2xlVGFicyh0YWJzWzFdKVwiPjxhPnt7IHRhYnNbMV0ubmFtZSB8IHRyYW5zbGF0ZSB9fTwvYT48L2xpPlxuICAgICAgICA8bGkgW25nQ2xhc3NdPVwieydpcy1hY3RpdmUnOiB0YWJBY3RpdmUudmFsdWUgPT09IHRhYnNbMl0udmFsdWV9XCIgKGNsaWNrKT1cInRvZ2dsZVRhYnModGFic1syXSlcIj48YT57eyB0YWJzWzJdLm5hbWUgfCB0cmFuc2xhdGUgfX08L2E+PC9saT5cbiAgICAgICAgPGxpIFtuZ0NsYXNzXT1cInsnaXMtYWN0aXZlJzogdGFiQWN0aXZlLnZhbHVlID09PSB0YWJzWzNdLnZhbHVlfVwiICpuZ0lmPVwiZWRpdFRhYlwiPjxhPnt7IHRhYnNbM10ubmFtZSB8IHRyYW5zbGF0ZSB9fTwvYT48L2xpPlxuICAgICAgPC91bD5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJpbWctdGFic19fY2FudmFcIlxuICAgICAgICBbbmdDbGFzc109XCJ7J2ltZy10YWJzX19jYW52YS0td2luZG93Jzogc3RhdGVEaXNwbGF5ZWQgPT09ICd3aW5kb3cnfVwiPlxuICAgICAgICA8Y2FudmEtYnRuXG4gICAgICAgICAgKHNob3dJbWdVcGxvYWRlZCk9XCJvblNob3dJbWdVcGxvYWRlZCgpXCJcbiAgICAgICAgICBbc3RhdGVEaXNwbGF5ZWRdPVwic3RhdGVEaXNwbGF5ZWRcIj5cbiAgICAgICAgPC9jYW52YS1idG4+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwic2VsZWN0LW1vYmlsZS1wYWdlXCI+XG4gICAgICA8d2FjLXNlbGVjdFxuICAgICAgICBbKG5nTW9kZWwpXT1cInRhYkFjdGl2ZVwiXG4gICAgICAgIG5hbWU9XCJ0YWJzXCJcbiAgICAgICAgW2l0ZW1zXT1cInRhYnNcIlxuICAgICAgPjwvd2FjLXNlbGVjdD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPCEtLSBVcGxvYWQgc2VjdGlvbiAtLT5cbiAgPGRpdlxuICAgIGNsYXNzPVwiY29sdW1ucyBpbWctdGFic19fdGFic0ZpcnN0XCJcbiAgICBbbmdDbGFzc109XCJ7XG4gICAgICAnaW1nLXRhYnNfX3RhYnNGaXJzdC0tc21hbGwnOiBzdGF0ZURpc3BsYXllZCA9PT0gJ3NtYWxsJyxcbiAgICAgICdpbWctdGFic19fdGFic0ZpcnN0LS13aW5kb3cnOiBzdGF0ZURpc3BsYXllZCA9PT0gJ3dpbmRvdydcbiAgICB9XCJcbiAgICAqbmdJZj1cInRhYkFjdGl2ZS52YWx1ZSA9PT0gdGFic1swXS52YWx1ZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb2x1bW4gaW1nLXRhYnNfX3RhYnNGaXJzdF9fdXBsb2FkXCI+XG4gICAgICA8aW1nLXVwbG9hZFxuICAgICAgICBbc3RhdGVEaXNwbGF5ZWRdPVwic3RhdGVEaXNwbGF5ZWRcIlxuICAgICAgICAoaW1nVXBsb2FkZWQpPVwib25JbWdVcGxvYWRlZCgkZXZlbnQpXCJcbiAgICAgID48L2ltZy11cGxvYWQ+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbHVtbiBpbWctdGFic19fdGFic0ZpcnN0X19saXN0XCIgW25nQ2xhc3NdPVwie1xuICAgICAgJ2ltZy10YWJzX190YWJzRmlyc3RfX2xpc3QtLXVwbG9hZCc6IGltZ1VwbG9hZFxuICAgIH1cIj5cbiAgICAgIDxpbWFnZXMtdmlld1xuICAgICAgICAqbmdJZj1cIiFpbWdVcGxvYWRcIlxuICAgICAgICBbc3RhdGVEaXNwbGF5ZWRdPVwic3RhdGVEaXNwbGF5ZWRcIlxuICAgICAgICBbbGlzdERpc3BsYXllZF09XCJmYWxzZVwiXG4gICAgICAgIFttdWx0aXBsZUltZ01vZGVdPVwibXVsdGlwbGVJbWdNb2RlXCJcbiAgICAgICAgW3RhYkRpc3BsYXllZF09XCJ0YWJBY3RpdmUudmFsdWVcIlxuICAgICAgICBbbmJSb3dUb1Nob3ddPVwiMlwiXG4gICAgICAgIChzd2l0Y2hEaXNwbGF5V2luZG93KT1cInN3aXRjaERpc3BsYXlXaW5kb3dJbWdWaWV3KClcIlxuICAgICAgICBbZnVsbFNpemVdPVwiZmFsc2VcIj5cbiAgICAgIDwvaW1hZ2VzLXZpZXc+XG5cblxuICAgICAgPGRpdiBbaGlkZGVuXT1cIiFpbWdVcGxvYWRcIj5cbiAgICAgICAgPHVwbG9hZC1saXN0XG4gICAgICAgICAgI2ltZ1VwbG9hZGVkSW1nXG4gICAgICAgICAgW3N0YXRlRGlzcGxheWVkXT1cInN0YXRlRGlzcGxheWVkXCJcbiAgICAgICAgICBbdGFiRGlzcGxheWVkXT1cInRhYkFjdGl2ZS52YWx1ZVwiXG4gICAgICAgICAgW211bHRpcGxlSW1nTW9kZV09XCJtdWx0aXBsZUltZ01vZGVcIlxuICAgICAgICAgIChzd2l0Y2hEaXNwbGF5V2luZG93KT1cInN3aXRjaERpc3BsYXlXaW5kb3dJbWdWaWV3KClcIlxuICAgICAgICAgID5cbiAgICAgICAgPC91cGxvYWQtbGlzdD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8IS0tIEltYWdlcyBzZWN0aW9uIC0tPlxuICA8ZGl2IGNsYXNzPVwiY29sdW1ucyBpbWctdGFic19fdGFic1NlY29uZFwiICpuZ0lmPVwidGFiQWN0aXZlLnZhbHVlID09PSB0YWJzWzFdLnZhbHVlXCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbHVtblwiPlxuXG4gICAgICA8aW1hZ2VzLXZpZXdcbiAgICAgICAgW3N0YXRlRGlzcGxheWVkXT1cInN0YXRlRGlzcGxheWVkXCJcbiAgICAgICAgW2xpc3REaXNwbGF5ZWRdPVwibGlzdERpc3BsYXllZFwiXG4gICAgICAgIFttdWx0aXBsZUltZ01vZGVdPVwibXVsdGlwbGVJbWdNb2RlXCJcbiAgICAgICAgW3RhYkRpc3BsYXllZF09XCJ0YWJBY3RpdmUudmFsdWVcIlxuICAgICAgICAoc3dpdGNoRGlzcGxheVdpbmRvdyk9XCJzd2l0Y2hEaXNwbGF5V2luZG93SW1nVmlldygpXCJcbiAgICAgICAgW2Z1bGxTaXplXT1cInRydWVcIj5cbiAgICAgIDwvaW1hZ2VzLXZpZXc+XG5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPCEtLSBQZXhlbHMgaW1nIHNlY3Rpb24gLS0+XG4gIDxkaXYgY2xhc3M9XCJjb2x1bW5zIGltZy10YWJzX190YWJzVGhpcmRcIiAqbmdJZj1cInRhYkFjdGl2ZS52YWx1ZSA9PT0gdGFic1syXS52YWx1ZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5cIj5cbiAgICAgIDxwZXhlbHMtbGliXG4gICAgICAgIFtzdGF0ZURpc3BsYXllZF09XCJzdGF0ZURpc3BsYXllZFwiXG4gICAgICAgIChzaG93SW1nVXBsb2FkZWQpPVwib25TaG93SW1nVXBsb2FkZWQoKVwiPlxuICAgICAgPC9wZXhlbHMtbGliPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8IS0tRWRpdGlvbiBzZWN0aW9uIC0tPlxuICA8ZGl2IGNsYXNzPVwiY29sdW1ucyBpbWctdGFic19fdGFic0VkaXRcIiAqbmdJZj1cInRhYkFjdGl2ZS52YWx1ZSA9PT0gdGFic1szXS52YWx1ZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5cIj5cbiAgICAgIDxpbWctZWRpdG9yXG4gICAgICAgIFtzdGF0ZURpc3BsYXllZF09XCJzdGF0ZURpc3BsYXllZFwiXG4gICAgICAgIFtpbWdUb0VkaXRdPVwiaW1nVG9FZGl0XCJcbiAgICAgICAgKGVkaXRDbG9zZWQpPVwib25FZGl0Q2xvc2VkKCRldmVudClcIj5cbiAgICAgIDwvaW1nLWVkaXRvcj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbjwvZGl2PlxuIl19
@@ -107,14 +107,14 @@ export class ImgUploadComponent {
107
107
  }
108
108
  }
109
109
  ImgUploadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ImgUploadComponent, deps: [{ token: i1.AlertService }, { token: i2.ApiService }, { token: i3.TranslateService }, { token: i4.UploadService }], target: i0.ɵɵFactoryTarget.Component });
110
- ImgUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ImgUploadComponent, selector: "img-upload", inputs: { stateDisplayed: "stateDisplayed" }, outputs: { imgUploaded: "imgUploaded" }, viewQueries: [{ propertyName: "dragAndDropBox", first: true, predicate: ["dragAndDropBox"], descendants: true }], ngImport: i0, template: "<div\r\n class=\"img-upload has-text-centered\"\r\n [ngClass]=\"{'img-upload--small': stateDisplayed === 'small'}\"\r\n (click)=\"fileInput.click()\"\r\n appDragDrop\r\n (onFileDropped)=\"filesChangeByDragAndDrop($any($event))\"\r\n #dragAndDropBox\r\n [@easeInOut]=\"'in'\"\r\n>\r\n <input hidden type=\"file\" #fileInput (change)=\"filesChangeByClick($event)\" accept=\"image/*\" multiple >\r\n <div class=\"img-upload__container\" [ngClass]=\"{'img-upload__container--small': stateDisplayed === 'small'}\">\r\n\r\n <div class=\"img-upload__container__wrapper\">\r\n\r\n <div class=\"img-upload__container__loader\" *ngIf=\"isLoading\">\r\n <wz-loader [small]=\"true\" [position]=\"'relative'\"></wz-loader>\r\n </div>\r\n\r\n <ng-container *ngIf=\"!isLoading\">\r\n <div class=\"blueColor img-upload__container__dropImgIconDiv\">\r\n <img *ngIf=\"assetsIcon\" [src]=\"assetsIcon\" alt=\"icon picture\" />\r\n <p>{{ 'ImgManager.ImgUpload.dropImg' | translate }}</p>\r\n </div>\r\n\r\n <p class=\"img-upload__container__or\">{{ 'ImgManager.ImgUpload.or' | translate }}</p>\r\n\r\n <div class=\"img-upload__container__text\">\r\n <i class=\"fal fa-file-upload\"></i>{{ 'ImgManager.ImgUpload.selectImg' | translate }}\r\n </div>\r\n </ng-container>\r\n\r\n </div>\r\n </div>\r\n</div>\r\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.LoaderComponent, selector: "wz-loader", inputs: ["text", "small", "position"] }, { kind: "directive", type: i7.DragDropDirective, selector: "[appDragDrop]", outputs: ["onFileDropped"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], animations: [
110
+ ImgUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ImgUploadComponent, selector: "img-upload", inputs: { stateDisplayed: "stateDisplayed" }, outputs: { imgUploaded: "imgUploaded" }, viewQueries: [{ propertyName: "dragAndDropBox", first: true, predicate: ["dragAndDropBox"], descendants: true }], ngImport: i0, template: "<div\n class=\"img-upload has-text-centered\"\n [ngClass]=\"{'img-upload--small': stateDisplayed === 'small'}\"\n (click)=\"fileInput.click()\"\n appDragDrop\n (onFileDropped)=\"filesChangeByDragAndDrop($any($event))\"\n #dragAndDropBox\n [@easeInOut]=\"'in'\"\n>\n <input hidden type=\"file\" #fileInput (change)=\"filesChangeByClick($event)\" accept=\"image/*\" multiple >\n <div class=\"img-upload__container\" [ngClass]=\"{'img-upload__container--small': stateDisplayed === 'small'}\">\n\n <div class=\"img-upload__container__wrapper\">\n\n <div class=\"img-upload__container__loader\" *ngIf=\"isLoading\">\n <wz-loader [small]=\"true\" [position]=\"'relative'\"></wz-loader>\n </div>\n\n <ng-container *ngIf=\"!isLoading\">\n <div class=\"blueColor img-upload__container__dropImgIconDiv\">\n <img *ngIf=\"assetsIcon\" [src]=\"assetsIcon\" alt=\"icon picture\" />\n <p>{{ 'ImgManager.ImgUpload.dropImg' | translate }}</p>\n </div>\n\n <p class=\"img-upload__container__or\">{{ 'ImgManager.ImgUpload.or' | translate }}</p>\n\n <div class=\"img-upload__container__text\">\n <i class=\"fal fa-file-upload\"></i>{{ 'ImgManager.ImgUpload.selectImg' | translate }}\n </div>\n </ng-container>\n\n </div>\n </div>\n</div>\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.LoaderComponent, selector: "wz-loader", inputs: ["text", "small", "position"] }, { kind: "directive", type: i7.DragDropDirective, selector: "[appDragDrop]", outputs: ["onFileDropped"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], animations: [
111
111
  easeInOut
112
112
  ] });
113
113
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ImgUploadComponent, decorators: [{
114
114
  type: Component,
115
115
  args: [{ selector: 'img-upload', animations: [
116
116
  easeInOut
117
- ], template: "<div\r\n class=\"img-upload has-text-centered\"\r\n [ngClass]=\"{'img-upload--small': stateDisplayed === 'small'}\"\r\n (click)=\"fileInput.click()\"\r\n appDragDrop\r\n (onFileDropped)=\"filesChangeByDragAndDrop($any($event))\"\r\n #dragAndDropBox\r\n [@easeInOut]=\"'in'\"\r\n>\r\n <input hidden type=\"file\" #fileInput (change)=\"filesChangeByClick($event)\" accept=\"image/*\" multiple >\r\n <div class=\"img-upload__container\" [ngClass]=\"{'img-upload__container--small': stateDisplayed === 'small'}\">\r\n\r\n <div class=\"img-upload__container__wrapper\">\r\n\r\n <div class=\"img-upload__container__loader\" *ngIf=\"isLoading\">\r\n <wz-loader [small]=\"true\" [position]=\"'relative'\"></wz-loader>\r\n </div>\r\n\r\n <ng-container *ngIf=\"!isLoading\">\r\n <div class=\"blueColor img-upload__container__dropImgIconDiv\">\r\n <img *ngIf=\"assetsIcon\" [src]=\"assetsIcon\" alt=\"icon picture\" />\r\n <p>{{ 'ImgManager.ImgUpload.dropImg' | translate }}</p>\r\n </div>\r\n\r\n <p class=\"img-upload__container__or\">{{ 'ImgManager.ImgUpload.or' | translate }}</p>\r\n\r\n <div class=\"img-upload__container__text\">\r\n <i class=\"fal fa-file-upload\"></i>{{ 'ImgManager.ImgUpload.selectImg' | translate }}\r\n </div>\r\n </ng-container>\r\n\r\n </div>\r\n </div>\r\n</div>\r\n" }]
117
+ ], template: "<div\n class=\"img-upload has-text-centered\"\n [ngClass]=\"{'img-upload--small': stateDisplayed === 'small'}\"\n (click)=\"fileInput.click()\"\n appDragDrop\n (onFileDropped)=\"filesChangeByDragAndDrop($any($event))\"\n #dragAndDropBox\n [@easeInOut]=\"'in'\"\n>\n <input hidden type=\"file\" #fileInput (change)=\"filesChangeByClick($event)\" accept=\"image/*\" multiple >\n <div class=\"img-upload__container\" [ngClass]=\"{'img-upload__container--small': stateDisplayed === 'small'}\">\n\n <div class=\"img-upload__container__wrapper\">\n\n <div class=\"img-upload__container__loader\" *ngIf=\"isLoading\">\n <wz-loader [small]=\"true\" [position]=\"'relative'\"></wz-loader>\n </div>\n\n <ng-container *ngIf=\"!isLoading\">\n <div class=\"blueColor img-upload__container__dropImgIconDiv\">\n <img *ngIf=\"assetsIcon\" [src]=\"assetsIcon\" alt=\"icon picture\" />\n <p>{{ 'ImgManager.ImgUpload.dropImg' | translate }}</p>\n </div>\n\n <p class=\"img-upload__container__or\">{{ 'ImgManager.ImgUpload.or' | translate }}</p>\n\n <div class=\"img-upload__container__text\">\n <i class=\"fal fa-file-upload\"></i>{{ 'ImgManager.ImgUpload.selectImg' | translate }}\n </div>\n </ng-container>\n\n </div>\n </div>\n</div>\n" }]
118
118
  }], ctorParameters: function () { return [{ type: i1.AlertService }, { type: i2.ApiService }, { type: i3.TranslateService }, { type: i4.UploadService }]; }, propDecorators: { stateDisplayed: [{
119
119
  type: Input
120
120
  }], imgUploaded: [{
@@ -123,4 +123,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
123
123
  type: ViewChild,
124
124
  args: ['dragAndDropBox']
125
125
  }] } });
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1nLXVwbG9hZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ei1pbWctbWFuYWdlci9zcmMvbGliL2NvbXBvbmVudHMvaW1nLXVwbG9hZC9pbWctdXBsb2FkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3d6LWltZy1tYW5hZ2VyL3NyYy9saWIvY29tcG9uZW50cy9pbWctdXBsb2FkL2ltZy11cGxvYWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3BHLE9BQU8sRUFBYyxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFNUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBRTdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7Ozs7Ozs7QUFTeEQsTUFBTSxPQUFPLGtCQUFrQjtJQWdCN0IsWUFDVSxZQUEwQixFQUMxQixVQUFzQixFQUN0QixnQkFBa0MsRUFDbEMsYUFBNEI7UUFINUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBbEJ0QyxVQUFLLEdBQVEsRUFBRSxDQUFDO1FBQ2hCLGNBQVMsR0FBWSxLQUFLLENBQUM7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dXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBWaWV3Q2hpbGQsIEVsZW1lbnRSZWZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBmb3JrSm9pbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBJbWdQaWN0dXJlRFRPIH0gZnJvbSAnLi4vLi4vZHRvL2ltZy1tYW5hZ2VyLmR0byc7XHJcbmltcG9ydCB7IGVhc2VJbk91dCB9IGZyb20gJy4uLy4uL2FuaW1hdGlvbnMvZWFzZUluT3V0L2Vhc2UtaW4tb3V0LmFuaW1hdGlvbic7XHJcbmltcG9ydCB7IHN0YXRlRGlzcGxheWVkIH0gZnJvbSAnLi4vLi4vZHRvL2V4cG9ydC1kdG9zLmFwaSc7XHJcbmltcG9ydCB7IEFsZXJ0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FsZXJ0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IFVwbG9hZFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy91cGxvYWQuc2VydmljZSc7XHJcbmltcG9ydCB7IEFwaVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9hcGkuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2ltZy11cGxvYWQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbWctdXBsb2FkLmNvbXBvbmVudC5odG1sJyxcclxuICBhbmltYXRpb25zOiBbXHJcbiAgICBlYXNlSW5PdXRcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbWdVcGxvYWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBmaWxlczogYW55ID0gW107XHJcbiAgaXNMb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgYXNzZXRzSWNvbjogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHN0YXRlRGlzcGxheWVkOiBzdGF0ZURpc3BsYXllZDtcclxuICBAT3V0cHV0KCkgaW1nVXBsb2FkZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2RyYWdBbmREcm9wQm94JykgZHJhZ0FuZERyb3BCb3g6IEVsZW1lbnRSZWY7XHJcblxyXG4gIGxvYWRpbmdUZXh0ID0gJ0ltZ01hbmFnZXIuSW1nVXBsb2FkLmxvYWRpbmcnO1xyXG4gIGVycm9yVXBsb2FkaW5nSW1nID0gJ0ltZ01hbmFnZXIuSW1nVXBsb2FkLmVycm9yVXBsb2FkaW5nSW1nJztcclxuICBlcnJvck5vdEltZyA9ICdJbWdNYW5hZ2VyLkltZ1VwbG9hZC5lcnJvck5vdEltZyc7XHJcblxyXG4gIE1BWF9JTUFHRV9TSVpFID0gMTAwMDAwMDA7IC8vIEluIGJ5dGVzXHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBhbGVydFNlcnZpY2U6IEFsZXJ0U2VydmljZSxcclxuICAgIHByaXZhdGUgYXBpU2VydmljZTogQXBpU2VydmljZSxcclxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcclxuICAgIHByaXZhdGUgdXBsb2FkU2VydmljZTogVXBsb2FkU2VydmljZVxyXG4gICAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuYXNzZXRzSWNvbiA9IHRoaXMuZ2V0QXNzZXRzKCk7XHJcbiAgfVxyXG5cclxuICBmaWxlc0NoYW5nZUJ5Q2xpY2soZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy51cGxvYWRGaWxlKGV2ZW50LnRhcmdldC5maWxlcyk7XHJcbiAgfVxyXG5cclxuICBnZXRBc3NldHMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLkNPTkZJRy5hc3NldHNfcm91dGUgKyBcImltZy9pY29uX3BpY3R1cmUuc3ZnXCI7XHJcbiAgfVxyXG5cclxuICBmaWxlc0NoYW5nZUJ5RHJhZ0FuZERyb3AoZmlsZXNMaXN0OiBGaWxlTGlzdCkge1xyXG4gICAgdGhpcy5yZW1vdmVEcmFnQW5kRHJvcFN0eWxlKCk7XHJcbiAgICB0aGlzLnVwbG9hZEZpbGUoQXJyYXkuZnJvbShmaWxlc0xpc3QpKTtcclxuICB9XHJcblxyXG4gIHVwbG9hZEZpbGUoZmlsZXM6IEZpbGVbXSkge1xyXG4gICAgaWYgKGZpbGVzICYmICFmaWxlcy5sZW5ndGgpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuaXNMb2FkaW5nID10cnVlO1xyXG4gICAgY29uc3QgaW1nVG9VcGxvYWRMaXN0OiBPYnNlcnZhYmxlPGFueT5bXSA9IFtdO1xyXG4gICAgZm9yIChjb25zdCBmaWxlIG9mIGZpbGVzKSB7XHJcbiAgICAgIGlmKCF0aGlzLmlzRmlsZUltYWdlKGZpbGUudHlwZSkpIHtcclxuICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5vcGVuQWxlcnQodGhpcy5lcnJvck5vdEltZyk7XHJcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICBjb250aW51ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKCF0aGlzLmlzU2l6ZVZhbGlkKGZpbGUuc2l6ZSkpIHtcclxuICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5vcGVuQWxlcnQoXHJcbiAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnSW1nTWFuYWdlci5JbWdVcGxvYWQuRXJyb3JJbWdTaXplJywge1xyXG4gICAgICAgICAgICBmaWxlTmFtZTogZmlsZS5uYW1lLFxyXG4gICAgICAgICAgICBmaWxlU2l6ZTogdGhpcy5nZXRJbWFnZVNpemVJbktvKGZpbGUuc2l6ZSksXHJcbiAgICAgICAgICAgIG1heEZpbGVTaXplOiB0aGlzLmdldEltYWdlU2l6ZUluS28odGhpcy5NQVhfSU1BR0VfU0laRSlcclxuICAgICAgICAgIH0pKTtcclxuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBjb25zdCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xyXG4gICAgICBmb3JtRGF0YS5hcHBlbmQoJ2ltYWdlJywgZmlsZSwgZmlsZS5uYW1lKTtcclxuICAgICAgaW1nVG9VcGxvYWRMaXN0LnB1c2godGhpcy51cGxvYWRTZXJ2aWNlLnVwbG9hZEZpbGUoZm9ybURhdGEpKTtcclxuICAgIH1cclxuXHJcbiAgICBmb3JrSm9pbihpbWdUb1VwbG9hZExpc3QpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IChpbWc6IEltZ1BpY3R1cmVEVE9bXSkgPT4ge1xyXG4gICAgICAgIHRoaXMub25JbWdVcGxvYWQoaW1nKSxcclxuICAgICAgICB0aGlzLmlzTG9hZGluZyA9ZmFsc2U7XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOiBlcnJvciA9PiB7XHJcbiAgICAgICAgaWYgKGVycm9yPy5lcnJvcj8ubWVzc2FnZSAmJiBlcnJvci5zdGF0dXNUZXh0ICE9PSAnQmFkIFJlcXVlc3QnKSB7XHJcbiAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5vcGVuQWxlcnRXaXRoQmFja2VuZFJlc3BvbnNlKHRoaXMuZXJyb3JVcGxvYWRpbmdJbWcsIGVycm9yLmVycm9yLm1lc3NhZ2UpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5vcGVuQWxlcnQodGhpcy5lcnJvclVwbG9hZGluZ0ltZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID1mYWxzZTtcclxuICAgICAgfVxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNlbmQgdGhlIGltZyB1cGxvYWRlZCB0byB0aGUgdGFicyBjb21wb25lbnRzLFxyXG4gICAqIFRoZW4gdGhlIHRhYnMgY29tcG9uZW50cyBhZGQgdGhlIGltZyB0byB1cGxvYWQgbGlzdCBieSBjYWxsaW5nIHRoZSBtZXRob2Qgb25JbWdVcGxvYWRlZCBvZiB0aGUgdXBsb2FkLWxpc3QgY29tcG9uZW50XHJcbiAgICogQHBhcmFtIGltZ1xyXG4gICAqL1xyXG4gIG9uSW1nVXBsb2FkKGltZzogSW1nUGljdHVyZURUT1tdKSB7XHJcbiAgICB0aGlzLmltZ1VwbG9hZGVkLmVtaXQoaW1nKTtcclxuICB9XHJcblxyXG4gIGlzRmlsZUltYWdlKGZpbGVUeXBlOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiBmaWxlVHlwZS5zcGxpdCgnLycpWzBdID09PSAnaW1hZ2UnO1xyXG4gIH1cclxuXHJcbiAgaXNTaXplVmFsaWQoaW1hZ2VCeXRlc1NpemU6IG51bWJlcik6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIGltYWdlQnl0ZXNTaXplIDwgdGhpcy5NQVhfSU1BR0VfU0laRTtcclxuICB9XHJcblxyXG4gIGdldEltYWdlU2l6ZUluS28oc2l6ZTogbnVtYmVyKSB7XHJcbiAgICByZXR1cm4gTWF0aC5yb3VuZChzaXplIC8gMTAyNCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZW1vdmUgdGhlIHN0eWxlIG9mIHRoZSBkcmFnIGFuZCBkcm9wIGJveFxyXG4gICAqIEFmdGVyIGFuIGltZyBpcyBkcm9wZWQsIHRoZSBib3ggaXMgc3RpbGwgZ3JleVxyXG4gICAqL1xyXG4gIHJlbW92ZURyYWdBbmREcm9wU3R5bGUoKSB7XHJcbiAgICB0aGlzLmRyYWdBbmREcm9wQm94Lm5hdGl2ZUVsZW1lbnQuc3R5bGUgPSAnJztcclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gIGNsYXNzPVwiaW1nLXVwbG9hZCBoYXMtdGV4dC1jZW50ZXJlZFwiXHJcbiAgW25nQ2xhc3NdPVwieydpbWctdXBsb2FkLS1zbWFsbCc6IHN0YXRlRGlzcGxheWVkID09PSAnc21hbGwnfVwiXHJcbiAgKGNsaWNrKT1cImZpbGVJbnB1dC5jbGljaygpXCJcclxuICBhcHBEcmFnRHJvcFxyXG4gIChvbkZpbGVEcm9wcGVkKT1cImZpbGVzQ2hhbmdlQnlEcmFnQW5kRHJvcCgkYW55KCRldmVudCkpXCJcclxuICAjZHJhZ0FuZERyb3BCb3hcclxuICBbQGVhc2VJbk91dF09XCInaW4nXCJcclxuPlxyXG4gIDxpbnB1dCBoaWRkZW4gdHlwZT1cImZpbGVcIiAjZmlsZUlucHV0IChjaGFuZ2UpPVwiZmlsZXNDaGFuZ2VCeUNsaWNrKCRldmVudClcIiBhY2NlcHQ9XCJpbWFnZS8qXCIgbXVsdGlwbGUgPlxyXG4gIDxkaXYgY2xhc3M9XCJpbWctdXBsb2FkX19jb250YWluZXJcIiBbbmdDbGFzc109XCJ7J2ltZy11cGxvYWRfX2NvbnRhaW5lci0tc21hbGwnOiBzdGF0ZURpc3BsYXllZCA9PT0gJ3NtYWxsJ31cIj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwiaW1nLXVwbG9hZF9fY29udGFpbmVyX193cmFwcGVyXCI+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaW1nLXVwbG9hZF9fY29udGFpbmVyX19sb2FkZXJcIiAqbmdJZj1cImlzTG9hZGluZ1wiPlxyXG4gICAgICAgIDx3ei1sb2FkZXIgW3NtYWxsXT1cInRydWVcIiBbcG9zaXRpb25dPVwiJ3JlbGF0aXZlJ1wiPjwvd3otbG9hZGVyPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNMb2FkaW5nXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJsdWVDb2xvciBpbWctdXBsb2FkX19jb250YWluZXJfX2Ryb3BJbWdJY29uRGl2XCI+XHJcbiAgICAgICAgICA8aW1nICpuZ0lmPVwiYXNzZXRzSWNvblwiIFtzcmNdPVwiYXNzZXRzSWNvblwiIGFsdD1cImljb24gcGljdHVyZVwiIC8+XHJcbiAgICAgICAgICA8cD57eyAnSW1nTWFuYWdlci5JbWdVcGxvYWQuZHJvcEltZycgfCB0cmFuc2xhdGUgfX08L3A+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxwIGNsYXNzPVwiaW1nLXVwbG9hZF9fY29udGFpbmVyX19vclwiPnt7ICdJbWdNYW5hZ2VyLkltZ1VwbG9hZC5vcicgfCB0cmFuc2xhdGUgfX08L3A+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJpbWctdXBsb2FkX19jb250YWluZXJfX3RleHRcIj5cclxuICAgICAgICAgIDxpIGNsYXNzPVwiZmFsIGZhLWZpbGUtdXBsb2FkXCI+PC9pPnt7ICdJbWdNYW5hZ2VyLkltZ1VwbG9hZC5zZWxlY3RJbWcnIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
126
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1nLXVwbG9hZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ei1pbWctbWFuYWdlci9zcmMvbGliL2NvbXBvbmVudHMvaW1nLXVwbG9hZC9pbWctdXBsb2FkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3d6LWltZy1tYW5hZ2VyL3NyYy9saWIvY29tcG9uZW50cy9pbWctdXBsb2FkL2ltZy11cGxvYWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3BHLE9BQU8sRUFBYyxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFNUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBRTdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7Ozs7Ozs7QUFTeEQsTUFBTSxPQUFPLGtCQUFrQjtJQWdCN0IsWUFDVSxZQUEwQixFQUMxQixVQUFzQixFQUN0QixnQkFBa0MsRUFDbEMsYUFBNEI7UUFINUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBbEJ0QyxVQUFLLEdBQVEsRUFBRSxDQUFDO1FBQ2hCLGNBQVMsR0FBWSxLQUFLLENBQUM7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dXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBWaWV3Q2hpbGQsIEVsZW1lbnRSZWZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZm9ya0pvaW4gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEltZ1BpY3R1cmVEVE8gfSBmcm9tICcuLi8uLi9kdG8vaW1nLW1hbmFnZXIuZHRvJztcbmltcG9ydCB7IGVhc2VJbk91dCB9IGZyb20gJy4uLy4uL2FuaW1hdGlvbnMvZWFzZUluT3V0L2Vhc2UtaW4tb3V0LmFuaW1hdGlvbic7XG5pbXBvcnQgeyBzdGF0ZURpc3BsYXllZCB9IGZyb20gJy4uLy4uL2R0by9leHBvcnQtZHRvcy5hcGknO1xuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYWxlcnQuc2VydmljZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBVcGxvYWRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdXBsb2FkLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXBpU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FwaS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW1nLXVwbG9hZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbWctdXBsb2FkLmNvbXBvbmVudC5odG1sJyxcbiAgYW5pbWF0aW9uczogW1xuICAgIGVhc2VJbk91dFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEltZ1VwbG9hZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgZmlsZXM6IGFueSA9IFtdO1xuICBpc0xvYWRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcbiAgYXNzZXRzSWNvbjogc3RyaW5nO1xuICBASW5wdXQoKSBzdGF0ZURpc3BsYXllZDogc3RhdGVEaXNwbGF5ZWQ7XG4gIEBPdXRwdXQoKSBpbWdVcGxvYWRlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAVmlld0NoaWxkKCdkcmFnQW5kRHJvcEJveCcpIGRyYWdBbmREcm9wQm94OiBFbGVtZW50UmVmO1xuXG4gIGxvYWRpbmdUZXh0ID0gJ0ltZ01hbmFnZXIuSW1nVXBsb2FkLmxvYWRpbmcnO1xuICBlcnJvclVwbG9hZGluZ0ltZyA9ICdJbWdNYW5hZ2VyLkltZ1VwbG9hZC5lcnJvclVwbG9hZGluZ0ltZyc7XG4gIGVycm9yTm90SW1nID0gJ0ltZ01hbmFnZXIuSW1nVXBsb2FkLmVycm9yTm90SW1nJztcblxuICBNQVhfSU1BR0VfU0laRSA9IDEwMDAwMDAwOyAvLyBJbiBieXRlc1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYWxlcnRTZXJ2aWNlOiBBbGVydFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBhcGlTZXJ2aWNlOiBBcGlTZXJ2aWNlLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHVwbG9hZFNlcnZpY2U6IFVwbG9hZFNlcnZpY2VcbiAgICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5hc3NldHNJY29uID0gdGhpcy5nZXRBc3NldHMoKTtcbiAgfVxuXG4gIGZpbGVzQ2hhbmdlQnlDbGljayhldmVudDogYW55KSB7XG4gICAgdGhpcy51cGxvYWRGaWxlKGV2ZW50LnRhcmdldC5maWxlcyk7XG4gIH1cblxuICBnZXRBc3NldHMoKSB7XG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5DT05GSUcuYXNzZXRzX3JvdXRlICsgXCJpbWcvaWNvbl9waWN0dXJlLnN2Z1wiO1xuICB9XG5cbiAgZmlsZXNDaGFuZ2VCeURyYWdBbmREcm9wKGZpbGVzTGlzdDogRmlsZUxpc3QpIHtcbiAgICB0aGlzLnJlbW92ZURyYWdBbmREcm9wU3R5bGUoKTtcbiAgICB0aGlzLnVwbG9hZEZpbGUoQXJyYXkuZnJvbShmaWxlc0xpc3QpKTtcbiAgfVxuXG4gIHVwbG9hZEZpbGUoZmlsZXM6IEZpbGVbXSkge1xuICAgIGlmIChmaWxlcyAmJiAhZmlsZXMubGVuZ3RoKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5pc0xvYWRpbmcgPXRydWU7XG4gICAgY29uc3QgaW1nVG9VcGxvYWRMaXN0OiBPYnNlcnZhYmxlPGFueT5bXSA9IFtdO1xuICAgIGZvciAoY29uc3QgZmlsZSBvZiBmaWxlcykge1xuICAgICAgaWYoIXRoaXMuaXNGaWxlSW1hZ2UoZmlsZS50eXBlKSkge1xuICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5vcGVuQWxlcnQodGhpcy5lcnJvck5vdEltZyk7XG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAoIXRoaXMuaXNTaXplVmFsaWQoZmlsZS5zaXplKSkge1xuICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5vcGVuQWxlcnQoXG4gICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ0ltZ01hbmFnZXIuSW1nVXBsb2FkLkVycm9ySW1nU2l6ZScsIHtcbiAgICAgICAgICAgIGZpbGVOYW1lOiBmaWxlLm5hbWUsXG4gICAgICAgICAgICBmaWxlU2l6ZTogdGhpcy5nZXRJbWFnZVNpemVJbktvKGZpbGUuc2l6ZSksXG4gICAgICAgICAgICBtYXhGaWxlU2l6ZTogdGhpcy5nZXRJbWFnZVNpemVJbktvKHRoaXMuTUFYX0lNQUdFX1NJWkUpXG4gICAgICAgICAgfSkpO1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgZm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICAgIGZvcm1EYXRhLmFwcGVuZCgnaW1hZ2UnLCBmaWxlLCBmaWxlLm5hbWUpO1xuICAgICAgaW1nVG9VcGxvYWRMaXN0LnB1c2godGhpcy51cGxvYWRTZXJ2aWNlLnVwbG9hZEZpbGUoZm9ybURhdGEpKTtcbiAgICB9XG5cbiAgICBmb3JrSm9pbihpbWdUb1VwbG9hZExpc3QpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAoaW1nOiBJbWdQaWN0dXJlRFRPW10pID0+IHtcbiAgICAgICAgdGhpcy5vbkltZ1VwbG9hZChpbWcpLFxuICAgICAgICB0aGlzLmlzTG9hZGluZyA9ZmFsc2U7XG4gICAgICB9LFxuICAgICAgZXJyb3I6IGVycm9yID0+IHtcbiAgICAgICAgaWYgKGVycm9yPy5lcnJvcj8ubWVzc2FnZSAmJiBlcnJvci5zdGF0dXNUZXh0ICE9PSAnQmFkIFJlcXVlc3QnKSB7XG4gICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2Uub3BlbkFsZXJ0V2l0aEJhY2tlbmRSZXNwb25zZSh0aGlzLmVycm9yVXBsb2FkaW5nSW1nLCBlcnJvci5lcnJvci5tZXNzYWdlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5vcGVuQWxlcnQodGhpcy5lcnJvclVwbG9hZGluZ0ltZyk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPWZhbHNlO1xuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICAvKipcbiAgICogU2VuZCB0aGUgaW1nIHVwbG9hZGVkIHRvIHRoZSB0YWJzIGNvbXBvbmVudHMsXG4gICAqIFRoZW4gdGhlIHRhYnMgY29tcG9uZW50cyBhZGQgdGhlIGltZyB0byB1cGxvYWQgbGlzdCBieSBjYWxsaW5nIHRoZSBtZXRob2Qgb25JbWdVcGxvYWRlZCBvZiB0aGUgdXBsb2FkLWxpc3QgY29tcG9uZW50XG4gICAqIEBwYXJhbSBpbWdcbiAgICovXG4gIG9uSW1nVXBsb2FkKGltZzogSW1nUGljdHVyZURUT1tdKSB7XG4gICAgdGhpcy5pbWdVcGxvYWRlZC5lbWl0KGltZyk7XG4gIH1cblxuICBpc0ZpbGVJbWFnZShmaWxlVHlwZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGZpbGVUeXBlLnNwbGl0KCcvJylbMF0gPT09ICdpbWFnZSc7XG4gIH1cblxuICBpc1NpemVWYWxpZChpbWFnZUJ5dGVzU2l6ZTogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGltYWdlQnl0ZXNTaXplIDwgdGhpcy5NQVhfSU1BR0VfU0laRTtcbiAgfVxuXG4gIGdldEltYWdlU2l6ZUluS28oc2l6ZTogbnVtYmVyKSB7XG4gICAgcmV0dXJuIE1hdGgucm91bmQoc2l6ZSAvIDEwMjQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgc3R5bGUgb2YgdGhlIGRyYWcgYW5kIGRyb3AgYm94XG4gICAqIEFmdGVyIGFuIGltZyBpcyBkcm9wZWQsIHRoZSBib3ggaXMgc3RpbGwgZ3JleVxuICAgKi9cbiAgcmVtb3ZlRHJhZ0FuZERyb3BTdHlsZSgpIHtcbiAgICB0aGlzLmRyYWdBbmREcm9wQm94Lm5hdGl2ZUVsZW1lbnQuc3R5bGUgPSAnJztcbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cImltZy11cGxvYWQgaGFzLXRleHQtY2VudGVyZWRcIlxuICBbbmdDbGFzc109XCJ7J2ltZy11cGxvYWQtLXNtYWxsJzogc3RhdGVEaXNwbGF5ZWQgPT09ICdzbWFsbCd9XCJcbiAgKGNsaWNrKT1cImZpbGVJbnB1dC5jbGljaygpXCJcbiAgYXBwRHJhZ0Ryb3BcbiAgKG9uRmlsZURyb3BwZWQpPVwiZmlsZXNDaGFuZ2VCeURyYWdBbmREcm9wKCRhbnkoJGV2ZW50KSlcIlxuICAjZHJhZ0FuZERyb3BCb3hcbiAgW0BlYXNlSW5PdXRdPVwiJ2luJ1wiXG4+XG4gIDxpbnB1dCBoaWRkZW4gdHlwZT1cImZpbGVcIiAjZmlsZUlucHV0IChjaGFuZ2UpPVwiZmlsZXNDaGFuZ2VCeUNsaWNrKCRldmVudClcIiBhY2NlcHQ9XCJpbWFnZS8qXCIgbXVsdGlwbGUgPlxuICA8ZGl2IGNsYXNzPVwiaW1nLXVwbG9hZF9fY29udGFpbmVyXCIgW25nQ2xhc3NdPVwieydpbWctdXBsb2FkX19jb250YWluZXItLXNtYWxsJzogc3RhdGVEaXNwbGF5ZWQgPT09ICdzbWFsbCd9XCI+XG5cbiAgICA8ZGl2IGNsYXNzPVwiaW1nLXVwbG9hZF9fY29udGFpbmVyX193cmFwcGVyXCI+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJpbWctdXBsb2FkX19jb250YWluZXJfX2xvYWRlclwiICpuZ0lmPVwiaXNMb2FkaW5nXCI+XG4gICAgICAgIDx3ei1sb2FkZXIgW3NtYWxsXT1cInRydWVcIiBbcG9zaXRpb25dPVwiJ3JlbGF0aXZlJ1wiPjwvd3otbG9hZGVyPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNMb2FkaW5nXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJibHVlQ29sb3IgaW1nLXVwbG9hZF9fY29udGFpbmVyX19kcm9wSW1nSWNvbkRpdlwiPlxuICAgICAgICAgIDxpbWcgKm5nSWY9XCJhc3NldHNJY29uXCIgW3NyY109XCJhc3NldHNJY29uXCIgYWx0PVwiaWNvbiBwaWN0dXJlXCIgLz5cbiAgICAgICAgICA8cD57eyAnSW1nTWFuYWdlci5JbWdVcGxvYWQuZHJvcEltZycgfCB0cmFuc2xhdGUgfX08L3A+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxwIGNsYXNzPVwiaW1nLXVwbG9hZF9fY29udGFpbmVyX19vclwiPnt7ICdJbWdNYW5hZ2VyLkltZ1VwbG9hZC5vcicgfCB0cmFuc2xhdGUgfX08L3A+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImltZy11cGxvYWRfX2NvbnRhaW5lcl9fdGV4dFwiPlxuICAgICAgICAgIDxpIGNsYXNzPVwiZmFsIGZhLWZpbGUtdXBsb2FkXCI+PC9pPnt7ICdJbWdNYW5hZ2VyLkltZ1VwbG9hZC5zZWxlY3RJbWcnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -180,7 +180,7 @@ export class PexelLibComponent {
180
180
  }
181
181
  }
182
182
  PexelLibComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PexelLibComponent, deps: [{ token: i1.PexelsService }, { token: i2.AlertService }, { token: i3.TranslateService }, { token: i4.UploadService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
183
- PexelLibComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: PexelLibComponent, selector: "pexels-lib", inputs: { stateDisplayed: "stateDisplayed", searchValue: "searchValue", disableSearch: "disableSearch" }, viewQueries: [{ propertyName: "content", first: true, predicate: ["outerElement"], descendants: true }], ngImport: i0, template: "<div class=\"pexels-lib\" #outerElement [@easeInOut]=\"'in'\">\r\n\r\n <ng-scrollbar\r\n [reachedOffset]=\"300\"\r\n class=\"pexels-lib__scroll\"\r\n [ngClass]=\"{\r\n 'pexels-lib__scroll--smallDisplay': stateDisplayed === 'small',\r\n 'pexels-lib__scroll--noResult': !nbResult,\r\n 'pexels-lib__scroll--hide': (!nbResult && disableSearch)\r\n }\"\r\n (reachedBottom)=\"onBottomReached()\"\r\n >\r\n <div\r\n *ngIf=\"!disableSearch\"\r\n class=\"pexels-lib__search\"\r\n [ngClass]=\"{'pexels-lib__search--smallDisplay': stateDisplayed === 'small'}\"\r\n >\r\n <wz-input-search\r\n [(ngModel)]=\"searchValue\"\r\n [placeholder]=\"'ImgManager.SearchBar.placeholder' | translate\"\r\n (changeDebounced)=\"onSearchNameChanged()\"\r\n [smallPadding]=\"stateDisplayed === 'small'\">\r\n </wz-input-search>\r\n </div>\r\n\r\n <div *ngIf=\"!initComponent\" class=\"pexels-lib__wrapper\">\r\n <p *ngIf=\"nbResult\" class=\"pexels-lib__wrapper__result-nb\">{{ 'ImgManager.PexelLib.nbImgFound' | translate }} : {{ nbResult }}</p>\r\n\r\n <div class=\"pexels-lib__wrapper__result\">\r\n\r\n <div *ngFor=\"let photosColumn of photosColumns; let indexCol = index;\" class=\"pexels-lib__wrapper__result__column\" [@listAnimation]=\"photosColumn.photos.length\">\r\n <div *ngFor=\"let photo of photosColumn.photos; let indexPhoto = index;\" class=\"pexels-lib__wrapper__result__column__element\">\r\n\r\n <img [alt]=\"photo.src.medium\" [src]=\"photo.src.medium\"\r\n class=\"pexels-lib__wrapper__result__column__element__img\"/>\r\n\r\n <div class=\"pexels-lib__wrapper__result__column__element__wrapper\">\r\n <span class=\"pexels-lib__wrapper__result__column__element__wrapper__infos\">\r\n {{ photo.width }} x {{ photo.height}}\r\n </span>\r\n\r\n <div class=\"dropdown is-up\" [ngClass]=\"{'is-hoverable': !photo.uploading}\">\r\n <div class=\"dropdown-trigger\">\r\n <button\r\n type=\"button\"\r\n class=\"button pexels-lib__wrapper__result__column__element__wrapper__button\"\r\n aria-haspopup=\"true\"\r\n aria-controls=\"dropdown-menu\">\r\n\r\n <div *ngIf=\"!photo.uploading\" (click)=\"uploadPhoto(photo, photo.src.large2x)\">\r\n <span>{{ 'ImgManager.PexelLib.import' | translate }}</span>\r\n <span class=\"icon is-small\">\r\n <i class=\"fa-solid fa-angle-up\" aria-hidden=\"true\"></i>\r\n </span>\r\n <ng-container *ngIf=\"photo.uploaded\">\r\n &nbsp;<i class=\"fal fa-check\"></i>\r\n </ng-container>\r\n </div>\r\n\r\n <ng-container *ngIf=\"photo.uploading\">\r\n {{ 'ImgManager.PexelLib.importation' | translate }}\r\n <span btnLoadingAnim class=\"btnLoadingAnnimation\"></span>\r\n </ng-container>\r\n\r\n </button>\r\n </div>\r\n <div class=\"dropdown-menu pexels-lib__wrapper__result__column__element__wrapper__dropdown\" id=\"dropdown-menu\" role=\"menu\">\r\n <div class=\"dropdown-content\">\r\n <div class=\"dropdown-content__wrapper\">\r\n <div class=\"dropdown-item\" (click)=\"uploadPhoto(photo, photo.src.portrait)\">\r\n <p>{{ 'ImgManager.PexelLib.portrait' | translate }}</p>\r\n <i class=\"fal fa-check iPortrait\"></i>\r\n </div>\r\n <div class=\"dropdown-item\" (click)=\"uploadPhoto(photo, photo.src.landscape)\">\r\n <p>{{ 'ImgManager.PexelLib.landscape' | translate }}</p>\r\n <i class=\"fal fa-check iLandscape\"></i>\r\n </div>\r\n <div class=\"dropdown-item\" (click)=\"uploadPhoto(photo, photo.src.large2x)\">\r\n <p>{{ 'ImgManager.PexelLib.original' | translate }}</p>\r\n <i class=\"fal fa-check iOriginal\"></i>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </ng-scrollbar>\r\n\r\n <ng-container *ngIf=\"isLoading\">\r\n <wz-loader></wz-loader>\r\n </ng-container>\r\n <div\r\n *ngIf=\"!isLoading && !nbResult\"\r\n class=\"pexels-lib__alert\"\r\n [@easeInOut]=\"'in'\">\r\n <wz-alert [warning]=\"true\">\r\n {{ 'ImgManager.PexelLib.noResult' | translate }}\r\n </wz-alert>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i7.NgScrollbar, selector: "ng-scrollbar", inputs: ["disabled", "sensorDisabled", "pointerEventsDisabled", "viewportPropagateMouseMove", "autoHeightDisabled", "autoWidthDisabled", "viewClass", "trackClass", "thumbClass", "minThumbSize", "trackClickScrollDuration", "pointerEventsMethod", "track", "visibility", "appearance", "position", "sensorDebounce", "scrollAuditTime"], outputs: ["updated"], exportAs: ["ngScrollbar"] }, { kind: "directive", type: i8.NgScrollbarReachedBottom, selector: "[reachedBottom], [reached-bottom]", outputs: ["reachedBottom"] }, { kind: "component", type: i9.LoaderComponent, selector: "wz-loader", inputs: ["text", "small", "position"] }, { kind: "component", type: i10.InputSearchComponent, selector: "wz-input-search", inputs: ["placeholder", "smallPadding", "id"], outputs: ["changeDebounced"] }, { kind: "component", type: i11.AlertComponent, selector: "wz-alert", inputs: ["icon", "warning", "success", "iconClass"] }, { kind: "directive", type: i12.LoadingDirective, selector: "[btnLoadingAnim]" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], animations: [
183
+ PexelLibComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: PexelLibComponent, selector: "pexels-lib", inputs: { stateDisplayed: "stateDisplayed", searchValue: "searchValue", disableSearch: "disableSearch" }, viewQueries: [{ propertyName: "content", first: true, predicate: ["outerElement"], descendants: true }], ngImport: i0, template: "<div class=\"pexels-lib\" #outerElement [@easeInOut]=\"'in'\">\n\n <ng-scrollbar\n [reachedOffset]=\"300\"\n class=\"pexels-lib__scroll\"\n [ngClass]=\"{\n 'pexels-lib__scroll--smallDisplay': stateDisplayed === 'small',\n 'pexels-lib__scroll--noResult': !nbResult,\n 'pexels-lib__scroll--hide': (!nbResult && disableSearch)\n }\"\n (reachedBottom)=\"onBottomReached()\"\n >\n <div\n *ngIf=\"!disableSearch\"\n class=\"pexels-lib__search\"\n [ngClass]=\"{'pexels-lib__search--smallDisplay': stateDisplayed === 'small'}\"\n >\n <wz-input-search\n [(ngModel)]=\"searchValue\"\n [placeholder]=\"'ImgManager.SearchBar.placeholder' | translate\"\n (changeDebounced)=\"onSearchNameChanged()\"\n [smallPadding]=\"stateDisplayed === 'small'\">\n </wz-input-search>\n </div>\n\n <div *ngIf=\"!initComponent\" class=\"pexels-lib__wrapper\">\n <p *ngIf=\"nbResult\" class=\"pexels-lib__wrapper__result-nb\">{{ 'ImgManager.PexelLib.nbImgFound' | translate }} : {{ nbResult }}</p>\n\n <div class=\"pexels-lib__wrapper__result\">\n\n <div *ngFor=\"let photosColumn of photosColumns; let indexCol = index;\" class=\"pexels-lib__wrapper__result__column\" [@listAnimation]=\"photosColumn.photos.length\">\n <div *ngFor=\"let photo of photosColumn.photos; let indexPhoto = index;\" class=\"pexels-lib__wrapper__result__column__element\">\n\n <img [alt]=\"photo.src.medium\" [src]=\"photo.src.medium\"\n class=\"pexels-lib__wrapper__result__column__element__img\"/>\n\n <div class=\"pexels-lib__wrapper__result__column__element__wrapper\">\n <span class=\"pexels-lib__wrapper__result__column__element__wrapper__infos\">\n {{ photo.width }} x {{ photo.height}}\n </span>\n\n <div class=\"dropdown is-up\" [ngClass]=\"{'is-hoverable': !photo.uploading}\">\n <div class=\"dropdown-trigger\">\n <button\n type=\"button\"\n class=\"button pexels-lib__wrapper__result__column__element__wrapper__button\"\n aria-haspopup=\"true\"\n aria-controls=\"dropdown-menu\">\n\n <div *ngIf=\"!photo.uploading\" (click)=\"uploadPhoto(photo, photo.src.large2x)\">\n <span>{{ 'ImgManager.PexelLib.import' | translate }}</span>\n <span class=\"icon is-small\">\n <i class=\"fa-solid fa-angle-up\" aria-hidden=\"true\"></i>\n </span>\n <ng-container *ngIf=\"photo.uploaded\">\n &nbsp;<i class=\"fal fa-check\"></i>\n </ng-container>\n </div>\n\n <ng-container *ngIf=\"photo.uploading\">\n {{ 'ImgManager.PexelLib.importation' | translate }}\n <span btnLoadingAnim class=\"btnLoadingAnnimation\"></span>\n </ng-container>\n\n </button>\n </div>\n <div class=\"dropdown-menu pexels-lib__wrapper__result__column__element__wrapper__dropdown\" id=\"dropdown-menu\" role=\"menu\">\n <div class=\"dropdown-content\">\n <div class=\"dropdown-content__wrapper\">\n <div class=\"dropdown-item\" (click)=\"uploadPhoto(photo, photo.src.portrait)\">\n <p>{{ 'ImgManager.PexelLib.portrait' | translate }}</p>\n <i class=\"fal fa-check iPortrait\"></i>\n </div>\n <div class=\"dropdown-item\" (click)=\"uploadPhoto(photo, photo.src.landscape)\">\n <p>{{ 'ImgManager.PexelLib.landscape' | translate }}</p>\n <i class=\"fal fa-check iLandscape\"></i>\n </div>\n <div class=\"dropdown-item\" (click)=\"uploadPhoto(photo, photo.src.large2x)\">\n <p>{{ 'ImgManager.PexelLib.original' | translate }}</p>\n <i class=\"fal fa-check iOriginal\"></i>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n </div>\n </div>\n </div>\n </div>\n\n </ng-scrollbar>\n\n <ng-container *ngIf=\"isLoading\">\n <wz-loader></wz-loader>\n </ng-container>\n <div\n *ngIf=\"!isLoading && !nbResult\"\n class=\"pexels-lib__alert\"\n [@easeInOut]=\"'in'\">\n <wz-alert [warning]=\"true\">\n {{ 'ImgManager.PexelLib.noResult' | translate }}\n </wz-alert>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i7.NgScrollbar, selector: "ng-scrollbar", inputs: ["disabled", "sensorDisabled", "pointerEventsDisabled", "viewportPropagateMouseMove", "autoHeightDisabled", "autoWidthDisabled", "viewClass", "trackClass", "thumbClass", "minThumbSize", "trackClickScrollDuration", "pointerEventsMethod", "track", "visibility", "appearance", "position", "sensorDebounce", "scrollAuditTime"], outputs: ["updated"], exportAs: ["ngScrollbar"] }, { kind: "directive", type: i8.NgScrollbarReachedBottom, selector: "[reachedBottom], [reached-bottom]", outputs: ["reachedBottom"] }, { kind: "component", type: i9.LoaderComponent, selector: "wz-loader", inputs: ["text", "small", "position"] }, { kind: "component", type: i10.InputSearchComponent, selector: "wz-input-search", inputs: ["placeholder", "smallPadding", "id"], outputs: ["changeDebounced"] }, { kind: "component", type: i11.AlertComponent, selector: "wz-alert", inputs: ["icon", "warning", "success", "iconClass"] }, { kind: "directive", type: i12.LoadingDirective, selector: "[btnLoadingAnim]" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], animations: [
184
184
  easeInOut,
185
185
  listAnnimation
186
186
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
@@ -189,7 +189,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
189
189
  args: [{ selector: 'pexels-lib', animations: [
190
190
  easeInOut,
191
191
  listAnnimation
192
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"pexels-lib\" #outerElement [@easeInOut]=\"'in'\">\r\n\r\n <ng-scrollbar\r\n [reachedOffset]=\"300\"\r\n class=\"pexels-lib__scroll\"\r\n [ngClass]=\"{\r\n 'pexels-lib__scroll--smallDisplay': stateDisplayed === 'small',\r\n 'pexels-lib__scroll--noResult': !nbResult,\r\n 'pexels-lib__scroll--hide': (!nbResult && disableSearch)\r\n }\"\r\n (reachedBottom)=\"onBottomReached()\"\r\n >\r\n <div\r\n *ngIf=\"!disableSearch\"\r\n class=\"pexels-lib__search\"\r\n [ngClass]=\"{'pexels-lib__search--smallDisplay': stateDisplayed === 'small'}\"\r\n >\r\n <wz-input-search\r\n [(ngModel)]=\"searchValue\"\r\n [placeholder]=\"'ImgManager.SearchBar.placeholder' | translate\"\r\n (changeDebounced)=\"onSearchNameChanged()\"\r\n [smallPadding]=\"stateDisplayed === 'small'\">\r\n </wz-input-search>\r\n </div>\r\n\r\n <div *ngIf=\"!initComponent\" class=\"pexels-lib__wrapper\">\r\n <p *ngIf=\"nbResult\" class=\"pexels-lib__wrapper__result-nb\">{{ 'ImgManager.PexelLib.nbImgFound' | translate }} : {{ nbResult }}</p>\r\n\r\n <div class=\"pexels-lib__wrapper__result\">\r\n\r\n <div *ngFor=\"let photosColumn of photosColumns; let indexCol = index;\" class=\"pexels-lib__wrapper__result__column\" [@listAnimation]=\"photosColumn.photos.length\">\r\n <div *ngFor=\"let photo of photosColumn.photos; let indexPhoto = index;\" class=\"pexels-lib__wrapper__result__column__element\">\r\n\r\n <img [alt]=\"photo.src.medium\" [src]=\"photo.src.medium\"\r\n class=\"pexels-lib__wrapper__result__column__element__img\"/>\r\n\r\n <div class=\"pexels-lib__wrapper__result__column__element__wrapper\">\r\n <span class=\"pexels-lib__wrapper__result__column__element__wrapper__infos\">\r\n {{ photo.width }} x {{ photo.height}}\r\n </span>\r\n\r\n <div class=\"dropdown is-up\" [ngClass]=\"{'is-hoverable': !photo.uploading}\">\r\n <div class=\"dropdown-trigger\">\r\n <button\r\n type=\"button\"\r\n class=\"button pexels-lib__wrapper__result__column__element__wrapper__button\"\r\n aria-haspopup=\"true\"\r\n aria-controls=\"dropdown-menu\">\r\n\r\n <div *ngIf=\"!photo.uploading\" (click)=\"uploadPhoto(photo, photo.src.large2x)\">\r\n <span>{{ 'ImgManager.PexelLib.import' | translate }}</span>\r\n <span class=\"icon is-small\">\r\n <i class=\"fa-solid fa-angle-up\" aria-hidden=\"true\"></i>\r\n </span>\r\n <ng-container *ngIf=\"photo.uploaded\">\r\n &nbsp;<i class=\"fal fa-check\"></i>\r\n </ng-container>\r\n </div>\r\n\r\n <ng-container *ngIf=\"photo.uploading\">\r\n {{ 'ImgManager.PexelLib.importation' | translate }}\r\n <span btnLoadingAnim class=\"btnLoadingAnnimation\"></span>\r\n </ng-container>\r\n\r\n </button>\r\n </div>\r\n <div class=\"dropdown-menu pexels-lib__wrapper__result__column__element__wrapper__dropdown\" id=\"dropdown-menu\" role=\"menu\">\r\n <div class=\"dropdown-content\">\r\n <div class=\"dropdown-content__wrapper\">\r\n <div class=\"dropdown-item\" (click)=\"uploadPhoto(photo, photo.src.portrait)\">\r\n <p>{{ 'ImgManager.PexelLib.portrait' | translate }}</p>\r\n <i class=\"fal fa-check iPortrait\"></i>\r\n </div>\r\n <div class=\"dropdown-item\" (click)=\"uploadPhoto(photo, photo.src.landscape)\">\r\n <p>{{ 'ImgManager.PexelLib.landscape' | translate }}</p>\r\n <i class=\"fal fa-check iLandscape\"></i>\r\n </div>\r\n <div class=\"dropdown-item\" (click)=\"uploadPhoto(photo, photo.src.large2x)\">\r\n <p>{{ 'ImgManager.PexelLib.original' | translate }}</p>\r\n <i class=\"fal fa-check iOriginal\"></i>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </ng-scrollbar>\r\n\r\n <ng-container *ngIf=\"isLoading\">\r\n <wz-loader></wz-loader>\r\n </ng-container>\r\n <div\r\n *ngIf=\"!isLoading && !nbResult\"\r\n class=\"pexels-lib__alert\"\r\n [@easeInOut]=\"'in'\">\r\n <wz-alert [warning]=\"true\">\r\n {{ 'ImgManager.PexelLib.noResult' | translate }}\r\n </wz-alert>\r\n </div>\r\n</div>\r\n" }]
192
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"pexels-lib\" #outerElement [@easeInOut]=\"'in'\">\n\n <ng-scrollbar\n [reachedOffset]=\"300\"\n class=\"pexels-lib__scroll\"\n [ngClass]=\"{\n 'pexels-lib__scroll--smallDisplay': stateDisplayed === 'small',\n 'pexels-lib__scroll--noResult': !nbResult,\n 'pexels-lib__scroll--hide': (!nbResult && disableSearch)\n }\"\n (reachedBottom)=\"onBottomReached()\"\n >\n <div\n *ngIf=\"!disableSearch\"\n class=\"pexels-lib__search\"\n [ngClass]=\"{'pexels-lib__search--smallDisplay': stateDisplayed === 'small'}\"\n >\n <wz-input-search\n [(ngModel)]=\"searchValue\"\n [placeholder]=\"'ImgManager.SearchBar.placeholder' | translate\"\n (changeDebounced)=\"onSearchNameChanged()\"\n [smallPadding]=\"stateDisplayed === 'small'\">\n </wz-input-search>\n </div>\n\n <div *ngIf=\"!initComponent\" class=\"pexels-lib__wrapper\">\n <p *ngIf=\"nbResult\" class=\"pexels-lib__wrapper__result-nb\">{{ 'ImgManager.PexelLib.nbImgFound' | translate }} : {{ nbResult }}</p>\n\n <div class=\"pexels-lib__wrapper__result\">\n\n <div *ngFor=\"let photosColumn of photosColumns; let indexCol = index;\" class=\"pexels-lib__wrapper__result__column\" [@listAnimation]=\"photosColumn.photos.length\">\n <div *ngFor=\"let photo of photosColumn.photos; let indexPhoto = index;\" class=\"pexels-lib__wrapper__result__column__element\">\n\n <img [alt]=\"photo.src.medium\" [src]=\"photo.src.medium\"\n class=\"pexels-lib__wrapper__result__column__element__img\"/>\n\n <div class=\"pexels-lib__wrapper__result__column__element__wrapper\">\n <span class=\"pexels-lib__wrapper__result__column__element__wrapper__infos\">\n {{ photo.width }} x {{ photo.height}}\n </span>\n\n <div class=\"dropdown is-up\" [ngClass]=\"{'is-hoverable': !photo.uploading}\">\n <div class=\"dropdown-trigger\">\n <button\n type=\"button\"\n class=\"button pexels-lib__wrapper__result__column__element__wrapper__button\"\n aria-haspopup=\"true\"\n aria-controls=\"dropdown-menu\">\n\n <div *ngIf=\"!photo.uploading\" (click)=\"uploadPhoto(photo, photo.src.large2x)\">\n <span>{{ 'ImgManager.PexelLib.import' | translate }}</span>\n <span class=\"icon is-small\">\n <i class=\"fa-solid fa-angle-up\" aria-hidden=\"true\"></i>\n </span>\n <ng-container *ngIf=\"photo.uploaded\">\n &nbsp;<i class=\"fal fa-check\"></i>\n </ng-container>\n </div>\n\n <ng-container *ngIf=\"photo.uploading\">\n {{ 'ImgManager.PexelLib.importation' | translate }}\n <span btnLoadingAnim class=\"btnLoadingAnnimation\"></span>\n </ng-container>\n\n </button>\n </div>\n <div class=\"dropdown-menu pexels-lib__wrapper__result__column__element__wrapper__dropdown\" id=\"dropdown-menu\" role=\"menu\">\n <div class=\"dropdown-content\">\n <div class=\"dropdown-content__wrapper\">\n <div class=\"dropdown-item\" (click)=\"uploadPhoto(photo, photo.src.portrait)\">\n <p>{{ 'ImgManager.PexelLib.portrait' | translate }}</p>\n <i class=\"fal fa-check iPortrait\"></i>\n </div>\n <div class=\"dropdown-item\" (click)=\"uploadPhoto(photo, photo.src.landscape)\">\n <p>{{ 'ImgManager.PexelLib.landscape' | translate }}</p>\n <i class=\"fal fa-check iLandscape\"></i>\n </div>\n <div class=\"dropdown-item\" (click)=\"uploadPhoto(photo, photo.src.large2x)\">\n <p>{{ 'ImgManager.PexelLib.original' | translate }}</p>\n <i class=\"fal fa-check iOriginal\"></i>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n </div>\n </div>\n </div>\n </div>\n\n </ng-scrollbar>\n\n <ng-container *ngIf=\"isLoading\">\n <wz-loader></wz-loader>\n </ng-container>\n <div\n *ngIf=\"!isLoading && !nbResult\"\n class=\"pexels-lib__alert\"\n [@easeInOut]=\"'in'\">\n <wz-alert [warning]=\"true\">\n {{ 'ImgManager.PexelLib.noResult' | translate }}\n </wz-alert>\n </div>\n</div>\n" }]
193
193
  }], ctorParameters: function () { return [{ type: i1.PexelsService }, { type: i2.AlertService }, { type: i3.TranslateService }, { type: i4.UploadService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { stateDisplayed: [{
194
194
  type: Input
195
195
  }], searchValue: [{
@@ -200,4 +200,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
200
200
  type: ViewChild,
201
201
  args: ['outerElement']
202
202
  }] } });
203
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGV4ZWxzLWxpYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ei1pbWctbWFuYWdlci9zcmMvbGliL2NvbXBvbmVudHMvcGV4ZWxzLWxpYi9wZXhlbHMtbGliLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3d6LWltZy1tYW5hZ2VyL3NyYy9saWIvY29tcG9uZW50cy9wZXhlbHMtbGliL3BleGVscy1saWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakksT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQzVELE9BQU8sRUFBQyxPQUFPLEVBQThCLE1BQU0sTUFBTSxDQUFDO0FBRTFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUM3RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFFaEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFXOUQsTUFBTSxPQUFPLGlCQUFpQjtJQW1DNUIsWUFDVSxlQUE4QixFQUM5QixZQUEwQixFQUMxQixnQkFBa0MsRUFDbEMsYUFBNEIsRUFDNUIsaUJBQW9DO1FBSnBDLG9CQUFlLEdBQWYsZUFBZSxDQUFlO1FBQzlCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsa0JBQWEs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LEdBQUcsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRTtnQkFDbEQsSUFBSSxDQUFDLFlBQVksQ0FBQyw0QkFBNEIsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQzthQUM1RjtpQkFBTTtnQkFDTCxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQzthQUNwRDtRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsNEJBQTRCO1FBQzVCLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDOUMsQ0FBQzs7OEdBbk1VLGlCQUFpQjtrR0FBakIsaUJBQWlCLHFRQ3BCOUIsOC9KQTBHQSxnd0RENUZjO1FBQ1YsU0FBUztRQUNULGNBQWM7S0FDZjsyRkFHVSxpQkFBaUI7a0JBVDdCLFNBQVM7K0JBQ0UsWUFBWSxjQUVWO3dCQUNWLFNBQVM7d0JBQ1QsY0FBYztxQkFDZixtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTTswTkFLL0MsY0FBYztzQkFEYixLQUFLO2dCQUdOLFdBQVc7c0JBRFYsS0FBSztnQkFJTixhQUFhO3NCQURaLEtBQUs7Z0JBd0J5QixPQUFPO3NCQUFyQyxTQUFTO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgVmlld0NoaWxkLCBJbnB1dCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtQZXhlbHNTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9wZXhlbHMuc2VydmljZSc7XHJcbmltcG9ydCB7U3ViamVjdCwgU3Vic2NyaXB0aW9uLCBjb21iaW5lTGF0ZXN0fSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtXekltZ0xpYkR0bywgUGhvdG9zQ29sdW1ucywgV3pJbWdMaWJQaG90b0R0b30gZnJvbSAnLi4vLi4vZHRvL3BleGVscy1pbWcuZHRvJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBlYXNlSW5PdXQgfSBmcm9tICcuLi8uLi9hbmltYXRpb25zL2Vhc2VJbk91dC9lYXNlLWluLW91dC5hbmltYXRpb24nO1xyXG5pbXBvcnQgeyBsaXN0QW5uaW1hdGlvbiB9IGZyb20gJy4uLy4uL2FuaW1hdGlvbnMvbGlzdEFubmltYXRpb24vbGlzdC5hbmltYXRpb24nO1xyXG5pbXBvcnQgeyBzdGF0ZURpc3BsYXllZCB9IGZyb20gJy4uLy4uL2R0by9leHBvcnQtZHRvcy5hcGknO1xyXG5pbXBvcnQgeyBBbGVydFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9hbGVydC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVXBsb2FkU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3VwbG9hZC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAncGV4ZWxzLWxpYicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3BleGVscy1saWIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIGFuaW1hdGlvbnM6IFtcclxuICAgIGVhc2VJbk91dCxcclxuICAgIGxpc3RBbm5pbWF0aW9uXHJcbiAgXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGV4ZWxMaWJDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcclxuXHJcbiAgQElucHV0KClcclxuICBzdGF0ZURpc3BsYXllZDogc3RhdGVEaXNwbGF5ZWQ7XHJcbiAgQElucHV0KClcclxuICBzZWFyY2hWYWx1ZTogc3RyaW5nID0gJyc7XHJcbiAgICAvKiogUGFzcyB0byB0cnVlIHRvIGhpZGUgc2VhcmNoIGlucHV0ICovXHJcbiAgQElucHV0KClcclxuICBkaXNhYmxlU2VhcmNoOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHBlclBhZ2UgPSAzMDtcclxuICBzZWFyY2hVcGRhdGVkID0gbmV3IFN1YmplY3QoKTtcclxuICBvbGRTZWFyY2hWYWx1ZTogc3RyaW5nO1xyXG4gIG5iUmVzdWx0ID0gMDtcclxuICB3ekltZ0xpYkR0bzogV3pJbWdMaWJEdG87XHJcbiAgY3VycmVudFBhZ2UgPSAxO1xyXG4gIGlzTG9hZGluZyA9IHRydWU7XHJcbiAgaW5pdENvbXBvbmVudCA9IHRydWU7XHJcbiAgcGhvdG9zQ29sdW1uczogUGhvdG9zQ29sdW1uc1tdID0gW107XHJcbiAgbmJDb2x1bW5zID0gNjtcclxuICByZXNwb25zaXZlQ29sdW1ucyA9IFsxMjUwLCAxMDUwLCA3NTAsIDUwMF07XHJcbiAgb3V0ZXJFbGVtZW50ID0gbnVsbDtcclxuXHJcbiAgdXBsb2FkaW5nSW1nID0gJ0ltZ01hbmFnZXIuUGV4ZWxMaWIudXBsb2FkaW5nSW1nJztcclxuICB1bnRpdGxlZCA9ICdJbWdNYW5hZ2VyLlBleGVsTGliLnVudGl0bGVkJztcclxuICBzdWNjZXNzVXBsb2FkUGhvdG8gPSAnSW1nTWFuYWdlci5QZXhlbExpYi5zdWNjZXNzSW1wb3J0JztcclxuICBlcnJvclVwbG9hZFBob3RvID0gJ0ltZ01hbmFnZXIuUGV4ZWxMaWIuZXJyb3JVcGxvYWRQaG90byc7XHJcbiAgZXJyb3JSZXRyaWV2ZVBob3RvcyA9ICdJbWdNYW5hZ2VyLlBleGVsTGliLmVycm9yUmV0cmlldmVQaG90b3MnO1xyXG5cclxuICBwcml2YXRlIHN1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ291dGVyRWxlbWVudCcpIHNldCBjb250ZW50KGNvbnRyb2w6IEVsZW1lbnRSZWYpIHtcclxuICAgIHRoaXMub3V0ZXJFbGVtZW50ID0gY29udHJvbDtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSB3ekltZ0xpYlNlcnZpY2U6IFBleGVsc1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB1cGxvYWRTZXJ2aWNlOiBVcGxvYWRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcclxuICAgICkgeyB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMub2xkU2VhcmNoVmFsdWUgPSB0aGlzLnNlYXJjaFZhbHVlO1xyXG4gICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuXHJcbiAgICB0aGlzLnNldE5iQ29sdW1uc1RvRGlzcGxheVBob3RvKCk7XHJcbiAgICB0aGlzLnNldFBob3Rvc0NvbHVtbnMoKTtcclxuICAgIHRoaXMuc2VhcmNoKCk7XHJcbiAgfVxyXG5cclxuICBzZXROYkNvbHVtbnNUb0Rpc3BsYXlQaG90bygpOiB2b2lkIHtcclxuICAgIGNvbnN0IHdpZHRoID0gdGhpcy5vdXRlckVsZW1lbnQubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aDtcclxuXHJcbiAgICBpZiAodGhpcy5zdGF0ZURpc3BsYXllZCAhPT0gJ3dpbmRvdycpIHtcclxuICAgICAgdGhpcy5uYkNvbHVtbnMgPSA4O1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMucmVzcG9uc2l2ZUNvbHVtbnMuZm9yRWFjaCh2YWx1ZSA9PiB7XHJcbiAgICAgIGlmICh3aWR0aCA8IHZhbHVlKSB7XHJcbiAgICAgICAgdGhpcy5uYkNvbHVtbnMtLTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvblNlYXJjaE5hbWVDaGFuZ2VkKCkge1xyXG4gICAgdGhpcy5vblNlYXJjaENoYW5nZSgpO1xyXG4gIH1cclxuXHJcbiAgb25Cb3R0b21SZWFjaGVkKCkge1xyXG4gICAgdGhpcy5zY3JvbGxIYW5kbGVyKCk7XHJcbiAgfVxyXG5cclxuICBvblNlYXJjaENoYW5nZSgpIHtcclxuICAgIHRoaXMuc2VhcmNoKCk7XHJcbiAgfVxyXG5cclxuICBzZWFyY2goKSB7XHJcbiAgICBpZiAodGhpcy5pc0xvYWRpbmcpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuc2VhcmNoVmFsdWUgIT09IHRoaXMub2xkU2VhcmNoVmFsdWUpIHtcclxuICAgICAgdGhpcy5yZXNldFNlYXJjaCgpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEFsbCB0aGUgcGljdHVyZSBhcmUgZGlzcGxheWVkXHJcbiAgICBpZiAodGhpcy5uYlJlc3VsdCAmJiB0aGlzLm5iUmVzdWx0IDw9ICh0aGlzLmN1cnJlbnRQYWdlIC0gMSkgKiB0aGlzLnBlclBhZ2UpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcclxuICAgIGNvbnN0IHNlYXJjaFN1YiA9IHRoaXMud3pJbWdMaWJTZXJ2aWNlLnNlYXJjaE9uUGV4ZWxzKHRoaXMuc2VhcmNoVmFsdWUsIHRoaXMucGVyUGFnZSwgdGhpcy5jdXJyZW50UGFnZSkuc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogKGRhdGE6IFd6SW1nTGliRHRvKSA9PiB7XHJcbiAgICAgICAgdGhpcy53ekltZ0xpYkR0byA9IGRhdGE7XHJcbiAgICAgICAgdGhpcy5uYlJlc3VsdCA9IHRoaXMud3pJbWdMaWJEdG8udG90YWxfcmVzdWx0cztcclxuXHJcbiAgICAgICAgaWYgKHRoaXMubmJSZXN1bHQpIHtcclxuICAgICAgICAgIGRhdGEucGhvdG9zLmZvckVhY2gocGhvdG8gPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBiZXN0Q29sdW1uSW5kZXggPSB0aGlzLmdldEJlc3RDb2x1bW4oKTtcclxuICAgICAgICAgICAgY29uc3QgaGVpZ2h0ID0gKHBob3RvLmhlaWdodCAvIHBob3RvLndpZHRoKSAqIDEwMDA7XHJcblxyXG4gICAgICAgICAgICB0aGlzLnBob3Rvc0NvbHVtbnNbYmVzdENvbHVtbkluZGV4XS5oZWlnaHQgKz0gaGVpZ2h0O1xyXG4gICAgICAgICAgICB0aGlzLnBob3Rvc0NvbHVtbnNbYmVzdENvbHVtbkluZGV4XS5waG90b3MucHVzaChwaG90byk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5pbml0Q29tcG9uZW50ID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgfSxcclxuICAgICAgZXJyb3I6IGVycm9yID0+IHtcclxuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuaW5pdENvbXBvbmVudCA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLm9wZW5BbGVydCh0aGlzLmVycm9yUmV0cmlldmVQaG90b3MpO1xyXG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuc3Vicy5wdXNoKHNlYXJjaFN1Yik7XHJcbiAgfVxyXG5cclxuICBzY3JvbGxIYW5kbGVyKCkge1xyXG4gICAgaWYgKHRoaXMuaXNMb2FkaW5nKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IGJlc3RDb2x1bW5JbmRleCA9IHRoaXMuZ2V0QmVzdENvbHVtbigpO1xyXG4gICAgY29uc3QgbGFzdFBpYyA9IHRoaXMucGhvdG9zQ29sdW1uc1tiZXN0Q29sdW1uSW5kZXhdLnBob3Rvc1t0aGlzLnBob3Rvc0NvbHVtbnNbYmVzdENvbHVtbkluZGV4XS5waG90b3MubGVuZ3RoIC0gMV07XHJcbiAgICBjb25zdCBsYXN0UGhvdG8gPSBsYXN0UGljID8gZG9jdW1lbnQucXVlcnlTZWxlY3RvcjxIVE1MSW1hZ2VFbGVtZW50PignaW1nW3NyYz1cIicgKyBsYXN0UGljLnNyYy5tZWRpdW0gKyAnXCJdJykgOiBudWxsO1xyXG5cclxuICAgIGlmIChsYXN0UGhvdG8pIHtcclxuICAgICAgaWYgKCF0aGlzLmlzTG9hZGluZykge1xyXG4gICAgICAgIHRoaXMuY3VycmVudFBhZ2UgKz0gMTtcclxuICAgICAgICB0aGlzLnNlYXJjaCgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRQaG90b3NDb2x1bW5zKCkge1xyXG4gICAgZm9yIChsZXQgaW5kZXhDb2x1bW49MDsgaW5kZXhDb2x1bW4gPCB0aGlzLm5iQ29sdW1ucyA7IGluZGV4Q29sdW1uKyspIHtcclxuICAgICAgY29uc3QgcGhvdG9zQ29sdW1uOiBQaG90b3NDb2x1bW5zID0ge1xyXG4gICAgICAgIGhlaWdodDogMCxcclxuICAgICAgICBwaG90b3M6IFtdXHJcbiAgICAgIH07XHJcbiAgICAgIHRoaXMucGhvdG9zQ29sdW1ucy5wdXNoKHBob3Rvc0NvbHVtbik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRCZXN0Q29sdW1uKCk6IG51bWJlciB7XHJcbiAgICBjb25zdCBiZXN0Q29sdW1uID0ge1xyXG4gICAgICBpbmRleDogMCxcclxuICAgICAgaGVpZ2h0OiB0aGlzLnBob3Rvc0NvbHVtbnNbMF0uaGVpZ2h0XHJcbiAgICB9O1xyXG4gICAgdGhpcy5waG90b3NDb2x1bW5zLmZvckVhY2goKHBob3Rvc0NvbHVtbiwgaW5kZXgpID0+IHtcclxuICAgICAgaWYgKGJlc3RDb2x1bW4uaGVpZ2h0ID4gcGhvdG9zQ29sdW1uLmhlaWdodCkge1xyXG4gICAgICAgIGJlc3RDb2x1bW4uaW5kZXggPSBpbmRleDtcclxuICAgICAgICBiZXN0Q29sdW1uLmhlaWdodCA9IHBob3Rvc0NvbHVtbi5oZWlnaHQ7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIGJlc3RDb2x1bW4uaW5kZXg7XHJcbiAgfVxyXG5cclxuICByZXNldFNlYXJjaCgpIHtcclxuICAgIHRoaXMub2xkU2VhcmNoVmFsdWUgPSB0aGlzLnNlYXJjaFZhbHVlO1xyXG4gICAgdGhpcy5waG90b3NDb2x1bW5zID0gW107XHJcbiAgICB0aGlzLmN1cnJlbnRQYWdlID0gMTtcclxuICAgIHRoaXMuc2V0UGhvdG9zQ29sdW1ucygpO1xyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICB9XHJcblxyXG4gIHVwbG9hZFBob3RvKHBob3RvOiBXekltZ0xpYlBob3RvRHRvLCB1cmw6IHN0cmluZykge1xyXG4gICAgcGhvdG8udXBsb2FkaW5nID0gdHJ1ZTtcclxuXHJcbiAgICBjb25zdCB1cGxvYWRTdWIgPSB0aGlzLnVwbG9hZFNlcnZpY2UudXBsb2FkRmlsZUJ5VXJsKHVybCwgcGhvdG8uYWx0KS5zdWJzY3JpYmUoXHJcbiAgICAgIGltZyA9PiB7XHJcbiAgICAgICAgcGhvdG8udXBsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgcGhvdG8udXBsb2FkZWQgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLm9wZW5BbGVydCh0aGlzLnN1Y2Nlc3NVcGxvYWRQaG90byk7XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yID0+IHtcclxuICAgICAgICBwaG90by51cGxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICBpZihlcnJvci5lcnJvci5jb2RlID09PSA0MDYgJiYgZXJyb3IuZXJyb3IubWVzc2FnZSkge1xyXG4gICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2Uub3BlbkFsZXJ0V2l0aEJhY2tlbmRSZXNwb25zZSh0aGlzLmVycm9yVXBsb2FkUGhvdG8sIGVycm9yLmVycm9yLm1lc3NhZ2UpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5vcGVuQWxlcnQodGhpcy5lcnJvclVwbG9hZFBob3RvKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgLy8gRGlzcGxheSBpbWcgdXBsb2FkaW5nIG1zZ1xyXG4gICAgICB0aGlzLmFsZXJ0U2VydmljZS5vcGVuQWxlcnQodGhpcy51cGxvYWRpbmdJbWcpO1xyXG4gICAgICB0aGlzLnN1YnMucHVzaCh1cGxvYWRTdWIpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnN1YnMuZm9yRWFjaChzdWIgPT4gc3ViLnVuc3Vic2NyaWJlKCkpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwicGV4ZWxzLWxpYlwiICNvdXRlckVsZW1lbnQgW0BlYXNlSW5PdXRdPVwiJ2luJ1wiPlxyXG5cclxuICA8bmctc2Nyb2xsYmFyXHJcbiAgICBbcmVhY2hlZE9mZnNldF09XCIzMDBcIlxyXG4gICAgY2xhc3M9XCJwZXhlbHMtbGliX19zY3JvbGxcIlxyXG4gICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICAncGV4ZWxzLWxpYl9fc2Nyb2xsLS1zbWFsbERpc3BsYXknOiBzdGF0ZURpc3BsYXllZCA9PT0gJ3NtYWxsJyxcclxuICAgICAgJ3BleGVscy1saWJfX3Njcm9sbC0tbm9SZXN1bHQnOiAhbmJSZXN1bHQsXHJcbiAgICAgICdwZXhlbHMtbGliX19zY3JvbGwtLWhpZGUnOiAoIW5iUmVzdWx0ICYmIGRpc2FibGVTZWFyY2gpXHJcbiAgICB9XCJcclxuICAgIChyZWFjaGVkQm90dG9tKT1cIm9uQm90dG9tUmVhY2hlZCgpXCJcclxuICA+XHJcbiAgICAgIDxkaXZcclxuICAgICAgICAqbmdJZj1cIiFkaXNhYmxlU2VhcmNoXCJcclxuICAgICAgICBjbGFzcz1cInBleGVscy1saWJfX3NlYXJjaFwiXHJcbiAgICAgICAgW25nQ2xhc3NdPVwieydwZXhlbHMtbGliX19zZWFyY2gtLXNtYWxsRGlzcGxheSc6IHN0YXRlRGlzcGxheWVkID09PSAnc21hbGwnfVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDx3ei1pbnB1dC1zZWFyY2hcclxuICAgICAgICAgIFsobmdNb2RlbCldPVwic2VhcmNoVmFsdWVcIlxyXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidJbWdNYW5hZ2VyLlNlYXJjaEJhci5wbGFjZWhvbGRlcicgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICAgKGNoYW5nZURlYm91bmNlZCk9XCJvblNlYXJjaE5hbWVDaGFuZ2VkKClcIlxyXG4gICAgICAgICAgW3NtYWxsUGFkZGluZ109XCJzdGF0ZURpc3BsYXllZCA9PT0gJ3NtYWxsJ1wiPlxyXG4gICAgICAgIDwvd3otaW5wdXQtc2VhcmNoPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgKm5nSWY9XCIhaW5pdENvbXBvbmVudFwiIGNsYXNzPVwicGV4ZWxzLWxpYl9fd3JhcHBlclwiPlxyXG4gICAgICAgIDxwICpuZ0lmPVwibmJSZXN1bHRcIiBjbGFzcz1cInBleGVscy1saWJfX3dyYXBwZXJfX3Jlc3VsdC1uYlwiPnt7ICdJbWdNYW5hZ2VyLlBleGVsTGliLm5iSW1nRm91bmQnIHwgdHJhbnNsYXRlIH19IDoge3sgbmJSZXN1bHQgfX08L3A+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJwZXhlbHMtbGliX193cmFwcGVyX19yZXN1bHRcIj5cclxuXHJcbiAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBwaG90b3NDb2x1bW4gb2YgcGhvdG9zQ29sdW1uczsgbGV0IGluZGV4Q29sID0gaW5kZXg7XCIgY2xhc3M9XCJwZXhlbHMtbGliX193cmFwcGVyX19yZXN1bHRfX2NvbHVtblwiICBbQGxpc3RBbmltYXRpb25dPVwicGhvdG9zQ29sdW1uLnBob3Rvcy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgcGhvdG8gb2YgcGhvdG9zQ29sdW1uLnBob3RvczsgbGV0IGluZGV4UGhvdG8gPSBpbmRleDtcIiBjbGFzcz1cInBleGVscy1saWJfX3dyYXBwZXJfX3Jlc3VsdF9fY29sdW1uX19lbGVtZW50XCI+XHJcblxyXG4gICAgICAgICAgICAgIDxpbWcgW2FsdF09XCJwaG90by5zcmMubWVkaXVtXCIgW3NyY109XCJwaG90by5zcmMubWVkaXVtXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwZXhlbHMtbGliX193cmFwcGVyX19yZXN1bHRfX2NvbHVtbl9fZWxlbWVudF9faW1nXCIvPlxyXG5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGV4ZWxzLWxpYl9fd3JhcHBlcl9fcmVzdWx0X19jb2x1bW5fX2VsZW1lbnRfX3dyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicGV4ZWxzLWxpYl9fd3JhcHBlcl9fcmVzdWx0X19jb2x1bW5fX2VsZW1lbnRfX3dyYXBwZXJfX2luZm9zXCI+XHJcbiAgICAgICAgICAgICAgICAgIHt7IHBob3RvLndpZHRoIH19IHgge3sgcGhvdG8uaGVpZ2h0fX1cclxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24gaXMtdXBcIiBbbmdDbGFzc109XCJ7J2lzLWhvdmVyYWJsZSc6ICFwaG90by51cGxvYWRpbmd9XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcm9wZG93bi10cmlnZ2VyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ1dHRvbiBwZXhlbHMtbGliX193cmFwcGVyX19yZXN1bHRfX2NvbHVtbl9fZWxlbWVudF9fd3JhcHBlcl9fYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgIGFyaWEtaGFzcG9wdXA9XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgIGFyaWEtY29udHJvbHM9XCJkcm9wZG93bi1tZW51XCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFwaG90by51cGxvYWRpbmdcIiAoY2xpY2spPVwidXBsb2FkUGhvdG8ocGhvdG8sIHBob3RvLnNyYy5sYXJnZTJ4KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj57eyAnSW1nTWFuYWdlci5QZXhlbExpYi5pbXBvcnQnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImljb24gaXMtc21hbGxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhLXNvbGlkIGZhLWFuZ2xlLXVwXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJwaG90by51cGxvYWRlZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICZuYnNwOzxpIGNsYXNzPVwiZmFsIGZhLWNoZWNrXCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJwaG90by51cGxvYWRpbmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAge3sgJ0ltZ01hbmFnZXIuUGV4ZWxMaWIuaW1wb3J0YXRpb24nIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGJ0bkxvYWRpbmdBbmltIGNsYXNzPVwiYnRuTG9hZGluZ0FubmltYXRpb25cIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tbWVudSBwZXhlbHMtbGliX193cmFwcGVyX19yZXN1bHRfX2NvbHVtbl9fZWxlbWVudF9fd3JhcHBlcl9fZHJvcGRvd25cIiBpZD1cImRyb3Bkb3duLW1lbnVcIiByb2xlPVwibWVudVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tY29udGVudF9fd3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24taXRlbVwiIChjbGljayk9XCJ1cGxvYWRQaG90byhwaG90bywgcGhvdG8uc3JjLnBvcnRyYWl0KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxwPnt7ICdJbWdNYW5hZ2VyLlBleGVsTGliLnBvcnRyYWl0JyB8IHRyYW5zbGF0ZSB9fTwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhbCBmYS1jaGVjayBpUG9ydHJhaXRcIj48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24taXRlbVwiIChjbGljayk9XCJ1cGxvYWRQaG90byhwaG90bywgcGhvdG8uc3JjLmxhbmRzY2FwZSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8cD57eyAnSW1nTWFuYWdlci5QZXhlbExpYi5sYW5kc2NhcGUnIHwgdHJhbnNsYXRlIH19PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFsIGZhLWNoZWNrIGlMYW5kc2NhcGVcIj48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24taXRlbVwiIChjbGljayk9XCJ1cGxvYWRQaG90byhwaG90bywgcGhvdG8uc3JjLmxhcmdlMngpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+e3sgJ0ltZ01hbmFnZXIuUGV4ZWxMaWIub3JpZ2luYWwnIHwgdHJhbnNsYXRlIH19PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFsIGZhLWNoZWNrIGlPcmlnaW5hbFwiPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICA8L25nLXNjcm9sbGJhcj5cclxuXHJcbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzTG9hZGluZ1wiPlxyXG4gICAgPHd6LWxvYWRlcj48L3d6LWxvYWRlcj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuICA8ZGl2XHJcbiAgICAqbmdJZj1cIiFpc0xvYWRpbmcgJiYgIW5iUmVzdWx0XCJcclxuICAgIGNsYXNzPVwicGV4ZWxzLWxpYl9fYWxlcnRcIlxyXG4gICAgW0BlYXNlSW5PdXRdPVwiJ2luJ1wiPlxyXG4gICAgICA8d3otYWxlcnQgW3dhcm5pbmddPVwidHJ1ZVwiPlxyXG4gICAgICAgIHt7ICdJbWdNYW5hZ2VyLlBleGVsTGliLm5vUmVzdWx0JyB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICA8L3d6LWFsZXJ0PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
203
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGV4ZWxzLWxpYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ei1pbWctbWFuYWdlci9zcmMvbGliL2NvbXBvbmVudHMvcGV4ZWxzLWxpYi9wZXhlbHMtbGliLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3d6LWltZy1tYW5hZ2VyL3NyYy9saWIvY29tcG9uZW50cy9wZXhlbHMtbGliL3BleGVscy1saWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakksT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQzVELE9BQU8sRUFBQyxPQUFPLEVBQThCLE1BQU0sTUFBTSxDQUFDO0FBRTFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUM3RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFFaEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFXOUQsTUFBTSxPQUFPLGlCQUFpQjtJQW1DNUIsWUFDVSxlQUE4QixFQUM5QixZQUEwQixFQUMxQixnQkFBa0MsRUFDbEMsYUFBNEIsRUFDNUIsaUJBQW9DO1FBSnBDLG9CQUFlLEdBQWYsZUFBZSxDQUFlO1FBQzlCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsa0JBQWEs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LEdBQUcsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRTtnQkFDbEQsSUFBSSxDQUFDLFlBQVksQ0FBQyw0QkFBNEIsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQzthQUM1RjtpQkFBTTtnQkFDTCxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQzthQUNwRDtRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsNEJBQTRCO1FBQzVCLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDOUMsQ0FBQzs7OEdBbk1VLGlCQUFpQjtrR0FBakIsaUJBQWlCLHFRQ3BCOUIsMHlKQTBHQSxnd0RENUZjO1FBQ1YsU0FBUztRQUNULGNBQWM7S0FDZjsyRkFHVSxpQkFBaUI7a0JBVDdCLFNBQVM7K0JBQ0UsWUFBWSxjQUVWO3dCQUNWLFNBQVM7d0JBQ1QsY0FBYztxQkFDZixtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTTswTkFLL0MsY0FBYztzQkFEYixLQUFLO2dCQUdOLFdBQVc7c0JBRFYsS0FBSztnQkFJTixhQUFhO3NCQURaLEtBQUs7Z0JBd0J5QixPQUFPO3NCQUFyQyxTQUFTO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgVmlld0NoaWxkLCBJbnB1dCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7UGV4ZWxzU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvcGV4ZWxzLnNlcnZpY2UnO1xuaW1wb3J0IHtTdWJqZWN0LCBTdWJzY3JpcHRpb24sIGNvbWJpbmVMYXRlc3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtXekltZ0xpYkR0bywgUGhvdG9zQ29sdW1ucywgV3pJbWdMaWJQaG90b0R0b30gZnJvbSAnLi4vLi4vZHRvL3BleGVscy1pbWcuZHRvJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IGVhc2VJbk91dCB9IGZyb20gJy4uLy4uL2FuaW1hdGlvbnMvZWFzZUluT3V0L2Vhc2UtaW4tb3V0LmFuaW1hdGlvbic7XG5pbXBvcnQgeyBsaXN0QW5uaW1hdGlvbiB9IGZyb20gJy4uLy4uL2FuaW1hdGlvbnMvbGlzdEFubmltYXRpb24vbGlzdC5hbmltYXRpb24nO1xuaW1wb3J0IHsgc3RhdGVEaXNwbGF5ZWQgfSBmcm9tICcuLi8uLi9kdG8vZXhwb3J0LWR0b3MuYXBpJztcbmltcG9ydCB7IEFsZXJ0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FsZXJ0LnNlcnZpY2UnO1xuaW1wb3J0IHsgVXBsb2FkU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3VwbG9hZC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncGV4ZWxzLWxpYicsXG4gIHRlbXBsYXRlVXJsOiAnLi9wZXhlbHMtbGliLmNvbXBvbmVudC5odG1sJyxcbiAgYW5pbWF0aW9uczogW1xuICAgIGVhc2VJbk91dCxcbiAgICBsaXN0QW5uaW1hdGlvblxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBQZXhlbExpYkNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuXG4gIEBJbnB1dCgpXG4gIHN0YXRlRGlzcGxheWVkOiBzdGF0ZURpc3BsYXllZDtcbiAgQElucHV0KClcbiAgc2VhcmNoVmFsdWU6IHN0cmluZyA9ICcnO1xuICAgIC8qKiBQYXNzIHRvIHRydWUgdG8gaGlkZSBzZWFyY2ggaW5wdXQgKi9cbiAgQElucHV0KClcbiAgZGlzYWJsZVNlYXJjaDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHBlclBhZ2UgPSAzMDtcbiAgc2VhcmNoVXBkYXRlZCA9IG5ldyBTdWJqZWN0KCk7XG4gIG9sZFNlYXJjaFZhbHVlOiBzdHJpbmc7XG4gIG5iUmVzdWx0ID0gMDtcbiAgd3pJbWdMaWJEdG86IFd6SW1nTGliRHRvO1xuICBjdXJyZW50UGFnZSA9IDE7XG4gIGlzTG9hZGluZyA9IHRydWU7XG4gIGluaXRDb21wb25lbnQgPSB0cnVlO1xuICBwaG90b3NDb2x1bW5zOiBQaG90b3NDb2x1bW5zW10gPSBbXTtcbiAgbmJDb2x1bW5zID0gNjtcbiAgcmVzcG9uc2l2ZUNvbHVtbnMgPSBbMTI1MCwgMTA1MCwgNzUwLCA1MDBdO1xuICBvdXRlckVsZW1lbnQgPSBudWxsO1xuXG4gIHVwbG9hZGluZ0ltZyA9ICdJbWdNYW5hZ2VyLlBleGVsTGliLnVwbG9hZGluZ0ltZyc7XG4gIHVudGl0bGVkID0gJ0ltZ01hbmFnZXIuUGV4ZWxMaWIudW50aXRsZWQnO1xuICBzdWNjZXNzVXBsb2FkUGhvdG8gPSAnSW1nTWFuYWdlci5QZXhlbExpYi5zdWNjZXNzSW1wb3J0JztcbiAgZXJyb3JVcGxvYWRQaG90byA9ICdJbWdNYW5hZ2VyLlBleGVsTGliLmVycm9yVXBsb2FkUGhvdG8nO1xuICBlcnJvclJldHJpZXZlUGhvdG9zID0gJ0ltZ01hbmFnZXIuUGV4ZWxMaWIuZXJyb3JSZXRyaWV2ZVBob3Rvcyc7XG5cbiAgcHJpdmF0ZSBzdWJzOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuXG4gIEBWaWV3Q2hpbGQoJ291dGVyRWxlbWVudCcpIHNldCBjb250ZW50KGNvbnRyb2w6IEVsZW1lbnRSZWYpIHtcbiAgICB0aGlzLm91dGVyRWxlbWVudCA9IGNvbnRyb2w7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHd6SW1nTGliU2VydmljZTogUGV4ZWxzU2VydmljZSxcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHVwbG9hZFNlcnZpY2U6IFVwbG9hZFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgICApIHsgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLm9sZFNlYXJjaFZhbHVlID0gdGhpcy5zZWFyY2hWYWx1ZTtcbiAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuXG4gICAgdGhpcy5zZXROYkNvbHVtbnNUb0Rpc3BsYXlQaG90bygpO1xuICAgIHRoaXMuc2V0UGhvdG9zQ29sdW1ucygpO1xuICAgIHRoaXMuc2VhcmNoKCk7XG4gIH1cblxuICBzZXROYkNvbHVtbnNUb0Rpc3BsYXlQaG90bygpOiB2b2lkIHtcbiAgICBjb25zdCB3aWR0aCA9IHRoaXMub3V0ZXJFbGVtZW50Lm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGg7XG5cbiAgICBpZiAodGhpcy5zdGF0ZURpc3BsYXllZCAhPT0gJ3dpbmRvdycpIHtcbiAgICAgIHRoaXMubmJDb2x1bW5zID0gODtcbiAgICB9XG5cbiAgICB0aGlzLnJlc3BvbnNpdmVDb2x1bW5zLmZvckVhY2godmFsdWUgPT4ge1xuICAgICAgaWYgKHdpZHRoIDwgdmFsdWUpIHtcbiAgICAgICAgdGhpcy5uYkNvbHVtbnMtLTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIG9uU2VhcmNoTmFtZUNoYW5nZWQoKSB7XG4gICAgdGhpcy5vblNlYXJjaENoYW5nZSgpO1xuICB9XG5cbiAgb25Cb3R0b21SZWFjaGVkKCkge1xuICAgIHRoaXMuc2Nyb2xsSGFuZGxlcigpO1xuICB9XG5cbiAgb25TZWFyY2hDaGFuZ2UoKSB7XG4gICAgdGhpcy5zZWFyY2goKTtcbiAgfVxuXG4gIHNlYXJjaCgpIHtcbiAgICBpZiAodGhpcy5pc0xvYWRpbmcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHRoaXMuc2VhcmNoVmFsdWUgIT09IHRoaXMub2xkU2VhcmNoVmFsdWUpIHtcbiAgICAgIHRoaXMucmVzZXRTZWFyY2goKTtcbiAgICB9XG5cbiAgICAvLyBBbGwgdGhlIHBpY3R1cmUgYXJlIGRpc3BsYXllZFxuICAgIGlmICh0aGlzLm5iUmVzdWx0ICYmIHRoaXMubmJSZXN1bHQgPD0gKHRoaXMuY3VycmVudFBhZ2UgLSAxKSAqIHRoaXMucGVyUGFnZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICBjb25zdCBzZWFyY2hTdWIgPSB0aGlzLnd6SW1nTGliU2VydmljZS5zZWFyY2hPblBleGVscyh0aGlzLnNlYXJjaFZhbHVlLCB0aGlzLnBlclBhZ2UsIHRoaXMuY3VycmVudFBhZ2UpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAoZGF0YTogV3pJbWdMaWJEdG8pID0+IHtcbiAgICAgICAgdGhpcy53ekltZ0xpYkR0byA9IGRhdGE7XG4gICAgICAgIHRoaXMubmJSZXN1bHQgPSB0aGlzLnd6SW1nTGliRHRvLnRvdGFsX3Jlc3VsdHM7XG5cbiAgICAgICAgaWYgKHRoaXMubmJSZXN1bHQpIHtcbiAgICAgICAgICBkYXRhLnBob3Rvcy5mb3JFYWNoKHBob3RvID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGJlc3RDb2x1bW5JbmRleCA9IHRoaXMuZ2V0QmVzdENvbHVtbigpO1xuICAgICAgICAgICAgY29uc3QgaGVpZ2h0ID0gKHBob3RvLmhlaWdodCAvIHBob3RvLndpZHRoKSAqIDEwMDA7XG5cbiAgICAgICAgICAgIHRoaXMucGhvdG9zQ29sdW1uc1tiZXN0Q29sdW1uSW5kZXhdLmhlaWdodCArPSBoZWlnaHQ7XG4gICAgICAgICAgICB0aGlzLnBob3Rvc0NvbHVtbnNbYmVzdENvbHVtbkluZGV4XS5waG90b3MucHVzaChwaG90byk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmluaXRDb21wb25lbnQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0sXG4gICAgICBlcnJvcjogZXJyb3IgPT4ge1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmluaXRDb21wb25lbnQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5hbGVydFNlcnZpY2Uub3BlbkFsZXJ0KHRoaXMuZXJyb3JSZXRyaWV2ZVBob3Rvcyk7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLnN1YnMucHVzaChzZWFyY2hTdWIpO1xuICB9XG5cbiAgc2Nyb2xsSGFuZGxlcigpIHtcbiAgICBpZiAodGhpcy5pc0xvYWRpbmcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgYmVzdENvbHVtbkluZGV4ID0gdGhpcy5nZXRCZXN0Q29sdW1uKCk7XG4gICAgY29uc3QgbGFzdFBpYyA9IHRoaXMucGhvdG9zQ29sdW1uc1tiZXN0Q29sdW1uSW5kZXhdLnBob3Rvc1t0aGlzLnBob3Rvc0NvbHVtbnNbYmVzdENvbHVtbkluZGV4XS5waG90b3MubGVuZ3RoIC0gMV07XG4gICAgY29uc3QgbGFzdFBob3RvID0gbGFzdFBpYyA/IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3I8SFRNTEltYWdlRWxlbWVudD4oJ2ltZ1tzcmM9XCInICsgbGFzdFBpYy5zcmMubWVkaXVtICsgJ1wiXScpIDogbnVsbDtcblxuICAgIGlmIChsYXN0UGhvdG8pIHtcbiAgICAgIGlmICghdGhpcy5pc0xvYWRpbmcpIHtcbiAgICAgICAgdGhpcy5jdXJyZW50UGFnZSArPSAxO1xuICAgICAgICB0aGlzLnNlYXJjaCgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHNldFBob3Rvc0NvbHVtbnMoKSB7XG4gICAgZm9yIChsZXQgaW5kZXhDb2x1bW49MDsgaW5kZXhDb2x1bW4gPCB0aGlzLm5iQ29sdW1ucyA7IGluZGV4Q29sdW1uKyspIHtcbiAgICAgIGNvbnN0IHBob3Rvc0NvbHVtbjogUGhvdG9zQ29sdW1ucyA9IHtcbiAgICAgICAgaGVpZ2h0OiAwLFxuICAgICAgICBwaG90b3M6IFtdXG4gICAgICB9O1xuICAgICAgdGhpcy5waG90b3NDb2x1bW5zLnB1c2gocGhvdG9zQ29sdW1uKTtcbiAgICB9XG4gIH1cblxuICBnZXRCZXN0Q29sdW1uKCk6IG51bWJlciB7XG4gICAgY29uc3QgYmVzdENvbHVtbiA9IHtcbiAgICAgIGluZGV4OiAwLFxuICAgICAgaGVpZ2h0OiB0aGlzLnBob3Rvc0NvbHVtbnNbMF0uaGVpZ2h0XG4gICAgfTtcbiAgICB0aGlzLnBob3Rvc0NvbHVtbnMuZm9yRWFjaCgocGhvdG9zQ29sdW1uLCBpbmRleCkgPT4ge1xuICAgICAgaWYgKGJlc3RDb2x1bW4uaGVpZ2h0ID4gcGhvdG9zQ29sdW1uLmhlaWdodCkge1xuICAgICAgICBiZXN0Q29sdW1uLmluZGV4ID0gaW5kZXg7XG4gICAgICAgIGJlc3RDb2x1bW4uaGVpZ2h0ID0gcGhvdG9zQ29sdW1uLmhlaWdodDtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gYmVzdENvbHVtbi5pbmRleDtcbiAgfVxuXG4gIHJlc2V0U2VhcmNoKCkge1xuICAgIHRoaXMub2xkU2VhcmNoVmFsdWUgPSB0aGlzLnNlYXJjaFZhbHVlO1xuICAgIHRoaXMucGhvdG9zQ29sdW1ucyA9IFtdO1xuICAgIHRoaXMuY3VycmVudFBhZ2UgPSAxO1xuICAgIHRoaXMuc2V0UGhvdG9zQ29sdW1ucygpO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICB1cGxvYWRQaG90byhwaG90bzogV3pJbWdMaWJQaG90b0R0bywgdXJsOiBzdHJpbmcpIHtcbiAgICBwaG90by51cGxvYWRpbmcgPSB0cnVlO1xuXG4gICAgY29uc3QgdXBsb2FkU3ViID0gdGhpcy51cGxvYWRTZXJ2aWNlLnVwbG9hZEZpbGVCeVVybCh1cmwsIHBob3RvLmFsdCkuc3Vic2NyaWJlKFxuICAgICAgaW1nID0+IHtcbiAgICAgICAgcGhvdG8udXBsb2FkaW5nID0gZmFsc2U7XG4gICAgICAgIHBob3RvLnVwbG9hZGVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5hbGVydFNlcnZpY2Uub3BlbkFsZXJ0KHRoaXMuc3VjY2Vzc1VwbG9hZFBob3RvKTtcbiAgICAgIH0sXG4gICAgICBlcnJvciA9PiB7XG4gICAgICAgIHBob3RvLnVwbG9hZGluZyA9IGZhbHNlO1xuICAgICAgICBpZihlcnJvci5lcnJvci5jb2RlID09PSA0MDYgJiYgZXJyb3IuZXJyb3IubWVzc2FnZSkge1xuICAgICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLm9wZW5BbGVydFdpdGhCYWNrZW5kUmVzcG9uc2UodGhpcy5lcnJvclVwbG9hZFBob3RvLCBlcnJvci5lcnJvci5tZXNzYWdlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5vcGVuQWxlcnQodGhpcy5lcnJvclVwbG9hZFBob3RvKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIC8vIERpc3BsYXkgaW1nIHVwbG9hZGluZyBtc2dcbiAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLm9wZW5BbGVydCh0aGlzLnVwbG9hZGluZ0ltZyk7XG4gICAgICB0aGlzLnN1YnMucHVzaCh1cGxvYWRTdWIpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzLmZvckVhY2goc3ViID0+IHN1Yi51bnN1YnNjcmliZSgpKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInBleGVscy1saWJcIiAjb3V0ZXJFbGVtZW50IFtAZWFzZUluT3V0XT1cIidpbidcIj5cblxuICA8bmctc2Nyb2xsYmFyXG4gICAgW3JlYWNoZWRPZmZzZXRdPVwiMzAwXCJcbiAgICBjbGFzcz1cInBleGVscy1saWJfX3Njcm9sbFwiXG4gICAgW25nQ2xhc3NdPVwie1xuICAgICAgJ3BleGVscy1saWJfX3Njcm9sbC0tc21hbGxEaXNwbGF5Jzogc3RhdGVEaXNwbGF5ZWQgPT09ICdzbWFsbCcsXG4gICAgICAncGV4ZWxzLWxpYl9fc2Nyb2xsLS1ub1Jlc3VsdCc6ICFuYlJlc3VsdCxcbiAgICAgICdwZXhlbHMtbGliX19zY3JvbGwtLWhpZGUnOiAoIW5iUmVzdWx0ICYmIGRpc2FibGVTZWFyY2gpXG4gICAgfVwiXG4gICAgKHJlYWNoZWRCb3R0b20pPVwib25Cb3R0b21SZWFjaGVkKClcIlxuICA+XG4gICAgICA8ZGl2XG4gICAgICAgICpuZ0lmPVwiIWRpc2FibGVTZWFyY2hcIlxuICAgICAgICBjbGFzcz1cInBleGVscy1saWJfX3NlYXJjaFwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsncGV4ZWxzLWxpYl9fc2VhcmNoLS1zbWFsbERpc3BsYXknOiBzdGF0ZURpc3BsYXllZCA9PT0gJ3NtYWxsJ31cIlxuICAgICAgICA+XG4gICAgICAgIDx3ei1pbnB1dC1zZWFyY2hcbiAgICAgICAgICBbKG5nTW9kZWwpXT1cInNlYXJjaFZhbHVlXCJcbiAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0ltZ01hbmFnZXIuU2VhcmNoQmFyLnBsYWNlaG9sZGVyJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgKGNoYW5nZURlYm91bmNlZCk9XCJvblNlYXJjaE5hbWVDaGFuZ2VkKClcIlxuICAgICAgICAgIFtzbWFsbFBhZGRpbmddPVwic3RhdGVEaXNwbGF5ZWQgPT09ICdzbWFsbCdcIj5cbiAgICAgICAgPC93ei1pbnB1dC1zZWFyY2g+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiAqbmdJZj1cIiFpbml0Q29tcG9uZW50XCIgY2xhc3M9XCJwZXhlbHMtbGliX193cmFwcGVyXCI+XG4gICAgICAgIDxwICpuZ0lmPVwibmJSZXN1bHRcIiBjbGFzcz1cInBleGVscy1saWJfX3dyYXBwZXJfX3Jlc3VsdC1uYlwiPnt7ICdJbWdNYW5hZ2VyLlBleGVsTGliLm5iSW1nRm91bmQnIHwgdHJhbnNsYXRlIH19IDoge3sgbmJSZXN1bHQgfX08L3A+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cInBleGVscy1saWJfX3dyYXBwZXJfX3Jlc3VsdFwiPlxuXG4gICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgcGhvdG9zQ29sdW1uIG9mIHBob3Rvc0NvbHVtbnM7IGxldCBpbmRleENvbCA9IGluZGV4O1wiIGNsYXNzPVwicGV4ZWxzLWxpYl9fd3JhcHBlcl9fcmVzdWx0X19jb2x1bW5cIiAgW0BsaXN0QW5pbWF0aW9uXT1cInBob3Rvc0NvbHVtbi5waG90b3MubGVuZ3RoXCI+XG4gICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBwaG90byBvZiBwaG90b3NDb2x1bW4ucGhvdG9zOyBsZXQgaW5kZXhQaG90byA9IGluZGV4O1wiIGNsYXNzPVwicGV4ZWxzLWxpYl9fd3JhcHBlcl9fcmVzdWx0X19jb2x1bW5fX2VsZW1lbnRcIj5cblxuICAgICAgICAgICAgICA8aW1nIFthbHRdPVwicGhvdG8uc3JjLm1lZGl1bVwiIFtzcmNdPVwicGhvdG8uc3JjLm1lZGl1bVwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInBleGVscy1saWJfX3dyYXBwZXJfX3Jlc3VsdF9fY29sdW1uX19lbGVtZW50X19pbWdcIi8+XG5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBleGVscy1saWJfX3dyYXBwZXJfX3Jlc3VsdF9fY29sdW1uX19lbGVtZW50X193cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwZXhlbHMtbGliX193cmFwcGVyX19yZXN1bHRfX2NvbHVtbl9fZWxlbWVudF9fd3JhcHBlcl9faW5mb3NcIj5cbiAgICAgICAgICAgICAgICAgIHt7IHBob3RvLndpZHRoIH19IHgge3sgcGhvdG8uaGVpZ2h0fX1cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24gaXMtdXBcIiBbbmdDbGFzc109XCJ7J2lzLWhvdmVyYWJsZSc6ICFwaG90by51cGxvYWRpbmd9XCI+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tdHJpZ2dlclwiPlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidXR0b24gcGV4ZWxzLWxpYl9fd3JhcHBlcl9fcmVzdWx0X19jb2x1bW5fX2VsZW1lbnRfX3dyYXBwZXJfX2J1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgYXJpYS1oYXNwb3B1cD1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgIGFyaWEtY29udHJvbHM9XCJkcm9wZG93bi1tZW51XCI+XG5cbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIXBob3RvLnVwbG9hZGluZ1wiIChjbGljayk9XCJ1cGxvYWRQaG90byhwaG90bywgcGhvdG8uc3JjLmxhcmdlMngpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj57eyAnSW1nTWFuYWdlci5QZXhlbExpYi5pbXBvcnQnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpY29uIGlzLXNtYWxsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmEtc29saWQgZmEtYW5nbGUtdXBcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwicGhvdG8udXBsb2FkZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgJm5ic3A7PGkgY2xhc3M9XCJmYWwgZmEtY2hlY2tcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJwaG90by51cGxvYWRpbmdcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdJbWdNYW5hZ2VyLlBleGVsTGliLmltcG9ydGF0aW9uJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gYnRuTG9hZGluZ0FuaW0gY2xhc3M9XCJidG5Mb2FkaW5nQW5uaW1hdGlvblwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLW1lbnUgcGV4ZWxzLWxpYl9fd3JhcHBlcl9fcmVzdWx0X19jb2x1bW5fX2VsZW1lbnRfX3dyYXBwZXJfX2Ryb3Bkb3duXCIgaWQ9XCJkcm9wZG93bi1tZW51XCIgcm9sZT1cIm1lbnVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tY29udGVudF9fd3JhcHBlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLWl0ZW1cIiAoY2xpY2spPVwidXBsb2FkUGhvdG8ocGhvdG8sIHBob3RvLnNyYy5wb3J0cmFpdClcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+e3sgJ0ltZ01hbmFnZXIuUGV4ZWxMaWIucG9ydHJhaXQnIHwgdHJhbnNsYXRlIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhbCBmYS1jaGVjayBpUG9ydHJhaXRcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1pdGVtXCIgKGNsaWNrKT1cInVwbG9hZFBob3RvKHBob3RvLCBwaG90by5zcmMubGFuZHNjYXBlKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8cD57eyAnSW1nTWFuYWdlci5QZXhlbExpYi5sYW5kc2NhcGUnIHwgdHJhbnNsYXRlIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhbCBmYS1jaGVjayBpTGFuZHNjYXBlXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24taXRlbVwiIChjbGljayk9XCJ1cGxvYWRQaG90byhwaG90bywgcGhvdG8uc3JjLmxhcmdlMngpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxwPnt7ICdJbWdNYW5hZ2VyLlBleGVsTGliLm9yaWdpbmFsJyB8IHRyYW5zbGF0ZSB9fTwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYWwgZmEtY2hlY2sgaU9yaWdpbmFsXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cblxuICA8L25nLXNjcm9sbGJhcj5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNMb2FkaW5nXCI+XG4gICAgPHd6LWxvYWRlcj48L3d6LWxvYWRlcj5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxkaXZcbiAgICAqbmdJZj1cIiFpc0xvYWRpbmcgJiYgIW5iUmVzdWx0XCJcbiAgICBjbGFzcz1cInBleGVscy1saWJfX2FsZXJ0XCJcbiAgICBbQGVhc2VJbk91dF09XCInaW4nXCI+XG4gICAgICA8d3otYWxlcnQgW3dhcm5pbmddPVwidHJ1ZVwiPlxuICAgICAgICB7eyAnSW1nTWFuYWdlci5QZXhlbExpYi5ub1Jlc3VsdCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvd3otYWxlcnQ+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -24,4 +24,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
24
24
  }], iconClass: [{
25
25
  type: Input
26
26
  }] } });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd3otaW1nLW1hbmFnZXIvc3JjL2xpYi9jb21wb25lbnRzL3NoYXJlZC9hbGVydC9hbGVydC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ei1pbWctbWFuYWdlci9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7QUFPekQsTUFBTSxPQUFPLGNBQWM7SUFLekI7UUFKUyxTQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ1osWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNoQixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLGNBQVMsR0FBRyxrQkFBa0IsQ0FBQztJQUN6QixDQUFDO0lBQ2hCLFFBQVEsS0FBVSxDQUFDOzsyR0FOUixjQUFjOytGQUFkLGNBQWMsMElDUDNCLCtLQUlBOzJGREdhLGNBQWM7a0JBTDFCLFNBQVM7K0JBQ0UsVUFBVTswRUFLWCxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3d6LWFsZXJ0JyxcclxuICBzdHlsZVVybHM6IFsnLi9hbGVydC5jb21wb25lbnQuc2NzcyddLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hbGVydC5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFsZXJ0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSBpY29uID0gdHJ1ZTtcclxuICBASW5wdXQoKSB3YXJuaW5nID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc3VjY2VzcyA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGljb25DbGFzcyA9ICdmYS1zb2xpZCBmYS1pbmZvJztcclxuICBjb25zdHJ1Y3RvcigpIHt9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7fVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJ3ei1hbGVydFwiIFtuZ0NsYXNzXT1cInsgc3VjY2Vzczogc3VjY2Vzcywgd2FybmluZzogd2FybmluZyB9XCI+XG4gIDxpICpuZ0lmPVwiaWNvblwiIFtuZ0NsYXNzXT1cImljb25DbGFzc1wiPjwvaT5cbiAgPHA+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvcD5cbjwvZGl2PlxuIl19
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd3otaW1nLW1hbmFnZXIvc3JjL2xpYi9jb21wb25lbnRzL3NoYXJlZC9hbGVydC9hbGVydC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ei1pbWctbWFuYWdlci9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7QUFPekQsTUFBTSxPQUFPLGNBQWM7SUFLekI7UUFKUyxTQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ1osWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNoQixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLGNBQVMsR0FBRyxrQkFBa0IsQ0FBQztJQUN6QixDQUFDO0lBQ2hCLFFBQVEsS0FBVSxDQUFDOzsyR0FOUixjQUFjOytGQUFkLGNBQWMsMElDUDNCLCtLQUlBOzJGREdhLGNBQWM7a0JBTDFCLFNBQVM7K0JBQ0UsVUFBVTswRUFLWCxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3d6LWFsZXJ0JyxcbiAgc3R5bGVVcmxzOiBbJy4vYWxlcnQuY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2FsZXJ0LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBBbGVydENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGljb24gPSB0cnVlO1xuICBASW5wdXQoKSB3YXJuaW5nID0gZmFsc2U7XG4gIEBJbnB1dCgpIHN1Y2Nlc3MgPSBmYWxzZTtcbiAgQElucHV0KCkgaWNvbkNsYXNzID0gJ2ZhLXNvbGlkIGZhLWluZm8nO1xuICBjb25zdHJ1Y3RvcigpIHt9XG4gIG5nT25Jbml0KCk6IHZvaWQge31cbn1cbiIsIjxkaXYgY2xhc3M9XCJ3ei1hbGVydFwiIFtuZ0NsYXNzXT1cInsgc3VjY2Vzczogc3VjY2Vzcywgd2FybmluZzogd2FybmluZyB9XCI+XG4gIDxpICpuZ0lmPVwiaWNvblwiIFtuZ0NsYXNzXT1cImljb25DbGFzc1wiPjwvaT5cbiAgPHA+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvcD5cbjwvZGl2PlxuIl19