@morozeckiy/dd-lib 0.2.71 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/images/svg/file.svg +12 -0
- package/assets/images/svg/reload.svg +11 -0
- package/assets/scss/common.scss +21 -0
- package/assets/scss/grid.scss +158 -0
- package/assets/scss/keyframes.scss +9 -0
- package/assets/scss/reset.scss +4 -0
- package/assets/scss/titles.scss +24 -10
- package/assets/styles.scss +2 -0
- package/esm2022/lib/common/lib-common-input-text.mjs +30 -25
- package/esm2022/lib/components/data-empty/data-empty.component.mjs +8 -3
- package/esm2022/lib/core/dialog/modal-base/modal-base.component.mjs +5 -5
- package/esm2022/lib/core/directives/click-outside.directive.mjs +2 -2
- package/esm2022/lib/core/services/destroy.service.mjs +1 -1
- package/esm2022/lib/core/services/fetcher.service.mjs +1 -1
- package/esm2022/lib/core/services/validators.service.mjs +33 -1
- package/esm2022/lib/core/toast/toast-config.mjs +11 -2
- package/esm2022/lib/core/toast/toast.service.mjs +18 -1
- package/esm2022/lib/lib-button/lib-button.component.mjs +3 -3
- package/esm2022/lib/lib-card/lib-card.component.mjs +3 -3
- package/esm2022/lib/lib-checkbox/lib-checkbox.component.mjs +11 -6
- package/esm2022/lib/lib-date-range/lib-date-range.component.mjs +3 -3
- package/esm2022/lib/lib-file-loader/lib-file-loader.component.mjs +6 -4
- package/esm2022/lib/lib-file-upload/lib-file-upload.component.mjs +8 -20
- package/esm2022/lib/lib-filter-button/lib-filter-button.component.mjs +3 -3
- package/esm2022/lib/lib-image-loader/lib-image-loader.component.mjs +3 -3
- package/esm2022/lib/lib-input/lib-input.component.mjs +42 -11
- package/esm2022/lib/lib-search-input/lib-search-input.component.mjs +3 -3
- package/esm2022/lib/lib-select/lib-select.component.mjs +51 -13
- package/esm2022/lib/lib-tabs-fragment/lib-tabs-fragment.component.mjs +5 -2
- package/esm2022/lib/lib-textarea/lib-textarea.component.mjs +3 -3
- package/esm2022/lib/svg-icons/svg-icon.model.mjs +11 -1
- package/fesm2022/morozeckiy-dd-lib.mjs +238 -99
- package/fesm2022/morozeckiy-dd-lib.mjs.map +1 -1
- package/lib/common/lib-common-input-text.d.ts +11 -4
- package/lib/components/data-empty/data-empty.component.d.ts +2 -1
- package/lib/core/dialog/modal-base/modal-base.component.d.ts +2 -2
- package/lib/core/services/fetcher.service.d.ts +4 -1
- package/lib/core/services/validators.service.d.ts +3 -2
- package/lib/core/toast/toast-config.d.ts +5 -2
- package/lib/core/toast/toast.service.d.ts +5 -1
- package/lib/lib-checkbox/lib-checkbox.component.d.ts +3 -1
- package/lib/lib-file-loader/lib-file-loader.component.d.ts +3 -2
- package/lib/lib-file-upload/lib-file-upload.component.d.ts +5 -8
- package/lib/lib-input/lib-input.component.d.ts +12 -4
- package/lib/lib-select/lib-select.component.d.ts +13 -4
- package/lib/lib-tabs-fragment/lib-tabs-fragment.component.d.ts +3 -2
- package/lib/svg-icons/svg-icon.model.d.ts +15 -1
- package/morozeckiy-dd-lib-0.3.0.tgz +0 -0
- package/package.json +1 -1
- package/morozeckiy-dd-lib-0.2.71.tgz +0 -0
|
@@ -82,7 +82,7 @@ export class LibDateRangeComponent {
|
|
|
82
82
|
useExisting: forwardRef(() => LibDateRangeComponent),
|
|
83
83
|
multi: true,
|
|
84
84
|
},
|
|
85
|
-
], ngImport: i0, template: "<div class=\"lib-range\" id=\"lib-range-{{ rangeId }}\">\r\n @if (label) {\r\n <label [for]=\"rangeId\" class=\"lib-range__title\">\r\n {{ label }}\r\n @if (required) {\r\n <dd-lib-svg-icon icon=\"error_hint\"></dd-lib-svg-icon>\r\n }\r\n </label>\r\n }\r\n <div class=\"pos-relative\">\r\n <input\r\n [attr.id]=\"rangeId\"\r\n [attr.placeholder]=\"placeholder\"\r\n (click)=\"openCalendar()\"\r\n [(ngModel)]=\"selectedPeriodStr\"\r\n [mask]=\"'d0.M0.0000 - d0.M0.0000'\"\r\n (ngModelChange)=\"changeStrDate($event)\"\r\n [leadZeroDateTime]=\"true\"\r\n class=\"text-select\"/>\r\n @if (!selectedPeriod) {\r\n <dd-lib-svg-icon\r\n (click)=\"openCalendar()\"\r\n [class.black-svg]=\"isShownPeriod\"\r\n [class.disabled]=\"disabled\"\r\n [class.gray-svg]=\"!isShownPeriod\"\r\n [class.up]=\"isShownPeriod\"\r\n id=\"chevron-{{ rangeId }}\"\r\n class=\"chevron\" icon=\"down_chevron\"></dd-lib-svg-icon>\r\n\r\n } @else {\r\n <dd-lib-svg-icon\r\n (click)=\"clearPeriod()\"\r\n class=\"clear\"\r\n icon=\"clear\"></dd-lib-svg-icon>\r\n\r\n }\r\n </div>\r\n @if (isShownPeriod) {\r\n <div\r\n (ddClickOutside)=\"closeCalendar()\"\r\n [elements]=\"['lib-range-' + rangeId, 'chevron' + rangeId]\"\r\n class=\"calendar-wrapper\">\r\n <dd-lib-calendar [(ngModel)]=\"selectedPeriod\" [rangeMode]=\"true\" (emitPeriod)=\"setPeriod($event)\"></dd-lib-calendar>\r\n </div>\r\n }\r\n</div>\r\n", styles: [".lib-range{min-width:340px;position:relative}.lib-range input{width:100%;height:48px;padding:15px 28px 15px 16px;overflow:hidden;text-overflow:ellipsis;border-radius:8px;border:1px solid var(--input-border-color);background-color:transparent;position:relative}.lib-range input:hover{border-color:var(--input-active-border-colort)}.lib-range input:focus{border-color:var(--input-active-border-colort);box-shadow:var(--input-active-border-shadow)}.lib-range input:disabled{border:none;background-color:var(--input-disable-input);color:var(--input-disable-text);pointer-events:none}.lib-range input:disabled::placeholder{color:var(--input-placeholder)}.lib-range input.invalid,.lib-range input.invalid:hover{border-color:var(--input-error-border-color)}.lib-range input.invalid:focus{border-color:var(--input-error-border-color);box-shadow:var(--input-error-border-shadow)}.lib-range .clear{cursor:pointer;position:absolute;right:8px;top:12px}.lib-range .chevron{cursor:pointer;position:absolute;right:16px;top:10px}.lib-range .chevron.up{transform:rotate(180deg)}.lib-range__title{margin-bottom:4px;font-size:14px;line-height:24px;display:flex;align-items:flex-start}.lib-range__error{color:var(--primary-red-color);font-size:12px;font-weight:400;line-height:10px;margin-top:2px}.lib-range .calendar-wrapper{position:absolute;display:block;z-index:100;width:100%;overflow:auto;border-radius:8px;box-shadow:var(--main-card-shadow);background-color:var(--main-card-color)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { 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.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: LibSvgIconComponent, selector: "dd-lib-svg-icon", inputs: ["width", "height", "color", "icon"] }, { kind: "directive", type: ClickOutsideDirective, selector: "[ddClickOutside]", inputs: ["elements"], outputs: ["ddClickOutside"] }, { kind: "component", type: LibCalendarComponent, selector: "dd-lib-calendar", inputs: ["type", "formatDate", "formatTime", "rangeMode", "mode", "maxDate", "minDate"], outputs: ["emitDate", "emitPeriod"] }, { kind: "directive", type: NgxMaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "leadZero", "triggerOnMaskChange", "apm", "inputTransformFn", "outputTransformFn", "keepCharacterPositions"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
85
|
+
], ngImport: i0, template: "<div class=\"lib-range\" id=\"lib-range-{{ rangeId }}\">\r\n @if (label) {\r\n <label [for]=\"rangeId\" class=\"lib-range__title\">\r\n {{ label }}\r\n @if (required) {\r\n <dd-lib-svg-icon icon=\"error_hint\"></dd-lib-svg-icon>\r\n }\r\n </label>\r\n }\r\n <div class=\"pos-relative\">\r\n <input\r\n [attr.id]=\"rangeId\"\r\n [attr.placeholder]=\"placeholder\"\r\n (click)=\"openCalendar()\"\r\n [(ngModel)]=\"selectedPeriodStr\"\r\n [mask]=\"'d0.M0.0000 - d0.M0.0000'\"\r\n (ngModelChange)=\"changeStrDate($event)\"\r\n [leadZeroDateTime]=\"true\"\r\n class=\"text-select\"/>\r\n @if (!selectedPeriod) {\r\n <dd-lib-svg-icon\r\n (click)=\"openCalendar()\"\r\n [class.black-svg]=\"isShownPeriod\"\r\n [class.disabled]=\"disabled\"\r\n [class.gray-svg]=\"!isShownPeriod\"\r\n [class.up]=\"isShownPeriod\"\r\n id=\"chevron-{{ rangeId }}\"\r\n class=\"chevron\" icon=\"down_chevron\"></dd-lib-svg-icon>\r\n\r\n } @else {\r\n <dd-lib-svg-icon\r\n (click)=\"clearPeriod()\"\r\n class=\"clear\"\r\n icon=\"clear\"></dd-lib-svg-icon>\r\n\r\n }\r\n </div>\r\n @if (isShownPeriod) {\r\n <div\r\n (ddClickOutside)=\"closeCalendar()\"\r\n [elements]=\"['lib-range-' + rangeId, 'chevron' + rangeId]\"\r\n class=\"calendar-wrapper\">\r\n <dd-lib-calendar [(ngModel)]=\"selectedPeriod\" [rangeMode]=\"true\" (emitPeriod)=\"setPeriod($event)\"></dd-lib-calendar>\r\n </div>\r\n }\r\n</div>\r\n", styles: [".lib-range{min-width:340px;position:relative}.lib-range input{width:100%;height:48px;padding:15px 28px 15px 16px;overflow:hidden;text-overflow:ellipsis;border-radius:8px;border:1px solid var(--input-border-color);background-color:transparent;position:relative}.lib-range input:hover{border-color:var(--input-active-border-colort)}.lib-range input:focus{border-color:var(--input-active-border-colort);box-shadow:var(--input-active-border-shadow)}.lib-range input:disabled{border:none;background-color:var(--input-disable-input);color:var(--input-disable-text);pointer-events:none}.lib-range input:disabled::placeholder{color:var(--input-placeholder)}.lib-range input.invalid,.lib-range input.invalid:hover{border-color:var(--input-error-border-color)}.lib-range input.invalid:focus{border-color:var(--input-error-border-color);box-shadow:var(--input-error-border-shadow)}.lib-range .clear{cursor:pointer;position:absolute;right:8px;top:12px}.lib-range .chevron{cursor:pointer;position:absolute;right:16px;top:10px}.lib-range .chevron.up{transform:rotate(180deg)}.lib-range__title{margin-bottom:4px;font-size:14px;line-height:24px;display:flex;align-items:flex-start}.lib-range__error{color:var(--primary-red-color);font-size:12px;font-weight:400;line-height:10px;margin-top:2px;position:absolute}.lib-range .calendar-wrapper{position:absolute;display:block;z-index:100;width:100%;overflow:auto;border-radius:8px;box-shadow:var(--main-card-shadow);background-color:var(--main-card-color)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { 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.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: LibSvgIconComponent, selector: "dd-lib-svg-icon", inputs: ["width", "height", "color", "icon"] }, { kind: "directive", type: ClickOutsideDirective, selector: "[ddClickOutside]", inputs: ["elements"], outputs: ["ddClickOutside"] }, { kind: "component", type: LibCalendarComponent, selector: "dd-lib-calendar", inputs: ["type", "formatDate", "formatTime", "rangeMode", "mode", "maxDate", "minDate"], outputs: ["emitDate", "emitPeriod"] }, { kind: "directive", type: NgxMaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "leadZero", "triggerOnMaskChange", "apm", "inputTransformFn", "outputTransformFn", "keepCharacterPositions"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
86
86
|
}
|
|
87
87
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: LibDateRangeComponent, decorators: [{
|
|
88
88
|
type: Component,
|
|
@@ -105,7 +105,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImpor
|
|
|
105
105
|
useExisting: forwardRef(() => LibDateRangeComponent),
|
|
106
106
|
multi: true,
|
|
107
107
|
},
|
|
108
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"lib-range\" id=\"lib-range-{{ rangeId }}\">\r\n @if (label) {\r\n <label [for]=\"rangeId\" class=\"lib-range__title\">\r\n {{ label }}\r\n @if (required) {\r\n <dd-lib-svg-icon icon=\"error_hint\"></dd-lib-svg-icon>\r\n }\r\n </label>\r\n }\r\n <div class=\"pos-relative\">\r\n <input\r\n [attr.id]=\"rangeId\"\r\n [attr.placeholder]=\"placeholder\"\r\n (click)=\"openCalendar()\"\r\n [(ngModel)]=\"selectedPeriodStr\"\r\n [mask]=\"'d0.M0.0000 - d0.M0.0000'\"\r\n (ngModelChange)=\"changeStrDate($event)\"\r\n [leadZeroDateTime]=\"true\"\r\n class=\"text-select\"/>\r\n @if (!selectedPeriod) {\r\n <dd-lib-svg-icon\r\n (click)=\"openCalendar()\"\r\n [class.black-svg]=\"isShownPeriod\"\r\n [class.disabled]=\"disabled\"\r\n [class.gray-svg]=\"!isShownPeriod\"\r\n [class.up]=\"isShownPeriod\"\r\n id=\"chevron-{{ rangeId }}\"\r\n class=\"chevron\" icon=\"down_chevron\"></dd-lib-svg-icon>\r\n\r\n } @else {\r\n <dd-lib-svg-icon\r\n (click)=\"clearPeriod()\"\r\n class=\"clear\"\r\n icon=\"clear\"></dd-lib-svg-icon>\r\n\r\n }\r\n </div>\r\n @if (isShownPeriod) {\r\n <div\r\n (ddClickOutside)=\"closeCalendar()\"\r\n [elements]=\"['lib-range-' + rangeId, 'chevron' + rangeId]\"\r\n class=\"calendar-wrapper\">\r\n <dd-lib-calendar [(ngModel)]=\"selectedPeriod\" [rangeMode]=\"true\" (emitPeriod)=\"setPeriod($event)\"></dd-lib-calendar>\r\n </div>\r\n }\r\n</div>\r\n", styles: [".lib-range{min-width:340px;position:relative}.lib-range input{width:100%;height:48px;padding:15px 28px 15px 16px;overflow:hidden;text-overflow:ellipsis;border-radius:8px;border:1px solid var(--input-border-color);background-color:transparent;position:relative}.lib-range input:hover{border-color:var(--input-active-border-colort)}.lib-range input:focus{border-color:var(--input-active-border-colort);box-shadow:var(--input-active-border-shadow)}.lib-range input:disabled{border:none;background-color:var(--input-disable-input);color:var(--input-disable-text);pointer-events:none}.lib-range input:disabled::placeholder{color:var(--input-placeholder)}.lib-range input.invalid,.lib-range input.invalid:hover{border-color:var(--input-error-border-color)}.lib-range input.invalid:focus{border-color:var(--input-error-border-color);box-shadow:var(--input-error-border-shadow)}.lib-range .clear{cursor:pointer;position:absolute;right:8px;top:12px}.lib-range .chevron{cursor:pointer;position:absolute;right:16px;top:10px}.lib-range .chevron.up{transform:rotate(180deg)}.lib-range__title{margin-bottom:4px;font-size:14px;line-height:24px;display:flex;align-items:flex-start}.lib-range__error{color:var(--primary-red-color);font-size:12px;font-weight:400;line-height:10px;margin-top:2px}.lib-range .calendar-wrapper{position:absolute;display:block;z-index:100;width:100%;overflow:auto;border-radius:8px;box-shadow:var(--main-card-shadow);background-color:var(--main-card-color)}\n"] }]
|
|
108
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"lib-range\" id=\"lib-range-{{ rangeId }}\">\r\n @if (label) {\r\n <label [for]=\"rangeId\" class=\"lib-range__title\">\r\n {{ label }}\r\n @if (required) {\r\n <dd-lib-svg-icon icon=\"error_hint\"></dd-lib-svg-icon>\r\n }\r\n </label>\r\n }\r\n <div class=\"pos-relative\">\r\n <input\r\n [attr.id]=\"rangeId\"\r\n [attr.placeholder]=\"placeholder\"\r\n (click)=\"openCalendar()\"\r\n [(ngModel)]=\"selectedPeriodStr\"\r\n [mask]=\"'d0.M0.0000 - d0.M0.0000'\"\r\n (ngModelChange)=\"changeStrDate($event)\"\r\n [leadZeroDateTime]=\"true\"\r\n class=\"text-select\"/>\r\n @if (!selectedPeriod) {\r\n <dd-lib-svg-icon\r\n (click)=\"openCalendar()\"\r\n [class.black-svg]=\"isShownPeriod\"\r\n [class.disabled]=\"disabled\"\r\n [class.gray-svg]=\"!isShownPeriod\"\r\n [class.up]=\"isShownPeriod\"\r\n id=\"chevron-{{ rangeId }}\"\r\n class=\"chevron\" icon=\"down_chevron\"></dd-lib-svg-icon>\r\n\r\n } @else {\r\n <dd-lib-svg-icon\r\n (click)=\"clearPeriod()\"\r\n class=\"clear\"\r\n icon=\"clear\"></dd-lib-svg-icon>\r\n\r\n }\r\n </div>\r\n @if (isShownPeriod) {\r\n <div\r\n (ddClickOutside)=\"closeCalendar()\"\r\n [elements]=\"['lib-range-' + rangeId, 'chevron' + rangeId]\"\r\n class=\"calendar-wrapper\">\r\n <dd-lib-calendar [(ngModel)]=\"selectedPeriod\" [rangeMode]=\"true\" (emitPeriod)=\"setPeriod($event)\"></dd-lib-calendar>\r\n </div>\r\n }\r\n</div>\r\n", styles: [".lib-range{min-width:340px;position:relative}.lib-range input{width:100%;height:48px;padding:15px 28px 15px 16px;overflow:hidden;text-overflow:ellipsis;border-radius:8px;border:1px solid var(--input-border-color);background-color:transparent;position:relative}.lib-range input:hover{border-color:var(--input-active-border-colort)}.lib-range input:focus{border-color:var(--input-active-border-colort);box-shadow:var(--input-active-border-shadow)}.lib-range input:disabled{border:none;background-color:var(--input-disable-input);color:var(--input-disable-text);pointer-events:none}.lib-range input:disabled::placeholder{color:var(--input-placeholder)}.lib-range input.invalid,.lib-range input.invalid:hover{border-color:var(--input-error-border-color)}.lib-range input.invalid:focus{border-color:var(--input-error-border-color);box-shadow:var(--input-error-border-shadow)}.lib-range .clear{cursor:pointer;position:absolute;right:8px;top:12px}.lib-range .chevron{cursor:pointer;position:absolute;right:16px;top:10px}.lib-range .chevron.up{transform:rotate(180deg)}.lib-range__title{margin-bottom:4px;font-size:14px;line-height:24px;display:flex;align-items:flex-start}.lib-range__error{color:var(--primary-red-color);font-size:12px;font-weight:400;line-height:10px;margin-top:2px;position:absolute}.lib-range .calendar-wrapper{position:absolute;display:block;z-index:100;width:100%;overflow:auto;border-radius:8px;box-shadow:var(--main-card-shadow);background-color:var(--main-card-color)}\n"] }]
|
|
109
109
|
}], propDecorators: { rangeId: [{
|
|
110
110
|
type: Input
|
|
111
111
|
}], placeholder: [{
|
|
@@ -115,4 +115,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImpor
|
|
|
115
115
|
}], required: [{
|
|
116
116
|
type: Input
|
|
117
117
|
}] } });
|
|
118
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliLWRhdGUtcmFuZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvbGliLWRhdGUtcmFuZ2UvbGliLWRhdGUtcmFuZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvbGliLWRhdGUtcmFuZ2UvbGliLWRhdGUtcmFuZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFTLE1BQU0sZUFBZSxDQUFDO0FBQzVGLE9BQU8sRUFBQyxxQkFBcUIsRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUMsTUFBTSxTQUFTLENBQUM7QUFDckcsT0FBTyxFQUF1QixXQUFXLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUN0RSxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUMzRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUN0RSxPQUFPLEVBQWMsb0JBQW9CLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUN6RixPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sVUFBVSxDQUFDO0FBQ2hDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxjQUFjLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDMUQsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDOzs7QUE4QnpDLE1BQU0sT0FBTyxxQkFBcUI7SUE1QmxDO1FBa0NTLGtCQUFhLEdBQUcsS0FBSyxDQUFBO1FBQ3JCLGFBQVEsR0FBRyxLQUFLLENBQUE7UUFFaEIsbUJBQWMsR0FB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LENBQUMsTUFBTSxFQUFFLEdBQUksRUFBRSxZQUFZLENBQUMsRUFBRSxDQUFDO1FBQzdHLENBQUM7SUFDSCxDQUFDOzhHQS9FVSxxQkFBcUI7a0dBQXJCLHFCQUFxQixrS0FackI7WUFDVCxjQUFjLEVBQUU7WUFDaEI7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztnQkFDcEQsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGLDBCQ2xDSCxzaURBOENBLHUvQ0Q5QkksV0FBVywrbUJBR1gsbUJBQW1CLDBHQUVuQixxQkFBcUIsZ0hBRXJCLG9CQUFvQiwwTEFDcEIsZ0JBQWdCOzsyRkFlUCxxQkFBcUI7a0JBNUJqQyxTQUFTOytCQUNFLG1CQUFtQixjQUNqQixJQUFJLFdBQ1A7d0JBQ1AsZUFBZTt3QkFDZixXQUFXO3dCQUNYLGFBQWE7d0JBQ2Isa0JBQWtCO3dCQUNsQixtQkFBbUI7d0JBQ25CLFFBQVE7d0JBQ1IscUJBQXFCO3dCQUNyQixrQkFBa0I7d0JBQ2xCLG9CQUFvQjt3QkFDcEIsZ0JBQWdCO3dCQUNoQixRQUFRO3FCQUNULGFBQ1U7d0JBQ1QsY0FBYyxFQUFFO3dCQUNoQjs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxzQkFBc0IsQ0FBQzs0QkFDcEQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0YsbUJBR2dCLHVCQUF1QixDQUFDLE1BQU07OEJBSS9CLE9BQU87c0JBQXRCLEtBQUs7Z0JBQ1UsV0FBVztzQkFBMUIsS0FBSztnQkFDVSxLQUFLO3NCQUFwQixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGZvcndhcmRSZWYsIElucHV0LCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0NsaWNrT3V0c2lkZURpcmVjdGl2ZSwgRGF0ZVNlcnZpY2UsIEZpbHRlckJ5S2V5UGlwZSwgSGlnaGxpZ2h0UGlwZSwgU2FmZVBpcGV9IGZyb20gXCIuLi9jb3JlXCI7XHJcbmltcG9ydCB7Q29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1zTW9kdWxlLCBOR19WQUxVRV9BQ0NFU1NPUn0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7TGliTG9hZGVyQ29tcG9uZW50fSBmcm9tIFwiLi4vbGliLWxvYWRlci9saWItbG9hZGVyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0xpYlN2Z0ljb25Db21wb25lbnR9IGZyb20gXCIuLi9saWItc3ZnLWljb24vbGliLXN2Zy1pY29uLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0xpYlBlcmlvZENvbXBvbmVudH0gZnJvbSBcIi4uL2xpYi1wZXJpb2QvbGliLXBlcmlvZC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtJRGF0ZVBlcmlvZCwgTGliQ2FsZW5kYXJDb21wb25lbnR9IGZyb20gXCIuLi9saWItY2FsZW5kYXIvbGliLWNhbGVuZGFyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge2Zvcm1hdH0gZnJvbSBcImRhdGUtZm5zXCI7XHJcbmltcG9ydCB7Tmd4TWFza0RpcmVjdGl2ZSwgcHJvdmlkZU5neE1hc2t9IGZyb20gXCJuZ3gtbWFza1wiO1xyXG5pbXBvcnQge0pzb25QaXBlfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2RkLWxpYi1kYXRlLXJhbmdlJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIEZpbHRlckJ5S2V5UGlwZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgSGlnaGxpZ2h0UGlwZSxcclxuICAgIExpYkxvYWRlckNvbXBvbmVudCxcclxuICAgIExpYlN2Z0ljb25Db21wb25lbnQsXHJcbiAgICBTYWZlUGlwZSxcclxuICAgIENsaWNrT3V0c2lkZURpcmVjdGl2ZSxcclxuICAgIExpYlBlcmlvZENvbXBvbmVudCxcclxuICAgIExpYkNhbGVuZGFyQ29tcG9uZW50LFxyXG4gICAgTmd4TWFza0RpcmVjdGl2ZSxcclxuICAgIEpzb25QaXBlXHJcbiAgXSxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHByb3ZpZGVOZ3hNYXNrKCksXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBMaWJEYXRlUmFuZ2VDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vbGliLWRhdGUtcmFuZ2UuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9saWItZGF0ZS1yYW5nZS5jb21wb25lbnQuc2NzcycsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIExpYkRhdGVSYW5nZUNvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQge1xyXG4gIHB1YmxpYyBzdGF0aWMgaWRDb3VudGVyID0gMTtcclxuICBASW5wdXQoKSBwdWJsaWMgcmFuZ2VJZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBwbGFjZWhvbGRlcjogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBsYWJlbDogc3RyaW5nICB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKSBwdWJsaWMgcmVxdWlyZWQ6IGJvb2xlYW4gIHwgdW5kZWZpbmVkO1xyXG4gIHB1YmxpYyBpc1Nob3duUGVyaW9kID0gZmFsc2VcclxuICBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZVxyXG4gIHB1YmxpYyBzZWxlY3RlZFBlcmlvZFN0cjogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gIHB1YmxpYyBzZWxlY3RlZFBlcmlvZDogSURhdGVQZXJpb2QgfCB1bmRlZmluZWQgPSB7c3RhcnQ6IG5ldyBEYXRlKCksIGVuZDogbmV3IERhdGUoKX07XHJcbiAgcHVibGljIG9uVG91Y2hlZENhbGxiYWNrOiAoKCkgPT4gdm9pZCkgfCB1bmRlZmluZWQ7XHJcblxyXG5cclxuICBwdWJsaWMgbmdPbkluaXQoKSB7XHJcbiAgICBpZiAoIXRoaXMucmFuZ2VJZCkge1xyXG4gICAgICB0aGlzLnJhbmdlSWQgPSAnZGQtcmFuZ2UtJyArIExpYkRhdGVSYW5nZUNvbXBvbmVudC5pZENvdW50ZXIrKztcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICBwdWJsaWMgb3BlbkNhbGVuZGFyKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XHJcbiAgICAgIHRoaXMuaXNTaG93blBlcmlvZCA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2xlYXJQZXJpb2QoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdGVkUGVyaW9kID0gdW5kZWZpbmVkXHJcbiAgICB0aGlzLnNlbGVjdGVkUGVyaW9kU3RyID0gdW5kZWZpbmVkO1xyXG4gICAgdGhpcy5pc1Nob3duUGVyaW9kID0gZmFsc2VcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbG9zZUNhbGVuZGFyKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLnNlbGVjdGVkUGVyaW9kKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRQZXJpb2RTdHIgPSB1bmRlZmluZWQ7XHJcbiAgICB9XHJcbiAgICB0aGlzLmlzU2hvd25QZXJpb2QgPSBmYWxzZVxyXG5cclxuICB9XHJcblxyXG4gIHNldFBlcmlvZCgkZXZlbnQ6IElEYXRlUGVyaW9kIHwgdW5kZWZpbmVkKSB7XHJcbiAgICB0aGlzLmlzU2hvd25QZXJpb2QgPSBmYWxzZTtcclxuICAgIGlmICgkZXZlbnQpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZFBlcmlvZFN0ciA9IGAke2Zvcm1hdCgkZXZlbnQ/LnN0YXJ0ISwgJ2RkLk1NLnl5eXknKX0gLSAke2Zvcm1hdCgkZXZlbnQ/LmVuZCEsICdkZC5NTS55eXl5Jyl9YDtcclxuXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkUGVyaW9kID0gdW5kZWZpbmVkO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkUGVyaW9kU3RyID0gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy5zZWxlY3RlZFBlcmlvZClcclxuICB9XHJcblxyXG4gIGNoYW5nZVN0ckRhdGUoJGV2ZW50OiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IHN0YXJ0ID0gRGF0ZVNlcnZpY2UuZ2V0RGF0ZUZyb21TdHJpbmcoJGV2ZW50LnN1YnN0cmluZygwLCA4KSk7XHJcbiAgICBjb25zdCBlbmQgPSBEYXRlU2VydmljZS5nZXREYXRlRnJvbVN0cmluZygkZXZlbnQuc3Vic3RyaW5nKDgsIDE2KSk7XHJcbiAgICBpZiAoc3RhcnQgJiYgZW5kKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRQZXJpb2QgPSB7c3RhcnQsIGVuZH07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkUGVyaW9kID0gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy5zZWxlY3RlZFBlcmlvZCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcHJvcGFnYXRlQ2hhbmdlKF92YWx1ZTogSURhdGVQZXJpb2QgfCB1bmRlZmluZWQpOiB2b2lkIHtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoZWRDYWxsYmFjayA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHdyaXRlVmFsdWUoJGV2ZW50OiBJRGF0ZVBlcmlvZCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RlZFBlcmlvZCA9ICRldmVudDtcclxuICAgIGlmICgkZXZlbnQ/LnN0YXJ0ICYmICRldmVudD8uZW5kKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRQZXJpb2RTdHIgPSBgJHtmb3JtYXQoJGV2ZW50Py5zdGFydCEsICdkZC5NTS55eXl5Jyl9IC0gJHtmb3JtYXQoJGV2ZW50Py5lbmQhLCAnZGQuTU0ueXl5eScpfWA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJsaWItcmFuZ2VcIiBpZD1cImxpYi1yYW5nZS17eyByYW5nZUlkIH19XCI+XHJcbiAgQGlmIChsYWJlbCkge1xyXG4gICAgPGxhYmVsIFtmb3JdPVwicmFuZ2VJZFwiIGNsYXNzPVwibGliLXJhbmdlX190aXRsZVwiPlxyXG4gICAgICB7eyBsYWJlbCB9fVxyXG4gICAgICBAaWYgKHJlcXVpcmVkKSB7XHJcbiAgICAgICAgPGRkLWxpYi1zdmctaWNvbiBpY29uPVwiZXJyb3JfaGludFwiPjwvZGQtbGliLXN2Zy1pY29uPlxyXG4gICAgICB9XHJcbiAgICA8L2xhYmVsPlxyXG4gIH1cclxuICA8ZGl2IGNsYXNzPVwicG9zLXJlbGF0aXZlXCI+XHJcbiAgICA8aW5wdXRcclxuICAgICAgW2F0dHIuaWRdPVwicmFuZ2VJZFwiXHJcbiAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcclxuICAgICAgKGNsaWNrKT1cIm9wZW5DYWxlbmRhcigpXCJcclxuICAgICAgWyhuZ01vZGVsKV09XCJzZWxlY3RlZFBlcmlvZFN0clwiXHJcbiAgICAgIFttYXNrXT1cIidkMC5NMC4wMDAwIC0gZDAuTTAuMDAwMCdcIlxyXG4gICAgICAobmdNb2RlbENoYW5nZSk9XCJjaGFuZ2VTdHJEYXRlKCRldmVudClcIlxyXG4gICAgICBbbGVhZFplcm9EYXRlVGltZV09XCJ0cnVlXCJcclxuICAgICAgY2xhc3M9XCJ0ZXh0LXNlbGVjdFwiLz5cclxuICAgIEBpZiAoIXNlbGVjdGVkUGVyaW9kKSB7XHJcbiAgICAgIDxkZC1saWItc3ZnLWljb25cclxuICAgICAgICAoY2xpY2spPVwib3BlbkNhbGVuZGFyKClcIlxyXG4gICAgICAgIFtjbGFzcy5ibGFjay1zdmddPVwiaXNTaG93blBlcmlvZFwiXHJcbiAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgICBbY2xhc3MuZ3JheS1zdmddPVwiIWlzU2hvd25QZXJpb2RcIlxyXG4gICAgICAgIFtjbGFzcy51cF09XCJpc1Nob3duUGVyaW9kXCJcclxuICAgICAgICBpZD1cImNoZXZyb24te3sgcmFuZ2VJZCB9fVwiXHJcbiAgICAgICAgY2xhc3M9XCJjaGV2cm9uXCIgaWNvbj1cImRvd25fY2hldnJvblwiPjwvZGQtbGliLXN2Zy1pY29uPlxyXG5cclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICA8ZGQtbGliLXN2Zy1pY29uXHJcbiAgICAgICAgKGNsaWNrKT1cImNsZWFyUGVyaW9kKClcIlxyXG4gICAgICAgIGNsYXNzPVwiY2xlYXJcIlxyXG4gICAgICAgIGljb249XCJjbGVhclwiPjwvZGQtbGliLXN2Zy1pY29uPlxyXG5cclxuICAgIH1cclxuICA8L2Rpdj5cclxuICBAaWYgKGlzU2hvd25QZXJpb2QpIHtcclxuICAgIDxkaXZcclxuICAgICAgKGRkQ2xpY2tPdXRzaWRlKT1cImNsb3NlQ2FsZW5kYXIoKVwiXHJcbiAgICAgIFtlbGVtZW50c109XCJbJ2xpYi1yYW5nZS0nICsgcmFuZ2VJZCwgJ2NoZXZyb24nICsgcmFuZ2VJZF1cIlxyXG4gICAgICBjbGFzcz1cImNhbGVuZGFyLXdyYXBwZXJcIj5cclxuICAgICAgPGRkLWxpYi1jYWxlbmRhciBbKG5nTW9kZWwpXT1cInNlbGVjdGVkUGVyaW9kXCIgW3JhbmdlTW9kZV09XCJ0cnVlXCIgKGVtaXRQZXJpb2QpPVwic2V0UGVyaW9kKCRldmVudClcIj48L2RkLWxpYi1jYWxlbmRhcj5cclxuICAgIDwvZGl2PlxyXG4gIH1cclxuPC9kaXY+XHJcbiJdfQ==
|
|
118
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliLWRhdGUtcmFuZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvbGliLWRhdGUtcmFuZ2UvbGliLWRhdGUtcmFuZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvbGliLWRhdGUtcmFuZ2UvbGliLWRhdGUtcmFuZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFTLE1BQU0sZUFBZSxDQUFDO0FBQzVGLE9BQU8sRUFBQyxxQkFBcUIsRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUMsTUFBTSxTQUFTLENBQUM7QUFDckcsT0FBTyxFQUF1QixXQUFXLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUN0RSxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUMzRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUN0RSxPQUFPLEVBQWMsb0JBQW9CLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUN6RixPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sVUFBVSxDQUFDO0FBQ2hDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxjQUFjLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDMUQsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDOzs7QUE4QnpDLE1BQU0sT0FBTyxxQkFBcUI7SUE1QmxDO1FBa0NTLGtCQUFhLEdBQUcsS0FBSyxDQUFBO1FBQ3JCLGFBQVEsR0FBRyxLQUFLLENBQUE7UUFFaEIsbUJBQWMsR0FB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LENBQUMsTUFBTSxFQUFFLEdBQUksRUFBRSxZQUFZLENBQUMsRUFBRSxDQUFDO1FBQzdHLENBQUM7SUFDSCxDQUFDOzhHQS9FVSxxQkFBcUI7a0dBQXJCLHFCQUFxQixrS0FackI7WUFDVCxjQUFjLEVBQUU7WUFDaEI7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztnQkFDcEQsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGLDBCQ2xDSCxzaURBOENBLHlnREQ5QkksV0FBVywrbUJBR1gsbUJBQW1CLDBHQUVuQixxQkFBcUIsZ0hBRXJCLG9CQUFvQiwwTEFDcEIsZ0JBQWdCOzsyRkFlUCxxQkFBcUI7a0JBNUJqQyxTQUFTOytCQUNFLG1CQUFtQixjQUNqQixJQUFJLFdBQ1A7d0JBQ1AsZUFBZTt3QkFDZixXQUFXO3dCQUNYLGFBQWE7d0JBQ2Isa0JBQWtCO3dCQUNsQixtQkFBbUI7d0JBQ25CLFFBQVE7d0JBQ1IscUJBQXFCO3dCQUNyQixrQkFBa0I7d0JBQ2xCLG9CQUFvQjt3QkFDcEIsZ0JBQWdCO3dCQUNoQixRQUFRO3FCQUNULGFBQ1U7d0JBQ1QsY0FBYyxFQUFFO3dCQUNoQjs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxzQkFBc0IsQ0FBQzs0QkFDcEQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0YsbUJBR2dCLHVCQUF1QixDQUFDLE1BQU07OEJBSS9CLE9BQU87c0JBQXRCLEtBQUs7Z0JBQ1UsV0FBVztzQkFBMUIsS0FBSztnQkFDVSxLQUFLO3NCQUFwQixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGZvcndhcmRSZWYsIElucHV0LCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0NsaWNrT3V0c2lkZURpcmVjdGl2ZSwgRGF0ZVNlcnZpY2UsIEZpbHRlckJ5S2V5UGlwZSwgSGlnaGxpZ2h0UGlwZSwgU2FmZVBpcGV9IGZyb20gXCIuLi9jb3JlXCI7XHJcbmltcG9ydCB7Q29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1zTW9kdWxlLCBOR19WQUxVRV9BQ0NFU1NPUn0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7TGliTG9hZGVyQ29tcG9uZW50fSBmcm9tIFwiLi4vbGliLWxvYWRlci9saWItbG9hZGVyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0xpYlN2Z0ljb25Db21wb25lbnR9IGZyb20gXCIuLi9saWItc3ZnLWljb24vbGliLXN2Zy1pY29uLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0xpYlBlcmlvZENvbXBvbmVudH0gZnJvbSBcIi4uL2xpYi1wZXJpb2QvbGliLXBlcmlvZC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtJRGF0ZVBlcmlvZCwgTGliQ2FsZW5kYXJDb21wb25lbnR9IGZyb20gXCIuLi9saWItY2FsZW5kYXIvbGliLWNhbGVuZGFyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge2Zvcm1hdH0gZnJvbSBcImRhdGUtZm5zXCI7XHJcbmltcG9ydCB7Tmd4TWFza0RpcmVjdGl2ZSwgcHJvdmlkZU5neE1hc2t9IGZyb20gXCJuZ3gtbWFza1wiO1xyXG5pbXBvcnQge0pzb25QaXBlfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2RkLWxpYi1kYXRlLXJhbmdlJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIEZpbHRlckJ5S2V5UGlwZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgSGlnaGxpZ2h0UGlwZSxcclxuICAgIExpYkxvYWRlckNvbXBvbmVudCxcclxuICAgIExpYlN2Z0ljb25Db21wb25lbnQsXHJcbiAgICBTYWZlUGlwZSxcclxuICAgIENsaWNrT3V0c2lkZURpcmVjdGl2ZSxcclxuICAgIExpYlBlcmlvZENvbXBvbmVudCxcclxuICAgIExpYkNhbGVuZGFyQ29tcG9uZW50LFxyXG4gICAgTmd4TWFza0RpcmVjdGl2ZSxcclxuICAgIEpzb25QaXBlXHJcbiAgXSxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHByb3ZpZGVOZ3hNYXNrKCksXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBMaWJEYXRlUmFuZ2VDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vbGliLWRhdGUtcmFuZ2UuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9saWItZGF0ZS1yYW5nZS5jb21wb25lbnQuc2NzcycsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIExpYkRhdGVSYW5nZUNvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQge1xyXG4gIHB1YmxpYyBzdGF0aWMgaWRDb3VudGVyID0gMTtcclxuICBASW5wdXQoKSBwdWJsaWMgcmFuZ2VJZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBwbGFjZWhvbGRlcjogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBsYWJlbDogc3RyaW5nICB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKSBwdWJsaWMgcmVxdWlyZWQ6IGJvb2xlYW4gIHwgdW5kZWZpbmVkO1xyXG4gIHB1YmxpYyBpc1Nob3duUGVyaW9kID0gZmFsc2VcclxuICBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZVxyXG4gIHB1YmxpYyBzZWxlY3RlZFBlcmlvZFN0cjogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gIHB1YmxpYyBzZWxlY3RlZFBlcmlvZDogSURhdGVQZXJpb2QgfCB1bmRlZmluZWQgPSB7c3RhcnQ6IG5ldyBEYXRlKCksIGVuZDogbmV3IERhdGUoKX07XHJcbiAgcHVibGljIG9uVG91Y2hlZENhbGxiYWNrOiAoKCkgPT4gdm9pZCkgfCB1bmRlZmluZWQ7XHJcblxyXG5cclxuICBwdWJsaWMgbmdPbkluaXQoKSB7XHJcbiAgICBpZiAoIXRoaXMucmFuZ2VJZCkge1xyXG4gICAgICB0aGlzLnJhbmdlSWQgPSAnZGQtcmFuZ2UtJyArIExpYkRhdGVSYW5nZUNvbXBvbmVudC5pZENvdW50ZXIrKztcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICBwdWJsaWMgb3BlbkNhbGVuZGFyKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XHJcbiAgICAgIHRoaXMuaXNTaG93blBlcmlvZCA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2xlYXJQZXJpb2QoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdGVkUGVyaW9kID0gdW5kZWZpbmVkXHJcbiAgICB0aGlzLnNlbGVjdGVkUGVyaW9kU3RyID0gdW5kZWZpbmVkO1xyXG4gICAgdGhpcy5pc1Nob3duUGVyaW9kID0gZmFsc2VcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbG9zZUNhbGVuZGFyKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLnNlbGVjdGVkUGVyaW9kKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRQZXJpb2RTdHIgPSB1bmRlZmluZWQ7XHJcbiAgICB9XHJcbiAgICB0aGlzLmlzU2hvd25QZXJpb2QgPSBmYWxzZVxyXG5cclxuICB9XHJcblxyXG4gIHNldFBlcmlvZCgkZXZlbnQ6IElEYXRlUGVyaW9kIHwgdW5kZWZpbmVkKSB7XHJcbiAgICB0aGlzLmlzU2hvd25QZXJpb2QgPSBmYWxzZTtcclxuICAgIGlmICgkZXZlbnQpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZFBlcmlvZFN0ciA9IGAke2Zvcm1hdCgkZXZlbnQ/LnN0YXJ0ISwgJ2RkLk1NLnl5eXknKX0gLSAke2Zvcm1hdCgkZXZlbnQ/LmVuZCEsICdkZC5NTS55eXl5Jyl9YDtcclxuXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkUGVyaW9kID0gdW5kZWZpbmVkO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkUGVyaW9kU3RyID0gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy5zZWxlY3RlZFBlcmlvZClcclxuICB9XHJcblxyXG4gIGNoYW5nZVN0ckRhdGUoJGV2ZW50OiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IHN0YXJ0ID0gRGF0ZVNlcnZpY2UuZ2V0RGF0ZUZyb21TdHJpbmcoJGV2ZW50LnN1YnN0cmluZygwLCA4KSk7XHJcbiAgICBjb25zdCBlbmQgPSBEYXRlU2VydmljZS5nZXREYXRlRnJvbVN0cmluZygkZXZlbnQuc3Vic3RyaW5nKDgsIDE2KSk7XHJcbiAgICBpZiAoc3RhcnQgJiYgZW5kKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRQZXJpb2QgPSB7c3RhcnQsIGVuZH07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkUGVyaW9kID0gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy5zZWxlY3RlZFBlcmlvZCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcHJvcGFnYXRlQ2hhbmdlKF92YWx1ZTogSURhdGVQZXJpb2QgfCB1bmRlZmluZWQpOiB2b2lkIHtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoZWRDYWxsYmFjayA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHdyaXRlVmFsdWUoJGV2ZW50OiBJRGF0ZVBlcmlvZCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RlZFBlcmlvZCA9ICRldmVudDtcclxuICAgIGlmICgkZXZlbnQ/LnN0YXJ0ICYmICRldmVudD8uZW5kKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRQZXJpb2RTdHIgPSBgJHtmb3JtYXQoJGV2ZW50Py5zdGFydCEsICdkZC5NTS55eXl5Jyl9IC0gJHtmb3JtYXQoJGV2ZW50Py5lbmQhLCAnZGQuTU0ueXl5eScpfWA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJsaWItcmFuZ2VcIiBpZD1cImxpYi1yYW5nZS17eyByYW5nZUlkIH19XCI+XHJcbiAgQGlmIChsYWJlbCkge1xyXG4gICAgPGxhYmVsIFtmb3JdPVwicmFuZ2VJZFwiIGNsYXNzPVwibGliLXJhbmdlX190aXRsZVwiPlxyXG4gICAgICB7eyBsYWJlbCB9fVxyXG4gICAgICBAaWYgKHJlcXVpcmVkKSB7XHJcbiAgICAgICAgPGRkLWxpYi1zdmctaWNvbiBpY29uPVwiZXJyb3JfaGludFwiPjwvZGQtbGliLXN2Zy1pY29uPlxyXG4gICAgICB9XHJcbiAgICA8L2xhYmVsPlxyXG4gIH1cclxuICA8ZGl2IGNsYXNzPVwicG9zLXJlbGF0aXZlXCI+XHJcbiAgICA8aW5wdXRcclxuICAgICAgW2F0dHIuaWRdPVwicmFuZ2VJZFwiXHJcbiAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcclxuICAgICAgKGNsaWNrKT1cIm9wZW5DYWxlbmRhcigpXCJcclxuICAgICAgWyhuZ01vZGVsKV09XCJzZWxlY3RlZFBlcmlvZFN0clwiXHJcbiAgICAgIFttYXNrXT1cIidkMC5NMC4wMDAwIC0gZDAuTTAuMDAwMCdcIlxyXG4gICAgICAobmdNb2RlbENoYW5nZSk9XCJjaGFuZ2VTdHJEYXRlKCRldmVudClcIlxyXG4gICAgICBbbGVhZFplcm9EYXRlVGltZV09XCJ0cnVlXCJcclxuICAgICAgY2xhc3M9XCJ0ZXh0LXNlbGVjdFwiLz5cclxuICAgIEBpZiAoIXNlbGVjdGVkUGVyaW9kKSB7XHJcbiAgICAgIDxkZC1saWItc3ZnLWljb25cclxuICAgICAgICAoY2xpY2spPVwib3BlbkNhbGVuZGFyKClcIlxyXG4gICAgICAgIFtjbGFzcy5ibGFjay1zdmddPVwiaXNTaG93blBlcmlvZFwiXHJcbiAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgICBbY2xhc3MuZ3JheS1zdmddPVwiIWlzU2hvd25QZXJpb2RcIlxyXG4gICAgICAgIFtjbGFzcy51cF09XCJpc1Nob3duUGVyaW9kXCJcclxuICAgICAgICBpZD1cImNoZXZyb24te3sgcmFuZ2VJZCB9fVwiXHJcbiAgICAgICAgY2xhc3M9XCJjaGV2cm9uXCIgaWNvbj1cImRvd25fY2hldnJvblwiPjwvZGQtbGliLXN2Zy1pY29uPlxyXG5cclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICA8ZGQtbGliLXN2Zy1pY29uXHJcbiAgICAgICAgKGNsaWNrKT1cImNsZWFyUGVyaW9kKClcIlxyXG4gICAgICAgIGNsYXNzPVwiY2xlYXJcIlxyXG4gICAgICAgIGljb249XCJjbGVhclwiPjwvZGQtbGliLXN2Zy1pY29uPlxyXG5cclxuICAgIH1cclxuICA8L2Rpdj5cclxuICBAaWYgKGlzU2hvd25QZXJpb2QpIHtcclxuICAgIDxkaXZcclxuICAgICAgKGRkQ2xpY2tPdXRzaWRlKT1cImNsb3NlQ2FsZW5kYXIoKVwiXHJcbiAgICAgIFtlbGVtZW50c109XCJbJ2xpYi1yYW5nZS0nICsgcmFuZ2VJZCwgJ2NoZXZyb24nICsgcmFuZ2VJZF1cIlxyXG4gICAgICBjbGFzcz1cImNhbGVuZGFyLXdyYXBwZXJcIj5cclxuICAgICAgPGRkLWxpYi1jYWxlbmRhciBbKG5nTW9kZWwpXT1cInNlbGVjdGVkUGVyaW9kXCIgW3JhbmdlTW9kZV09XCJ0cnVlXCIgKGVtaXRQZXJpb2QpPVwic2V0UGVyaW9kKCRldmVudClcIj48L2RkLWxpYi1jYWxlbmRhcj5cclxuICAgIDwvZGl2PlxyXG4gIH1cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
2
|
import { LibButtonComponent } from '../lib-button/lib-button.component';
|
|
3
|
-
import { NgOptimizedImage, NgStyle } from '@angular/common';
|
|
3
|
+
import { NgOptimizedImage, NgStyle, NgTemplateOutlet } from '@angular/common';
|
|
4
4
|
import { LibSvgIconComponent } from "../lib-svg-icon/lib-svg-icon.component";
|
|
5
5
|
import { FormsModule } from "@angular/forms";
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
@@ -67,11 +67,11 @@ export class LibFileLoaderComponent {
|
|
|
67
67
|
return file.size / 1048576 <= this.maxFileSize;
|
|
68
68
|
}
|
|
69
69
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: LibFileLoaderComponent, deps: [{ token: i1.ToastService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
70
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
70
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.2", type: LibFileLoaderComponent, isStandalone: true, selector: "dd-lib-file-loader", inputs: { multiple: "multiple", maxFiles: "maxFiles", maxFileSize: "maxFileSize", style: "style", extensions: "extensions", disabled: "disabled", template: "template" }, outputs: { inputFiles: "inputFiles" }, viewQueries: [{ propertyName: "fileLoader", first: true, predicate: ["fileLoader"], descendants: true }], ngImport: i0, template: "<div (click)=\"openFileLoader()\">\r\n @if (template) {\r\n <ng-template [ngTemplateOutlet]=\"template\"></ng-template>\r\n } @else {\r\n <dd-lib-button btnColor=\"white\" [ngStyle]=\"style\" >\r\n <div class=\"d-flex align-center\">\r\n <div class=\"mr-8\">\r\n <dd-lib-svg-icon icon=\"paperclip\"></dd-lib-svg-icon>\r\n </div>\r\n <div class=\"title-soc-btn\">\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0444\u0430\u0439\u043B\u044B</div>\r\n </div>\r\n </dd-lib-button>\r\n }\r\n</div>\r\n\r\n<input type=\"file\"\r\n [multiple]=\"multiple\"\r\n [hidden]=\"true\" #fileLoader\r\n (change)=\"loadFile($event)\">\r\n", styles: [""], dependencies: [{ kind: "component", type: LibButtonComponent, selector: "dd-lib-button", inputs: ["noPadding", "loaderColor"] }, { kind: "component", type: LibSvgIconComponent, selector: "dd-lib-svg-icon", inputs: ["width", "height", "color", "icon"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
71
71
|
}
|
|
72
72
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: LibFileLoaderComponent, decorators: [{
|
|
73
73
|
type: Component,
|
|
74
|
-
args: [{ selector: 'dd-lib-file-loader', standalone: true, imports: [LibButtonComponent, NgOptimizedImage, LibSvgIconComponent, FormsModule, NgStyle], changeDetection: ChangeDetectionStrategy.OnPush, template: "<dd-lib-button btnColor=\"white\" [ngStyle]=\"style\"
|
|
74
|
+
args: [{ selector: 'dd-lib-file-loader', standalone: true, imports: [LibButtonComponent, NgOptimizedImage, LibSvgIconComponent, FormsModule, NgStyle, NgTemplateOutlet], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div (click)=\"openFileLoader()\">\r\n @if (template) {\r\n <ng-template [ngTemplateOutlet]=\"template\"></ng-template>\r\n } @else {\r\n <dd-lib-button btnColor=\"white\" [ngStyle]=\"style\" >\r\n <div class=\"d-flex align-center\">\r\n <div class=\"mr-8\">\r\n <dd-lib-svg-icon icon=\"paperclip\"></dd-lib-svg-icon>\r\n </div>\r\n <div class=\"title-soc-btn\">\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0444\u0430\u0439\u043B\u044B</div>\r\n </div>\r\n </dd-lib-button>\r\n }\r\n</div>\r\n\r\n<input type=\"file\"\r\n [multiple]=\"multiple\"\r\n [hidden]=\"true\" #fileLoader\r\n (change)=\"loadFile($event)\">\r\n" }]
|
|
75
75
|
}], ctorParameters: () => [{ type: i1.ToastService }], propDecorators: { fileLoader: [{
|
|
76
76
|
type: ViewChild,
|
|
77
77
|
args: ['fileLoader']
|
|
@@ -87,7 +87,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImpor
|
|
|
87
87
|
type: Input
|
|
88
88
|
}], disabled: [{
|
|
89
89
|
type: Input
|
|
90
|
+
}], template: [{
|
|
91
|
+
type: Input
|
|
90
92
|
}], inputFiles: [{
|
|
91
93
|
type: Output
|
|
92
94
|
}] } });
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliLWZpbGUtbG9hZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RkLWxpYi9zcmMvbGliL2xpYi1maWxlLWxvYWRlci9saWItZmlsZS1sb2FkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvbGliLWZpbGUtbG9hZGVyL2xpYi1maWxlLWxvYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDdEUsT0FBTyxFQUFDLGdCQUFnQixFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzVFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQzNFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBVzNDLE1BQU0sT0FBTyxzQkFBc0I7SUFhakMsWUFBb0IsS0FBbUI7UUFBbkIsVUFBSyxHQUFMLEtBQUssQ0FBYztRQVh2QixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGFBQVEsR0FBRyxDQUFDLENBQUM7UUFDYixnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQU1oQixlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQTZCLENBQUE7UUFDcEUsVUFBSyxHQUFXLEVBQUUsQ0FBQztJQUcxQixDQUFDO0lBRU0sY0FBYztRQUNuQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQTtJQUN2QyxDQUFDO0lBRU0sUUFBUSxDQUFDLE1BQWE7UUFDM0IsTUFBTSxLQUFLLEdB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QixFQUFFLGdCQUFnQixFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLENBQUMsbUJBRzNGLHVCQUF1QixDQUFDLE1BQU07aUZBR2YsVUFBVTtzQkFBekMsU0FBUzt1QkFBQyxZQUFZO2dCQUNQLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxXQUFXO3NCQUExQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFFVyxVQUFVO3NCQUExQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIFZpZXdDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0xpYkJ1dHRvbkNvbXBvbmVudH0gZnJvbSAnLi4vbGliLWJ1dHRvbi9saWItYnV0dG9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7TmdPcHRpbWl6ZWRJbWFnZSwgTmdTdHlsZSwgTmdUZW1wbGF0ZU91dGxldH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtMaWJTdmdJY29uQ29tcG9uZW50fSBmcm9tIFwiLi4vbGliLXN2Zy1pY29uL2xpYi1zdmctaWNvbi5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtGb3Jtc01vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7VG9hc3RTZXJ2aWNlfSBmcm9tIFwiLi4vY29yZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdkZC1saWItZmlsZS1sb2FkZXInLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0xpYkJ1dHRvbkNvbXBvbmVudCwgTmdPcHRpbWl6ZWRJbWFnZSwgTGliU3ZnSWNvbkNvbXBvbmVudCwgRm9ybXNNb2R1bGUsIE5nU3R5bGUsIE5nVGVtcGxhdGVPdXRsZXRdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9saWItZmlsZS1sb2FkZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9saWItZmlsZS1sb2FkZXIuY29tcG9uZW50LnNjc3MnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTGliRmlsZUxvYWRlckNvbXBvbmVudCB7XHJcbiAgQFZpZXdDaGlsZCgnZmlsZUxvYWRlcicpIHB1YmxpYyBmaWxlTG9hZGVyITogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PlxyXG4gIEBJbnB1dCgpIHB1YmxpYyBtdWx0aXBsZSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBtYXhGaWxlcyA9IDU7XHJcbiAgQElucHV0KCkgcHVibGljIG1heEZpbGVTaXplID0gNTA7XHJcbiAgQElucHV0KCkgc3R5bGU6IG9iamVjdCB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKSBleHRlbnNpb25zOiBzdHJpbmdbXSB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKSBwdWJsaWMgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPEhUTUxFbGVtZW50PiB8IHVuZGVmaW5lZDtcclxuXHJcbiAgQE91dHB1dCgpIHB1YmxpYyBpbnB1dEZpbGVzID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlW10gfCB1bmRlZmluZWQgfCBudWxsPigpXHJcbiAgcHVibGljIGZpbGVzOiBGaWxlW10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0b2FzdDogVG9hc3RTZXJ2aWNlKSB7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb3BlbkZpbGVMb2FkZXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLmZpbGVMb2FkZXIubmF0aXZlRWxlbWVudC5jbGljaygpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbG9hZEZpbGUoJGV2ZW50OiBFdmVudCkge1xyXG4gICAgY29uc3QgZmlsZXMgPSAoJGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KT8uZmlsZXMhO1xyXG5cclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZmlsZXMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgbGV0IGVycm9yID0gZmFsc2VcclxuICAgICAgaWYgKCF0aGlzLnZhbGlkYXRlRmlsZVNpemUoZmlsZXNbaV0pKSB7XHJcbiAgICAgICAgdGhpcy50b2FzdC5zaG93KHtcclxuICAgICAgICAgIHR5cGU6ICd3YXJuaW5nJyxcclxuICAgICAgICAgIHRpdGxlOiBg0KDQsNC30LzQtdGAINGE0LDQudC70LAgJHtmaWxlc1tpXS5uYW1lfSDQv9GA0LXQstGL0YjQsNC10YIgJHt0aGlzLm1heEZpbGVTaXplfdCc0LEhYFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGVycm9yID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoIXRoaXMudmFsaWRhdGVFeHRlbnNpb24oZmlsZXNbaV0pICYmIHRoaXMuZXh0ZW5zaW9ucykge1xyXG4gICAgICAgIHRoaXMudG9hc3Quc2hvdyh7XHJcbiAgICAgICAgICB0eXBlOiAnd2FybmluZycsXHJcbiAgICAgICAgICB0aXRsZTogJ9Cd0LXQtNC+0L/Rg9GB0YLQuNC80YvQuSDRhNC+0YDQvNCw0YIg0YTQsNC50LvQsCEnXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgZXJyb3IgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLm1heEZpbGVzICYmIHRoaXMubWF4RmlsZXMgPT09IHRoaXMuZmlsZXMubGVuZ3RoKSB7XHJcbiAgICAgICAgdGhpcy50b2FzdC5zaG93KHtcclxuICAgICAgICAgIHR5cGU6ICd3YXJuaW5nJyxcclxuICAgICAgICAgIHRpdGxlOiAn0J/RgNC10LLRi9GI0LXQvdC+INC00L7Qv9GD0YHRgtC40LzQvtC1INC60L7Qu9C70LjRh9C10YHRgtCy0L4g0YTQsNC50LvQvtCyJ1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGVycm9yID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLmlucHV0RmlsZXMuZW1pdCh0aGlzLmZpbGVzKVxyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICBpZiAoIWVycm9yKSB7XHJcbiAgICAgICAgdGhpcy5maWxlcy5wdXNoKGZpbGVzW2ldKVxyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG4gICAgdGhpcy5pbnB1dEZpbGVzLmVtaXQodGhpcy5maWxlcylcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbGVhcihfZmlsZT86IEZpbGUpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmZpbGVzID0gW107XHJcbiAgICAgIHRoaXMuZmlsZUxvYWRlci5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XHJcbiAgICAgIHRoaXMuZmlsZUxvYWRlci5uYXRpdmVFbGVtZW50LmZpbGVzID0gbnVsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgdmFsaWRhdGVFeHRlbnNpb24oZmlsZTogRmlsZSk6IGJvb2xlYW4gfCB1bmRlZmluZWQge1xyXG4gICAgY29uc3QgZXh0ZW5zaW9uID0gZmlsZS50eXBlLnNwbGl0KCcvJylbMV07XHJcbiAgICByZXR1cm4gdGhpcy5leHRlbnNpb25zPy5pbmNsdWRlcyhleHRlbnNpb24pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB2YWxpZGF0ZUZpbGVTaXplKGZpbGU6IEZpbGUpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBmaWxlLnNpemUgLyAxMDQ4NTc2IDw9IHRoaXMubWF4RmlsZVNpemU7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgKGNsaWNrKT1cIm9wZW5GaWxlTG9hZGVyKClcIj5cclxuICBAaWYgKHRlbXBsYXRlKSB7XHJcbiAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwidGVtcGxhdGVcIj48L25nLXRlbXBsYXRlPlxyXG4gIH0gQGVsc2Uge1xyXG4gICAgPGRkLWxpYi1idXR0b24gYnRuQ29sb3I9XCJ3aGl0ZVwiIFtuZ1N0eWxlXT1cInN0eWxlXCIgPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWNlbnRlclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtci04XCI+XHJcbiAgICAgICAgICA8ZGQtbGliLXN2Zy1pY29uIGljb249XCJwYXBlcmNsaXBcIj48L2RkLWxpYi1zdmctaWNvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidGl0bGUtc29jLWJ0blwiPtCU0L7QsdCw0LLQuNGC0Ywg0YTQsNC50LvRizwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGQtbGliLWJ1dHRvbj5cclxuICB9XHJcbjwvZGl2PlxyXG5cclxuPGlucHV0IHR5cGU9XCJmaWxlXCJcclxuICAgICAgIFttdWx0aXBsZV09XCJtdWx0aXBsZVwiXHJcbiAgICAgICBbaGlkZGVuXT1cInRydWVcIiAjZmlsZUxvYWRlclxyXG4gICAgICAgKGNoYW5nZSk9XCJsb2FkRmlsZSgkZXZlbnQpXCI+XHJcbiJdfQ==
|
|
@@ -1,34 +1,22 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
2
|
import { NgTemplateOutlet } from '@angular/common';
|
|
3
|
+
import { LibSvgIconComponent } from "../lib-svg-icon/lib-svg-icon.component";
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
export class LibFileUploadComponent {
|
|
5
6
|
constructor() {
|
|
6
|
-
this.
|
|
7
|
-
this.outputFiles = new EventEmitter();
|
|
8
|
-
}
|
|
9
|
-
onFileSelected($event) {
|
|
10
|
-
if (!this.multi) {
|
|
11
|
-
const file = $event?.target?.files?.[0];
|
|
12
|
-
if (file) {
|
|
13
|
-
this.outputFile.emit(file);
|
|
14
|
-
}
|
|
15
|
-
}
|
|
7
|
+
this.deleteFile = new EventEmitter(this.file);
|
|
16
8
|
}
|
|
17
9
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: LibFileUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
18
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
10
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", type: LibFileUploadComponent, isStandalone: true, selector: "dd-lib-file-upload", inputs: { name: "name", file: "file" }, outputs: { deleteFile: "deleteFile" }, ngImport: i0, template: "<div class=\"file\">\r\n <div class=\"d-flex align-center gap-12\">\r\n <dd-lib-svg-icon icon=\"file\"></dd-lib-svg-icon>\r\n <span>{{ name }}</span>\r\n </div>\r\n <dd-lib-svg-icon (click)=\"deleteFile.emit(file)\" class=\"gray-trash\" icon=\"trash\"></dd-lib-svg-icon>\r\n</div>\r\n", styles: [".file{padding:16px;display:flex;align-items:center;justify-content:space-between;border-radius:8px;background-color:var(--low-bgc-color);gap:12px}.gray-trash{cursor:pointer}.gray-trash ::ng-deep svg path{stroke:var(--second-gray-color)}\n"], dependencies: [{ kind: "component", type: LibSvgIconComponent, selector: "dd-lib-svg-icon", inputs: ["width", "height", "color", "icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
19
11
|
}
|
|
20
12
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: LibFileUploadComponent, decorators: [{
|
|
21
13
|
type: Component,
|
|
22
|
-
args: [{ selector: 'dd-lib-file-upload', standalone: true, imports: [NgTemplateOutlet], changeDetection: ChangeDetectionStrategy.OnPush, template: "<
|
|
23
|
-
}], propDecorators: {
|
|
24
|
-
type: Input
|
|
25
|
-
}], requiredFileType: [{
|
|
14
|
+
args: [{ selector: 'dd-lib-file-upload', standalone: true, imports: [NgTemplateOutlet, LibSvgIconComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"file\">\r\n <div class=\"d-flex align-center gap-12\">\r\n <dd-lib-svg-icon icon=\"file\"></dd-lib-svg-icon>\r\n <span>{{ name }}</span>\r\n </div>\r\n <dd-lib-svg-icon (click)=\"deleteFile.emit(file)\" class=\"gray-trash\" icon=\"trash\"></dd-lib-svg-icon>\r\n</div>\r\n", styles: [".file{padding:16px;display:flex;align-items:center;justify-content:space-between;border-radius:8px;background-color:var(--low-bgc-color);gap:12px}.gray-trash{cursor:pointer}.gray-trash ::ng-deep svg path{stroke:var(--second-gray-color)}\n"] }]
|
|
15
|
+
}], propDecorators: { name: [{
|
|
26
16
|
type: Input
|
|
27
|
-
}],
|
|
17
|
+
}], file: [{
|
|
28
18
|
type: Input
|
|
29
|
-
}],
|
|
30
|
-
type: Output
|
|
31
|
-
}], outputFiles: [{
|
|
19
|
+
}], deleteFile: [{
|
|
32
20
|
type: Output
|
|
33
21
|
}] } });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliLWZpbGUtdXBsb2FkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RkLWxpYi9zcmMvbGliL2xpYi1maWxlLXVwbG9hZC9saWItZmlsZS11cGxvYWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvbGliLWZpbGUtdXBsb2FkL2xpYi1maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFjLE1BQU0sZUFBZSxDQUFDO0FBQzNHLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHdDQUF3QyxDQUFDOztBQVUzRSxNQUFNLE9BQU8sc0JBQXNCO0lBUm5DO1FBWVksZUFBVSxHQUFHLElBQUksWUFBWSxDQUFrQixJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7S0FDcEU7OEdBTFksc0JBQXNCO2tHQUF0QixzQkFBc0IsNkpDWm5DLHVTQU9BLHdTREE4QixtQkFBbUI7OzJGQUtwQyxzQkFBc0I7a0JBUmxDLFNBQVM7K0JBQ0Usb0JBQW9CLGNBQ2xCLElBQUksV0FDUCxDQUFDLGdCQUFnQixFQUFFLG1CQUFtQixDQUFDLG1CQUcvQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUkvQixJQUFJO3NCQUFuQixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ0ksVUFBVTtzQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBUZW1wbGF0ZVJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7TmdUZW1wbGF0ZU91dGxldH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtMaWJTdmdJY29uQ29tcG9uZW50fSBmcm9tIFwiLi4vbGliLXN2Zy1pY29uL2xpYi1zdmctaWNvbi5jb21wb25lbnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZGQtbGliLWZpbGUtdXBsb2FkJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtOZ1RlbXBsYXRlT3V0bGV0LCBMaWJTdmdJY29uQ29tcG9uZW50XSxcclxuICB0ZW1wbGF0ZVVybDogJy4vbGliLWZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vbGliLWZpbGUtdXBsb2FkLmNvbXBvbmVudC5zY3NzJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIExpYkZpbGVVcGxvYWRDb21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgbmFtZSE6IHN0cmluZztcclxuICBASW5wdXQoKSBwdWJsaWMgZmlsZSE6IGFueTtcclxuICBAT3V0cHV0KCkgZGVsZXRlRmlsZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55IHwgdW5kZWZpbmVkPih0aGlzLmZpbGUpXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImZpbGVcIj5cclxuICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWNlbnRlciBnYXAtMTJcIj5cclxuICAgIDxkZC1saWItc3ZnLWljb24gaWNvbj1cImZpbGVcIj48L2RkLWxpYi1zdmctaWNvbj5cclxuICAgIDxzcGFuPnt7IG5hbWUgfX08L3NwYW4+XHJcbiAgPC9kaXY+XHJcbiAgPGRkLWxpYi1zdmctaWNvbiAoY2xpY2spPVwiZGVsZXRlRmlsZS5lbWl0KGZpbGUpXCIgY2xhc3M9XCJncmF5LXRyYXNoXCIgaWNvbj1cInRyYXNoXCI+PC9kZC1saWItc3ZnLWljb24+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -24,11 +24,11 @@ export class LibFilterButtonComponent extends LibCommonButtonComponent {
|
|
|
24
24
|
this.hintEvent.emit();
|
|
25
25
|
}
|
|
26
26
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: LibFilterButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
27
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.2", type: LibFilterButtonComponent, isStandalone: true, selector: "dd-lib-filter-button", inputs: { btnTitle: "btnTitle", hintContent: "hintContent" }, outputs: { clearEvent: "clearEvent", hintEvent: "hintEvent" }, usesInheritance: true, ngImport: i0, template: "<div (click)=\"onClick($event)\" [class.disabled]=\"disabled\" [ngStyle]=\"{width}\" class=\"button-container\">\r\n <button\r\n #btn\r\n [attr.tabIndex]=\"disabled ? -1 : 0\"\r\n [autofocus]=\"autofocus\"\r\n [disabled]=\"disabled\"\r\n [ngClass]=\"{\r\n disabled: disabled,\r\n loader: showLoader,\r\n active: active,\r\n white: btnColor === 'white',\r\n transparent: btnColor === 'transparent',\r\n }\"\r\n [type]=\"buttonType\"\r\n class=\"\"\r\n role=\"button\">\r\n @if (!showLoader) {\r\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\r\n } @if (showLoader) {\r\n <div class=\"loader\"></div>\r\n }\r\n </button>\r\n</div>\r\n\r\n<ng-template #content>\r\n @if (btnTitle) {\r\n <span class=\"btn-title\">{{ btnTitle }}</span>\r\n }\r\n <span #contentData><ng-content></ng-content></span>\r\n <span class=\"d-flex\">\r\n @if (hintContent) {\r\n <dd-lib-svg-icon (click)=\"hintClick($event)\"\r\n [ddTooltip]=\"hintContent\"\r\n [withClick]=\"true\"\r\n class=\"ml-8\"\r\n icon=\"question{{ active ? '-white-g' : '' }}\"></dd-lib-svg-icon>\r\n }\r\n @if (active) {\r\n <dd-lib-svg-icon (click)=\"onClear($event)\" color=\"white\" icon=\"close\" class=\"ml-8 cup\"></dd-lib-svg-icon>\r\n }\r\n <dd-lib-svg-icon icon=\"toggle_arrow_right\" class=\"arrow show-tablet ml-12\"></dd-lib-svg-icon>\r\n </span>\r\n</ng-template>\r\n", styles: [":host{display:block}.button-container{display:inline-block}@media screen and (max-width: 840px){.button-container{display:block}}.button-container button{display:flex;align-items:center;justify-content:center;height:40px;font-size:14px;line-height:24px;outline:none;cursor:pointer;white-space:nowrap;color:var(--black-color);background-color:var(--btn-white-bgc);border:1px solid var(--gray-color-200);border-radius:24px;padding:8px 16px;font-weight:var(--font-wheit-small)}@media screen and (max-width: 840px){.button-container button{width:100%;justify-content:space-between;border-top-color:transparent;border-left:none;border-right:none;border-radius:0;padding:35px 0;font-size:16px;font-weight:500}}.button-container button:hover{color:var(--btn-white-hover-color)}.button-container button.loader{min-width:100px}.button-container button.transparent{background-color:transparent}.button-container button.active{color:#fff;background-color:var(--primary-green-color)}.button-container button.active:hover{background-color:var(--btn-green-hover)}.button-container button.disabled{color:var(--disabled-color);background-color:var(--btn-disabled-bgc);pointer-events:none;cursor:default}@media screen and (max-width: 840px){.button-container button.disabled{background-color:transparent}}.button-container button .loader{width:24px;height:24px;background:url('data:image/svg+xml,<svg fill=\"none\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A <path%0D%0A d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\"%0D%0A stroke=\"%23306030E8\" stroke-width=\"4\"/>%0D%0A <mask height=\"24\" id=\"mask0\" mask-type=\"alpha\" maskUnits=\"userSpaceOnUse\" width=\"24\" x=\"0\" y=\"0\">%0D%0A <path%0D%0A d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\"%0D%0A stroke=\"%23FAFCFF\" stroke-width=\"4\"/>%0D%0A </mask>%0D%0A <g mask=\"url(%23mask0)\">%0D%0A <path d=\"M24.5621 -0.445973L12.0781 -0.00292969L12.9376 24.2163L25.4216 23.7733L24.5621 -0.445973Z\" fill=\"white\"/>%0D%0A <path%0D%0A d=\"M12.2578 4C13.3624 4 14.2578 3.10457 14.2578 2C14.2578 0.89543 13.3624 0 12.2578 0C11.1532 0 10.2578 0.89543 10.2578 2C10.2578 3.10457 11.1532 4 12.2578 4Z\"%0D%0A fill=\"white\"/>%0D%0A <path%0D%0A d=\"M12.916 23.9609C14.0206 23.9609 14.916 23.0655 14.916 21.9609C14.916 20.8564 14.0206 19.9609 12.916 19.9609C11.8114 19.9609 10.916 20.8564 10.916 21.9609C10.916 23.0655 11.8114 23.9609 12.916 23.9609Z\"%0D%0A fill=\"white\"/>%0D%0A </g>%0D%0A</svg>%0D%0A') center no-repeat;animation:rotate 1.5s linear infinite}.button-container button .arrow::ng-deep svg path{stroke:var(--menu-arr-color)}@keyframes rotate{to{transform:rotate(360deg)}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: TooltipDirective, selector: "[ddTooltip]", inputs: ["ddTooltip", "withClick"] }, { kind: "component", type: LibSvgIconComponent, selector: "dd-lib-svg-icon", inputs: ["width", "height", "color", "icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
27
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.2", type: LibFilterButtonComponent, isStandalone: true, selector: "dd-lib-filter-button", inputs: { btnTitle: "btnTitle", hintContent: "hintContent" }, outputs: { clearEvent: "clearEvent", hintEvent: "hintEvent" }, usesInheritance: true, ngImport: i0, template: "<div (click)=\"onClick($event)\" [class.disabled]=\"disabled\" [ngStyle]=\"{width}\" class=\"button-container\">\r\n <button\r\n #btn\r\n [attr.tabIndex]=\"disabled ? -1 : 0\"\r\n [autofocus]=\"autofocus\"\r\n [disabled]=\"disabled\"\r\n [ngClass]=\"{\r\n disabled: disabled,\r\n loader: showLoader,\r\n active: active,\r\n white: btnColor === 'white',\r\n transparent: btnColor === 'transparent',\r\n }\"\r\n [type]=\"buttonType\"\r\n class=\"\"\r\n role=\"button\">\r\n @if (!showLoader) {\r\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\r\n } @if (showLoader) {\r\n <div class=\"loader\"></div>\r\n }\r\n </button>\r\n</div>\r\n\r\n<ng-template #content>\r\n @if (btnTitle) {\r\n <span class=\"btn-title\">{{ btnTitle }}</span>\r\n }\r\n <span #contentData><ng-content></ng-content></span>\r\n <span class=\"d-flex\">\r\n @if (hintContent) {\r\n <dd-lib-svg-icon (click)=\"hintClick($event)\"\r\n [ddTooltip]=\"hintContent\"\r\n [withClick]=\"true\"\r\n class=\"ml-8\"\r\n icon=\"question{{ active ? '-white-g' : '' }}\"></dd-lib-svg-icon>\r\n }\r\n @if (active) {\r\n <dd-lib-svg-icon (click)=\"onClear($event)\" color=\"white\" icon=\"close\" class=\"ml-8 cup close\"></dd-lib-svg-icon>\r\n }\r\n <dd-lib-svg-icon icon=\"toggle_arrow_right\" class=\"arrow show-tablet ml-12\"></dd-lib-svg-icon>\r\n </span>\r\n</ng-template>\r\n", styles: [":host{display:block}.button-container{display:inline-block}@media screen and (max-width: 840px){.button-container{display:block}}.button-container button{display:flex;align-items:center;justify-content:center;height:40px;font-size:14px;line-height:24px;outline:none;cursor:pointer;white-space:nowrap;color:var(--black-color);background-color:var(--btn-white-bgc);border:1px solid var(--gray-color-200);border-radius:24px;padding:8px 16px;font-weight:var(--font-wheit-small)}@media screen and (max-width: 840px){.button-container button{width:100%;justify-content:space-between;border-top-color:transparent;border-left:none;border-right:none;border-radius:0;padding:35px 0;font-size:16px;font-weight:500}}.button-container button:hover{color:var(--btn-white-hover-color)}.button-container button.loader{min-width:100px}.button-container button.transparent{background-color:transparent}.button-container button.active{color:#fff;background-color:var(--primary-green-color)}@media screen and (max-width: 840px){.button-container button.active{background-color:transparent;color:var(--black-color)}}.button-container button.active:hover{background-color:var(--btn-green-hover)}.button-container button.disabled{color:var(--disabled-color);background-color:var(--btn-disabled-bgc);pointer-events:none;cursor:default}@media screen and (max-width: 840px){.button-container button.disabled{background-color:transparent}}.button-container button .loader{width:24px;height:24px;background:url('data:image/svg+xml,<svg fill=\"none\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A <path%0D%0A d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\"%0D%0A stroke=\"%23306030E8\" stroke-width=\"4\"/>%0D%0A <mask height=\"24\" id=\"mask0\" mask-type=\"alpha\" maskUnits=\"userSpaceOnUse\" width=\"24\" x=\"0\" y=\"0\">%0D%0A <path%0D%0A d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\"%0D%0A stroke=\"%23FAFCFF\" stroke-width=\"4\"/>%0D%0A </mask>%0D%0A <g mask=\"url(%23mask0)\">%0D%0A <path d=\"M24.5621 -0.445973L12.0781 -0.00292969L12.9376 24.2163L25.4216 23.7733L24.5621 -0.445973Z\" fill=\"white\"/>%0D%0A <path%0D%0A d=\"M12.2578 4C13.3624 4 14.2578 3.10457 14.2578 2C14.2578 0.89543 13.3624 0 12.2578 0C11.1532 0 10.2578 0.89543 10.2578 2C10.2578 3.10457 11.1532 4 12.2578 4Z\"%0D%0A fill=\"white\"/>%0D%0A <path%0D%0A d=\"M12.916 23.9609C14.0206 23.9609 14.916 23.0655 14.916 21.9609C14.916 20.8564 14.0206 19.9609 12.916 19.9609C11.8114 19.9609 10.916 20.8564 10.916 21.9609C10.916 23.0655 11.8114 23.9609 12.916 23.9609Z\"%0D%0A fill=\"white\"/>%0D%0A </g>%0D%0A</svg>%0D%0A') center no-repeat;animation:rotate 1.5s linear infinite}.button-container button .arrow::ng-deep svg path{stroke:var(--menu-arr-color)}@media screen and (max-width: 840px){.button-container button .close{width:24px;height:24px;border-radius:8px;background-color:var(--gray-color-200)}.button-container button .close::ng-deep svg path{stroke:var(--second-gray-color)}}@keyframes rotate{to{transform:rotate(360deg)}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: TooltipDirective, selector: "[ddTooltip]", inputs: ["ddTooltip", "withClick"] }, { kind: "component", type: LibSvgIconComponent, selector: "dd-lib-svg-icon", inputs: ["width", "height", "color", "icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
28
28
|
}
|
|
29
29
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: LibFilterButtonComponent, decorators: [{
|
|
30
30
|
type: Component,
|
|
31
|
-
args: [{ selector: 'dd-lib-filter-button', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, FormsModule, NgOptimizedImage, TooltipDirective, LibSvgIconComponent], schemas: [CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA], template: "<div (click)=\"onClick($event)\" [class.disabled]=\"disabled\" [ngStyle]=\"{width}\" class=\"button-container\">\r\n <button\r\n #btn\r\n [attr.tabIndex]=\"disabled ? -1 : 0\"\r\n [autofocus]=\"autofocus\"\r\n [disabled]=\"disabled\"\r\n [ngClass]=\"{\r\n disabled: disabled,\r\n loader: showLoader,\r\n active: active,\r\n white: btnColor === 'white',\r\n transparent: btnColor === 'transparent',\r\n }\"\r\n [type]=\"buttonType\"\r\n class=\"\"\r\n role=\"button\">\r\n @if (!showLoader) {\r\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\r\n } @if (showLoader) {\r\n <div class=\"loader\"></div>\r\n }\r\n </button>\r\n</div>\r\n\r\n<ng-template #content>\r\n @if (btnTitle) {\r\n <span class=\"btn-title\">{{ btnTitle }}</span>\r\n }\r\n <span #contentData><ng-content></ng-content></span>\r\n <span class=\"d-flex\">\r\n @if (hintContent) {\r\n <dd-lib-svg-icon (click)=\"hintClick($event)\"\r\n [ddTooltip]=\"hintContent\"\r\n [withClick]=\"true\"\r\n class=\"ml-8\"\r\n icon=\"question{{ active ? '-white-g' : '' }}\"></dd-lib-svg-icon>\r\n }\r\n @if (active) {\r\n <dd-lib-svg-icon (click)=\"onClear($event)\" color=\"white\" icon=\"close\" class=\"ml-8 cup\"></dd-lib-svg-icon>\r\n }\r\n <dd-lib-svg-icon icon=\"toggle_arrow_right\" class=\"arrow show-tablet ml-12\"></dd-lib-svg-icon>\r\n </span>\r\n</ng-template>\r\n", styles: [":host{display:block}.button-container{display:inline-block}@media screen and (max-width: 840px){.button-container{display:block}}.button-container button{display:flex;align-items:center;justify-content:center;height:40px;font-size:14px;line-height:24px;outline:none;cursor:pointer;white-space:nowrap;color:var(--black-color);background-color:var(--btn-white-bgc);border:1px solid var(--gray-color-200);border-radius:24px;padding:8px 16px;font-weight:var(--font-wheit-small)}@media screen and (max-width: 840px){.button-container button{width:100%;justify-content:space-between;border-top-color:transparent;border-left:none;border-right:none;border-radius:0;padding:35px 0;font-size:16px;font-weight:500}}.button-container button:hover{color:var(--btn-white-hover-color)}.button-container button.loader{min-width:100px}.button-container button.transparent{background-color:transparent}.button-container button.active{color:#fff;background-color:var(--primary-green-color)}.button-container button.active:hover{background-color:var(--btn-green-hover)}.button-container button.disabled{color:var(--disabled-color);background-color:var(--btn-disabled-bgc);pointer-events:none;cursor:default}@media screen and (max-width: 840px){.button-container button.disabled{background-color:transparent}}.button-container button .loader{width:24px;height:24px;background:url('data:image/svg+xml,<svg fill=\"none\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A <path%0D%0A d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\"%0D%0A stroke=\"%23306030E8\" stroke-width=\"4\"/>%0D%0A <mask height=\"24\" id=\"mask0\" mask-type=\"alpha\" maskUnits=\"userSpaceOnUse\" width=\"24\" x=\"0\" y=\"0\">%0D%0A <path%0D%0A d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\"%0D%0A stroke=\"%23FAFCFF\" stroke-width=\"4\"/>%0D%0A </mask>%0D%0A <g mask=\"url(%23mask0)\">%0D%0A <path d=\"M24.5621 -0.445973L12.0781 -0.00292969L12.9376 24.2163L25.4216 23.7733L24.5621 -0.445973Z\" fill=\"white\"/>%0D%0A <path%0D%0A d=\"M12.2578 4C13.3624 4 14.2578 3.10457 14.2578 2C14.2578 0.89543 13.3624 0 12.2578 0C11.1532 0 10.2578 0.89543 10.2578 2C10.2578 3.10457 11.1532 4 12.2578 4Z\"%0D%0A fill=\"white\"/>%0D%0A <path%0D%0A d=\"M12.916 23.9609C14.0206 23.9609 14.916 23.0655 14.916 21.9609C14.916 20.8564 14.0206 19.9609 12.916 19.9609C11.8114 19.9609 10.916 20.8564 10.916 21.9609C10.916 23.0655 11.8114 23.9609 12.916 23.9609Z\"%0D%0A fill=\"white\"/>%0D%0A </g>%0D%0A</svg>%0D%0A') center no-repeat;animation:rotate 1.5s linear infinite}.button-container button .arrow::ng-deep svg path{stroke:var(--menu-arr-color)}@keyframes rotate{to{transform:rotate(360deg)}}\n"] }]
|
|
31
|
+
args: [{ selector: 'dd-lib-filter-button', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, FormsModule, NgOptimizedImage, TooltipDirective, LibSvgIconComponent], schemas: [CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA], template: "<div (click)=\"onClick($event)\" [class.disabled]=\"disabled\" [ngStyle]=\"{width}\" class=\"button-container\">\r\n <button\r\n #btn\r\n [attr.tabIndex]=\"disabled ? -1 : 0\"\r\n [autofocus]=\"autofocus\"\r\n [disabled]=\"disabled\"\r\n [ngClass]=\"{\r\n disabled: disabled,\r\n loader: showLoader,\r\n active: active,\r\n white: btnColor === 'white',\r\n transparent: btnColor === 'transparent',\r\n }\"\r\n [type]=\"buttonType\"\r\n class=\"\"\r\n role=\"button\">\r\n @if (!showLoader) {\r\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\r\n } @if (showLoader) {\r\n <div class=\"loader\"></div>\r\n }\r\n </button>\r\n</div>\r\n\r\n<ng-template #content>\r\n @if (btnTitle) {\r\n <span class=\"btn-title\">{{ btnTitle }}</span>\r\n }\r\n <span #contentData><ng-content></ng-content></span>\r\n <span class=\"d-flex\">\r\n @if (hintContent) {\r\n <dd-lib-svg-icon (click)=\"hintClick($event)\"\r\n [ddTooltip]=\"hintContent\"\r\n [withClick]=\"true\"\r\n class=\"ml-8\"\r\n icon=\"question{{ active ? '-white-g' : '' }}\"></dd-lib-svg-icon>\r\n }\r\n @if (active) {\r\n <dd-lib-svg-icon (click)=\"onClear($event)\" color=\"white\" icon=\"close\" class=\"ml-8 cup close\"></dd-lib-svg-icon>\r\n }\r\n <dd-lib-svg-icon icon=\"toggle_arrow_right\" class=\"arrow show-tablet ml-12\"></dd-lib-svg-icon>\r\n </span>\r\n</ng-template>\r\n", styles: [":host{display:block}.button-container{display:inline-block}@media screen and (max-width: 840px){.button-container{display:block}}.button-container button{display:flex;align-items:center;justify-content:center;height:40px;font-size:14px;line-height:24px;outline:none;cursor:pointer;white-space:nowrap;color:var(--black-color);background-color:var(--btn-white-bgc);border:1px solid var(--gray-color-200);border-radius:24px;padding:8px 16px;font-weight:var(--font-wheit-small)}@media screen and (max-width: 840px){.button-container button{width:100%;justify-content:space-between;border-top-color:transparent;border-left:none;border-right:none;border-radius:0;padding:35px 0;font-size:16px;font-weight:500}}.button-container button:hover{color:var(--btn-white-hover-color)}.button-container button.loader{min-width:100px}.button-container button.transparent{background-color:transparent}.button-container button.active{color:#fff;background-color:var(--primary-green-color)}@media screen and (max-width: 840px){.button-container button.active{background-color:transparent;color:var(--black-color)}}.button-container button.active:hover{background-color:var(--btn-green-hover)}.button-container button.disabled{color:var(--disabled-color);background-color:var(--btn-disabled-bgc);pointer-events:none;cursor:default}@media screen and (max-width: 840px){.button-container button.disabled{background-color:transparent}}.button-container button .loader{width:24px;height:24px;background:url('data:image/svg+xml,<svg fill=\"none\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A <path%0D%0A d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\"%0D%0A stroke=\"%23306030E8\" stroke-width=\"4\"/>%0D%0A <mask height=\"24\" id=\"mask0\" mask-type=\"alpha\" maskUnits=\"userSpaceOnUse\" width=\"24\" x=\"0\" y=\"0\">%0D%0A <path%0D%0A d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\"%0D%0A stroke=\"%23FAFCFF\" stroke-width=\"4\"/>%0D%0A </mask>%0D%0A <g mask=\"url(%23mask0)\">%0D%0A <path d=\"M24.5621 -0.445973L12.0781 -0.00292969L12.9376 24.2163L25.4216 23.7733L24.5621 -0.445973Z\" fill=\"white\"/>%0D%0A <path%0D%0A d=\"M12.2578 4C13.3624 4 14.2578 3.10457 14.2578 2C14.2578 0.89543 13.3624 0 12.2578 0C11.1532 0 10.2578 0.89543 10.2578 2C10.2578 3.10457 11.1532 4 12.2578 4Z\"%0D%0A fill=\"white\"/>%0D%0A <path%0D%0A d=\"M12.916 23.9609C14.0206 23.9609 14.916 23.0655 14.916 21.9609C14.916 20.8564 14.0206 19.9609 12.916 19.9609C11.8114 19.9609 10.916 20.8564 10.916 21.9609C10.916 23.0655 11.8114 23.9609 12.916 23.9609Z\"%0D%0A fill=\"white\"/>%0D%0A </g>%0D%0A</svg>%0D%0A') center no-repeat;animation:rotate 1.5s linear infinite}.button-container button .arrow::ng-deep svg path{stroke:var(--menu-arr-color)}@media screen and (max-width: 840px){.button-container button .close{width:24px;height:24px;border-radius:8px;background-color:var(--gray-color-200)}.button-container button .close::ng-deep svg path{stroke:var(--second-gray-color)}}@keyframes rotate{to{transform:rotate(360deg)}}\n"] }]
|
|
32
32
|
}], propDecorators: { btnTitle: [{
|
|
33
33
|
type: Input
|
|
34
34
|
}], clearEvent: [{
|
|
@@ -38,4 +38,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImpor
|
|
|
38
38
|
}], hintContent: [{
|
|
39
39
|
type: Input
|
|
40
40
|
}] } });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliLWZpbHRlci1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvbGliLWZpbHRlci1idXR0b24vbGliLWZpbHRlci1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvbGliLWZpbHRlci1idXR0b24vbGliLWZpbHRlci1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1Qsc0JBQXNCLEVBQ3RCLFlBQVksRUFDWixLQUFLLEVBQ0wsZ0JBQWdCLEVBQ2hCLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFFLGdCQUFnQixFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDL0QsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDckUsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBYyxnQkFBZ0IsRUFBQyxNQUFNLFNBQVMsQ0FBQztBQUN0RCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQzs7O0FBVzNFLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSx3QkFBd0I7SUFUdEU7O1FBV21CLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ3RDLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0tBZXZEO0lBWlEsT0FBTyxDQUFDLE1BQWtCO1FBQy9CLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN4QixNQUFNLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRU0sU0FBUyxDQUFDLE1BQWtCO1FBQ2pDLE1BQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN6QixNQUFNLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDOzhHQWpCVSx3QkFBd0I7a0dBQXhCLHdCQUF3QixvT0N4QnJDLG1nREEyQ0EsZ3RHRHRCWSxZQUFZLHdYQUFFLFdBQVcsK0JBQW9CLGdCQUFnQiw0RkFBRSxtQkFBbUI7OzJGQUdqRix3QkFBd0I7a0JBVHBDLFNBQVM7K0JBQ0Usc0JBQXNCLGNBQ3BCLElBQUksbUJBR0MsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQUUsbUJBQW1CLENBQUMsV0FDcEYsQ0FBQyxzQkFBc0IsRUFBRSxnQkFBZ0IsQ0FBQzs4QkFHbkMsUUFBUTtzQkFBdkIsS0FBSztnQkFDVyxVQUFVO3NCQUExQixNQUFNO2dCQUNVLFNBQVM7c0JBQXpCLE1BQU07Z0JBQ1MsV0FBVztzQkFBMUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ29tcG9uZW50LFxyXG4gIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE5PX0VSUk9SU19TQ0hFTUEsXHJcbiAgT3V0cHV0LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0NvbW1vbk1vZHVsZSwgTmdPcHRpbWl6ZWRJbWFnZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtMaWJDb21tb25CdXR0b25Db21wb25lbnR9IGZyb20gJy4uL2NvbW1vbi9saWItY29tbW9uLWJ1dHRvbic7XHJcbmltcG9ydCB7Rm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHtUb29sdGlwRGF0YSwgVG9vbHRpcERpcmVjdGl2ZX0gZnJvbSBcIi4uL2NvcmVcIjtcclxuaW1wb3J0IHtMaWJTdmdJY29uQ29tcG9uZW50fSBmcm9tIFwiLi4vbGliLXN2Zy1pY29uL2xpYi1zdmctaWNvbi5jb21wb25lbnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZGQtbGliLWZpbHRlci1idXR0b24nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2xpYi1maWx0ZXItYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vbGliLWZpbHRlci1idXR0b24uY29tcG9uZW50LnNjc3MnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlLCBOZ09wdGltaXplZEltYWdlLCBUb29sdGlwRGlyZWN0aXZlLCBMaWJTdmdJY29uQ29tcG9uZW50XSxcclxuICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgTk9fRVJST1JTX1NDSEVNQV0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMaWJGaWx0ZXJCdXR0b25Db21wb25lbnQgZXh0ZW5kcyBMaWJDb21tb25CdXR0b25Db21wb25lbnQge1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBidG5UaXRsZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgY2xlYXJFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVsbD4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIGhpbnRFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVsbD4oKTtcclxuICBASW5wdXQoKSBwdWJsaWMgaGludENvbnRlbnQ6IFRvb2x0aXBEYXRhIHwgdW5kZWZpbmVkO1xyXG5cclxuICBwdWJsaWMgb25DbGVhcigkZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcclxuICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy5hY3RpdmUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2xlYXJFdmVudC5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGludENsaWNrKCRldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB0aGlzLmhpbnRFdmVudC5lbWl0KCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgKGNsaWNrKT1cIm9uQ2xpY2soJGV2ZW50KVwiIFtjbGFzcy5kaXNhYmxlZF09XCJkaXNhYmxlZFwiIFtuZ1N0eWxlXT1cInt3aWR0aH1cIiBjbGFzcz1cImJ1dHRvbi1jb250YWluZXJcIj5cclxuICA8YnV0dG9uXHJcbiAgICAjYnRuXHJcbiAgICBbYXR0ci50YWJJbmRleF09XCJkaXNhYmxlZCA/IC0xIDogMFwiXHJcbiAgICBbYXV0b2ZvY3VzXT1cImF1dG9mb2N1c1wiXHJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICBkaXNhYmxlZDogZGlzYWJsZWQsXHJcbiAgICAgIGxvYWRlcjogc2hvd0xvYWRlcixcclxuICAgICAgYWN0aXZlOiBhY3RpdmUsXHJcbiAgICAgIHdoaXRlOiBidG5Db2xvciA9PT0gJ3doaXRlJyxcclxuICAgICAgdHJhbnNwYXJlbnQ6IGJ0bkNvbG9yID09PSAndHJhbnNwYXJlbnQnLFxyXG4gICAgfVwiXHJcbiAgICBbdHlwZV09XCJidXR0b25UeXBlXCJcclxuICAgIGNsYXNzPVwiXCJcclxuICAgIHJvbGU9XCJidXR0b25cIj5cclxuICAgIEBpZiAoIXNob3dMb2FkZXIpIHtcclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cclxuICAgIH0gQGlmIChzaG93TG9hZGVyKSB7XHJcbiAgICA8ZGl2IGNsYXNzPVwibG9hZGVyXCI+PC9kaXY+XHJcbiAgfVxyXG4gIDwvYnV0dG9uPlxyXG48L2Rpdj5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjY29udGVudD5cclxuICBAaWYgKGJ0blRpdGxlKSB7XHJcbiAgPHNwYW4gY2xhc3M9XCJidG4tdGl0bGVcIj57eyBidG5UaXRsZSB9fTwvc3Bhbj5cclxuICB9XHJcbiAgPHNwYW4gI2NvbnRlbnREYXRhPjxuZy1jb250ZW50PjwvbmctY29udGVudD48L3NwYW4+XHJcbiAgPHNwYW4gY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgIEBpZiAoaGludENvbnRlbnQpIHtcclxuICAgICAgPGRkLWxpYi1zdmctaWNvbiAoY2xpY2spPVwiaGludENsaWNrKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtkZFRvb2x0aXBdPVwiaGludENvbnRlbnRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFt3aXRoQ2xpY2tdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtbC04XCJcclxuICAgICAgICAgICAgICAgICAgICAgICBpY29uPVwicXVlc3Rpb257eyBhY3RpdmUgPyAnLXdoaXRlLWcnIDogJycgfX1cIj48L2RkLWxpYi1zdmctaWNvbj5cclxuICAgIH1cclxuICAgIEBpZiAoYWN0aXZlKSB7XHJcbiAgICAgIDxkZC1saWItc3ZnLWljb24gKGNsaWNrKT1cIm9uQ2xlYXIoJGV2ZW50KVwiIGNvbG9yPVwid2hpdGVcIiBpY29uPVwiY2xvc2VcIiBjbGFzcz1cIm1sLTggY3VwIGNsb3NlXCI+PC9kZC1saWItc3ZnLWljb24+XHJcbiAgICB9XHJcbiAgICA8ZGQtbGliLXN2Zy1pY29uIGljb249XCJ0b2dnbGVfYXJyb3dfcmlnaHRcIiBjbGFzcz1cImFycm93IHNob3ctdGFibGV0IG1sLTEyXCI+PC9kZC1saWItc3ZnLWljb24+XHJcbiAgPC9zcGFuPlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|
|
@@ -5,10 +5,10 @@ import { LibSvgIconComponent } from "../lib-svg-icon/lib-svg-icon.component";
|
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export class LibImageLoaderComponent {
|
|
7
7
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: LibImageLoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.2", type: LibImageLoaderComponent, isStandalone: true, selector: "dd-lib-image-loader", ngImport: i0, template: "<div class=\"image-loader\">\r\n <div class=\"
|
|
8
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.2", type: LibImageLoaderComponent, isStandalone: true, selector: "dd-lib-image-loader", ngImport: i0, template: "<div class=\"image-loader\">\r\n <div class=\"g-text mb-4\">\u0412\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043F\u0440\u0438\u043A\u0440\u0435\u043F\u0438\u0442\u044C \u0434\u043E 5 \u0444\u043E\u0442\u043E\u0433\u0440\u0430\u0444\u0438\u0439</div>\r\n <div class=\"g-text-sm gray mb-16\">\u0422\u043E\u043B\u044C\u043A\u043E .png \u0438 .jpg \u0444\u0430\u0439\u043B\u044B. \u041E\u0431\u0449\u0438\u0439 \u043E\u0431\u044A\u0435\u043C \u043D\u0435 \u0434\u043E\u043B\u0436\u0435\u043D \u043F\u0440\u0435\u0432\u044B\u0448\u0430\u0442\u044C 5 \u043C\u0435\u0433\u0430\u0431\u0430\u0439\u0442</div>\r\n @if (images) {\r\n <div class=\"loaded-images d-flex mb-16\"></div>\r\n }\r\n <div>\r\n <dd-lib-button btnColor=\"white\">\r\n <div class=\"d-flex align-center\">\r\n <dd-lib-svg-icon icon=\"paperclip\"></dd-lib-svg-icon>\r\n <div class=\"ml-8\">\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0444\u043E\u0442\u043E\u0433\u0440\u0430\u0444\u0438\u0438</div>\r\n </div>\r\n </dd-lib-button>\r\n </div>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "component", type: LibButtonComponent, selector: "dd-lib-button", inputs: ["noPadding", "loaderColor"] }, { kind: "component", type: LibSvgIconComponent, selector: "dd-lib-svg-icon", inputs: ["width", "height", "color", "icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
9
9
|
}
|
|
10
10
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: LibImageLoaderComponent, decorators: [{
|
|
11
11
|
type: Component,
|
|
12
|
-
args: [{ selector: 'dd-lib-image-loader', standalone: true, imports: [LibButtonComponent, NgOptimizedImage, LibSvgIconComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"image-loader\">\r\n <div class=\"
|
|
12
|
+
args: [{ selector: 'dd-lib-image-loader', standalone: true, imports: [LibButtonComponent, NgOptimizedImage, LibSvgIconComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"image-loader\">\r\n <div class=\"g-text mb-4\">\u0412\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043F\u0440\u0438\u043A\u0440\u0435\u043F\u0438\u0442\u044C \u0434\u043E 5 \u0444\u043E\u0442\u043E\u0433\u0440\u0430\u0444\u0438\u0439</div>\r\n <div class=\"g-text-sm gray mb-16\">\u0422\u043E\u043B\u044C\u043A\u043E .png \u0438 .jpg \u0444\u0430\u0439\u043B\u044B. \u041E\u0431\u0449\u0438\u0439 \u043E\u0431\u044A\u0435\u043C \u043D\u0435 \u0434\u043E\u043B\u0436\u0435\u043D \u043F\u0440\u0435\u0432\u044B\u0448\u0430\u0442\u044C 5 \u043C\u0435\u0433\u0430\u0431\u0430\u0439\u0442</div>\r\n @if (images) {\r\n <div class=\"loaded-images d-flex mb-16\"></div>\r\n }\r\n <div>\r\n <dd-lib-button btnColor=\"white\">\r\n <div class=\"d-flex align-center\">\r\n <dd-lib-svg-icon icon=\"paperclip\"></dd-lib-svg-icon>\r\n <div class=\"ml-8\">\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0444\u043E\u0442\u043E\u0433\u0440\u0430\u0444\u0438\u0438</div>\r\n </div>\r\n </dd-lib-button>\r\n </div>\r\n</div>\r\n" }]
|
|
13
13
|
}] });
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliLWltYWdlLWxvYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZC1saWIvc3JjL2xpYi9saWItaW1hZ2UtbG9hZGVyL2xpYi1pbWFnZS1sb2FkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvbGliLWltYWdlLWxvYWRlci9saWItaW1hZ2UtbG9hZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDdEUsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDakQsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sd0NBQXdDLENBQUM7O0FBVTNFLE1BQU0sT0FBTyx1QkFBdUI7OEdBQXZCLHVCQUF1QjtrR0FBdkIsdUJBQXVCLCtFQ2JwQyx3aUNBZUEsMEREUFksa0JBQWtCLGdHQUFvQixtQkFBbUI7OzJGQUt4RCx1QkFBdUI7a0JBUm5DLFNBQVM7K0JBQ0UscUJBQXFCLGNBQ25CLElBQUksV0FDUCxDQUFDLGtCQUFrQixFQUFFLGdCQUFnQixFQUFFLG1CQUFtQixDQUFDLG1CQUduRCx1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtMaWJCdXR0b25Db21wb25lbnR9IGZyb20gJy4uL2xpYi1idXR0b24vbGliLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQge05nT3B0aW1pemVkSW1hZ2V9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7TGliU3ZnSWNvbkNvbXBvbmVudH0gZnJvbSBcIi4uL2xpYi1zdmctaWNvbi9saWItc3ZnLWljb24uY29tcG9uZW50XCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2RkLWxpYi1pbWFnZS1sb2FkZXInLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0xpYkJ1dHRvbkNvbXBvbmVudCwgTmdPcHRpbWl6ZWRJbWFnZSwgTGliU3ZnSWNvbkNvbXBvbmVudF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2xpYi1pbWFnZS1sb2FkZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9saWItaW1hZ2UtbG9hZGVyLmNvbXBvbmVudC5zY3NzJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIExpYkltYWdlTG9hZGVyQ29tcG9uZW50IHtcclxuICBwdWJsaWMgaW1hZ2VzOiBhbnk7XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImltYWdlLWxvYWRlclwiPlxyXG4gIDxkaXYgY2xhc3M9XCJnLXRleHQgbWItNFwiPtCS0Ysg0LzQvtC20LXRgtC1INC/0YDQuNC60YDQtdC/0LjRgtGMINC00L4gNSDRhNC+0YLQvtCz0YDQsNGE0LjQuTwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJnLXRleHQtc20gZ3JheSBtYi0xNlwiPtCi0L7Qu9GM0LrQviAucG5nINC4IC5qcGcg0YTQsNC50LvRiy4g0J7QsdGJ0LjQuSDQvtCx0YrQtdC8INC90LUg0LTQvtC70LbQtdC9INC/0YDQtdCy0YvRiNCw0YLRjCA1INC80LXQs9Cw0LHQsNC50YI8L2Rpdj5cclxuICBAaWYgKGltYWdlcykge1xyXG4gIDxkaXYgY2xhc3M9XCJsb2FkZWQtaW1hZ2VzIGQtZmxleCBtYi0xNlwiPjwvZGl2PlxyXG4gIH1cclxuICA8ZGl2PlxyXG4gICAgPGRkLWxpYi1idXR0b24gYnRuQ29sb3I9XCJ3aGl0ZVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWNlbnRlclwiPlxyXG4gICAgICAgIDxkZC1saWItc3ZnLWljb24gaWNvbj1cInBhcGVyY2xpcFwiPjwvZGQtbGliLXN2Zy1pY29uPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtbC04XCI+0JTQvtCx0LDQstC40YLRjCDRhNC+0YLQvtCz0YDQsNGE0LjQuDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGQtbGliLWJ1dHRvbj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -1,21 +1,38 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, forwardRef, Host, Optional, SkipSelf, } from '@angular/core';
|
|
1
|
+
import { ChangeDetectionStrategy, Component, forwardRef, Host, Input, Optional, SkipSelf, } from '@angular/core';
|
|
2
2
|
import { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
3
|
import { NgOptimizedImage } from '@angular/common';
|
|
4
4
|
import { LibCommonInputTextComponent } from '../common/lib-common-input-text';
|
|
5
5
|
import { LibCardComponent } from '../lib-card/lib-card.component';
|
|
6
6
|
import { LibSvgIconComponent } from "../lib-svg-icon/lib-svg-icon.component";
|
|
7
|
+
import { DestroyService, ValidatorsService } from "../core";
|
|
8
|
+
import { takeUntil } from "rxjs/operators";
|
|
9
|
+
import { NgxMaskDirective } from "ngx-mask";
|
|
7
10
|
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "
|
|
11
|
+
import * as i1 from "../core";
|
|
12
|
+
import * as i2 from "@angular/forms";
|
|
9
13
|
export class LibInputComponent extends LibCommonInputTextComponent {
|
|
10
|
-
constructor(changeDetection, controlContainer) {
|
|
14
|
+
constructor(destroyed$, changeDetection, controlContainer) {
|
|
11
15
|
super(changeDetection);
|
|
16
|
+
this.destroyed$ = destroyed$;
|
|
12
17
|
this.controlContainer = controlContainer;
|
|
18
|
+
this.showMaskTyped = true;
|
|
19
|
+
this.shownMaskExpression = null;
|
|
13
20
|
}
|
|
14
21
|
ngOnInit() {
|
|
15
22
|
this.control =
|
|
16
23
|
this.controlContainer && this.formControlName
|
|
17
24
|
? this.controlContainer?.control?.get(this.formControlName)
|
|
18
25
|
: null;
|
|
26
|
+
if (this.control) {
|
|
27
|
+
this.changeValueSub(this.control);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
changeValueSub(control) {
|
|
31
|
+
control.valueChanges
|
|
32
|
+
.pipe(takeUntil(this.destroyed$))
|
|
33
|
+
.subscribe(val => {
|
|
34
|
+
this.errorText = ValidatorsService.getErrorText(this.control?.errors);
|
|
35
|
+
});
|
|
19
36
|
}
|
|
20
37
|
writeValue(value) {
|
|
21
38
|
this.value = value === null || value === undefined ? '' : '' + value;
|
|
@@ -25,31 +42,45 @@ export class LibInputComponent extends LibCommonInputTextComponent {
|
|
|
25
42
|
}
|
|
26
43
|
ngOnDestroy() {
|
|
27
44
|
this.destroyed = true;
|
|
28
|
-
// this.focusManager.unregister(this);
|
|
29
45
|
}
|
|
30
|
-
|
|
31
|
-
|
|
46
|
+
handleBlur() {
|
|
47
|
+
super.handleBlur();
|
|
48
|
+
this.errorText = ValidatorsService.getErrorText(this.control?.errors);
|
|
49
|
+
this.changeDetection.detectChanges();
|
|
50
|
+
}
|
|
51
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: LibInputComponent, deps: [{ token: i1.DestroyService }, { token: i0.ChangeDetectorRef }, { token: i2.ControlContainer, host: true, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
52
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.2", type: LibInputComponent, isStandalone: true, selector: "dd-lib-input", inputs: { showMaskTyped: "showMaskTyped", specialCharacters: "specialCharacters", shownMaskExpression: "shownMaskExpression", mask: "mask" }, providers: [
|
|
53
|
+
DestroyService,
|
|
32
54
|
{
|
|
33
55
|
provide: NG_VALUE_ACCESSOR,
|
|
34
56
|
useExisting: forwardRef(() => LibInputComponent),
|
|
35
57
|
multi: true,
|
|
36
58
|
},
|
|
37
|
-
], usesInheritance: true, ngImport: i0, template: "<div class=\"lib-input\">\n <label [for]=\"id\" class=\"lib-input__title\">\n {{ label }}\n @if (required) {\n <dd-lib-svg-icon icon=\"error_hint\"></dd-lib-svg-icon>\n }\n </label>\n <input\n #input\n (blur)=\"
|
|
59
|
+
], usesInheritance: true, ngImport: i0, template: "<div class=\"lib-input\">\n <label [for]=\"id\" class=\"lib-input__title\">\n {{ label }}\n @if (required) {\n <dd-lib-svg-icon icon=\"error_hint\"></dd-lib-svg-icon>\n }\n </label>\n <input\n #input\n (blur)=\"handleBlur()\"\n (change)=\"handleChange()\"\n (focus)=\"handleFocus()\"\n (input)=\"handleInput($event)\"\n (keyup.enter)=\"forceChange()\"\n [showMaskTyped]=\"showMaskTyped\"\n [specialCharacters]=\"specialCharacters\"\n [shownMaskExpression]=\"shownMaskExpression\"\n [mask]=\"mask\"\n [(ngModel)]=\"value\"\n [attr.autofocus]=\"autofocus\"\n [attr.autocomplete]=\"autocomplete === undefined ? null : autocomplete\"\n [attr.id]=\"id ? id : null\"\n [attr.max]=\"max\"\n [attr.min]=\"min\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [attr.name]=\"name\"\n [attr.placeholder]=\"placeholder\"\n [attr.tabIndex]=\"tabIndex\"\n [attr.type]=\"type || 'text'\"\n [class.focused]=\"focused\"\n [class.invalid]=\"showError\"\n [disabled]=\"disabled\"\n [readOnly]=\"readOnly\"\n class=\"text-input\" />\n @if (errorTexts.length && showError) {\n @for (error of errorTexts; track error) {\n <div class=\"lib-input__error\">{{ error }}</div>\n }\n }\n @if (errorText && showSelfError && showError) {\n <div class=\"lib-input__error\">{{ errorText }}</div>\n }\n</div>\n", styles: [":host{display:block}.lib-input{position:relative}.lib-input input{width:100%;height:48px;padding:15px 16px;border-radius:8px;border:1px solid var(--input-border-color);background-color:transparent;position:relative;color:var(--light-black-color)}.lib-input input:hover{border-color:var(--input-active-border-colort)}.lib-input input:focus{border-color:var(--input-active-border-colort);box-shadow:var(--input-active-border-shadow)}.lib-input input:disabled{border:none;background-color:var(--input-disable-input);color:var(--input-disable-text);pointer-events:none}.lib-input input:disabled::placeholder{color:var(--input-placeholder)}.lib-input input.invalid,.lib-input input.invalid:hover{border-color:var(--input-error-border-color)}.lib-input input.invalid:focus{border-color:var(--input-error-border-color);box-shadow:var(--input-error-border-shadow)}.lib-input__title{margin-bottom:4px;font-size:14px;line-height:24px;display:flex;align-items:flex-start;color:var(--light-black-color)}.lib-input__error{color:var(--primary-red-color);font-size:12px;font-weight:400;line-height:10px;margin-top:2px;position:absolute}.lib-input .password-eye{position:absolute;right:16px;top:40px;cursor:pointer}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgxMaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "leadZero", "triggerOnMaskChange", "apm", "inputTransformFn", "outputTransformFn", "keepCharacterPositions"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }, { kind: "component", type: LibSvgIconComponent, selector: "dd-lib-svg-icon", inputs: ["width", "height", "color", "icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
38
60
|
}
|
|
39
61
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: LibInputComponent, decorators: [{
|
|
40
62
|
type: Component,
|
|
41
63
|
args: [{ selector: 'dd-lib-input', standalone: true, providers: [
|
|
64
|
+
DestroyService,
|
|
42
65
|
{
|
|
43
66
|
provide: NG_VALUE_ACCESSOR,
|
|
44
67
|
useExisting: forwardRef(() => LibInputComponent),
|
|
45
68
|
multi: true,
|
|
46
69
|
},
|
|
47
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, imports: [FormsModule, NgOptimizedImage, LibCardComponent, LibSvgIconComponent], template: "<div class=\"lib-input\">\n <label [for]=\"id\" class=\"lib-input__title\">\n {{ label }}\n @if (required) {\n <dd-lib-svg-icon icon=\"error_hint\"></dd-lib-svg-icon>\n }\n </label>\n <input\n #input\n (blur)=\"
|
|
48
|
-
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type:
|
|
70
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, imports: [FormsModule, NgxMaskDirective, NgOptimizedImage, LibCardComponent, LibSvgIconComponent], template: "<div class=\"lib-input\">\n <label [for]=\"id\" class=\"lib-input__title\">\n {{ label }}\n @if (required) {\n <dd-lib-svg-icon icon=\"error_hint\"></dd-lib-svg-icon>\n }\n </label>\n <input\n #input\n (blur)=\"handleBlur()\"\n (change)=\"handleChange()\"\n (focus)=\"handleFocus()\"\n (input)=\"handleInput($event)\"\n (keyup.enter)=\"forceChange()\"\n [showMaskTyped]=\"showMaskTyped\"\n [specialCharacters]=\"specialCharacters\"\n [shownMaskExpression]=\"shownMaskExpression\"\n [mask]=\"mask\"\n [(ngModel)]=\"value\"\n [attr.autofocus]=\"autofocus\"\n [attr.autocomplete]=\"autocomplete === undefined ? null : autocomplete\"\n [attr.id]=\"id ? id : null\"\n [attr.max]=\"max\"\n [attr.min]=\"min\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [attr.name]=\"name\"\n [attr.placeholder]=\"placeholder\"\n [attr.tabIndex]=\"tabIndex\"\n [attr.type]=\"type || 'text'\"\n [class.focused]=\"focused\"\n [class.invalid]=\"showError\"\n [disabled]=\"disabled\"\n [readOnly]=\"readOnly\"\n class=\"text-input\" />\n @if (errorTexts.length && showError) {\n @for (error of errorTexts; track error) {\n <div class=\"lib-input__error\">{{ error }}</div>\n }\n }\n @if (errorText && showSelfError && showError) {\n <div class=\"lib-input__error\">{{ errorText }}</div>\n }\n</div>\n", styles: [":host{display:block}.lib-input{position:relative}.lib-input input{width:100%;height:48px;padding:15px 16px;border-radius:8px;border:1px solid var(--input-border-color);background-color:transparent;position:relative;color:var(--light-black-color)}.lib-input input:hover{border-color:var(--input-active-border-colort)}.lib-input input:focus{border-color:var(--input-active-border-colort);box-shadow:var(--input-active-border-shadow)}.lib-input input:disabled{border:none;background-color:var(--input-disable-input);color:var(--input-disable-text);pointer-events:none}.lib-input input:disabled::placeholder{color:var(--input-placeholder)}.lib-input input.invalid,.lib-input input.invalid:hover{border-color:var(--input-error-border-color)}.lib-input input.invalid:focus{border-color:var(--input-error-border-color);box-shadow:var(--input-error-border-shadow)}.lib-input__title{margin-bottom:4px;font-size:14px;line-height:24px;display:flex;align-items:flex-start;color:var(--light-black-color)}.lib-input__error{color:var(--primary-red-color);font-size:12px;font-weight:400;line-height:10px;margin-top:2px;position:absolute}.lib-input .password-eye{position:absolute;right:16px;top:40px;cursor:pointer}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none}\n"] }]
|
|
71
|
+
}], ctorParameters: () => [{ type: i1.DestroyService }, { type: i0.ChangeDetectorRef }, { type: i2.ControlContainer, decorators: [{
|
|
49
72
|
type: Optional
|
|
50
73
|
}, {
|
|
51
74
|
type: Host
|
|
52
75
|
}, {
|
|
53
76
|
type: SkipSelf
|
|
54
|
-
}] }]
|
|
55
|
-
|
|
77
|
+
}] }], propDecorators: { showMaskTyped: [{
|
|
78
|
+
type: Input
|
|
79
|
+
}], specialCharacters: [{
|
|
80
|
+
type: Input
|
|
81
|
+
}], shownMaskExpression: [{
|
|
82
|
+
type: Input
|
|
83
|
+
}], mask: [{
|
|
84
|
+
type: Input
|
|
85
|
+
}] } });
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RkLWxpYi9zcmMvbGliL2xpYi1pbnB1dC9saWItaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvbGliLWlucHV0L2xpYi1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsSUFBSSxFQUFFLEtBQUssRUFHWCxRQUFRLEVBQ1IsUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBMEQsV0FBVyxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkgsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDakQsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDNUUsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDaEUsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDM0UsT0FBTyxFQUFDLGNBQWMsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLFNBQVMsQ0FBQztBQUMxRCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFDLGdCQUFnQixFQUE0QixNQUFNLFVBQVUsQ0FBQzs7OztBQWtCckUsTUFBTSxPQUFPLGlCQUNYLFNBQVEsMkJBQTJCO0lBUW5DLFlBQ1UsVUFBeUIsRUFDakMsZUFBa0MsRUFDTSxnQkFBa0M7UUFFMUUsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBSmYsZUFBVSxHQUFWLFVBQVUsQ0FBZTtRQUVPLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFSNUQsa0JBQWEsR0FBRyxJQUFJLENBQUM7UUFHckIsd0JBQW1CLEdBQWtCLElBQUksQ0FBQztJQVExRCxDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxPQUFPO1lBQ1YsSUFBSSxDQUFDLGdCQUFnQixJQUFJLElBQUksQ0FBQyxlQUFlO2dCQUMzQyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLE9BQU8sRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQztnQkFDM0QsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNYLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3BDLENBQUM7SUFDSCxDQUFDO0lBRU0sY0FBYyxDQUFDLE9BQXdCO1FBQzVDLE9BQU8sQ0FBQyxZQUFZO2FBQ2pCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2FBQ2hDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNmLElBQUksQ0FBQyxTQUFTLEdBQUcsaUJBQWlCLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUE7UUFDdkUsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDO0lBRU0sVUFBVSxDQUFDLEtBQTZCO1FBQzdDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxLQUFLLENBQUM7UUFDckUsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3ZDLENBQUM7SUFDSCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztJQUN4QixDQUFDO0lBRWUsVUFBVTtRQUN4QixLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQTtRQUNyRSxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7OEdBbERVLGlCQUFpQjtrR0FBakIsaUJBQWlCLHlNQVhqQjtZQUNULGNBQWM7WUFDZDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDO2dCQUNoRCxLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0YsaURDaENILHk0Q0E0Q0EsbzBDRFZZLFdBQVcsK21CQUFFLGdCQUFnQixpakJBQXNDLG1CQUFtQjs7MkZBRXJGLGlCQUFpQjtrQkFoQjdCLFNBQVM7K0JBQ0UsY0FBYyxjQUNaLElBQUksYUFHTDt3QkFDVCxjQUFjO3dCQUNkOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGtCQUFrQixDQUFDOzRCQUNoRCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRixtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxDQUFDLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxtQkFBbUIsQ0FBQzs7MEJBYzlGLFFBQVE7OzBCQUFJLElBQUk7OzBCQUFJLFFBQVE7eUNBUmYsYUFBYTtzQkFBNUIsS0FBSztnQkFFVSxpQkFBaUI7c0JBQWhDLEtBQUs7Z0JBQ1UsbUJBQW1CO3NCQUFsQyxLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgZm9yd2FyZFJlZixcbiAgSG9zdCwgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgU2tpcFNlbGYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBYnN0cmFjdENvbnRyb2wsIENvbnRyb2xDb250YWluZXIsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBGb3Jtc01vZHVsZSwgTkdfVkFMVUVfQUNDRVNTT1J9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7TmdPcHRpbWl6ZWRJbWFnZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TGliQ29tbW9uSW5wdXRUZXh0Q29tcG9uZW50fSBmcm9tICcuLi9jb21tb24vbGliLWNvbW1vbi1pbnB1dC10ZXh0JztcbmltcG9ydCB7TGliQ2FyZENvbXBvbmVudH0gZnJvbSAnLi4vbGliLWNhcmQvbGliLWNhcmQuY29tcG9uZW50JztcbmltcG9ydCB7TGliU3ZnSWNvbkNvbXBvbmVudH0gZnJvbSBcIi4uL2xpYi1zdmctaWNvbi9saWItc3ZnLWljb24uY29tcG9uZW50XCI7XG5pbXBvcnQge0Rlc3Ryb3lTZXJ2aWNlLCBWYWxpZGF0b3JzU2VydmljZX0gZnJvbSBcIi4uL2NvcmVcIjtcbmltcG9ydCB7dGFrZVVudGlsfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcbmltcG9ydCB7Tmd4TWFza0RpcmVjdGl2ZSwgcHJvdmlkZUVudmlyb25tZW50Tmd4TWFza30gZnJvbSBcIm5neC1tYXNrXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RkLWxpYi1pbnB1dCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHRlbXBsYXRlVXJsOiAnLi9saWItaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9saWItaW5wdXQuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgRGVzdHJveVNlcnZpY2UsXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBMaWJJbnB1dENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW0Zvcm1zTW9kdWxlLCBOZ3hNYXNrRGlyZWN0aXZlLCBOZ09wdGltaXplZEltYWdlLCBMaWJDYXJkQ29tcG9uZW50LCBMaWJTdmdJY29uQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgTGliSW5wdXRDb21wb25lbnRcbiAgZXh0ZW5kcyBMaWJDb21tb25JbnB1dFRleHRDb21wb25lbnRcbiAgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQ29udHJvbFZhbHVlQWNjZXNzb3JcbntcbiAgQElucHV0KCkgcHVibGljIHNob3dNYXNrVHlwZWQgPSB0cnVlO1xuICAvLyBAdHMtaWdub3JlXG4gIEBJbnB1dCgpIHB1YmxpYyBzcGVjaWFsQ2hhcmFjdGVyczogc3RyaW5nW107XG4gIEBJbnB1dCgpIHB1YmxpYyBzaG93bk1hc2tFeHByZXNzaW9uOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgQElucHV0KCkgcHVibGljIG1hc2s6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBkZXN0cm95ZWQkOkRlc3Ryb3lTZXJ2aWNlLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQE9wdGlvbmFsKCkgQEhvc3QoKSBAU2tpcFNlbGYoKSBwcml2YXRlIGNvbnRyb2xDb250YWluZXI6IENvbnRyb2xDb250YWluZXIsXG4gICkge1xuICAgIHN1cGVyKGNoYW5nZURldGVjdGlvbik7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jb250cm9sID1cbiAgICAgIHRoaXMuY29udHJvbENvbnRhaW5lciAmJiB0aGlzLmZvcm1Db250cm9sTmFtZVxuICAgICAgICA/IHRoaXMuY29udHJvbENvbnRhaW5lcj8uY29udHJvbD8uZ2V0KHRoaXMuZm9ybUNvbnRyb2xOYW1lKVxuICAgICAgICA6IG51bGw7XG4gICAgaWYgKHRoaXMuY29udHJvbCkge1xuICAgICAgdGhpcy5jaGFuZ2VWYWx1ZVN1Yih0aGlzLmNvbnRyb2wpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjaGFuZ2VWYWx1ZVN1Yihjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiB2b2lkIHtcbiAgICBjb250cm9sLnZhbHVlQ2hhbmdlc1xuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpXG4gICAgICAuc3Vic2NyaWJlKHZhbCA9PiB7XG4gICAgICAgIHRoaXMuZXJyb3JUZXh0ID0gVmFsaWRhdG9yc1NlcnZpY2UuZ2V0RXJyb3JUZXh0KHRoaXMuY29udHJvbD8uZXJyb3JzKVxuICAgICAgfSlcbiAgfVxuXG4gIHB1YmxpYyB3cml0ZVZhbHVlKHZhbHVlOiBzdHJpbmcgfCBudW1iZXIgfCBudWxsKTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQgPyAnJyA6ICcnICsgdmFsdWU7XG4gICAgaWYgKCF0aGlzLmRlc3Ryb3llZCkge1xuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rpb24uZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3llZCA9IHRydWU7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgaGFuZGxlQmx1cigpOiB2b2lkIHtcbiAgICBzdXBlci5oYW5kbGVCbHVyKCk7XG4gICAgdGhpcy5lcnJvclRleHQgPSBWYWxpZGF0b3JzU2VydmljZS5nZXRFcnJvclRleHQodGhpcy5jb250cm9sPy5lcnJvcnMpXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rpb24uZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibGliLWlucHV0XCI+XG4gIDxsYWJlbCBbZm9yXT1cImlkXCIgY2xhc3M9XCJsaWItaW5wdXRfX3RpdGxlXCI+XG4gICAge3sgbGFiZWwgfX1cbiAgICBAaWYgKHJlcXVpcmVkKSB7XG4gICAgICA8ZGQtbGliLXN2Zy1pY29uIGljb249XCJlcnJvcl9oaW50XCI+PC9kZC1saWItc3ZnLWljb24+XG4gICAgfVxuICA8L2xhYmVsPlxuICA8aW5wdXRcbiAgICAjaW5wdXRcbiAgICAoYmx1cik9XCJoYW5kbGVCbHVyKClcIlxuICAgIChjaGFuZ2UpPVwiaGFuZGxlQ2hhbmdlKClcIlxuICAgIChmb2N1cyk9XCJoYW5kbGVGb2N1cygpXCJcbiAgICAoaW5wdXQpPVwiaGFuZGxlSW5wdXQoJGV2ZW50KVwiXG4gICAgKGtleXVwLmVudGVyKT1cImZvcmNlQ2hhbmdlKClcIlxuICAgIFtzaG93TWFza1R5cGVkXT1cInNob3dNYXNrVHlwZWRcIlxuICAgIFtzcGVjaWFsQ2hhcmFjdGVyc109XCJzcGVjaWFsQ2hhcmFjdGVyc1wiXG4gICAgW3Nob3duTWFza0V4cHJlc3Npb25dPVwic2hvd25NYXNrRXhwcmVzc2lvblwiXG4gICAgW21hc2tdPVwibWFza1wiXG4gICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXG4gICAgW2F0dHIuYXV0b2ZvY3VzXT1cImF1dG9mb2N1c1wiXG4gICAgW2F0dHIuYXV0b2NvbXBsZXRlXT1cImF1dG9jb21wbGV0ZSA9PT0gdW5kZWZpbmVkID8gbnVsbCA6IGF1dG9jb21wbGV0ZVwiXG4gICAgW2F0dHIuaWRdPVwiaWQgPyBpZCA6IG51bGxcIlxuICAgIFthdHRyLm1heF09XCJtYXhcIlxuICAgIFthdHRyLm1pbl09XCJtaW5cIlxuICAgIFthdHRyLm1heGxlbmd0aF09XCJtYXhsZW5ndGhcIlxuICAgIFthdHRyLm1pbmxlbmd0aF09XCJtaW5sZW5ndGhcIlxuICAgIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gICAgW2F0dHIucGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgIFthdHRyLnRhYkluZGV4XT1cInRhYkluZGV4XCJcbiAgICBbYXR0ci50eXBlXT1cInR5cGUgfHwgJ3RleHQnXCJcbiAgICBbY2xhc3MuZm9jdXNlZF09XCJmb2N1c2VkXCJcbiAgICBbY2xhc3MuaW52YWxpZF09XCJzaG93RXJyb3JcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW3JlYWRPbmx5XT1cInJlYWRPbmx5XCJcbiAgICBjbGFzcz1cInRleHQtaW5wdXRcIiAvPlxuICBAaWYgKGVycm9yVGV4dHMubGVuZ3RoICYmIHNob3dFcnJvcikge1xuICAgIEBmb3IgKGVycm9yIG9mIGVycm9yVGV4dHM7IHRyYWNrIGVycm9yKSB7XG4gICAgICA8ZGl2IGNsYXNzPVwibGliLWlucHV0X19lcnJvclwiPnt7IGVycm9yIH19PC9kaXY+XG4gICAgfVxuICB9XG4gIEBpZiAoZXJyb3JUZXh0ICYmIHNob3dTZWxmRXJyb3IgJiYgc2hvd0Vycm9yKSB7XG4gICAgICA8ZGl2IGNsYXNzPVwibGliLWlucHV0X19lcnJvclwiPnt7IGVycm9yVGV4dCB9fTwvZGl2PlxuICB9XG48L2Rpdj5cbiJdfQ==
|