myrta-ui 17.0.0-beta.9 → 17.0.2
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/components/breadcrumbs/breadcrumbs.component.mjs +4 -3
- package/esm2022/lib/components/breadcrumbs/breadcrumbs.enum.mjs +1 -1
- package/esm2022/lib/components/breadcrumbs/breadcrumbs.module.mjs +10 -4
- package/esm2022/lib/components/dropdown/dropdown.component.mjs +2 -2
- package/esm2022/lib/components/form/checkbox/checkbox.component.mjs +5 -12
- package/esm2022/lib/components/form/checkbox/checkbox.enum.mjs +2 -5
- package/esm2022/lib/components/form/checkbox-group/checkbox-group.component.mjs +82 -44
- package/esm2022/lib/components/form/checkbox-group/components/checkbox-group-header/checkbox-group-header.component.mjs +4 -4
- package/esm2022/lib/components/form/checkbox-group/components/checkbox-group-item/checkbox-group-item.component.mjs +51 -43
- package/esm2022/lib/components/form/checkbox-group/helpers/change-group-value.mjs +7 -8
- package/esm2022/lib/components/form/checkbox-group/helpers/change-item-value.mjs +2 -2
- package/esm2022/lib/components/form/checkbox-group/helpers/filter-search-group.mjs +5 -5
- package/esm2022/lib/components/form/checkbox-group/helpers/get-checked-items.mjs +2 -2
- package/esm2022/lib/components/form/checkbox-group/helpers/get-inner-list.helper.mjs +46 -0
- package/esm2022/lib/components/form/checkbox-group/helpers/get-item-by-id.mjs +4 -4
- package/esm2022/lib/components/form/checkbox-group/helpers/get-sorted-list.mjs +2 -2
- package/esm2022/lib/components/form/checkbox-group/helpers/inner-list-to-list.helper.mjs +13 -0
- package/esm2022/lib/components/form/checkbox-group/models/checkbox-group.model.mjs +1 -1
- package/esm2022/lib/components/form/editor/editor.component.mjs +9 -6
- package/esm2022/lib/components/form/input-file/input-file.component.mjs +3 -5
- package/esm2022/lib/components/form/input-file-image/components/file-image-edit-modal/file-image-edit-modal.component.mjs +1 -3
- package/esm2022/lib/components/form/input-file-image/input-file-image.component.mjs +100 -106
- package/esm2022/lib/components/form/input-opt/components/input-opt/input-opt.component.mjs +2 -2
- package/esm2022/lib/components/form/input-password/input-password.component.mjs +2 -2
- package/esm2022/lib/components/form/input-phone/input-phone.component.mjs +2 -2
- package/esm2022/lib/components/form/input-search/input-search.component.mjs +2 -2
- package/esm2022/lib/components/form/input-select/input-select.component.mjs +4 -4
- package/esm2022/lib/components/form/input-tel/input-tel.component.mjs +2 -2
- package/esm2022/lib/components/form/input-text/input-text.component.mjs +2 -2
- package/esm2022/lib/components/form/input-textarea/input-textarea.component.mjs +2 -2
- package/esm2022/lib/components/form/radio-group/components/radio-group-header/radio-group-header.component.mjs +7 -4
- package/esm2022/lib/components/form/radio-group/components/radio-group-item/radio-group-item.component.mjs +9 -3
- package/esm2022/lib/components/form/radio-group/models/radio-group.model.mjs +1 -1
- package/esm2022/lib/components/form/radio-group/radio-group.component.mjs +32 -23
- package/esm2022/lib/components/form/radio-group/radio-group.module.mjs +25 -4
- package/esm2022/lib/components/form/rating/rating.component.mjs +2 -2
- package/esm2022/lib/components/gallery/components/gallery-confirm-modal/gallery-confirm-modal.component.mjs +1 -3
- package/esm2022/lib/components/icon-button/icon-button.component.mjs +9 -3
- package/esm2022/lib/components/icon-button/icon-button.enum.mjs +2 -1
- package/esm2022/lib/components/label/label.component.mjs +2 -2
- package/esm2022/lib/components/link/link.component.mjs +22 -9
- package/esm2022/lib/components/link/link.module.mjs +5 -4
- package/esm2022/lib/components/paginator/paginator.component.mjs +5 -5
- package/esm2022/lib/components/paginator/paginator.module.mjs +8 -8
- package/esm2022/lib/components/pdf-viewer/pdf-viewer.component.mjs +268 -0
- package/esm2022/lib/components/pdf-viewer/pdf-viewer.module.mjs +59 -0
- package/esm2022/lib/components/save-state/components/save-state-editor/save-state-editor.component.mjs +2 -2
- package/esm2022/lib/components/save-state/save-state.component.mjs +3 -3
- package/esm2022/lib/components/save-state/save-state.enum.mjs +1 -1
- package/esm2022/lib/components/table/table.component.mjs +4 -11
- package/esm2022/lib/components/truncate-text/truncate-text.component.mjs +1 -1
- package/esm2022/lib/services/file-upload/file-upload.service.mjs +2 -3
- package/esm2022/lib/services/index.mjs +5 -1
- package/esm2022/lib/services/modal-service/components/alert-modal/alert-modal.component.mjs +1 -3
- package/esm2022/lib/services/modal-service/components/confirm-modal/confirm-modal.component.mjs +1 -3
- package/esm2022/lib/services/modal-service/helpers/modal.component.mjs +1 -2
- package/esm2022/lib/services/modal-service/modal-service.service.mjs +1 -1
- package/esm2022/lib/services/mrx-form-validator/constants/invalid-messages.mjs +10 -0
- package/esm2022/lib/services/mrx-form-validator/helpers/get-error-message.helper.mjs +10 -0
- package/esm2022/lib/services/mrx-form-validator/helpers/get-sorting-validations.helper.mjs +29 -0
- package/esm2022/lib/services/mrx-form-validator/models/index.mjs +4 -0
- package/esm2022/lib/services/mrx-form-validator/models/validations-options.model.mjs +2 -0
- package/esm2022/lib/services/mrx-form-validator/models/validations-settings.model.mjs +2 -0
- package/esm2022/lib/services/mrx-form-validator/models/validations-types.model.mjs +22 -0
- package/esm2022/lib/services/mrx-form-validator/mrx-form-validator.mjs +97 -183
- package/esm2022/lib/services/mrx-form-validator/validations/callback.validation.mjs +15 -0
- package/esm2022/lib/services/mrx-form-validator/validations/email.validation.mjs +11 -0
- package/esm2022/lib/services/mrx-form-validator/validations/max-length.validation.mjs +14 -0
- package/esm2022/lib/services/mrx-form-validator/validations/max-value.validation.mjs +10 -0
- package/esm2022/lib/services/mrx-form-validator/validations/min-length.validation.mjs +15 -0
- package/esm2022/lib/services/mrx-form-validator/validations/min-value.validation.mjs +10 -0
- package/esm2022/lib/services/mrx-form-validator/validations/pattern.validation.mjs +11 -0
- package/esm2022/lib/services/mrx-form-validator/validations/required.validation.mjs +22 -0
- package/esm2022/lib/services/toaster-service/components/toaster/toaster.component.mjs +29 -0
- package/esm2022/lib/services/toaster-service/models/toaster.model.mjs +15 -0
- package/esm2022/lib/services/toaster-service/toaster-service.module.mjs +52 -0
- package/esm2022/lib/services/toaster-service/toaster-service.service.mjs +53 -0
- package/esm2022/public-api.mjs +5 -1
- package/fesm2022/myrta-ui.mjs +1625 -988
- package/fesm2022/myrta-ui.mjs.map +1 -1
- package/lib/components/breadcrumbs/breadcrumbs.enum.d.ts +5 -0
- package/lib/components/breadcrumbs/breadcrumbs.module.d.ts +2 -1
- package/lib/components/form/checkbox/checkbox.component.d.ts +2 -4
- package/lib/components/form/checkbox/checkbox.enum.d.ts +0 -4
- package/lib/components/form/checkbox-group/checkbox-group.component.d.ts +27 -18
- package/lib/components/form/checkbox-group/components/checkbox-group-item/checkbox-group-item.component.d.ts +16 -9
- package/lib/components/form/checkbox-group/helpers/change-group-value.d.ts +3 -3
- package/lib/components/form/checkbox-group/helpers/change-item-value.d.ts +3 -3
- package/lib/components/form/checkbox-group/helpers/filter-search-group.d.ts +2 -2
- package/lib/components/form/checkbox-group/helpers/get-checked-items.d.ts +2 -2
- package/lib/components/form/checkbox-group/helpers/get-inner-list.helper.d.ts +2 -0
- package/lib/components/form/checkbox-group/helpers/get-item-by-id.d.ts +2 -2
- package/lib/components/form/checkbox-group/helpers/get-sorted-list.d.ts +2 -2
- package/lib/components/form/checkbox-group/helpers/inner-list-to-list.helper.d.ts +2 -0
- package/lib/components/form/checkbox-group/models/checkbox-group.model.d.ts +13 -2
- package/lib/components/form/editor/editor.component.d.ts +1 -1
- package/lib/components/form/input-file-image/components/file-image-edit-modal/file-image-edit-modal.component.d.ts +0 -1
- package/lib/components/form/input-file-image/input-file-image.component.d.ts +1 -1
- package/lib/components/form/input-select/input-select.component.d.ts +16 -5
- package/lib/components/form/radio-group/components/radio-group-header/radio-group-header.component.d.ts +3 -1
- package/lib/components/form/radio-group/components/radio-group-item/radio-group-item.component.d.ts +3 -1
- package/lib/components/form/radio-group/models/radio-group.model.d.ts +4 -0
- package/lib/components/form/radio-group/radio-group.component.d.ts +10 -7
- package/lib/components/form/radio-group/radio-group.module.d.ts +2 -1
- package/lib/components/gallery/components/gallery-confirm-modal/gallery-confirm-modal.component.d.ts +0 -1
- package/lib/components/icon-button/icon-button.component.d.ts +4 -1
- package/lib/components/icon-button/icon-button.enum.d.ts +2 -1
- package/lib/components/link/link.component.d.ts +10 -3
- package/lib/components/link/link.module.d.ts +2 -1
- package/lib/components/paginator/paginator.module.d.ts +3 -3
- package/lib/components/pdf-viewer/pdf-viewer.component.d.ts +70 -0
- package/lib/components/pdf-viewer/pdf-viewer.module.d.ts +16 -0
- package/lib/components/save-state/save-state.enum.d.ts +1 -1
- package/lib/services/file-upload/file-upload.service.d.ts +2 -2
- package/lib/services/index.d.ts +4 -0
- package/lib/services/modal-service/components/alert-modal/alert-modal.component.d.ts +0 -1
- package/lib/services/modal-service/components/confirm-modal/confirm-modal.component.d.ts +0 -1
- package/lib/services/modal-service/helpers/modal.component.d.ts +0 -1
- package/lib/services/mrx-form-validator/constants/invalid-messages.d.ts +9 -0
- package/lib/services/mrx-form-validator/helpers/get-error-message.helper.d.ts +3 -0
- package/lib/services/mrx-form-validator/helpers/get-sorting-validations.helper.d.ts +2 -0
- package/lib/services/mrx-form-validator/models/index.d.ts +3 -0
- package/lib/services/mrx-form-validator/models/validations-options.model.d.ts +31 -0
- package/lib/services/mrx-form-validator/models/validations-settings.model.d.ts +7 -0
- package/lib/services/mrx-form-validator/models/validations-types.model.d.ts +19 -0
- package/lib/services/mrx-form-validator/mrx-form-validator.d.ts +6 -33
- package/lib/services/mrx-form-validator/validations/callback.validation.d.ts +5 -0
- package/lib/services/mrx-form-validator/validations/email.validation.d.ts +5 -0
- package/lib/services/mrx-form-validator/validations/max-length.validation.d.ts +5 -0
- package/lib/services/mrx-form-validator/validations/max-value.validation.d.ts +5 -0
- package/lib/services/mrx-form-validator/validations/min-length.validation.d.ts +5 -0
- package/lib/services/mrx-form-validator/validations/min-value.validation.d.ts +5 -0
- package/lib/services/mrx-form-validator/validations/pattern.validation.d.ts +5 -0
- package/lib/services/mrx-form-validator/validations/required.validation.d.ts +5 -0
- package/lib/services/toaster-service/components/toaster/toaster.component.d.ts +12 -0
- package/lib/services/toaster-service/models/toaster.model.d.ts +12 -0
- package/lib/services/toaster-service/toaster-service.module.d.ts +10 -0
- package/lib/services/toaster-service/toaster-service.service.d.ts +15 -0
- package/package.json +5 -1
- package/public-api.d.ts +4 -0
|
@@ -25,11 +25,11 @@ export class SaveStateComponent {
|
|
|
25
25
|
return this.fields.some((field) => field.id === this.id);
|
|
26
26
|
}
|
|
27
27
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SaveStateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
28
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: SaveStateComponent, selector: "mrx-save-state", inputs: { type: "type", fields: "fields", id: "id" }, ngImport: i0, template: "<div class=\"mrx-save-state\">\r\n <ng-container [ngSwitch]=\"type\">\r\n <mrx-save-state-input *ngSwitchCase=\"'input'\" [state]=\"getState\"></mrx-save-state-input>\r\n <mrx-save-state-checkbox *ngSwitchCase=\"'checkbox'\" [state]=\"getState\"></mrx-save-state-checkbox>\r\n <mrx-save-state-checkbox-group *ngSwitchCase=\"'checkboxGroup'\" [state]=\"getState\"></mrx-save-state-checkbox-group>\r\n <mrx-save-state-switch *ngSwitchCase=\"'switch'\" [state]=\"getState\"></mrx-save-state-switch>\r\n <mrx-save-state-editor *ngSwitchCase=\"'editor'\" [state]=\"getState\"></mrx-save-state-editor>\r\n </ng-container>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.SaveStateInputComponent, selector: "mrx-save-state-input", inputs: ["state"] }, { kind: "component", type: i3.SaveStateCheckboxComponent, selector: "mrx-save-state-checkbox", inputs: ["state"] }, { kind: "component", type: i4.SaveStateCheckboxGroupComponent, selector: "mrx-save-state-checkbox-group", inputs: ["state"] }, { kind: "component", type: i5.SaveStateSwitchComponent, selector: "mrx-save-state-switch", inputs: ["state"] }, { kind: "component", type: i6.SaveStateEditorComponent, selector: "mrx-save-state-editor", inputs: ["state"] }] });
|
|
28
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: SaveStateComponent, selector: "mrx-save-state", inputs: { type: "type", fields: "fields", id: "id" }, ngImport: i0, template: "<div class=\"mrx-save-state\">\r\n <ng-container [ngSwitch]=\"type\">\r\n <mrx-save-state-input *ngSwitchCase=\"'input'\" [state]=\"getState\"></mrx-save-state-input>\r\n <mrx-save-state-checkbox *ngSwitchCase=\"'checkbox'\" [state]=\"getState\"></mrx-save-state-checkbox>\r\n <mrx-save-state-checkbox-group *ngSwitchCase=\"'checkboxGroup'\" [state]=\"getState\"></mrx-save-state-checkbox-group>\r\n <mrx-save-state-checkbox *ngSwitchCase=\"'radio'\" [state]=\"getState\"></mrx-save-state-checkbox>\r\n <mrx-save-state-checkbox-group *ngSwitchCase=\"'radioGroup'\" [state]=\"getState\"></mrx-save-state-checkbox-group>\r\n <mrx-save-state-switch *ngSwitchCase=\"'switch'\" [state]=\"getState\"></mrx-save-state-switch>\r\n <mrx-save-state-editor *ngSwitchCase=\"'editor'\" [state]=\"getState\"></mrx-save-state-editor>\r\n </ng-container>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.SaveStateInputComponent, selector: "mrx-save-state-input", inputs: ["state"] }, { kind: "component", type: i3.SaveStateCheckboxComponent, selector: "mrx-save-state-checkbox", inputs: ["state"] }, { kind: "component", type: i4.SaveStateCheckboxGroupComponent, selector: "mrx-save-state-checkbox-group", inputs: ["state"] }, { kind: "component", type: i5.SaveStateSwitchComponent, selector: "mrx-save-state-switch", inputs: ["state"] }, { kind: "component", type: i6.SaveStateEditorComponent, selector: "mrx-save-state-editor", inputs: ["state"] }] });
|
|
29
29
|
}
|
|
30
30
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SaveStateComponent, decorators: [{
|
|
31
31
|
type: Component,
|
|
32
|
-
args: [{ selector: 'mrx-save-state', template: "<div class=\"mrx-save-state\">\r\n <ng-container [ngSwitch]=\"type\">\r\n <mrx-save-state-input *ngSwitchCase=\"'input'\" [state]=\"getState\"></mrx-save-state-input>\r\n <mrx-save-state-checkbox *ngSwitchCase=\"'checkbox'\" [state]=\"getState\"></mrx-save-state-checkbox>\r\n <mrx-save-state-checkbox-group *ngSwitchCase=\"'checkboxGroup'\" [state]=\"getState\"></mrx-save-state-checkbox-group>\r\n <mrx-save-state-switch *ngSwitchCase=\"'switch'\" [state]=\"getState\"></mrx-save-state-switch>\r\n <mrx-save-state-editor *ngSwitchCase=\"'editor'\" [state]=\"getState\"></mrx-save-state-editor>\r\n </ng-container>\r\n</div>\r\n" }]
|
|
32
|
+
args: [{ selector: 'mrx-save-state', template: "<div class=\"mrx-save-state\">\r\n <ng-container [ngSwitch]=\"type\">\r\n <mrx-save-state-input *ngSwitchCase=\"'input'\" [state]=\"getState\"></mrx-save-state-input>\r\n <mrx-save-state-checkbox *ngSwitchCase=\"'checkbox'\" [state]=\"getState\"></mrx-save-state-checkbox>\r\n <mrx-save-state-checkbox-group *ngSwitchCase=\"'checkboxGroup'\" [state]=\"getState\"></mrx-save-state-checkbox-group>\r\n <mrx-save-state-checkbox *ngSwitchCase=\"'radio'\" [state]=\"getState\"></mrx-save-state-checkbox>\r\n <mrx-save-state-checkbox-group *ngSwitchCase=\"'radioGroup'\" [state]=\"getState\"></mrx-save-state-checkbox-group>\r\n <mrx-save-state-switch *ngSwitchCase=\"'switch'\" [state]=\"getState\"></mrx-save-state-switch>\r\n <mrx-save-state-editor *ngSwitchCase=\"'editor'\" [state]=\"getState\"></mrx-save-state-editor>\r\n </ng-container>\r\n</div>\r\n" }]
|
|
33
33
|
}], ctorParameters: () => [], propDecorators: { type: [{
|
|
34
34
|
type: Input
|
|
35
35
|
}], fields: [{
|
|
@@ -37,4 +37,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
37
37
|
}], id: [{
|
|
38
38
|
type: Input
|
|
39
39
|
}] } });
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2F2ZS1zdGF0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL2NvbXBvbmVudHMvc2F2ZS1zdGF0ZS9zYXZlLXN0YXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9zYXZlLXN0YXRlL3NhdmUtc3RhdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7O0FBU3pELE1BQU0sT0FBTyxrQkFBa0I7SUFFcEIsSUFBSSxHQUEyQixPQUFPLENBQUE7SUFDdEMsTUFBTSxHQUFZLEVBQUUsQ0FBQTtJQUNwQixFQUFFLENBQVM7SUFFcEI7SUFDQSxDQUFDO0lBRUQsSUFBVyxRQUFRO1FBQ2pCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQTtRQUV2RSxJQUFJLFFBQVEsS0FBSyxTQUFTLElBQUksUUFBUSxLQUFLLElBQUksSUFBSSxRQUFRLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNuRSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsS0FBSyxDQUFBO1FBQ3BDLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxJQUFJLENBQUE7UUFDYixDQUFDO0lBQ0gsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQTtJQUMxRCxDQUFDO3dHQXJCVSxrQkFBa0I7NEZBQWxCLGtCQUFrQiw0R0NUL0IsNjJCQVdBOzs0RkRGYSxrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0UsZ0JBQWdCO3dEQU1qQixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLEVBQUU7c0JBQVYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTYXZlU3RhdGVDb21wb25lbnRUeXBlIH0gZnJvbSAnLi9zYXZlLXN0YXRlLmVudW0nO1xyXG5pbXBvcnQgeyBGaWVsZCwgU3RhdGVUeXBlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbXJ4LWF1dG9zYXZlL21yeC1hdXRvc2F2ZS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbXJ4LXNhdmUtc3RhdGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zYXZlLXN0YXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zYXZlLXN0YXRlLmNvbXBvbmVudC5sZXNzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFNhdmVTdGF0ZUNvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpIHR5cGU6IFNhdmVTdGF0ZUNvbXBvbmVudFR5cGUgPSAnaW5wdXQnXHJcbiAgQElucHV0KCkgZmllbGRzOiBGaWVsZFtdID0gW11cclxuICBASW5wdXQoKSBpZCE6IHN0cmluZ1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZ2V0U3RhdGUoKTogU3RhdGVUeXBlIHwgbnVsbCB7XHJcbiAgICBjb25zdCBzYXZpbmdJZCA9IHRoaXMuZmllbGRzLmZpbmRJbmRleCgoZmllbGQpID0+IGZpZWxkLmlkID09PSB0aGlzLmlkKVxyXG5cclxuICAgIGlmIChzYXZpbmdJZCAhPT0gdW5kZWZpbmVkICYmIHNhdmluZ0lkICE9PSBudWxsICYmIHNhdmluZ0lkICE9PSAtMSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5maWVsZHNbc2F2aW5nSWRdLnN0YXRlXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gbnVsbFxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBpc1NhdmluZygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmZpZWxkcy5zb21lKChmaWVsZCkgPT4gZmllbGQuaWQgPT09IHRoaXMuaWQpXHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJtcngtc2F2ZS1zdGF0ZVwiPlxyXG4gIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInR5cGVcIj5cclxuICAgIDxtcngtc2F2ZS1zdGF0ZS1pbnB1dCAqbmdTd2l0Y2hDYXNlPVwiJ2lucHV0J1wiIFtzdGF0ZV09XCJnZXRTdGF0ZVwiPjwvbXJ4LXNhdmUtc3RhdGUtaW5wdXQ+XHJcbiAgICA8bXJ4LXNhdmUtc3RhdGUtY2hlY2tib3ggKm5nU3dpdGNoQ2FzZT1cIidjaGVja2JveCdcIiBbc3RhdGVdPVwiZ2V0U3RhdGVcIj48L21yeC1zYXZlLXN0YXRlLWNoZWNrYm94PlxyXG4gICAgPG1yeC1zYXZlLXN0YXRlLWNoZWNrYm94LWdyb3VwICpuZ1N3aXRjaENhc2U9XCInY2hlY2tib3hHcm91cCdcIiBbc3RhdGVdPVwiZ2V0U3RhdGVcIj48L21yeC1zYXZlLXN0YXRlLWNoZWNrYm94LWdyb3VwPlxyXG4gICAgPG1yeC1zYXZlLXN0YXRlLWNoZWNrYm94ICpuZ1N3aXRjaENhc2U9XCIncmFkaW8nXCIgW3N0YXRlXT1cImdldFN0YXRlXCI+PC9tcngtc2F2ZS1zdGF0ZS1jaGVja2JveD5cclxuICAgIDxtcngtc2F2ZS1zdGF0ZS1jaGVja2JveC1ncm91cCAqbmdTd2l0Y2hDYXNlPVwiJ3JhZGlvR3JvdXAnXCIgW3N0YXRlXT1cImdldFN0YXRlXCI+PC9tcngtc2F2ZS1zdGF0ZS1jaGVja2JveC1ncm91cD5cclxuICAgIDxtcngtc2F2ZS1zdGF0ZS1zd2l0Y2ggKm5nU3dpdGNoQ2FzZT1cIidzd2l0Y2gnXCIgW3N0YXRlXT1cImdldFN0YXRlXCI+PC9tcngtc2F2ZS1zdGF0ZS1zd2l0Y2g+XHJcbiAgICA8bXJ4LXNhdmUtc3RhdGUtZWRpdG9yICpuZ1N3aXRjaENhc2U9XCInZWRpdG9yJ1wiIFtzdGF0ZV09XCJnZXRTdGF0ZVwiPjwvbXJ4LXNhdmUtc3RhdGUtZWRpdG9yPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2F2ZS1zdGF0ZS5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL3NhdmUtc3RhdGUvc2F2ZS1zdGF0ZS5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBTYXZlU3RhdGVDb21wb25lbnRUeXBlID0gJ2lucHV0JyB8ICdjaGVja2JveCcgfCAnY2hlY2tib3hHcm91cCcgfCAncmFkaW8nIHwgJ3JhZGlvR3JvdXAnIHwgJ3N3aXRjaCcgfCAnZWRpdG9yJ1xyXG4iXX0=
|
|
@@ -32,7 +32,7 @@ export class TableComponent {
|
|
|
32
32
|
customClasses = '';
|
|
33
33
|
emptyResultMsg = '';
|
|
34
34
|
hovered = true;
|
|
35
|
-
autoHeight = true;
|
|
35
|
+
autoHeight = true; // deprecated
|
|
36
36
|
headerSettings;
|
|
37
37
|
contentSettings = {
|
|
38
38
|
substrate: false
|
|
@@ -72,13 +72,6 @@ export class TableComponent {
|
|
|
72
72
|
});
|
|
73
73
|
this.changeDetector.detectChanges();
|
|
74
74
|
this.init = true;
|
|
75
|
-
if (this.autoHeight) {
|
|
76
|
-
document.querySelectorAll('.td-content-wrapper').forEach((wrapper) => {
|
|
77
|
-
const tdHeight = wrapper.closest('td')?.scrollHeight;
|
|
78
|
-
const link = wrapper;
|
|
79
|
-
link.style.height = tdHeight + 'px';
|
|
80
|
-
});
|
|
81
|
-
}
|
|
82
75
|
}
|
|
83
76
|
get getClasses() {
|
|
84
77
|
return `${TableTypeEnum[this.type]} ${this.customClasses}`;
|
|
@@ -190,7 +183,7 @@ export class TableComponent {
|
|
|
190
183
|
this.changeTypeTable.emit(type);
|
|
191
184
|
}
|
|
192
185
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: TableComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
193
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: TableComponent, selector: "mrx-table", inputs: { type: "type", data: "data", pageSize: "pageSize", currentPage: "currentPage", total: "total", link: "link", isLoading: "isLoading", sort: "sort", trackById: "trackById", sortable: "sortable", striped: "striped", customClasses: "customClasses", emptyResultMsg: "emptyResultMsg", hovered: "hovered", autoHeight: "autoHeight", headerSettings: "headerSettings", contentSettings: "contentSettings", paginatorSettings: "paginatorSettings", setPageable: ["pageable", "setPageable"] }, outputs: { dataStateChanged: "dataStateChanged", downloadData: "downloadData", changeTypeTable: "changeTypeTable", change: "change" }, queries: [{ propertyName: "templateCard", first: true, predicate: ["templateCard"], descendants: true }, { propertyName: "emptyResultMsgTemplate", first: true, predicate: ["emptyResultMsgTemplate"], descendants: true }, { propertyName: "contentChildren", predicate: ColumnComponent }], ngImport: i0, template: "<div class=\"mrx-table\" [class]=\"getClasses\" [class.mb-3]=\"pageable\">\r\n <ng-container *ngIf=\"headerSettings\">\r\n <div\r\n class=\"mrx-table-card-header pt-2 pb-2 mb-3\"\r\n [class.mrx-table-card-header--substrate]=\"headerSettings.substrate\"\r\n *ngIf=\"headerSettings.type === 'default'\"\r\n >\r\n <div class=\"row\">\r\n <div\r\n class=\"mrx-table-card-header--left col col-12 col-md-6 mb-1 mb-md-0 d-flex justify-content-start align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"counterTemplate\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table-card-header--right col col-12 col-md-6 d-flex justify-content-end align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"sortTemplate\"></ng-container>\r\n <div class=\"ml-4\" *ngIf=\"headerSettings.toggle\">\r\n <ng-container *ngTemplateOutlet=\"toggleTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"mrx-table-card-header mb-3 pt-2 pb-2\"\r\n [class.mrx-table-card-header--substrate]=\"headerSettings.substrate\"\r\n *ngIf=\"headerSettings.type === 'second'\"\r\n >\r\n <div class=\"row\">\r\n <div\r\n class=\"mrx-table-card-header--left col col-12 col-sm-6 mb-1 mb-sm-0 d-flex justify-content-start align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"sortTemplate\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table-card-header--right col col-12 col-sm-6 d-flex justify-content-end align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"downloadTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container [ngSwitch]=\"type\">\r\n <div class=\"mrx-table__wrapper\" *ngSwitchCase=\"'default'\"\r\n [class.mrx-table__wrapper--substrate]=\"contentSettings.substrate\">\r\n <table\r\n [class.table-striped]=\"striped\"\r\n [class.table-solid]=\"!striped\"\r\n [class.mt-2]=\"contentSettings.substrate\"\r\n [class.mb-3]=\"contentSettings.substrate && data.length\"\r\n >\r\n <thead [class.table-head-gray]=\"!headerSettings || headerSettings.background\">\r\n <tr>\r\n <th *ngFor=\"let col of contentChildren; let index = index; let first = first; let last = last; trackBy: trackByFn\" [class]=\"col.customClasses\">\r\n <ng-container *ngIf=\"!col.templateHead; else headerItemTemplate\">\r\n <ng-container *ngIf=\"col.sortable; else defaultHeadCol\">\r\n <div [class.th-wrapper]=\"sortable\" (click)=\"onSortColumn(col.name, col.sortable)\">\r\n <span>{{ col.label }}</span>\r\n <svg\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n [class]=\"columnSortedDir(col.name)\"\r\n class=\"mrx-table__sort-icon\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M4 9L8 13L12 9\" fill=\"#DAD5CE\"/>\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 7L8 3L4 7\" fill=\"#DAD5CE\"/>\r\n </svg>\r\n </div>\r\n </ng-container>\r\n <ng-template #defaultHeadCol>\r\n <div><span>{{ col.label }}</span></div>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-template #headerItemTemplate>\r\n <ng-container *ngIf=\"col.sortable; else defaultHeadCol\">\r\n <div [class.th-wrapper]=\"sortable\" (click)=\"onSortColumn(col.name, col.sortable)\">\r\n <ng-container *ngTemplateOutlet=\"col.templateHead; context: { $implicit: col }\"></ng-container>\r\n <svg\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n [class]=\"columnSortedDir(col.name)\"\r\n class=\"mrx-table__sort-icon\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M4 9L8 13L12 9\" fill=\"#DAD5CE\"/>\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 7L8 3L4 7\" fill=\"#DAD5CE\"/>\r\n </svg>\r\n </div>\r\n </ng-container>\r\n <ng-template #defaultHeadCol>\r\n <ng-container *ngTemplateOutlet=\"col.templateHead; context: { $implicit: col, index, first, last }\"></ng-container>\r\n </ng-template>\r\n </ng-template>\r\n </th>\r\n </tr>\r\n </thead>\r\n\r\n <tbody>\r\n <tr *ngFor=\"let dataItem of data; let index = index; let first = first; let last = last\" [class.-hovered]=\"hovered\">\r\n <td\r\n #tableTD\r\n class=\"p-0\"\r\n *ngFor=\"let col of contentChildren\"\r\n [class]=\"col.customClasses\"\r\n >\r\n <a\r\n class=\"link-wrapper td-content-wrapper\"\r\n [href]=\"getLinkForStroke(link, dataItem)\"\r\n *ngIf=\"link && col['isLink']; else defaultTemplate\"\r\n >\r\n <ng-container *ngIf=\"!col.templateCell; else bodyItemTemplate\">\r\n <div class=\"p-2\">{{ dataItem[col.name] }}</div>\r\n </ng-container>\r\n\r\n <ng-template #bodyItemTemplate>\r\n <ng-container\r\n *ngTemplateOutlet=\"col.templateCell; context: { $implicit: col, row: dataItem, index, first, last }\"></ng-container>\r\n </ng-template>\r\n </a>\r\n\r\n <ng-template #defaultTemplate>\r\n <ng-container *ngIf=\"!col.templateCell; else bodyItemTemplate\">\r\n <div class=\"p-2 td-content-wrapper\">{{ dataItem[col.name] }}</div>\r\n </ng-container>\r\n\r\n <ng-template #bodyItemTemplate>\r\n <div class=\"td-content-wrapper\">\r\n <ng-container\r\n *ngTemplateOutlet=\"col.templateCell; context: { $implicit: col, row: dataItem, index, first, last }\"></ng-container>\r\n </div>\r\n </ng-template>\r\n </ng-template>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n\r\n <div class=\"mrx-table__result-message\" *ngIf=\"!data.length\">\r\n <ng-container *ngTemplateOutlet=\"emptyResultMsg ? emptyResultMsgTemplateDefault : emptyResultMsgTemplate\">\r\n </ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table__overlay\" [@visibleLoading]=\"isLoading ? 'in' : 'out'\" [ngClass]=\"{'open': isLoading}\" >\r\n <mrx-loader size=\"large\" color=\"brand\"></mrx-loader>\r\n </div>\r\n </div>\r\n\r\n <div class=\"mrx-table__wrapper\" *ngSwitchCase=\"'cards'\">\r\n <ng-container *ngFor=\"let item of data; let index = index; let first = first; let last = last\">\r\n <ng-container *ngTemplateOutlet=\"templateCard; context: { $implicit: item, index, first, last }\"></ng-container>\r\n </ng-container>\r\n\r\n <div class=\"mrx-table__result-message--substrate\" *ngIf=\"!data.length\" >\r\n <ng-container *ngTemplateOutlet=\"emptyResultMsg ? emptyResultMsgTemplateDefault : emptyResultMsgTemplate\">\r\n </ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table__overlay\" [@visibleLoading]=\"isLoading ? 'in' : 'out'\" [ngClass]=\"{'open': isLoading}\" >\r\n <mrx-loader size=\"large\" color=\"brand\"></mrx-loader>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n\r\n<div class=\"mrx-table__paginator pt-2 pb-2\" [class.mrx-table__paginator--substrate]=\"paginatorSettings.substrate\" *ngIf=\"total\">\r\n <mrx-paginator\r\n *ngIf=\"pageable\"\r\n [total]=\"total\"\r\n [pageSize]=\"pageSize\"\r\n [position]=\"pageable.position\"\r\n [pageSizes]=\"pageable.pageSizes\"\r\n [currentPage]=\"currentPage\"\r\n [withPageSize]=\"pageable.withPageSize\"\r\n (dataStateChanged)=\"onDataStatePaginatorChanged($event)\">\r\n </mrx-paginator>\r\n</div>\r\n\r\n<ng-template #counterTemplate>\r\n <span class=\"d-flex align-items-center\" *ngIf=\"headerSettings?.count\">\r\n {{ total }} {{headerSettings?.countText || '\u043D\u043E\u0432\u043E\u0441\u0442\u0435\u0439'}}\r\n </span>\r\n</ng-template>\r\n\r\n<ng-template #sortTemplate>\r\n <div class=\"d-flex mrx-table-sort\" *ngIf=\"headerSettings?.sort\">\r\n <div class=\"mrx-table-sort-scale\" (click)=\"changeSort()\">\r\n <span class=\"mrx-table-sort-scale__title\">\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043F\u043E:</span>\r\n <div class=\"mrx-table-sort-scale__icon\">\r\n <span *ngIf=\"sort?.dir === 'desc'\" class=\"mrx-icon icon-sorting-down icon-font-16\"></span>\r\n <span *ngIf=\"sort?.dir === 'asc'\" class=\"mrx-icon icon-sorting-up icon-font-16\"></span>\r\n </div>\r\n </div>\r\n <ng-select\r\n bindLabel=\"sortLabel\"\r\n bindValue=\"name\"\r\n [items]=\"colArray\"\r\n [ngModel]=\"selectedSort\"\r\n (change)=\"updateSortSelect($event)\"\r\n [clearable]=\"false\"\r\n [searchable]=\"false\"\r\n [closeOnSelect]=\"true\"\r\n ></ng-select>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #downloadTemplate>\r\n <div class=\"mrx-table-download\" (click)=\"clickToDownload($event)\" *ngIf=\"headerSettings?.download\">\r\n <span class=\"desktop\">\u0421\u043A\u0430\u0447\u0430\u0442\u044C \u0434\u0430\u043D\u043D\u044B\u0435</span>\r\n <span class=\"mrx-icon icon-download icon-font-24\"></span>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #toggleTemplate>\r\n <div class=\"mrx-table-toggle\">\r\n <div class=\"mrx-table-toggle--item mr-1\" (click)=\"onChangeTypeTable('cards')\" [class.active]=\"type === 'cards'\">\r\n <span class=\"mrx-icon icon-cards-view icon-font-24\"></span>\r\n </div>\r\n <div class=\"mrx-table-toggle--item\" (click)=\"onChangeTypeTable('default')\" [class.active]=\"type === 'default'\">\r\n <span class=\"mrx-icon icon-table-view icon-font-24\"></span>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #emptyResultMsgTemplateDefault>\r\n {{emptyResultMsg}}\r\n</ng-template>\r\n", styles: [".mrx-table.mrx-table{display:block;width:100%}.mrx-table.mrx-table .th-wrapper{display:flex;cursor:pointer;word-break:inherit;justify-content:space-between;align-items:flex-end}.mrx-table.mrx-table .th-wrapper span{word-break:inherit}.mrx-table.mrx-table .mrx-table__sort-icon.asc path:last-child{fill:var(--brand-bg-primary-default)}.mrx-table.mrx-table .mrx-table__sort-icon.desc path:first-child{fill:var(--brand-bg-primary-default)}.mrx-table__wrapper.mrx-table__wrapper{overflow-x:auto;overflow-y:hidden;position:relative}.mrx-table__wrapper.mrx-table__wrapper .mrx-table__wrapper--substrate{padding-top:8px}.mrx-table.mrx-table.type-default table{width:100%;text-align:left;background-color:transparent;border-spacing:0}.mrx-table.mrx-table.type-default table thead.table-head-gray{background:var(--Disabled)}.mrx-table.mrx-table.type-default table thead .sort-asc .custom-table__sort path:nth-child(2){fill:var(--Main2)}.mrx-table.mrx-table.type-default table thead .sort-desc .custom-table__sort path:nth-child(1){fill:var(--Main2)}.mrx-table.mrx-table.type-default table td{max-width:340px;vertical-align:top}.mrx-table.mrx-table.type-default table td .link-wrapper{display:block;color:initial;height:100%}.mrx-table.mrx-table.type-default table td .link-wrapper:active{color:var(--Main1)}.mrx-table.mrx-table.type-default table td .left-border{border-left:4px solid var(--Main2)}.mrx-table.mrx-table.type-default table td .light-border{border-left:4px solid transparent}.mrx-table.mrx-table.type-default table td .warning-back{background-color:#ffece7}.mrx-table.mrx-table.type-default table td .disabled-back{background-color:#fafafa}.mrx-table.mrx-table.type-default table td .link-colored,.mrx-table.mrx-table.type-default table td .link-colored:active{color:var(--Main2)}.mrx-table.mrx-table.type-default table th{padding:8px;vertical-align:bottom;word-break:inherit;font-weight:700}.mrx-table.mrx-table.type-default table th svg{margin-left:8px;cursor:pointer}.mrx-table.mrx-table .mrx-table-card-header{position:relative}.mrx-table.mrx-table .mrx-table-card-header--substrate{padding-left:24px;padding-right:24px;background:#fff;box-shadow:0 1px 4px #3b43571a;border-radius:4px}.mrx-table.mrx-table .mrx-table__wrapper--substrate{background:#fff;box-shadow:0 1px 4px #3b43571a;border-radius:4px}.mrx-table.mrx-table .mrx-table-toggle{display:flex}.mrx-table.mrx-table .mrx-table-toggle--item{display:flex;align-items:center;justify-content:center;cursor:pointer}.mrx-table.mrx-table .mrx-table-toggle--item .mrx-icon{color:#e5e5e5}.mrx-table.mrx-table .mrx-table-toggle--item.active .mrx-icon{color:var(--Main2)}.mrx-table.mrx-table .mrx-table-sort.mrx-table-sort--is-card,.mrx-table.mrx-table .mrx-table-sort.mrx-table-sort--is-table{justify-content:flex-start}.mrx-table.mrx-table .mrx-table-sort-scale{display:flex;align-items:center;margin-right:8px;cursor:pointer}.mrx-table.mrx-table .mrx-table-sort-scale__title{font-family:PT Sans;font-style:normal;font-weight:400;font-size:14px;line-height:143%;color:var(--Main1);margin-right:12px}.mrx-table.mrx-table .mrx-table-sort-scale__icon{display:flex;align-items:center;justify-content:center}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select{max-width:215px;margin-bottom:0}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-select-container.ng-select-container{min-height:auto!important;border:none;cursor:pointer;align-items:center;height:100%!important}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-value-container.ng-value-container{padding-left:0!important;margin-right:8px}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-arrow-wrapper.ng-arrow-wrapper{min-height:auto;width:auto!important}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-dropdown-panel.ng-dropdown-panel{width:100vw;max-width:215px;left:auto;right:0}.mrx-table__paginator.mrx-table__paginator.mrx-table__paginator--substrate{padding-left:24px;padding-right:24px;background:#fff;box-shadow:0 1px 4px #3b43571a;border-radius:4px}.mrx-table.mrx-table .table-striped tbody tr:nth-child(2n){background-color:var(--Disabled)}.mrx-table.mrx-table .table-striped tbody tr:nth-child(n){transition:.2s}.mrx-table.mrx-table .table-striped tbody tr:nth-child(n).-hovered:hover{background-color:var(--Bg2)}.mrx-table.mrx-table .table-solid{border-collapse:collapse}.mrx-table.mrx-table .table-solid thead tr{border-bottom:1px solid #f2f2f2}.mrx-table.mrx-table .table-solid tbody tr:not(:last-child){border-bottom:1px solid #f2f2f2}.mrx-table.mrx-table .table-solid tbody tr.-hovered:hover{box-shadow:0 1px 4px #3a3a3a4d}.mrx-table.mrx-table .mrx-table__wrapper .mrx-table__overlay{position:absolute;inset:0;background:#ffffffb3;display:flex;align-items:flex-start;justify-content:center;padding-top:12px;border-radius:4px}.mrx-table.mrx-table .mrx-table__result-message{display:flex;justify-content:center;width:100%;padding:16px;font-weight:400;font-size:14px;line-height:16px;color:var(--neutral-text-primary)}.mrx-table.mrx-table .mrx-table__result-message--substrate{display:flex;justify-content:center;width:100%;font-weight:400;font-size:16px;line-height:24px;color:var(--neutral-text-primary);padding:24px;background:#fff;box-shadow:0 1px 4px #3b43571a;border-radius:4px;position:relative}.mrx-table.mrx-table .mrx-table-download{display:flex;align-items:center;justify-content:flex-end;cursor:pointer}.mrx-table.mrx-table .mrx-table-download span{margin-right:8px;color:var(--Main2)}.mrx-table.mrx-table .mrx-table-download svg path{stroke:var(--Main2)}.mrx-table.mrx-table .mrx-table-counter{font-family:var(--body-lg-font-family);font-size:var(--body-lg-font-size);font-weight:var(--body-lg-font-weight);line-height:var(--body-lg-line-height)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.PaginatorComponent, selector: "mrx-paginator", inputs: ["pageSizes", "currentPage", "pageSize", "total", "customClasses", "isEmptyPaginator", "isPaginatorText", "paginatorText", "position", "withPageSize"], outputs: ["dataStateChanged"] }, { kind: "component", type: i3.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "deselectOnClick"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.LoaderComponent, selector: "mrx-loader", inputs: ["size", "color", "customClasses"] }], animations: [
|
|
186
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: TableComponent, selector: "mrx-table", inputs: { type: "type", data: "data", pageSize: "pageSize", currentPage: "currentPage", total: "total", link: "link", isLoading: "isLoading", sort: "sort", trackById: "trackById", sortable: "sortable", striped: "striped", customClasses: "customClasses", emptyResultMsg: "emptyResultMsg", hovered: "hovered", autoHeight: "autoHeight", headerSettings: "headerSettings", contentSettings: "contentSettings", paginatorSettings: "paginatorSettings", setPageable: ["pageable", "setPageable"] }, outputs: { dataStateChanged: "dataStateChanged", downloadData: "downloadData", changeTypeTable: "changeTypeTable", change: "change" }, queries: [{ propertyName: "templateCard", first: true, predicate: ["templateCard"], descendants: true }, { propertyName: "emptyResultMsgTemplate", first: true, predicate: ["emptyResultMsgTemplate"], descendants: true }, { propertyName: "contentChildren", predicate: ColumnComponent }], ngImport: i0, template: "<div class=\"mrx-table\" [class]=\"getClasses\" [class.mb-3]=\"pageable\">\r\n <ng-container *ngIf=\"headerSettings\">\r\n <div\r\n class=\"mrx-table-card-header pt-2 pb-2 mb-3\"\r\n [class.mrx-table-card-header--substrate]=\"headerSettings.substrate\"\r\n *ngIf=\"headerSettings.type === 'default'\"\r\n >\r\n <div class=\"row\">\r\n <div\r\n class=\"mrx-table-card-header--left col col-12 col-md-6 mb-1 mb-md-0 d-flex justify-content-start align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"counterTemplate\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table-card-header--right col col-12 col-md-6 d-flex justify-content-end align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"sortTemplate\"></ng-container>\r\n <div class=\"ml-4\" *ngIf=\"headerSettings.toggle\">\r\n <ng-container *ngTemplateOutlet=\"toggleTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"mrx-table-card-header mb-3 pt-2 pb-2\"\r\n [class.mrx-table-card-header--substrate]=\"headerSettings.substrate\"\r\n *ngIf=\"headerSettings.type === 'second'\"\r\n >\r\n <div class=\"row\">\r\n <div\r\n class=\"mrx-table-card-header--left col col-12 col-sm-6 mb-1 mb-sm-0 d-flex justify-content-start align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"sortTemplate\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table-card-header--right col col-12 col-sm-6 d-flex justify-content-end align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"downloadTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container [ngSwitch]=\"type\">\r\n <div class=\"mrx-table__wrapper\" *ngSwitchCase=\"'default'\"\r\n [class.mrx-table__wrapper--substrate]=\"contentSettings.substrate\">\r\n <table\r\n [class.table-striped]=\"striped\"\r\n [class.table-solid]=\"!striped\"\r\n [class.mt-2]=\"contentSettings.substrate\"\r\n [class.mb-3]=\"contentSettings.substrate && data.length\"\r\n >\r\n <thead [class.table-head-gray]=\"!headerSettings || headerSettings.background\">\r\n <tr>\r\n <th *ngFor=\"let col of contentChildren; let index = index; let first = first; let last = last; trackBy: trackByFn\" [class]=\"col.customClasses\">\r\n <ng-container *ngIf=\"!col.templateHead; else headerItemTemplate\">\r\n <ng-container *ngIf=\"col.sortable; else defaultHeadCol\">\r\n <div [class.th-wrapper]=\"sortable\" (click)=\"onSortColumn(col.name, col.sortable)\">\r\n <span>{{ col.label }}</span>\r\n <svg\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n [class]=\"columnSortedDir(col.name)\"\r\n class=\"mrx-table__sort-icon\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M4 9L8 13L12 9\" fill=\"#DAD5CE\"/>\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 7L8 3L4 7\" fill=\"#DAD5CE\"/>\r\n </svg>\r\n </div>\r\n </ng-container>\r\n <ng-template #defaultHeadCol>\r\n <div><span>{{ col.label }}</span></div>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-template #headerItemTemplate>\r\n <ng-container *ngIf=\"col.sortable; else defaultHeadCol\">\r\n <div [class.th-wrapper]=\"sortable\" (click)=\"onSortColumn(col.name, col.sortable)\">\r\n <ng-container *ngTemplateOutlet=\"col.templateHead; context: { $implicit: col }\"></ng-container>\r\n <svg\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n [class]=\"columnSortedDir(col.name)\"\r\n class=\"mrx-table__sort-icon\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M4 9L8 13L12 9\" fill=\"#DAD5CE\"/>\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 7L8 3L4 7\" fill=\"#DAD5CE\"/>\r\n </svg>\r\n </div>\r\n </ng-container>\r\n <ng-template #defaultHeadCol>\r\n <ng-container *ngTemplateOutlet=\"col.templateHead; context: { $implicit: col, index, first, last }\"></ng-container>\r\n </ng-template>\r\n </ng-template>\r\n </th>\r\n </tr>\r\n </thead>\r\n\r\n <tbody>\r\n <tr *ngFor=\"let dataItem of data; let index = index; let first = first; let last = last\" [class.-hovered]=\"hovered\">\r\n <td\r\n #tableTD\r\n class=\"p-0\"\r\n *ngFor=\"let col of contentChildren\"\r\n [class]=\"col.customClasses\"\r\n >\r\n <a\r\n class=\"link-wrapper td-content-wrapper\"\r\n [href]=\"getLinkForStroke(link, dataItem)\"\r\n *ngIf=\"link && col['isLink']; else defaultTemplate\"\r\n >\r\n <ng-container *ngIf=\"!col.templateCell; else bodyItemTemplate\">\r\n <div class=\"p-2 h-100\">{{ dataItem[col.name] }}</div>\r\n </ng-container>\r\n\r\n <ng-template #bodyItemTemplate>\r\n <ng-container\r\n *ngTemplateOutlet=\"col.templateCell; context: { $implicit: col, row: dataItem, index, first, last }\"></ng-container>\r\n </ng-template>\r\n </a>\r\n\r\n <ng-template #defaultTemplate>\r\n <ng-container *ngIf=\"!col.templateCell; else bodyItemTemplate\">\r\n <div class=\"td-content-wrapper p-2 h-100\">{{ dataItem[col.name] }}</div>\r\n </ng-container>\r\n\r\n <ng-template #bodyItemTemplate>\r\n <div class=\"td-content-wrapper h-100\">\r\n <ng-container\r\n *ngTemplateOutlet=\"col.templateCell; context: { $implicit: col, row: dataItem, index, first, last }\"></ng-container>\r\n </div>\r\n </ng-template>\r\n </ng-template>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n\r\n <div class=\"mrx-table__result-message\" *ngIf=\"!data.length\">\r\n <ng-container *ngTemplateOutlet=\"emptyResultMsg ? emptyResultMsgTemplateDefault : emptyResultMsgTemplate\">\r\n </ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table__overlay\" [@visibleLoading]=\"isLoading ? 'in' : 'out'\" [ngClass]=\"{'open': isLoading}\" >\r\n <mrx-loader size=\"large\" color=\"brand\"></mrx-loader>\r\n </div>\r\n </div>\r\n\r\n <div class=\"mrx-table__wrapper\" *ngSwitchCase=\"'cards'\">\r\n <ng-container *ngFor=\"let item of data; let index = index; let first = first; let last = last\">\r\n <ng-container *ngTemplateOutlet=\"templateCard; context: { $implicit: item, index, first, last }\"></ng-container>\r\n </ng-container>\r\n\r\n <div class=\"mrx-table__result-message--substrate\" *ngIf=\"!data.length\" >\r\n <ng-container *ngTemplateOutlet=\"emptyResultMsg ? emptyResultMsgTemplateDefault : emptyResultMsgTemplate\">\r\n </ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table__overlay\" [@visibleLoading]=\"isLoading ? 'in' : 'out'\" [ngClass]=\"{'open': isLoading}\" >\r\n <mrx-loader size=\"large\" color=\"brand\"></mrx-loader>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n\r\n<div class=\"mrx-table__paginator pt-2 pb-2\" [class.mrx-table__paginator--substrate]=\"paginatorSettings.substrate\" *ngIf=\"total\">\r\n <mrx-paginator\r\n *ngIf=\"pageable\"\r\n [total]=\"total\"\r\n [pageSize]=\"pageSize\"\r\n [position]=\"pageable.position\"\r\n [pageSizes]=\"pageable.pageSizes\"\r\n [currentPage]=\"currentPage\"\r\n [withPageSize]=\"pageable.withPageSize\"\r\n (dataStateChanged)=\"onDataStatePaginatorChanged($event)\">\r\n </mrx-paginator>\r\n</div>\r\n\r\n<ng-template #counterTemplate>\r\n <span class=\"d-flex align-items-center\" *ngIf=\"headerSettings?.count\">\r\n {{ total }} {{headerSettings?.countText || '\u043D\u043E\u0432\u043E\u0441\u0442\u0435\u0439'}}\r\n </span>\r\n</ng-template>\r\n\r\n<ng-template #sortTemplate>\r\n <div class=\"d-flex mrx-table-sort\" *ngIf=\"headerSettings?.sort\">\r\n <div class=\"mrx-table-sort-scale\" (click)=\"changeSort()\">\r\n <span class=\"mrx-table-sort-scale__title\">\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043F\u043E:</span>\r\n <div class=\"mrx-table-sort-scale__icon\">\r\n <span *ngIf=\"sort?.dir === 'desc'\" class=\"mrx-icon icon-sorting-down icon-font-16\"></span>\r\n <span *ngIf=\"sort?.dir === 'asc'\" class=\"mrx-icon icon-sorting-up icon-font-16\"></span>\r\n </div>\r\n </div>\r\n <ng-select\r\n bindLabel=\"sortLabel\"\r\n bindValue=\"name\"\r\n [items]=\"colArray\"\r\n [ngModel]=\"selectedSort\"\r\n (change)=\"updateSortSelect($event)\"\r\n [clearable]=\"false\"\r\n [searchable]=\"false\"\r\n [closeOnSelect]=\"true\"\r\n ></ng-select>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #downloadTemplate>\r\n <div class=\"mrx-table-download\" (click)=\"clickToDownload($event)\" *ngIf=\"headerSettings?.download\">\r\n <span class=\"desktop\">\u0421\u043A\u0430\u0447\u0430\u0442\u044C \u0434\u0430\u043D\u043D\u044B\u0435</span>\r\n <span class=\"mrx-icon icon-download icon-font-24\"></span>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #toggleTemplate>\r\n <div class=\"mrx-table-toggle\">\r\n <div class=\"mrx-table-toggle--item mr-1\" (click)=\"onChangeTypeTable('cards')\" [class.active]=\"type === 'cards'\">\r\n <span class=\"mrx-icon icon-cards-view icon-font-24\"></span>\r\n </div>\r\n <div class=\"mrx-table-toggle--item\" (click)=\"onChangeTypeTable('default')\" [class.active]=\"type === 'default'\">\r\n <span class=\"mrx-icon icon-table-view icon-font-24\"></span>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #emptyResultMsgTemplateDefault>\r\n {{emptyResultMsg}}\r\n</ng-template>\r\n", styles: [".mrx-table.mrx-table{display:block;width:100%}.mrx-table.mrx-table table td{height:1px}.mrx-table.mrx-table .th-wrapper{display:flex;cursor:pointer;word-break:inherit;justify-content:space-between;align-items:flex-end}.mrx-table.mrx-table .th-wrapper span{word-break:inherit}.mrx-table.mrx-table .mrx-table__sort-icon.asc path:last-child{fill:var(--brand-bg-primary-default, #2a6ab8)}.mrx-table.mrx-table .mrx-table__sort-icon.desc path:first-child{fill:var(--brand-bg-primary-default, #2a6ab8)}.mrx-table__wrapper.mrx-table__wrapper{overflow-x:auto;overflow-y:hidden;position:relative}.mrx-table__wrapper.mrx-table__wrapper .mrx-table__wrapper--substrate{padding-top:8px}.mrx-table.mrx-table.type-default table{width:100%;text-align:left;background-color:transparent;border-spacing:0}.mrx-table.mrx-table.type-default table thead.table-head-gray{background:var(--neutral-bg-island-default, #F8F9FA)}.mrx-table.mrx-table.type-default table thead .sort-asc .custom-table__sort path:nth-child(2){fill:var(--brand-bg-primary-default, #2a6ab8)}.mrx-table.mrx-table.type-default table thead .sort-desc .custom-table__sort path:nth-child(1){fill:var(--brand-bg-primary-default, #2a6ab8)}.mrx-table.mrx-table.type-default table td{max-width:340px;vertical-align:top}.mrx-table.mrx-table.type-default table td .link-wrapper{display:block;color:initial;height:100%}.mrx-table.mrx-table.type-default table td .link-wrapper:active{color:var(--neutral-text-primary, #262626)}.mrx-table.mrx-table.type-default table td .left-border{border-left:4px solid var(--brand-bg-primary-default, #2a6ab8)}.mrx-table.mrx-table.type-default table td .light-border{border-left:4px solid transparent}.mrx-table.mrx-table.type-default table td .warning-back{background-color:#ffece7}.mrx-table.mrx-table.type-default table td .disabled-back{background-color:#fafafa}.mrx-table.mrx-table.type-default table td .link-colored,.mrx-table.mrx-table.type-default table td .link-colored:active{color:var(--brand-bg-primary-default, #2a6ab8)}.mrx-table.mrx-table.type-default table th{padding:8px;vertical-align:bottom;word-break:inherit;font-weight:700}.mrx-table.mrx-table.type-default table th svg{margin-left:8px;cursor:pointer}.mrx-table.mrx-table .mrx-table-card-header{position:relative}.mrx-table.mrx-table .mrx-table-card-header--substrate{padding-left:24px;padding-right:24px;background:#fff;box-shadow:0 1px 4px #3b43571a;border-radius:4px}.mrx-table.mrx-table .mrx-table__wrapper--substrate{background:#fff;box-shadow:0 1px 4px #3b43571a;border-radius:4px}.mrx-table.mrx-table .mrx-table-toggle{display:flex}.mrx-table.mrx-table .mrx-table-toggle--item{display:flex;align-items:center;justify-content:center;cursor:pointer}.mrx-table.mrx-table .mrx-table-toggle--item .mrx-icon{color:#e5e5e5}.mrx-table.mrx-table .mrx-table-toggle--item.active .mrx-icon{color:var(--brand-bg-primary-default, #2a6ab8)}.mrx-table.mrx-table .mrx-table-sort.mrx-table-sort--is-card,.mrx-table.mrx-table .mrx-table-sort.mrx-table-sort--is-table{justify-content:flex-start}.mrx-table.mrx-table .mrx-table-sort-scale{display:flex;align-items:center;margin-right:8px;cursor:pointer}.mrx-table.mrx-table .mrx-table-sort-scale__title{font-family:PT Sans;font-style:normal;font-weight:400;font-size:14px;line-height:143%;color:var(--neutral-text-primary, #262626);margin-right:12px}.mrx-table.mrx-table .mrx-table-sort-scale__icon{display:flex;align-items:center;justify-content:center}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select{max-width:215px;margin-bottom:0}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-select-container.ng-select-container{min-height:auto!important;border:none;cursor:pointer;align-items:center;height:100%!important}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-value-container.ng-value-container{padding-left:0!important;margin-right:8px}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-arrow-wrapper.ng-arrow-wrapper{min-height:auto;width:auto!important}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-dropdown-panel.ng-dropdown-panel{width:100vw;max-width:215px;left:auto;right:0}.mrx-table__paginator.mrx-table__paginator.mrx-table__paginator--substrate{padding-left:24px;padding-right:24px;background:#fff;box-shadow:0 1px 4px #3b43571a;border-radius:4px}.mrx-table.mrx-table .table-striped tbody tr:nth-child(2n){background-color:var(--neutral-bg-island-default, #F8F9FA)}.mrx-table.mrx-table .table-striped tbody tr:nth-child(n){transition:.2s}.mrx-table.mrx-table .table-striped tbody tr:nth-child(n).-hovered:hover{background-color:var(--brand-bg-tertiary-hover, #edf5ff)}.mrx-table.mrx-table .table-solid{border-collapse:collapse}.mrx-table.mrx-table .table-solid thead tr{border-bottom:1px solid #f2f2f2}.mrx-table.mrx-table .table-solid tbody tr:not(:last-child){border-bottom:1px solid #f2f2f2}.mrx-table.mrx-table .table-solid tbody tr.-hovered:hover{box-shadow:0 1px 4px #3a3a3a4d}.mrx-table.mrx-table .mrx-table__wrapper .mrx-table__overlay{position:absolute;inset:0;background:#ffffffb3;display:flex;align-items:flex-start;justify-content:center;padding-top:12px;border-radius:4px}.mrx-table .mrx-table__result-message{display:flex;justify-content:center;width:100%;padding:var(--spacing-4);font-family:var(--body-md-font-family);font-weight:var(--body-md-font-weight);font-size:var(--body-md-font-size);line-height:var(--body-md-line-height);color:var(--neutral-text-secondary)}.mrx-table .mrx-table__result-message *{font-family:var(--body-md-font-family);font-weight:var(--body-md-font-weight);font-size:var(--body-md-font-size);line-height:var(--body-md-line-height);color:var(--neutral-text-secondary)}.mrx-table .mrx-table__result-message--substrate{display:flex;justify-content:center;width:100%;font-weight:400;font-size:16px;line-height:24px;color:var(--neutral-text-primary, #262626);padding:24px;background:#fff;box-shadow:0 1px 4px #3b43571a;border-radius:4px;position:relative}.mrx-table.mrx-table .mrx-table-download{display:flex;align-items:center;justify-content:flex-end;cursor:pointer}.mrx-table.mrx-table .mrx-table-download span{margin-right:8px;color:var(--brand-bg-primary-default, #2a6ab8)}.mrx-table.mrx-table .mrx-table-download svg path{stroke:var(--brand-bg-primary-default, #2a6ab8)}.mrx-table.mrx-table .mrx-table-counter{font-family:var(--body-lg-font-family);font-size:var(--body-lg-font-size);font-weight:var(--body-lg-font-weight);line-height:var(--body-lg-line-height)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.PaginatorComponent, selector: "mrx-paginator", inputs: ["pageSizes", "currentPage", "pageSize", "total", "customClasses", "isEmptyPaginator", "isPaginatorText", "paginatorText", "position", "withPageSize"], outputs: ["dataStateChanged"] }, { kind: "component", type: i3.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "deselectOnClick"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.LoaderComponent, selector: "mrx-loader", inputs: ["size", "color", "customClasses"] }], animations: [
|
|
194
187
|
trigger('visibleLoading', [
|
|
195
188
|
state('in', style({ opacity: 1, visibility: 'visible' })),
|
|
196
189
|
state('out', style({ opacity: 0, visibility: 'hidden' })),
|
|
@@ -220,7 +213,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
220
213
|
animate('300ms ease-in-out', style({ opacity: 1 }))
|
|
221
214
|
])])
|
|
222
215
|
])
|
|
223
|
-
], template: "<div class=\"mrx-table\" [class]=\"getClasses\" [class.mb-3]=\"pageable\">\r\n <ng-container *ngIf=\"headerSettings\">\r\n <div\r\n class=\"mrx-table-card-header pt-2 pb-2 mb-3\"\r\n [class.mrx-table-card-header--substrate]=\"headerSettings.substrate\"\r\n *ngIf=\"headerSettings.type === 'default'\"\r\n >\r\n <div class=\"row\">\r\n <div\r\n class=\"mrx-table-card-header--left col col-12 col-md-6 mb-1 mb-md-0 d-flex justify-content-start align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"counterTemplate\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table-card-header--right col col-12 col-md-6 d-flex justify-content-end align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"sortTemplate\"></ng-container>\r\n <div class=\"ml-4\" *ngIf=\"headerSettings.toggle\">\r\n <ng-container *ngTemplateOutlet=\"toggleTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"mrx-table-card-header mb-3 pt-2 pb-2\"\r\n [class.mrx-table-card-header--substrate]=\"headerSettings.substrate\"\r\n *ngIf=\"headerSettings.type === 'second'\"\r\n >\r\n <div class=\"row\">\r\n <div\r\n class=\"mrx-table-card-header--left col col-12 col-sm-6 mb-1 mb-sm-0 d-flex justify-content-start align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"sortTemplate\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table-card-header--right col col-12 col-sm-6 d-flex justify-content-end align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"downloadTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container [ngSwitch]=\"type\">\r\n <div class=\"mrx-table__wrapper\" *ngSwitchCase=\"'default'\"\r\n [class.mrx-table__wrapper--substrate]=\"contentSettings.substrate\">\r\n <table\r\n [class.table-striped]=\"striped\"\r\n [class.table-solid]=\"!striped\"\r\n [class.mt-2]=\"contentSettings.substrate\"\r\n [class.mb-3]=\"contentSettings.substrate && data.length\"\r\n >\r\n <thead [class.table-head-gray]=\"!headerSettings || headerSettings.background\">\r\n <tr>\r\n <th *ngFor=\"let col of contentChildren; let index = index; let first = first; let last = last; trackBy: trackByFn\" [class]=\"col.customClasses\">\r\n <ng-container *ngIf=\"!col.templateHead; else headerItemTemplate\">\r\n <ng-container *ngIf=\"col.sortable; else defaultHeadCol\">\r\n <div [class.th-wrapper]=\"sortable\" (click)=\"onSortColumn(col.name, col.sortable)\">\r\n <span>{{ col.label }}</span>\r\n <svg\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n [class]=\"columnSortedDir(col.name)\"\r\n class=\"mrx-table__sort-icon\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M4 9L8 13L12 9\" fill=\"#DAD5CE\"/>\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 7L8 3L4 7\" fill=\"#DAD5CE\"/>\r\n </svg>\r\n </div>\r\n </ng-container>\r\n <ng-template #defaultHeadCol>\r\n <div><span>{{ col.label }}</span></div>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-template #headerItemTemplate>\r\n <ng-container *ngIf=\"col.sortable; else defaultHeadCol\">\r\n <div [class.th-wrapper]=\"sortable\" (click)=\"onSortColumn(col.name, col.sortable)\">\r\n <ng-container *ngTemplateOutlet=\"col.templateHead; context: { $implicit: col }\"></ng-container>\r\n <svg\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n [class]=\"columnSortedDir(col.name)\"\r\n class=\"mrx-table__sort-icon\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M4 9L8 13L12 9\" fill=\"#DAD5CE\"/>\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 7L8 3L4 7\" fill=\"#DAD5CE\"/>\r\n </svg>\r\n </div>\r\n </ng-container>\r\n <ng-template #defaultHeadCol>\r\n <ng-container *ngTemplateOutlet=\"col.templateHead; context: { $implicit: col, index, first, last }\"></ng-container>\r\n </ng-template>\r\n </ng-template>\r\n </th>\r\n </tr>\r\n </thead>\r\n\r\n <tbody>\r\n <tr *ngFor=\"let dataItem of data; let index = index; let first = first; let last = last\" [class.-hovered]=\"hovered\">\r\n <td\r\n #tableTD\r\n class=\"p-0\"\r\n *ngFor=\"let col of contentChildren\"\r\n [class]=\"col.customClasses\"\r\n >\r\n <a\r\n class=\"link-wrapper td-content-wrapper\"\r\n [href]=\"getLinkForStroke(link, dataItem)\"\r\n *ngIf=\"link && col['isLink']; else defaultTemplate\"\r\n >\r\n <ng-container *ngIf=\"!col.templateCell; else bodyItemTemplate\">\r\n <div class=\"p-2\">{{ dataItem[col.name] }}</div>\r\n </ng-container>\r\n\r\n <ng-template #bodyItemTemplate>\r\n <ng-container\r\n *ngTemplateOutlet=\"col.templateCell; context: { $implicit: col, row: dataItem, index, first, last }\"></ng-container>\r\n </ng-template>\r\n </a>\r\n\r\n <ng-template #defaultTemplate>\r\n <ng-container *ngIf=\"!col.templateCell; else bodyItemTemplate\">\r\n <div class=\"p-2 td-content-wrapper\">{{ dataItem[col.name] }}</div>\r\n </ng-container>\r\n\r\n <ng-template #bodyItemTemplate>\r\n <div class=\"td-content-wrapper\">\r\n <ng-container\r\n *ngTemplateOutlet=\"col.templateCell; context: { $implicit: col, row: dataItem, index, first, last }\"></ng-container>\r\n </div>\r\n </ng-template>\r\n </ng-template>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n\r\n <div class=\"mrx-table__result-message\" *ngIf=\"!data.length\">\r\n <ng-container *ngTemplateOutlet=\"emptyResultMsg ? emptyResultMsgTemplateDefault : emptyResultMsgTemplate\">\r\n </ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table__overlay\" [@visibleLoading]=\"isLoading ? 'in' : 'out'\" [ngClass]=\"{'open': isLoading}\" >\r\n <mrx-loader size=\"large\" color=\"brand\"></mrx-loader>\r\n </div>\r\n </div>\r\n\r\n <div class=\"mrx-table__wrapper\" *ngSwitchCase=\"'cards'\">\r\n <ng-container *ngFor=\"let item of data; let index = index; let first = first; let last = last\">\r\n <ng-container *ngTemplateOutlet=\"templateCard; context: { $implicit: item, index, first, last }\"></ng-container>\r\n </ng-container>\r\n\r\n <div class=\"mrx-table__result-message--substrate\" *ngIf=\"!data.length\" >\r\n <ng-container *ngTemplateOutlet=\"emptyResultMsg ? emptyResultMsgTemplateDefault : emptyResultMsgTemplate\">\r\n </ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table__overlay\" [@visibleLoading]=\"isLoading ? 'in' : 'out'\" [ngClass]=\"{'open': isLoading}\" >\r\n <mrx-loader size=\"large\" color=\"brand\"></mrx-loader>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n\r\n<div class=\"mrx-table__paginator pt-2 pb-2\" [class.mrx-table__paginator--substrate]=\"paginatorSettings.substrate\" *ngIf=\"total\">\r\n <mrx-paginator\r\n *ngIf=\"pageable\"\r\n [total]=\"total\"\r\n [pageSize]=\"pageSize\"\r\n [position]=\"pageable.position\"\r\n [pageSizes]=\"pageable.pageSizes\"\r\n [currentPage]=\"currentPage\"\r\n [withPageSize]=\"pageable.withPageSize\"\r\n (dataStateChanged)=\"onDataStatePaginatorChanged($event)\">\r\n </mrx-paginator>\r\n</div>\r\n\r\n<ng-template #counterTemplate>\r\n <span class=\"d-flex align-items-center\" *ngIf=\"headerSettings?.count\">\r\n {{ total }} {{headerSettings?.countText || '\u043D\u043E\u0432\u043E\u0441\u0442\u0435\u0439'}}\r\n </span>\r\n</ng-template>\r\n\r\n<ng-template #sortTemplate>\r\n <div class=\"d-flex mrx-table-sort\" *ngIf=\"headerSettings?.sort\">\r\n <div class=\"mrx-table-sort-scale\" (click)=\"changeSort()\">\r\n <span class=\"mrx-table-sort-scale__title\">\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043F\u043E:</span>\r\n <div class=\"mrx-table-sort-scale__icon\">\r\n <span *ngIf=\"sort?.dir === 'desc'\" class=\"mrx-icon icon-sorting-down icon-font-16\"></span>\r\n <span *ngIf=\"sort?.dir === 'asc'\" class=\"mrx-icon icon-sorting-up icon-font-16\"></span>\r\n </div>\r\n </div>\r\n <ng-select\r\n bindLabel=\"sortLabel\"\r\n bindValue=\"name\"\r\n [items]=\"colArray\"\r\n [ngModel]=\"selectedSort\"\r\n (change)=\"updateSortSelect($event)\"\r\n [clearable]=\"false\"\r\n [searchable]=\"false\"\r\n [closeOnSelect]=\"true\"\r\n ></ng-select>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #downloadTemplate>\r\n <div class=\"mrx-table-download\" (click)=\"clickToDownload($event)\" *ngIf=\"headerSettings?.download\">\r\n <span class=\"desktop\">\u0421\u043A\u0430\u0447\u0430\u0442\u044C \u0434\u0430\u043D\u043D\u044B\u0435</span>\r\n <span class=\"mrx-icon icon-download icon-font-24\"></span>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #toggleTemplate>\r\n <div class=\"mrx-table-toggle\">\r\n <div class=\"mrx-table-toggle--item mr-1\" (click)=\"onChangeTypeTable('cards')\" [class.active]=\"type === 'cards'\">\r\n <span class=\"mrx-icon icon-cards-view icon-font-24\"></span>\r\n </div>\r\n <div class=\"mrx-table-toggle--item\" (click)=\"onChangeTypeTable('default')\" [class.active]=\"type === 'default'\">\r\n <span class=\"mrx-icon icon-table-view icon-font-24\"></span>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #emptyResultMsgTemplateDefault>\r\n {{emptyResultMsg}}\r\n</ng-template>\r\n", styles: [".mrx-table.mrx-table{display:block;width:100%}.mrx-table.mrx-table .th-wrapper{display:flex;cursor:pointer;word-break:inherit;justify-content:space-between;align-items:flex-end}.mrx-table.mrx-table .th-wrapper span{word-break:inherit}.mrx-table.mrx-table .mrx-table__sort-icon.asc path:last-child{fill:var(--brand-bg-primary-default)}.mrx-table.mrx-table .mrx-table__sort-icon.desc path:first-child{fill:var(--brand-bg-primary-default)}.mrx-table__wrapper.mrx-table__wrapper{overflow-x:auto;overflow-y:hidden;position:relative}.mrx-table__wrapper.mrx-table__wrapper .mrx-table__wrapper--substrate{padding-top:8px}.mrx-table.mrx-table.type-default table{width:100%;text-align:left;background-color:transparent;border-spacing:0}.mrx-table.mrx-table.type-default table thead.table-head-gray{background:var(--Disabled)}.mrx-table.mrx-table.type-default table thead .sort-asc .custom-table__sort path:nth-child(2){fill:var(--Main2)}.mrx-table.mrx-table.type-default table thead .sort-desc .custom-table__sort path:nth-child(1){fill:var(--Main2)}.mrx-table.mrx-table.type-default table td{max-width:340px;vertical-align:top}.mrx-table.mrx-table.type-default table td .link-wrapper{display:block;color:initial;height:100%}.mrx-table.mrx-table.type-default table td .link-wrapper:active{color:var(--Main1)}.mrx-table.mrx-table.type-default table td .left-border{border-left:4px solid var(--Main2)}.mrx-table.mrx-table.type-default table td .light-border{border-left:4px solid transparent}.mrx-table.mrx-table.type-default table td .warning-back{background-color:#ffece7}.mrx-table.mrx-table.type-default table td .disabled-back{background-color:#fafafa}.mrx-table.mrx-table.type-default table td .link-colored,.mrx-table.mrx-table.type-default table td .link-colored:active{color:var(--Main2)}.mrx-table.mrx-table.type-default table th{padding:8px;vertical-align:bottom;word-break:inherit;font-weight:700}.mrx-table.mrx-table.type-default table th svg{margin-left:8px;cursor:pointer}.mrx-table.mrx-table .mrx-table-card-header{position:relative}.mrx-table.mrx-table .mrx-table-card-header--substrate{padding-left:24px;padding-right:24px;background:#fff;box-shadow:0 1px 4px #3b43571a;border-radius:4px}.mrx-table.mrx-table .mrx-table__wrapper--substrate{background:#fff;box-shadow:0 1px 4px #3b43571a;border-radius:4px}.mrx-table.mrx-table .mrx-table-toggle{display:flex}.mrx-table.mrx-table .mrx-table-toggle--item{display:flex;align-items:center;justify-content:center;cursor:pointer}.mrx-table.mrx-table .mrx-table-toggle--item .mrx-icon{color:#e5e5e5}.mrx-table.mrx-table .mrx-table-toggle--item.active .mrx-icon{color:var(--Main2)}.mrx-table.mrx-table .mrx-table-sort.mrx-table-sort--is-card,.mrx-table.mrx-table .mrx-table-sort.mrx-table-sort--is-table{justify-content:flex-start}.mrx-table.mrx-table .mrx-table-sort-scale{display:flex;align-items:center;margin-right:8px;cursor:pointer}.mrx-table.mrx-table .mrx-table-sort-scale__title{font-family:PT Sans;font-style:normal;font-weight:400;font-size:14px;line-height:143%;color:var(--Main1);margin-right:12px}.mrx-table.mrx-table .mrx-table-sort-scale__icon{display:flex;align-items:center;justify-content:center}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select{max-width:215px;margin-bottom:0}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-select-container.ng-select-container{min-height:auto!important;border:none;cursor:pointer;align-items:center;height:100%!important}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-value-container.ng-value-container{padding-left:0!important;margin-right:8px}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-arrow-wrapper.ng-arrow-wrapper{min-height:auto;width:auto!important}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-dropdown-panel.ng-dropdown-panel{width:100vw;max-width:215px;left:auto;right:0}.mrx-table__paginator.mrx-table__paginator.mrx-table__paginator--substrate{padding-left:24px;padding-right:24px;background:#fff;box-shadow:0 1px 4px #3b43571a;border-radius:4px}.mrx-table.mrx-table .table-striped tbody tr:nth-child(2n){background-color:var(--Disabled)}.mrx-table.mrx-table .table-striped tbody tr:nth-child(n){transition:.2s}.mrx-table.mrx-table .table-striped tbody tr:nth-child(n).-hovered:hover{background-color:var(--Bg2)}.mrx-table.mrx-table .table-solid{border-collapse:collapse}.mrx-table.mrx-table .table-solid thead tr{border-bottom:1px solid #f2f2f2}.mrx-table.mrx-table .table-solid tbody tr:not(:last-child){border-bottom:1px solid #f2f2f2}.mrx-table.mrx-table .table-solid tbody tr.-hovered:hover{box-shadow:0 1px 4px #3a3a3a4d}.mrx-table.mrx-table .mrx-table__wrapper .mrx-table__overlay{position:absolute;inset:0;background:#ffffffb3;display:flex;align-items:flex-start;justify-content:center;padding-top:12px;border-radius:4px}.mrx-table.mrx-table .mrx-table__result-message{display:flex;justify-content:center;width:100%;padding:16px;font-weight:400;font-size:14px;line-height:16px;color:var(--neutral-text-primary)}.mrx-table.mrx-table .mrx-table__result-message--substrate{display:flex;justify-content:center;width:100%;font-weight:400;font-size:16px;line-height:24px;color:var(--neutral-text-primary);padding:24px;background:#fff;box-shadow:0 1px 4px #3b43571a;border-radius:4px;position:relative}.mrx-table.mrx-table .mrx-table-download{display:flex;align-items:center;justify-content:flex-end;cursor:pointer}.mrx-table.mrx-table .mrx-table-download span{margin-right:8px;color:var(--Main2)}.mrx-table.mrx-table .mrx-table-download svg path{stroke:var(--Main2)}.mrx-table.mrx-table .mrx-table-counter{font-family:var(--body-lg-font-family);font-size:var(--body-lg-font-size);font-weight:var(--body-lg-font-weight);line-height:var(--body-lg-line-height)}\n"] }]
|
|
216
|
+
], template: "<div class=\"mrx-table\" [class]=\"getClasses\" [class.mb-3]=\"pageable\">\r\n <ng-container *ngIf=\"headerSettings\">\r\n <div\r\n class=\"mrx-table-card-header pt-2 pb-2 mb-3\"\r\n [class.mrx-table-card-header--substrate]=\"headerSettings.substrate\"\r\n *ngIf=\"headerSettings.type === 'default'\"\r\n >\r\n <div class=\"row\">\r\n <div\r\n class=\"mrx-table-card-header--left col col-12 col-md-6 mb-1 mb-md-0 d-flex justify-content-start align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"counterTemplate\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table-card-header--right col col-12 col-md-6 d-flex justify-content-end align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"sortTemplate\"></ng-container>\r\n <div class=\"ml-4\" *ngIf=\"headerSettings.toggle\">\r\n <ng-container *ngTemplateOutlet=\"toggleTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"mrx-table-card-header mb-3 pt-2 pb-2\"\r\n [class.mrx-table-card-header--substrate]=\"headerSettings.substrate\"\r\n *ngIf=\"headerSettings.type === 'second'\"\r\n >\r\n <div class=\"row\">\r\n <div\r\n class=\"mrx-table-card-header--left col col-12 col-sm-6 mb-1 mb-sm-0 d-flex justify-content-start align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"sortTemplate\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table-card-header--right col col-12 col-sm-6 d-flex justify-content-end align-content-center\">\r\n <ng-container *ngTemplateOutlet=\"downloadTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container [ngSwitch]=\"type\">\r\n <div class=\"mrx-table__wrapper\" *ngSwitchCase=\"'default'\"\r\n [class.mrx-table__wrapper--substrate]=\"contentSettings.substrate\">\r\n <table\r\n [class.table-striped]=\"striped\"\r\n [class.table-solid]=\"!striped\"\r\n [class.mt-2]=\"contentSettings.substrate\"\r\n [class.mb-3]=\"contentSettings.substrate && data.length\"\r\n >\r\n <thead [class.table-head-gray]=\"!headerSettings || headerSettings.background\">\r\n <tr>\r\n <th *ngFor=\"let col of contentChildren; let index = index; let first = first; let last = last; trackBy: trackByFn\" [class]=\"col.customClasses\">\r\n <ng-container *ngIf=\"!col.templateHead; else headerItemTemplate\">\r\n <ng-container *ngIf=\"col.sortable; else defaultHeadCol\">\r\n <div [class.th-wrapper]=\"sortable\" (click)=\"onSortColumn(col.name, col.sortable)\">\r\n <span>{{ col.label }}</span>\r\n <svg\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n [class]=\"columnSortedDir(col.name)\"\r\n class=\"mrx-table__sort-icon\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M4 9L8 13L12 9\" fill=\"#DAD5CE\"/>\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 7L8 3L4 7\" fill=\"#DAD5CE\"/>\r\n </svg>\r\n </div>\r\n </ng-container>\r\n <ng-template #defaultHeadCol>\r\n <div><span>{{ col.label }}</span></div>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-template #headerItemTemplate>\r\n <ng-container *ngIf=\"col.sortable; else defaultHeadCol\">\r\n <div [class.th-wrapper]=\"sortable\" (click)=\"onSortColumn(col.name, col.sortable)\">\r\n <ng-container *ngTemplateOutlet=\"col.templateHead; context: { $implicit: col }\"></ng-container>\r\n <svg\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n [class]=\"columnSortedDir(col.name)\"\r\n class=\"mrx-table__sort-icon\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M4 9L8 13L12 9\" fill=\"#DAD5CE\"/>\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 7L8 3L4 7\" fill=\"#DAD5CE\"/>\r\n </svg>\r\n </div>\r\n </ng-container>\r\n <ng-template #defaultHeadCol>\r\n <ng-container *ngTemplateOutlet=\"col.templateHead; context: { $implicit: col, index, first, last }\"></ng-container>\r\n </ng-template>\r\n </ng-template>\r\n </th>\r\n </tr>\r\n </thead>\r\n\r\n <tbody>\r\n <tr *ngFor=\"let dataItem of data; let index = index; let first = first; let last = last\" [class.-hovered]=\"hovered\">\r\n <td\r\n #tableTD\r\n class=\"p-0\"\r\n *ngFor=\"let col of contentChildren\"\r\n [class]=\"col.customClasses\"\r\n >\r\n <a\r\n class=\"link-wrapper td-content-wrapper\"\r\n [href]=\"getLinkForStroke(link, dataItem)\"\r\n *ngIf=\"link && col['isLink']; else defaultTemplate\"\r\n >\r\n <ng-container *ngIf=\"!col.templateCell; else bodyItemTemplate\">\r\n <div class=\"p-2 h-100\">{{ dataItem[col.name] }}</div>\r\n </ng-container>\r\n\r\n <ng-template #bodyItemTemplate>\r\n <ng-container\r\n *ngTemplateOutlet=\"col.templateCell; context: { $implicit: col, row: dataItem, index, first, last }\"></ng-container>\r\n </ng-template>\r\n </a>\r\n\r\n <ng-template #defaultTemplate>\r\n <ng-container *ngIf=\"!col.templateCell; else bodyItemTemplate\">\r\n <div class=\"td-content-wrapper p-2 h-100\">{{ dataItem[col.name] }}</div>\r\n </ng-container>\r\n\r\n <ng-template #bodyItemTemplate>\r\n <div class=\"td-content-wrapper h-100\">\r\n <ng-container\r\n *ngTemplateOutlet=\"col.templateCell; context: { $implicit: col, row: dataItem, index, first, last }\"></ng-container>\r\n </div>\r\n </ng-template>\r\n </ng-template>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n\r\n <div class=\"mrx-table__result-message\" *ngIf=\"!data.length\">\r\n <ng-container *ngTemplateOutlet=\"emptyResultMsg ? emptyResultMsgTemplateDefault : emptyResultMsgTemplate\">\r\n </ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table__overlay\" [@visibleLoading]=\"isLoading ? 'in' : 'out'\" [ngClass]=\"{'open': isLoading}\" >\r\n <mrx-loader size=\"large\" color=\"brand\"></mrx-loader>\r\n </div>\r\n </div>\r\n\r\n <div class=\"mrx-table__wrapper\" *ngSwitchCase=\"'cards'\">\r\n <ng-container *ngFor=\"let item of data; let index = index; let first = first; let last = last\">\r\n <ng-container *ngTemplateOutlet=\"templateCard; context: { $implicit: item, index, first, last }\"></ng-container>\r\n </ng-container>\r\n\r\n <div class=\"mrx-table__result-message--substrate\" *ngIf=\"!data.length\" >\r\n <ng-container *ngTemplateOutlet=\"emptyResultMsg ? emptyResultMsgTemplateDefault : emptyResultMsgTemplate\">\r\n </ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-table__overlay\" [@visibleLoading]=\"isLoading ? 'in' : 'out'\" [ngClass]=\"{'open': isLoading}\" >\r\n <mrx-loader size=\"large\" color=\"brand\"></mrx-loader>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n\r\n<div class=\"mrx-table__paginator pt-2 pb-2\" [class.mrx-table__paginator--substrate]=\"paginatorSettings.substrate\" *ngIf=\"total\">\r\n <mrx-paginator\r\n *ngIf=\"pageable\"\r\n [total]=\"total\"\r\n [pageSize]=\"pageSize\"\r\n [position]=\"pageable.position\"\r\n [pageSizes]=\"pageable.pageSizes\"\r\n [currentPage]=\"currentPage\"\r\n [withPageSize]=\"pageable.withPageSize\"\r\n (dataStateChanged)=\"onDataStatePaginatorChanged($event)\">\r\n </mrx-paginator>\r\n</div>\r\n\r\n<ng-template #counterTemplate>\r\n <span class=\"d-flex align-items-center\" *ngIf=\"headerSettings?.count\">\r\n {{ total }} {{headerSettings?.countText || '\u043D\u043E\u0432\u043E\u0441\u0442\u0435\u0439'}}\r\n </span>\r\n</ng-template>\r\n\r\n<ng-template #sortTemplate>\r\n <div class=\"d-flex mrx-table-sort\" *ngIf=\"headerSettings?.sort\">\r\n <div class=\"mrx-table-sort-scale\" (click)=\"changeSort()\">\r\n <span class=\"mrx-table-sort-scale__title\">\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043F\u043E:</span>\r\n <div class=\"mrx-table-sort-scale__icon\">\r\n <span *ngIf=\"sort?.dir === 'desc'\" class=\"mrx-icon icon-sorting-down icon-font-16\"></span>\r\n <span *ngIf=\"sort?.dir === 'asc'\" class=\"mrx-icon icon-sorting-up icon-font-16\"></span>\r\n </div>\r\n </div>\r\n <ng-select\r\n bindLabel=\"sortLabel\"\r\n bindValue=\"name\"\r\n [items]=\"colArray\"\r\n [ngModel]=\"selectedSort\"\r\n (change)=\"updateSortSelect($event)\"\r\n [clearable]=\"false\"\r\n [searchable]=\"false\"\r\n [closeOnSelect]=\"true\"\r\n ></ng-select>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #downloadTemplate>\r\n <div class=\"mrx-table-download\" (click)=\"clickToDownload($event)\" *ngIf=\"headerSettings?.download\">\r\n <span class=\"desktop\">\u0421\u043A\u0430\u0447\u0430\u0442\u044C \u0434\u0430\u043D\u043D\u044B\u0435</span>\r\n <span class=\"mrx-icon icon-download icon-font-24\"></span>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #toggleTemplate>\r\n <div class=\"mrx-table-toggle\">\r\n <div class=\"mrx-table-toggle--item mr-1\" (click)=\"onChangeTypeTable('cards')\" [class.active]=\"type === 'cards'\">\r\n <span class=\"mrx-icon icon-cards-view icon-font-24\"></span>\r\n </div>\r\n <div class=\"mrx-table-toggle--item\" (click)=\"onChangeTypeTable('default')\" [class.active]=\"type === 'default'\">\r\n <span class=\"mrx-icon icon-table-view icon-font-24\"></span>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #emptyResultMsgTemplateDefault>\r\n {{emptyResultMsg}}\r\n</ng-template>\r\n", styles: [".mrx-table.mrx-table{display:block;width:100%}.mrx-table.mrx-table table td{height:1px}.mrx-table.mrx-table .th-wrapper{display:flex;cursor:pointer;word-break:inherit;justify-content:space-between;align-items:flex-end}.mrx-table.mrx-table .th-wrapper span{word-break:inherit}.mrx-table.mrx-table .mrx-table__sort-icon.asc path:last-child{fill:var(--brand-bg-primary-default, #2a6ab8)}.mrx-table.mrx-table .mrx-table__sort-icon.desc path:first-child{fill:var(--brand-bg-primary-default, #2a6ab8)}.mrx-table__wrapper.mrx-table__wrapper{overflow-x:auto;overflow-y:hidden;position:relative}.mrx-table__wrapper.mrx-table__wrapper .mrx-table__wrapper--substrate{padding-top:8px}.mrx-table.mrx-table.type-default table{width:100%;text-align:left;background-color:transparent;border-spacing:0}.mrx-table.mrx-table.type-default table thead.table-head-gray{background:var(--neutral-bg-island-default, #F8F9FA)}.mrx-table.mrx-table.type-default table thead .sort-asc .custom-table__sort path:nth-child(2){fill:var(--brand-bg-primary-default, #2a6ab8)}.mrx-table.mrx-table.type-default table thead .sort-desc .custom-table__sort path:nth-child(1){fill:var(--brand-bg-primary-default, #2a6ab8)}.mrx-table.mrx-table.type-default table td{max-width:340px;vertical-align:top}.mrx-table.mrx-table.type-default table td .link-wrapper{display:block;color:initial;height:100%}.mrx-table.mrx-table.type-default table td .link-wrapper:active{color:var(--neutral-text-primary, #262626)}.mrx-table.mrx-table.type-default table td .left-border{border-left:4px solid var(--brand-bg-primary-default, #2a6ab8)}.mrx-table.mrx-table.type-default table td .light-border{border-left:4px solid transparent}.mrx-table.mrx-table.type-default table td .warning-back{background-color:#ffece7}.mrx-table.mrx-table.type-default table td .disabled-back{background-color:#fafafa}.mrx-table.mrx-table.type-default table td .link-colored,.mrx-table.mrx-table.type-default table td .link-colored:active{color:var(--brand-bg-primary-default, #2a6ab8)}.mrx-table.mrx-table.type-default table th{padding:8px;vertical-align:bottom;word-break:inherit;font-weight:700}.mrx-table.mrx-table.type-default table th svg{margin-left:8px;cursor:pointer}.mrx-table.mrx-table .mrx-table-card-header{position:relative}.mrx-table.mrx-table .mrx-table-card-header--substrate{padding-left:24px;padding-right:24px;background:#fff;box-shadow:0 1px 4px #3b43571a;border-radius:4px}.mrx-table.mrx-table .mrx-table__wrapper--substrate{background:#fff;box-shadow:0 1px 4px #3b43571a;border-radius:4px}.mrx-table.mrx-table .mrx-table-toggle{display:flex}.mrx-table.mrx-table .mrx-table-toggle--item{display:flex;align-items:center;justify-content:center;cursor:pointer}.mrx-table.mrx-table .mrx-table-toggle--item .mrx-icon{color:#e5e5e5}.mrx-table.mrx-table .mrx-table-toggle--item.active .mrx-icon{color:var(--brand-bg-primary-default, #2a6ab8)}.mrx-table.mrx-table .mrx-table-sort.mrx-table-sort--is-card,.mrx-table.mrx-table .mrx-table-sort.mrx-table-sort--is-table{justify-content:flex-start}.mrx-table.mrx-table .mrx-table-sort-scale{display:flex;align-items:center;margin-right:8px;cursor:pointer}.mrx-table.mrx-table .mrx-table-sort-scale__title{font-family:PT Sans;font-style:normal;font-weight:400;font-size:14px;line-height:143%;color:var(--neutral-text-primary, #262626);margin-right:12px}.mrx-table.mrx-table .mrx-table-sort-scale__icon{display:flex;align-items:center;justify-content:center}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select{max-width:215px;margin-bottom:0}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-select-container.ng-select-container{min-height:auto!important;border:none;cursor:pointer;align-items:center;height:100%!important}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-value-container.ng-value-container{padding-left:0!important;margin-right:8px}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-arrow-wrapper.ng-arrow-wrapper{min-height:auto;width:auto!important}:host::ng-deep .mrx-table.mrx-table .mrx-table-sort .ng-select .ng-dropdown-panel.ng-dropdown-panel{width:100vw;max-width:215px;left:auto;right:0}.mrx-table__paginator.mrx-table__paginator.mrx-table__paginator--substrate{padding-left:24px;padding-right:24px;background:#fff;box-shadow:0 1px 4px #3b43571a;border-radius:4px}.mrx-table.mrx-table .table-striped tbody tr:nth-child(2n){background-color:var(--neutral-bg-island-default, #F8F9FA)}.mrx-table.mrx-table .table-striped tbody tr:nth-child(n){transition:.2s}.mrx-table.mrx-table .table-striped tbody tr:nth-child(n).-hovered:hover{background-color:var(--brand-bg-tertiary-hover, #edf5ff)}.mrx-table.mrx-table .table-solid{border-collapse:collapse}.mrx-table.mrx-table .table-solid thead tr{border-bottom:1px solid #f2f2f2}.mrx-table.mrx-table .table-solid tbody tr:not(:last-child){border-bottom:1px solid #f2f2f2}.mrx-table.mrx-table .table-solid tbody tr.-hovered:hover{box-shadow:0 1px 4px #3a3a3a4d}.mrx-table.mrx-table .mrx-table__wrapper .mrx-table__overlay{position:absolute;inset:0;background:#ffffffb3;display:flex;align-items:flex-start;justify-content:center;padding-top:12px;border-radius:4px}.mrx-table .mrx-table__result-message{display:flex;justify-content:center;width:100%;padding:var(--spacing-4);font-family:var(--body-md-font-family);font-weight:var(--body-md-font-weight);font-size:var(--body-md-font-size);line-height:var(--body-md-line-height);color:var(--neutral-text-secondary)}.mrx-table .mrx-table__result-message *{font-family:var(--body-md-font-family);font-weight:var(--body-md-font-weight);font-size:var(--body-md-font-size);line-height:var(--body-md-line-height);color:var(--neutral-text-secondary)}.mrx-table .mrx-table__result-message--substrate{display:flex;justify-content:center;width:100%;font-weight:400;font-size:16px;line-height:24px;color:var(--neutral-text-primary, #262626);padding:24px;background:#fff;box-shadow:0 1px 4px #3b43571a;border-radius:4px;position:relative}.mrx-table.mrx-table .mrx-table-download{display:flex;align-items:center;justify-content:flex-end;cursor:pointer}.mrx-table.mrx-table .mrx-table-download span{margin-right:8px;color:var(--brand-bg-primary-default, #2a6ab8)}.mrx-table.mrx-table .mrx-table-download svg path{stroke:var(--brand-bg-primary-default, #2a6ab8)}.mrx-table.mrx-table .mrx-table-counter{font-family:var(--body-lg-font-family);font-size:var(--body-lg-font-size);font-weight:var(--body-lg-font-weight);line-height:var(--body-lg-line-height)}\n"] }]
|
|
224
217
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { contentChildren: [{
|
|
225
218
|
type: ContentChildren,
|
|
226
219
|
args: [ColumnComponent]
|
|
@@ -278,4 +271,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
278
271
|
}], change: [{
|
|
279
272
|
type: Output
|
|
280
273
|
}] } });
|
|
281
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy90YWJsZS90YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wsU0FBUyxFQUNULFlBQVksRUFDWixlQUFlLEVBQ2YsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEdBR1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFnRyxhQUFhLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDM0ksT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRXZFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBR3hFLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7O0FBdUJ4RixNQUFNLE9BQU8sY0FBYztJQTBETDtJQXpEYixRQUFRLEdBQXNCLEVBQUUsQ0FBQztJQUNqQyxRQUFRLEdBQXlCLG9CQUFvQixDQUFDO0lBQ3RELFlBQVksR0FBRyxFQUFFLENBQUE7SUFDakIsSUFBSSxHQUFHLEtBQUssQ0FBQTtJQUVlLGVBQWUsQ0FBOEI7SUFDakQsWUFBWSxDQUFvQjtJQUN0QixzQkFBc0IsQ0FBb0I7SUFFekUsSUFBSSxHQUFjLFNBQVMsQ0FBQztJQUM1QixJQUFJLENBQW1CO0lBQ3ZCLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDZCxXQUFXLEdBQUcsQ0FBQyxDQUFDO0lBQ2hCLEtBQUssR0FBRyxDQUFDLENBQUM7SUFDVixJQUFJLEdBQUcs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c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFFRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBRUcsZUFBZTtzQkFBdkIsS0FBSztnQkFJRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBUUssV0FBVztzQkFEckIsS0FBSzt1QkFBQyxVQUFVO2dCQVdQLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFFRyxZQUFZO3NCQUFyQixNQUFNO2dCQUNHLGVBQWU7c0JBQXhCLE1BQU07Z0JBQ0csTUFBTTtzQkFBZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBDb250ZW50Q2hpbGQsXHJcbiAgQ29udGVudENoaWxkcmVuLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgUXVlcnlMaXN0LFxyXG4gIFRlbXBsYXRlUmVmLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb250ZW50U2V0dGluZ3MsIEhlYWRlclNldHRpbmdzLCBQYWdpbmF0b3JTZXR0aW5ncywgU29ydERlc2NyaXB0b3IsIFRhYmxlQm9keUl0ZW0sIFRhYmxlVHlwZSwgVGFibGVUeXBlRW51bSB9IGZyb20gJy4vdGFibGUuZW51bSc7XHJcbmltcG9ydCB7IENvbHVtbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jb2x1bW4vY29sdW1uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFBhZ2VyU2V0dGluZ3MgfSBmcm9tICcuL21vZGVscy9wYWdlci1zZXR0aW5ncyc7XHJcbmltcG9ydCB7IERlZmF1bHRQYWdlclNldHRpbmdzIH0gZnJvbSAnLi9kZWZhdWx0L2RlZmF1bHQtcGFnZXItc2V0dGluZ3MnO1xyXG5pbXBvcnQgeyBEYXRhU3RhdGVDaGFuZ2VFdmVudCB9IGZyb20gJy4vbW9kZWxzL2RhdGEtc3RhdGUtY2hhbmdlLmV2ZW50JztcclxuaW1wb3J0IHsgUGFnaW5hdGVPdXRwdXRPYmplY3QgfSBmcm9tICcuLi9wYWdpbmF0b3IvcGFnaW5hdG9yLmVudW0nO1xyXG5pbXBvcnQgeyBhbmltYXRlLCBncm91cCwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ21yeC10YWJsZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90YWJsZS5jb21wb25lbnQubGVzcyddLFxyXG4gIGFuaW1hdGlvbnM6IFtcclxuICAgIHRyaWdnZXIoJ3Zpc2libGVMb2FkaW5nJywgW1xyXG4gICAgICBzdGF0ZSgnaW4nLCBzdHlsZSh7IG9wYWNpdHk6IDEsIHZpc2liaWxpdHk6ICd2aXNpYmxlJyB9KSksXHJcbiAgICAgIHN0YXRlKCdvdXQnLCBzdHlsZSh7IG9wYWNpdHk6IDAsIHZpc2liaWxpdHk6ICdoaWRkZW4nIH0pKSxcclxuICAgICAgdHJhbnNpdGlvbignaW4gPT4gb3V0JywgW2dyb3VwKFtcclxuICAgICAgICBhbmltYXRlKCczMDBtcyBlYXNlLWluLW91dCcsIHN0eWxlKHsgb3BhY2l0eTogMCB9KSksXHJcbiAgICAgICAgYW5pbWF0ZSgnMzAwbXMgZWFzZS1pbi1vdXQnLCBzdHlsZSh7IHZpc2liaWxpdHk6ICdoaWRkZW4nIH0pKVxyXG4gICAgICBdXHJcbiAgICAgICldKSxcclxuICAgICAgdHJhbnNpdGlvbignb3V0ID0+IGluJywgW2dyb3VwKFtcclxuICAgICAgICBhbmltYXRlKCcxbXMgZWFzZS1pbi1vdXQnLCBzdHlsZSh7IHZpc2liaWxpdHk6ICd2aXNpYmxlJyB9KSksXHJcbiAgICAgICAgYW5pbWF0ZSgnMzAwbXMgZWFzZS1pbi1vdXQnLCBzdHlsZSh7IG9wYWNpdHk6IDEgfSkpXHJcbiAgICAgIF1cclxuICAgICAgKV0pXHJcbiAgICBdKVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFRhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgcHVibGljIGNvbEFycmF5OiBDb2x1bW5Db21wb25lbnRbXSA9IFtdO1xyXG4gIHB1YmxpYyBwYWdlYWJsZTogUGFnZXJTZXR0aW5ncyB8IG51bGwgPSBEZWZhdWx0UGFnZXJTZXR0aW5ncztcclxuICBwdWJsaWMgc2VsZWN0ZWRTb3J0ID0gJydcclxuICBwdWJsaWMgaW5pdCA9IGZhbHNlXHJcblxyXG4gIEBDb250ZW50Q2hpbGRyZW4oQ29sdW1uQ29tcG9uZW50KSBjb250ZW50Q2hpbGRyZW4hOiBRdWVyeUxpc3Q8Q29sdW1uQ29tcG9uZW50PjtcclxuICBAQ29udGVudENoaWxkKCd0ZW1wbGF0ZUNhcmQnKSB0ZW1wbGF0ZUNhcmQhOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIEBDb250ZW50Q2hpbGQoJ2VtcHR5UmVzdWx0TXNnVGVtcGxhdGUnKSBlbXB0eVJlc3VsdE1zZ1RlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgQElucHV0KCkgdHlwZTogVGFibGVUeXBlID0gJ2RlZmF1bHQnO1xyXG4gIEBJbnB1dCgpIGRhdGEhOiBUYWJsZUJvZHlJdGVtW107XHJcbiAgQElucHV0KCkgcGFnZVNpemUgPSAyMDtcclxuICBASW5wdXQoKSBjdXJyZW50UGFnZSA9IDE7XHJcbiAgQElucHV0KCkgdG90YWwgPSAwO1xyXG4gIEBJbnB1dCgpIGxpbmsgPSAnJztcclxuICBASW5wdXQoKSBpc0xvYWRpbmcgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KCkgc29ydDogU29ydERlc2NyaXB0b3IgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgdHJhY2tCeUlkID0gJ2lkJztcclxuICBASW5wdXQoKSBzb3J0YWJsZSA9IHRydWU7XHJcbiAgQElucHV0KCkgc3RyaXBlZCA9IHRydWU7XHJcbiAgQElucHV0KCkgY3VzdG9tQ2xhc3NlcyA9ICcnXHJcbiAgQElucHV0KCkgZW1wdHlSZXN1bHRNc2cgPSAnJ1xyXG4gIEBJbnB1dCgpIGhvdmVyZWQgPSB0cnVlO1xyXG5cclxuICBASW5wdXQoKSBhdXRvSGVpZ2h0ID0gdHJ1ZVxyXG5cclxuICBASW5wdXQoKSBoZWFkZXJTZXR0aW5nczogSGVhZGVyU2V0dGluZ3MgfCB1bmRlZmluZWRcclxuXHJcbiAgQElucHV0KCkgY29udGVudFNldHRpbmdzOiBDb250ZW50U2V0dGluZ3MgPSB7XHJcbiAgICBzdWJzdHJhdGU6IGZhbHNlXHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBwYWdpbmF0b3JTZXR0aW5nczogUGFnaW5hdG9yU2V0dGluZ3MgPSB7XHJcbiAgICBzdWJzdHJhdGU6IGZhbHNlXHJcbiAgfVxyXG5cclxuICAvLyDQn9GA0L7QstC10YDQuNGC0Ywg0Lgg0LLRi9GA0LXQt9Cw0YLRjFxyXG4gIHB1YmxpYyBzZWxlY3RlZEl0ZW0gPSAxXHJcblxyXG4gIEBJbnB1dCgncGFnZWFibGUnKVxyXG4gIHB1YmxpYyBzZXQgc2V0UGFnZWFibGUodmFsdWU6IFBhZ2VyU2V0dGluZ3MgfCBib29sZWFuKSB7XHJcbiAgICBpZiAodmFsdWUgPT09IHRydWUpIHtcclxuICAgICAgdGhpcy5wYWdlYWJsZSA9IERlZmF1bHRQYWdlclNldHRpbmdzO1xyXG4gICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gZmFsc2UpIHtcclxuICAgICAgdGhpcy5wYWdlYWJsZSA9IG51bGw7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnBhZ2VhYmxlID0gdmFsdWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAT3V0cHV0KCkgZGF0YVN0YXRlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPERhdGFTdGF0ZUNoYW5nZUV2ZW50PiA9XHJcbiAgICBuZXcgRXZlbnRFbWl0dGVyPERhdGFTdGF0ZUNoYW5nZUV2ZW50PigpO1xyXG4gIEBPdXRwdXQoKSBkb3dubG9hZERhdGE6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpXHJcbiAgQE91dHB1dCgpIGNoYW5nZVR5cGVUYWJsZTogRXZlbnRFbWl0dGVyPFRhYmxlVHlwZT4gPSBuZXcgRXZlbnRFbWl0dGVyPFRhYmxlVHlwZT4oKVxyXG4gIEBPdXRwdXQoKSBjaGFuZ2U6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpXHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmKSB7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLmNvbEFycmF5ID0gdGhpcy5jb250ZW50Q2hpbGRyZW4udG9BcnJheSgpO1xyXG5cclxuICAgIHRoaXMuY29sQXJyYXkuZm9yRWFjaChpdGVtID0+IHtcclxuICAgICAgaWYgKHRoaXMuc29ydCAmJiB0aGlzLnNvcnQuY29sID09PSBpdGVtLm5hbWUpIHtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkU29ydCA9IGl0ZW0ubmFtZVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG5cclxuICAgIHRoaXMuY29sQXJyYXkgPSB0aGlzLmNvbEFycmF5LmZpbHRlcihpdGVtID0+IHtcclxuICAgICAgcmV0dXJuIGl0ZW0ubmFtZSAhPT0gJycgJiYgaXRlbS5zb3J0TGFiZWxcclxuICAgIH0pXHJcblxyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKClcclxuICAgIHRoaXMuaW5pdCA9IHRydWVcclxuXHJcbiAgICBpZiAodGhpcy5hdXRvSGVpZ2h0KSB7XHJcbiAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy50ZC1jb250ZW50LXdyYXBwZXInKS5mb3JFYWNoKCh3cmFwcGVyOiBFbGVtZW50KSA9PiB7XHJcbiAgICAgICAgY29uc3QgdGRIZWlnaHQgPSB3cmFwcGVyLmNsb3Nlc3QoJ3RkJyk/LnNjcm9sbEhlaWdodFxyXG4gICAgICAgIGNvbnN0IGxpbmsgPSB3cmFwcGVyIGFzIEhUTUxFbGVtZW50XHJcbiAgICAgICAgbGluay5zdHlsZS5oZWlnaHQgPSB0ZEhlaWdodCArICdweCdcclxuICAgICAgfSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZ2V0Q2xhc3NlcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGAkeyBUYWJsZVR5cGVFbnVtW3RoaXMudHlwZV0gfSAkeyB0aGlzLmN1c3RvbUNsYXNzZXMgfWA7XHJcbiAgfVxyXG5cclxuICB0cmFja0J5Rm4oaW5kZXg6IG51bWJlciwgaXRlbTogYW55KTogc3RyaW5nIHtcclxuICAgIHJldHVybiBpdGVtW3RoaXMudHJhY2tCeUlkXTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjaGFuZ2VTb3J0KCkge1xyXG4gICAgY29uc3QgbmV3RXZlbnREYXRhOiBEYXRhU3RhdGVDaGFuZ2VFdmVudCA9IHsgcGFnZTogdGhpcy5jdXJyZW50UGFnZSwgcGFnZVNpemU6IHRoaXMucGFnZVNpemUgfTtcclxuXHJcbiAgICBpZiAoIXRoaXMuY29sQXJyYXkubGVuZ3RoKSB7XHJcbiAgICAgIHJldHVyblxyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLnNvcnQpIHtcclxuICAgICAgbmV3RXZlbnREYXRhLnNvcnQgPSB7XHJcbiAgICAgICAgZGlyOiB0aGlzLnNvcnQuZGlyID09PSAnZGVzYycgPyAnYXNjJyA6ICdkZXNjJyxcclxuICAgICAgICBjb2w6IHRoaXMuc29ydC5jb2xcclxuICAgICAgfTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIG5ld0V2ZW50RGF0YS5zb3J0ID0ge1xyXG4gICAgICAgIGRpcjogJ2FzYycsXHJcbiAgICAgICAgY29sOiB0aGlzLmNvbEFycmF5WzBdLm5hbWVcclxuICAgICAgfTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmRhdGFTdGF0ZUNoYW5nZWQuZW1pdChuZXdFdmVudERhdGEpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNvbHVtblNvcnRlZERpcihjb2x1bW46IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBpZiAodGhpcy5zb3J0ICYmIHRoaXMuc29ydC5jb2wgPT0gY29sdW1uICYmIHRoaXMuc29ydC5kaXIpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuc29ydC5kaXI7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gJyc7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25Tb3J0Q29sdW1uKGNvbHVtbjogc3RyaW5nLCBzb3J0YWJsZTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgaWYgKCFzb3J0YWJsZSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgbmV3RXZlbnREYXRhOiBEYXRhU3RhdGVDaGFuZ2VFdmVudCA9IHsgcGFnZTogdGhpcy5jdXJyZW50UGFnZSwgcGFnZVNpemU6IHRoaXMucGFnZVNpemUgfTtcclxuXHJcbiAgICBpZiAodGhpcy5zb3J0ICYmIHRoaXMuc29ydC5jb2wgPT0gY29sdW1uKSB7XHJcbiAgICAgIGlmICh0aGlzLnNvcnQuZGlyICYmIHRoaXMuc29ydC5kaXIgPT09ICdhc2MnKSB7XHJcbiAgICAgICAgbmV3RXZlbnREYXRhLnNvcnQgPSB7IGRpcjogJ2Rlc2MnLCBjb2w6IGNvbHVtbiB9O1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBuZXdFdmVudERhdGEuc29ydCA9IHsgZGlyOiAnYXNjJywgY29sOiBjb2x1bW4gfTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmRhdGFTdGF0ZUNoYW5nZWQuZW1pdChuZXdFdmVudERhdGEpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsaWNrVG9Eb3dubG9hZChldmVudDogRXZlbnQpOiB2b2lkIHtcclxuICAgIHRoaXMuZG93bmxvYWREYXRhLmVtaXQoZXZlbnQpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdXBkYXRlU29ydFNlbGVjdCh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICBjb25zdCBuZXdFdmVudERhdGE6IERhdGFTdGF0ZUNoYW5nZUV2ZW50ID0ge1xyXG4gICAgICBwYWdlOiB0aGlzLmN1cnJlbnRQYWdlLFxyXG4gICAgICBwYWdlU2l6ZTogdGhpcy5wYWdlU2l6ZSxcclxuICAgICAgc29ydDoge1xyXG4gICAgICAgIGNvbDogdmFsdWUubmFtZSxcclxuICAgICAgICBkaXI6IHRoaXMuc29ydD8uZGlyXHJcbiAgICAgIH1cclxuICAgIH07XHJcblxyXG4gICAgdGhpcy5kYXRhU3RhdGVDaGFuZ2VkLmVtaXQobmV3RXZlbnREYXRhKVxyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uRGF0YVN0YXRlUGFnaW5hdG9yQ2hhbmdlZChwYWdpbmF0aW9uOiBQYWdpbmF0ZU91dHB1dE9iamVjdCk6IHZvaWQge1xyXG4gICAgY29uc3QgbmV3RXZlbnREYXRhOiBEYXRhU3RhdGVDaGFuZ2VFdmVudCA9IHtcclxuICAgICAgcGFnZTogcGFnaW5hdGlvbi5jdXJyZW50UGFnZSxcclxuICAgICAgcGFnZVNpemU6IHBhZ2luYXRpb24ucGFnZVNpemVcclxuICAgIH07XHJcblxyXG4gICAgaWYgKHRoaXMuc29ydCAmJiB0aGlzLnNvcnQuY29sICYmIHRoaXMuc29ydC5kaXIpIHtcclxuICAgICAgbmV3RXZlbnREYXRhLnNvcnQgPSB7IGRpcjogdGhpcy5zb3J0LmRpciwgY29sOiB0aGlzLnNvcnQuY29sIH07XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5kYXRhU3RhdGVDaGFuZ2VkLmVtaXQobmV3RXZlbnREYXRhKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRMaW5rRm9yU3Ryb2tlKGxpbms6IHN0cmluZywgZGF0YUl0ZW06IFRhYmxlQm9keUl0ZW0pIHtcclxuICAgIC8vINGA0LXQs9GD0LvRj9GA0LrQuFxyXG4gICAgY29uc3QgcmVnRXhwUGFyYW1zID0gLyg/PD1cXFspW15cXHNcXFtcXF1dKyg/PV0pL2dpO1xyXG4gICAgLy8g0L7RgdC90L7QstC90L7QuSDQvNCw0YHRgdC40LJcclxuICAgIGNvbnN0IGxpbmtBcnJheSA9IGxpbmsuc3BsaXQoJz8nKVxyXG4gICAgLy8g0LzQsNGB0YHQuNCy0Ysg0YHRgtGA0L7QuiB1cmwg0Lgg0L/QsNGA0LDQvNC10YLRgNC+0LJcclxuICAgIGNvbnN0IGFycmF5VXJsID0gbGlua0FycmF5WzBdPy5zcGxpdCgnLycpXHJcbiAgICBjb25zdCBzZWFyY2hQYXJhbXMgPSBsaW5rQXJyYXlbMV0/LnNwbGl0KCcmJylcclxuICAgIGNvbnN0IHNlYXJjaFBhcmFtc09iaiA9IHNlYXJjaFBhcmFtcz8ubWFwKChzdHIpID0+IHtcclxuICAgICAgY29uc3Qgc3RyUGFyYW1EYXRhID0gc3RyLnNwbGl0KCc9JylbMV0ubWF0Y2gocmVnRXhwUGFyYW1zKVxyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIG5hbWU6IHN0ci5zcGxpdCgnPScpWzBdLFxyXG4gICAgICAgIGRhdGE6IHN0clBhcmFtRGF0YSA/IHN0clBhcmFtRGF0YVswXSA6IHN0ci5zcGxpdCgnPScpWzBdLFxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gICAgLy8gY29uc3QgYXJyYXlQYXJhbXMgPSBsaW5rQXJyYXlbMV0/Lm1hdGNoKHJlZ0V4cFBhcmFtcylcclxuXHJcbiAgICAvLyDQvtCx0YDQsNCx0L7RgtC60LAg0YLQtdC70LAgdXJsXHJcbiAgICBjb25zdCBzdHJVcmwgPSBhcnJheVVybC5tYXAoKHN0cikgPT4ge1xyXG4gICAgICBpZiAoc3RyLm1hdGNoKHJlZ0V4cFBhcmFtcykpIHtcclxuICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgcmV0dXJuIGRhdGFJdGVtW3N0ci5tYXRjaChyZWdFeHBQYXJhbXMpWzBdXVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiBzdHJcclxuICAgICAgfVxyXG4gICAgfSkuam9pbignLycpXHJcbiAgICAvLyDQvtCx0YDQsNCx0L7RgtC60LAg0L/QsNGA0LDQvNC10YLRgNC+0LJcclxuICAgIC8vINC10YHQu9C4INC10YHRgtGMINC/0LDRgNCw0LzQtdGC0YDRiyAtINCy0L7Qt9Cy0YDQsNGJ0LDQtdC8INC40YUg0YHRgtGA0L7QutC+0Lkg0YEg0LTQuNC90LDQvNC40YfQtdGB0LrQuNC80Lgg0L/QsNGA0LDQvNC10YLRgNCw0LzQuFxyXG5cclxuICAgIGNvbnN0IHN0clBhcmFtcyA9IHNlYXJjaFBhcmFtc09iaiA/IHNlYXJjaFBhcmFtc09iai5tYXAoKHBhcmFtLCBpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgIHJldHVybiBgJHsgaW5kZXggPiAwID8gJycgOiAnPycgfSR7IHBhcmFtLm5hbWUgfT0keyBkYXRhSXRlbVtwYXJhbS5kYXRhXSB9YFxyXG4gICAgfSkuam9pbignJicpIDogJydcclxuXHJcbiAgICAvLyBjb25zdCBzdHJQYXJhbXMgPSBhcnJheVBhcmFtcyA/IGFycmF5UGFyYW1zLm1hcCgoc3RyLCBpbmRleCkgPT4ge1xyXG4gICAgLy8gICByZXR1cm4gYCR7aW5kZXggPiAwID8gJycgOiAnPyd9JHtzdHJ9PSR7ZGF0YUl0ZW1bc3RyXX1gXHJcbiAgICAvLyB9KS5qb2luKCcmJykgOiAnJ1xyXG5cclxuICAgIHJldHVybiBgJHsgc3RyVXJsIH0keyBzdHJQYXJhbXMgfWBcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkNoYW5nZVR5cGVUYWJsZSh0eXBlOiBUYWJsZVR5cGUpOiB2b2lkIHtcclxuICAgIHRoaXMuY2hhbmdlVHlwZVRhYmxlLmVtaXQodHlwZSlcclxuICB9XHJcblxyXG4gIC8vIHB1YmxpYyBnZXRIZWlnaHRGb3JURCh0YWJsZVREOiBIVE1MRWxlbWVudCkge1xyXG4gIC8vICAgcmV0dXJuIHRhYmxlVEQuc2Nyb2xsSGVpZ2h0XHJcbiAgLy8gfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJtcngtdGFibGVcIiBbY2xhc3NdPVwiZ2V0Q2xhc3Nlc1wiIFtjbGFzcy5tYi0zXT1cInBhZ2VhYmxlXCI+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhlYWRlclNldHRpbmdzXCI+XHJcbiAgICA8ZGl2XHJcbiAgICAgIGNsYXNzPVwibXJ4LXRhYmxlLWNhcmQtaGVhZGVyIHB0LTIgcGItMiBtYi0zXCJcclxuICAgICAgW2NsYXNzLm1yeC10YWJsZS1jYXJkLWhlYWRlci0tc3Vic3RyYXRlXT1cImhlYWRlclNldHRpbmdzLnN1YnN0cmF0ZVwiXHJcbiAgICAgICpuZ0lmPVwiaGVhZGVyU2V0dGluZ3MudHlwZSA9PT0gJ2RlZmF1bHQnXCJcclxuICAgID5cclxuICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgIDxkaXZcclxuICAgICAgICAgIGNsYXNzPVwibXJ4LXRhYmxlLWNhcmQtaGVhZGVyLS1sZWZ0IGNvbCBjb2wtMTIgY29sLW1kLTYgbWItMSBtYi1tZC0wIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtc3RhcnQgYWxpZ24tY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb3VudGVyVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1yeC10YWJsZS1jYXJkLWhlYWRlci0tcmlnaHQgY29sIGNvbC0xMiBjb2wtbWQtNiBkLWZsZXgganVzdGlmeS1jb250ZW50LWVuZCBhbGlnbi1jb250ZW50LWNlbnRlclwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNvcnRUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1sLTRcIiAqbmdJZj1cImhlYWRlclNldHRpbmdzLnRvZ2dsZVwiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidG9nZ2xlVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXZcclxuICAgICAgY2xhc3M9XCJtcngtdGFibGUtY2FyZC1oZWFkZXIgbWItMyBwdC0yIHBiLTJcIlxyXG4gICAgICBbY2xhc3MubXJ4LXRhYmxlLWNhcmQtaGVhZGVyLS1zdWJzdHJhdGVdPVwiaGVhZGVyU2V0dGluZ3Muc3Vic3RyYXRlXCJcclxuICAgICAgKm5nSWY9XCJoZWFkZXJTZXR0aW5ncy50eXBlID09PSAnc2Vjb25kJ1wiXHJcbiAgICA+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICA8ZGl2XHJcbiAgICAgICAgICBjbGFzcz1cIm1yeC10YWJsZS1jYXJkLWhlYWRlci0tbGVmdCBjb2wgY29sLTEyIGNvbC1zbS02IG1iLTEgbWItc20tMCBkLWZsZXgganVzdGlmeS1jb250ZW50LXN0YXJ0IGFsaWduLWNvbnRlbnQtY2VudGVyXCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic29ydFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtcngtdGFibGUtY2FyZC1oZWFkZXItLXJpZ2h0IGNvbCBjb2wtMTIgY29sLXNtLTYgZC1mbGV4IGp1c3RpZnktY29udGVudC1lbmQgYWxpZ24tY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkb3dubG9hZFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInR5cGVcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJtcngtdGFibGVfX3dyYXBwZXJcIiAqbmdTd2l0Y2hDYXNlPVwiJ2RlZmF1bHQnXCJcclxuICAgICAgICAgW2NsYXNzLm1yeC10YWJsZV9fd3JhcHBlci0tc3Vic3RyYXRlXT1cImNvbnRlbnRTZXR0aW5ncy5zdWJzdHJhdGVcIj5cclxuICAgICAgPHRhYmxlXHJcbiAgICAgICAgW2NsYXNzLnRhYmxlLXN0cmlwZWRdPVwic3RyaXBlZFwiXHJcbiAgICAgICAgW2NsYXNzLnRhYmxlLXNvbGlkXT1cIiFzdHJpcGVkXCJcclxuICAgICAgICBbY2xhc3MubXQtMl09XCJjb250ZW50U2V0dGluZ3Muc3Vic3RyYXRlXCJcclxuICAgICAgICBbY2xhc3MubWItM109XCJjb250ZW50U2V0dGluZ3Muc3Vic3RyYXRlICYmIGRhdGEubGVuZ3RoXCJcclxuICAgICAgPlxyXG4gICAgICAgIDx0aGVhZCBbY2xhc3MudGFibGUtaGVhZC1ncmF5XT1cIiFoZWFkZXJTZXR0aW5ncyB8fCBoZWFkZXJTZXR0aW5ncy5iYWNrZ3JvdW5kXCI+XHJcbiAgICAgICAgPHRyPlxyXG4gICAgICAgICAgPHRoICpuZ0Zvcj1cImxldCBjb2wgb2YgY29udGVudENoaWxkcmVuOyBsZXQgaW5kZXggPSBpbmRleDsgbGV0IGZpcnN0ID0gZmlyc3Q7IGxldCBsYXN0ID0gbGFzdDsgdHJhY2tCeTogdHJhY2tCeUZuXCIgW2NsYXNzXT1cImNvbC5jdXN0b21DbGFzc2VzXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhY29sLnRlbXBsYXRlSGVhZDsgZWxzZSBoZWFkZXJJdGVtVGVtcGxhdGVcIj5cclxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sLnNvcnRhYmxlOyBlbHNlIGRlZmF1bHRIZWFkQ29sXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IFtjbGFzcy50aC13cmFwcGVyXT1cInNvcnRhYmxlXCIgKGNsaWNrKT1cIm9uU29ydENvbHVtbihjb2wubmFtZSwgY29sLnNvcnRhYmxlKVwiPlxyXG4gICAgICAgICAgICAgICAgICA8c3Bhbj57eyBjb2wubGFiZWwgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgICAgICBbY2xhc3NdPVwiY29sdW1uU29ydGVkRGlyKGNvbC5uYW1lKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtcngtdGFibGVfX3NvcnQtaWNvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk00IDlMOCAxM0wxMiA5XCIgZmlsbD1cIiNEQUQ1Q0VcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTEyIDdMOCAzTDQgN1wiIGZpbGw9XCIjREFENUNFXCIvPlxyXG4gICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdEhlYWRDb2w+XHJcbiAgICAgICAgICAgICAgICA8ZGl2PjxzcGFuPnt7IGNvbC5sYWJlbCB9fTwvc3Bhbj48L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjaGVhZGVySXRlbVRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb2wuc29ydGFibGU7IGVsc2UgZGVmYXVsdEhlYWRDb2xcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgW2NsYXNzLnRoLXdyYXBwZXJdPVwic29ydGFibGVcIiAoY2xpY2spPVwib25Tb3J0Q29sdW1uKGNvbC5uYW1lLCBjb2wuc29ydGFibGUpXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2wudGVtcGxhdGVIZWFkOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogY29sIH1cIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgPHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzc109XCJjb2x1bW5Tb3J0ZWREaXIoY29sLm5hbWUpXCJcclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1yeC10YWJsZV9fc29ydC1pY29uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTQgOUw4IDEzTDEyIDlcIiBmaWxsPVwiI0RBRDVDRVwiLz5cclxuICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMTIgN0w4IDNMNCA3XCIgZmlsbD1cIiNEQUQ1Q0VcIi8+XHJcbiAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0SGVhZENvbD5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2wudGVtcGxhdGVIZWFkOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogY29sLCBpbmRleCwgZmlyc3QsIGxhc3QgfVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICA8L3RoPlxyXG4gICAgICAgIDwvdHI+XHJcbiAgICAgICAgPC90aGVhZD5cclxuXHJcbiAgICAgICAgPHRib2R5PlxyXG4gICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgZGF0YUl0ZW0gb2YgZGF0YTsgbGV0IGluZGV4ID0gaW5kZXg7IGxldCBmaXJzdCA9IGZpcnN0OyBsZXQgbGFzdCA9IGxhc3RcIiBbY2xhc3MuLWhvdmVyZWRdPVwiaG92ZXJlZFwiPlxyXG4gICAgICAgICAgPHRkXHJcbiAgICAgICAgICAgICN0YWJsZVREXHJcbiAgICAgICAgICAgIGNsYXNzPVwicC0wXCJcclxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNvbCBvZiBjb250ZW50Q2hpbGRyZW5cIlxyXG4gICAgICAgICAgICBbY2xhc3NdPVwiY29sLmN1c3RvbUNsYXNzZXNcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAgIGNsYXNzPVwibGluay13cmFwcGVyIHRkLWNvbnRlbnQtd3JhcHBlclwiXHJcbiAgICAgICAgICAgICAgW2hyZWZdPVwiZ2V0TGlua0ZvclN0cm9rZShsaW5rLCBkYXRhSXRlbSlcIlxyXG4gICAgICAgICAgICAgICpuZ0lmPVwibGluayAmJiBjb2xbJ2lzTGluayddOyBlbHNlIGRlZmF1bHRUZW1wbGF0ZVwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWNvbC50ZW1wbGF0ZUNlbGw7IGVsc2UgYm9keUl0ZW1UZW1wbGF0ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInAtMlwiPnt7IGRhdGFJdGVtW2NvbC5uYW1lXSB9fTwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2JvZHlJdGVtVGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sLnRlbXBsYXRlQ2VsbDsgY29udGV4dDogeyAkaW1wbGljaXQ6IGNvbCwgcm93OiBkYXRhSXRlbSwgaW5kZXgsIGZpcnN0LCBsYXN0IH1cIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICA8L2E+XHJcblxyXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRUZW1wbGF0ZT5cclxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWNvbC50ZW1wbGF0ZUNlbGw7IGVsc2UgYm9keUl0ZW1UZW1wbGF0ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInAtMiB0ZC1jb250ZW50LXdyYXBwZXJcIj57eyBkYXRhSXRlbVtjb2wubmFtZV0gfX08L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNib2R5SXRlbVRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRkLWNvbnRlbnQtd3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2wudGVtcGxhdGVDZWxsOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogY29sLCByb3c6IGRhdGFJdGVtLCBpbmRleCwgZmlyc3QsIGxhc3QgfVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgPC90cj5cclxuICAgICAgICA8L3Rib2R5PlxyXG4gICAgICA8L3RhYmxlPlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1yeC10YWJsZV9fcmVzdWx0LW1lc3NhZ2VcIiAqbmdJZj1cIiFkYXRhLmxlbmd0aFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJlbXB0eVJlc3VsdE1zZyA/IGVtcHR5UmVzdWx0TXNnVGVtcGxhdGVEZWZhdWx0IDogZW1wdHlSZXN1bHRNc2dUZW1wbGF0ZVwiPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtcngtdGFibGVfX292ZXJsYXlcIiBbQHZpc2libGVMb2FkaW5nXT1cImlzTG9hZGluZyA/ICdpbicgOiAnb3V0J1wiIFtuZ0NsYXNzXT1cInsnb3Blbic6IGlzTG9hZGluZ31cIiA+XHJcbiAgICAgICAgPG1yeC1sb2FkZXIgc2l6ZT1cImxhcmdlXCIgY29sb3I9XCJicmFuZFwiPjwvbXJ4LWxvYWRlcj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwibXJ4LXRhYmxlX193cmFwcGVyXCIgKm5nU3dpdGNoQ2FzZT1cIidjYXJkcydcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBkYXRhOyBsZXQgaW5kZXggPSBpbmRleDsgbGV0IGZpcnN0ID0gZmlyc3Q7IGxldCBsYXN0ID0gbGFzdFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZW1wbGF0ZUNhcmQ7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBpdGVtLCBpbmRleCwgZmlyc3QsIGxhc3QgfVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtcngtdGFibGVfX3Jlc3VsdC1tZXNzYWdlLS1zdWJzdHJhdGVcIiAqbmdJZj1cIiFkYXRhLmxlbmd0aFwiID5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZW1wdHlSZXN1bHRNc2cgPyBlbXB0eVJlc3VsdE1zZ1RlbXBsYXRlRGVmYXVsdCA6IGVtcHR5UmVzdWx0TXNnVGVtcGxhdGVcIj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwibXJ4LXRhYmxlX19vdmVybGF5XCIgW0B2aXNpYmxlTG9hZGluZ109XCJpc0xvYWRpbmcgPyAnaW4nIDogJ291dCdcIiBbbmdDbGFzc109XCJ7J29wZW4nOiBpc0xvYWRpbmd9XCIgPlxyXG4gICAgICAgIDxtcngtbG9hZGVyIHNpemU9XCJsYXJnZVwiIGNvbG9yPVwiYnJhbmRcIj48L21yeC1sb2FkZXI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiBjbGFzcz1cIm1yeC10YWJsZV9fcGFnaW5hdG9yIHB0LTIgcGItMlwiIFtjbGFzcy5tcngtdGFibGVfX3BhZ2luYXRvci0tc3Vic3RyYXRlXT1cInBhZ2luYXRvclNldHRpbmdzLnN1YnN0cmF0ZVwiICpuZ0lmPVwidG90YWxcIj5cclxuICA8bXJ4LXBhZ2luYXRvclxyXG4gICAgKm5nSWY9XCJwYWdlYWJsZVwiXHJcbiAgICBbdG90YWxdPVwidG90YWxcIlxyXG4gICAgW3BhZ2VTaXplXT1cInBhZ2VTaXplXCJcclxuICAgIFtwb3NpdGlvbl09XCJwYWdlYWJsZS5wb3NpdGlvblwiXHJcbiAgICBbcGFnZVNpemVzXT1cInBhZ2VhYmxlLnBhZ2VTaXplc1wiXHJcbiAgICBbY3VycmVudFBhZ2VdPVwiY3VycmVudFBhZ2VcIlxyXG4gICAgW3dpdGhQYWdlU2l6ZV09XCJwYWdlYWJsZS53aXRoUGFnZVNpemVcIlxyXG4gICAgKGRhdGFTdGF0ZUNoYW5nZWQpPVwib25EYXRhU3RhdGVQYWdpbmF0b3JDaGFuZ2VkKCRldmVudClcIj5cclxuICA8L21yeC1wYWdpbmF0b3I+XHJcbjwvZGl2PlxyXG5cclxuPG5nLXRlbXBsYXRlICNjb3VudGVyVGVtcGxhdGU+XHJcbiAgPHNwYW4gY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCIgKm5nSWY9XCJoZWFkZXJTZXR0aW5ncz8uY291bnRcIj5cclxuICAgIHt7IHRvdGFsIH19IHt7aGVhZGVyU2V0dGluZ3M/LmNvdW50VGV4dCB8fCAn0L3QvtCy0L7RgdGC0LXQuSd9fVxyXG4gIDwvc3Bhbj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjc29ydFRlbXBsYXRlPlxyXG4gIDxkaXYgY2xhc3M9XCJkLWZsZXggbXJ4LXRhYmxlLXNvcnRcIiAqbmdJZj1cImhlYWRlclNldHRpbmdzPy5zb3J0XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwibXJ4LXRhYmxlLXNvcnQtc2NhbGVcIiAoY2xpY2spPVwiY2hhbmdlU29ydCgpXCI+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwibXJ4LXRhYmxlLXNvcnQtc2NhbGVfX3RpdGxlXCI+0KHQvtGA0YLQuNGA0L7QstCw0YLRjCDQv9C+Ojwvc3Bhbj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1yeC10YWJsZS1zb3J0LXNjYWxlX19pY29uXCI+XHJcbiAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Py5kaXIgPT09ICdkZXNjJ1wiIGNsYXNzPVwibXJ4LWljb24gaWNvbi1zb3J0aW5nLWRvd24gaWNvbi1mb250LTE2XCI+PC9zcGFuPlxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwic29ydD8uZGlyID09PSAnYXNjJ1wiIGNsYXNzPVwibXJ4LWljb24gaWNvbi1zb3J0aW5nLXVwIGljb24tZm9udC0xNlwiPjwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxuZy1zZWxlY3RcclxuICAgICAgYmluZExhYmVsPVwic29ydExhYmVsXCJcclxuICAgICAgYmluZFZhbHVlPVwibmFtZVwiXHJcbiAgICAgIFtpdGVtc109XCJjb2xBcnJheVwiXHJcbiAgICAgIFtuZ01vZGVsXT1cInNlbGVjdGVkU29ydFwiXHJcbiAgICAgIChjaGFuZ2UpPVwidXBkYXRlU29ydFNlbGVjdCgkZXZlbnQpXCJcclxuICAgICAgW2NsZWFyYWJsZV09XCJmYWxzZVwiXHJcbiAgICAgIFtzZWFyY2hhYmxlXT1cImZhbHNlXCJcclxuICAgICAgW2Nsb3NlT25TZWxlY3RdPVwidHJ1ZVwiXHJcbiAgICA+PC9uZy1zZWxlY3Q+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI2Rvd25sb2FkVGVtcGxhdGU+XHJcbiAgPGRpdiBjbGFzcz1cIm1yeC10YWJsZS1kb3dubG9hZFwiIChjbGljayk9XCJjbGlja1RvRG93bmxvYWQoJGV2ZW50KVwiICpuZ0lmPVwiaGVhZGVyU2V0dGluZ3M/LmRvd25sb2FkXCI+XHJcbiAgICA8c3BhbiBjbGFzcz1cImRlc2t0b3BcIj7QodC60LDRh9Cw0YLRjCDQtNCw0L3QvdGL0LU8L3NwYW4+XHJcbiAgICA8c3BhbiBjbGFzcz1cIm1yeC1pY29uIGljb24tZG93bmxvYWQgaWNvbi1mb250LTI0XCI+PC9zcGFuPlxyXG4gIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICN0b2dnbGVUZW1wbGF0ZT5cclxuICA8ZGl2IGNsYXNzPVwibXJ4LXRhYmxlLXRvZ2dsZVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1yeC10YWJsZS10b2dnbGUtLWl0ZW0gbXItMVwiIChjbGljayk9XCJvbkNoYW5nZVR5cGVUYWJsZSgnY2FyZHMnKVwiIFtjbGFzcy5hY3RpdmVdPVwidHlwZSA9PT0gJ2NhcmRzJ1wiPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cIm1yeC1pY29uIGljb24tY2FyZHMtdmlldyBpY29uLWZvbnQtMjRcIj48L3NwYW4+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJtcngtdGFibGUtdG9nZ2xlLS1pdGVtXCIgKGNsaWNrKT1cIm9uQ2hhbmdlVHlwZVRhYmxlKCdkZWZhdWx0JylcIiBbY2xhc3MuYWN0aXZlXT1cInR5cGUgPT09ICdkZWZhdWx0J1wiPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cIm1yeC1pY29uIGljb24tdGFibGUtdmlldyBpY29uLWZvbnQtMjRcIj48L3NwYW4+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjZW1wdHlSZXN1bHRNc2dUZW1wbGF0ZURlZmF1bHQ+XHJcbiAge3tlbXB0eVJlc3VsdE1zZ319XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
|
|
274
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy90YWJsZS90YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wsU0FBUyxFQUNULFlBQVksRUFDWixlQUFlLEVBQ2YsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEdBR1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFnRyxhQUFhLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDM0ksT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRXZFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBR3hFLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7O0FBdUJ4RixNQUFNLE9BQU8sY0FBYztJQTBETDtJQXpEYixRQUFRLEdBQXNCLEVBQUUsQ0FBQztJQUNqQyxRQUFRLEdBQXlCLG9CQUFvQixDQUFDO0lBQ3RELFlBQVksR0FBRyxFQUFFLENBQUE7SUFDakIsSUFBSSxHQUFHLEtBQUssQ0FBQTtJQUVlLGVBQWUsQ0FBOEI7SUFDakQsWUFBWSxDQUFvQjtJQUN0QixzQkFBc0IsQ0FBb0I7SUFFekUsSUFBSSxHQUFjLFNBQVMsQ0FBQztJQUM1QixJQUFJLENBQW1CO0lBQ3ZCLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDZCxXQUFXLEdBQUcsQ0FBQyxDQUFDO0lBQ2hCLEtBQUssR0FBRyxDQUFDLENBQUM7SUFDVixJQUFJLEdBQUcs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c0JBQXJCLE1BQU07Z0JBQ0csZUFBZTtzQkFBeEIsTUFBTTtnQkFDRyxNQUFNO3NCQUFmLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIENvbnRlbnRDaGlsZCxcclxuICBDb250ZW50Q2hpbGRyZW4sXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxuICBRdWVyeUxpc3QsXHJcbiAgVGVtcGxhdGVSZWYsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRlbnRTZXR0aW5ncywgSGVhZGVyU2V0dGluZ3MsIFBhZ2luYXRvclNldHRpbmdzLCBTb3J0RGVzY3JpcHRvciwgVGFibGVCb2R5SXRlbSwgVGFibGVUeXBlLCBUYWJsZVR5cGVFbnVtIH0gZnJvbSAnLi90YWJsZS5lbnVtJztcclxuaW1wb3J0IHsgQ29sdW1uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NvbHVtbi9jb2x1bW4uY29tcG9uZW50JztcclxuaW1wb3J0IHsgUGFnZXJTZXR0aW5ncyB9IGZyb20gJy4vbW9kZWxzL3BhZ2VyLXNldHRpbmdzJztcclxuaW1wb3J0IHsgRGVmYXVsdFBhZ2VyU2V0dGluZ3MgfSBmcm9tICcuL2RlZmF1bHQvZGVmYXVsdC1wYWdlci1zZXR0aW5ncyc7XHJcbmltcG9ydCB7IERhdGFTdGF0ZUNoYW5nZUV2ZW50IH0gZnJvbSAnLi9tb2RlbHMvZGF0YS1zdGF0ZS1jaGFuZ2UuZXZlbnQnO1xyXG5pbXBvcnQgeyBQYWdpbmF0ZU91dHB1dE9iamVjdCB9IGZyb20gJy4uL3BhZ2luYXRvci9wYWdpbmF0b3IuZW51bSc7XHJcbmltcG9ydCB7IGFuaW1hdGUsIGdyb3VwLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbXJ4LXRhYmxlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGFibGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RhYmxlLmNvbXBvbmVudC5sZXNzJ10sXHJcbiAgYW5pbWF0aW9uczogW1xyXG4gICAgdHJpZ2dlcigndmlzaWJsZUxvYWRpbmcnLCBbXHJcbiAgICAgIHN0YXRlKCdpbicsIHN0eWxlKHsgb3BhY2l0eTogMSwgdmlzaWJpbGl0eTogJ3Zpc2libGUnIH0pKSxcclxuICAgICAgc3RhdGUoJ291dCcsIHN0eWxlKHsgb3BhY2l0eTogMCwgdmlzaWJpbGl0eTogJ2hpZGRlbicgfSkpLFxyXG4gICAgICB0cmFuc2l0aW9uKCdpbiA9PiBvdXQnLCBbZ3JvdXAoW1xyXG4gICAgICAgIGFuaW1hdGUoJzMwMG1zIGVhc2UtaW4tb3V0Jywgc3R5bGUoeyBvcGFjaXR5OiAwIH0pKSxcclxuICAgICAgICBhbmltYXRlKCczMDBtcyBlYXNlLWluLW91dCcsIHN0eWxlKHsgdmlzaWJpbGl0eTogJ2hpZGRlbicgfSkpXHJcbiAgICAgIF1cclxuICAgICAgKV0pLFxyXG4gICAgICB0cmFuc2l0aW9uKCdvdXQgPT4gaW4nLCBbZ3JvdXAoW1xyXG4gICAgICAgIGFuaW1hdGUoJzFtcyBlYXNlLWluLW91dCcsIHN0eWxlKHsgdmlzaWJpbGl0eTogJ3Zpc2libGUnIH0pKSxcclxuICAgICAgICBhbmltYXRlKCczMDBtcyBlYXNlLWluLW91dCcsIHN0eWxlKHsgb3BhY2l0eTogMSB9KSlcclxuICAgICAgXVxyXG4gICAgICApXSlcclxuICAgIF0pXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFibGVDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcclxuICBwdWJsaWMgY29sQXJyYXk6IENvbHVtbkNvbXBvbmVudFtdID0gW107XHJcbiAgcHVibGljIHBhZ2VhYmxlOiBQYWdlclNldHRpbmdzIHwgbnVsbCA9IERlZmF1bHRQYWdlclNldHRpbmdzO1xyXG4gIHB1YmxpYyBzZWxlY3RlZFNvcnQgPSAnJ1xyXG4gIHB1YmxpYyBpbml0ID0gZmFsc2VcclxuXHJcbiAgQENvbnRlbnRDaGlsZHJlbihDb2x1bW5Db21wb25lbnQpIGNvbnRlbnRDaGlsZHJlbiE6IFF1ZXJ5TGlzdDxDb2x1bW5Db21wb25lbnQ+O1xyXG4gIEBDb250ZW50Q2hpbGQoJ3RlbXBsYXRlQ2FyZCcpIHRlbXBsYXRlQ2FyZCE6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQENvbnRlbnRDaGlsZCgnZW1wdHlSZXN1bHRNc2dUZW1wbGF0ZScpIGVtcHR5UmVzdWx0TXNnVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICBASW5wdXQoKSB0eXBlOiBUYWJsZVR5cGUgPSAnZGVmYXVsdCc7XHJcbiAgQElucHV0KCkgZGF0YSE6IFRhYmxlQm9keUl0ZW1bXTtcclxuICBASW5wdXQoKSBwYWdlU2l6ZSA9IDIwO1xyXG4gIEBJbnB1dCgpIGN1cnJlbnRQYWdlID0gMTtcclxuICBASW5wdXQoKSB0b3RhbCA9IDA7XHJcbiAgQElucHV0KCkgbGluayA9ICcnO1xyXG4gIEBJbnB1dCgpIGlzTG9hZGluZyA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKSBzb3J0OiBTb3J0RGVzY3JpcHRvciB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKSB0cmFja0J5SWQgPSAnaWQnO1xyXG4gIEBJbnB1dCgpIHNvcnRhYmxlID0gdHJ1ZTtcclxuICBASW5wdXQoKSBzdHJpcGVkID0gdHJ1ZTtcclxuICBASW5wdXQoKSBjdXN0b21DbGFzc2VzID0gJydcclxuICBASW5wdXQoKSBlbXB0eVJlc3VsdE1zZyA9ICcnXHJcbiAgQElucHV0KCkgaG92ZXJlZCA9IHRydWU7XHJcblxyXG4gIEBJbnB1dCgpIGF1dG9IZWlnaHQgPSB0cnVlIC8vIGRlcHJlY2F0ZWRcclxuXHJcbiAgQElucHV0KCkgaGVhZGVyU2V0dGluZ3M6IEhlYWRlclNldHRpbmdzIHwgdW5kZWZpbmVkXHJcblxyXG4gIEBJbnB1dCgpIGNvbnRlbnRTZXR0aW5nczogQ29udGVudFNldHRpbmdzID0ge1xyXG4gICAgc3Vic3RyYXRlOiBmYWxzZVxyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgcGFnaW5hdG9yU2V0dGluZ3M6IFBhZ2luYXRvclNldHRpbmdzID0ge1xyXG4gICAgc3Vic3RyYXRlOiBmYWxzZVxyXG4gIH1cclxuXHJcbiAgLy8g0J/RgNC+0LLQtdGA0LjRgtGMINC4INCy0YvRgNC10LfQsNGC0YxcclxuICBwdWJsaWMgc2VsZWN0ZWRJdGVtID0gMVxyXG5cclxuICBASW5wdXQoJ3BhZ2VhYmxlJylcclxuICBwdWJsaWMgc2V0IHNldFBhZ2VhYmxlKHZhbHVlOiBQYWdlclNldHRpbmdzIHwgYm9vbGVhbikge1xyXG4gICAgaWYgKHZhbHVlID09PSB0cnVlKSB7XHJcbiAgICAgIHRoaXMucGFnZWFibGUgPSBEZWZhdWx0UGFnZXJTZXR0aW5ncztcclxuICAgIH0gZWxzZSBpZiAodmFsdWUgPT09IGZhbHNlKSB7XHJcbiAgICAgIHRoaXMucGFnZWFibGUgPSBudWxsO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5wYWdlYWJsZSA9IHZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQE91dHB1dCgpIGRhdGFTdGF0ZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxEYXRhU3RhdGVDaGFuZ2VFdmVudD4gPVxyXG4gICAgbmV3IEV2ZW50RW1pdHRlcjxEYXRhU3RhdGVDaGFuZ2VFdmVudD4oKTtcclxuICBAT3V0cHV0KCkgZG93bmxvYWREYXRhOiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKVxyXG4gIEBPdXRwdXQoKSBjaGFuZ2VUeXBlVGFibGU6IEV2ZW50RW1pdHRlcjxUYWJsZVR5cGU+ID0gbmV3IEV2ZW50RW1pdHRlcjxUYWJsZVR5cGU+KClcclxuICBAT3V0cHV0KCkgY2hhbmdlOiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5jb2xBcnJheSA9IHRoaXMuY29udGVudENoaWxkcmVuLnRvQXJyYXkoKTtcclxuXHJcbiAgICB0aGlzLmNvbEFycmF5LmZvckVhY2goaXRlbSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLnNvcnQgJiYgdGhpcy5zb3J0LmNvbCA9PT0gaXRlbS5uYW1lKSB7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZFNvcnQgPSBpdGVtLm5hbWVcclxuICAgICAgfVxyXG4gICAgfSlcclxuXHJcbiAgICB0aGlzLmNvbEFycmF5ID0gdGhpcy5jb2xBcnJheS5maWx0ZXIoaXRlbSA9PiB7XHJcbiAgICAgIHJldHVybiBpdGVtLm5hbWUgIT09ICcnICYmIGl0ZW0uc29ydExhYmVsXHJcbiAgICB9KVxyXG5cclxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpXHJcbiAgICB0aGlzLmluaXQgPSB0cnVlXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldENsYXNzZXMoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHsgVGFibGVUeXBlRW51bVt0aGlzLnR5cGVdIH0gJHsgdGhpcy5jdXN0b21DbGFzc2VzIH1gO1xyXG4gIH1cclxuXHJcbiAgdHJhY2tCeUZuKGluZGV4OiBudW1iZXIsIGl0ZW06IGFueSk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gaXRlbVt0aGlzLnRyYWNrQnlJZF07XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2hhbmdlU29ydCgpIHtcclxuICAgIGNvbnN0IG5ld0V2ZW50RGF0YTogRGF0YVN0YXRlQ2hhbmdlRXZlbnQgPSB7IHBhZ2U6IHRoaXMuY3VycmVudFBhZ2UsIHBhZ2VTaXplOiB0aGlzLnBhZ2VTaXplIH07XHJcblxyXG4gICAgaWYgKCF0aGlzLmNvbEFycmF5Lmxlbmd0aCkge1xyXG4gICAgICByZXR1cm5cclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5zb3J0KSB7XHJcbiAgICAgIG5ld0V2ZW50RGF0YS5zb3J0ID0ge1xyXG4gICAgICAgIGRpcjogdGhpcy5zb3J0LmRpciA9PT0gJ2Rlc2MnID8gJ2FzYycgOiAnZGVzYycsXHJcbiAgICAgICAgY29sOiB0aGlzLnNvcnQuY29sXHJcbiAgICAgIH07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBuZXdFdmVudERhdGEuc29ydCA9IHtcclxuICAgICAgICBkaXI6ICdhc2MnLFxyXG4gICAgICAgIGNvbDogdGhpcy5jb2xBcnJheVswXS5uYW1lXHJcbiAgICAgIH07XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5kYXRhU3RhdGVDaGFuZ2VkLmVtaXQobmV3RXZlbnREYXRhKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjb2x1bW5Tb3J0ZWREaXIoY29sdW1uOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgaWYgKHRoaXMuc29ydCAmJiB0aGlzLnNvcnQuY29sID09IGNvbHVtbiAmJiB0aGlzLnNvcnQuZGlyKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLnNvcnQuZGlyO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICcnO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uU29ydENvbHVtbihjb2x1bW46IHN0cmluZywgc29ydGFibGU6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIGlmICghc29ydGFibGUpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IG5ld0V2ZW50RGF0YTogRGF0YVN0YXRlQ2hhbmdlRXZlbnQgPSB7IHBhZ2U6IHRoaXMuY3VycmVudFBhZ2UsIHBhZ2VTaXplOiB0aGlzLnBhZ2VTaXplIH07XHJcblxyXG4gICAgaWYgKHRoaXMuc29ydCAmJiB0aGlzLnNvcnQuY29sID09IGNvbHVtbikge1xyXG4gICAgICBpZiAodGhpcy5zb3J0LmRpciAmJiB0aGlzLnNvcnQuZGlyID09PSAnYXNjJykge1xyXG4gICAgICAgIG5ld0V2ZW50RGF0YS5zb3J0ID0geyBkaXI6ICdkZXNjJywgY29sOiBjb2x1bW4gfTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbmV3RXZlbnREYXRhLnNvcnQgPSB7IGRpcjogJ2FzYycsIGNvbDogY29sdW1uIH07XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5kYXRhU3RhdGVDaGFuZ2VkLmVtaXQobmV3RXZlbnREYXRhKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbGlja1RvRG93bmxvYWQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XHJcbiAgICB0aGlzLmRvd25sb2FkRGF0YS5lbWl0KGV2ZW50KVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHVwZGF0ZVNvcnRTZWxlY3QodmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgY29uc3QgbmV3RXZlbnREYXRhOiBEYXRhU3RhdGVDaGFuZ2VFdmVudCA9IHtcclxuICAgICAgcGFnZTogdGhpcy5jdXJyZW50UGFnZSxcclxuICAgICAgcGFnZVNpemU6IHRoaXMucGFnZVNpemUsXHJcbiAgICAgIHNvcnQ6IHtcclxuICAgICAgICBjb2w6IHZhbHVlLm5hbWUsXHJcbiAgICAgICAgZGlyOiB0aGlzLnNvcnQ/LmRpclxyXG4gICAgICB9XHJcbiAgICB9O1xyXG5cclxuICAgIHRoaXMuZGF0YVN0YXRlQ2hhbmdlZC5lbWl0KG5ld0V2ZW50RGF0YSlcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkRhdGFTdGF0ZVBhZ2luYXRvckNoYW5nZWQocGFnaW5hdGlvbjogUGFnaW5hdGVPdXRwdXRPYmplY3QpOiB2b2lkIHtcclxuICAgIGNvbnN0IG5ld0V2ZW50RGF0YTogRGF0YVN0YXRlQ2hhbmdlRXZlbnQgPSB7XHJcbiAgICAgIHBhZ2U6IHBhZ2luYXRpb24uY3VycmVudFBhZ2UsXHJcbiAgICAgIHBhZ2VTaXplOiBwYWdpbmF0aW9uLnBhZ2VTaXplXHJcbiAgICB9O1xyXG5cclxuICAgIGlmICh0aGlzLnNvcnQgJiYgdGhpcy5zb3J0LmNvbCAmJiB0aGlzLnNvcnQuZGlyKSB7XHJcbiAgICAgIG5ld0V2ZW50RGF0YS5zb3J0ID0geyBkaXI6IHRoaXMuc29ydC5kaXIsIGNvbDogdGhpcy5zb3J0LmNvbCB9O1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuZGF0YVN0YXRlQ2hhbmdlZC5lbWl0KG5ld0V2ZW50RGF0YSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0TGlua0ZvclN0cm9rZShsaW5rOiBzdHJpbmcsIGRhdGFJdGVtOiBUYWJsZUJvZHlJdGVtKSB7XHJcbiAgICAvLyDRgNC10LPRg9C70Y/RgNC60LhcclxuICAgIGNvbnN0IHJlZ0V4cFBhcmFtcyA9IC8oPzw9XFxbKVteXFxzXFxbXFxdXSsoPz1dKS9naTtcclxuICAgIC8vINC+0YHQvdC+0LLQvdC+0Lkg0LzQsNGB0YHQuNCyXHJcbiAgICBjb25zdCBsaW5rQXJyYXkgPSBsaW5rLnNwbGl0KCc/JylcclxuICAgIC8vINC80LDRgdGB0LjQstGLINGB0YLRgNC+0LogdXJsINC4INC/0LDRgNCw0LzQtdGC0YDQvtCyXHJcbiAgICBjb25zdCBhcnJheVVybCA9IGxpbmtBcnJheVswXT8uc3BsaXQoJy8nKVxyXG4gICAgY29uc3Qgc2VhcmNoUGFyYW1zID0gbGlua0FycmF5WzFdPy5zcGxpdCgnJicpXHJcbiAgICBjb25zdCBzZWFyY2hQYXJhbXNPYmogPSBzZWFyY2hQYXJhbXM/Lm1hcCgoc3RyKSA9PiB7XHJcbiAgICAgIGNvbnN0IHN0clBhcmFtRGF0YSA9IHN0ci5zcGxpdCgnPScpWzFdLm1hdGNoKHJlZ0V4cFBhcmFtcylcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBuYW1lOiBzdHIuc3BsaXQoJz0nKVswXSxcclxuICAgICAgICBkYXRhOiBzdHJQYXJhbURhdGEgPyBzdHJQYXJhbURhdGFbMF0gOiBzdHIuc3BsaXQoJz0nKVswXSxcclxuICAgICAgfVxyXG4gICAgfSlcclxuICAgIC8vIGNvbnN0IGFycmF5UGFyYW1zID0gbGlua0FycmF5WzFdPy5tYXRjaChyZWdFeHBQYXJhbXMpXHJcblxyXG4gICAgLy8g0L7QsdGA0LDQsdC+0YLQutCwINGC0LXQu9CwIHVybFxyXG4gICAgY29uc3Qgc3RyVXJsID0gYXJyYXlVcmwubWFwKChzdHIpID0+IHtcclxuICAgICAgaWYgKHN0ci5tYXRjaChyZWdFeHBQYXJhbXMpKSB7XHJcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgICAgIHJldHVybiBkYXRhSXRlbVtzdHIubWF0Y2gocmVnRXhwUGFyYW1zKVswXV1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm4gc3RyXHJcbiAgICAgIH1cclxuICAgIH0pLmpvaW4oJy8nKVxyXG4gICAgLy8g0L7QsdGA0LDQsdC+0YLQutCwINC/0LDRgNCw0LzQtdGC0YDQvtCyXHJcbiAgICAvLyDQtdGB0LvQuCDQtdGB0YLRjCDQv9Cw0YDQsNC80LXRgtGA0YsgLSDQstC+0LfQstGA0LDRidCw0LXQvCDQuNGFINGB0YLRgNC+0LrQvtC5INGBINC00LjQvdCw0LzQuNGH0LXRgdC60LjQvNC4INC/0LDRgNCw0LzQtdGC0YDQsNC80LhcclxuXHJcbiAgICBjb25zdCBzdHJQYXJhbXMgPSBzZWFyY2hQYXJhbXNPYmogPyBzZWFyY2hQYXJhbXNPYmoubWFwKChwYXJhbSwgaW5kZXg6IG51bWJlcikgPT4ge1xyXG4gICAgICByZXR1cm4gYCR7IGluZGV4ID4gMCA/ICcnIDogJz8nIH0keyBwYXJhbS5uYW1lIH09JHsgZGF0YUl0ZW1bcGFyYW0uZGF0YV0gfWBcclxuICAgIH0pLmpvaW4oJyYnKSA6ICcnXHJcblxyXG4gICAgLy8gY29uc3Qgc3RyUGFyYW1zID0gYXJyYXlQYXJhbXMgPyBhcnJheVBhcmFtcy5tYXAoKHN0ciwgaW5kZXgpID0+IHtcclxuICAgIC8vICAgcmV0dXJuIGAke2luZGV4ID4gMCA/ICcnIDogJz8nfSR7c3RyfT0ke2RhdGFJdGVtW3N0cl19YFxyXG4gICAgLy8gfSkuam9pbignJicpIDogJydcclxuXHJcbiAgICByZXR1cm4gYCR7IHN0clVybCB9JHsgc3RyUGFyYW1zIH1gXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25DaGFuZ2VUeXBlVGFibGUodHlwZTogVGFibGVUeXBlKTogdm9pZCB7XHJcbiAgICB0aGlzLmNoYW5nZVR5cGVUYWJsZS5lbWl0KHR5cGUpXHJcbiAgfVxyXG5cclxuICAvLyBwdWJsaWMgZ2V0SGVpZ2h0Rm9yVEQodGFibGVURDogSFRNTEVsZW1lbnQpIHtcclxuICAvLyAgIHJldHVybiB0YWJsZVRELnNjcm9sbEhlaWdodFxyXG4gIC8vIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwibXJ4LXRhYmxlXCIgW2NsYXNzXT1cImdldENsYXNzZXNcIiBbY2xhc3MubWItM109XCJwYWdlYWJsZVwiPlxyXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJoZWFkZXJTZXR0aW5nc1wiPlxyXG4gICAgPGRpdlxyXG4gICAgICBjbGFzcz1cIm1yeC10YWJsZS1jYXJkLWhlYWRlciBwdC0yIHBiLTIgbWItM1wiXHJcbiAgICAgIFtjbGFzcy5tcngtdGFibGUtY2FyZC1oZWFkZXItLXN1YnN0cmF0ZV09XCJoZWFkZXJTZXR0aW5ncy5zdWJzdHJhdGVcIlxyXG4gICAgICAqbmdJZj1cImhlYWRlclNldHRpbmdzLnR5cGUgPT09ICdkZWZhdWx0J1wiXHJcbiAgICA+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICA8ZGl2XHJcbiAgICAgICAgICBjbGFzcz1cIm1yeC10YWJsZS1jYXJkLWhlYWRlci0tbGVmdCBjb2wgY29sLTEyIGNvbC1tZC02IG1iLTEgbWItbWQtMCBkLWZsZXgganVzdGlmeS1jb250ZW50LXN0YXJ0IGFsaWduLWNvbnRlbnQtY2VudGVyXCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY291bnRlclRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtcngtdGFibGUtY2FyZC1oZWFkZXItLXJpZ2h0IGNvbCBjb2wtMTIgY29sLW1kLTYgZC1mbGV4IGp1c3RpZnktY29udGVudC1lbmQgYWxpZ24tY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzb3J0VGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtbC00XCIgKm5nSWY9XCJoZWFkZXJTZXR0aW5ncy50b2dnbGVcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRvZ2dsZVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2XHJcbiAgICAgIGNsYXNzPVwibXJ4LXRhYmxlLWNhcmQtaGVhZGVyIG1iLTMgcHQtMiBwYi0yXCJcclxuICAgICAgW2NsYXNzLm1yeC10YWJsZS1jYXJkLWhlYWRlci0tc3Vic3RyYXRlXT1cImhlYWRlclNldHRpbmdzLnN1YnN0cmF0ZVwiXHJcbiAgICAgICpuZ0lmPVwiaGVhZGVyU2V0dGluZ3MudHlwZSA9PT0gJ3NlY29uZCdcIlxyXG4gICAgPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgY2xhc3M9XCJtcngtdGFibGUtY2FyZC1oZWFkZXItLWxlZnQgY29sIGNvbC0xMiBjb2wtc20tNiBtYi0xIG1iLXNtLTAgZC1mbGV4IGp1c3RpZnktY29udGVudC1zdGFydCBhbGlnbi1jb250ZW50LWNlbnRlclwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNvcnRUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibXJ4LXRhYmxlLWNhcmQtaGVhZGVyLS1yaWdodCBjb2wgY29sLTEyIGNvbC1zbS02IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kIGFsaWduLWNvbnRlbnQtY2VudGVyXCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZG93bmxvYWRUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG5cclxuICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJ0eXBlXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwibXJ4LXRhYmxlX193cmFwcGVyXCIgKm5nU3dpdGNoQ2FzZT1cIidkZWZhdWx0J1wiXHJcbiAgICAgICAgIFtjbGFzcy5tcngtdGFibGVfX3dyYXBwZXItLXN1YnN0cmF0ZV09XCJjb250ZW50U2V0dGluZ3Muc3Vic3RyYXRlXCI+XHJcbiAgICAgIDx0YWJsZVxyXG4gICAgICAgIFtjbGFzcy50YWJsZS1zdHJpcGVkXT1cInN0cmlwZWRcIlxyXG4gICAgICAgIFtjbGFzcy50YWJsZS1zb2xpZF09XCIhc3RyaXBlZFwiXHJcbiAgICAgICAgW2NsYXNzLm10LTJdPVwiY29udGVudFNldHRpbmdzLnN1YnN0cmF0ZVwiXHJcbiAgICAgICAgW2NsYXNzLm1iLTNdPVwiY29udGVudFNldHRpbmdzLnN1YnN0cmF0ZSAmJiBkYXRhLmxlbmd0aFwiXHJcbiAgICAgID5cclxuICAgICAgICA8dGhlYWQgW2NsYXNzLnRhYmxlLWhlYWQtZ3JheV09XCIhaGVhZGVyU2V0dGluZ3MgfHwgaGVhZGVyU2V0dGluZ3MuYmFja2dyb3VuZFwiPlxyXG4gICAgICAgIDx0cj5cclxuICAgICAgICAgIDx0aCAqbmdGb3I9XCJsZXQgY29sIG9mIGNvbnRlbnRDaGlsZHJlbjsgbGV0IGluZGV4ID0gaW5kZXg7IGxldCBmaXJzdCA9IGZpcnN0OyBsZXQgbGFzdCA9IGxhc3Q7IHRyYWNrQnk6IHRyYWNrQnlGblwiIFtjbGFzc109XCJjb2wuY3VzdG9tQ2xhc3Nlc1wiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWNvbC50ZW1wbGF0ZUhlYWQ7IGVsc2UgaGVhZGVySXRlbVRlbXBsYXRlXCI+XHJcbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbC5zb3J0YWJsZTsgZWxzZSBkZWZhdWx0SGVhZENvbFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBbY2xhc3MudGgtd3JhcHBlcl09XCJzb3J0YWJsZVwiIChjbGljayk9XCJvblNvcnRDb2x1bW4oY29sLm5hbWUsIGNvbC5zb3J0YWJsZSlcIj5cclxuICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgY29sLmxhYmVsIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cImNvbHVtblNvcnRlZERpcihjb2wubmFtZSlcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibXJ4LXRhYmxlX19zb3J0LWljb25cIj5cclxuICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNCA5TDggMTNMMTIgOVwiIGZpbGw9XCIjREFENUNFXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0xMiA3TDggM0w0IDdcIiBmaWxsPVwiI0RBRDVDRVwiLz5cclxuICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRIZWFkQ29sPlxyXG4gICAgICAgICAgICAgICAgPGRpdj48c3Bhbj57eyBjb2wubGFiZWwgfX08L3NwYW4+PC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI2hlYWRlckl0ZW1UZW1wbGF0ZT5cclxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sLnNvcnRhYmxlOyBlbHNlIGRlZmF1bHRIZWFkQ29sXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IFtjbGFzcy50aC13cmFwcGVyXT1cInNvcnRhYmxlXCIgKGNsaWNrKT1cIm9uU29ydENvbHVtbihjb2wubmFtZSwgY29sLnNvcnRhYmxlKVwiPlxyXG4gICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sLnRlbXBsYXRlSGVhZDsgY29udGV4dDogeyAkaW1wbGljaXQ6IGNvbCB9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgICAgICBbY2xhc3NdPVwiY29sdW1uU29ydGVkRGlyKGNvbC5uYW1lKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtcngtdGFibGVfX3NvcnQtaWNvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk00IDlMOCAxM0wxMiA5XCIgZmlsbD1cIiNEQUQ1Q0VcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTEyIDdMOCAzTDQgN1wiIGZpbGw9XCIjREFENUNFXCIvPlxyXG4gICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdEhlYWRDb2w+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sLnRlbXBsYXRlSGVhZDsgY29udGV4dDogeyAkaW1wbGljaXQ6IGNvbCwgaW5kZXgsIGZpcnN0LCBsYXN0IH1cIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgPC90aD5cclxuICAgICAgICA8L3RyPlxyXG4gICAgICAgIDwvdGhlYWQ+XHJcblxyXG4gICAgICAgIDx0Ym9keT5cclxuICAgICAgICA8dHIgKm5nRm9yPVwibGV0IGRhdGFJdGVtIG9mIGRhdGE7IGxldCBpbmRleCA9IGluZGV4OyBsZXQgZmlyc3QgPSBmaXJzdDsgbGV0IGxhc3QgPSBsYXN0XCIgW2NsYXNzLi1ob3ZlcmVkXT1cImhvdmVyZWRcIj5cclxuICAgICAgICAgIDx0ZFxyXG4gICAgICAgICAgICAjdGFibGVURFxyXG4gICAgICAgICAgICBjbGFzcz1cInAtMFwiXHJcbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjb2wgb2YgY29udGVudENoaWxkcmVuXCJcclxuICAgICAgICAgICAgW2NsYXNzXT1cImNvbC5jdXN0b21DbGFzc2VzXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGFcclxuICAgICAgICAgICAgICBjbGFzcz1cImxpbmstd3JhcHBlciB0ZC1jb250ZW50LXdyYXBwZXJcIlxyXG4gICAgICAgICAgICAgIFtocmVmXT1cImdldExpbmtGb3JTdHJva2UobGluaywgZGF0YUl0ZW0pXCJcclxuICAgICAgICAgICAgICAqbmdJZj1cImxpbmsgJiYgY29sWydpc0xpbmsnXTsgZWxzZSBkZWZhdWx0VGVtcGxhdGVcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFjb2wudGVtcGxhdGVDZWxsOyBlbHNlIGJvZHlJdGVtVGVtcGxhdGVcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwLTIgaC0xMDBcIj57eyBkYXRhSXRlbVtjb2wubmFtZV0gfX08L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNib2R5SXRlbVRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxyXG4gICAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cImNvbC50ZW1wbGF0ZUNlbGw7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBjb2wsIHJvdzogZGF0YUl0ZW0sIGluZGV4LCBmaXJzdCwgbGFzdCB9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgPC9hPlxyXG5cclxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0VGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFjb2wudGVtcGxhdGVDZWxsOyBlbHNlIGJvZHlJdGVtVGVtcGxhdGVcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZC1jb250ZW50LXdyYXBwZXIgcC0yIGgtMTAwXCI+e3sgZGF0YUl0ZW1bY29sLm5hbWVdIH19PC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjYm9keUl0ZW1UZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZC1jb250ZW50LXdyYXBwZXIgaC0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxyXG4gICAgICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sLnRlbXBsYXRlQ2VsbDsgY29udGV4dDogeyAkaW1wbGljaXQ6IGNvbCwgcm93OiBkYXRhSXRlbSwgaW5kZXgsIGZpcnN0LCBsYXN0IH1cIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICA8L3RkPlxyXG4gICAgICAgIDwvdHI+XHJcbiAgICAgICAgPC90Ym9keT5cclxuICAgICAgPC90YWJsZT5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtcngtdGFibGVfX3Jlc3VsdC1tZXNzYWdlXCIgKm5nSWY9XCIhZGF0YS5sZW5ndGhcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZW1wdHlSZXN1bHRNc2cgPyBlbXB0eVJlc3VsdE1zZ1RlbXBsYXRlRGVmYXVsdCA6IGVtcHR5UmVzdWx0TXNnVGVtcGxhdGVcIj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwibXJ4LXRhYmxlX19vdmVybGF5XCIgW0B2aXNpYmxlTG9hZGluZ109XCJpc0xvYWRpbmcgPyAnaW4nIDogJ291dCdcIiBbbmdDbGFzc109XCJ7J29wZW4nOiBpc0xvYWRpbmd9XCIgPlxyXG4gICAgICAgIDxtcngtbG9hZGVyIHNpemU9XCJsYXJnZVwiIGNvbG9yPVwiYnJhbmRcIj48L21yeC1sb2FkZXI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cIm1yeC10YWJsZV9fd3JhcHBlclwiICpuZ1N3aXRjaENhc2U9XCInY2FyZHMnXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZGF0YTsgbGV0IGluZGV4ID0gaW5kZXg7IGxldCBmaXJzdCA9IGZpcnN0OyBsZXQgbGFzdCA9IGxhc3RcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGVtcGxhdGVDYXJkOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogaXRlbSwgaW5kZXgsIGZpcnN0LCBsYXN0IH1cIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwibXJ4LXRhYmxlX19yZXN1bHQtbWVzc2FnZS0tc3Vic3RyYXRlXCIgKm5nSWY9XCIhZGF0YS5sZW5ndGhcIiA+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImVtcHR5UmVzdWx0TXNnID8gZW1wdHlSZXN1bHRNc2dUZW1wbGF0ZURlZmF1bHQgOiBlbXB0eVJlc3VsdE1zZ1RlbXBsYXRlXCI+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1yeC10YWJsZV9fb3ZlcmxheVwiIFtAdmlzaWJsZUxvYWRpbmddPVwiaXNMb2FkaW5nID8gJ2luJyA6ICdvdXQnXCIgW25nQ2xhc3NdPVwieydvcGVuJzogaXNMb2FkaW5nfVwiID5cclxuICAgICAgICA8bXJ4LWxvYWRlciBzaXplPVwibGFyZ2VcIiBjb2xvcj1cImJyYW5kXCI+PC9tcngtbG9hZGVyPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG48L2Rpdj5cclxuXHJcbjxkaXYgY2xhc3M9XCJtcngtdGFibGVfX3BhZ2luYXRvciBwdC0yIHBiLTJcIiBbY2xhc3MubXJ4LXRhYmxlX19wYWdpbmF0b3ItLXN1YnN0cmF0ZV09XCJwYWdpbmF0b3JTZXR0aW5ncy5zdWJzdHJhdGVcIiAqbmdJZj1cInRvdGFsXCI+XHJcbiAgPG1yeC1wYWdpbmF0b3JcclxuICAgICpuZ0lmPVwicGFnZWFibGVcIlxyXG4gICAgW3RvdGFsXT1cInRvdGFsXCJcclxuICAgIFtwYWdlU2l6ZV09XCJwYWdlU2l6ZVwiXHJcbiAgICBbcG9zaXRpb25dPVwicGFnZWFibGUucG9zaXRpb25cIlxyXG4gICAgW3BhZ2VTaXplc109XCJwYWdlYWJsZS5wYWdlU2l6ZXNcIlxyXG4gICAgW2N1cnJlbnRQYWdlXT1cImN1cnJlbnRQYWdlXCJcclxuICAgIFt3aXRoUGFnZVNpemVdPVwicGFnZWFibGUud2l0aFBhZ2VTaXplXCJcclxuICAgIChkYXRhU3RhdGVDaGFuZ2VkKT1cIm9uRGF0YVN0YXRlUGFnaW5hdG9yQ2hhbmdlZCgkZXZlbnQpXCI+XHJcbiAgPC9tcngtcGFnaW5hdG9yPlxyXG48L2Rpdj5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjY291bnRlclRlbXBsYXRlPlxyXG4gIDxzcGFuIGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiICpuZ0lmPVwiaGVhZGVyU2V0dGluZ3M/LmNvdW50XCI+XHJcbiAgICB7eyB0b3RhbCB9fSB7e2hlYWRlclNldHRpbmdzPy5jb3VudFRleHQgfHwgJ9C90L7QstC+0YHRgtC10LknfX1cclxuICA8L3NwYW4+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI3NvcnRUZW1wbGF0ZT5cclxuICA8ZGl2IGNsYXNzPVwiZC1mbGV4IG1yeC10YWJsZS1zb3J0XCIgKm5nSWY9XCJoZWFkZXJTZXR0aW5ncz8uc29ydFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1yeC10YWJsZS1zb3J0LXNjYWxlXCIgKGNsaWNrKT1cImNoYW5nZVNvcnQoKVwiPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cIm1yeC10YWJsZS1zb3J0LXNjYWxlX190aXRsZVwiPtCh0L7RgNGC0LjRgNC+0LLQsNGC0Ywg0L/Qvjo8L3NwYW4+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtcngtdGFibGUtc29ydC1zY2FsZV9faWNvblwiPlxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwic29ydD8uZGlyID09PSAnZGVzYydcIiBjbGFzcz1cIm1yeC1pY29uIGljb24tc29ydGluZy1kb3duIGljb24tZm9udC0xNlwiPjwvc3Bhbj5cclxuICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnQ/LmRpciA9PT0gJ2FzYydcIiBjbGFzcz1cIm1yeC1pY29uIGljb24tc29ydGluZy11cCBpY29uLWZvbnQtMTZcIj48L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8bmctc2VsZWN0XHJcbiAgICAgIGJpbmRMYWJlbD1cInNvcnRMYWJlbFwiXHJcbiAgICAgIGJpbmRWYWx1ZT1cIm5hbWVcIlxyXG4gICAgICBbaXRlbXNdPVwiY29sQXJyYXlcIlxyXG4gICAgICBbbmdNb2RlbF09XCJzZWxlY3RlZFNvcnRcIlxyXG4gICAgICAoY2hhbmdlKT1cInVwZGF0ZVNvcnRTZWxlY3QoJGV2ZW50KVwiXHJcbiAgICAgIFtjbGVhcmFibGVdPVwiZmFsc2VcIlxyXG4gICAgICBbc2VhcmNoYWJsZV09XCJmYWxzZVwiXHJcbiAgICAgIFtjbG9zZU9uU2VsZWN0XT1cInRydWVcIlxyXG4gICAgPjwvbmctc2VsZWN0PlxyXG4gIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNkb3dubG9hZFRlbXBsYXRlPlxyXG4gIDxkaXYgY2xhc3M9XCJtcngtdGFibGUtZG93bmxvYWRcIiAoY2xpY2spPVwiY2xpY2tUb0Rvd25sb2FkKCRldmVudClcIiAqbmdJZj1cImhlYWRlclNldHRpbmdzPy5kb3dubG9hZFwiPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJkZXNrdG9wXCI+0KHQutCw0YfQsNGC0Ywg0LTQsNC90L3Ri9C1PC9zcGFuPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJtcngtaWNvbiBpY29uLWRvd25sb2FkIGljb24tZm9udC0yNFwiPjwvc3Bhbj5cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjdG9nZ2xlVGVtcGxhdGU+XHJcbiAgPGRpdiBjbGFzcz1cIm1yeC10YWJsZS10b2dnbGVcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJtcngtdGFibGUtdG9nZ2xlLS1pdGVtIG1yLTFcIiAoY2xpY2spPVwib25DaGFuZ2VUeXBlVGFibGUoJ2NhcmRzJylcIiBbY2xhc3MuYWN0aXZlXT1cInR5cGUgPT09ICdjYXJkcydcIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJtcngtaWNvbiBpY29uLWNhcmRzLXZpZXcgaWNvbi1mb250LTI0XCI+PC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwibXJ4LXRhYmxlLXRvZ2dsZS0taXRlbVwiIChjbGljayk9XCJvbkNoYW5nZVR5cGVUYWJsZSgnZGVmYXVsdCcpXCIgW2NsYXNzLmFjdGl2ZV09XCJ0eXBlID09PSAnZGVmYXVsdCdcIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJtcngtaWNvbiBpY29uLXRhYmxlLXZpZXcgaWNvbi1mb250LTI0XCI+PC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI2VtcHR5UmVzdWx0TXNnVGVtcGxhdGVEZWZhdWx0PlxyXG4gIHt7ZW1wdHlSZXN1bHRNc2d9fVxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|
|
@@ -13,7 +13,7 @@ export class TruncateTextComponent {
|
|
|
13
13
|
this.isVisibleButton = event;
|
|
14
14
|
}
|
|
15
15
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: TruncateTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
16
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: TruncateTextComponent, selector: "mrx-truncate-text", inputs: { count: "count", responsiveCount: "responsiveCount", isOpen: "isOpen", lineHeight: "lineHeight" }, ngImport: i0, template: "<div\r\n class=\"mrx-truncate-text\"\r\n mrxTruncateText\r\n [class.mb-2]=\"isVisibleButton\"\r\n [count]=\"count\"\r\n [responsiveCount]=\"responsiveCount\"\r\n [isOpen]=\"isOpen\"\r\n [lineHeight]=\"lineHeight\"\r\n (changeVisibleButton)=\"changeVisibleButton($event)\"\r\n>\r\n <ng-content></ng-content>\r\n</div>\r\n\r\n<mrx-link\r\n *ngIf=\"isVisibleButton\"\r\n type=\"pseudo\"\r\n [prevent]=\"true\"\r\n (click)=\"isOpen = !isOpen\"\r\n>\r\n {{ isOpen ? '\u0421\u0432\u0435\u0440\u043D\u0443\u0442\u044C' : '\u0420\u0430\u0437\u0432\u0435\u0440\u043D\u0443\u0442\u044C' }}\r\n</mrx-link>\r\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.LinkComponent, selector: "mrx-link", inputs: ["
|
|
16
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: TruncateTextComponent, selector: "mrx-truncate-text", inputs: { count: "count", responsiveCount: "responsiveCount", isOpen: "isOpen", lineHeight: "lineHeight" }, ngImport: i0, template: "<div\r\n class=\"mrx-truncate-text\"\r\n mrxTruncateText\r\n [class.mb-2]=\"isVisibleButton\"\r\n [count]=\"count\"\r\n [responsiveCount]=\"responsiveCount\"\r\n [isOpen]=\"isOpen\"\r\n [lineHeight]=\"lineHeight\"\r\n (changeVisibleButton)=\"changeVisibleButton($event)\"\r\n>\r\n <ng-content></ng-content>\r\n</div>\r\n\r\n<mrx-link\r\n *ngIf=\"isVisibleButton\"\r\n type=\"pseudo\"\r\n [prevent]=\"true\"\r\n (click)=\"isOpen = !isOpen\"\r\n>\r\n {{ isOpen ? '\u0421\u0432\u0435\u0440\u043D\u0443\u0442\u044C' : '\u0420\u0430\u0437\u0432\u0435\u0440\u043D\u0443\u0442\u044C' }}\r\n</mrx-link>\r\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.LinkComponent, selector: "mrx-link", inputs: ["href", "target", "routerLink", "queryParams", "type", "monochrome", "customClasses", "prevent", "size"], outputs: ["clicked"] }, { kind: "directive", type: i3.TruncateTextDirective, selector: "[mrxTruncateText]", inputs: ["count", "responsiveCount", "lineHeight", "isOpen", "truncateButtonRef"], outputs: ["changeVisibleButton"] }] });
|
|
17
17
|
}
|
|
18
18
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: TruncateTextComponent, decorators: [{
|
|
19
19
|
type: Component,
|
|
@@ -7,13 +7,12 @@ export class FileUploadService {
|
|
|
7
7
|
this.http = http;
|
|
8
8
|
}
|
|
9
9
|
upload(url, file) {
|
|
10
|
-
console.log(file);
|
|
11
10
|
return this.http.post(url, file, {
|
|
12
11
|
reportProgress: true,
|
|
13
12
|
observe: 'events'
|
|
14
13
|
});
|
|
15
14
|
}
|
|
16
|
-
delete(url
|
|
15
|
+
delete(url) {
|
|
17
16
|
return this.http.delete(url);
|
|
18
17
|
}
|
|
19
18
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: FileUploadService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
@@ -25,4 +24,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
25
24
|
providedIn: 'root'
|
|
26
25
|
}]
|
|
27
26
|
}], ctorParameters: () => [{ type: i1.HttpClient }] });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvc2VydmljZXMvZmlsZS11cGxvYWQvZmlsZS11cGxvYWQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFRM0MsTUFBTSxPQUFPLGlCQUFpQjtJQUVSO0lBQXBCLFlBQW9CLElBQWdCO1FBQWhCLFNBQUksR0FBSixJQUFJLENBQVk7SUFDcEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxHQUFXLEVBQUUsSUFBYztRQUNoQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFzQixHQUFHLEVBQUUsSUFBSSxFQUFFO1lBQ3BELGNBQWMsRUFBRSxJQUFJO1lBQ3BCLE9BQU8sRUFBRSxRQUFRO1NBQ2xCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNLENBQUMsR0FBVztRQUNoQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFzQixHQUFHLENBQUMsQ0FBQztJQUNwRCxDQUFDO3dHQWRVLGlCQUFpQjs0R0FBakIsaUJBQWlCLGNBRmhCLE1BQU07OzRGQUVQLGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBFdmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBVcGxvYWRlZFJlc3VsdE1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEZpbGVVcGxvYWRTZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50KSB7XHJcbiAgfVxyXG5cclxuICB1cGxvYWQodXJsOiBzdHJpbmcsIGZpbGU6IEZvcm1EYXRhKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8VXBsb2FkZWRSZXN1bHRNb2RlbD4+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxVcGxvYWRlZFJlc3VsdE1vZGVsPih1cmwsIGZpbGUsIHtcclxuICAgICAgcmVwb3J0UHJvZ3Jlc3M6IHRydWUsXHJcbiAgICAgIG9ic2VydmU6ICdldmVudHMnXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGRlbGV0ZSh1cmw6IHN0cmluZyk6IE9ic2VydmFibGU8VXBsb2FkZWRSZXN1bHRNb2RlbD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kZWxldGU8VXBsb2FkZWRSZXN1bHRNb2RlbD4odXJsKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from './mrx-autosave/mrx-autosave.service';
|
|
2
2
|
export * from './file-upload/file-upload.service';
|
|
3
3
|
export * from './mrx-form-validator/mrx-form-validator';
|
|
4
|
+
export * from './mrx-form-validator/models';
|
|
4
5
|
export * from './save-store/save-store.module';
|
|
5
6
|
export * from './save-store/store/selectors';
|
|
6
7
|
export * from './save-store/store/actions';
|
|
@@ -8,4 +9,7 @@ export * from './modal-service/modal-service.module';
|
|
|
8
9
|
export * from './modal-service/models/modal-config.model';
|
|
9
10
|
export * from './modal-service/modal-service.service';
|
|
10
11
|
export * from './modal-service/helpers';
|
|
11
|
-
|
|
12
|
+
export * from './toaster-service/toaster-service.module';
|
|
13
|
+
export * from './toaster-service/toaster-service.service';
|
|
14
|
+
export * from './toaster-service/models/toaster.model';
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL3NlcnZpY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUVsRCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsNkJBQTZCLENBQUM7QUFFNUMsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsNEJBQTRCLENBQUM7QUFFM0MsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyx5QkFBeUIsQ0FBQztBQUV4QyxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyx3Q0FBd0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbXJ4LWF1dG9zYXZlL21yeC1hdXRvc2F2ZS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbXJ4LWZvcm0tdmFsaWRhdG9yL21yeC1mb3JtLXZhbGlkYXRvcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbXJ4LWZvcm0tdmFsaWRhdG9yL21vZGVscyc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL3NhdmUtc3RvcmUvc2F2ZS1zdG9yZS5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL3NhdmUtc3RvcmUvc3RvcmUvc2VsZWN0b3JzJztcclxuZXhwb3J0ICogZnJvbSAnLi9zYXZlLXN0b3JlL3N0b3JlL2FjdGlvbnMnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9tb2RhbC1zZXJ2aWNlL21vZGFsLXNlcnZpY2UubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb2RhbC1zZXJ2aWNlL21vZGVscy9tb2RhbC1jb25maWcubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vZGFsLXNlcnZpY2UvbW9kYWwtc2VydmljZS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb2RhbC1zZXJ2aWNlL2hlbHBlcnMnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi90b2FzdGVyLXNlcnZpY2UvdG9hc3Rlci1zZXJ2aWNlLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdG9hc3Rlci1zZXJ2aWNlL3RvYXN0ZXItc2VydmljZS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi90b2FzdGVyLXNlcnZpY2UvbW9kZWxzL3RvYXN0ZXIubW9kZWwnO1xyXG4iXX0=
|
|
@@ -9,13 +9,11 @@ import * as i2 from "../../../../components/modal/modal.component";
|
|
|
9
9
|
import * as i3 from "../../../../components/button/button.component";
|
|
10
10
|
export class AlertModalComponent extends ModalServiceComponent {
|
|
11
11
|
dialogRef;
|
|
12
|
-
data;
|
|
13
12
|
config;
|
|
14
13
|
model;
|
|
15
14
|
constructor(dialogRef, data, config) {
|
|
16
15
|
super();
|
|
17
16
|
this.dialogRef = dialogRef;
|
|
18
|
-
this.data = data;
|
|
19
17
|
this.config = config;
|
|
20
18
|
this.model = data;
|
|
21
19
|
this.result = this.config.defaultValue || undefined;
|
|
@@ -43,4 +41,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
43
41
|
type: Inject,
|
|
44
42
|
args: [MODAL_CONFIG]
|
|
45
43
|
}] }] });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQtbW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9zZXJ2aWNlcy9tb2RhbC1zZXJ2aWNlL2NvbXBvbmVudHMvYWxlcnQtbW9kYWwvYWxlcnQtbW9kYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9zZXJ2aWNlcy9tb2RhbC1zZXJ2aWNlL2NvbXBvbmVudHMvYWxlcnQtbW9kYWwvYWxlcnQtbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFdEUsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFFeEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZDQUE2QyxDQUFDOzs7OztBQW1CM0UsTUFBTSxPQUFPLG1CQUFvQixTQUFRLHFCQUF1RTtJQUlwRztJQUVxQjtJQUwvQixLQUFLLENBQTJCO0lBRWhDLFlBQ1UsU0FBNEMsRUFDaEMsSUFBNkIsRUFDcEIsTUFBeUI7UUFFdEQsS0FBSyxFQUFFLENBQUM7UUFKQSxjQUFTLEdBQVQsU0FBUyxDQUFtQztRQUV2QixXQUFNLEdBQU4sTUFBTSxDQUFtQjtRQUd0RCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxJQUFJLFNBQVMsQ0FBQTtJQUNyRCxDQUFDO0lBRU0sRUFBRTtRQUNQLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFBO1FBQ2xCLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRU0sS0FBSztRQUNWLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNwQyxDQUFDO3dHQXBCVSxtQkFBbUIsMENBS3BCLFVBQVUsYUFDVixZQUFZOzRGQU5YLG1CQUFtQiwwR0N6QmhDLDRoQkFvQkEseUREREksV0FBVyxxVkFDWCxZQUFZOzs0RkFLSCxtQkFBbUI7a0JBVi9CLFNBQVM7K0JBQ0UseUJBQXlCLGNBQ3ZCLElBQUksV0FDUDt3QkFDUCxXQUFXO3dCQUNYLFlBQVk7cUJBQ2I7OzBCQVNFLE1BQU07MkJBQUMsVUFBVTs7MEJBQ2pCLE1BQU07MkJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1vZGFsU2VydmljZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2hlbHBlcnMvbW9kYWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTW9kYWxSZWYgfSBmcm9tICcuLi8uLi9oZWxwZXJzL21vZGFsLXJlZic7XHJcbmltcG9ydCB7IE1PREFMX0NPTkZJRywgTU9EQUxfREFUQSB9IGZyb20gJy4uLy4uL2hlbHBlcnMvbW9kYWwtdG9rZW5zJztcclxuaW1wb3J0IHsgTW9kYWxNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi9jb21wb25lbnRzL21vZGFsL21vZGFsLm1vZHVsZSc7XHJcbmltcG9ydCB7IE1vZGFsQ3VzdG9tQ29uZmlnIH0gZnJvbSAnLi4vLi4vbW9kZWxzL21vZGFsLWNvbmZpZy5tb2RlbCc7XHJcbmltcG9ydCB7IEJ1dHRvbk1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5tb2R1bGUnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBEZWZhdWx0QWxlcnRNb2RhbFBhcmFtcyB7XHJcbiAgdGl0bGU6IHN0cmluZztcclxuICBtZXNzYWdlOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIERlZmF1bHRBbGVydE1vZGFsUmVzdWx0ID0gYm9vbGVhbiB8IHVuZGVmaW5lZFxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtcngtZGVmYXVsdC1hbGVydC1tb2RhbCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBNb2RhbE1vZHVsZSxcclxuICAgIEJ1dHRvbk1vZHVsZVxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2FsZXJ0LW1vZGFsLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vYWxlcnQtbW9kYWwuY29tcG9uZW50Lmxlc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBbGVydE1vZGFsQ29tcG9uZW50IGV4dGVuZHMgTW9kYWxTZXJ2aWNlQ29tcG9uZW50PERlZmF1bHRBbGVydE1vZGFsUGFyYW1zLCBEZWZhdWx0QWxlcnRNb2RhbFJlc3VsdD4ge1xyXG4gIG1vZGVsITogRGVmYXVsdEFsZXJ0TW9kYWxQYXJhbXM7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBkaWFsb2dSZWY6IE1vZGFsUmVmPERlZmF1bHRBbGVydE1vZGFsUmVzdWx0PixcclxuICAgIEBJbmplY3QoTU9EQUxfREFUQSkgZGF0YTogRGVmYXVsdEFsZXJ0TW9kYWxQYXJhbXMsXHJcbiAgICBASW5qZWN0KE1PREFMX0NPTkZJRykgcHVibGljIGNvbmZpZzogTW9kYWxDdXN0b21Db25maWcsXHJcbiAgKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgdGhpcy5tb2RlbCA9IGRhdGE7XHJcbiAgICB0aGlzLnJlc3VsdCA9IHRoaXMuY29uZmlnLmRlZmF1bHRWYWx1ZSB8fCB1bmRlZmluZWRcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvaygpIHtcclxuICAgIHRoaXMucmVzdWx0ID0gdHJ1ZVxyXG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UodGhpcy5yZXN1bHQpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsb3NlKCkge1xyXG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UodGhpcy5yZXN1bHQpO1xyXG4gIH1cclxufVxyXG4iLCI8bXJ4LW1vZGFsXHJcbiAgW2N1c3RvbUNsYXNzZXNdPVwiY29uZmlnLmN1c3RvbUNsYXNzZXMgfHwgJydcIlxyXG4gIFt0aXRsZV09XCJtb2RlbC50aXRsZVwiXHJcbiAgW21lc3NhZ2VdPVwibW9kZWwubWVzc2FnZVwiXHJcbiAgW2NvbG9yXT1cImNvbmZpZy5jb2xvciB8fCAnZGVmYXVsdCdcIlxyXG4gIHNpemU9XCJzbWFsbFwiXHJcbiAgKGNsb3NlKT1cImNsb3NlKClcIlxyXG4gIChvayk9XCJvaygpXCJcclxuPlxyXG4gIDxuZy10ZW1wbGF0ZSAjZm9vdGVyQ29udGVudD5cclxuICAgIDxtcngtYnV0dG9uXHJcbiAgICAgIFt0eXBlXT1cIidwcmltYXJ5J1wiXHJcbiAgICAgIFtzaXplXT1cIidtZWRpdW0nXCJcclxuICAgICAgW2NvbG9yXT1cImNvbmZpZy5jb2xvciB8fCAnZGVmYXVsdCdcIlxyXG4gICAgICAoY2xpY2spPVwib2soKVwiXHJcbiAgICA+XHJcbiAgICAgIHt7IGNvbmZpZy5va1RleHQgfHwgJ9Ce0LonIH19XHJcbiAgICA8L21yeC1idXR0b24+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuPC9tcngtbW9kYWw+XHJcbiJdfQ==
|