@stemy/ngx-utils 13.1.4 → 13.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/stemy-ngx-utils.umd.js +138 -29
- package/bundles/stemy-ngx-utils.umd.js.map +1 -1
- package/esm2015/ngx-utils/components/unordered-list/unordered-list.component.js +2 -2
- package/esm2015/ngx-utils/ngx-utils.module.js +7 -1
- package/esm2015/ngx-utils/pipes/pop.pipe.js +12 -0
- package/esm2015/ngx-utils/pipes/shift.pipe.js +12 -0
- package/esm2015/ngx-utils/pipes/split.pipe.js +12 -0
- package/esm2015/ngx-utils/services/config.service.js +5 -3
- package/esm2015/ngx-utils/services/formatter.service.js +3 -2
- package/esm2015/ngx-utils/utils/array.utils.js +8 -1
- package/esm2015/ngx-utils/utils/file-system.js +6 -1
- package/esm2015/ngx-utils/utils/math.utils.js +32 -2
- package/esm2015/ngx-utils/utils/object.utils.js +36 -25
- package/esm2015/public_api.js +4 -1
- package/esm2020/ngx-utils/components/unordered-list/unordered-list.component.mjs +3 -3
- package/esm2020/ngx-utils/ngx-utils.imports.mjs +7 -1
- package/esm2020/ngx-utils/ngx-utils.module.mjs +31 -28
- package/esm2020/ngx-utils/pipes/pop.pipe.mjs +16 -0
- package/esm2020/ngx-utils/pipes/shift.pipe.mjs +16 -0
- package/esm2020/ngx-utils/pipes/split.pipe.mjs +16 -0
- package/esm2020/ngx-utils/services/config.service.mjs +6 -5
- package/esm2020/ngx-utils/services/formatter.service.mjs +3 -2
- package/esm2020/ngx-utils/utils/array.utils.mjs +8 -1
- package/esm2020/ngx-utils/utils/file-system.mjs +6 -1
- package/esm2020/ngx-utils/utils/math.utils.mjs +31 -2
- package/esm2020/ngx-utils/utils/object.utils.mjs +36 -25
- package/esm2020/public_api.mjs +4 -1
- package/fesm2015/stemy-ngx-utils.js +122 -30
- package/fesm2015/stemy-ngx-utils.js.map +1 -1
- package/fesm2015/stemy-ngx-utils.mjs +135 -35
- package/fesm2015/stemy-ngx-utils.mjs.map +1 -1
- package/fesm2020/stemy-ngx-utils.mjs +134 -35
- package/fesm2020/stemy-ngx-utils.mjs.map +1 -1
- package/ngx-utils/ngx-utils.module.d.ts +31 -28
- package/ngx-utils/pipes/pop.pipe.d.ts +7 -0
- package/ngx-utils/pipes/shift.pipe.d.ts +7 -0
- package/ngx-utils/pipes/split.pipe.d.ts +7 -0
- package/ngx-utils/services/config.service.d.ts +4 -2
- package/ngx-utils/utils/array.utils.d.ts +1 -0
- package/ngx-utils/utils/math.utils.d.ts +3 -0
- package/ngx-utils/utils/object.utils.d.ts +1 -1
- package/package.json +10 -10
- package/public_api.d.ts +3 -0
- package/stemy-ngx-utils.metadata.json +1 -1
|
@@ -30,7 +30,7 @@ export class UnorderedListComponent {
|
|
|
30
30
|
UnorderedListComponent.decorators = [
|
|
31
31
|
{ type: Component, args: [{
|
|
32
32
|
selector: "unordered-list",
|
|
33
|
-
template: "<ng-template let-keyPrefix=\"keyPrefix\" let-key=\"item.key\" let-isArray=\"isArray\" #defaultKeyTemplate>\r\n {{ (keyPrefix ? keyPrefix + key : key) | translate }}:\r\n</ng-template>\r\n<ng-template let-keyPrefix=\"keyPrefix\" let-listStyle=\"listStyle\" let-val=\"item.value\" let-path=\"path\"\r\n let-templates=\"templates\" let-isObject=\"valueIsObject\" let-isArray=\"valueIsArray\" #defaultValueTemplate>\r\n <ng-template #value
|
|
33
|
+
template: "<ng-template let-keyPrefix=\"keyPrefix\" let-key=\"item.key\" let-isArray=\"isArray\" #defaultKeyTemplate>\r\n {{ (keyPrefix ? keyPrefix + key : key) | translate }}:\r\n</ng-template>\r\n<ng-template let-keyPrefix=\"keyPrefix\" let-listStyle=\"listStyle\" let-val=\"item.value\" let-path=\"path\"\r\n let-templates=\"templates\" let-isObject=\"valueIsObject\" let-isArray=\"valueIsArray\" #defaultValueTemplate>\r\n <ng-template #value>\r\n <span [innerHTML]=\"val\"></span>\r\n </ng-template>\r\n <unordered-list [data]=\"val\"\r\n [keyPrefix]=\"keyPrefix\"\r\n [listStyle]=\"listStyle\"\r\n [path]=\"path\"\r\n [level]=\"level + 1\"\r\n [templates]=\"templates\"\r\n *ngIf=\"(isObject || isArray); else value\"></unordered-list>\r\n</ng-template>\r\n<ng-template let-item=\"item\" let-data=\"data\" let-keyPrefix=\"keyPrefix\" let-listStyle=\"listStyle\" let-path=\"path\" let-level=\"level\" let-templates=\"templates\" #defaultItemTemplate>\r\n <ng-template #itemKey>\r\n <ng-container [unorderedListItem]=\"item\"\r\n type=\"key\"\r\n [data]=\"data\"\r\n [keyPrefix]=\"keyPrefix\"\r\n [listStyle]=\"listStyle\"\r\n [path]=\"path\"\r\n [level]=\"level\"\r\n [templates]=\"templates\"\r\n [defaultTemplates]=\"defaultTemplates\"></ng-container>\r\n </ng-template>\r\n <ng-template #itemValue>\r\n <ng-container [unorderedListItem]=\"item\"\r\n type=\"value\"\r\n [data]=\"data\"\r\n [keyPrefix]=\"keyPrefix\"\r\n [listStyle]=\"listStyle\"\r\n [path]=\"path\"\r\n [level]=\"level\"\r\n [templates]=\"templates\"\r\n [defaultTemplates]=\"defaultTemplates\"></ng-container>\r\n </ng-template>\r\n <ng-container *ngIf=\"!isArray\">\r\n <th *ngIf=\"listStyle == 'table'; else itemKey\">\r\n <ng-container [ngTemplateOutlet]=\"itemKey\"></ng-container>\r\n </th>\r\n </ng-container>\r\n <td *ngIf=\"listStyle == 'table'; else itemValue\">\r\n <ng-container [ngTemplateOutlet]=\"itemValue\"></ng-container>\r\n </td>\r\n</ng-template>\r\n<ng-template #value>\r\n <span [innerHTML]=\"data\"></span>\r\n</ng-template>\r\n<ng-container *ngIf=\"(isObject || isArray); else value\" [ngSwitch]=\"listStyle\">\r\n <ul [ngClass]=\"'level-' + level\" *ngSwitchCase=\"'list'\">\r\n <li *ngFor=\"let item of data | entries\" [ngClass]=\"item.classList\">\r\n <ng-container [unorderedListItem]=\"item\"\r\n type=\"item\"\r\n [data]=\"data\"\r\n [keyPrefix]=\"keyPrefix\"\r\n [listStyle]=\"listStyle\"\r\n [path]=\"path ? path + '.' + item.key : item.key\"\r\n [level]=\"level\"\r\n [templates]=\"templates\"\r\n [defaultTemplates]=\"defaultTemplates\"></ng-container>\r\n </li>\r\n </ul>\r\n <table [ngClass]=\"'level-' + level\" *ngSwitchDefault>\r\n <tr *ngFor=\"let item of data | entries\" [ngClass]=\"item.classList\">\r\n <ng-container [unorderedListItem]=\"item\"\r\n type=\"item\"\r\n [data]=\"data\"\r\n [keyPrefix]=\"keyPrefix\"\r\n [listStyle]=\"listStyle\"\r\n [path]=\"path ? path + '.' + item.key : item.key\"\r\n [level]=\"level\"\r\n [templates]=\"templates\"\r\n [defaultTemplates]=\"defaultTemplates\"></ng-container>\r\n </tr>\r\n </table>\r\n</ng-container>\r\n"
|
|
34
34
|
},] }
|
|
35
35
|
];
|
|
36
36
|
UnorderedListComponent.ctorParameters = () => [
|
|
@@ -48,4 +48,4 @@ UnorderedListComponent.propDecorators = {
|
|
|
48
48
|
defaultValueTemplate: [{ type: ViewChild, args: ["defaultValueTemplate",] }],
|
|
49
49
|
defaultItemTemplate: [{ type: ViewChild, args: ["defaultItemTemplate",] }]
|
|
50
50
|
};
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5vcmRlcmVkLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL25neC11dGlscy9jb21wb25lbnRzL3Vub3JkZXJlZC1saXN0L3Vub3JkZXJlZC1saXN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0gsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsS0FBSyxFQUd1QixTQUFTLEVBQ3hDLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRCxPQUFPLEVBQUMsOEJBQThCLEVBQUMsTUFBTSxvREFBb0QsQ0FBQztBQU1sRyxNQUFNLE9BQU8sc0JBQXNCO0lBdUIvQixZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN0QyxJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQztRQUN6QixJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUNmLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO0lBQ25CLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDOUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsUUFBUSxHQUFHLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxrQkFBa0I7UUFDZCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQy9FLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELGVBQWU7UUFDWCxJQUFJLENBQUMsZ0JBQWdCLEdBQUc7WUFDcEIsR0FBRyxFQUFFLElBQUksQ0FBQyxrQkFBa0I7WUFDNUIsS0FBSyxFQUFFLElBQUksQ0FBQyxvQkFBb0I7WUFDaEMsSUFBSSxFQUFFLElBQUksQ0FBQyxtQkFBbUI7U0FDakMsQ0FBQztRQUNGLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDN0IsQ0FBQzs7O1lBcERKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQiw2L0hBQThDO2FBQ2pEOzs7WUFmRyxpQkFBaUI7OzttQkFrQmhCLEtBQUs7d0JBQ0wsS0FBSzt3QkFDTCxLQUFLO21CQUNMLEtBQUs7b0JBQ0wsS0FBSzt3QkFDTCxLQUFLO2lDQU1MLGVBQWUsU0FBQyw4QkFBOEI7aUNBRzlDLFNBQVMsU0FBQyxvQkFBb0I7bUNBRTlCLFNBQVMsU0FBQyxzQkFBc0I7a0NBRWhDLFNBQVMsU0FBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQWZ0ZXJDb250ZW50SW5pdCxcclxuICAgIEFmdGVyVmlld0luaXQsXHJcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIENvbXBvbmVudCxcclxuICAgIENvbnRlbnRDaGlsZHJlbixcclxuICAgIElucHV0LFxyXG4gICAgT25DaGFuZ2VzLFxyXG4gICAgUXVlcnlMaXN0LFxyXG4gICAgU2ltcGxlQ2hhbmdlcywgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZFxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7VW5vcmRlcmVkTGlzdFN0eWxlLCBVbm9yZGVyZWRMaXN0VGVtcGxhdGVzLCBVbm9yZWRlcmVkTGlzdFRlbXBsYXRlfSBmcm9tIFwiLi4vLi4vY29tbW9uLXR5cGVzXCI7XHJcbmltcG9ydCB7T2JqZWN0VXRpbHN9IGZyb20gXCIuLi8uLi91dGlscy9vYmplY3QudXRpbHNcIjtcclxuaW1wb3J0IHtVbm9yZGVyZWRMaXN0VGVtcGxhdGVEaXJlY3RpdmV9IGZyb20gXCIuLi8uLi9kaXJlY3RpdmVzL3Vub3JkZXJlZC1saXN0LXRlbXBsYXRlLmRpcmVjdGl2ZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogXCJ1bm9yZGVyZWQtbGlzdFwiLFxyXG4gICAgdGVtcGxhdGVVcmw6IFwiLi91bm9yZGVyZWQtbGlzdC5jb21wb25lbnQuaHRtbFwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVbm9yZGVyZWRMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdJbml0IHtcclxuXHJcbiAgICBASW5wdXQoKSBkYXRhOiBhbnk7XHJcbiAgICBASW5wdXQoKSBrZXlQcmVmaXg6IHN0cmluZztcclxuICAgIEBJbnB1dCgpIGxpc3RTdHlsZTogVW5vcmRlcmVkTGlzdFN0eWxlO1xyXG4gICAgQElucHV0KCkgcGF0aDogc3RyaW5nO1xyXG4gICAgQElucHV0KCkgbGV2ZWw6IG51bWJlcjtcclxuICAgIEBJbnB1dCgpIHRlbXBsYXRlczogVW5vcmVkZXJlZExpc3RUZW1wbGF0ZVtdO1xyXG5cclxuICAgIGlzQXJyYXk6IGJvb2xlYW47XHJcbiAgICBpc09iamVjdDogYm9vbGVhbjtcclxuICAgIGRlZmF1bHRUZW1wbGF0ZXM6IFVub3JkZXJlZExpc3RUZW1wbGF0ZXM7XHJcblxyXG4gICAgQENvbnRlbnRDaGlsZHJlbihVbm9yZGVyZWRMaXN0VGVtcGxhdGVEaXJlY3RpdmUpXHJcbiAgICBwcml2YXRlIHRlbXBsYXRlRGlyZWN0aXZlczogUXVlcnlMaXN0PFVub3JkZXJlZExpc3RUZW1wbGF0ZURpcmVjdGl2ZT47XHJcblxyXG4gICAgQFZpZXdDaGlsZChcImRlZmF1bHRLZXlUZW1wbGF0ZVwiKVxyXG4gICAgcHJpdmF0ZSBkZWZhdWx0S2V5VGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgICBAVmlld0NoaWxkKFwiZGVmYXVsdFZhbHVlVGVtcGxhdGVcIilcclxuICAgIHByaXZhdGUgZGVmYXVsdFZhbHVlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgICBAVmlld0NoaWxkKFwiZGVmYXVsdEl0ZW1UZW1wbGF0ZVwiKVxyXG4gICAgcHJpdmF0ZSBkZWZhdWx0SXRlbVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgICAgIHRoaXMua2V5UHJlZml4ID0gXCJcIjtcclxuICAgICAgICB0aGlzLmxpc3RTdHlsZSA9IFwidGFibGVcIjtcclxuICAgICAgICB0aGlzLnBhdGggPSBcIlwiO1xyXG4gICAgICAgIHRoaXMubGV2ZWwgPSAwO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmlzQXJyYXkgPSBPYmplY3RVdGlscy5pc0FycmF5KHRoaXMuZGF0YSk7XHJcbiAgICAgICAgdGhpcy5pc09iamVjdCA9IE9iamVjdFV0aWxzLmlzT2JqZWN0KHRoaXMuZGF0YSk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IHRlbXBsYXRlcyA9IHRoaXMudGVtcGxhdGVEaXJlY3RpdmVzLnRvQXJyYXkoKTtcclxuICAgICAgICB0aGlzLnRlbXBsYXRlcyA9IHRoaXMudGVtcGxhdGVzID8gdGhpcy50ZW1wbGF0ZXMuY29uY2F0KHRlbXBsYXRlcykgOiB0ZW1wbGF0ZXM7XHJcbiAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmRlZmF1bHRUZW1wbGF0ZXMgPSB7XHJcbiAgICAgICAgICAgIGtleTogdGhpcy5kZWZhdWx0S2V5VGVtcGxhdGUsXHJcbiAgICAgICAgICAgIHZhbHVlOiB0aGlzLmRlZmF1bHRWYWx1ZVRlbXBsYXRlLFxyXG4gICAgICAgICAgICBpdGVtOiB0aGlzLmRlZmF1bHRJdGVtVGVtcGxhdGVcclxuICAgICAgICB9O1xyXG4gICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -57,12 +57,15 @@ import { KeysPipe } from "./pipes/keys.pipe";
|
|
|
57
57
|
import { MapPipe } from "./pipes/map.pipe";
|
|
58
58
|
import { MaxPipe } from "./pipes/max.pipe";
|
|
59
59
|
import { MinPipe } from "./pipes/min.pipe";
|
|
60
|
+
import { PopPipe } from "./pipes/pop.pipe";
|
|
60
61
|
import { ReducePipe } from "./pipes/reduce.pipe";
|
|
61
62
|
import { RemapPipe } from "./pipes/remap.pipe";
|
|
62
63
|
import { ReplacePipe } from "./pipes/replace.pipe";
|
|
63
64
|
import { ReversePipe } from "./pipes/reverse.pipe";
|
|
64
65
|
import { RoundPipe } from "./pipes/round.pipe";
|
|
65
66
|
import { SafeHtmlPipe } from "./pipes/safe-html.pipe";
|
|
67
|
+
import { ShiftPipe } from "./pipes/shift.pipe";
|
|
68
|
+
import { SplitPipe } from "./pipes/split.pipe";
|
|
66
69
|
import { TranslatePipe } from "./pipes/translate.pipe";
|
|
67
70
|
import { ValuesPipe } from "./pipes/values.pipe";
|
|
68
71
|
import { DynamicTableComponent } from "./components/dynamic-table/dynamic-table.component";
|
|
@@ -86,12 +89,15 @@ export const pipes = [
|
|
|
86
89
|
MapPipe,
|
|
87
90
|
MaxPipe,
|
|
88
91
|
MinPipe,
|
|
92
|
+
PopPipe,
|
|
89
93
|
ReducePipe,
|
|
90
94
|
RemapPipe,
|
|
91
95
|
ReplacePipe,
|
|
92
96
|
ReversePipe,
|
|
93
97
|
RoundPipe,
|
|
94
98
|
SafeHtmlPipe,
|
|
99
|
+
ShiftPipe,
|
|
100
|
+
SplitPipe,
|
|
95
101
|
TranslatePipe,
|
|
96
102
|
ValuesPipe
|
|
97
103
|
];
|
|
@@ -235,4 +241,4 @@ NgxUtilsModule.decorators = [
|
|
|
235
241
|
providers: pipes
|
|
236
242
|
},] }
|
|
237
243
|
];
|
|
238
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXV0aWxzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9uZ3gtdXRpbHMvbmd4LXV0aWxzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsZUFBZSxFQUFFLFlBQVksRUFBVSxRQUFRLEVBQXVCLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM3RyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUUxRCxPQUFPLEVBQ0gsV0FBVyxFQUNYLFlBQVksRUFDWixjQUFjLEVBQUUsZ0JBQWdCLEVBQ2hDLFlBQVksRUFHWixnQkFBZ0IsRUFDaEIsZUFBZSxFQUFFLFlBQVksRUFDN0IsZUFBZSxFQUNsQixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUM3QyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDbEQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ2xELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzFELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDN0QsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3hELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLGtDQUFr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QkFDYixHQUFHLFVBQVU7b0JBQ2IsV0FBVztpQkFDZDtnQkFDRCxTQUFTLEVBQUUsS0FBSzthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QVBQX0lOSVRJQUxJWkVSLCBFcnJvckhhbmRsZXIsIEluamVjdCwgSW5qZWN0b3IsIE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0VWRU5UX01BTkFHRVJfUExVR0lOU30gZnJvbSBcIkBhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXJcIjtcclxuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHtGb3Jtc01vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7VXJsU2VyaWFsaXplcn0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQge0RldmljZURldGVjdG9yU2VydmljZX0gZnJvbSBcIm5neC1kZXZpY2UtZGV0ZWN0b3JcIjtcclxuXHJcbmltcG9ydCB7XHJcbiAgICBBUElfU0VSVklDRSxcclxuICAgIEFVVEhfU0VSVklDRSxcclxuICAgIENPTkZJR19TRVJWSUNFLCBHTE9CQUxfVEVNUExBVEVTLFxyXG4gICAgSUNPTl9TRVJWSUNFLFxyXG4gICAgSUNvbmZpZ1NlcnZpY2UsXHJcbiAgICBJTW9kdWxlQ29uZmlnLFxyXG4gICAgTEFOR1VBR0VfU0VSVklDRSxcclxuICAgIFBST01JU0VfU0VSVklDRSwgUk9PVF9FTEVNRU5ULFxyXG4gICAgVE9BU1RFUl9TRVJWSUNFXHJcbn0gZnJvbSBcIi4vY29tbW9uLXR5cGVzXCI7XHJcblxyXG5pbXBvcnQge0F1dGhHdWFyZH0gZnJvbSBcIi4vdXRpbHMvYXV0aC5ndWFyZFwiO1xyXG5pbXBvcnQge0FjbFNlcnZpY2V9IGZyb20gXCIuL3NlcnZpY2VzL2FjbC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7QXBpU2VydmljZX0gZnJvbSBcIi4vc2VydmljZXMvYXBpLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtTdGF0aWNBdXRoU2VydmljZX0gZnJvbSBcIi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7QmFzZUh0dHBDbGllbnR9IGZyb20gXCIuL3NlcnZpY2VzL2Jhc2UtaHR0cC5jbGllbnRcIjtcclxuaW1wb3J0IHtCYXNlSHR0cFNlcnZpY2V9IGZyb20gXCIuL3NlcnZpY2VzL2Jhc2UtaHR0cC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7Q29uZmlnU2VydmljZX0gZnJvbSBcIi4vc2VydmljZXMvY29uZmlnLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtFcnJvckhhbmRsZXJTZXJ2aWNlfSBmcm9tIFwiLi9zZXJ2aWNlcy9lcnJvci1oYW5kbGVyLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtFdmVudHNTZXJ2aWNlfSBmcm9tIFwiLi9zZXJ2aWNlcy9ldmVudHMuc2VydmljZVwiO1xyXG5pbXBvcnQge0Zvcm1hdHRlclNlcnZpY2V9IGZyb20gXCIuL3NlcnZpY2VzL2Zvcm1hdHRlci5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7R2xvYmFsVGVtcGxhdGVTZXJ2aWNlfSBmcm9tIFwiLi9zZXJ2aWNlcy9nbG9iYWwtdGVtcGxhdGUuc2VydmljZVwiO1xyXG5pbXBvcnQge0ljb25TZXJ2aWNlfSBmcm9tIFwiLi9zZXJ2aWNlcy9pY29uLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtMYW5ndWFnZVNlcnZpY2V9IGZyb20gXCIuL3NlcnZpY2VzL2xhbmd1YWdlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtQcm9taXNlU2VydmljZX0gZnJvbSBcIi4vc2VydmljZXMvcHJvbWlzZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7T3BlbkFwaVNlcnZpY2V9IGZyb20gXCIuL3NlcnZpY2VzL29wZW4tYXBpLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtTdGF0ZVNlcnZpY2V9IGZyb20gXCIuL3NlcnZpY2VzL3N0YXRlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtTdGF0aWNMYW5ndWFnZVNlcnZpY2V9IGZyb20gXCIuL3NlcnZpY2VzL3N0YXRpYy1sYW5ndWFnZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7U3RvcmFnZVNlcnZpY2V9IGZyb20gXCIuL3NlcnZpY2VzL3N0b3JhZ2Uuc2VydmljZVwiO1xyXG5pbXBvcnQge0NvbnNvbGVUb2FzdGVyU2VydmljZX0gZnJvbSBcIi4vc2VydmljZXMvdG9hc3Rlci5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNsYXRlZFVybFNlcmlhbGl6ZXJ9IGZyb20gXCIuL3NlcnZpY2VzL3RyYW5zbGF0ZWQtdXJsLnNlcmlhbGl6ZXJcIjtcclxuaW1wb3J0IHtVbml2ZXJzYWxTZXJ2aWNlfSBmcm9tIFwiLi9zZXJ2aWNlcy91bml2ZXJzYWwuc2VydmljZVwiO1xyXG5pbXBvcnQge1Jlc2l6ZUV2ZW50UGx1Z2lufSBmcm9tIFwiLi9wbHVnaW5zL3Jlc2l6ZS1ldmVudC5wbHVnaW5cIjtcclxuaW1wb3J0IHtTY3JvbGxFdmVudFBsdWdpbn0gZnJvbSBcIi4vcGx1Z2lucy9zY3JvbGwtZXZlbnQucGx1Z2luXCI7XHJcbmltcG9ydCB7QXN5bmNNZXRob2REaXJlY3RpdmV9IGZyb20gXCIuL2RpcmVjdGl2ZXMvYXN5bmMtbWV0aG9kLmRpcmVjdGl2ZVwiO1xyXG5pbXBvcnQge0JhY2tncm91bmREaXJlY3RpdmV9IGZyb20gXCIuL2RpcmVjdGl2ZXMvYmFja2dyb3VuZC5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHtEeW5hbWljVGFibGVUZW1wbGF0ZURpcmVjdGl2ZX0gZnJvbSBcIi4vZGlyZWN0aXZlcy9keW5hbWljLXRhYmxlLXRlbXBsYXRlLmRpcmVjdGl2ZVwiO1xyXG5pbXBvcnQge0dsb2JhbFRlbXBsYXRlRGlyZWN0aXZlfSBmcm9tIFwiLi9kaXJlY3RpdmVzL2dsb2JhbC10ZW1wbGF0ZS5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHtJY29uRGlyZWN0aXZlfSBmcm9tIFwiLi9kaXJlY3RpdmVzL2ljb24uZGlyZWN0aXZlXCI7XHJcbmltcG9ydCB7Tmd4VGVtcGxhdGVPdXRsZXREaXJlY3RpdmV9IGZyb20gXCIuL2RpcmVjdGl2ZXMvbmd4LXRlbXBsYXRlLW91dGxldC5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHtQYWdpbmF0aW9uRGlyZWN0aXZlfSBmcm9tIFwiLi9kaXJlY3RpdmVzL3BhZ2luYXRpb24uZGlyZWN0aXZlXCI7XHJcbmltcG9ydCB7UGFnaW5hdGlvbkl0ZW1EaXJlY3RpdmV9IGZyb20gXCIuL2RpcmVjdGl2ZXMvcGFnaW5hdGlvbi1pdGVtLmRpcmVjdGl2ZVwiO1xyXG5pbXBvcnQge1Jlc291cmNlSWZEaXJlY3RpdmV9IGZyb20gXCIuL2RpcmVjdGl2ZXMvcmVzb3VyY2UtaWYuZGlyZWN0aXZlXCI7XHJcbmltcG9ydCB7U3RpY2t5RGlyZWN0aXZlfSBmcm9tIFwiLi9kaXJlY3RpdmVzL3N0aWNreS5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHtTdGlja3lDbGFzc0RpcmVjdGl2ZX0gZnJvbSBcIi4vZGlyZWN0aXZlcy9zdGlja3ktY2xhc3MuZGlyZWN0aXZlXCI7XHJcbmltcG9ydCB7VW5vcmRlcmVkTGlzdEl0ZW1EaXJlY3RpdmV9IGZyb20gXCIuL2RpcmVjdGl2ZXMvdW5vcmRlcmVkLWxpc3QtaXRlbS5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHtVbm9yZGVyZWRMaXN0VGVtcGxhdGVEaXJlY3RpdmV9IGZyb20gXCIuL2RpcmVjdGl2ZXMvdW5vcmRlcmVkLWxpc3QtdGVtcGxhdGUuZGlyZWN0aXZlXCI7XHJcblxyXG5pbXBvcnQge0NodW5rUGlwZX0gZnJvbSBcIi4vcGlwZXMvY2h1bmsucGlwZVwiO1xyXG5pbXBvcnQge0VudHJpZXNQaXBlfSBmcm9tIFwiLi9waXBlcy9lbnRyaWVzLnBpcGVcIjtcclxuaW1wb3J0IHtFeHRyYUl0ZW1Qcm9wZXJ0aWVzUGlwZX0gZnJvbSBcIi4vcGlwZXMvZXh0cmEtaXRlbS1wcm9wZXJ0aWVzLnBpcGVcIjtcclxuaW1wb3J0IHtGaWx0ZXJQaXBlfSBmcm9tIFwiLi9waXBlcy9maWx0ZXIucGlwZVwiO1xyXG5pbXBvcnQge0ZpbmRQaXBlfSBmcm9tIFwiLi9waXBlcy9maW5kLnBpcGVcIjtcclxuaW1wb3J0IHtGb3JtYXROdW1iZXJQaXBlfSBmcm9tIFwiLi9waXBlcy9mb3JtYXQtbnVtYmVyLnBpcGVcIjtcclxuaW1wb3J0IHtHZXRPZmZzZXRQaXBlfSBmcm9tIFwiLi9waXBlcy9nZXQtb2Zmc2V0LnBpcGVcIjtcclxuaW1wb3J0IHtHZXRUeXBlUGlwZX0gZnJvbSBcIi4vcGlwZXMvZ2V0LXR5cGUucGlwZVwiO1xyXG5pbXBvcnQge0dsb2JhbFRlbXBsYXRlUGlwZX0gZnJvbSBcIi4vcGlwZXMvZ2xvYmFsLXRlbXBsYXRlLnBpcGVcIjtcclxuaW1wb3J0IHtHcm91cEJ5UGlwZX0gZnJvbSBcIi4vcGlwZXMvZ3JvdXAtYnkucGlwZVwiO1xyXG5pbXBvcnQge0lzVHlwZVBpcGV9IGZyb20gXCIuL3BpcGVzL2lzLXR5cGUucGlwZVwiO1xyXG5pbXBvcnQge0pvaW5QaXBlfSBmcm9tIFwiLi9waXBlcy9qb2luLnBpcGVcIjtcclxuaW1wb3J0IHtLZXlzUGlwZX0gZnJvbSBcIi4vcGlwZXMva2V5cy5waXBlXCI7XHJcbmltcG9ydCB7TWFwUGlwZX0gZnJvbSBcIi4vcGlwZXMvbWFwLnBpcGVcIjtcclxuaW1wb3J0IHtNYXhQaXBlfSBmcm9tIFwiLi9waXBlcy9tYXgucGlwZVwiO1xyXG5pbXBvcnQge01pblBpcGV9IGZyb20gXCIuL3BpcGVzL21pbi5waXBlXCI7XHJcbmltcG9ydCB7UmVkdWNlUGlwZX0gZnJvbSBcIi4vcGlwZXMvcmVkdWNlLnBpcGVcIjtcclxuaW1wb3J0IHtSZW1hcFBpcGV9IGZyb20gXCIuL3BpcGVzL3JlbWFwLnBpcGVcIjtcclxuaW1wb3J0IHtSZXBsYWNlUGlwZX0gZnJvbSBcIi4vcGlwZXMvcmVwbGFjZS5waXBlXCI7XHJcbmltcG9ydCB7UmV2ZXJzZVBpcGV9IGZyb20gXCIuL3BpcGVzL3JldmVyc2UucGlwZVwiO1xyXG5pbXBvcnQge1JvdW5kUGlwZX0gZnJvbSBcIi4vcGlwZXMvcm91bmQucGlwZVwiO1xyXG5pbXBvcnQge1NhZmVIdG1sUGlwZX0gZnJvbSBcIi4vcGlwZXMvc2FmZS1odG1sLnBpcGVcIjtcclxuaW1wb3J0IHtUcmFuc2xhdGVQaXBlfSBmcm9tIFwiLi9waXBlcy90cmFuc2xhdGUucGlwZVwiO1xyXG5pbXBvcnQge1ZhbHVlc1BpcGV9IGZyb20gXCIuL3BpcGVzL3ZhbHVlcy5waXBlXCI7XHJcblxyXG5pbXBvcnQge0R5bmFtaWNUYWJsZUNvbXBvbmVudH0gZnJvbSBcIi4vY29tcG9uZW50cy9keW5hbWljLXRhYmxlL2R5bmFtaWMtdGFibGUuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7UGFnaW5hdGlvbk1lbnVDb21wb25lbnR9IGZyb20gXCIuL2NvbXBvbmVudHMvcGFnaW5hdGlvbi1tZW51L3BhZ2luYXRpb24tbWVudS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtVbm9yZGVyZWRMaXN0Q29tcG9uZW50fSBmcm9tIFwiLi9jb21wb25lbnRzL3Vub3JkZXJlZC1saXN0L3Vub3JkZXJlZC1saXN0LmNvbXBvbmVudFwiO1xyXG5cclxuLy8gLS0tIFBpcGVzIC0tLVxyXG5leHBvcnQgY29uc3QgcGlwZXMgPSBbXHJcbiAgICBDaHVua1BpcGUsXHJcbiAgICBFbnRyaWVzUGlwZSxcclxuICAgIEV4dHJhSXRlbVByb3BlcnRpZXNQaXBlLFxyXG4gICAgRmlsdGVyUGlwZSxcclxuICAgIEZpbmRQaXBlLFxyXG4gICAgRm9ybWF0TnVtYmVyUGlwZSxcclxuICAgIEdldE9mZnNldFBpcGUsXHJcbiAgICBHZXRUeXBlUGlwZSxcclxuICAgIEdsb2JhbFRlbXBsYXRlUGlwZSxcclxuICAgIEdyb3VwQnlQaXBlLFxyXG4gICAgSXNUeXBlUGlwZSxcclxuICAgIEpvaW5QaXBlLFxyXG4gICAgS2V5c1BpcGUsXHJcbiAgICBNYXBQaXBlLFxyXG4gICAgTWF4UGlwZSxcclxuICAgIE1pblBpcGUsXHJcbiAgICBSZWR1Y2VQaXBlLFxyXG4gICAgUmVtYXBQaXBlLFxyXG4gICAgUmVwbGFjZVBpcGUsXHJcbiAgICBSZXZlcnNlUGlwZSxcclxuICAgIFJvdW5kUGlwZSxcclxuICAgIFNhZmVIdG1sUGlwZSxcclxuICAgIFRyYW5zbGF0ZVBpcGUsXHJcbiAgICBWYWx1ZXNQaXBlXHJcbl07XHJcblxyXG4vLyAtLS0gRGlyZWN0aXZlcyAtLS1cclxuZXhwb3J0IGNvbnN0IGRpcmVjdGl2ZXMgPSBbXHJcbiAgICBBc3luY01ldGhvZERpcmVjdGl2ZSxcclxuICAgIEJhY2tncm91bmREaXJlY3RpdmUsXHJcbiAgICBEeW5hbWljVGFibGVUZW1wbGF0ZURpcmVjdGl2ZSxcclxuICAgIEdsb2JhbFRlbXBsYXRlRGlyZWN0aXZlLFxyXG4gICAgSWNvbkRpcmVjdGl2ZSxcclxuICAgIE5neFRlbXBsYXRlT3V0bGV0RGlyZWN0aXZlLFxyXG4gICAgUGFnaW5hdGlvbkRpcmVjdGl2ZSxcclxuICAgIFBhZ2luYXRpb25JdGVtRGlyZWN0aXZlLFxyXG4gICAgUmVzb3VyY2VJZkRpcmVjdGl2ZSxcclxuICAgIFN0aWNreURpcmVjdGl2ZSxcclxuICAgIFN0aWNreUNsYXNzRGlyZWN0aXZlLFxyXG4gICAgVW5vcmRlcmVkTGlzdEl0ZW1EaXJlY3RpdmUsXHJcbiAgICBVbm9yZGVyZWRMaXN0VGVtcGxhdGVEaXJlY3RpdmVcclxuXTtcclxuXHJcbi8vIC0tLSBDb21wb25lbnRzIC0tLVxyXG5leHBvcnQgY29uc3QgY29tcG9uZW50cyA9IFtcclxuICAgIER5bmFtaWNUYWJsZUNvbXBvbmVudCxcclxuICAgIFBhZ2luYXRpb25NZW51Q29tcG9uZW50LFxyXG4gICAgVW5vcmRlcmVkTGlzdENvbXBvbmVudFxyXG5dO1xyXG5cclxuZXhwb3J0IGNvbnN0IHByb3ZpZGVycyA9IFtcclxuICAgIC4uLnBpcGVzLFxyXG4gICAgQmFzZUh0dHBDbGllbnQsXHJcbiAgICBCYXNlSHR0cFNlcnZpY2UsXHJcbiAgICBBdXRoR3VhcmQsXHJcbiAgICBBY2xTZXJ2aWNlLFxyXG4gICAgQXBpU2VydmljZSxcclxuICAgIFN0YXRpY0F1dGhTZXJ2aWNlLFxyXG4gICAgQ29uZmlnU2VydmljZSxcclxuICAgIEVycm9ySGFuZGxlclNlcnZpY2UsXHJcbiAgICBFdmVudHNTZXJ2aWNlLFxyXG4gICAgRm9ybWF0dGVyU2VydmljZSxcclxuICAgIEdsb2JhbFRlbXBsYXRlU2VydmljZSxcclxuICAgIEljb25TZXJ2aWNlLFxyXG4gICAgTGFuZ3VhZ2VTZXJ2aWNlLFxyXG4gICAgT3BlbkFwaVNlcnZpY2UsXHJcbiAgICBQcm9taXNlU2VydmljZSxcclxuICAgIFN0YXRlU2VydmljZSxcclxuICAgIFN0YXRpY0xhbmd1YWdlU2VydmljZSxcclxuICAgIFN0b3JhZ2VTZXJ2aWNlLFxyXG4gICAgQ29uc29sZVRvYXN0ZXJTZXJ2aWNlLFxyXG4gICAgVHJhbnNsYXRlZFVybFNlcmlhbGl6ZXIsXHJcbiAgICBVbml2ZXJzYWxTZXJ2aWNlLFxyXG4gICAgRGV2aWNlRGV0ZWN0b3JTZXJ2aWNlLFxyXG4gICAge1xyXG4gICAgICAgIHByb3ZpZGU6IEVWRU5UX01BTkFHRVJfUExVR0lOUyxcclxuICAgICAgICB1c2VDbGFzczogUmVzaXplRXZlbnRQbHVnaW4sXHJcbiAgICAgICAgbXVsdGk6IHRydWVcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgcHJvdmlkZTogRVZFTlRfTUFOQUdFUl9QTFVHSU5TLFxyXG4gICAgICAgIHVzZUNsYXNzOiBTY3JvbGxFdmVudFBsdWdpbixcclxuICAgICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBwcm92aWRlOiBVcmxTZXJpYWxpemVyLFxyXG4gICAgICAgIHVzZUV4aXN0aW5nOiBUcmFuc2xhdGVkVXJsU2VyaWFsaXplclxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBwcm92aWRlOiBFcnJvckhhbmRsZXIsXHJcbiAgICAgICAgdXNlRXhpc3Rpbmc6IEVycm9ySGFuZGxlclNlcnZpY2VcclxuICAgIH1cclxuXHJcbl07XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZENvbmZpZyhjb25maWc6IElDb25maWdTZXJ2aWNlKTogYW55IHtcclxuICAgIHJldHVybiBjb25maWcubG9hZDtcclxufVxyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIGRlY2xhcmF0aW9uczogW1xyXG4gICAgICAgIC4uLnBpcGVzLFxyXG4gICAgICAgIC4uLmRpcmVjdGl2ZXMsXHJcbiAgICAgICAgLi4uY29tcG9uZW50c1xyXG4gICAgXSxcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBDb21tb25Nb2R1bGUsXHJcbiAgICAgICAgRm9ybXNNb2R1bGVcclxuICAgIF0sXHJcbiAgICBleHBvcnRzOiBbXHJcbiAgICAgICAgLi4ucGlwZXMsXHJcbiAgICAgICAgLi4uZGlyZWN0aXZlcyxcclxuICAgICAgICAuLi5jb21wb25lbnRzLFxyXG4gICAgICAgIEZvcm1zTW9kdWxlXHJcbiAgICBdLFxyXG4gICAgcHJvdmlkZXJzOiBwaXBlc1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTmd4VXRpbHNNb2R1bGUge1xyXG4gICAgc3RhdGljIGZvclJvb3QoY29uZmlnPzogSU1vZHVsZUNvbmZpZyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8Tmd4VXRpbHNNb2R1bGU+IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBuZ01vZHVsZTogTmd4VXRpbHNNb2R1bGUsXHJcbiAgICAgICAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgICAgICAgICAgLi4ucHJvdmlkZXJzLFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IEFQSV9TRVJWSUNFLFxyXG4gICAgICAgICAgICAgICAgICAgIHVzZUV4aXN0aW5nOiAoIWNvbmZpZyA/IG51bGwgOiBjb25maWcuYXBpU2VydmljZSkgfHwgQXBpU2VydmljZVxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBBVVRIX1NFUlZJQ0UsXHJcbiAgICAgICAgICAgICAgICAgICAgdXNlRXhpc3Rpbmc6ICghY29uZmlnID8gbnVsbCA6IGNvbmZpZy5hdXRoU2VydmljZSkgfHwgU3RhdGljQXV0aFNlcnZpY2VcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogSUNPTl9TRVJWSUNFLFxyXG4gICAgICAgICAgICAgICAgICAgIHVzZUV4aXN0aW5nOiAoIWNvbmZpZyA/IG51bGwgOiBjb25maWcuaWNvblNlcnZpY2UpIHx8IEljb25TZXJ2aWNlXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IExBTkdVQUdFX1NFUlZJQ0UsXHJcbiAgICAgICAgICAgICAgICAgICAgdXNlRXhpc3Rpbmc6ICghY29uZmlnID8gbnVsbCA6IGNvbmZpZy5sYW5ndWFnZVNlcnZpY2UpIHx8IFN0YXRpY0xhbmd1YWdlU2VydmljZVxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBUT0FTVEVSX1NFUlZJQ0UsXHJcbiAgICAgICAgICAgICAgICAgICAgdXNlRXhpc3Rpbmc6ICghY29uZmlnID8gbnVsbCA6IGNvbmZpZy50b2FzdGVyU2VydmljZSkgfHwgQ29uc29sZVRvYXN0ZXJTZXJ2aWNlXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IFBST01JU0VfU0VSVklDRSxcclxuICAgICAgICAgICAgICAgICAgICB1c2VFeGlzdGluZzogKCFjb25maWcgPyBudWxsIDogY29uZmlnLnByb21pc2VTZXJ2aWNlKSB8fCBQcm9taXNlU2VydmljZVxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBDT05GSUdfU0VSVklDRSxcclxuICAgICAgICAgICAgICAgICAgICB1c2VFeGlzdGluZzogKCFjb25maWcgPyBudWxsIDogY29uZmlnLmNvbmZpZ1NlcnZpY2UpIHx8IENvbmZpZ1NlcnZpY2VcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogR0xPQkFMX1RFTVBMQVRFUyxcclxuICAgICAgICAgICAgICAgICAgICB1c2VFeGlzdGluZzogKCFjb25maWcgPyBudWxsIDogY29uZmlnLmdsb2JhbFRlbXBsYXRlcykgfHwgR2xvYmFsVGVtcGxhdGVTZXJ2aWNlXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IFJPT1RfRUxFTUVOVCxcclxuICAgICAgICAgICAgICAgICAgICB1c2VWYWx1ZTogbnVsbFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXHJcbiAgICAgICAgICAgICAgICAgICAgdXNlRmFjdG9yeTogKCFjb25maWcgPyBudWxsIDogY29uZmlnLmluaXRpYWxpemVBcHApIHx8IGxvYWRDb25maWcsXHJcbiAgICAgICAgICAgICAgICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgICAgZGVwczogWyghY29uZmlnID8gbnVsbCA6IGNvbmZpZy5pbml0aWFsaXplQXBwKSA/IEluamVjdG9yIDogQ09ORklHX1NFUlZJQ0VdXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIF1cclxuICAgICAgICB9O1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
244
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXV0aWxzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9uZ3gtdXRpbHMvbmd4LXV0aWxzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsZUFBZSxFQUFFLFlBQVksRUFBVSxRQUFRLEVBQXVCLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM3RyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUUxRCxPQUFPLEVBQ0gsV0FBVyxFQUNYLFlBQVksRUFDWixjQUFjLEVBQUUsZ0JBQWdCLEVBQ2hDLFlBQVksRUFHWixnQkFBZ0IsRUFDaEIsZUFBZSxFQUFFLFlBQVksRUFDN0IsZUFBZSxFQUNsQixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUM3QyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDbEQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ2xELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzFELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDN0QsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3hELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLGtDQUFr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LFlBQVksRUFBRTtvQkFDVixHQUFHLEtBQUs7b0JBQ1IsR0FBRyxVQUFVO29CQUNiLEdBQUcsVUFBVTtpQkFDaEI7Z0JBQ0QsT0FBTyxFQUFFO29CQUNMLFlBQVk7b0JBQ1osV0FBVztpQkFDZDtnQkFDRCxPQUFPLEVBQUU7b0JBQ0wsR0FBRyxLQUFLO29CQUNSLEdBQUcsVUFBVTtvQkFDYixHQUFHLFVBQVU7b0JBQ2IsV0FBVztpQkFDZDtnQkFDRCxTQUFTLEVBQUUsS0FBSzthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QVBQX0lOSVRJQUxJWkVSLCBFcnJvckhhbmRsZXIsIEluamVjdCwgSW5qZWN0b3IsIE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0VWRU5UX01BTkFHRVJfUExVR0lOU30gZnJvbSBcIkBhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXJcIjtcclxuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHtGb3Jtc01vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7VXJsU2VyaWFsaXplcn0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQge0RldmljZURldGVjdG9yU2VydmljZX0gZnJvbSBcIm5neC1kZXZpY2UtZGV0ZWN0b3JcIjtcclxuXHJcbmltcG9ydCB7XHJcbiAgICBBUElfU0VSVklDRSxcclxuICAgIEFVVEhfU0VSVklDRSxcclxuICAgIENPTkZJR19TRVJWSUNFLCBHTE9CQUxfVEVNUExBVEVTLFxyXG4gICAgSUNPTl9TRVJWSUNFLFxyXG4gICAgSUNvbmZpZ1NlcnZpY2UsXHJcbiAgICBJTW9kdWxlQ29uZmlnLFxyXG4gICAgTEFOR1VBR0VfU0VSVklDRSxcclxuICAgIFBST01JU0VfU0VSVklDRSwgUk9PVF9FTEVNRU5ULFxyXG4gICAgVE9BU1RFUl9TRVJWSUNFXHJcbn0gZnJvbSBcIi4vY29tbW9uLXR5cGVzXCI7XHJcblxyXG5pbXBvcnQge0F1dGhHdWFyZH0gZnJvbSBcIi4vdXRpbHMvYXV0aC5ndWFyZFwiO1xyXG5pbXBvcnQge0FjbFNlcnZpY2V9IGZyb20gXCIuL3NlcnZpY2VzL2FjbC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7QXBpU2VydmljZX0gZnJvbSBcIi4vc2VydmljZXMvYXBpLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtTdGF0aWNBdXRoU2VydmljZX0gZnJvbSBcIi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7QmFzZUh0dHBDbGllbnR9IGZyb20gXCIuL3NlcnZpY2VzL2Jhc2UtaHR0cC5jbGllbnRcIjtcclxuaW1wb3J0IHtCYXNlSHR0cFNlcnZpY2V9IGZyb20gXCIuL3NlcnZpY2VzL2Jhc2UtaHR0cC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7Q29uZmlnU2VydmljZX0gZnJvbSBcIi4vc2VydmljZXMvY29uZmlnLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtFcnJvckhhbmRsZXJTZXJ2aWNlfSBmcm9tIFwiLi9zZXJ2aWNlcy9lcnJvci1oYW5kbGVyLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtFdmVudHNTZXJ2aWNlfSBmcm9tIFwiLi9zZXJ2aWNlcy9ldmVudHMuc2VydmljZVwiO1xyXG5pbXBvcnQge0Zvcm1hdHRlclNlcnZpY2V9IGZyb20gXCIuL3NlcnZpY2VzL2Zvcm1hdHRlci5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7R2xvYmFsVGVtcGxhdGVTZXJ2aWNlfSBmcm9tIFwiLi9zZXJ2aWNlcy9nbG9iYWwtdGVtcGxhdGUuc2VydmljZVwiO1xyXG5pbXBvcnQge0ljb25TZXJ2aWNlfSBmcm9tIFwiLi9zZXJ2aWNlcy9pY29uLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtMYW5ndWFnZVNlcnZpY2V9IGZyb20gXCIuL3NlcnZpY2VzL2xhbmd1YWdlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtQcm9taXNlU2VydmljZX0gZnJvbSBcIi4vc2VydmljZXMvcHJvbWlzZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7T3BlbkFwaVNlcnZpY2V9IGZyb20gXCIuL3NlcnZpY2VzL29wZW4tYXBpLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtTdGF0ZVNlcnZpY2V9IGZyb20gXCIuL3NlcnZpY2VzL3N0YXRlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtTdGF0aWNMYW5ndWFnZVNlcnZpY2V9IGZyb20gXCIuL3NlcnZpY2VzL3N0YXRpYy1sYW5ndWFnZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7U3RvcmFnZVNlcnZpY2V9IGZyb20gXCIuL3NlcnZpY2VzL3N0b3JhZ2Uuc2VydmljZVwiO1xyXG5pbXBvcnQge0NvbnNvbGVUb2FzdGVyU2VydmljZX0gZnJvbSBcIi4vc2VydmljZXMvdG9hc3Rlci5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNsYXRlZFVybFNlcmlhbGl6ZXJ9IGZyb20gXCIuL3NlcnZpY2VzL3RyYW5zbGF0ZWQtdXJsLnNlcmlhbGl6ZXJcIjtcclxuaW1wb3J0IHtVbml2ZXJzYWxTZXJ2aWNlfSBmcm9tIFwiLi9zZXJ2aWNlcy91bml2ZXJzYWwuc2VydmljZVwiO1xyXG5pbXBvcnQge1Jlc2l6ZUV2ZW50UGx1Z2lufSBmcm9tIFwiLi9wbHVnaW5zL3Jlc2l6ZS1ldmVudC5wbHVnaW5cIjtcclxuaW1wb3J0IHtTY3JvbGxFdmVudFBsdWdpbn0gZnJvbSBcIi4vcGx1Z2lucy9zY3JvbGwtZXZlbnQucGx1Z2luXCI7XHJcbmltcG9ydCB7QXN5bmNNZXRob2REaXJlY3RpdmV9IGZyb20gXCIuL2RpcmVjdGl2ZXMvYXN5bmMtbWV0aG9kLmRpcmVjdGl2ZVwiO1xyXG5pbXBvcnQge0JhY2tncm91bmREaXJlY3RpdmV9IGZyb20gXCIuL2RpcmVjdGl2ZXMvYmFja2dyb3VuZC5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHtEeW5hbWljVGFibGVUZW1wbGF0ZURpcmVjdGl2ZX0gZnJvbSBcIi4vZGlyZWN0aXZlcy9keW5hbWljLXRhYmxlLXRlbXBsYXRlLmRpcmVjdGl2ZVwiO1xyXG5pbXBvcnQge0dsb2JhbFRlbXBsYXRlRGlyZWN0aXZlfSBmcm9tIFwiLi9kaXJlY3RpdmVzL2dsb2JhbC10ZW1wbGF0ZS5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHtJY29uRGlyZWN0aXZlfSBmcm9tIFwiLi9kaXJlY3RpdmVzL2ljb24uZGlyZWN0aXZlXCI7XHJcbmltcG9ydCB7Tmd4VGVtcGxhdGVPdXRsZXREaXJlY3RpdmV9IGZyb20gXCIuL2RpcmVjdGl2ZXMvbmd4LXRlbXBsYXRlLW91dGxldC5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHtQYWdpbmF0aW9uRGlyZWN0aXZlfSBmcm9tIFwiLi9kaXJlY3RpdmVzL3BhZ2luYXRpb24uZGlyZWN0aXZlXCI7XHJcbmltcG9ydCB7UGFnaW5hdGlvbkl0ZW1EaXJlY3RpdmV9IGZyb20gXCIuL2RpcmVjdGl2ZXMvcGFnaW5hdGlvbi1pdGVtLmRpcmVjdGl2ZVwiO1xyXG5pbXBvcnQge1Jlc291cmNlSWZEaXJlY3RpdmV9IGZyb20gXCIuL2RpcmVjdGl2ZXMvcmVzb3VyY2UtaWYuZGlyZWN0aXZlXCI7XHJcbmltcG9ydCB7U3RpY2t5RGlyZWN0aXZlfSBmcm9tIFwiLi9kaXJlY3RpdmVzL3N0aWNreS5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHtTdGlja3lDbGFzc0RpcmVjdGl2ZX0gZnJvbSBcIi4vZGlyZWN0aXZlcy9zdGlja3ktY2xhc3MuZGlyZWN0aXZlXCI7XHJcbmltcG9ydCB7VW5vcmRlcmVkTGlzdEl0ZW1EaXJlY3RpdmV9IGZyb20gXCIuL2RpcmVjdGl2ZXMvdW5vcmRlcmVkLWxpc3QtaXRlbS5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHtVbm9yZGVyZWRMaXN0VGVtcGxhdGVEaXJlY3RpdmV9IGZyb20gXCIuL2RpcmVjdGl2ZXMvdW5vcmRlcmVkLWxpc3QtdGVtcGxhdGUuZGlyZWN0aXZlXCI7XHJcblxyXG5pbXBvcnQge0NodW5rUGlwZX0gZnJvbSBcIi4vcGlwZXMvY2h1bmsucGlwZVwiO1xyXG5pbXBvcnQge0VudHJpZXNQaXBlfSBmcm9tIFwiLi9waXBlcy9lbnRyaWVzLnBpcGVcIjtcclxuaW1wb3J0IHtFeHRyYUl0ZW1Qcm9wZXJ0aWVzUGlwZX0gZnJvbSBcIi4vcGlwZXMvZXh0cmEtaXRlbS1wcm9wZXJ0aWVzLnBpcGVcIjtcclxuaW1wb3J0IHtGaWx0ZXJQaXBlfSBmcm9tIFwiLi9waXBlcy9maWx0ZXIucGlwZVwiO1xyXG5pbXBvcnQge0ZpbmRQaXBlfSBmcm9tIFwiLi9waXBlcy9maW5kLnBpcGVcIjtcclxuaW1wb3J0IHtGb3JtYXROdW1iZXJQaXBlfSBmcm9tIFwiLi9waXBlcy9mb3JtYXQtbnVtYmVyLnBpcGVcIjtcclxuaW1wb3J0IHtHZXRPZmZzZXRQaXBlfSBmcm9tIFwiLi9waXBlcy9nZXQtb2Zmc2V0LnBpcGVcIjtcclxuaW1wb3J0IHtHZXRUeXBlUGlwZX0gZnJvbSBcIi4vcGlwZXMvZ2V0LXR5cGUucGlwZVwiO1xyXG5pbXBvcnQge0dsb2JhbFRlbXBsYXRlUGlwZX0gZnJvbSBcIi4vcGlwZXMvZ2xvYmFsLXRlbXBsYXRlLnBpcGVcIjtcclxuaW1wb3J0IHtHcm91cEJ5UGlwZX0gZnJvbSBcIi4vcGlwZXMvZ3JvdXAtYnkucGlwZVwiO1xyXG5pbXBvcnQge0lzVHlwZVBpcGV9IGZyb20gXCIuL3BpcGVzL2lzLXR5cGUucGlwZVwiO1xyXG5pbXBvcnQge0pvaW5QaXBlfSBmcm9tIFwiLi9waXBlcy9qb2luLnBpcGVcIjtcclxuaW1wb3J0IHtLZXlzUGlwZX0gZnJvbSBcIi4vcGlwZXMva2V5cy5waXBlXCI7XHJcbmltcG9ydCB7TWFwUGlwZX0gZnJvbSBcIi4vcGlwZXMvbWFwLnBpcGVcIjtcclxuaW1wb3J0IHtNYXhQaXBlfSBmcm9tIFwiLi9waXBlcy9tYXgucGlwZVwiO1xyXG5pbXBvcnQge01pblBpcGV9IGZyb20gXCIuL3BpcGVzL21pbi5waXBlXCI7XHJcbmltcG9ydCB7UG9wUGlwZX0gZnJvbSBcIi4vcGlwZXMvcG9wLnBpcGVcIjtcclxuaW1wb3J0IHtSZWR1Y2VQaXBlfSBmcm9tIFwiLi9waXBlcy9yZWR1Y2UucGlwZVwiO1xyXG5pbXBvcnQge1JlbWFwUGlwZX0gZnJvbSBcIi4vcGlwZXMvcmVtYXAucGlwZVwiO1xyXG5pbXBvcnQge1JlcGxhY2VQaXBlfSBmcm9tIFwiLi9waXBlcy9yZXBsYWNlLnBpcGVcIjtcclxuaW1wb3J0IHtSZXZlcnNlUGlwZX0gZnJvbSBcIi4vcGlwZXMvcmV2ZXJzZS5waXBlXCI7XHJcbmltcG9ydCB7Um91bmRQaXBlfSBmcm9tIFwiLi9waXBlcy9yb3VuZC5waXBlXCI7XHJcbmltcG9ydCB7U2FmZUh0bWxQaXBlfSBmcm9tIFwiLi9waXBlcy9zYWZlLWh0bWwucGlwZVwiO1xyXG5pbXBvcnQge1NoaWZ0UGlwZX0gZnJvbSBcIi4vcGlwZXMvc2hpZnQucGlwZVwiO1xyXG5pbXBvcnQge1NwbGl0UGlwZX0gZnJvbSBcIi4vcGlwZXMvc3BsaXQucGlwZVwiO1xyXG5pbXBvcnQge1RyYW5zbGF0ZVBpcGV9IGZyb20gXCIuL3BpcGVzL3RyYW5zbGF0ZS5waXBlXCI7XHJcbmltcG9ydCB7VmFsdWVzUGlwZX0gZnJvbSBcIi4vcGlwZXMvdmFsdWVzLnBpcGVcIjtcclxuXHJcbmltcG9ydCB7RHluYW1pY1RhYmxlQ29tcG9uZW50fSBmcm9tIFwiLi9jb21wb25lbnRzL2R5bmFtaWMtdGFibGUvZHluYW1pYy10YWJsZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtQYWdpbmF0aW9uTWVudUNvbXBvbmVudH0gZnJvbSBcIi4vY29tcG9uZW50cy9wYWdpbmF0aW9uLW1lbnUvcGFnaW5hdGlvbi1tZW51LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge1Vub3JkZXJlZExpc3RDb21wb25lbnR9IGZyb20gXCIuL2NvbXBvbmVudHMvdW5vcmRlcmVkLWxpc3QvdW5vcmRlcmVkLWxpc3QuY29tcG9uZW50XCI7XHJcblxyXG4vLyAtLS0gUGlwZXMgLS0tXHJcbmV4cG9ydCBjb25zdCBwaXBlcyA9IFtcclxuICAgIENodW5rUGlwZSxcclxuICAgIEVudHJpZXNQaXBlLFxyXG4gICAgRXh0cmFJdGVtUHJvcGVydGllc1BpcGUsXHJcbiAgICBGaWx0ZXJQaXBlLFxyXG4gICAgRmluZFBpcGUsXHJcbiAgICBGb3JtYXROdW1iZXJQaXBlLFxyXG4gICAgR2V0T2Zmc2V0UGlwZSxcclxuICAgIEdldFR5cGVQaXBlLFxyXG4gICAgR2xvYmFsVGVtcGxhdGVQaXBlLFxyXG4gICAgR3JvdXBCeVBpcGUsXHJcbiAgICBJc1R5cGVQaXBlLFxyXG4gICAgSm9pblBpcGUsXHJcbiAgICBLZXlzUGlwZSxcclxuICAgIE1hcFBpcGUsXHJcbiAgICBNYXhQaXBlLFxyXG4gICAgTWluUGlwZSxcclxuICAgIFBvcFBpcGUsXHJcbiAgICBSZWR1Y2VQaXBlLFxyXG4gICAgUmVtYXBQaXBlLFxyXG4gICAgUmVwbGFjZVBpcGUsXHJcbiAgICBSZXZlcnNlUGlwZSxcclxuICAgIFJvdW5kUGlwZSxcclxuICAgIFNhZmVIdG1sUGlwZSxcclxuICAgIFNoaWZ0UGlwZSxcclxuICAgIFNwbGl0UGlwZSxcclxuICAgIFRyYW5zbGF0ZVBpcGUsXHJcbiAgICBWYWx1ZXNQaXBlXHJcbl07XHJcblxyXG4vLyAtLS0gRGlyZWN0aXZlcyAtLS1cclxuZXhwb3J0IGNvbnN0IGRpcmVjdGl2ZXMgPSBbXHJcbiAgICBBc3luY01ldGhvZERpcmVjdGl2ZSxcclxuICAgIEJhY2tncm91bmREaXJlY3RpdmUsXHJcbiAgICBEeW5hbWljVGFibGVUZW1wbGF0ZURpcmVjdGl2ZSxcclxuICAgIEdsb2JhbFRlbXBsYXRlRGlyZWN0aXZlLFxyXG4gICAgSWNvbkRpcmVjdGl2ZSxcclxuICAgIE5neFRlbXBsYXRlT3V0bGV0RGlyZWN0aXZlLFxyXG4gICAgUGFnaW5hdGlvbkRpcmVjdGl2ZSxcclxuICAgIFBhZ2luYXRpb25JdGVtRGlyZWN0aXZlLFxyXG4gICAgUmVzb3VyY2VJZkRpcmVjdGl2ZSxcclxuICAgIFN0aWNreURpcmVjdGl2ZSxcclxuICAgIFN0aWNreUNsYXNzRGlyZWN0aXZlLFxyXG4gICAgVW5vcmRlcmVkTGlzdEl0ZW1EaXJlY3RpdmUsXHJcbiAgICBVbm9yZGVyZWRMaXN0VGVtcGxhdGVEaXJlY3RpdmVcclxuXTtcclxuXHJcbi8vIC0tLSBDb21wb25lbnRzIC0tLVxyXG5leHBvcnQgY29uc3QgY29tcG9uZW50cyA9IFtcclxuICAgIER5bmFtaWNUYWJsZUNvbXBvbmVudCxcclxuICAgIFBhZ2luYXRpb25NZW51Q29tcG9uZW50LFxyXG4gICAgVW5vcmRlcmVkTGlzdENvbXBvbmVudFxyXG5dO1xyXG5cclxuZXhwb3J0IGNvbnN0IHByb3ZpZGVycyA9IFtcclxuICAgIC4uLnBpcGVzLFxyXG4gICAgQmFzZUh0dHBDbGllbnQsXHJcbiAgICBCYXNlSHR0cFNlcnZpY2UsXHJcbiAgICBBdXRoR3VhcmQsXHJcbiAgICBBY2xTZXJ2aWNlLFxyXG4gICAgQXBpU2VydmljZSxcclxuICAgIFN0YXRpY0F1dGhTZXJ2aWNlLFxyXG4gICAgQ29uZmlnU2VydmljZSxcclxuICAgIEVycm9ySGFuZGxlclNlcnZpY2UsXHJcbiAgICBFdmVudHNTZXJ2aWNlLFxyXG4gICAgRm9ybWF0dGVyU2VydmljZSxcclxuICAgIEdsb2JhbFRlbXBsYXRlU2VydmljZSxcclxuICAgIEljb25TZXJ2aWNlLFxyXG4gICAgTGFuZ3VhZ2VTZXJ2aWNlLFxyXG4gICAgT3BlbkFwaVNlcnZpY2UsXHJcbiAgICBQcm9taXNlU2VydmljZSxcclxuICAgIFN0YXRlU2VydmljZSxcclxuICAgIFN0YXRpY0xhbmd1YWdlU2VydmljZSxcclxuICAgIFN0b3JhZ2VTZXJ2aWNlLFxyXG4gICAgQ29uc29sZVRvYXN0ZXJTZXJ2aWNlLFxyXG4gICAgVHJhbnNsYXRlZFVybFNlcmlhbGl6ZXIsXHJcbiAgICBVbml2ZXJzYWxTZXJ2aWNlLFxyXG4gICAgRGV2aWNlRGV0ZWN0b3JTZXJ2aWNlLFxyXG4gICAge1xyXG4gICAgICAgIHByb3ZpZGU6IEVWRU5UX01BTkFHRVJfUExVR0lOUyxcclxuICAgICAgICB1c2VDbGFzczogUmVzaXplRXZlbnRQbHVnaW4sXHJcbiAgICAgICAgbXVsdGk6IHRydWVcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgcHJvdmlkZTogRVZFTlRfTUFOQUdFUl9QTFVHSU5TLFxyXG4gICAgICAgIHVzZUNsYXNzOiBTY3JvbGxFdmVudFBsdWdpbixcclxuICAgICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBwcm92aWRlOiBVcmxTZXJpYWxpemVyLFxyXG4gICAgICAgIHVzZUV4aXN0aW5nOiBUcmFuc2xhdGVkVXJsU2VyaWFsaXplclxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBwcm92aWRlOiBFcnJvckhhbmRsZXIsXHJcbiAgICAgICAgdXNlRXhpc3Rpbmc6IEVycm9ySGFuZGxlclNlcnZpY2VcclxuICAgIH1cclxuXHJcbl07XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZENvbmZpZyhjb25maWc6IElDb25maWdTZXJ2aWNlKTogYW55IHtcclxuICAgIHJldHVybiBjb25maWcubG9hZDtcclxufVxyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIGRlY2xhcmF0aW9uczogW1xyXG4gICAgICAgIC4uLnBpcGVzLFxyXG4gICAgICAgIC4uLmRpcmVjdGl2ZXMsXHJcbiAgICAgICAgLi4uY29tcG9uZW50c1xyXG4gICAgXSxcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBDb21tb25Nb2R1bGUsXHJcbiAgICAgICAgRm9ybXNNb2R1bGVcclxuICAgIF0sXHJcbiAgICBleHBvcnRzOiBbXHJcbiAgICAgICAgLi4ucGlwZXMsXHJcbiAgICAgICAgLi4uZGlyZWN0aXZlcyxcclxuICAgICAgICAuLi5jb21wb25lbnRzLFxyXG4gICAgICAgIEZvcm1zTW9kdWxlXHJcbiAgICBdLFxyXG4gICAgcHJvdmlkZXJzOiBwaXBlc1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTmd4VXRpbHNNb2R1bGUge1xyXG4gICAgc3RhdGljIGZvclJvb3QoY29uZmlnPzogSU1vZHVsZUNvbmZpZyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8Tmd4VXRpbHNNb2R1bGU+IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBuZ01vZHVsZTogTmd4VXRpbHNNb2R1bGUsXHJcbiAgICAgICAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgICAgICAgICAgLi4ucHJvdmlkZXJzLFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IEFQSV9TRVJWSUNFLFxyXG4gICAgICAgICAgICAgICAgICAgIHVzZUV4aXN0aW5nOiAoIWNvbmZpZyA/IG51bGwgOiBjb25maWcuYXBpU2VydmljZSkgfHwgQXBpU2VydmljZVxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBBVVRIX1NFUlZJQ0UsXHJcbiAgICAgICAgICAgICAgICAgICAgdXNlRXhpc3Rpbmc6ICghY29uZmlnID8gbnVsbCA6IGNvbmZpZy5hdXRoU2VydmljZSkgfHwgU3RhdGljQXV0aFNlcnZpY2VcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogSUNPTl9TRVJWSUNFLFxyXG4gICAgICAgICAgICAgICAgICAgIHVzZUV4aXN0aW5nOiAoIWNvbmZpZyA/IG51bGwgOiBjb25maWcuaWNvblNlcnZpY2UpIHx8IEljb25TZXJ2aWNlXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IExBTkdVQUdFX1NFUlZJQ0UsXHJcbiAgICAgICAgICAgICAgICAgICAgdXNlRXhpc3Rpbmc6ICghY29uZmlnID8gbnVsbCA6IGNvbmZpZy5sYW5ndWFnZVNlcnZpY2UpIHx8IFN0YXRpY0xhbmd1YWdlU2VydmljZVxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBUT0FTVEVSX1NFUlZJQ0UsXHJcbiAgICAgICAgICAgICAgICAgICAgdXNlRXhpc3Rpbmc6ICghY29uZmlnID8gbnVsbCA6IGNvbmZpZy50b2FzdGVyU2VydmljZSkgfHwgQ29uc29sZVRvYXN0ZXJTZXJ2aWNlXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IFBST01JU0VfU0VSVklDRSxcclxuICAgICAgICAgICAgICAgICAgICB1c2VFeGlzdGluZzogKCFjb25maWcgPyBudWxsIDogY29uZmlnLnByb21pc2VTZXJ2aWNlKSB8fCBQcm9taXNlU2VydmljZVxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBDT05GSUdfU0VSVklDRSxcclxuICAgICAgICAgICAgICAgICAgICB1c2VFeGlzdGluZzogKCFjb25maWcgPyBudWxsIDogY29uZmlnLmNvbmZpZ1NlcnZpY2UpIHx8IENvbmZpZ1NlcnZpY2VcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogR0xPQkFMX1RFTVBMQVRFUyxcclxuICAgICAgICAgICAgICAgICAgICB1c2VFeGlzdGluZzogKCFjb25maWcgPyBudWxsIDogY29uZmlnLmdsb2JhbFRlbXBsYXRlcykgfHwgR2xvYmFsVGVtcGxhdGVTZXJ2aWNlXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IFJPT1RfRUxFTUVOVCxcclxuICAgICAgICAgICAgICAgICAgICB1c2VWYWx1ZTogbnVsbFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXHJcbiAgICAgICAgICAgICAgICAgICAgdXNlRmFjdG9yeTogKCFjb25maWcgPyBudWxsIDogY29uZmlnLmluaXRpYWxpemVBcHApIHx8IGxvYWRDb25maWcsXHJcbiAgICAgICAgICAgICAgICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgICAgZGVwczogWyghY29uZmlnID8gbnVsbCA6IGNvbmZpZy5pbml0aWFsaXplQXBwKSA/IEluamVjdG9yIDogQ09ORklHX1NFUlZJQ0VdXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIF1cclxuICAgICAgICB9O1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Pipe } from "@angular/core";
|
|
2
|
+
export class PopPipe {
|
|
3
|
+
transform(value) {
|
|
4
|
+
return !Array.isArray(value) ? null : Array.from(value).pop();
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
PopPipe.decorators = [
|
|
8
|
+
{ type: Pipe, args: [{
|
|
9
|
+
name: "pop"
|
|
10
|
+
},] }
|
|
11
|
+
];
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LXV0aWxzL3BpcGVzL3BvcC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBS2xELE1BQU0sT0FBTyxPQUFPO0lBRWhCLFNBQVMsQ0FBQyxLQUFZO1FBQ2xCLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDbEUsQ0FBQzs7O1lBUEosSUFBSSxTQUFDO2dCQUNGLElBQUksRUFBRSxLQUFLO2FBQ2QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1BpcGUsIFBpcGVUcmFuc2Zvcm19IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5AUGlwZSh7XHJcbiAgICBuYW1lOiBcInBvcFwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQb3BQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcblxyXG4gICAgdHJhbnNmb3JtKHZhbHVlOiBhbnlbXSk6IGFueSB7XHJcbiAgICAgICAgcmV0dXJuICFBcnJheS5pc0FycmF5KHZhbHVlKSA/IG51bGwgOiBBcnJheS5mcm9tKHZhbHVlKS5wb3AoKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Pipe } from "@angular/core";
|
|
2
|
+
export class ShiftPipe {
|
|
3
|
+
transform(value) {
|
|
4
|
+
return !Array.isArray(value) ? null : Array.from(value).shift();
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
ShiftPipe.decorators = [
|
|
8
|
+
{ type: Pipe, args: [{
|
|
9
|
+
name: "shift"
|
|
10
|
+
},] }
|
|
11
|
+
];
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hpZnQucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9uZ3gtdXRpbHMvcGlwZXMvc2hpZnQucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQUtsRCxNQUFNLE9BQU8sU0FBUztJQUVsQixTQUFTLENBQUMsS0FBWTtRQUNsQixPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3BFLENBQUM7OztZQVBKLElBQUksU0FBQztnQkFDRixJQUFJLEVBQUUsT0FBTzthQUNoQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UGlwZSwgUGlwZVRyYW5zZm9ybX0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbkBQaXBlKHtcclxuICAgIG5hbWU6IFwic2hpZnRcIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2hpZnRQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcblxyXG4gICAgdHJhbnNmb3JtKHZhbHVlOiBhbnlbXSk6IGFueSB7XHJcbiAgICAgICAgcmV0dXJuICFBcnJheS5pc0FycmF5KHZhbHVlKSA/IG51bGwgOiBBcnJheS5mcm9tKHZhbHVlKS5zaGlmdCgpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Pipe } from "@angular/core";
|
|
2
|
+
export class SplitPipe {
|
|
3
|
+
transform(value, separator = ".") {
|
|
4
|
+
return `${value}`.split(separator);
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
SplitPipe.decorators = [
|
|
8
|
+
{ type: Pipe, args: [{
|
|
9
|
+
name: "split"
|
|
10
|
+
},] }
|
|
11
|
+
];
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BsaXQucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9uZ3gtdXRpbHMvcGlwZXMvc3BsaXQucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQUtsRCxNQUFNLE9BQU8sU0FBUztJQUVsQixTQUFTLENBQUMsS0FBVSxFQUFFLFlBQW9CLEdBQUc7UUFDekMsT0FBTyxHQUFHLEtBQUssRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN2QyxDQUFDOzs7WUFQSixJQUFJLFNBQUM7Z0JBQ0YsSUFBSSxFQUFFLE9BQU87YUFDaEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1BpcGUsIFBpcGVUcmFuc2Zvcm19IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5AUGlwZSh7XHJcbiAgICBuYW1lOiBcInNwbGl0XCJcclxufSlcclxuZXhwb3J0IGNsYXNzIFNwbGl0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG5cclxuICAgIHRyYW5zZm9ybSh2YWx1ZTogYW55LCBzZXBhcmF0b3I6IHN0cmluZyA9IFwiLlwiKTogYW55W10ge1xyXG4gICAgICAgIHJldHVybiBgJHt2YWx1ZX1gLnNwbGl0KHNlcGFyYXRvcik7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { __awaiter } from "tslib";
|
|
2
|
-
import { Inject, Injectable, Optional, isDevMode } from "@angular/core";
|
|
2
|
+
import { Inject, Injector, Injectable, Optional, isDevMode } from "@angular/core";
|
|
3
3
|
import { HttpClient } from "@angular/common/http";
|
|
4
4
|
import { UniversalService } from "./universal.service";
|
|
5
5
|
import { BASE_CONFIG, IConfiguration, ROOT_ELEMENT, SCRIPT_PARAMS } from "../common-types";
|
|
6
6
|
const JSON5 = require("json5");
|
|
7
7
|
export class ConfigService {
|
|
8
|
-
constructor(http, universal, rootElement, baseConfig = null, scriptParams = null) {
|
|
8
|
+
constructor(http, universal, injector, rootElement, baseConfig = null, scriptParams = null) {
|
|
9
9
|
this.http = http;
|
|
10
10
|
this.universal = universal;
|
|
11
|
+
this.injector = injector;
|
|
11
12
|
this.rootElement = rootElement;
|
|
12
13
|
for (const key in []) {
|
|
13
14
|
Object.defineProperty(Array.prototype, key, {
|
|
@@ -115,8 +116,9 @@ ConfigService.decorators = [
|
|
|
115
116
|
ConfigService.ctorParameters = () => [
|
|
116
117
|
{ type: HttpClient },
|
|
117
118
|
{ type: UniversalService },
|
|
119
|
+
{ type: Injector },
|
|
118
120
|
{ type: undefined, decorators: [{ type: Inject, args: [ROOT_ELEMENT,] }] },
|
|
119
121
|
{ type: IConfiguration, decorators: [{ type: Optional }, { type: Inject, args: [BASE_CONFIG,] }] },
|
|
120
122
|
{ type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [SCRIPT_PARAMS,] }] }
|
|
121
123
|
];
|
|
122
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LXV0aWxzL3NlcnZpY2VzL2NvbmZpZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUMsV0FBVyxFQUFrQixjQUFjLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRXpHLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUcvQixNQUFNLE9BQU8sYUFBYTtJQW9CdEIsWUFBcUIsSUFBZ0IsRUFDaEIsU0FBMkIsRUFDTCxXQUFnQixFQUNkLGFBQTZCLElBQUksRUFDL0IsZUFBb0IsSUFBSTtRQUpsRCxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQ0wsZ0JBQVcsR0FBWCxXQUFXLENBQUs7UUFHdkQsS0FBSyxNQUFNLEdBQUcsSUFBSSxFQUFFLEVBQUU7WUFDbEIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRTtnQkFDeEMsVUFBVSxFQUFFLEtBQUs7YUFDcEIsQ0FBQyxDQUFDO1NBQ047UUFDRCxJQUFJLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDakIsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRTtZQUMxQixNQUFNLGFBQWEsR0FBSSxRQUFRLENBQUMsYUFBbUMsQ0FBQztZQUNwRSxJQUFJLENBQUMsQ0FBQyxhQUFhLEVBQUU7Z0JBQ2pCLE1BQU0sU0FBUyxHQUFH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QUUsT0FBTyxFQUFFLENBQUM7UUFDM0IsT0FBTyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzlELENBQUM7OztZQXZISixVQUFVOzs7WUFOSCxVQUFVO1lBQ1YsZ0JBQWdCOzRDQTRCUCxNQUFNLFNBQUMsWUFBWTtZQTNCQyxjQUFjLHVCQTRCbEMsUUFBUSxZQUFJLE1BQU0sU0FBQyxXQUFXOzRDQUM5QixRQUFRLFlBQUksTUFBTSxTQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwsIGlzRGV2TW9kZX0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtIdHRwQ2xpZW50fSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHtVbml2ZXJzYWxTZXJ2aWNlfSBmcm9tIFwiLi91bml2ZXJzYWwuc2VydmljZVwiO1xyXG5pbXBvcnQge0JBU0VfQ09ORklHLCBJQ29uZmlnU2VydmljZSwgSUNvbmZpZ3VyYXRpb24sIFJPT1RfRUxFTUVOVCwgU0NSSVBUX1BBUkFNU30gZnJvbSBcIi4uL2NvbW1vbi10eXBlc1wiO1xyXG5cclxuY29uc3QgSlNPTjUgPSByZXF1aXJlKFwianNvbjVcIik7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBDb25maWdTZXJ2aWNlIGltcGxlbWVudHMgSUNvbmZpZ1NlcnZpY2Uge1xyXG5cclxuICAgIHByb3RlY3RlZCBiYXNlQ29uZmlnOiBJQ29uZmlndXJhdGlvbjtcclxuICAgIHByb3RlY3RlZCBsb2FkZWRDb25maWc6IElDb25maWd1cmF0aW9uO1xyXG4gICAgcHJvdGVjdGVkIHNjcmlwdFBhcmFtZXRlcnM6IGFueTtcclxuICAgIHByb3RlY3RlZCBsb2FkZXI6IFByb21pc2U8SUNvbmZpZ3VyYXRpb24+O1xyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGxvYWRlckZ1bmM6ICgpID0+IFByb21pc2U8SUNvbmZpZ3VyYXRpb24+O1xyXG5cclxuICAgIGdldCBsb2FkKCk6ICgpID0+IFByb21pc2U8SUNvbmZpZ3VyYXRpb24+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5sb2FkZXJGdW5jO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBjb25maWcoKTogSUNvbmZpZ3VyYXRpb24ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmxvYWRlZENvbmZpZztcclxuICAgIH1cclxuXHJcbiAgICBnZXQgY29uZmlnVXJsKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIGAke3RoaXMubG9hZGVkQ29uZmlnLmJhc2VVcmx9Y29uZmlnL2NvbmZpZy5qc29uYDtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdHJ1Y3RvcihyZWFkb25seSBodHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgICAgICAgICAgICAgcmVhZG9ubHkgdW5pdmVyc2FsOiBVbml2ZXJzYWxTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgQEluamVjdChST09UX0VMRU1FTlQpIHJlYWRvbmx5IHJvb3RFbGVtZW50OiBhbnksXHJcbiAgICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEJBU0VfQ09ORklHKSBiYXNlQ29uZmlnOiBJQ29uZmlndXJhdGlvbiA9IG51bGwsXHJcbiAgICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFNDUklQVF9QQVJBTVMpIHNjcmlwdFBhcmFtczogYW55ID0gbnVsbCkge1xyXG4gICAgICAgIGZvciAoY29uc3Qga2V5IGluIFtdKSB7XHJcbiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShBcnJheS5wcm90b3R5cGUsIGtleSwge1xyXG4gICAgICAgICAgICAgICAgZW51bWVyYWJsZTogZmFsc2VcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBiYXNlVXJsID0gXCJcIjtcclxuICAgICAgICBpZiAodGhpcy51bml2ZXJzYWwuaXNCcm93c2VyKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRTY3JpcHQgPSAoZG9jdW1lbnQuY3VycmVudFNjcmlwdCBhcyBIVE1MU2NyaXB0RWxlbWVudCk7XHJcbiAgICAgICAgICAgIGlmICghIWN1cnJlbnRTY3JpcHQpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHNjcmlwdFNyYyA9IGN1cnJlbnRTY3JpcHQuc3JjO1xyXG4gICAgICAgICAgICAgICAgY29uc3Qgc3JjUGFydHMgPSBzY3JpcHRTcmMuc3BsaXQoXCIuanNcIik7XHJcbiAgICAgICAgICAgICAgICBiYXNlVXJsID0gc2NyaXB0U3JjLnN1YnN0cigwLCBzcmNQYXJ0c1swXS5sYXN0SW5kZXhPZihcIi9cIikgKyAxKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmJhc2VDb25maWcgPSBiYXNlQ29uZmlnIHx8IHt9O1xyXG4gICAgICAgIHRoaXMubG9hZGVkQ29uZmlnID0gT2JqZWN0LmFzc2lnbihcclxuICAgICAgICAgICAgIWJhc2VVcmwgPyB7fSA6IHtiYXNlVXJsLCBiYXNlRG9tYWluOiB0aGlzLnBhcnNlRG9tYWluKGJhc2VVcmwpfSxcclxuICAgICAgICAgICAgdGhpcy5iYXNlQ29uZmlnXHJcbiAgICAgICAgKTtcclxuICAgICAgICB0aGlzLnNjcmlwdFBhcmFtZXRlcnMgPSBzY3JpcHRQYXJhbXMgfHwge307XHJcbiAgICAgICAgdGhpcy5sb2FkZXJGdW5jID0gKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRlciA9IHRoaXMubG9hZGVyIHx8IG5ldyBQcm9taXNlPGFueT4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sb2FkSnNvbigpLnRoZW4oY29uZmlnID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmxvYWRlZENvbmZpZyA9IGNvbmZpZyA9IE9iamVjdC5hc3NpZ24odGhpcy5sb2FkZWRDb25maWcsIGNvbmZpZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wcmVwYXJlQ29uZmlnKGNvbmZpZykudGhlbihjID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2FkZWRDb25maWcgPSBjO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjLmJhc2VVcmwgPSBjLmJhc2VVcmwgfHwgXCIvXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUoYyk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9LCByZWplY3QpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMubG9hZGVyO1xyXG4gICAgICAgIH07XHJcbiAgICAgICAgdGhpcy5pbml0U2VydmljZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBwYXJzZURvbWFpbihiYXNlVXJsOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHVybCA9IG5ldyBVUkwoYmFzZVVybCk7XHJcbiAgICAgICAgICAgIGNvbnN0IHBvcnQgPSB1cmwucG9ydCAmJiB1cmwucG9ydCAhPT0gXCI0NDNcIiAmJiB1cmwucG9ydCAhPT0gXCI4MFwiID8gYDoke3VybC5wb3J0fWAgOiBgYDtcclxuICAgICAgICAgICAgcmV0dXJuIGAke3VybC5wcm90b2NvbH0vLyR7dXJsLmhvc3RuYW1lfSR7cG9ydH0vYDtcclxuICAgICAgICB9IGNhdGNoIHtcclxuICAgICAgICAgICAgcmV0dXJuIFwiL1wiO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgaW5pdFNlcnZpY2UoKTogdm9pZCB7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBhc3luYyBsb2FkSnNvbigpOiBQcm9taXNlPElDb25maWd1cmF0aW9uPiB7XHJcbiAgICAgICAgaWYgKHRoaXMudW5pdmVyc2FsLmlzU2VydmVyKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy5sb2FkZWRDb25maWcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBjb25maWdVcmwgPSB0aGlzLmNvbmZpZ1VybDtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBjb25zdCBjb25maWc1ID0gYXdhaXQgdGhpcy5odHRwLmdldChpc0Rldk1vZGUoKSA/IGAke2NvbmZpZ1VybH01YCA6IGNvbmZpZ1VybCwge3Jlc3BvbnNlVHlwZTogXCJ0ZXh0XCJ9KS50b1Byb21pc2UoKTtcclxuICAgICAgICAgICAgcmV0dXJuIEpTT041LnBhcnNlKGNvbmZpZzUpO1xyXG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGNvbmZpZyA9IGF3YWl0IHRoaXMuaHR0cC5nZXQoY29uZmlnVXJsKS50b1Byb21pc2UoKTtcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGBDYW4ndCBwYXJzZSBqc29uNSBjb25maWc6ICR7ZX1gKTtcclxuICAgICAgICAgICAgICAgIHJldHVybiBjb25maWc7XHJcbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ29uZmlnIGZpbGUgbm90IGZvdW5kIGF0OiAke2NvbmZpZ1VybH1gKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgcHJlcGFyZUNvbmZpZyhjb25maWc6IElDb25maWd1cmF0aW9uKTogUHJvbWlzZTxJQ29uZmlndXJhdGlvbj4ge1xyXG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoY29uZmlnKTtcclxuICAgIH1cclxuXHJcbiAgICBwcmVwYXJlVXJsKHVybDogc3RyaW5nLCBlbmRpbmc6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgY29uc3QgcHJvamVjdCA9ICF0aGlzLmxvYWRlZENvbmZpZyA/IFwiXCIgOiB0aGlzLmxvYWRlZENvbmZpZy5wcm9qZWN0O1xyXG4gICAgICAgIGNvbnN0IG5lZWRzUHJvdG9jb2wgPSB1cmw/LnN0YXJ0c1dpdGgoXCIvL1wiKSA/PyBmYWxzZTtcclxuICAgICAgICB1cmwgPSAhbmVlZHNQcm90b2NvbCAmJiB1cmw/LnN0YXJ0c1dpdGgoXCIvXCIpID8gdGhpcy5sb2FkZWRDb25maWcuYmFzZURvbWFpbiArIHVybC5zdWJzdHIoMSkgOiB1cmwgfHwgXCJcIjtcclxuICAgICAgICB1cmwgPSBgJHt1cmwucmVwbGFjZSgvXFwvKyQvLCBcIlwiKX0ke2VuZGluZ31gLnJlcGxhY2UoXCJbcHJvamVjdF1cIiwgcHJvamVjdCk7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMudW5pdmVyc2FsLmlzU2VydmVyICYmIG5lZWRzUHJvdG9jb2wgPyBgaHR0cDoke3VybH1gIDogdXJsO1xyXG4gICAgfVxyXG5cclxuICAgIGdldENvbmZpZ1ZhbHVlKGtleTogc3RyaW5nKTogYW55IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5sb2FkZWRDb25maWdba2V5XTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRRdWVyeVBhcmFtZXRlcihuYW1lOiBzdHJpbmcsIHVybD86IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgdXJsID0gdXJsIHx8ICh0aGlzLnVuaXZlcnNhbC5pc0Jyb3dzZXIgPyB3aW5kb3cubG9jYXRpb24uaHJlZiA6IFwiXCIpO1xyXG4gICAgICAgIG5hbWUgPSBuYW1lLnJlcGxhY2UoL1tcXFtcXF1dL2csIFwiXFxcXCQmXCIpO1xyXG4gICAgICAgIGNvbnN0IHJlZ2V4ID0gbmV3IFJlZ0V4cChcIls/Jl1cIiArIG5hbWUgKyBcIig9KFteJiNdKil8JnwjfCQpXCIpLFxyXG4gICAgICAgICAgICByZXN1bHRzID0gcmVnZXguZXhlYyh1cmwpO1xyXG4gICAgICAgIGlmICghcmVzdWx0cykgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgaWYgKCFyZXN1bHRzWzJdKSByZXR1cm4gXCJcIjtcclxuICAgICAgICByZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KHJlc3VsdHNbMl0ucmVwbGFjZSgvXFwrL2csIFwiIFwiKSk7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LXV0aWxzL3NlcnZpY2VzL2NvbmZpZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFDLFdBQVcsRUFBa0IsY0FBYyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUV6RyxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7QUFHL0IsTUFBTSxPQUFPLGFBQWE7SUFvQnRCLFlBQXFCLElBQWdCLEVBQ2hCLFNBQTJCLEVBQzNCLFFBQWtCLEVBQ0ksV0FBZ0IsRUFDZCxhQUE2QixJQUFJLEVBQy9CLGVBQW9CLElBQUk7UUFMbEQsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ0ksZ0JBQVcsR0FBWCxXQUFXLENBQUs7UUFHdkQsS0FBSyxNQUFNLEdBQUcsSUFBSSxFQUFFLEVBQUU7WUFDbEIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRTtnQkFDeEMsVUFBVSxFQUFFLEtBQUs7YUFDcEIsQ0FBQyxDQUFDO1NBQ047UUFDRCxJQUFJLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDakIsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRTtZQUMxQixNQUFNLGFBQWEsR0FBSSxRQUFRLENBQUMsYUFBbUMsQ0FBQztZQUNw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SUFBSSxDQUFDO1FBQzFCLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFDM0IsT0FBTyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzlELENBQUM7OztZQXhISixVQUFVOzs7WUFOSCxVQUFVO1lBQ1YsZ0JBQWdCO1lBRlIsUUFBUTs0Q0ErQlAsTUFBTSxTQUFDLFlBQVk7WUE1QkMsY0FBYyx1QkE2QmxDLFFBQVEsWUFBSSxNQUFNLFNBQUMsV0FBVzs0Q0FDOUIsUUFBUSxZQUFJLE1BQU0sU0FBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3QsIEluamVjdG9yLCBJbmplY3RhYmxlLCBPcHRpb25hbCwgaXNEZXZNb2RlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0h0dHBDbGllbnR9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQge1VuaXZlcnNhbFNlcnZpY2V9IGZyb20gXCIuL3VuaXZlcnNhbC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7QkFTRV9DT05GSUcsIElDb25maWdTZXJ2aWNlLCBJQ29uZmlndXJhdGlvbiwgUk9PVF9FTEVNRU5ULCBTQ1JJUFRfUEFSQU1TfSBmcm9tIFwiLi4vY29tbW9uLXR5cGVzXCI7XHJcblxyXG5jb25zdCBKU09ONSA9IHJlcXVpcmUoXCJqc29uNVwiKTtcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIENvbmZpZ1NlcnZpY2UgaW1wbGVtZW50cyBJQ29uZmlnU2VydmljZSB7XHJcblxyXG4gICAgcHJvdGVjdGVkIGJhc2VDb25maWc6IElDb25maWd1cmF0aW9uO1xyXG4gICAgcHJvdGVjdGVkIGxvYWRlZENvbmZpZzogSUNvbmZpZ3VyYXRpb247XHJcbiAgICBwcm90ZWN0ZWQgc2NyaXB0UGFyYW1ldGVyczogYW55O1xyXG4gICAgcHJvdGVjdGVkIGxvYWRlcjogUHJvbWlzZTxJQ29uZmlndXJhdGlvbj47XHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbG9hZGVyRnVuYzogKCkgPT4gUHJvbWlzZTxJQ29uZmlndXJhdGlvbj47XHJcblxyXG4gICAgZ2V0IGxvYWQoKTogKCkgPT4gUHJvbWlzZTxJQ29uZmlndXJhdGlvbj4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmxvYWRlckZ1bmM7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGNvbmZpZygpOiBJQ29uZmlndXJhdGlvbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMubG9hZGVkQ29uZmlnO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBjb25maWdVcmwoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gYCR7dGhpcy5sb2FkZWRDb25maWcuYmFzZVVybH1jb25maWcvY29uZmlnLmpzb25gO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGh0dHA6IEh0dHBDbGllbnQsXHJcbiAgICAgICAgICAgICAgICByZWFkb25seSB1bml2ZXJzYWw6IFVuaXZlcnNhbFNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICByZWFkb25seSBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICAgICAgICAgICAgICBASW5qZWN0KFJPT1RfRUxFTUVOVCkgcmVhZG9ubHkgcm9vdEVsZW1lbnQ6IGFueSxcclxuICAgICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoQkFTRV9DT05GSUcpIGJhc2VDb25maWc6IElDb25maWd1cmF0aW9uID0gbnVsbCxcclxuICAgICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoU0NSSVBUX1BBUkFNUykgc2NyaXB0UGFyYW1zOiBhbnkgPSBudWxsKSB7XHJcbiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gW10pIHtcclxuICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KEFycmF5LnByb3RvdHlwZSwga2V5LCB7XHJcbiAgICAgICAgICAgICAgICBlbnVtZXJhYmxlOiBmYWxzZVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgbGV0IGJhc2VVcmwgPSBcIlwiO1xyXG4gICAgICAgIGlmICh0aGlzLnVuaXZlcnNhbC5pc0Jyb3dzZXIpIHtcclxuICAgICAgICAgICAgY29uc3QgY3VycmVudFNjcmlwdCA9IChkb2N1bWVudC5jdXJyZW50U2NyaXB0IGFzIEhUTUxTY3JpcHRFbGVtZW50KTtcclxuICAgICAgICAgICAgaWYgKCEhY3VycmVudFNjcmlwdCkge1xyXG4gICAgICAgICAgICAgICAgY29uc3Qgc2NyaXB0U3JjID0gY3VycmVudFNjcmlwdC5zcmM7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBzcmNQYXJ0cyA9IHNjcmlwdFNyYy5zcGxpdChcIi5qc1wiKTtcclxuICAgICAgICAgICAgICAgIGJhc2VVcmwgPSBzY3JpcHRTcmMuc3Vic3RyKDAsIHNyY1BhcnRzWzBdLmxhc3RJbmRleE9mKFwiL1wiKSArIDEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuYmFzZUNvbmZpZyA9IGJhc2VDb25maWcgfHwge307XHJcbiAgICAgICAgdGhpcy5sb2FkZWRDb25maWcgPSBPYmplY3QuYXNzaWduKFxyXG4gICAgICAgICAgICAhYmFzZVVybCA/IHt9IDoge2Jhc2VVcmwsIGJhc2VEb21haW46IHRoaXMucGFyc2VEb21haW4oYmFzZVVybCl9LFxyXG4gICAgICAgICAgICB0aGlzLmJhc2VDb25maWdcclxuICAgICAgICApO1xyXG4gICAgICAgIHRoaXMuc2NyaXB0UGFyYW1ldGVycyA9IHNjcmlwdFBhcmFtcyB8fCB7fTtcclxuICAgICAgICB0aGlzLmxvYWRlckZ1bmMgPSAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZGVyID0gdGhpcy5sb2FkZXIgfHwgbmV3IFByb21pc2U8YW55PigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmxvYWRKc29uKCkudGhlbihjb25maWcgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubG9hZGVkQ29uZmlnID0gY29uZmlnID0gT2JqZWN0LmFzc2lnbih0aGlzLmxvYWRlZENvbmZpZywgY29uZmlnKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnByZXBhcmVDb25maWcoY29uZmlnKS50aGVuKGMgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxvYWRlZENvbmZpZyA9IGM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGMuYmFzZVVybCA9IGMuYmFzZVVybCB8fCBcIi9cIjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShjKTtcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIH0sIHJlamVjdCk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5sb2FkZXI7XHJcbiAgICAgICAgfTtcclxuICAgICAgICB0aGlzLmluaXRTZXJ2aWNlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIHBhcnNlRG9tYWluKGJhc2VVcmw6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgY29uc3QgdXJsID0gbmV3IFVSTChiYXNlVXJsKTtcclxuICAgICAgICAgICAgY29uc3QgcG9ydCA9IHVybC5wb3J0ICYmIHVybC5wb3J0ICE9PSBcIjQ0M1wiICYmIHVybC5wb3J0ICE9PSBcIjgwXCIgPyBgOiR7dXJsLnBvcnR9YCA6IGBgO1xyXG4gICAgICAgICAgICByZXR1cm4gYCR7dXJsLnByb3RvY29sfS8vJHt1cmwuaG9zdG5hbWV9JHtwb3J0fS9gO1xyXG4gICAgICAgIH0gY2F0Y2gge1xyXG4gICAgICAgICAgICByZXR1cm4gXCIvXCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBpbml0U2VydmljZSgpOiB2b2lkIHtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIGFzeW5jIGxvYWRKc29uKCk6IFByb21pc2U8SUNvbmZpZ3VyYXRpb24+IHtcclxuICAgICAgICBpZiAodGhpcy51bml2ZXJzYWwuaXNTZXJ2ZXIpIHtcclxuICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzLmxvYWRlZENvbmZpZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IGNvbmZpZ1VybCA9IHRoaXMuY29uZmlnVXJsO1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGNvbmZpZzUgPSBhd2FpdCB0aGlzLmh0dHAuZ2V0KGlzRGV2TW9kZSgpID8gYCR7Y29uZmlnVXJsfTVgIDogY29uZmlnVXJsLCB7cmVzcG9uc2VUeXBlOiBcInRleHRcIn0pLnRvUHJvbWlzZSgpO1xyXG4gICAgICAgICAgICByZXR1cm4gSlNPTjUucGFyc2UoY29uZmlnNSk7XHJcbiAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgY29uZmlnID0gYXdhaXQgdGhpcy5odHRwLmdldChjb25maWdVcmwpLnRvUHJvbWlzZSgpO1xyXG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coYENhbid0IHBhcnNlIGpzb241IGNvbmZpZzogJHtlfWApO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGNvbmZpZztcclxuICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb25maWcgZmlsZSBub3QgZm91bmQgYXQ6ICR7Y29uZmlnVXJsfWApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBwcmVwYXJlQ29uZmlnKGNvbmZpZzogSUNvbmZpZ3VyYXRpb24pOiBQcm9taXNlPElDb25maWd1cmF0aW9uPiB7XHJcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShjb25maWcpO1xyXG4gICAgfVxyXG5cclxuICAgIHByZXBhcmVVcmwodXJsOiBzdHJpbmcsIGVuZGluZzogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICBjb25zdCBwcm9qZWN0ID0gIXRoaXMubG9hZGVkQ29uZmlnID8gXCJcIiA6IHRoaXMubG9hZGVkQ29uZmlnLnByb2plY3Q7XHJcbiAgICAgICAgY29uc3QgbmVlZHNQcm90b2NvbCA9IHVybD8uc3RhcnRzV2l0aChcIi8vXCIpID8/IGZhbHNlO1xyXG4gICAgICAgIHVybCA9ICFuZWVkc1Byb3RvY29sICYmIHVybD8uc3RhcnRzV2l0aChcIi9cIikgPyB0aGlzLmxvYWRlZENvbmZpZy5iYXNlRG9tYWluICsgdXJsLnN1YnN0cigxKSA6IHVybCB8fCBcIlwiO1xyXG4gICAgICAgIHVybCA9IGAke3VybC5yZXBsYWNlKC9cXC8rJC8sIFwiXCIpfSR7ZW5kaW5nfWAucmVwbGFjZShcIltwcm9qZWN0XVwiLCBwcm9qZWN0KTtcclxuICAgICAgICByZXR1cm4gdGhpcy51bml2ZXJzYWwuaXNTZXJ2ZXIgJiYgbmVlZHNQcm90b2NvbCA/IGBodHRwOiR7dXJsfWAgOiB1cmw7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0Q29uZmlnVmFsdWUoa2V5OiBzdHJpbmcpOiBhbnkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmxvYWRlZENvbmZpZ1trZXldO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFF1ZXJ5UGFyYW1ldGVyKG5hbWU6IHN0cmluZywgdXJsPzogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICB1cmwgPSB1cmwgfHwgKHRoaXMudW5pdmVyc2FsLmlzQnJvd3NlciA/IHdpbmRvdy5sb2NhdGlvbi5ocmVmIDogXCJcIik7XHJcbiAgICAgICAgbmFtZSA9IG5hbWUucmVwbGFjZSgvW1xcW1xcXV0vZywgXCJcXFxcJCZcIik7XHJcbiAgICAgICAgY29uc3QgcmVnZXggPSBuZXcgUmVnRXhwKFwiWz8mXVwiICsgbmFtZSArIFwiKD0oW14mI10qKXwmfCN8JClcIiksXHJcbiAgICAgICAgICAgIHJlc3VsdHMgPSByZWdleC5leGVjKHVybCk7XHJcbiAgICAgICAgaWYgKCFyZXN1bHRzKSByZXR1cm4gbnVsbDtcclxuICAgICAgICBpZiAoIXJlc3VsdHNbMl0pIHJldHVybiBcIlwiO1xyXG4gICAgICAgIHJldHVybiBkZWNvZGVVUklDb21wb25lbnQocmVzdWx0c1syXS5yZXBsYWNlKC9cXCsvZywgXCIgXCIpKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -24,7 +24,8 @@ export class FormatterService {
|
|
|
24
24
|
const num = ObjectUtils.isNumber(value) ? value : parseFloat(value) || 0;
|
|
25
25
|
const str = (num / divider).toLocaleString(this.language.currentLanguage, {
|
|
26
26
|
minimumFractionDigits: precision,
|
|
27
|
-
maximumFractionDigits: precision
|
|
27
|
+
maximumFractionDigits: precision,
|
|
28
|
+
useGrouping: false
|
|
28
29
|
});
|
|
29
30
|
return ObjectUtils.evaluate(format || this.defaultNumberFormat, { num: str });
|
|
30
31
|
}
|
|
@@ -41,4 +42,4 @@ FormatterService.decorators = [
|
|
|
41
42
|
FormatterService.ctorParameters = () => [
|
|
42
43
|
{ type: undefined, decorators: [{ type: Inject, args: [LANGUAGE_SERVICE,] }] }
|
|
43
44
|
];
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0dGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LXV0aWxzL3NlcnZpY2VzL2Zvcm1hdHRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxNQUFNLEVBQUUsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBbUIsZ0JBQWdCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDbEQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBRzlDLE1BQU0sT0FBTyxnQkFBZ0I7SUFjekIsWUFBNkMsUUFBMEI7UUFBMUIsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7SUFFdkUsQ0FBQztJQWRELElBQUksZ0JBQWdCO1FBQ2hCLE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELElBQUksbUJBQW1CO1FBQ25CLE9BQU8sYUFBYSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFJLGNBQWM7UUFDZCxPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFNRCxXQUFXLENBQUMsS0FBYSxFQUFFLFNBQWtCLEVBQUUsT0FBZ0I7UUFDM0QsT0FBTyxTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxFQUFFLE9BQU8sSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDaEcsQ0FBQztJQUVELFlBQVksQ0FBQyxLQUFzQixFQUFFLE1BQWUsRUFBRSxTQUFrQixFQUFFLE9BQWdCO1FBQ3RGLFNBQVMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3pDLE9BQU8sR0FBRyxPQUFPLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQztRQUN6QyxNQUFNLEdBQUcsR0FBRyxXQUFXLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBUyxLQUFLLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBUyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekYsTUFBTSxHQUFHLEdBQUcsQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxFQUFFO1lBQ3RFLHFCQUFxQixFQUFFLFNBQVM7WUFDaEMscUJBQXFCLEVBQUUsU0FBUztZQUNoQyxXQUFXLEVBQUUsS0FBSztTQUNyQixDQUFDLENBQUM7UUFDSCxPQUFPLFdBQVcsQ0FBQyxRQUFRLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxFQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUMsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxLQUFhLEVBQUUsU0FBa0IsRUFBRSxPQUFnQjtRQUNoRSxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVTLFlBQVksQ0FBQyxTQUFpQjtRQUNwQyxPQUFPLFdBQVcsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQy9FLENBQUM7OztZQXpDSixVQUFVOzs7NENBZU0sTUFBTSxTQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0LCBJbmplY3RhYmxlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0lMYW5ndWFnZVNlcnZpY2UsIExBTkdVQUdFX1NFUlZJQ0V9IGZyb20gXCIuLi9jb21tb24tdHlwZXNcIjtcclxuaW1wb3J0IHtPYmplY3RVdGlsc30gZnJvbSBcIi4uL3V0aWxzL29iamVjdC51dGlsc1wiO1xyXG5pbXBvcnQge01hdGhVdGlsc30gZnJvbSBcIi4uL3V0aWxzL21hdGgudXRpbHNcIjtcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEZvcm1hdHRlclNlcnZpY2Uge1xyXG5cclxuICAgIGdldCBkZWZhdWx0UHJlY2lzaW9uKCk6IG51bWJlciB7XHJcbiAgICAgICAgcmV0dXJuIDI7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGRlZmF1bHROdW1iZXJGb3JtYXQoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gYG51bSArICcgbW0nYDtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgZGVmYXVsdERpdmlkZXIoKTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gMTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KExBTkdVQUdFX1NFUlZJQ0UpIHB1YmxpYyBsYW5ndWFnZTogSUxhbmd1YWdlU2VydmljZSkge1xyXG5cclxuICAgIH1cclxuXHJcbiAgICByb3VuZE51bWJlcih2YWx1ZTogbnVtYmVyLCBwcmVjaXNpb24/OiBudW1iZXIsIGRpdmlkZXI/OiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgICAgIHJldHVybiBNYXRoVXRpbHMucm91bmQodmFsdWUsIHRoaXMuZ2V0UHJlY2lzaW9uKHByZWNpc2lvbiksIGRpdmlkZXIgfHwgdGhpcy5kZWZhdWx0RGl2aWRlcik7XHJcbiAgICB9XHJcblxyXG4gICAgZm9ybWF0TnVtYmVyKHZhbHVlOiBudW1iZXIgfCBzdHJpbmcsIGZvcm1hdD86IHN0cmluZywgcHJlY2lzaW9uPzogbnVtYmVyLCBkaXZpZGVyPzogbnVtYmVyKTogc3RyaW5nIHtcclxuICAgICAgICBwcmVjaXNpb24gPSB0aGlzLmdldFByZWNpc2lvbihwcmVjaXNpb24pO1xyXG4gICAgICAgIGRpdmlkZXIgPSBkaXZpZGVyIHx8IHRoaXMuZGVmYXVsdERpdmlkZXI7XHJcbiAgICAgICAgY29uc3QgbnVtID0gT2JqZWN0VXRpbHMuaXNOdW1iZXIodmFsdWUpID8gPG51bWJlcj52YWx1ZSA6IHBhcnNlRmxvYXQoPHN0cmluZz52YWx1ZSkgfHwgMDtcclxuICAgICAgICBjb25zdCBzdHIgPSAobnVtIC8gZGl2aWRlcikudG9Mb2NhbGVTdHJpbmcodGhpcy5sYW5ndWFnZS5jdXJyZW50TGFuZ3VhZ2UsIHtcclxuICAgICAgICAgICAgbWluaW11bUZyYWN0aW9uRGlnaXRzOiBwcmVjaXNpb24sXHJcbiAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogcHJlY2lzaW9uLFxyXG4gICAgICAgICAgICB1c2VHcm91cGluZzogZmFsc2VcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXR1cm4gT2JqZWN0VXRpbHMuZXZhbHVhdGUoZm9ybWF0IHx8IHRoaXMuZGVmYXVsdE51bWJlckZvcm1hdCwge251bTogc3RyfSk7XHJcbiAgICB9XHJcblxyXG4gICAgZm9ybWF0TWlsbGltZXRlcih2YWx1ZTogbnVtYmVyLCBwcmVjaXNpb24/OiBudW1iZXIsIGRpdmlkZXI/OiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1hdE51bWJlcih2YWx1ZSwgYG51bSArICcgbW0nYCwgcHJlY2lzaW9uLCBkaXZpZGVyKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgZ2V0UHJlY2lzaW9uKHByZWNpc2lvbjogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gT2JqZWN0VXRpbHMuaXNOdW1iZXIocHJlY2lzaW9uKSA/IHByZWNpc2lvbiA6IHRoaXMuZGVmYXVsdFByZWNpc2lvbjtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -96,5 +96,12 @@ export class ArrayUtils {
|
|
|
96
96
|
}
|
|
97
97
|
return result;
|
|
98
98
|
}
|
|
99
|
+
static unique(arr) {
|
|
100
|
+
if (!ObjectUtils.isArray(arr))
|
|
101
|
+
return [];
|
|
102
|
+
return arr.filter((value, index, self) => {
|
|
103
|
+
return self.indexOf(value) === index;
|
|
104
|
+
});
|
|
105
|
+
}
|
|
99
106
|
}
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
107
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXkudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LXV0aWxzL3V0aWxzL2FycmF5LnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxNQUFNLE9BQU8sVUFBVTtJQUVuQixNQUFNLENBQUMsR0FBRyxDQUFDLEdBQVUsRUFBRSxHQUFHLEtBQVk7UUFDbEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzNFLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ25DLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2dCQUFFLE9BQU8sSUFBSSxDQUFDO1NBQy9DO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBVSxFQUFFLEdBQVc7UUFDaEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzFFLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ2pDLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxZQUFZLE1BQU0sRUFBRTtnQkFDMUIsTUFBTSxLQUFLLEdBQVcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUM3QixJQUFJLEtBQUssQ0FBQyxJ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QUFDO0lBRUQsTUFBTSxDQUFDLE1BQU0sQ0FBSSxHQUFRO1FBQ3JCLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztZQUFFLE9BQU8sRUFBRSxDQUFDO1FBQ3pDLE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUU7WUFDckMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLEtBQUssQ0FBQztRQUN6QyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7T2JqZWN0VXRpbHN9IGZyb20gXCIuL29iamVjdC51dGlsc1wiO1xyXG5cclxuZXhwb3J0IGNsYXNzIEFycmF5VXRpbHMge1xyXG5cclxuICAgIHN0YXRpYyBoYXMoYXJyOiBhbnlbXSwgLi4uaXRlbXM6IGFueVtdKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKCFPYmplY3RVdGlscy5pc0FycmF5KGFycikgfHwgIU9iamVjdFV0aWxzLmlzQXJyYXkoaXRlbXMpKSByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpdGVtcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICBpZiAoYXJyLmluZGV4T2YoaXRlbXNbaV0pID49IDApIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIG1hdGNoKGFycjogYW55W10sIHN0cjogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKCFPYmplY3RVdGlscy5pc0FycmF5KGFycikgfHwgIU9iamVjdFV0aWxzLmlzU3RyaW5nKHN0cikpIHJldHVybiBmYWxzZTtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFyci5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICBpZiAoYXJyW2ldIGluc3RhbmNlb2YgUmVnRXhwKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCByZWdleCA9IDxSZWdFeHA+YXJyW2ldO1xyXG4gICAgICAgICAgICAgICAgaWYgKHJlZ2V4LnRlc3Qoc3RyKSkgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyBhbnk8VD4oYXJyOiBUW10sIGNiOiAoaXRlbTogVCkgPT4gYm9vbGVhbik6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmICghT2JqZWN0VXRpbHMuaXNBcnJheShhcnIpIHx8ICFPYmplY3RVdGlscy5pc0Z1bmN0aW9uKGNiKSkgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJyLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGlmIChjYihhcnJbaV0pKSByZXR1cm4gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyBtb3ZlPFQ+KGFycjogVFtdLCBvbGRJbmRleDogbnVtYmVyLCBuZXdJbmRleDogbnVtYmVyKTogVFtdIHtcclxuICAgICAgICBpZiAoIU9iamVjdFV0aWxzLmlzQXJyYXkoYXJyKSkgcmV0dXJuIFtdO1xyXG4gICAgICAgIGNvbnN0IGxlbmd0aCA9IGFyci5sZW5ndGg7XHJcbiAgICAgICAgd2hpbGUgKG9sZEluZGV4IDwgMCkge1xyXG4gICAgICAgICAgICBvbGRJbmRleCArPSBsZW5ndGg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHdoaWxlIChuZXdJbmRleCA8IDApIHtcclxuICAgICAgICAgICAgbmV3SW5kZXggKz0gbGVuZ3RoO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAobmV3SW5kZXggPj0gbGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIGxldCBrID0gbmV3SW5kZXggLSBsZW5ndGggKyAxO1xyXG4gICAgICAgICAgICB3aGlsZSAoay0tKSB7XHJcbiAgICAgICAgICAgICAgICBhcnIucHVzaCh1bmRlZmluZWQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGFyci5zcGxpY2UobmV3SW5kZXgsIDAsIGFyci5zcGxpY2Uob2xkSW5kZXgsIDEpWzBdKTtcclxuICAgICAgICByZXR1cm4gYXJyO1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyByZXZlcnNlZChhcnI6IGFueVtdKTogYW55W10ge1xyXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IFtdO1xyXG4gICAgICAgIGlmICghT2JqZWN0VXRpbHMuaXNBcnJheShhcnIpKSByZXR1cm4gcmVzdWx0O1xyXG4gICAgICAgIGZvciAobGV0IGkgPSBhcnIubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcclxuICAgICAgICAgICAgcmVzdWx0LnB1c2goYXJyW2ldKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgbWluPFQ+KGFycjogVFtdLCBjYjogKGl0ZW06IFQsIGluZGV4PzogbnVtYmVyKSA9PiBudW1iZXIpOiBUIHtcclxuICAgICAgICBpZiAoIU9iamVjdFV0aWxzLmlzQXJyYXkoYXJyKSkgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgbGV0IG1pbiA9IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSO1xyXG4gICAgICAgIGxldCByZXN1bHQgPSBudWxsO1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJyLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnQgPSBjYihhcnJbaV0sIGkpO1xyXG4gICAgICAgICAgICBpZiAoY3VycmVudCA8IG1pbiB8fCByZXN1bHQgPT09IG51bGwpIHtcclxuICAgICAgICAgICAgICAgIG1pbiA9IGN1cnJlbnQ7XHJcbiAgICAgICAgICAgICAgICByZXN1bHQgPSBhcnJbaV07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgbWF4PFQ+KGFycjogVFtdLCBjYjogKGl0ZW06IFQsIGluZGV4PzogbnVtYmVyKSA9PiBudW1iZXIpOiBUIHtcclxuICAgICAgICBpZiAoIU9iamVjdFV0aWxzLmlzQXJyYXkoYXJyKSkgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgbGV0IG1heCA9IE51bWJlci5NSU5fU0FGRV9JTlRFR0VSO1xyXG4gICAgICAgIGxldCByZXN1bHQgPSBudWxsO1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJyLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnQgPSBjYihhcnJbaV0sIGkpO1xyXG4gICAgICAgICAgICBpZiAoY3VycmVudCA+IG1heCB8fCByZXN1bHQgPT09IG51bGwpIHtcclxuICAgICAgICAgICAgICAgIG1heCA9IGN1cnJlbnQ7XHJcbiAgICAgICAgICAgICAgICByZXN1bHQgPSBhcnJbaV07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgY2h1bms8VD4oYXJyOiBUW10sIHNpemU6IG51bWJlcik6IEFycmF5PFRbXT4ge1xyXG4gICAgICAgIGlmICghT2JqZWN0VXRpbHMuaXNBcnJheShhcnIpKSByZXR1cm4gW107XHJcbiAgICAgICAgc2l6ZSA9IE1hdGgubWF4KDEsIHNpemUpO1xyXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IFtdXHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcnIubGVuZ3RoOyBpICs9IHNpemUpIHtcclxuICAgICAgICAgICAgcmVzdWx0LnB1c2goYXJyLnNsaWNlKGksIGkgKyBzaXplKSlcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdFxyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyB1bmlxdWU8VD4oYXJyOiBUW10pOiBUW10ge1xyXG4gICAgICAgIGlmICghT2JqZWN0VXRpbHMuaXNBcnJheShhcnIpKSByZXR1cm4gW107XHJcbiAgICAgICAgcmV0dXJuIGFyci5maWx0ZXIoKHZhbHVlLCBpbmRleCwgc2VsZikgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gc2VsZi5pbmRleE9mKHZhbHVlKSA9PT0gaW5kZXg7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -14,7 +14,12 @@ export class FileSystemEntry {
|
|
|
14
14
|
}
|
|
15
15
|
open() {
|
|
16
16
|
this.result = this.result || this.openCb(this.data, this);
|
|
17
|
+
this.result.then(res => {
|
|
18
|
+
if (Array.isArray(res))
|
|
19
|
+
return;
|
|
20
|
+
this.result = null;
|
|
21
|
+
});
|
|
17
22
|
return this.result;
|
|
18
23
|
}
|
|
19
24
|
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zeXN0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LXV0aWxzL3V0aWxzL2ZpbGUtc3lzdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sT0FBTyxlQUFlO0lBUXhCLFlBQXFCLEtBQWEsRUFDYixJQUFZLEVBQ1osS0FBYSxFQUNiLElBQVMsRUFDVCxNQUF1QixFQUN0QixNQUE2QjtRQUw5QixVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQ2IsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNaLFVBQUssR0FBTCxLQUFLLENBQVE7UUFDYixTQUFJLEdBQUosSUFBSSxDQUFLO1FBQ1QsV0FBTSxHQUFOLE1BQU0sQ0FBaUI7UUFDdEIsV0FBTSxHQUFOLE1BQU0sQ0FBdUI7UUFDL0MsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUk7YUFDbkIsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxLQUFLLFFBQVEsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2FBQzdFLE1BQU0sQ0FBQyxDQUFDLFNBQVMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsSUFBSTtRQUNBLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDbkIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztnQkFBRSxPQUFPO1lBQy9CLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIEZpbGVTeXN0ZW1FbnRyeU9wZW5SZXN1bHQgPSBSZWFkb25seUFycmF5PEZpbGVTeXN0ZW1FbnRyeT4gfCBudWxsO1xyXG5cclxuZXhwb3J0IHR5cGUgRmlsZVN5c3RlbUVudHJ5T3BlbkNiID0gKGRhdGE6IGFueSwgcGFyZW50OiBGaWxlU3lzdGVtRW50cnkpID0+IFByb21pc2U8RmlsZVN5c3RlbUVudHJ5T3BlblJlc3VsdD47XHJcblxyXG5leHBvcnQgY2xhc3MgRmlsZVN5c3RlbUVudHJ5IHtcclxuXHJcbiAgICBwcm90ZWN0ZWQgcmVzdWx0OiBQcm9taXNlPEZpbGVTeXN0ZW1FbnRyeU9wZW5SZXN1bHQ+O1xyXG5cclxuICAgIHJlYWRvbmx5IHBhdGg6IFJlYWRvbmx5QXJyYXk8RmlsZVN5c3RlbUVudHJ5PjtcclxuICAgIHJlYWRvbmx5IGxldmVsOiBudW1iZXI7XHJcbiAgICByZWFkb25seSBjbGFzc2VzOiBSZWFkb25seUFycmF5PHN0cmluZz47XHJcblxyXG4gICAgY29uc3RydWN0b3IocmVhZG9ubHkgbGFiZWw6IHN0cmluZyxcclxuICAgICAgICAgICAgICAgIHJlYWRvbmx5IG1ldGE6IHN0cmluZyxcclxuICAgICAgICAgICAgICAgIHJlYWRvbmx5IGltYWdlOiBzdHJpbmcsXHJcbiAgICAgICAgICAgICAgICByZWFkb25seSBkYXRhOiBhbnksXHJcbiAgICAgICAgICAgICAgICByZWFkb25seSBwYXJlbnQ6IEZpbGVTeXN0ZW1FbnRyeSxcclxuICAgICAgICAgICAgICAgIHByb3RlY3RlZCBvcGVuQ2I6IEZpbGVTeXN0ZW1FbnRyeU9wZW5DYikge1xyXG4gICAgICAgIHRoaXMucGF0aCA9ICFwYXJlbnQgPyBbdGhpc10gOiBwYXJlbnQucGF0aC5jb25jYXQoW3RoaXNdKTtcclxuICAgICAgICB0aGlzLmxldmVsID0gdGhpcy5wYXRoLmxlbmd0aCAtIDE7XHJcbiAgICAgICAgdGhpcy5jbGFzc2VzID0gdGhpcy5wYXRoXHJcbiAgICAgICAgICAgIC5maWx0ZXIodCA9PiB0eXBlb2YgdC5kYXRhID09PSBcInN0cmluZ1wiICYmIHQuZGF0YS5sZW5ndGggPiAwKS5tYXAodCA9PiB0LmRhdGEpXHJcbiAgICAgICAgICAgIC5jb25jYXQoW2BsZXZlbC0ke3RoaXMubGV2ZWx9YF0pO1xyXG4gICAgfVxyXG5cclxuICAgIG9wZW4oKTogUHJvbWlzZTxGaWxlU3lzdGVtRW50cnlPcGVuUmVzdWx0PiB7XHJcbiAgICAgICAgdGhpcy5yZXN1bHQgPSB0aGlzLnJlc3VsdCB8fCB0aGlzLm9wZW5DYih0aGlzLmRhdGEsIHRoaXMpO1xyXG4gICAgICAgIHRoaXMucmVzdWx0LnRoZW4ocmVzID0+IHtcclxuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocmVzKSkgcmV0dXJuO1xyXG4gICAgICAgICAgICB0aGlzLnJlc3VsdCA9IG51bGw7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMucmVzdWx0O1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ObjectUtils } from "./object.utils";
|
|
2
2
|
export class MathUtils {
|
|
3
3
|
static equal(a, b, epsilon = null) {
|
|
4
|
-
epsilon = ObjectUtils.isNumber(epsilon) ? epsilon :
|
|
4
|
+
epsilon = ObjectUtils.isNumber(epsilon) ? epsilon : MathUtils.EPSILON;
|
|
5
5
|
return Math.abs(a - b) < epsilon;
|
|
6
6
|
}
|
|
7
7
|
static clamp(value, min, max) {
|
|
@@ -11,5 +11,35 @@ export class MathUtils {
|
|
|
11
11
|
precision = Math.pow(10, precision);
|
|
12
12
|
return Math.round(value * precision / divider) / precision;
|
|
13
13
|
}
|
|
14
|
+
static approxIndex(x, values, epsilon = null) {
|
|
15
|
+
if (!Array.isArray(values) || values.length == 0) {
|
|
16
|
+
return -1;
|
|
17
|
+
}
|
|
18
|
+
let s = 0;
|
|
19
|
+
let e = values.length - 1;
|
|
20
|
+
while (s <= e) {
|
|
21
|
+
const i = Math.floor((s + e) / 2);
|
|
22
|
+
const v = values[i];
|
|
23
|
+
if (MathUtils.equal(v, x, epsilon)) {
|
|
24
|
+
return i;
|
|
25
|
+
}
|
|
26
|
+
if (v < x) {
|
|
27
|
+
s = i + 1;
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
e = i - 1;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
const m = Math.max(e, 0);
|
|
34
|
+
const a = values[s];
|
|
35
|
+
const b = values[m];
|
|
36
|
+
return Math.abs(a - x) < Math.abs(b - x) ? s : m;
|
|
37
|
+
}
|
|
38
|
+
static approximate(x, values, epsilon = null) {
|
|
39
|
+
var _a;
|
|
40
|
+
const index = MathUtils.approxIndex(x, values, epsilon);
|
|
41
|
+
return (_a = values[index]) !== null && _a !== void 0 ? _a : null;
|
|
42
|
+
}
|
|
14
43
|
}
|
|
15
|
-
|
|
44
|
+
MathUtils.EPSILON = 1e-9;
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0aC51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9uZ3gtdXRpbHMvdXRpbHMvbWF0aC51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsTUFBTSxPQUFPLFNBQVM7SUFJbEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFTLEVBQUUsQ0FBUyxFQUFFLFVBQWtCLElBQUk7UUFDckQsT0FBTyxHQUFHLFdBQVcsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQztRQUN0RSxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQztJQUNyQyxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFhLEVBQUUsR0FBVyxFQUFFLEdBQVc7UUFDaEQsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFBO0lBQzlDLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQWEsRUFBRSxZQUFvQixDQUFDLEVBQUUsVUFBa0IsQ0FBQztRQUNsRSxTQUFTLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDcEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxTQUFTLEdBQUcsT0FBTyxDQUFDLEdBQUcsU0FBUyxDQUFDO0lBQy9ELENBQUM7SUFFRCxNQUFNLENBQUMsV0FBVyxDQUFDLENBQVMsRUFBRSxNQUFnQixFQUFFLFVBQWtCLElBQUk7UUFDbEUsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQUU7WUFDOUMsT0FBTyxDQUFDLENBQUMsQ0FBQztTQUNiO1FBQ0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ1YsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDMUIsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ1gsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUNsQyxNQUFNLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDcEIsSUFBSSxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsT0FBTyxDQUFDLEVBQUU7Z0JBQ2hDLE9BQU8sQ0FBQyxDQUFDO2FBQ1o7WUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ1AsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDYjtpQkFBTTtnQkFDSCxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUNiO1NBQ0o7UUFDRCxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN6QixNQUFNLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEIsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxNQUFNLENBQUMsV0FBVyxDQUFDLENBQVMsRUFBRSxNQUFnQixFQUFFLFVBQWtCLElBQUk7O1FBQ2xFLE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztRQUN4RCxPQUFPLE1BQUEsTUFBTSxDQUFDLEtBQUssQ0FBQyxtQ0FBSSxJQUFJLENBQUM7SUFDakMsQ0FBQzs7QUEzQ2UsaUJBQU8sR0FBVyxJQUFJLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge09iamVjdFV0aWxzfSBmcm9tIFwiLi9vYmplY3QudXRpbHNcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBNYXRoVXRpbHMge1xyXG5cclxuICAgIHN0YXRpYyByZWFkb25seSBFUFNJTE9OOiBudW1iZXIgPSAxZS05O1xyXG5cclxuICAgIHN0YXRpYyBlcXVhbChhOiBudW1iZXIsIGI6IG51bWJlciwgZXBzaWxvbjogbnVtYmVyID0gbnVsbCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGVwc2lsb24gPSBPYmplY3RVdGlscy5pc051bWJlcihlcHNpbG9uKSA/IGVwc2lsb24gOiBNYXRoVXRpbHMuRVBTSUxPTjtcclxuICAgICAgICByZXR1cm4gTWF0aC5hYnMoYSAtIGIpIDwgZXBzaWxvbjtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgY2xhbXAodmFsdWU6IG51bWJlciwgbWluOiBudW1iZXIsIG1heDogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gTWF0aC5tYXgoTWF0aC5taW4odmFsdWUsIG1heCksIG1pbilcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgcm91bmQodmFsdWU6IG51bWJlciwgcHJlY2lzaW9uOiBudW1iZXIgPSAyLCBkaXZpZGVyOiBudW1iZXIgPSAxKTogbnVtYmVyIHtcclxuICAgICAgICBwcmVjaXNpb24gPSBNYXRoLnBvdygxMCwgcHJlY2lzaW9uKTtcclxuICAgICAgICByZXR1cm4gTWF0aC5yb3VuZCh2YWx1ZSAqIHByZWNpc2lvbiAvIGRpdmlkZXIpIC8gcHJlY2lzaW9uO1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyBhcHByb3hJbmRleCh4OiBudW1iZXIsIHZhbHVlczogbnVtYmVyW10sIGVwc2lsb246IG51bWJlciA9IG51bGwpOiBudW1iZXIge1xyXG4gICAgICAgIGlmICghQXJyYXkuaXNBcnJheSh2YWx1ZXMpIHx8IHZhbHVlcy5sZW5ndGggPT0gMCkge1xyXG4gICAgICAgICAgICByZXR1cm4gLTE7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBzID0gMDtcclxuICAgICAgICBsZXQgZSA9IHZhbHVlcy5sZW5ndGggLSAxO1xyXG4gICAgICAgIHdoaWxlIChzIDw9IGUpIHtcclxuICAgICAgICAgICAgY29uc3QgaSA9IE1hdGguZmxvb3IoKHMgKyBlKSAvIDIpO1xyXG4gICAgICAgICAgICBjb25zdCB2ID0gdmFsdWVzW2ldO1xyXG4gICAgICAgICAgICBpZiAoTWF0aFV0aWxzLmVxdWFsKHYsIHgsIGVwc2lsb24pKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gaTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAodiA8IHgpIHtcclxuICAgICAgICAgICAgICAgIHMgPSBpICsgMTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGUgPSBpIC0gMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBtID0gTWF0aC5tYXgoZSwgMCk7XHJcbiAgICAgICAgY29uc3QgYSA9IHZhbHVlc1tzXTtcclxuICAgICAgICBjb25zdCBiID0gdmFsdWVzW21dO1xyXG4gICAgICAgIHJldHVybiBNYXRoLmFicyhhIC0geCkgPCBNYXRoLmFicyhiIC0geCkgPyBzIDogbTtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgYXBwcm94aW1hdGUoeDogbnVtYmVyLCB2YWx1ZXM6IG51bWJlcltdLCBlcHNpbG9uOiBudW1iZXIgPSBudWxsKTogbnVtYmVyIHtcclxuICAgICAgICBjb25zdCBpbmRleCA9IE1hdGhVdGlscy5hcHByb3hJbmRleCh4LCB2YWx1ZXMsIGVwc2lsb24pO1xyXG4gICAgICAgIHJldHVybiB2YWx1ZXNbaW5kZXhdID8/IG51bGw7XHJcbiAgICB9XHJcbn1cclxuIl19
|