@stemy/ngx-utils 10.2.44 → 10.3.3
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/README.md +27 -27
- package/bundles/stemy-ngx-utils.umd.js +5654 -5640
- package/bundles/stemy-ngx-utils.umd.js.map +1 -1
- package/bundles/stemy-ngx-utils.umd.min.js +1 -1
- package/bundles/stemy-ngx-utils.umd.min.js.map +1 -1
- package/esm2015/ngx-utils/common-types.js +111 -111
- package/esm2015/ngx-utils/components/dynamic-table/dynamic-table.component.js +139 -139
- package/esm2015/ngx-utils/components/pagination-menu/pagination-menu.component.js +96 -96
- package/esm2015/ngx-utils/components/unordered-list/unordered-list.component.js +51 -51
- package/esm2015/ngx-utils/directives/async-method.directive.js +58 -58
- package/esm2015/ngx-utils/directives/background.directive.js +51 -51
- package/esm2015/ngx-utils/directives/dynamic-table-template.directive.js +19 -19
- package/esm2015/ngx-utils/directives/global-template.directive.js +27 -27
- package/esm2015/ngx-utils/directives/icon.directive.js +59 -59
- package/esm2015/ngx-utils/directives/ngx-template-outlet.directive.js +88 -88
- package/esm2015/ngx-utils/directives/pagination-item.directive.js +33 -33
- package/esm2015/ngx-utils/directives/pagination.directive.js +76 -71
- package/esm2015/ngx-utils/directives/resource-if.directive.js +51 -51
- package/esm2015/ngx-utils/directives/sticky-class.directive.js +35 -35
- package/esm2015/ngx-utils/directives/sticky.directive.js +48 -48
- package/esm2015/ngx-utils/directives/unordered-list-item.directive.js +70 -70
- package/esm2015/ngx-utils/directives/unordered-list-template.directive.js +26 -26
- package/esm2015/ngx-utils/ngx-utils.module.js +232 -232
- package/esm2015/ngx-utils/pipes/chunk.pipe.js +21 -21
- package/esm2015/ngx-utils/pipes/entries.pipe.js +24 -24
- package/esm2015/ngx-utils/pipes/extra-item-properties.pipe.js +27 -27
- package/esm2015/ngx-utils/pipes/filter.pipe.js +38 -38
- package/esm2015/ngx-utils/pipes/find.pipe.js +25 -25
- package/esm2015/ngx-utils/pipes/format-number.pipe.js +19 -19
- package/esm2015/ngx-utils/pipes/get-offset.pipe.js +13 -13
- package/esm2015/ngx-utils/pipes/get-type.pipe.js +12 -12
- package/esm2015/ngx-utils/pipes/global-template.pipe.js +35 -35
- package/esm2015/ngx-utils/pipes/group-by.pipe.js +23 -23
- package/esm2015/ngx-utils/pipes/is-type.pipe.js +12 -12
- package/esm2015/ngx-utils/pipes/join.pipe.js +15 -15
- package/esm2015/ngx-utils/pipes/keys.pipe.js +18 -18
- package/esm2015/ngx-utils/pipes/map.pipe.js +25 -25
- package/esm2015/ngx-utils/pipes/max.pipe.js +22 -22
- package/esm2015/ngx-utils/pipes/min.pipe.js +22 -22
- package/esm2015/ngx-utils/pipes/reduce.pipe.js +26 -26
- package/esm2015/ngx-utils/pipes/remap.pipe.js +28 -28
- package/esm2015/ngx-utils/pipes/replace.pipe.js +12 -12
- package/esm2015/ngx-utils/pipes/reverse.pipe.js +20 -20
- package/esm2015/ngx-utils/pipes/round.pipe.js +19 -19
- package/esm2015/ngx-utils/pipes/safe-html.pipe.js +32 -32
- package/esm2015/ngx-utils/pipes/translate.pipe.js +81 -81
- package/esm2015/ngx-utils/pipes/values.pipe.js +18 -18
- package/esm2015/ngx-utils/plugins/resize-event.plugin.js +59 -59
- package/esm2015/ngx-utils/plugins/scroll-event.plugin.js +52 -52
- package/esm2015/ngx-utils/services/acl.service.js +78 -78
- package/esm2015/ngx-utils/services/api.service.js +35 -35
- package/esm2015/ngx-utils/services/auth.service.js +14 -14
- package/esm2015/ngx-utils/services/base-http.client.js +46 -46
- package/esm2015/ngx-utils/services/base-http.service.js +274 -274
- package/esm2015/ngx-utils/services/config.service.js +95 -95
- package/esm2015/ngx-utils/services/error-handler.service.js +49 -49
- package/esm2015/ngx-utils/services/events.service.js +24 -24
- package/esm2015/ngx-utils/services/formatter.service.js +44 -44
- package/esm2015/ngx-utils/services/global-template.service.js +35 -35
- package/esm2015/ngx-utils/services/icon.service.js +24 -24
- package/esm2015/ngx-utils/services/language.service.js +117 -117
- package/esm2015/ngx-utils/services/open-api.service.js +41 -41
- package/esm2015/ngx-utils/services/promise.service.js +49 -49
- package/esm2015/ngx-utils/services/state.service.js +143 -143
- package/esm2015/ngx-utils/services/static-language.service.js +144 -144
- package/esm2015/ngx-utils/services/storage.service.js +48 -48
- package/esm2015/ngx-utils/services/toaster.service.js +29 -29
- package/esm2015/ngx-utils/services/translated-url.serializer.js +70 -70
- package/esm2015/ngx-utils/services/universal.service.js +73 -73
- package/esm2015/ngx-utils/utils/ajax-request-handler.js +40 -40
- package/esm2015/ngx-utils/utils/array.utils.js +100 -90
- package/esm2015/ngx-utils/utils/auth.guard.js +153 -153
- package/esm2015/ngx-utils/utils/canvas.utils.js +388 -388
- package/esm2015/ngx-utils/utils/date.utils.js +28 -28
- package/esm2015/ngx-utils/utils/file.utils.js +90 -90
- package/esm2015/ngx-utils/utils/generic-value.js +20 -20
- package/esm2015/ngx-utils/utils/geometry.js +132 -132
- package/esm2015/ngx-utils/utils/initializer.js +17 -17
- package/esm2015/ngx-utils/utils/loader.utils.js +55 -55
- package/esm2015/ngx-utils/utils/math.utils.js +15 -15
- package/esm2015/ngx-utils/utils/object.utils.js +248 -248
- package/esm2015/ngx-utils/utils/observable.utils.js +63 -63
- package/esm2015/ngx-utils/utils/reflect.utils.js +33 -33
- package/esm2015/ngx-utils/utils/set.utils.js +20 -20
- package/esm2015/ngx-utils/utils/string.utils.js +28 -28
- package/esm2015/ngx-utils/utils/timer.utils.js +52 -52
- package/esm2015/ngx-utils/utils/unique.utils.js +24 -24
- package/esm2015/ngx-utils/utils/vector.js +77 -77
- package/esm2015/public_api.js +83 -83
- package/esm2015/stemy-ngx-utils.js +7 -7
- package/fesm2015/stemy-ngx-utils.js +4552 -4537
- package/fesm2015/stemy-ngx-utils.js.map +1 -1
- package/ngx-utils/common-types.d.ts +284 -284
- package/ngx-utils/components/dynamic-table/dynamic-table.component.d.ts +43 -43
- package/ngx-utils/components/pagination-menu/pagination-menu.component.d.ts +28 -28
- package/ngx-utils/components/unordered-list/unordered-list.component.d.ts +22 -22
- package/ngx-utils/directives/async-method.directive.d.ts +16 -16
- package/ngx-utils/directives/background.directive.d.ts +14 -14
- package/ngx-utils/directives/dynamic-table-template.directive.d.ts +8 -8
- package/ngx-utils/directives/global-template.directive.d.ts +10 -10
- package/ngx-utils/directives/icon.directive.d.ts +20 -20
- package/ngx-utils/directives/ngx-template-outlet.directive.d.ts +14 -14
- package/ngx-utils/directives/pagination-item.directive.d.ts +12 -12
- package/ngx-utils/directives/pagination.directive.d.ts +22 -21
- package/ngx-utils/directives/resource-if.directive.d.ts +16 -16
- package/ngx-utils/directives/sticky-class.directive.d.ts +12 -12
- package/ngx-utils/directives/sticky.directive.d.ts +16 -16
- package/ngx-utils/directives/unordered-list-item.directive.d.ts +25 -25
- package/ngx-utils/directives/unordered-list-template.directive.d.ts +10 -10
- package/ngx-utils/ngx-utils.module.d.ts +76 -76
- package/ngx-utils/pipes/chunk.pipe.d.ts +4 -4
- package/ngx-utils/pipes/entries.pipe.d.ts +9 -9
- package/ngx-utils/pipes/extra-item-properties.pipe.d.ts +5 -5
- package/ngx-utils/pipes/filter.pipe.d.ts +5 -5
- package/ngx-utils/pipes/find.pipe.d.ts +5 -5
- package/ngx-utils/pipes/format-number.pipe.d.ts +7 -7
- package/ngx-utils/pipes/get-offset.pipe.d.ts +4 -4
- package/ngx-utils/pipes/get-type.pipe.d.ts +4 -4
- package/ngx-utils/pipes/global-template.pipe.d.ts +13 -13
- package/ngx-utils/pipes/group-by.pipe.d.ts +5 -5
- package/ngx-utils/pipes/is-type.pipe.d.ts +4 -4
- package/ngx-utils/pipes/join.pipe.d.ts +4 -4
- package/ngx-utils/pipes/keys.pipe.d.ts +4 -4
- package/ngx-utils/pipes/map.pipe.d.ts +5 -5
- package/ngx-utils/pipes/max.pipe.d.ts +4 -4
- package/ngx-utils/pipes/min.pipe.d.ts +4 -4
- package/ngx-utils/pipes/reduce.pipe.d.ts +5 -5
- package/ngx-utils/pipes/remap.pipe.d.ts +4 -4
- package/ngx-utils/pipes/replace.pipe.d.ts +4 -4
- package/ngx-utils/pipes/reverse.pipe.d.ts +4 -4
- package/ngx-utils/pipes/round.pipe.d.ts +7 -7
- package/ngx-utils/pipes/safe-html.pipe.d.ts +7 -7
- package/ngx-utils/pipes/translate.pipe.d.ts +15 -15
- package/ngx-utils/pipes/values.pipe.d.ts +4 -4
- package/ngx-utils/plugins/resize-event.plugin.d.ts +10 -10
- package/ngx-utils/plugins/scroll-event.plugin.d.ts +11 -11
- package/ngx-utils/services/acl.service.d.ts +12 -12
- package/ngx-utils/services/api.service.d.ts +14 -14
- package/ngx-utils/services/auth.service.d.ts +8 -8
- package/ngx-utils/services/base-http.client.d.ts +12 -12
- package/ngx-utils/services/base-http.service.d.ts +42 -42
- package/ngx-utils/services/config.service.d.ts +21 -21
- package/ngx-utils/services/error-handler.service.d.ts +10 -10
- package/ngx-utils/services/events.service.d.ts +11 -11
- package/ngx-utils/services/formatter.service.d.ts +12 -12
- package/ngx-utils/services/global-template.service.d.ts +16 -16
- package/ngx-utils/services/icon.service.d.ts +10 -10
- package/ngx-utils/services/language.service.d.ts +18 -18
- package/ngx-utils/services/open-api.service.d.ts +8 -8
- package/ngx-utils/services/promise.service.d.ts +15 -15
- package/ngx-utils/services/state.service.d.ts +41 -41
- package/ngx-utils/services/static-language.service.d.ts +41 -41
- package/ngx-utils/services/storage.service.d.ts +12 -12
- package/ngx-utils/services/toaster.service.d.ts +10 -10
- package/ngx-utils/services/translated-url.serializer.d.ts +16 -16
- package/ngx-utils/services/universal.service.d.ts +24 -24
- package/ngx-utils/utils/ajax-request-handler.d.ts +11 -11
- package/ngx-utils/utils/array.utils.d.ts +10 -9
- package/ngx-utils/utils/auth.guard.d.ts +26 -26
- package/ngx-utils/utils/canvas.utils.d.ts +13 -13
- package/ngx-utils/utils/date.utils.d.ts +8 -8
- package/ngx-utils/utils/file.utils.d.ts +14 -14
- package/ngx-utils/utils/generic-value.d.ts +8 -8
- package/ngx-utils/utils/geometry.d.ts +50 -50
- package/ngx-utils/utils/initializer.d.ts +11 -11
- package/ngx-utils/utils/loader.utils.d.ts +7 -7
- package/ngx-utils/utils/math.utils.d.ts +5 -5
- package/ngx-utils/utils/object.utils.d.ts +31 -31
- package/ngx-utils/utils/observable.utils.d.ts +12 -12
- package/ngx-utils/utils/reflect.utils.d.ts +9 -9
- package/ngx-utils/utils/set.utils.d.ts +4 -4
- package/ngx-utils/utils/string.utils.d.ts +7 -7
- package/ngx-utils/utils/timer.utils.d.ts +6 -6
- package/ngx-utils/utils/unique.utils.d.ts +5 -5
- package/ngx-utils/utils/vector.d.ts +23 -23
- package/package.json +1 -1
- package/public_api.d.ts +82 -82
- package/stemy-ngx-utils.d.ts +6 -6
- package/stemy-ngx-utils.metadata.json +1 -1
- package/tools/circular.js +116 -116
- package/tools/config.js +78 -78
- package/tools/icons.js +13 -13
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
import { Pipe } from "@angular/core";
|
|
2
|
-
import { ObjectUtils } from "../utils/object.utils";
|
|
3
|
-
export function defaultMapper(item) {
|
|
4
|
-
return item;
|
|
5
|
-
}
|
|
6
|
-
export class MapPipe {
|
|
7
|
-
transform(values, mapper = defaultMapper, params = {}) {
|
|
8
|
-
if (!ObjectUtils.isArray(values))
|
|
9
|
-
return [];
|
|
10
|
-
const mapperFunc = ObjectUtils.isFunction(mapper) ? mapper : (value, index, params) => {
|
|
11
|
-
return ObjectUtils.evaluate(mapper, {
|
|
12
|
-
value: value,
|
|
13
|
-
index: index,
|
|
14
|
-
params: params
|
|
15
|
-
});
|
|
16
|
-
};
|
|
17
|
-
return values.map((value, index) => mapperFunc(value, index, params));
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
MapPipe.decorators = [
|
|
21
|
-
{ type: Pipe, args: [{
|
|
22
|
-
name: "map"
|
|
23
|
-
},] }
|
|
24
|
-
];
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Pipe } from "@angular/core";
|
|
2
|
+
import { ObjectUtils } from "../utils/object.utils";
|
|
3
|
+
export function defaultMapper(item) {
|
|
4
|
+
return item;
|
|
5
|
+
}
|
|
6
|
+
export class MapPipe {
|
|
7
|
+
transform(values, mapper = defaultMapper, params = {}) {
|
|
8
|
+
if (!ObjectUtils.isArray(values))
|
|
9
|
+
return [];
|
|
10
|
+
const mapperFunc = ObjectUtils.isFunction(mapper) ? mapper : (value, index, params) => {
|
|
11
|
+
return ObjectUtils.evaluate(mapper, {
|
|
12
|
+
value: value,
|
|
13
|
+
index: index,
|
|
14
|
+
params: params
|
|
15
|
+
});
|
|
16
|
+
};
|
|
17
|
+
return values.map((value, index) => mapperFunc(value, index, params));
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
MapPipe.decorators = [
|
|
21
|
+
{ type: Pipe, args: [{
|
|
22
|
+
name: "map"
|
|
23
|
+
},] }
|
|
24
|
+
];
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLnBpcGUuanMiLCJzb3VyY2VSb290IjoiRDovV29yay9uZ3gtdXRpbHMvc3JjLyIsInNvdXJjZXMiOlsibmd4LXV0aWxzL3BpcGVzL21hcC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUVsRCxNQUFNLFVBQVUsYUFBYSxDQUFDLElBQUk7SUFDOUIsT0FBTyxJQUFJLENBQUM7QUFDaEIsQ0FBQztBQUtELE1BQU0sT0FBTyxPQUFPO0lBQ2hCLFNBQVMsQ0FBQyxNQUFhLEVBQUUsU0FBYyxhQUFhLEVBQUUsU0FBYyxFQUFFO1FBQ2xFLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztZQUFFLE9BQU8sRUFBRSxDQUFDO1FBQzVDLE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ2xGLE9BQU8sV0FBVyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUU7Z0JBQ2hDLEtBQUssRUFBRSxLQUFLO2dCQUNaLEtBQUssRUFBRSxLQUFLO2dCQUNaLE1BQU0sRUFBRSxNQUFNO2FBQ2pCLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQztRQUNGLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDMUUsQ0FBQzs7O1lBZEosSUFBSSxTQUFDO2dCQUNGLElBQUksRUFBRSxLQUFLO2FBQ2QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1BpcGUsIFBpcGVUcmFuc2Zvcm19IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7T2JqZWN0VXRpbHN9IGZyb20gXCIuLi91dGlscy9vYmplY3QudXRpbHNcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBkZWZhdWx0TWFwcGVyKGl0ZW0pIHtcclxuICAgIHJldHVybiBpdGVtO1xyXG59XHJcblxyXG5AUGlwZSh7XHJcbiAgICBuYW1lOiBcIm1hcFwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNYXBQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgICB0cmFuc2Zvcm0odmFsdWVzOiBhbnlbXSwgbWFwcGVyOiBhbnkgPSBkZWZhdWx0TWFwcGVyLCBwYXJhbXM6IGFueSA9IHt9KTogYW55W10ge1xyXG4gICAgICAgIGlmICghT2JqZWN0VXRpbHMuaXNBcnJheSh2YWx1ZXMpKSByZXR1cm4gW107XHJcbiAgICAgICAgY29uc3QgbWFwcGVyRnVuYyA9IE9iamVjdFV0aWxzLmlzRnVuY3Rpb24obWFwcGVyKSA/IG1hcHBlciA6ICh2YWx1ZSwgaW5kZXgsIHBhcmFtcykgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gT2JqZWN0VXRpbHMuZXZhbHVhdGUobWFwcGVyLCB7XHJcbiAgICAgICAgICAgICAgICB2YWx1ZTogdmFsdWUsXHJcbiAgICAgICAgICAgICAgICBpbmRleDogaW5kZXgsXHJcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHBhcmFtc1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9O1xyXG4gICAgICAgIHJldHVybiB2YWx1ZXMubWFwKCh2YWx1ZSwgaW5kZXgpID0+IG1hcHBlckZ1bmModmFsdWUsIGluZGV4LCBwYXJhbXMpKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import { Pipe } from "@angular/core";
|
|
2
|
-
import { ObjectUtils } from "../utils/object.utils";
|
|
3
|
-
import { ArrayUtils } from "../utils/array.utils";
|
|
4
|
-
export class MaxPipe {
|
|
5
|
-
transform(value, selector = null, params = {}) {
|
|
6
|
-
selector = selector || (item => item);
|
|
7
|
-
const maxSelector = ObjectUtils.isFunction(value) ? value : (item, index, params) => {
|
|
8
|
-
return ObjectUtils.evaluate(selector, {
|
|
9
|
-
item: item,
|
|
10
|
-
index: index,
|
|
11
|
-
params: params
|
|
12
|
-
});
|
|
13
|
-
};
|
|
14
|
-
return ArrayUtils.max(value, (item, index) => maxSelector(item, index, params));
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
MaxPipe.decorators = [
|
|
18
|
-
{ type: Pipe, args: [{
|
|
19
|
-
name: "max"
|
|
20
|
-
},] }
|
|
21
|
-
];
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Pipe } from "@angular/core";
|
|
2
|
+
import { ObjectUtils } from "../utils/object.utils";
|
|
3
|
+
import { ArrayUtils } from "../utils/array.utils";
|
|
4
|
+
export class MaxPipe {
|
|
5
|
+
transform(value, selector = null, params = {}) {
|
|
6
|
+
selector = selector || (item => item);
|
|
7
|
+
const maxSelector = ObjectUtils.isFunction(value) ? value : (item, index, params) => {
|
|
8
|
+
return ObjectUtils.evaluate(selector, {
|
|
9
|
+
item: item,
|
|
10
|
+
index: index,
|
|
11
|
+
params: params
|
|
12
|
+
});
|
|
13
|
+
};
|
|
14
|
+
return ArrayUtils.max(value, (item, index) => maxSelector(item, index, params));
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
MaxPipe.decorators = [
|
|
18
|
+
{ type: Pipe, args: [{
|
|
19
|
+
name: "max"
|
|
20
|
+
},] }
|
|
21
|
+
];
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF4LnBpcGUuanMiLCJzb3VyY2VSb290IjoiRDovV29yay9uZ3gtdXRpbHMvc3JjLyIsInNvdXJjZXMiOlsibmd4LXV0aWxzL3BpcGVzL21heC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFLaEQsTUFBTSxPQUFPLE9BQU87SUFDaEIsU0FBUyxDQUFDLEtBQVksRUFBRSxXQUFnQixJQUFJLEVBQUUsU0FBYyxFQUFFO1FBQzFELFFBQVEsR0FBRyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFTLElBQUksQ0FBQyxDQUFDO1FBQzlDLE1BQU0sV0FBVyxHQUFhLFdBQVcsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQzFGLE9BQU8sV0FBVyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUU7Z0JBQ2xDLElBQUksRUFBRSxJQUFJO2dCQUNWLEtBQUssRUFBRSxLQUFLO2dCQUNaLE1BQU0sRUFBRSxNQUFNO2FBQ2pCLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQztRQUNGLE9BQU8sVUFBVSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ3BGLENBQUM7OztZQWRKLElBQUksU0FBQztnQkFDRixJQUFJLEVBQUUsS0FBSzthQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtQaXBlLCBQaXBlVHJhbnNmb3JtfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge09iamVjdFV0aWxzfSBmcm9tIFwiLi4vdXRpbHMvb2JqZWN0LnV0aWxzXCI7XHJcbmltcG9ydCB7QXJyYXlVdGlsc30gZnJvbSBcIi4uL3V0aWxzL2FycmF5LnV0aWxzXCI7XHJcblxyXG5AUGlwZSh7XHJcbiAgICBuYW1lOiBcIm1heFwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNYXhQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgICB0cmFuc2Zvcm0odmFsdWU6IGFueVtdLCBzZWxlY3RvcjogYW55ID0gbnVsbCwgcGFyYW1zOiBhbnkgPSB7fSk6IG51bWJlciB7XHJcbiAgICAgICAgc2VsZWN0b3IgPSBzZWxlY3RvciB8fCAoaXRlbSA9PiA8bnVtYmVyPml0ZW0pO1xyXG4gICAgICAgIGNvbnN0IG1heFNlbGVjdG9yOiBGdW5jdGlvbiA9IE9iamVjdFV0aWxzLmlzRnVuY3Rpb24odmFsdWUpID8gdmFsdWUgOiAoaXRlbSwgaW5kZXgsIHBhcmFtcykgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gT2JqZWN0VXRpbHMuZXZhbHVhdGUoc2VsZWN0b3IsIHtcclxuICAgICAgICAgICAgICAgIGl0ZW06IGl0ZW0sXHJcbiAgICAgICAgICAgICAgICBpbmRleDogaW5kZXgsXHJcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHBhcmFtc1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9O1xyXG4gICAgICAgIHJldHVybiBBcnJheVV0aWxzLm1heCh2YWx1ZSwgKGl0ZW0sIGluZGV4KSA9PiBtYXhTZWxlY3RvcihpdGVtLCBpbmRleCwgcGFyYW1zKSk7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import { Pipe } from "@angular/core";
|
|
2
|
-
import { ObjectUtils } from "../utils/object.utils";
|
|
3
|
-
import { ArrayUtils } from "../utils/array.utils";
|
|
4
|
-
export class MinPipe {
|
|
5
|
-
transform(value, selector = null, params = {}) {
|
|
6
|
-
selector = selector || (item => item);
|
|
7
|
-
const minSelector = ObjectUtils.isFunction(value) ? value : (item, index, params) => {
|
|
8
|
-
return ObjectUtils.evaluate(selector, {
|
|
9
|
-
item: item,
|
|
10
|
-
index: index,
|
|
11
|
-
params: params
|
|
12
|
-
});
|
|
13
|
-
};
|
|
14
|
-
return ArrayUtils.min(value, (item, index) => minSelector(item, index, params));
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
MinPipe.decorators = [
|
|
18
|
-
{ type: Pipe, args: [{
|
|
19
|
-
name: "min"
|
|
20
|
-
},] }
|
|
21
|
-
];
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Pipe } from "@angular/core";
|
|
2
|
+
import { ObjectUtils } from "../utils/object.utils";
|
|
3
|
+
import { ArrayUtils } from "../utils/array.utils";
|
|
4
|
+
export class MinPipe {
|
|
5
|
+
transform(value, selector = null, params = {}) {
|
|
6
|
+
selector = selector || (item => item);
|
|
7
|
+
const minSelector = ObjectUtils.isFunction(value) ? value : (item, index, params) => {
|
|
8
|
+
return ObjectUtils.evaluate(selector, {
|
|
9
|
+
item: item,
|
|
10
|
+
index: index,
|
|
11
|
+
params: params
|
|
12
|
+
});
|
|
13
|
+
};
|
|
14
|
+
return ArrayUtils.min(value, (item, index) => minSelector(item, index, params));
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
MinPipe.decorators = [
|
|
18
|
+
{ type: Pipe, args: [{
|
|
19
|
+
name: "min"
|
|
20
|
+
},] }
|
|
21
|
+
];
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluLnBpcGUuanMiLCJzb3VyY2VSb290IjoiRDovV29yay9uZ3gtdXRpbHMvc3JjLyIsInNvdXJjZXMiOlsibmd4LXV0aWxzL3BpcGVzL21pbi5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFLaEQsTUFBTSxPQUFPLE9BQU87SUFDaEIsU0FBUyxDQUFDLEtBQVUsRUFBRSxXQUFnQixJQUFJLEVBQUUsU0FBYyxFQUFFO1FBQ3hELFFBQVEsR0FBRyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFTLElBQUksQ0FBQyxDQUFDO1FBQzlDLE1BQU0sV0FBVyxHQUFhLFdBQVcsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQzFGLE9BQU8sV0FBVyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUU7Z0JBQ2xDLElBQUksRUFBRSxJQUFJO2dCQUNWLEtBQUssRUFBRSxLQUFLO2dCQUNaLE1BQU0sRUFBRSxNQUFNO2FBQ2pCLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQztRQUNGLE9BQU8sVUFBVSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ3BGLENBQUM7OztZQWRKLElBQUksU0FBQztnQkFDRixJQUFJLEVBQUUsS0FBSzthQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtQaXBlLCBQaXBlVHJhbnNmb3JtfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge09iamVjdFV0aWxzfSBmcm9tIFwiLi4vdXRpbHMvb2JqZWN0LnV0aWxzXCI7XHJcbmltcG9ydCB7QXJyYXlVdGlsc30gZnJvbSBcIi4uL3V0aWxzL2FycmF5LnV0aWxzXCI7XHJcblxyXG5AUGlwZSh7XHJcbiAgICBuYW1lOiBcIm1pblwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNaW5QaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgICB0cmFuc2Zvcm0odmFsdWU6IGFueSwgc2VsZWN0b3I6IGFueSA9IG51bGwsIHBhcmFtczogYW55ID0ge30pOiBudW1iZXIge1xyXG4gICAgICAgIHNlbGVjdG9yID0gc2VsZWN0b3IgfHwgKGl0ZW0gPT4gPG51bWJlcj5pdGVtKTtcclxuICAgICAgICBjb25zdCBtaW5TZWxlY3RvcjogRnVuY3Rpb24gPSBPYmplY3RVdGlscy5pc0Z1bmN0aW9uKHZhbHVlKSA/IHZhbHVlIDogKGl0ZW0sIGluZGV4LCBwYXJhbXMpID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIE9iamVjdFV0aWxzLmV2YWx1YXRlKHNlbGVjdG9yLCB7XHJcbiAgICAgICAgICAgICAgICBpdGVtOiBpdGVtLFxyXG4gICAgICAgICAgICAgICAgaW5kZXg6IGluZGV4LFxyXG4gICAgICAgICAgICAgICAgcGFyYW1zOiBwYXJhbXNcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfTtcclxuICAgICAgICByZXR1cm4gQXJyYXlVdGlscy5taW4odmFsdWUsIChpdGVtLCBpbmRleCkgPT4gbWluU2VsZWN0b3IoaXRlbSwgaW5kZXgsIHBhcmFtcykpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
import { Pipe } from "@angular/core";
|
|
2
|
-
import { ObjectUtils } from "../utils/object.utils";
|
|
3
|
-
export function defaultReducer(result) {
|
|
4
|
-
return result;
|
|
5
|
-
}
|
|
6
|
-
export class ReducePipe {
|
|
7
|
-
transform(values, source, reducer = defaultReducer, params = {}) {
|
|
8
|
-
if (!ObjectUtils.isArray(values))
|
|
9
|
-
return [];
|
|
10
|
-
const mapperFunc = ObjectUtils.isFunction(reducer) ? reducer : (result, value, index, params) => {
|
|
11
|
-
return ObjectUtils.evaluate(reducer, {
|
|
12
|
-
result: result,
|
|
13
|
-
value: value,
|
|
14
|
-
index: index,
|
|
15
|
-
params: params
|
|
16
|
-
});
|
|
17
|
-
};
|
|
18
|
-
return values.reduce((result, value, index) => mapperFunc(result, value, index, params), source);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
ReducePipe.decorators = [
|
|
22
|
-
{ type: Pipe, args: [{
|
|
23
|
-
name: "reduce"
|
|
24
|
-
},] }
|
|
25
|
-
];
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Pipe } from "@angular/core";
|
|
2
|
+
import { ObjectUtils } from "../utils/object.utils";
|
|
3
|
+
export function defaultReducer(result) {
|
|
4
|
+
return result;
|
|
5
|
+
}
|
|
6
|
+
export class ReducePipe {
|
|
7
|
+
transform(values, source, reducer = defaultReducer, params = {}) {
|
|
8
|
+
if (!ObjectUtils.isArray(values))
|
|
9
|
+
return [];
|
|
10
|
+
const mapperFunc = ObjectUtils.isFunction(reducer) ? reducer : (result, value, index, params) => {
|
|
11
|
+
return ObjectUtils.evaluate(reducer, {
|
|
12
|
+
result: result,
|
|
13
|
+
value: value,
|
|
14
|
+
index: index,
|
|
15
|
+
params: params
|
|
16
|
+
});
|
|
17
|
+
};
|
|
18
|
+
return values.reduce((result, value, index) => mapperFunc(result, value, index, params), source);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
ReducePipe.decorators = [
|
|
22
|
+
{ type: Pipe, args: [{
|
|
23
|
+
name: "reduce"
|
|
24
|
+
},] }
|
|
25
|
+
];
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkdWNlLnBpcGUuanMiLCJzb3VyY2VSb290IjoiRDovV29yay9uZ3gtdXRpbHMvc3JjLyIsInNvdXJjZXMiOlsibmd4LXV0aWxzL3BpcGVzL3JlZHVjZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUVsRCxNQUFNLFVBQVUsY0FBYyxDQUFDLE1BQU07SUFDakMsT0FBTyxNQUFNLENBQUM7QUFDbEIsQ0FBQztBQUtELE1BQU0sT0FBTyxVQUFVO0lBQ25CLFNBQVMsQ0FBQyxNQUFhLEVBQUUsTUFBVyxFQUFFLFVBQWUsY0FBYyxFQUFFLFNBQWMsRUFBRTtRQUNqRixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7WUFBRSxPQUFPLEVBQUUsQ0FBQztRQUM1QyxNQUFNLFVBQVUsR0FBRyxXQUFXLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDNUYsT0FBTyxXQUFXLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRTtnQkFDakMsTUFBTSxFQUFFLE1BQU07Z0JBQ2QsS0FBSyxFQUFFLEtBQUs7Z0JBQ1osS0FBSyxFQUFFLEtBQUs7Z0JBQ1osTUFBTSxFQUFFLE1BQU07YUFDakIsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDO1FBQ0YsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNyRyxDQUFDOzs7WUFmSixJQUFJLFNBQUM7Z0JBQ0YsSUFBSSxFQUFFLFFBQVE7YUFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1BpcGUsIFBpcGVUcmFuc2Zvcm19IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7T2JqZWN0VXRpbHN9IGZyb20gXCIuLi91dGlscy9vYmplY3QudXRpbHNcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBkZWZhdWx0UmVkdWNlcihyZXN1bHQpIHtcclxuICAgIHJldHVybiByZXN1bHQ7XHJcbn1cclxuXHJcbkBQaXBlKHtcclxuICAgIG5hbWU6IFwicmVkdWNlXCJcclxufSlcclxuZXhwb3J0IGNsYXNzIFJlZHVjZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICAgIHRyYW5zZm9ybSh2YWx1ZXM6IGFueVtdLCBzb3VyY2U6IGFueSwgcmVkdWNlcjogYW55ID0gZGVmYXVsdFJlZHVjZXIsIHBhcmFtczogYW55ID0ge30pOiBhbnlbXSB7XHJcbiAgICAgICAgaWYgKCFPYmplY3RVdGlscy5pc0FycmF5KHZhbHVlcykpIHJldHVybiBbXTtcclxuICAgICAgICBjb25zdCBtYXBwZXJGdW5jID0gT2JqZWN0VXRpbHMuaXNGdW5jdGlvbihyZWR1Y2VyKSA/IHJlZHVjZXIgOiAocmVzdWx0LCB2YWx1ZSwgaW5kZXgsIHBhcmFtcykgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gT2JqZWN0VXRpbHMuZXZhbHVhdGUocmVkdWNlciwge1xyXG4gICAgICAgICAgICAgICAgcmVzdWx0OiByZXN1bHQsXHJcbiAgICAgICAgICAgICAgICB2YWx1ZTogdmFsdWUsXHJcbiAgICAgICAgICAgICAgICBpbmRleDogaW5kZXgsXHJcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHBhcmFtc1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9O1xyXG4gICAgICAgIHJldHVybiB2YWx1ZXMucmVkdWNlKChyZXN1bHQsIHZhbHVlLCBpbmRleCkgPT4gbWFwcGVyRnVuYyhyZXN1bHQsIHZhbHVlLCBpbmRleCwgcGFyYW1zKSwgc291cmNlKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
import { Pipe } from "@angular/core";
|
|
2
|
-
import { ObjectUtils } from "../utils/object.utils";
|
|
3
|
-
const empty = {};
|
|
4
|
-
export class RemapPipe {
|
|
5
|
-
transform(map, source, defaultValue = "key") {
|
|
6
|
-
if (!map)
|
|
7
|
-
return empty;
|
|
8
|
-
if (!source)
|
|
9
|
-
return map;
|
|
10
|
-
const remapped = ObjectUtils.filter({ map: ObjectUtils.copy(map) }, (value, key, target) => {
|
|
11
|
-
if (ObjectUtils.isArray(value) && value.every(ObjectUtils.isString)) {
|
|
12
|
-
target[key] = value.reduce((result, k) => {
|
|
13
|
-
result[k] = ObjectUtils.getValue(source, k, ObjectUtils.evaluate(defaultValue, { key: k, map: map, source: source }));
|
|
14
|
-
return result;
|
|
15
|
-
}, {});
|
|
16
|
-
return false;
|
|
17
|
-
}
|
|
18
|
-
return true;
|
|
19
|
-
});
|
|
20
|
-
return remapped.map;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
RemapPipe.decorators = [
|
|
24
|
-
{ type: Pipe, args: [{
|
|
25
|
-
name: "remap"
|
|
26
|
-
},] }
|
|
27
|
-
];
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Pipe } from "@angular/core";
|
|
2
|
+
import { ObjectUtils } from "../utils/object.utils";
|
|
3
|
+
const empty = {};
|
|
4
|
+
export class RemapPipe {
|
|
5
|
+
transform(map, source, defaultValue = "key") {
|
|
6
|
+
if (!map)
|
|
7
|
+
return empty;
|
|
8
|
+
if (!source)
|
|
9
|
+
return map;
|
|
10
|
+
const remapped = ObjectUtils.filter({ map: ObjectUtils.copy(map) }, (value, key, target) => {
|
|
11
|
+
if (ObjectUtils.isArray(value) && value.every(ObjectUtils.isString)) {
|
|
12
|
+
target[key] = value.reduce((result, k) => {
|
|
13
|
+
result[k] = ObjectUtils.getValue(source, k, ObjectUtils.evaluate(defaultValue, { key: k, map: map, source: source }));
|
|
14
|
+
return result;
|
|
15
|
+
}, {});
|
|
16
|
+
return false;
|
|
17
|
+
}
|
|
18
|
+
return true;
|
|
19
|
+
});
|
|
20
|
+
return remapped.map;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
RemapPipe.decorators = [
|
|
24
|
+
{ type: Pipe, args: [{
|
|
25
|
+
name: "remap"
|
|
26
|
+
},] }
|
|
27
|
+
];
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtYXAucGlwZS5qcyIsInNvdXJjZVJvb3QiOiJEOi9Xb3JrL25neC11dGlscy9zcmMvIiwic291cmNlcyI6WyJuZ3gtdXRpbHMvcGlwZXMvcmVtYXAucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFFbEQsTUFBTSxLQUFLLEdBQVEsRUFBRSxDQUFDO0FBS3RCLE1BQU0sT0FBTyxTQUFTO0lBRWxCLFNBQVMsQ0FBQyxHQUFRLEVBQUUsTUFBVyxFQUFFLGVBQXVCLEtBQUs7UUFDekQsSUFBSSxDQUFDLEdBQUc7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUN2QixJQUFJLENBQUMsTUFBTTtZQUFFLE9BQU8sR0FBRyxDQUFDO1FBQ3hCLE1BQU0sUUFBUSxHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUMsRUFBQyxHQUFHLEVBQUUsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBQyxFQUFFLENBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUNyRixJQUFJLFdBQVcsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEVBQUU7Z0JBQ2pFLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO29CQUNyQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsV0FBVyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxRQUFRLENBQUMsWUFBWSxFQUFFLEVBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ3BILE9BQU8sTUFBTSxDQUFDO2dCQUNsQixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ1AsT0FBTyxLQUFLLENBQUM7YUFDaEI7WUFDRCxPQUFPLElBQUksQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQztJQUN4QixDQUFDOzs7WUFuQkosSUFBSSxTQUFDO2dCQUNGLElBQUksRUFBRSxPQUFPO2FBQ2hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtQaXBlLCBQaXBlVHJhbnNmb3JtfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge09iamVjdFV0aWxzfSBmcm9tIFwiLi4vdXRpbHMvb2JqZWN0LnV0aWxzXCI7XHJcblxyXG5jb25zdCBlbXB0eTogYW55ID0ge307XHJcblxyXG5AUGlwZSh7XHJcbiAgICBuYW1lOiBcInJlbWFwXCJcclxufSlcclxuZXhwb3J0IGNsYXNzIFJlbWFwUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG5cclxuICAgIHRyYW5zZm9ybShtYXA6IGFueSwgc291cmNlOiBhbnksIGRlZmF1bHRWYWx1ZTogc3RyaW5nID0gXCJrZXlcIik6IGFueSB7XHJcbiAgICAgICAgaWYgKCFtYXApIHJldHVybiBlbXB0eTtcclxuICAgICAgICBpZiAoIXNvdXJjZSkgcmV0dXJuIG1hcDtcclxuICAgICAgICBjb25zdCByZW1hcHBlZCA9IE9iamVjdFV0aWxzLmZpbHRlcih7bWFwOiBPYmplY3RVdGlscy5jb3B5KG1hcCl9LCAodmFsdWUsIGtleSwgdGFyZ2V0KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChPYmplY3RVdGlscy5pc0FycmF5KHZhbHVlKSAmJiB2YWx1ZS5ldmVyeShPYmplY3RVdGlscy5pc1N0cmluZykpIHtcclxuICAgICAgICAgICAgICAgIHRhcmdldFtrZXldID0gdmFsdWUucmVkdWNlKChyZXN1bHQsIGspID0+IHtcclxuICAgICAgICAgICAgICAgICAgICByZXN1bHRba10gPSBPYmplY3RVdGlscy5nZXRWYWx1ZShzb3VyY2UsIGssIE9iamVjdFV0aWxzLmV2YWx1YXRlKGRlZmF1bHRWYWx1ZSwge2tleTogaywgbWFwOiBtYXAsIHNvdXJjZTogc291cmNlfSkpO1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICAgICAgICAgICAgICB9LCB7fSk7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIHJlbWFwcGVkLm1hcDtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { Pipe } from "@angular/core";
|
|
2
|
-
export class ReplacePipe {
|
|
3
|
-
transform(value, from, to) {
|
|
4
|
-
return value ? value.replace(from, to) : value;
|
|
5
|
-
}
|
|
6
|
-
}
|
|
7
|
-
ReplacePipe.decorators = [
|
|
8
|
-
{ type: Pipe, args: [{
|
|
9
|
-
name: "replace"
|
|
10
|
-
},] }
|
|
11
|
-
];
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Pipe } from "@angular/core";
|
|
2
|
+
export class ReplacePipe {
|
|
3
|
+
transform(value, from, to) {
|
|
4
|
+
return value ? value.replace(from, to) : value;
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
ReplacePipe.decorators = [
|
|
8
|
+
{ type: Pipe, args: [{
|
|
9
|
+
name: "replace"
|
|
10
|
+
},] }
|
|
11
|
+
];
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwbGFjZS5waXBlLmpzIiwic291cmNlUm9vdCI6IkQ6L1dvcmsvbmd4LXV0aWxzL3NyYy8iLCJzb3VyY2VzIjpbIm5neC11dGlscy9waXBlcy9yZXBsYWNlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLElBQUksRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFLbEQsTUFBTSxPQUFPLFdBQVc7SUFFcEIsU0FBUyxDQUFDLEtBQWEsRUFBRSxJQUFxQixFQUFFLEVBQVU7UUFDdEQsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDbkQsQ0FBQzs7O1lBUEosSUFBSSxTQUFDO2dCQUNGLElBQUksRUFBRSxTQUFTO2FBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtQaXBlLCBQaXBlVHJhbnNmb3JtfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuQFBpcGUoe1xyXG4gICAgbmFtZTogXCJyZXBsYWNlXCJcclxufSlcclxuZXhwb3J0IGNsYXNzIFJlcGxhY2VQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcblxyXG4gICAgdHJhbnNmb3JtKHZhbHVlOiBzdHJpbmcsIGZyb206IHN0cmluZyB8IFJlZ0V4cCwgdG86IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHZhbHVlID8gdmFsdWUucmVwbGFjZShmcm9tLCB0bykgOiB2YWx1ZTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import { Pipe } from "@angular/core";
|
|
2
|
-
import { ObjectUtils } from "../utils/object.utils";
|
|
3
|
-
const emptyArray = [];
|
|
4
|
-
export class ReversePipe {
|
|
5
|
-
transform(value) {
|
|
6
|
-
if (!ObjectUtils.isArray(value))
|
|
7
|
-
return emptyArray;
|
|
8
|
-
const result = [];
|
|
9
|
-
for (let i = value.length - 1; i >= 0; i--) {
|
|
10
|
-
result.push(value[i]);
|
|
11
|
-
}
|
|
12
|
-
return result;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
ReversePipe.decorators = [
|
|
16
|
-
{ type: Pipe, args: [{
|
|
17
|
-
name: "reverse"
|
|
18
|
-
},] }
|
|
19
|
-
];
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Pipe } from "@angular/core";
|
|
2
|
+
import { ObjectUtils } from "../utils/object.utils";
|
|
3
|
+
const emptyArray = [];
|
|
4
|
+
export class ReversePipe {
|
|
5
|
+
transform(value) {
|
|
6
|
+
if (!ObjectUtils.isArray(value))
|
|
7
|
+
return emptyArray;
|
|
8
|
+
const result = [];
|
|
9
|
+
for (let i = value.length - 1; i >= 0; i--) {
|
|
10
|
+
result.push(value[i]);
|
|
11
|
+
}
|
|
12
|
+
return result;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
ReversePipe.decorators = [
|
|
16
|
+
{ type: Pipe, args: [{
|
|
17
|
+
name: "reverse"
|
|
18
|
+
},] }
|
|
19
|
+
];
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2ZXJzZS5waXBlLmpzIiwic291cmNlUm9vdCI6IkQ6L1dvcmsvbmd4LXV0aWxzL3NyYy8iLCJzb3VyY2VzIjpbIm5neC11dGlscy9waXBlcy9yZXZlcnNlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLElBQUksRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRWxELE1BQU0sVUFBVSxHQUFVLEVBQUUsQ0FBQztBQUs3QixNQUFNLE9BQU8sV0FBVztJQUVwQixTQUFTLENBQUMsS0FBWTtRQUNsQixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFBRSxPQUFPLFVBQVUsQ0FBQztRQUNuRCxNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDbEIsS0FBSyxJQUFJLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3hDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDekI7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDOzs7WUFaSixJQUFJLFNBQUM7Z0JBQ0YsSUFBSSxFQUFFLFNBQVM7YUFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1BpcGUsIFBpcGVUcmFuc2Zvcm19IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7T2JqZWN0VXRpbHN9IGZyb20gXCIuLi91dGlscy9vYmplY3QudXRpbHNcIjtcclxuXHJcbmNvbnN0IGVtcHR5QXJyYXk6IGFueVtdID0gW107XHJcblxyXG5AUGlwZSh7XHJcbiAgICBuYW1lOiBcInJldmVyc2VcIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgUmV2ZXJzZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuXHJcbiAgICB0cmFuc2Zvcm0odmFsdWU6IGFueVtdKTogYW55W10ge1xyXG4gICAgICAgIGlmICghT2JqZWN0VXRpbHMuaXNBcnJheSh2YWx1ZSkpIHJldHVybiBlbXB0eUFycmF5O1xyXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IFtdO1xyXG4gICAgICAgIGZvciAobGV0IGkgPSB2YWx1ZS5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xyXG4gICAgICAgICAgICByZXN1bHQucHVzaCh2YWx1ZVtpXSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import { Pipe } from "@angular/core";
|
|
2
|
-
import { FormatterService } from "../services/formatter.service";
|
|
3
|
-
export class RoundPipe {
|
|
4
|
-
constructor(formatter) {
|
|
5
|
-
this.formatter = formatter;
|
|
6
|
-
}
|
|
7
|
-
transform(value, precision = 2, divider = 1) {
|
|
8
|
-
return this.formatter.roundNumber(value, precision, divider);
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
RoundPipe.decorators = [
|
|
12
|
-
{ type: Pipe, args: [{
|
|
13
|
-
name: "round"
|
|
14
|
-
},] }
|
|
15
|
-
];
|
|
16
|
-
RoundPipe.ctorParameters = () => [
|
|
17
|
-
{ type: FormatterService }
|
|
18
|
-
];
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Pipe } from "@angular/core";
|
|
2
|
+
import { FormatterService } from "../services/formatter.service";
|
|
3
|
+
export class RoundPipe {
|
|
4
|
+
constructor(formatter) {
|
|
5
|
+
this.formatter = formatter;
|
|
6
|
+
}
|
|
7
|
+
transform(value, precision = 2, divider = 1) {
|
|
8
|
+
return this.formatter.roundNumber(value, precision, divider);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
RoundPipe.decorators = [
|
|
12
|
+
{ type: Pipe, args: [{
|
|
13
|
+
name: "round"
|
|
14
|
+
},] }
|
|
15
|
+
];
|
|
16
|
+
RoundPipe.ctorParameters = () => [
|
|
17
|
+
{ type: FormatterService }
|
|
18
|
+
];
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91bmQucGlwZS5qcyIsInNvdXJjZVJvb3QiOiJEOi9Xb3JrL25neC11dGlscy9zcmMvIiwic291cmNlcyI6WyJuZ3gtdXRpbHMvcGlwZXMvcm91bmQucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUsvRCxNQUFNLE9BQU8sU0FBUztJQUVsQixZQUFvQixTQUEyQjtRQUEzQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtJQUMvQyxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQWEsRUFBRSxZQUFvQixDQUFDLEVBQUUsVUFBa0IsQ0FBQztRQUMvRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDakUsQ0FBQzs7O1lBVkosSUFBSSxTQUFDO2dCQUNGLElBQUksRUFBRSxPQUFPO2FBQ2hCOzs7WUFKTyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1BpcGUsIFBpcGVUcmFuc2Zvcm19IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7Rm9ybWF0dGVyU2VydmljZX0gZnJvbSBcIi4uL3NlcnZpY2VzL2Zvcm1hdHRlci5zZXJ2aWNlXCI7XHJcblxyXG5AUGlwZSh7XHJcbiAgICBuYW1lOiBcInJvdW5kXCJcclxufSlcclxuZXhwb3J0IGNsYXNzIFJvdW5kUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZm9ybWF0dGVyOiBGb3JtYXR0ZXJTZXJ2aWNlKSB7XHJcbiAgICB9XHJcblxyXG4gICAgdHJhbnNmb3JtKHZhbHVlOiBudW1iZXIsIHByZWNpc2lvbjogbnVtYmVyID0gMiwgZGl2aWRlcjogbnVtYmVyID0gMSk6IG51bWJlciB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybWF0dGVyLnJvdW5kTnVtYmVyKHZhbHVlLCBwcmVjaXNpb24sIGRpdmlkZXIpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
import { Pipe } from "@angular/core";
|
|
2
|
-
import { DomSanitizer } from "@angular/platform-browser";
|
|
3
|
-
export class SafeHtmlPipe {
|
|
4
|
-
constructor(sanitizer) {
|
|
5
|
-
this.sanitizer = sanitizer;
|
|
6
|
-
}
|
|
7
|
-
transform(value, type = "html") {
|
|
8
|
-
switch (type) {
|
|
9
|
-
case "html":
|
|
10
|
-
return this.sanitizer.bypassSecurityTrustHtml(value);
|
|
11
|
-
case "style":
|
|
12
|
-
return this.sanitizer.bypassSecurityTrustStyle(value);
|
|
13
|
-
case "script":
|
|
14
|
-
return this.sanitizer.bypassSecurityTrustScript(value);
|
|
15
|
-
case "url":
|
|
16
|
-
return this.sanitizer.bypassSecurityTrustUrl(value);
|
|
17
|
-
case "resourceUrl":
|
|
18
|
-
return this.sanitizer.bypassSecurityTrustResourceUrl(value);
|
|
19
|
-
default:
|
|
20
|
-
throw new Error(`SafePipe unable to bypass security for invalid type: ${type}`);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
SafeHtmlPipe.decorators = [
|
|
25
|
-
{ type: Pipe, args: [{
|
|
26
|
-
name: "safe"
|
|
27
|
-
},] }
|
|
28
|
-
];
|
|
29
|
-
SafeHtmlPipe.ctorParameters = () => [
|
|
30
|
-
{ type: DomSanitizer }
|
|
31
|
-
];
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Pipe } from "@angular/core";
|
|
2
|
+
import { DomSanitizer } from "@angular/platform-browser";
|
|
3
|
+
export class SafeHtmlPipe {
|
|
4
|
+
constructor(sanitizer) {
|
|
5
|
+
this.sanitizer = sanitizer;
|
|
6
|
+
}
|
|
7
|
+
transform(value, type = "html") {
|
|
8
|
+
switch (type) {
|
|
9
|
+
case "html":
|
|
10
|
+
return this.sanitizer.bypassSecurityTrustHtml(value);
|
|
11
|
+
case "style":
|
|
12
|
+
return this.sanitizer.bypassSecurityTrustStyle(value);
|
|
13
|
+
case "script":
|
|
14
|
+
return this.sanitizer.bypassSecurityTrustScript(value);
|
|
15
|
+
case "url":
|
|
16
|
+
return this.sanitizer.bypassSecurityTrustUrl(value);
|
|
17
|
+
case "resourceUrl":
|
|
18
|
+
return this.sanitizer.bypassSecurityTrustResourceUrl(value);
|
|
19
|
+
default:
|
|
20
|
+
throw new Error(`SafePipe unable to bypass security for invalid type: ${type}`);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
SafeHtmlPipe.decorators = [
|
|
25
|
+
{ type: Pipe, args: [{
|
|
26
|
+
name: "safe"
|
|
27
|
+
},] }
|
|
28
|
+
];
|
|
29
|
+
SafeHtmlPipe.ctorParameters = () => [
|
|
30
|
+
{ type: DomSanitizer }
|
|
31
|
+
];
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FmZS1odG1sLnBpcGUuanMiLCJzb3VyY2VSb290IjoiRDovV29yay9uZ3gtdXRpbHMvc3JjLyIsInNvdXJjZXMiOlsibmd4LXV0aWxzL3BpcGVzL3NhZmUtaHRtbC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBQyxZQUFZLEVBQVcsTUFBTSwyQkFBMkIsQ0FBQztBQUtqRSxNQUFNLE9BQU8sWUFBWTtJQUVyQixZQUFvQixTQUF1QjtRQUF2QixjQUFTLEdBQVQsU0FBUyxDQUFjO0lBRTNDLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBYSxFQUFFLE9BQWUsTUFBTTtRQUMxQyxRQUFRLElBQUksRUFBRTtZQUNWLEtBQUssTUFBTTtnQkFDUCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsdUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDekQsS0FBSyxPQUFPO2dCQUNSLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyx3QkFBd0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMxRCxLQUFLLFFBQVE7Z0JBQ1QsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLHlCQUF5QixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzNELEtBQUssS0FBSztnQkFDTixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsc0JBQXNCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDeEQsS0FBSyxhQUFhO2dCQUNkLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyw4QkFBOEIsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNoRTtnQkFDSSxNQUFNLElBQUksS0FBSyxDQUFDLHdEQUF3RCxJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZGO0lBQ0wsQ0FBQzs7O1lBeEJKLElBQUksU0FBQztnQkFDRixJQUFJLEVBQUUsTUFBTTthQUNmOzs7WUFKTyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtQaXBlLCBQaXBlVHJhbnNmb3JtfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0RvbVNhbml0aXplciwgU2FmZUh0bWx9IGZyb20gXCJAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyXCI7XHJcblxyXG5AUGlwZSh7XHJcbiAgICBuYW1lOiBcInNhZmVcIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2FmZUh0bWxQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge1xyXG5cclxuICAgIH1cclxuXHJcbiAgICB0cmFuc2Zvcm0odmFsdWU6IHN0cmluZywgdHlwZTogc3RyaW5nID0gXCJodG1sXCIpOiBTYWZlSHRtbCB7XHJcbiAgICAgICAgc3dpdGNoICh0eXBlKSB7XHJcbiAgICAgICAgICAgIGNhc2UgXCJodG1sXCI6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwodmFsdWUpO1xyXG4gICAgICAgICAgICBjYXNlIFwic3R5bGVcIjpcclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0U3R5bGUodmFsdWUpO1xyXG4gICAgICAgICAgICBjYXNlIFwic2NyaXB0XCI6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFNjcmlwdCh2YWx1ZSk7XHJcbiAgICAgICAgICAgIGNhc2UgXCJ1cmxcIjpcclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0VXJsKHZhbHVlKTtcclxuICAgICAgICAgICAgY2FzZSBcInJlc291cmNlVXJsXCI6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKHZhbHVlKTtcclxuICAgICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgU2FmZVBpcGUgdW5hYmxlIHRvIGJ5cGFzcyBzZWN1cml0eSBmb3IgaW52YWxpZCB0eXBlOiAke3R5cGV9YCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
|