@falcon-ng/tailwind 0.0.7 → 0.0.10
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/component/auto-complete/auto-complete.component.mjs +6 -7
- package/esm2022/lib/component/bottom-sheet/bottom-sheet.component.mjs +7 -8
- package/esm2022/lib/component/button/button.component.mjs +5 -6
- package/esm2022/lib/component/button-toggle/button-toggle.component.mjs +5 -6
- package/esm2022/lib/component/checkbox/checkbox.component.mjs +5 -6
- package/esm2022/lib/component/chips/chip.component.mjs +6 -7
- package/esm2022/lib/component/date-picker/date-picker.component.mjs +5 -6
- package/esm2022/lib/component/dialog/dialog.component.mjs +7 -8
- package/esm2022/lib/component/pagination/pagination.component.mjs +6 -7
- package/esm2022/lib/component/progress-bar/progress-bar.component.mjs +5 -6
- package/esm2022/lib/component/progress-spinner/progress-spinner.component.mjs +5 -6
- package/esm2022/lib/component/radio/radio.component.mjs +5 -6
- package/esm2022/lib/component/rich-text-editor/rich-text-editor.component.mjs +5 -6
- package/esm2022/lib/component/select/select.component.mjs +6 -7
- package/esm2022/lib/component/slide-toggle/slide-toggle.component.mjs +5 -6
- package/esm2022/lib/component/slider/slider.component.mjs +5 -6
- package/esm2022/lib/component/snack-bar/snack-bar.component.mjs +5 -6
- package/esm2022/lib/component/table/table.component.mjs +5 -6
- package/esm2022/lib/component/textarea/textarea.component.mjs +5 -6
- package/esm2022/lib/component/textbox/textbox.component.mjs +5 -6
- package/esm2022/lib/control-builder/control-builder.component.mjs +5 -6
- package/esm2022/lib/falcon-core.module.mjs +6 -7
- package/esm2022/lib/model/constant.mjs +2 -3
- package/esm2022/lib/model/environments.mjs +1 -1
- package/esm2022/lib/module/angularmaterial.module.mjs +6 -7
- package/esm2022/lib/reactive-field.directive.mjs +6 -7
- package/esm2022/lib/service/appsetting.service.mjs +6 -7
- package/esm2022/lib/service/http/generic-http-client.mjs +6 -7
- package/esm2022/lib/service/http/igeneric-http-client.mjs +5 -6
- package/esm2022/lib/service/logger.service.mjs +6 -7
- package/esm2022/lib/service/open-id/TokenHelperService.mjs +6 -7
- package/esm2022/lib/service/open-id/auth-guard.service.mjs +6 -7
- package/esm2022/lib/service/open-id/auth.service.mjs +26 -40
- package/fesm2022/falcon-ng-tailwind.mjs +132 -145
- package/fesm2022/falcon-ng-tailwind.mjs.map +1 -1
- package/lib/service/open-id/auth.service.d.ts +7 -8
- package/package.json +3 -3
|
@@ -9,7 +9,7 @@ import * as i4 from "@angular/material/form-field";
|
|
|
9
9
|
import * as i5 from "@angular/material/tooltip";
|
|
10
10
|
import * as i6 from "@angular/common";
|
|
11
11
|
import * as i7 from "@angular/forms";
|
|
12
|
-
class AutoCompleteComponent {
|
|
12
|
+
export class AutoCompleteComponent {
|
|
13
13
|
constructor() {
|
|
14
14
|
this.autoCompleteControl = new FormControl();
|
|
15
15
|
}
|
|
@@ -23,12 +23,11 @@ class AutoCompleteComponent {
|
|
|
23
23
|
optionSelected(value) {
|
|
24
24
|
this.formGroup?.get(this.control?.formControlName)?.setValue(value);
|
|
25
25
|
}
|
|
26
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
27
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
26
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: AutoCompleteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
27
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.5", type: AutoCompleteComponent, selector: "falcon-auto-complete", ngImport: i0, template: "<mat-form-field *ngIf=\"control.appearance != 'plain'; else plainInput\" [appearance]=\"control.appearance\"\n [formGroup]=\"formGroup\" [ngStyle]=\"control.style\" [ngClass]=\"control.class\">\n <mat-label>{{control.label}}</mat-label>\n <input matInput [formControl]=\"autoCompleteControl\" [formControlName]=\"control.formControlName\"\n [placeholder]=\"control.placeHolder\" [type]=\"control.type\" [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n [matAutocomplete]=\"auto\"\n [required]=\"formGroup.get(control.formControlName)?.errors !== null && formGroup.get(control.formControlName)?.errors?.['required']\">\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)='optionSelected($event.option.viewValue)'>\n <mat-option *ngFor=\"let item of filteredOptions | async\" [value]=\"item.key\">\n {{item.value}}\n </mat-option>\n </mat-autocomplete>\n\n <span matPrefix [matTooltip]=\"control.prefix.toolTipText!\"\n [ngClass]=\"{'material-icons': control.prefix.isIcon}\">{{control.prefix.text}} </span>\n <span matSuffix [matTooltip]=\"control.suffix.toolTipText!\"\n [ngClass]=\"{'material-icons': control.suffix.isIcon}\">{{control.suffix.text}} </span>\n\n <mat-hint>{{control.hint.text}}</mat-hint>\n <ng-container *ngFor=\"let validation of control.validations;\" ngProjectAs=\"mat-error\">\n <mat-error *ngIf=\"formGroup.get(control.formControlName)?.hasError(validation.name)\">{{validation.message}}\n </mat-error>\n </ng-container>\n</mat-form-field>\n\n<ng-template #plainInput>\n <div [formGroup]=\"formGroup\" [ngStyle]=\"control.style\" [ngClass]=\"control.class\">\n <input type=\"text\" [formControl]=\"autoCompleteControl\" [formControlName]=\"control.formControlName\"\n [placeholder]=\"control.placeHolder\" [type]=\"control.type\" [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n [matAutocomplete]=\"auto\"\n [required]=\"formGroup.get(control.formControlName)?.errors !== null && formGroup.get(control.formControlName)?.errors?.['required']\"\n class=\"bg-gray-200 appearance-none border-2 border-gray-200 rounded w-full py-2 px-4 text-gray-700 leading-tight focus:outline-none focus:bg-white focus:border-purple-500\">\n </div>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)='optionSelected($event.option.viewValue)'>\n <mat-option *ngFor=\"let item of filteredOptions | async\" [value]=\"item.key\">\n {{item.value}}\n </mat-option>\n </mat-autocomplete>\n</ng-template>", styles: [""], dependencies: [{ kind: "component", type: i1.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i2.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i1.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "directive", type: i3.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: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i7.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: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i7.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i7.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i7.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i7.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] }); }
|
|
28
28
|
}
|
|
29
|
-
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: AutoCompleteComponent, decorators: [{
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: AutoCompleteComponent, decorators: [{
|
|
31
30
|
type: Component,
|
|
32
31
|
args: [{ selector: 'falcon-auto-complete', template: "<mat-form-field *ngIf=\"control.appearance != 'plain'; else plainInput\" [appearance]=\"control.appearance\"\n [formGroup]=\"formGroup\" [ngStyle]=\"control.style\" [ngClass]=\"control.class\">\n <mat-label>{{control.label}}</mat-label>\n <input matInput [formControl]=\"autoCompleteControl\" [formControlName]=\"control.formControlName\"\n [placeholder]=\"control.placeHolder\" [type]=\"control.type\" [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n [matAutocomplete]=\"auto\"\n [required]=\"formGroup.get(control.formControlName)?.errors !== null && formGroup.get(control.formControlName)?.errors?.['required']\">\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)='optionSelected($event.option.viewValue)'>\n <mat-option *ngFor=\"let item of filteredOptions | async\" [value]=\"item.key\">\n {{item.value}}\n </mat-option>\n </mat-autocomplete>\n\n <span matPrefix [matTooltip]=\"control.prefix.toolTipText!\"\n [ngClass]=\"{'material-icons': control.prefix.isIcon}\">{{control.prefix.text}} </span>\n <span matSuffix [matTooltip]=\"control.suffix.toolTipText!\"\n [ngClass]=\"{'material-icons': control.suffix.isIcon}\">{{control.suffix.text}} </span>\n\n <mat-hint>{{control.hint.text}}</mat-hint>\n <ng-container *ngFor=\"let validation of control.validations;\" ngProjectAs=\"mat-error\">\n <mat-error *ngIf=\"formGroup.get(control.formControlName)?.hasError(validation.name)\">{{validation.message}}\n </mat-error>\n </ng-container>\n</mat-form-field>\n\n<ng-template #plainInput>\n <div [formGroup]=\"formGroup\" [ngStyle]=\"control.style\" [ngClass]=\"control.class\">\n <input type=\"text\" [formControl]=\"autoCompleteControl\" [formControlName]=\"control.formControlName\"\n [placeholder]=\"control.placeHolder\" [type]=\"control.type\" [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n [matAutocomplete]=\"auto\"\n [required]=\"formGroup.get(control.formControlName)?.errors !== null && formGroup.get(control.formControlName)?.errors?.['required']\"\n class=\"bg-gray-200 appearance-none border-2 border-gray-200 rounded w-full py-2 px-4 text-gray-700 leading-tight focus:outline-none focus:bg-white focus:border-purple-500\">\n </div>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)='optionSelected($event.option.viewValue)'>\n <mat-option *ngFor=\"let item of filteredOptions | async\" [value]=\"item.key\">\n {{item.value}}\n </mat-option>\n </mat-autocomplete>\n</ng-template>" }]
|
|
33
|
-
}], ctorParameters:
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
}], ctorParameters: () => [] });
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1jb21wbGV0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mYWxjb24tbmcvdGFpbHdpbmQvc3JjL2xpYi9jb21wb25lbnQvYXV0by1jb21wbGV0ZS9hdXRvLWNvbXBsZXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1uZy90YWlsd2luZC9zcmMvbGliL2NvbXBvbmVudC9hdXRvLWNvbXBsZXRlL2F1dG8tY29tcGxldGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFekQsT0FBTyxFQUFDLFdBQVcsRUFBWSxNQUFNLGdCQUFnQixDQUFDO0FBR3RELE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7OztBQU1oRCxNQUFNLE9BQU8scUJBQXFCO0lBSWhDO1FBREEsd0JBQW1CLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBR2pCLFFBQVE7UUFDTixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNySCxDQUFDO0lBRU8sT0FBTyxDQUFDLEtBQWE7UUFDM0IsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBZ0IsRUFBRSxFQUFFLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUM3RyxDQUFDO0lBRUQsY0FBYyxDQUFDLEtBQVU7UUFDdkIsSUFBSSxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxlQUFlLENBQUMsRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEUsQ0FBQzs4R0FsQlUscUJBQXFCO2tHQUFyQixxQkFBcUIsNERDWGxDLGkvRUFzQ2M7OzJGRDNCRCxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0Usc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Jhc2VDb250cm9sfSBmcm9tIFwiLi4vLi4vYmFzZS1jb250cm9sXCI7XG5pbXBvcnQge0Zvcm1Db250cm9sLCBGb3JtR3JvdXB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHtJT3B0aW9uc30gZnJvbSBcIi4uLy4uL21vZGVsL2ludGVyZmFjZVwiO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgbWFwLCBzdGFydFdpdGggfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmYWxjb24tYXV0by1jb21wbGV0ZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9hdXRvLWNvbXBsZXRlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYXV0by1jb21wbGV0ZS5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBBdXRvQ29tcGxldGVDb21wb25lbnQge1xuICBjb250cm9sITogQmFzZUNvbnRyb2w8c3RyaW5nPjtcbiAgZm9ybUdyb3VwITogRm9ybUdyb3VwO1xuICBhdXRvQ29tcGxldGVDb250cm9sID0gbmV3IEZvcm1Db250cm9sKCk7XG4gIGNvbnN0cnVjdG9yKCkgeyB9XG4gIGZpbHRlcmVkT3B0aW9ucyE6IE9ic2VydmFibGU8SU9wdGlvbnNbXT47XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5maWx0ZXJlZE9wdGlvbnMgPSB0aGlzLmF1dG9Db21wbGV0ZUNvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoc3RhcnRXaXRoKCcnKSxtYXAodmFsdWUgPT4gdGhpcy5fZmlsdGVyKHZhbHVlKSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZmlsdGVyKHZhbHVlOiBzdHJpbmcpOiBJT3B0aW9uc1tdIHtcbiAgICBjb25zdCBmaWx0ZXJWYWx1ZSA9IHZhbHVlLnRvTG93ZXJDYXNlKCk7XG4gICAgcmV0dXJuIHRoaXMuY29udHJvbC5vcHRpb25zLmZpbHRlcigob3B0aW9uOiBJT3B0aW9ucykgPT4gb3B0aW9uPy5rZXk/LnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoZmlsdGVyVmFsdWUpKTtcbiAgfVxuXG4gIG9wdGlvblNlbGVjdGVkKHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLmZvcm1Hcm91cD8uZ2V0KHRoaXMuY29udHJvbD8uZm9ybUNvbnRyb2xOYW1lKT8uc2V0VmFsdWUodmFsdWUpO1xuICB9XG59XG4iLCI8bWF0LWZvcm0tZmllbGQgKm5nSWY9XCJjb250cm9sLmFwcGVhcmFuY2UgIT0gJ3BsYWluJzsgZWxzZSBwbGFpbklucHV0XCIgW2FwcGVhcmFuY2VdPVwiY29udHJvbC5hcHBlYXJhbmNlXCJcbiAgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIiBbbmdTdHlsZV09XCJjb250cm9sLnN0eWxlXCIgW25nQ2xhc3NdPVwiY29udHJvbC5jbGFzc1wiPlxuICA8bWF0LWxhYmVsPnt7Y29udHJvbC5sYWJlbH19PC9tYXQtbGFiZWw+XG4gIDxpbnB1dCBtYXRJbnB1dCBbZm9ybUNvbnRyb2xdPVwiYXV0b0NvbXBsZXRlQ29udHJvbFwiIFtmb3JtQ29udHJvbE5hbWVdPVwiY29udHJvbC5mb3JtQ29udHJvbE5hbWVcIlxuICAgIFtwbGFjZWhvbGRlcl09XCJjb250cm9sLnBsYWNlSG9sZGVyXCIgW3R5cGVdPVwiY29udHJvbC50eXBlXCIgW25nU3R5bGVdPVwiY29udHJvbC5zdHlsZVwiIFtuZ0NsYXNzXT1cImNvbnRyb2wuY2xhc3NcIlxuICAgIFttYXRBdXRvY29tcGxldGVdPVwiYXV0b1wiXG4gICAgW3JlcXVpcmVkXT1cImZvcm1Hcm91cC5nZXQoY29udHJvbC5mb3JtQ29udHJvbE5hbWUpPy5lcnJvcnMgIT09IG51bGwgJiYgZm9ybUdyb3VwLmdldChjb250cm9sLmZvcm1Db250cm9sTmFtZSk/LmVycm9ycz8uWydyZXF1aXJlZCddXCI+XG4gIDxtYXQtYXV0b2NvbXBsZXRlICNhdXRvPVwibWF0QXV0b2NvbXBsZXRlXCIgKG9wdGlvblNlbGVjdGVkKT0nb3B0aW9uU2VsZWN0ZWQoJGV2ZW50Lm9wdGlvbi52aWV3VmFsdWUpJz5cbiAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBmaWx0ZXJlZE9wdGlvbnMgfCBhc3luY1wiIFt2YWx1ZV09XCJpdGVtLmtleVwiPlxuICAgICAge3tpdGVtLnZhbHVlfX1cbiAgICA8L21hdC1vcHRpb24+XG4gIDwvbWF0LWF1dG9jb21wbGV0ZT5cblxuICA8c3BhbiBtYXRQcmVmaXggW21hdFRvb2x0aXBdPVwiY29udHJvbC5wcmVmaXgudG9vbFRpcFRleHQhXCJcbiAgICBbbmdDbGFzc109XCJ7J21hdGVyaWFsLWljb25zJzogY29udHJvbC5wcmVmaXguaXNJY29ufVwiPnt7Y29udHJvbC5wcmVmaXgudGV4dH19ICZuYnNwOyZuYnNwOzwvc3Bhbj5cbiAgPHNwYW4gbWF0U3VmZml4IFttYXRUb29sdGlwXT1cImNvbnRyb2wuc3VmZml4LnRvb2xUaXBUZXh0IVwiXG4gICAgW25nQ2xhc3NdPVwieydtYXRlcmlhbC1pY29ucyc6IGNvbnRyb2wuc3VmZml4LmlzSWNvbn1cIj57e2NvbnRyb2wuc3VmZml4LnRleHR9fSAmbmJzcDsmbmJzcDs8L3NwYW4+XG5cbiAgPG1hdC1oaW50Pnt7Y29udHJvbC5oaW50LnRleHR9fTwvbWF0LWhpbnQ+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHZhbGlkYXRpb24gb2YgY29udHJvbC52YWxpZGF0aW9ucztcIiBuZ1Byb2plY3RBcz1cIm1hdC1lcnJvclwiPlxuICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJmb3JtR3JvdXAuZ2V0KGNvbnRyb2wuZm9ybUNvbnRyb2xOYW1lKT8uaGFzRXJyb3IodmFsaWRhdGlvbi5uYW1lKVwiPnt7dmFsaWRhdGlvbi5tZXNzYWdlfX1cbiAgICA8L21hdC1lcnJvcj5cbiAgPC9uZy1jb250YWluZXI+XG48L21hdC1mb3JtLWZpZWxkPlxuXG48bmctdGVtcGxhdGUgI3BsYWluSW5wdXQ+XG4gIDxkaXYgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIiBbbmdTdHlsZV09XCJjb250cm9sLnN0eWxlXCIgW25nQ2xhc3NdPVwiY29udHJvbC5jbGFzc1wiPlxuICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIFtmb3JtQ29udHJvbF09XCJhdXRvQ29tcGxldGVDb250cm9sXCIgW2Zvcm1Db250cm9sTmFtZV09XCJjb250cm9sLmZvcm1Db250cm9sTmFtZVwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwiY29udHJvbC5wbGFjZUhvbGRlclwiIFt0eXBlXT1cImNvbnRyb2wudHlwZVwiIFtuZ1N0eWxlXT1cImNvbnRyb2wuc3R5bGVcIiBbbmdDbGFzc109XCJjb250cm9sLmNsYXNzXCJcbiAgICAgIFttYXRBdXRvY29tcGxldGVdPVwiYXV0b1wiXG4gICAgICBbcmVxdWlyZWRdPVwiZm9ybUdyb3VwLmdldChjb250cm9sLmZvcm1Db250cm9sTmFtZSk/LmVycm9ycyAhPT0gbnVsbCAmJiBmb3JtR3JvdXAuZ2V0KGNvbnRyb2wuZm9ybUNvbnRyb2xOYW1lKT8uZXJyb3JzPy5bJ3JlcXVpcmVkJ11cIlxuICAgICAgY2xhc3M9XCJiZy1ncmF5LTIwMCBhcHBlYXJhbmNlLW5vbmUgYm9yZGVyLTIgYm9yZGVyLWdyYXktMjAwIHJvdW5kZWQgdy1mdWxsIHB5LTIgcHgtNCB0ZXh0LWdyYXktNzAwIGxlYWRpbmctdGlnaHQgZm9jdXM6b3V0bGluZS1ub25lIGZvY3VzOmJnLXdoaXRlIGZvY3VzOmJvcmRlci1wdXJwbGUtNTAwXCI+XG4gIDwvZGl2PlxuICA8bWF0LWF1dG9jb21wbGV0ZSAjYXV0bz1cIm1hdEF1dG9jb21wbGV0ZVwiIChvcHRpb25TZWxlY3RlZCk9J29wdGlvblNlbGVjdGVkKCRldmVudC5vcHRpb24udmlld1ZhbHVlKSc+XG4gICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IGl0ZW0gb2YgZmlsdGVyZWRPcHRpb25zIHwgYXN5bmNcIiBbdmFsdWVdPVwiaXRlbS5rZXlcIj5cbiAgICAgIHt7aXRlbS52YWx1ZX19XG4gICAgPC9tYXQtb3B0aW9uPlxuICA8L21hdC1hdXRvY29tcGxldGU+XG48L25nLXRlbXBsYXRlPiJdfQ==
|
|
@@ -5,7 +5,7 @@ import * as i1 from "@angular/material/bottom-sheet";
|
|
|
5
5
|
import * as i2 from "@angular/material/core";
|
|
6
6
|
import * as i3 from "@angular/material/list";
|
|
7
7
|
import * as i4 from "@angular/common";
|
|
8
|
-
class BottomSheetComponent {
|
|
8
|
+
export class BottomSheetComponent {
|
|
9
9
|
constructor(_bottomSheetRef, data) {
|
|
10
10
|
this._bottomSheetRef = _bottomSheetRef;
|
|
11
11
|
this.data = data;
|
|
@@ -16,15 +16,14 @@ class BottomSheetComponent {
|
|
|
16
16
|
this._bottomSheetRef.dismiss(item);
|
|
17
17
|
event.preventDefault();
|
|
18
18
|
}
|
|
19
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
20
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
19
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: BottomSheetComponent, deps: [{ token: i1.MatBottomSheetRef }, { token: MAT_BOTTOM_SHEET_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
20
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.5", type: BottomSheetComponent, selector: "lib-bottom-sheet", ngImport: i0, template: "<mat-nav-list>\n <ng-container *ngFor=\"let item of data\">\n <a [href]=\"item.link\" mat-list-item (click)=\"click($event,item)\">\n <span matListItemTitle>{{item.levelOneText}}</span>\n <span matLine>{{item.levelTwoText}}</span>\n </a>\n </ng-container>\n\n</mat-nav-list>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.MatLine, selector: "[mat-line], [matLine]" }, { kind: "component", type: i3.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i3.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i3.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
|
|
21
21
|
}
|
|
22
|
-
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: BottomSheetComponent, decorators: [{
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: BottomSheetComponent, decorators: [{
|
|
24
23
|
type: Component,
|
|
25
24
|
args: [{ selector: 'lib-bottom-sheet', template: "<mat-nav-list>\n <ng-container *ngFor=\"let item of data\">\n <a [href]=\"item.link\" mat-list-item (click)=\"click($event,item)\">\n <span matListItemTitle>{{item.levelOneText}}</span>\n <span matLine>{{item.levelTwoText}}</span>\n </a>\n </ng-container>\n\n</mat-nav-list>\n" }]
|
|
26
|
-
}], ctorParameters:
|
|
25
|
+
}], ctorParameters: () => [{ type: i1.MatBottomSheetRef }, { type: undefined, decorators: [{
|
|
27
26
|
type: Inject,
|
|
28
27
|
args: [MAT_BOTTOM_SHEET_DATA]
|
|
29
|
-
}] }]
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
}] }] });
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm90dG9tLXNoZWV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1uZy90YWlsd2luZC9zcmMvbGliL2NvbXBvbmVudC9ib3R0b20tc2hlZXQvYm90dG9tLXNoZWV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1uZy90YWlsd2luZC9zcmMvbGliL2NvbXBvbmVudC9ib3R0b20tc2hlZXQvYm90dG9tLXNoZWV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2hELE9BQU8sRUFBQyxxQkFBcUIsRUFBb0IsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7O0FBT3hGLE1BQU0sT0FBTyxvQkFBb0I7SUFDL0IsWUFBb0IsZUFBd0QsRUFBd0MsSUFBUztRQUF6RyxvQkFBZSxHQUFmLGVBQWUsQ0FBeUM7UUFBd0MsU0FBSSxHQUFKLElBQUksQ0FBSztJQUFJLENBQUM7SUFFbEksUUFBUTtJQUNSLENBQUM7SUFFRCxLQUFLLENBQUMsS0FBaUIsRUFBRSxJQUFVO1FBQ2pDLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN6QixDQUFDOzhHQVRVLG9CQUFvQixtREFDdUQscUJBQXFCO2tHQURoRyxvQkFBb0Isd0RDUmpDLHdTQVNBOzsyRkREYSxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0Usa0JBQWtCOzswQkFLbUQsTUFBTTsyQkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TUFUX0JPVFRPTV9TSEVFVF9EQVRBLCBNYXRCb3R0b21TaGVldFJlZn0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2JvdHRvbS1zaGVldFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItYm90dG9tLXNoZWV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2JvdHRvbS1zaGVldC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2JvdHRvbS1zaGVldC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEJvdHRvbVNoZWV0Q29tcG9uZW50IHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfYm90dG9tU2hlZXRSZWY6IE1hdEJvdHRvbVNoZWV0UmVmPEJvdHRvbVNoZWV0Q29tcG9uZW50PiwgQEluamVjdChNQVRfQk9UVE9NX1NIRUVUX0RBVEEpIHB1YmxpYyBkYXRhOiBhbnkpIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbiAgY2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQsIGl0ZW0gOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLl9ib3R0b21TaGVldFJlZi5kaXNtaXNzKGl0ZW0pO1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gIH1cbn1cbiIsIjxtYXQtbmF2LWxpc3Q+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZGF0YVwiPlxuICAgIDxhIFtocmVmXT1cIml0ZW0ubGlua1wiIG1hdC1saXN0LWl0ZW0gKGNsaWNrKT1cImNsaWNrKCRldmVudCxpdGVtKVwiPlxuICAgICAgPHNwYW4gbWF0TGlzdEl0ZW1UaXRsZT57e2l0ZW0ubGV2ZWxPbmVUZXh0fX08L3NwYW4+XG4gICAgICA8c3BhbiBtYXRMaW5lPnt7aXRlbS5sZXZlbFR3b1RleHR9fTwvc3Bhbj5cbiAgICA8L2E+XG4gIDwvbmctY29udGFpbmVyPlxuXG48L21hdC1uYXYtbGlzdD5cbiJdfQ==
|
|
@@ -4,18 +4,17 @@ import * as i1 from "@angular/material/button";
|
|
|
4
4
|
import * as i2 from "@angular/material/icon";
|
|
5
5
|
import * as i3 from "@angular/common";
|
|
6
6
|
import * as i4 from "@angular/router";
|
|
7
|
-
class ButtonComponent {
|
|
7
|
+
export class ButtonComponent {
|
|
8
8
|
constructor() {
|
|
9
9
|
this.btnClick = new EventEmitter();
|
|
10
10
|
}
|
|
11
11
|
childBtnClick() {
|
|
12
12
|
this.btnClick.emit("Button Click Event");
|
|
13
13
|
}
|
|
14
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
15
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
14
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
15
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.5", type: ButtonComponent, selector: "falcon-button", inputs: { control: "control", formGroup: "formGroup" }, outputs: { btnClick: "btnClick" }, ngImport: i0, template: "<div [ngStyle]=\"control.style\" [ngClass]=\"control.class\">\n <ng-container [ngSwitch]=\"control.appearance\">\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [color]=\"control.color\" [ngClass]=\"control.class\"\n [ngStyle]=\"control.style\" mat-button *ngSwitchCase=\"0\">\n <mat-icon *ngIf=\"control?.suffix?.isIcon\" style=\"margin-bottom: 1px;\">\n {{control.suffix.text}}</mat-icon> {{control.label}}\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\"\n mat-raised-button *ngSwitchCase=\"1\">\n <mat-icon *ngIf=\"control.suffix?.isIcon\" style=\"margin-bottom: 1px;\">\n {{control.suffix.text}}</mat-icon> {{control.label}}\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\"\n mat-stroked-button *ngSwitchCase=\"2\">\n <mat-icon *ngIf=\"control.suffix?.isIcon\" style=\"margin-bottom: 1px;\">\n {{control.suffix.text}}</mat-icon> {{control.label}}\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\"\n mat-flat-button *ngSwitchCase=\"3\">\n <mat-icon *ngIf=\"control.suffix.isIcon\" style=\"margin-bottom: 1px;\">\n {{control.suffix.text}}</mat-icon> {{control.label}}\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\"\n mat-icon-button [attr.aria-label]=\"control.label\" *ngSwitchCase=\"4\">\n <mat-icon>{{control.label}}</mat-icon>\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\" mat-fab\n [attr.aria-label]=\"control.label\" *ngSwitchCase=\"5\">\n <mat-icon>{{control.label}}</mat-icon>\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\" mat-mini-fab\n [attr.aria-label]=\"control.label\" *ngSwitchCase=\"6\">\n <mat-icon>{{control.label}}</mat-icon>\n </button>\n <a mat-stroked-button *ngSwitchCase=\"7\" [ngClass]=\"control.class\"\n [ngStyle]=\"control.style\" routerLink=\"[]\">{{control.label}}</a>\n <a mat-stroked-button *ngSwitchCase=\"8\" [ngClass]=\"control.class\"\n [ngStyle]=\"control.style\"\n href=\"{{control.value}}\">{{control.label}}</a>\n </ng-container>\n</div>", styles: [""], dependencies: [{ kind: "component", type: i1.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i1.MatMiniFabButton, selector: "button[mat-mini-fab]", exportAs: ["matButton"] }, { kind: "component", type: i1.MatFabButton, selector: "button[mat-fab]", inputs: ["extended"], exportAs: ["matButton"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
|
|
16
16
|
}
|
|
17
|
-
|
|
18
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ButtonComponent, decorators: [{
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: ButtonComponent, decorators: [{
|
|
19
18
|
type: Component,
|
|
20
19
|
args: [{ selector: 'falcon-button', template: "<div [ngStyle]=\"control.style\" [ngClass]=\"control.class\">\n <ng-container [ngSwitch]=\"control.appearance\">\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [color]=\"control.color\" [ngClass]=\"control.class\"\n [ngStyle]=\"control.style\" mat-button *ngSwitchCase=\"0\">\n <mat-icon *ngIf=\"control?.suffix?.isIcon\" style=\"margin-bottom: 1px;\">\n {{control.suffix.text}}</mat-icon> {{control.label}}\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\"\n mat-raised-button *ngSwitchCase=\"1\">\n <mat-icon *ngIf=\"control.suffix?.isIcon\" style=\"margin-bottom: 1px;\">\n {{control.suffix.text}}</mat-icon> {{control.label}}\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\"\n mat-stroked-button *ngSwitchCase=\"2\">\n <mat-icon *ngIf=\"control.suffix?.isIcon\" style=\"margin-bottom: 1px;\">\n {{control.suffix.text}}</mat-icon> {{control.label}}\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\"\n mat-flat-button *ngSwitchCase=\"3\">\n <mat-icon *ngIf=\"control.suffix.isIcon\" style=\"margin-bottom: 1px;\">\n {{control.suffix.text}}</mat-icon> {{control.label}}\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\"\n mat-icon-button [attr.aria-label]=\"control.label\" *ngSwitchCase=\"4\">\n <mat-icon>{{control.label}}</mat-icon>\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\" mat-fab\n [attr.aria-label]=\"control.label\" *ngSwitchCase=\"5\">\n <mat-icon>{{control.label}}</mat-icon>\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\" mat-mini-fab\n [attr.aria-label]=\"control.label\" *ngSwitchCase=\"6\">\n <mat-icon>{{control.label}}</mat-icon>\n </button>\n <a mat-stroked-button *ngSwitchCase=\"7\" [ngClass]=\"control.class\"\n [ngStyle]=\"control.style\" routerLink=\"[]\">{{control.label}}</a>\n <a mat-stroked-button *ngSwitchCase=\"8\" [ngClass]=\"control.class\"\n [ngStyle]=\"control.style\"\n href=\"{{control.value}}\">{{control.label}}</a>\n </ng-container>\n</div>" }]
|
|
21
20
|
}], propDecorators: { control: [{
|
|
@@ -25,4 +24,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImpor
|
|
|
25
24
|
}], btnClick: [{
|
|
26
25
|
type: Output
|
|
27
26
|
}] } });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1uZy90YWlsd2luZC9zcmMvbGliL2NvbXBvbmVudC9idXR0b24vYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1uZy90YWlsd2luZC9zcmMvbGliL2NvbXBvbmVudC9idXR0b24vYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7Ozs7OztBQVNyRSxNQUFNLE9BQU8sZUFBZTtJQUw1QjtRQVFZLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0tBSWpEO0lBSEMsYUFBYTtRQUNYLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDM0MsQ0FBQzs4R0FOVSxlQUFlO2tHQUFmLGVBQWUsZ0pDVDVCLGt1R0FxRE07OzJGRDVDTyxlQUFlO2tCQUwzQixTQUFTOytCQUNFLGVBQWU7OEJBS2hCLE9BQU87c0JBQWYsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNJLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybUdyb3VwfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7QmFzZUNvbnRyb2x9IGZyb20gXCIuLi8uLi9iYXNlLWNvbnRyb2xcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZmFsY29uLWJ1dHRvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9idXR0b24uY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIEJ1dHRvbkNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGNvbnRyb2whOiBCYXNlQ29udHJvbDxzdHJpbmc+O1xuICBASW5wdXQoKSBmb3JtR3JvdXAhOiBGb3JtR3JvdXA7XG4gIEBPdXRwdXQoKSBidG5DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBjaGlsZEJ0bkNsaWNrKCkge1xuICAgIHRoaXMuYnRuQ2xpY2suZW1pdChcIkJ1dHRvbiBDbGljayBFdmVudFwiKTtcbiAgfVxufVxuIiwiPGRpdiBbbmdTdHlsZV09XCJjb250cm9sLnN0eWxlXCIgW25nQ2xhc3NdPVwiY29udHJvbC5jbGFzc1wiPlxuICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImNvbnRyb2wuYXBwZWFyYW5jZVwiPlxuICAgICAgICA8YnV0dG9uIFtkaXNhYmxlZF09XCJjb250cm9sLmRpc2FibGVkXCIgKGNsaWNrKT1cImNoaWxkQnRuQ2xpY2soKVwiXG4gICAgICAgICAgICBbY29sb3JdPVwiY29udHJvbC5jb2xvclwiIFtuZ0NsYXNzXT1cImNvbnRyb2wuY2xhc3NcIlxuICAgICAgICAgICAgW25nU3R5bGVdPVwiY29udHJvbC5zdHlsZVwiIG1hdC1idXR0b24gKm5nU3dpdGNoQ2FzZT1cIjBcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImNvbnRyb2w/LnN1ZmZpeD8uaXNJY29uXCIgc3R5bGU9XCJtYXJnaW4tYm90dG9tOiAxcHg7XCI+XG4gICAgICAgICAgICAgICAge3tjb250cm9sLnN1ZmZpeC50ZXh0fX08L21hdC1pY29uPiZuYnNwO3t7Y29udHJvbC5sYWJlbH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIFtkaXNhYmxlZF09XCJjb250cm9sLmRpc2FibGVkXCIgKGNsaWNrKT1cImNoaWxkQnRuQ2xpY2soKVwiXG4gICAgICAgICAgICBbdHlwZV09XCJjb250cm9sLnR5cGVcIiBbbmdDbGFzc109XCJjb250cm9sLmNsYXNzXCJcbiAgICAgICAgICAgIFtjb2xvcl09XCJjb250cm9sLmNvbG9yXCIgW25nU3R5bGVdPVwiY29udHJvbC5zdHlsZVwiXG4gICAgICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvbiAqbmdTd2l0Y2hDYXNlPVwiMVwiPlxuICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiY29udHJvbC5zdWZmaXg/LmlzSWNvblwiIHN0eWxlPVwibWFyZ2luLWJvdHRvbTogMXB4O1wiPlxuICAgICAgICAgICAgICAgIHt7Y29udHJvbC5zdWZmaXgudGV4dH19PC9tYXQtaWNvbj4mbmJzcDt7e2NvbnRyb2wubGFiZWx9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiBbZGlzYWJsZWRdPVwiY29udHJvbC5kaXNhYmxlZFwiIChjbGljayk9XCJjaGlsZEJ0bkNsaWNrKClcIlxuICAgICAgICAgICAgW3R5cGVdPVwiY29udHJvbC50eXBlXCIgW25nQ2xhc3NdPVwiY29udHJvbC5jbGFzc1wiXG4gICAgICAgICAgICBbY29sb3JdPVwiY29udHJvbC5jb2xvclwiIFtuZ1N0eWxlXT1cImNvbnRyb2wuc3R5bGVcIlxuICAgICAgICAgICAgbWF0LXN0cm9rZWQtYnV0dG9uICpuZ1N3aXRjaENhc2U9XCIyXCI+XG4gICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJjb250cm9sLnN1ZmZpeD8uaXNJY29uXCIgc3R5bGU9XCJtYXJnaW4tYm90dG9tOiAxcHg7XCI+XG4gICAgICAgICAgICAgICAge3tjb250cm9sLnN1ZmZpeC50ZXh0fX08L21hdC1pY29uPiZuYnNwO3t7Y29udHJvbC5sYWJlbH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIFtkaXNhYmxlZF09XCJjb250cm9sLmRpc2FibGVkXCIgKGNsaWNrKT1cImNoaWxkQnRuQ2xpY2soKVwiXG4gICAgICAgICAgICBbdHlwZV09XCJjb250cm9sLnR5cGVcIiBbbmdDbGFzc109XCJjb250cm9sLmNsYXNzXCJcbiAgICAgICAgICAgIFtjb2xvcl09XCJjb250cm9sLmNvbG9yXCIgW25nU3R5bGVdPVwiY29udHJvbC5zdHlsZVwiXG4gICAgICAgICAgICBtYXQtZmxhdC1idXR0b24gKm5nU3dpdGNoQ2FzZT1cIjNcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImNvbnRyb2wuc3VmZml4LmlzSWNvblwiIHN0eWxlPVwibWFyZ2luLWJvdHRvbTogMXB4O1wiPlxuICAgICAgICAgICAgICAgIHt7Y29udHJvbC5zdWZmaXgudGV4dH19PC9tYXQtaWNvbj4mbmJzcDt7e2NvbnRyb2wubGFiZWx9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiBbZGlzYWJsZWRdPVwiY29udHJvbC5kaXNhYmxlZFwiIChjbGljayk9XCJjaGlsZEJ0bkNsaWNrKClcIlxuICAgICAgICAgICAgW3R5cGVdPVwiY29udHJvbC50eXBlXCIgW25nQ2xhc3NdPVwiY29udHJvbC5jbGFzc1wiXG4gICAgICAgICAgICBbY29sb3JdPVwiY29udHJvbC5jb2xvclwiIFtuZ1N0eWxlXT1cImNvbnRyb2wuc3R5bGVcIlxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uIFthdHRyLmFyaWEtbGFiZWxdPVwiY29udHJvbC5sYWJlbFwiICpuZ1N3aXRjaENhc2U9XCI0XCI+XG4gICAgICAgICAgICA8bWF0LWljb24+e3tjb250cm9sLmxhYmVsfX08L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiBbZGlzYWJsZWRdPVwiY29udHJvbC5kaXNhYmxlZFwiIChjbGljayk9XCJjaGlsZEJ0bkNsaWNrKClcIlxuICAgICAgICAgICAgW3R5cGVdPVwiY29udHJvbC50eXBlXCIgW25nQ2xhc3NdPVwiY29udHJvbC5jbGFzc1wiXG4gICAgICAgICAgICBbY29sb3JdPVwiY29udHJvbC5jb2xvclwiIFtuZ1N0eWxlXT1cImNvbnRyb2wuc3R5bGVcIiBtYXQtZmFiXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImNvbnRyb2wubGFiZWxcIiAqbmdTd2l0Y2hDYXNlPVwiNVwiPlxuICAgICAgICAgICAgPG1hdC1pY29uPnt7Y29udHJvbC5sYWJlbH19PC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b24gW2Rpc2FibGVkXT1cImNvbnRyb2wuZGlzYWJsZWRcIiAoY2xpY2spPVwiY2hpbGRCdG5DbGljaygpXCJcbiAgICAgICAgICAgIFt0eXBlXT1cImNvbnRyb2wudHlwZVwiIFtuZ0NsYXNzXT1cImNvbnRyb2wuY2xhc3NcIlxuICAgICAgICAgICAgW2NvbG9yXT1cImNvbnRyb2wuY29sb3JcIiBbbmdTdHlsZV09XCJjb250cm9sLnN0eWxlXCIgbWF0LW1pbmktZmFiXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImNvbnRyb2wubGFiZWxcIiAqbmdTd2l0Y2hDYXNlPVwiNlwiPlxuICAgICAgICAgICAgPG1hdC1pY29uPnt7Y29udHJvbC5sYWJlbH19PC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxhIG1hdC1zdHJva2VkLWJ1dHRvbiAqbmdTd2l0Y2hDYXNlPVwiN1wiIFtuZ0NsYXNzXT1cImNvbnRyb2wuY2xhc3NcIlxuICAgICAgICAgICAgW25nU3R5bGVdPVwiY29udHJvbC5zdHlsZVwiIHJvdXRlckxpbms9XCJbXVwiPnt7Y29udHJvbC5sYWJlbH19PC9hPlxuICAgICAgICA8YSBtYXQtc3Ryb2tlZC1idXR0b24gKm5nU3dpdGNoQ2FzZT1cIjhcIiBbbmdDbGFzc109XCJjb250cm9sLmNsYXNzXCJcbiAgICAgICAgICAgIFtuZ1N0eWxlXT1cImNvbnRyb2wuc3R5bGVcIlxuICAgICAgICAgICAgaHJlZj1cInt7Y29udHJvbC52YWx1ZX19XCI+e3tjb250cm9sLmxhYmVsfX08L2E+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2Rpdj4iXX0=
|
|
@@ -6,7 +6,7 @@ import * as i2 from "@angular/material/icon";
|
|
|
6
6
|
import * as i3 from "@angular/material/form-field";
|
|
7
7
|
import * as i4 from "@angular/common";
|
|
8
8
|
import * as i5 from "@angular/forms";
|
|
9
|
-
class ButtonToggleComponent {
|
|
9
|
+
export class ButtonToggleComponent {
|
|
10
10
|
constructor() {
|
|
11
11
|
this.toggleGroupChange = new EventEmitter();
|
|
12
12
|
}
|
|
@@ -20,14 +20,13 @@ class ButtonToggleComponent {
|
|
|
20
20
|
toggleChange($event) {
|
|
21
21
|
this.toggleGroupChange.emit($event.value);
|
|
22
22
|
}
|
|
23
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
24
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
23
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: ButtonToggleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
24
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.5", type: ButtonToggleComponent, selector: "falcon-button-toggle", outputs: { toggleGroupChange: "toggleGroupChange" }, ngImport: i0, template: "<div [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n [formGroup]=\"formGroup\">\n <mat-label [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n *ngIf=\"control.label != undefined\">\n {{control.label | titlecase}}\n </mat-label>\n <mat-button-toggle-group\n [formControlName]=\"control.formControlName != undefined ? control.formControlName : 'default'\"\n [appearance]=\"control.appearance\" [ngStyle]=\"control.style\"\n [ngClass]=\"control.class\" [attr.aria-label]=\"control.label\"\n class=\"botton-toggle\" (change)=\"toggleChange($event)\">\n <mat-button-toggle *ngFor=\"let item of control.options\" [value]=\"item?.value\"\n [ngStyle]=\"control.style\"\n [ngClass]=\"control.class\">\n <mat-icon [ngClass]=\"item?.class\" aria-hidden=\"false\" aria-label=\"item icon\" *ngIf=\"item?.icon != undefined\">\n {{item?.icon}}\n </mat-icon>\n {{item.viewValue | titlecase}}\n </mat-button-toggle>\n </mat-button-toggle-group>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i1.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i1.MatButtonToggle, selector: "mat-button-toggle", inputs: ["aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "disableRipple", "appearance", "checked", "disabled"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "pipe", type: i4.TitleCasePipe, name: "titlecase" }] }); }
|
|
25
25
|
}
|
|
26
|
-
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ButtonToggleComponent, decorators: [{
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: ButtonToggleComponent, decorators: [{
|
|
28
27
|
type: Component,
|
|
29
28
|
args: [{ selector: 'falcon-button-toggle', template: "<div [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n [formGroup]=\"formGroup\">\n <mat-label [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n *ngIf=\"control.label != undefined\">\n {{control.label | titlecase}}\n </mat-label>\n <mat-button-toggle-group\n [formControlName]=\"control.formControlName != undefined ? control.formControlName : 'default'\"\n [appearance]=\"control.appearance\" [ngStyle]=\"control.style\"\n [ngClass]=\"control.class\" [attr.aria-label]=\"control.label\"\n class=\"botton-toggle\" (change)=\"toggleChange($event)\">\n <mat-button-toggle *ngFor=\"let item of control.options\" [value]=\"item?.value\"\n [ngStyle]=\"control.style\"\n [ngClass]=\"control.class\">\n <mat-icon [ngClass]=\"item?.class\" aria-hidden=\"false\" aria-label=\"item icon\" *ngIf=\"item?.icon != undefined\">\n {{item?.icon}}\n </mat-icon>\n {{item.viewValue | titlecase}}\n </mat-button-toggle>\n </mat-button-toggle-group>\n</div>" }]
|
|
30
29
|
}], propDecorators: { toggleGroupChange: [{
|
|
31
30
|
type: Output
|
|
32
31
|
}] } });
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLXRvZ2dsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mYWxjb24tbmcvdGFpbHdpbmQvc3JjL2xpYi9jb21wb25lbnQvYnV0dG9uLXRvZ2dsZS9idXR0b24tdG9nZ2xlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1uZy90YWlsd2luZC9zcmMvbGliL2NvbXBvbmVudC9idXR0b24tdG9nZ2xlL2J1dHRvbi10b2dnbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxXQUFXLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7QUFTdEQsTUFBTSxPQUFPLHFCQUFxQjtJQUxsQztRQVFZLHNCQUFpQixHQUF3QyxJQUFJLFlBQVksRUFBeUIsQ0FBQztLQVk5RztJQVhDLFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssU0FBUyxFQUFFO1lBQ2hDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxTQUFTLENBQUM7Z0JBQzdCLE9BQU8sRUFBRSxJQUFJLFdBQVcsRUFBRTthQUMzQixDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFRCxZQUFZLENBQUMsTUFBVztRQUN0QixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QyxDQUFDOzhHQWRVLHFCQUFxQjtrR0FBckIscUJBQXFCLGlIQ1ZsQyxzaUNBb0JNOzsyRkRWTyxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0Usc0JBQXNCOzhCQU90QixpQkFBaUI7c0JBQTFCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBPbkluaXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1Db250cm9sLCBGb3JtR3JvdXB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHtCYXNlQ29udHJvbH0gZnJvbSBcIi4uLy4uL2Jhc2UtY29udHJvbFwiO1xuaW1wb3J0IHtNYXRCdXR0b25Ub2dnbGVDaGFuZ2V9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9idXR0b24tdG9nZ2xlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZhbGNvbi1idXR0b24tdG9nZ2xlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2J1dHRvbi10b2dnbGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9idXR0b24tdG9nZ2xlLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEJ1dHRvblRvZ2dsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGNvbnRyb2whOiBCYXNlQ29udHJvbDxzdHJpbmc+O1xuICBmb3JtR3JvdXAhOiBGb3JtR3JvdXA7XG4gIEBPdXRwdXQoKSB0b2dnbGVHcm91cENoYW5nZTogRXZlbnRFbWl0dGVyPE1hdEJ1dHRvblRvZ2dsZUNoYW5nZT4gPSBuZXcgRXZlbnRFbWl0dGVyPE1hdEJ1dHRvblRvZ2dsZUNoYW5nZT4oKTtcbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZm9ybUdyb3VwID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuZm9ybUdyb3VwID0gbmV3IEZvcm1Hcm91cCh7XG4gICAgICAgIGRlZmF1bHQ6IG5ldyBGb3JtQ29udHJvbCgpXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICB0b2dnbGVDaGFuZ2UoJGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnRvZ2dsZUdyb3VwQ2hhbmdlLmVtaXQoJGV2ZW50LnZhbHVlKTtcbiAgfVxufVxuIiwiPGRpdiBbbmdTdHlsZV09XCJjb250cm9sLnN0eWxlXCIgW25nQ2xhc3NdPVwiY29udHJvbC5jbGFzc1wiXG4gICAgIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCI+XG4gIDxtYXQtbGFiZWwgW25nU3R5bGVdPVwiY29udHJvbC5zdHlsZVwiIFtuZ0NsYXNzXT1cImNvbnRyb2wuY2xhc3NcIlxuICAgICAgICAgICAgICpuZ0lmPVwiY29udHJvbC5sYWJlbCAhPSB1bmRlZmluZWRcIj5cbiAgICB7e2NvbnRyb2wubGFiZWwgfCB0aXRsZWNhc2V9fVxuICA8L21hdC1sYWJlbD5cbiAgPG1hdC1idXR0b24tdG9nZ2xlLWdyb3VwXG4gICAgW2Zvcm1Db250cm9sTmFtZV09XCJjb250cm9sLmZvcm1Db250cm9sTmFtZSAhPSB1bmRlZmluZWQgPyBjb250cm9sLmZvcm1Db250cm9sTmFtZSA6ICdkZWZhdWx0J1wiXG4gICAgW2FwcGVhcmFuY2VdPVwiY29udHJvbC5hcHBlYXJhbmNlXCIgW25nU3R5bGVdPVwiY29udHJvbC5zdHlsZVwiXG4gICAgW25nQ2xhc3NdPVwiY29udHJvbC5jbGFzc1wiIFthdHRyLmFyaWEtbGFiZWxdPVwiY29udHJvbC5sYWJlbFwiXG4gICAgY2xhc3M9XCJib3R0b24tdG9nZ2xlXCIgKGNoYW5nZSk9XCJ0b2dnbGVDaGFuZ2UoJGV2ZW50KVwiPlxuICAgIDxtYXQtYnV0dG9uLXRvZ2dsZSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBjb250cm9sLm9wdGlvbnNcIiBbdmFsdWVdPVwiaXRlbT8udmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICAgICBbbmdTdHlsZV09XCJjb250cm9sLnN0eWxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiY29udHJvbC5jbGFzc1wiPlxuICAgICAgPG1hdC1pY29uIFtuZ0NsYXNzXT1cIml0ZW0/LmNsYXNzXCIgYXJpYS1oaWRkZW49XCJmYWxzZVwiIGFyaWEtbGFiZWw9XCJpdGVtIGljb25cIiAqbmdJZj1cIml0ZW0/Lmljb24gIT0gdW5kZWZpbmVkXCI+XG4gICAgICAgIHt7aXRlbT8uaWNvbn19XG4gICAgICA8L21hdC1pY29uPlxuICAgICAge3tpdGVtLnZpZXdWYWx1ZSB8IHRpdGxlY2FzZX19XG4gICAgPC9tYXQtYnV0dG9uLXRvZ2dsZT5cbiAgPC9tYXQtYnV0dG9uLXRvZ2dsZS1ncm91cD5cbjwvZGl2PiJdfQ==
|
|
@@ -3,17 +3,16 @@ import * as i0 from "@angular/core";
|
|
|
3
3
|
import * as i1 from "@angular/material/checkbox";
|
|
4
4
|
import * as i2 from "@angular/common";
|
|
5
5
|
import * as i3 from "@angular/forms";
|
|
6
|
-
class CheckboxComponent {
|
|
6
|
+
export class CheckboxComponent {
|
|
7
7
|
change($event) {
|
|
8
8
|
if (this.control.event !== undefined)
|
|
9
9
|
this.control?.event?.change?.emit($event);
|
|
10
10
|
}
|
|
11
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
12
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: CheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
12
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.5", type: CheckboxComponent, selector: "falcon-checkbox", ngImport: i0, template: "<div [formGroup]=\"formGroup\">\n <mat-checkbox [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n [color]=\"control.color != null ? control.color : 'accent'\" [labelPosition]=\"control.labelPosition\"\n [formControlName]=\"control.formControlName\" (change)=\"change($event)\">\n {{control.label}}</mat-checkbox>\n</div>", styles: [""], dependencies: [{ kind: "component", type: i1.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] }); }
|
|
13
13
|
}
|
|
14
|
-
|
|
15
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: CheckboxComponent, decorators: [{
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: CheckboxComponent, decorators: [{
|
|
16
15
|
type: Component,
|
|
17
16
|
args: [{ selector: 'falcon-checkbox', template: "<div [formGroup]=\"formGroup\">\n <mat-checkbox [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n [color]=\"control.color != null ? control.color : 'accent'\" [labelPosition]=\"control.labelPosition\"\n [formControlName]=\"control.formControlName\" (change)=\"change($event)\">\n {{control.label}}</mat-checkbox>\n</div>" }]
|
|
18
17
|
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmFsY29uLW5nL3RhaWx3aW5kL3NyYy9saWIvY29tcG9uZW50L2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1uZy90YWlsd2luZC9zcmMvbGliL2NvbXBvbmVudC9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7OztBQVMxQyxNQUFNLE9BQU8saUJBQWlCO0lBRzVCLE1BQU0sQ0FBQyxNQUFXO1FBQ2hCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEtBQUssU0FBUztZQUNsQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzlDLENBQUM7OEdBTlUsaUJBQWlCO2tHQUFqQixpQkFBaUIsdURDVDlCLGtXQUtNOzsyRkRJTyxpQkFBaUI7a0JBTDdCLFNBQVM7K0JBQ0UsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBCYXNlQ29udHJvbCB9IGZyb20gJy4uLy4uL2Jhc2UtY29udHJvbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZhbGNvbi1jaGVja2JveCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jaGVja2JveC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NoZWNrYm94LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIENoZWNrYm94Q29tcG9uZW50IHtcbiAgY29udHJvbCE6IEJhc2VDb250cm9sPHN0cmluZz47XG4gIGZvcm1Hcm91cCE6IEZvcm1Hcm91cDtcbiAgY2hhbmdlKCRldmVudDogYW55KSB7XG4gICAgaWYgKHRoaXMuY29udHJvbC5ldmVudCAhPT0gdW5kZWZpbmVkKVxuICAgICAgdGhpcy5jb250cm9sPy5ldmVudD8uY2hhbmdlPy5lbWl0KCRldmVudCk7XG4gIH1cbn1cbiIsIjxkaXYgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIj5cbiAgICA8bWF0LWNoZWNrYm94IFtuZ1N0eWxlXT1cImNvbnRyb2wuc3R5bGVcIiBbbmdDbGFzc109XCJjb250cm9sLmNsYXNzXCJcbiAgICAgICAgW2NvbG9yXT1cImNvbnRyb2wuY29sb3IgIT0gbnVsbCA/IGNvbnRyb2wuY29sb3IgOiAnYWNjZW50J1wiIFtsYWJlbFBvc2l0aW9uXT1cImNvbnRyb2wubGFiZWxQb3NpdGlvblwiXG4gICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiY29udHJvbC5mb3JtQ29udHJvbE5hbWVcIiAoY2hhbmdlKT1cImNoYW5nZSgkZXZlbnQpXCI+XG4gICAgICAgIHt7Y29udHJvbC5sYWJlbH19PC9tYXQtY2hlY2tib3g+XG48L2Rpdj4iXX0=
|
|
@@ -14,7 +14,7 @@ import * as i7 from "@angular/material/input";
|
|
|
14
14
|
import * as i8 from "@angular/material/form-field";
|
|
15
15
|
import * as i9 from "@angular/common";
|
|
16
16
|
import * as i10 from "@angular/router";
|
|
17
|
-
class ChipComponent {
|
|
17
|
+
export class ChipComponent {
|
|
18
18
|
constructor(fb) {
|
|
19
19
|
this.fb = fb;
|
|
20
20
|
this.separatorKeysCodes = [ENTER, COMMA];
|
|
@@ -86,14 +86,13 @@ class ChipComponent {
|
|
|
86
86
|
this.control.event.keyboardEnter?.emit(event);
|
|
87
87
|
this.chipTextInput.nativeElement.value = '';
|
|
88
88
|
}
|
|
89
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
90
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: ChipComponent, selector: "falcon-chip", inputs: { control: "control", formGroup: "formGroup" }, viewQueries: [{ propertyName: "chipAutoCompleteInput", first: true, predicate: ["chipAutoCompleteInput"], descendants: true }, { propertyName: "chipTextInput", first: true, predicate: ["chipTextInput"], descendants: true }, { propertyName: "matAutocomplete", first: true, predicate: ["auto"], descendants: true }], ngImport: i0, template: "<ng-container [ngSwitch]=\"control.type\">\n <mat-form-field class=\"chip-list\" *ngSwitchCase=\"'search'\" [appearance]=\"control.appearance\" [formGroup]=\"formGroup\"\n [ngStyle]=\"control.style\" [ngClass]=\"control.class\">\n <mat-label>{{control.label}}</mat-label>\n <mat-chip-grid #chipGrid aria-label=\"item selection\">\n <mat-chip-row *ngFor=\"let option of control.chipSelectedOptions\" [removable]=\"removable\"\n (removed)=\"remove(option)\">\n {{option.value}}\n <mat-icon matChipRemove *ngIf=\"removable\">cancel</mat-icon>\n </mat-chip-row>\n\n <input matInput #chipAutoCompleteInput [formControl]=\"autoCompleteControl\"\n [formArrayName]=\"control.formControlName\" [placeholder]=\"control.placeHolder\" [ngStyle]=\"control.style\"\n [ngClass]=\"control.class\" [matAutocomplete]=\"auto\" [matChipInputFor]=\"chipGrid\"\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\" (matChipInputTokenEnd)=\"add($event)\"\n [required]=\"formGroup.get(control.formControlName)?.errors !== null && formGroup.get(control.formControlName)?.errors?.['required']\"\n (keyup.enter)=\"keyboardEnterEvent($event)\">\n\n </mat-chip-grid>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"optionSelected($event)\">\n <mat-option *ngFor=\"let item of filteredOptions | async\" [value]=\"item.key\">\n {{item.value}}\n </mat-option>\n </mat-autocomplete>\n <mat-hint>\n <ng-container *ngIf=\"control.hint.link?.isLink; else elseBlock\">\n <ng-container *ngIf=\"control.hint.link?.queryParams !== undefined; else withoutQueryBlock\">\n <a [routerLink]=\"[control.hint.link?.routerLink]\" [queryParams]=\"{ query: control.hint.link?.queryParams }\"\n routerLinkActive=\"router-link-active\">{{control.hint.text}}</a>\n </ng-container>\n </ng-container>\n <ng-template #elseBlock>\n <span>{{control.hint.text}}</span>\n </ng-template>\n <ng-template #withoutQueryBlock>\n <a [routerLink]=\"[control.hint.link?.routerLink]\"\n routerLinkActive=\"router-link-active\">{{control.hint.text}}</a>\n </ng-template>\n </mat-hint>\n </mat-form-field>\n\n <mat-form-field class=\"chip-list\" *ngSwitchCase=\"'text'\" [appearance]=\"control.appearance\" [formGroup]=\"formGroup\"\n [ngStyle]=\"control.style\" [ngClass]=\"control.class\">\n <mat-label>{{control.label}}</mat-label>\n <mat-chip-grid #chipGrid aria-label=\"item selection\">\n <mat-chip-row *ngFor=\"let option of control.chipSelectedOptions\" [value]=\"selectable\" [removable]=\"removable\"\n (removed)=\"remove(option)\">\n {{option?.value}}\n <mat-icon matChipRemove *ngIf=\"removable\">cancel</mat-icon>\n </mat-chip-row>\n\n <input matInput #chipTextInput [formArrayName]=\"control.formControlName\" multiple\n [placeholder]=\"control.placeHolder\"\n [matChipInputFor]=\"chipGrid\" [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\" [matChipInputAddOnBlur]=\"addOnBlur\"\n (matChipInputTokenEnd)=\"add($event)\"\n [required]=\"formGroup.get(control.formControlName)?.errors !== null && formGroup.get(control.formControlName)?.errors?.['required']\"\n (keyup.enter)=\"keyboardEnterEvent($event)\">\n\n </mat-chip-grid>\n </mat-form-field>\n\n <mat-chip-listbox aria-label=\"Chips selection\" *ngSwitchDefault>\n <mat-chip color=\"{{control.color}}\" selected>{{control.label}}</mat-chip>\n </mat-chip-listbox>\n\n\n <mat-chip-set class=\"chip-list\" cdkDropList cdkDropListOrientation=\"horizontal\" (cdkDropListDropped)=\"drop($event)\"\n *ngSwitchCase=\"'dragDrop'\" class=\"example-chip\">\n <mat-chip class=\"example-box\" cdkDrag *ngFor=\"let option of control?.options\">\n {{option?.value}}\n </mat-chip>\n </mat-chip-set>\n\n</ng-container>", styles: [".chip-list{width:100%}\n"], dependencies: [{ kind: "directive", type: i2.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i3.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple", "hideSingleSelectionIndicator"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i4.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i3.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i5.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["color", "disabled", "disableRipple", "tabIndex", "role", "id", "aria-label", "aria-description", "value", "removable", "highlighted"], outputs: ["removed", "destroyed"], exportAs: ["matChip"] }, { kind: "component", type: i5.MatChipGrid, selector: "mat-chip-grid", inputs: ["tabIndex", "disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i5.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "component", type: i5.MatChipListbox, selector: "mat-chip-listbox", inputs: ["tabIndex", "multiple", "aria-orientation", "selectable", "compareWith", "required", "hideSingleSelectionIndicator", "value"], outputs: ["change"] }, { kind: "directive", type: i5.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i5.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["color", "disabled", "disableRipple", "tabIndex", "editable"], outputs: ["edited"] }, { kind: "component", type: i5.MatChipSet, selector: "mat-chip-set", inputs: ["disabled", "role"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i7.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: "component", type: i8.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.MatLabel, selector: "mat-label" }, { kind: "directive", type: i8.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i9.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i9.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i9.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i9.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i9.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i9.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i10.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i10.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "pipe", type: i9.AsyncPipe, name: "async" }] }); }
|
|
89
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: ChipComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
90
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.5", type: ChipComponent, selector: "falcon-chip", inputs: { control: "control", formGroup: "formGroup" }, viewQueries: [{ propertyName: "chipAutoCompleteInput", first: true, predicate: ["chipAutoCompleteInput"], descendants: true }, { propertyName: "chipTextInput", first: true, predicate: ["chipTextInput"], descendants: true }, { propertyName: "matAutocomplete", first: true, predicate: ["auto"], descendants: true }], ngImport: i0, template: "<ng-container [ngSwitch]=\"control.type\">\n <mat-form-field class=\"chip-list\" *ngSwitchCase=\"'search'\" [appearance]=\"control.appearance\" [formGroup]=\"formGroup\"\n [ngStyle]=\"control.style\" [ngClass]=\"control.class\">\n <mat-label>{{control.label}}</mat-label>\n <mat-chip-grid #chipGrid aria-label=\"item selection\">\n <mat-chip-row *ngFor=\"let option of control.chipSelectedOptions\" [removable]=\"removable\"\n (removed)=\"remove(option)\">\n {{option.value}}\n <mat-icon matChipRemove *ngIf=\"removable\">cancel</mat-icon>\n </mat-chip-row>\n\n <input matInput #chipAutoCompleteInput [formControl]=\"autoCompleteControl\"\n [formArrayName]=\"control.formControlName\" [placeholder]=\"control.placeHolder\" [ngStyle]=\"control.style\"\n [ngClass]=\"control.class\" [matAutocomplete]=\"auto\" [matChipInputFor]=\"chipGrid\"\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\" (matChipInputTokenEnd)=\"add($event)\"\n [required]=\"formGroup.get(control.formControlName)?.errors !== null && formGroup.get(control.formControlName)?.errors?.['required']\"\n (keyup.enter)=\"keyboardEnterEvent($event)\">\n\n </mat-chip-grid>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"optionSelected($event)\">\n <mat-option *ngFor=\"let item of filteredOptions | async\" [value]=\"item.key\">\n {{item.value}}\n </mat-option>\n </mat-autocomplete>\n <mat-hint>\n <ng-container *ngIf=\"control.hint.link?.isLink; else elseBlock\">\n <ng-container *ngIf=\"control.hint.link?.queryParams !== undefined; else withoutQueryBlock\">\n <a [routerLink]=\"[control.hint.link?.routerLink]\" [queryParams]=\"{ query: control.hint.link?.queryParams }\"\n routerLinkActive=\"router-link-active\">{{control.hint.text}}</a>\n </ng-container>\n </ng-container>\n <ng-template #elseBlock>\n <span>{{control.hint.text}}</span>\n </ng-template>\n <ng-template #withoutQueryBlock>\n <a [routerLink]=\"[control.hint.link?.routerLink]\"\n routerLinkActive=\"router-link-active\">{{control.hint.text}}</a>\n </ng-template>\n </mat-hint>\n </mat-form-field>\n\n <mat-form-field class=\"chip-list\" *ngSwitchCase=\"'text'\" [appearance]=\"control.appearance\" [formGroup]=\"formGroup\"\n [ngStyle]=\"control.style\" [ngClass]=\"control.class\">\n <mat-label>{{control.label}}</mat-label>\n <mat-chip-grid #chipGrid aria-label=\"item selection\">\n <mat-chip-row *ngFor=\"let option of control.chipSelectedOptions\" [value]=\"selectable\" [removable]=\"removable\"\n (removed)=\"remove(option)\">\n {{option?.value}}\n <mat-icon matChipRemove *ngIf=\"removable\">cancel</mat-icon>\n </mat-chip-row>\n\n <input matInput #chipTextInput [formArrayName]=\"control.formControlName\" multiple\n [placeholder]=\"control.placeHolder\"\n [matChipInputFor]=\"chipGrid\" [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\" [matChipInputAddOnBlur]=\"addOnBlur\"\n (matChipInputTokenEnd)=\"add($event)\"\n [required]=\"formGroup.get(control.formControlName)?.errors !== null && formGroup.get(control.formControlName)?.errors?.['required']\"\n (keyup.enter)=\"keyboardEnterEvent($event)\">\n\n </mat-chip-grid>\n </mat-form-field>\n\n <mat-chip-listbox aria-label=\"Chips selection\" *ngSwitchDefault>\n <mat-chip color=\"{{control.color}}\" selected>{{control.label}}</mat-chip>\n </mat-chip-listbox>\n\n\n <mat-chip-set class=\"chip-list\" cdkDropList cdkDropListOrientation=\"horizontal\" (cdkDropListDropped)=\"drop($event)\"\n *ngSwitchCase=\"'dragDrop'\" class=\"example-chip\">\n <mat-chip class=\"example-box\" cdkDrag *ngFor=\"let option of control?.options\">\n {{option?.value}}\n </mat-chip>\n </mat-chip-set>\n\n</ng-container>", styles: [".chip-list{width:100%}\n"], dependencies: [{ kind: "directive", type: i2.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i3.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i4.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i3.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i5.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["color", "disabled", "disableRipple", "tabIndex", "role", "id", "aria-label", "aria-description", "value", "removable", "highlighted"], outputs: ["removed", "destroyed"], exportAs: ["matChip"] }, { kind: "component", type: i5.MatChipGrid, selector: "mat-chip-grid", inputs: ["tabIndex", "disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i5.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "component", type: i5.MatChipListbox, selector: "mat-chip-listbox", inputs: ["tabIndex", "multiple", "aria-orientation", "selectable", "compareWith", "required", "hideSingleSelectionIndicator", "value"], outputs: ["change"] }, { kind: "directive", type: i5.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i5.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["color", "disabled", "disableRipple", "tabIndex", "editable"], outputs: ["edited"] }, { kind: "component", type: i5.MatChipSet, selector: "mat-chip-set", inputs: ["disabled", "role"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i7.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: "component", type: i8.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.MatLabel, selector: "mat-label" }, { kind: "directive", type: i8.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i9.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i9.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i9.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i9.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i9.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i9.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i10.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i10.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "pipe", type: i9.AsyncPipe, name: "async" }] }); }
|
|
91
91
|
}
|
|
92
|
-
|
|
93
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ChipComponent, decorators: [{
|
|
92
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: ChipComponent, decorators: [{
|
|
94
93
|
type: Component,
|
|
95
94
|
args: [{ selector: 'falcon-chip', template: "<ng-container [ngSwitch]=\"control.type\">\n <mat-form-field class=\"chip-list\" *ngSwitchCase=\"'search'\" [appearance]=\"control.appearance\" [formGroup]=\"formGroup\"\n [ngStyle]=\"control.style\" [ngClass]=\"control.class\">\n <mat-label>{{control.label}}</mat-label>\n <mat-chip-grid #chipGrid aria-label=\"item selection\">\n <mat-chip-row *ngFor=\"let option of control.chipSelectedOptions\" [removable]=\"removable\"\n (removed)=\"remove(option)\">\n {{option.value}}\n <mat-icon matChipRemove *ngIf=\"removable\">cancel</mat-icon>\n </mat-chip-row>\n\n <input matInput #chipAutoCompleteInput [formControl]=\"autoCompleteControl\"\n [formArrayName]=\"control.formControlName\" [placeholder]=\"control.placeHolder\" [ngStyle]=\"control.style\"\n [ngClass]=\"control.class\" [matAutocomplete]=\"auto\" [matChipInputFor]=\"chipGrid\"\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\" (matChipInputTokenEnd)=\"add($event)\"\n [required]=\"formGroup.get(control.formControlName)?.errors !== null && formGroup.get(control.formControlName)?.errors?.['required']\"\n (keyup.enter)=\"keyboardEnterEvent($event)\">\n\n </mat-chip-grid>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"optionSelected($event)\">\n <mat-option *ngFor=\"let item of filteredOptions | async\" [value]=\"item.key\">\n {{item.value}}\n </mat-option>\n </mat-autocomplete>\n <mat-hint>\n <ng-container *ngIf=\"control.hint.link?.isLink; else elseBlock\">\n <ng-container *ngIf=\"control.hint.link?.queryParams !== undefined; else withoutQueryBlock\">\n <a [routerLink]=\"[control.hint.link?.routerLink]\" [queryParams]=\"{ query: control.hint.link?.queryParams }\"\n routerLinkActive=\"router-link-active\">{{control.hint.text}}</a>\n </ng-container>\n </ng-container>\n <ng-template #elseBlock>\n <span>{{control.hint.text}}</span>\n </ng-template>\n <ng-template #withoutQueryBlock>\n <a [routerLink]=\"[control.hint.link?.routerLink]\"\n routerLinkActive=\"router-link-active\">{{control.hint.text}}</a>\n </ng-template>\n </mat-hint>\n </mat-form-field>\n\n <mat-form-field class=\"chip-list\" *ngSwitchCase=\"'text'\" [appearance]=\"control.appearance\" [formGroup]=\"formGroup\"\n [ngStyle]=\"control.style\" [ngClass]=\"control.class\">\n <mat-label>{{control.label}}</mat-label>\n <mat-chip-grid #chipGrid aria-label=\"item selection\">\n <mat-chip-row *ngFor=\"let option of control.chipSelectedOptions\" [value]=\"selectable\" [removable]=\"removable\"\n (removed)=\"remove(option)\">\n {{option?.value}}\n <mat-icon matChipRemove *ngIf=\"removable\">cancel</mat-icon>\n </mat-chip-row>\n\n <input matInput #chipTextInput [formArrayName]=\"control.formControlName\" multiple\n [placeholder]=\"control.placeHolder\"\n [matChipInputFor]=\"chipGrid\" [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\" [matChipInputAddOnBlur]=\"addOnBlur\"\n (matChipInputTokenEnd)=\"add($event)\"\n [required]=\"formGroup.get(control.formControlName)?.errors !== null && formGroup.get(control.formControlName)?.errors?.['required']\"\n (keyup.enter)=\"keyboardEnterEvent($event)\">\n\n </mat-chip-grid>\n </mat-form-field>\n\n <mat-chip-listbox aria-label=\"Chips selection\" *ngSwitchDefault>\n <mat-chip color=\"{{control.color}}\" selected>{{control.label}}</mat-chip>\n </mat-chip-listbox>\n\n\n <mat-chip-set class=\"chip-list\" cdkDropList cdkDropListOrientation=\"horizontal\" (cdkDropListDropped)=\"drop($event)\"\n *ngSwitchCase=\"'dragDrop'\" class=\"example-chip\">\n <mat-chip class=\"example-box\" cdkDrag *ngFor=\"let option of control?.options\">\n {{option?.value}}\n </mat-chip>\n </mat-chip-set>\n\n</ng-container>", styles: [".chip-list{width:100%}\n"] }]
|
|
96
|
-
}], ctorParameters:
|
|
95
|
+
}], ctorParameters: () => [{ type: i1.FormBuilder }], propDecorators: { control: [{
|
|
97
96
|
type: Input
|
|
98
97
|
}], formGroup: [{
|
|
99
98
|
type: Input
|
|
@@ -107,4 +106,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImpor
|
|
|
107
106
|
type: ViewChild,
|
|
108
107
|
args: ['auto']
|
|
109
108
|
}] } });
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mYWxjb24tbmcvdGFpbHdpbmQvc3JjL2xpYi9jb21wb25lbnQvY2hpcHMvY2hpcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mYWxjb24tbmcvdGFpbHdpbmQvc3JjL2xpYi9jb21wb25lbnQvY2hpcHMvY2hpcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFaEYsT0FBTyxFQUEwQixXQUFXLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRixPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBT3JELE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFaEQsT0FBTyxFQUFlLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7Ozs7Ozs7QUFFdEUsTUFLYSxhQUFhO0lBZ0J4QixZQUFvQixFQUFlO1FBQWYsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQWIxQix1QkFBa0IsR0FBYSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN2RCxlQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFDakIsY0FBUyxHQUFHLElBQUksQ0FBQztRQUVqQix3QkFBbUIsR0FBRyxJQUFJLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQVN2QyxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUMvRCxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQ2YsR0FBRyxDQUFDLENBQUMsS0FBb0IsRUFBRSxFQUFF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Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFVTixxQkFBcUI7c0JBRHBCLFNBQVM7dUJBQUMsdUJBQXVCO2dCQUVOLGFBQWE7c0JBQXhDLFNBQVM7dUJBQUMsZUFBZTtnQkFDUCxlQUFlO3NCQUFqQyxTQUFTO3VCQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmFzZUNvbnRyb2wgfSBmcm9tICcuLi8uLi9iYXNlLWNvbnRyb2wnO1xuaW1wb3J0IHsgRm9ybUFycmF5LCBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENPTU1BLCBFTlRFUiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9rZXljb2Rlcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJT3B0aW9ucyB9IGZyb20gJy4uLy4uL21vZGVsL2ludGVyZmFjZSc7XG5pbXBvcnQge1xuICBNYXRBdXRvY29tcGxldGUsXG4gIE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQsXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2F1dG9jb21wbGV0ZSc7XG5pbXBvcnQgeyBtYXAsIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE1hdENoaXBJbnB1dEV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hpcHMnO1xuaW1wb3J0IHsgQ2RrRHJhZ0Ryb3AsIG1vdmVJdGVtSW5BcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmYWxjb24tY2hpcCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jaGlwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2hpcC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBDaGlwQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgY29udHJvbCE6IEJhc2VDb250cm9sPGFueT47XG4gIEBJbnB1dCgpIGZvcm1Hcm91cCE6IEZvcm1Hcm91cDtcbiAgcmVhZG9ubHkgc2VwYXJhdG9yS2V5c0NvZGVzOiBudW1iZXJbXSA9IFtFTlRFUiwgQ09NTUFdO1xuICBzZWxlY3RhYmxlID0gdHJ1ZTtcbiAgcmVtb3ZhYmxlID0gdHJ1ZTtcbiAgYWRkT25CbHVyID0gdHJ1ZTtcbiAgZmlsdGVyZWRPcHRpb25zOiBPYnNlcnZhYmxlPElPcHRpb25zW10+O1xuICBhdXRvQ29tcGxldGVDb250cm9sID0gbmV3IEZvcm1Db250cm9sKCcnKTtcbiAgcHJpdmF0ZSBpdGVtczogRm9ybUFycmF5O1xuXG4gIEBWaWV3Q2hpbGQoJ2NoaXBBdXRvQ29tcGxldGVJbnB1dCcpXG4gIGNoaXBBdXRvQ29tcGxldGVJbnB1dCE6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG4gIEBWaWV3Q2hpbGQoJ2NoaXBUZXh0SW5wdXQnKSBjaGlwVGV4dElucHV0ITogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcbiAgQFZpZXdDaGlsZCgnYXV0bycpIG1hdEF1dG9jb21wbGV0ZSE6IE1hdEF1dG9jb21wbGV0ZTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZiOiBGb3JtQnVpbGRlcikge1xuICAgICB0aGlzLmZpbHRlcmVkT3B0aW9ucyA9IHRoaXMuYXV0b0NvbXBsZXRlQ29udHJvbC52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgICBzdGFydFdpdGgobnVsbCksXG4gICAgICAgbWFwKCh2YWx1ZTogc3RyaW5nIHwgbnVsbCkgPT5cbiAgICAgICAgIHZhbHVlID8gdGhpcy5fZmlsdGVyKHZhbHVlKSA6IHRoaXMuY29udHJvbD8ub3B0aW9ucy5zbGljZSgpXG4gICAgICAgKVxuICAgICApO1xuXG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgaWYgKHRoaXMuY29udHJvbC5jaGlwU2VsZWN0ZWRPcHRpb25zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgIHRoaXMuaXRlbXMgPSB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1tcbiAgICAgICAgICAgdGhpcy5jb250cm9sLmZvcm1Db250cm9sTmFtZVxuICAgICAgICAgXSBhcyBGb3JtQXJyYXk7XG4gICAgICAgICB0aGlzLmNvbnRyb2wuY2hpcFNlbGVjdGVkT3B0aW9ucy5mb3JFYWNoKCh2YWx1ZTogYW55KSA9PiB7XG4gICAgICAgICAgIHRoaXMuaXRlbXMuY29udHJvbHMucHVzaCh0aGlzLmNyZWF0ZUl0ZW0odmFsdWUudmFsdWUpKTtcbiAgICAgICAgIH0pO1xuICAgICAgIH1cbiAgICAgfSk7XG4gIH1cblxuICBhZGQoZXZlbnQ6IE1hdENoaXBJbnB1dEV2ZW50KTogdm9pZCB7XG4gICAgIGNvbnN0IGlucHV0ID0gZXZlbnQuaW5wdXQ7XG4gICAgIGNvbnN0IHZhbHVlID0gZXZlbnQudmFsdWU7XG4gICAgIGlmICgodmFsdWUgfHwgJycpLnRyaW0oKSkge1xuICAgICAgIHRoaXMuY29udHJvbC5jaGlwU2VsZWN0ZWRPcHRpb25zLnB1c2goe1xuICAgICAgICAga2V5OiB2YWx1ZS50cmltKCksXG4gICAgICAgICB2YWx1ZTogdmFsdWUudHJpbSgpLFxuICAgICAgIH0pO1xuICAgICAgIHRoaXMuaXRlbXMgPSB0aGlzLmZvcm1Hcm91cC5nZXQoXG4gICAgICAgICB0aGlzLmNvbnRyb2wuZm9ybUNvbnRyb2xOYW1lXG4gICAgICAgKSBhcyBGb3JtQXJyYXk7XG4gICAgICAgdGhpcy5pdGVtcy5wdXNoKHRoaXMuY3JlYXRlSXRlbSh2YWx1ZSkpO1xuICAgICB9XG4gICAgIGlmIChpbnB1dCkge1xuICAgICAgIGlucHV0LnZhbHVlID0gJyc7XG4gICAgIH1cbiAgfVxuXG4gICBjcmVhdGVJdGVtKHZhbHVlOiBTdHJpbmcpOiBGb3JtR3JvdXAge1xuICAgICByZXR1cm4gdGhpcy5mYi5ncm91cCh7XG4gICAgICAga2V5OiB2YWx1ZSxcbiAgICAgICB2YWx1ZTogdmFsdWUsXG4gICAgIH0pO1xuICAgfVxuXG4gIHJlbW92ZShvcHRpb246IElPcHRpb25zKTogdm9pZCB7XG4gICAgIGNvbnN0IGluZGV4ID0gdGhpcy5jb250cm9sLmNoaXBTZWxlY3RlZE9wdGlvbnMuaW5kZXhPZihvcHRpb24pO1xuICAgICBpZiAoaW5kZXggPj0gMCkge1xuICAgICAgIHRoaXMuY29udHJvbC5jaGlwU2VsZWN0ZWRPcHRpb25zLnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgdGhpcy5pdGVtcy5yZW1vdmVBdChpbmRleCk7XG4gICAgIH1cbiAgfVxuXG4gIG9wdGlvblNlbGVjdGVkKGV2ZW50OiBNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50KTogdm9pZCB7XG4gICAgIHRoaXMuY29udHJvbC5jaGlwU2VsZWN0ZWRPcHRpb25zLnB1c2goe1xuICAgICAgIGtleTogZXZlbnQub3B0aW9uLnZhbHVlLFxuICAgICAgIHZhbHVlOiBldmVudC5vcHRpb24udmFsdWUsXG4gICAgIH0pO1xuICAgICB0aGlzLml0ZW1zID0gdGhpcy5mb3JtR3JvdXAuZ2V0KHRoaXMuY29udHJvbC5mb3JtQ29udHJvbE5hbWUpIGFzIEZvcm1BcnJheTtcbiAgICAgdGhpcy5pdGVtcy5wdXNoKHRoaXMuY3JlYXRlSXRlbShldmVudC5vcHRpb24udmFsdWUpKTtcbiAgICAgdGhpcy5jaGlwQXV0b0NvbXBsZXRlSW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuICAgICB0aGlzLmZvcm1Hcm91cC5nZXQodGhpcy5jb250cm9sLmZvcm1Db250cm9sTmFtZSk/LnNldFZhbHVlKG51bGwpO1xuICB9XG5cbiAgIHByaXZhdGUgX2ZpbHRlcih2YWx1ZTogc3RyaW5nKTogYW55IHtcbiAgICAgaWYgKHZhbHVlICE9PSBudWxsKSB7XG4gICAgICAgY29uc3QgZmlsdGVyVmFsdWUgPSB2YWx1ZS50b0xvd2VyQ2FzZSgpO1xuICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2w/Lm9wdGlvbnM/LmZpbHRlcigob3B0aW9uOiBJT3B0aW9ucykgPT5cbiAgICAgICAgIG9wdGlvbi52YWx1ZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGZpbHRlclZhbHVlKVxuICAgICAgICk7XG4gICAgIH1cbiAgIH1cblxuICAgZHJvcChldmVudDogQ2RrRHJhZ0Ryb3A8SU9wdGlvbnNbXT4pIHtcbiAgICAgbW92ZUl0ZW1JbkFycmF5KFxuICAgICAgIHRoaXMuY29udHJvbC5vcHRpb25zLFxuICAgICAgIGV2ZW50LnByZXZpb3VzSW5kZXgsXG4gICAgICAgZXZlbnQuY3VycmVudEluZGV4XG4gICAgICk7XG4gICB9XG5cbiAga2V5Ym9hcmRFbnRlckV2ZW50KGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICAgaWYgKHRoaXMuY29udHJvbC5ldmVudCAhPT0gdW5kZWZpbmVkKVxuICAgICAgIHRoaXMuY29udHJvbC5ldmVudC5rZXlib2FyZEVudGVyPy5lbWl0KGV2ZW50KTtcbiAgICAgdGhpcy5jaGlwVGV4dElucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiY29udHJvbC50eXBlXCI+XG4gIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImNoaXAtbGlzdFwiICpuZ1N3aXRjaENhc2U9XCInc2VhcmNoJ1wiIFthcHBlYXJhbmNlXT1cImNvbnRyb2wuYXBwZWFyYW5jZVwiIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCJcbiAgICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cImNvbnRyb2wuc3R5bGVcIiBbbmdDbGFzc109XCJjb250cm9sLmNsYXNzXCI+XG4gICAgPG1hdC1sYWJlbD57e2NvbnRyb2wubGFiZWx9fTwvbWF0LWxhYmVsPlxuICAgIDxtYXQtY2hpcC1ncmlkICNjaGlwR3JpZCBhcmlhLWxhYmVsPVwiaXRlbSBzZWxlY3Rpb25cIj5cbiAgICAgIDxtYXQtY2hpcC1yb3cgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBjb250cm9sLmNoaXBTZWxlY3RlZE9wdGlvbnNcIiBbcmVtb3ZhYmxlXT1cInJlbW92YWJsZVwiXG4gICAgICAgICAgICAgICAgICAgIChyZW1vdmVkKT1cInJlbW92ZShvcHRpb24pXCI+XG4gICAgICAgIHt7b3B0aW9uLnZhbHVlfX1cbiAgICAgICAgPG1hdC1pY29uIG1hdENoaXBSZW1vdmUgKm5nSWY9XCJyZW1vdmFibGVcIj5jYW5jZWw8L21hdC1pY29uPlxuICAgICAgPC9tYXQtY2hpcC1yb3c+XG5cbiAgICAgIDxpbnB1dCBtYXRJbnB1dCAjY2hpcEF1dG9Db21wbGV0ZUlucHV0IFtmb3JtQ29udHJvbF09XCJhdXRvQ29tcGxldGVDb250cm9sXCJcbiAgICAgICAgICAgICBbZm9ybUFycmF5TmFtZV09XCJjb250cm9sLmZvcm1Db250cm9sTmFtZVwiIFtwbGFjZWhvbGRlcl09XCJjb250cm9sLnBsYWNlSG9sZGVyXCIgW25nU3R5bGVdPVwiY29udHJvbC5zdHlsZVwiXG4gICAgICAgICAgICAgW25nQ2xhc3NdPVwiY29udHJvbC5jbGFzc1wiIFttYXRBdXRvY29tcGxldGVdPVwiYXV0b1wiIFttYXRDaGlwSW5wdXRGb3JdPVwiY2hpcEdyaWRcIlxuICAgICAgICAgICAgIFttYXRDaGlwSW5wdXRTZXBhcmF0b3JLZXlDb2Rlc109XCJzZXBhcmF0b3JLZXlzQ29kZXNcIiAobWF0Q2hpcElucHV0VG9rZW5FbmQpPVwiYWRkKCRldmVudClcIlxuICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJmb3JtR3JvdXAuZ2V0KGNvbnRyb2wuZm9ybUNvbnRyb2xOYW1lKT8uZXJyb3JzICE9PSBudWxsICYmIGZvcm1Hcm91cC5nZXQoY29udHJvbC5mb3JtQ29udHJvbE5hbWUpPy5lcnJvcnM/LlsncmVxdWlyZWQnXVwiXG4gICAgICAgICAgICAgKGtleXVwLmVudGVyKT1cImtleWJvYXJkRW50ZXJFdmVudCgkZXZlbnQpXCI+XG5cbiAgICA8L21hdC1jaGlwLWdyaWQ+XG4gICAgPG1hdC1hdXRvY29tcGxldGUgI2F1dG89XCJtYXRBdXRvY29tcGxldGVcIiAob3B0aW9uU2VsZWN0ZWQpPVwib3B0aW9uU2VsZWN0ZWQoJGV2ZW50KVwiPlxuICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IGl0ZW0gb2YgZmlsdGVyZWRPcHRpb25zIHwgYXN5bmNcIiBbdmFsdWVdPVwiaXRlbS5rZXlcIj5cbiAgICAgICAge3tpdGVtLnZhbHVlfX1cbiAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICA8L21hdC1hdXRvY29tcGxldGU+XG4gICAgPG1hdC1oaW50PlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbnRyb2wuaGludC5saW5rPy5pc0xpbms7IGVsc2UgZWxzZUJsb2NrXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb250cm9sLmhpbnQubGluaz8ucXVlcnlQYXJhbXMgIT09IHVuZGVmaW5lZDsgZWxzZSB3aXRob3V0UXVlcnlCbG9ja1wiPlxuICAgICAgICAgIDxhIFtyb3V0ZXJMaW5rXT1cIltjb250cm9sLmhpbnQubGluaz8ucm91dGVyTGlua11cIiBbcXVlcnlQYXJhbXNdPVwieyBxdWVyeTogY29udHJvbC5oaW50Lmxpbms/LnF1ZXJ5UGFyYW1zIH1cIlxuICAgICAgICAgICAgIHJvdXRlckxpbmtBY3RpdmU9XCJyb3V0ZXItbGluay1hY3RpdmVcIj57e2NvbnRyb2wuaGludC50ZXh0fX08L2E+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2Vsc2VCbG9jaz5cbiAgICAgICAgPHNwYW4+e3tjb250cm9sLmhpbnQudGV4dH19PC9zcGFuPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjd2l0aG91dFF1ZXJ5QmxvY2s+XG4gICAgICAgIDxhIFtyb3V0ZXJMaW5rXT1cIltjb250cm9sLmhpbnQubGluaz8ucm91dGVyTGlua11cIlxuICAgICAgICAgICByb3V0ZXJMaW5rQWN0aXZlPVwicm91dGVyLWxpbmstYWN0aXZlXCI+e3tjb250cm9sLmhpbnQudGV4dH19PC9hPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L21hdC1oaW50PlxuICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImNoaXAtbGlzdFwiICpuZ1N3aXRjaENhc2U9XCIndGV4dCdcIiBbYXBwZWFyYW5jZV09XCJjb250cm9sLmFwcGVhcmFuY2VcIiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiXG4gICAgICAgICAgICAgICAgICBbbmdTdHlsZV09XCJjb250cm9sLnN0eWxlXCIgW25nQ2xhc3NdPVwiY29udHJvbC5jbGFzc1wiPlxuICAgIDxtYXQtbGFiZWw+e3tjb250cm9sLmxhYmVsfX08L21hdC1sYWJlbD5cbiAgICA8bWF0LWNoaXAtZ3JpZCAjY2hpcEdyaWQgYXJpYS1sYWJlbD1cIml0ZW0gc2VsZWN0aW9uXCI+XG4gICAgICA8bWF0LWNoaXAtcm93ICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgY29udHJvbC5jaGlwU2VsZWN0ZWRPcHRpb25zXCIgW3ZhbHVlXT1cInNlbGVjdGFibGVcIiBbcmVtb3ZhYmxlXT1cInJlbW92YWJsZVwiXG4gICAgICAgICAgICAgICAgICAgIChyZW1vdmVkKT1cInJlbW92ZShvcHRpb24pXCI+XG4gICAgICAgIHt7b3B0aW9uPy52YWx1ZX19XG4gICAgICAgIDxtYXQtaWNvbiBtYXRDaGlwUmVtb3ZlICpuZ0lmPVwicmVtb3ZhYmxlXCI+Y2FuY2VsPC9tYXQtaWNvbj5cbiAgICAgIDwvbWF0LWNoaXAtcm93PlxuXG4gICAgICA8aW5wdXQgbWF0SW5wdXQgI2NoaXBUZXh0SW5wdXQgW2Zvcm1BcnJheU5hbWVdPVwiY29udHJvbC5mb3JtQ29udHJvbE5hbWVcIiBtdWx0aXBsZVxuICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJjb250cm9sLnBsYWNlSG9sZGVyXCJcbiAgICAgICAgICAgICBbbWF0Q2hpcElucHV0Rm9yXT1cImNoaXBHcmlkXCIgW25nU3R5bGVdPVwiY29udHJvbC5zdHlsZVwiIFtuZ0NsYXNzXT1cImNvbnRyb2wuY2xhc3NcIlxuICAgICAgICAgICAgIFttYXRDaGlwSW5wdXRTZXBhcmF0b3JLZXlDb2Rlc109XCJzZXBhcmF0b3JLZXlzQ29kZXNcIiBbbWF0Q2hpcElucHV0QWRkT25CbHVyXT1cImFkZE9uQmx1clwiXG4gICAgICAgICAgICAgKG1hdENoaXBJbnB1dFRva2VuRW5kKT1cImFkZCgkZXZlbnQpXCJcbiAgICAgICAgICAgICBbcmVxdWlyZWRdPVwiZm9ybUdyb3VwLmdldChjb250cm9sLmZvcm1Db250cm9sTmFtZSk/LmVycm9ycyAhPT0gbnVsbCAmJiBmb3JtR3JvdXAuZ2V0KGNvbnRyb2wuZm9ybUNvbnRyb2xOYW1lKT8uZXJyb3JzPy5bJ3JlcXVpcmVkJ11cIlxuICAgICAgICAgICAgIChrZXl1cC5lbnRlcik9XCJrZXlib2FyZEVudGVyRXZlbnQoJGV2ZW50KVwiPlxuXG4gICAgPC9tYXQtY2hpcC1ncmlkPlxuICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gIDxtYXQtY2hpcC1saXN0Ym94IGFyaWEtbGFiZWw9XCJDaGlwcyBzZWxlY3Rpb25cIiAqbmdTd2l0Y2hEZWZhdWx0PlxuICAgIDxtYXQtY2hpcCBjb2xvcj1cInt7Y29udHJvbC5jb2xvcn19XCIgc2VsZWN0ZWQ+e3tjb250cm9sLmxhYmVsfX08L21hdC1jaGlwPlxuICA8L21hdC1jaGlwLWxpc3Rib3g+XG5cblxuICA8bWF0LWNoaXAtc2V0IGNsYXNzPVwiY2hpcC1saXN0XCIgY2RrRHJvcExpc3QgY2RrRHJvcExpc3RPcmllbnRhdGlvbj1cImhvcml6b250YWxcIiAoY2RrRHJvcExpc3REcm9wcGVkKT1cImRyb3AoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidkcmFnRHJvcCdcIiBjbGFzcz1cImV4YW1wbGUtY2hpcFwiPlxuICAgIDxtYXQtY2hpcCBjbGFzcz1cImV4YW1wbGUtYm94XCIgY2RrRHJhZyAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIGNvbnRyb2w/Lm9wdGlvbnNcIj5cbiAgICAgIHt7b3B0aW9uPy52YWx1ZX19XG4gICAgPC9tYXQtY2hpcD5cbiAgPC9tYXQtY2hpcC1zZXQ+XG5cbjwvbmctY29udGFpbmVyPiJdfQ==
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mYWxjb24tbmcvdGFpbHdpbmQvc3JjL2xpYi9jb21wb25lbnQvY2hpcHMvY2hpcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mYWxjb24tbmcvdGFpbHdpbmQvc3JjL2xpYi9jb21wb25lbnQvY2hpcHMvY2hpcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFaEYsT0FBTyxFQUEwQixXQUFXLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRixPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBT3JELE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFaEQsT0FBTyxFQUFlLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7Ozs7Ozs7QUFPdEUsTUFBTSxPQUFPLGFBQWE7SUFnQnhCLFlBQW9CLEVBQWU7UUFBZixPQUFFLEdBQUYsRUFBRSxDQUFhO1FBYjFCLHVCQUFrQixHQUFhLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3ZELGVBQVUsR0FBRyxJQUFJLENBQUM7UUFDbEIsY0FBUyxHQUFHLElBQUksQ0FBQztRQUNqQixjQUFTLEdBQUcsSUFBSSxDQUFDO1FBRWpCLHdCQUFtQixHQUFHLElBQUksV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBU3ZDLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQy9ELFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFDZixHQUFHLENBQUMsQ0FBQyxLQUFvQixFQUFF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LFNBQVM7c0JBQWpCLEtBQUs7Z0JBVU4scUJBQXFCO3NCQURwQixTQUFTO3VCQUFDLHVCQUF1QjtnQkFFTixhQUFhO3NCQUF4QyxTQUFTO3VCQUFDLGVBQWU7Z0JBQ1AsZUFBZTtzQkFBakMsU0FBUzt1QkFBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhc2VDb250cm9sIH0gZnJvbSAnLi4vLi4vYmFzZS1jb250cm9sJztcbmltcG9ydCB7IEZvcm1BcnJheSwgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDT01NQSwgRU5URVIgfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSU9wdGlvbnMgfSBmcm9tICcuLi8uLi9tb2RlbC9pbnRlcmZhY2UnO1xuaW1wb3J0IHtcbiAgTWF0QXV0b2NvbXBsZXRlLFxuICBNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50LFxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xuaW1wb3J0IHsgbWFwLCBzdGFydFdpdGggfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBNYXRDaGlwSW5wdXRFdmVudCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoaXBzJztcbmltcG9ydCB7IENka0RyYWdEcm9wLCBtb3ZlSXRlbUluQXJyYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZmFsY29uLWNoaXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2hpcC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NoaXAuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2hpcENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGNvbnRyb2whOiBCYXNlQ29udHJvbDxhbnk+O1xuICBASW5wdXQoKSBmb3JtR3JvdXAhOiBGb3JtR3JvdXA7XG4gIHJlYWRvbmx5IHNlcGFyYXRvcktleXNDb2RlczogbnVtYmVyW10gPSBbRU5URVIsIENPTU1BXTtcbiAgc2VsZWN0YWJsZSA9IHRydWU7XG4gIHJlbW92YWJsZSA9IHRydWU7XG4gIGFkZE9uQmx1ciA9IHRydWU7XG4gIGZpbHRlcmVkT3B0aW9uczogT2JzZXJ2YWJsZTxJT3B0aW9uc1tdPjtcbiAgYXV0b0NvbXBsZXRlQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgnJyk7XG4gIHByaXZhdGUgaXRlbXM6IEZvcm1BcnJheTtcblxuICBAVmlld0NoaWxkKCdjaGlwQXV0b0NvbXBsZXRlSW5wdXQnKVxuICBjaGlwQXV0b0NvbXBsZXRlSW5wdXQhOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuICBAVmlld0NoaWxkKCdjaGlwVGV4dElucHV0JykgY2hpcFRleHRJbnB1dCE6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG4gIEBWaWV3Q2hpbGQoJ2F1dG8nKSBtYXRBdXRvY29tcGxldGUhOiBNYXRBdXRvY29tcGxldGU7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIpIHtcbiAgICAgdGhpcy5maWx0ZXJlZE9wdGlvbnMgPSB0aGlzLmF1dG9Db21wbGV0ZUNvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICAgc3RhcnRXaXRoKG51bGwpLFxuICAgICAgIG1hcCgodmFsdWU6IHN0cmluZyB8IG51bGwpID0+XG4gICAgICAgICB2YWx1ZSA/IHRoaXMuX2ZpbHRlcih2YWx1ZSkgOiB0aGlzLmNvbnRyb2w/Lm9wdGlvbnMuc2xpY2UoKVxuICAgICAgIClcbiAgICAgKTtcblxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgIGlmICh0aGlzLmNvbnRyb2wuY2hpcFNlbGVjdGVkT3B0aW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICAgICB0aGlzLml0ZW1zID0gdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbXG4gICAgICAgICAgIHRoaXMuY29udHJvbC5mb3JtQ29udHJvbE5hbWVcbiAgICAgICAgIF0gYXMgRm9ybUFycmF5O1xuICAgICAgICAgdGhpcy5jb250cm9sLmNoaXBTZWxlY3RlZE9wdGlvbnMuZm9yRWFjaCgodmFsdWU6IGFueSkgPT4ge1xuICAgICAgICAgICB0aGlzLml0ZW1zLmNvbnRyb2xzLnB1c2godGhpcy5jcmVhdGVJdGVtKHZhbHVlLnZhbHVlKSk7XG4gICAgICAgICB9KTtcbiAgICAgICB9XG4gICAgIH0pO1xuICB9XG5cbiAgYWRkKGV2ZW50OiBNYXRDaGlwSW5wdXRFdmVudCk6IHZvaWQge1xuICAgICBjb25zdCBpbnB1dCA9IGV2ZW50LmlucHV0O1xuICAgICBjb25zdCB2YWx1ZSA9IGV2ZW50LnZhbHVlO1xuICAgICBpZiAoKHZhbHVlIHx8ICcnKS50cmltKCkpIHtcbiAgICAgICB0aGlzLmNvbnRyb2wuY2hpcFNlbGVjdGVkT3B0aW9ucy5wdXNoKHtcbiAgICAgICAgIGtleTogdmFsdWUudHJpbSgpLFxuICAgICAgICAgdmFsdWU6IHZhbHVlLnRyaW0oKSxcbiAgICAgICB9KTtcbiAgICAgICB0aGlzLml0ZW1zID0gdGhpcy5mb3JtR3JvdXAuZ2V0KFxuICAgICAgICAgdGhpcy5jb250cm9sLmZvcm1Db250cm9sTmFtZVxuICAgICAgICkgYXMgRm9ybUFycmF5O1xuICAgICAgIHRoaXMuaXRlbXMucHVzaCh0aGlzLmNyZWF0ZUl0ZW0odmFsdWUpKTtcbiAgICAgfVxuICAgICBpZiAoaW5wdXQpIHtcbiAgICAgICBpbnB1dC52YWx1ZSA9ICcnO1xuICAgICB9XG4gIH1cblxuICAgY3JlYXRlSXRlbSh2YWx1ZTogU3RyaW5nKTogRm9ybUdyb3VwIHtcbiAgICAgcmV0dXJuIHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgIGtleTogdmFsdWUsXG4gICAgICAgdmFsdWU6IHZhbHVlLFxuICAgICB9KTtcbiAgIH1cblxuICByZW1vdmUob3B0aW9uOiBJT3B0aW9ucyk6IHZvaWQge1xuICAgICBjb25zdCBpbmRleCA9IHRoaXMuY29udHJvbC5jaGlwU2VsZWN0ZWRPcHRpb25zLmluZGV4T2Yob3B0aW9uKTtcbiAgICAgaWYgKGluZGV4ID49IDApIHtcbiAgICAgICB0aGlzLmNvbnRyb2wuY2hpcFNlbGVjdGVkT3B0aW9ucy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgIHRoaXMuaXRlbXMucmVtb3ZlQXQoaW5kZXgpO1xuICAgICB9XG4gIH1cblxuICBvcHRpb25TZWxlY3RlZChldmVudDogTWF0QXV0b2NvbXBsZXRlU2VsZWN0ZWRFdmVudCk6IHZvaWQge1xuICAgICB0aGlzLmNvbnRyb2wuY2hpcFNlbGVjdGVkT3B0aW9ucy5wdXNoKHtcbiAgICAgICBrZXk6IGV2ZW50Lm9wdGlvbi52YWx1ZSxcbiAgICAgICB2YWx1ZTogZXZlbnQub3B0aW9uLnZhbHVlLFxuICAgICB9KTtcbiAgICAgdGhpcy5pdGVtcyA9IHRoaXMuZm9ybUdyb3VwLmdldCh0aGlzLmNvbnRyb2wuZm9ybUNvbnRyb2xOYW1lKSBhcyBGb3JtQXJyYXk7XG4gICAgIHRoaXMuaXRlbXMucHVzaCh0aGlzLmNyZWF0ZUl0ZW0oZXZlbnQub3B0aW9uLnZhbHVlKSk7XG4gICAgIHRoaXMuY2hpcEF1dG9Db21wbGV0ZUlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcbiAgICAgdGhpcy5mb3JtR3JvdXAuZ2V0KHRoaXMuY29udHJvbC5mb3JtQ29udHJvbE5hbWUpPy5zZXRWYWx1ZShudWxsKTtcbiAgfVxuXG4gICBwcml2YXRlIF9maWx0ZXIodmFsdWU6IHN0cmluZyk6IGFueSB7XG4gICAgIGlmICh2YWx1ZSAhPT0gbnVsbCkge1xuICAgICAgIGNvbnN0IGZpbHRlclZhbHVlID0gdmFsdWUudG9Mb3dlckNhc2UoKTtcbiAgICAgICByZXR1cm4gdGhpcy5jb250cm9sPy5vcHRpb25zPy5maWx0ZXIoKG9wdGlvbjogSU9wdGlvbnMpID0+XG4gICAgICAgICBvcHRpb24udmFsdWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhmaWx0ZXJWYWx1ZSlcbiAgICAgICApO1xuICAgICB9XG4gICB9XG5cbiAgIGRyb3AoZXZlbnQ6IENka0RyYWdEcm9wPElPcHRpb25zW10+KSB7XG4gICAgIG1vdmVJdGVtSW5BcnJheShcbiAgICAgICB0aGlzLmNvbnRyb2wub3B0aW9ucyxcbiAgICAgICBldmVudC5wcmV2aW91c0luZGV4LFxuICAgICAgIGV2ZW50LmN1cnJlbnRJbmRleFxuICAgICApO1xuICAgfVxuXG4gIGtleWJvYXJkRW50ZXJFdmVudChldmVudDogYW55KTogdm9pZCB7XG4gICAgIGlmICh0aGlzLmNvbnRyb2wuZXZlbnQgIT09IHVuZGVmaW5lZClcbiAgICAgICB0aGlzLmNvbnRyb2wuZXZlbnQua2V5Ym9hcmRFbnRlcj8uZW1pdChldmVudCk7XG4gICAgIHRoaXMuY2hpcFRleHRJbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImNvbnRyb2wudHlwZVwiPlxuICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJjaGlwLWxpc3RcIiAqbmdTd2l0Y2hDYXNlPVwiJ3NlYXJjaCdcIiBbYXBwZWFyYW5jZV09XCJjb250cm9sLmFwcGVhcmFuY2VcIiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiXG4gICAgICAgICAgICAgICAgICBbbmdTdHlsZV09XCJjb250cm9sLnN0eWxlXCIgW25nQ2xhc3NdPVwiY29udHJvbC5jbGFzc1wiPlxuICAgIDxtYXQtbGFiZWw+e3tjb250cm9sLmxhYmVsfX08L21hdC1sYWJlbD5cbiAgICA8bWF0LWNoaXAtZ3JpZCAjY2hpcEdyaWQgYXJpYS1sYWJlbD1cIml0ZW0gc2VsZWN0aW9uXCI+XG4gICAgICA8bWF0LWNoaXAtcm93ICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgY29udHJvbC5jaGlwU2VsZWN0ZWRPcHRpb25zXCIgW3JlbW92YWJsZV09XCJyZW1vdmFibGVcIlxuICAgICAgICAgICAgICAgICAgICAocmVtb3ZlZCk9XCJyZW1vdmUob3B0aW9uKVwiPlxuICAgICAgICB7e29wdGlvbi52YWx1ZX19XG4gICAgICAgIDxtYXQtaWNvbiBtYXRDaGlwUmVtb3ZlICpuZ0lmPVwicmVtb3ZhYmxlXCI+Y2FuY2VsPC9tYXQtaWNvbj5cbiAgICAgIDwvbWF0LWNoaXAtcm93PlxuXG4gICAgICA8aW5wdXQgbWF0SW5wdXQgI2NoaXBBdXRvQ29tcGxldGVJbnB1dCBbZm9ybUNvbnRyb2xdPVwiYXV0b0NvbXBsZXRlQ29udHJvbFwiXG4gICAgICAgICAgICAgW2Zvcm1BcnJheU5hbWVdPVwiY29udHJvbC5mb3JtQ29udHJvbE5hbWVcIiBbcGxhY2Vob2xkZXJdPVwiY29udHJvbC5wbGFjZUhvbGRlclwiIFtuZ1N0eWxlXT1cImNvbnRyb2wuc3R5bGVcIlxuICAgICAgICAgICAgIFtuZ0NsYXNzXT1cImNvbnRyb2wuY2xhc3NcIiBbbWF0QXV0b2NvbXBsZXRlXT1cImF1dG9cIiBbbWF0Q2hpcElucHV0Rm9yXT1cImNoaXBHcmlkXCJcbiAgICAgICAgICAgICBbbWF0Q2hpcElucHV0U2VwYXJhdG9yS2V5Q29kZXNdPVwic2VwYXJhdG9yS2V5c0NvZGVzXCIgKG1hdENoaXBJbnB1dFRva2VuRW5kKT1cImFkZCgkZXZlbnQpXCJcbiAgICAgICAgICAgICBbcmVxdWlyZWRdPVwiZm9ybUdyb3VwLmdldChjb250cm9sLmZvcm1Db250cm9sTmFtZSk/LmVycm9ycyAhPT0gbnVsbCAmJiBmb3JtR3JvdXAuZ2V0KGNvbnRyb2wuZm9ybUNvbnRyb2xOYW1lKT8uZXJyb3JzPy5bJ3JlcXVpcmVkJ11cIlxuICAgICAgICAgICAgIChrZXl1cC5lbnRlcik9XCJrZXlib2FyZEVudGVyRXZlbnQoJGV2ZW50KVwiPlxuXG4gICAgPC9tYXQtY2hpcC1ncmlkPlxuICAgIDxtYXQtYXV0b2NvbXBsZXRlICNhdXRvPVwibWF0QXV0b2NvbXBsZXRlXCIgKG9wdGlvblNlbGVjdGVkKT1cIm9wdGlvblNlbGVjdGVkKCRldmVudClcIj5cbiAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBpdGVtIG9mIGZpbHRlcmVkT3B0aW9ucyB8IGFzeW5jXCIgW3ZhbHVlXT1cIml0ZW0ua2V5XCI+XG4gICAgICAgIHt7aXRlbS52YWx1ZX19XG4gICAgICA8L21hdC1vcHRpb24+XG4gICAgPC9tYXQtYXV0b2NvbXBsZXRlPlxuICAgIDxtYXQtaGludD5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb250cm9sLmhpbnQubGluaz8uaXNMaW5rOyBlbHNlIGVsc2VCbG9ja1wiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29udHJvbC5oaW50Lmxpbms/LnF1ZXJ5UGFyYW1zICE9PSB1bmRlZmluZWQ7IGVsc2Ugd2l0aG91dFF1ZXJ5QmxvY2tcIj5cbiAgICAgICAgICA8YSBbcm91dGVyTGlua109XCJbY29udHJvbC5oaW50Lmxpbms/LnJvdXRlckxpbmtdXCIgW3F1ZXJ5UGFyYW1zXT1cInsgcXVlcnk6IGNvbnRyb2wuaGludC5saW5rPy5xdWVyeVBhcmFtcyB9XCJcbiAgICAgICAgICAgICByb3V0ZXJMaW5rQWN0aXZlPVwicm91dGVyLWxpbmstYWN0aXZlXCI+e3tjb250cm9sLmhpbnQudGV4dH19PC9hPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLXRlbXBsYXRlICNlbHNlQmxvY2s+XG4gICAgICAgIDxzcGFuPnt7Y29udHJvbC5oaW50LnRleHR9fTwvc3Bhbj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8bmctdGVtcGxhdGUgI3dpdGhvdXRRdWVyeUJsb2NrPlxuICAgICAgICA8YSBbcm91dGVyTGlua109XCJbY29udHJvbC5oaW50Lmxpbms/LnJvdXRlckxpbmtdXCJcbiAgICAgICAgICAgcm91dGVyTGlua0FjdGl2ZT1cInJvdXRlci1saW5rLWFjdGl2ZVwiPnt7Y29udHJvbC5oaW50LnRleHR9fTwvYT5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9tYXQtaGludD5cbiAgPC9tYXQtZm9ybS1maWVsZD5cblxuICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJjaGlwLWxpc3RcIiAqbmdTd2l0Y2hDYXNlPVwiJ3RleHQnXCIgW2FwcGVhcmFuY2VdPVwiY29udHJvbC5hcHBlYXJhbmNlXCIgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIlxuICAgICAgICAgICAgICAgICAgW25nU3R5bGVdPVwiY29udHJvbC5zdHlsZVwiIFtuZ0NsYXNzXT1cImNvbnRyb2wuY2xhc3NcIj5cbiAgICA8bWF0LWxhYmVsPnt7Y29udHJvbC5sYWJlbH19PC9tYXQtbGFiZWw+XG4gICAgPG1hdC1jaGlwLWdyaWQgI2NoaXBHcmlkIGFyaWEtbGFiZWw9XCJpdGVtIHNlbGVjdGlvblwiPlxuICAgICAgPG1hdC1jaGlwLXJvdyAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIGNvbnRyb2wuY2hpcFNlbGVjdGVkT3B0aW9uc1wiIFt2YWx1ZV09XCJzZWxlY3RhYmxlXCIgW3JlbW92YWJsZV09XCJyZW1vdmFibGVcIlxuICAgICAgICAgICAgICAgICAgICAocmVtb3ZlZCk9XCJyZW1vdmUob3B0aW9uKVwiPlxuICAgICAgICB7e29wdGlvbj8udmFsdWV9fVxuICAgICAgICA8bWF0LWljb24gbWF0Q2hpcFJlbW92ZSAqbmdJZj1cInJlbW92YWJsZVwiPmNhbmNlbDwvbWF0LWljb24+XG4gICAgICA8L21hdC1jaGlwLXJvdz5cblxuICAgICAgPGlucHV0IG1hdElucHV0ICNjaGlwVGV4dElucHV0IFtmb3JtQXJyYXlOYW1lXT1cImNvbnRyb2wuZm9ybUNvbnRyb2xOYW1lXCIgbXVsdGlwbGVcbiAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiY29udHJvbC5wbGFjZUhvbGRlclwiXG4gICAgICAgICAgICAgW21hdENoaXBJbnB1dEZvcl09XCJjaGlwR3JpZFwiIFtuZ1N0eWxlXT1cImNvbnRyb2wuc3R5bGVcIiBbbmdDbGFzc109XCJjb250cm9sLmNsYXNzXCJcbiAgICAgICAgICAgICBbbWF0Q2hpcElucHV0U2VwYXJhdG9yS2V5Q29kZXNdPVwic2VwYXJhdG9yS2V5c0NvZGVzXCIgW21hdENoaXBJbnB1dEFkZE9uQmx1cl09XCJhZGRPbkJsdXJcIlxuICAgICAgICAgICAgIChtYXRDaGlwSW5wdXRUb2tlbkVuZCk9XCJhZGQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgW3JlcXVpcmVkXT1cImZvcm1Hcm91cC5nZXQoY29udHJvbC5mb3JtQ29udHJvbE5hbWUpPy5lcnJvcnMgIT09IG51bGwgJiYgZm9ybUdyb3VwLmdldChjb250cm9sLmZvcm1Db250cm9sTmFtZSk/LmVycm9ycz8uWydyZXF1aXJlZCddXCJcbiAgICAgICAgICAgICAoa2V5dXAuZW50ZXIpPVwia2V5Ym9hcmRFbnRlckV2ZW50KCRldmVudClcIj5cblxuICAgIDwvbWF0LWNoaXAtZ3JpZD5cbiAgPC9tYXQtZm9ybS1maWVsZD5cblxuICA8bWF0LWNoaXAtbGlzdGJveCBhcmlhLWxhYmVsPVwiQ2hpcHMgc2VsZWN0aW9uXCIgKm5nU3dpdGNoRGVmYXVsdD5cbiAgICA8bWF0LWNoaXAgY29sb3I9XCJ7e2NvbnRyb2wuY29sb3J9fVwiIHNlbGVjdGVkPnt7Y29udHJvbC5sYWJlbH19PC9tYXQtY2hpcD5cbiAgPC9tYXQtY2hpcC1saXN0Ym94PlxuXG5cbiAgPG1hdC1jaGlwLXNldCBjbGFzcz1cImNoaXAtbGlzdFwiIGNka0Ryb3BMaXN0IGNka0Ryb3BMaXN0T3JpZW50YXRpb249XCJob3Jpem9udGFsXCIgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJkcm9wKCRldmVudClcIlxuICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInZHJhZ0Ryb3AnXCIgY2xhc3M9XCJleGFtcGxlLWNoaXBcIj5cbiAgICA8bWF0LWNoaXAgY2xhc3M9XCJleGFtcGxlLWJveFwiIGNka0RyYWcgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBjb250cm9sPy5vcHRpb25zXCI+XG4gICAgICB7e29wdGlvbj8udmFsdWV9fVxuICAgIDwvbWF0LWNoaXA+XG4gIDwvbWF0LWNoaXAtc2V0PlxuXG48L25nLWNvbnRhaW5lcj4iXX0=
|