@mintplayer/ng-bootstrap 16.11.3 → 16.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/badge/src/badge.component.d.ts +1 -3
  2. package/calendar/src/calendar.component.d.ts +0 -2
  3. package/calendar/src/calendar.module.d.ts +3 -2
  4. package/carousel/src/carousel/carousel.component.d.ts +0 -1
  5. package/carousel/src/carousel.module.d.ts +3 -2
  6. package/esm2022/badge/src/badge.component.mjs +1 -2
  7. package/esm2022/calendar/src/calendar.component.mjs +5 -10
  8. package/esm2022/calendar/src/calendar.module.mjs +6 -2
  9. package/esm2022/carousel/src/carousel/carousel.component.mjs +5 -7
  10. package/esm2022/carousel/src/carousel.module.mjs +5 -1
  11. package/esm2022/file-upload/src/component/file-upload.component.mjs +7 -9
  12. package/esm2022/file-upload/src/file-upload.module.mjs +5 -1
  13. package/esm2022/form/src/form-control/form-control.directive.mjs +10 -6
  14. package/esm2022/pagination/src/component/pagination/pagination.component.mjs +4 -6
  15. package/esm2022/pagination/src/pagination.module.mjs +8 -4
  16. package/esm2022/track-by/index.mjs +3 -0
  17. package/esm2022/track-by/mintplayer-ng-bootstrap-track-by.mjs +5 -0
  18. package/esm2022/track-by/src/track-by.directive.mjs +28 -0
  19. package/esm2022/track-by/src/track-by.module.mjs +18 -0
  20. package/fesm2022/mintplayer-ng-bootstrap-badge.mjs +0 -1
  21. package/fesm2022/mintplayer-ng-bootstrap-badge.mjs.map +1 -1
  22. package/fesm2022/mintplayer-ng-bootstrap-calendar.mjs +13 -14
  23. package/fesm2022/mintplayer-ng-bootstrap-calendar.mjs.map +1 -1
  24. package/fesm2022/mintplayer-ng-bootstrap-carousel.mjs +8 -6
  25. package/fesm2022/mintplayer-ng-bootstrap-carousel.mjs.map +1 -1
  26. package/fesm2022/mintplayer-ng-bootstrap-file-upload.mjs +9 -7
  27. package/fesm2022/mintplayer-ng-bootstrap-file-upload.mjs.map +1 -1
  28. package/fesm2022/mintplayer-ng-bootstrap-form.mjs +7 -5
  29. package/fesm2022/mintplayer-ng-bootstrap-form.mjs.map +1 -1
  30. package/fesm2022/mintplayer-ng-bootstrap-pagination.mjs +10 -8
  31. package/fesm2022/mintplayer-ng-bootstrap-pagination.mjs.map +1 -1
  32. package/fesm2022/mintplayer-ng-bootstrap-track-by.mjs +49 -0
  33. package/fesm2022/mintplayer-ng-bootstrap-track-by.mjs.map +1 -0
  34. package/file-upload/src/component/file-upload.component.d.ts +0 -1
  35. package/file-upload/src/file-upload.module.d.ts +5 -4
  36. package/form/src/form-control/form-control.directive.d.ts +3 -1
  37. package/package.json +7 -1
  38. package/pagination/src/component/pagination/pagination.component.d.ts +0 -1
  39. package/pagination/src/pagination.module.d.ts +2 -1
  40. package/track-by/index.d.ts +2 -0
  41. package/track-by/src/track-by.directive.d.ts +11 -0
  42. package/track-by/src/track-by.module.d.ts +8 -0
@@ -3,9 +3,10 @@ import { Color } from '@mintplayer/ng-bootstrap';
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/common";
5
5
  import * as i2 from "@mintplayer/ng-bootstrap/for";
