@ecodev/natural 54.0.2 → 55.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/classes/abstract-detail.mjs +26 -4
- package/esm2022/lib/classes/abstract-editable-list.mjs +2 -2
- package/esm2022/lib/classes/validators.mjs +1 -1
- package/esm2022/lib/modules/avatar/component/avatar.component.mjs +5 -4
- package/esm2022/lib/modules/columns-picker/columns-picker.component.mjs +11 -13
- package/esm2022/lib/modules/common/public-api.mjs +1 -1
- package/esm2022/lib/modules/common/services/seo.service.mjs +1 -1
- package/esm2022/lib/modules/detail-header/detail-header.component.mjs +7 -6
- package/esm2022/lib/modules/dropdown-components/type-boolean/type-boolean.component.mjs +6 -5
- package/esm2022/lib/modules/dropdown-components/type-date/type-date.component.mjs +8 -8
- package/esm2022/lib/modules/dropdown-components/type-date-range/type-date-range.component.mjs +5 -4
- package/esm2022/lib/modules/dropdown-components/type-hierarchic-selector/type-hierarchic-selector.component.mjs +5 -5
- package/esm2022/lib/modules/dropdown-components/type-natural-select/type-natural-select.component.mjs +5 -5
- package/esm2022/lib/modules/dropdown-components/type-number/type-number.component.mjs +6 -6
- package/esm2022/lib/modules/dropdown-components/type-options/type-options.component.mjs +6 -5
- package/esm2022/lib/modules/dropdown-components/type-select/type-select.component.mjs +9 -9
- package/esm2022/lib/modules/dropdown-components/type-text/type-text.component.mjs +5 -4
- package/esm2022/lib/modules/file/component/file.component.mjs +6 -6
- package/esm2022/lib/modules/fixed-button-detail/fixed-button-detail.component.mjs +6 -5
- package/esm2022/lib/modules/hierarchic-selector/classes/hierarchic-configuration.mjs +1 -1
- package/esm2022/lib/modules/hierarchic-selector/hierarchic-selector/hierarchic-selector.component.mjs +11 -12
- package/esm2022/lib/modules/icon/icon.module.mjs +5 -4
- package/esm2022/lib/modules/relations/relations.component.mjs +11 -11
- package/esm2022/lib/modules/search/dropdown-container/dropdown-container.component.mjs +6 -5
- package/esm2022/lib/modules/search/facet-selector/facet-selector.component.mjs +6 -5
- package/esm2022/lib/modules/search/group/group.component.mjs +5 -4
- package/esm2022/lib/modules/search/input/input.component.mjs +9 -8
- package/esm2022/lib/modules/search/search/search.component.mjs +9 -11
- package/esm2022/lib/modules/select/select/select.component.mjs +12 -14
- package/esm2022/lib/modules/select/select-enum/select-enum.component.mjs +5 -6
- package/esm2022/lib/modules/select/select-hierarchic/select-hierarchic.component.mjs +8 -7
- package/esm2022/lib/modules/sidenav/sidenav-container/sidenav-container.component.mjs +5 -4
- package/esm2022/lib/modules/stamp/stamp.component.mjs +5 -4
- package/esm2022/lib/modules/table-button/table-button.component.mjs +7 -6
- package/esm2022/lib/services/abstract-model.service.mjs +14 -9
- package/esm2022/lib/types/types.mjs +1 -1
- package/esm2022/public-api.mjs +1 -2
- package/fesm2022/ecodev-natural.mjs +127 -118
- package/fesm2022/ecodev-natural.mjs.map +1 -1
- package/lib/classes/abstract-detail.d.ts +29 -5
- package/lib/classes/validators.d.ts +2 -2
- package/lib/modules/common/public-api.d.ts +1 -1
- package/lib/modules/common/services/seo.service.d.ts +10 -0
- package/lib/modules/dropdown-components/type-hierarchic-selector/type-hierarchic-selector.component.d.ts +2 -3
- package/lib/modules/dropdown-components/type-natural-select/type-natural-select.component.d.ts +3 -4
- package/lib/modules/hierarchic-selector/classes/hierarchic-configuration.d.ts +3 -5
- package/lib/modules/icon/icon.module.d.ts +4 -1
- package/lib/services/abstract-model.service.d.ts +13 -6
- package/lib/types/types.d.ts +10 -0
- package/package.json +1 -1
- package/public-api.d.ts +1 -1
|
@@ -3,7 +3,7 @@ import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
|
3
3
|
import { AbstractSelect } from '../abstract-select.component';
|
|
4
4
|
import { NaturalCapitalizePipe } from '../../common/pipes/capitalize.pipe';
|
|
5
5
|
import { MatOptionModule } from '@angular/material/core';
|
|
6
|
-
import {
|
|
6
|
+
import { CommonModule } from '@angular/common';
|
|
7
7
|
import { MatSelectModule } from '@angular/material/select';
|
|
8
8
|
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
9
9
|
import * as i0 from "@angular/core";
|
|
@@ -12,6 +12,7 @@ import * as i2 from "@angular/forms";
|
|
|
12
12
|
import * as i3 from "@angular/material/form-field";
|
|
13
13
|
import * as i4 from "@angular/material/select";
|
|
14
14
|
import * as i5 from "@angular/material/core";
|
|
15
|
+
import * as i6 from "@angular/common";
|
|
15
16
|
export class NaturalSelectEnumComponent extends AbstractSelect {
|
|
16
17
|
constructor(enumService, ngControl) {
|
|
17
18
|
super(ngControl);
|
|
@@ -29,7 +30,7 @@ export class NaturalSelectEnumComponent extends AbstractSelect {
|
|
|
29
30
|
throw new Error('This should never be called');
|
|
30
31
|
}
|
|
31
32
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: NaturalSelectEnumComponent, deps: [{ token: i1.NaturalEnumService }, { token: i2.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
32
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: NaturalSelectEnumComponent, isStandalone: true, selector: "natural-select-enum", inputs: { enumName: "enumName", nullLabel: "nullLabel", optionDisabled: "optionDisabled", multiple: "multiple" }, usesInheritance: true, ngImport: i0, template: "<mat-form-field>\n <mat-label>{{ placeholder }}</mat-label>\n <mat-select\n (selectionChange)=\"propagateValue($event.value)\"\n [formControl]=\"internalCtrl\"\n (blur)=\"onBlur()\"\n [errorStateMatcher]=\"matcher\"\n [multiple]=\"multiple\"\n >\n <mat-option *ngIf=\"nullLabel\" [value]=\"null\">{{ nullLabel }}</mat-option>\n <mat-option\n *ngFor=\"let item of items | async\"\n [value]=\"item.value\"\n [disabled]=\"optionDisabled ? optionDisabled(item) : false\"\n >\n {{ item.name | capitalize }}\n </mat-option>\n </mat-select>\n\n <mat-error *ngIf=\"hasRequiredError()\" i18n>Ce champ est requis</mat-error></mat-form-field\n>\n", styles: [":host{display:flex;flex-direction:column}\n"], dependencies: [{ kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i4.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "panelWidth", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type:
|
|
33
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: NaturalSelectEnumComponent, isStandalone: true, selector: "natural-select-enum", inputs: { enumName: "enumName", nullLabel: "nullLabel", optionDisabled: "optionDisabled", multiple: "multiple" }, usesInheritance: true, ngImport: i0, template: "<mat-form-field>\n <mat-label>{{ placeholder }}</mat-label>\n <mat-select\n (selectionChange)=\"propagateValue($event.value)\"\n [formControl]=\"internalCtrl\"\n (blur)=\"onBlur()\"\n [errorStateMatcher]=\"matcher\"\n [multiple]=\"multiple\"\n >\n <mat-option *ngIf=\"nullLabel\" [value]=\"null\">{{ nullLabel }}</mat-option>\n <mat-option\n *ngFor=\"let item of items | async\"\n [value]=\"item.value\"\n [disabled]=\"optionDisabled ? optionDisabled(item) : false\"\n >\n {{ item.name | capitalize }}\n </mat-option>\n </mat-select>\n\n <mat-error *ngIf=\"hasRequiredError()\" i18n>Ce champ est requis</mat-error></mat-form-field\n>\n", styles: [":host{display:flex;flex-direction:column}\n"], dependencies: [{ kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i4.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "panelWidth", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "ngmodule", type: MatOptionModule }, { kind: "pipe", type: NaturalCapitalizePipe, name: "capitalize" }] }); }
|
|
33
34
|
}
|
|
34
35
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: NaturalSelectEnumComponent, decorators: [{
|
|
35
36
|
type: Component,
|
|
@@ -38,10 +39,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImpor
|
|
|
38
39
|
MatSelectModule,
|
|
39
40
|
FormsModule,
|
|
40
41
|
ReactiveFormsModule,
|
|
41
|
-
|
|
42
|
+
CommonModule,
|
|
42
43
|
MatOptionModule,
|
|
43
|
-
NgFor,
|
|
44
|
-
AsyncPipe,
|
|
45
44
|
NaturalCapitalizePipe,
|
|
46
45
|
], template: "<mat-form-field>\n <mat-label>{{ placeholder }}</mat-label>\n <mat-select\n (selectionChange)=\"propagateValue($event.value)\"\n [formControl]=\"internalCtrl\"\n (blur)=\"onBlur()\"\n [errorStateMatcher]=\"matcher\"\n [multiple]=\"multiple\"\n >\n <mat-option *ngIf=\"nullLabel\" [value]=\"null\">{{ nullLabel }}</mat-option>\n <mat-option\n *ngFor=\"let item of items | async\"\n [value]=\"item.value\"\n [disabled]=\"optionDisabled ? optionDisabled(item) : false\"\n >\n {{ item.name | capitalize }}\n </mat-option>\n </mat-select>\n\n <mat-error *ngIf=\"hasRequiredError()\" i18n>Ce champ est requis</mat-error></mat-form-field\n>\n", styles: [":host{display:flex;flex-direction:column}\n"] }]
|
|
47
46
|
}], ctorParameters: function () { return [{ type: i1.NaturalEnumService }, { type: i2.NgControl, decorators: [{
|
|
@@ -58,4 +57,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImpor
|
|
|
58
57
|
}], multiple: [{
|
|
59
58
|
type: Input
|
|
60
59
|
}] } });
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWVudW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvc2VsZWN0L3NlbGVjdC1lbnVtL3NlbGVjdC1lbnVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL3NlbGVjdC9zZWxlY3QtZW51bS9zZWxlY3QtZW51bS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBVSxRQUFRLEVBQUUsSUFBSSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFBa0MsV0FBVyxFQUFFLG1CQUFtQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFHakcsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDOzs7Ozs7OztBQW1CaEUsTUFBTSxPQUFPLDBCQUEyQixTQUFRLGNBQW9CO0lBdUJoRSxZQUNxQixXQUErQixFQUM1QixTQUEyQjtRQUUvQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7UUFIQSxnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFScEQ7O1dBRUc7UUFDYSxhQUFRLEdBQUcsS0FBSyxDQUFDO0lBU2pDLENBQUM7SUFFZSxRQUFRO1FBQ3BCLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRU0sWUFBWTtRQUNmLE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQztJQUNuRCxDQUFDOzhHQXJDUSwwQkFBMEI7a0dBQTFCLDBCQUEwQix3TkM1QnZDLHV2QkFxQkEsb0dERlEsa0JBQWtCLHVZQUNsQixlQUFlLHVUQUNmLFdBQVcsc0lBQ1gsbUJBQW1CLGlOQUNuQixZQUFZLG9UQUNaLGVBQWUsMEJBQ2YscUJBQXFCOzsyRkFHaEIsMEJBQTBCO2tCQWZ0QyxTQUFTOytCQUNJLHFCQUFxQixjQUduQixJQUFJLFdBQ1A7d0JBQ0wsa0JBQWtCO3dCQUNsQixlQUFlO3dCQUNmLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixZQUFZO3dCQUNaLGVBQWU7d0JBQ2YscUJBQXFCO3FCQUN4Qjs7MEJBMkJJLFFBQVE7OzBCQUFJLElBQUk7NENBckJXLFFBQVE7c0JBQXZDLEtBQUs7dUJBQUMsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDO2dCQUtQLFNBQVM7c0JBQXhCLEtBQUs7Z0JBS1UsY0FBYztzQkFBN0IsS0FBSztnQkFLVSxRQUFRO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIElucHV0LCBPbkluaXQsIE9wdGlvbmFsLCBTZWxmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29udHJvbFZhbHVlQWNjZXNzb3IsIE5nQ29udHJvbCwgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0lFbnVtLCBOYXR1cmFsRW51bVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2VudW0uc2VydmljZSc7XG5pbXBvcnQge0Fic3RyYWN0U2VsZWN0fSBmcm9tICcuLi9hYnN0cmFjdC1zZWxlY3QuY29tcG9uZW50JztcbmltcG9ydCB7TmF0dXJhbENhcGl0YWxpemVQaXBlfSBmcm9tICcuLi8uLi9jb21tb24vcGlwZXMvY2FwaXRhbGl6ZS5waXBlJztcbmltcG9ydCB7TWF0T3B0aW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtNYXRTZWxlY3RNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XG5pbXBvcnQge01hdEZvcm1GaWVsZE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5cbnR5cGUgViA9IElFbnVtWyd2YWx1ZSddIHwgSUVudW1bJ3ZhbHVlJ11bXTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduYXR1cmFsLXNlbGVjdC1lbnVtJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2VsZWN0LWVudW0uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3NlbGVjdC1lbnVtLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICAgICAgTWF0U2VsZWN0TW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBNYXRPcHRpb25Nb2R1bGUsXG4gICAgICAgIE5hdHVyYWxDYXBpdGFsaXplUGlwZSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBOYXR1cmFsU2VsZWN0RW51bUNvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0U2VsZWN0PFYsIFY+IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gICAgLyoqXG4gICAgICogVGhlIG5hbWUgb2YgdGhlIGVudW0gdHlwZSwgZWc6IGBcIkFjdGlvblN0YXR1c1wiYFxuICAgICAqL1xuICAgIEBJbnB1dCh7cmVxdWlyZWQ6IHRydWV9KSBwdWJsaWMgZW51bU5hbWUhOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBJZiBnaXZlbiBhbiBleHRyYSBvcHRpb24gaXMgYWRkZWQgdG8gc2VsZWN0IGBudWxsYCB3aXRoIGdpdmVuIGxhYmVsXG4gICAgICovXG4gICAgQElucHV0KCkgcHVibGljIG51bGxMYWJlbD86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIEZ1bmN0aW9ucyB0aGF0IHJlY2VpdmVzIGFuIGVudW0gdmFsdWUgYW5kIHJldHVybnMgd2hldGhlciB0aGF0IHZhbHVlIGlzIGRpc2FibGVkXG4gICAgICovXG4gICAgQElucHV0KCkgcHVibGljIG9wdGlvbkRpc2FibGVkPzogKGl0ZW06IElFbnVtKSA9PiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogV2hldGhlciB0aGUgdXNlciBzaG91bGQgYmUgYWxsb3dlZCB0byBzZWxlY3QgbXVsdGlwbGUgb3B0aW9uc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyBtdWx0aXBsZSA9IGZhbHNlO1xuXG4gICAgcHVibGljIGl0ZW1zPzogT2JzZXJ2YWJsZTxJRW51bVtdPjtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBlbnVtU2VydmljZTogTmF0dXJhbEVudW1TZXJ2aWNlLFxuICAgICAgICBAT3B0aW9uYWwoKSBAU2VsZigpIG5nQ29udHJvbDogTmdDb250cm9sIHwgbnVsbCxcbiAgICApIHtcbiAgICAgICAgc3VwZXIobmdDb250cm9sKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIHRoaXMuaXRlbXMgPSB0aGlzLmVudW1TZXJ2aWNlLmdldCh0aGlzLmVudW1OYW1lKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0RGlzcGxheUZuKCk6IChpdGVtOiBWIHwgbnVsbCkgPT4gc3RyaW5nIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGlzIHNob3VsZCBuZXZlciBiZSBjYWxsZWQnKTtcbiAgICB9XG59XG4iLCI8bWF0LWZvcm0tZmllbGQ+XG4gICAgPG1hdC1sYWJlbD57eyBwbGFjZWhvbGRlciB9fTwvbWF0LWxhYmVsPlxuICAgIDxtYXQtc2VsZWN0XG4gICAgICAgIChzZWxlY3Rpb25DaGFuZ2UpPVwicHJvcGFnYXRlVmFsdWUoJGV2ZW50LnZhbHVlKVwiXG4gICAgICAgIFtmb3JtQ29udHJvbF09XCJpbnRlcm5hbEN0cmxcIlxuICAgICAgICAoYmx1cik9XCJvbkJsdXIoKVwiXG4gICAgICAgIFtlcnJvclN0YXRlTWF0Y2hlcl09XCJtYXRjaGVyXCJcbiAgICAgICAgW211bHRpcGxlXT1cIm11bHRpcGxlXCJcbiAgICA+XG4gICAgICAgIDxtYXQtb3B0aW9uICpuZ0lmPVwibnVsbExhYmVsXCIgW3ZhbHVlXT1cIm51bGxcIj57eyBudWxsTGFiZWwgfX08L21hdC1vcHRpb24+XG4gICAgICAgIDxtYXQtb3B0aW9uXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtcyB8IGFzeW5jXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJpdGVtLnZhbHVlXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJvcHRpb25EaXNhYmxlZCA/IG9wdGlvbkRpc2FibGVkKGl0ZW0pIDogZmFsc2VcIlxuICAgICAgICA+XG4gICAgICAgICAgICB7eyBpdGVtLm5hbWUgfCBjYXBpdGFsaXplIH19XG4gICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICA8L21hdC1zZWxlY3Q+XG5cbiAgICA8bWF0LWVycm9yICpuZ0lmPVwiaGFzUmVxdWlyZWRFcnJvcigpXCIgaTE4bj5DZSBjaGFtcCBlc3QgcmVxdWlzPC9tYXQtZXJyb3I+PC9tYXQtZm9ybS1maWVsZFxuPlxuIl19
|
|
@@ -6,7 +6,7 @@ import { MatTooltipModule } from '@angular/material/tooltip';
|
|
|
6
6
|
import { MatButtonModule } from '@angular/material/button';
|
|
7
7
|
import { NaturalIconDirective } from '../../icon/icon.directive';
|
|
8
8
|
import { MatIconModule } from '@angular/material/icon';
|
|
9
|
-
import {
|
|
9
|
+
import { CommonModule } from '@angular/common';
|
|
10
10
|
import { MatInputModule } from '@angular/material/input';
|
|
11
11
|
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
12
12
|
import * as i0 from "@angular/core";
|
|
@@ -14,9 +14,10 @@ import * as i1 from "../../hierarchic-selector/public-api";
|
|
|
14
14
|
import * as i2 from "@angular/forms";
|
|
15
15
|
import * as i3 from "@angular/material/form-field";
|
|
16
16
|
import * as i4 from "@angular/material/input";
|
|
17
|
-
import * as i5 from "@angular/
|
|
18
|
-
import * as i6 from "@angular/material/
|
|
19
|
-
import * as i7 from "@angular/material/
|
|
17
|
+
import * as i5 from "@angular/common";
|
|
18
|
+
import * as i6 from "@angular/material/icon";
|
|
19
|
+
import * as i7 from "@angular/material/button";
|
|
20
|
+
import * as i8 from "@angular/material/tooltip";
|
|
20
21
|
function defaultDisplayFn(item) {
|
|
21
22
|
if (!item) {
|
|
22
23
|
return '';
|
|
@@ -117,7 +118,7 @@ export class NaturalSelectHierarchicComponent extends AbstractSelect {
|
|
|
117
118
|
return this.config?.filter(c => !!c.selectableAtKey)[0]?.selectableAtKey;
|
|
118
119
|
}
|
|
119
120
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: NaturalSelectHierarchicComponent, deps: [{ token: i1.NaturalHierarchicSelectorDialogService }, { token: i2.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
120
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: NaturalSelectHierarchicComponent, isStandalone: true, selector: "natural-select-hierarchic", inputs: { selectLabel: "selectLabel", config: "config", filters: "filters" }, usesInheritance: true, ngImport: i0, template: "<mat-form-field>\n <mat-label>{{ placeholder }}</mat-label>\n\n <!-- Input for hierarchical selector -->\n <input\n (blur)=\"blur.emit()\"\n (focus)=\"openDialog()\"\n [formControl]=\"internalCtrl\"\n [errorStateMatcher]=\"matcher\"\n aria-label=\"Recherche et s\u00E9lection\"\n i18n-aria-label\n matInput\n />\n\n <!-- Meta data -->\n <mat-icon *ngIf=\"showIcon\" [naturalIcon]=\"icon\" matIconPrefix></mat-icon>\n\n <!-- Clear button -->\n <div class=\"suffix-buttons\" matIconSuffix>\n <button\n (click)=\"clear(); $event.stopPropagation()\"\n *ngIf=\"internalCtrl.value && internalCtrl.enabled && !clearLabel\"\n mat-icon-button\n i18n-matTooltip\n matTooltip=\"D\u00E9s\u00E9lectionner\"\n >\n <mat-icon naturalIcon=\"close\"></mat-icon>\n </button>\n <button\n *ngIf=\"internalCtrl.value && navigateTo\"\n [routerLink]=\"navigateTo\"\n (click)=\"$event.stopPropagation()\"\n mat-icon-button\n i18n-matTooltip\n matTooltip=\"Naviguer vers\"\n >\n <mat-icon naturalIcon=\"open_in_browser\"></mat-icon>\n </button>\n </div>\n\n <mat-error *ngIf=\"hasRequiredError()\" i18n>Ce champ est requis</mat-error>\n</mat-form-field>\n\n<!-- Additional (un)select/(un)link buttons for more visual cohesion with natural-relations --><!-- [clearLabel] and/or [selectLabel] has to be given as attribute input -->\n<div *ngIf=\"showSelectButton() || showClearButton()\" class=\"external-buttons\">\n <button (click)=\"openDialog()\" *ngIf=\"showSelectButton()\" color=\"primary\" mat-flat-button>{{ selectLabel }}</button>\n <button (click)=\"clear()\" *ngIf=\"showClearButton()\" color=\"warn\" mat-button>{{ clearLabel }}</button>\n</div>\n", styles: [":host{display:flex;flex-direction:column}:host>*:not(:last-child){margin-bottom:20px}:host .suffix-buttons,:host .external-buttons{display:flex;flex-direction:row}:host .external-buttons{display:flex;flex-direction:row}:host .external-buttons>*:not(:last-child){margin-right:10px}\n"], dependencies: [{ kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type:
|
|
121
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: NaturalSelectHierarchicComponent, isStandalone: true, selector: "natural-select-hierarchic", inputs: { selectLabel: "selectLabel", config: "config", filters: "filters" }, usesInheritance: true, ngImport: i0, template: "<mat-form-field>\n <mat-label>{{ placeholder }}</mat-label>\n\n <!-- Input for hierarchical selector -->\n <input\n (blur)=\"blur.emit()\"\n (focus)=\"openDialog()\"\n [formControl]=\"internalCtrl\"\n [errorStateMatcher]=\"matcher\"\n aria-label=\"Recherche et s\u00E9lection\"\n i18n-aria-label\n matInput\n />\n\n <!-- Meta data -->\n <mat-icon *ngIf=\"showIcon\" [naturalIcon]=\"icon\" matIconPrefix></mat-icon>\n\n <!-- Clear button -->\n <div class=\"suffix-buttons\" matIconSuffix>\n <button\n (click)=\"clear(); $event.stopPropagation()\"\n *ngIf=\"internalCtrl.value && internalCtrl.enabled && !clearLabel\"\n mat-icon-button\n i18n-matTooltip\n matTooltip=\"D\u00E9s\u00E9lectionner\"\n >\n <mat-icon naturalIcon=\"close\"></mat-icon>\n </button>\n <button\n *ngIf=\"internalCtrl.value && navigateTo\"\n [routerLink]=\"navigateTo\"\n (click)=\"$event.stopPropagation()\"\n mat-icon-button\n i18n-matTooltip\n matTooltip=\"Naviguer vers\"\n >\n <mat-icon naturalIcon=\"open_in_browser\"></mat-icon>\n </button>\n </div>\n\n <mat-error *ngIf=\"hasRequiredError()\" i18n>Ce champ est requis</mat-error>\n</mat-form-field>\n\n<!-- Additional (un)select/(un)link buttons for more visual cohesion with natural-relations --><!-- [clearLabel] and/or [selectLabel] has to be given as attribute input -->\n<div *ngIf=\"showSelectButton() || showClearButton()\" class=\"external-buttons\">\n <button (click)=\"openDialog()\" *ngIf=\"showSelectButton()\" color=\"primary\" mat-flat-button>{{ selectLabel }}</button>\n <button (click)=\"clear()\" *ngIf=\"showClearButton()\" color=\"warn\" mat-button>{{ clearLabel }}</button>\n</div>\n", styles: [":host{display:flex;flex-direction:column}:host>*:not(:last-child){margin-bottom:20px}:host .suffix-buttons,:host .external-buttons{display:flex;flex-direction:row}:host .external-buttons{display:flex;flex-direction:row}:host .external-buttons>*:not(:last-child){margin-right:10px}\n"], dependencies: [{ kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NaturalIconDirective, selector: "mat-icon[naturalIcon]", inputs: ["naturalIcon", "size"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i7.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i7.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i8.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
|
|
121
122
|
}
|
|
122
123
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: NaturalSelectHierarchicComponent, decorators: [{
|
|
123
124
|
type: Component,
|
|
@@ -126,7 +127,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImpor
|
|
|
126
127
|
MatInputModule,
|
|
127
128
|
FormsModule,
|
|
128
129
|
ReactiveFormsModule,
|
|
129
|
-
|
|
130
|
+
CommonModule,
|
|
130
131
|
MatIconModule,
|
|
131
132
|
NaturalIconDirective,
|
|
132
133
|
MatButtonModule,
|
|
@@ -144,4 +145,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImpor
|
|
|
144
145
|
}], filters: [{
|
|
145
146
|
type: Input
|
|
146
147
|
}] } });
|
|
147
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWhpZXJhcmNoaWMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvc2VsZWN0L3NlbGVjdC1oaWVyYXJjaGljL3NlbGVjdC1oaWVyYXJjaGljLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL3NlbGVjdC9zZWxlY3QtaGllcmFyY2hpYy9zZWxlY3QtaGllcmFyY2hpYy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBcUIsUUFBUSxFQUFFLElBQUksRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQWtDLFdBQVcsRUFBRSxtQkFBbUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBVWpHLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQy9ELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDckMsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDOzs7Ozs7Ozs7QUFFaEUsU0FBUyxnQkFBZ0IsQ0FBQyxJQUFvQjtJQUMxQyxJQUFJLENBQUMsSUFBSSxFQUFFO1FBQ1AsT0FBTyxFQUFFLENBQUM7S0FDYjtJQUVELE9BQU8sSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUM7QUFDdEUsQ0FBQztBQUVEOzs7Ozs7Ozs7R0FTRztBQW1CSCxNQUFNLE9BQU8sZ0NBQ1QsU0FBUSxjQUErQjtJQStCdkMsWUFDcUIsK0JBQXVFLEVBQ3BFLFNBQTJCO1FBRS9DLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUhBLG9DQUErQixHQUEvQiwrQkFBK0IsQ0FBd0M7UUF4QjVGOzs7O1dBSUc7UUFDYSxXQUFNLEdBQTRDLElBQUksQ0FBQztRQU92RTs7V0FFRztRQUNLLFVBQUssR0FBbUIsSUFBSSxDQUFDO1FBRXJDOzs7V0FHRztRQUNLLG1CQUFjLEdBQUcsS0FBSyxDQUFDO0lBTy9CLENBQUM7SUFFRDs7T0FFRztJQUNJLFlBQVk7UUFDZixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDbEIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO1NBQzNCO1FBRUQsT0FBTyxnQkFBZ0IsQ0FBQztJQUM1QixDQUFDO0lBRUQ7O09BRUc7SUFDYSxVQUFVLENBQUMsS0FBOEI7UUFDckQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFnQixDQUFDO1FBQzlCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRU0sVUFBVTtRQUNiLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUU7WUFDNUIsT0FBTztTQUNWO1FBRUQsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3JCLE9BQU87U0FDVjtRQUVELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN4QyxJQUFJLENBQUMsV0FBVyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUM5QixPQUFPO1NBQ1Y7UUFFRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztRQUUzQixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDaEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1NBQ3BCO1FBRUQsTUFBTSxRQUFRLEdBQTRCLEVBQUUsQ0FBQztRQUU3QyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFO1lBQ3pCLFFBQVEsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN4QztRQUVELE1BQU0sZ0JBQWdCLEdBQTJCO1lBQzdDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxNQUFNO1lBQzdCLG1CQUFtQixFQUFFLFFBQVE7WUFDN0IsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDL0IsUUFBUSxFQUFFLEtBQUs7U0FDbEIsQ0FBQztRQUVGLE1BQU0sV0FBVyxHQUFvQixFQUFDLFlBQVksRUFBRSxLQUFLLEVBQUMsQ0FBQztRQUUzRCxJQUFJLENBQUMsK0JBQStCO2FBQy9CLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxXQUFXLENBQUM7YUFDbkMsV0FBVyxFQUFFO2FBQ2IsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1lBQzVCLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxtQkFBbUIsRUFBRTtnQkFDdEMsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDO2dCQUM3QyxvREFBb0Q7Z0JBQ3BELE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDL0UsTUFBTSxlQUFlLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7Z0JBRWpGLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUM7Z0JBQ2pDLElBQUksQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDLENBQUM7YUFDeEM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFTSxnQkFBZ0I7UUFDbkIsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLE9BQU8sSUFBSSxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7SUFFTyxZQUFZO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLGVBQWUsQ0FBQztJQUM3RSxDQUFDOzhHQXBIUSxnQ0FBZ0M7a0dBQWhDLGdDQUFnQywwTEN6RDdDLG0zREFnREEsbVZESFEsa0JBQWtCLHlvQkFDbEIsY0FBYywwV0FDZCxXQUFXLHNaQUNYLG1CQUFtQixrTkFDbkIsSUFBSSw0RkFDSixhQUFhLG9MQUNiLG9CQUFvQixrR0FDcEIsZUFBZSx3YUFDZixnQkFBZ0IsK0hBQ2hCLFVBQVU7OzJGQUdMLGdDQUFnQztrQkFsQjVDLFNBQVM7K0JBQ0ksMkJBQTJCLGNBR3pCLElBQUksV0FDUDt3QkFDTCxrQkFBa0I7d0JBQ2xCLGNBQWM7d0JBQ2QsV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLElBQUk7d0JBQ0osYUFBYTt3QkFDYixvQkFBb0I7d0JBQ3BCLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixVQUFVO3FCQUNiOzswQkFvQ0ksUUFBUTs7MEJBQUksSUFBSTs0Q0EzQkwsV0FBVztzQkFBMUIsS0FBSztnQkFPVSxNQUFNO3NCQUFyQixLQUFLO2dCQUtVLE9BQU87c0JBQXRCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbCwgU2VsZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOZ0NvbnRyb2wsIEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge01hdERpYWxvZ0NvbmZpZ30gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7TGl0ZXJhbH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvdHlwZXMnO1xuaW1wb3J0IHtIaWVyYXJjaGljRmlsdGVyc0NvbmZpZ3VyYXRpb259IGZyb20gJy4uLy4uL2hpZXJhcmNoaWMtc2VsZWN0b3IvY2xhc3Nlcy9oaWVyYXJjaGljLWZpbHRlcnMtY29uZmlndXJhdGlvbic7XG5pbXBvcnQge1xuICAgIEhpZXJhcmNoaWNEaWFsb2dDb25maWcsXG4gICAgTmF0dXJhbEhpZXJhcmNoaWNDb25maWd1cmF0aW9uLFxuICAgIE5hdHVyYWxIaWVyYXJjaGljU2VsZWN0b3JEaWFsb2dTZXJ2aWNlLFxuICAgIE9yZ2FuaXplZE1vZGVsU2VsZWN0aW9uLFxufSBmcm9tICcuLi8uLi9oaWVyYXJjaGljLXNlbGVjdG9yL3B1YmxpYy1hcGknO1xuaW1wb3J0IHtBYnN0cmFjdFNlbGVjdH0gZnJvbSAnLi4vYWJzdHJhY3Qtc2VsZWN0LmNvbXBvbmVudCc7XG5pbXBvcnQge1JvdXRlckxpbmt9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge01hdFRvb2x0aXBNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuaW1wb3J0IHtNYXRCdXR0b25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQge05hdHVyYWxJY29uRGlyZWN0aXZlfSBmcm9tICcuLi8uLi9pY29uL2ljb24uZGlyZWN0aXZlJztcbmltcG9ydCB7TWF0SWNvbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQge05nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge01hdElucHV0TW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQge01hdEZvcm1GaWVsZE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5cbmZ1bmN0aW9uIGRlZmF1bHREaXNwbGF5Rm4oaXRlbTogTGl0ZXJhbCB8IG51bGwpOiBzdHJpbmcge1xuICAgIGlmICghaXRlbSkge1xuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgcmV0dXJuIGl0ZW0uZnVsbE5hbWUgfHwgaXRlbS5uYW1lIHx8IGl0ZW0uaWJhbiB8fCBpdGVtLmlkIHx8IGl0ZW07XG59XG5cbi8qKlxuICogRGVmYXVsdCB1c2FnZTpcbiAqIDxuYXR1cmFsLXNlbGVjdCBbY29uZmlnXT1cIm15Q29uZmlnXCIgWyhuZ01vZGVsKV09XCJhbWF6aW5nTW9kZWxcIlxuICogKG5nTW9kZWxDaGFuZ2UpPWFtYXppbmdDaGFuZ2VGbigkZXZlbnQpPjwvbmF0dXJhbC1zZWxlY3Q+XG4gKlxuICogWyhuZ01vZGVsKV0gYW5kIChuZ01vZGVsQ2hhbmdlKSBhcmUgb3B0aW9uYWxcbiAqXG4gKiBQbGFjZWhvbGRlciA6XG4gKiA8bmF0dXJhbC1zZWxlY3QgcGxhY2Vob2xkZXI9XCJhbWF6aW5nIHBsYWNlaG9sZGVyXCI+XG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmF0dXJhbC1zZWxlY3QtaGllcmFyY2hpYycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NlbGVjdC1oaWVyYXJjaGljLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zZWxlY3QtaGllcmFyY2hpYy5jb21wb25lbnQuc2NzcyddLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgICAgIE1hdElucHV0TW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgTmdJZixcbiAgICAgICAgTWF0SWNvbk1vZHVsZSxcbiAgICAgICAgTmF0dXJhbEljb25EaXJlY3RpdmUsXG4gICAgICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICAgICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICAgICAgUm91dGVyTGluayxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBOYXR1cmFsU2VsZWN0SGllcmFyY2hpY0NvbXBvbmVudFxuICAgIGV4dGVuZHMgQWJzdHJhY3RTZWxlY3Q8TGl0ZXJhbCwgc3RyaW5nPlxuICAgIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIENvbnRyb2xWYWx1ZUFjY2Vzc29yXG57XG4gICAgLyoqXG4gICAgICogSWYgcHJvdmlkZWQgY2F1c2UgYSBuZXcgc2VsZWN0IGJ1dHRvbiB0byBhcHBlYXJcbiAgICAgKi9cbiAgICBASW5wdXQoKSBwdWJsaWMgc2VsZWN0TGFiZWw/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBDb25maWd1cmF0aW9uIGZvciBoaWVyYXJjaGljIHJlbGF0aW9uc1xuICAgICAqXG4gICAgICogSXQgc2hvdWxkIGJlIGFuIGFycmF5IHdpdGggYXQgbGVhc3Qgb25lIGVsZW1lbnQgd2l0aCBgc2VsZWN0YWJsZUF0S2V5YCBjb25maWd1cmVkLCBvdGhlcndpc2UgdGhlIHNlbGVjdG9yIHdpbGwgbmV2ZXIgb3Blbi5cbiAgICAgKi9cbiAgICBASW5wdXQoKSBwdWJsaWMgY29uZmlnOiBOYXR1cmFsSGllcmFyY2hpY0NvbmZpZ3VyYXRpb25bXSB8IG51bGwgPSBudWxsO1xuXG4gICAgLyoqXG4gICAgICogRmlsdGVycyBmb3JtYXR0ZWQgZm9yIGhpZXJhcmNoaWMgc2VsZWN0b3JcbiAgICAgKi9cbiAgICBASW5wdXQoKSBwdWJsaWMgZmlsdGVycz86IEhpZXJhcmNoaWNGaWx0ZXJzQ29uZmlndXJhdGlvbjtcblxuICAgIC8qKlxuICAgICAqIFRoZSBzZWxlY3RlZCB2YWx1ZSBhcyBhbiBvYmplY3QuIFRoZSBpbnRlcm5hbCB2YWx1ZSBpcyBgaW50ZXJuYWxDdHJsLnZhbHVlYCwgYW5kIHRoYXQgaXMgYSBzdHJpbmcuXG4gICAgICovXG4gICAgcHJpdmF0ZSB2YWx1ZTogTGl0ZXJhbCB8IG51bGwgPSBudWxsO1xuXG4gICAgLyoqXG4gICAgICogT24gRmlyZWZveCwgdGhlIGNvbWJpbmF0aW9uIG9mIDxpbnB1dCAoZm9jdXMpPiBldmVudCBhbmQgZGlhbG9nIG9wZW5pbmcgY2F1c2Ugc29tZSBzdHJhbmdlIGJ1ZyB3aGVyZSBmb2N1cyBldmVudCBpcyBjYWxsZWQgbXVsdGlwbGVcbiAgICAgKiB0aW1lcyBUaGlzIHByZXZlbnRzIGl0LlxuICAgICAqL1xuICAgIHByaXZhdGUgbG9ja09wZW5EaWFsb2cgPSBmYWxzZTtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBoaWVyYXJjaGljU2VsZWN0b3JEaWFsb2dTZXJ2aWNlOiBOYXR1cmFsSGllcmFyY2hpY1NlbGVjdG9yRGlhbG9nU2VydmljZSxcbiAgICAgICAgQE9wdGlvbmFsKCkgQFNlbGYoKSBuZ0NvbnRyb2w6IE5nQ29udHJvbCB8IG51bGwsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKG5nQ29udHJvbCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVmVyeSBpbXBvcnRhbnQgdG8gcmV0dXJuIHNvbWV0aGluZywgYWJvdmUgYWxsIGlmIFtzZWxlY3RdPSdkaXNwbGF5ZWRWYWx1ZScgYXR0cmlidXRlIHZhbHVlIGlzIHVzZWRcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0RGlzcGxheUZuKCk6IChpdGVtOiBMaXRlcmFsIHwgbnVsbCkgPT4gc3RyaW5nIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzcGxheVdpdGgpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmRpc3BsYXlXaXRoO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGRlZmF1bHREaXNwbGF5Rm47XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogT3ZlcnJpZGUgcGFyZW50IGJlY2F1c2Ugb3VyIGludGVybmFsQ3RybCBzdG9yZSB0aGUgdGV4dHVhbCByZXByZXNlbnRhdGlvbiBhcyBzdHJpbmcgaW5zdGVhZCBvZiByYXcgTGl0ZXJhbFxuICAgICAqL1xuICAgIHB1YmxpYyBvdmVycmlkZSB3cml0ZVZhbHVlKHZhbHVlOiBMaXRlcmFsIHwgc3RyaW5nIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWUgYXMgTGl0ZXJhbDtcbiAgICAgICAgdGhpcy5pbnRlcm5hbEN0cmwuc2V0VmFsdWUodGhpcy5nZXREaXNwbGF5Rm4oKSh0aGlzLnZhbHVlKSk7XG4gICAgfVxuXG4gICAgcHVibGljIG9wZW5EaWFsb2coKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmludGVybmFsQ3RybC5kaXNhYmxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMubG9ja09wZW5EaWFsb2cpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHNlbGVjdEF0S2V5ID0gdGhpcy5nZXRTZWxlY3RLZXkoKTtcbiAgICAgICAgaWYgKCFzZWxlY3RBdEtleSB8fCAhdGhpcy5jb25maWcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubG9ja09wZW5EaWFsb2cgPSB0cnVlO1xuXG4gICAgICAgIGlmICh0aGlzLm9uVG91Y2hlZCkge1xuICAgICAgICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHNlbGVjdGVkOiBPcmdhbml6ZWRNb2RlbFNlbGVjdGlvbiA9IHt9O1xuXG4gICAgICAgIGlmICh0aGlzLmludGVybmFsQ3RybC52YWx1ZSkge1xuICAgICAgICAgICAgc2VsZWN0ZWRbc2VsZWN0QXRLZXldID0gW3RoaXMudmFsdWVdO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaGllcmFyY2hpY0NvbmZpZzogSGllcmFyY2hpY0RpYWxvZ0NvbmZpZyA9IHtcbiAgICAgICAgICAgIGhpZXJhcmNoaWNDb25maWc6IHRoaXMuY29uZmlnLFxuICAgICAgICAgICAgaGllcmFyY2hpY1NlbGVjdGlvbjogc2VsZWN0ZWQsXG4gICAgICAgICAgICBoaWVyYXJjaGljRmlsdGVyczogdGhpcy5maWx0ZXJzLFxuICAgICAgICAgICAgbXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IGRpYWxvZ0ZvY3VzOiBNYXREaWFsb2dDb25maWcgPSB7cmVzdG9yZUZvY3VzOiBmYWxzZX07XG5cbiAgICAgICAgdGhpcy5oaWVyYXJjaGljU2VsZWN0b3JEaWFsb2dTZXJ2aWNlXG4gICAgICAgICAgICAub3BlbihoaWVyYXJjaGljQ29uZmlnLCBkaWFsb2dGb2N1cylcbiAgICAgICAgICAgIC5hZnRlckNsb3NlZCgpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5sb2NrT3BlbkRpYWxvZyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIGlmIChyZXN1bHQgJiYgcmVzdWx0LmhpZXJhcmNoaWNTZWxlY3Rpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2VsZWN0aW9uID0gcmVzdWx0LmhpZXJhcmNoaWNTZWxlY3Rpb247XG4gICAgICAgICAgICAgICAgICAgIC8vIEZpbmQgdGhlIG9ubHkgc2VsZWN0aW9uIGFtb25nc3QgYWxsIHBvc3NpYmxlIGtleXNcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qga2V5V2l0aFNlbGVjdGlvbiA9IE9iamVjdC5rZXlzKHNlbGVjdGlvbikuZmluZChrZXkgPT4gc2VsZWN0aW9uW2tleV1bMF0pO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzaW5nbGVTZWxlY3Rpb24gPSBrZXlXaXRoU2VsZWN0aW9uID8gc2VsZWN0aW9uW2tleVdpdGhTZWxlY3Rpb25dWzBdIDogbnVsbDtcblxuICAgICAgICAgICAgICAgICAgICB0aGlzLndyaXRlVmFsdWUoc2luZ2xlU2VsZWN0aW9uKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wcm9wYWdhdGVWYWx1ZShzaW5nbGVTZWxlY3Rpb24pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzaG93U2VsZWN0QnV0dG9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISEodGhpcy5pbnRlcm5hbEN0cmw/LmVuYWJsZWQgJiYgdGhpcy5zZWxlY3RMYWJlbCAmJiB0aGlzLmdldFNlbGVjdEtleSgpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFNlbGVjdEtleSgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25maWc/LmZpbHRlcihjID0+ICEhYy5zZWxlY3RhYmxlQXRLZXkpWzBdPy5zZWxlY3RhYmxlQXRLZXk7XG4gICAgfVxufVxuIiwiPG1hdC1mb3JtLWZpZWxkPlxuICAgIDxtYXQtbGFiZWw+e3sgcGxhY2Vob2xkZXIgfX08L21hdC1sYWJlbD5cblxuICAgIDwhLS0gSW5wdXQgZm9yIGhpZXJhcmNoaWNhbCBzZWxlY3RvciAtLT5cbiAgICA8aW5wdXRcbiAgICAgICAgKGJsdXIpPVwiYmx1ci5lbWl0KClcIlxuICAgICAgICAoZm9jdXMpPVwib3BlbkRpYWxvZygpXCJcbiAgICAgICAgW2Zvcm1Db250cm9sXT1cImludGVybmFsQ3RybFwiXG4gICAgICAgIFtlcnJvclN0YXRlTWF0Y2hlcl09XCJtYXRjaGVyXCJcbiAgICAgICAgYXJpYS1sYWJlbD1cIlJlY2hlcmNoZSBldCBzw6lsZWN0aW9uXCJcbiAgICAgICAgaTE4bi1hcmlhLWxhYmVsXG4gICAgICAgIG1hdElucHV0XG4gICAgLz5cblxuICAgIDwhLS0gTWV0YSBkYXRhIC0tPlxuICAgIDxtYXQtaWNvbiAqbmdJZj1cInNob3dJY29uXCIgW25hdHVyYWxJY29uXT1cImljb25cIiBtYXRJY29uUHJlZml4PjwvbWF0LWljb24+XG5cbiAgICA8IS0tIENsZWFyIGJ1dHRvbiAtLT5cbiAgICA8ZGl2IGNsYXNzPVwic3VmZml4LWJ1dHRvbnNcIiBtYXRJY29uU3VmZml4PlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAoY2xpY2spPVwiY2xlYXIoKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgICAgICpuZ0lmPVwiaW50ZXJuYWxDdHJsLnZhbHVlICYmIGludGVybmFsQ3RybC5lbmFibGVkICYmICFjbGVhckxhYmVsXCJcbiAgICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgaTE4bi1tYXRUb29sdGlwXG4gICAgICAgICAgICBtYXRUb29sdGlwPVwiRMOpc8OpbGVjdGlvbm5lclwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBuYXR1cmFsSWNvbj1cImNsb3NlXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICpuZ0lmPVwiaW50ZXJuYWxDdHJsLnZhbHVlICYmIG5hdmlnYXRlVG9cIlxuICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwibmF2aWdhdGVUb1wiXG4gICAgICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgaTE4bi1tYXRUb29sdGlwXG4gICAgICAgICAgICBtYXRUb29sdGlwPVwiTmF2aWd1ZXIgdmVyc1wiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBuYXR1cmFsSWNvbj1cIm9wZW5faW5fYnJvd3NlclwiPjwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuXG4gICAgPG1hdC1lcnJvciAqbmdJZj1cImhhc1JlcXVpcmVkRXJyb3IoKVwiIGkxOG4+Q2UgY2hhbXAgZXN0IHJlcXVpczwvbWF0LWVycm9yPlxuPC9tYXQtZm9ybS1maWVsZD5cblxuPCEtLSAgICBBZGRpdGlvbmFsICh1bilzZWxlY3QvKHVuKWxpbmsgYnV0dG9ucyBmb3IgbW9yZSB2aXN1YWwgY29oZXNpb24gd2l0aCBuYXR1cmFsLXJlbGF0aW9ucyAtLT48IS0tIFtjbGVhckxhYmVsXSBhbmQvb3IgW3NlbGVjdExhYmVsXSBoYXMgdG8gYmUgZ2l2ZW4gYXMgYXR0cmlidXRlIGlucHV0IC0tPlxuPGRpdiAqbmdJZj1cInNob3dTZWxlY3RCdXR0b24oKSB8fCBzaG93Q2xlYXJCdXR0b24oKVwiIGNsYXNzPVwiZXh0ZXJuYWwtYnV0dG9uc1wiPlxuICAgIDxidXR0b24gKGNsaWNrKT1cIm9wZW5EaWFsb2coKVwiICpuZ0lmPVwic2hvd1NlbGVjdEJ1dHRvbigpXCIgY29sb3I9XCJwcmltYXJ5XCIgbWF0LWZsYXQtYnV0dG9uPnt7IHNlbGVjdExhYmVsIH19PC9idXR0b24+XG4gICAgPGJ1dHRvbiAoY2xpY2spPVwiY2xlYXIoKVwiICpuZ0lmPVwic2hvd0NsZWFyQnV0dG9uKClcIiBjb2xvcj1cIndhcm5cIiBtYXQtYnV0dG9uPnt7IGNsZWFyTGFiZWwgfX08L2J1dHRvbj5cbjwvZGl2PlxuIl19
|
|
148
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWhpZXJhcmNoaWMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvc2VsZWN0L3NlbGVjdC1oaWVyYXJjaGljL3NlbGVjdC1oaWVyYXJjaGljLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL3NlbGVjdC9zZWxlY3QtaGllcmFyY2hpYy9zZWxlY3QtaGllcmFyY2hpYy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBcUIsUUFBUSxFQUFFLElBQUksRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQWtDLFdBQVcsRUFBRSxtQkFBbUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBVWpHLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQy9ELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDOzs7Ozs7Ozs7O0FBRWhFLFNBQVMsZ0JBQWdCLENBQUMsSUFBb0I7SUFDMUMsSUFBSSxD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c291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3B0aW9uYWwsIFNlbGZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDb250cm9sVmFsdWVBY2Nlc3NvciwgTmdDb250cm9sLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtNYXREaWFsb2dDb25maWd9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQge0xpdGVyYWx9IGZyb20gJy4uLy4uLy4uL3R5cGVzL3R5cGVzJztcbmltcG9ydCB7SGllcmFyY2hpY0ZpbHRlcnNDb25maWd1cmF0aW9ufSBmcm9tICcuLi8uLi9oaWVyYXJjaGljLXNlbGVjdG9yL2NsYXNzZXMvaGllcmFyY2hpYy1maWx0ZXJzLWNvbmZpZ3VyYXRpb24nO1xuaW1wb3J0IHtcbiAgICBIaWVyYXJjaGljRGlhbG9nQ29uZmlnLFxuICAgIE5hdHVyYWxIaWVyYXJjaGljQ29uZmlndXJhdGlvbixcbiAgICBOYXR1cmFsSGllcmFyY2hpY1NlbGVjdG9yRGlhbG9nU2VydmljZSxcbiAgICBPcmdhbml6ZWRNb2RlbFNlbGVjdGlvbixcbn0gZnJvbSAnLi4vLi4vaGllcmFyY2hpYy1zZWxlY3Rvci9wdWJsaWMtYXBpJztcbmltcG9ydCB7QWJzdHJhY3RTZWxlY3R9IGZyb20gJy4uL2Fic3RyYWN0LXNlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHtSb3V0ZXJMaW5rfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtNYXRUb29sdGlwTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7TWF0QnV0dG9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHtOYXR1cmFsSWNvbkRpcmVjdGl2ZX0gZnJvbSAnLi4vLi4vaWNvbi9pY29uLmRpcmVjdGl2ZSc7XG5pbXBvcnQge01hdEljb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge01hdElucHV0TW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQge01hdEZvcm1GaWVsZE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5cbmZ1bmN0aW9uIGRlZmF1bHREaXNwbGF5Rm4oaXRlbTogTGl0ZXJhbCB8IG51bGwpOiBzdHJpbmcge1xuICAgIGlmICghaXRlbSkge1xuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgcmV0dXJuIGl0ZW0uZnVsbE5hbWUgfHwgaXRlbS5uYW1lIHx8IGl0ZW0uaWJhbiB8fCBpdGVtLmlkIHx8IGl0ZW07XG59XG5cbi8qKlxuICogRGVmYXVsdCB1c2FnZTpcbiAqIDxuYXR1cmFsLXNlbGVjdCBbY29uZmlnXT1cIm15Q29uZmlnXCIgWyhuZ01vZGVsKV09XCJhbWF6aW5nTW9kZWxcIlxuICogKG5nTW9kZWxDaGFuZ2UpPWFtYXppbmdDaGFuZ2VGbigkZXZlbnQpPjwvbmF0dXJhbC1zZWxlY3Q+XG4gKlxuICogWyhuZ01vZGVsKV0gYW5kIChuZ01vZGVsQ2hhbmdlKSBhcmUgb3B0aW9uYWxcbiAqXG4gKiBQbGFjZWhvbGRlciA6XG4gKiA8bmF0dXJhbC1zZWxlY3QgcGxhY2Vob2xkZXI9XCJhbWF6aW5nIHBsYWNlaG9sZGVyXCI+XG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmF0dXJhbC1zZWxlY3QtaGllcmFyY2hpYycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NlbGVjdC1oaWVyYXJjaGljLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zZWxlY3QtaGllcmFyY2hpYy5jb21wb25lbnQuc2NzcyddLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgICAgIE1hdElucHV0TW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBNYXRJY29uTW9kdWxlLFxuICAgICAgICBOYXR1cmFsSWNvbkRpcmVjdGl2ZSxcbiAgICAgICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgICAgICBNYXRUb29sdGlwTW9kdWxlLFxuICAgICAgICBSb3V0ZXJMaW5rLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIE5hdHVyYWxTZWxlY3RIaWVyYXJjaGljQ29tcG9uZW50XG4gICAgZXh0ZW5kcyBBYnN0cmFjdFNlbGVjdDxMaXRlcmFsLCBzdHJpbmc+XG4gICAgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQ29udHJvbFZhbHVlQWNjZXNzb3JcbntcbiAgICAvKipcbiAgICAgKiBJZiBwcm92aWRlZCBjYXVzZSBhIG5ldyBzZWxlY3QgYnV0dG9uIHRvIGFwcGVhclxuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyBzZWxlY3RMYWJlbD86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIENvbmZpZ3VyYXRpb24gZm9yIGhpZXJhcmNoaWMgcmVsYXRpb25zXG4gICAgICpcbiAgICAgKiBJdCBzaG91bGQgYmUgYW4gYXJyYXkgd2l0aCBhdCBsZWFzdCBvbmUgZWxlbWVudCB3aXRoIGBzZWxlY3RhYmxlQXRLZXlgIGNvbmZpZ3VyZWQsIG90aGVyd2lzZSB0aGUgc2VsZWN0b3Igd2lsbCBuZXZlciBvcGVuLlxuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyBjb25maWc6IE5hdHVyYWxIaWVyYXJjaGljQ29uZmlndXJhdGlvbltdIHwgbnVsbCA9IG51bGw7XG5cbiAgICAvKipcbiAgICAgKiBGaWx0ZXJzIGZvcm1hdHRlZCBmb3IgaGllcmFyY2hpYyBzZWxlY3RvclxuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyBmaWx0ZXJzPzogSGllcmFyY2hpY0ZpbHRlcnNDb25maWd1cmF0aW9uO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHNlbGVjdGVkIHZhbHVlIGFzIGFuIG9iamVjdC4gVGhlIGludGVybmFsIHZhbHVlIGlzIGBpbnRlcm5hbEN0cmwudmFsdWVgLCBhbmQgdGhhdCBpcyBhIHN0cmluZy5cbiAgICAgKi9cbiAgICBwcml2YXRlIHZhbHVlOiBMaXRlcmFsIHwgbnVsbCA9IG51bGw7XG5cbiAgICAvKipcbiAgICAgKiBPbiBGaXJlZm94LCB0aGUgY29tYmluYXRpb24gb2YgPGlucHV0IChmb2N1cyk+IGV2ZW50IGFuZCBkaWFsb2cgb3BlbmluZyBjYXVzZSBzb21lIHN0cmFuZ2UgYnVnIHdoZXJlIGZvY3VzIGV2ZW50IGlzIGNhbGxlZCBtdWx0aXBsZVxuICAgICAqIHRpbWVzIFRoaXMgcHJldmVudHMgaXQuXG4gICAgICovXG4gICAgcHJpdmF0ZSBsb2NrT3BlbkRpYWxvZyA9IGZhbHNlO1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGhpZXJhcmNoaWNTZWxlY3RvckRpYWxvZ1NlcnZpY2U6IE5hdHVyYWxIaWVyYXJjaGljU2VsZWN0b3JEaWFsb2dTZXJ2aWNlLFxuICAgICAgICBAT3B0aW9uYWwoKSBAU2VsZigpIG5nQ29udHJvbDogTmdDb250cm9sIHwgbnVsbCxcbiAgICApIHtcbiAgICAgICAgc3VwZXIobmdDb250cm9sKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBWZXJ5IGltcG9ydGFudCB0byByZXR1cm4gc29tZXRoaW5nLCBhYm92ZSBhbGwgaWYgW3NlbGVjdF09J2Rpc3BsYXllZFZhbHVlJyBhdHRyaWJ1dGUgdmFsdWUgaXMgdXNlZFxuICAgICAqL1xuICAgIHB1YmxpYyBnZXREaXNwbGF5Rm4oKTogKGl0ZW06IExpdGVyYWwgfCBudWxsKSA9PiBzdHJpbmcge1xuICAgICAgICBpZiAodGhpcy5kaXNwbGF5V2l0aCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGlzcGxheVdpdGg7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZGVmYXVsdERpc3BsYXlGbjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBPdmVycmlkZSBwYXJlbnQgYmVjYXVzZSBvdXIgaW50ZXJuYWxDdHJsIHN0b3JlIHRoZSB0ZXh0dWFsIHJlcHJlc2VudGF0aW9uIGFzIHN0cmluZyBpbnN0ZWFkIG9mIHJhdyBMaXRlcmFsXG4gICAgICovXG4gICAgcHVibGljIG92ZXJyaWRlIHdyaXRlVmFsdWUodmFsdWU6IExpdGVyYWwgfCBzdHJpbmcgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZSBhcyBMaXRlcmFsO1xuICAgICAgICB0aGlzLmludGVybmFsQ3RybC5zZXRWYWx1ZSh0aGlzLmdldERpc3BsYXlGbigpKHRoaXMudmFsdWUpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb3BlbkRpYWxvZygpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaW50ZXJuYWxDdHJsLmRpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5sb2NrT3BlbkRpYWxvZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgc2VsZWN0QXRLZXkgPSB0aGlzLmdldFNlbGVjdEtleSgpO1xuICAgICAgICBpZiAoIXNlbGVjdEF0S2V5IHx8ICF0aGlzLmNvbmZpZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5sb2NrT3BlbkRpYWxvZyA9IHRydWU7XG5cbiAgICAgICAgaWYgKHRoaXMub25Ub3VjaGVkKSB7XG4gICAgICAgICAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgc2VsZWN0ZWQ6IE9yZ2FuaXplZE1vZGVsU2VsZWN0aW9uID0ge307XG5cbiAgICAgICAgaWYgKHRoaXMuaW50ZXJuYWxDdHJsLnZhbHVlKSB7XG4gICAgICAgICAgICBzZWxlY3RlZFtzZWxlY3RBdEtleV0gPSBbdGhpcy52YWx1ZV07XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBoaWVyYXJjaGljQ29uZmlnOiBIaWVyYXJjaGljRGlhbG9nQ29uZmlnID0ge1xuICAgICAgICAgICAgaGllcmFyY2hpY0NvbmZpZzogdGhpcy5jb25maWcsXG4gICAgICAgICAgICBoaWVyYXJjaGljU2VsZWN0aW9uOiBzZWxlY3RlZCxcbiAgICAgICAgICAgIGhpZXJhcmNoaWNGaWx0ZXJzOiB0aGlzLmZpbHRlcnMsXG4gICAgICAgICAgICBtdWx0aXBsZTogZmFsc2UsXG4gICAgICAgIH07XG5cbiAgICAgICAgY29uc3QgZGlhbG9nRm9jdXM6IE1hdERpYWxvZ0NvbmZpZyA9IHtyZXN0b3JlRm9jdXM6IGZhbHNlfTtcblxuICAgICAgICB0aGlzLmhpZXJhcmNoaWNTZWxlY3RvckRpYWxvZ1NlcnZpY2VcbiAgICAgICAgICAgIC5vcGVuKGhpZXJhcmNoaWNDb25maWcsIGRpYWxvZ0ZvY3VzKVxuICAgICAgICAgICAgLmFmdGVyQ2xvc2VkKClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmxvY2tPcGVuRGlhbG9nID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgaWYgKHJlc3VsdCAmJiByZXN1bHQuaGllcmFyY2hpY1NlbGVjdGlvbikge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzZWxlY3Rpb24gPSByZXN1bHQuaGllcmFyY2hpY1NlbGVjdGlvbjtcbiAgICAgICAgICAgICAgICAgICAgLy8gRmluZCB0aGUgb25seSBzZWxlY3Rpb24gYW1vbmdzdCBhbGwgcG9zc2libGUga2V5c1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBrZXlXaXRoU2VsZWN0aW9uID0gT2JqZWN0LmtleXMoc2VsZWN0aW9uKS5maW5kKGtleSA9PiBzZWxlY3Rpb25ba2V5XVswXSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHNpbmdsZVNlbGVjdGlvbiA9IGtleVdpdGhTZWxlY3Rpb24gPyBzZWxlY3Rpb25ba2V5V2l0aFNlbGVjdGlvbl1bMF0gOiBudWxsO1xuXG4gICAgICAgICAgICAgICAgICAgIHRoaXMud3JpdGVWYWx1ZShzaW5nbGVTZWxlY3Rpb24pO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnByb3BhZ2F0ZVZhbHVlKHNpbmdsZVNlbGVjdGlvbik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNob3dTZWxlY3RCdXR0b24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhISh0aGlzLmludGVybmFsQ3RybD8uZW5hYmxlZCAmJiB0aGlzLnNlbGVjdExhYmVsICYmIHRoaXMuZ2V0U2VsZWN0S2V5KCkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0U2VsZWN0S2V5KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpZz8uZmlsdGVyKGMgPT4gISFjLnNlbGVjdGFibGVBdEtleSlbMF0/LnNlbGVjdGFibGVBdEtleTtcbiAgICB9XG59XG4iLCI8bWF0LWZvcm0tZmllbGQ+XG4gICAgPG1hdC1sYWJlbD57eyBwbGFjZWhvbGRlciB9fTwvbWF0LWxhYmVsPlxuXG4gICAgPCEtLSBJbnB1dCBmb3IgaGllcmFyY2hpY2FsIHNlbGVjdG9yIC0tPlxuICAgIDxpbnB1dFxuICAgICAgICAoYmx1cik9XCJibHVyLmVtaXQoKVwiXG4gICAgICAgIChmb2N1cyk9XCJvcGVuRGlhbG9nKClcIlxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwiaW50ZXJuYWxDdHJsXCJcbiAgICAgICAgW2Vycm9yU3RhdGVNYXRjaGVyXT1cIm1hdGNoZXJcIlxuICAgICAgICBhcmlhLWxhYmVsPVwiUmVjaGVyY2hlIGV0IHPDqWxlY3Rpb25cIlxuICAgICAgICBpMThuLWFyaWEtbGFiZWxcbiAgICAgICAgbWF0SW5wdXRcbiAgICAvPlxuXG4gICAgPCEtLSBNZXRhIGRhdGEgLS0+XG4gICAgPG1hdC1pY29uICpuZ0lmPVwic2hvd0ljb25cIiBbbmF0dXJhbEljb25dPVwiaWNvblwiIG1hdEljb25QcmVmaXg+PC9tYXQtaWNvbj5cblxuICAgIDwhLS0gQ2xlYXIgYnV0dG9uIC0tPlxuICAgIDxkaXYgY2xhc3M9XCJzdWZmaXgtYnV0dG9uc1wiIG1hdEljb25TdWZmaXg+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIChjbGljayk9XCJjbGVhcigpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgICAgICAgKm5nSWY9XCJpbnRlcm5hbEN0cmwudmFsdWUgJiYgaW50ZXJuYWxDdHJsLmVuYWJsZWQgJiYgIWNsZWFyTGFiZWxcIlxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICBpMThuLW1hdFRvb2x0aXBcbiAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJEw6lzw6lsZWN0aW9ubmVyXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG1hdC1pY29uIG5hdHVyYWxJY29uPVwiY2xvc2VcIj48L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgKm5nSWY9XCJpbnRlcm5hbEN0cmwudmFsdWUgJiYgbmF2aWdhdGVUb1wiXG4gICAgICAgICAgICBbcm91dGVyTGlua109XCJuYXZpZ2F0ZVRvXCJcbiAgICAgICAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICBpMThuLW1hdFRvb2x0aXBcbiAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJOYXZpZ3VlciB2ZXJzXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG1hdC1pY29uIG5hdHVyYWxJY29uPVwib3Blbl9pbl9icm93c2VyXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG5cbiAgICA8bWF0LWVycm9yICpuZ0lmPVwiaGFzUmVxdWlyZWRFcnJvcigpXCIgaTE4bj5DZSBjaGFtcCBlc3QgcmVxdWlzPC9tYXQtZXJyb3I+XG48L21hdC1mb3JtLWZpZWxkPlxuXG48IS0tICAgIEFkZGl0aW9uYWwgKHVuKXNlbGVjdC8odW4pbGluayBidXR0b25zIGZvciBtb3JlIHZpc3VhbCBjb2hlc2lvbiB3aXRoIG5hdHVyYWwtcmVsYXRpb25zIC0tPjwhLS0gW2NsZWFyTGFiZWxdIGFuZC9vciBbc2VsZWN0TGFiZWxdIGhhcyB0byBiZSBnaXZlbiBhcyBhdHRyaWJ1dGUgaW5wdXQgLS0+XG48ZGl2ICpuZ0lmPVwic2hvd1NlbGVjdEJ1dHRvbigpIHx8IHNob3dDbGVhckJ1dHRvbigpXCIgY2xhc3M9XCJleHRlcm5hbC1idXR0b25zXCI+XG4gICAgPGJ1dHRvbiAoY2xpY2spPVwib3BlbkRpYWxvZygpXCIgKm5nSWY9XCJzaG93U2VsZWN0QnV0dG9uKClcIiBjb2xvcj1cInByaW1hcnlcIiBtYXQtZmxhdC1idXR0b24+e3sgc2VsZWN0TGFiZWwgfX08L2J1dHRvbj5cbiAgICA8YnV0dG9uIChjbGljayk9XCJjbGVhcigpXCIgKm5nSWY9XCJzaG93Q2xlYXJCdXR0b24oKVwiIGNvbG9yPVwid2FyblwiIG1hdC1idXR0b24+e3sgY2xlYXJMYWJlbCB9fTwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { Component, HostBinding, Input, ViewChild } from '@angular/core';
|
|
2
2
|
import { MatSidenav, MatSidenavContainer, MatSidenavModule } from '@angular/material/sidenav';
|
|
3
3
|
import { NaturalSidenavService } from '../sidenav.service';
|
|
4
|
-
import {
|
|
4
|
+
import { CommonModule } from '@angular/common';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "../sidenav.service";
|
|
7
7
|
import * as i2 from "@angular/material/sidenav";
|
|
8
|
+
import * as i3 from "@angular/common";
|
|
8
9
|
export class NaturalSidenavContainerComponent {
|
|
9
10
|
constructor(sidenavService) {
|
|
10
11
|
this.sidenavService = sidenavService;
|
|
@@ -58,11 +59,11 @@ export class NaturalSidenavContainerComponent {
|
|
|
58
59
|
this.sidenavService.toggleMinimized();
|
|
59
60
|
}
|
|
60
61
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: NaturalSidenavContainerComponent, deps: [{ token: i1.NaturalSidenavService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
61
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: NaturalSidenavContainerComponent, isStandalone: true, selector: "natural-sidenav-container", inputs: { name: "name", position: "position", mobileAutoClose: "mobileAutoClose", minimizedWidth: "minimizedWidth", noScroll: "noScroll" }, host: { properties: { "attr.no-scroll": "this.noScroll" } }, providers: [NaturalSidenavService], viewQueries: [{ propertyName: "menuContainer", first: true, predicate: MatSidenavContainer, descendants: true, static: true }, { propertyName: "menuSidenav", first: true, predicate: MatSidenav, descendants: true, static: true }], ngImport: i0, template: "<mat-sidenav-container (backdropClick)=\"sidenavService.setOpened(false)\">\n <mat-sidenav\n [mode]=\"sidenavService.activeMode\"\n [ngClass]=\"sidenavService.isMinimized ? 'menuMinimized' : ''\"\n [opened]=\"sidenavService.isOpened\"\n [style.min-width.px]=\"sidenavService.isMinimized && minimizedWidth ? minimizedWidth : null\"\n [style.width.px]=\"sidenavService.isMinimized && minimizedWidth ? minimizedWidth : null\"\n [position]=\"position\"\n >\n <ng-content select=\"natural-sidenav\"></ng-content>\n </mat-sidenav>\n\n <mat-sidenav-content>\n <div>\n <ng-content select=\"natural-sidenav-content\"></ng-content>\n </div>\n </mat-sidenav-content>\n</mat-sidenav-container>\n", styles: [":host{display:flex;flex-direction:column}:host mat-sidenav-container{display:flex;flex-direction:column;flex:1}:host mat-sidenav-content>div{overflow:auto}:host .menuMinimized{overflow-x:hidden}:host .buttons{display:flex;flex-direction:row;justify-content:flex-end}\n"], dependencies: [{ kind: "ngmodule", type: MatSidenavModule }, { kind: "component", type: i2.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { kind: "component", type: i2.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { kind: "component", type: i2.MatSidenavContent, selector: "mat-sidenav-content" }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
|
|
62
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: NaturalSidenavContainerComponent, isStandalone: true, selector: "natural-sidenav-container", inputs: { name: "name", position: "position", mobileAutoClose: "mobileAutoClose", minimizedWidth: "minimizedWidth", noScroll: "noScroll" }, host: { properties: { "attr.no-scroll": "this.noScroll" } }, providers: [NaturalSidenavService], viewQueries: [{ propertyName: "menuContainer", first: true, predicate: MatSidenavContainer, descendants: true, static: true }, { propertyName: "menuSidenav", first: true, predicate: MatSidenav, descendants: true, static: true }], ngImport: i0, template: "<mat-sidenav-container (backdropClick)=\"sidenavService.setOpened(false)\">\n <mat-sidenav\n [mode]=\"sidenavService.activeMode\"\n [ngClass]=\"sidenavService.isMinimized ? 'menuMinimized' : ''\"\n [opened]=\"sidenavService.isOpened\"\n [style.min-width.px]=\"sidenavService.isMinimized && minimizedWidth ? minimizedWidth : null\"\n [style.width.px]=\"sidenavService.isMinimized && minimizedWidth ? minimizedWidth : null\"\n [position]=\"position\"\n >\n <ng-content select=\"natural-sidenav\"></ng-content>\n </mat-sidenav>\n\n <mat-sidenav-content>\n <div>\n <ng-content select=\"natural-sidenav-content\"></ng-content>\n </div>\n </mat-sidenav-content>\n</mat-sidenav-container>\n", styles: [":host{display:flex;flex-direction:column}:host mat-sidenav-container{display:flex;flex-direction:column;flex:1}:host mat-sidenav-content>div{overflow:auto}:host .menuMinimized{overflow-x:hidden}:host .buttons{display:flex;flex-direction:row;justify-content:flex-end}\n"], dependencies: [{ kind: "ngmodule", type: MatSidenavModule }, { kind: "component", type: i2.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { kind: "component", type: i2.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { kind: "component", type: i2.MatSidenavContent, selector: "mat-sidenav-content" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
|
|
62
63
|
}
|
|
63
64
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: NaturalSidenavContainerComponent, decorators: [{
|
|
64
65
|
type: Component,
|
|
65
|
-
args: [{ selector: 'natural-sidenav-container', providers: [NaturalSidenavService], standalone: true, imports: [MatSidenavModule,
|
|
66
|
+
args: [{ selector: 'natural-sidenav-container', providers: [NaturalSidenavService], standalone: true, imports: [MatSidenavModule, CommonModule], template: "<mat-sidenav-container (backdropClick)=\"sidenavService.setOpened(false)\">\n <mat-sidenav\n [mode]=\"sidenavService.activeMode\"\n [ngClass]=\"sidenavService.isMinimized ? 'menuMinimized' : ''\"\n [opened]=\"sidenavService.isOpened\"\n [style.min-width.px]=\"sidenavService.isMinimized && minimizedWidth ? minimizedWidth : null\"\n [style.width.px]=\"sidenavService.isMinimized && minimizedWidth ? minimizedWidth : null\"\n [position]=\"position\"\n >\n <ng-content select=\"natural-sidenav\"></ng-content>\n </mat-sidenav>\n\n <mat-sidenav-content>\n <div>\n <ng-content select=\"natural-sidenav-content\"></ng-content>\n </div>\n </mat-sidenav-content>\n</mat-sidenav-container>\n", styles: [":host{display:flex;flex-direction:column}:host mat-sidenav-container{display:flex;flex-direction:column;flex:1}:host mat-sidenav-content>div{overflow:auto}:host .menuMinimized{overflow-x:hidden}:host .buttons{display:flex;flex-direction:row;justify-content:flex-end}\n"] }]
|
|
66
67
|
}], ctorParameters: function () { return [{ type: i1.NaturalSidenavService }]; }, propDecorators: { name: [{
|
|
67
68
|
type: Input,
|
|
68
69
|
args: [{ required: true }]
|
|
@@ -84,4 +85,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImpor
|
|
|
84
85
|
type: ViewChild,
|
|
85
86
|
args: [MatSidenav, { static: true }]
|
|
86
87
|
}] } });
|
|
87
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdi1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvc2lkZW5hdi9zaWRlbmF2LWNvbnRhaW5lci9zaWRlbmF2LWNvbnRhaW5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9zaWRlbmF2L3NpZGVuYXYtY29udGFpbmVyL3NpZGVuYXYtY29udGFpbmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBcUIsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzFGLE9BQU8sRUFBWSxVQUFVLEVBQUUsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUN2RyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUN6RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7Ozs7O0FBVTdDLE1BQU0sT0FBTyxnQ0FBZ0M7SUFzQ3pDLFlBQW1DLGNBQXFDO1FBQXJDLG1CQUFjLEdBQWQsY0FBYyxDQUF1QjtRQWhDeEU7O1dBRUc7UUFDYSxhQUFRLEdBQTBCLE9BQU8sQ0FBQztRQUUxRDs7O1dBR0c7UUFDYSxvQkFBZSxHQUFHLElBQUksQ0FBQztRQUV2Qzs7V0FFRztRQUNhLG1CQUFjLEdBQUcsR0FBRyxDQUFDO1FBRXJDOzs7V0FHRztRQUM0QyxhQUFRLEdBQUcsS0FBSyxDQUFDO0lBWVcsQ0FBQztJQUU1RSxJQUFXLFdBQVc7UUFDbEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQztJQUMzQyxDQUFDO0lBRUQsSUFBVyxZQUFZO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM5QyxDQUFDO0lBRU0sUUFBUTtRQUNYLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDMUcsQ0FBQztJQUVNLFdBQVc7UUFDZCxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRU0sTUFBTTtRQUNULElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVNLEtBQUs7UUFDUixJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFTSxJQUFJO1FBQ1AsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRU0sUUFBUTtRQUNYLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVNLE1BQU07UUFDVCxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFTSxlQUFlO1FBQ2xCLElBQUksQ0FBQyxjQUFjLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDMUMsQ0FBQzs4R0E5RVEsZ0NBQWdDO2tHQUFoQyxnQ0FBZ0MsaVJBSjlCLENBQUMscUJBQXFCLENBQUMseUVBbUN2QixtQkFBbUIsNEZBS25CLFVBQVUsOERDakR6Qixzd0JBa0JBLHFVRFBjLGdCQUFnQiwwWUFBRSxZQUFZOzsyRkFFL0IsZ0NBQWdDO2tCQVI1QyxTQUFTOytCQUNJLDJCQUEyQixhQUcxQixDQUFDLHFCQUFxQixDQUFDLGNBQ3RCLElBQUksV0FDUCxDQUFDLGdCQUFnQixFQUFFLFlBQVksQ0FBQzs0R0FNVCxJQUFJO3NCQUFuQyxLQUFLO3VCQUFDLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQztnQkFLUCxRQUFRO3NCQUF2QixLQUFLO2dCQU1VLGVBQWU7c0JBQTlCLEtBQUs7Z0JBS1UsY0FBYztzQkFBN0IsS0FBSztnQkFNeUMsUUFBUTtzQkFBdEQsV0FBVzt1QkFBQyxnQkFBZ0I7O3NCQUFHLEtBQUs7Z0JBS21CLGFBQWE7c0JBQXBFLFNBQVM7dUJBQUMsbUJBQW1CLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDO2dCQUtDLFdBQVc7c0JBQXpELFNBQVM7dUJBQUMsVUFBVSxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBIb3N0QmluZGluZywgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNYXREcmF3ZXIsIE1hdFNpZGVuYXYsIE1hdFNpZGVuYXZDb250YWluZXIsIE1hdFNpZGVuYXZNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NpZGVuYXYnO1xuaW1wb3J0IHtOYXR1cmFsU2lkZW5hdlNlcnZpY2V9IGZyb20gJy4uL3NpZGVuYXYuc2VydmljZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduYXR1cmFsLXNpZGVuYXYtY29udGFpbmVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2lkZW5hdi1jb250YWluZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3NpZGVuYXYtY29udGFpbmVyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbTmF0dXJhbFNpZGVuYXZTZXJ2aWNlXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtNYXRTaWRlbmF2TW9kdWxlLCBDb21tb25Nb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBOYXR1cmFsU2lkZW5hdkNvbnRhaW5lckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICAvKipcbiAgICAgKiBVbmlxdWUgaWRlbnRpZmllciB1c2VkIGZvciB0aGUgbG9jYWwgc3RvcmFnZVxuICAgICAqL1xuICAgIEBJbnB1dCh7cmVxdWlyZWQ6IHRydWV9KSBwdWJsaWMgbmFtZSE6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFRoZSBzaWRlIHRoYXQgdGhlIGRyYXdlciBpcyBhdHRhY2hlZCB0b1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyBwb3NpdGlvbjogTWF0RHJhd2VyWydwb3NpdGlvbiddID0gJ3N0YXJ0JztcblxuICAgIC8qKlxuICAgICAqIElmIHRydWUgbGlzdGVucyB0byByb3V0ZSBjaGFuZ2VzIHRvIGNsb3NlIHNpZGUgbmF2IGFmdGVyIGEgcm91dGUgY2hhbmdlIGlmIG1vYmlsZSB2aWV3IGlzIGFjdGl2ZVxuICAgICAqIEFjdHVhbGx5IGEgbmF2aWdhdGlvbiB0byBjdXJyZW50IHJvdXRlIGRvZXMgbm90IGVtaXQgYSByb3V0ZSBjaGFuZ2UsIGFuZCB0aGUgc2lkZW5hdiBkb24ndCBjbG9zZS5cbiAgICAgKi9cbiAgICBASW5wdXQoKSBwdWJsaWMgbW9iaWxlQXV0b0Nsb3NlID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIFdpZHRoIG9mIHRoZSBtaW5pbWl6ZWQgbWVudVxuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyBtaW5pbWl6ZWRXaWR0aCA9IDE1MDtcblxuICAgIC8qKlxuICAgICAqIElmIHRydWUsIHByZXZlbnRzIFwibmF0aXZlXCIgbWF0ZXJpYWwgc2lkZW5hdiB0byBzY3JvbGwgYXQgY29udGFpbmVyIGxldmVsIGFuZCBkZWxlZ2F0ZXMgdGhlIHNjcm9sbCByZXNwb25zYWJpbGl0eSB0byB0aGUgdHJhbnNjbHVkZWRcbiAgICAgKiBjb250ZW50XG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLm5vLXNjcm9sbCcpIEBJbnB1dCgpIHB1YmxpYyBub1Njcm9sbCA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogSW5uZXIgXCJuYXRpdmVcIiBtYXRlcmlhbCBzaWRlbmF2IGNvbnRhaW5lclxuICAgICAqL1xuICAgIEBWaWV3Q2hpbGQoTWF0U2lkZW5hdkNvbnRhaW5lciwge3N0YXRpYzogdHJ1ZX0pIHByaXZhdGUgbWVudUNvbnRhaW5lciE6IE1hdFNpZGVuYXZDb250YWluZXI7XG5cbiAgICAvKipcbiAgICAgKiBJbm5lciBcIm5hdGl2ZVwiIG1hdGVyaWFsIHNpZGVuYXZcbiAgICAgKi9cbiAgICBAVmlld0NoaWxkKE1hdFNpZGVuYXYsIHtzdGF0aWM6IHRydWV9KSBwcml2YXRlIG1lbnVTaWRlbmF2ITogTWF0U2lkZW5hdjtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgc2lkZW5hdlNlcnZpY2U6IE5hdHVyYWxTaWRlbmF2U2VydmljZSkge31cblxuICAgIHB1YmxpYyBnZXQgaXNNaW5pbWl6ZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNpZGVuYXZTZXJ2aWNlLmlzTWluaW1pemVkO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaXNNb2JpbGVWaWV3KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zaWRlbmF2U2VydmljZS5pc01vYmlsZVZpZXcoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2lkZW5hdlNlcnZpY2UuaW5pdCh0aGlzLm5hbWUsIHRoaXMubWVudUNvbnRhaW5lciwgdGhpcy5tZW51U2lkZW5hdiwgdGhpcywgdGhpcy5tb2JpbGVBdXRvQ2xvc2UpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zaWRlbmF2U2VydmljZS5kZXN0cm95KHRoaXMpO1xuICAgIH1cblxuICAgIHB1YmxpYyB0b2dnbGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2lkZW5hdlNlcnZpY2UudG9nZ2xlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGNsb3NlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNpZGVuYXZTZXJ2aWNlLmNsb3NlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG9wZW4oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2lkZW5hdlNlcnZpY2Uub3BlbigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBtaW5pbWl6ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zaWRlbmF2U2VydmljZS5taW5pbWl6ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBleHBhbmQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2lkZW5hdlNlcnZpY2UuZXhwYW5kKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHRvZ2dsZU1pbmltaXplZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zaWRlbmF2U2VydmljZS50b2dnbGVNaW5pbWl6ZWQoKTtcbiAgICB9XG59XG4iLCI8bWF0LXNpZGVuYXYtY29udGFpbmVyIChiYWNrZHJvcENsaWNrKT1cInNpZGVuYXZTZXJ2aWNlLnNldE9wZW5lZChmYWxzZSlcIj5cbiAgICA8bWF0LXNpZGVuYXZcbiAgICAgICAgW21vZGVdPVwic2lkZW5hdlNlcnZpY2UuYWN0aXZlTW9kZVwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInNpZGVuYXZTZXJ2aWNlLmlzTWluaW1pemVkID8gJ21lbnVNaW5pbWl6ZWQnIDogJydcIlxuICAgICAgICBbb3BlbmVkXT1cInNpZGVuYXZTZXJ2aWNlLmlzT3BlbmVkXCJcbiAgICAgICAgW3N0eWxlLm1pbi13aWR0aC5weF09XCJzaWRlbmF2U2VydmljZS5pc01pbmltaXplZCAmJiBtaW5pbWl6ZWRXaWR0aCA/IG1pbmltaXplZFdpZHRoIDogbnVsbFwiXG4gICAgICAgIFtzdHlsZS53aWR0aC5weF09XCJzaWRlbmF2U2VydmljZS5pc01pbmltaXplZCAmJiBtaW5pbWl6ZWRXaWR0aCA/IG1pbmltaXplZFdpZHRoIDogbnVsbFwiXG4gICAgICAgIFtwb3NpdGlvbl09XCJwb3NpdGlvblwiXG4gICAgPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJuYXR1cmFsLXNpZGVuYXZcIj48L25nLWNvbnRlbnQ+XG4gICAgPC9tYXQtc2lkZW5hdj5cblxuICAgIDxtYXQtc2lkZW5hdi1jb250ZW50PlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwibmF0dXJhbC1zaWRlbmF2LWNvbnRlbnRcIj48L25nLWNvbnRlbnQ+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbWF0LXNpZGVuYXYtY29udGVudD5cbjwvbWF0LXNpZGVuYXYtY29udGFpbmVyPlxuIl19
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { Component, Input } from '@angular/core';
|
|
2
2
|
import { NaturalTimeAgoPipe } from '../common/pipes/time-ago.pipe';
|
|
3
3
|
import { NaturalSwissDatePipe } from '../common/pipes/swiss-date.pipe';
|
|
4
|
-
import {
|
|
4
|
+
import { CommonModule } from '@angular/common';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/common";
|
|
6
7
|
export class NaturalStampComponent {
|
|
7
8
|
showUpdate() {
|
|
8
9
|
const same = this.item.updater?.id === this.item.creator?.id &&
|
|
@@ -11,13 +12,13 @@ export class NaturalStampComponent {
|
|
|
11
12
|
return !same && (!!this.item.updateDate || !!this.item.updater);
|
|
12
13
|
}
|
|
13
14
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: NaturalStampComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
14
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: NaturalStampComponent, isStandalone: true, selector: "natural-stamp", inputs: { item: "item" }, ngImport: i0, template: "<ng-container *ngIf=\"item\">\n <div *ngIf=\"item.creationDate || item.creator\">\n <span class=\"mat-subtitle-2\" i18n>Cr\u00E9ation</span>\n :\n <span *ngIf=\"item.creator\">{{ item.creator.fullName || item.creator.name }}</span>\n <span *ngIf=\"item.creator && item.creationDate\">, </span>\n <span *ngIf=\"item.creationDate\">{{ item.creationDate | swissDate }} ({{ item.creationDate | timeAgo }})</span>\n </div>\n\n <div *ngIf=\"showUpdate()\">\n <span class=\"mat-subtitle-2\" i18n>Modification</span>\n :\n <span *ngIf=\"item.updater\">{{ item.updater.fullName || item.updater.name }}</span>\n <span *ngIf=\"item.updater && item.updateDate\">, </span>\n <span *ngIf=\"item.updateDate\">{{ item.updateDate | swissDate }} ({{ item.updateDate | timeAgo }})</span>\n </div>\n</ng-container>\n", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: NaturalSwissDatePipe, name: "swissDate" }, { kind: "pipe", type: NaturalTimeAgoPipe, name: "timeAgo" }] }); }
|
|
15
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: NaturalStampComponent, isStandalone: true, selector: "natural-stamp", inputs: { item: "item" }, ngImport: i0, template: "<ng-container *ngIf=\"item\">\n <div *ngIf=\"item.creationDate || item.creator\">\n <span class=\"mat-subtitle-2\" i18n>Cr\u00E9ation</span>\n :\n <span *ngIf=\"item.creator\">{{ item.creator.fullName || item.creator.name }}</span>\n <span *ngIf=\"item.creator && item.creationDate\">, </span>\n <span *ngIf=\"item.creationDate\">{{ item.creationDate | swissDate }} ({{ item.creationDate | timeAgo }})</span>\n </div>\n\n <div *ngIf=\"showUpdate()\">\n <span class=\"mat-subtitle-2\" i18n>Modification</span>\n :\n <span *ngIf=\"item.updater\">{{ item.updater.fullName || item.updater.name }}</span>\n <span *ngIf=\"item.updater && item.updateDate\">, </span>\n <span *ngIf=\"item.updateDate\">{{ item.updateDate | swissDate }} ({{ item.updateDate | timeAgo }})</span>\n </div>\n</ng-container>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: NaturalSwissDatePipe, name: "swissDate" }, { kind: "pipe", type: NaturalTimeAgoPipe, name: "timeAgo" }] }); }
|
|
15
16
|
}
|
|
16
17
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: NaturalStampComponent, decorators: [{
|
|
17
18
|
type: Component,
|
|
18
|
-
args: [{ selector: 'natural-stamp', standalone: true, imports: [
|
|
19
|
+
args: [{ selector: 'natural-stamp', standalone: true, imports: [CommonModule, NaturalSwissDatePipe, NaturalTimeAgoPipe], template: "<ng-container *ngIf=\"item\">\n <div *ngIf=\"item.creationDate || item.creator\">\n <span class=\"mat-subtitle-2\" i18n>Cr\u00E9ation</span>\n :\n <span *ngIf=\"item.creator\">{{ item.creator.fullName || item.creator.name }}</span>\n <span *ngIf=\"item.creator && item.creationDate\">, </span>\n <span *ngIf=\"item.creationDate\">{{ item.creationDate | swissDate }} ({{ item.creationDate | timeAgo }})</span>\n </div>\n\n <div *ngIf=\"showUpdate()\">\n <span class=\"mat-subtitle-2\" i18n>Modification</span>\n :\n <span *ngIf=\"item.updater\">{{ item.updater.fullName || item.updater.name }}</span>\n <span *ngIf=\"item.updater && item.updateDate\">, </span>\n <span *ngIf=\"item.updateDate\">{{ item.updateDate | swissDate }} ({{ item.updateDate | timeAgo }})</span>\n </div>\n</ng-container>\n" }]
|
|
19
20
|
}], propDecorators: { item: [{
|
|
20
21
|
type: Input,
|
|
21
22
|
args: [{ required: true }]
|
|
22
23
|
}] } });
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvc3RhbXAvc3RhbXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvc3RhbXAvc3RhbXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFL0MsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDckUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDOzs7QUFlN0MsTUFBTSxPQUFPLHFCQUFxQjtJQUd2QixVQUFVO1FBQ2IsTUFBTSxJQUFJLEdBQ04sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDL0MsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVO1lBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBRXBELE9BQU8sQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDcEUsQ0FBQzs4R0FWUSxxQkFBcUI7a0dBQXJCLHFCQUFxQixtR0NuQmxDLDAzQkFpQkEsMkNEQWMsWUFBWSw4SEFBRSxvQkFBb0IsNkNBQUUsa0JBQWtCOzsyRkFFdkQscUJBQXFCO2tCQU5qQyxTQUFTOytCQUNJLGVBQWUsY0FFYixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsa0JBQWtCLENBQUM7OEJBR2pDLElBQUk7c0JBQW5DLEtBQUs7dUJBQUMsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmFtZU9yRnVsbE5hbWV9IGZyb20gJy4uLy4uL3R5cGVzL3R5cGVzJztcbmltcG9ydCB7TmF0dXJhbFRpbWVBZ29QaXBlfSBmcm9tICcuLi9jb21tb24vcGlwZXMvdGltZS1hZ28ucGlwZSc7XG5pbXBvcnQge05hdHVyYWxTd2lzc0RhdGVQaXBlfSBmcm9tICcuLi9jb21tb24vcGlwZXMvc3dpc3MtZGF0ZS5waXBlJztcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG50eXBlIFN0YW1wZWQgPSB7XG4gICAgY3JlYXRvcjogTmFtZU9yRnVsbE5hbWUgfCBudWxsO1xuICAgIHVwZGF0ZXI6IE5hbWVPckZ1bGxOYW1lIHwgbnVsbDtcbiAgICBjcmVhdGlvbkRhdGU6IHN0cmluZyB8IG51bGw7XG4gICAgdXBkYXRlRGF0ZTogc3RyaW5nIHwgbnVsbDtcbn07XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmF0dXJhbC1zdGFtcCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3N0YW1wLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE5hdHVyYWxTd2lzc0RhdGVQaXBlLCBOYXR1cmFsVGltZUFnb1BpcGVdLFxufSlcbmV4cG9ydCBjbGFzcyBOYXR1cmFsU3RhbXBDb21wb25lbnQge1xuICAgIEBJbnB1dCh7cmVxdWlyZWQ6IHRydWV9KSBwdWJsaWMgaXRlbSE6IFN0YW1wZWQ7XG5cbiAgICBwdWJsaWMgc2hvd1VwZGF0ZSgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3Qgc2FtZSA9XG4gICAgICAgICAgICB0aGlzLml0ZW0udXBkYXRlcj8uaWQgPT09IHRoaXMuaXRlbS5jcmVhdG9yPy5pZCAmJlxuICAgICAgICAgICAgdGhpcy5pdGVtLnVwZGF0ZURhdGUgJiZcbiAgICAgICAgICAgIHRoaXMuaXRlbS51cGRhdGVEYXRlID09PSB0aGlzLml0ZW0uY3JlYXRpb25EYXRlO1xuXG4gICAgICAgIHJldHVybiAhc2FtZSAmJiAoISF0aGlzLml0ZW0udXBkYXRlRGF0ZSB8fCAhIXRoaXMuaXRlbS51cGRhdGVyKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbVwiPlxuICAgIDxkaXYgKm5nSWY9XCJpdGVtLmNyZWF0aW9uRGF0ZSB8fCBpdGVtLmNyZWF0b3JcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJtYXQtc3VidGl0bGUtMlwiIGkxOG4+Q3LDqWF0aW9uPC9zcGFuPlxuICAgICAgICA6XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiaXRlbS5jcmVhdG9yXCI+e3sgaXRlbS5jcmVhdG9yLmZ1bGxOYW1lIHx8IGl0ZW0uY3JlYXRvci5uYW1lIH19PC9zcGFuPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIml0ZW0uY3JlYXRvciAmJiBpdGVtLmNyZWF0aW9uRGF0ZVwiPiwmbmJzcDs8L3NwYW4+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiaXRlbS5jcmVhdGlvbkRhdGVcIj57eyBpdGVtLmNyZWF0aW9uRGF0ZSB8IHN3aXNzRGF0ZSB9fSAoe3sgaXRlbS5jcmVhdGlvbkRhdGUgfCB0aW1lQWdvIH19KTwvc3Bhbj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgKm5nSWY9XCJzaG93VXBkYXRlKClcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJtYXQtc3VidGl0bGUtMlwiIGkxOG4+TW9kaWZpY2F0aW9uPC9zcGFuPlxuICAgICAgICA6XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiaXRlbS51cGRhdGVyXCI+e3sgaXRlbS51cGRhdGVyLmZ1bGxOYW1lIHx8IGl0ZW0udXBkYXRlci5uYW1lIH19PC9zcGFuPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIml0ZW0udXBkYXRlciAmJiBpdGVtLnVwZGF0ZURhdGVcIj4sJm5ic3A7PC9zcGFuPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIml0ZW0udXBkYXRlRGF0ZVwiPnt7IGl0ZW0udXBkYXRlRGF0ZSB8IHN3aXNzRGF0ZSB9fSAoe3sgaXRlbS51cGRhdGVEYXRlIHwgdGltZUFnbyB9fSk8L3NwYW4+XG4gICAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
@@ -3,10 +3,11 @@ import { RouterLink } from '@angular/router';
|
|
|
3
3
|
import { MatButtonModule } from '@angular/material/button';
|
|
4
4
|
import { NaturalIconDirective } from '../icon/icon.directive';
|
|
5
5
|
import { MatIconModule } from '@angular/material/icon';
|
|
6
|
-
import {
|
|
6
|
+
import { CommonModule } from '@angular/common';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "@angular/
|
|
9
|
-
import * as i2 from "@angular/material/
|
|
8
|
+
import * as i1 from "@angular/common";
|
|
9
|
+
import * as i2 from "@angular/material/icon";
|
|
10
|
+
import * as i3 from "@angular/material/button";
|
|
10
11
|
/**
|
|
11
12
|
* Button that fits well in a `<mat-table>` and support either
|
|
12
13
|
* route navigation via `navigate`, or external URL via `href`,
|
|
@@ -43,11 +44,11 @@ export class NaturalTableButtonComponent {
|
|
|
43
44
|
}
|
|
44
45
|
}
|
|
45
46
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: NaturalTableButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
46
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: NaturalTableButtonComponent, isStandalone: true, selector: "natural-table-button", inputs: { queryParams: "queryParams", queryParamsHandling: "queryParamsHandling", label: "label", icon: "icon", href: "href", navigate: "navigate", fragment: "fragment", preserveFragment: "preserveFragment", disabled: "disabled", raised: "raised", color: "color" }, outputs: { buttonClick: "buttonClick" }, usesOnChanges: true, ngImport: i0, template: "<!-- Because directives can't be applied conditionally (routerLink, mat-button and mat-icon-button), we have to use different elements -->\n\n<!-- Edge case of a button without any kind of link at all -->\n<span *ngIf=\"type === 'none'\">\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span *ngIf=\"label\">{{ label }}</span>\n</span>\n\n<ng-container *ngIf=\"!raised\">\n <!-- App routed link with label... -->\n <a\n *ngIf=\"type === 'routerLink' && label\"\n [color]=\"color\"\n [queryParams]=\"queryParams\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [routerLink]=\"navigate\"\n [fragment]=\"fragment\"\n [preserveFragment]=\"preserveFragment\"\n [disabled]=\"disabled\"\n mat-button\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a\n *ngIf=\"type === 'routerLink' && !label\"\n [color]=\"color\"\n [queryParams]=\"queryParams\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [routerLink]=\"navigate\"\n [fragment]=\"fragment\"\n [preserveFragment]=\"preserveFragment\"\n [disabled]=\"disabled\"\n mat-icon-button\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n </a>\n\n <!-- Click with label... -->\n <a\n *ngIf=\"type === 'click' && label\"\n [color]=\"color\"\n (click)=\"buttonClick.emit($event)\"\n [disabled]=\"disabled\"\n mat-button\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a *ngIf=\"type === 'click' && !label\" (click)=\"buttonClick.emit($event)\" [disabled]=\"disabled\" mat-icon-button>\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n </a>\n\n <!-- External link with label... -->\n <a\n *ngIf=\"type === 'href' && label\"\n [attr.href]=\"href\"\n [color]=\"color\"\n [disabled]=\"disabled\"\n mat-button\n target=\"_blank\"\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a\n *ngIf=\"type === 'href' && !label\"\n [attr.href]=\"href\"\n [color]=\"color\"\n [disabled]=\"disabled\"\n mat-icon-button\n target=\"_blank\"\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n </a>\n</ng-container>\n\n<ng-container *ngIf=\"raised\">\n <!-- App routed link with label... -->\n <a\n *ngIf=\"type === 'routerLink' && label\"\n [color]=\"color\"\n [queryParams]=\"queryParams\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [routerLink]=\"navigate\"\n [fragment]=\"fragment\"\n [preserveFragment]=\"preserveFragment\"\n [disabled]=\"disabled\"\n mat-raised-button\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a\n *ngIf=\"type === 'routerLink' && !label\"\n [color]=\"color\"\n [queryParams]=\"queryParams\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [routerLink]=\"navigate\"\n [fragment]=\"fragment\"\n [preserveFragment]=\"preserveFragment\"\n [disabled]=\"disabled\"\n mat-icon-button\n class=\"mat-elevation-z4\"\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n </a>\n <!-- Click with label... -->\n <a\n *ngIf=\"type === 'click' && label\"\n [color]=\"color\"\n [disabled]=\"disabled\"\n (click)=\"buttonClick.emit($event)\"\n mat-raised-button\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a\n *ngIf=\"type === 'click' && !label\"\n [color]=\"color\"\n [disabled]=\"disabled\"\n (click)=\"buttonClick.emit($event)\"\n mat-icon-button\n class=\"mat-elevation-z4\"\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n </a>\n\n <!-- External link with label... -->\n <a\n *ngIf=\"type === 'href' && label\"\n [attr.href]=\"href\"\n [color]=\"color\"\n [disabled]=\"disabled\"\n mat-raised-button\n target=\"_blank\"\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a\n *ngIf=\"type === 'href' && !label\"\n [attr.href]=\"href\"\n [color]=\"color\"\n [disabled]=\"disabled\"\n mat-icon-button\n class=\"mat-elevation-z4\"\n target=\"_blank\"\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n </a>\n</ng-container>\n", styles: ["natural-table-button{flex:1;display:flex;flex-direction:row;justify-content:flex-start;align-items:center}natural-table-button mat-icon:not(:last-child){margin-right:5px}natural-table-button a.mat-mdc-button{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:flex-start}natural-table-button a.mat-mdc-button .mdc-button__label{display:flex;flex-direction:row;align-items:center}natural-table-button>span{padding:0 8px;display:flex;flex-direction:row;justify-content:flex-start;align-items:center}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type:
|
|
47
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: NaturalTableButtonComponent, isStandalone: true, selector: "natural-table-button", inputs: { queryParams: "queryParams", queryParamsHandling: "queryParamsHandling", label: "label", icon: "icon", href: "href", navigate: "navigate", fragment: "fragment", preserveFragment: "preserveFragment", disabled: "disabled", raised: "raised", color: "color" }, outputs: { buttonClick: "buttonClick" }, usesOnChanges: true, ngImport: i0, template: "<!-- Because directives can't be applied conditionally (routerLink, mat-button and mat-icon-button), we have to use different elements -->\n\n<!-- Edge case of a button without any kind of link at all -->\n<span *ngIf=\"type === 'none'\">\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span *ngIf=\"label\">{{ label }}</span>\n</span>\n\n<ng-container *ngIf=\"!raised\">\n <!-- App routed link with label... -->\n <a\n *ngIf=\"type === 'routerLink' && label\"\n [color]=\"color\"\n [queryParams]=\"queryParams\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [routerLink]=\"navigate\"\n [fragment]=\"fragment\"\n [preserveFragment]=\"preserveFragment\"\n [disabled]=\"disabled\"\n mat-button\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a\n *ngIf=\"type === 'routerLink' && !label\"\n [color]=\"color\"\n [queryParams]=\"queryParams\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [routerLink]=\"navigate\"\n [fragment]=\"fragment\"\n [preserveFragment]=\"preserveFragment\"\n [disabled]=\"disabled\"\n mat-icon-button\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n </a>\n\n <!-- Click with label... -->\n <a\n *ngIf=\"type === 'click' && label\"\n [color]=\"color\"\n (click)=\"buttonClick.emit($event)\"\n [disabled]=\"disabled\"\n mat-button\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a *ngIf=\"type === 'click' && !label\" (click)=\"buttonClick.emit($event)\" [disabled]=\"disabled\" mat-icon-button>\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n </a>\n\n <!-- External link with label... -->\n <a\n *ngIf=\"type === 'href' && label\"\n [attr.href]=\"href\"\n [color]=\"color\"\n [disabled]=\"disabled\"\n mat-button\n target=\"_blank\"\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a\n *ngIf=\"type === 'href' && !label\"\n [attr.href]=\"href\"\n [color]=\"color\"\n [disabled]=\"disabled\"\n mat-icon-button\n target=\"_blank\"\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n </a>\n</ng-container>\n\n<ng-container *ngIf=\"raised\">\n <!-- App routed link with label... -->\n <a\n *ngIf=\"type === 'routerLink' && label\"\n [color]=\"color\"\n [queryParams]=\"queryParams\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [routerLink]=\"navigate\"\n [fragment]=\"fragment\"\n [preserveFragment]=\"preserveFragment\"\n [disabled]=\"disabled\"\n mat-raised-button\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a\n *ngIf=\"type === 'routerLink' && !label\"\n [color]=\"color\"\n [queryParams]=\"queryParams\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [routerLink]=\"navigate\"\n [fragment]=\"fragment\"\n [preserveFragment]=\"preserveFragment\"\n [disabled]=\"disabled\"\n mat-icon-button\n class=\"mat-elevation-z4\"\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n </a>\n <!-- Click with label... -->\n <a\n *ngIf=\"type === 'click' && label\"\n [color]=\"color\"\n [disabled]=\"disabled\"\n (click)=\"buttonClick.emit($event)\"\n mat-raised-button\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a\n *ngIf=\"type === 'click' && !label\"\n [color]=\"color\"\n [disabled]=\"disabled\"\n (click)=\"buttonClick.emit($event)\"\n mat-icon-button\n class=\"mat-elevation-z4\"\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n </a>\n\n <!-- External link with label... -->\n <a\n *ngIf=\"type === 'href' && label\"\n [attr.href]=\"href\"\n [color]=\"color\"\n [disabled]=\"disabled\"\n mat-raised-button\n target=\"_blank\"\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a\n *ngIf=\"type === 'href' && !label\"\n [attr.href]=\"href\"\n [color]=\"color\"\n [disabled]=\"disabled\"\n mat-icon-button\n class=\"mat-elevation-z4\"\n target=\"_blank\"\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n </a>\n</ng-container>\n", styles: ["natural-table-button{flex:1;display:flex;flex-direction:row;justify-content:flex-start;align-items:center}natural-table-button mat-icon:not(:last-child){margin-right:5px}natural-table-button a.mat-mdc-button{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:flex-start}natural-table-button a.mat-mdc-button .mdc-button__label{display:flex;flex-direction:row;align-items:center}natural-table-button>span{padding:0 8px;display:flex;flex-direction:row;justify-content:flex-start;align-items:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NaturalIconDirective, selector: "mat-icon[naturalIcon]", inputs: ["naturalIcon", "size"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatIconAnchor, selector: "a[mat-icon-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
47
48
|
}
|
|
48
49
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: NaturalTableButtonComponent, decorators: [{
|
|
49
50
|
type: Component,
|
|
50
|
-
args: [{ selector: 'natural-table-button', encapsulation: ViewEncapsulation.None, standalone: true, imports: [
|
|
51
|
+
args: [{ selector: 'natural-table-button', encapsulation: ViewEncapsulation.None, standalone: true, imports: [CommonModule, MatIconModule, NaturalIconDirective, MatButtonModule, RouterLink], template: "<!-- Because directives can't be applied conditionally (routerLink, mat-button and mat-icon-button), we have to use different elements -->\n\n<!-- Edge case of a button without any kind of link at all -->\n<span *ngIf=\"type === 'none'\">\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span *ngIf=\"label\">{{ label }}</span>\n</span>\n\n<ng-container *ngIf=\"!raised\">\n <!-- App routed link with label... -->\n <a\n *ngIf=\"type === 'routerLink' && label\"\n [color]=\"color\"\n [queryParams]=\"queryParams\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [routerLink]=\"navigate\"\n [fragment]=\"fragment\"\n [preserveFragment]=\"preserveFragment\"\n [disabled]=\"disabled\"\n mat-button\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a\n *ngIf=\"type === 'routerLink' && !label\"\n [color]=\"color\"\n [queryParams]=\"queryParams\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [routerLink]=\"navigate\"\n [fragment]=\"fragment\"\n [preserveFragment]=\"preserveFragment\"\n [disabled]=\"disabled\"\n mat-icon-button\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n </a>\n\n <!-- Click with label... -->\n <a\n *ngIf=\"type === 'click' && label\"\n [color]=\"color\"\n (click)=\"buttonClick.emit($event)\"\n [disabled]=\"disabled\"\n mat-button\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a *ngIf=\"type === 'click' && !label\" (click)=\"buttonClick.emit($event)\" [disabled]=\"disabled\" mat-icon-button>\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n </a>\n\n <!-- External link with label... -->\n <a\n *ngIf=\"type === 'href' && label\"\n [attr.href]=\"href\"\n [color]=\"color\"\n [disabled]=\"disabled\"\n mat-button\n target=\"_blank\"\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a\n *ngIf=\"type === 'href' && !label\"\n [attr.href]=\"href\"\n [color]=\"color\"\n [disabled]=\"disabled\"\n mat-icon-button\n target=\"_blank\"\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n </a>\n</ng-container>\n\n<ng-container *ngIf=\"raised\">\n <!-- App routed link with label... -->\n <a\n *ngIf=\"type === 'routerLink' && label\"\n [color]=\"color\"\n [queryParams]=\"queryParams\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [routerLink]=\"navigate\"\n [fragment]=\"fragment\"\n [preserveFragment]=\"preserveFragment\"\n [disabled]=\"disabled\"\n mat-raised-button\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a\n *ngIf=\"type === 'routerLink' && !label\"\n [color]=\"color\"\n [queryParams]=\"queryParams\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [routerLink]=\"navigate\"\n [fragment]=\"fragment\"\n [preserveFragment]=\"preserveFragment\"\n [disabled]=\"disabled\"\n mat-icon-button\n class=\"mat-elevation-z4\"\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n </a>\n <!-- Click with label... -->\n <a\n *ngIf=\"type === 'click' && label\"\n [color]=\"color\"\n [disabled]=\"disabled\"\n (click)=\"buttonClick.emit($event)\"\n mat-raised-button\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a\n *ngIf=\"type === 'click' && !label\"\n [color]=\"color\"\n [disabled]=\"disabled\"\n (click)=\"buttonClick.emit($event)\"\n mat-icon-button\n class=\"mat-elevation-z4\"\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n </a>\n\n <!-- External link with label... -->\n <a\n *ngIf=\"type === 'href' && label\"\n [attr.href]=\"href\"\n [color]=\"color\"\n [disabled]=\"disabled\"\n mat-raised-button\n target=\"_blank\"\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a\n *ngIf=\"type === 'href' && !label\"\n [attr.href]=\"href\"\n [color]=\"color\"\n [disabled]=\"disabled\"\n mat-icon-button\n class=\"mat-elevation-z4\"\n target=\"_blank\"\n >\n <mat-icon *ngIf=\"icon\" [naturalIcon]=\"icon\"></mat-icon>\n </a>\n</ng-container>\n", styles: ["natural-table-button{flex:1;display:flex;flex-direction:row;justify-content:flex-start;align-items:center}natural-table-button mat-icon:not(:last-child){margin-right:5px}natural-table-button a.mat-mdc-button{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:flex-start}natural-table-button a.mat-mdc-button .mdc-button__label{display:flex;flex-direction:row;align-items:center}natural-table-button>span{padding:0 8px;display:flex;flex-direction:row;justify-content:flex-start;align-items:center}\n"] }]
|
|
51
52
|
}], propDecorators: { queryParams: [{
|
|
52
53
|
type: Input
|
|
53
54
|
}], queryParamsHandling: [{
|
|
@@ -73,4 +74,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImpor
|
|
|
73
74
|
}], buttonClick: [{
|
|
74
75
|
type: Output
|
|
75
76
|
}] } });
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL3RhYmxlLWJ1dHRvbi90YWJsZS1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvdGFibGUtYnV0dG9uL3RhYmxlLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ25HLE9BQU8sRUFBOEIsVUFBVSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFeEUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFFckM7Ozs7Ozs7OztHQVNHO0FBU0gsTUFBTSxPQUFPLDJCQUEyQjtJQVJ4QztRQVNvQixnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUN6Qix3QkFBbUIsR0FBd0IsRUFBRSxDQUFDO1FBSTlDLGFBQVEsR0FBNkIsRUFBRSxDQUFDO1FBRXhDLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUN6QixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFFTCxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFjLENBQUM7UUFDaEUsU0FBSSxHQUE2QyxNQUFNLENBQUM7S0FhbEU7SUFYVSxXQUFXO1FBQ2QsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLE1BQU0sSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxNQUFNLEVBQUU7WUFDL0QsSUFBSSxDQUFDLElBQUksR0FBRyxZQUFZLENBQUM7U0FDNUI7YUFBTSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDbEIsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUM7U0FDdEI7YUFBTSxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFO1lBQ2xDLElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDO1NBQ3ZCO2FBQU07WUFDSCxJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQztTQUN0QjtJQUNMLENBQUM7OEdBekJRLDJCQUEyQjtrR0FBM0IsMkJBQTJCLHdaQzFCeEMscWhLQXFLQSxta0JEN0ljLElBQUksNEZBQUUsYUFBYSxvTEFBRSxvQkFBb0Isa0dBQUUsZUFBZSx5YkFBRSxVQUFVOzsyRkFFdkUsMkJBQTJCO2tCQVJ2QyxTQUFTOytCQUNJLHNCQUFzQixpQkFHakIsaUJBQWlCLENBQUMsSUFBSSxjQUN6QixJQUFJLFdBQ1AsQ0FBQyxJQUFJLEVBQUUsYUFBYSxFQUFFLG9CQUFvQixFQUFFLGVBQWUsRUFBRSxVQUFVLENBQUM7OEJBR2pFLFdBQVc7c0JBQTFCLEtBQUs7Z0JBQ1UsbUJBQW1CO3NCQUFsQyxLQUFLO2dCQUNVLEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ1UsSUFBSTtzQkFBbkIsS0FBSztnQkFDVSxJQUFJO3NCQUFuQixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxnQkFBZ0I7c0JBQS9CLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxNQUFNO3NCQUFyQixLQUFLO2dCQUNVLEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ29CLFdBQVc7c0JBQXBDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7UGFyYW1zLCBRdWVyeVBhcmFtc0hhbmRsaW5nLCBSb3V0ZXJMaW5rfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtUaGVtZVBhbGV0dGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHtNYXRCdXR0b25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQge05hdHVyYWxJY29uRGlyZWN0aXZlfSBmcm9tICcuLi9pY29uL2ljb24uZGlyZWN0aXZlJztcbmltcG9ydCB7TWF0SWNvbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQge05nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbi8qKlxuICogQnV0dG9uIHRoYXQgZml0cyB3ZWxsIGluIGEgYDxtYXQtdGFibGU+YCBhbmQgc3VwcG9ydCBlaXRoZXJcbiAqIHJvdXRlIG5hdmlnYXRpb24gdmlhIGBuYXZpZ2F0ZWAsIG9yIGV4dGVybmFsIFVSTCB2aWEgYGhyZWZgLFxuICogb3IgY2FsbGJhY2sgdmlhIGBidXR0b25DbGlja2AuXG4gKlxuICogSWYgbmVpdGhlciBgbmF2aWdhdGVgIG5vciBgaHJlZmAgbm9yIGBidXR0b25DbGlja2AgaGF2ZSBhIG1lYW5pbmdmdWwgdmFsdWUsIHRoZW5cbiAqIGl0IHdpbGwgc2hvdyB0aGUgaWNvbiBhbmQvb3IgbGFiZWwgaW4gYSBgPHNwYW4+YCBpbnN0ZWFkIG9mIGEgYnV0dG9uLlxuICpcbiAqIEV4dGVybmFsIFVSTCB3aWxsIGFsd2F5cyBiZSBvcGVuZWQgaW4gbmV3IHRhYi5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduYXR1cmFsLXRhYmxlLWJ1dHRvbicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdGFibGUtYnV0dG9uLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtOZ0lmLCBNYXRJY29uTW9kdWxlLCBOYXR1cmFsSWNvbkRpcmVjdGl2ZSwgTWF0QnV0dG9uTW9kdWxlLCBSb3V0ZXJMaW5rXSxcbn0pXG5leHBvcnQgY2xhc3MgTmF0dXJhbFRhYmxlQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgICBASW5wdXQoKSBwdWJsaWMgcXVlcnlQYXJhbXM6IFBhcmFtcyA9IHt9O1xuICAgIEBJbnB1dCgpIHB1YmxpYyBxdWVyeVBhcmFtc0hhbmRsaW5nOiBRdWVyeVBhcmFtc0hhbmRsaW5nID0gJyc7XG4gICAgQElucHV0KCkgcHVibGljIGxhYmVsPzogc3RyaW5nIHwgbnVsbDtcbiAgICBASW5wdXQoKSBwdWJsaWMgaWNvbj86IHN0cmluZyB8IG51bGw7XG4gICAgQElucHV0KCkgcHVibGljIGhyZWY/OiBzdHJpbmcgfCBudWxsO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBuYXZpZ2F0ZTogUm91dGVyTGlua1sncm91dGVyTGluayddID0gW107XG4gICAgQElucHV0KCkgcHVibGljIGZyYWdtZW50Pzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBwcmVzZXJ2ZUZyYWdtZW50ID0gZmFsc2U7XG4gICAgQElucHV0KCkgcHVibGljIGRpc2FibGVkID0gZmFsc2U7XG4gICAgQElucHV0KCkgcHVibGljIHJhaXNlZCA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBjb2xvcjogVGhlbWVQYWxldHRlO1xuICAgIEBPdXRwdXQoKSBwdWJsaWMgcmVhZG9ubHkgYnV0dG9uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XG4gICAgcHVibGljIHR5cGU6ICdyb3V0ZXJMaW5rJyB8ICdocmVmJyB8ICdjbGljaycgfCAnbm9uZScgPSAnbm9uZSc7XG5cbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm5hdmlnYXRlPy5sZW5ndGggfHwgT2JqZWN0LmtleXModGhpcy5xdWVyeVBhcmFtcykubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLnR5cGUgPSAncm91dGVyTGluayc7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5ocmVmKSB7XG4gICAgICAgICAgICB0aGlzLnR5cGUgPSAnaHJlZic7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5idXR0b25DbGljay5vYnNlcnZlZCkge1xuICAgICAgICAgICAgdGhpcy50eXBlID0gJ2NsaWNrJztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMudHlwZSA9ICdub25lJztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjwhLS0gQmVjYXVzZSBkaXJlY3RpdmVzIGNhbid0IGJlIGFwcGxpZWQgY29uZGl0aW9uYWxseSAocm91dGVyTGluaywgbWF0LWJ1dHRvbiBhbmQgbWF0LWljb24tYnV0dG9uKSwgd2UgaGF2ZSB0byB1c2UgZGlmZmVyZW50IGVsZW1lbnRzIC0tPlxuXG48IS0tIEVkZ2UgY2FzZSBvZiBhIGJ1dHRvbiB3aXRob3V0IGFueSBraW5kIG9mIGxpbmsgYXQgYWxsIC0tPlxuPHNwYW4gKm5nSWY9XCJ0eXBlID09PSAnbm9uZSdcIj5cbiAgICA8bWF0LWljb24gKm5nSWY9XCJpY29uXCIgW25hdHVyYWxJY29uXT1cImljb25cIj48L21hdC1pY29uPlxuICAgIDxzcGFuICpuZ0lmPVwibGFiZWxcIj57eyBsYWJlbCB9fTwvc3Bhbj5cbjwvc3Bhbj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFyYWlzZWRcIj5cbiAgICA8IS0tIEFwcCByb3V0ZWQgbGluayB3aXRoIGxhYmVsLi4uIC0tPlxuICAgIDxhXG4gICAgICAgICpuZ0lmPVwidHlwZSA9PT0gJ3JvdXRlckxpbmsnICYmIGxhYmVsXCJcbiAgICAgICAgW2NvbG9yXT1cImNvbG9yXCJcbiAgICAgICAgW3F1ZXJ5UGFyYW1zXT1cInF1ZXJ5UGFyYW1zXCJcbiAgICAgICAgW3F1ZXJ5UGFyYW1zSGFuZGxpbmddPVwicXVlcnlQYXJhbXNIYW5kbGluZ1wiXG4gICAgICAgIFtyb3V0ZXJMaW5rXT1cIm5hdmlnYXRlXCJcbiAgICAgICAgW2ZyYWdtZW50XT1cImZyYWdtZW50XCJcbiAgICAgICAgW3ByZXNlcnZlRnJhZ21lbnRdPVwicHJlc2VydmVGcmFnbWVudFwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIG1hdC1idXR0b25cbiAgICA+XG4gICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImljb25cIiBbbmF0dXJhbEljb25dPVwiaWNvblwiPjwvbWF0LWljb24+XG4gICAgICAgIDxzcGFuPnt7IGxhYmVsIH19PC9zcGFuPlxuICAgIDwvYT5cblxuICAgIDwhLS0gLi4uIGFuZCB3aXRob3V0IGxhYmVsIC0tPlxuICAgIDxhXG4gICAgICAgICpuZ0lmPVwidHlwZSA9PT0gJ3JvdXRlckxpbmsnICYmICFsYWJlbFwiXG4gICAgICAgIFtjb2xvcl09XCJjb2xvclwiXG4gICAgICAgIFtxdWVyeVBhcmFtc109XCJxdWVyeVBhcmFtc1wiXG4gICAgICAgIFtxdWVyeVBhcmFtc0hhbmRsaW5nXT1cInF1ZXJ5UGFyYW1zSGFuZGxpbmdcIlxuICAgICAgICBbcm91dGVyTGlua109XCJuYXZpZ2F0ZVwiXG4gICAgICAgIFtmcmFnbWVudF09XCJmcmFnbWVudFwiXG4gICAgICAgIFtwcmVzZXJ2ZUZyYWdtZW50XT1cInByZXNlcnZlRnJhZ21lbnRcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICA+XG4gICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImljb25cIiBbbmF0dXJhbEljb25dPVwiaWNvblwiPjwvbWF0LWljb24+XG4gICAgPC9hPlxuXG4gICAgPCEtLSBDbGljayB3aXRoIGxhYmVsLi4uIC0tPlxuICAgIDxhXG4gICAgICAgICpuZ0lmPVwidHlwZSA9PT0gJ2NsaWNrJyAmJiBsYWJlbFwiXG4gICAgICAgIFtjb2xvcl09XCJjb2xvclwiXG4gICAgICAgIChjbGljayk9XCJidXR0b25DbGljay5lbWl0KCRldmVudClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBtYXQtYnV0dG9uXG4gICAgPlxuICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJpY29uXCIgW25hdHVyYWxJY29uXT1cImljb25cIj48L21hdC1pY29uPlxuICAgICAgICA8c3Bhbj57eyBsYWJlbCB9fTwvc3Bhbj5cbiAgICA8L2E+XG5cbiAgICA8IS0tIC4uLiBhbmQgd2l0aG91dCBsYWJlbCAtLT5cbiAgICA8YSAqbmdJZj1cInR5cGUgPT09ICdjbGljaycgJiYgIWxhYmVsXCIgKGNsaWNrKT1cImJ1dHRvbkNsaWNrLmVtaXQoJGV2ZW50KVwiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIG1hdC1pY29uLWJ1dHRvbj5cbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiaWNvblwiIFtuYXR1cmFsSWNvbl09XCJpY29uXCI+PC9tYXQtaWNvbj5cbiAgICA8L2E+XG5cbiAgICA8IS0tIEV4dGVybmFsIGxpbmsgd2l0aCBsYWJlbC4uLiAtLT5cbiAgICA8YVxuICAgICAgICAqbmdJZj1cInR5cGUgPT09ICdocmVmJyAmJiBsYWJlbFwiXG4gICAgICAgIFthdHRyLmhyZWZdPVwiaHJlZlwiXG4gICAgICAgIFtjb2xvcl09XCJjb2xvclwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICA+XG4gICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImljb25cIiBbbmF0dXJhbEljb25dPVwiaWNvblwiPjwvbWF0LWljb24+XG4gICAgICAgIDxzcGFuPnt7IGxhYmVsIH19PC9zcGFuPlxuICAgIDwvYT5cblxuICAgIDwhLS0gLi4uIGFuZCB3aXRob3V0IGxhYmVsIC0tPlxuICAgIDxhXG4gICAgICAgICpuZ0lmPVwidHlwZSA9PT0gJ2hyZWYnICYmICFsYWJlbFwiXG4gICAgICAgIFthdHRyLmhyZWZdPVwiaHJlZlwiXG4gICAgICAgIFtjb2xvcl09XCJjb2xvclwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgID5cbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiaWNvblwiIFtuYXR1cmFsSWNvbl09XCJpY29uXCI+PC9tYXQtaWNvbj5cbiAgICA8L2E+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cInJhaXNlZFwiPlxuICAgIDwhLS0gQXBwIHJvdXRlZCBsaW5rIHdpdGggbGFiZWwuLi4gLS0+XG4gICAgPGFcbiAgICAgICAgKm5nSWY9XCJ0eXBlID09PSAncm91dGVyTGluaycgJiYgbGFiZWxcIlxuICAgICAgICBbY29sb3JdPVwiY29sb3JcIlxuICAgICAgICBbcXVlcnlQYXJhbXNdPVwicXVlcnlQYXJhbXNcIlxuICAgICAgICBbcXVlcnlQYXJhbXNIYW5kbGluZ109XCJxdWVyeVBhcmFtc0hhbmRsaW5nXCJcbiAgICAgICAgW3JvdXRlckxpbmtdPVwibmF2aWdhdGVcIlxuICAgICAgICBbZnJhZ21lbnRdPVwiZnJhZ21lbnRcIlxuICAgICAgICBbcHJlc2VydmVGcmFnbWVudF09XCJwcmVzZXJ2ZUZyYWdtZW50XCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgbWF0LXJhaXNlZC1idXR0b25cbiAgICA+XG4gICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImljb25cIiBbbmF0dXJhbEljb25dPVwiaWNvblwiPjwvbWF0LWljb24+XG4gICAgICAgIDxzcGFuPnt7IGxhYmVsIH19PC9zcGFuPlxuICAgIDwvYT5cblxuICAgIDwhLS0gLi4uIGFuZCB3aXRob3V0IGxhYmVsIC0tPlxuICAgIDxhXG4gICAgICAgICpuZ0lmPVwidHlwZSA9PT0gJ3JvdXRlckxpbmsnICYmICFsYWJlbFwiXG4gICAgICAgIFtjb2xvcl09XCJjb2xvclwiXG4gICAgICAgIFtxdWVyeVBhcmFtc109XCJxdWVyeVBhcmFtc1wiXG4gICAgICAgIFtxdWVyeVBhcmFtc0hhbmRsaW5nXT1cInF1ZXJ5UGFyYW1zSGFuZGxpbmdcIlxuICAgICAgICBbcm91dGVyTGlua109XCJuYXZpZ2F0ZVwiXG4gICAgICAgIFtmcmFnbWVudF09XCJmcmFnbWVudFwiXG4gICAgICAgIFtwcmVzZXJ2ZUZyYWdtZW50XT1cInByZXNlcnZlRnJhZ21lbnRcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgY2xhc3M9XCJtYXQtZWxldmF0aW9uLXo0XCJcbiAgICA+XG4gICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImljb25cIiBbbmF0dXJhbEljb25dPVwiaWNvblwiPjwvbWF0LWljb24+XG4gICAgPC9hPlxuICAgIDwhLS0gQ2xpY2sgd2l0aCBsYWJlbC4uLiAtLT5cbiAgICA8YVxuICAgICAgICAqbmdJZj1cInR5cGUgPT09ICdjbGljaycgJiYgbGFiZWxcIlxuICAgICAgICBbY29sb3JdPVwiY29sb3JcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAoY2xpY2spPVwiYnV0dG9uQ2xpY2suZW1pdCgkZXZlbnQpXCJcbiAgICAgICAgbWF0LXJhaXNlZC1idXR0b25cbiAgICA+XG4gICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImljb25cIiBbbmF0dXJhbEljb25dPVwiaWNvblwiPjwvbWF0LWljb24+XG4gICAgICAgIDxzcGFuPnt7IGxhYmVsIH19PC9zcGFuPlxuICAgIDwvYT5cblxuICAgIDwhLS0gLi4uIGFuZCB3aXRob3V0IGxhYmVsIC0tPlxuICAgIDxhXG4gICAgICAgICpuZ0lmPVwidHlwZSA9PT0gJ2NsaWNrJyAmJiAhbGFiZWxcIlxuICAgICAgICBbY29sb3JdPVwiY29sb3JcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAoY2xpY2spPVwiYnV0dG9uQ2xpY2suZW1pdCgkZXZlbnQpXCJcbiAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgIGNsYXNzPVwibWF0LWVsZXZhdGlvbi16NFwiXG4gICAgPlxuICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJpY29uXCIgW25hdHVyYWxJY29uXT1cImljb25cIj48L21hdC1pY29uPlxuICAgIDwvYT5cblxuICAgIDwhLS0gRXh0ZXJuYWwgbGluayB3aXRoIGxhYmVsLi4uIC0tPlxuICAgIDxhXG4gICAgICAgICpuZ0lmPVwidHlwZSA9PT0gJ2hyZWYnICYmIGxhYmVsXCJcbiAgICAgICAgW2F0dHIuaHJlZl09XCJocmVmXCJcbiAgICAgICAgW2NvbG9yXT1cImNvbG9yXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgbWF0LXJhaXNlZC1idXR0b25cbiAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICA+XG4gICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImljb25cIiBbbmF0dXJhbEljb25dPVwiaWNvblwiPjwvbWF0LWljb24+XG4gICAgICAgIDxzcGFuPnt7IGxhYmVsIH19PC9zcGFuPlxuICAgIDwvYT5cblxuICAgIDwhLS0gLi4uIGFuZCB3aXRob3V0IGxhYmVsIC0tPlxuICAgIDxhXG4gICAgICAgICpuZ0lmPVwidHlwZSA9PT0gJ2hyZWYnICYmICFsYWJlbFwiXG4gICAgICAgIFthdHRyLmhyZWZdPVwiaHJlZlwiXG4gICAgICAgIFtjb2xvcl09XCJjb2xvclwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICBjbGFzcz1cIm1hdC1lbGV2YXRpb24tejRcIlxuICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgID5cbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiaWNvblwiIFtuYXR1cmFsSWNvbl09XCJpY29uXCI+PC9tYXQtaWNvbj5cbiAgICA8L2E+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL3RhYmxlLWJ1dHRvbi90YWJsZS1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvdGFibGUtYnV0dG9uL3RhYmxlLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ25HLE9BQU8sRUFBOEIsVUFBVSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFeEUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7Ozs7O0FBRTdDOzs7Ozs7Ozs7R0FTRztBQVNILE1BQU0sT0FBTywyQkFBMkI7SUFSeEM7UUFTb0IsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFDekIsd0JBQW1CLEdBQXdCLEVBQUUsQ0FBQztRQUk5QyxhQUFRLEdBQTZCLEVBQUUsQ0FBQztRQUV4QyxxQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDekIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBRUwsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBQ2hFLFNBQUksR0FBNkMsTUFBTSxDQUFDO0tBYWxFO0lBWFUsV0FBVztRQUNkLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxNQUFNLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsTUFBTSxFQUFFO1lBQy9ELElBQUksQ0FBQyxJQUFJLEdBQUcsWUFBWSxDQUFDO1NBQzVCO2FBQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDO1NBQ3RCO2FBQU0sSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRTtZQUNsQyxJQUFJLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQztTQUN2QjthQUFNO1lBQ0gsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUM7U0FDdEI7SUFDTCxDQUFDOzhHQXpCUSwyQkFBMkI7a0dBQTNCLDJCQUEyQix3WkMxQnhDLHFoS0FxS0Esa2tCRDdJYyxZQUFZLGtJQUFFLGFBQWEsb0xBQUUsb0JBQW9CLGtHQUFFLGVBQWUseWJBQUUsVUFBVTs7MkZBRS9FLDJCQUEyQjtrQkFSdkMsU0FBUzsrQkFDSSxzQkFBc0IsaUJBR2pCLGlCQUFpQixDQUFDLElBQUksY0FDekIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGFBQWEsRUFBRSxvQkFBb0IsRUFBRSxlQUFlLEVBQUUsVUFBVSxDQUFDOzhCQUd6RSxXQUFXO3NCQUExQixLQUFLO2dCQUNVLG1CQUFtQjtzQkFBbEMsS0FBSztnQkFDVSxLQUFLO3NCQUFwQixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1UsSUFBSTtzQkFBbkIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsZ0JBQWdCO3NCQUEvQixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsTUFBTTtzQkFBckIsS0FBSztnQkFDVSxLQUFLO3NCQUFwQixLQUFLO2dCQUNvQixXQUFXO3NCQUFwQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1BhcmFtcywgUXVlcnlQYXJhbXNIYW5kbGluZywgUm91dGVyTGlua30gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7VGhlbWVQYWxldHRlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7TWF0QnV0dG9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHtOYXR1cmFsSWNvbkRpcmVjdGl2ZX0gZnJvbSAnLi4vaWNvbi9pY29uLmRpcmVjdGl2ZSc7XG5pbXBvcnQge01hdEljb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbi8qKlxuICogQnV0dG9uIHRoYXQgZml0cyB3ZWxsIGluIGEgYDxtYXQtdGFibGU+YCBhbmQgc3VwcG9ydCBlaXRoZXJcbiAqIHJvdXRlIG5hdmlnYXRpb24gdmlhIGBuYXZpZ2F0ZWAsIG9yIGV4dGVybmFsIFVSTCB2aWEgYGhyZWZgLFxuICogb3IgY2FsbGJhY2sgdmlhIGBidXR0b25DbGlja2AuXG4gKlxuICogSWYgbmVpdGhlciBgbmF2aWdhdGVgIG5vciBgaHJlZmAgbm9yIGBidXR0b25DbGlja2AgaGF2ZSBhIG1lYW5pbmdmdWwgdmFsdWUsIHRoZW5cbiAqIGl0IHdpbGwgc2hvdyB0aGUgaWNvbiBhbmQvb3IgbGFiZWwgaW4gYSBgPHNwYW4+YCBpbnN0ZWFkIG9mIGEgYnV0dG9uLlxuICpcbiAqIEV4dGVybmFsIFVSTCB3aWxsIGFsd2F5cyBiZSBvcGVuZWQgaW4gbmV3IHRhYi5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduYXR1cmFsLXRhYmxlLWJ1dHRvbicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdGFibGUtYnV0dG9uLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdEljb25Nb2R1bGUsIE5hdHVyYWxJY29uRGlyZWN0aXZlLCBNYXRCdXR0b25Nb2R1bGUsIFJvdXRlckxpbmtdLFxufSlcbmV4cG9ydCBjbGFzcyBOYXR1cmFsVGFibGVCdXR0b25Db21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICAgIEBJbnB1dCgpIHB1YmxpYyBxdWVyeVBhcmFtczogUGFyYW1zID0ge307XG4gICAgQElucHV0KCkgcHVibGljIHF1ZXJ5UGFyYW1zSGFuZGxpbmc6IFF1ZXJ5UGFyYW1zSGFuZGxpbmcgPSAnJztcbiAgICBASW5wdXQoKSBwdWJsaWMgbGFiZWw/OiBzdHJpbmcgfCBudWxsO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBpY29uPzogc3RyaW5nIHwgbnVsbDtcbiAgICBASW5wdXQoKSBwdWJsaWMgaHJlZj86IHN0cmluZyB8IG51bGw7XG4gICAgQElucHV0KCkgcHVibGljIG5hdmlnYXRlOiBSb3V0ZXJMaW5rWydyb3V0ZXJMaW5rJ10gPSBbXTtcbiAgICBASW5wdXQoKSBwdWJsaWMgZnJhZ21lbnQ/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgQElucHV0KCkgcHVibGljIHByZXNlcnZlRnJhZ21lbnQgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBwdWJsaWMgcmFpc2VkID0gZmFsc2U7XG4gICAgQElucHV0KCkgcHVibGljIGNvbG9yOiBUaGVtZVBhbGV0dGU7XG4gICAgQE91dHB1dCgpIHB1YmxpYyByZWFkb25seSBidXR0b25DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcbiAgICBwdWJsaWMgdHlwZTogJ3JvdXRlckxpbmsnIHwgJ2hyZWYnIHwgJ2NsaWNrJyB8ICdub25lJyA9ICdub25lJztcblxuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMubmF2aWdhdGU/Lmxlbmd0aCB8fCBPYmplY3Qua2V5cyh0aGlzLnF1ZXJ5UGFyYW1zKS5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMudHlwZSA9ICdyb3V0ZXJMaW5rJztcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmhyZWYpIHtcbiAgICAgICAgICAgIHRoaXMudHlwZSA9ICdocmVmJztcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmJ1dHRvbkNsaWNrLm9ic2VydmVkKSB7XG4gICAgICAgICAgICB0aGlzLnR5cGUgPSAnY2xpY2snO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy50eXBlID0gJ25vbmUnO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPCEtLSBCZWNhdXNlIGRpcmVjdGl2ZXMgY2FuJ3QgYmUgYXBwbGllZCBjb25kaXRpb25hbGx5IChyb3V0ZXJMaW5rLCBtYXQtYnV0dG9uIGFuZCBtYXQtaWNvbi1idXR0b24pLCB3ZSBoYXZlIHRvIHVzZSBkaWZmZXJlbnQgZWxlbWVudHMgLS0+XG5cbjwhLS0gRWRnZSBjYXNlIG9mIGEgYnV0dG9uIHdpdGhvdXQgYW55IGtpbmQgb2YgbGluayBhdCBhbGwgLS0+XG48c3BhbiAqbmdJZj1cInR5cGUgPT09ICdub25lJ1wiPlxuICAgIDxtYXQtaWNvbiAqbmdJZj1cImljb25cIiBbbmF0dXJhbEljb25dPVwiaWNvblwiPjwvbWF0LWljb24+XG4gICAgPHNwYW4gKm5nSWY9XCJsYWJlbFwiPnt7IGxhYmVsIH19PC9zcGFuPlxuPC9zcGFuPlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwiIXJhaXNlZFwiPlxuICAgIDwhLS0gQXBwIHJvdXRlZCBsaW5rIHdpdGggbGFiZWwuLi4gLS0+XG4gICAgPGFcbiAgICAgICAgKm5nSWY9XCJ0eXBlID09PSAncm91dGVyTGluaycgJiYgbGFiZWxcIlxuICAgICAgICBbY29sb3JdPVwiY29sb3JcIlxuICAgICAgICBbcXVlcnlQYXJhbXNdPVwicXVlcnlQYXJhbXNcIlxuICAgICAgICBbcXVlcnlQYXJhbXNIYW5kbGluZ109XCJxdWVyeVBhcmFtc0hhbmRsaW5nXCJcbiAgICAgICAgW3JvdXRlckxpbmtdPVwibmF2aWdhdGVcIlxuICAgICAgICBbZnJhZ21lbnRdPVwiZnJhZ21lbnRcIlxuICAgICAgICBbcHJlc2VydmVGcmFnbWVudF09XCJwcmVzZXJ2ZUZyYWdtZW50XCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgbWF0LWJ1dHRvblxuICAgID5cbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiaWNvblwiIFtuYXR1cmFsSWNvbl09XCJpY29uXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgPHNwYW4+e3sgbGFiZWwgfX08L3NwYW4+XG4gICAgPC9hPlxuXG4gICAgPCEtLSAuLi4gYW5kIHdpdGhvdXQgbGFiZWwgLS0+XG4gICAgPGFcbiAgICAgICAgKm5nSWY9XCJ0eXBlID09PSAncm91dGVyTGluaycgJiYgIWxhYmVsXCJcbiAgICAgICAgW2NvbG9yXT1cImNvbG9yXCJcbiAgICAgICAgW3F1ZXJ5UGFyYW1zXT1cInF1ZXJ5UGFyYW1zXCJcbiAgICAgICAgW3F1ZXJ5UGFyYW1zSGFuZGxpbmddPVwicXVlcnlQYXJhbXNIYW5kbGluZ1wiXG4gICAgICAgIFtyb3V0ZXJMaW5rXT1cIm5hdmlnYXRlXCJcbiAgICAgICAgW2ZyYWdtZW50XT1cImZyYWdtZW50XCJcbiAgICAgICAgW3ByZXNlcnZlRnJhZ21lbnRdPVwicHJlc2VydmVGcmFnbWVudFwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgID5cbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiaWNvblwiIFtuYXR1cmFsSWNvbl09XCJpY29uXCI+PC9tYXQtaWNvbj5cbiAgICA8L2E+XG5cbiAgICA8IS0tIENsaWNrIHdpdGggbGFiZWwuLi4gLS0+XG4gICAgPGFcbiAgICAgICAgKm5nSWY9XCJ0eXBlID09PSAnY2xpY2snICYmIGxhYmVsXCJcbiAgICAgICAgW2NvbG9yXT1cImNvbG9yXCJcbiAgICAgICAgKGNsaWNrKT1cImJ1dHRvbkNsaWNrLmVtaXQoJGV2ZW50KVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIG1hdC1idXR0b25cbiAgICA+XG4gICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImljb25cIiBbbmF0dXJhbEljb25dPVwiaWNvblwiPjwvbWF0LWljb24+XG4gICAgICAgIDxzcGFuPnt7IGxhYmVsIH19PC9zcGFuPlxuICAgIDwvYT5cblxuICAgIDwhLS0gLi4uIGFuZCB3aXRob3V0IGxhYmVsIC0tPlxuICAgIDxhICpuZ0lmPVwidHlwZSA9PT0gJ2NsaWNrJyAmJiAhbGFiZWxcIiAoY2xpY2spPVwiYnV0dG9uQ2xpY2suZW1pdCgkZXZlbnQpXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgbWF0LWljb24tYnV0dG9uPlxuICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJpY29uXCIgW25hdHVyYWxJY29uXT1cImljb25cIj48L21hdC1pY29uPlxuICAgIDwvYT5cblxuICAgIDwhLS0gRXh0ZXJuYWwgbGluayB3aXRoIGxhYmVsLi4uIC0tPlxuICAgIDxhXG4gICAgICAgICpuZ0lmPVwidHlwZSA9PT0gJ2hyZWYnICYmIGxhYmVsXCJcbiAgICAgICAgW2F0dHIuaHJlZl09XCJocmVmXCJcbiAgICAgICAgW2NvbG9yXT1cImNvbG9yXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgID5cbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiaWNvblwiIFtuYXR1cmFsSWNvbl09XCJpY29uXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgPHNwYW4+e3sgbGFiZWwgfX08L3NwYW4+XG4gICAgPC9hPlxuXG4gICAgPCEtLSAuLi4gYW5kIHdpdGhvdXQgbGFiZWwgLS0+XG4gICAgPGFcbiAgICAgICAgKm5nSWY9XCJ0eXBlID09PSAnaHJlZicgJiYgIWxhYmVsXCJcbiAgICAgICAgW2F0dHIuaHJlZl09XCJocmVmXCJcbiAgICAgICAgW2NvbG9yXT1cImNvbG9yXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgPlxuICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJpY29uXCIgW25hdHVyYWxJY29uXT1cImljb25cIj48L21hdC1pY29uPlxuICAgIDwvYT5cbjwvbmctY29udGFpbmVyPlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwicmFpc2VkXCI+XG4gICAgPCEtLSBBcHAgcm91dGVkIGxpbmsgd2l0aCBsYWJlbC4uLiAtLT5cbiAgICA8YVxuICAgICAgICAqbmdJZj1cInR5cGUgPT09ICdyb3V0ZXJMaW5rJyAmJiBsYWJlbFwiXG4gICAgICAgIFtjb2xvcl09XCJjb2xvclwiXG4gICAgICAgIFtxdWVyeVBhcmFtc109XCJxdWVyeVBhcmFtc1wiXG4gICAgICAgIFtxdWVyeVBhcmFtc0hhbmRsaW5nXT1cInF1ZXJ5UGFyYW1zSGFuZGxpbmdcIlxuICAgICAgICBbcm91dGVyTGlua109XCJuYXZpZ2F0ZVwiXG4gICAgICAgIFtmcmFnbWVudF09XCJmcmFnbWVudFwiXG4gICAgICAgIFtwcmVzZXJ2ZUZyYWdtZW50XT1cInByZXNlcnZlRnJhZ21lbnRcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgID5cbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiaWNvblwiIFtuYXR1cmFsSWNvbl09XCJpY29uXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgPHNwYW4+e3sgbGFiZWwgfX08L3NwYW4+XG4gICAgPC9hPlxuXG4gICAgPCEtLSAuLi4gYW5kIHdpdGhvdXQgbGFiZWwgLS0+XG4gICAgPGFcbiAgICAgICAgKm5nSWY9XCJ0eXBlID09PSAncm91dGVyTGluaycgJiYgIWxhYmVsXCJcbiAgICAgICAgW2NvbG9yXT1cImNvbG9yXCJcbiAgICAgICAgW3F1ZXJ5UGFyYW1zXT1cInF1ZXJ5UGFyYW1zXCJcbiAgICAgICAgW3F1ZXJ5UGFyYW1zSGFuZGxpbmddPVwicXVlcnlQYXJhbXNIYW5kbGluZ1wiXG4gICAgICAgIFtyb3V0ZXJMaW5rXT1cIm5hdmlnYXRlXCJcbiAgICAgICAgW2ZyYWdtZW50XT1cImZyYWdtZW50XCJcbiAgICAgICAgW3ByZXNlcnZlRnJhZ21lbnRdPVwicHJlc2VydmVGcmFnbWVudFwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICBjbGFzcz1cIm1hdC1lbGV2YXRpb24tejRcIlxuICAgID5cbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiaWNvblwiIFtuYXR1cmFsSWNvbl09XCJpY29uXCI+PC9tYXQtaWNvbj5cbiAgICA8L2E+XG4gICAgPCEtLSBDbGljayB3aXRoIGxhYmVsLi4uIC0tPlxuICAgIDxhXG4gICAgICAgICpuZ0lmPVwidHlwZSA9PT0gJ2NsaWNrJyAmJiBsYWJlbFwiXG4gICAgICAgIFtjb2xvcl09XCJjb2xvclwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIChjbGljayk9XCJidXR0b25DbGljay5lbWl0KCRldmVudClcIlxuICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgID5cbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiaWNvblwiIFtuYXR1cmFsSWNvbl09XCJpY29uXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgPHNwYW4+e3sgbGFiZWwgfX08L3NwYW4+XG4gICAgPC9hPlxuXG4gICAgPCEtLSAuLi4gYW5kIHdpdGhvdXQgbGFiZWwgLS0+XG4gICAgPGFcbiAgICAgICAgKm5nSWY9XCJ0eXBlID09PSAnY2xpY2snICYmICFsYWJlbFwiXG4gICAgICAgIFtjb2xvcl09XCJjb2xvclwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIChjbGljayk9XCJidXR0b25DbGljay5lbWl0KCRldmVudClcIlxuICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgY2xhc3M9XCJtYXQtZWxldmF0aW9uLXo0XCJcbiAgICA+XG4gICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImljb25cIiBbbmF0dXJhbEljb25dPVwiaWNvblwiPjwvbWF0LWljb24+XG4gICAgPC9hPlxuXG4gICAgPCEtLSBFeHRlcm5hbCBsaW5rIHdpdGggbGFiZWwuLi4gLS0+XG4gICAgPGFcbiAgICAgICAgKm5nSWY9XCJ0eXBlID09PSAnaHJlZicgJiYgbGFiZWxcIlxuICAgICAgICBbYXR0ci5ocmVmXT1cImhyZWZcIlxuICAgICAgICBbY29sb3JdPVwiY29sb3JcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgID5cbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiaWNvblwiIFtuYXR1cmFsSWNvbl09XCJpY29uXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgPHNwYW4+e3sgbGFiZWwgfX08L3NwYW4+XG4gICAgPC9hPlxuXG4gICAgPCEtLSAuLi4gYW5kIHdpdGhvdXQgbGFiZWwgLS0+XG4gICAgPGFcbiAgICAgICAgKm5nSWY9XCJ0eXBlID09PSAnaHJlZicgJiYgIWxhYmVsXCJcbiAgICAgICAgW2F0dHIuaHJlZl09XCJocmVmXCJcbiAgICAgICAgW2NvbG9yXT1cImNvbG9yXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgIGNsYXNzPVwibWF0LWVsZXZhdGlvbi16NFwiXG4gICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgPlxuICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJpY29uXCIgW25hdHVyYWxJY29uXT1cImljb25cIj48L21hdC1pY29uPlxuICAgIDwvYT5cbjwvbmctY29udGFpbmVyPlxuIl19
|