@solidev/data 0.3.0 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/auth/auth-interceptor.service.mjs +4 -4
- package/esm2022/lib/auth/auth.service.mjs +1 -1
- package/esm2022/lib/auth/jwt.mjs +1 -1
- package/esm2022/lib/data/data-backend.mjs +41 -14
- package/esm2022/lib/data/data-collection.mjs +1 -1
- package/esm2022/lib/data/data-collection.mock.mjs +1 -1
- package/esm2022/lib/data/data-model.mjs +1 -1
- package/esm2022/lib/data/data-query.mjs +1 -1
- package/esm2022/lib/data/fields/base.mjs +1 -1
- package/esm2022/lib/data/fields/boolean.mjs +1 -1
- package/esm2022/lib/data/fields/datetime.mjs +1 -1
- package/esm2022/lib/data/fields/numbers.mjs +1 -1
- package/esm2022/lib/data/fields/relations.mjs +1 -1
- package/esm2022/lib/data/fields/stringfields.mjs +1 -1
- package/esm2022/lib/dispedit/choice.pipe.mjs +7 -7
- package/esm2022/lib/dispedit/dispedit/dispedit.component.mjs +4 -4
- package/esm2022/lib/dispedit/factor.pipe.mjs +7 -7
- package/esm2022/lib/dispedit/factorc.pipe.mjs +7 -7
- package/esm2022/lib/dispedit/fkselect/fkselect.component.mjs +10 -13
- package/esm2022/lib/dispedit/flags/flags.component.mjs +9 -12
- package/esm2022/lib/dispedit/m2mselect/m2mselect.component.mjs +10 -16
- package/esm2022/lib/dispedit/richedit/richedit.component.mjs +4 -4
- package/esm2022/lib/dispedit/sdelete/sdelete.component.mjs +4 -4
- package/esm2022/lib/messages/message-zone/message-zone.component.mjs +8 -12
- package/esm2022/lib/messages/message.service.mjs +4 -4
- package/esm2022/lib/modellist/model-list-fields/model-list-field-header/model-list-field-header.component.mjs +8 -12
- package/esm2022/lib/modellist/model-list-fields/model-list-fields-selector/model-list-fields-selector.component.mjs +4 -4
- package/esm2022/lib/modellist/model-list-fields/model-list-fields.mjs +1 -1
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-autocomplete-filter/model-list-autocomplete-filter.component.mjs +9 -12
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-autocomplete-filter/model-list-autocomplete-filter.mjs +1 -1
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-autocomplete-multi-filter/model-list-autocomplete-multi-filter.component.mjs +3 -3
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-date-filter/model-list-date-filter.component.mjs +4 -4
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-date-filter/model-list-date-filter.mjs +1 -1
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-datetime-filter/model-list-datetime-filter.component.mjs +4 -4
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-datetime-filter/model-list-datetime-filter.mjs +1 -1
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-datetimerange-filter/model-list-datetime-range-filter.component.mjs +3 -3
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-datetimerange-filter/model-list-datetimerange-filter.mjs +1 -1
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-flags-filter/model-list-flags-filter.component.mjs +4 -4
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-flags-filter/model-list-flags-filter.mjs +1 -1
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-geodistance-filter/adapters/ban.mjs +1 -1
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-geodistance-filter/model-list-geodistance-filter.component.mjs +4 -4
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-geodistance-filter/model-list-geodistance-filter.mjs +1 -1
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-number-filter/model-list-number-filter.component.mjs +4 -4
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-number-filter/model-list-number-filter.mjs +1 -1
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-select-filter/model-list-select-filter.component.mjs +4 -4
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-select-filter/model-list-select-filter.mjs +1 -1
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-select-multi-filter/model-list-select-multi-filter.component.mjs +4 -4
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-select-multi-filter/model-list-select-multi-filter.mjs +1 -1
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-text-filter/model-list-text-filter.component.mjs +4 -4
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-text-filter/model-list-text-filter.mjs +1 -1
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-tree-filter/model-list-tree-filter.component.mjs +4 -4
- package/esm2022/lib/modellist/model-list-filters/filters/model-list-tree-filter/model-list-tree-filter.mjs +1 -1
- package/esm2022/lib/modellist/model-list-filters/model-list-filter-group.mjs +19 -0
- package/esm2022/lib/modellist/model-list-filters/model-list-filter.mjs +9 -1
- package/esm2022/lib/modellist/model-list-filters/model-list-filters/model-list-filters.component.mjs +5 -5
- package/esm2022/lib/modellist/model-list-filters/model-list-filters-select/model-list-filters-select.component.mjs +27 -6
- package/esm2022/lib/modellist/model-list-filters/model-list-filters.mjs +70 -16
- package/esm2022/lib/modellist/model-list-paginator/model-list-paginator/model-list-paginator.component.mjs +13 -14
- package/esm2022/lib/modellist/model-list-paginator/model-list-paginator.mjs +1 -1
- package/esm2022/lib/modellist/model-list-sorter/model-list-sorter/model-list-sorter.component.mjs +4 -4
- package/esm2022/lib/modellist/model-list-sorter/model-list-sorter.mjs +1 -1
- package/esm2022/lib/modellist/model-list.service.mjs +4 -4
- package/esm2022/lib/routing/breadcrumb/breadcrumb.component.mjs +8 -12
- package/esm2022/lib/routing/routing.mjs +1 -1
- package/esm2022/lib/updates/update/update.component.mjs +3 -3
- package/esm2022/lib/updates/update.service.mjs +4 -4
- package/esm2022/lib/uploader/ng-file-drop.directive.mjs +4 -4
- package/esm2022/lib/uploader/ng-file-select.directive.mjs +4 -4
- package/esm2022/lib/uploader/ngx-uploader.class.mjs +1 -1
- package/esm2022/lib/uploader/ngx-uploader.module.mjs +4 -4
- package/esm2022/lib/utils/slugify.mjs +1 -1
- package/esm2022/lib/utils/tab-memory.service.mjs +4 -4
- package/esm2022/lib/utils/template.mjs +1 -1
- package/esm2022/public-api.mjs +3 -1
- package/fesm2022/solidev-data.mjs +446 -353
- package/fesm2022/solidev-data.mjs.map +1 -1
- package/lib/data/data-backend.d.ts +10 -0
- package/lib/dispedit/fkselect/fkselect.component.d.ts +3 -4
- package/lib/dispedit/flags/flags.component.d.ts +3 -4
- package/lib/dispedit/m2mselect/m2mselect.component.d.ts +3 -7
- package/lib/messages/message-zone/message-zone.component.d.ts +3 -4
- package/lib/modellist/model-list-fields/model-list-field-header/model-list-field-header.component.d.ts +3 -4
- package/lib/modellist/model-list-filters/filters/model-list-autocomplete-filter/model-list-autocomplete-filter.component.d.ts +3 -4
- package/lib/modellist/model-list-filters/model-list-filter-group.d.ts +11 -0
- package/lib/modellist/model-list-filters/model-list-filter.d.ts +4 -0
- package/lib/modellist/model-list-filters/model-list-filters-select/model-list-filters-select.component.d.ts +8 -2
- package/lib/modellist/model-list-filters/model-list-filters.d.ts +11 -5
- package/lib/modellist/model-list-paginator/model-list-paginator/model-list-paginator.component.d.ts +3 -5
- package/lib/modellist/model-list.service.d.ts +2 -1
- package/lib/routing/breadcrumb/breadcrumb.component.d.ts +3 -4
- package/package.json +1 -1
- package/public-api.d.ts +2 -0
|
@@ -76,10 +76,10 @@ export class SafeDeleteComponent {
|
|
|
76
76
|
}
|
|
77
77
|
}
|
|
78
78
|
}
|
|
79
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
80
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
79
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: SafeDeleteComponent, deps: [{ token: i1.NgbOffcanvas }, { token: i2.DataMessageService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
80
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", type: SafeDeleteComponent, isStandalone: true, selector: "data-safe-delete", inputs: { model: "model", service: "service", actionFn: "actionFn", checks: "checks", messages: "messages", display: "display" }, outputs: { deleted: "deleted" }, viewQueries: [{ propertyName: "_dialogRef", first: true, predicate: ["dialog"], descendants: true, static: true }], ngImport: i0, template: "\n<ng-template #dialog let-offcanvas>\n <div class=\"offcanvas-header\">\n <h2 class=\"offcanvas-title text-danger text-center\"><i class=\"bi bi-trash me-2\"></i>Supprimer r\u00E9ellement ??</h2>\n </div>\n <div class=\"offcanvas-body text-danger\" *ngIf=\"result\">\n <div class=\"text-center my-4 fs-1\"><i class=\"bi bi-exclamation-diamond my-5\"></i></div>\n <div class=\"fs-4\">\n <p>La suppression de cet \u00E9l\u00E9ment supprimera {{result.count}} \u00E9l\u00E9ments dans la base de donn\u00E9es..</p>\n </div>\n <table class=\"table table-sm table-striped table-danger\">\n <thead>\n <tr>\n <th>Type d'\u00E9l\u00E9ment</th>\n <th>Nombre</th>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngFor=\"let rl of result.details\">\n <tr>\n <td>{{checks[rl[0]] ? checks[rl[0]] : rl[0]}}</td>\n <td>{{rl[1]}}</td>\n </tr>\n </ng-container>\n </tbody>\n </table>\n <button class=\"w-100 btn btn-lg btn-danger\" (click)=\"reallyDelete()\"><i class=\"bi bi-trash me-2\"></i>Je confirme la suppression</button>\n <button class=\"w-100 btn btn-outline-secondary my-3\" (click)=\"offcanvas.close()\"><i class=\"bi bi-door-open me-2\"></i>Je renonce \u00E0 la suppression</button>\n </div>\n</ng-template>\n<ng-template #contentTpl>\n <ng-content></ng-content>\n</ng-template>\n<button class=\"btn btn-sm btn-danger\" (click)=\"checkDelete(model)\" *ngIf=\"display==='button'\"><i class=\"bi bi-trash\"></i>\n <ng-container *ngTemplateOutlet=\"contentTpl\"></ng-container>\n</button>\n<button class=\"btn btn-sm btn-outline-danger float-end\" (click)=\"checkDelete(model)\" *ngIf=\"display==='fbutton'\"><i class=\"bi bi-trash mx-2\"></i></button><i class=\"bi bi-trash mx-2\" (click)=\"checkDelete(model)\" *ngIf=\"display==='icon'\" role=\"button\"></i>\n<div (click)=\"checkDelete(model)\" *ngIf=\"display==='custom'\" role=\"button\">\n <ng-container *ngTemplateOutlet=\"contentTpl\"></ng-container>\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: NgbOffcanvasModule }] }); }
|
|
81
81
|
}
|
|
82
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
82
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: SafeDeleteComponent, decorators: [{
|
|
83
83
|
type: Component,
|
|
84
84
|
args: [{ selector: 'data-safe-delete', standalone: true, imports: [CommonModule, NgbOffcanvasModule], template: "\n<ng-template #dialog let-offcanvas>\n <div class=\"offcanvas-header\">\n <h2 class=\"offcanvas-title text-danger text-center\"><i class=\"bi bi-trash me-2\"></i>Supprimer r\u00E9ellement ??</h2>\n </div>\n <div class=\"offcanvas-body text-danger\" *ngIf=\"result\">\n <div class=\"text-center my-4 fs-1\"><i class=\"bi bi-exclamation-diamond my-5\"></i></div>\n <div class=\"fs-4\">\n <p>La suppression de cet \u00E9l\u00E9ment supprimera {{result.count}} \u00E9l\u00E9ments dans la base de donn\u00E9es..</p>\n </div>\n <table class=\"table table-sm table-striped table-danger\">\n <thead>\n <tr>\n <th>Type d'\u00E9l\u00E9ment</th>\n <th>Nombre</th>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngFor=\"let rl of result.details\">\n <tr>\n <td>{{checks[rl[0]] ? checks[rl[0]] : rl[0]}}</td>\n <td>{{rl[1]}}</td>\n </tr>\n </ng-container>\n </tbody>\n </table>\n <button class=\"w-100 btn btn-lg btn-danger\" (click)=\"reallyDelete()\"><i class=\"bi bi-trash me-2\"></i>Je confirme la suppression</button>\n <button class=\"w-100 btn btn-outline-secondary my-3\" (click)=\"offcanvas.close()\"><i class=\"bi bi-door-open me-2\"></i>Je renonce \u00E0 la suppression</button>\n </div>\n</ng-template>\n<ng-template #contentTpl>\n <ng-content></ng-content>\n</ng-template>\n<button class=\"btn btn-sm btn-danger\" (click)=\"checkDelete(model)\" *ngIf=\"display==='button'\"><i class=\"bi bi-trash\"></i>\n <ng-container *ngTemplateOutlet=\"contentTpl\"></ng-container>\n</button>\n<button class=\"btn btn-sm btn-outline-danger float-end\" (click)=\"checkDelete(model)\" *ngIf=\"display==='fbutton'\"><i class=\"bi bi-trash mx-2\"></i></button><i class=\"bi bi-trash mx-2\" (click)=\"checkDelete(model)\" *ngIf=\"display==='icon'\" role=\"button\"></i>\n<div (click)=\"checkDelete(model)\" *ngIf=\"display==='custom'\" role=\"button\">\n <ng-container *ngTemplateOutlet=\"contentTpl\"></ng-container>\n</div>" }]
|
|
85
85
|
}], ctorParameters: () => [{ type: i1.NgbOffcanvas }, { type: i2.DataMessageService }], propDecorators: { model: [{
|
|
@@ -100,4 +100,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImpor
|
|
|
100
100
|
type: ViewChild,
|
|
101
101
|
args: ['dialog', { static: true }]
|
|
102
102
|
}] } });
|
|
103
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2RlbGV0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhL3NyYy9saWIvZGlzcGVkaXQvc2RlbGV0ZS9zZGVsZXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGEvc3JjL2xpYi9kaXNwZWRpdC9zZGVsZXRlL3NkZWxldGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBRUwsa0JBQWtCLEdBRW5CLE1BQU0sNEJBQTRCLENBQUM7QUFDcEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7OztBQWUvQyxNQUFNLE9BQU8sbUJBQW1CO0lBMkI5QixZQUNVLElBQWtCLEVBQ2xCLEtBQXlCO1FBRHpCLFNBQUksR0FBSixJQUFJLENBQWM7UUFDbEIsVUFBSyxHQUFMLEtBQUssQ0FBb0I7UUF0Qm5DLDREQUE0RDtRQUM1QyxXQUFNLEdBQWdDLEVBQUUsQ0FBQztRQUN6RCw4RkFBOEY7UUFDOUUsYUFBUSxHQUF5QyxFQUFFLENBQUM7UUFDcEUsMkNBQTJDO1FBQzFCLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBb0IsQ0FBQztRQUNoRTs7Ozs7O2FBTUs7UUFDVyxZQUFPLEdBQTZDLFFBQVEsQ0FBQztJQVUxRSxDQUFDO0lBRUcsS0FBSyxDQUFDLFdBQVcsQ0FBQyxLQUFnQjtRQUN2QyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDO1FBQ3ZELElBQUksT0FBTyxFQUFFO1lBQ1gsSUFBSTtnQkFDRixJ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RjtTQUNGO0lBQ0gsQ0FBQzs4R0ExRlUsbUJBQW1CO2tHQUFuQixtQkFBbUIsbVdDL0JoQyxtZ0VBdUNNLHlERFZNLFlBQVksc2FBQUUsa0JBQWtCOzsyRkFFL0IsbUJBQW1CO2tCQVAvQixTQUFTOytCQUNFLGtCQUFrQixjQUdoQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsa0JBQWtCLENBQUM7a0hBSTNCLEtBQUs7c0JBQXBCLEtBQUs7Z0JBRVUsT0FBTztzQkFBdEIsS0FBSztnQkFFVSxRQUFRO3NCQUF2QixLQUFLO2dCQUVVLE1BQU07c0JBQXJCLEtBQUs7Z0JBRVUsUUFBUTtzQkFBdkIsS0FBSztnQkFFVyxPQUFPO3NCQUF2QixNQUFNO2dCQVFTLE9BQU87c0JBQXRCLEtBQUs7Z0JBSUUsVUFBVTtzQkFEakIsU0FBUzt1QkFBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRhTW9kZWwgfSBmcm9tICcuLi8uLi9kYXRhL2RhdGEtbW9kZWwnO1xuaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2RhdGEvZGF0YS1jb2xsZWN0aW9uJztcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBOZ2JPZmZjYW52YXMsXG4gIE5nYk9mZmNhbnZhc01vZHVsZSxcbiAgTmdiT2ZmY2FudmFzUmVmLFxufSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRGF0YU1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vbWVzc2FnZXMvbWVzc2FnZS5zZXJ2aWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBGYWtlRGVsZXRlUmVzdWx0IHtcbiAgY291bnQ6IG51bWJlcjtcbiAgZGV0YWlsczogW3N0cmluZywgbnVtYmVyXVtdO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkYXRhLXNhZmUtZGVsZXRlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NkZWxldGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zZGVsZXRlLmNvbXBvbmVudC5zYXNzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE5nYk9mZmNhbnZhc01vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNhZmVEZWxldGVDb21wb25lbnQ8VCBleHRlbmRzIERhdGFNb2RlbD4ge1xuICAvKiogTW9kZWwgaW5zdGFuY2UgdG8gYmUgZGVsZXRlZCAqL1xuICBASW5wdXQoKSBwdWJsaWMgbW9kZWwhOiBUO1xuICAvKiogU2VydmljZSB0byBiZSB1c2VkIGZvciBkZWxldGlvbiwgdGFrZW4gZnJvbSBtb2RlbCBpZiBub3QgcHJvdmlkZWQgKi9cbiAgQElucHV0KCkgcHVibGljIHNlcnZpY2U/OiBDb2xsZWN0aW9uPFQ+O1xuICAvKiogRnVuY3Rpb24gdG8gYmUgY2FsbGVkIGZvciBkZWxldGlvbiwgb3ZlcnJpZGVzIHNlcnZpY2UgZGVsZXRpb24gKi9cbiAgQElucHV0KCkgcHVibGljIGFjdGlvbkZuPzogKG1vZGVsOiBUKSA9PiBQcm9taXNlPHsgc3VjY2VzczogYm9vbGVhbiB9PjtcbiAgLyoqIFRyYW5zbGF0aW9ucyBvZiBkYXRhYmFzZSBvYmplY3RzIG5hbWVzIHRvIGh1bWFuIG5hbWVzICovXG4gIEBJbnB1dCgpIHB1YmxpYyBjaGVja3M6IHsgW2luZGV4OiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9O1xuICAvKiogTWVzc2FnZXMgdG8gYmUgZGlzcGxheWVkIG9uIHN1Y2Nlc3Mgb3IgZXJyb3IsIGRlZmF1bHQgbWVzc2FnZXMgYXJlIHVzZWQgaWYgbm90IHByb3ZpZGVkICovXG4gIEBJbnB1dCgpIHB1YmxpYyBtZXNzYWdlczogeyBzdWNjZXNzPzogc3RyaW5nOyBlcnJvcj86IHN0cmluZyB9ID0ge307XG4gIC8qKiBFdmVudCBlbWl0dGVkIG9uIHN1Y2Nlc3NmdWwgZGVsZXRpb24gKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBkZWxldGVkID0gbmV3IEV2ZW50RW1pdHRlcjxGYWtlRGVsZXRlUmVzdWx0PigpO1xuICAvKiogRGlzcGxheSBtb2RlLCBkZWZhdWx0IGlzIGJ1dHRvbi5cbiAgICpcbiAgICogLSBgZmJ1dHRvbmA6IGZsb2F0aW5nIGJ1dHRvbiAoc21hbGwpXG4gICAqIC0gYGJ1dHRvbmA6IGJ1dHRvbiAoc21hbGwpLCB3aXRoIHRleHQgdGFrZW4gZnJvbSBuZy1jb250ZW50IChubyBzcGFjZSBhcm91bmQgaWNvbiB0byBhbGxvdyBlbXB0eSBidXR0b25zKVxuICAgKiAtIGBpY29uYDogaWNvblxuICAgKiAtIGBjdXN0b21gOiBjdXN0b20gOiBuZy1jb250ZW50IGlzIHN1cnJvdW5kZWQgYnkgYSBjbGlja2FibGUgZGl2XG4gICAqICovXG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNwbGF5OiAnZmJ1dHRvbicgfCAnYnV0dG9uJyB8ICdpY29uJyB8ICdjdXN0b20nID0gJ2J1dHRvbic7XG5cbiAgcHVibGljIHJlc3VsdD86IEZha2VEZWxldGVSZXN1bHQ7XG4gIEBWaWV3Q2hpbGQoJ2RpYWxvZycsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHByaXZhdGUgX2RpYWxvZ1JlZj86IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICBwcml2YXRlIG9mYz86IE5nYk9mZmNhbnZhc1JlZjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9vZmM6IE5nYk9mZmNhbnZhcyxcbiAgICBwcml2YXRlIF9tc2dzOiBEYXRhTWVzc2FnZVNlcnZpY2UsXG4gICkge31cblxuICBwdWJsaWMgYXN5bmMgY2hlY2tEZWxldGUobW9kZWw6IERhdGFNb2RlbCkge1xuICAgIGNvbnN0IHNlcnZpY2UgPSB0aGlzLnNlcnZpY2UgfHwgdGhpcy5tb2RlbC5fY29sbGVjdGlvbjtcbiAgICBpZiAoc2VydmljZSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgdGhpcy5yZXN1bHQgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcbiAgICAgICAgICBzZXJ2aWNlLmRlbGV0ZSh0aGlzLm1vZGVsLCB7IHBhcmFtczogeyBkb2l0OiAnbm8nIH0gfSksXG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5vZmMgPSB0aGlzLl9vZmMub3Blbih0aGlzLl9kaWFsb2dSZWYsIHtcbiAgICAgICAgICBwb3NpdGlvbjogJ2VuZCcsXG4gICAgICAgIH0pO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgICAgICBpZiAodGhpcy5tZXNzYWdlcy5lcnJvcikge1xuICAgICAgICAgIHRoaXMuX21zZ3MuZXJyb3IoXG4gICAgICAgICAgICB0aGlzLm1lc3NhZ2VzLmVycm9yLFxuICAgICAgICAgICAgKGUgYXMgYW55KS5lcnJvcj8ubWVzc2FnZSB8fCAoZSBhcyBhbnkpLm1lc3NhZ2UgfHwgJycsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBhc3luYyByZWFsbHlEZWxldGUoKSB7XG4gICAgaWYgKHRoaXMuYWN0aW9uRm4pIHtcbiAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IHRoaXMuYWN0aW9uRm4odGhpcy5tb2RlbCk7XG4gICAgICBpZiAocmVzLnN1Y2Nlc3MgJiYgdGhpcy5tZXNzYWdlcy5zdWNjZXNzKSB7XG4gICAgICAgIHRoaXMuX21zZ3Muc3VjY2Vzcyh0aGlzLm1lc3NhZ2VzLnN1Y2Nlc3MpO1xuICAgICAgfSBlbHNlIGlmICghcmVzLnN1Y2Nlc3MgJiYgdGhpcy5tZXNzYWdlcy5lcnJvcikge1xuICAgICAgICB0aGlzLl9tc2dzLmVycm9yKHRoaXMubWVzc2FnZXMuZXJyb3IpO1xuICAgICAgfVxuICAgICAgdGhpcy5vZmM/LmNsb3NlKCk7XG4gICAgICBpZiAocmVzLnN1Y2Nlc3MpIHtcbiAgICAgICAgdGhpcy5kZWxldGVkLmVtaXQodGhpcy5yZXN1bHQpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBzZXJ2aWNlID0gdGhpcy5zZXJ2aWNlIHx8IHRoaXMubW9kZWwuX2NvbGxlY3Rpb247XG4gICAgICBpZiAoc2VydmljZSkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIHRoaXMucmVzdWx0ID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20oXG4gICAgICAgICAgICBzZXJ2aWNlLmRlbGV0ZSh0aGlzLm1vZGVsLCB7IHBhcmFtczogeyBkb2l0OiAncmVhbGx5JyB9IH0pLFxuICAgICAgICAgICk7XG4gICAgICAgICAgaWYgKHRoaXMubWVzc2FnZXMuc3VjY2Vzcykge1xuICAgICAgICAgICAgdGhpcy5fbXNncy5zdWNjZXNzKHRoaXMubWVzc2FnZXMuc3VjY2Vzcyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMub2ZjPy5jbG9zZSgpO1xuICAgICAgICAgIHRoaXMuZGVsZXRlZC5lbWl0KHRoaXMucmVzdWx0KTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XG4gICAgICAgICAgaWYgKHRoaXMubWVzc2FnZXMuZXJyb3IpIHtcbiAgICAgICAgICAgIHRoaXMuX21zZ3MuZXJyb3IoXG4gICAgICAgICAgICAgIHRoaXMubWVzc2FnZXMuZXJyb3IsXG4gICAgICAgICAgICAgIChlIGFzIGFueSkuZXJyb3I/Lm1lc3NhZ2UgfHwgKGUgYXMgYW55KS5tZXNzYWdlIHx8ICcnLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIlxuPG5nLXRlbXBsYXRlICNkaWFsb2cgbGV0LW9mZmNhbnZhcz5cbiAgPGRpdiBjbGFzcz1cIm9mZmNhbnZhcy1oZWFkZXJcIj5cbiAgICA8aDIgY2xhc3M9XCJvZmZjYW52YXMtdGl0bGUgdGV4dC1kYW5nZXIgdGV4dC1jZW50ZXJcIj48aSBjbGFzcz1cImJpIGJpLXRyYXNoIG1lLTJcIj48L2k+U3VwcHJpbWVyIHLDqWVsbGVtZW50ID8/PC9oMj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJvZmZjYW52YXMtYm9keSB0ZXh0LWRhbmdlclwiICpuZ0lmPVwicmVzdWx0XCI+XG4gICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyIG15LTQgZnMtMVwiPjxpIGNsYXNzPVwiYmkgYmktZXhjbGFtYXRpb24tZGlhbW9uZCBteS01XCI+PC9pPjwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmcy00XCI+XG4gICAgICA8cD5MYSBzdXBwcmVzc2lvbiBkZSBjZXQgw6lsw6ltZW50IHN1cHByaW1lcmEge3tyZXN1bHQuY291bnR9fSDDqWzDqW1lbnRzIGRhbnMgbGEgYmFzZSBkZSBkb25uw6llcy4uPC9wPlxuICAgIDwvZGl2PlxuICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlIHRhYmxlLXNtIHRhYmxlLXN0cmlwZWQgdGFibGUtZGFuZ2VyXCI+XG4gICAgICA8dGhlYWQ+XG4gICAgICAgIDx0cj5cbiAgICAgICAgICA8dGg+VHlwZSBkJ8OpbMOpbWVudDwvdGg+XG4gICAgICAgICAgPHRoPk5vbWJyZTwvdGg+XG4gICAgICAgIDwvdHI+XG4gICAgICA8L3RoZWFkPlxuICAgICAgPHRib2R5PlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBybCBvZiByZXN1bHQuZGV0YWlsc1wiPlxuICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0ZD57e2NoZWNrc1tybFswXV0gPyBjaGVja3NbcmxbMF1dIDogcmxbMF19fTwvdGQ+XG4gICAgICAgICAgICA8dGQ+e3tybFsxXX19PC90ZD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvdGJvZHk+XG4gICAgPC90YWJsZT5cbiAgICA8YnV0dG9uIGNsYXNzPVwidy0xMDAgYnRuIGJ0bi1sZyBidG4tZGFuZ2VyXCIgKGNsaWNrKT1cInJlYWxseURlbGV0ZSgpXCI+PGkgY2xhc3M9XCJiaSBiaS10cmFzaCBtZS0yXCI+PC9pPkplIGNvbmZpcm1lIGxhIHN1cHByZXNzaW9uPC9idXR0b24+XG4gICAgPGJ1dHRvbiBjbGFzcz1cInctMTAwIGJ0biBidG4tb3V0bGluZS1zZWNvbmRhcnkgbXktM1wiIChjbGljayk9XCJvZmZjYW52YXMuY2xvc2UoKVwiPjxpIGNsYXNzPVwiYmkgYmktZG9vci1vcGVuIG1lLTJcIj48L2k+SmUgcmVub25jZSDDoCBsYSBzdXBwcmVzc2lvbjwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2NvbnRlbnRUcGw+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG48YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1zbSBidG4tZGFuZ2VyXCIgKGNsaWNrKT1cImNoZWNrRGVsZXRlKG1vZGVsKVwiICpuZ0lmPVwiZGlzcGxheT09PSdidXR0b24nXCI+PGkgY2xhc3M9XCJiaSBiaS10cmFzaFwiPjwvaT5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRUcGxcIj48L25nLWNvbnRhaW5lcj5cbjwvYnV0dG9uPlxuPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tc20gYnRuLW91dGxpbmUtZGFuZ2VyIGZsb2F0LWVuZFwiIChjbGljayk9XCJjaGVja0RlbGV0ZShtb2RlbClcIiAqbmdJZj1cImRpc3BsYXk9PT0nZmJ1dHRvbidcIj48aSBjbGFzcz1cImJpIGJpLXRyYXNoIG14LTJcIj48L2k+PC9idXR0b24+PGkgY2xhc3M9XCJiaSBiaS10cmFzaCBteC0yXCIgKGNsaWNrKT1cImNoZWNrRGVsZXRlKG1vZGVsKVwiICpuZ0lmPVwiZGlzcGxheT09PSdpY29uJ1wiIHJvbGU9XCJidXR0b25cIj48L2k+XG48ZGl2IChjbGljayk9XCJjaGVja0RlbGV0ZShtb2RlbClcIiAqbmdJZj1cImRpc3BsYXk9PT0nY3VzdG9tJ1wiIHJvbGU9XCJidXR0b25cIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRUcGxcIj48L25nLWNvbnRhaW5lcj5cbjwvZGl2PiJdfQ==
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2RlbGV0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhL3NyYy9saWIvZGlzcGVkaXQvc2RlbGV0ZS9zZGVsZXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGEvc3JjL2xpYi9kaXNwZWRpdC9zZGVsZXRlL3NkZWxldGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBRUwsa0JBQWtCLEdBRW5CLE1BQU0sNEJBQTRCLENBQUM7QUFDcEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7OztBQWUvQyxNQUFNLE9BQU8sbUJBQW1CO0lBMkI5QixZQUNVLElBQWtCLEVBQ2xCLEtBQXlCO1FBRHpCLFNBQUksR0FBSixJQUFJLENBQWM7UUFDbEIsVUFBSyxHQUFMLEtBQUssQ0FBb0I7UUF0Qm5DLDREQUE0RDtRQUM1QyxXQUFNLEdBQWdDLEVBQUUsQ0FBQztRQUN6RCw4RkFBOEY7UUFDOUUsYUFBUSxHQUF5QyxFQUFFLENBQUM7UUFDcEUsMkNBQTJDO1FBQzFCLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBb0IsQ0FBQztRQUNoRTs7Ozs7O2FBTUs7UUFDVyxZQUFPLEdBQTZDLFFBQVEsQ0FBQztJQVUxRSxDQUFDO0lBRUcsS0FBSyxDQUFDLFdBQVcsQ0FBQyxLQUFnQjtRQUN2QyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDO1FBQ3ZELElBQUksT0FBTyxFQUFFLENBQUM7WUFDWixJQUFJLENB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QUFLLENBQ2QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQ2xCLENBQVMsQ0FBQyxLQUFLLEVBQUUsT0FBTyxJQUFLLENBQVMsQ0FBQyxPQUFPLElBQUksRUFBRSxDQUN0RCxDQUFDO29CQUNKLENBQUM7Z0JBQ0gsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQzs4R0ExRlUsbUJBQW1CO2tHQUFuQixtQkFBbUIsbVdDL0JoQyxtZ0VBdUNNLHlERFZNLFlBQVksc2FBQUUsa0JBQWtCOzsyRkFFL0IsbUJBQW1CO2tCQVAvQixTQUFTOytCQUNFLGtCQUFrQixjQUdoQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsa0JBQWtCLENBQUM7a0hBSTNCLEtBQUs7c0JBQXBCLEtBQUs7Z0JBRVUsT0FBTztzQkFBdEIsS0FBSztnQkFFVSxRQUFRO3NCQUF2QixLQUFLO2dCQUVVLE1BQU07c0JBQXJCLEtBQUs7Z0JBRVUsUUFBUTtzQkFBdkIsS0FBSztnQkFFVyxPQUFPO3NCQUF2QixNQUFNO2dCQVFTLE9BQU87c0JBQXRCLEtBQUs7Z0JBSUUsVUFBVTtzQkFEakIsU0FBUzt1QkFBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRhTW9kZWwgfSBmcm9tICcuLi8uLi9kYXRhL2RhdGEtbW9kZWwnO1xuaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2RhdGEvZGF0YS1jb2xsZWN0aW9uJztcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBOZ2JPZmZjYW52YXMsXG4gIE5nYk9mZmNhbnZhc01vZHVsZSxcbiAgTmdiT2ZmY2FudmFzUmVmLFxufSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRGF0YU1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vbWVzc2FnZXMvbWVzc2FnZS5zZXJ2aWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBGYWtlRGVsZXRlUmVzdWx0IHtcbiAgY291bnQ6IG51bWJlcjtcbiAgZGV0YWlsczogW3N0cmluZywgbnVtYmVyXVtdO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkYXRhLXNhZmUtZGVsZXRlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NkZWxldGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zZGVsZXRlLmNvbXBvbmVudC5zYXNzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE5nYk9mZmNhbnZhc01vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNhZmVEZWxldGVDb21wb25lbnQ8VCBleHRlbmRzIERhdGFNb2RlbD4ge1xuICAvKiogTW9kZWwgaW5zdGFuY2UgdG8gYmUgZGVsZXRlZCAqL1xuICBASW5wdXQoKSBwdWJsaWMgbW9kZWwhOiBUO1xuICAvKiogU2VydmljZSB0byBiZSB1c2VkIGZvciBkZWxldGlvbiwgdGFrZW4gZnJvbSBtb2RlbCBpZiBub3QgcHJvdmlkZWQgKi9cbiAgQElucHV0KCkgcHVibGljIHNlcnZpY2U/OiBDb2xsZWN0aW9uPFQ+O1xuICAvKiogRnVuY3Rpb24gdG8gYmUgY2FsbGVkIGZvciBkZWxldGlvbiwgb3ZlcnJpZGVzIHNlcnZpY2UgZGVsZXRpb24gKi9cbiAgQElucHV0KCkgcHVibGljIGFjdGlvbkZuPzogKG1vZGVsOiBUKSA9PiBQcm9taXNlPHsgc3VjY2VzczogYm9vbGVhbiB9PjtcbiAgLyoqIFRyYW5zbGF0aW9ucyBvZiBkYXRhYmFzZSBvYmplY3RzIG5hbWVzIHRvIGh1bWFuIG5hbWVzICovXG4gIEBJbnB1dCgpIHB1YmxpYyBjaGVja3M6IHsgW2luZGV4OiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9O1xuICAvKiogTWVzc2FnZXMgdG8gYmUgZGlzcGxheWVkIG9uIHN1Y2Nlc3Mgb3IgZXJyb3IsIGRlZmF1bHQgbWVzc2FnZXMgYXJlIHVzZWQgaWYgbm90IHByb3ZpZGVkICovXG4gIEBJbnB1dCgpIHB1YmxpYyBtZXNzYWdlczogeyBzdWNjZXNzPzogc3RyaW5nOyBlcnJvcj86IHN0cmluZyB9ID0ge307XG4gIC8qKiBFdmVudCBlbWl0dGVkIG9uIHN1Y2Nlc3NmdWwgZGVsZXRpb24gKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBkZWxldGVkID0gbmV3IEV2ZW50RW1pdHRlcjxGYWtlRGVsZXRlUmVzdWx0PigpO1xuICAvKiogRGlzcGxheSBtb2RlLCBkZWZhdWx0IGlzIGJ1dHRvbi5cbiAgICpcbiAgICogLSBgZmJ1dHRvbmA6IGZsb2F0aW5nIGJ1dHRvbiAoc21hbGwpXG4gICAqIC0gYGJ1dHRvbmA6IGJ1dHRvbiAoc21hbGwpLCB3aXRoIHRleHQgdGFrZW4gZnJvbSBuZy1jb250ZW50IChubyBzcGFjZSBhcm91bmQgaWNvbiB0byBhbGxvdyBlbXB0eSBidXR0b25zKVxuICAgKiAtIGBpY29uYDogaWNvblxuICAgKiAtIGBjdXN0b21gOiBjdXN0b20gOiBuZy1jb250ZW50IGlzIHN1cnJvdW5kZWQgYnkgYSBjbGlja2FibGUgZGl2XG4gICAqICovXG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNwbGF5OiAnZmJ1dHRvbicgfCAnYnV0dG9uJyB8ICdpY29uJyB8ICdjdXN0b20nID0gJ2J1dHRvbic7XG5cbiAgcHVibGljIHJlc3VsdD86IEZha2VEZWxldGVSZXN1bHQ7XG4gIEBWaWV3Q2hpbGQoJ2RpYWxvZycsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHByaXZhdGUgX2RpYWxvZ1JlZj86IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICBwcml2YXRlIG9mYz86IE5nYk9mZmNhbnZhc1JlZjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9vZmM6IE5nYk9mZmNhbnZhcyxcbiAgICBwcml2YXRlIF9tc2dzOiBEYXRhTWVzc2FnZVNlcnZpY2UsXG4gICkge31cblxuICBwdWJsaWMgYXN5bmMgY2hlY2tEZWxldGUobW9kZWw6IERhdGFNb2RlbCkge1xuICAgIGNvbnN0IHNlcnZpY2UgPSB0aGlzLnNlcnZpY2UgfHwgdGhpcy5tb2RlbC5fY29sbGVjdGlvbjtcbiAgICBpZiAoc2VydmljZSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgdGhpcy5yZXN1bHQgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcbiAgICAgICAgICBzZXJ2aWNlLmRlbGV0ZSh0aGlzLm1vZGVsLCB7IHBhcmFtczogeyBkb2l0OiAnbm8nIH0gfSksXG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5vZmMgPSB0aGlzLl9vZmMub3Blbih0aGlzLl9kaWFsb2dSZWYsIHtcbiAgICAgICAgICBwb3NpdGlvbjogJ2VuZCcsXG4gICAgICAgIH0pO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgICAgICBpZiAodGhpcy5tZXNzYWdlcy5lcnJvcikge1xuICAgICAgICAgIHRoaXMuX21zZ3MuZXJyb3IoXG4gICAgICAgICAgICB0aGlzLm1lc3NhZ2VzLmVycm9yLFxuICAgICAgICAgICAgKGUgYXMgYW55KS5lcnJvcj8ubWVzc2FnZSB8fCAoZSBhcyBhbnkpLm1lc3NhZ2UgfHwgJycsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBhc3luYyByZWFsbHlEZWxldGUoKSB7XG4gICAgaWYgKHRoaXMuYWN0aW9uRm4pIHtcbiAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IHRoaXMuYWN0aW9uRm4odGhpcy5tb2RlbCk7XG4gICAgICBpZiAocmVzLnN1Y2Nlc3MgJiYgdGhpcy5tZXNzYWdlcy5zdWNjZXNzKSB7XG4gICAgICAgIHRoaXMuX21zZ3Muc3VjY2Vzcyh0aGlzLm1lc3NhZ2VzLnN1Y2Nlc3MpO1xuICAgICAgfSBlbHNlIGlmICghcmVzLnN1Y2Nlc3MgJiYgdGhpcy5tZXNzYWdlcy5lcnJvcikge1xuICAgICAgICB0aGlzLl9tc2dzLmVycm9yKHRoaXMubWVzc2FnZXMuZXJyb3IpO1xuICAgICAgfVxuICAgICAgdGhpcy5vZmM/LmNsb3NlKCk7XG4gICAgICBpZiAocmVzLnN1Y2Nlc3MpIHtcbiAgICAgICAgdGhpcy5kZWxldGVkLmVtaXQodGhpcy5yZXN1bHQpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBzZXJ2aWNlID0gdGhpcy5zZXJ2aWNlIHx8IHRoaXMubW9kZWwuX2NvbGxlY3Rpb247XG4gICAgICBpZiAoc2VydmljZSkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIHRoaXMucmVzdWx0ID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20oXG4gICAgICAgICAgICBzZXJ2aWNlLmRlbGV0ZSh0aGlzLm1vZGVsLCB7IHBhcmFtczogeyBkb2l0OiAncmVhbGx5JyB9IH0pLFxuICAgICAgICAgICk7XG4gICAgICAgICAgaWYgKHRoaXMubWVzc2FnZXMuc3VjY2Vzcykge1xuICAgICAgICAgICAgdGhpcy5fbXNncy5zdWNjZXNzKHRoaXMubWVzc2FnZXMuc3VjY2Vzcyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMub2ZjPy5jbG9zZSgpO1xuICAgICAgICAgIHRoaXMuZGVsZXRlZC5lbWl0KHRoaXMucmVzdWx0KTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XG4gICAgICAgICAgaWYgKHRoaXMubWVzc2FnZXMuZXJyb3IpIHtcbiAgICAgICAgICAgIHRoaXMuX21zZ3MuZXJyb3IoXG4gICAgICAgICAgICAgIHRoaXMubWVzc2FnZXMuZXJyb3IsXG4gICAgICAgICAgICAgIChlIGFzIGFueSkuZXJyb3I/Lm1lc3NhZ2UgfHwgKGUgYXMgYW55KS5tZXNzYWdlIHx8ICcnLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIlxuPG5nLXRlbXBsYXRlICNkaWFsb2cgbGV0LW9mZmNhbnZhcz5cbiAgPGRpdiBjbGFzcz1cIm9mZmNhbnZhcy1oZWFkZXJcIj5cbiAgICA8aDIgY2xhc3M9XCJvZmZjYW52YXMtdGl0bGUgdGV4dC1kYW5nZXIgdGV4dC1jZW50ZXJcIj48aSBjbGFzcz1cImJpIGJpLXRyYXNoIG1lLTJcIj48L2k+U3VwcHJpbWVyIHLDqWVsbGVtZW50ID8/PC9oMj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJvZmZjYW52YXMtYm9keSB0ZXh0LWRhbmdlclwiICpuZ0lmPVwicmVzdWx0XCI+XG4gICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyIG15LTQgZnMtMVwiPjxpIGNsYXNzPVwiYmkgYmktZXhjbGFtYXRpb24tZGlhbW9uZCBteS01XCI+PC9pPjwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmcy00XCI+XG4gICAgICA8cD5MYSBzdXBwcmVzc2lvbiBkZSBjZXQgw6lsw6ltZW50IHN1cHByaW1lcmEge3tyZXN1bHQuY291bnR9fSDDqWzDqW1lbnRzIGRhbnMgbGEgYmFzZSBkZSBkb25uw6llcy4uPC9wPlxuICAgIDwvZGl2PlxuICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlIHRhYmxlLXNtIHRhYmxlLXN0cmlwZWQgdGFibGUtZGFuZ2VyXCI+XG4gICAgICA8dGhlYWQ+XG4gICAgICAgIDx0cj5cbiAgICAgICAgICA8dGg+VHlwZSBkJ8OpbMOpbWVudDwvdGg+XG4gICAgICAgICAgPHRoPk5vbWJyZTwvdGg+XG4gICAgICAgIDwvdHI+XG4gICAgICA8L3RoZWFkPlxuICAgICAgPHRib2R5PlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBybCBvZiByZXN1bHQuZGV0YWlsc1wiPlxuICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0ZD57e2NoZWNrc1tybFswXV0gPyBjaGVja3NbcmxbMF1dIDogcmxbMF19fTwvdGQ+XG4gICAgICAgICAgICA8dGQ+e3tybFsxXX19PC90ZD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvdGJvZHk+XG4gICAgPC90YWJsZT5cbiAgICA8YnV0dG9uIGNsYXNzPVwidy0xMDAgYnRuIGJ0bi1sZyBidG4tZGFuZ2VyXCIgKGNsaWNrKT1cInJlYWxseURlbGV0ZSgpXCI+PGkgY2xhc3M9XCJiaSBiaS10cmFzaCBtZS0yXCI+PC9pPkplIGNvbmZpcm1lIGxhIHN1cHByZXNzaW9uPC9idXR0b24+XG4gICAgPGJ1dHRvbiBjbGFzcz1cInctMTAwIGJ0biBidG4tb3V0bGluZS1zZWNvbmRhcnkgbXktM1wiIChjbGljayk9XCJvZmZjYW52YXMuY2xvc2UoKVwiPjxpIGNsYXNzPVwiYmkgYmktZG9vci1vcGVuIG1lLTJcIj48L2k+SmUgcmVub25jZSDDoCBsYSBzdXBwcmVzc2lvbjwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2NvbnRlbnRUcGw+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG48YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1zbSBidG4tZGFuZ2VyXCIgKGNsaWNrKT1cImNoZWNrRGVsZXRlKG1vZGVsKVwiICpuZ0lmPVwiZGlzcGxheT09PSdidXR0b24nXCI+PGkgY2xhc3M9XCJiaSBiaS10cmFzaFwiPjwvaT5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRUcGxcIj48L25nLWNvbnRhaW5lcj5cbjwvYnV0dG9uPlxuPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tc20gYnRuLW91dGxpbmUtZGFuZ2VyIGZsb2F0LWVuZFwiIChjbGljayk9XCJjaGVja0RlbGV0ZShtb2RlbClcIiAqbmdJZj1cImRpc3BsYXk9PT0nZmJ1dHRvbidcIj48aSBjbGFzcz1cImJpIGJpLXRyYXNoIG14LTJcIj48L2k+PC9idXR0b24+PGkgY2xhc3M9XCJiaSBiaS10cmFzaCBteC0yXCIgKGNsaWNrKT1cImNoZWNrRGVsZXRlKG1vZGVsKVwiICpuZ0lmPVwiZGlzcGxheT09PSdpY29uJ1wiIHJvbGU9XCJidXR0b25cIj48L2k+XG48ZGl2IChjbGljayk9XCJjaGVja0RlbGV0ZShtb2RlbClcIiAqbmdJZj1cImRpc3BsYXk9PT0nY3VzdG9tJ1wiIHJvbGU9XCJidXR0b25cIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRUcGxcIj48L25nLWNvbnRhaW5lcj5cbjwvZGl2PiJdfQ==
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
1
|
+
import { Component, DestroyRef, inject, Input } from '@angular/core';
|
|
2
2
|
import { animate, style, transition, trigger } from '@angular/animations';
|
|
3
|
-
import { ReplaySubject, takeUntil } from 'rxjs';
|
|
4
3
|
import { CommonModule } from '@angular/common';
|
|
5
4
|
import { provideAnimations } from '@angular/platform-browser/animations';
|
|
5
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "../message.service";
|
|
8
8
|
import * as i2 from "@angular/common";
|
|
@@ -10,21 +10,17 @@ export class MessageZoneComponent {
|
|
|
10
10
|
constructor(messages) {
|
|
11
11
|
this.messages = messages;
|
|
12
12
|
this.current = [];
|
|
13
|
-
this.
|
|
13
|
+
this.destroy$ = inject(DestroyRef);
|
|
14
14
|
}
|
|
15
15
|
ngOnInit() {
|
|
16
16
|
this.messages.current
|
|
17
|
-
.pipe(
|
|
17
|
+
.pipe(takeUntilDestroyed(this.destroy$))
|
|
18
18
|
.subscribe((messages) => {
|
|
19
19
|
this.current = messages;
|
|
20
20
|
});
|
|
21
21
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
this._subscriptions$.complete();
|
|
25
|
-
}
|
|
26
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: MessageZoneComponent, deps: [{ token: i1.DataMessageService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
27
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.6", type: MessageZoneComponent, isStandalone: true, selector: "data-message-zone", inputs: { filter: "filter" }, providers: [provideAnimations()], ngImport: i0, template: "\n<div class=\"messagezone\">\n <div class=\"alert\" *ngFor=\"let message of current\" [@dispStatus]=\"message.status\" [class]=\"message.style\" (click)=\"message.showTrace=!message.showTrace\">\n <button class=\"btn-close\" type=\"button\" (click)=\"messages.ack(message)\" aria-label=\"Close\"></button><strong>{{message.title}}</strong> {{message.message}}\n <div class=\"pretrace\" *ngIf=\"message.showTrace\">{{message.trace}}</div>\n </div>\n</div>", styles: [".messagezone{position:fixed;top:30px;right:40px;width:35vw;height:auto;z-index:1050}.messagezone .pretrace{white-space:pre-wrap;font-family:monospace;font-size:.7rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [
|
|
22
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: MessageZoneComponent, deps: [{ token: i1.DataMessageService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
23
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", type: MessageZoneComponent, isStandalone: true, selector: "data-message-zone", inputs: { filter: "filter" }, providers: [provideAnimations()], ngImport: i0, template: "\n<div class=\"messagezone\">\n <div class=\"alert\" *ngFor=\"let message of current\" [@dispStatus]=\"message.status\" [class]=\"message.style\" (click)=\"message.showTrace=!message.showTrace\">\n <button class=\"btn-close\" type=\"button\" (click)=\"messages.ack(message)\" aria-label=\"Close\"></button><strong>{{message.title}}</strong> {{message.message}}\n <div class=\"pretrace\" *ngIf=\"message.showTrace\">{{message.trace}}</div>\n </div>\n</div>", styles: [".messagezone{position:fixed;top:30px;right:40px;width:35vw;height:auto;z-index:1050}.messagezone .pretrace{white-space:pre-wrap;font-family:monospace;font-size:.7rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [
|
|
28
24
|
trigger('dispStatus', [
|
|
29
25
|
transition('void => *', [
|
|
30
26
|
style({ opacity: 0 }),
|
|
@@ -37,7 +33,7 @@ export class MessageZoneComponent {
|
|
|
37
33
|
]),
|
|
38
34
|
] }); }
|
|
39
35
|
}
|
|
40
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: MessageZoneComponent, decorators: [{
|
|
41
37
|
type: Component,
|
|
42
38
|
args: [{ selector: 'data-message-zone', standalone: true, imports: [CommonModule], providers: [provideAnimations()], animations: [
|
|
43
39
|
trigger('dispStatus', [
|
|
@@ -54,4 +50,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImpor
|
|
|
54
50
|
}], ctorParameters: () => [{ type: i1.DataMessageService }], propDecorators: { filter: [{
|
|
55
51
|
type: Input
|
|
56
52
|
}] } });
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS16b25lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGEvc3JjL2xpYi9tZXNzYWdlcy9tZXNzYWdlLXpvbmUvbWVzc2FnZS16b25lLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGEvc3JjL2xpYi9tZXNzYWdlcy9tZXNzYWdlLXpvbmUvbWVzc2FnZS16b25lLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRTFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7OztBQXNCaEUsTUFBTSxPQUFPLG9CQUFvQjtJQUsvQixZQUFtQixRQUE0QjtRQUE1QixhQUFRLEdBQVIsUUFBUSxDQUFvQjtRQUh4QyxZQUFPLEdBQWMsRUFBRSxDQUFDO1FBQ3ZCLGFBQVEsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFWSxDQUFDO0lBRTVDLFFBQVE7UUFDYixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU87YUFDbEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUN2QyxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUN0QixJQUFJLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7OEdBYlUsb0JBQW9CO2tHQUFwQixvQkFBb0IsOEZBZHBCLENBQUMsaUJBQWlCLEVBQUUsQ0FBQywwQkNibEMsdWRBTU0saU9ETU0sWUFBWSxrUEFFVjtZQUNWLE9BQU8sQ0FBQyxZQUFZLEVBQUU7Z0JBQ3BCLFVBQVUsQ0FBQyxXQUFXLEVBQUU7b0JBQ3RCLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQztvQkFDckIsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztpQkFDcEMsQ0FBQztnQkFDRixVQUFVLENBQUMsV0FBVyxFQUFFO29CQUN0QixLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUM7b0JBQ3ZCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7aUJBQ3BDLENBQUM7YUFDSCxDQUFDO1NBQ0g7OzJGQUVVLG9CQUFvQjtrQkFwQmhDLFNBQVM7K0JBQ0UsbUJBQW1CLGNBR2pCLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxhQUNaLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxjQUNwQjt3QkFDVixPQUFPLENBQUMsWUFBWSxFQUFFOzRCQUNwQixVQUFVLENBQUMsV0FBVyxFQUFFO2dDQUN0QixLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUM7Z0NBQ3JCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7NkJBQ3BDLENBQUM7NEJBQ0YsVUFBVSxDQUFDLFdBQVcsRUFBRTtnQ0FDdEIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDO2dDQUN2QixPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDOzZCQUNwQyxDQUFDO3lCQUNILENBQUM7cUJBQ0g7dUZBR2UsTUFBTTtzQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRGVzdHJveVJlZiwgaW5qZWN0LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBhbmltYXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgRGF0YU1lc3NhZ2VTZXJ2aWNlLCBNZXNzYWdlIH0gZnJvbSAnLi4vbWVzc2FnZS5zZXJ2aWNlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBwcm92aWRlQW5pbWF0aW9ucyB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RhdGEtbWVzc2FnZS16b25lJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21lc3NhZ2Utem9uZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21lc3NhZ2Utem9uZS5jb21wb25lbnQuc2FzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgcHJvdmlkZXJzOiBbcHJvdmlkZUFuaW1hdGlvbnMoKV0sXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdkaXNwU3RhdHVzJywgW1xuICAgICAgdHJhbnNpdGlvbigndm9pZCA9PiAqJywgW1xuICAgICAgICBzdHlsZSh7IG9wYWNpdHk6IDAgfSksXG4gICAgICAgIGFuaW1hdGUoNTUwLCBzdHlsZSh7IG9wYWNpdHk6IDEgfSkpLFxuICAgICAgXSksXG4gICAgICB0cmFuc2l0aW9uKCcqID0+IHZvaWQnLCBbXG4gICAgICAgIHN0eWxlKHsgb3BhY2l0eTogJyonIH0pLFxuICAgICAgICBhbmltYXRlKDU1MCwgc3R5bGUoeyBvcGFjaXR5OiAwIH0pKSxcbiAgICAgIF0pLFxuICAgIF0pLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBNZXNzYWdlWm9uZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIHB1YmxpYyBmaWx0ZXI/OiBzdHJpbmc7XG4gIHB1YmxpYyBjdXJyZW50OiBNZXNzYWdlW10gPSBbXTtcbiAgcHJpdmF0ZSBkZXN0cm95JCA9IGluamVjdChEZXN0cm95UmVmKTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgbWVzc2FnZXM6IERhdGFNZXNzYWdlU2VydmljZSkge31cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5tZXNzYWdlcy5jdXJyZW50XG4gICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKChtZXNzYWdlcykgPT4ge1xuICAgICAgICB0aGlzLmN1cnJlbnQgPSBtZXNzYWdlcztcbiAgICAgIH0pO1xuICB9XG59XG4iLCJcbjxkaXYgY2xhc3M9XCJtZXNzYWdlem9uZVwiPlxuICA8ZGl2IGNsYXNzPVwiYWxlcnRcIiAqbmdGb3I9XCJsZXQgbWVzc2FnZSBvZiBjdXJyZW50XCIgW0BkaXNwU3RhdHVzXT1cIm1lc3NhZ2Uuc3RhdHVzXCIgW2NsYXNzXT1cIm1lc3NhZ2Uuc3R5bGVcIiAoY2xpY2spPVwibWVzc2FnZS5zaG93VHJhY2U9IW1lc3NhZ2Uuc2hvd1RyYWNlXCI+XG4gICAgPGJ1dHRvbiBjbGFzcz1cImJ0bi1jbG9zZVwiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwibWVzc2FnZXMuYWNrKG1lc3NhZ2UpXCIgYXJpYS1sYWJlbD1cIkNsb3NlXCI+PC9idXR0b24+PHN0cm9uZz57e21lc3NhZ2UudGl0bGV9fTwvc3Ryb25nPiZuYnNwOyB7e21lc3NhZ2UubWVzc2FnZX19XG4gICAgPGRpdiBjbGFzcz1cInByZXRyYWNlXCIgKm5nSWY9XCJtZXNzYWdlLnNob3dUcmFjZVwiPnt7bWVzc2FnZS50cmFjZX19PC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+Il19
|
|
@@ -134,10 +134,10 @@ export class DataMessageService {
|
|
|
134
134
|
}
|
|
135
135
|
this._messages$.next(out);
|
|
136
136
|
}
|
|
137
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
138
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.
|
|
137
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: DataMessageService, deps: [{ token: i0.NgZone }, { token: DATA_MESSAGE_SOUNDS, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
138
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: DataMessageService, providedIn: "root" }); }
|
|
139
139
|
}
|
|
140
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
140
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: DataMessageService, decorators: [{
|
|
141
141
|
type: Injectable,
|
|
142
142
|
args: [{
|
|
143
143
|
providedIn: "root"
|
|
@@ -148,4 +148,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImpor
|
|
|
148
148
|
type: Inject,
|
|
149
149
|
args: [DATA_MESSAGE_SOUNDS]
|
|
150
150
|
}] }] });
|
|
151
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YS9zcmMvbGliL21lc3NhZ2VzL21lc3NhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQVUsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBYSxhQUFhLEVBQWdCLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQzs7QUFNcEUsTUFBTSxDQUFOLElBQVksZ0JBS1g7QUFMRCxXQUFZLGdCQUFnQjtJQUMxQixnRUFBYyxDQUFBO0lBQ2QsMERBQVcsQ0FBQTtJQUNYLGlFQUFlLENBQUE7SUFDZiwrREFBYyxDQUFBO0FBQ2hCLENBQUMsRUFMVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBSzNCO0FBRUQsTUFBTSxDQUFOLElBQVksTUFFWDtBQUZELFdBQVksTUFBTTtJQUNoQix1Q0FBTSxDQUFBO0lBQUUsbUNBQUksQ0FBQTtJQUFFLGlDQUFHLENBQUE7QUFDbkIsQ0FBQyxFQUZXLE1BQU0sS0FBTixNQUFNLFFBRWpCO0FBRUQsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLENBQUM7QUFNckMsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxjQUFjLENBQWMscUJBQXFCLENBQUMsQ0FBQztBQUcxRixNQUFNLE9BQU8sT0FBTztJQUlsQixZQUFtQixLQUFhLEVBQ2Isd0JBQXNCLEVBQ3RCLFVBQWtCLEVBQUUsRUFDcEIsUUFBYSxJQUFJLEVBQ2pCLE1BQWMsdUJBQXVCO1FBSnJDLFVBQUssR0FBTCxLQUFLLENBQVE7UUFDYixTQUFJLEdBQUosSUFBSSxDQUFrQjtRQUN0QixZQUFPLEdBQVAsT0FBTyxDQUFhO1FBQ3BCLFVBQUssR0FBTCxLQUFLLENBQVk7UUFDakIsUUFBRyxHQUFILEdBQUcsQ0FBa0M7UUFQakQsV0FBTSxH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QUNELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzVCLENBQUM7OEdBdEdVLGtCQUFrQix3Q0FPRyxtQkFBbUI7a0hBUHhDLGtCQUFrQixjQUZqQixNQUFNOzsyRkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFRYyxRQUFROzswQkFBSSxNQUFNOzJCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiwgTmdab25lLCBPcHRpb25hbH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7T2JzZXJ2YWJsZSwgUmVwbGF5U3ViamVjdCwgU3Vic2NyaXB0aW9uLCB0aW1lcn0gZnJvbSBcInJ4anNcIjtcblxuZXhwb3J0IGNvbnN0IGVudW0gVFlQRSB7XG4gIFNVQ0NFU1MsIElORk8sIFdBUk5JTkcsIERBTkdFUlxufVxuXG5leHBvcnQgZW51bSBERUZBVUxUX1RJTUVPVVRTIHtcbiAgU1VDQ0VTUyA9IDMwMDAsXG4gIElORk8gPSA0MDAwLFxuICBXQVJOSU5HID0gMTAwMDAsXG4gIERBTkdFUiA9IDMwMDAwXG59XG5cbmV4cG9ydCBlbnVtIFNUQVRVUyB7XG4gIFVORElTUCwgRElTUCwgQUNLXG59XG5cbmNvbnN0IERFRkFVTFRfTUVTU0FHRV9USU1FT1VUID0gNTAwMDtcblxuZXhwb3J0IGludGVyZmFjZSBJU291bmRUeXBlcyB7XG4gIFtpbmRleDogc3RyaW5nXTogc3RyaW5nXG59XG5cbmV4cG9ydCBjb25zdCBEQVRBX01FU1NBR0VfU09VTkRTID0gbmV3IEluamVjdGlvblRva2VuPElTb3VuZFR5cGVzPihcImRhdGEubWVzc2FnZS5zb3VuZHNcIik7XG5cblxuZXhwb3J0IGNsYXNzIE1lc3NhZ2Uge1xuICBwdWJsaWMgc3RhdHVzOiBzdHJpbmcgPSBTVEFUVVNbU1RBVFVTLlVORElTUF07XG4gIHB1YmxpYyBzaG93VHJhY2UgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdGl0bGU6IHN0cmluZyxcbiAgICAgICAgICAgICAgcHVibGljIHR5cGU6IFRZUEUgPSBUWVBFLklORk8sXG4gICAgICAgICAgICAgIHB1YmxpYyBtZXNzYWdlOiBzdHJpbmcgPSBcIlwiLFxuICAgICAgICAgICAgICBwdWJsaWMgdHJhY2U6IGFueSA9IG51bGwsXG4gICAgICAgICAgICAgIHB1YmxpYyB0dGw6IG51bWJlciA9IERFRkFVTFRfTUVTU0FHRV9USU1FT1VUKSB7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHN0eWxlKCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMudHlwZSA9PT0gVFlQRS5EQU5HRVIpIHtcbiAgICAgIHJldHVybiBcImFsZXJ0IGFsZXJ0LWRpc21pc3NpYmxlIGFsZXJ0LWRhbmdlclwiO1xuICAgIH1cbiAgICBpZiAodGhpcy50eXBlID09PSBUWVBFLklORk8pIHtcbiAgICAgIHJldHVybiBcImFsZXJ0IGFsZXJ0LWRpc21pc3NpYmxlIGFsZXJ0LWluZm9cIjtcbiAgICB9XG4gICAgaWYgKHRoaXMudHlwZSA9PT0gVFlQRS5XQVJOSU5HKSB7XG4gICAgICByZXR1cm4gXCJhbGVydCBhbGVydC1kaXNtaXNzaWJsZSBhbGVydC13YXJuaW5nXCI7XG4gICAgfVxuICAgIGlmICh0aGlzLnR5cGUgPT09IFRZUEUuU1VDQ0VTUykge1xuICAgICAgcmV0dXJuIFwiYWxlcnQgYWxlcnQtZGlzbWlzc2libGUgYWxlcnQtc3VjY2Vzc1wiO1xuICAgIH1cbiAgICByZXR1cm4gXCJhbGVydCBhbGVydC1kaXNtaXNzaWJsZSBhbGVydC1zdWNjZXNzXCI7XG4gIH1cblxuICBwdWJsaWMgYWNrKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdHVzID0gU1RBVFVTW1NUQVRVUy5BQ0tdO1xuICB9XG59XG5cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiBcInJvb3RcIlxufSlcbmV4cG9ydCBjbGFzcyBEYXRhTWVzc2FnZVNlcnZpY2Uge1xuICBwdWJsaWMgX21lc3NhZ2VzJDogUmVwbGF5U3ViamVjdDxNZXNzYWdlW10+ID0gbmV3IFJlcGxheVN1YmplY3Q8TWVzc2FnZVtdPigxKTtcbiAgcHJpdmF0ZSBfbWVzc2FnZXM6IE1lc3NhZ2VbXSA9IFtdO1xuICBwcml2YXRlIF90aW1lciE6IE9ic2VydmFibGU8YW55PjtcbiAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBuZ1pvbmU6IE5nWm9uZSxcbiAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChEQVRBX01FU1NBR0VfU09VTkRTKSBwdWJsaWMgc291bmRzOiBJU291bmRUeXBlcykge1xuICAgIHRoaXMuaW5pdCgpO1xuICB9XG5cbiAgcHVibGljIGdldCBjdXJyZW50KCk6IE9ic2VydmFibGU8TWVzc2FnZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuX21lc3NhZ2VzJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBpbml0KCk6IHZvaWQge1xuICAgIGxldCBjaGFuZ2VkID0gZmFsc2U7XG4gICAgaWYgKCF0aGlzLl90aW1lcikge1xuICAgICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICB0aGlzLl90aW1lciA9IHRpbWVyKDUwMCwgNTAwKTtcbiAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uID0gdGhpcy5fdGltZXIuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICBmb3IgKGNvbnN0IG0gb2YgdGhpcy5fbWVzc2FnZXMpIHtcbiAgICAgICAgICAgIG0udHRsIC09IDUwMDtcbiAgICAgICAgICAgIGlmIChtLnR0bCA8PSAwKSB7XG4gICAgICAgICAgICAgIGNoYW5nZWQgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoY2hhbmdlZCkge1xuICAgICAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgICAgY29uc3Qgb3V0OiBNZXNzYWdlW10gPSBbXTtcbiAgICAgICAgICAgICAgZm9yIChjb25zdCBtIG9mIHRoaXMuX21lc3NhZ2VzKSB7XG4gICAgICAgICAgICAgICAgaWYgKG0udHRsID49IDApIHtcbiAgICAgICAgICAgICAgICAgIG91dC5wdXNoKG0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB0aGlzLl9tZXNzYWdlcyA9IG91dDtcbiAgICAgICAgICAgICAgdGhpcy5fbm90aWZ5KCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMuX3N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIHN1Y2Nlc3ModGl0bGU6IHN0cmluZywgbWVzc2FnZTogc3RyaW5nID0gXCJcIiwgdHJhY2U6IGFueSA9IG51bGwsIHRpbWVvdXQ6IG51bWJlciA9IERFRkFVTFRfVElNRU9VVFMuU1VDQ0VTUyk6IHZvaWQge1xuICAgIHRoaXMuX21lc3NhZ2VzLnB1c2gobmV3IE1lc3NhZ2UodGl0bGUsIFRZUEUuU1VDQ0VTUywgbWVzc2FnZSwgdHJhY2UsIHRpbWVvdXQpKTtcbiAgICB0aGlzLnBsYXkoXCJzdWNjZXNzXCIpO1xuICAgIHRoaXMuX25vdGlmeSgpO1xuICB9XG5cbiAgcHVibGljIGluZm8odGl0bGU6IHN0cmluZywgbWVzc2FnZTogc3RyaW5nID0gXCJcIiwgdHJhY2U6IGFueSA9IG51bGwsIHRpbWVvdXQ6IG51bWJlciA9IERFRkFVTFRfVElNRU9VVFMuSU5GTyk6IHZvaWQge1xuICAgIHRoaXMuX21lc3NhZ2VzLnB1c2gobmV3IE1lc3NhZ2UodGl0bGUsIFRZUEUuSU5GTywgbWVzc2FnZSwgdHJhY2UsIHRpbWVvdXQpKTtcbiAgICB0aGlzLnBsYXkoXCJpbmZvXCIpO1xuICAgIHRoaXMuX25vdGlmeSgpO1xuICB9XG5cbiAgcHVibGljIHdhcm5pbmcodGl0bGU6IHN0cmluZywgbWVzc2FnZTogc3RyaW5nID0gXCJcIiwgdHJhY2U6IGFueSA9IG51bGwsIHRpbWVvdXQ6IG51bWJlciA9IERFRkFVTFRfVElNRU9VVFMuV0FSTklORyk6IHZvaWQge1xuICAgIHRoaXMuX21lc3NhZ2VzLnB1c2gobmV3IE1lc3NhZ2UodGl0bGUsIFRZUEUuV0FSTklORywgbWVzc2FnZSwgdHJhY2UsIHRpbWVvdXQpKTtcbiAgICB0aGlzLnBsYXkoXCJ3YXJuaW5nXCIpXG4gICAgdGhpcy5fbm90aWZ5KCk7XG4gIH1cblxuICBwdWJsaWMgZGFuZ2VyKHRpdGxlOiBzdHJpbmcsIG1lc3NhZ2U6IHN0cmluZyA9IFwiXCIsIHRyYWNlOiBhbnkgPSBudWxsLCB0aW1lb3V0OiBudW1iZXIgPSBERUZBVUxUX1RJTUVPVVRTLkRBTkdFUik6IHZvaWQge1xuICAgIHRoaXMuX21lc3NhZ2VzLnB1c2gobmV3IE1lc3NhZ2UodGl0bGUsIFRZUEUuREFOR0VSLCBtZXNzYWdlLCB0cmFjZSwgREVGQVVMVF9USU1FT1VUUy5EQU5HRVIpKTtcbiAgICB0aGlzLnBsYXkoXCJlcnJvclwiKVxuICAgIHRoaXMuX25vdGlmeSgpO1xuICB9XG5cbiAgcHVibGljIGVycm9yKHRpdGxlOiBzdHJpbmcsIG1lc3NhZ2U6IHN0cmluZyA9IFwiXCIsIHRyYWNlOiBhbnkgPSBudWxsKTogdm9pZCB7XG4gICAgdGhpcy5kYW5nZXIodGl0bGUsIG1lc3NhZ2UsIHRyYWNlKTtcbiAgfVxuXG4gIHB1YmxpYyBkZWJ1Zyh0aXRsZTogc3RyaW5nLCBtZXNzYWdlOiBzdHJpbmcgPSBcIlwiLCB0cmFjZTogYW55ID0gbnVsbCk6IHZvaWQge1xuICAgIGNvbnNvbGUubG9nKHRpdGxlLCBtZXNzYWdlLCB0cmFjZSk7XG4gIH1cblxuICBwdWJsaWMgYWNrKG1lc3NhZ2U6IE1lc3NhZ2UpOiB2b2lkIHtcbiAgICBtZXNzYWdlLmFjaygpO1xuICAgIHRoaXMuX25vdGlmeSgpO1xuICB9XG5cbiAgcHVibGljIHBsYXkodHlwZTogc3RyaW5nID0gXCJub3RpZnlcIikge1xuICAgIGlmICh0aGlzLnNvdW5kcyAmJiB0aGlzLnNvdW5kc1t0eXBlXSkge1xuICAgICAgY29uc3QgYXVkaW8gPSBuZXcgQXVkaW8odGhpcy5zb3VuZHNbdHlwZV0pO1xuICAgICAgYXVkaW8ucGxheSgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX25vdGlmeSgpOiB2b2lkIHtcbiAgICBjb25zdCBvdXQ6IE1lc3NhZ2VbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgbWVzc2FnZSBvZiB0aGlzLl9tZXNzYWdlcykge1xuICAgICAgaWYgKChtZXNzYWdlLnN0YXR1cyA9PT0gU1RBVFVTW1NUQVRVUy5VTkRJU1BdKSB8fFxuICAgICAgICAobWVzc2FnZS5zdGF0dXMgPT09IFNUQVRVU1tTVEFUVVMuRElTUF0pKSB7XG4gICAgICAgIG1lc3NhZ2Uuc3RhdHVzID0gU1RBVFVTW1NUQVRVUy5ESVNQXTtcbiAgICAgICAgb3V0LnB1c2gobWVzc2FnZSk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuX21lc3NhZ2VzJC5uZXh0KG91dCk7XG4gIH1cblxufVxuIl19
|
|
151
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YS9zcmMvbGliL21lc3NhZ2VzL21lc3NhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQVUsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBYSxhQUFhLEVBQWdCLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQzs7QUFNcEUsTUFBTSxDQUFOLElBQVksZ0JBS1g7QUFMRCxXQUFZLGdCQUFnQjtJQUMxQixnRUFBYyxDQUFBO0lBQ2QsMERBQVcsQ0FBQTtJQUNYLGlFQUFlLENBQUE7SUFDZiwrREFBYyxDQUFBO0FBQ2hCLENBQUMsRUFMVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBSzNCO0FBRUQsTUFBTSxDQUFOLElBQVksTUFFWDtBQUZELFdBQVksTUFBTTtJQUNoQix1Q0FBTSxDQUFBO0lBQUUsbUNBQUksQ0FBQTtJQUFFLGlDQUFHLENBQUE7QUFDbkIsQ0FBQyxFQUZXLE1BQU0sS0FBTixNQUFNLFFBRWpCO0FBRUQsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLENBQUM7QUFNckMsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxjQUFjLENBQWMscUJBQXFCLENBQUMsQ0FBQztBQUcxRixNQUFNLE9BQU8sT0FBTztJQUlsQixZQUFtQixLQUFhLEVBQ2Isd0JBQXNCLEVBQ3RCLFVBQWtCLEVBQUUsRUFDcEIsUUFBYSxJQUFJLEVBQ2pCLE1BQWMsdUJBQXVCO1FBSnJDLFVBQUssR0FBTCxLQUFLLENBQVE7UUFDYixTQUFJLEdBQUosSUFBSSxDQUFrQjtRQUN0QixZQUFPLEdBQVAsT0FBTyxDQUFhO1FBQ3BCLFVBQUssR0FBTCxLQUFLLENBQVk7UUFDakIsUUFBRyxHQUFILEdBQUcsQ0FBa0M7UUFQakQsV0FBTSxH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QUFDO2dCQUMzQyxPQUFPLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ3JDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDcEIsQ0FBQztRQUNILENBQUM7UUFDRCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM1QixDQUFDOzhHQXRHVSxrQkFBa0Isd0NBT0csbUJBQW1CO2tIQVB4QyxrQkFBa0IsY0FGakIsTUFBTTs7MkZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBUWMsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIE5nWm9uZSwgT3B0aW9uYWx9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQge09ic2VydmFibGUsIFJlcGxheVN1YmplY3QsIFN1YnNjcmlwdGlvbiwgdGltZXJ9IGZyb20gXCJyeGpzXCI7XG5cbmV4cG9ydCBjb25zdCBlbnVtIFRZUEUge1xuICBTVUNDRVNTLCBJTkZPLCBXQVJOSU5HLCBEQU5HRVJcbn1cblxuZXhwb3J0IGVudW0gREVGQVVMVF9USU1FT1VUUyB7XG4gIFNVQ0NFU1MgPSAzMDAwLFxuICBJTkZPID0gNDAwMCxcbiAgV0FSTklORyA9IDEwMDAwLFxuICBEQU5HRVIgPSAzMDAwMFxufVxuXG5leHBvcnQgZW51bSBTVEFUVVMge1xuICBVTkRJU1AsIERJU1AsIEFDS1xufVxuXG5jb25zdCBERUZBVUxUX01FU1NBR0VfVElNRU9VVCA9IDUwMDA7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVNvdW5kVHlwZXMge1xuICBbaW5kZXg6IHN0cmluZ106IHN0cmluZ1xufVxuXG5leHBvcnQgY29uc3QgREFUQV9NRVNTQUdFX1NPVU5EUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxJU291bmRUeXBlcz4oXCJkYXRhLm1lc3NhZ2Uuc291bmRzXCIpO1xuXG5cbmV4cG9ydCBjbGFzcyBNZXNzYWdlIHtcbiAgcHVibGljIHN0YXR1czogc3RyaW5nID0gU1RBVFVTW1NUQVRVUy5VTkRJU1BdO1xuICBwdWJsaWMgc2hvd1RyYWNlID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHVibGljIHRpdGxlOiBzdHJpbmcsXG4gICAgICAgICAgICAgIHB1YmxpYyB0eXBlOiBUWVBFID0gVFlQRS5JTkZPLFxuICAgICAgICAgICAgICBwdWJsaWMgbWVzc2FnZTogc3RyaW5nID0gXCJcIixcbiAgICAgICAgICAgICAgcHVibGljIHRyYWNlOiBhbnkgPSBudWxsLFxuICAgICAgICAgICAgICBwdWJsaWMgdHRsOiBudW1iZXIgPSBERUZBVUxUX01FU1NBR0VfVElNRU9VVCkge1xuICB9XG5cbiAgcHVibGljIGdldCBzdHlsZSgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLnR5cGUgPT09IFRZUEUuREFOR0VSKSB7XG4gICAgICByZXR1cm4gXCJhbGVydCBhbGVydC1kaXNtaXNzaWJsZSBhbGVydC1kYW5nZXJcIjtcbiAgICB9XG4gICAgaWYgKHRoaXMudHlwZSA9PT0gVFlQRS5JTkZPKSB7XG4gICAgICByZXR1cm4gXCJhbGVydCBhbGVydC1kaXNtaXNzaWJsZSBhbGVydC1pbmZvXCI7XG4gICAgfVxuICAgIGlmICh0aGlzLnR5cGUgPT09IFRZUEUuV0FSTklORykge1xuICAgICAgcmV0dXJuIFwiYWxlcnQgYWxlcnQtZGlzbWlzc2libGUgYWxlcnQtd2FybmluZ1wiO1xuICAgIH1cbiAgICBpZiAodGhpcy50eXBlID09PSBUWVBFLlNVQ0NFU1MpIHtcbiAgICAgIHJldHVybiBcImFsZXJ0IGFsZXJ0LWRpc21pc3NpYmxlIGFsZXJ0LXN1Y2Nlc3NcIjtcbiAgICB9XG4gICAgcmV0dXJuIFwiYWxlcnQgYWxlcnQtZGlzbWlzc2libGUgYWxlcnQtc3VjY2Vzc1wiO1xuICB9XG5cbiAgcHVibGljIGFjaygpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXR1cyA9IFNUQVRVU1tTVEFUVVMuQUNLXTtcbiAgfVxufVxuXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogXCJyb290XCJcbn0pXG5leHBvcnQgY2xhc3MgRGF0YU1lc3NhZ2VTZXJ2aWNlIHtcbiAgcHVibGljIF9tZXNzYWdlcyQ6IFJlcGxheVN1YmplY3Q8TWVzc2FnZVtdPiA9IG5ldyBSZXBsYXlTdWJqZWN0PE1lc3NhZ2VbXT4oMSk7XG4gIHByaXZhdGUgX21lc3NhZ2VzOiBNZXNzYWdlW10gPSBbXTtcbiAgcHJpdmF0ZSBfdGltZXIhOiBPYnNlcnZhYmxlPGFueT47XG4gIHByaXZhdGUgX3N1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgbmdab25lOiBOZ1pvbmUsXG4gICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoREFUQV9NRVNTQUdFX1NPVU5EUykgcHVibGljIHNvdW5kczogSVNvdW5kVHlwZXMpIHtcbiAgICB0aGlzLmluaXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY3VycmVudCgpOiBPYnNlcnZhYmxlPE1lc3NhZ2VbXT4ge1xuICAgIHJldHVybiB0aGlzLl9tZXNzYWdlcyQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgaW5pdCgpOiB2b2lkIHtcbiAgICBsZXQgY2hhbmdlZCA9IGZhbHNlO1xuICAgIGlmICghdGhpcy5fdGltZXIpIHtcbiAgICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgdGhpcy5fdGltZXIgPSB0aW1lcig1MDAsIDUwMCk7XG4gICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbiA9IHRoaXMuX3RpbWVyLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgZm9yIChjb25zdCBtIG9mIHRoaXMuX21lc3NhZ2VzKSB7XG4gICAgICAgICAgICBtLnR0bCAtPSA1MDA7XG4gICAgICAgICAgICBpZiAobS50dGwgPD0gMCkge1xuICAgICAgICAgICAgICBjaGFuZ2VkID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGNoYW5nZWQpIHtcbiAgICAgICAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IG91dDogTWVzc2FnZVtdID0gW107XG4gICAgICAgICAgICAgIGZvciAoY29uc3QgbSBvZiB0aGlzLl9tZXNzYWdlcykge1xuICAgICAgICAgICAgICAgIGlmIChtLnR0bCA+PSAwKSB7XG4gICAgICAgICAgICAgICAgICBvdXQucHVzaChtKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgdGhpcy5fbWVzc2FnZXMgPSBvdXQ7XG4gICAgICAgICAgICAgIHRoaXMuX25vdGlmeSgpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbG9zZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzdWNjZXNzKHRpdGxlOiBzdHJpbmcsIG1lc3NhZ2U6IHN0cmluZyA9IFwiXCIsIHRyYWNlOiBhbnkgPSBudWxsLCB0aW1lb3V0OiBudW1iZXIgPSBERUZBVUxUX1RJTUVPVVRTLlNVQ0NFU1MpOiB2b2lkIHtcbiAgICB0aGlzLl9tZXNzYWdlcy5wdXNoKG5ldyBNZXNzYWdlKHRpdGxlLCBUWVBFLlNVQ0NFU1MsIG1lc3NhZ2UsIHRyYWNlLCB0aW1lb3V0KSk7XG4gICAgdGhpcy5wbGF5KFwic3VjY2Vzc1wiKTtcbiAgICB0aGlzLl9ub3RpZnkoKTtcbiAgfVxuXG4gIHB1YmxpYyBpbmZvKHRpdGxlOiBzdHJpbmcsIG1lc3NhZ2U6IHN0cmluZyA9IFwiXCIsIHRyYWNlOiBhbnkgPSBudWxsLCB0aW1lb3V0OiBudW1iZXIgPSBERUZBVUxUX1RJTUVPVVRTLklORk8pOiB2b2lkIHtcbiAgICB0aGlzLl9tZXNzYWdlcy5wdXNoKG5ldyBNZXNzYWdlKHRpdGxlLCBUWVBFLklORk8sIG1lc3NhZ2UsIHRyYWNlLCB0aW1lb3V0KSk7XG4gICAgdGhpcy5wbGF5KFwiaW5mb1wiKTtcbiAgICB0aGlzLl9ub3RpZnkoKTtcbiAgfVxuXG4gIHB1YmxpYyB3YXJuaW5nKHRpdGxlOiBzdHJpbmcsIG1lc3NhZ2U6IHN0cmluZyA9IFwiXCIsIHRyYWNlOiBhbnkgPSBudWxsLCB0aW1lb3V0OiBudW1iZXIgPSBERUZBVUxUX1RJTUVPVVRTLldBUk5JTkcpOiB2b2lkIHtcbiAgICB0aGlzLl9tZXNzYWdlcy5wdXNoKG5ldyBNZXNzYWdlKHRpdGxlLCBUWVBFLldBUk5JTkcsIG1lc3NhZ2UsIHRyYWNlLCB0aW1lb3V0KSk7XG4gICAgdGhpcy5wbGF5KFwid2FybmluZ1wiKVxuICAgIHRoaXMuX25vdGlmeSgpO1xuICB9XG5cbiAgcHVibGljIGRhbmdlcih0aXRsZTogc3RyaW5nLCBtZXNzYWdlOiBzdHJpbmcgPSBcIlwiLCB0cmFjZTogYW55ID0gbnVsbCwgdGltZW91dDogbnVtYmVyID0gREVGQVVMVF9USU1FT1VUUy5EQU5HRVIpOiB2b2lkIHtcbiAgICB0aGlzLl9tZXNzYWdlcy5wdXNoKG5ldyBNZXNzYWdlKHRpdGxlLCBUWVBFLkRBTkdFUiwgbWVzc2FnZSwgdHJhY2UsIERFRkFVTFRfVElNRU9VVFMuREFOR0VSKSk7XG4gICAgdGhpcy5wbGF5KFwiZXJyb3JcIilcbiAgICB0aGlzLl9ub3RpZnkoKTtcbiAgfVxuXG4gIHB1YmxpYyBlcnJvcih0aXRsZTogc3RyaW5nLCBtZXNzYWdlOiBzdHJpbmcgPSBcIlwiLCB0cmFjZTogYW55ID0gbnVsbCk6IHZvaWQge1xuICAgIHRoaXMuZGFuZ2VyKHRpdGxlLCBtZXNzYWdlLCB0cmFjZSk7XG4gIH1cblxuICBwdWJsaWMgZGVidWcodGl0bGU6IHN0cmluZywgbWVzc2FnZTogc3RyaW5nID0gXCJcIiwgdHJhY2U6IGFueSA9IG51bGwpOiB2b2lkIHtcbiAgICBjb25zb2xlLmxvZyh0aXRsZSwgbWVzc2FnZSwgdHJhY2UpO1xuICB9XG5cbiAgcHVibGljIGFjayhtZXNzYWdlOiBNZXNzYWdlKTogdm9pZCB7XG4gICAgbWVzc2FnZS5hY2soKTtcbiAgICB0aGlzLl9ub3RpZnkoKTtcbiAgfVxuXG4gIHB1YmxpYyBwbGF5KHR5cGU6IHN0cmluZyA9IFwibm90aWZ5XCIpIHtcbiAgICBpZiAodGhpcy5zb3VuZHMgJiYgdGhpcy5zb3VuZHNbdHlwZV0pIHtcbiAgICAgIGNvbnN0IGF1ZGlvID0gbmV3IEF1ZGlvKHRoaXMuc291bmRzW3R5cGVdKTtcbiAgICAgIGF1ZGlvLnBsYXkoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9ub3RpZnkoKTogdm9pZCB7XG4gICAgY29uc3Qgb3V0OiBNZXNzYWdlW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IG1lc3NhZ2Ugb2YgdGhpcy5fbWVzc2FnZXMpIHtcbiAgICAgIGlmICgobWVzc2FnZS5zdGF0dXMgPT09IFNUQVRVU1tTVEFUVVMuVU5ESVNQXSkgfHxcbiAgICAgICAgKG1lc3NhZ2Uuc3RhdHVzID09PSBTVEFUVVNbU1RBVFVTLkRJU1BdKSkge1xuICAgICAgICBtZXNzYWdlLnN0YXR1cyA9IFNUQVRVU1tTVEFUVVMuRElTUF07XG4gICAgICAgIG91dC5wdXNoKG1lc3NhZ2UpO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLl9tZXNzYWdlcyQubmV4dChvdXQpO1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { Component, Input, ViewChild } from '@angular/core';
|
|
1
|
+
import { Component, DestroyRef, inject, Input, ViewChild, } from '@angular/core';
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
3
|
import { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';
|
|
4
4
|
import { ModelListSorterComponent } from '../../model-list-sorter/model-list-sorter/model-list-sorter.component';
|
|
5
5
|
import { filter } from 'rxjs/operators';
|
|
6
|
-
import {
|
|
6
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
import * as i1 from "@angular/common";
|
|
9
9
|
import * as i2 from "@ng-bootstrap/ng-bootstrap";
|
|
@@ -14,11 +14,11 @@ export class ModelListFieldHeaderComponent {
|
|
|
14
14
|
this.sortMode = 'side';
|
|
15
15
|
this.dispMenuMode = this.menuMode;
|
|
16
16
|
this.dispSortMode = this.sortMode;
|
|
17
|
-
this.
|
|
17
|
+
this.destroy$ = inject(DestroyRef);
|
|
18
18
|
}
|
|
19
19
|
ngOnInit() {
|
|
20
20
|
this.list.messages$
|
|
21
|
-
.pipe(
|
|
21
|
+
.pipe(takeUntilDestroyed(this.destroy$), filter((m) => m.dest === 'header'))
|
|
22
22
|
.subscribe((m) => {
|
|
23
23
|
this.dispMenuMode =
|
|
24
24
|
m.menu && m.menu !== 'default' ? m.menu : this.menuMode;
|
|
@@ -27,10 +27,6 @@ export class ModelListFieldHeaderComponent {
|
|
|
27
27
|
this.display = m.show !== undefined ? m.show : this.display;
|
|
28
28
|
});
|
|
29
29
|
}
|
|
30
|
-
ngOnDestroy() {
|
|
31
|
-
this._subscriptions$.next();
|
|
32
|
-
this._subscriptions$.complete();
|
|
33
|
-
}
|
|
34
30
|
disable() {
|
|
35
31
|
this.list.fields.disable(this.field);
|
|
36
32
|
}
|
|
@@ -38,10 +34,10 @@ export class ModelListFieldHeaderComponent {
|
|
|
38
34
|
this.list.fields.move(f.name, 'after', this.field);
|
|
39
35
|
this.list.fields.enable(f.name);
|
|
40
36
|
}
|
|
41
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
42
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
37
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ModelListFieldHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
38
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", type: ModelListFieldHeaderComponent, isStandalone: true, selector: "data-model-list-field-header", inputs: { list: "list", field: "field", sort: "sort", sortField: "sortField", menuMode: "menuMode", sortMode: "sortMode", display: "display" }, viewQueries: [{ propertyName: "mnu", first: true, predicate: ["mnu"], descendants: true }], ngImport: i0, template: "\n<ng-template #label><span #ref>\n <ng-content></ng-content></span><span *ngIf=\"!ref.children.length\">{{list.fields.get(field)?.label||field}}</span></ng-template>\n<div class=\"d-flex flex-row justify-content-between align-items-end slabel\">\n <div class=\"flex-grow-1\">\n <data-model-list-sorter [list]=\"list\" [field]=\"sortField||field\" *ngIf=\"sort && dispSortMode==='side'\">\n <ng-container *ngTemplateOutlet=\"label\"></ng-container>\n </data-model-list-sorter>\n <ng-container *ngIf=\"!sort || dispSortMode==='hide'\">\n <ng-container *ngTemplateOutlet=\"label\"></ng-container>\n </ng-container>\n </div>\n <div class=\"navicons d-flex flex-row\" [attr.aria-label]=\"'Gestion champs'\" *ngIf=\"dispMenuMode==='side'\"><i class=\"bi bi-caret-left-fill\" role=\"button\" (click)=\"list.fields.move(field, 'before')\" aria-label=\"D\u00E9placer vers la gauche\"></i>\n <div ngbDropdown #mnu=\"ngbDropdown\" [container]=\"'body'\"><i class=\"bi bi-record\" ngbDropdownToggle aria-label=\"Ouvrir la boite de dialogue des champs\" role=\"button\"></i>\n <div ngbDropdownMenu>\n <button ngbDropdownItem (click)=\"disable()\"><i class=\"bi bi-trash me-2\"></i>Supprimer</button>\n <h6 class=\"dropdown-header\">Ajouter une colonne apr\u00E8s</h6>\n <ng-container *ngFor=\"let f of list.fields.fields|async\">\n <ng-container *ngIf=\"f.allowed && !f.enabled\">\n <button ngbDropdownItem (click)=\"enable(f)\" [attr.aria-label]=\"f.label||f.name\"><i class=\"bi bi-plus-circle me-2\"></i>{{f.label||f.name}}</button>\n </ng-container>\n </ng-container>\n </div>\n </div><i class=\"bi bi-caret-right-fill\" role=\"button\" (click)=\"list.fields.move(field, 'after')\" aria-label=\"D\u00E9placer vers la droite\"></i>\n </div>\n</div>", styles: [".slabel .navicons{opacity:0}.slabel:hover .navicons,.slabel.active .navicons{opacity:1!important}.dropdown-toggle:after{display:none!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { 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: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: NgbDropdownModule }, { kind: "directive", type: i2.NgbDropdown, selector: "[ngbDropdown]", inputs: ["autoClose", "dropdownClass", "open", "placement", "popperOptions", "container", "display"], outputs: ["openChange"], exportAs: ["ngbDropdown"] }, { kind: "directive", type: i2.NgbDropdownToggle, selector: "[ngbDropdownToggle]" }, { kind: "directive", type: i2.NgbDropdownMenu, selector: "[ngbDropdownMenu]" }, { kind: "directive", type: i2.NgbDropdownItem, selector: "[ngbDropdownItem]", inputs: ["tabindex", "disabled"] }, { kind: "directive", type: i2.NgbDropdownButtonItem, selector: "button[ngbDropdownItem]" }, { kind: "component", type: ModelListSorterComponent, selector: "data-model-list-sorter", inputs: ["list", "field"] }] }); }
|
|
43
39
|
}
|
|
44
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ModelListFieldHeaderComponent, decorators: [{
|
|
45
41
|
type: Component,
|
|
46
42
|
args: [{ selector: 'data-model-list-field-header', standalone: true, imports: [CommonModule, NgbDropdownModule, ModelListSorterComponent], template: "\n<ng-template #label><span #ref>\n <ng-content></ng-content></span><span *ngIf=\"!ref.children.length\">{{list.fields.get(field)?.label||field}}</span></ng-template>\n<div class=\"d-flex flex-row justify-content-between align-items-end slabel\">\n <div class=\"flex-grow-1\">\n <data-model-list-sorter [list]=\"list\" [field]=\"sortField||field\" *ngIf=\"sort && dispSortMode==='side'\">\n <ng-container *ngTemplateOutlet=\"label\"></ng-container>\n </data-model-list-sorter>\n <ng-container *ngIf=\"!sort || dispSortMode==='hide'\">\n <ng-container *ngTemplateOutlet=\"label\"></ng-container>\n </ng-container>\n </div>\n <div class=\"navicons d-flex flex-row\" [attr.aria-label]=\"'Gestion champs'\" *ngIf=\"dispMenuMode==='side'\"><i class=\"bi bi-caret-left-fill\" role=\"button\" (click)=\"list.fields.move(field, 'before')\" aria-label=\"D\u00E9placer vers la gauche\"></i>\n <div ngbDropdown #mnu=\"ngbDropdown\" [container]=\"'body'\"><i class=\"bi bi-record\" ngbDropdownToggle aria-label=\"Ouvrir la boite de dialogue des champs\" role=\"button\"></i>\n <div ngbDropdownMenu>\n <button ngbDropdownItem (click)=\"disable()\"><i class=\"bi bi-trash me-2\"></i>Supprimer</button>\n <h6 class=\"dropdown-header\">Ajouter une colonne apr\u00E8s</h6>\n <ng-container *ngFor=\"let f of list.fields.fields|async\">\n <ng-container *ngIf=\"f.allowed && !f.enabled\">\n <button ngbDropdownItem (click)=\"enable(f)\" [attr.aria-label]=\"f.label||f.name\"><i class=\"bi bi-plus-circle me-2\"></i>{{f.label||f.name}}</button>\n </ng-container>\n </ng-container>\n </div>\n </div><i class=\"bi bi-caret-right-fill\" role=\"button\" (click)=\"list.fields.move(field, 'after')\" aria-label=\"D\u00E9placer vers la droite\"></i>\n </div>\n</div>", styles: [".slabel .navicons{opacity:0}.slabel:hover .navicons,.slabel.active .navicons{opacity:1!important}.dropdown-toggle:after{display:none!important}\n"] }]
|
|
47
43
|
}], ctorParameters: () => [], propDecorators: { list: [{
|
|
@@ -62,4 +58,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImpor
|
|
|
62
58
|
type: ViewChild,
|
|
63
59
|
args: ['mnu', { static: false }]
|
|
64
60
|
}] } });
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwtbGlzdC1maWVsZC1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YS9zcmMvbGliL21vZGVsbGlzdC9tb2RlbC1saXN0LWZpZWxkcy9tb2RlbC1saXN0LWZpZWxkLWhlYWRlci9tb2RlbC1saXN0LWZpZWxkLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhL3NyYy9saWIvbW9kZWxsaXN0L21vZGVsLWxpc3QtZmllbGRzL21vZGVsLWxpc3QtZmllbGQtaGVhZGVyL21vZGVsLWxpc3QtZmllbGQtaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBRUwsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQWUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1RUFBdUUsQ0FBQztBQUNqSCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7QUFTaEUsTUFBTSxPQUFPLDZCQUE2QjtJQWdCeEM7UUFYZ0IsU0FBSSxHQUFhLEtBQUssQ0FBQztRQUV2QixhQUFRLEdBQThCLE1BQU0sQ0FBQztRQUM3QyxhQUFRLEdBQThCLE1BQU0sQ0FBQztRQUl0RCxpQkFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDN0IsaUJBQVksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQzVCLGFBQVEsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFdkIsQ0FBQztJQUVULFFBQVE7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVM7YUFDaEIsSUFBSSxDQUNILGtCQUFrQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFDakMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUNuQzthQUNBLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ2YsSUFBSSxDQUFDLFlBQVk7Z0JBQ2YsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUMxRCxJQUFJLENBQUMsWUFBWTtnQkFDZixDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQzFELElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDOUQsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sT0FBTztRQUNaLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxDQUFpQjtRQUM3QixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25ELElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEMsQ0FBQzs4R0F4Q1UsNkJBQTZCO2tHQUE3Qiw2QkFBNkIsb1VDeEIxQyxtMERBeUJNLDBNREhNLFlBQVksMmRBQUUsaUJBQWlCLG1uQkFBRSx3QkFBd0I7OzJGQUV4RCw2QkFBNkI7a0JBUHpDLFNBQVM7K0JBQ0UsOEJBQThCLGNBRzVCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxpQkFBaUIsRUFBRSx3QkFBd0IsQ0FBQzt3REFLcEQsSUFBSTtzQkFBbkIsS0FBSztnQkFDVSxLQUFLO3NCQUFwQixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1UsU0FBUztzQkFBeEIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsT0FBTztzQkFBdEIsS0FBSztnQkFFc0MsR0FBRztzQkFBOUMsU0FBUzt1QkFBQyxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBEZXN0cm95UmVmLFxuICBpbmplY3QsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNb2RlbExpc3QgfSBmcm9tICcuLi8uLi9tb2RlbC1saXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgRGF0YU1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vZGF0YS9kYXRhLW1vZGVsJztcbmltcG9ydCB7IE1vZGVsTGlzdEZpZWxkIH0gZnJvbSAnLi4vbW9kZWwtbGlzdC1maWVsZHMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nYkRyb3Bkb3duLCBOZ2JEcm9wZG93bk1vZHVsZSB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7IE1vZGVsTGlzdFNvcnRlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vZGVsLWxpc3Qtc29ydGVyL21vZGVsLWxpc3Qtc29ydGVyL21vZGVsLWxpc3Qtc29ydGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RhdGEtbW9kZWwtbGlzdC1maWVsZC1oZWFkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vbW9kZWwtbGlzdC1maWVsZC1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tb2RlbC1saXN0LWZpZWxkLWhlYWRlci5jb21wb25lbnQuc2FzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBOZ2JEcm9wZG93bk1vZHVsZSwgTW9kZWxMaXN0U29ydGVyQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgTW9kZWxMaXN0RmllbGRIZWFkZXJDb21wb25lbnQ8VCBleHRlbmRzIERhdGFNb2RlbD5cbiAgaW1wbGVtZW50cyBPbkluaXRcbntcbiAgQElucHV0KCkgcHVibGljIGxpc3QhOiBNb2RlbExpc3Q8VD47XG4gIEBJbnB1dCgpIHB1YmxpYyBmaWVsZCE6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHNvcnQ/OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBzb3J0RmllbGQ/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyBtZW51TW9kZTogJ2hpZGUnIHwgJ3NpZGUnIHwgJ2NsaWNrJyA9ICdzaWRlJztcbiAgQElucHV0KCkgcHVibGljIHNvcnRNb2RlOiAnaGlkZScgfCAnc2lkZScgfCAnY2xpY2snID0gJ3NpZGUnO1xuICBASW5wdXQoKSBwdWJsaWMgZGlzcGxheT86IGJvb2xlYW47XG5cbiAgQFZpZXdDaGlsZCgnbW51JywgeyBzdGF0aWM6IGZhbHNlIH0pIHB1YmxpYyBtbnU/OiBOZ2JEcm9wZG93bjtcbiAgcHVibGljIGRpc3BNZW51TW9kZSA9IHRoaXMubWVudU1vZGU7XG4gIHB1YmxpYyBkaXNwU29ydE1vZGUgPSB0aGlzLnNvcnRNb2RlO1xuICBwcml2YXRlIGRlc3Ryb3kkID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBwdWJsaWMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5saXN0Lm1lc3NhZ2VzJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgICAgZmlsdGVyKChtKSA9PiBtLmRlc3QgPT09ICdoZWFkZXInKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKG0pID0+IHtcbiAgICAgICAgdGhpcy5kaXNwTWVudU1vZGUgPVxuICAgICAgICAgIG0ubWVudSAmJiBtLm1lbnUgIT09ICdkZWZhdWx0JyA/IG0ubWVudSA6IHRoaXMubWVudU1vZGU7XG4gICAgICAgIHRoaXMuZGlzcFNvcnRNb2RlID1cbiAgICAgICAgICBtLnNvcnQgJiYgbS5zb3J0ICE9PSAnZGVmYXVsdCcgPyBtLnNvcnQgOiB0aGlzLnNvcnRNb2RlO1xuICAgICAgICB0aGlzLmRpc3BsYXkgPSBtLnNob3cgIT09IHVuZGVmaW5lZCA/IG0uc2hvdyA6IHRoaXMuZGlzcGxheTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGRpc2FibGUoKSB7XG4gICAgdGhpcy5saXN0LmZpZWxkcy5kaXNhYmxlKHRoaXMuZmllbGQpO1xuICB9XG5cbiAgcHVibGljIGVuYWJsZShmOiBNb2RlbExpc3RGaWVsZCkge1xuICAgIHRoaXMubGlzdC5maWVsZHMubW92ZShmLm5hbWUsICdhZnRlcicsIHRoaXMuZmllbGQpO1xuICAgIHRoaXMubGlzdC5maWVsZHMuZW5hYmxlKGYubmFtZSk7XG4gIH1cbn1cbiIsIlxuPG5nLXRlbXBsYXRlICNsYWJlbD48c3BhbiAjcmVmPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD48L3NwYW4+PHNwYW4gKm5nSWY9XCIhcmVmLmNoaWxkcmVuLmxlbmd0aFwiPnt7bGlzdC5maWVsZHMuZ2V0KGZpZWxkKT8ubGFiZWx8fGZpZWxkfX08L3NwYW4+PC9uZy10ZW1wbGF0ZT5cbjxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1yb3cganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtZW5kIHNsYWJlbFwiPlxuICA8ZGl2IGNsYXNzPVwiZmxleC1ncm93LTFcIj5cbiAgICA8ZGF0YS1tb2RlbC1saXN0LXNvcnRlciBbbGlzdF09XCJsaXN0XCIgW2ZpZWxkXT1cInNvcnRGaWVsZHx8ZmllbGRcIiAqbmdJZj1cInNvcnQgJmFtcDsmYW1wOyBkaXNwU29ydE1vZGU9PT0nc2lkZSdcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJsYWJlbFwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGF0YS1tb2RlbC1saXN0LXNvcnRlcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXNvcnQgfHwgZGlzcFNvcnRNb2RlPT09J2hpZGUnXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibGFiZWxcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJuYXZpY29ucyBkLWZsZXggZmxleC1yb3dcIiBbYXR0ci5hcmlhLWxhYmVsXT1cIidHZXN0aW9uIGNoYW1wcydcIiAqbmdJZj1cImRpc3BNZW51TW9kZT09PSdzaWRlJ1wiPjxpIGNsYXNzPVwiYmkgYmktY2FyZXQtbGVmdC1maWxsXCIgcm9sZT1cImJ1dHRvblwiIChjbGljayk9XCJsaXN0LmZpZWxkcy5tb3ZlKGZpZWxkLCAnYmVmb3JlJylcIiBhcmlhLWxhYmVsPVwiRMOpcGxhY2VyIHZlcnMgbGEgZ2F1Y2hlXCI+PC9pPlxuICAgIDxkaXYgbmdiRHJvcGRvd24gI21udT1cIm5nYkRyb3Bkb3duXCIgW2NvbnRhaW5lcl09XCInYm9keSdcIj48aSBjbGFzcz1cImJpIGJpLXJlY29yZFwiIG5nYkRyb3Bkb3duVG9nZ2xlIGFyaWEtbGFiZWw9XCJPdXZyaXIgbGEgYm9pdGUgZGUgZGlhbG9ndWUgZGVzIGNoYW1wc1wiIHJvbGU9XCJidXR0b25cIj48L2k+XG4gICAgICA8ZGl2IG5nYkRyb3Bkb3duTWVudT5cbiAgICAgICAgPGJ1dHRvbiBuZ2JEcm9wZG93bkl0ZW0gKGNsaWNrKT1cImRpc2FibGUoKVwiPjxpIGNsYXNzPVwiYmkgYmktdHJhc2ggbWUtMlwiPjwvaT5TdXBwcmltZXI8L2J1dHRvbj5cbiAgICAgICAgPGg2IGNsYXNzPVwiZHJvcGRvd24taGVhZGVyXCI+QWpvdXRlciB1bmUgY29sb25uZSBhcHLDqHM8L2g2PlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBmIG9mIGxpc3QuZmllbGRzLmZpZWxkc3xhc3luY1wiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmLmFsbG93ZWQgJmFtcDsmYW1wOyAhZi5lbmFibGVkXCI+XG4gICAgICAgICAgICA8YnV0dG9uIG5nYkRyb3Bkb3duSXRlbSAoY2xpY2spPVwiZW5hYmxlKGYpXCIgW2F0dHIuYXJpYS1sYWJlbF09XCJmLmxhYmVsfHxmLm5hbWVcIj48aSBjbGFzcz1cImJpIGJpLXBsdXMtY2lyY2xlIG1lLTJcIj48L2k+e3tmLmxhYmVsfHxmLm5hbWV9fTwvYnV0dG9uPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PjxpIGNsYXNzPVwiYmkgYmktY2FyZXQtcmlnaHQtZmlsbFwiIHJvbGU9XCJidXR0b25cIiAoY2xpY2spPVwibGlzdC5maWVsZHMubW92ZShmaWVsZCwgJ2FmdGVyJylcIiBhcmlhLWxhYmVsPVwiRMOpcGxhY2VyIHZlcnMgbGEgZHJvaXRlXCI+PC9pPlxuICA8L2Rpdj5cbjwvZGl2PiJdfQ==
|
|
@@ -44,10 +44,10 @@ export class ModelListFieldsSelectorComponent {
|
|
|
44
44
|
this.list.fields.enable(f.name);
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
48
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
47
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ModelListFieldsSelectorComponent, deps: [{ token: i1.NgbOffcanvas }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
48
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", type: ModelListFieldsSelectorComponent, isStandalone: true, selector: "data-model-list-fields-selector", inputs: { list: "list" }, providers: [{ provide: CDK_DRAG_CONFIG, useValue: DragConfig }], viewQueries: [{ propertyName: "ofctpl", first: true, predicate: ["selector"], descendants: true, static: true }], ngImport: i0, template: "<i class=\"bi bi-list-ul\" (click)=\"open()\" role=\"button\" aria-label=\"Choix des champs\"></i>\n<ng-template #selector let-offcanvas>\n <div class=\"offcanvas-header\">\n <h4 class=\"offcanvas-title\">Choix des champs</h4>\n <button class=\"btn-close\" type=\"button\" aria-label=\"Close\" (click)=\"offcanvas.dismiss('x')\"></button>\n </div>\n <div class=\"offcanvas-body\" cdkScrollable>\n <div class=\"fields-list\" cdkDropList cdkDropListLockAxis=\"y\" (cdkDropListDropped)=\"drop($event)\" *ngIf=\"list.fields.fields|async as fields\">\n <ng-container *ngFor=\"let f of fields\">\n <ng-container *ngIf=\"seeMore || f.priority >= 0\">\n <div class=\"field-box\" cdkDrag (click)=\"toggle(f)\" [cdkDragData]=\"f.name\" [class.enabled]=\"f.enabled\" [class.compact]=\"fields.length>30\" [attr.arial-label]=\"f.label\" role=\"button\">{{f.label}}<span class=\"badge bg-info\"> {{f.priority}}</span></div>\n </ng-container>\n </ng-container>\n </div>\n <button class=\"btn btn-sm btn-link\" (click)=\"seeMore=!seeMore\">plus de champs</button>\n </div>\n</ng-template>", styles: [".fields-list{width:100%;max-width:100%;border:var(--bs-border-style) var(--bs-border-width) var(--bs-border-color);min-height:50px;display:block;background:var(--bs-body-bg-rgb);border-radius:var(--bs-border-radius-sm);overflow:hidden}.field-box{padding:.5rem 1rem;border-bottom:solid 1px #ccc;color:var(--bs-black);display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;cursor:move;background:#fff;font-size:var(--bs-body-font-size)}.field-box.compact{padding:.2rem 1rem;font-size:.9rem}.field-box.enabled{background-color:var(--bs-success);color:var(--bs-white)}.cdk-drag-preview{box-sizing:border-box;border-radius:var(--bs-border-radius-sm);box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.field-box:last-child{border:none}.fields-list.cdk-drop-list-dragging .field-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "ngmodule", type: DragDropModule }, { kind: "directive", type: i3.CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "directive", type: i4.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i4.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "ngmodule", type: CdkScrollableModule }, { kind: "ngmodule", type: NgbOffcanvasModule }] }); }
|
|
49
49
|
}
|
|
50
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
50
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ModelListFieldsSelectorComponent, decorators: [{
|
|
51
51
|
type: Component,
|
|
52
52
|
args: [{ selector: 'data-model-list-fields-selector', standalone: true, imports: [
|
|
53
53
|
CommonModule,
|
|
@@ -61,4 +61,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImpor
|
|
|
61
61
|
type: ViewChild,
|
|
62
62
|
args: ['selector', { static: true }]
|
|
63
63
|
}] } });
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwtbGlzdC1maWVsZHMtc2VsZWN0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YS9zcmMvbGliL21vZGVsbGlzdC9tb2RlbC1saXN0LWZpZWxkcy9tb2RlbC1saXN0LWZpZWxkcy1zZWxlY3Rvci9tb2RlbC1saXN0LWZpZWxkcy1zZWxlY3Rvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhL3NyYy9saWIvbW9kZWxsaXN0L21vZGVsLWxpc3QtZmllbGRzL21vZGVsLWxpc3QtZmllbGRzLXNlbGVjdG9yL21vZGVsLWxpc3QtZmllbGRzLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdoRixPQUFPLEVBQ0wsZUFBZSxFQUVmLGNBQWMsR0FDZixNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQWdCLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFOUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7OztBQUU3RCxNQUFNLFVBQVUsR0FBRztJQUNqQixrQkFBa0IsRUFBRSxDQUFDO0lBQ3JCLCtCQUErQixFQUFFLEVBQUU7SUFDbkMsTUFBTSxFQUFFLEtBQUs7Q0FDZCxDQUFDO0FBZUYsTUFBTSxPQUFPLGdDQUFnQztJQVEzQyxZQUFvQixJQUFrQjtRQUFsQixTQUFJLEdBQUosSUFBSSxDQUFjO1FBRi9CLFlBQU8sR0FBWSxLQUFLLENBQUM7SUFFUyxDQUFDO0lBRW5DLFFBQVE7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBQzNDLENBQUM7SUFDSCxDQUFDO0lBRU0sSUFBSTtRQUNULElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBSSxDQUFDLE1BQTJCO1FBQzlCLElBQUksR0FBRyxHQUFHLE1BQU0sQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ25DLElBQUksTUFBTSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDL0MsR0FBRyxJQUFJLENBQUMsQ0FBQztRQUNYLENBQUM7YUFBTSxDQUFDO1lBQ04sR0FBRyxJQUFJLENBQUMsQ0FBQztRQUNYLENBQUM7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxDQUFpQjtRQUM3QixJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xDLENBQUM7SUFDSCxDQUFDOzhHQXBDVSxnQ0FBZ0M7a0dBQWhDLGdDQUFnQyx3R0FGaEMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxDQUFDLDRJQzlCakUsNG1DQWdCYyxva0NEU1YsWUFBWSxvVEFDWixjQUFjLDJpQ0FDZCxtQkFBbUIsOEJBQ25CLGtCQUFrQjs7MkZBSVQsZ0NBQWdDO2tCQWI1QyxTQUFTOytCQUNFLGlDQUFpQyxjQUcvQixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixjQUFjO3dCQUNkLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3FCQUNuQixhQUNVLENBQUMsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsQ0FBQztpRkFLL0MsSUFBSTtzQkFBbkIsS0FBSztnQkFFQyxNQUFNO3NCQURaLFNBQVM7dUJBQUMsVUFBVSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRhTW9kZWwgfSBmcm9tICcuLi8uLi8uLi9kYXRhL2RhdGEtbW9kZWwnO1xuaW1wb3J0IHsgTW9kZWxMaXN0IH0gZnJvbSAnLi4vLi4vbW9kZWwtbGlzdC5zZXJ2aWNlJztcbmltcG9ydCB7XG4gIENES19EUkFHX0NPTkZJRyxcbiAgQ2RrRHJhZ0Ryb3AsXG4gIERyYWdEcm9wTW9kdWxlLFxufSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ2JPZmZjYW52YXMsIE5nYk9mZmNhbnZhc01vZHVsZSB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7IE1vZGVsTGlzdEZpZWxkIH0gZnJvbSAnLi4vbW9kZWwtbGlzdC1maWVsZHMnO1xuaW1wb3J0IHsgQ2RrU2Nyb2xsYWJsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9zY3JvbGxpbmcnO1xuXG5jb25zdCBEcmFnQ29uZmlnID0ge1xuICBkcmFnU3RhcnRUaHJlc2hvbGQ6IDUsXG4gIHBvaW50ZXJEaXJlY3Rpb25DaGFuZ2VUaHJlc2hvbGQ6IDEwLFxuICB6SW5kZXg6IDEwMDAwLFxufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGF0YS1tb2RlbC1saXN0LWZpZWxkcy1zZWxlY3RvcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9tb2RlbC1saXN0LWZpZWxkcy1zZWxlY3Rvci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21vZGVsLWxpc3QtZmllbGRzLXNlbGVjdG9yLmNvbXBvbmVudC5zYXNzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRHJhZ0Ryb3BNb2R1bGUsXG4gICAgQ2RrU2Nyb2xsYWJsZU1vZHVsZSxcbiAgICBOZ2JPZmZjYW52YXNNb2R1bGUsXG4gIF0sXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogQ0RLX0RSQUdfQ09ORklHLCB1c2VWYWx1ZTogRHJhZ0NvbmZpZyB9XSxcbn0pXG5leHBvcnQgY2xhc3MgTW9kZWxMaXN0RmllbGRzU2VsZWN0b3JDb21wb25lbnQ8VCBleHRlbmRzIERhdGFNb2RlbD5cbiAgaW1wbGVtZW50cyBPbkluaXRcbntcbiAgQElucHV0KCkgcHVibGljIGxpc3QhOiBNb2RlbExpc3Q8VD47XG4gIEBWaWV3Q2hpbGQoJ3NlbGVjdG9yJywgeyBzdGF0aWM6IHRydWUgfSlcbiAgcHVibGljIG9mY3RwbCE6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICBwdWJsaWMgc2VlTW9yZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX29mYzogTmdiT2ZmY2FudmFzKSB7fVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICBpZiAoIXRoaXMubGlzdCB8fCAhdGhpcy5saXN0LmZpZWxkcykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNaXNzaW5nIGxpc3QgLyBmaWVsZHMnKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3BlbigpIHtcbiAgICB0aGlzLl9vZmMub3Blbih0aGlzLm9mY3RwbCk7XG4gIH1cblxuICBkcm9wKCRldmVudDogQ2RrRHJhZ0Ryb3A8VCwgYW55Pikge1xuICAgIGxldCBwb3MgPSAkZXZlbnQuY3VycmVudEluZGV4ICogMTA7XG4gICAgaWYgKCRldmVudC5jdXJyZW50SW5kZXggPiAkZXZlbnQucHJldmlvdXNJbmRleCkge1xuICAgICAgcG9zICs9IDE7XG4gICAgfSBlbHNlIHtcbiAgICAgIHBvcyAtPSAxO1xuICAgIH1cbiAgICB0aGlzLmxpc3QuZmllbGRzLnNldFBvc2l0aW9uKCRldmVudC5pdGVtLmRhdGEsIHBvcyk7XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlKGY6IE1vZGVsTGlzdEZpZWxkKSB7XG4gICAgaWYgKGYuZW5hYmxlZCkge1xuICAgICAgdGhpcy5saXN0LmZpZWxkcy5kaXNhYmxlKGYubmFtZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubGlzdC5maWVsZHMuZW5hYmxlKGYubmFtZSk7XG4gICAgfVxuICB9XG59XG4iLCI8aSBjbGFzcz1cImJpIGJpLWxpc3QtdWxcIiAoY2xpY2spPVwib3BlbigpXCIgcm9sZT1cImJ1dHRvblwiIGFyaWEtbGFiZWw9XCJDaG9peCBkZXMgY2hhbXBzXCI+PC9pPlxuPG5nLXRlbXBsYXRlICNzZWxlY3RvciBsZXQtb2ZmY2FudmFzPlxuICA8ZGl2IGNsYXNzPVwib2ZmY2FudmFzLWhlYWRlclwiPlxuICAgIDxoNCBjbGFzcz1cIm9mZmNhbnZhcy10aXRsZVwiPkNob2l4IGRlcyBjaGFtcHM8L2g0PlxuICAgIDxidXR0b24gY2xhc3M9XCJidG4tY2xvc2VcIiB0eXBlPVwiYnV0dG9uXCIgYXJpYS1sYWJlbD1cIkNsb3NlXCIgKGNsaWNrKT1cIm9mZmNhbnZhcy5kaXNtaXNzKCd4JylcIj48L2J1dHRvbj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJvZmZjYW52YXMtYm9keVwiIGNka1Njcm9sbGFibGU+XG4gICAgPGRpdiBjbGFzcz1cImZpZWxkcy1saXN0XCIgY2RrRHJvcExpc3QgY2RrRHJvcExpc3RMb2NrQXhpcz1cInlcIiAoY2RrRHJvcExpc3REcm9wcGVkKT1cImRyb3AoJGV2ZW50KVwiICpuZ0lmPVwibGlzdC5maWVsZHMuZmllbGRzfGFzeW5jIGFzIGZpZWxkc1wiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZiBvZiBmaWVsZHNcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlZU1vcmUgfHwgZi5wcmlvcml0eSAmZ3Q7PSAwXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkLWJveFwiIGNka0RyYWcgKGNsaWNrKT1cInRvZ2dsZShmKVwiIFtjZGtEcmFnRGF0YV09XCJmLm5hbWVcIiBbY2xhc3MuZW5hYmxlZF09XCJmLmVuYWJsZWRcIiBbY2xhc3MuY29tcGFjdF09XCJmaWVsZHMubGVuZ3RoJmd0OzMwXCIgW2F0dHIuYXJpYWwtbGFiZWxdPVwiZi5sYWJlbFwiIHJvbGU9XCJidXR0b25cIj57e2YubGFiZWx9fTxzcGFuIGNsYXNzPVwiYmFkZ2UgYmctaW5mb1wiPiB7e2YucHJpb3JpdHl9fTwvc3Bhbj48L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1zbSBidG4tbGlua1wiIChjbGljayk9XCJzZWVNb3JlPSFzZWVNb3JlXCI+cGx1cyBkZSBjaGFtcHM8L2J1dHRvbj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPiJdfQ==
|
|
@@ -270,4 +270,4 @@ export class ModelListFields {
|
|
|
270
270
|
this._fields.next(this.__fields);
|
|
271
271
|
}
|
|
272
272
|
}
|
|
273
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwtbGlzdC1maWVsZHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhL3NyYy9saWIvbW9kZWxsaXN0L21vZGVsLWxpc3QtZmllbGRzL21vZGVsLWxpc3QtZmllbGRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFlakQsTUFBTSxPQUFPLGVBQWU7SUFHMUIsWUFBWSxVQUF5QixFQUFFLE1BQXFCO1FBd0lwRCxZQUFPLEdBQUcsSUFBSSxhQUFhLENBQW1CLENBQUMsQ0FBQyxDQUFDO1FBTWpELGFBQVEsR0FBYSxFQUFFLENBQUM7UUFNeEIsWUFBTyxHQUFHLElBQUksYUFBYSxDQUFXLENBQUMsQ0FBQyxDQUFDO1FBbkovQyx3QkFBd0I7UUFDeEIsTUFBTSxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzlCLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQztRQUNmLEtBQUssTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNyQixHQUFHLENBQUMsSUFBSSxDQUFDO2dCQUNQLElBQUksRUFBRSxFQUFFO2dCQUNSLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFdBQVcsSUFBSSxFQUFFO2dCQUNqQyxPQUFPLEVBQUUsS0FBSztnQkFDZCxPQUFPLEVBQUUsS0FBSztnQkFDZCxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7Z0JBQ2YsUUFBUSxFQUFFLEdBQUcsQ0FBQyxNQUFNLEdBQUcsRUFBRTtnQkFDekIsUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsUUFBUSxJQUFJLENBQUM7YUFDakMsQ0FBQyxDQUFDO1NBQ0o7UUFDRCxnQ0FBZ0M7UUFDaEMsTUFBTSxNQUFNLEdBQUcsTUFBTSxF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Q0FBQyxRQUFRLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNwQixDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ1I7UUFDRCxNQUFNLEdBQUcsR0FBYSxFQUFFLENBQUM7UUFDekIsS0FBSyxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQzdCLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRTtnQkFDYixHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNsQjtTQUNGO1FBQ0QsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUM7UUFDcEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNuQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlLCBSZXBsYXlTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEYXRhTW9kZWwgfSBmcm9tICcuLi8uLi9kYXRhL2RhdGEtbW9kZWwnO1xuaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2RhdGEvZGF0YS1jb2xsZWN0aW9uJztcbmltcG9ydCB7IEZpZWxkc1BhcmFtcyB9IGZyb20gJy4uL21vZGVsLWxpc3Quc2VydmljZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9kZWxMaXN0RmllbGQge1xuICBuYW1lOiBzdHJpbmc7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIGVuYWJsZWQ6IGJvb2xlYW47XG4gIGFsbG93ZWQ6IGJvb2xlYW47XG4gIGZpZWxkOiBhbnk7XG4gIHBvc2l0aW9uOiBudW1iZXI7XG4gIHByaW9yaXR5OiBudW1iZXI7XG59XG5cbmV4cG9ydCBjbGFzcyBNb2RlbExpc3RGaWVsZHM8VCBleHRlbmRzIERhdGFNb2RlbD4ge1xuICBwcml2YXRlIHJlYWRvbmx5IF9fZmllbGRzITogTW9kZWxMaXN0RmllbGRbXTtcblxuICBjb25zdHJ1Y3Rvcihjb2xsZWN0aW9uOiBDb2xsZWN0aW9uPFQ+LCBwYXJhbXM/OiBGaWVsZHNQYXJhbXMpIHtcbiAgICAvLyBHZXQgZmllbGRzIGZyb20gbW9kZWxcbiAgICBjb25zdCBtID0gY29sbGVjdGlvbi5jcmVhdGUoKTtcbiAgICBjb25zdCB0bXAgPSBbXTtcbiAgICBmb3IgKGNvbnN0IGZuIG9mIG0uRk4pIHtcbiAgICAgIHRtcC5wdXNoKHtcbiAgICAgICAgbmFtZTogZm4sXG4gICAgICAgIGxhYmVsOiBtLkZNKGZuKS5kZXNjcmlwdGlvbiB8fCBmbixcbiAgICAgICAgYWxsb3dlZDogZmFsc2UsXG4gICAgICAgIGVuYWJsZWQ6IGZhbHNlLFxuICAgICAgICBmaWVsZDogbS5GVihmbiksXG4gICAgICAgIHBvc2l0aW9uOiB0bXAubGVuZ3RoICogMTAsXG4gICAgICAgIHByaW9yaXR5OiBtLkZNKGZuKS5wcmlvcml0eSB8fCAwLFxuICAgICAgfSk7XG4gICAgfVxuICAgIC8vIEFkZCBjdXN0b20gZmllbGRzIGlmIHByb3ZpZGVkXG4gICAgY29uc3QgY3VzdG9tID0gcGFyYW1zPy5jdXN0b20gfHwgW107XG4gICAgZm9yIChjb25zdCBjIG9mIGN1c3RvbSkge1xuICAgICAgdG1wLnB1c2goe1xuICAgICAgICBuYW1lOiBjLm5hbWUsXG4gICAgICAgIGxhYmVsOiBjLmxhYmVsLFxuICAgICAgICBhbGxvd2VkOiBmYWxzZSxcbiAgICAgICAgZW5hYmxlZDogZmFsc2UsXG4gICAgICAgIGZpZWxkOiBudWxsLFxuICAgICAgICBwb3NpdGlvbjogdG1wLmxlbmd0aCAqIDEwLFxuICAgICAgICBwcmlvcml0eTogYy5wcmlvcml0eSB8fCAwLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdG1wLnNvcnQoKGIsIGEpID0+XG4gICAgICBhLnByaW9yaXR5ID09PSBiLnByaW9yaXR5XG4gICAgICAgID8gYi5wb3NpdGlvbiAtIGEucG9zaXRpb25cbiAgICAgICAgOiBhLnByaW9yaXR5IC0gYi5wcmlvcml0eVxuICAgICk7XG4gICAgbGV0IHBvcyA9IDA7XG4gICAgZm9yIChjb25zdCBpIG9mIHRtcCkge1xuICAgICAgaS5wb3NpdGlvbiA9IHBvcztcbiAgICAgIHBvcyArPSAxMDtcbiAgICB9XG5cbiAgICAvLyBQcmVwYXJlIGFsbG93ZWQgZmllbGRzIChhbGwgZmllbGRzIGlmIG5vdCBzZXQgb3IgZW1wdHkpXG4gICAgbGV0IGFsbG93ZWQ6IHN0cmluZ1tdO1xuICAgIGxldCBkZGVmYXVsdHM6IHN0cmluZ1tdO1xuICAgIGlmIChwYXJhbXM/LmFsbG93ZWQgPT09IHVuZGVmaW5lZCB8fCBwYXJhbXM/LmFsbG93ZWQubGVuZ3RoID09PSAwKSB7XG4gICAgICBhbGxvd2VkID0gdG1wLm1hcCgoZikgPT4gZi5uYW1lKTtcbiAgICAgIGRkZWZhdWx0cyA9IHRtcC5maWx0ZXIoKGYpID0+IGYucHJpb3JpdHkgPj0gMCkubWFwKChmKSA9PiBmLm5hbWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBhbGxvd2VkID0gcGFyYW1zLmFsbG93ZWQ7XG4gICAgICBkZGVmYXVsdHMgPSBwYXJhbXMuYWxsb3dlZDtcbiAgICB9XG5cbiAgICAvLyBQcmVwYXJlIGV4Y2x1ZGVkIGZpZWxkc1xuICAgIGNvbnN0IGV4Y2x1ZGVkOiBzdHJpbmdbXSA9IHBhcmFtcz8uZXhjbHVkZWQgfHwgW107XG5cbiAgICAvLyBQcm9jZXNzIGRlZmF1bHQgZmllbGRzXG4gICAgLy8gVXNlIGFsbCBhbGxvd2VkIGZpZWxkcyBpZiBlbXB0eSBvZiBub3Qgc2V0XG4gICAgY29uc3QgZGVmYXVsdHM6IHN0cmluZ1tdID0gcGFyYW1zPy5kZWZhdWx0cyB8fCBkZGVmYXVsdHM7XG5cbiAgICAvLyBQcmVwYXJlIGZpZWxkcyBzdGF0dXNcbiAgICAvLyBTZXQgYWxsb3dlZFxuICAgIGZvciAoY29uc3QgZmUgb2YgYWxsb3dlZCkge1xuICAgICAgZm9yIChjb25zdCBmIG9mIHRtcCkge1xuICAgICAgICBpZiAoZi5uYW1lID09PSBmZSkge1xuICAgICAgICAgIGYuYWxsb3dlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLy8gU2V0IGRlZmF1bHRzXG4gICAgbGV0IG91dCA9IFtdO1xuICAgIGZvciAoY29uc3QgZmUgb2YgZGVmYXVsdHMpIHtcbiAgICAgIGZvciAoY29uc3QgZiBvZiB0bXApIHtcbiAgICAgICAgaWYgKGYubmFtZSA9PT0gZmUpIHtcbiAgICAgICAgICBmLmVuYWJsZWQgPSB0cnVlO1xuICAgICAgICAgIGYuYWxsb3dlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyByZW1vdmUgZXhjbHVkZWRcbiAgICBmb3IgKGNvbnN0IGZlIG9mIGV4Y2x1ZGVkKSB7XG4gICAgICBmb3IgKGNvbnN0IGYgb2YgdG1wKSB7XG4gICAgICAgIGlmIChmLm5hbWUgPT09IGZlKSB7XG4gICAgICAgICAgZi5lbmFibGVkID0gZmFsc2U7XG4gICAgICAgICAgZi5hbGxvd2VkID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3QgZmlsdGVyZWQgPSBbXTtcbiAgICBmb3IgKGNvbnN0IGYgb2YgdG1wKSB7XG4gICAgICBpZiAoISghZi5lbmFibGVkICYmICFmLmFsbG93ZWQpKSB7XG4gICAgICAgIGZpbHRlcmVkLnB1c2goZik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3Qgb3JkZXJlZCA9IFtdO1xuICAgIGNvbnN0IGVuYWJsZWQgPSBmaWx0ZXJlZC5maWx0ZXIoKGYpID0+IGYuZW5hYmxlZCk7XG4gICAgcG9zID0gMDtcbiAgICBmb3IgKGNvbnN0IGZlIG9mIGRlZmF1bHRzKSB7XG4gICAgICBmb3IgKGNvbnN0IGYgb2YgZW5hYmxlZCkge1xuICAgICAgICBpZiAoZi5uYW1lID09PSBmZSkge1xuICAgICAgICAgIGYucG9zaXRpb24gPSBwb3M7XG4gICAgICAgICAgcG9zICs9IDEwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGVuYWJsZWQuc29ydCgoYSwgYikgPT4gYS5wb3NpdGlvbiAtIGIucG9zaXRpb24pO1xuICAgIGNvbnN0IGRpc2FibGVkID0gZmlsdGVyZWQuZmlsdGVyKChmKSA9PiAhZi5lbmFibGVkKTtcbiAgICBsZXQgZWkgPSAwO1xuICAgIGxldCBkaSA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBmaWx0ZXJlZC5sZW5ndGg7IGkrKykge1xuICAgICAgaWYgKGVuYWJsZWRbZWldICYmIGRpc2FibGVkW2RpXSkge1xuICAgICAgICBpZiAoZW5hYmxlZFtlaV0ucHJpb3JpdHkgPiBkaXNhYmxlZFtkaV0ucHJpb3JpdHkpIHtcbiAgICAgICAgICBvcmRlcmVkLnB1c2goZW5hYmxlZFtlaV0pO1xuICAgICAgICAgIGVpICs9IDE7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgb3JkZXJlZC5wdXNoKGRpc2FibGVkW2RpXSk7XG4gICAgICAgICAgZGkgKz0gMTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmIChlbmFibGVkW2VpXSkge1xuICAgICAgICBvcmRlcmVkLnB1c2goZW5hYmxlZFtlaV0pO1xuICAgICAgICBlaSArPSAxO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgb3JkZXJlZC5wdXNoKGRpc2FibGVkW2RpXSk7XG4gICAgICAgIGRpICs9IDE7XG4gICAgICB9XG4gICAgfVxuICAgIHBvcyA9IDA7XG4gICAgZm9yIChjb25zdCBmIG9mIG9yZGVyZWQpIHtcbiAgICAgIGYucG9zaXRpb24gPSBwb3M7XG4gICAgICBwb3MgKz0gMTA7XG4gICAgfVxuXG4gICAgdGhpcy5fX2ZpZWxkcyA9IG9yZGVyZWQ7XG4gICAgdGhpcy5fdXBkYXRlKCk7XG4gIH1cblxuICBwcml2YXRlIF9maWVsZHMgPSBuZXcgUmVwbGF5U3ViamVjdDxNb2RlbExpc3RGaWVsZFtdPigxKTtcblxuICBwdWJsaWMgZ2V0IGZpZWxkcygpOiBPYnNlcnZhYmxlPE1vZGVsTGlzdEZpZWxkW10+IHtcbiAgICByZXR1cm4gdGhpcy5fZmllbGRzLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZW5hYmxlZDogc3RyaW5nW10gPSBbXTtcblxuICBwdWJsaWMgZ2V0IGVuYWJsZWQoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLl9lbmFibGVkO1xuICB9XG5cbiAgcHJpdmF0ZSBfb3V0cHV0ID0gbmV3IFJlcGxheVN1YmplY3Q8c3RyaW5nW10+KDEpO1xuXG4gIHB1YmxpYyBnZXQgb3V0cHV0KCk6IE9ic2VydmFibGU8c3RyaW5nW10+IHtcbiAgICByZXR1cm4gdGhpcy5fb3V0cHV0LmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEVuYWJsZSBhIGZpZWxkIGJ5IG5hbWUuIFBvc2l0aW9uIGlzIG9wdGlvbmFsLlxuICAgKlxuICAgKiBAcGFyYW0gZm5hbWUgOiBuYW1lIG9mIGZpZWxkIHRvIGJlIGVuYWJsZWRcbiAgICogQHBhcmFtICBwb3NpdGlvbiA6IHBvc2l0aW9uIChvcHRpb25hbClcbiAgICogQHJldHVybnMgY3VycmVudCBlbmFibGVkIGZpZWxkc1xuICAgKi9cbiAgcHVibGljIGVuYWJsZShmbmFtZTogc3RyaW5nLCBwb3NpdGlvbj86IG51bWJlcik6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBmID0gdGhpcy5nZXQoZm5hbWUpO1xuICAgIGlmIChmKSB7XG4gICAgICBmLmVuYWJsZWQgPSB0cnVlO1xuICAgICAgaWYgKHBvc2l0aW9uICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgZi5wb3NpdGlvbiA9IHBvc2l0aW9uO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGaWVsZCBub3QgZm91bmQnLCBmKTtcbiAgICB9XG4gICAgdGhpcy5fdXBkYXRlKCk7XG4gICAgcmV0dXJuIHRoaXMuX2VuYWJsZWQ7XG4gIH1cblxuICAvKipcbiAgICogRGlzYWJsZSBhIGZpZWxkIGJ5IG5hbWUuXG4gICAqXG4gICAqIEBwYXJhbSBmbmFtZSA6IG5hbWUgb2YgZmllbGQgdG8gYmUgZGlzYWJsZWRcbiAgICogQHJldHVybnMgIGN1cnJlbnQgZW5hYmxlZCBmaWVsZHNcbiAgICovXG4gIHB1YmxpYyBkaXNhYmxlKGZuYW1lOiBzdHJpbmcpOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgZiA9IHRoaXMuZ2V0KGZuYW1lKTtcbiAgICBpZiAoZikge1xuICAgICAgZi5lbmFibGVkID0gZmFsc2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZpZWxkIG5vdCBmb3VuZCcsIGYpO1xuICAgIH1cbiAgICB0aGlzLl91cGRhdGUoKTtcbiAgICByZXR1cm4gdGhpcy5fZW5hYmxlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBNb3ZlIGZpZWxkIGBmbmFtZWAgYmVmb3JlIG9yIGFmdGVyIChkZXBlbmRpbmcgb24gYHBvc2l0aW9uYCkgZmllbGQgYGRlc3RgLlxuICAgKlxuICAgKiBAcGFyYW0gZm5hbWUgZmllbGQgdG8gbW92ZVxuICAgKiBAcGFyYW0gcG9zaXRpb24gKFwiYmVmb3JlXCIgb3IgXCJhZnRlclwiKVxuICAgKiBAcGFyYW0gZGVzdCByZWZlcmVuY2UgZmllbGRcbiAgICogQHJldHVybnMgY3VycmVudCBlbmFibGVkIGZpZWxkc1xuICAgKi9cbiAgcHVibGljIG1vdmUoXG4gICAgZm5hbWU6IHN0cmluZyxcbiAgICBwb3NpdGlvbjogJ2JlZm9yZScgfCAnYWZ0ZXInLFxuICAgIGRlc3Q6IHN0cmluZyA9ICcnXG4gICk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBmdGFyZ2V0ID0gdGhpcy5nZXQoZm5hbWUpO1xuICAgIGlmIChkZXN0ID09ICcnKSB7XG4gICAgICBjb25zdCBwb3MgPSB0aGlzLl9lbmFibGVkLmluZGV4T2YoZm5hbWUpO1xuICAgICAgZGVzdCA9IHRoaXMuX2VuYWJsZWRbcG9zICsgKHBvc2l0aW9uID09PSAnYmVmb3JlJyA/IC0xIDogKzEpXTtcbiAgICAgIGlmIChkZXN0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2VuYWJsZWQ7XG4gICAgICB9XG4gICAgfVxuICAgIGNvbnN0IGZkZXN0ID0gdGhpcy5nZXQoZGVzdCk7XG4gICAgLy8gaXN0YW5idWwgaWdub3JlIGlmXG4gICAgaWYgKCFmdGFyZ2V0IHx8ICFmZGVzdCkge1xuICAgICAgY29uc29sZS5lcnJvcignVGFyZ2V0IC8gZGVzdCBub3QgZm91bmQnLCBmbmFtZSwgZGVzdCk7XG4gICAgICByZXR1cm4gdGhpcy5fZW5hYmxlZDtcbiAgICB9XG4gICAgaWYgKGZuYW1lID09IGRlc3QpIHtcbiAgICAgIGZ0YXJnZXQucG9zaXRpb24gPSBmZGVzdC5wb3NpdGlvbiArIChwb3NpdGlvbiA9PT0gJ2JlZm9yZScgPyAtMTUgOiArMTUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBmdGFyZ2V0LnBvc2l0aW9uID0gZmRlc3QucG9zaXRpb24gKyAocG9zaXRpb24gPT09ICdiZWZvcmUnID8gLTUgOiArNSk7XG4gICAgfVxuXG4gICAgdGhpcy5fdXBkYXRlKCk7XG4gICAgcmV0dXJuIHRoaXMuX2VuYWJsZWQ7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgZmllbGQgd2l0aCBuYW1lIGBmbmFtZWAgaXMgZW5hYmxlZC5cbiAgICpcbiAgICogQHBhcmFtIGZuYW1lIDogbmFtZSBvZiBmaWVsZFxuICAgKiBAcmV0dXJucyAgZW5hYmxlZCAodHJ1ZSkgb3IgZGlzYWJsZWQgKGZhbHNlKVxuICAgKi9cbiAgcHVibGljIGlzRW5hYmxlZChmbmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2VuYWJsZWQuaW5kZXhPZihmbmFtZSkgIT09IC0xO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBmaWVsZCBieSBuYW1lXG4gICAqIEBwYXJhbSBmbmFtZSA6IG5hbWUgb2YgZmllbGRcbiAgICogQHJldHVybnMgTW9kZWwgbGlzdCBmaWVsZCBvciBudWxsIGlmIG5vdCBmb3VuZFxuICAgKi9cbiAgcHVibGljIGdldChmbmFtZTogc3RyaW5nKTogTW9kZWxMaXN0RmllbGQgfCBudWxsIHtcbiAgICBmb3IgKGNvbnN0IGYgb2YgdGhpcy5fX2ZpZWxkcykge1xuICAgICAgaWYgKGYubmFtZSA9PT0gZm5hbWUpIHtcbiAgICAgICAgcmV0dXJuIGY7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBmaWVsZCBieSBwb3NpdGlvblxuICAgKiBAcGFyYW0gcG9zIDogcG9zaXRpb24gb2YgZmllbGRcbiAgICogQHJldHVybnMgTW9kZWwgbGlzdCBmaWVsZCBvciBudWxsIGlmIG5vdCBmb3VuZFxuICAgKi9cbiAgcHVibGljIGdldEF0UG9zKHBvczogbnVtYmVyKTogTW9kZWxMaXN0RmllbGQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fX2ZpZWxkc1twb3NdIHx8IG51bGw7XG4gIH1cblxuICBzZXRQb3NpdGlvbihmbmFtZTogYW55LCBwb3NpdGlvbjogbnVtYmVyKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGYgPSB0aGlzLmdldChmbmFtZSk7XG4gICAgaWYgKGYpIHtcbiAgICAgIGYucG9zaXRpb24gPSBwb3NpdGlvbjtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5lcnJvcignRmllbGQgbm90IGZvdW5kJywgZik7XG4gICAgfVxuICAgIHRoaXMuX3VwZGF0ZSgpO1xuICAgIHJldHVybiB0aGlzLl9lbmFibGVkO1xuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlKCkge1xuICAgIHRoaXMuX19maWVsZHMuc29ydCgoYSwgYikgPT4gYS5wb3NpdGlvbiAtIGIucG9zaXRpb24pO1xuICAgIGxldCBpID0gMDtcbiAgICBmb3IgKGNvbnN0IGYgb2YgdGhpcy5fX2ZpZWxkcykge1xuICAgICAgZi5wb3NpdGlvbiA9IGkgKiAxMDtcbiAgICAgIGkgKz0gMTtcbiAgICB9XG4gICAgY29uc3Qgb3V0OiBzdHJpbmdbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgZiBvZiB0aGlzLl9fZmllbGRzKSB7XG4gICAgICBpZiAoZi5lbmFibGVkKSB7XG4gICAgICAgIG91dC5wdXNoKGYubmFtZSk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuX2VuYWJsZWQgPSBvdXQ7XG4gICAgdGhpcy5fb3V0cHV0Lm5leHQodGhpcy5fZW5hYmxlZCk7XG4gICAgdGhpcy5fZmllbGRzLm5leHQodGhpcy5fX2ZpZWxkcyk7XG4gIH1cbn1cbiJdfQ==
|
|
273
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwtbGlzdC1maWVsZHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhL3NyYy9saWIvbW9kZWxsaXN0L21vZGVsLWxpc3QtZmllbGRzL21vZGVsLWxpc3QtZmllbGRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFlakQsTUFBTSxPQUFPLGVBQWU7SUFHMUIsWUFBWSxVQUF5QixFQUFFLE1BQXFCO1FBd0lwRCxZQUFPLEdBQUcsSUFBSSxhQUFhLENBQW1CLENBQUMsQ0FBQyxDQUFDO1FBTWpELGFBQVEsR0FBYSxFQUFFLENBQUM7UUFNeEIsWUFBTyxHQUFHLElBQUksYUFBYSxDQUFXLENBQUMsQ0FBQyxDQUFDO1FBbkovQyx3QkFBd0I7UUFDeEIsTUFBTSxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzlCLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQztRQUNmLEtBQUssTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ3RCLEdBQUcsQ0FBQyxJQUFJLENBQUM7Z0JBQ1AsSUFBSSxFQUFFLEVBQUU7Z0JBQ1IsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsV0FBVyxJQUFJLEVBQUU7Z0JBQ2pDLE9BQU8sRUFBRSxLQUFLO2dCQUNkLE9BQU8sRUFBRSxLQUFLO2dCQUNkLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztnQkFDZixRQUFRLEVBQUUsR0FBRyxDQUFDLE1BQU0sR0FBRyxFQUFFO2dCQUN6QixRQUFRLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxRQUFRLElBQUksQ0FBQzthQUNqQyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBQ0QsZ0NBQWdDO1FBQ2hDLE1BQU0sTUFBTSxH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J3J4anMnO1xuaW1wb3J0IHsgRGF0YU1vZGVsIH0gZnJvbSAnLi4vLi4vZGF0YS9kYXRhLW1vZGVsJztcbmltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9kYXRhL2RhdGEtY29sbGVjdGlvbic7XG5pbXBvcnQgeyBGaWVsZHNQYXJhbXMgfSBmcm9tICcuLi9tb2RlbC1saXN0LnNlcnZpY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE1vZGVsTGlzdEZpZWxkIHtcbiAgbmFtZTogc3RyaW5nO1xuICBsYWJlbDogc3RyaW5nO1xuICBlbmFibGVkOiBib29sZWFuO1xuICBhbGxvd2VkOiBib29sZWFuO1xuICBmaWVsZDogYW55O1xuICBwb3NpdGlvbjogbnVtYmVyO1xuICBwcmlvcml0eTogbnVtYmVyO1xufVxuXG5leHBvcnQgY2xhc3MgTW9kZWxMaXN0RmllbGRzPFQgZXh0ZW5kcyBEYXRhTW9kZWw+IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfX2ZpZWxkcyE6IE1vZGVsTGlzdEZpZWxkW107XG5cbiAgY29uc3RydWN0b3IoY29sbGVjdGlvbjogQ29sbGVjdGlvbjxUPiwgcGFyYW1zPzogRmllbGRzUGFyYW1zKSB7XG4gICAgLy8gR2V0IGZpZWxkcyBmcm9tIG1vZGVsXG4gICAgY29uc3QgbSA9IGNvbGxlY3Rpb24uY3JlYXRlKCk7XG4gICAgY29uc3QgdG1wID0gW107XG4gICAgZm9yIChjb25zdCBmbiBvZiBtLkZOKSB7XG4gICAgICB0bXAucHVzaCh7XG4gICAgICAgIG5hbWU6IGZuLFxuICAgICAgICBsYWJlbDogbS5GTShmbikuZGVzY3JpcHRpb24gfHwgZm4sXG4gICAgICAgIGFsbG93ZWQ6IGZhbHNlLFxuICAgICAgICBlbmFibGVkOiBmYWxzZSxcbiAgICAgICAgZmllbGQ6IG0uRlYoZm4pLFxuICAgICAgICBwb3NpdGlvbjogdG1wLmxlbmd0aCAqIDEwLFxuICAgICAgICBwcmlvcml0eTogbS5GTShmbikucHJpb3JpdHkgfHwgMCxcbiAgICAgIH0pO1xuICAgIH1cbiAgICAvLyBBZGQgY3VzdG9tIGZpZWxkcyBpZiBwcm92aWRlZFxuICAgIGNvbnN0IGN1c3RvbSA9IHBhcmFtcz8uY3VzdG9tIHx8IFtdO1xuICAgIGZvciAoY29uc3QgYyBvZiBjdXN0b20pIHtcbiAgICAgIHRtcC5wdXNoKHtcbiAgICAgICAgbmFtZTogYy5uYW1lLFxuICAgICAgICBsYWJlbDogYy5sYWJlbCxcbiAgICAgICAgYWxsb3dlZDogZmFsc2UsXG4gICAgICAgIGVuYWJsZWQ6IGZhbHNlLFxuICAgICAgICBmaWVsZDogbnVsbCxcbiAgICAgICAgcG9zaXRpb246IHRtcC5sZW5ndGggKiAxMCxcbiAgICAgICAgcHJpb3JpdHk6IGMucHJpb3JpdHkgfHwgMCxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHRtcC5zb3J0KChiLCBhKSA9PlxuICAgICAgYS5wcmlvcml0eSA9PT0gYi5wcmlvcml0eVxuICAgICAgICA/IGIucG9zaXRpb24gLSBhLnBvc2l0aW9uXG4gICAgICAgIDogYS5wcmlvcml0eSAtIGIucHJpb3JpdHlcbiAgICApO1xuICAgIGxldCBwb3MgPSAwO1xuICAgIGZvciAoY29uc3QgaSBvZiB0bXApIHtcbiAgICAgIGkucG9zaXRpb24gPSBwb3M7XG4gICAgICBwb3MgKz0gMTA7XG4gICAgfVxuXG4gICAgLy8gUHJlcGFyZSBhbGxvd2VkIGZpZWxkcyAoYWxsIGZpZWxkcyBpZiBub3Qgc2V0IG9yIGVtcHR5KVxuICAgIGxldCBhbGxvd2VkOiBzdHJpbmdbXTtcbiAgICBsZXQgZGRlZmF1bHRzOiBzdHJpbmdbXTtcbiAgICBpZiAocGFyYW1zPy5hbGxvd2VkID09PSB1bmRlZmluZWQgfHwgcGFyYW1zPy5hbGxvd2VkLmxlbmd0aCA9PT0gMCkge1xuICAgICAgYWxsb3dlZCA9IHRtcC5tYXAoKGYpID0+IGYubmFtZSk7XG4gICAgICBkZGVmYXVsdHMgPSB0bXAuZmlsdGVyKChmKSA9PiBmLnByaW9yaXR5ID49IDApLm1hcCgoZikgPT4gZi5uYW1lKTtcbiAgICB9IGVsc2Uge1xuICAgICAgYWxsb3dlZCA9IHBhcmFtcy5hbGxvd2VkO1xuICAgICAgZGRlZmF1bHRzID0gcGFyYW1zLmFsbG93ZWQ7XG4gICAgfVxuXG4gICAgLy8gUHJlcGFyZSBleGNsdWRlZCBmaWVsZHNcbiAgICBjb25zdCBleGNsdWRlZDogc3RyaW5nW10gPSBwYXJhbXM/LmV4Y2x1ZGVkIHx8IFtdO1xuXG4gICAgLy8gUHJvY2VzcyBkZWZhdWx0IGZpZWxkc1xuICAgIC8vIFVzZSBhbGwgYWxsb3dlZCBmaWVsZHMgaWYgZW1wdHkgb2Ygbm90IHNldFxuICAgIGNvbnN0IGRlZmF1bHRzOiBzdHJpbmdbXSA9IHBhcmFtcz8uZGVmYXVsdHMgfHwgZGRlZmF1bHRzO1xuXG4gICAgLy8gUHJlcGFyZSBmaWVsZHMgc3RhdHVzXG4gICAgLy8gU2V0IGFsbG93ZWRcbiAgICBmb3IgKGNvbnN0IGZlIG9mIGFsbG93ZWQpIHtcbiAgICAgIGZvciAoY29uc3QgZiBvZiB0bXApIHtcbiAgICAgICAgaWYgKGYubmFtZSA9PT0gZmUpIHtcbiAgICAgICAgICBmLmFsbG93ZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC8vIFNldCBkZWZhdWx0c1xuICAgIGxldCBvdXQgPSBbXTtcbiAgICBmb3IgKGNvbnN0IGZlIG9mIGRlZmF1bHRzKSB7XG4gICAgICBmb3IgKGNvbnN0IGYgb2YgdG1wKSB7XG4gICAgICAgIGlmIChmLm5hbWUgPT09IGZlKSB7XG4gICAgICAgICAgZi5lbmFibGVkID0gdHJ1ZTtcbiAgICAgICAgICBmLmFsbG93ZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gcmVtb3ZlIGV4Y2x1ZGVkXG4gICAgZm9yIChjb25zdCBmZSBvZiBleGNsdWRlZCkge1xuICAgICAgZm9yIChjb25zdCBmIG9mIHRtcCkge1xuICAgICAgICBpZiAoZi5uYW1lID09PSBmZSkge1xuICAgICAgICAgIGYuZW5hYmxlZCA9IGZhbHNlO1xuICAgICAgICAgIGYuYWxsb3dlZCA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGNvbnN0IGZpbHRlcmVkID0gW107XG4gICAgZm9yIChjb25zdCBmIG9mIHRtcCkge1xuICAgICAgaWYgKCEoIWYuZW5hYmxlZCAmJiAhZi5hbGxvd2VkKSkge1xuICAgICAgICBmaWx0ZXJlZC5wdXNoKGYpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IG9yZGVyZWQgPSBbXTtcbiAgICBjb25zdCBlbmFibGVkID0gZmlsdGVyZWQuZmlsdGVyKChmKSA9PiBmLmVuYWJsZWQpO1xuICAgIHBvcyA9IDA7XG4gICAgZm9yIChjb25zdCBmZSBvZiBkZWZhdWx0cykge1xuICAgICAgZm9yIChjb25zdCBmIG9mIGVuYWJsZWQpIHtcbiAgICAgICAgaWYgKGYubmFtZSA9PT0gZmUpIHtcbiAgICAgICAgICBmLnBvc2l0aW9uID0gcG9zO1xuICAgICAgICAgIHBvcyArPSAxMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBlbmFibGVkLnNvcnQoKGEsIGIpID0+IGEucG9zaXRpb24gLSBiLnBvc2l0aW9uKTtcbiAgICBjb25zdCBkaXNhYmxlZCA9IGZpbHRlcmVkLmZpbHRlcigoZikgPT4gIWYuZW5hYmxlZCk7XG4gICAgbGV0IGVpID0gMDtcbiAgICBsZXQgZGkgPSAwO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZmlsdGVyZWQubGVuZ3RoOyBpKyspIHtcbiAgICAgIGlmIChlbmFibGVkW2VpXSAmJiBkaXNhYmxlZFtkaV0pIHtcbiAgICAgICAgaWYgKGVuYWJsZWRbZWldLnByaW9yaXR5ID4gZGlzYWJsZWRbZGldLnByaW9yaXR5KSB7XG4gICAgICAgICAgb3JkZXJlZC5wdXNoKGVuYWJsZWRbZWldKTtcbiAgICAgICAgICBlaSArPSAxO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG9yZGVyZWQucHVzaChkaXNhYmxlZFtkaV0pO1xuICAgICAgICAgIGRpICs9IDE7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAoZW5hYmxlZFtlaV0pIHtcbiAgICAgICAgb3JkZXJlZC5wdXNoKGVuYWJsZWRbZWldKTtcbiAgICAgICAgZWkgKz0gMTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG9yZGVyZWQucHVzaChkaXNhYmxlZFtkaV0pO1xuICAgICAgICBkaSArPSAxO1xuICAgICAgfVxuICAgIH1cbiAgICBwb3MgPSAwO1xuICAgIGZvciAoY29uc3QgZiBvZiBvcmRlcmVkKSB7XG4gICAgICBmLnBvc2l0aW9uID0gcG9zO1xuICAgICAgcG9zICs9IDEwO1xuICAgIH1cblxuICAgIHRoaXMuX19maWVsZHMgPSBvcmRlcmVkO1xuICAgIHRoaXMuX3VwZGF0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZmllbGRzID0gbmV3IFJlcGxheVN1YmplY3Q8TW9kZWxMaXN0RmllbGRbXT4oMSk7XG5cbiAgcHVibGljIGdldCBmaWVsZHMoKTogT2JzZXJ2YWJsZTxNb2RlbExpc3RGaWVsZFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuX2ZpZWxkcy5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2VuYWJsZWQ6IHN0cmluZ1tdID0gW107XG5cbiAgcHVibGljIGdldCBlbmFibGVkKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5fZW5hYmxlZDtcbiAgfVxuXG4gIHByaXZhdGUgX291dHB1dCA9IG5ldyBSZXBsYXlTdWJqZWN0PHN0cmluZ1tdPigxKTtcblxuICBwdWJsaWMgZ2V0IG91dHB1dCgpOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XG4gICAgcmV0dXJuIHRoaXMuX291dHB1dC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbmFibGUgYSBmaWVsZCBieSBuYW1lLiBQb3NpdGlvbiBpcyBvcHRpb25hbC5cbiAgICpcbiAgICogQHBhcmFtIGZuYW1lIDogbmFtZSBvZiBmaWVsZCB0byBiZSBlbmFibGVkXG4gICAqIEBwYXJhbSAgcG9zaXRpb24gOiBwb3NpdGlvbiAob3B0aW9uYWwpXG4gICAqIEByZXR1cm5zIGN1cnJlbnQgZW5hYmxlZCBmaWVsZHNcbiAgICovXG4gIHB1YmxpYyBlbmFibGUoZm5hbWU6IHN0cmluZywgcG9zaXRpb24/OiBudW1iZXIpOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgZiA9IHRoaXMuZ2V0KGZuYW1lKTtcbiAgICBpZiAoZikge1xuICAgICAgZi5lbmFibGVkID0gdHJ1ZTtcbiAgICAgIGlmIChwb3NpdGlvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGYucG9zaXRpb24gPSBwb3NpdGlvbjtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5lcnJvcignRmllbGQgbm90IGZvdW5kJywgZik7XG4gICAgfVxuICAgIHRoaXMuX3VwZGF0ZSgpO1xuICAgIHJldHVybiB0aGlzLl9lbmFibGVkO1xuICB9XG5cbiAgLyoqXG4gICAqIERpc2FibGUgYSBmaWVsZCBieSBuYW1lLlxuICAgKlxuICAgKiBAcGFyYW0gZm5hbWUgOiBuYW1lIG9mIGZpZWxkIHRvIGJlIGRpc2FibGVkXG4gICAqIEByZXR1cm5zICBjdXJyZW50IGVuYWJsZWQgZmllbGRzXG4gICAqL1xuICBwdWJsaWMgZGlzYWJsZShmbmFtZTogc3RyaW5nKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGYgPSB0aGlzLmdldChmbmFtZSk7XG4gICAgaWYgKGYpIHtcbiAgICAgIGYuZW5hYmxlZCA9IGZhbHNlO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGaWVsZCBub3QgZm91bmQnLCBmKTtcbiAgICB9XG4gICAgdGhpcy5fdXBkYXRlKCk7XG4gICAgcmV0dXJuIHRoaXMuX2VuYWJsZWQ7XG4gIH1cblxuICAvKipcbiAgICogTW92ZSBmaWVsZCBgZm5hbWVgIGJlZm9yZSBvciBhZnRlciAoZGVwZW5kaW5nIG9uIGBwb3NpdGlvbmApIGZpZWxkIGBkZXN0YC5cbiAgICpcbiAgICogQHBhcmFtIGZuYW1lIGZpZWxkIHRvIG1vdmVcbiAgICogQHBhcmFtIHBvc2l0aW9uIChcImJlZm9yZVwiIG9yIFwiYWZ0ZXJcIilcbiAgICogQHBhcmFtIGRlc3QgcmVmZXJlbmNlIGZpZWxkXG4gICAqIEByZXR1cm5zIGN1cnJlbnQgZW5hYmxlZCBmaWVsZHNcbiAgICovXG4gIHB1YmxpYyBtb3ZlKFxuICAgIGZuYW1lOiBzdHJpbmcsXG4gICAgcG9zaXRpb246ICdiZWZvcmUnIHwgJ2FmdGVyJyxcbiAgICBkZXN0OiBzdHJpbmcgPSAnJ1xuICApOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgZnRhcmdldCA9IHRoaXMuZ2V0KGZuYW1lKTtcbiAgICBpZiAoZGVzdCA9PSAnJykge1xuICAgICAgY29uc3QgcG9zID0gdGhpcy5fZW5hYmxlZC5pbmRleE9mKGZuYW1lKTtcbiAgICAgIGRlc3QgPSB0aGlzLl9lbmFibGVkW3BvcyArIChwb3NpdGlvbiA9PT0gJ2JlZm9yZScgPyAtMSA6ICsxKV07XG4gICAgICBpZiAoZGVzdCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9lbmFibGVkO1xuICAgICAgfVxuICAgIH1cbiAgICBjb25zdCBmZGVzdCA9IHRoaXMuZ2V0KGRlc3QpO1xuICAgIC8vIGlzdGFuYnVsIGlnbm9yZSBpZlxuICAgIGlmICghZnRhcmdldCB8fCAhZmRlc3QpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ1RhcmdldCAvIGRlc3Qgbm90IGZvdW5kJywgZm5hbWUsIGRlc3QpO1xuICAgICAgcmV0dXJuIHRoaXMuX2VuYWJsZWQ7XG4gICAgfVxuICAgIGlmIChmbmFtZSA9PSBkZXN0KSB7XG4gICAgICBmdGFyZ2V0LnBvc2l0aW9uID0gZmRlc3QucG9zaXRpb24gKyAocG9zaXRpb24gPT09ICdiZWZvcmUnID8gLTE1IDogKzE1KTtcbiAgICB9IGVsc2Uge1xuICAgICAgZnRhcmdldC5wb3NpdGlvbiA9IGZkZXN0LnBvc2l0aW9uICsgKHBvc2l0aW9uID09PSAnYmVmb3JlJyA/IC01IDogKzUpO1xuICAgIH1cblxuICAgIHRoaXMuX3VwZGF0ZSgpO1xuICAgIHJldHVybiB0aGlzLl9lbmFibGVkO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIGZpZWxkIHdpdGggbmFtZSBgZm5hbWVgIGlzIGVuYWJsZWQuXG4gICAqXG4gICAqIEBwYXJhbSBmbmFtZSA6IG5hbWUgb2YgZmllbGRcbiAgICogQHJldHVybnMgIGVuYWJsZWQgKHRydWUpIG9yIGRpc2FibGVkIChmYWxzZSlcbiAgICovXG4gIHB1YmxpYyBpc0VuYWJsZWQoZm5hbWU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9lbmFibGVkLmluZGV4T2YoZm5hbWUpICE9PSAtMTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgZmllbGQgYnkgbmFtZVxuICAgKiBAcGFyYW0gZm5hbWUgOiBuYW1lIG9mIGZpZWxkXG4gICAqIEByZXR1cm5zIE1vZGVsIGxpc3QgZmllbGQgb3IgbnVsbCBpZiBub3QgZm91bmRcbiAgICovXG4gIHB1YmxpYyBnZXQoZm5hbWU6IHN0cmluZyk6IE1vZGVsTGlzdEZpZWxkIHwgbnVsbCB7XG4gICAgZm9yIChjb25zdCBmIG9mIHRoaXMuX19maWVsZHMpIHtcbiAgICAgIGlmIChmLm5hbWUgPT09IGZuYW1lKSB7XG4gICAgICAgIHJldHVybiBmO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgZmllbGQgYnkgcG9zaXRpb25cbiAgICogQHBhcmFtIHBvcyA6IHBvc2l0aW9uIG9mIGZpZWxkXG4gICAqIEByZXR1cm5zIE1vZGVsIGxpc3QgZmllbGQgb3IgbnVsbCBpZiBub3QgZm91bmRcbiAgICovXG4gIHB1YmxpYyBnZXRBdFBvcyhwb3M6IG51bWJlcik6IE1vZGVsTGlzdEZpZWxkIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX19maWVsZHNbcG9zXSB8fCBudWxsO1xuICB9XG5cbiAgc2V0UG9zaXRpb24oZm5hbWU6IGFueSwgcG9zaXRpb246IG51bWJlcik6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBmID0gdGhpcy5nZXQoZm5hbWUpO1xuICAgIGlmIChmKSB7XG4gICAgICBmLnBvc2l0aW9uID0gcG9zaXRpb247XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZpZWxkIG5vdCBmb3VuZCcsIGYpO1xuICAgIH1cbiAgICB0aGlzLl91cGRhdGUoKTtcbiAgICByZXR1cm4gdGhpcy5fZW5hYmxlZDtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZSgpIHtcbiAgICB0aGlzLl9fZmllbGRzLnNvcnQoKGEsIGIpID0+IGEucG9zaXRpb24gLSBiLnBvc2l0aW9uKTtcbiAgICBsZXQgaSA9IDA7XG4gICAgZm9yIChjb25zdCBmIG9mIHRoaXMuX19maWVsZHMpIHtcbiAgICAgIGYucG9zaXRpb24gPSBpICogMTA7XG4gICAgICBpICs9IDE7XG4gICAgfVxuICAgIGNvbnN0IG91dDogc3RyaW5nW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IGYgb2YgdGhpcy5fX2ZpZWxkcykge1xuICAgICAgaWYgKGYuZW5hYmxlZCkge1xuICAgICAgICBvdXQucHVzaChmLm5hbWUpO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLl9lbmFibGVkID0gb3V0O1xuICAgIHRoaXMuX291dHB1dC5uZXh0KHRoaXMuX2VuYWJsZWQpO1xuICAgIHRoaXMuX2ZpZWxkcy5uZXh0KHRoaXMuX19maWVsZHMpO1xuICB9XG59XG4iXX0=
|