6
- import * as i3 from "@mintplayer/ng-bootstrap/progress-bar";
7
- import * as i4 from "@mintplayer/ng-bootstrap/list-group";
8
- import * as i5 from "../pipes/format-bytes/format-bytes.pipe";
6
+ import * as i3 from "@mintplayer/ng-bootstrap/track-by";
7
+ import * as i4 from "@mintplayer/ng-bootstrap/progress-bar";
8
+ import * as i5 from "@mintplayer/ng-bootstrap/list-group";
9
+ import * as i6 from "../pipes/format-bytes/format-bytes.pipe";
9
10
  export class BsFileUploadComponent {
10
11
  constructor() {
11
12
  this.dropFilesCaption = 'Drop your files here';
@@ -57,15 +58,12 @@ export class BsFileUploadComponent {
57
58
  this.files.push(...newFiles);
58
59
  this.filesDropped.emit(newFiles);
59
60
  }
60
- trackByFile(index, file) {
61
- return file.index;
62
- }
63
61
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsFileUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
64
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: BsFileUploadComponent, selector: "bs-file-upload", inputs: { dropFilesCaption: "dropFilesCaption", browseFilesCaption: "browseFilesCaption", placeholder: "placeholder", files: "files" }, outputs: { filesDropped: "filesDropped" }, host: { listeners: { "dragover": "onDragOver($event)", "dragleave": "onDragLeave($event)", "drop": "onDrop($event)" } }, ngImport: i0, template: "<div class=\"dropzone border position-relative p-5\" [class.dragging]=\"isDraggingFile\">\n <input type=\"file\" multiple #fileUpload (change)=\"onChange($event)\" [title]=\"placeholder\" [placeholder]=\"placeholder\" class=\"position-absolute w-100 h-100\">\n <!-- <img src=\"/assets/ic-file-upload.svg\" [alt]=\"placeholder\"> -->\n <span class=\"h3 d-block\">{{ dropFilesCaption }}</span>\n <label class=\"btn btn-primary position-relative\" [bsFor]=\"fileUpload\">{{ browseFilesCaption }}</label>\n</div>\n<bs-list-group class=\"files-list\">\n <bs-list-group-item *ngFor=\"let upload of files; trackBy: trackByFile\">\n <ng-container *ngTemplateOutlet=\"fileTemplate ?? defaultFileTemplate; context: { $implicit: upload }\"></ng-container>\n </bs-list-group-item>\n</bs-list-group>\n\n<ng-template #defaultFileTemplate let-upload>\n <div class=\"d-flex flex-row mx-auto\">\n <div class=\"file-img\"></div>\n <div class=\"flex-grow-1 text-start px-2\">\n <span class=\"d-block text-truncate text-secondary\">{{ upload.file.name }}</span>\n <span class=\"d-block text-grey mb-0\">{{ upload.file.size | bsFormatBytes }}</span>\n <bs-progress [height]=\"4\">\n <bs-progress-bar [minimum]=\"0\" [maximum]=\"upload.file.size\" [value]=\"upload.progress\"></bs-progress-bar>\n </bs-progress>\n </div>\n </div>\n</ng-template>", styles: [".dropzone{z-index:1}.dropzone.dragging{border:4px solid #CB1535!important;background:#DC88A8;margin:-3px -3px -4px}.dropzone input{opacity:0;z-index:2;top:0;left:0}.dropzone .btn{z-index:5}.files-list{margin-top:-1px}.files-list .d-flex{max-width:400px}.text-grey{color:#999}.list-group span{margin:-5px auto}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.BsForDirective, selector: "label[bsFor]", inputs: ["bsFor"] }, { kind: "component", type: i3.BsProgressBarComponent, selector: "bs-progress-bar", inputs: ["minimum", "maximum", "value", "color", "striped", "animated"] }, { kind: "component", type: i3.BsProgressComponent, selector: "bs-progress", inputs: ["height", "isIndeterminate"] }, { kind: "component", type: i4.BsListGroupComponent, selector: "bs-list-group" }, { kind: "component", type: i4.BsListGroupItemComponent, selector: "bs-list-group-item" }, { kind: "pipe", type: i5.BsFormatBytesPipe, name: "bsFormatBytes" }] }); }
62
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: BsFileUploadComponent, selector: "bs-file-upload", inputs: { dropFilesCaption: "dropFilesCaption", browseFilesCaption: "browseFilesCaption", placeholder: "placeholder", files: "files" }, outputs: { filesDropped: "filesDropped" }, host: { listeners: { "dragover": "onDragOver($event)", "dragleave": "onDragLeave($event)", "drop": "onDrop($event)" } }, ngImport: i0, template: "<div class=\"dropzone border position-relative p-5\" [class.dragging]=\"isDraggingFile\">\n <input type=\"file\" multiple #fileUpload (change)=\"onChange($event)\" [title]=\"placeholder\" [placeholder]=\"placeholder\" class=\"position-absolute w-100 h-100\">\n <!-- <img src=\"/assets/ic-file-upload.svg\" [alt]=\"placeholder\"> -->\n <span class=\"h3 d-block\">{{ dropFilesCaption }}</span>\n <label class=\"btn btn-primary position-relative\" [bsFor]=\"fileUpload\">{{ browseFilesCaption }}</label>\n</div>\n<bs-list-group class=\"files-list\">\n <bs-list-group-item *ngFor=\"let upload of files; bsTrackBy: 'index'\">\n <ng-container *ngTemplateOutlet=\"fileTemplate ?? defaultFileTemplate; context: { $implicit: upload }\"></ng-container>\n </bs-list-group-item>\n</bs-list-group>\n\n<ng-template #defaultFileTemplate let-upload>\n <div class=\"d-flex flex-row mx-auto\">\n <div class=\"file-img\"></div>\n <div class=\"flex-grow-1 text-start px-2\">\n <span class=\"d-block text-truncate text-secondary\">{{ upload.file.name }}</span>\n <span class=\"d-block text-grey mb-0\">{{ upload.file.size | bsFormatBytes }}</span>\n <bs-progress [height]=\"4\">\n <bs-progress-bar [minimum]=\"0\" [maximum]=\"upload.file.size\" [value]=\"upload.progress\"></bs-progress-bar>\n </bs-progress>\n </div>\n </div>\n</ng-template>", styles: [".dropzone{z-index:1}.dropzone.dragging{border:4px solid #CB1535!important;background:#DC88A8;margin:-3px -3px -4px}.dropzone input{opacity:0;z-index:2;top:0;left:0}.dropzone .btn{z-index:5}.files-list{margin-top:-1px}.files-list .d-flex{max-width:400px}.text-grey{color:#999}.list-group span{margin:-5px auto}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.BsForDirective, selector: "label[bsFor]", inputs: ["bsFor"] }, { kind: "directive", type: i3.BsTrackByDirective, selector: "[ngForBsTrackBy]", inputs: ["ngForOf", "ngForBsTrackBy"] }, { kind: "component", type: i4.BsProgressBarComponent, selector: "bs-progress-bar", inputs: ["minimum", "maximum", "value", "color", "striped", "animated"] }, { kind: "component", type: i4.BsProgressComponent, selector: "bs-progress", inputs: ["height", "isIndeterminate"] }, { kind: "component", type: i5.BsListGroupComponent, selector: "bs-list-group" }, { kind: "component", type: i5.BsListGroupItemComponent, selector: "bs-list-group-item" }, { kind: "pipe", type: i6.BsFormatBytesPipe, name: "bsFormatBytes" }] }); }
65
63
  }
66
64
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsFileUploadComponent, decorators: [{
67
65
  type: Component,
68
- args: [{ selector: 'bs-file-upload', template: "<div class=\"dropzone border position-relative p-5\" [class.dragging]=\"isDraggingFile\">\n <input type=\"file\" multiple #fileUpload (change)=\"onChange($event)\" [title]=\"placeholder\" [placeholder]=\"placeholder\" class=\"position-absolute w-100 h-100\">\n <!-- <img src=\"/assets/ic-file-upload.svg\" [alt]=\"placeholder\"> -->\n <span class=\"h3 d-block\">{{ dropFilesCaption }}</span>\n <label class=\"btn btn-primary position-relative\" [bsFor]=\"fileUpload\">{{ browseFilesCaption }}</label>\n</div>\n<bs-list-group class=\"files-list\">\n <bs-list-group-item *ngFor=\"let upload of files; trackBy: trackByFile\">\n <ng-container *ngTemplateOutlet=\"fileTemplate ?? defaultFileTemplate; context: { $implicit: upload }\"></ng-container>\n </bs-list-group-item>\n</bs-list-group>\n\n<ng-template #defaultFileTemplate let-upload>\n <div class=\"d-flex flex-row mx-auto\">\n <div class=\"file-img\"></div>\n <div class=\"flex-grow-1 text-start px-2\">\n <span class=\"d-block text-truncate text-secondary\">{{ upload.file.name }}</span>\n <span class=\"d-block text-grey mb-0\">{{ upload.file.size | bsFormatBytes }}</span>\n <bs-progress [height]=\"4\">\n <bs-progress-bar [minimum]=\"0\" [maximum]=\"upload.file.size\" [value]=\"upload.progress\"></bs-progress-bar>\n </bs-progress>\n </div>\n </div>\n</ng-template>", styles: [".dropzone{z-index:1}.dropzone.dragging{border:4px solid #CB1535!important;background:#DC88A8;margin:-3px -3px -4px}.dropzone input{opacity:0;z-index:2;top:0;left:0}.dropzone .btn{z-index:5}.files-list{margin-top:-1px}.files-list .d-flex{max-width:400px}.text-grey{color:#999}.list-group span{margin:-5px auto}\n"] }]
66
+ args: [{ selector: 'bs-file-upload', template: "<div class=\"dropzone border position-relative p-5\" [class.dragging]=\"isDraggingFile\">\n <input type=\"file\" multiple #fileUpload (change)=\"onChange($event)\" [title]=\"placeholder\" [placeholder]=\"placeholder\" class=\"position-absolute w-100 h-100\">\n <!-- <img src=\"/assets/ic-file-upload.svg\" [alt]=\"placeholder\"> -->\n <span class=\"h3 d-block\">{{ dropFilesCaption }}</span>\n <label class=\"btn btn-primary position-relative\" [bsFor]=\"fileUpload\">{{ browseFilesCaption }}</label>\n</div>\n<bs-list-group class=\"files-list\">\n <bs-list-group-item *ngFor=\"let upload of files; bsTrackBy: 'index'\">\n <ng-container *ngTemplateOutlet=\"fileTemplate ?? defaultFileTemplate; context: { $implicit: upload }\"></ng-container>\n </bs-list-group-item>\n</bs-list-group>\n\n<ng-template #defaultFileTemplate let-upload>\n <div class=\"d-flex flex-row mx-auto\">\n <div class=\"file-img\"></div>\n <div class=\"flex-grow-1 text-start px-2\">\n <span class=\"d-block text-truncate text-secondary\">{{ upload.file.name }}</span>\n <span class=\"d-block text-grey mb-0\">{{ upload.file.size | bsFormatBytes }}</span>\n <bs-progress [height]=\"4\">\n <bs-progress-bar [minimum]=\"0\" [maximum]=\"upload.file.size\" [value]=\"upload.progress\"></bs-progress-bar>\n </bs-progress>\n </div>\n </div>\n</ng-template>", styles: [".dropzone{z-index:1}.dropzone.dragging{border:4px solid #CB1535!important;background:#DC88A8;margin:-3px -3px -4px}.dropzone input{opacity:0;z-index:2;top:0;left:0}.dropzone .btn{z-index:5}.files-list{margin-top:-1px}.files-list .d-flex{max-width:400px}.text-grey{color:#999}.list-group span{margin:-5px auto}\n"] }]
69
67
  }], propDecorators: { dropFilesCaption: [{
70
68
  type: Input
71
69
  }], browseFilesCaption: [{
@@ -86,4 +84,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImpor
86
84
  type: HostListener,
87
85
  args: ['drop', ['$event']]
88
86
  }] } });
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9maWxlLXVwbG9hZC9zcmMvY29tcG9uZW50L2ZpbGUtdXBsb2FkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvZmlsZS11cGxvYWQvc3JjL2NvbXBvbmVudC9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7Ozs7QUFRakQsTUFBTSxPQUFPLHFCQUFxQjtJQUxsQztRQU9rQixxQkFBZ0IsR0FBRyxzQkFBc0IsQ0FBQztRQUMxQyx1QkFBa0IsR0FBRyxrQkFBa0IsQ0FBQztRQUN4QyxnQkFBVyxHQUFHLHNCQUFzQixDQUFDO1FBRXJELFdBQU0sR0FBRyxLQUFLLENBQUM7UUFDZixtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUVQLFVBQUssR0FBaUIsRUFBRSxDQUFDO1FBQ3hCLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQWdCLENBQUM7S0FzRGxFO0lBcERDLFFBQVEsQ0FBQyxLQUFZO1FBQ25CLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTTtZQUFFLE9BQU87UUFDMUIsSUFBSSxDQUFDLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFBRSxPQUFPO1FBQ3ZDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQztZQUFFLE9BQU87UUFFbkMsTUFBTSxLQUFLLEdBQXNCLEtBQUssQ0FBQyxNQUFPLENBQUMsS0FBSyxDQUFDO1FBQ3JELElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTztRQUVuQixJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUdELFVBQVUsQ0FBQyxLQUFnQjtRQUN6QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRXhCLElBQUksS0FBSyxDQUFDLFlBQVksRUFBRTtZQUN0QixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztZQUMzQixLQUFLLENBQUMsWUFBWSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUM7U0FDM0M7SUFDSCxDQUFDO0lBR0QsV0FBVyxDQUFDLEtBQWdCO1FBQzFCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUM7SUFDOUIsQ0FBQztJQUdELE1BQU0sQ0FBQyxLQUFnQjtRQUNyQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLFlBQVksSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRTtZQUNsRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNwRDtJQUNILENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxRQUFrQjtRQUM1QyxNQUFNLFFBQVEsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQzthQUNoRCxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQzFCLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDaEIsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBWSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxLQUFLLEVBQUUsQ0FBQSxDQUFDLENBQUM7UUFFN0YsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQWEsRUFBRSxJQUFnQjtRQUN6QyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQzs4R0EvRFUscUJBQXFCO2tHQUFyQixxQkFBcUIsa1dDVGxDLDQ1Q0F1QmM7OzJGRGRELHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxnQkFBZ0I7OEJBTVYsZ0JBQWdCO3NCQUEvQixLQUFLO2dCQUNVLGtCQUFrQjtzQkFBakMsS0FBSztnQkFDVSxXQUFXO3NCQUExQixLQUFLO2dCQUtVLEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ1csWUFBWTtzQkFBNUIsTUFBTTtnQkFjUCxVQUFVO3NCQURULFlBQVk7dUJBQUMsVUFBVSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVlwQyxXQUFXO3NCQURWLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVFyQyxNQUFNO3NCQURMLFlBQVk7dUJBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE91dHB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbG9yIH0gZnJvbSAnQG1pbnRwbGF5ZXIvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7IEZpbGVVcGxvYWQgfSBmcm9tICcuLi9maWxlLXVwbG9hZCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JzLWZpbGUtdXBsb2FkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmlsZS11cGxvYWQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBCc0ZpbGVVcGxvYWRDb21wb25lbnQge1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBkcm9wRmlsZXNDYXB0aW9uID0gJ0Ryb3AgeW91ciBmaWxlcyBoZXJlJztcbiAgQElucHV0KCkgcHVibGljIGJyb3dzZUZpbGVzQ2FwdGlvbiA9ICdCcm93c2UgZm9yIGZpbGVzJztcbiAgQElucHV0KCkgcHVibGljIHBsYWNlaG9sZGVyID0gJ0Ryb3AgZmlsZXMgdG8gdXBsb2FkJztcblxuICBjb2xvcnMgPSBDb2xvcjtcbiAgaXNEcmFnZ2luZ0ZpbGUgPSBmYWxzZTtcbiAgZmlsZVRlbXBsYXRlPzogVGVtcGxhdGVSZWY8RmlsZVVwbG9hZD47XG4gIEBJbnB1dCgpIHB1YmxpYyBmaWxlczogRmlsZVVwbG9hZFtdID0gW107XG4gIEBPdXRwdXQoKSBwdWJsaWMgZmlsZXNEcm9wcGVkID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlVXBsb2FkW10+KCk7XG5cbiAgb25DaGFuZ2UoZXZlbnQ6IEV2ZW50KSB7XG4gICAgaWYgKCFldmVudC50YXJnZXQpIHJldHVybjtcbiAgICBpZiAoISgnZmlsZXMnIGluIGV2ZW50LnRhcmdldCkpIHJldHVybjtcbiAgICBpZiAoIWV2ZW50LnRhcmdldFsnZmlsZXMnXSkgcmV0dXJuO1xuXG4gICAgY29uc3QgZmlsZXMgPSAoPEhUTUxJbnB1dEVsZW1lbnQ+ZXZlbnQudGFyZ2V0KS5maWxlcztcbiAgICBpZiAoIWZpbGVzKSByZXR1cm47XG4gICAgXG4gICAgdGhpcy5wcm9jZXNzRHJvcHBlZEZpbGVzKGZpbGVzKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RyYWdvdmVyJywgWyckZXZlbnQnXSlcbiAgb25EcmFnT3ZlcihldmVudDogRHJhZ0V2ZW50KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBcbiAgICBpZiAoZXZlbnQuZGF0YVRyYW5zZmVyKSB7XG4gICAgICB0aGlzLmlzRHJhZ2dpbmdGaWxlID0gdHJ1ZTtcbiAgICAgIGV2ZW50LmRhdGFUcmFuc2Zlci5lZmZlY3RBbGxvd2VkID0gXCJjb3B5XCI7XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZHJhZ2xlYXZlJywgWyckZXZlbnQnXSlcbiAgb25EcmFnTGVhdmUoZXZlbnQ6IERyYWdFdmVudCkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5pc0RyYWdnaW5nRmlsZSA9IGZhbHNlO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZHJvcCcsIFsnJGV2ZW50J10pXG4gIG9uRHJvcChldmVudDogRHJhZ0V2ZW50KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmlzRHJhZ2dpbmdGaWxlID0gZmFsc2U7XG4gICAgaWYgKGV2ZW50LmRhdGFUcmFuc2ZlciAmJiBldmVudC5kYXRhVHJhbnNmZXIuZmlsZXMpIHtcbiAgICAgIHRoaXMucHJvY2Vzc0Ryb3BwZWRGaWxlcyhldmVudC5kYXRhVHJhbnNmZXIuZmlsZXMpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgcHJvY2Vzc0Ryb3BwZWRGaWxlcyhmaWxlTGlzdDogRmlsZUxpc3QpIHtcbiAgICBjb25zdCBuZXdGaWxlcyA9IFsuLi5BcnJheShmaWxlTGlzdC5sZW5ndGgpLmtleXMoKV1cbiAgICAgIC5tYXAoaSA9PiBmaWxlTGlzdC5pdGVtKGkpKVxuICAgICAgLmZpbHRlcihmID0+ICEhZilcbiAgICAgIC5tYXAoKGZpbGUsIGluZGV4KSA9PiA8RmlsZVVwbG9hZD57IGZpbGUsIHByb2dyZXNzOiAwLCBpbmRleDogdGhpcy5maWxlcy5sZW5ndGggKyBpbmRleCB9KTtcbiAgICBcbiAgICB0aGlzLmZpbGVzLnB1c2goLi4ubmV3RmlsZXMpO1xuICAgIHRoaXMuZmlsZXNEcm9wcGVkLmVtaXQobmV3RmlsZXMpO1xuICB9XG5cbiAgdHJhY2tCeUZpbGUoaW5kZXg6IG51bWJlciwgZmlsZTogRmlsZVVwbG9hZCkge1xuICAgIHJldHVybiBmaWxlLmluZGV4O1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZHJvcHpvbmUgYm9yZGVyIHBvc2l0aW9uLXJlbGF0aXZlIHAtNVwiIFtjbGFzcy5kcmFnZ2luZ109XCJpc0RyYWdnaW5nRmlsZVwiPlxuICAgIDxpbnB1dCB0eXBlPVwiZmlsZVwiIG11bHRpcGxlICNmaWxlVXBsb2FkIChjaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiIFt0aXRsZV09XCJwbGFjZWhvbGRlclwiIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIGNsYXNzPVwicG9zaXRpb24tYWJzb2x1dGUgdy0xMDAgaC0xMDBcIj5cbiAgICA8IS0tIDxpbWcgc3JjPVwiL2Fzc2V0cy9pYy1maWxlLXVwbG9hZC5zdmdcIiBbYWx0XT1cInBsYWNlaG9sZGVyXCI+IC0tPlxuICAgIDxzcGFuIGNsYXNzPVwiaDMgZC1ibG9ja1wiPnt7IGRyb3BGaWxlc0NhcHRpb24gfX08L3NwYW4+XG4gICAgPGxhYmVsIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IHBvc2l0aW9uLXJlbGF0aXZlXCIgW2JzRm9yXT1cImZpbGVVcGxvYWRcIj57eyBicm93c2VGaWxlc0NhcHRpb24gfX08L2xhYmVsPlxuPC9kaXY+XG48YnMtbGlzdC1ncm91cCBjbGFzcz1cImZpbGVzLWxpc3RcIj5cbiAgICA8YnMtbGlzdC1ncm91cC1pdGVtICpuZ0Zvcj1cImxldCB1cGxvYWQgb2YgZmlsZXM7IHRyYWNrQnk6IHRyYWNrQnlGaWxlXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmaWxlVGVtcGxhdGUgPz8gZGVmYXVsdEZpbGVUZW1wbGF0ZTsgY29udGV4dDogeyAkaW1wbGljaXQ6IHVwbG9hZCB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9icy1saXN0LWdyb3VwLWl0ZW0+XG48L2JzLWxpc3QtZ3JvdXA+XG5cbjxuZy10ZW1wbGF0ZSAjZGVmYXVsdEZpbGVUZW1wbGF0ZSBsZXQtdXBsb2FkPlxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1yb3cgbXgtYXV0b1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmlsZS1pbWdcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtZ3Jvdy0xIHRleHQtc3RhcnQgcHgtMlwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJkLWJsb2NrIHRleHQtdHJ1bmNhdGUgdGV4dC1zZWNvbmRhcnlcIj57eyB1cGxvYWQuZmlsZS5uYW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJkLWJsb2NrIHRleHQtZ3JleSBtYi0wXCI+e3sgdXBsb2FkLmZpbGUuc2l6ZSB8IGJzRm9ybWF0Qnl0ZXMgfX08L3NwYW4+XG4gICAgICAgICAgICA8YnMtcHJvZ3Jlc3MgW2hlaWdodF09XCI0XCI+XG4gICAgICAgICAgICAgICAgPGJzLXByb2dyZXNzLWJhciBbbWluaW11bV09XCIwXCIgW21heGltdW1dPVwidXBsb2FkLmZpbGUuc2l6ZVwiIFt2YWx1ZV09XCJ1cGxvYWQucHJvZ3Jlc3NcIj48L2JzLXByb2dyZXNzLWJhcj5cbiAgICAgICAgICAgIDwvYnMtcHJvZ3Jlc3M+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT4iXX0=
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9maWxlLXVwbG9hZC9zcmMvY29tcG9uZW50L2ZpbGUtdXBsb2FkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvZmlsZS11cGxvYWQvc3JjL2NvbXBvbmVudC9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7Ozs7O0FBUWpELE1BQU0sT0FBTyxxQkFBcUI7SUFMbEM7UUFPa0IscUJBQWdCLEdBQUcsc0JBQXNCLENBQUM7UUFDMUMsdUJBQWtCLEdBQUcsa0JBQWtCLENBQUM7UUFDeEMsZ0JBQVcsR0FBRyxzQkFBc0IsQ0FBQztRQUVyRCxXQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ2YsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFFUCxVQUFLLEdBQWlCLEVBQUUsQ0FBQztRQUN4QixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFnQixDQUFDO0tBa0RsRTtJQWhEQyxRQUFRLENBQUMsS0FBWTtRQUNuQixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU07WUFBRSxPQUFPO1FBQzFCLElBQUksQ0FBQyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQUUsT0FBTztRQUN2QyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7WUFBRSxPQUFPO1FBRW5DLE1BQU0sS0FBSyxHQUFzQixLQUFLLENBQUMsTUFBTyxDQUFDLEtBQUssQ0FBQztRQUNyRCxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU87UUFFbkIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFHRCxVQUFVLENBQUMsS0FBZ0I7UUFDekIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUV4QixJQUFJLEtBQUssQ0FBQyxZQUFZLEVBQUU7WUFDdEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7WUFDM0IsS0FBSyxDQUFDLFlBQVksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDO1NBQzNDO0lBQ0gsQ0FBQztJQUdELFdBQVcsQ0FBQyxLQUFnQjtRQUMxQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO0lBQzlCLENBQUM7SUFHRCxNQUFNLENBQUMsS0FBZ0I7UUFDckIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztRQUM1QixJQUFJLEtBQUssQ0FBQyxZQUFZLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUU7WUFDbEQsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDcEQ7SUFDSCxDQUFDO0lBRU8sbUJBQW1CLENBQUMsUUFBa0I7UUFDNUMsTUFBTSxRQUFRLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDaEQsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUMxQixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ2hCLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQVksRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsS0FBSyxFQUFFLENBQUEsQ0FBQyxDQUFDO1FBRTdGLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbkMsQ0FBQzs4R0EzRFUscUJBQXFCO2tHQUFyQixxQkFBcUIsa1dDVGxDLDA1Q0F1QmM7OzJGRGRELHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxnQkFBZ0I7OEJBTVYsZ0JBQWdCO3NCQUEvQixLQUFLO2dCQUNVLGtCQUFrQjtzQkFBakMsS0FBSztnQkFDVSxXQUFXO3NCQUExQixLQUFLO2dCQUtVLEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ1csWUFBWTtzQkFBNUIsTUFBTTtnQkFjUCxVQUFVO3NCQURULFlBQVk7dUJBQUMsVUFBVSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVlwQyxXQUFXO3NCQURWLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVFyQyxNQUFNO3NCQURMLFlBQVk7dUJBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE91dHB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbG9yIH0gZnJvbSAnQG1pbnRwbGF5ZXIvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7IEZpbGVVcGxvYWQgfSBmcm9tICcuLi9maWxlLXVwbG9hZCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JzLWZpbGUtdXBsb2FkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmlsZS11cGxvYWQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBCc0ZpbGVVcGxvYWRDb21wb25lbnQge1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBkcm9wRmlsZXNDYXB0aW9uID0gJ0Ryb3AgeW91ciBmaWxlcyBoZXJlJztcbiAgQElucHV0KCkgcHVibGljIGJyb3dzZUZpbGVzQ2FwdGlvbiA9ICdCcm93c2UgZm9yIGZpbGVzJztcbiAgQElucHV0KCkgcHVibGljIHBsYWNlaG9sZGVyID0gJ0Ryb3AgZmlsZXMgdG8gdXBsb2FkJztcblxuICBjb2xvcnMgPSBDb2xvcjtcbiAgaXNEcmFnZ2luZ0ZpbGUgPSBmYWxzZTtcbiAgZmlsZVRlbXBsYXRlPzogVGVtcGxhdGVSZWY8RmlsZVVwbG9hZD47XG4gIEBJbnB1dCgpIHB1YmxpYyBmaWxlczogRmlsZVVwbG9hZFtdID0gW107XG4gIEBPdXRwdXQoKSBwdWJsaWMgZmlsZXNEcm9wcGVkID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlVXBsb2FkW10+KCk7XG5cbiAgb25DaGFuZ2UoZXZlbnQ6IEV2ZW50KSB7XG4gICAgaWYgKCFldmVudC50YXJnZXQpIHJldHVybjtcbiAgICBpZiAoISgnZmlsZXMnIGluIGV2ZW50LnRhcmdldCkpIHJldHVybjtcbiAgICBpZiAoIWV2ZW50LnRhcmdldFsnZmlsZXMnXSkgcmV0dXJuO1xuXG4gICAgY29uc3QgZmlsZXMgPSAoPEhUTUxJbnB1dEVsZW1lbnQ+ZXZlbnQudGFyZ2V0KS5maWxlcztcbiAgICBpZiAoIWZpbGVzKSByZXR1cm47XG4gICAgXG4gICAgdGhpcy5wcm9jZXNzRHJvcHBlZEZpbGVzKGZpbGVzKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RyYWdvdmVyJywgWyckZXZlbnQnXSlcbiAgb25EcmFnT3ZlcihldmVudDogRHJhZ0V2ZW50KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBcbiAgICBpZiAoZXZlbnQuZGF0YVRyYW5zZmVyKSB7XG4gICAgICB0aGlzLmlzRHJhZ2dpbmdGaWxlID0gdHJ1ZTtcbiAgICAgIGV2ZW50LmRhdGFUcmFuc2Zlci5lZmZlY3RBbGxvd2VkID0gXCJjb3B5XCI7XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZHJhZ2xlYXZlJywgWyckZXZlbnQnXSlcbiAgb25EcmFnTGVhdmUoZXZlbnQ6IERyYWdFdmVudCkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5pc0RyYWdnaW5nRmlsZSA9IGZhbHNlO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZHJvcCcsIFsnJGV2ZW50J10pXG4gIG9uRHJvcChldmVudDogRHJhZ0V2ZW50KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmlzRHJhZ2dpbmdGaWxlID0gZmFsc2U7XG4gICAgaWYgKGV2ZW50LmRhdGFUcmFuc2ZlciAmJiBldmVudC5kYXRhVHJhbnNmZXIuZmlsZXMpIHtcbiAgICAgIHRoaXMucHJvY2Vzc0Ryb3BwZWRGaWxlcyhldmVudC5kYXRhVHJhbnNmZXIuZmlsZXMpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgcHJvY2Vzc0Ryb3BwZWRGaWxlcyhmaWxlTGlzdDogRmlsZUxpc3QpIHtcbiAgICBjb25zdCBuZXdGaWxlcyA9IFsuLi5BcnJheShmaWxlTGlzdC5sZW5ndGgpLmtleXMoKV1cbiAgICAgIC5tYXAoaSA9PiBmaWxlTGlzdC5pdGVtKGkpKVxuICAgICAgLmZpbHRlcihmID0+ICEhZilcbiAgICAgIC5tYXAoKGZpbGUsIGluZGV4KSA9PiA8RmlsZVVwbG9hZD57IGZpbGUsIHByb2dyZXNzOiAwLCBpbmRleDogdGhpcy5maWxlcy5sZW5ndGggKyBpbmRleCB9KTtcbiAgICBcbiAgICB0aGlzLmZpbGVzLnB1c2goLi4ubmV3RmlsZXMpO1xuICAgIHRoaXMuZmlsZXNEcm9wcGVkLmVtaXQobmV3RmlsZXMpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZHJvcHpvbmUgYm9yZGVyIHBvc2l0aW9uLXJlbGF0aXZlIHAtNVwiIFtjbGFzcy5kcmFnZ2luZ109XCJpc0RyYWdnaW5nRmlsZVwiPlxuICAgIDxpbnB1dCB0eXBlPVwiZmlsZVwiIG11bHRpcGxlICNmaWxlVXBsb2FkIChjaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiIFt0aXRsZV09XCJwbGFjZWhvbGRlclwiIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIGNsYXNzPVwicG9zaXRpb24tYWJzb2x1dGUgdy0xMDAgaC0xMDBcIj5cbiAgICA8IS0tIDxpbWcgc3JjPVwiL2Fzc2V0cy9pYy1maWxlLXVwbG9hZC5zdmdcIiBbYWx0XT1cInBsYWNlaG9sZGVyXCI+IC0tPlxuICAgIDxzcGFuIGNsYXNzPVwiaDMgZC1ibG9ja1wiPnt7IGRyb3BGaWxlc0NhcHRpb24gfX08L3NwYW4+XG4gICAgPGxhYmVsIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IHBvc2l0aW9uLXJlbGF0aXZlXCIgW2JzRm9yXT1cImZpbGVVcGxvYWRcIj57eyBicm93c2VGaWxlc0NhcHRpb24gfX08L2xhYmVsPlxuPC9kaXY+XG48YnMtbGlzdC1ncm91cCBjbGFzcz1cImZpbGVzLWxpc3RcIj5cbiAgICA8YnMtbGlzdC1ncm91cC1pdGVtICpuZ0Zvcj1cImxldCB1cGxvYWQgb2YgZmlsZXM7IGJzVHJhY2tCeTogJ2luZGV4J1wiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZmlsZVRlbXBsYXRlID8/IGRlZmF1bHRGaWxlVGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiB1cGxvYWQgfVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvYnMtbGlzdC1ncm91cC1pdGVtPlxuPC9icy1saXN0LWdyb3VwPlxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRGaWxlVGVtcGxhdGUgbGV0LXVwbG9hZD5cbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93IG14LWF1dG9cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZpbGUtaW1nXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LWdyb3ctMSB0ZXh0LXN0YXJ0IHB4LTJcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZC1ibG9jayB0ZXh0LXRydW5jYXRlIHRleHQtc2Vjb25kYXJ5XCI+e3sgdXBsb2FkLmZpbGUubmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZC1ibG9jayB0ZXh0LWdyZXkgbWItMFwiPnt7IHVwbG9hZC5maWxlLnNpemUgfCBic0Zvcm1hdEJ5dGVzIH19PC9zcGFuPlxuICAgICAgICAgICAgPGJzLXByb2dyZXNzIFtoZWlnaHRdPVwiNFwiPlxuICAgICAgICAgICAgICAgIDxicy1wcm9ncmVzcy1iYXIgW21pbmltdW1dPVwiMFwiIFttYXhpbXVtXT1cInVwbG9hZC5maWxlLnNpemVcIiBbdmFsdWVdPVwidXBsb2FkLnByb2dyZXNzXCI+PC9icy1wcm9ncmVzcy1iYXI+XG4gICAgICAgICAgICA8L2JzLXByb2dyZXNzPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+Il19
@@ -1,6 +1,7 @@
1
1
  import { NgModule } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import { BsForModule } from '@mintplayer/ng-bootstrap/for';
4
+ import { BsTrackByModule } from '@mintplayer/ng-bootstrap/track-by';
4
5
  import { BsProgressBarModule } from '@mintplayer/ng-bootstrap/progress-bar';
5
6
  import { BsListGroupModule } from '@mintplayer/ng-bootstrap/list-group';
6
7
  import { BsButtonTypeModule } from '@mintplayer/ng-bootstrap/button-type';
@@ -14,6 +15,7 @@ export class BsFileUploadModule {
14
15
  BsFileUploadTemplateDirective,
15
16
  BsFormatBytesPipe], imports: [CommonModule,
16
17
  BsForModule,
18
+ BsTrackByModule,
17
19
  BsProgressBarModule,
18
20
  BsListGroupModule,
19
21
  BsButtonTypeModule], exports: [BsFileUploadComponent,
@@ -21,6 +23,7 @@ export class BsFileUploadModule {
21
23
  BsFormatBytesPipe] }); }
