rd-outer-component 0.0.71 → 0.0.73
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/esm2020/lib/modules/custom-filter/custom-filter.component.mjs +11 -4
- package/esm2020/lib/modules/custom-input/custom-input.component.mjs +20 -11
- package/esm2020/lib/modules/custom-input-amount/custom-input-amount.component.mjs +17 -9
- package/esm2020/lib/modules/custom-pagination/paginator.component.mjs +7 -4
- package/esm2020/lib/modules/custom-select/custom-select.component.mjs +13 -6
- package/esm2020/lib/modules/custom-textarea/custom-textarea.component.mjs +16 -8
- package/esm2020/lib/utils/form-vaild-lang.mjs +26 -0
- package/fesm2015/rd-outer-component.mjs +100 -36
- package/fesm2015/rd-outer-component.mjs.map +1 -1
- package/fesm2020/rd-outer-component.mjs +99 -36
- package/fesm2020/rd-outer-component.mjs.map +1 -1
- package/lib/modules/custom-filter/custom-filter.component.d.ts +3 -1
- package/lib/modules/custom-input/custom-input.component.d.ts +2 -1
- package/lib/modules/custom-input-amount/custom-input-amount.component.d.ts +2 -1
- package/lib/modules/custom-pagination/paginator.component.d.ts +2 -1
- package/lib/modules/custom-select/custom-select.component.d.ts +2 -1
- package/lib/modules/custom-textarea/custom-textarea.component.d.ts +2 -1
- package/lib/utils/form-vaild-lang.d.ts +17 -0
- package/package.json +1 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Component, EventEmitter, Input, Output, } from '@angular/core';
|
|
2
2
|
import { FilterTypeEnum, } from './custom-filter.types';
|
|
3
|
+
import { getTranslation } from '../../utils/form-vaild-lang';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
import * as i1 from "@angular/common";
|
|
5
6
|
import * as i2 from "ng-zorro-antd/button";
|
|
@@ -13,6 +14,7 @@ export class RdFilterComponent {
|
|
|
13
14
|
}
|
|
14
15
|
constructor(cdf) {
|
|
15
16
|
this.cdf = cdf;
|
|
17
|
+
this.lang = 'en';
|
|
16
18
|
this.filterArr = [];
|
|
17
19
|
// @Output() filterArrChange = new EventEmitter<ICustomFilter[]>();
|
|
18
20
|
this.defSearchChange = new EventEmitter();
|
|
@@ -28,13 +30,18 @@ export class RdFilterComponent {
|
|
|
28
30
|
this.filterArr.forEach((item) => (item.value = ''));
|
|
29
31
|
this.clearFilter.emit();
|
|
30
32
|
}
|
|
33
|
+
getClearTrans() {
|
|
34
|
+
return getTranslation(this.lang, 'clearFilter');
|
|
35
|
+
}
|
|
31
36
|
}
|
|
32
37
|
RdFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdFilterComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
33
|
-
RdFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RdFilterComponent, selector: "app-rd-filter", inputs: { filterArr: "filterArr", statusDisplayConfigs: "statusDisplayConfigs", statusGroupConfigs: "statusGroupConfigs", clearText: "clearText" }, outputs: { defSearchChange: "defSearchChange", clearFilter: "clearFilter" }, ngImport: i0, template: "<div class=\"rd-custom-filter-wrap\" *ngIf=\"filterArr?.length\">\n <ng-container *ngFor=\"let item of filterArr\">\n <ng-container [ngSwitch]=\"item.formType\">\n <app-rd-filter-date\n *ngSwitchCase=\"filterTypeEnum.date\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n >\n </app-rd-filter-date>\n <app-rd-filter-select\n *ngSwitchCase=\"filterTypeEnum.select\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n [statusGroupConfigs]=\"statusGroupConfigs\"\n [statusDisplayConfigs]=\"statusDisplayConfigs\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n ></app-rd-filter-select>\n <app-rd-filter-input\n *ngSwitchCase=\"filterTypeEnum.input\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n ></app-rd-filter-input>\n </ng-container>\n </ng-container>\n <button\n [disabled]=\"!isClearAble\"\n (click)=\"clear()\"\n class=\"rd-custom-filter-clear\"\n nz-button\n nzType=\"link\"\n >\n {{
|
|
38
|
+
RdFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: RdFilterComponent, selector: "app-rd-filter", inputs: { lang: "lang", filterArr: "filterArr", statusDisplayConfigs: "statusDisplayConfigs", statusGroupConfigs: "statusGroupConfigs", clearText: "clearText" }, outputs: { defSearchChange: "defSearchChange", clearFilter: "clearFilter" }, ngImport: i0, template: "<div class=\"rd-custom-filter-wrap\" *ngIf=\"filterArr?.length\">\n <ng-container *ngFor=\"let item of filterArr\">\n <ng-container [ngSwitch]=\"item.formType\">\n <app-rd-filter-date\n *ngSwitchCase=\"filterTypeEnum.date\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n >\n </app-rd-filter-date>\n <app-rd-filter-select\n *ngSwitchCase=\"filterTypeEnum.select\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n [statusGroupConfigs]=\"statusGroupConfigs\"\n [statusDisplayConfigs]=\"statusDisplayConfigs\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n ></app-rd-filter-select>\n <app-rd-filter-input\n *ngSwitchCase=\"filterTypeEnum.input\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n ></app-rd-filter-input>\n </ng-container>\n </ng-container>\n <button\n [disabled]=\"!isClearAble\"\n (click)=\"clear()\"\n class=\"rd-custom-filter-clear\"\n nz-button\n nzType=\"link\"\n >\n {{ getClearTrans() }}\n </button>\n</div>\n", styles: [".rd-custom-filter-wrap{display:flex;align-items:center;gap:8px;padding-top:12px;padding-bottom:12px}.rd-custom-filter-clear{font-size:13px;font-weight:600;color:#367af6;padding:0}.rd-custom-filter-clear:disabled{color:#9ca3af}\n", ".rd-form-item{position:relative;border-radius:4px;padding:2px 0;border:1px solid #e5e7eb;background-color:#fff;width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#6b7280;transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:#030712;font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:#030712;font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:#f3f4f6;border-color:#d1d5db}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:#9ca3af}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:#9ca3af}.rd-form-item.rd-error{border-color:#e51c36}.rd-form-item-error{color:#d2152e;font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:4px;padding:12px 16px;background-color:#fff;border:1px solid #e5e7eb;width:100%}.rd-form-number-item .rd-item-label{color:#6b7280;font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:#9ca3af}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:#030712;border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:#9ca3af}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:#6b7280;margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:#f3f4f6;border-color:#d1d5db}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:#9ca3af}.rd-form-number-item.rd-error{border-color:#e51c36}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.NzButtonComponent, selector: "button[nz-button], a[nz-button]", inputs: ["nzBlock", "nzGhost", "nzSearch", "nzLoading", "nzDanger", "disabled", "tabIndex", "nzType", "nzShape", "nzSize"], exportAs: ["nzButton"] }, { kind: "directive", type: i3.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "component", type: i4.RdFilterDateComponent, selector: "app-rd-filter-date", inputs: ["item"], outputs: ["handleChangeValue"] }, { kind: "component", type: i5.RdFilterSelectComponent, selector: "app-rd-filter-select", inputs: ["item", "statusDisplayConfigs", "statusGroupConfigs"], outputs: ["handleChangeValue"] }, { kind: "component", type: i6.RdFilterInputComponent, selector: "app-rd-filter-input", inputs: ["item"], outputs: ["handleChangeValue"] }] });
|
|
34
39
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RdFilterComponent, decorators: [{
|
|
35
40
|
type: Component,
|
|
36
|
-
args: [{ selector: 'app-rd-filter', template: "<div class=\"rd-custom-filter-wrap\" *ngIf=\"filterArr?.length\">\n <ng-container *ngFor=\"let item of filterArr\">\n <ng-container [ngSwitch]=\"item.formType\">\n <app-rd-filter-date\n *ngSwitchCase=\"filterTypeEnum.date\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n >\n </app-rd-filter-date>\n <app-rd-filter-select\n *ngSwitchCase=\"filterTypeEnum.select\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n [statusGroupConfigs]=\"statusGroupConfigs\"\n [statusDisplayConfigs]=\"statusDisplayConfigs\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n ></app-rd-filter-select>\n <app-rd-filter-input\n *ngSwitchCase=\"filterTypeEnum.input\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n ></app-rd-filter-input>\n </ng-container>\n </ng-container>\n <button\n [disabled]=\"!isClearAble\"\n (click)=\"clear()\"\n class=\"rd-custom-filter-clear\"\n nz-button\n nzType=\"link\"\n >\n {{
|
|
37
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: {
|
|
41
|
+
args: [{ selector: 'app-rd-filter', template: "<div class=\"rd-custom-filter-wrap\" *ngIf=\"filterArr?.length\">\n <ng-container *ngFor=\"let item of filterArr\">\n <ng-container [ngSwitch]=\"item.formType\">\n <app-rd-filter-date\n *ngSwitchCase=\"filterTypeEnum.date\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n >\n </app-rd-filter-date>\n <app-rd-filter-select\n *ngSwitchCase=\"filterTypeEnum.select\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n [statusGroupConfigs]=\"statusGroupConfigs\"\n [statusDisplayConfigs]=\"statusDisplayConfigs\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n ></app-rd-filter-select>\n <app-rd-filter-input\n *ngSwitchCase=\"filterTypeEnum.input\"\n [item]=\"item\"\n (handleChangeValue)=\"handleChangeValue($event)\"\n ></app-rd-filter-input>\n </ng-container>\n </ng-container>\n <button\n [disabled]=\"!isClearAble\"\n (click)=\"clear()\"\n class=\"rd-custom-filter-clear\"\n nz-button\n nzType=\"link\"\n >\n {{ getClearTrans() }}\n </button>\n</div>\n", styles: [".rd-custom-filter-wrap{display:flex;align-items:center;gap:8px;padding-top:12px;padding-bottom:12px}.rd-custom-filter-clear{font-size:13px;font-weight:600;color:#367af6;padding:0}.rd-custom-filter-clear:disabled{color:#9ca3af}\n", ".rd-form-item{position:relative;border-radius:4px;padding:2px 0;border:1px solid #e5e7eb;background-color:#fff;width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#6b7280;transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:#030712;font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:#030712;font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:#f3f4f6;border-color:#d1d5db}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:#9ca3af}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:#9ca3af}.rd-form-item.rd-error{border-color:#e51c36}.rd-form-item-error{color:#d2152e;font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:4px;padding:12px 16px;background-color:#fff;border:1px solid #e5e7eb;width:100%}.rd-form-number-item .rd-item-label{color:#6b7280;font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:#9ca3af}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:#030712;border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:#9ca3af}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:#6b7280;margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:#f3f4f6;border-color:#d1d5db}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:#9ca3af}.rd-form-number-item.rd-error{border-color:#e51c36}\n"] }]
|
|
42
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { lang: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}], filterArr: [{
|
|
38
45
|
type: Input
|
|
39
46
|
}], defSearchChange: [{
|
|
40
47
|
type: Output
|
|
@@ -47,4 +54,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
47
54
|
}], clearText: [{
|
|
48
55
|
type: Input
|
|
49
56
|
}] } });
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQtbGliL3NyYy9saWIvbW9kdWxlcy9jdXN0b20tZmlsdGVyL2N1c3RvbS1maWx0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkLWxpYi9zcmMvbGliL21vZHVsZXMvY3VzdG9tLWZpbHRlci9jdXN0b20tZmlsdGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLGNBQWMsR0FJZixNQUFNLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7Ozs7QUFVN0QsTUFBTSxPQUFPLGlCQUFpQjtJQVc1QixJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQWRqQyxTQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ1osY0FBUyxHQUFvQixFQUFFLENBQUM7UUFDekMsbUVBQW1FO1FBQ3pELG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUM3QyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDbEMseUJBQW9CLEdBQTBCLEVBQUUsQ0FBQztRQUNqRCx1QkFBa0IsR0FBc0IsRUFBRSxDQUFDO1FBRXBELG1CQUFjLEdBQUcsY0FBYyxDQUFDO0lBTWEsQ0FBQztJQUU5QyxpQkFBaUIsQ0FBQyxLQUFVO1FBQzFCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsYUFBYTtRQUNYLE9BQU8sY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDbEQsQ0FBQzs7K0dBNUJVLGlCQUFpQjttR0FBakIsaUJBQWlCLG9TQ3ZCOUIsbW9DQWtDQTs0RkRYYSxpQkFBaUI7a0JBUjdCLFNBQVM7K0JBQ0UsZUFBZTt3R0FRaEIsSUFBSTtzQkFBWixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUksZUFBZTtzQkFBeEIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNO2dCQUNFLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBGaWx0ZXJUeXBlRW51bSxcbiAgSUN1c3RvbUZpbHRlcixcbiAgU3RhdHVzRGlzcGxheUNvbmZpZyxcbiAgU3RhdHVzR3JvdXBDb25maWcsXG59IGZyb20gJy4vY3VzdG9tLWZpbHRlci50eXBlcyc7XG5pbXBvcnQgeyBnZXRUcmFuc2xhdGlvbiB9IGZyb20gJy4uLy4uL3V0aWxzL2Zvcm0tdmFpbGQtbGFuZyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1yZC1maWx0ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vY3VzdG9tLWZpbHRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogW1xuICAgICcuL2N1c3RvbS1maWx0ZXIuY29tcG9uZW50LnNjc3MnLFxuICAgICcuLi8uLi9hc3NldHMvc2Nzcy9mb3JtLWl0ZW0uc2NzcycsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFJkRmlsdGVyQ29tcG9uZW50IHtcbiAgQElucHV0KCkgbGFuZyA9ICdlbic7XG4gIEBJbnB1dCgpIGZpbHRlckFycjogSUN1c3RvbUZpbHRlcltdID0gW107XG4gIC8vIEBPdXRwdXQoKSBmaWx0ZXJBcnJDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPElDdXN0b21GaWx0ZXJbXT4oKTtcbiAgQE91dHB1dCgpIGRlZlNlYXJjaENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgY2xlYXJGaWx0ZXIgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBJbnB1dCgpIHN0YXR1c0Rpc3BsYXlDb25maWdzOiBTdGF0dXNEaXNwbGF5Q29uZmlnW10gPSBbXTtcbiAgQElucHV0KCkgc3RhdHVzR3JvdXBDb25maWdzOiBTdGF0dXNHcm91cENvbmZpZyA9IHt9O1xuICBASW5wdXQoKSBjbGVhclRleHQ/OiBzdHJpbmc7XG4gIGZpbHRlclR5cGVFbnVtID0gRmlsdGVyVHlwZUVudW07XG5cbiAgZ2V0IGlzQ2xlYXJBYmxlKCkge1xuICAgIHJldHVybiB0aGlzLmZpbHRlckFyci5maW5kSW5kZXgoKGl0ZW0pID0+ICEhaXRlbS52YWx1ZSkgPiAtMTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RmOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBoYW5kbGVDaGFuZ2VWYWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgdGhpcy5kZWZTZWFyY2hDaGFuZ2UuZW1pdCgpO1xuICB9XG5cbiAgY2xlYXIoKSB7XG4gICAgdGhpcy5maWx0ZXJBcnIuZm9yRWFjaCgoaXRlbSkgPT4gKGl0ZW0udmFsdWUgPSAnJykpO1xuICAgIHRoaXMuY2xlYXJGaWx0ZXIuZW1pdCgpO1xuICB9XG5cbiAgZ2V0Q2xlYXJUcmFucygpIHtcbiAgICByZXR1cm4gZ2V0VHJhbnNsYXRpb24odGhpcy5sYW5nLCAnY2xlYXJGaWx0ZXInKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInJkLWN1c3RvbS1maWx0ZXItd3JhcFwiICpuZ0lmPVwiZmlsdGVyQXJyPy5sZW5ndGhcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBmaWx0ZXJBcnJcIj5cbiAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJpdGVtLmZvcm1UeXBlXCI+XG4gICAgICA8YXBwLXJkLWZpbHRlci1kYXRlXG4gICAgICAgICpuZ1N3aXRjaENhc2U9XCJmaWx0ZXJUeXBlRW51bS5kYXRlXCJcbiAgICAgICAgW2l0ZW1dPVwiaXRlbVwiXG4gICAgICAgIChoYW5kbGVDaGFuZ2VWYWx1ZSk9XCJoYW5kbGVDaGFuZ2VWYWx1ZSgkZXZlbnQpXCJcbiAgICAgID5cbiAgICAgIDwvYXBwLXJkLWZpbHRlci1kYXRlPlxuICAgICAgPGFwcC1yZC1maWx0ZXItc2VsZWN0XG4gICAgICAgICpuZ1N3aXRjaENhc2U9XCJmaWx0ZXJUeXBlRW51bS5zZWxlY3RcIlxuICAgICAgICBbaXRlbV09XCJpdGVtXCJcbiAgICAgICAgKGhhbmRsZUNoYW5nZVZhbHVlKT1cImhhbmRsZUNoYW5nZVZhbHVlKCRldmVudClcIlxuICAgICAgICBbc3RhdHVzR3JvdXBDb25maWdzXT1cInN0YXR1c0dyb3VwQ29uZmlnc1wiXG4gICAgICAgIFtzdGF0dXNEaXNwbGF5Q29uZmlnc109XCJzdGF0dXNEaXNwbGF5Q29uZmlnc1wiXG4gICAgICAgIChoYW5kbGVDaGFuZ2VWYWx1ZSk9XCJoYW5kbGVDaGFuZ2VWYWx1ZSgkZXZlbnQpXCJcbiAgICAgID48L2FwcC1yZC1maWx0ZXItc2VsZWN0PlxuICAgICAgPGFwcC1yZC1maWx0ZXItaW5wdXRcbiAgICAgICAgKm5nU3dpdGNoQ2FzZT1cImZpbHRlclR5cGVFbnVtLmlucHV0XCJcbiAgICAgICAgW2l0ZW1dPVwiaXRlbVwiXG4gICAgICAgIChoYW5kbGVDaGFuZ2VWYWx1ZSk9XCJoYW5kbGVDaGFuZ2VWYWx1ZSgkZXZlbnQpXCJcbiAgICAgID48L2FwcC1yZC1maWx0ZXItaW5wdXQ+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvbmctY29udGFpbmVyPlxuICA8YnV0dG9uXG4gICAgW2Rpc2FibGVkXT1cIiFpc0NsZWFyQWJsZVwiXG4gICAgKGNsaWNrKT1cImNsZWFyKClcIlxuICAgIGNsYXNzPVwicmQtY3VzdG9tLWZpbHRlci1jbGVhclwiXG4gICAgbnotYnV0dG9uXG4gICAgbnpUeXBlPVwibGlua1wiXG4gID5cbiAgICB7eyBnZXRDbGVhclRyYW5zKCkgfX1cbiAgPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -2,6 +2,7 @@ import { Component, EventEmitter, forwardRef, Input, Output, } from '@angular/co
|
|
|
2
2
|
import { NG_VALIDATORS, NG_VALUE_ACCESSOR, } from '@angular/forms';
|
|
3
3
|
import Big from 'big.js';
|
|
4
4
|
import { formatBigNumber } from '../../utils/big-number';
|
|
5
|
+
import { getTranslation } from '../../utils/form-vaild-lang';
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
import * as i1 from "@angular/common";
|
|
7
8
|
import * as i2 from "@angular/forms";
|
|
@@ -15,24 +16,29 @@ export class CustomInputComponent {
|
|
|
15
16
|
const msg = this.errorMessages[firstError];
|
|
16
17
|
switch (firstError) {
|
|
17
18
|
case 'required':
|
|
18
|
-
return msg ||
|
|
19
|
+
return (msg ||
|
|
20
|
+
`${getTranslation(this.lang, 'pleaseEnter')} ${this.label.toLowerCase()}`);
|
|
19
21
|
case 'min':
|
|
20
22
|
return (msg ||
|
|
21
|
-
`${this.label}
|
|
23
|
+
`${this.label} ${getTranslation(this.lang, 'cannotBeLessThan')} ${formatBigNumber(this.min)}`);
|
|
22
24
|
case 'max':
|
|
23
25
|
return (msg ||
|
|
24
|
-
`${this.label}
|
|
26
|
+
`${this.label} ${getTranslation(this.lang, 'cannotExceed')} ${formatBigNumber(this.max)}`);
|
|
25
27
|
case 'precision':
|
|
26
|
-
return (msg ||
|
|
28
|
+
return (msg ||
|
|
29
|
+
`${getTranslation(this.lang, 'maxDecimalPlaces')} ${this.maskNumber}`);
|
|
27
30
|
case 'minLength':
|
|
28
31
|
return (msg ||
|
|
29
|
-
|
|
32
|
+
`${getTranslation(this.lang, 'lengthCannotBeLess')} ${this.minLength}`);
|
|
30
33
|
case 'maxLength':
|
|
31
|
-
return (msg ||
|
|
34
|
+
return (msg ||
|
|
35
|
+
`${getTranslation(this.lang, 'lengthCannotExceed')} ${this.maxLength}`);
|
|
32
36
|
case 'custom':
|
|
33
|
-
return this.control?.errors['custom'] ||
|
|
37
|
+
return (this.control?.errors['custom'] ||
|
|
38
|
+
getTranslation(this.lang, 'validationFailed'));
|
|
34
39
|
default:
|
|
35
|
-
return this.errorMessages[firstError] ||
|
|
40
|
+
return (this.errorMessages[firstError] ||
|
|
41
|
+
getTranslation(this.lang, 'validationFailed'));
|
|
36
42
|
}
|
|
37
43
|
}
|
|
38
44
|
get showError() {
|
|
@@ -40,6 +46,7 @@ export class CustomInputComponent {
|
|
|
40
46
|
}
|
|
41
47
|
constructor(cdr) {
|
|
42
48
|
this.cdr = cdr;
|
|
49
|
+
this.lang = 'en';
|
|
43
50
|
this.label = '';
|
|
44
51
|
this.symbol = '';
|
|
45
52
|
this.name = '';
|
|
@@ -161,7 +168,7 @@ export class CustomInputComponent {
|
|
|
161
168
|
}
|
|
162
169
|
}
|
|
163
170
|
CustomInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomInputComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
164
|
-
CustomInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomInputComponent, selector: "app-rd-input", inputs: { label: "label", symbol: "symbol", name: "name", disabled: "disabled", maskNumber: "maskNumber", maskType: "maskType", type: "type", required: "required", min: "min", max: "max", minLength: "minLength", maxLength: "maxLength", pattern: "pattern", customValidator: "customValidator", errorMessages: "errorMessages" }, outputs: { valueChange: "valueChange", focus: "focus", blur: "blur" }, providers: [
|
|
171
|
+
CustomInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomInputComponent, selector: "app-rd-input", inputs: { lang: "lang", label: "label", symbol: "symbol", name: "name", disabled: "disabled", maskNumber: "maskNumber", maskType: "maskType", type: "type", required: "required", min: "min", max: "max", minLength: "minLength", maxLength: "maxLength", pattern: "pattern", customValidator: "customValidator", errorMessages: "errorMessages" }, outputs: { valueChange: "valueChange", focus: "focus", blur: "blur" }, providers: [
|
|
165
172
|
{
|
|
166
173
|
provide: NG_VALUE_ACCESSOR,
|
|
167
174
|
useExisting: forwardRef(() => CustomInputComponent),
|
|
@@ -187,7 +194,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
187
194
|
multi: true,
|
|
188
195
|
},
|
|
189
196
|
], template: "<div\n [ngClass]=\"{\n 'rd-form-item-rd-input-relative': type === 'select'\n }\"\n>\n <div\n class=\"rd-form-item rd-form-item-p-deal\"\n [ngClass]=\"{\n 'rd-disabled': disabled,\n 'rd-error': showError,\n 'rd-form-item-input-select': type === 'select'\n }\"\n >\n <input\n nz-input\n nzBorderless\n placeholder=\" \"\n [name]=\"name\"\n [type]=\"type\"\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n (ngModelChange)=\"handleValueChange($event)\"\n (blur)=\"onBlur()\"\n (focus)=\"onFocus()\"\n [allowNegativeNumbers]=\"true\"\n [dropSpecialCharacters]=\"false\"\n [mask]=\"maskType === 'amount' ? 'separator.' + maskNumber : ''\"\n [thousandSeparator]=\"maskType === 'amount' ? ',' : ''\"\n class=\"rd-form-item-input\"\n />\n <div class=\"rd-form-item-label\">{{ label }}</div>\n </div>\n <div class=\"rd-form-item-rd-input-absolute\">\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"showError\" class=\"rd-form-item-error\">\n <img src=\"/assets/img/icon/icon-error.svg\" />\n {{ currentErrorMessage }}\n </div>\n</div>\n", styles: [":host .rd-form-item-p-deal{padding:0!important}:host .rd-form-item-input-select{position:relative;background:#fff!important}:host .rd-form-item-input-select.rd-disabled .rd-form-item-input{color:#6b7280}:host .rd-form-item-rd-input-relative{position:relative}:host .rd-form-item-rd-input-relative .rd-form-item-rd-input-absolute{position:absolute;top:50%;transform:translateY(-50%);right:16px;z-index:1}:host .rd-form-item-rd-input-relative .rd-form-item-input{color:#030712!important}\n", ".rd-form-item{position:relative;border-radius:4px;padding:2px 0;border:1px solid #e5e7eb;background-color:#fff;width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#6b7280;transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:#030712;font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:#030712;font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:#f3f4f6;border-color:#d1d5db}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:#9ca3af}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:#9ca3af}.rd-form-item.rd-error{border-color:#e51c36}.rd-form-item-error{color:#d2152e;font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:4px;padding:12px 16px;background-color:#fff;border:1px solid #e5e7eb;width:100%}.rd-form-number-item .rd-item-label{color:#6b7280;font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:#9ca3af}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:#030712;border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:#9ca3af}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:#6b7280;margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:#f3f4f6;border-color:#d1d5db}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:#9ca3af}.rd-form-number-item.rd-error{border-color:#e51c36}\n"] }]
|
|
190
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: {
|
|
197
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { lang: [{
|
|
198
|
+
type: Input
|
|
199
|
+
}], label: [{
|
|
191
200
|
type: Input
|
|
192
201
|
}], symbol: [{
|
|
193
202
|
type: Input
|
|
@@ -224,4 +233,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
224
233
|
}], blur: [{
|
|
225
234
|
type: Output
|
|
226
235
|
}] } });
|
|
227
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZC1saWIvc3JjL2xpYi9tb2R1bGVzL2N1c3RvbS1pbnB1dC9jdXN0b20taW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkLWxpYi9zcmMvbGliL21vZHVsZXMvY3VzdG9tLWlucHV0L2N1c3RvbS1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsS0FBSyxFQUNMLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBR0wsYUFBYSxFQUNiLGlCQUFpQixHQUlsQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sR0FBRyxNQUFNLFFBQVEsQ0FBQztBQUN6QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7OztBQXNCekQsTUFBTSxPQUFPLG9CQUFvQjtJQWlDL0IsSUFBSSxtQkFBbUI7UUFDckIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTTtZQUFFLE9BQU8sRUFBRSxDQUFDO1FBQ3JDLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFOUQsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUUzQyxRQUFRLFVBQVUsRUFBRTtZQUNsQixLQUFLLFVBQVU7Z0JBQ2IsT0FBTyxHQUFHLElBQUksZ0JBQWdCLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQztZQUMzRCxLQUFLLEtBQUs7Z0JBQ1IsT0FBTyxD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QkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUVHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBS0ksV0FBVztzQkFBcEIsTUFBTTtnQkFDRyxLQUFLO3NCQUFkLE1BQU07Z0JBQ0csSUFBSTtzQkFBYixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIGZvcndhcmRSZWYsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFic3RyYWN0Q29udHJvbCxcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXG4gIE5HX1ZBTElEQVRPUlMsXG4gIE5HX1ZBTFVFX0FDQ0VTU09SLFxuICBWYWxpZGF0aW9uRXJyb3JzLFxuICBWYWxpZGF0b3IsXG4gIFZhbGlkYXRvckZuLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgQmlnIGZyb20gJ2JpZy5qcyc7XG5pbXBvcnQgeyBmb3JtYXRCaWdOdW1iZXIgfSBmcm9tICcuLi8uLi91dGlscy9iaWctbnVtYmVyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXJkLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2N1c3RvbS1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogW1xuICAgICcuL2N1c3RvbS1pbnB1dC5jb21wb25lbnQuc2NzcycsXG4gICAgJy4uLy4uL2Fzc2V0cy9zY3NzL2Zvcm0taXRlbS5zY3NzJyxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBDdXN0b21JbnB1dENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBDdXN0b21JbnB1dENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBDdXN0b21JbnB1dENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBWYWxpZGF0b3Ige1xuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIHN5bWJvbCA9ICcnO1xuICBASW5wdXQoKSBuYW1lID0gJyc7XG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIG1hc2tOdW1iZXIgPSA2O1xuICBASW5wdXQoKSBtYXNrVHlwZTogJ2Ftb3VudCcgfCAndGV4dCcgPSAndGV4dCc7XG4gIEBJbnB1dCgpIHR5cGU6ICdwYXNzd29yZCcgfCAndGV4dCcgfCAnc2VsZWN0JyA9ICd0ZXh0JztcbiAgQElucHV0KCkgcmVxdWlyZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgbWluPzogbnVtYmVyO1xuICBASW5wdXQoKSBtYXg/OiBudW1iZXI7XG4gIEBJbnB1dCgpIG1pbkxlbmd0aD86IG51bWJlcjtcbiAgQElucHV0KCkgbWF4TGVuZ3RoPzogbnVtYmVyO1xuICBASW5wdXQoKSBwYXR0ZXJuPzogc3RyaW5nIHwgUmVnRXhwO1xuICBASW5wdXQoKSBjdXN0b21WYWxpZGF0b3I/OiBWYWxpZGF0b3JGbjtcblxuICBASW5wdXQoKSBlcnJvck1lc3NhZ2VzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge1xuICAgIHBhdHRlcm46ICdJbnZhbGlkIGZvcm1hdCcsXG4gICAgY3VzdG9tOiAnVmFsaWRhdGlvbiBmYWlsZWQnLFxuICB9O1xuXG4gIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgZm9jdXMgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBibHVyID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIHZhbHVlOiBzdHJpbmcgPSAnJztcbiAgaXNGb2N1c2VkID0gZmFsc2U7XG4gIHByaXZhdGUgdG91Y2hlZCA9IGZhbHNlO1xuICBwcml2YXRlIG9uQ2hhbmdlOiAodmFsdWU6IHN0cmluZykgPT4gdm9pZCA9ICgpID0+IHt9O1xuICBwcml2YXRlIG9uVG91Y2hlZDogKCkgPT4gdm9pZCA9ICgpID0+IHt9O1xuICBwcml2YXRlIGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIG9uVmFsaWRhdG9yQ2hhbmdlOiAoKSA9PiB2b2lkID0gKCkgPT4ge307XG5cbiAgZ2V0IGN1cnJlbnRFcnJvck1lc3NhZ2UoKTogc3RyaW5nIHtcbiAgICBpZiAoIXRoaXMuY29udHJvbD8uZXJyb3JzKSByZXR1cm4gJyc7XG4gICAgY29uc3QgZmlyc3RFcnJvciA9IE9iamVjdC5rZXlzKHRoaXMuY29udHJvbD8uZXJyb3JzIHx8IHt9KVswXTtcblxuICAgIGNvbnN0IG1zZyA9IHRoaXMuZXJyb3JNZXNzYWdlc1tmaXJzdEVycm9yXTtcblxuICAgIHN3aXRjaCAoZmlyc3RFcnJvcikge1xuICAgICAgY2FzZSAncmVxdWlyZWQnOlxuICAgICAgICByZXR1cm4gbXNnIHx8IGBQbGVhc2UgZW50ZXIgJHt0aGlzLmxhYmVsLnRvTG93ZXJDYXNlKCl9YDtcbiAgICAgIGNhc2UgJ21pbic6XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgbXNnIHx8XG4gICAgICAgICAgYCR7XG4gICAgICAgICAgICB0aGlzLmxhYmVsXG4gICAgICAgICAgfSBjYW5ub3QgYmUgbGVzcyB0aGFuIHRoZSBtaW5pbXVtIHZhbHVlICR7Zm9ybWF0QmlnTnVtYmVyKHRoaXMubWluKX1gXG4gICAgICAgICk7XG4gICAgICBjYXNlICdtYXgnOlxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIG1zZyB8fFxuICAgICAgICAgIGAke3RoaXMubGFiZWx9IGNhbm5vdCBleGNlZWQgdGhlIG1heGltdW0gdmFsdWUgJHtmb3JtYXRCaWdOdW1iZXIoXG4gICAgICAgICAgICB0aGlzLm1heFxuICAgICAgICAgICl9YFxuICAgICAgICApO1xuICAgICAgY2FzZSAncHJlY2lzaW9uJzpcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICBtc2cgfHwgYFRoZSBtYXhpbXVtIG51bWJlciBvZiBkZWNpbWFsIHBsYWNlcyBpcyAke3RoaXMubWFza051bWJlcn1gXG4gICAgICAgICk7XG4gICAgICBjYXNlICdtaW5MZW5ndGgnOlxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIG1zZyB8fFxuICAgICAgICAgIGBMZW5ndGggY2Fubm90IGJlIGxlc3MgdGhhbiB0aGUgbWluaW11bSBsZW5ndGggJHt0aGlzLm1pbkxlbmd0aH1gXG4gICAgICAgICk7XG4gICAgICBjYXNlICdtYXhMZW5ndGgnOlxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIG1zZyB8fCBgTGVuZ3RoIGNhbm5vdCBleGNlZWQgdGhlIG1heGltdW0gbGVuZ3RoICR7dGhpcy5tYXhMZW5ndGh9YFxuICAgICAgICApO1xuICAgICAgY2FzZSAnY3VzdG9tJzpcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbD8uZXJyb3JzWydjdXN0b20nXSB8fCAnVmFsaWRhdGlvbiBmYWlsZWQnO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIHRoaXMuZXJyb3JNZXNzYWdlc1tmaXJzdEVycm9yXSB8fCAnVmFsaWRhdGlvbiBmYWlsZWQnO1xuICAgIH1cbiAgfVxuXG4gIGdldCBzaG93RXJyb3IoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgICEhdGhpcy5jb250cm9sPy5pbnZhbGlkICYmICh0aGlzLmNvbnRyb2w/LnRvdWNoZWQgfHwgdGhpcy5jb250cm9sPy5kaXJ0eSlcbiAgICApO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZSB8fCAnJztcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogc3RyaW5nKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblZhbGlkYXRvckNoYW5nZShmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25WYWxpZGF0b3JDaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmICh0aGlzLnR5cGUgPT09ICdzZWxlY3QnKSB7XG4gICAgICB0aGlzLmRpc2FibGVkID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgfVxuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgb25CbHVyKCk6IHZvaWQge1xuICAgIHRoaXMuaXNGb2N1c2VkID0gZmFsc2U7XG4gICAgdGhpcy50b3VjaGVkID0gdHJ1ZTtcbiAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgIHRoaXMuYmx1ci5lbWl0KCk7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBvbkZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuaXNGb2N1c2VkID0gdHJ1ZTtcbiAgICB0aGlzLmZvY3VzLmVtaXQoKTtcbiAgfVxuXG4gIGhhbmRsZVZhbHVlQ2hhbmdlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBjbGVhbmVkVmFsdWUgPVxuICAgICAgdGhpcy5tYXNrVHlwZSA9PT0gJ2Ftb3VudCcgPyB2YWx1ZS5yZXBsYWNlKC8sL2csICcnKSA6IHZhbHVlLnRyaW0oKTtcbiAgICB0aGlzLnZhbHVlID0gY2xlYW5lZFZhbHVlO1xuICAgIHRoaXMub25DaGFuZ2UoY2xlYW5lZFZhbHVlKTtcbiAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQoY2xlYW5lZFZhbHVlKTtcbiAgfVxuXG4gIHZhbGlkYXRlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCB8IG51bGwpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XG4gICAgaWYgKGNvbnRyb2wpIHtcbiAgICAgIHRoaXMuY29udHJvbCA9IGNvbnRyb2w7XG4gICAgfVxuXG4gICAgY29uc3QgZXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JzID0ge307XG4gICAgbGV0IHZhbHVlO1xuICAgIGlmICh0aGlzLm1hc2tUeXBlID09PSAnYW1vdW50Jykge1xuICAgICAgdmFsdWUgPSBjb250cm9sPy52YWx1ZT8ucmVwbGFjZSgvLC9nLCAnJyk7XG5cbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGJpZ1ZhbHVlID0gbmV3IEJpZyh2YWx1ZSk7XG4gICAgICAgIGlmICh0aGlzLm1pbiAmJiAhTnVtYmVyLmlzTmFOKHRoaXMubWluKSAmJiBiaWdWYWx1ZS5sdCh0aGlzLm1pbikpIHtcbiAgICAgICAgICBlcnJvcnNbJ21pbiddID0geyBtaW46IHRoaXMubWluLCBhY3R1YWw6IHZhbHVlIH07XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMubWF4ICYmICFOdW1iZXIuaXNOYU4odGhpcy5tYXgpICYmIGJpZ1ZhbHVlLmd0KHRoaXMubWF4KSkge1xuICAgICAgICAgIGVycm9yc1snbWF4J10gPSB7IG1heDogdGhpcy5tYXgsIGFjdHVhbDogdmFsdWUgfTtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgZXJyb3JzWydpbnZhbGlkJ10gPSB0cnVlO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB2YWx1ZSA9IGNvbnRyb2w/LnZhbHVlPy50cmltKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucmVxdWlyZWQgJiYgIXZhbHVlKSB7XG4gICAgICBlcnJvcnNbJ3JlcXVpcmVkJ10gPSB0cnVlO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSAmJiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAodGhpcy5taW5MZW5ndGggJiYgdmFsdWUubGVuZ3RoIDwgdGhpcy5taW5MZW5ndGgpIHtcbiAgICAgICAgZXJyb3JzWydtaW5MZW5ndGgnXSA9IHtcbiAgICAgICAgICByZXF1aXJlZExlbmd0aDogdGhpcy5taW5MZW5ndGgsXG4gICAgICAgICAgYWN0dWFsTGVuZ3RoOiB2YWx1ZS5sZW5ndGgsXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5tYXhMZW5ndGggJiYgdmFsdWUubGVuZ3RoID4gdGhpcy5tYXhMZW5ndGgpIHtcbiAgICAgICAgZXJyb3JzWydtYXhMZW5ndGgnXSA9IHtcbiAgICAgICAgICByZXF1aXJlZExlbmd0aDogdGhpcy5tYXhMZW5ndGgsXG4gICAgICAgICAgYWN0dWFsTGVuZ3RoOiB2YWx1ZS5sZW5ndGgsXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucGF0dGVybiAmJiB2YWx1ZSkge1xuICAgICAgY29uc3QgcGF0dGVybiA9XG4gICAgICAgIHRoaXMucGF0dGVybiBpbnN0YW5jZW9mIFJlZ0V4cFxuICAgICAgICAgID8gdGhpcy5wYXR0ZXJuXG4gICAgICAgICAgOiBuZXcgUmVnRXhwKHRoaXMucGF0dGVybik7XG4gICAgICBpZiAoIXBhdHRlcm4udGVzdCh2YWx1ZSkpIHtcbiAgICAgICAgZXJyb3JzWydwYXR0ZXJuJ10gPSB7IHJlcXVpcmVkUGF0dGVybjogcGF0dGVybiwgYWN0dWFsVmFsdWU6IHZhbHVlIH07XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY3VzdG9tVmFsaWRhdG9yKSB7XG4gICAgICBjb25zdCBjdXN0b21FcnJvcnMgPSB0aGlzLmN1c3RvbVZhbGlkYXRvcihjb250cm9sISk7XG4gICAgICBpZiAoY3VzdG9tRXJyb3JzKSB7XG4gICAgICAgIE9iamVjdC5hc3NpZ24oZXJyb3JzLCBjdXN0b21FcnJvcnMpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBPYmplY3Qua2V5cyhlcnJvcnMpLmxlbmd0aCA+IDAgPyBlcnJvcnMgOiBudWxsO1xuICB9XG59XG4iLCI8ZGl2XG4gIFtuZ0NsYXNzXT1cIntcbiAgICAncmQtZm9ybS1pdGVtLXJkLWlucHV0LXJlbGF0aXZlJzogdHlwZSA9PT0gJ3NlbGVjdCdcbiAgfVwiXG4+XG4gIDxkaXZcbiAgICBjbGFzcz1cInJkLWZvcm0taXRlbSByZC1mb3JtLWl0ZW0tcC1kZWFsXCJcbiAgICBbbmdDbGFzc109XCJ7XG4gICAgICAncmQtZGlzYWJsZWQnOiBkaXNhYmxlZCxcbiAgICAgICdyZC1lcnJvcic6IHNob3dFcnJvcixcbiAgICAgICdyZC1mb3JtLWl0ZW0taW5wdXQtc2VsZWN0JzogdHlwZSA9PT0gJ3NlbGVjdCdcbiAgICB9XCJcbiAgPlxuICAgIDxpbnB1dFxuICAgICAgbnotaW5wdXRcbiAgICAgIG56Qm9yZGVybGVzc1xuICAgICAgcGxhY2Vob2xkZXI9XCIgXCJcbiAgICAgIFtuYW1lXT1cIm5hbWVcIlxuICAgICAgW3R5cGVdPVwidHlwZVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlXCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAobmdNb2RlbENoYW5nZSk9XCJoYW5kbGVWYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgIChibHVyKT1cIm9uQmx1cigpXCJcbiAgICAgIChmb2N1cyk9XCJvbkZvY3VzKClcIlxuICAgICAgW2FsbG93TmVnYXRpdmVOdW1iZXJzXT1cInRydWVcIlxuICAgICAgW2Ryb3BTcGVjaWFsQ2hhcmFjdGVyc109XCJmYWxzZVwiXG4gICAgICBbbWFza109XCJtYXNrVHlwZSA9PT0gJ2Ftb3VudCcgPyAnc2VwYXJhdG9yLicgKyBtYXNrTnVtYmVyIDogJydcIlxuICAgICAgW3Rob3VzYW5kU2VwYXJhdG9yXT1cIm1hc2tUeXBlID09PSAnYW1vdW50JyA/ICcsJyA6ICcnXCJcbiAgICAgIGNsYXNzPVwicmQtZm9ybS1pdGVtLWlucHV0XCJcbiAgICAvPlxuICAgIDxkaXYgY2xhc3M9XCJyZC1mb3JtLWl0ZW0tbGFiZWxcIj57eyBsYWJlbCB9fTwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cInJkLWZvcm0taXRlbS1yZC1pbnB1dC1hYnNvbHV0ZVwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJzaG93RXJyb3JcIiBjbGFzcz1cInJkLWZvcm0taXRlbS1lcnJvclwiPlxuICAgIDxpbWcgc3JjPVwiL2Fzc2V0cy9pbWcvaWNvbi9pY29uLWVycm9yLnN2Z1wiIC8+XG4gICAge3sgY3VycmVudEVycm9yTWVzc2FnZSB9fVxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
236
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZC1saWIvc3JjL2xpYi9tb2R1bGVzL2N1c3RvbS1pbnB1dC9jdXN0b20taW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkLWxpYi9zcmMvbGliL21vZHVsZXMvY3VzdG9tLWlucHV0L2N1c3RvbS1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsS0FBSyxFQUNMLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBR0wsYUFBYSxFQUNiLGlCQUFpQixHQUlsQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sR0FBRyxNQUFNLFFBQVEsQ0FBQztBQUN6QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7Ozs7QUFzQjdELE1BQU0sT0FBTyxvQkFBb0I7SUFrQy9CLElBQUksbUJBQW1CO1FBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU07WUFBRSxPQUFPLEVBQUUsQ0FBQztRQUNyQyxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRTlELE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFM0MsUUFBUSxVQUFVLEVBQUU7WUFDbEIsS0FBSyxVQUFVO2dCQUNiLE9BQU8sQ0FDTCxHQUFHO29CQUNILEdBQUcsY0FBYyxDQUNmLElBQUksQ0FBQyxJ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LHFCQUFxQixDQUFDOzRCQUNuRCxLQUFLLEVBQUUsSUFBSTt5QkFDWjt3QkFDRDs0QkFDRSxPQUFPLEVBQUUsYUFBYTs0QkFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUscUJBQXFCLENBQUM7NEJBQ25ELEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGO3dHQUdRLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFFRyxhQUFhO3NCQUFyQixLQUFLO2dCQUtJLFdBQVc7c0JBQXBCLE1BQU07Z0JBQ0csS0FBSztzQkFBZCxNQUFNO2dCQUNHLElBQUk7c0JBQWIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBmb3J3YXJkUmVmLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBYnN0cmFjdENvbnRyb2wsXG4gIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxuICBOR19WQUxJREFUT1JTLFxuICBOR19WQUxVRV9BQ0NFU1NPUixcbiAgVmFsaWRhdGlvbkVycm9ycyxcbiAgVmFsaWRhdG9yLFxuICBWYWxpZGF0b3JGbixcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IEJpZyBmcm9tICdiaWcuanMnO1xuaW1wb3J0IHsgZm9ybWF0QmlnTnVtYmVyIH0gZnJvbSAnLi4vLi4vdXRpbHMvYmlnLW51bWJlcic7XG5pbXBvcnQgeyBnZXRUcmFuc2xhdGlvbiB9IGZyb20gJy4uLy4uL3V0aWxzL2Zvcm0tdmFpbGQtbGFuZyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1yZC1pbnB1dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jdXN0b20taW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFtcbiAgICAnLi9jdXN0b20taW5wdXQuY29tcG9uZW50LnNjc3MnLFxuICAgICcuLi8uLi9hc3NldHMvc2Nzcy9mb3JtLWl0ZW0uc2NzcycsXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQ3VzdG9tSW5wdXRDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQ3VzdG9tSW5wdXRDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ3VzdG9tSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yIHtcbiAgQElucHV0KCkgbGFuZyA9ICdlbic7XG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgc3ltYm9sID0gJyc7XG4gIEBJbnB1dCgpIG5hbWUgPSAnJztcbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgbWFza051bWJlciA9IDY7XG4gIEBJbnB1dCgpIG1hc2tUeXBlOiAnYW1vdW50JyB8ICd0ZXh0JyA9ICd0ZXh0JztcbiAgQElucHV0KCkgdHlwZTogJ3Bhc3N3b3JkJyB8ICd0ZXh0JyB8ICdzZWxlY3QnID0gJ3RleHQnO1xuICBASW5wdXQoKSByZXF1aXJlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBtaW4/OiBudW1iZXI7XG4gIEBJbnB1dCgpIG1heD86IG51bWJlcjtcbiAgQElucHV0KCkgbWluTGVuZ3RoPzogbnVtYmVyO1xuICBASW5wdXQoKSBtYXhMZW5ndGg/OiBudW1iZXI7XG4gIEBJbnB1dCgpIHBhdHRlcm4/OiBzdHJpbmcgfCBSZWdFeHA7XG4gIEBJbnB1dCgpIGN1c3RvbVZhbGlkYXRvcj86IFZhbGlkYXRvckZuO1xuXG4gIEBJbnB1dCgpIGVycm9yTWVzc2FnZXM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7XG4gICAgcGF0dGVybjogJ0ludmFsaWQgZm9ybWF0JyxcbiAgICBjdXN0b206ICdWYWxpZGF0aW9uIGZhaWxlZCcsXG4gIH07XG5cbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIEBPdXRwdXQoKSBmb2N1cyA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIGJsdXIgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgdmFsdWU6IHN0cmluZyA9ICcnO1xuICBpc0ZvY3VzZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSB0b3VjaGVkID0gZmFsc2U7XG4gIHByaXZhdGUgb25DaGFuZ2U6ICh2YWx1ZTogc3RyaW5nKSA9PiB2b2lkID0gKCkgPT4ge307XG4gIHByaXZhdGUgb25Ub3VjaGVkOiAoKSA9PiB2b2lkID0gKCkgPT4ge307XG4gIHByaXZhdGUgY29udHJvbDogQWJzdHJhY3RDb250cm9sIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgb25WYWxpZGF0b3JDaGFuZ2U6ICgpID0+IHZvaWQgPSAoKSA9PiB7fTtcblxuICBnZXQgY3VycmVudEVycm9yTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5jb250cm9sPy5lcnJvcnMpIHJldHVybiAnJztcbiAgICBjb25zdCBmaXJzdEVycm9yID0gT2JqZWN0LmtleXModGhpcy5jb250cm9sPy5lcnJvcnMgfHwge30pWzBdO1xuXG4gICAgY29uc3QgbXNnID0gdGhpcy5lcnJvck1lc3NhZ2VzW2ZpcnN0RXJyb3JdO1xuXG4gICAgc3dpdGNoIChmaXJzdEVycm9yKSB7XG4gICAgICBjYXNlICdyZXF1aXJlZCc6XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgbXNnIHx8XG4gICAgICAgICAgYCR7Z2V0VHJhbnNsYXRpb24oXG4gICAgICAgICAgICB0aGlzLmxhbmcsXG4gICAgICAgICAgICAncGxlYXNlRW50ZXInXG4gICAgICAgICAgKX0gJHt0aGlzLmxhYmVsLnRvTG93ZXJDYXNlKCl9YFxuICAgICAgICApO1xuICAgICAgY2FzZSAnbWluJzpcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICBtc2cgfHxcbiAgICAgICAgICBgJHt0aGlzLmxhYmVsfSAke2dldFRyYW5zbGF0aW9uKFxuICAgICAgICAgICAgdGhpcy5sYW5nLFxuICAgICAgICAgICAgJ2Nhbm5vdEJlTGVzc1RoYW4nXG4gICAgICAgICAgKX0gICR7Zm9ybWF0QmlnTnVtYmVyKHRoaXMubWluKX1gXG4gICAgICAgICk7XG4gICAgICBjYXNlICdtYXgnOlxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIG1zZyB8fFxuICAgICAgICAgIGAke3RoaXMubGFiZWx9ICR7Z2V0VHJhbnNsYXRpb24oXG4gICAgICAgICAgICB0aGlzLmxhbmcsXG4gICAgICAgICAgICAnY2Fubm90RXhjZWVkJ1xuICAgICAgICAgICl9ICR7Zm9ybWF0QmlnTnVtYmVyKHRoaXMubWF4KX1gXG4gICAgICAgICk7XG4gICAgICBjYXNlICdwcmVjaXNpb24nOlxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIG1zZyB8fFxuICAgICAgICAgIGAke2dldFRyYW5zbGF0aW9uKHRoaXMubGFuZywgJ21heERlY2ltYWxQbGFjZXMnKX0gJHt0aGlzLm1hc2tOdW1iZXJ9YFxuICAgICAgICApO1xuICAgICAgY2FzZSAnbWluTGVuZ3RoJzpcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICBtc2cgfHxcbiAgICAgICAgICBgJHtnZXRUcmFuc2xhdGlvbih0aGlzLmxhbmcsICdsZW5ndGhDYW5ub3RCZUxlc3MnKX0gJHt0aGlzLm1pbkxlbmd0aH1gXG4gICAgICAgICk7XG4gICAgICBjYXNlICdtYXhMZW5ndGgnOlxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIG1zZyB8fFxuICAgICAgICAgIGAke2dldFRyYW5zbGF0aW9uKHRoaXMubGFuZywgJ2xlbmd0aENhbm5vdEV4Y2VlZCcpfSAke3RoaXMubWF4TGVuZ3RofWBcbiAgICAgICAgKTtcbiAgICAgIGNhc2UgJ2N1c3RvbSc6XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgdGhpcy5jb250cm9sPy5lcnJvcnNbJ2N1c3RvbSddIHx8XG4gICAgICAgICAgZ2V0VHJhbnNsYXRpb24odGhpcy5sYW5nLCAndmFsaWRhdGlvbkZhaWxlZCcpXG4gICAgICAgICk7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlc1tmaXJzdEVycm9yXSB8fFxuICAgICAgICAgIGdldFRyYW5zbGF0aW9uKHRoaXMubGFuZywgJ3ZhbGlkYXRpb25GYWlsZWQnKVxuICAgICAgICApO1xuICAgIH1cbiAgfVxuXG4gIGdldCBzaG93RXJyb3IoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgICEhdGhpcy5jb250cm9sPy5pbnZhbGlkICYmICh0aGlzLmNvbnRyb2w/LnRvdWNoZWQgfHwgdGhpcy5jb250cm9sPy5kaXJ0eSlcbiAgICApO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZSB8fCAnJztcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogc3RyaW5nKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblZhbGlkYXRvckNoYW5nZShmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25WYWxpZGF0b3JDaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmICh0aGlzLnR5cGUgPT09ICdzZWxlY3QnKSB7XG4gICAgICB0aGlzLmRpc2FibGVkID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgfVxuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgb25CbHVyKCk6IHZvaWQge1xuICAgIHRoaXMuaXNGb2N1c2VkID0gZmFsc2U7XG4gICAgdGhpcy50b3VjaGVkID0gdHJ1ZTtcbiAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgIHRoaXMuYmx1ci5lbWl0KCk7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBvbkZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuaXNGb2N1c2VkID0gdHJ1ZTtcbiAgICB0aGlzLmZvY3VzLmVtaXQoKTtcbiAgfVxuXG4gIGhhbmRsZVZhbHVlQ2hhbmdlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBjbGVhbmVkVmFsdWUgPVxuICAgICAgdGhpcy5tYXNrVHlwZSA9PT0gJ2Ftb3VudCcgPyB2YWx1ZS5yZXBsYWNlKC8sL2csICcnKSA6IHZhbHVlLnRyaW0oKTtcbiAgICB0aGlzLnZhbHVlID0gY2xlYW5lZFZhbHVlO1xuICAgIHRoaXMub25DaGFuZ2UoY2xlYW5lZFZhbHVlKTtcbiAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQoY2xlYW5lZFZhbHVlKTtcbiAgfVxuXG4gIHZhbGlkYXRlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCB8IG51bGwpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XG4gICAgaWYgKGNvbnRyb2wpIHtcbiAgICAgIHRoaXMuY29udHJvbCA9IGNvbnRyb2w7XG4gICAgfVxuXG4gICAgY29uc3QgZXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JzID0ge307XG4gICAgbGV0IHZhbHVlO1xuICAgIGlmICh0aGlzLm1hc2tUeXBlID09PSAnYW1vdW50Jykge1xuICAgICAgdmFsdWUgPSBjb250cm9sPy52YWx1ZT8ucmVwbGFjZSgvLC9nLCAnJyk7XG5cbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGJpZ1ZhbHVlID0gbmV3IEJpZyh2YWx1ZSk7XG4gICAgICAgIGlmICh0aGlzLm1pbiAmJiAhTnVtYmVyLmlzTmFOKHRoaXMubWluKSAmJiBiaWdWYWx1ZS5sdCh0aGlzLm1pbikpIHtcbiAgICAgICAgICBlcnJvcnNbJ21pbiddID0geyBtaW46IHRoaXMubWluLCBhY3R1YWw6IHZhbHVlIH07XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMubWF4ICYmICFOdW1iZXIuaXNOYU4odGhpcy5tYXgpICYmIGJpZ1ZhbHVlLmd0KHRoaXMubWF4KSkge1xuICAgICAgICAgIGVycm9yc1snbWF4J10gPSB7IG1heDogdGhpcy5tYXgsIGFjdHVhbDogdmFsdWUgfTtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgZXJyb3JzWydpbnZhbGlkJ10gPSB0cnVlO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB2YWx1ZSA9IGNvbnRyb2w/LnZhbHVlPy50cmltKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucmVxdWlyZWQgJiYgIXZhbHVlKSB7XG4gICAgICBlcnJvcnNbJ3JlcXVpcmVkJ10gPSB0cnVlO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSAmJiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAodGhpcy5taW5MZW5ndGggJiYgdmFsdWUubGVuZ3RoIDwgdGhpcy5taW5MZW5ndGgpIHtcbiAgICAgICAgZXJyb3JzWydtaW5MZW5ndGgnXSA9IHtcbiAgICAgICAgICByZXF1aXJlZExlbmd0aDogdGhpcy5taW5MZW5ndGgsXG4gICAgICAgICAgYWN0dWFsTGVuZ3RoOiB2YWx1ZS5sZW5ndGgsXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5tYXhMZW5ndGggJiYgdmFsdWUubGVuZ3RoID4gdGhpcy5tYXhMZW5ndGgpIHtcbiAgICAgICAgZXJyb3JzWydtYXhMZW5ndGgnXSA9IHtcbiAgICAgICAgICByZXF1aXJlZExlbmd0aDogdGhpcy5tYXhMZW5ndGgsXG4gICAgICAgICAgYWN0dWFsTGVuZ3RoOiB2YWx1ZS5sZW5ndGgsXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucGF0dGVybiAmJiB2YWx1ZSkge1xuICAgICAgY29uc3QgcGF0dGVybiA9XG4gICAgICAgIHRoaXMucGF0dGVybiBpbnN0YW5jZW9mIFJlZ0V4cFxuICAgICAgICAgID8gdGhpcy5wYXR0ZXJuXG4gICAgICAgICAgOiBuZXcgUmVnRXhwKHRoaXMucGF0dGVybik7XG4gICAgICBpZiAoIXBhdHRlcm4udGVzdCh2YWx1ZSkpIHtcbiAgICAgICAgZXJyb3JzWydwYXR0ZXJuJ10gPSB7IHJlcXVpcmVkUGF0dGVybjogcGF0dGVybiwgYWN0dWFsVmFsdWU6IHZhbHVlIH07XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY3VzdG9tVmFsaWRhdG9yKSB7XG4gICAgICBjb25zdCBjdXN0b21FcnJvcnMgPSB0aGlzLmN1c3RvbVZhbGlkYXRvcihjb250cm9sISk7XG4gICAgICBpZiAoY3VzdG9tRXJyb3JzKSB7XG4gICAgICAgIE9iamVjdC5hc3NpZ24oZXJyb3JzLCBjdXN0b21FcnJvcnMpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBPYmplY3Qua2V5cyhlcnJvcnMpLmxlbmd0aCA+IDAgPyBlcnJvcnMgOiBudWxsO1xuICB9XG59XG4iLCI8ZGl2XG4gIFtuZ0NsYXNzXT1cIntcbiAgICAncmQtZm9ybS1pdGVtLXJkLWlucHV0LXJlbGF0aXZlJzogdHlwZSA9PT0gJ3NlbGVjdCdcbiAgfVwiXG4+XG4gIDxkaXZcbiAgICBjbGFzcz1cInJkLWZvcm0taXRlbSByZC1mb3JtLWl0ZW0tcC1kZWFsXCJcbiAgICBbbmdDbGFzc109XCJ7XG4gICAgICAncmQtZGlzYWJsZWQnOiBkaXNhYmxlZCxcbiAgICAgICdyZC1lcnJvcic6IHNob3dFcnJvcixcbiAgICAgICdyZC1mb3JtLWl0ZW0taW5wdXQtc2VsZWN0JzogdHlwZSA9PT0gJ3NlbGVjdCdcbiAgICB9XCJcbiAgPlxuICAgIDxpbnB1dFxuICAgICAgbnotaW5wdXRcbiAgICAgIG56Qm9yZGVybGVzc1xuICAgICAgcGxhY2Vob2xkZXI9XCIgXCJcbiAgICAgIFtuYW1lXT1cIm5hbWVcIlxuICAgICAgW3R5cGVdPVwidHlwZVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlXCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAobmdNb2RlbENoYW5nZSk9XCJoYW5kbGVWYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgIChibHVyKT1cIm9uQmx1cigpXCJcbiAgICAgIChmb2N1cyk9XCJvbkZvY3VzKClcIlxuICAgICAgW2FsbG93TmVnYXRpdmVOdW1iZXJzXT1cInRydWVcIlxuICAgICAgW2Ryb3BTcGVjaWFsQ2hhcmFjdGVyc109XCJmYWxzZVwiXG4gICAgICBbbWFza109XCJtYXNrVHlwZSA9PT0gJ2Ftb3VudCcgPyAnc2VwYXJhdG9yLicgKyBtYXNrTnVtYmVyIDogJydcIlxuICAgICAgW3Rob3VzYW5kU2VwYXJhdG9yXT1cIm1hc2tUeXBlID09PSAnYW1vdW50JyA/ICcsJyA6ICcnXCJcbiAgICAgIGNsYXNzPVwicmQtZm9ybS1pdGVtLWlucHV0XCJcbiAgICAvPlxuICAgIDxkaXYgY2xhc3M9XCJyZC1mb3JtLWl0ZW0tbGFiZWxcIj57eyBsYWJlbCB9fTwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cInJkLWZvcm0taXRlbS1yZC1pbnB1dC1hYnNvbHV0ZVwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJzaG93RXJyb3JcIiBjbGFzcz1cInJkLWZvcm0taXRlbS1lcnJvclwiPlxuICAgIDxpbWcgc3JjPVwiL2Fzc2V0cy9pbWcvaWNvbi9pY29uLWVycm9yLnN2Z1wiIC8+XG4gICAge3sgY3VycmVudEVycm9yTWVzc2FnZSB9fVxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -2,6 +2,7 @@ import { Component, EventEmitter, forwardRef, Input, Output, } from '@angular/co
|
|
|
2
2
|
import { NG_VALIDATORS, NG_VALUE_ACCESSOR, } from '@angular/forms';
|
|
3
3
|
import Big from 'big.js';
|
|
4
4
|
import { formatBigNumber, numberToBig } from '../../utils/big-number';
|
|
5
|
+
import { getTranslation } from '../../utils/form-vaild-lang';
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
import * as i1 from "@angular/common";
|
|
7
8
|
import * as i2 from "@angular/forms";
|
|
@@ -10,6 +11,7 @@ import * as i4 from "ngx-mask";
|
|
|
10
11
|
export class CustomInputAmountComponent {
|
|
11
12
|
constructor(cdr) {
|
|
12
13
|
this.cdr = cdr;
|
|
14
|
+
this.lang = 'en';
|
|
13
15
|
this.label = '';
|
|
14
16
|
this.symbol = '';
|
|
15
17
|
this.name = '';
|
|
@@ -39,18 +41,22 @@ export class CustomInputAmountComponent {
|
|
|
39
41
|
const msg = this.errorMessages[firstError];
|
|
40
42
|
switch (firstError) {
|
|
41
43
|
case 'required':
|
|
42
|
-
return msg ||
|
|
44
|
+
return (msg ||
|
|
45
|
+
`${getTranslation(this.lang, 'pleaseEnter')} ${this.label.toLowerCase()}`);
|
|
43
46
|
case 'min':
|
|
44
47
|
return (msg ||
|
|
45
|
-
`${this.label}
|
|
48
|
+
`${this.label} ${getTranslation(this.lang, 'cannotBeLessThan')} ${formatBigNumber(this.min)}`);
|
|
46
49
|
case 'max':
|
|
47
|
-
return (msg ||
|
|
50
|
+
return (msg ||
|
|
51
|
+
`${this.label} ${getTranslation(this.lang, 'cannotExceed')} ${formatBigNumber(this.max)}`);
|
|
48
52
|
case 'precision':
|
|
49
|
-
return msg ||
|
|
53
|
+
return (msg ||
|
|
54
|
+
`${getTranslation(this.lang, 'maxDecimalPlaces')} ${this.nzPrecision}`);
|
|
50
55
|
case 'custom':
|
|
51
|
-
return this.control?.errors['custom'] ||
|
|
56
|
+
return (this.control?.errors['custom'] ||
|
|
57
|
+
getTranslation(this.lang, 'validationFailed'));
|
|
52
58
|
default:
|
|
53
|
-
return msg ||
|
|
59
|
+
return msg || getTranslation(this.lang, 'validationFailed');
|
|
54
60
|
}
|
|
55
61
|
}
|
|
56
62
|
get showError() {
|
|
@@ -136,7 +142,7 @@ export class CustomInputAmountComponent {
|
|
|
136
142
|
}
|
|
137
143
|
}
|
|
138
144
|
CustomInputAmountComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomInputAmountComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
139
|
-
CustomInputAmountComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomInputAmountComponent, selector: "app-rd-input-amount", inputs: { label: "label", symbol: "symbol", name: "name", disabled: "disabled", min: "min", max: "max", nzPrecision: "nzPrecision", allowNegativeNumbers: "allowNegativeNumbers", required: "required", errorMessages: "errorMessages" }, outputs: { blur: "blur", focus: "focus", valueChange: "valueChange" }, providers: [
|
|
145
|
+
CustomInputAmountComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomInputAmountComponent, selector: "app-rd-input-amount", inputs: { lang: "lang", label: "label", symbol: "symbol", name: "name", disabled: "disabled", min: "min", max: "max", nzPrecision: "nzPrecision", allowNegativeNumbers: "allowNegativeNumbers", required: "required", errorMessages: "errorMessages" }, outputs: { blur: "blur", focus: "focus", valueChange: "valueChange" }, providers: [
|
|
140
146
|
{
|
|
141
147
|
provide: NG_VALUE_ACCESSOR,
|
|
142
148
|
useExisting: forwardRef(() => CustomInputAmountComponent),
|
|
@@ -162,7 +168,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
162
168
|
multi: true,
|
|
163
169
|
},
|
|
164
170
|
], template: "<div>\n <div\n class=\"rd-form-number-item\"\n [ngClass]=\"{ 'rd-disabled': disabled, 'rd-error': showError }\"\n >\n <div class=\"rd-item-label\">{{ label }}</div>\n <div class=\"rd-item-content\">\n <input\n nz-input\n [name]=\"name\"\n type=\"text\"\n [placeholder]=\"'0'\"\n [mask]=\"'separator.' + nzPrecision\"\n [thousandSeparator]=\"','\"\n [allowNegativeNumbers]=\"allowNegativeNumbers\"\n [dropSpecialCharacters]=\"false\"\n [(ngModel)]=\"inputValue\"\n [disabled]=\"disabled\"\n (ngModelChange)=\"handleValueChange($event)\"\n (blur)=\"onBlur()\"\n (focus)=\"onFocus()\"\n class=\"rd-item-content-value\"\n />\n <ng-content select=\"[slot='token']\"></ng-content>\n <div *ngIf=\"symbol\" class=\"rd-item-content-symbol\">{{ symbol }}</div>\n </div>\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"showError\" class=\"rd-form-item-error\">\n <img src=\"/assets/img/icon/icon-error.svg\" />\n {{ currentErrorMessage }}\n </div>\n</div>\n", styles: [".rd-form-item{position:relative;border-radius:4px;padding:2px 0;border:1px solid #e5e7eb;background-color:#fff;width:100%;height:64px}.rd-form-item .rd-form-item-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}.rd-form-item-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#6b7280;transition:all .3s ease;pointer-events:none;z-index:1;font-size:14px;font-weight:600;line-height:1}.rd-form-item-input{color:#030712;font-size:14px;width:100%;font-weight:500;padding:22px 16px 12px;height:52px}.rd-form-item-input:focus,.rd-form-item-input:not(:placeholder-shown){top:10px}.rd-form-item .rd-form-item-input:focus~.rd-form-item-label,.rd-form-item .rd-form-item-input:not(:placeholder-shown)~.rd-form-item-label{top:18px;font-size:12px}.rd-form-item-select{width:100%}.rd-form-item-select ::ng-deep .ant-select-selection-item{color:#030712;font-size:14px;font-weight:500}.rd-form-item.rd-selected .rd-form-item-label{top:16px;font-size:12px}.rd-form-item.rd-selected .rd-form-item-select{top:10px}.rd-form-item.rd-disabled{background-color:#f3f4f6;border-color:#d1d5db}.rd-form-item.rd-disabled .rd-form-item-label,.rd-form-item.rd-disabled .rd-form-item-input{color:#9ca3af}.rd-form-item.rd-disabled ::ng-deep .ant-select-selection-item{color:#9ca3af}.rd-form-item.rd-error{border-color:#e51c36}.rd-form-item-error{color:#d2152e;font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;margin-top:4px}.rd-form-item-error img{width:16px}.rd-form-number-item{position:relative;border-radius:4px;padding:12px 16px;background-color:#fff;border:1px solid #e5e7eb;width:100%}.rd-form-number-item .rd-item-label{color:#6b7280;font-size:12px;font-weight:600}.rd-form-number-item .rd-item-content{display:flex;align-items:center;font-size:32px;font-weight:600;line-height:48px;color:#9ca3af}.rd-form-number-item .rd-item-content-value{flex:1;font-size:32px;font-weight:600;line-height:48px;color:#030712;border:none;padding:4px 0}.rd-form-number-item .rd-item-content-value:focus,.rd-form-number-item .rd-item-content-value:active,.rd-form-number-item .rd-item-content-value:hover{outline:none;box-shadow:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-handler-wrap{display:none}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input{font-size:32px;font-weight:600;line-height:48px}.rd-form-number-item .rd-item-content-value ::ng-deep .ant-input-number-input::placeholder{color:#9ca3af}.rd-form-number-item .rd-item-content-symbol{flex-shrink:0}.rd-form-number-item ::ng-deep .rd-item-warning{font-weight:500;font-size:12px;color:#6b7280;margin-top:4px;padding:0 12px}.rd-form-number-item.rd-disabled{background-color:#f3f4f6;border-color:#d1d5db}.rd-form-number-item.rd-disabled .rd-item-label,.rd-form-number-item.rd-disabled .rd-item-content-value{color:#9ca3af}.rd-form-number-item.rd-error{border-color:#e51c36}\n"] }]
|
|
165
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: {
|
|
171
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { lang: [{
|
|
172
|
+
type: Input
|
|
173
|
+
}], label: [{
|
|
166
174
|
type: Input
|
|
167
175
|
}], symbol: [{
|
|
168
176
|
type: Input
|
|
@@ -189,4 +197,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
189
197
|
}], valueChange: [{
|
|
190
198
|
type: Output
|
|
191
199
|
}] } });
|
|
192
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWlucHV0LWFtb3VudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQtbGliL3NyYy9saWIvbW9kdWxlcy9jdXN0b20taW5wdXQtYW1vdW50L2N1c3RvbS1pbnB1dC1hbW91bnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkLWxpYi9zcmMvbGliL21vZHVsZXMvY3VzdG9tLWlucHV0LWFtb3VudC9jdXN0b20taW5wdXQtYW1vdW50LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixLQUFLLEVBQ0wsTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFHTCxhQUFhLEVBQ2IsaUJBQWlCLEdBR2xCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxHQUFHLE1BQU0sUUFBUSxDQUFDO0FBQ3pCLE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7OztBQXNCdEUsTUFBTSxPQUFPLDBCQUEwQjtJQStCckMsWUFBb0IsR0FBc0I7UUFBdEIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUE1QmpDLFVBQUssR0FBRyxFQUFFLENBQUM7UUFDWCxXQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ1osU0FBSSxHQUFHLEVBQUUsQ0FBQztRQUNWLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFHakIsZ0JBQVcsR0FBRyxDQUFDLENBQUM7UUFDaEIseUJBQW9CLEdBQUcsSUFBSSxDQUFDO1FBQzVCLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFFaEIsa0JBQWEsR0FBOEI7WUFDbEQsT0FBTyxFQUFFLDZCQUE2QjtTQUN2QyxDQUFDO1FBRVEsU0FBSSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFDaEMsVUFB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LEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFFRyxhQUFhO3NCQUFyQixLQUFLO2dCQUlJLElBQUk7c0JBQWIsTUFBTTtnQkFDRyxLQUFLO3NCQUFkLE1BQU07Z0JBQ0csV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBmb3J3YXJkUmVmLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBYnN0cmFjdENvbnRyb2wsXG4gIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxuICBOR19WQUxJREFUT1JTLFxuICBOR19WQUxVRV9BQ0NFU1NPUixcbiAgVmFsaWRhdGlvbkVycm9ycyxcbiAgVmFsaWRhdG9yLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgQmlnIGZyb20gJ2JpZy5qcyc7XG5pbXBvcnQgeyBmb3JtYXRCaWdOdW1iZXIsIG51bWJlclRvQmlnIH0gZnJvbSAnLi4vLi4vdXRpbHMvYmlnLW51bWJlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1yZC1pbnB1dC1hbW91bnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY3VzdG9tLWlucHV0LWFtb3VudC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogW1xuICAgICcuL2N1c3RvbS1pbnB1dC1hbW91bnQuY29tcG9uZW50LnNjc3MnLFxuICAgICcuLi8uLi9hc3NldHMvc2Nzcy9mb3JtLWl0ZW0uc2NzcycsXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQ3VzdG9tSW5wdXRBbW91bnRDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQ3VzdG9tSW5wdXRBbW91bnRDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ3VzdG9tSW5wdXRBbW91bnRDb21wb25lbnRcbiAgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yXG57XG4gIEBJbnB1dCgpIGxhYmVsID0gJyc7XG4gIEBJbnB1dCgpIHN5bWJvbCA9ICcnO1xuICBASW5wdXQoKSBuYW1lID0gJyc7XG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIG1pbj86IG51bWJlcjtcbiAgQElucHV0KCkgbWF4PzogbnVtYmVyO1xuICBASW5wdXQoKSBuelByZWNpc2lvbiA9IDY7XG4gIEBJbnB1dCgpIGFsbG93TmVnYXRpdmVOdW1iZXJzID0gdHJ1ZTtcbiAgQElucHV0KCkgcmVxdWlyZWQgPSB0cnVlO1xuXG4gIEBJbnB1dCgpIGVycm9yTWVzc2FnZXM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7XG4gICAgaW52YWxpZDogJ1BsZWFzZSBlbnRlciBhIHZhbGlkIG51bWJlcicsXG4gIH07XG5cbiAgQE91dHB1dCgpIGJsdXIgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBmb2N1cyA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgaW5wdXRWYWx1ZTogc3RyaW5nID0gJyc7XG4gIHByaXZhdGUgdmFsdWU6IHN0cmluZyA9ICcnO1xuICBwcml2YXRlIHRvdWNoZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBjb250cm9sOiBBYnN0cmFjdENvbnRyb2wgfCBudWxsID0gbnVsbDtcbiAgZXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSBvbkNoYW5nZTogKHZhbHVlOiBzdHJpbmcpID0+IHZvaWQgPSAoKSA9PiB7fTtcbiAgcHJpdmF0ZSBvblRvdWNoZWQ6ICgpID0+IHZvaWQgPSAoKSA9PiB7fTtcbiAgcHJpdmF0ZSBvblZhbGlkYXRvckNoYW5nZTogKCkgPT4gdm9pZCA9ICgpID0+IHt9O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBnZXQgY3VycmVudEVycm9yTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5jb250cm9sPy5lcnJvcnMpIHJldHVybiAnJztcbiAgICBjb25zdCBmaXJzdEVycm9yID0gT2JqZWN0LmtleXModGhpcy5jb250cm9sPy5lcnJvcnMgfHwge30pWzBdO1xuICAgIGNvbnN0IG1zZyA9IHRoaXMuZXJyb3JNZXNzYWdlc1tmaXJzdEVycm9yXTtcblxuICAgIHN3aXRjaCAoZmlyc3RFcnJvcikge1xuICAgICAgY2FzZSAncmVxdWlyZWQnOlxuICAgICAgICByZXR1cm4gbXNnIHx8IGBQbGVhc2UgZW50ZXIgJHt0aGlzLmxhYmVsLnRvTG93ZXJDYXNlKCl9YDtcbiAgICAgIGNhc2UgJ21pbic6XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgbXNnIHx8XG4gICAgICAgICAgYCR7dGhpcy5sYWJlbH0gY2Fubm90IGJlIGxlc3MgdGhhbiAke2Zvcm1hdEJpZ051bWJlcih0aGlzLm1pbil9YFxuICAgICAgICApO1xuICAgICAgY2FzZSAnbWF4JzpcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICBtc2cgfHwgYCR7dGhpcy5sYWJlbH0gY2Fubm90IGV4Y2VlZCAke2Zvcm1hdEJpZ051bWJlcih0aGlzLm1heCl9YFxuICAgICAgICApO1xuICAgICAgY2FzZSAncHJlY2lzaW9uJzpcbiAgICAgICAgcmV0dXJuIG1zZyB8fCBgTWF4aW11bSBkZWNpbWFsIHBsYWNlcyBpcyAke3RoaXMubnpQcmVjaXNpb259YDtcbiAgICAgIGNhc2UgJ2N1c3RvbSc6XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2w/LmVycm9yc1snY3VzdG9tJ10gfHwgJ1ZhbGlkYXRpb24gZmFpbGVkJztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBtc2cgfHwgJ1ZhbGlkYXRpb24gZmFpbGVkJztcbiAgICB9XG4gIH1cblxuICBnZXQgc2hvd0Vycm9yKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICAhIXRoaXMuY29udHJvbD8uaW52YWxpZCAmJiAodGhpcy5jb250cm9sPy50b3VjaGVkIHx8IHRoaXMuY29udHJvbD8uZGlydHkpXG4gICAgKTtcbiAgfVxuXG4gIGhhbmRsZVZhbHVlQ2hhbmdlKHJhdzogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgcmF3VmFsdWUgPSByYXcucmVwbGFjZSgvLC9nLCAnJyk7XG5cbiAgICAvLyDlpITnkIbovpPlhaXnmoTlgLzvvIzovazmjaLmiJAgQmlnLmpzIOagvOW8j1xuICAgIHRoaXMudmFsdWUgPSBudW1iZXJUb0JpZyhyYXdWYWx1ZSwgdGhpcy5uelByZWNpc2lvbik7XG5cbiAgICAvLyDmm7TmlrDnu5HlrprlgLxcbiAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xuICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcblxuICAgIHRoaXMudG91Y2hlZCA9IHRydWU7XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcblxuICAgIGlmICh0aGlzLmNvbnRyb2wpIHtcbiAgICAgIGNvbnN0IGVycm9ycyA9IHRoaXMudmFsaWRhdGUodGhpcy5jb250cm9sKTtcbiAgICAgIHRoaXMuY29udHJvbC5zZXRFcnJvcnMoZXJyb3JzKTtcbiAgICAgIHRoaXMub25WYWxpZGF0b3JDaGFuZ2UoKTtcbiAgICB9XG5cbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIG9uQmx1cigpOiB2b2lkIHtcbiAgICB0aGlzLnRvdWNoZWQgPSB0cnVlO1xuICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgaWYgKHRoaXMuY29udHJvbCkge1xuICAgICAgY29uc3QgZXJyb3JzID0gdGhpcy52YWxpZGF0ZSh0aGlzLmNvbnRyb2wpO1xuICAgICAgdGhpcy5jb250cm9sLnNldEVycm9ycyhlcnJvcnMpO1xuICAgICAgdGhpcy5vblZhbGlkYXRvckNoYW5nZSgpO1xuICAgIH1cbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB0aGlzLmJsdXIuZW1pdCgpO1xuICB9XG5cbiAgb25Gb2N1cygpIHtcbiAgICB0aGlzLmZvY3VzLmVtaXQoKTtcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogc3RyaW5nKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICByZWdpc3Rlck9uVmFsaWRhdG9yQ2hhbmdlKGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vblZhbGlkYXRvckNoYW5nZSA9IGZuO1xuICB9XG5cbiAgdmFsaWRhdGUoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgIGlmIChjb250cm9sKSB7XG4gICAgICB0aGlzLmNvbnRyb2wgPSBjb250cm9sO1xuICAgIH1cbiAgICBjb25zdCBlcnJvcnM6IFZhbGlkYXRpb25FcnJvcnMgPSB7fTtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMudmFsdWU7XG5cbiAgICBpZiAodGhpcy5yZXF1aXJlZCAmJiAhdmFsdWUpIHtcbiAgICAgIGVycm9yc1sncmVxdWlyZWQnXSA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBiaWdWYWx1ZSA9IG5ldyBCaWcodmFsdWUpO1xuXG4gICAgICAgIGlmICh0aGlzLm1pbiAmJiAhTnVtYmVyLmlzTmFOKHRoaXMubWluKSAmJiBiaWdWYWx1ZS5sdCh0aGlzLm1pbikpIHtcbiAgICAgICAgICBlcnJvcnNbJ21pbiddID0geyBtaW46IHRoaXMubWluLCBhY3R1YWw6IHZhbHVlIH07XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMubWF4ICYmICFOdW1iZXIuaXNOYU4odGhpcy5tYXgpICYmIGJpZ1ZhbHVlLmd0KHRoaXMubWF4KSkge1xuICAgICAgICAgIGVycm9yc1snbWF4J10gPSB7IG1heDogdGhpcy5tYXgsIGFjdHVhbDogdmFsdWUgfTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGRlY2ltYWxQbGFjZXMgPSB2YWx1ZS5zcGxpdCgnLicpWzFdPy5sZW5ndGggfHwgMDtcbiAgICAgICAgaWYgKGRlY2ltYWxQbGFjZXMgPiB0aGlzLm56UHJlY2lzaW9uKSB7XG4gICAgICAgICAgZXJyb3JzWydwcmVjaXNpb24nXSA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgZXJyb3JzWydpbnZhbGlkJ10gPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBPYmplY3Qua2V5cyhlcnJvcnMpLmxlbmd0aCA+IDAgPyBlcnJvcnMgOiBudWxsO1xuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbCk6IHZvaWQge1xuICAgIGNvbnN0IHYgPSB2YWx1ZT8udG9TdHJpbmcoKSA/PyAnJztcbiAgICB0aGlzLnZhbHVlID0gdjtcbiAgICB0aGlzLmlucHV0VmFsdWUgPSB2O1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG59XG4iLCI8ZGl2PlxuICA8ZGl2XG4gICAgY2xhc3M9XCJyZC1mb3JtLW51bWJlci1pdGVtXCJcbiAgICBbbmdDbGFzc109XCJ7ICdyZC1kaXNhYmxlZCc6IGRpc2FibGVkLCAncmQtZXJyb3InOiBzaG93RXJyb3IgfVwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwicmQtaXRlbS1sYWJlbFwiPnt7IGxhYmVsIH19PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInJkLWl0ZW0tY29udGVudFwiPlxuICAgICAgPGlucHV0XG4gICAgICAgIG56LWlucHV0XG4gICAgICAgIFtuYW1lXT1cIm5hbWVcIlxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCInMCdcIlxuICAgICAgICBbbWFza109XCInc2VwYXJhdG9yLicgKyBuelByZWNpc2lvblwiXG4gICAgICAgIFt0aG91c2FuZFNlcGFyYXRvcl09XCInLCdcIlxuICAgICAgICBbYWxsb3dOZWdhdGl2ZU51bWJlcnNdPVwiYWxsb3dOZWdhdGl2ZU51bWJlcnNcIlxuICAgICAgICBbZHJvcFNwZWNpYWxDaGFyYWN0ZXJzXT1cImZhbHNlXCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJpbnB1dFZhbHVlXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwiaGFuZGxlVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIChibHVyKT1cIm9uQmx1cigpXCJcbiAgICAgICAgKGZvY3VzKT1cIm9uRm9jdXMoKVwiXG4gICAgICAgIGNsYXNzPVwicmQtaXRlbS1jb250ZW50LXZhbHVlXCJcbiAgICAgIC8+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbc2xvdD0ndG9rZW4nXVwiPjwvbmctY29udGVudD5cbiAgICAgIDxkaXYgKm5nSWY9XCJzeW1ib2xcIiBjbGFzcz1cInJkLWl0ZW0tY29udGVudC1zeW1ib2xcIj57eyBzeW1ib2wgfX08L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwic2hvd0Vycm9yXCIgY2xhc3M9XCJyZC1mb3JtLWl0ZW0tZXJyb3JcIj5cbiAgICA8aW1nIHNyYz1cIi9hc3NldHMvaW1nL2ljb24vaWNvbi1lcnJvci5zdmdcIiAvPlxuICAgIHt7IGN1cnJlbnRFcnJvck1lc3NhZ2UgfX1cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
200
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWlucHV0LWFtb3VudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQtbGliL3NyYy9saWIvbW9kdWxlcy9jdXN0b20taW5wdXQtYW1vdW50L2N1c3RvbS1pbnB1dC1hbW91bnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkLWxpYi9zcmMvbGliL21vZHVsZXMvY3VzdG9tLWlucHV0LWFtb3VudC9jdXN0b20taW5wdXQtYW1vdW50LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixLQUFLLEVBQ0wsTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFHTCxhQUFhLEVBQ2IsaUJBQWlCLEdBR2xCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxHQUFHLE1BQU0sUUFBUSxDQUFDO0FBQ3pCLE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7Ozs7QUFzQjdELE1BQU0sT0FBTywwQkFBMEI7SUFnQ3JDLFlBQW9CLEdBQXNCO1FBQXRCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBN0JqQyxTQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ1osVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLFdBQU0sR0FBRyxFQUFFLENBQUM7UUFDWixTQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ1YsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUdqQixnQkFBVyxHQUFHLENBQUMsQ0FBQztRQUNoQix5QkFBb0IsR0FBRyxJQUFJLENBQUM7UUFDNUIsYUFBUSxHQUFHLElBQUksQ0FBQztRQUVoQixrQkFBYSxHQUE4QjtZQUNsRCxPQUFPLEVBQUUsNkJBQTZCO1NBQ3ZDLENBQUM7UUFFUSxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUNoQyxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUNqQyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFFbkQsZUFBVSxHQUFXLEVBQUUsQ0FBQztRQUNoQixVQUFLLEdBQVcsRUFBRSxDQUFDO1FBQ25CLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsWUFBTyxHQUEyQixJQUFJLENBQUM7UUFDL0MsV0FBTSxHQUE0QixJQUFJLENBQUM7UUFFL0IsYUFBUSxHQUE0QixHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7UUFDN0MsY0FBUyxHQUFlLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUNqQyxzQkFBaUIsR0FBZSxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7SUFFSixDQUFDO0lBRTlDLElBQUksbUJBQW1CO1FBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU07WUFBRSxPQUFPLEVBQUUsQ0FBQztRQUNyQyxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzlELE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFM0MsUUFBUSxVQUFVLEVBQUU7WUFDbEIsS0FBSyxVQUFVO2dCQUNiLE9BQU8sQ0FDTCxHQUFHO29CQUNILEdBQUcsY0FBYyxDQUNmLElBQUksQ0FBQyxJQUFJLEVBQ1QsYUFBYSxDQUNkLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUNoQyxDQUFDO1lBQ0osS0FBSyxLQUFLO2dCQUNSLE9BQU8sQ0FDTCxHQUFHO29CQUNILEdBQUcsSUFBSSxDQUFDLEtBQUssSUFBSSxjQUFjLENBQzdCLElBQUksQ0FBQyxJQUFJLEVBQ1Qsa0JBQWtCLENBQ25CLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUNqQyxDQUFDO1lBQ0osS0FBSyxLQUFLO2dCQUNSLE9BQU8sQ0FDTCxHQUFHO29CQUNILEdBQUcsSUFBSSxDQUFDLEtBQUssSUFBSSxjQUFjLENBQzdCLElBQUksQ0FBQyxJQUFJLEVBQ1QsY0FBYyxDQUNmLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUNqQyxDQUFDO1lBQ0osS0FBSyxXQUFXO2dCQUNkLE9BQU8sQ0FDTCxHQUFHO29CQUNILEdBQUcsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsa0JBQWtCLENBQUMsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQ3ZFLENBQUM7WUFDSixLQUFLLFFBQVE7Z0JBQ1gsT0FBTyxDQUNMLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQztvQkFDOUIsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsa0JBQWtCLENBQUMsQ0FDOUMsQ0FBQztZQUNKO2dCQUNFLE9BQU8sR0FBRyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGtCQUFrQixDQUFDLENBQUM7U0FDL0Q7SUFDSCxDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1gsT0FBTyxDQUNMLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQzFFLENBQUM7SUFDSixDQUFDO0lBRUQsaUJBQWlCLENBQUMsR0FBVztRQUMzQixNQUFNLFFBQVEsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztRQUV2Qyx1QkFBdUI7UUFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxXQUFXLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUVyRCxRQUFRO1FBQ1IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWxDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUVqQixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDM0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDL0IsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7U0FDMUI7UUFFRCxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNoQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMzQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUMvQixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztTQUMxQjtRQUNELElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELGdCQUFnQixDQUFDLEVBQTJCO1FBQzFDLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxFQUFjO1FBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxVQUFtQjtRQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUMzQixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCx5QkFBeUIsQ0FBQyxFQUFjO1FBQ3RDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVELFFBQVEsQ0FBQyxPQUF3QjtRQUMvQixJQUFJLE9BQU8sRUFBRTtZQUNYLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1NBQ3hCO1FBQ0QsTUFBTSxNQUFNLEdBQXFCLEVBQUUsQ0FBQztRQUNwQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBRXpCLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUMzQixNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDO1NBQzNCO1FBRUQsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJO2dCQUNGLE1BQU0sUUFBUSxHQUFHLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUVoQyxJQUFJLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtvQkFDaEUsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDO2lCQUNsRDtnQkFDRCxJQUFJLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtvQkFDaEUsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDO2lCQUNsRDtnQkFFRCxNQUFNLGFBQWEsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sSUFBSSxDQUFDLENBQUM7Z0JBQ3ZELElBQUksYUFBYSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUU7b0JBQ3BDLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUM7aUJBQzVCO2FBQ0Y7WUFBQyxPQUFPLENBQUMsRUFBRTtnQkFDVixNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDO2FBQzFCO1NBQ0Y7UUFFRCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDeEQsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUE2QjtRQUN0QyxNQUFNLENBQUMsR0FBRyxLQUFLLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUM7UUFDcEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDOzt3SEFuTFUsMEJBQTBCOzRHQUExQiwwQkFBMEIsNldBYjFCO1FBQ1Q7WUFDRSxPQUFPLEVBQUUsaUJBQWlCO1lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsMEJBQTBCLENBQUM7WUFDekQsS0FBSyxFQUFFLElBQUk7U0FDWjtRQUNEO1lBQ0UsT0FBTyxFQUFFLGFBQWE7WUFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztZQUN6RCxLQUFLLEVBQUUsSUFBSTtTQUNaO0tBQ0YsMEJDdENILDJrQ0FpQ0E7NEZET2EsMEJBQTBCO2tCQXBCdEMsU0FBUzsrQkFDRSxxQkFBcUIsYUFNcEI7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsMkJBQTJCLENBQUM7NEJBQ3pELEtBQUssRUFBRSxJQUFJO3lCQUNaO3dCQUNEOzRCQUNFLE9BQU8sRUFBRSxhQUFhOzRCQUN0QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSwyQkFBMkIsQ0FBQzs0QkFDekQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7d0dBS1EsSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBSUksSUFBSTtzQkFBYixNQUFNO2dCQUNHLEtBQUs7c0JBQWQsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIGZvcndhcmRSZWYsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFic3RyYWN0Q29udHJvbCxcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXG4gIE5HX1ZBTElEQVRPUlMsXG4gIE5HX1ZBTFVFX0FDQ0VTU09SLFxuICBWYWxpZGF0aW9uRXJyb3JzLFxuICBWYWxpZGF0b3IsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCBCaWcgZnJvbSAnYmlnLmpzJztcbmltcG9ydCB7IGZvcm1hdEJpZ051bWJlciwgbnVtYmVyVG9CaWcgfSBmcm9tICcuLi8uLi91dGlscy9iaWctbnVtYmVyJztcbmltcG9ydCB7IGdldFRyYW5zbGF0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbHMvZm9ybS12YWlsZC1sYW5nJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXJkLWlucHV0LWFtb3VudCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jdXN0b20taW5wdXQtYW1vdW50LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbXG4gICAgJy4vY3VzdG9tLWlucHV0LWFtb3VudC5jb21wb25lbnQuc2NzcycsXG4gICAgJy4uLy4uL2Fzc2V0cy9zY3NzL2Zvcm0taXRlbS5zY3NzJyxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBDdXN0b21JbnB1dEFtb3VudENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBDdXN0b21JbnB1dEFtb3VudENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBDdXN0b21JbnB1dEFtb3VudENvbXBvbmVudFxuICBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBWYWxpZGF0b3JcbntcbiAgQElucHV0KCkgbGFuZyA9ICdlbic7XG4gIEBJbnB1dCgpIGxhYmVsID0gJyc7XG4gIEBJbnB1dCgpIHN5bWJvbCA9ICcnO1xuICBASW5wdXQoKSBuYW1lID0gJyc7XG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIG1pbj86IG51bWJlcjtcbiAgQElucHV0KCkgbWF4PzogbnVtYmVyO1xuICBASW5wdXQoKSBuelByZWNpc2lvbiA9IDY7XG4gIEBJbnB1dCgpIGFsbG93TmVnYXRpdmVOdW1iZXJzID0gdHJ1ZTtcbiAgQElucHV0KCkgcmVxdWlyZWQgPSB0cnVlO1xuXG4gIEBJbnB1dCgpIGVycm9yTWVzc2FnZXM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7XG4gICAgaW52YWxpZDogJ1BsZWFzZSBlbnRlciBhIHZhbGlkIG51bWJlcicsXG4gIH07XG5cbiAgQE91dHB1dCgpIGJsdXIgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBmb2N1cyA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgaW5wdXRWYWx1ZTogc3RyaW5nID0gJyc7XG4gIHByaXZhdGUgdmFsdWU6IHN0cmluZyA9ICcnO1xuICBwcml2YXRlIHRvdWNoZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBjb250cm9sOiBBYnN0cmFjdENvbnRyb2wgfCBudWxsID0gbnVsbDtcbiAgZXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSBvbkNoYW5nZTogKHZhbHVlOiBzdHJpbmcpID0+IHZvaWQgPSAoKSA9PiB7fTtcbiAgcHJpdmF0ZSBvblRvdWNoZWQ6ICgpID0+IHZvaWQgPSAoKSA9PiB7fTtcbiAgcHJpdmF0ZSBvblZhbGlkYXRvckNoYW5nZTogKCkgPT4gdm9pZCA9ICgpID0+IHt9O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBnZXQgY3VycmVudEVycm9yTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5jb250cm9sPy5lcnJvcnMpIHJldHVybiAnJztcbiAgICBjb25zdCBmaXJzdEVycm9yID0gT2JqZWN0LmtleXModGhpcy5jb250cm9sPy5lcnJvcnMgfHwge30pWzBdO1xuICAgIGNvbnN0IG1zZyA9IHRoaXMuZXJyb3JNZXNzYWdlc1tmaXJzdEVycm9yXTtcblxuICAgIHN3aXRjaCAoZmlyc3RFcnJvcikge1xuICAgICAgY2FzZSAncmVxdWlyZWQnOlxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIG1zZyB8fFxuICAgICAgICAgIGAke2dldFRyYW5zbGF0aW9uKFxuICAgICAgICAgICAgdGhpcy5sYW5nLFxuICAgICAgICAgICAgJ3BsZWFzZUVudGVyJ1xuICAgICAgICAgICl9ICR7dGhpcy5sYWJlbC50b0xvd2VyQ2FzZSgpfWBcbiAgICAgICAgKTtcbiAgICAgIGNhc2UgJ21pbic6XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgbXNnIHx8XG4gICAgICAgICAgYCR7dGhpcy5sYWJlbH0gJHtnZXRUcmFuc2xhdGlvbihcbiAgICAgICAgICAgIHRoaXMubGFuZyxcbiAgICAgICAgICAgICdjYW5ub3RCZUxlc3NUaGFuJ1xuICAgICAgICAgICl9ICR7Zm9ybWF0QmlnTnVtYmVyKHRoaXMubWluKX1gXG4gICAgICAgICk7XG4gICAgICBjYXNlICdtYXgnOlxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIG1zZyB8fFxuICAgICAgICAgIGAke3RoaXMubGFiZWx9ICR7Z2V0VHJhbnNsYXRpb24oXG4gICAgICAgICAgICB0aGlzLmxhbmcsXG4gICAgICAgICAgICAnY2Fubm90RXhjZWVkJ1xuICAgICAgICAgICl9ICR7Zm9ybWF0QmlnTnVtYmVyKHRoaXMubWF4KX1gXG4gICAgICAgICk7XG4gICAgICBjYXNlICdwcmVjaXNpb24nOlxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIG1zZyB8fFxuICAgICAgICAgIGAke2dldFRyYW5zbGF0aW9uKHRoaXMubGFuZywgJ21heERlY2ltYWxQbGFjZXMnKX0gJHt0aGlzLm56UHJlY2lzaW9ufWBcbiAgICAgICAgKTtcbiAgICAgIGNhc2UgJ2N1c3RvbSc6XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgdGhpcy5jb250cm9sPy5lcnJvcnNbJ2N1c3RvbSddIHx8XG4gICAgICAgICAgZ2V0VHJhbnNsYXRpb24odGhpcy5sYW5nLCAndmFsaWRhdGlvbkZhaWxlZCcpXG4gICAgICAgICk7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gbXNnIHx8IGdldFRyYW5zbGF0aW9uKHRoaXMubGFuZywgJ3ZhbGlkYXRpb25GYWlsZWQnKTtcbiAgICB9XG4gIH1cblxuICBnZXQgc2hvd0Vycm9yKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICAhIXRoaXMuY29udHJvbD8uaW52YWxpZCAmJiAodGhpcy5jb250cm9sPy50b3VjaGVkIHx8IHRoaXMuY29udHJvbD8uZGlydHkpXG4gICAgKTtcbiAgfVxuXG4gIGhhbmRsZVZhbHVlQ2hhbmdlKHJhdzogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgcmF3VmFsdWUgPSByYXcucmVwbGFjZSgvLC9nLCAnJyk7XG5cbiAgICAvLyDlpITnkIbovpPlhaXnmoTlgLzvvIzovazmjaLmiJAgQmlnLmpzIOagvOW8j1xuICAgIHRoaXMudmFsdWUgPSBudW1iZXJUb0JpZyhyYXdWYWx1ZSwgdGhpcy5uelByZWNpc2lvbik7XG5cbiAgICAvLyDmm7TmlrDnu5HlrprlgLxcbiAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xuICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcblxuICAgIHRoaXMudG91Y2hlZCA9IHRydWU7XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcblxuICAgIGlmICh0aGlzLmNvbnRyb2wpIHtcbiAgICAgIGNvbnN0IGVycm9ycyA9IHRoaXMudmFsaWRhdGUodGhpcy5jb250cm9sKTtcbiAgICAgIHRoaXMuY29udHJvbC5zZXRFcnJvcnMoZXJyb3JzKTtcbiAgICAgIHRoaXMub25WYWxpZGF0b3JDaGFuZ2UoKTtcbiAgICB9XG5cbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIG9uQmx1cigpOiB2b2lkIHtcbiAgICB0aGlzLnRvdWNoZWQgPSB0cnVlO1xuICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgaWYgKHRoaXMuY29udHJvbCkge1xuICAgICAgY29uc3QgZXJyb3JzID0gdGhpcy52YWxpZGF0ZSh0aGlzLmNvbnRyb2wpO1xuICAgICAgdGhpcy5jb250cm9sLnNldEVycm9ycyhlcnJvcnMpO1xuICAgICAgdGhpcy5vblZhbGlkYXRvckNoYW5nZSgpO1xuICAgIH1cbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB0aGlzLmJsdXIuZW1pdCgpO1xuICB9XG5cbiAgb25Gb2N1cygpIHtcbiAgICB0aGlzLmZvY3VzLmVtaXQoKTtcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogc3RyaW5nKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICByZWdpc3Rlck9uVmFsaWRhdG9yQ2hhbmdlKGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vblZhbGlkYXRvckNoYW5nZSA9IGZuO1xuICB9XG5cbiAgdmFsaWRhdGUoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgIGlmIChjb250cm9sKSB7XG4gICAgICB0aGlzLmNvbnRyb2wgPSBjb250cm9sO1xuICAgIH1cbiAgICBjb25zdCBlcnJvcnM6IFZhbGlkYXRpb25FcnJvcnMgPSB7fTtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMudmFsdWU7XG5cbiAgICBpZiAodGhpcy5yZXF1aXJlZCAmJiAhdmFsdWUpIHtcbiAgICAgIGVycm9yc1sncmVxdWlyZWQnXSA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBiaWdWYWx1ZSA9IG5ldyBCaWcodmFsdWUpO1xuXG4gICAgICAgIGlmICh0aGlzLm1pbiAmJiAhTnVtYmVyLmlzTmFOKHRoaXMubWluKSAmJiBiaWdWYWx1ZS5sdCh0aGlzLm1pbikpIHtcbiAgICAgICAgICBlcnJvcnNbJ21pbiddID0geyBtaW46IHRoaXMubWluLCBhY3R1YWw6IHZhbHVlIH07XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMubWF4ICYmICFOdW1iZXIuaXNOYU4odGhpcy5tYXgpICYmIGJpZ1ZhbHVlLmd0KHRoaXMubWF4KSkge1xuICAgICAgICAgIGVycm9yc1snbWF4J10gPSB7IG1heDogdGhpcy5tYXgsIGFjdHVhbDogdmFsdWUgfTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGRlY2ltYWxQbGFjZXMgPSB2YWx1ZS5zcGxpdCgnLicpWzFdPy5sZW5ndGggfHwgMDtcbiAgICAgICAgaWYgKGRlY2ltYWxQbGFjZXMgPiB0aGlzLm56UHJlY2lzaW9uKSB7XG4gICAgICAgICAgZXJyb3JzWydwcmVjaXNpb24nXSA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgZXJyb3JzWydpbnZhbGlkJ10gPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBPYmplY3Qua2V5cyhlcnJvcnMpLmxlbmd0aCA+IDAgPyBlcnJvcnMgOiBudWxsO1xuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbCk6IHZvaWQge1xuICAgIGNvbnN0IHYgPSB2YWx1ZT8udG9TdHJpbmcoKSA/PyAnJztcbiAgICB0aGlzLnZhbHVlID0gdjtcbiAgICB0aGlzLmlucHV0VmFsdWUgPSB2O1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG59XG4iLCI8ZGl2PlxuICA8ZGl2XG4gICAgY2xhc3M9XCJyZC1mb3JtLW51bWJlci1pdGVtXCJcbiAgICBbbmdDbGFzc109XCJ7ICdyZC1kaXNhYmxlZCc6IGRpc2FibGVkLCAncmQtZXJyb3InOiBzaG93RXJyb3IgfVwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwicmQtaXRlbS1sYWJlbFwiPnt7IGxhYmVsIH19PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInJkLWl0ZW0tY29udGVudFwiPlxuICAgICAgPGlucHV0XG4gICAgICAgIG56LWlucHV0XG4gICAgICAgIFtuYW1lXT1cIm5hbWVcIlxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCInMCdcIlxuICAgICAgICBbbWFza109XCInc2VwYXJhdG9yLicgKyBuelByZWNpc2lvblwiXG4gICAgICAgIFt0aG91c2FuZFNlcGFyYXRvcl09XCInLCdcIlxuICAgICAgICBbYWxsb3dOZWdhdGl2ZU51bWJlcnNdPVwiYWxsb3dOZWdhdGl2ZU51bWJlcnNcIlxuICAgICAgICBbZHJvcFNwZWNpYWxDaGFyYWN0ZXJzXT1cImZhbHNlXCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJpbnB1dFZhbHVlXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwiaGFuZGxlVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIChibHVyKT1cIm9uQmx1cigpXCJcbiAgICAgICAgKGZvY3VzKT1cIm9uRm9jdXMoKVwiXG4gICAgICAgIGNsYXNzPVwicmQtaXRlbS1jb250ZW50LXZhbHVlXCJcbiAgICAgIC8+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbc2xvdD0ndG9rZW4nXVwiPjwvbmctY29udGVudD5cbiAgICAgIDxkaXYgKm5nSWY9XCJzeW1ib2xcIiBjbGFzcz1cInJkLWl0ZW0tY29udGVudC1zeW1ib2xcIj57eyBzeW1ib2wgfX08L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwic2hvd0Vycm9yXCIgY2xhc3M9XCJyZC1mb3JtLWl0ZW0tZXJyb3JcIj5cbiAgICA8aW1nIHNyYz1cIi9hc3NldHMvaW1nL2ljb24vaWNvbi1lcnJvci5zdmdcIiAvPlxuICAgIHt7IGN1cnJlbnRFcnJvck1lc3NhZ2UgfX1cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -7,6 +7,7 @@ import * as i4 from "ng-zorro-antd/pagination";
|
|
|
7
7
|
import * as i5 from "ng-zorro-antd/grid";
|
|
8
8
|
export class CustomPaginatorComponent {
|
|
9
9
|
constructor() {
|
|
10
|
+
this.lang = 'en';
|
|
10
11
|
this.pageIndex = 0;
|
|
11
12
|
this.pageSize = 0;
|
|
12
13
|
this.currentTotalSize = 0;
|
|
@@ -25,11 +26,13 @@ export class CustomPaginatorComponent {
|
|
|
25
26
|
}
|
|
26
27
|
}
|
|
27
28
|
CustomPaginatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomPaginatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
28
|
-
CustomPaginatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomPaginatorComponent, selector: "app-rd-pagination", inputs: { pageIndex: "pageIndex", pageSize: "pageSize", currentTotalSize: "currentTotalSize", totalSize: "totalSize", specilMargin: "specilMargin", showLeftPageDorp: "showLeftPageDorp", isWhiteBg: "isWhiteBg", totalItemsText: "totalItemsText", pageText: "pageText" }, outputs: { changePageSize: "changePageSize", changePageIndex: "changePageIndex" }, ngImport: i0, template: "<div *ngIf=\"currentTotalSize > 0\" class=\"pagination-div\" nz-row>\n <div class=\"pagination-total\">\n {{
|
|
29
|
+
CustomPaginatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomPaginatorComponent, selector: "app-rd-pagination", inputs: { lang: "lang", pageIndex: "pageIndex", pageSize: "pageSize", currentTotalSize: "currentTotalSize", totalSize: "totalSize", specilMargin: "specilMargin", showLeftPageDorp: "showLeftPageDorp", isWhiteBg: "isWhiteBg", totalItemsText: "totalItemsText", pageText: "pageText" }, outputs: { changePageSize: "changePageSize", changePageIndex: "changePageIndex" }, ngImport: i0, template: "<div *ngIf=\"currentTotalSize > 0\" class=\"pagination-div\" nz-row>\n <div class=\"pagination-total\">\n <ng-container *ngIf=\"lang === 'en'\">\n {{ \"Total \" + totalSize + \" items\" }}\n </ng-container>\n <ng-container *ngIf=\"lang === 'zh'\">\n {{ \"\u5171 \" + totalSize + \" \u9805\" }}\n </ng-container>\n </div>\n <div class=\"pagination-cnt\" *ngIf=\"totalSize > 10\">\n <nz-pagination\n [nzTotal]=\"totalSize\"\n [nzPageIndex]=\"pageIndex\"\n [nzPageSize]=\"pageSize\"\n (nzPageIndexChange)=\"nzPageIndexChange($event)\"\n ></nz-pagination>\n </div>\n <div\n *ngIf=\"totalSize > 0 && totalSize > 10 && showLeftPageDorp\"\n class=\"pagination-select\"\n >\n <nz-select\n [(ngModel)]=\"pageSize\"\n class=\"pagination-select-size\"\n (ngModelChange)=\"nzPageSizeChange(pageSize)\"\n [nzDropdownClassName]=\"'paginator-select'\"\n >\n <nz-option [nzValue]=\"10\" nzLabel=\"10\"></nz-option>\n <nz-option [nzValue]=\"25\" nzLabel=\"25\"></nz-option>\n <nz-option [nzValue]=\"50\" nzLabel=\"50\"></nz-option>\n <nz-option [nzValue]=\"100\" nzLabel=\"100\"></nz-option>\n </nz-select>\n <span class=\"page-text\"\n >/\n <ng-container *ngIf=\"lang === 'en'\"> Page </ng-container>\n <ng-container *ngIf=\"lang === 'zh'\"> \u9801\u9762 </ng-container>\n </span>\n </div>\n</div>\n", styles: [":host::ng-deep .pagination-div{display:flex;justify-content:space-between;height:56px;padding:12px 0;border-top:1px solid #e5e7eb}:host::ng-deep .pagination-div .pagination-total{font-size:12px;font-weight:500;line-height:32px;color:#22222d}:host::ng-deep .pagination-div .pagination-select{display:flex;align-items:center}:host::ng-deep .pagination-div .pagination-select .page-text{margin-left:4px}:host::ng-deep .pagination-div .pagination-cnt{height:32px;line-height:32px;margin:0 auto;font-size:12px;font-weight:500;color:#22222d}:host::ng-deep .pagination-div .ant-select-item{padding-left:24px!important}:host::ng-deep .pagination-div .ant-select-item-option{padding-left:24px!important}:host::ng-deep .pagination-div .ant-table-pagination .ant-pagination{padding:16px 44px;position:absolute;right:0;margin-top:24px}:host::ng-deep .pagination-div .ant-pagination li{background:transparent;border:none}:host::ng-deep .pagination-div .ant-pagination-item-active{background:transparent;border:1px solid #367af6!important;border-radius:4px;color:#367af6!important}:host::ng-deep .pagination-div .ant-pagination-item{height:38px;margin-right:16px;min-width:32px;margin-top:3px}:host::ng-deep .pagination-div .ant-pagination-item a{font-size:12px;font-weight:500;color:#c1c2c5;min-width:24px}:host::ng-deep .pagination-div .ant-pagination-prev{margin-right:16px}:host::ng-deep .pagination-div .ant-pagination-item-active a{border-radius:4px;color:#367af6}:host::ng-deep .pagination-div .ant-select:not(.ant-select-customize-input) .ant-select-selector{border:unset;border-radius:8px;text-align:left;padding:0;box-shadow:none!important}:host::ng-deep .pagination-div .ant-pagination-item-link{border-radius:50%;color:#fff;border:unset;height:32px;width:32px;position:relative}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon{vertical-align:-5px}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon svg{width:18px;height:18px}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon-left{display:none}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon-right{display:none}:host::ng-deep .pagination-div .ant-pagination-item-link:hover{box-shadow:0 1px 4px #00000040;color:#fff!important}:host::ng-deep .pagination-div .ant-pagination-prev .ant-pagination-item-link:before{content:\"\";background:url(data:image/svg+xml;charset=utf-8;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEzLjMzMzQgMi41TDYuNjY2NzUgMTBMMTMuMzMzNCAxNy41IiBzdHJva2U9IiMwMzA3MTIiIHN0cm9rZS13aWR0aD0iMS4yNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=) no-repeat center;background-size:55%;position:absolute;inset:0}:host::ng-deep .pagination-div .ant-pagination-next .ant-pagination-item-link:before{content:\"\";background:url(data:image/svg+xml;charset=utf-8;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTYuNjY2NzUgMTcuNUwxMy4zMzM0IDEwTDYuNjY2NzUgMi41IiBzdHJva2U9IiMwMzA3MTIiIHN0cm9rZS13aWR0aD0iMS4yNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=) no-repeat center;background-size:55%;position:absolute;inset:0}:host::ng-deep .pagination-div .ant-select-arrow{display:none}:host::ng-deep .pagination-div .ant-select-selection-item{text-align:center;font-weight:500}:host::ng-deep .pagination-div .ant-select-single .ant-select-selector .ant-select-selection-item{position:relative}:host::ng-deep .pagination-div .ant-select-single.ant-select-open .ant-select-selection-item{color:#000042}:host::ng-deep .pagination-div a{text-decoration:none!important}:host::ng-deep .pagination-select-size{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background:#fff;border-radius:4px;border:1px solid #e5e7eb;margin-right:16px;font-size:12px;font-weight:500;height:32px;color:#22222d;padding:0 12px;min-width:70px}:host::ng-deep .pagination-select-size .ant-select-arrow{display:flex;margin-left:auto;color:#000042}:host::ng-deep .pagination-select-size .anticon{font-size:12px}::ng-deep .paginator-select .ant-select-dropdown{border-radius:8px;font-weight:500;color:#c1c2c5;padding-top:0;padding-bottom:0;text-align:center;box-shadow:0 1px 4px #0000001a}::ng-deep .paginator-select .ant-select-item-option-selected:not(.ant-select-item-option-disabled){background:#eaf7fa;font-weight:500;text-align:center;color:#000042}::ng-deep .paginator-select .ant-select-item{font-size:12px;font-weight:500}::ng-deep .paginator-select .ant-select-selection-item{text-align:left!important}::ng-deep .pagination-div .ant-pagination-item-active a{color:#367af6!important}::ng-deep .ant-pagination{height:32px;line-height:32px}::ng-deep .pagination-div .ant-pagination-item{height:32px;line-height:32px}::ng-deep .pagination-div .ant-pagination-item{height:32px!important;margin-top:0!important;line-height:32px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.NzOptionComponent, selector: "nz-option", inputs: ["nzLabel", "nzValue", "nzDisabled", "nzHide", "nzCustomContent"], exportAs: ["nzOption"] }, { kind: "component", type: i2.NzSelectComponent, selector: "nz-select", inputs: ["nzId", "nzSize", "nzStatus", "nzOptionHeightPx", "nzOptionOverflowSize", "nzDropdownClassName", "nzDropdownMatchSelectWidth", "nzDropdownStyle", "nzNotFoundContent", "nzPlaceHolder", "nzPlacement", "nzMaxTagCount", "nzDropdownRender", "nzCustomTemplate", "nzSuffixIcon", "nzClearIcon", "nzRemoveIcon", "nzMenuItemSelectedIcon", "nzTokenSeparators", "nzMaxTagPlaceholder", "nzMaxMultipleCount", "nzMode", "nzFilterOption", "compareWith", "nzAllowClear", "nzBorderless", "nzShowSearch", "nzLoading", "nzAutoFocus", "nzAutoClearSearchValue", "nzServerSearch", "nzDisabled", "nzOpen", "nzSelectOnTab", "nzBackdrop", "nzOptions", "nzShowArrow"], outputs: ["nzOnSearch", "nzScrollToBottom", "nzOpenChange", "nzBlur", "nzFocus"], exportAs: ["nzSelect"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.NzPaginationComponent, selector: "nz-pagination", inputs: ["nzShowTotal", "nzItemRender", "nzSize", "nzPageSizeOptions", "nzShowSizeChanger", "nzShowQuickJumper", "nzSimple", "nzDisabled", "nzResponsive", "nzHideOnSinglePage", "nzTotal", "nzPageIndex", "nzPageSize"], outputs: ["nzPageSizeChange", "nzPageIndexChange"], exportAs: ["nzPagination"] }, { kind: "directive", type: i5.NzRowDirective, selector: "[nz-row],nz-row,nz-form-item", inputs: ["nzAlign", "nzJustify", "nzGutter"], exportAs: ["nzRow"] }] });
|
|
29
30
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomPaginatorComponent, decorators: [{
|
|
30
31
|
type: Component,
|
|
31
|
-
args: [{ selector: 'app-rd-pagination', template: "<div *ngIf=\"currentTotalSize > 0\" class=\"pagination-div\" nz-row>\n <div class=\"pagination-total\">\n {{
|
|
32
|
-
}], ctorParameters: function () { return []; }, propDecorators: {
|
|
32
|
+
args: [{ selector: 'app-rd-pagination', template: "<div *ngIf=\"currentTotalSize > 0\" class=\"pagination-div\" nz-row>\n <div class=\"pagination-total\">\n <ng-container *ngIf=\"lang === 'en'\">\n {{ \"Total \" + totalSize + \" items\" }}\n </ng-container>\n <ng-container *ngIf=\"lang === 'zh'\">\n {{ \"\u5171 \" + totalSize + \" \u9805\" }}\n </ng-container>\n </div>\n <div class=\"pagination-cnt\" *ngIf=\"totalSize > 10\">\n <nz-pagination\n [nzTotal]=\"totalSize\"\n [nzPageIndex]=\"pageIndex\"\n [nzPageSize]=\"pageSize\"\n (nzPageIndexChange)=\"nzPageIndexChange($event)\"\n ></nz-pagination>\n </div>\n <div\n *ngIf=\"totalSize > 0 && totalSize > 10 && showLeftPageDorp\"\n class=\"pagination-select\"\n >\n <nz-select\n [(ngModel)]=\"pageSize\"\n class=\"pagination-select-size\"\n (ngModelChange)=\"nzPageSizeChange(pageSize)\"\n [nzDropdownClassName]=\"'paginator-select'\"\n >\n <nz-option [nzValue]=\"10\" nzLabel=\"10\"></nz-option>\n <nz-option [nzValue]=\"25\" nzLabel=\"25\"></nz-option>\n <nz-option [nzValue]=\"50\" nzLabel=\"50\"></nz-option>\n <nz-option [nzValue]=\"100\" nzLabel=\"100\"></nz-option>\n </nz-select>\n <span class=\"page-text\"\n >/\n <ng-container *ngIf=\"lang === 'en'\"> Page </ng-container>\n <ng-container *ngIf=\"lang === 'zh'\"> \u9801\u9762 </ng-container>\n </span>\n </div>\n</div>\n", styles: [":host::ng-deep .pagination-div{display:flex;justify-content:space-between;height:56px;padding:12px 0;border-top:1px solid #e5e7eb}:host::ng-deep .pagination-div .pagination-total{font-size:12px;font-weight:500;line-height:32px;color:#22222d}:host::ng-deep .pagination-div .pagination-select{display:flex;align-items:center}:host::ng-deep .pagination-div .pagination-select .page-text{margin-left:4px}:host::ng-deep .pagination-div .pagination-cnt{height:32px;line-height:32px;margin:0 auto;font-size:12px;font-weight:500;color:#22222d}:host::ng-deep .pagination-div .ant-select-item{padding-left:24px!important}:host::ng-deep .pagination-div .ant-select-item-option{padding-left:24px!important}:host::ng-deep .pagination-div .ant-table-pagination .ant-pagination{padding:16px 44px;position:absolute;right:0;margin-top:24px}:host::ng-deep .pagination-div .ant-pagination li{background:transparent;border:none}:host::ng-deep .pagination-div .ant-pagination-item-active{background:transparent;border:1px solid #367af6!important;border-radius:4px;color:#367af6!important}:host::ng-deep .pagination-div .ant-pagination-item{height:38px;margin-right:16px;min-width:32px;margin-top:3px}:host::ng-deep .pagination-div .ant-pagination-item a{font-size:12px;font-weight:500;color:#c1c2c5;min-width:24px}:host::ng-deep .pagination-div .ant-pagination-prev{margin-right:16px}:host::ng-deep .pagination-div .ant-pagination-item-active a{border-radius:4px;color:#367af6}:host::ng-deep .pagination-div .ant-select:not(.ant-select-customize-input) .ant-select-selector{border:unset;border-radius:8px;text-align:left;padding:0;box-shadow:none!important}:host::ng-deep .pagination-div .ant-pagination-item-link{border-radius:50%;color:#fff;border:unset;height:32px;width:32px;position:relative}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon{vertical-align:-5px}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon svg{width:18px;height:18px}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon-left{display:none}:host::ng-deep .pagination-div .ant-pagination-item-link .anticon-right{display:none}:host::ng-deep .pagination-div .ant-pagination-item-link:hover{box-shadow:0 1px 4px #00000040;color:#fff!important}:host::ng-deep .pagination-div .ant-pagination-prev .ant-pagination-item-link:before{content:\"\";background:url(data:image/svg+xml;charset=utf-8;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEzLjMzMzQgMi41TDYuNjY2NzUgMTBMMTMuMzMzNCAxNy41IiBzdHJva2U9IiMwMzA3MTIiIHN0cm9rZS13aWR0aD0iMS4yNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=) no-repeat center;background-size:55%;position:absolute;inset:0}:host::ng-deep .pagination-div .ant-pagination-next .ant-pagination-item-link:before{content:\"\";background:url(data:image/svg+xml;charset=utf-8;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTYuNjY2NzUgMTcuNUwxMy4zMzM0IDEwTDYuNjY2NzUgMi41IiBzdHJva2U9IiMwMzA3MTIiIHN0cm9rZS13aWR0aD0iMS4yNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=) no-repeat center;background-size:55%;position:absolute;inset:0}:host::ng-deep .pagination-div .ant-select-arrow{display:none}:host::ng-deep .pagination-div .ant-select-selection-item{text-align:center;font-weight:500}:host::ng-deep .pagination-div .ant-select-single .ant-select-selector .ant-select-selection-item{position:relative}:host::ng-deep .pagination-div .ant-select-single.ant-select-open .ant-select-selection-item{color:#000042}:host::ng-deep .pagination-div a{text-decoration:none!important}:host::ng-deep .pagination-select-size{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background:#fff;border-radius:4px;border:1px solid #e5e7eb;margin-right:16px;font-size:12px;font-weight:500;height:32px;color:#22222d;padding:0 12px;min-width:70px}:host::ng-deep .pagination-select-size .ant-select-arrow{display:flex;margin-left:auto;color:#000042}:host::ng-deep .pagination-select-size .anticon{font-size:12px}::ng-deep .paginator-select .ant-select-dropdown{border-radius:8px;font-weight:500;color:#c1c2c5;padding-top:0;padding-bottom:0;text-align:center;box-shadow:0 1px 4px #0000001a}::ng-deep .paginator-select .ant-select-item-option-selected:not(.ant-select-item-option-disabled){background:#eaf7fa;font-weight:500;text-align:center;color:#000042}::ng-deep .paginator-select .ant-select-item{font-size:12px;font-weight:500}::ng-deep .paginator-select .ant-select-selection-item{text-align:left!important}::ng-deep .pagination-div .ant-pagination-item-active a{color:#367af6!important}::ng-deep .ant-pagination{height:32px;line-height:32px}::ng-deep .pagination-div .ant-pagination-item{height:32px;line-height:32px}::ng-deep .pagination-div .ant-pagination-item{height:32px!important;margin-top:0!important;line-height:32px}\n"] }]
|
|
33
|
+
}], ctorParameters: function () { return []; }, propDecorators: { lang: [{
|
|
34
|
+
type: Input
|
|
35
|
+
}], pageIndex: [{
|
|
33
36
|
type: Input
|
|
34
37
|
}], pageSize: [{
|
|
35
38
|
type: Input
|
|
@@ -52,4 +55,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
52
55
|
}], changePageIndex: [{
|
|
53
56
|
type: Output
|
|
54
57
|
}] } });
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZC1saWIvc3JjL2xpYi9tb2R1bGVzL2N1c3RvbS1wYWdpbmF0aW9uL3BhZ2luYXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQtbGliL3NyYy9saWIvbW9kdWxlcy9jdXN0b20tcGFnaW5hdGlvbi9wYWdpbmF0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7OztBQU92RSxNQUFNLE9BQU8sd0JBQXdCO0lBYW5DO1FBWlMsU0FBSSxHQUFHLElBQUksQ0FBQztRQUNaLGNBQVMsR0FBRyxDQUFDLENBQUM7UUFDZCxhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ2IscUJBQWdCLEdBQUcsQ0FBQyxDQUFDO1FBQ3JCLGNBQVMsR0FBRyxDQUFDLENBQUM7UUFDZCxpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQUNsQixxQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFDeEIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUdSLG1CQUFjLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDdkQsb0JBQWUsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUM1RCxDQUFDO0lBRWhCLGdCQUFnQixDQUFDLENBQU07UUFDckIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUNELGlCQUFpQixDQUFDLENBQU07UUFDdEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0IsQ0FBQzs7c0hBcEJVLHdCQUF3QjswR0FBeEIsd0JBQXdCLHNhQ1ByQyx3NENBdUNBOzRGRGhDYSx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0UsbUJBQW1COzBFQUtwQixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNhLGNBQWM7c0JBQWhDLE1BQU07Z0JBQ1ksZUFBZTtzQkFBakMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1yZC1wYWdpbmF0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BhZ2luYXRvci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3BhZ2luYXRvci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBDdXN0b21QYWdpbmF0b3JDb21wb25lbnQge1xuICBASW5wdXQoKSBsYW5nID0gJ2VuJztcbiAgQElucHV0KCkgcGFnZUluZGV4ID0gMDtcbiAgQElucHV0KCkgcGFnZVNpemUgPSAwO1xuICBASW5wdXQoKSBjdXJyZW50VG90YWxTaXplID0gMDtcbiAgQElucHV0KCkgdG90YWxTaXplID0gMDtcbiAgQElucHV0KCkgc3BlY2lsTWFyZ2luID0gMTI7XG4gIEBJbnB1dCgpIHNob3dMZWZ0UGFnZURvcnAgPSB0cnVlO1xuICBASW5wdXQoKSBpc1doaXRlQmcgPSBmYWxzZTtcbiAgQElucHV0KCkgdG90YWxJdGVtc1RleHQ/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHBhZ2VUZXh0Pzogc3RyaW5nO1xuICBAT3V0cHV0KCkgcmVhZG9ubHkgY2hhbmdlUGFnZVNpemU6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgcmVhZG9ubHkgY2hhbmdlUGFnZUluZGV4OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIG56UGFnZVNpemVDaGFuZ2UoZTogYW55KSB7XG4gICAgdGhpcy5jaGFuZ2VQYWdlU2l6ZS5lbWl0KGUpO1xuICB9XG4gIG56UGFnZUluZGV4Q2hhbmdlKGU6IGFueSkge1xuICAgIHRoaXMuY2hhbmdlUGFnZUluZGV4LmVtaXQoZSk7XG4gIH1cbn1cbiIsIjxkaXYgKm5nSWY9XCJjdXJyZW50VG90YWxTaXplID4gMFwiIGNsYXNzPVwicGFnaW5hdGlvbi1kaXZcIiBuei1yb3c+XG4gIDxkaXYgY2xhc3M9XCJwYWdpbmF0aW9uLXRvdGFsXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxhbmcgPT09ICdlbidcIj5cbiAgICAgIHt7IFwiVG90YWwgXCIgKyB0b3RhbFNpemUgKyBcIiBpdGVtc1wiIH19XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxhbmcgPT09ICd6aCdcIj5cbiAgICAgIHt7IFwi5YWxIFwiICsgdG90YWxTaXplICsgXCIg6aCFXCIgfX1cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJwYWdpbmF0aW9uLWNudFwiICpuZ0lmPVwidG90YWxTaXplID4gMTBcIj5cbiAgICA8bnotcGFnaW5hdGlvblxuICAgICAgW256VG90YWxdPVwidG90YWxTaXplXCJcbiAgICAgIFtuelBhZ2VJbmRleF09XCJwYWdlSW5kZXhcIlxuICAgICAgW256UGFnZVNpemVdPVwicGFnZVNpemVcIlxuICAgICAgKG56UGFnZUluZGV4Q2hhbmdlKT1cIm56UGFnZUluZGV4Q2hhbmdlKCRldmVudClcIlxuICAgID48L256LXBhZ2luYXRpb24+XG4gIDwvZGl2PlxuICA8ZGl2XG4gICAgKm5nSWY9XCJ0b3RhbFNpemUgPiAwICYmIHRvdGFsU2l6ZSA+IDEwICYmIHNob3dMZWZ0UGFnZURvcnBcIlxuICAgIGNsYXNzPVwicGFnaW5hdGlvbi1zZWxlY3RcIlxuICA+XG4gICAgPG56LXNlbGVjdFxuICAgICAgWyhuZ01vZGVsKV09XCJwYWdlU2l6ZVwiXG4gICAgICBjbGFzcz1cInBhZ2luYXRpb24tc2VsZWN0LXNpemVcIlxuICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwibnpQYWdlU2l6ZUNoYW5nZShwYWdlU2l6ZSlcIlxuICAgICAgW256RHJvcGRvd25DbGFzc05hbWVdPVwiJ3BhZ2luYXRvci1zZWxlY3QnXCJcbiAgICA+XG4gICAgICA8bnotb3B0aW9uIFtuelZhbHVlXT1cIjEwXCIgbnpMYWJlbD1cIjEwXCI+PC9uei1vcHRpb24+XG4gICAgICA8bnotb3B0aW9uIFtuelZhbHVlXT1cIjI1XCIgbnpMYWJlbD1cIjI1XCI+PC9uei1vcHRpb24+XG4gICAgICA8bnotb3B0aW9uIFtuelZhbHVlXT1cIjUwXCIgbnpMYWJlbD1cIjUwXCI+PC9uei1vcHRpb24+XG4gICAgICA8bnotb3B0aW9uIFtuelZhbHVlXT1cIjEwMFwiIG56TGFiZWw9XCIxMDBcIj48L256LW9wdGlvbj5cbiAgICA8L256LXNlbGVjdD5cbiAgICA8c3BhbiBjbGFzcz1cInBhZ2UtdGV4dFwiXG4gICAgICA+L1xuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxhbmcgPT09ICdlbidcIj4gUGFnZSA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsYW5nID09PSAnemgnXCI+IOmggemdoiA8L25nLWNvbnRhaW5lcj5cbiAgICA8L3NwYW4+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|