22
24
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsFileUploadModule, imports: [CommonModule,
23
25
  BsForModule,
26
+ BsTrackByModule,
24
27
  BsProgressBarModule,
25
28
  BsListGroupModule,
26
29
  BsButtonTypeModule] }); }
@@ -36,6 +39,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImpor
36
39
  imports: [
37
40
  CommonModule,
38
41
  BsForModule,
42
+ BsTrackByModule,
39
43
  BsProgressBarModule,
40
44
  BsListGroupModule,
41
45
  BsButtonTypeModule,
@@ -47,4 +51,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImpor
47
51
  ]
48
52
  }]
49
53
  }] });
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9maWxlLXVwbG9hZC9zcmMvZmlsZS11cGxvYWQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUMzRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7QUFxQjNFLE1BQU0sT0FBTyxrQkFBa0I7OEdBQWxCLGtCQUFrQjsrR0FBbEIsa0JBQWtCLGlCQWpCM0IscUJBQXFCO1lBQ3JCLDZCQUE2QjtZQUM3QixpQkFBaUIsYUFHakIsWUFBWTtZQUNaLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsaUJBQWlCO1lBQ2pCLGtCQUFrQixhQUdsQixxQkFBcUI7WUFDckIsNkJBQTZCO1lBQzdCLGlCQUFpQjsrR0FHUixrQkFBa0IsWUFaM0IsWUFBWTtZQUNaLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsaUJBQWlCO1lBQ2pCLGtCQUFrQjs7MkZBUVQsa0JBQWtCO2tCQW5COUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1oscUJBQXFCO3dCQUNyQiw2QkFBNkI7d0JBQzdCLGlCQUFpQjtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLGlCQUFpQjt3QkFDakIsa0JBQWtCO3FCQUNuQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AscUJBQXFCO3dCQUNyQiw2QkFBNkI7d0JBQzdCLGlCQUFpQjtxQkFDbEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJzRm9yTW9kdWxlIH0gZnJvbSAnQG1pbnRwbGF5ZXIvbmctYm9vdHN0cmFwL2Zvcic7XG5pbXBvcnQgeyBCc1Byb2dyZXNzQmFyTW9kdWxlIH0gZnJvbSAnQG1pbnRwbGF5ZXIvbmctYm9vdHN0cmFwL3Byb2dyZXNzLWJhcic7XG5pbXBvcnQgeyBCc0xpc3RHcm91cE1vZHVsZSB9IGZyb20gJ0BtaW50cGxheWVyL25nLWJvb3RzdHJhcC9saXN0LWdyb3VwJztcbmltcG9ydCB7IEJzQnV0dG9uVHlwZU1vZHVsZSB9IGZyb20gJ0BtaW50cGxheWVyL25nLWJvb3RzdHJhcC9idXR0b24tdHlwZSc7XG5pbXBvcnQgeyBCc0ZpbGVVcGxvYWRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudC9maWxlLXVwbG9hZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnNGaWxlVXBsb2FkVGVtcGxhdGVEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZS9maWxlLXVwbG9hZC10ZW1wbGF0ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQnNGb3JtYXRCeXRlc1BpcGUgfSBmcm9tICcuL3BpcGVzL2Zvcm1hdC1ieXRlcy9mb3JtYXQtYnl0ZXMucGlwZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEJzRmlsZVVwbG9hZENvbXBvbmVudCxcbiAgICBCc0ZpbGVVcGxvYWRUZW1wbGF0ZURpcmVjdGl2ZSxcbiAgICBCc0Zvcm1hdEJ5dGVzUGlwZVxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEJzRm9yTW9kdWxlLFxuICAgIEJzUHJvZ3Jlc3NCYXJNb2R1bGUsXG4gICAgQnNMaXN0R3JvdXBNb2R1bGUsXG4gICAgQnNCdXR0b25UeXBlTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgQnNGaWxlVXBsb2FkQ29tcG9uZW50LFxuICAgIEJzRmlsZVVwbG9hZFRlbXBsYXRlRGlyZWN0aXZlLFxuICAgIEJzRm9ybWF0Qnl0ZXNQaXBlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQnNGaWxlVXBsb2FkTW9kdWxlIHsgfVxuIl19
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9maWxlLXVwbG9hZC9zcmMvZmlsZS11cGxvYWQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDcEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDMUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDMUUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDM0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7O0FBc0IzRSxNQUFNLE9BQU8sa0JBQWtCOzhHQUFsQixrQkFBa0I7K0dBQWxCLGtCQUFrQixpQkFsQjNCLHFCQUFxQjtZQUNyQiw2QkFBNkI7WUFDN0IsaUJBQWlCLGFBR2pCLFlBQVk7WUFDWixXQUFXO1lBQ1gsZUFBZTtZQUNmLG1CQUFtQjtZQUNuQixpQkFBaUI7WUFDakIsa0JBQWtCLGFBR2xCLHFCQUFxQjtZQUNyQiw2QkFBNkI7WUFDN0IsaUJBQWlCOytHQUdSLGtCQUFrQixZQWIzQixZQUFZO1lBQ1osV0FBVztZQUNYLGVBQWU7WUFDZixtQkFBbUI7WUFDbkIsaUJBQWlCO1lBQ2pCLGtCQUFrQjs7MkZBUVQsa0JBQWtCO2tCQXBCOUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1oscUJBQXFCO3dCQUNyQiw2QkFBNkI7d0JBQzdCLGlCQUFpQjtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxlQUFlO3dCQUNmLG1CQUFtQjt3QkFDbkIsaUJBQWlCO3dCQUNqQixrQkFBa0I7cUJBQ25CO29CQUNELE9BQU8sRUFBRTt3QkFDUCxxQkFBcUI7d0JBQ3JCLDZCQUE2Qjt3QkFDN0IsaUJBQWlCO3FCQUNsQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQnNGb3JNb2R1bGUgfSBmcm9tICdAbWludHBsYXllci9uZy1ib290c3RyYXAvZm9yJztcbmltcG9ydCB7IEJzVHJhY2tCeU1vZHVsZSB9IGZyb20gJ0BtaW50cGxheWVyL25nLWJvb3RzdHJhcC90cmFjay1ieSc7XG5pbXBvcnQgeyBCc1Byb2dyZXNzQmFyTW9kdWxlIH0gZnJvbSAnQG1pbnRwbGF5ZXIvbmctYm9vdHN0cmFwL3Byb2dyZXNzLWJhcic7XG5pbXBvcnQgeyBCc0xpc3RHcm91cE1vZHVsZSB9IGZyb20gJ0BtaW50cGxheWVyL25nLWJvb3RzdHJhcC9saXN0LWdyb3VwJztcbmltcG9ydCB7IEJzQnV0dG9uVHlwZU1vZHVsZSB9IGZyb20gJ0BtaW50cGxheWVyL25nLWJvb3RzdHJhcC9idXR0b24tdHlwZSc7XG5pbXBvcnQgeyBCc0ZpbGVVcGxvYWRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudC9maWxlLXVwbG9hZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnNGaWxlVXBsb2FkVGVtcGxhdGVEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZS9maWxlLXVwbG9hZC10ZW1wbGF0ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQnNGb3JtYXRCeXRlc1BpcGUgfSBmcm9tICcuL3BpcGVzL2Zvcm1hdC1ieXRlcy9mb3JtYXQtYnl0ZXMucGlwZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEJzRmlsZVVwbG9hZENvbXBvbmVudCxcbiAgICBCc0ZpbGVVcGxvYWRUZW1wbGF0ZURpcmVjdGl2ZSxcbiAgICBCc0Zvcm1hdEJ5dGVzUGlwZVxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEJzRm9yTW9kdWxlLFxuICAgIEJzVHJhY2tCeU1vZHVsZSxcbiAgICBCc1Byb2dyZXNzQmFyTW9kdWxlLFxuICAgIEJzTGlzdEdyb3VwTW9kdWxlLFxuICAgIEJzQnV0dG9uVHlwZU1vZHVsZSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEJzRmlsZVVwbG9hZENvbXBvbmVudCxcbiAgICBCc0ZpbGVVcGxvYWRUZW1wbGF0ZURpcmVjdGl2ZSxcbiAgICBCc0Zvcm1hdEJ5dGVzUGlwZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEJzRmlsZVVwbG9hZE1vZHVsZSB7IH1cbiJdfQ==
@@ -1,10 +1,12 @@
1
- import { Directive, HostBinding } from '@angular/core';
1
+ import { Directive, HostBinding, Optional } from '@angular/core';
2
+ import { BsFormComponent } from '../form/form.component';
2
3
  import * as i0 from "@angular/core";
4
+ import * as i1 from "../form/form.component";
3
5
  export class BsFormControlDirective {
4
- constructor() {
5
- this.formControlClass = true;
6
+ constructor(form) {
7
+ this.formControlClass = !!form;
6
8
  }
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsFormControlDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsFormControlDirective, deps: [{ token: i1.BsFormComponent, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
8
10
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.2", type: BsFormControlDirective, selector: "bs-form input:not(.no-form-control), bs-form textarea:not(.no-form-control)", host: { properties: { "class.form-control": "this.formControlClass" } }, ngImport: i0 }); }
9
11
  }
10
12
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsFormControlDirective, decorators: [{
@@ -12,8 +14,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImpor
12
14
  args: [{
13
15
  selector: 'bs-form input:not(.no-form-control), bs-form textarea:not(.no-form-control)'
14
16
  }]
15
- }], propDecorators: { formControlClass: [{
17
+ }], ctorParameters: function () { return [{ type: i1.BsFormComponent, decorators: [{
18
+ type: Optional
19
+ }] }]; }, propDecorators: { formControlClass: [{
16
20
  type: HostBinding,
17
21
  args: ['class.form-control']
18
22
  }] } });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jb250cm9sLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvZm9ybS9zcmMvZm9ybS1jb250cm9sL2Zvcm0tY29udHJvbC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBS3ZELE1BQU0sT0FBTyxzQkFBc0I7SUFIbkM7UUFJcUMscUJBQWdCLEdBQUcsSUFBSSxDQUFDO0tBQzVEOzhHQUZZLHNCQUFzQjtrR0FBdEIsc0JBQXNCOzsyRkFBdEIsc0JBQXNCO2tCQUhsQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw2RUFBNkU7aUJBQ3hGOzhCQUVvQyxnQkFBZ0I7c0JBQWxELFdBQVc7dUJBQUMsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdicy1mb3JtIGlucHV0Om5vdCgubm8tZm9ybS1jb250cm9sKSwgYnMtZm9ybSB0ZXh0YXJlYTpub3QoLm5vLWZvcm0tY29udHJvbCknXG59KVxuZXhwb3J0IGNsYXNzIEJzRm9ybUNvbnRyb2xEaXJlY3RpdmUge1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZvcm0tY29udHJvbCcpIGZvcm1Db250cm9sQ2xhc3MgPSB0cnVlO1xufVxuIl19
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jb250cm9sLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvZm9ybS9zcmMvZm9ybS1jb250cm9sL2Zvcm0tY29udHJvbC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBS3pELE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsWUFBd0IsSUFBc0I7UUFDNUMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDakMsQ0FBQzs4R0FIVSxzQkFBc0I7a0dBQXRCLHNCQUFzQjs7MkZBQXRCLHNCQUFzQjtrQkFIbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsNkVBQTZFO2lCQUN4Rjs7MEJBRWMsUUFBUTs0Q0FHYyxnQkFBZ0I7c0JBQWxELFdBQVc7dUJBQUMsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0QmluZGluZywgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJzRm9ybUNvbXBvbmVudCB9IGZyb20gJy4uL2Zvcm0vZm9ybS5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdicy1mb3JtIGlucHV0Om5vdCgubm8tZm9ybS1jb250cm9sKSwgYnMtZm9ybSB0ZXh0YXJlYTpub3QoLm5vLWZvcm0tY29udHJvbCknXG59KVxuZXhwb3J0IGNsYXNzIEJzRm9ybUNvbnRyb2xEaXJlY3RpdmUge1xuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBmb3JtPzogQnNGb3JtQ29tcG9uZW50KSB7XG4gICAgdGhpcy5mb3JtQ29udHJvbENsYXNzID0gISFmb3JtO1xuICB9XG4gIEBIb3N0QmluZGluZygnY2xhc3MuZm9ybS1jb250cm9sJykgZm9ybUNvbnRyb2xDbGFzczogYm9vbGVhbjtcbn1cbiJdfQ==
@@ -3,6 +3,7 @@ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
3
3
  import { BehaviorSubject, combineLatest, map } from 'rxjs';
4
4
  import * as i0 from "@angular/core";
5
5
  import * as i1 from "@angular/common";
6
+ import * as i2 from "@mintplayer/ng-bootstrap/track-by";
6
7
  export class BsPaginationComponent {
7
8
  constructor() {
8
9
  /** All page numbers. */
@@ -166,15 +167,12 @@ export class BsPaginationComponent {
166
167
  }
167
168
  return false;
168
169
  }
169
- trackByPageNumber(index, page) {
170
- return page;
171
- }
172
170
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsPaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
173
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: BsPaginationComponent, selector: "bs-pagination", inputs: { selectedPageNumber: "selectedPageNumber", numberOfBoxes: "numberOfBoxes", pageNumbers: "pageNumbers", showArrows: "showArrows", size: "size" }, outputs: { selectedPageNumberChange: "selectedPageNumberChange" }, ngImport: i0, template: "<ul class=\"pagination\">\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onPrevious()\" [class.disabled]=\"isFirstPage$ | async\" aria-label=\"Previous\">\n <span aria-hidden=\"true\">&laquo;</span>\n <span class=\"visually-hidden\">Previous</span>\n </a>\n </li>\n <li *ngFor=\"let pageNumber of (shownPageNumbers$ | async); trackBy: trackByPageNumber\" class=\"page-item\">\n <a class=\"page-link\" href=\"\" (click)=\"onSelectPage($event, pageNumber.page)\"\n [ngClass]=\"{ 'active': pageNumber.selected }\" *ngIf=\"pageNumber.page != '...'\">\n {{ pageNumber.page }}\n <span class=\"visually-hidden\" *ngIf=\"pageNumber.selected\">(current)</span>\n </a>\n </li>\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onNext()\" [class.disabled]=\"isLastPage$ | async\" aria-label=\"Next\">\n <span aria-hidden=\"true\">&raquo;</span>\n <span class=\"visually-hidden\">Next</span>\n </a>\n </li>\n</ul>", styles: [":host ::ng-deep .pagination{--bs-pagination-padding-x: .75rem;--bs-pagination-padding-y: .375rem;--bs-pagination-font-size: 1rem;--bs-pagination-color: var(--bs-link-color);--bs-pagination-bg: var(--bs-body-bg);--bs-pagination-border-width: var(--bs-border-width);--bs-pagination-border-color: var(--bs-border-color);--bs-pagination-border-radius: var(--bs-border-radius);--bs-pagination-hover-color: var(--bs-link-hover-color);--bs-pagination-hover-bg: var(--bs-tertiary-bg);--bs-pagination-hover-border-color: var(--bs-border-color);--bs-pagination-focus-color: var(--bs-link-hover-color);--bs-pagination-focus-bg: var(--bs-secondary-bg);--bs-pagination-focus-box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);--bs-pagination-active-color: #fff;--bs-pagination-active-bg: #0d6efd;--bs-pagination-active-border-color: #0d6efd;--bs-pagination-disabled-color: var(--bs-secondary-color);--bs-pagination-disabled-bg: var(--bs-secondary-bg);--bs-pagination-disabled-border-color: var(--bs-border-color);display:flex;padding-left:0;list-style:none}:host ::ng-deep .page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);text-decoration:none;background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion: reduce){:host ::ng-deep .page-link{transition:none}}:host ::ng-deep .page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}:host ::ng-deep .page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}:host ::ng-deep .page-link.active,.active>:host ::ng-deep .page-link{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}:host ::ng-deep .page-link.disabled,.disabled>:host ::ng-deep .page-link{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}:host ::ng-deep .page-item:not(:first-child) .page-link{margin-left:calc(var(--bs-border-width) * -1)}:host ::ng-deep .page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}:host ::ng-deep .page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}:host ::ng-deep .pagination-lg{--bs-pagination-padding-x: 1.5rem;--bs-pagination-padding-y: .75rem;--bs-pagination-font-size: 1.25rem;--bs-pagination-border-radius: var(--bs-border-radius-lg)}:host ::ng-deep .pagination-sm{--bs-pagination-padding-x: .5rem;--bs-pagination-padding-y: .25rem;--bs-pagination-font-size: .875rem;--bs-pagination-border-radius: var(--bs-border-radius-sm)}:host{display:inline-block}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
171
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: BsPaginationComponent, selector: "bs-pagination", inputs: { selectedPageNumber: "selectedPageNumber", numberOfBoxes: "numberOfBoxes", pageNumbers: "pageNumbers", showArrows: "showArrows", size: "size" }, outputs: { selectedPageNumberChange: "selectedPageNumberChange" }, ngImport: i0, template: "<ul class=\"pagination\">\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onPrevious()\" [class.disabled]=\"isFirstPage$ | async\" aria-label=\"Previous\">\n <span aria-hidden=\"true\">&laquo;</span>\n <span class=\"visually-hidden\">Previous</span>\n </a>\n </li>\n <li *ngFor=\"let pageNumber of (shownPageNumbers$ | async); bsTrackBy: 'page'\" class=\"page-item\">\n <a class=\"page-link\" href=\"\" (click)=\"onSelectPage($event, pageNumber.page)\"\n [ngClass]=\"{ 'active': pageNumber.selected }\" *ngIf=\"pageNumber.page != '...'\">\n {{ pageNumber.page }}\n <span class=\"visually-hidden\" *ngIf=\"pageNumber.selected\">(current)</span>\n </a>\n </li>\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onNext()\" [class.disabled]=\"isLastPage$ | async\" aria-label=\"Next\">\n <span aria-hidden=\"true\">&raquo;</span>\n <span class=\"visually-hidden\">Next</span>\n </a>\n </li>\n</ul>", styles: [":host ::ng-deep .pagination{--bs-pagination-padding-x: .75rem;--bs-pagination-padding-y: .375rem;--bs-pagination-font-size: 1rem;--bs-pagination-color: var(--bs-link-color);--bs-pagination-bg: var(--bs-body-bg);--bs-pagination-border-width: var(--bs-border-width);--bs-pagination-border-color: var(--bs-border-color);--bs-pagination-border-radius: var(--bs-border-radius);--bs-pagination-hover-color: var(--bs-link-hover-color);--bs-pagination-hover-bg: var(--bs-tertiary-bg);--bs-pagination-hover-border-color: var(--bs-border-color);--bs-pagination-focus-color: var(--bs-link-hover-color);--bs-pagination-focus-bg: var(--bs-secondary-bg);--bs-pagination-focus-box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);--bs-pagination-active-color: #fff;--bs-pagination-active-bg: #0d6efd;--bs-pagination-active-border-color: #0d6efd;--bs-pagination-disabled-color: var(--bs-secondary-color);--bs-pagination-disabled-bg: var(--bs-secondary-bg);--bs-pagination-disabled-border-color: var(--bs-border-color);display:flex;padding-left:0;list-style:none}:host ::ng-deep .page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);text-decoration:none;background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion: reduce){:host ::ng-deep .page-link{transition:none}}:host ::ng-deep .page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}:host ::ng-deep .page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}:host ::ng-deep .page-link.active,.active>:host ::ng-deep .page-link{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}:host ::ng-deep .page-link.disabled,.disabled>:host ::ng-deep .page-link{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}:host ::ng-deep .page-item:not(:first-child) .page-link{margin-left:calc(var(--bs-border-width) * -1)}:host ::ng-deep .page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}:host ::ng-deep .page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}:host ::ng-deep .pagination-lg{--bs-pagination-padding-x: 1.5rem;--bs-pagination-padding-y: .75rem;--bs-pagination-font-size: 1.25rem;--bs-pagination-border-radius: var(--bs-border-radius-lg)}:host ::ng-deep .pagination-sm{--bs-pagination-padding-x: .5rem;--bs-pagination-padding-y: .25rem;--bs-pagination-font-size: .875rem;--bs-pagination-border-radius: var(--bs-border-radius-sm)}:host{display:inline-block}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.BsTrackByDirective, selector: "[ngForBsTrackBy]", inputs: ["ngForOf", "ngForBsTrackBy"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
174
172
  }
175
173
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsPaginationComponent, decorators: [{
176
174
  type: Component,
177
- args: [{ selector: 'bs-pagination', template: "<ul class=\"pagination\">\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onPrevious()\" [class.disabled]=\"isFirstPage$ | async\" aria-label=\"Previous\">\n <span aria-hidden=\"true\">&laquo;</span>\n <span class=\"visually-hidden\">Previous</span>\n </a>\n </li>\n <li *ngFor=\"let pageNumber of (shownPageNumbers$ | async); trackBy: trackByPageNumber\" class=\"page-item\">\n <a class=\"page-link\" href=\"\" (click)=\"onSelectPage($event, pageNumber.page)\"\n [ngClass]=\"{ 'active': pageNumber.selected }\" *ngIf=\"pageNumber.page != '...'\">\n {{ pageNumber.page }}\n <span class=\"visually-hidden\" *ngIf=\"pageNumber.selected\">(current)</span>\n </a>\n </li>\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onNext()\" [class.disabled]=\"isLastPage$ | async\" aria-label=\"Next\">\n <span aria-hidden=\"true\">&raquo;</span>\n <span class=\"visually-hidden\">Next</span>\n </a>\n </li>\n</ul>", styles: [":host ::ng-deep .pagination{--bs-pagination-padding-x: .75rem;--bs-pagination-padding-y: .375rem;--bs-pagination-font-size: 1rem;--bs-pagination-color: var(--bs-link-color);--bs-pagination-bg: var(--bs-body-bg);--bs-pagination-border-width: var(--bs-border-width);--bs-pagination-border-color: var(--bs-border-color);--bs-pagination-border-radius: var(--bs-border-radius);--bs-pagination-hover-color: var(--bs-link-hover-color);--bs-pagination-hover-bg: var(--bs-tertiary-bg);--bs-pagination-hover-border-color: var(--bs-border-color);--bs-pagination-focus-color: var(--bs-link-hover-color);--bs-pagination-focus-bg: var(--bs-secondary-bg);--bs-pagination-focus-box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);--bs-pagination-active-color: #fff;--bs-pagination-active-bg: #0d6efd;--bs-pagination-active-border-color: #0d6efd;--bs-pagination-disabled-color: var(--bs-secondary-color);--bs-pagination-disabled-bg: var(--bs-secondary-bg);--bs-pagination-disabled-border-color: var(--bs-border-color);display:flex;padding-left:0;list-style:none}:host ::ng-deep .page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);text-decoration:none;background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion: reduce){:host ::ng-deep .page-link{transition:none}}:host ::ng-deep .page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}:host ::ng-deep .page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}:host ::ng-deep .page-link.active,.active>:host ::ng-deep .page-link{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}:host ::ng-deep .page-link.disabled,.disabled>:host ::ng-deep .page-link{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}:host ::ng-deep .page-item:not(:first-child) .page-link{margin-left:calc(var(--bs-border-width) * -1)}:host ::ng-deep .page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}:host ::ng-deep .page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}:host ::ng-deep .pagination-lg{--bs-pagination-padding-x: 1.5rem;--bs-pagination-padding-y: .75rem;--bs-pagination-font-size: 1.25rem;--bs-pagination-border-radius: var(--bs-border-radius-lg)}:host ::ng-deep .pagination-sm{--bs-pagination-padding-x: .5rem;--bs-pagination-padding-y: .25rem;--bs-pagination-font-size: .875rem;--bs-pagination-border-radius: var(--bs-border-radius-sm)}:host{display:inline-block}\n"] }]
175
+ args: [{ selector: 'bs-pagination', template: "<ul class=\"pagination\">\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onPrevious()\" [class.disabled]=\"isFirstPage$ | async\" aria-label=\"Previous\">\n <span aria-hidden=\"true\">&laquo;</span>\n <span class=\"visually-hidden\">Previous</span>\n </a>\n </li>\n <li *ngFor=\"let pageNumber of (shownPageNumbers$ | async); bsTrackBy: 'page'\" class=\"page-item\">\n <a class=\"page-link\" href=\"\" (click)=\"onSelectPage($event, pageNumber.page)\"\n [ngClass]=\"{ 'active': pageNumber.selected }\" *ngIf=\"pageNumber.page != '...'\">\n {{ pageNumber.page }}\n <span class=\"visually-hidden\" *ngIf=\"pageNumber.selected\">(current)</span>\n </a>\n </li>\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onNext()\" [class.disabled]=\"isLastPage$ | async\" aria-label=\"Next\">\n <span aria-hidden=\"true\">&raquo;</span>\n <span class=\"visually-hidden\">Next</span>\n </a>\n </li>\n</ul>", styles: [":host ::ng-deep .pagination{--bs-pagination-padding-x: .75rem;--bs-pagination-padding-y: .375rem;--bs-pagination-font-size: 1rem;--bs-pagination-color: var(--bs-link-color);--bs-pagination-bg: var(--bs-body-bg);--bs-pagination-border-width: var(--bs-border-width);--bs-pagination-border-color: var(--bs-border-color);--bs-pagination-border-radius: var(--bs-border-radius);--bs-pagination-hover-color: var(--bs-link-hover-color);--bs-pagination-hover-bg: var(--bs-tertiary-bg);--bs-pagination-hover-border-color: var(--bs-border-color);--bs-pagination-focus-color: var(--bs-link-hover-color);--bs-pagination-focus-bg: var(--bs-secondary-bg);--bs-pagination-focus-box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);--bs-pagination-active-color: #fff;--bs-pagination-active-bg: #0d6efd;--bs-pagination-active-border-color: #0d6efd;--bs-pagination-disabled-color: var(--bs-secondary-color);--bs-pagination-disabled-bg: var(--bs-secondary-bg);--bs-pagination-disabled-border-color: var(--bs-border-color);display:flex;padding-left:0;list-style:none}:host ::ng-deep .page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);text-decoration:none;background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion: reduce){:host ::ng-deep .page-link{transition:none}}:host ::ng-deep .page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}:host ::ng-deep .page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}:host ::ng-deep .page-link.active,.active>:host ::ng-deep .page-link{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}:host ::ng-deep .page-link.disabled,.disabled>:host ::ng-deep .page-link{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}:host ::ng-deep .page-item:not(:first-child) .page-link{margin-left:calc(var(--bs-border-width) * -1)}:host ::ng-deep .page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}:host ::ng-deep .page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}:host ::ng-deep .pagination-lg{--bs-pagination-padding-x: 1.5rem;--bs-pagination-padding-y: .75rem;--bs-pagination-font-size: 1.25rem;--bs-pagination-border-radius: var(--bs-border-radius-lg)}:host ::ng-deep .pagination-sm{--bs-pagination-padding-x: .5rem;--bs-pagination-padding-y: .25rem;--bs-pagination-font-size: .875rem;--bs-pagination-border-radius: var(--bs-border-radius-sm)}:host{display:inline-block}\n"] }]
178
176
  }], ctorParameters: function () { return []; }, propDecorators: { selectedPageNumberChange: [{
179
177
  type: Output
180
178
  }], selectedPageNumber: [{
@@ -188,4 +186,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImpor
188
186
  }], size: [{
189
187
  type: Input
190
188
  }] } });
191
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3BhZ2luYXRpb24vc3JjL2NvbXBvbmVudC9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9wYWdpbmF0aW9uL3NyYy9jb21wb25lbnQvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFaEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFjLE1BQU0sTUFBTSxDQUFDOzs7QUFRdkUsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQztRQWdHQSx3QkFBd0I7UUFDeEIsaUJBQVksR0FBRyxJQUFJLGVBQWUsQ0FBVyxFQUFFLENBQUMsQ0FBQztRQUdqRCx1QkFBdUI7UUFDdkIsd0JBQW1CLEdBQUcsSUFBSSxlQUFlLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFDckQsdUJBQXVCO1FBQ3ZCLG1CQUFjLEdBQUcsSUFBSSxlQUFlLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFDaEQsb0NBQW9DO1FBQ3BDLGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQVUsSUFBSSxDQUFDLENBQUM7UUFDakQsd0JBQXdCO1FBQ3hCLFVBQUssR0FBRyxJQUFJLGVBQWUsQ0FBTyxRQUFRLENBQUMsQ0FBQztRQWE1Qyw0QkFBNEI7UUFDWCw2QkFBd0IsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBeEhyRSxJQUFJLENB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QUM7SUFFRCxNQUFNO1FBQ0osTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDaEUsSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFO1lBQ2IsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDOUU7YUFBTSxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDOUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQzVEO2FBQU07WUFDTCxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUM5RTtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELGlCQUFpQixDQUFDLEtBQWEsRUFBRSxJQUF1QjtRQUN0RCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7OEdBck1VLHFCQUFxQjtrR0FBckIscUJBQXFCLGtSQ1hsQyx5bkNBb0JLOzsyRkRUUSxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0UsZUFBZTswRUE4SFIsd0JBQXdCO3NCQUF4QyxNQUFNO2dCQUNNLGtCQUFrQjtzQkFBOUIsS0FBSztnQkFTTyxhQUFhO3NCQUF6QixLQUFLO2dCQVNPLFdBQVc7c0JBQXZCLEtBQUs7Z0JBU08sVUFBVTtzQkFBdEIsS0FBSztnQkFTTyxJQUFJO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IFNpemUgfSBmcm9tICdAbWludHBsYXllci9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFBhZ2VXaXRoU2VsZWN0aW9uIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9wYWdlLXdpdGgtc2VsZWN0aW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYnMtcGFnaW5hdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcGFnaW5hdGlvbi5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBCc1BhZ2luYXRpb25Db21wb25lbnQge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLnZpc2libGVOdW1iZXJPZk51bWJlckJveGVzJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy5udW1iZXJPZkJveGVzJCxcbiAgICAgIHRoaXMucGFnZU51bWJlcnMkLFxuICAgICAgdGhpcy5zaG93QXJyb3dzJCxcbiAgICBdKVxuICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChbbnVtYmVyT2ZCb3hlcywgcGFnZU51bWJlcnMsIHNob3dBcnJvd3NdKSA9PiB7XG4gICAgICAgICAgaWYgKG51bWJlck9mQm94ZXMgPD0gMCkge1xuICAgICAgICAgICAgcmV0dXJuIHBhZ2VOdW1iZXJzLmxlbmd0aDtcbiAgICAgICAgICB9IGVsc2UgaWYgKCFzaG93QXJyb3dzKSB7XG4gICAgICAgICAgICByZXR1cm4gTWF0aC5taW4obnVtYmVyT2ZCb3hlcywgcGFnZU51bWJlcnMubGVuZ3RoKTtcbiAgICAgICAgICB9IGVsc2UgaWYgKG51bWJlck9mQm94ZXMgPD0gMikge1xuICAgICAgICAgICAgcmV0dXJuIE1hdGgubWluKDEsIHBhZ2VOdW1iZXJzLmxlbmd0aCk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBNYXRoLm1pbihudW1iZXJPZkJveGVzIC0gMiwgcGFnZU51bWJlcnMubGVuZ3RoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICApO1xuXG4gICAgdGhpcy5pc0xlZnRPdmVyZmxvdyQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLnBhZ2VOdW1iZXJzJCwgdGhpcy5zZWxlY3RlZFBhZ2VOdW1iZXIkLCB0aGlzLnZpc2libGVOdW1iZXJPZk51bWJlckJveGVzJF0pXG4gICAgICAucGlwZShtYXAoKFtwYWdlTnVtYmVycywgc2VsZWN0ZWRQYWdlTnVtYmVyLCB2aXNpYmxlTnVtYmVyT2ZOdW1iZXJCb3hlc10pID0+IHtcbiAgICAgICAgY29uc3QgaW5kZXggPSBwYWdlTnVtYmVycy5pbmRleE9mKHNlbGVjdGVkUGFnZU51bWJlcik7XG4gICAgICAgIGNvbnN0IG1pZGRsZSA9IE1hdGguZmxvb3IodmlzaWJsZU51bWJlck9mTnVtYmVyQm94ZXMgLyAyKTtcbiAgICAgICAgcmV0dXJuIGluZGV4ID4gbWlkZGxlO1xuICAgICAgfSkpO1xuXG4gICAgdGhpcy5pc1JpZ2h0T3ZlcmZsb3ckID0gY29tYmluZUxhdGVzdChbdGhpcy5wYWdlTnVtYmVycyQsIHRoaXMuc2VsZWN0ZWRQYWdlTnVtYmVyJCwgdGhpcy52aXNpYmxlTnVtYmVyT2ZOdW1iZXJCb3hlcyRdKVxuICAgICAgLnBpcGUobWFwKChbcGFnZU51bWJlcnMsIHNlbGVjdGVkUGFnZU51bWJlciwgdmlzaWJsZU51bWJlck9mTnVtYmVyQm94ZXNdKSA9PiB7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gcGFnZU51bWJlcnMuaW5kZXhPZihzZWxlY3RlZFBhZ2VOdW1iZXIpO1xuICAgICAgICBjb25zdCBtaWRkbGUgPSBNYXRoLmZsb29yKHZpc2libGVOdW1iZXJPZk51bWJlckJveGVzIC8gMik7XG4gICAgICAgIHJldHVybiAocGFnZU51bWJlcnMubGVuZ3RoIC0gaW5kZXgpIDwgbWlkZGxlO1xuICAgICAgfSkpO1xuXG4gICAgdGhpcy5zaG93blBhZ2VOdW1iZXJzJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy5wYWdlTnVtYmVycyQsXG4gICAgICB0aGlzLnNlbGVjdGVkUGFnZU51bWJlciQsXG4gICAgICB0aGlzLnZpc2libGVOdW1iZXJPZk51bWJlckJveGVzJCxcbiAgICAgIHRoaXMuaXNMZWZ0T3ZlcmZsb3ckLFxuICAgICAgdGhpcy5pc1JpZ2h0T3ZlcmZsb3ckXG4gICAgXSlcbiAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCgpKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoW3BhZ2VOdW1iZXJzLCBzZWxlY3RlZFBhZ2VOdW1iZXIsIHZpc2libGVOdW1iZXJPZk51bWJlckJveGVzLCBpc0xlZnRPdmVyZmxvdywgaXNSaWdodE92ZXJmbG93XSkgPT4ge1xuICAgICAgICAgIC8vIGNvbnN0IGJveGVzVG9SZW1vdmUgPSBwYWdlTnVtYmVycy5sZW5ndGggLSB2aXNpYmxlTnVtYmVyT2ZOdW1iZXJCb3hlc1xuICAgICAgICAgIC8vICAgKyAoaXNMZWZ0T3ZlcmZsb3cgPyAxIDogMClcbiAgICAgICAgICAvLyAgICsgKGlzUmlnaHRPdmVyZmxvdyA/IDEgOiAwKTtcblxuICAgICAgICAgIC8vIGxldCByZXN1bHQ6IG51bWJlcltdID0gW107XG4gICAgICAgICAgLy8gcmVzdWx0LnB1c2gocGFnZU51bWJlcnNbMF0pO1xuXG4gICAgICAgICAgLy8gLy8gLi4uXG5cbiAgICAgICAgICAvLyByZXN1bHQucHVzaChwYWdlTnVtYmVyc1twYWdlTnVtYmVycy5sZW5ndGggLSAxXSk7XG5cbiAgICAgICAgICBsZXQgc3RhcnRJbmRleCA9IDA7XG4gICAgICAgICAgY29uc3QgaGFsZiA9IE1hdGgucm91bmQoKHZpc2libGVOdW1iZXJPZk51bWJlckJveGVzIC0gMSkgLyAyKTtcbiAgICAgICAgICBpZiAocGFnZU51bWJlcnMuaW5kZXhPZihzZWxlY3RlZFBhZ2VOdW1iZXIpIDwgaGFsZikge1xuICAgICAgICAgICAgc3RhcnRJbmRleCA9IDA7XG4gICAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAgIHBhZ2VOdW1iZXJzLmluZGV4T2Yoc2VsZWN0ZWRQYWdlTnVtYmVyKSA+PVxuICAgICAgICAgICAgcGFnZU51bWJlcnMubGVuZ3RoIC0gaGFsZlxuICAgICAgICAgICkge1xuICAgICAgICAgICAgc3RhcnRJbmRleCA9IHBhZ2VOdW1iZXJzLmxlbmd0aCAtIHZpc2libGVOdW1iZXJPZk51bWJlckJveGVzO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdGFydEluZGV4ID0gcGFnZU51bWJlcnMuaW5kZXhPZihzZWxlY3RlZFBhZ2VOdW1iZXIpIC0gaGFsZjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gWy4uLkFycmF5KHZpc2libGVOdW1iZXJPZk51bWJlckJveGVzKS5rZXlzKCldXG4gICAgICAgICAgICAubWFwKChwKSA9PiBwICsgc3RhcnRJbmRleClcbiAgICAgICAgICAgIC5tYXAoKHApID0+PFBhZ2VXaXRoU2VsZWN0aW9uPntcbiAgICAgICAgICAgICAgcGFnZTogcGFnZU51bWJlcnNbcF0sXG4gICAgICAgICAgICAgIHNlbGVjdGVkOiBwYWdlTnVtYmVyc1twXSA9PT0gc2VsZWN0ZWRQYWdlTnVtYmVyLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pXG4gICAgICApO1xuXG4gICAgdGhpcy5pc0ZpcnN0UGFnZSQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMucGFnZU51bWJlcnMkLFxuICAgICAgdGhpcy5zZWxlY3RlZFBhZ2VOdW1iZXIkLFxuICAgIF0pXG4gICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpXG4gICAgLnBpcGUobWFwKChbcGFnZU51bWJlcnMsIHNlbGVjdGVkUGFnZU51bWJlcl0pID0+IHBhZ2VOdW1iZXJzLmluZGV4T2Yoc2VsZWN0ZWRQYWdlTnVtYmVyKSA9PT0gMCkpO1xuXG4gICAgdGhpcy5pc0xhc3RQYWdlJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy5wYWdlTnVtYmVycyQsXG4gICAgICB0aGlzLnNlbGVjdGVkUGFnZU51bWJlciQsXG4gICAgXSlcbiAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCgpKVxuICAgICAgLnBpcGUobWFwKChbcGFnZU51bWJlcnMsIHNlbGVjdGVkUGFnZU51bWJlcl0pID0+IHBhZ2VOdW1iZXJzLmluZGV4T2Yoc2VsZWN0ZWRQYWdlTnVtYmVyKSA9PT0gcGFnZU51bWJlcnMubGVuZ3RoIC0gMSkpO1xuXG4gICAgdGhpcy5zZWxlY3RlZFBhZ2VOdW1iZXIkLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpXG4gICAgICAuc3Vic2NyaWJlKHNlbGVjdGVkUGFnZU51bWJlciA9PiB0aGlzLnNlbGVjdGVkUGFnZU51bWJlckNoYW5nZS5lbWl0KHNlbGVjdGVkUGFnZU51bWJlcikpO1xuICB9XG5cbiAgLyoqIEFsbCBwYWdlIG51bWJlcnMuICovXG4gIHBhZ2VOdW1iZXJzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyW10+KFtdKTtcbiAgLyoqIFBhZ2UgbnVtYmVycyB0byBiZSBkaXNwbGF5ZWQgdG8gdGhlIHVzZXIuICovXG4gIHNob3duUGFnZU51bWJlcnMkOiBPYnNlcnZhYmxlPFBhZ2VXaXRoU2VsZWN0aW9uW10+O1xuICAvKiogU2VsZWN0ZWQgbnVtYmVyLiAqL1xuICBzZWxlY3RlZFBhZ2VOdW1iZXIkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDEpO1xuICAvKiogTnVtYmVyIG9mIGJveGVzLiAqL1xuICBudW1iZXJPZkJveGVzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPigwKTtcbiAgLyoqIERpc3BsYXkgcHJldmlvdXMvbmV4dCBhcnJvd3MuICovXG4gIHNob3dBcnJvd3MkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKTtcbiAgLyoqIFBhZ2UgbnVtYmVyIHNpemUuICovXG4gIHNpemUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxTaXplPignbWVkaXVtJyk7XG5cbiAgLyoqIEluZGljYXRlcyBpZiBmaXJzdCB2YWx1ZSBpcyBzZWxlY3RlZC4gKi9cbiAgaXNGaXJzdFBhZ2UkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAvKiogSW5kaWNhdGVzIGlmIGxhc3QgdmFsdWUgaXMgc2VsZWN0ZWQuICovXG4gIGlzTGFzdFBhZ2UkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAvKiogVGhlIG51bWJlciBvZiBib3hlcyAoZXhjbHVkaW5nIGFycm93cykgdGhhdCdzIGJlaW5nIHNob3duIG9uIHRoZSBwYWdpbmF0aW9uIGNvbXBvbmVudC4gKi9cbiAgdmlzaWJsZU51bWJlck9mTnVtYmVyQm94ZXMkOiBPYnNlcnZhYmxlPG51bWJlcj47XG4gIC8qKiBJbmRpY2F0ZXMgd2hldGhlciB0aGVyZSBhcmUgdG9vIG1hbnkgbnVtYmVycyB0byB0aGUgbGVmdC1oYW5kIHNpZGUgb2YgdGhlIGN1cnJlbnQgcGFnZS4gKi9cbiAgaXNMZWZ0T3ZlcmZsb3ckOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAvKiogSW5kaWNhdGVzIHdoZXRoZXIgdGhlcmUgYXJlIHRvbyBtYW55IG51bWJlcnMgdG8gdGhlIHJpZ2h0LWhhbmQgc2lkZSBvZiB0aGUgY3VycmVudCBwYWdlLiAqL1xuICBpc1JpZ2h0T3ZlcmZsb3ckOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIC8vI3JlZ2lvbiBTZWxlY3RlZFBhZ2VOdW1iZXJcbiAgQE91dHB1dCgpIHB1YmxpYyBzZWxlY3RlZFBhZ2VOdW1iZXJDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcbiAgQElucHV0KCkgc2V0IHNlbGVjdGVkUGFnZU51bWJlcih2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5zZWxlY3RlZFBhZ2VOdW1iZXIkLm5leHQodmFsdWUpO1xuICB9XG4gIGdldCBzZWxlY3RlZFBhZ2VOdW1iZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRQYWdlTnVtYmVyJC52YWx1ZTtcbiAgfVxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gTnVtYmVyT2ZCb3hlc1xuICBASW5wdXQoKSBzZXQgbnVtYmVyT2ZCb3hlcyh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5udW1iZXJPZkJveGVzJC5uZXh0KHZhbHVlKTtcbiAgfVxuICBnZXQgbnVtYmVyT2ZCb3hlcygpIHtcbiAgICByZXR1cm4gdGhpcy5udW1iZXJPZkJveGVzJC52YWx1ZTtcbiAgfVxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gUGFnZU51bWJlcnNcbiAgQElucHV0KCkgc2V0IHBhZ2VOdW1iZXJzKHZhbHVlOiBudW1iZXJbXSkge1xuICAgIHRoaXMucGFnZU51bWJlcnMkLm5leHQodmFsdWUpO1xuICB9XG4gIGdldCBwYWdlTnVtYmVycygpIHtcbiAgICByZXR1cm4gdGhpcy5wYWdlTnVtYmVycyQudmFsdWU7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIFNob3dBcnJvd3NcbiAgQElucHV0KCkgc2V0IHNob3dBcnJvd3ModmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnNob3dBcnJvd3MkLm5leHQodmFsdWUpO1xuICB9XG4gIGdldCBzaG93QXJyb3dzKCkge1xuICAgIHJldHVybiB0aGlzLnNob3dBcnJvd3MkLnZhbHVlO1xuICB9XG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiBTaXplXG4gIEBJbnB1dCgpIHNldCBzaXplKHZhbHVlOiBTaXplKSB7XG4gICAgdGhpcy5zaXplJC5uZXh0KHZhbHVlKTtcbiAgfVxuICBnZXQgc2l6ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5zaXplJC52YWx1ZTtcbiAgfVxuICAvLyNlbmRyZWdpb25cblxuICBvblNlbGVjdFBhZ2UoZXZlbnQ6IE1vdXNlRXZlbnQsIHBhZ2U6IG51bWJlcikge1xuICAgIHRoaXMuc2VsZWN0ZWRQYWdlTnVtYmVyJC5uZXh0KHBhZ2UpO1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIG9uUHJldmlvdXMoKSB7XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLnBhZ2VOdW1iZXJzLmluZGV4T2YodGhpcy5zZWxlY3RlZFBhZ2VOdW1iZXIpO1xuICAgIGlmIChpbmRleCA+IDApIHtcbiAgICAgIGNvbnN0IG5ld1ZhbHVlID0gdGhpcy5wYWdlTnVtYmVyc1tpbmRleCAtIDFdO1xuICAgICAgdGhpcy5zZWxlY3RlZFBhZ2VOdW1iZXIkLm5leHQobmV3VmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbGVjdGVkUGFnZU51bWJlciQubmV4dCh0aGlzLnBhZ2VOdW1iZXJzWzBdKTtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgb25OZXh0KCkge1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5wYWdlTnVtYmVycy5pbmRleE9mKHRoaXMuc2VsZWN0ZWRQYWdlTnVtYmVyKTtcbiAgICBpZiAoaW5kZXggPCAwKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkUGFnZU51bWJlciQubmV4dCh0aGlzLnBhZ2VOdW1iZXJzW3RoaXMucGFnZU51bWJlcnMubGVuZ3RoIC0gMV0pO1xuICAgIH0gZWxzZSBpZiAoaW5kZXggPCB0aGlzLnBhZ2VOdW1iZXJzLmxlbmd0aCAtIDEpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRQYWdlTnVtYmVyJC5uZXh0KHRoaXMucGFnZU51bWJlcnNbaW5kZXggKyAxXSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRQYWdlTnVtYmVyJC5uZXh0KHRoaXMucGFnZU51bWJlcnNbdGhpcy5wYWdlTnVtYmVycy5sZW5ndGggLSAxXSk7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHRyYWNrQnlQYWdlTnVtYmVyKGluZGV4OiBudW1iZXIsIHBhZ2U6IFBhZ2VXaXRoU2VsZWN0aW9uKSB7XG4gICAgcmV0dXJuIHBhZ2U7XG4gIH1cbn1cbiIsIjx1bCBjbGFzcz1cInBhZ2luYXRpb25cIj5cbiAgICA8bGkgY2xhc3M9XCJwYWdlLWl0ZW1cIiAqbmdJZj1cInNob3dBcnJvd3MkIHwgYXN5bmNcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJwYWdlLWxpbmtcIiBocmVmPVwiXCIgKGNsaWNrKT1cIm9uUHJldmlvdXMoKVwiIFtjbGFzcy5kaXNhYmxlZF09XCJpc0ZpcnN0UGFnZSQgfCBhc3luY1wiIGFyaWEtbGFiZWw9XCJQcmV2aW91c1wiPlxuICAgICAgICAgICAgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+JmxhcXVvOzwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmlzdWFsbHktaGlkZGVuXCI+UHJldmlvdXM8L3NwYW4+XG4gICAgICAgIDwvYT5cbiAgICA8L2xpPlxuICAgIDxsaSAqbmdGb3I9XCJsZXQgcGFnZU51bWJlciBvZiAoc2hvd25QYWdlTnVtYmVycyQgfCBhc3luYyk7IHRyYWNrQnk6IHRyYWNrQnlQYWdlTnVtYmVyXCIgY2xhc3M9XCJwYWdlLWl0ZW1cIj5cbiAgICAgICAgPGEgY2xhc3M9XCJwYWdlLWxpbmtcIiBocmVmPVwiXCIgKGNsaWNrKT1cIm9uU2VsZWN0UGFnZSgkZXZlbnQsIHBhZ2VOdW1iZXIucGFnZSlcIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2FjdGl2ZSc6IHBhZ2VOdW1iZXIuc2VsZWN0ZWQgfVwiICpuZ0lmPVwicGFnZU51bWJlci5wYWdlICE9ICcuLi4nXCI+XG4gICAgICAgICAgICB7eyBwYWdlTnVtYmVyLnBhZ2UgfX1cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmlzdWFsbHktaGlkZGVuXCIgKm5nSWY9XCJwYWdlTnVtYmVyLnNlbGVjdGVkXCI+KGN1cnJlbnQpPC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgPC9saT5cbiAgICA8bGkgY2xhc3M9XCJwYWdlLWl0ZW1cIiAqbmdJZj1cInNob3dBcnJvd3MkIHwgYXN5bmNcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJwYWdlLWxpbmtcIiBocmVmPVwiXCIgKGNsaWNrKT1cIm9uTmV4dCgpXCIgW2NsYXNzLmRpc2FibGVkXT1cImlzTGFzdFBhZ2UkIHwgYXN5bmNcIiBhcmlhLWxhYmVsPVwiTmV4dFwiPlxuICAgICAgICAgICAgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+JnJhcXVvOzwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmlzdWFsbHktaGlkZGVuXCI+TmV4dDwvc3Bhbj5cbiAgICAgICAgPC9hPlxuICAgIDwvbGk+XG48L3VsPiJdfQ==
189
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3BhZ2luYXRpb24vc3JjL2NvbXBvbmVudC9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9wYWdpbmF0aW9uL3NyYy9jb21wb25lbnQvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFaEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFjLE1BQU0sTUFBTSxDQUFDOzs7O0FBUXZFLE1BQU0sT0FBTyxxQkFBcUI7SUFDaEM7UUFnR0Esd0JBQXdCO1FBQ3hCLGlCQUFZLEdBQUcsSUFBSSxlQUFlLENBQVcsRUFBRSxDQUFDLENBQUM7UUFHakQsdUJBQXVCO1FBQ3ZCLHdCQUFtQixHQUFHLElBQUksZUFBZSxDQUFTLENBQUMsQ0FBQyxDQUFDO1FBQ3JELHVCQUF1QjtRQUN2QixtQkFBYyxHQUFHLElBQUksZUFBZSxDQUFTLENBQUMsQ0FBQyxDQUFDO1FBQ2hELG9DQUFvQztRQUNwQyxnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFVLElBQUksQ0FBQyxDQUFDO1FBQ2pELHdCQUF3QjtRQUN4QixVQUFLLEdBQUcsSUFBSSxlQUFlLENBQU8sUUFBUSxDQUFDLENBQUM7UUFhNUMsNEJBQTRCO1FBQ1gsNkJBQXdCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQXhIckUsSUFBSSxD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QUFDO0lBRUQsTUFBTTtRQUNKLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ2hFLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRTtZQUNiLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQzlFO2FBQU0sSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQzlDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUM1RDthQUFNO1lBQ0wsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDOUU7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7OEdBak1VLHFCQUFxQjtrR0FBckIscUJBQXFCLGtSQ1hsQyxnbkNBb0JLOzsyRkRUUSxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0UsZUFBZTswRUE4SFIsd0JBQXdCO3NCQUF4QyxNQUFNO2dCQUNNLGtCQUFrQjtzQkFBOUIsS0FBSztnQkFTTyxhQUFhO3NCQUF6QixLQUFLO2dCQVNPLFdBQVc7c0JBQXZCLEtBQUs7Z0JBU08sVUFBVTtzQkFBdEIsS0FBSztnQkFTTyxJQUFJO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IFNpemUgfSBmcm9tICdAbWludHBsYXllci9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFBhZ2VXaXRoU2VsZWN0aW9uIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9wYWdlLXdpdGgtc2VsZWN0aW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYnMtcGFnaW5hdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcGFnaW5hdGlvbi5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBCc1BhZ2luYXRpb25Db21wb25lbnQge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLnZpc2libGVOdW1iZXJPZk51bWJlckJveGVzJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy5udW1iZXJPZkJveGVzJCxcbiAgICAgIHRoaXMucGFnZU51bWJlcnMkLFxuICAgICAgdGhpcy5zaG93QXJyb3dzJCxcbiAgICBdKVxuICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChbbnVtYmVyT2ZCb3hlcywgcGFnZU51bWJlcnMsIHNob3dBcnJvd3NdKSA9PiB7XG4gICAgICAgICAgaWYgKG51bWJlck9mQm94ZXMgPD0gMCkge1xuICAgICAgICAgICAgcmV0dXJuIHBhZ2VOdW1iZXJzLmxlbmd0aDtcbiAgICAgICAgICB9IGVsc2UgaWYgKCFzaG93QXJyb3dzKSB7XG4gICAgICAgICAgICByZXR1cm4gTWF0aC5taW4obnVtYmVyT2ZCb3hlcywgcGFnZU51bWJlcnMubGVuZ3RoKTtcbiAgICAgICAgICB9IGVsc2UgaWYgKG51bWJlck9mQm94ZXMgPD0gMikge1xuICAgICAgICAgICAgcmV0dXJuIE1hdGgubWluKDEsIHBhZ2VOdW1iZXJzLmxlbmd0aCk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBNYXRoLm1pbihudW1iZXJPZkJveGVzIC0gMiwgcGFnZU51bWJlcnMubGVuZ3RoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICApO1xuXG4gICAgdGhpcy5pc0xlZnRPdmVyZmxvdyQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLnBhZ2VOdW1iZXJzJCwgdGhpcy5zZWxlY3RlZFBhZ2VOdW1iZXIkLCB0aGlzLnZpc2libGVOdW1iZXJPZk51bWJlckJveGVzJF0pXG4gICAgICAucGlwZShtYXAoKFtwYWdlTnVtYmVycywgc2VsZWN0ZWRQYWdlTnVtYmVyLCB2aXNpYmxlTnVtYmVyT2ZOdW1iZXJCb3hlc10pID0+IHtcbiAgICAgICAgY29uc3QgaW5kZXggPSBwYWdlTnVtYmVycy5pbmRleE9mKHNlbGVjdGVkUGFnZU51bWJlcik7XG4gICAgICAgIGNvbnN0IG1pZGRsZSA9IE1hdGguZmxvb3IodmlzaWJsZU51bWJlck9mTnVtYmVyQm94ZXMgLyAyKTtcbiAgICAgICAgcmV0dXJuIGluZGV4ID4gbWlkZGxlO1xuICAgICAgfSkpO1xuXG4gICAgdGhpcy5pc1JpZ2h0T3ZlcmZsb3ckID0gY29tYmluZUxhdGVzdChbdGhpcy5wYWdlTnVtYmVycyQsIHRoaXMuc2VsZWN0ZWRQYWdlTnVtYmVyJCwgdGhpcy52aXNpYmxlTnVtYmVyT2ZOdW1iZXJCb3hlcyRdKVxuICAgICAgLnBpcGUobWFwKChbcGFnZU51bWJlcnMsIHNlbGVjdGVkUGFnZU51bWJlciwgdmlzaWJsZU51bWJlck9mTnVtYmVyQm94ZXNdKSA9PiB7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gcGFnZU51bWJlcnMuaW5kZXhPZihzZWxlY3RlZFBhZ2VOdW1iZXIpO1xuICAgICAgICBjb25zdCBtaWRkbGUgPSBNYXRoLmZsb29yKHZpc2libGVOdW1iZXJPZk51bWJlckJveGVzIC8gMik7XG4gICAgICAgIHJldHVybiAocGFnZU51bWJlcnMubGVuZ3RoIC0gaW5kZXgpIDwgbWlkZGxlO1xuICAgICAgfSkpO1xuXG4gICAgdGhpcy5zaG93blBhZ2VOdW1iZXJzJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy5wYWdlTnVtYmVycyQsXG4gICAgICB0aGlzLnNlbGVjdGVkUGFnZU51bWJlciQsXG4gICAgICB0aGlzLnZpc2libGVOdW1iZXJPZk51bWJlckJveGVzJCxcbiAgICAgIHRoaXMuaXNMZWZ0T3ZlcmZsb3ckLFxuICAgICAgdGhpcy5pc1JpZ2h0T3ZlcmZsb3ckXG4gICAgXSlcbiAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCgpKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoW3BhZ2VOdW1iZXJzLCBzZWxlY3RlZFBhZ2VOdW1iZXIsIHZpc2libGVOdW1iZXJPZk51bWJlckJveGVzLCBpc0xlZnRPdmVyZmxvdywgaXNSaWdodE92ZXJmbG93XSkgPT4ge1xuICAgICAgICAgIC8vIGNvbnN0IGJveGVzVG9SZW1vdmUgPSBwYWdlTnVtYmVycy5sZW5ndGggLSB2aXNpYmxlTnVtYmVyT2ZOdW1iZXJCb3hlc1xuICAgICAgICAgIC8vICAgKyAoaXNMZWZ0T3ZlcmZsb3cgPyAxIDogMClcbiAgICAgICAgICAvLyAgICsgKGlzUmlnaHRPdmVyZmxvdyA/IDEgOiAwKTtcblxuICAgICAgICAgIC8vIGxldCByZXN1bHQ6IG51bWJlcltdID0gW107XG4gICAgICAgICAgLy8gcmVzdWx0LnB1c2gocGFnZU51bWJlcnNbMF0pO1xuXG4gICAgICAgICAgLy8gLy8gLi4uXG5cbiAgICAgICAgICAvLyByZXN1bHQucHVzaChwYWdlTnVtYmVyc1twYWdlTnVtYmVycy5sZW5ndGggLSAxXSk7XG5cbiAgICAgICAgICBsZXQgc3RhcnRJbmRleCA9IDA7XG4gICAgICAgICAgY29uc3QgaGFsZiA9IE1hdGgucm91bmQoKHZpc2libGVOdW1iZXJPZk51bWJlckJveGVzIC0gMSkgLyAyKTtcbiAgICAgICAgICBpZiAocGFnZU51bWJlcnMuaW5kZXhPZihzZWxlY3RlZFBhZ2VOdW1iZXIpIDwgaGFsZikge1xuICAgICAgICAgICAgc3RhcnRJbmRleCA9IDA7XG4gICAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAgIHBhZ2VOdW1iZXJzLmluZGV4T2Yoc2VsZWN0ZWRQYWdlTnVtYmVyKSA+PVxuICAgICAgICAgICAgcGFnZU51bWJlcnMubGVuZ3RoIC0gaGFsZlxuICAgICAgICAgICkge1xuICAgICAgICAgICAgc3RhcnRJbmRleCA9IHBhZ2VOdW1iZXJzLmxlbmd0aCAtIHZpc2libGVOdW1iZXJPZk51bWJlckJveGVzO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdGFydEluZGV4ID0gcGFnZU51bWJlcnMuaW5kZXhPZihzZWxlY3RlZFBhZ2VOdW1iZXIpIC0gaGFsZjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gWy4uLkFycmF5KHZpc2libGVOdW1iZXJPZk51bWJlckJveGVzKS5rZXlzKCldXG4gICAgICAgICAgICAubWFwKChwKSA9PiBwICsgc3RhcnRJbmRleClcbiAgICAgICAgICAgIC5tYXAoKHApID0+PFBhZ2VXaXRoU2VsZWN0aW9uPntcbiAgICAgICAgICAgICAgcGFnZTogcGFnZU51bWJlcnNbcF0sXG4gICAgICAgICAgICAgIHNlbGVjdGVkOiBwYWdlTnVtYmVyc1twXSA9PT0gc2VsZWN0ZWRQYWdlTnVtYmVyLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pXG4gICAgICApO1xuXG4gICAgdGhpcy5pc0ZpcnN0UGFnZSQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMucGFnZU51bWJlcnMkLFxuICAgICAgdGhpcy5zZWxlY3RlZFBhZ2VOdW1iZXIkLFxuICAgIF0pXG4gICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpXG4gICAgLnBpcGUobWFwKChbcGFnZU51bWJlcnMsIHNlbGVjdGVkUGFnZU51bWJlcl0pID0+IHBhZ2VOdW1iZXJzLmluZGV4T2Yoc2VsZWN0ZWRQYWdlTnVtYmVyKSA9PT0gMCkpO1xuXG4gICAgdGhpcy5pc0xhc3RQYWdlJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy5wYWdlTnVtYmVycyQsXG4gICAgICB0aGlzLnNlbGVjdGVkUGFnZU51bWJlciQsXG4gICAgXSlcbiAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCgpKVxuICAgICAgLnBpcGUobWFwKChbcGFnZU51bWJlcnMsIHNlbGVjdGVkUGFnZU51bWJlcl0pID0+IHBhZ2VOdW1iZXJzLmluZGV4T2Yoc2VsZWN0ZWRQYWdlTnVtYmVyKSA9PT0gcGFnZU51bWJlcnMubGVuZ3RoIC0gMSkpO1xuXG4gICAgdGhpcy5zZWxlY3RlZFBhZ2VOdW1iZXIkLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpXG4gICAgICAuc3Vic2NyaWJlKHNlbGVjdGVkUGFnZU51bWJlciA9PiB0aGlzLnNlbGVjdGVkUGFnZU51bWJlckNoYW5nZS5lbWl0KHNlbGVjdGVkUGFnZU51bWJlcikpO1xuICB9XG5cbiAgLyoqIEFsbCBwYWdlIG51bWJlcnMuICovXG4gIHBhZ2VOdW1iZXJzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyW10+KFtdKTtcbiAgLyoqIFBhZ2UgbnVtYmVycyB0byBiZSBkaXNwbGF5ZWQgdG8gdGhlIHVzZXIuICovXG4gIHNob3duUGFnZU51bWJlcnMkOiBPYnNlcnZhYmxlPFBhZ2VXaXRoU2VsZWN0aW9uW10+O1xuICAvKiogU2VsZWN0ZWQgbnVtYmVyLiAqL1xuICBzZWxlY3RlZFBhZ2VOdW1iZXIkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDEpO1xuICAvKiogTnVtYmVyIG9mIGJveGVzLiAqL1xuICBudW1iZXJPZkJveGVzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPigwKTtcbiAgLyoqIERpc3BsYXkgcHJldmlvdXMvbmV4dCBhcnJvd3MuICovXG4gIHNob3dBcnJvd3MkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKTtcbiAgLyoqIFBhZ2UgbnVtYmVyIHNpemUuICovXG4gIHNpemUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxTaXplPignbWVkaXVtJyk7XG5cbiAgLyoqIEluZGljYXRlcyBpZiBmaXJzdCB2YWx1ZSBpcyBzZWxlY3RlZC4gKi9cbiAgaXNGaXJzdFBhZ2UkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAvKiogSW5kaWNhdGVzIGlmIGxhc3QgdmFsdWUgaXMgc2VsZWN0ZWQuICovXG4gIGlzTGFzdFBhZ2UkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAvKiogVGhlIG51bWJlciBvZiBib3hlcyAoZXhjbHVkaW5nIGFycm93cykgdGhhdCdzIGJlaW5nIHNob3duIG9uIHRoZSBwYWdpbmF0aW9uIGNvbXBvbmVudC4gKi9cbiAgdmlzaWJsZU51bWJlck9mTnVtYmVyQm94ZXMkOiBPYnNlcnZhYmxlPG51bWJlcj47XG4gIC8qKiBJbmRpY2F0ZXMgd2hldGhlciB0aGVyZSBhcmUgdG9vIG1hbnkgbnVtYmVycyB0byB0aGUgbGVmdC1oYW5kIHNpZGUgb2YgdGhlIGN1cnJlbnQgcGFnZS4gKi9cbiAgaXNMZWZ0T3ZlcmZsb3ckOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAvKiogSW5kaWNhdGVzIHdoZXRoZXIgdGhlcmUgYXJlIHRvbyBtYW55IG51bWJlcnMgdG8gdGhlIHJpZ2h0LWhhbmQgc2lkZSBvZiB0aGUgY3VycmVudCBwYWdlLiAqL1xuICBpc1JpZ2h0T3ZlcmZsb3ckOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIC8vI3JlZ2lvbiBTZWxlY3RlZFBhZ2VOdW1iZXJcbiAgQE91dHB1dCgpIHB1YmxpYyBzZWxlY3RlZFBhZ2VOdW1iZXJDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcbiAgQElucHV0KCkgc2V0IHNlbGVjdGVkUGFnZU51bWJlcih2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5zZWxlY3RlZFBhZ2VOdW1iZXIkLm5leHQodmFsdWUpO1xuICB9XG4gIGdldCBzZWxlY3RlZFBhZ2VOdW1iZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRQYWdlTnVtYmVyJC52YWx1ZTtcbiAgfVxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gTnVtYmVyT2ZCb3hlc1xuICBASW5wdXQoKSBzZXQgbnVtYmVyT2ZCb3hlcyh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5udW1iZXJPZkJveGVzJC5uZXh0KHZhbHVlKTtcbiAgfVxuICBnZXQgbnVtYmVyT2ZCb3hlcygpIHtcbiAgICByZXR1cm4gdGhpcy5udW1iZXJPZkJveGVzJC52YWx1ZTtcbiAgfVxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gUGFnZU51bWJlcnNcbiAgQElucHV0KCkgc2V0IHBhZ2VOdW1iZXJzKHZhbHVlOiBudW1iZXJbXSkge1xuICAgIHRoaXMucGFnZU51bWJlcnMkLm5leHQodmFsdWUpO1xuICB9XG4gIGdldCBwYWdlTnVtYmVycygpIHtcbiAgICByZXR1cm4gdGhpcy5wYWdlTnVtYmVycyQudmFsdWU7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIFNob3dBcnJvd3NcbiAgQElucHV0KCkgc2V0IHNob3dBcnJvd3ModmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnNob3dBcnJvd3MkLm5leHQodmFsdWUpO1xuICB9XG4gIGdldCBzaG93QXJyb3dzKCkge1xuICAgIHJldHVybiB0aGlzLnNob3dBcnJvd3MkLnZhbHVlO1xuICB9XG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiBTaXplXG4gIEBJbnB1dCgpIHNldCBzaXplKHZhbHVlOiBTaXplKSB7XG4gICAgdGhpcy5zaXplJC5uZXh0KHZhbHVlKTtcbiAgfVxuICBnZXQgc2l6ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5zaXplJC52YWx1ZTtcbiAgfVxuICAvLyNlbmRyZWdpb25cblxuICBvblNlbGVjdFBhZ2UoZXZlbnQ6IE1vdXNlRXZlbnQsIHBhZ2U6IG51bWJlcikge1xuICAgIHRoaXMuc2VsZWN0ZWRQYWdlTnVtYmVyJC5uZXh0KHBhZ2UpO1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIG9uUHJldmlvdXMoKSB7XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLnBhZ2VOdW1iZXJzLmluZGV4T2YodGhpcy5zZWxlY3RlZFBhZ2VOdW1iZXIpO1xuICAgIGlmIChpbmRleCA+IDApIHtcbiAgICAgIGNvbnN0IG5ld1ZhbHVlID0gdGhpcy5wYWdlTnVtYmVyc1tpbmRleCAtIDFdO1xuICAgICAgdGhpcy5zZWxlY3RlZFBhZ2VOdW1iZXIkLm5leHQobmV3VmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbGVjdGVkUGFnZU51bWJlciQubmV4dCh0aGlzLnBhZ2VOdW1iZXJzWzBdKTtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgb25OZXh0KCkge1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5wYWdlTnVtYmVycy5pbmRleE9mKHRoaXMuc2VsZWN0ZWRQYWdlTnVtYmVyKTtcbiAgICBpZiAoaW5kZXggPCAwKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkUGFnZU51bWJlciQubmV4dCh0aGlzLnBhZ2VOdW1iZXJzW3RoaXMucGFnZU51bWJlcnMubGVuZ3RoIC0gMV0pO1xuICAgIH0gZWxzZSBpZiAoaW5kZXggPCB0aGlzLnBhZ2VOdW1iZXJzLmxlbmd0aCAtIDEpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRQYWdlTnVtYmVyJC5uZXh0KHRoaXMucGFnZU51bWJlcnNbaW5kZXggKyAxXSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRQYWdlTnVtYmVyJC5uZXh0KHRoaXMucGFnZU51bWJlcnNbdGhpcy5wYWdlTnVtYmVycy5sZW5ndGggLSAxXSk7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuIiwiPHVsIGNsYXNzPVwicGFnaW5hdGlvblwiPlxuICAgIDxsaSBjbGFzcz1cInBhZ2UtaXRlbVwiICpuZ0lmPVwic2hvd0Fycm93cyQgfCBhc3luY1wiPlxuICAgICAgICA8YSBjbGFzcz1cInBhZ2UtbGlua1wiIGhyZWY9XCJcIiAoY2xpY2spPVwib25QcmV2aW91cygpXCIgW2NsYXNzLmRpc2FibGVkXT1cImlzRmlyc3RQYWdlJCB8IGFzeW5jXCIgYXJpYS1sYWJlbD1cIlByZXZpb3VzXCI+XG4gICAgICAgICAgICA8c3BhbiBhcmlhLWhpZGRlbj1cInRydWVcIj4mbGFxdW87PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2aXN1YWxseS1oaWRkZW5cIj5QcmV2aW91czwvc3Bhbj5cbiAgICAgICAgPC9hPlxuICAgIDwvbGk+XG4gICAgPGxpICpuZ0Zvcj1cImxldCBwYWdlTnVtYmVyIG9mIChzaG93blBhZ2VOdW1iZXJzJCB8IGFzeW5jKTsgYnNUcmFja0J5OiAncGFnZSdcIiBjbGFzcz1cInBhZ2UtaXRlbVwiPlxuICAgICAgICA8YSBjbGFzcz1cInBhZ2UtbGlua1wiIGhyZWY9XCJcIiAoY2xpY2spPVwib25TZWxlY3RQYWdlKCRldmVudCwgcGFnZU51bWJlci5wYWdlKVwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwieyAnYWN0aXZlJzogcGFnZU51bWJlci5zZWxlY3RlZCB9XCIgKm5nSWY9XCJwYWdlTnVtYmVyLnBhZ2UgIT0gJy4uLidcIj5cbiAgICAgICAgICAgIHt7IHBhZ2VOdW1iZXIucGFnZSB9fVxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2aXN1YWxseS1oaWRkZW5cIiAqbmdJZj1cInBhZ2VOdW1iZXIuc2VsZWN0ZWRcIj4oY3VycmVudCk8L3NwYW4+XG4gICAgICAgIDwvYT5cbiAgICA8L2xpPlxuICAgIDxsaSBjbGFzcz1cInBhZ2UtaXRlbVwiICpuZ0lmPVwic2hvd0Fycm93cyQgfCBhc3luY1wiPlxuICAgICAgICA8YSBjbGFzcz1cInBhZ2UtbGlua1wiIGhyZWY9XCJcIiAoY2xpY2spPVwib25OZXh0KClcIiBbY2xhc3MuZGlzYWJsZWRdPVwiaXNMYXN0UGFnZSQgfCBhc3luY1wiIGFyaWEtbGFiZWw9XCJOZXh0XCI+XG4gICAgICAgICAgICA8c3BhbiBhcmlhLWhpZGRlbj1cInRydWVcIj4mcmFxdW87PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2aXN1YWxseS1oaWRkZW5cIj5OZXh0PC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgPC9saT5cbjwvdWw+Il19
@@ -1,11 +1,14 @@
1
1
  import { NgModule } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
+ import { BsTrackByModule } from '@mintplayer/ng-bootstrap/track-by';
3
4
  import { BsPaginationComponent } from './component/pagination/pagination.component';
4
5
  import * as i0 from "@angular/core";
5
6
  export class BsPaginationModule {
6
7
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsPaginationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.2", ngImport: i0, type: BsPaginationModule, declarations: [BsPaginationComponent], imports: [CommonModule], exports: [BsPaginationComponent] }); }
8
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsPaginationModule, imports: [CommonModule] }); }
8
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.2", ngImport: i0, type: BsPaginationModule, declarations: [BsPaginationComponent], imports: [CommonModule,
9
+ BsTrackByModule], exports: [BsPaginationComponent] }); }
10
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsPaginationModule, imports: [CommonModule,
11
+ BsTrackByModule] }); }
9
12
  }
10
13
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsPaginationModule, decorators: [{
11
14
  type: NgModule,
@@ -14,11 +17,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImpor
14
17
  BsPaginationComponent
15
18
  ],
16
19
  imports: [
17
- CommonModule
20
+ CommonModule,
21
+ BsTrackByModule
18
22
  ],
19
23
  exports: [
20
24
  BsPaginationComponent
21
25
  ]
22
26
  }]
23
27
  }] });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3BhZ2luYXRpb24vc3JjL3BhZ2luYXRpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDOztBQWVwRixNQUFNLE9BQU8sa0JBQWtCOzhHQUFsQixrQkFBa0I7K0dBQWxCLGtCQUFrQixpQkFUM0IscUJBQXFCLGFBR3JCLFlBQVksYUFHWixxQkFBcUI7K0dBR1osa0JBQWtCLFlBTjNCLFlBQVk7OzJGQU1ILGtCQUFrQjtrQkFYOUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1oscUJBQXFCO3FCQUN0QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTtxQkFDYjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AscUJBQXFCO3FCQUN0QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQnNQYWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnQvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudCc7XG5cblxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBCc1BhZ2luYXRpb25Db21wb25lbnRcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgQnNQYWdpbmF0aW9uQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQnNQYWdpbmF0aW9uTW9kdWxlIHsgfVxuIl19
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3BhZ2luYXRpb24vc3JjL3BhZ2luYXRpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQzs7QUFnQnBGLE1BQU0sT0FBTyxrQkFBa0I7OEdBQWxCLGtCQUFrQjsrR0FBbEIsa0JBQWtCLGlCQVYzQixxQkFBcUIsYUFHckIsWUFBWTtZQUNaLGVBQWUsYUFHZixxQkFBcUI7K0dBR1osa0JBQWtCLFlBUDNCLFlBQVk7WUFDWixlQUFlOzsyRkFNTixrQkFBa0I7a0JBWjlCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLHFCQUFxQjtxQkFDdEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osZUFBZTtxQkFDaEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHFCQUFxQjtxQkFDdEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJzVHJhY2tCeU1vZHVsZSB9IGZyb20gJ0BtaW50cGxheWVyL25nLWJvb3RzdHJhcC90cmFjay1ieSc7XG5pbXBvcnQgeyBCc1BhZ2luYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudC9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50JztcblxuXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEJzUGFnaW5hdGlvbkNvbXBvbmVudFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEJzVHJhY2tCeU1vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgQnNQYWdpbmF0aW9uQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQnNQYWdpbmF0aW9uTW9kdWxlIHsgfVxuIl19
@@ -0,0 +1,3 @@
1
+ export * from './src/track-by.directive';
2
+ export * from './src/track-by.module';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3RyYWNrLWJ5L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3JjL3RyYWNrLWJ5LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy90cmFjay1ieS5tb2R1bGUnO1xuIl19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWludHBsYXllci1uZy1ib290c3RyYXAtdHJhY2stYnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3RyYWNrLWJ5L21pbnRwbGF5ZXItbmctYm9vdHN0cmFwLXRyYWNrLWJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -0,0 +1,28 @@
1
+ import { NgForOf } from '@angular/common';
2
+ import { Directive, Input, Self } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ export class BsTrackByDirective {
6
+ constructor(ngFor) {
7
+ this.ngFor = ngFor;
8
+ }
9
+ set bsTrackBy(ngForTrackBy) {
10
+ this.ngFor.ngForTrackBy = (index, item) => item[ngForTrackBy];
11
+ }
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsTrackByDirective, deps: [{ token: i1.NgForOf, self: true }], target: i0.ɵɵFactoryTarget.Directive }); }
13
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.2", type: BsTrackByDirective, selector: "[ngForBsTrackBy]", inputs: { ngForOf: "ngForOf", bsTrackBy: ["ngForBsTrackBy", "bsTrackBy"] }, ngImport: i0 }); }
14
+ }
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsTrackByDirective, decorators: [{
16
+ type: Directive,
17
+ args: [{
18
+ selector: '[ngForBsTrackBy]',
19
+ }]
20
+ }], ctorParameters: function () { return [{ type: i1.NgForOf, decorators: [{
21
+ type: Self
22
+ }] }]; }, propDecorators: { ngForOf: [{
23
+ type: Input
24
+ }], bsTrackBy: [{
25
+ type: Input,
26
+ args: ['ngForBsTrackBy']
27
+ }] } });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2stYnkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC90cmFjay1ieS9zcmMvdHJhY2stYnkuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYyxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUtuRSxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLFlBQTRCLEtBQWlCO1FBQWpCLFVBQUssR0FBTCxLQUFLLENBQVk7SUFBRyxDQUFDO0lBSWpELElBQTZCLFNBQVMsQ0FBQyxZQUFxQjtRQUMxRCxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxDQUFDLEtBQWEsRUFBRSxJQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUMzRSxDQUFDOzhHQVBVLGtCQUFrQjtrR0FBbEIsa0JBQWtCOzsyRkFBbEIsa0JBQWtCO2tCQUg5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrQkFBa0I7aUJBQzdCOzswQkFFYyxJQUFJOzRDQUVSLE9BQU87c0JBQWYsS0FBSztnQkFFdUIsU0FBUztzQkFBckMsS0FBSzt1QkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0Zvck9mIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIE5nSXRlcmFibGUsIFNlbGYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW25nRm9yQnNUcmFja0J5XScsXG59KVxuZXhwb3J0IGNsYXNzIEJzVHJhY2tCeURpcmVjdGl2ZTxUPiB7XG4gIGNvbnN0cnVjdG9yKEBTZWxmKCkgcHJpdmF0ZSBuZ0ZvcjogTmdGb3JPZjxUPikge31cblxuICBASW5wdXQoKSBuZ0Zvck9mITogTmdJdGVyYWJsZTxUPiB8IG51bGw7XG5cbiAgQElucHV0KCduZ0ZvckJzVHJhY2tCeScpIHNldCBic1RyYWNrQnkobmdGb3JUcmFja0J5OiBrZXlvZiBUKSB7XG4gICAgdGhpcy5uZ0Zvci5uZ0ZvclRyYWNrQnkgPSAoaW5kZXg6IG51bWJlciwgaXRlbTogVCkgPT4gaXRlbVtuZ0ZvclRyYWNrQnldO1xuICB9XG59XG5cbiJdfQ==
@@ -0,0 +1,18 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { BsTrackByDirective } from './track-by.directive';
4
+ import * as i0 from "@angular/core";
5
+ export class BsTrackByModule {
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsTrackByModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.2", ngImport: i0, type: BsTrackByModule, declarations: [BsTrackByDirective], imports: [CommonModule], exports: [BsTrackByDirective] }); }
8
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsTrackByModule, imports: [CommonModule] }); }
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsTrackByModule, decorators: [{
11
+ type: NgModule,
12
+ args: [{
13
+ declarations: [BsTrackByDirective],
14
+ imports: [CommonModule],
15
+ exports: [BsTrackByDirective],
16
+ }]
17
+ }] });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2stYnkubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC90cmFjay1ieS9zcmMvdHJhY2stYnkubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQU8xRCxNQUFNLE9BQU8sZUFBZTs4R0FBZixlQUFlOytHQUFmLGVBQWUsaUJBSlgsa0JBQWtCLGFBQ3ZCLFlBQVksYUFDWixrQkFBa0I7K0dBRWpCLGVBQWUsWUFIaEIsWUFBWTs7MkZBR1gsZUFBZTtrQkFMM0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztvQkFDbEMsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixPQUFPLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztpQkFDOUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJzVHJhY2tCeURpcmVjdGl2ZSB9IGZyb20gJy4vdHJhY2stYnkuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbQnNUcmFja0J5RGlyZWN0aXZlXSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGV4cG9ydHM6IFtCc1RyYWNrQnlEaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBCc1RyYWNrQnlNb2R1bGUge31cbiJdfQ==
@@ -19,7 +19,6 @@ class BsBadgeComponent {
19
19
  set type(value) {
20
20
  this.type$.next(value);
21
21
  }
22
- ngOnInit() { }
23
22
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsBadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
24
23
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: BsBadgeComponent, selector: "bs-badge", inputs: { type: "type" }, ngImport: i0, template: "<span class=\"badge\" [class]=\"colorClass$ | async\">\n <ng-content></ng-content>\n</span>", styles: [":host ::ng-deep .badge{--bs-badge-padding-x: .65em;--bs-badge-padding-y: .35em;--bs-badge-font-size: .75em;--bs-badge-font-weight: 700;--bs-badge-color: #fff;--bs-badge-border-radius: var(--bs-border-radius);display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--bs-badge-border-radius)}:host ::ng-deep .badge:empty{display:none}:host ::ng-deep .btn .badge{position:relative;top:-1px}\n"], dependencies: [{ kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
25
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mintplayer-ng-bootstrap-badge.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/badge/src/badge.component.ts","../../../../libs/mintplayer-ng-bootstrap/badge/src/badge.component.html","../../../../libs/mintplayer-ng-bootstrap/badge/src/badge.module.ts","../../../../libs/mintplayer-ng-bootstrap/badge/mintplayer-ng-bootstrap-badge.ts"],"sourcesContent":["import { Component, HostBinding, Input, OnInit } from '@angular/core';\nimport { BehaviorSubject, map, Observable } from 'rxjs';\nimport { Color } from '@mintplayer/ng-bootstrap';\n\n@Component({\n selector: 'bs-badge',\n templateUrl: './badge.component.html',\n styleUrls: ['./badge.component.scss'],\n})\nexport class BsBadgeComponent implements OnInit {\n constructor() {\n this.colorClass$ = this.type$\n .pipe(map((type) => `bg-${this.colors[type]}`));\n }\n\n colors = Color;\n\n //#region Type\n type$ = new BehaviorSubject<Color>(Color.primary);\n public get type() {\n return this.type$.value;\n }\n @Input() public set type(value: Color) {\n this.type$.next(value);\n }\n //#endregion\n\n colorClass$: Observable<string>;\n\n ngOnInit(): void {}\n\n // @HostBinding('class.badge') badgeCls = true;\n // @HostBinding('class') get typeClass() {\n // return `bg-${this.colors[this.type]}`;\n // }\n}\n","<span class=\"badge\" [class]=\"colorClass$ | async\">\n <ng-content></ng-content>\n</span>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BsBadgeComponent } from './badge.component';\n\n@NgModule({\n declarations: [BsBadgeComponent],\n imports: [CommonModule],\n exports: [BsBadgeComponent],\n})\nexport class BsBadgeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MASa,gBAAgB,CAAA;AAC3B,IAAA,WAAA,GAAA;QAKA,IAAM,CAAA,MAAA,GAAG,KAAK,CAAC;;QAGf,IAAK,CAAA,KAAA,GAAG,IAAI,eAAe,CAAQ,KAAK,CAAC,OAAO,CAAC,CAAC;AAPhD,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK;AAC1B,aAAA,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAA,GAAA,EAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAE,CAAA,CAAC,CAAC,CAAC;KACnD;AAMD,IAAA,IAAW,IAAI,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;KACzB;IACD,IAAoB,IAAI,CAAC,KAAY,EAAA;AACnC,QAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACxB;AAKD,IAAA,QAAQ,MAAW;8GApBR,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,0ECT7B,gGAEO,EAAA,MAAA,EAAA,CAAA,qmBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FDOM,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAL5B,SAAS;+BACE,UAAU,EAAA,QAAA,EAAA,gGAAA,EAAA,MAAA,EAAA,CAAA,qmBAAA,CAAA,EAAA,CAAA;0EAiBA,IAAI,EAAA,CAAA;sBAAvB,KAAK;;;MEbK,aAAa,CAAA;8GAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAb,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,EAJT,YAAA,EAAA,CAAA,gBAAgB,CACrB,EAAA,OAAA,EAAA,CAAA,YAAY,aACZ,gBAAgB,CAAA,EAAA,CAAA,CAAA,EAAA;AAEf,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,YAHd,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAGX,aAAa,EAAA,UAAA,EAAA,CAAA;kBALzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,gBAAgB,CAAC;oBAChC,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,gBAAgB,CAAC;AAC5B,iBAAA,CAAA;;;ACRD;;AAEG;;;;"}
1
+ {"version":3,"file":"mintplayer-ng-bootstrap-badge.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/badge/src/badge.component.ts","../../../../libs/mintplayer-ng-bootstrap/badge/src/badge.component.html","../../../../libs/mintplayer-ng-bootstrap/badge/src/badge.module.ts","../../../../libs/mintplayer-ng-bootstrap/badge/mintplayer-ng-bootstrap-badge.ts"],"sourcesContent":["import { Component, Input } from '@angular/core';\nimport { BehaviorSubject, map, Observable } from 'rxjs';\nimport { Color } from '@mintplayer/ng-bootstrap';\n\n@Component({\n selector: 'bs-badge',\n templateUrl: './badge.component.html',\n styleUrls: ['./badge.component.scss'],\n})\nexport class BsBadgeComponent {\n constructor() {\n this.colorClass$ = this.type$\n .pipe(map((type) => `bg-${this.colors[type]}`));\n }\n\n colors = Color;\n\n //#region Type\n type$ = new BehaviorSubject<Color>(Color.primary);\n public get type() {\n return this.type$.value;\n }\n @Input() public set type(value: Color) {\n this.type$.next(value);\n }\n //#endregion\n\n colorClass$: Observable<string>;\n}\n","<span class=\"badge\" [class]=\"colorClass$ | async\">\n <ng-content></ng-content>\n</span>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BsBadgeComponent } from './badge.component';\n\n@NgModule({\n declarations: [BsBadgeComponent],\n imports: [CommonModule],\n exports: [BsBadgeComponent],\n})\nexport class BsBadgeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MASa,gBAAgB,CAAA;AAC3B,IAAA,WAAA,GAAA;QAKA,IAAM,CAAA,MAAA,GAAG,KAAK,CAAC;;QAGf,IAAK,CAAA,KAAA,GAAG,IAAI,eAAe,CAAQ,KAAK,CAAC,OAAO,CAAC,CAAC;AAPhD,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK;AAC1B,aAAA,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAA,GAAA,EAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAE,CAAA,CAAC,CAAC,CAAC;KACnD;AAMD,IAAA,IAAW,IAAI,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;KACzB;IACD,IAAoB,IAAI,CAAC,KAAY,EAAA;AACnC,QAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACxB;8GAfU,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,0ECT7B,gGAEO,EAAA,MAAA,EAAA,CAAA,qmBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FDOM,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAL5B,SAAS;+BACE,UAAU,EAAA,QAAA,EAAA,gGAAA,EAAA,MAAA,EAAA,CAAA,qmBAAA,CAAA,EAAA,CAAA;0EAiBA,IAAI,EAAA,CAAA;sBAAvB,KAAK;;;MEbK,aAAa,CAAA;8GAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAb,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,EAJT,YAAA,EAAA,CAAA,gBAAgB,CACrB,EAAA,OAAA,EAAA,CAAA,YAAY,aACZ,gBAAgB,CAAA,EAAA,CAAA,CAAA,EAAA;AAEf,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,YAHd,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAGX,aAAa,EAAA,UAAA,EAAA,CAAA;kBALzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,gBAAgB,CAAC;oBAChC,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,gBAAgB,CAAC;AAC5B,iBAAA,CAAA;;;ACRD;;AAEG;;;;"}
@@ -2,14 +2,16 @@ import * as i0 from '@angular/core';
2
2
  import { EventEmitter, Component, Output, Input, NgModule } from '@angular/core';
3
3
  import * as i2 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
- import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
6
- import { BehaviorSubject, map, filter, take } from 'rxjs';
7
- import * as i1 from '@mintplayer/ng-bootstrap/calendar-month';
8
- import { BsMonthNamePipeModule, BsWeekdayNameModule } from '@mintplayer/ng-bootstrap/calendar-month';
5
+ import * as i5 from '@mintplayer/ng-bootstrap/uc-first';
6
+ import { BsUcFirstModule } from '@mintplayer/ng-bootstrap/uc-first';
9
7
  import * as i3 from '@mintplayer/ng-bootstrap/icon';
10
8
  import { BsIconModule } from '@mintplayer/ng-bootstrap/icon';
11
- import * as i4 from '@mintplayer/ng-bootstrap/uc-first';
12
- import { BsUcFirstModule } from '@mintplayer/ng-bootstrap/uc-first';
9
+ import * as i1 from '@mintplayer/ng-bootstrap/calendar-month';
10
+ import { BsMonthNamePipeModule, BsWeekdayNameModule } from '@mintplayer/ng-bootstrap/calendar-month';
11
+ import * as i4 from '@mintplayer/ng-bootstrap/track-by';
12
+ import { BsTrackByModule } from '@mintplayer/ng-bootstrap/track-by';
13
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
14
+ import { BehaviorSubject, map, filter, take } from 'rxjs';
13
15
 
14
16
  class BsCalendarComponent {
15
17
  constructor(calendarMonthService) {
@@ -85,18 +87,12 @@ class BsCalendarComponent {
85
87
  this.selectedDate$.next(day.date);
86
88
  }
87
89
  }
88
- trackByWeekDay(index, item) {
89
- return item.long;
90
- }
91
- trackByWeek(index, item) {
92
- return item.number;
93
- }
94
90
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsCalendarComponent, deps: [{ token: i1.BsCalendarMonthService }], target: i0.ɵɵFactoryTarget.Component }); }
95
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: BsCalendarComponent, selector: "bs-calendar", inputs: { currentMonth: "currentMonth", selectedDate: "selectedDate" }, outputs: { currentMonthChange: "currentMonthChange", selectedDateChange: "selectedDateChange" }, ngImport: i0, template: "<table class=\"table w-auto mb-0\">\n <tr>\n <td>\n <button class=\"btn btn-default\" (click)=\"previousMonth()\">\n <bs-icon [icon]=\"'chevron-left'\" class=\"fw-bolder\"></bs-icon>\n </button>\n </td>\n <td colspan=\"6\" class=\"fw-bolder\">\n {{ currentMonth$ | async | monthName | bsUcFirst }}\n {{ (currentMonth$ | async)?.getFullYear() }}\n </td>\n <td>\n <button class=\"btn btn-default border-bottom-0\" (click)=\"nextMonth()\">\n <bs-icon [icon]=\"'chevron-right'\" class=\"fw-bolder\"></bs-icon>\n </button>\n </td>\n </tr>\n <tr>\n <th></th>\n <th *ngFor=\"let dayOfWeek of shownDays$ | async; trackBy: trackByWeekDay\" [title]=\"dayOfWeek.long\">\n {{ dayOfWeek.short }}\n </th>\n </tr>\n <tr *ngFor=\"let week of (weeks$ | async); trackBy: trackByWeek\">\n <th>\n {{ week.number }}\n </th>\n <td [class.selected]=\"day === null ? false : isSameDate(selectedDate$ | async, day.date)\" *ngFor=\"let day of week.days\" (click)=\"goto(day)\">\n <span *ngIf=\"day !== null\" [class.text-muted]=\"!day.isInMonth\">{{ day.dayOfMonth }}</span>\n </td>\n </tr>\n</table>", styles: [".text-muted{color:#9ea7af!important}table{border-collapse:collapse;border:1px solid var(--bs-border-color);background:#fff}table td,table th{width:40px;height:40px;text-align:center}table td span,table th span{cursor:pointer;white-space:nowrap}table td.selected{background-color:#0d6efd;color:#fff}table th{background-color:#f8f9fa}table tr{border-top:none}table tr:first-child>td{border-bottom:1px solid var(--bs-border-color)}table tr:nth-of-type(2)>th:not(:nth-of-type(1)){border-bottom:1px solid var(--bs-border-color)}table tr:not(:nth-of-type(2))>th:nth-of-type(1){border-right:1px solid var(--bs-border-color)}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.BsIconComponent, selector: "bs-icon", inputs: ["icon"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.BsUcFirstPipe, name: "bsUcFirst" }, { kind: "pipe", type: i1.MonthNamePipe, name: "monthName" }] }); }
91
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: BsCalendarComponent, selector: "bs-calendar", inputs: { currentMonth: "currentMonth", selectedDate: "selectedDate" }, outputs: { currentMonthChange: "currentMonthChange", selectedDateChange: "selectedDateChange" }, ngImport: i0, template: "<table class=\"table w-auto mb-0\">\n <tr>\n <td>\n <button class=\"btn btn-default\" (click)=\"previousMonth()\">\n <bs-icon [icon]=\"'chevron-left'\" class=\"fw-bolder\"></bs-icon>\n </button>\n </td>\n <td colspan=\"6\" class=\"fw-bolder\">\n {{ currentMonth$ | async | monthName | bsUcFirst }}\n {{ (currentMonth$ | async)?.getFullYear() }}\n </td>\n <td>\n <button class=\"btn btn-default border-bottom-0\" (click)=\"nextMonth()\">\n <bs-icon [icon]=\"'chevron-right'\" class=\"fw-bolder\"></bs-icon>\n </button>\n </td>\n </tr>\n <tr>\n <th></th>\n <th *ngFor=\"let dayOfWeek of shownDays$ | async; bsTrackBy: 'long'\" [title]=\"dayOfWeek.long\">\n {{ dayOfWeek.short }}\n </th>\n </tr>\n <tr *ngFor=\"let week of (weeks$ | async); bsTrackBy: 'number'\">\n <th>\n {{ week.number }}\n </th>\n <td [class.selected]=\"day === null ? false : isSameDate(selectedDate$ | async, day.date)\" *ngFor=\"let day of week.days\" (click)=\"goto(day)\">\n <span *ngIf=\"day !== null\" [class.text-muted]=\"!day.isInMonth\">{{ day.dayOfMonth }}</span>\n </td>\n </tr>\n</table>", styles: [".text-muted{color:#9ea7af!important}table{border-collapse:collapse;border:1px solid var(--bs-border-color);background:#fff}table td,table th{width:40px;height:40px;text-align:center}table td span,table th span{cursor:pointer;white-space:nowrap}table td.selected{background-color:#0d6efd;color:#fff}table th{background-color:#f8f9fa}table tr{border-top:none}table tr:first-child>td{border-bottom:1px solid var(--bs-border-color)}table tr:nth-of-type(2)>th:not(:nth-of-type(1)){border-bottom:1px solid var(--bs-border-color)}table tr:not(:nth-of-type(2))>th:nth-of-type(1){border-right:1px solid var(--bs-border-color)}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.BsIconComponent, selector: "bs-icon", inputs: ["icon"] }, { kind: "directive", type: i4.BsTrackByDirective, selector: "[ngForBsTrackBy]", inputs: ["ngForOf", "ngForBsTrackBy"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.BsUcFirstPipe, name: "bsUcFirst" }, { kind: "pipe", type: i1.MonthNamePipe, name: "monthName" }] }); }
96
92
  }
97
93
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsCalendarComponent, decorators: [{
98
94
  type: Component,
99
- args: [{ selector: 'bs-calendar', template: "<table class=\"table w-auto mb-0\">\n <tr>\n <td>\n <button class=\"btn btn-default\" (click)=\"previousMonth()\">\n <bs-icon [icon]=\"'chevron-left'\" class=\"fw-bolder\"></bs-icon>\n </button>\n </td>\n <td colspan=\"6\" class=\"fw-bolder\">\n {{ currentMonth$ | async | monthName | bsUcFirst }}\n {{ (currentMonth$ | async)?.getFullYear() }}\n </td>\n <td>\n <button class=\"btn btn-default border-bottom-0\" (click)=\"nextMonth()\">\n <bs-icon [icon]=\"'chevron-right'\" class=\"fw-bolder\"></bs-icon>\n </button>\n </td>\n </tr>\n <tr>\n <th></th>\n <th *ngFor=\"let dayOfWeek of shownDays$ | async; trackBy: trackByWeekDay\" [title]=\"dayOfWeek.long\">\n {{ dayOfWeek.short }}\n </th>\n </tr>\n <tr *ngFor=\"let week of (weeks$ | async); trackBy: trackByWeek\">\n <th>\n {{ week.number }}\n </th>\n <td [class.selected]=\"day === null ? false : isSameDate(selectedDate$ | async, day.date)\" *ngFor=\"let day of week.days\" (click)=\"goto(day)\">\n <span *ngIf=\"day !== null\" [class.text-muted]=\"!day.isInMonth\">{{ day.dayOfMonth }}</span>\n </td>\n </tr>\n</table>", styles: [".text-muted{color:#9ea7af!important}table{border-collapse:collapse;border:1px solid var(--bs-border-color);background:#fff}table td,table th{width:40px;height:40px;text-align:center}table td span,table th span{cursor:pointer;white-space:nowrap}table td.selected{background-color:#0d6efd;color:#fff}table th{background-color:#f8f9fa}table tr{border-top:none}table tr:first-child>td{border-bottom:1px solid var(--bs-border-color)}table tr:nth-of-type(2)>th:not(:nth-of-type(1)){border-bottom:1px solid var(--bs-border-color)}table tr:not(:nth-of-type(2))>th:nth-of-type(1){border-right:1px solid var(--bs-border-color)}\n"] }]
95
+ args: [{ selector: 'bs-calendar', template: "<table class=\"table w-auto mb-0\">\n <tr>\n <td>\n <button class=\"btn btn-default\" (click)=\"previousMonth()\">\n <bs-icon [icon]=\"'chevron-left'\" class=\"fw-bolder\"></bs-icon>\n </button>\n </td>\n <td colspan=\"6\" class=\"fw-bolder\">\n {{ currentMonth$ | async | monthName | bsUcFirst }}\n {{ (currentMonth$ | async)?.getFullYear() }}\n </td>\n <td>\n <button class=\"btn btn-default border-bottom-0\" (click)=\"nextMonth()\">\n <bs-icon [icon]=\"'chevron-right'\" class=\"fw-bolder\"></bs-icon>\n </button>\n </td>\n </tr>\n <tr>\n <th></th>\n <th *ngFor=\"let dayOfWeek of shownDays$ | async; bsTrackBy: 'long'\" [title]=\"dayOfWeek.long\">\n {{ dayOfWeek.short }}\n </th>\n </tr>\n <tr *ngFor=\"let week of (weeks$ | async); bsTrackBy: 'number'\">\n <th>\n {{ week.number }}\n </th>\n <td [class.selected]=\"day === null ? false : isSameDate(selectedDate$ | async, day.date)\" *ngFor=\"let day of week.days\" (click)=\"goto(day)\">\n <span *ngIf=\"day !== null\" [class.text-muted]=\"!day.isInMonth\">{{ day.dayOfMonth }}</span>\n </td>\n </tr>\n</table>", styles: [".text-muted{color:#9ea7af!important}table{border-collapse:collapse;border:1px solid var(--bs-border-color);background:#fff}table td,table th{width:40px;height:40px;text-align:center}table td span,table th span{cursor:pointer;white-space:nowrap}table td.selected{background-color:#0d6efd;color:#fff}table th{background-color:#f8f9fa}table tr{border-top:none}table tr:first-child>td{border-bottom:1px solid var(--bs-border-color)}table tr:nth-of-type(2)>th:not(:nth-of-type(1)){border-bottom:1px solid var(--bs-border-color)}table tr:not(:nth-of-type(2))>th:nth-of-type(1){border-right:1px solid var(--bs-border-color)}\n"] }]
100
96
  }], ctorParameters: function () { return [{ type: i1.BsCalendarMonthService }]; }, propDecorators: { currentMonthChange: [{
101
97
  type: Output
102
98
  }], currentMonth: [{
@@ -112,11 +108,13 @@ class BsCalendarModule {
112
108
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.2", ngImport: i0, type: BsCalendarModule, declarations: [BsCalendarComponent], imports: [CommonModule,
113
109
  BsIconModule,
114
110
  BsUcFirstModule,
111
+ BsTrackByModule,
115
112
  BsMonthNamePipeModule,
116
113
  BsWeekdayNameModule], exports: [BsCalendarComponent] }); }
117
114
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsCalendarModule, imports: [CommonModule,
118
115
  BsIconModule,
119
116
  BsUcFirstModule,
117
+ BsTrackByModule,
120
118
  BsMonthNamePipeModule,
121
119
  BsWeekdayNameModule] }); }
122
120
  }
@@ -130,6 +128,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImpor
130
128
  CommonModule,
131
129
  BsIconModule,
132
130
  BsUcFirstModule,
131
+ BsTrackByModule,
133
132
  BsMonthNamePipeModule,
134
133
  BsWeekdayNameModule
135
134
  ],