@stemy/ngx-utils 12.0.3 → 12.0.6

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.
@@ -0,0 +1,54 @@
1
+ import { EventEmitter, HostBinding, HostListener, Input, Output } from "@angular/core";
2
+ export class AsyncMethodBase {
3
+ constructor(toaster) {
4
+ this.toaster = toaster;
5
+ this.onSuccess = new EventEmitter();
6
+ this.onError = new EventEmitter();
7
+ }
8
+ get isDisabled() {
9
+ return this.disabled;
10
+ }
11
+ get isLoading() {
12
+ return this.loading;
13
+ }
14
+ click() {
15
+ if (this.disabled)
16
+ return;
17
+ this.callMethod();
18
+ }
19
+ callMethod() {
20
+ if (this.loading)
21
+ return true;
22
+ this.loading = true;
23
+ const method = this.getMethod();
24
+ const result = !method ? null : method(this.context);
25
+ if (!(result instanceof Promise)) {
26
+ this.loading = false;
27
+ return false;
28
+ }
29
+ result.then(result => {
30
+ this.loading = false;
31
+ if (result) {
32
+ this.onSuccess.emit(result);
33
+ this.toaster.success(result.message, result.context);
34
+ }
35
+ }, reason => {
36
+ if (!reason || !reason.message)
37
+ throw new Error("Reason must implement IAsyncMessage interface");
38
+ this.loading = false;
39
+ this.onError.emit(reason);
40
+ this.toaster.error(reason.message, reason.context);
41
+ });
42
+ return true;
43
+ }
44
+ }
45
+ AsyncMethodBase.propDecorators = {
46
+ disabled: [{ type: Input }],
47
+ context: [{ type: Input }],
48
+ onSuccess: [{ type: Output }],
49
+ onError: [{ type: Output }],
50
+ isDisabled: [{ type: HostBinding, args: ["class.disabled",] }],
51
+ isLoading: [{ type: HostBinding, args: ["class.loading",] }],
52
+ click: [{ type: HostListener, args: ["click",] }]
53
+ };
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmMtbWV0aG9kLmJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LXV0aWxzL2RpcmVjdGl2ZXMvYXN5bmMtbWV0aG9kLmJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFHckYsTUFBTSxPQUFnQixlQUFlO0lBb0JqQyxZQUFnQyxPQUF3QjtRQUF4QixZQUFPLEdBQVAsT0FBTyxDQUFpQjtRQUNwRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksWUFBWSxFQUFpQixDQUFDO1FBQ25ELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxZQUFZLEVBQWlCLENBQUM7SUFDckQsQ0FBQztJQWJELElBQ0ksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFDSSxTQUFTO1FBQ1QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3hCLENBQUM7SUFVRCxLQUFLO1FBQ0QsSUFBSSxJQUFJLENBQUMsUUFBUTtZQUFFLE9BQU87UUFDMUIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxVQUFVO1FBQ04sSUFBSSxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQzlCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNoQyxNQUFNLE1BQU0sR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxDQUFDLE1BQU0sWUFBWSxPQUFPLENBQUMsRUFBRTtZQUM5QixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNyQixPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUNELE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDakIsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7WUFDckIsSUFBSSxNQUFNLEVBQUU7Z0JBQ1IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQzVCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQ3hEO1FBQ0wsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxFQUFFO1lBQ1IsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPO2dCQUMxQixNQUFNLElBQUksS0FBSyxDQUFDLCtDQUErQyxDQUFDLENBQUM7WUFDckUsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7WUFDckIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDMUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkQsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDOzs7dUJBdERBLEtBQUs7c0JBQ0wsS0FBSzt3QkFFTCxNQUFNO3NCQUNOLE1BQU07eUJBSU4sV0FBVyxTQUFDLGdCQUFnQjt3QkFLNUIsV0FBVyxTQUFDLGVBQWU7b0JBWTNCLFlBQVksU0FBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPdXRwdXR9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7QXN5bmNNZXRob2QsIElBc3luY01lc3NhZ2UsIElUb2FzdGVyU2VydmljZX0gZnJvbSBcIi4uL2NvbW1vbi10eXBlc1wiO1xyXG5cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFzeW5jTWV0aG9kQmFzZSB7XHJcblxyXG4gICAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW47XHJcbiAgICBASW5wdXQoKSBjb250ZXh0OiBhbnk7XHJcblxyXG4gICAgQE91dHB1dCgpIG9uU3VjY2VzczogRXZlbnRFbWl0dGVyPElBc3luY01lc3NhZ2U+O1xyXG4gICAgQE91dHB1dCgpIG9uRXJyb3I6IEV2ZW50RW1pdHRlcjxJQXN5bmNNZXNzYWdlPjtcclxuXHJcbiAgICBwcm90ZWN0ZWQgbG9hZGluZzogYm9vbGVhbjtcclxuXHJcbiAgICBASG9zdEJpbmRpbmcoXCJjbGFzcy5kaXNhYmxlZFwiKVxyXG4gICAgZ2V0IGlzRGlzYWJsZWQoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlzYWJsZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgQEhvc3RCaW5kaW5nKFwiY2xhc3MubG9hZGluZ1wiKVxyXG4gICAgZ2V0IGlzTG9hZGluZygpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5sb2FkaW5nO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgdG9hc3RlcjogSVRvYXN0ZXJTZXJ2aWNlKSB7XHJcbiAgICAgICAgdGhpcy5vblN1Y2Nlc3MgPSBuZXcgRXZlbnRFbWl0dGVyPElBc3luY01lc3NhZ2U+KCk7XHJcbiAgICAgICAgdGhpcy5vbkVycm9yID0gbmV3IEV2ZW50RW1pdHRlcjxJQXN5bmNNZXNzYWdlPigpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBhYnN0cmFjdCBnZXRNZXRob2QoKTogQXN5bmNNZXRob2Q7XHJcblxyXG4gICAgQEhvc3RMaXN0ZW5lcihcImNsaWNrXCIpXHJcbiAgICBjbGljaygpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkgcmV0dXJuO1xyXG4gICAgICAgIHRoaXMuY2FsbE1ldGhvZCgpO1xyXG4gICAgfVxyXG5cclxuICAgIGNhbGxNZXRob2QoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKHRoaXMubG9hZGluZykgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICBjb25zdCBtZXRob2QgPSB0aGlzLmdldE1ldGhvZCgpO1xyXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9ICFtZXRob2QgPyBudWxsIDogbWV0aG9kKHRoaXMuY29udGV4dCk7XHJcbiAgICAgICAgaWYgKCEocmVzdWx0IGluc3RhbmNlb2YgUHJvbWlzZSkpIHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmVzdWx0LnRoZW4ocmVzdWx0ID0+IHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGlmIChyZXN1bHQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMub25TdWNjZXNzLmVtaXQocmVzdWx0KTtcclxuICAgICAgICAgICAgICAgIHRoaXMudG9hc3Rlci5zdWNjZXNzKHJlc3VsdC5tZXNzYWdlLCByZXN1bHQuY29udGV4dCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9LCByZWFzb24gPT4ge1xyXG4gICAgICAgICAgICBpZiAoIXJlYXNvbiB8fCAhcmVhc29uLm1lc3NhZ2UpXHJcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJSZWFzb24gbXVzdCBpbXBsZW1lbnQgSUFzeW5jTWVzc2FnZSBpbnRlcmZhY2VcIik7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm9uRXJyb3IuZW1pdChyZWFzb24pO1xyXG4gICAgICAgICAgICB0aGlzLnRvYXN0ZXIuZXJyb3IocmVhc29uLm1lc3NhZ2UsIHJlYXNvbi5jb250ZXh0KTtcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -1,39 +1,12 @@
1
- import { EventEmitter, Inject, Input, Output, Directive, HostBinding, HostListener } from "@angular/core";
1
+ import { Directive, Inject, Input } from "@angular/core";
2
2
  import { TOASTER_SERVICE } from "../common-types";
3
- export class AsyncMethodDirective {
3
+ import { AsyncMethodBase } from "./async-method.base";
4
+ export class AsyncMethodDirective extends AsyncMethodBase {
4
5
  constructor(toaster) {
5
- this.toaster = toaster;
6
- this.onSuccess = new EventEmitter();
7
- this.onError = new EventEmitter();
6
+ super(toaster);
8
7
  }
9
- get isDisabled() {
10
- return this.disabled;
11
- }
12
- get isLoading() {
13
- return this.loading;
14
- }
15
- click() {
16
- if (this.disabled)
17
- return;
18
- this.callMethod();
19
- }
20
- callMethod() {
21
- if (this.loading)
22
- return;
23
- this.loading = true;
24
- this.method(this.context).then(result => {
25
- this.loading = false;
26
- if (result) {
27
- this.onSuccess.emit(result);
28
- this.toaster.success(result.message, result.context);
29
- }
30
- }, reason => {
31
- if (!reason || !reason.message)
32
- throw new Error("Reason must implement IAsyncMessage interface");
33
- this.loading = false;
34
- this.onError.emit(reason);
35
- this.toaster.error(reason.message, reason.context);
36
- });
8
+ getMethod() {
9
+ return this.method;
37
10
  }
38
11
  }
39
12
  AsyncMethodDirective.decorators = [
@@ -46,13 +19,6 @@ AsyncMethodDirective.ctorParameters = () => [
46
19
  { type: undefined, decorators: [{ type: Inject, args: [TOASTER_SERVICE,] }] }
47
20
  ];
48
21
  AsyncMethodDirective.propDecorators = {
49
- method: [{ type: Input, args: ["async-method",] }],
50
- disabled: [{ type: Input }],
51
- context: [{ type: Input }],
52
- onSuccess: [{ type: Output }],
53
- onError: [{ type: Output }],
54
- isDisabled: [{ type: HostBinding, args: ["class.disabled",] }],
55
- isLoading: [{ type: HostBinding, args: ["class.loading",] }],
56
- click: [{ type: HostListener, args: ["click",] }]
22
+ method: [{ type: Input, args: ["async-method",] }]
57
23
  };
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmMtbWV0aG9kLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9uZ3gtdXRpbHMvZGlyZWN0aXZlcy9hc3luYy1tZXRob2QuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEcsT0FBTyxFQUFDLGVBQWUsRUFBOEMsTUFBTSxpQkFBaUIsQ0FBQztBQU03RixNQUFNLE9BQU8sb0JBQW9CO0lBcUI3QixZQUE2QyxPQUF3QjtRQUF4QixZQUFPLEdBQVAsT0FBTyxDQUFpQjtRQUNqRSxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksWUFBWSxFQUFpQixDQUFDO1FBQ25ELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxZQUFZLEVBQWlCLENBQUM7SUFDckQsQ0FBQztJQWJELElBQ0ksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFDSSxTQUFTO1FBQ1QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3hCLENBQUM7SUFRRCxLQUFLO1FBQ0QsSUFBSSxJQUFJLENBQUMsUUFBUTtZQUFFLE9BQU87UUFDMUIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxVQUFVO1FBQ04sSUFBSSxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU87UUFDekIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3BDLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ3JCLElBQUksTUFBTSxFQUFFO2dCQUNSLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUM1QixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQzthQUN4RDtRQUNMLENBQUMsRUFBRSxNQUFNLENBQUMsRUFBRTtZQUNSLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTztnQkFDMUIsTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO1lBQ3JFLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ3JCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzFCLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7O1lBcERKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQixRQUFRLEVBQUUsY0FBYzthQUMzQjs7OzRDQXNCZ0IsTUFBTSxTQUFDLGVBQWU7OztxQkFuQmxDLEtBQUssU0FBQyxjQUFjO3VCQUNwQixLQUFLO3NCQUNMLEtBQUs7d0JBRUwsTUFBTTtzQkFDTixNQUFNO3lCQUlOLFdBQVcsU0FBQyxnQkFBZ0I7d0JBSzVCLFdBQVcsU0FBQyxlQUFlO29CQVUzQixZQUFZLFNBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPdXRwdXQsIERpcmVjdGl2ZSwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lcn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtUT0FTVEVSX1NFUlZJQ0UsIElUb2FzdGVyU2VydmljZSwgSUFzeW5jTWVzc2FnZSwgQXN5bmNNZXRob2R9IGZyb20gXCIuLi9jb21tb24tdHlwZXNcIjtcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6IFwiW2FzeW5jLW1ldGhvZF1cIixcclxuICAgIGV4cG9ydEFzOiBcImFzeW5jLW1ldGhvZFwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBc3luY01ldGhvZERpcmVjdGl2ZSB7XHJcblxyXG4gICAgQElucHV0KFwiYXN5bmMtbWV0aG9kXCIpIG1ldGhvZDogQXN5bmNNZXRob2Q7XHJcbiAgICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbjtcclxuICAgIEBJbnB1dCgpIGNvbnRleHQ6IGFueTtcclxuXHJcbiAgICBAT3V0cHV0KCkgb25TdWNjZXNzOiBFdmVudEVtaXR0ZXI8SUFzeW5jTWVzc2FnZT47XHJcbiAgICBAT3V0cHV0KCkgb25FcnJvcjogRXZlbnRFbWl0dGVyPElBc3luY01lc3NhZ2U+O1xyXG5cclxuICAgIHByaXZhdGUgbG9hZGluZzogYm9vbGVhbjtcclxuXHJcbiAgICBASG9zdEJpbmRpbmcoXCJjbGFzcy5kaXNhYmxlZFwiKVxyXG4gICAgZ2V0IGlzRGlzYWJsZWQoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlzYWJsZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgQEhvc3RCaW5kaW5nKFwiY2xhc3MubG9hZGluZ1wiKVxyXG4gICAgZ2V0IGlzTG9hZGluZygpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5sb2FkaW5nO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoVE9BU1RFUl9TRVJWSUNFKSBwcml2YXRlIHRvYXN0ZXI6IElUb2FzdGVyU2VydmljZSkge1xyXG4gICAgICAgIHRoaXMub25TdWNjZXNzID0gbmV3IEV2ZW50RW1pdHRlcjxJQXN5bmNNZXNzYWdlPigpO1xyXG4gICAgICAgIHRoaXMub25FcnJvciA9IG5ldyBFdmVudEVtaXR0ZXI8SUFzeW5jTWVzc2FnZT4oKTtcclxuICAgIH1cclxuXHJcbiAgICBASG9zdExpc3RlbmVyKFwiY2xpY2tcIilcclxuICAgIGNsaWNrKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm47XHJcbiAgICAgICAgdGhpcy5jYWxsTWV0aG9kKCk7XHJcbiAgICB9XHJcblxyXG4gICAgY2FsbE1ldGhvZCgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5sb2FkaW5nKSByZXR1cm47XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLm1ldGhvZCh0aGlzLmNvbnRleHQpLnRoZW4ocmVzdWx0ID0+IHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGlmIChyZXN1bHQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMub25TdWNjZXNzLmVtaXQocmVzdWx0KTtcclxuICAgICAgICAgICAgICAgIHRoaXMudG9hc3Rlci5zdWNjZXNzKHJlc3VsdC5tZXNzYWdlLCByZXN1bHQuY29udGV4dCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9LCByZWFzb24gPT4ge1xyXG4gICAgICAgICAgICBpZiAoIXJlYXNvbiB8fCAhcmVhc29uLm1lc3NhZ2UpXHJcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJSZWFzb24gbXVzdCBpbXBsZW1lbnQgSUFzeW5jTWVzc2FnZSBpbnRlcmZhY2VcIik7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm9uRXJyb3IuZW1pdChyZWFzb24pO1xyXG4gICAgICAgICAgICB0aGlzLnRvYXN0ZXIuZXJyb3IocmVhc29uLm1lc3NhZ2UsIHJlYXNvbi5jb250ZXh0KTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxufVxyXG4iXX0=
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmMtbWV0aG9kLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9uZ3gtdXRpbHMvZGlyZWN0aXZlcy9hc3luYy1tZXRob2QuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLEVBQStCLGVBQWUsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzlFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQU1wRCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsZUFBZTtJQUlyRCxZQUFxQyxPQUF3QjtRQUN6RCxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbkIsQ0FBQztJQUVTLFNBQVM7UUFDZixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDdkIsQ0FBQzs7O1lBZEosU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSxnQkFBZ0I7Z0JBQzFCLFFBQVEsRUFBRSxjQUFjO2FBQzNCOzs7NENBS2dCLE1BQU0sU0FBQyxlQUFlOzs7cUJBRmxDLEtBQUssU0FBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEluamVjdCwgSW5wdXR9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7QXN5bmNNZXRob2QsIElUb2FzdGVyU2VydmljZSwgVE9BU1RFUl9TRVJWSUNFfSBmcm9tIFwiLi4vY29tbW9uLXR5cGVzXCI7XHJcbmltcG9ydCB7QXN5bmNNZXRob2RCYXNlfSBmcm9tIFwiLi9hc3luYy1tZXRob2QuYmFzZVwiO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogXCJbYXN5bmMtbWV0aG9kXVwiLFxyXG4gICAgZXhwb3J0QXM6IFwiYXN5bmMtbWV0aG9kXCJcclxufSlcclxuZXhwb3J0IGNsYXNzIEFzeW5jTWV0aG9kRGlyZWN0aXZlIGV4dGVuZHMgQXN5bmNNZXRob2RCYXNlIHtcclxuXHJcbiAgICBASW5wdXQoXCJhc3luYy1tZXRob2RcIikgbWV0aG9kOiBBc3luY01ldGhvZDtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KFRPQVNURVJfU0VSVklDRSkgdG9hc3RlcjogSVRvYXN0ZXJTZXJ2aWNlKSB7XHJcbiAgICAgICAgc3VwZXIodG9hc3Rlcik7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIGdldE1ldGhvZCgpOiBBc3luY01ldGhvZCB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMubWV0aG9kO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -28,6 +28,7 @@ export { ConfigService } from "./ngx-utils/services/config.service";
28
28
  export { ErrorHandlerService } from "./ngx-utils/services/error-handler.service";
29
29
  export { EventsService } from "./ngx-utils/services/events.service";
30
30
  export { FormatterService } from "./ngx-utils/services/formatter.service";
31
+ export { GlobalTemplateService } from "./ngx-utils/services/global-template.service";
31
32
  export { IconService } from "./ngx-utils/services/icon.service";
32
33
  export { LanguageService } from "./ngx-utils/services/language.service";
33
34
  export { OpenApiService } from "./ngx-utils/services/open-api.service";
@@ -63,6 +64,7 @@ export { RoundPipe } from "./ngx-utils/pipes/round.pipe";
63
64
  export { SafeHtmlPipe } from "./ngx-utils/pipes/safe-html.pipe";
64
65
  export { TranslatePipe } from "./ngx-utils/pipes/translate.pipe";
65
66
  export { ValuesPipe } from "./ngx-utils/pipes/values.pipe";
67
+ export { AsyncMethodBase } from "./ngx-utils/directives/async-method.base";
66
68
  export { AsyncMethodDirective } from "./ngx-utils/directives/async-method.directive";
67
69
  export { BackgroundDirective } from "./ngx-utils/directives/background.directive";
68
70
  export { DynamicTableTemplateDirective } from "./ngx-utils/directives/dynamic-table-template.directive";
@@ -79,4 +81,4 @@ export { UnorderedListComponent } from "./ngx-utils/components/unordered-list/un
79
81
  export { DynamicTableComponent } from "./ngx-utils/components/dynamic-table/dynamic-table.component";
80
82
  export { PaginationMenuComponent } from "./ngx-utils/components/pagination-menu/pagination-menu.component";
81
83
  export { NgxUtilsModule } from "./ngx-utils/ngx-utils.module";
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxXQUFXLEVBRVgsWUFBWSxFQUtaLGdCQUFnQixFQUtoQixZQUFZLEVBR1osZUFBZSxFQUdmLFdBQVcsRUFFWCxlQUFlLEVBR2Ysc0JBQXNCLEVBUXRCLG1CQUFtQixFQVFuQixxQkFBcUIsRUFRckIsV0FBVyxFQUVYLGVBQWUsRUFFZixXQUFXLEVBUVgsaUJBQWlCLEVBQ2pCLGNBQWMsRUFFZCxjQUFjLEVBQ2QsV0FBVyxFQUNYLGFBQWEsRUFDYixZQUFZLEVBRVosYUFBYSxFQUdiLGdCQUFnQixFQUdoQixhQUFhLEVBQ2hCLE1BQU0sMEJBQTBCLENBQUM7QUFFbEMsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDMUUsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQzNELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDM0QsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUM3RCxPQUFPLEVBQVMsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUN2RSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDMUQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQzdELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDdkQsT0FBTyxFQUFDLFNBQVMs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QUMsZUFBZSxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDeEUsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sc0RBQXNELENBQUM7QUFDaEcsT0FBTyxFQUFDLDhCQUE4QixFQUFDLE1BQU0sMERBQTBELENBQUM7QUFFeEcsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUFDdEcsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sOERBQThELENBQUM7QUFDbkcsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sa0VBQWtFLENBQUM7QUFFekcsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLDhCQUE4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHtcclxuICAgIElSZXNvbHZlRmFjdG9yeSxcclxuICAgIENhbnZhc0NvbG9yLFxyXG4gICAgSUljb25TZXJ2aWNlLFxyXG4gICAgSUNPTl9TRVJWSUNFLFxyXG4gICAgSVRyYW5zbGF0aW9uLFxyXG4gICAgSVRyYW5zbGF0aW9ucyxcclxuICAgIElMYW5ndWFnZVNldHRpbmdzLFxyXG4gICAgSUxhbmd1YWdlU2VydmljZSxcclxuICAgIExBTkdVQUdFX1NFUlZJQ0UsXHJcbiAgICBJQXV0aFNlcnZpY2UsXHJcbiAgICBSb3V0ZVZhbGlkYXRvcixcclxuICAgIElSb3V0ZURhdGEsXHJcbiAgICBJUm91dGUsXHJcbiAgICBBVVRIX1NFUlZJQ0UsXHJcbiAgICBJQWNsQ29tcG9uZW50LFxyXG4gICAgSVByb21pc2VTZXJ2aWNlLFxyXG4gICAgUFJPTUlTRV9TRVJWSUNFLFxyXG4gICAgSVJvdXRlU3RhdGVJbmZvLFxyXG4gICAgTmF2aWdhdGlvblVybFBhcmFtLFxyXG4gICAgU3RvcmFnZU1vZGUsXHJcbiAgICBJVG9hc3RlclNlcnZpY2UsXHJcbiAgICBUT0FTVEVSX1NFUlZJQ0UsXHJcbiAgICBJQXN5bmNNZXNzYWdlLFxyXG4gICAgQXN5bmNNZXRob2QsXHJcbiAgICBVbm9yZWRlcmVkTGlzdFRlbXBsYXRlLFxyXG4gICAgVW5vcmRlcmVkTGlzdFRlbXBsYXRlcyxcclxuICAgIFVub3JkZXJlZExpc3RTdHlsZSxcclxuICAgIElBamF4UmVxdWVzdERldGFpbHMsXHJcbiAgICBBamF4UmVxdWVzdENhbGxiYWNrLFxyXG4gICAgSVNjcmlwdFByb21pc2VzLFxyXG4gICAgSVN0eWxlUHJvbWlzZXMsXHJcbiAgICBJU2VhcmNoT2JzZXJ2YWJsZSxcclxuICAgIEZhY3RvcnlEZXBlbmRlbmNpZXMsXHJcbiAgICBJVGltZXIsXHJcbiAgICBJRXh0cmFQcm9wZXJ0aWVzLFxyXG4gICAgSUdyb3VwTWFwLFxyXG4gICAgVHJhbnNsYXRpb25RdWVyeSxcclxuICAgIElQYWdlSW5mbyxcclxuICAgIElQYWdpbmF0aW9uRGF0YSxcclxuICAgIFBhZ2luYXRpb25EYXRhTG9hZGVyLFxyXG4gICAgUGFnaW5hdGlvbkl0ZW1Db250ZXh0LFxyXG4gICAgSUh0dHBIZWFkZXJzLFxyXG4gICAgSUh0dHBQYXJhbXMsXHJcbiAgICBJUmVxdWVzdE9wdGlvbnMsXHJcbiAgICBJSXNzdWVDb250ZXh0LFxyXG4gICAgSVByb2dyZXNzLFxyXG4gICAgUHJvZ3Jlc3NMaXN0ZW5lcixcclxuICAgIFByb21pc2VFeGVjdXRvcixcclxuICAgIEh0dHBQcm9taXNlLFxyXG4gICAgSUh0dHBTZXJ2aWNlLFxyXG4gICAgRVhQUkVTU19SRVFVRVNULFxyXG4gICAgSUFwaVNlcnZpY2UsXHJcbiAgICBBUElfU0VSVklDRSxcclxuICAgIElPcGVuQXBpU2NoZW1hUHJvcGVydHksXHJcbiAgICBJT3BlbkFwaVNjaGVtYSxcclxuICAgIElPcGVuQXBpU2NoZW1hcyxcclxuICAgIElUYWJsZUNvbHVtbnMsXHJcbiAgICBJVGFibGVUZW1wbGF0ZSxcclxuICAgIElUYWJsZVRlbXBsYXRlcyxcclxuICAgIFRhYmxlRGF0YUxvYWRlcixcclxuICAgIFJlc291cmNlSWZDb250ZXh0LFxyXG4gICAgSUNvbmZpZ3VyYXRpb24sXHJcbiAgICBJQ29uZmlnU2VydmljZSxcclxuICAgIENPTkZJR19TRVJWSUNFLFxyXG4gICAgQkFTRV9DT05GSUcsXHJcbiAgICBTQ1JJUFRfUEFSQU1TLFxyXG4gICAgUk9PVF9FTEVNRU5ULFxyXG4gICAgRXJyb3JIYW5kbGVyQ2FsbGJhY2ssXHJcbiAgICBFUlJPUl9IQU5ETEVSLFxyXG4gICAgR2xvYmFsQ29tcG9uZW50TW9kaWZpZXIsXHJcbiAgICBJR2xvYmFsVGVtcGxhdGVzLFxyXG4gICAgR0xPQkFMX1RFTVBMQVRFUyxcclxuICAgIEFwcEluaXRpYWxpemVyRnVuYyxcclxuICAgIElNb2R1bGVDb25maWcsXHJcbiAgICBWYWx1ZWRQcm9taXNlXHJcbn0gZnJvbSBcIi4vbmd4LXV0aWxzL2NvbW1vbi10eXBlc1wiO1xyXG5cclxuZXhwb3J0IHtBamF4UmVxdWVzdEhhbmRsZXJ9IGZyb20gXCIuL25neC11dGlscy91dGlscy9hamF4LXJlcXVlc3QtaGFuZGxlclwiO1xyXG5leHBvcnQge09iamVjdFV0aWxzfSBmcm9tIFwiLi9uZ3gtdXRpbHMvdXRpbHMvb2JqZWN0LnV0aWxzXCI7XHJcbmV4cG9ydCB7RGF0ZVV0aWxzfSBmcm9tIFwiLi9uZ3gtdXRpbHMvdXRpbHMvZGF0ZS51dGlsc1wiO1xyXG5leHBvcnQge0NhbnZhc1V0aWxzfSBmcm9tIFwiLi9uZ3gtdXRpbHMvdXRpbHMvY2FudmFzLnV0aWxzXCI7XHJcbmV4cG9ydCB7RmlsZVV0aWxzfSBmcm9tIFwiLi9uZ3gtdXRpbHMvdXRpbHMvZmlsZS51dGlsc1wiO1xyXG5leHBvcnQge0dlbmVyaWNWYWx1ZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3V0aWxzL2dlbmVyaWMtdmFsdWVcIjtcclxuZXhwb3J0IHtJU2hhcGUsIFJlY3QsIENpcmNsZSwgUG9pbnR9IGZyb20gXCIuL25neC11dGlscy91dGlscy9nZW9tZXRyeVwiO1xyXG5leHBvcnQge0luaXRpYWxpemVyfSBmcm9tIFwiLi9uZ3gtdXRpbHMvdXRpbHMvaW5pdGlhbGl6ZXJcIjtcclxuZXhwb3J0IHtSZWZsZWN0VXRpbHN9IGZyb20gXCIuL25neC11dGlscy91dGlscy9yZWZsZWN0LnV0aWxzXCI7XHJcbmV4cG9ydCB7TG9hZGVyVXRpbHN9IGZyb20gXCIuL25neC11dGlscy91dGlscy9sb2FkZXIudXRpbHNcIjtcclxuZXhwb3J0IHtNYXRoVXRpbHN9IGZyb20gXCIuL25neC11dGlscy91dGlscy9tYXRoLnV0aWxzXCI7XHJcbmV4cG9ydCB7QXV0aEd1YXJkfSBmcm9tIFwiLi9uZ3gtdXRpbHMvdXRpbHMvYXV0aC5ndWFyZFwiO1xyXG5leHBvcnQge09ic2VydmFibGVVdGlscywgSVN1YnNjcmliZXJJbmZvfSBmcm9tIFwiLi9uZ3gtdXRpbHMvdXRpbHMvb2JzZXJ2YWJsZS51dGlsc1wiO1xyXG5leHBvcnQge1N0cmluZ1V0aWxzfSBmcm9tIFwiLi9uZ3gtdXRpbHMvdXRpbHMvc3RyaW5nLnV0aWxzXCI7XHJcbmV4cG9ydCB7QXJyYXlVdGlsc30gZnJvbSBcIi4vbmd4LXV0aWxzL3V0aWxzL2FycmF5LnV0aWxzXCI7XHJcbmV4cG9ydCB7U2V0VXRpbHN9IGZyb20gXCIuL25neC11dGlscy91dGlscy9zZXQudXRpbHNcIjtcclxuZXhwb3J0IHtUaW1lclV0aWxzfSBmcm9tIFwiLi9uZ3gtdXRpbHMvdXRpbHMvdGltZXIudXRpbHNcIjtcclxuZXhwb3J0IHtVbmlxdWVVdGlsc30gZnJvbSBcIi4vbmd4LXV0aWxzL3V0aWxzL3VuaXF1ZS51dGlsc1wiO1xyXG5leHBvcnQge1ZlY3Rvcn0gZnJvbSBcIi4vbmd4LXV0aWxzL3V0aWxzL3ZlY3RvclwiO1xyXG5cclxuZXhwb3J0IHtVbml2ZXJzYWxTZXJ2aWNlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvdW5pdmVyc2FsLnNlcnZpY2VcIjtcclxuZXhwb3J0IHtBY2xTZXJ2aWNlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvYWNsLnNlcnZpY2VcIjtcclxuZXhwb3J0IHtBcGlTZXJ2aWNlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvYXBpLnNlcnZpY2VcIjtcclxuZXhwb3J0IHtTdGF0aWNBdXRoU2VydmljZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3NlcnZpY2VzL2F1dGguc2VydmljZVwiO1xyXG5leHBvcnQge0Jhc2VIdHRwQ2xpZW50fSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvYmFzZS1odHRwLmNsaWVudFwiO1xyXG5leHBvcnQge0Jhc2VIdHRwU2VydmljZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3NlcnZpY2VzL2Jhc2UtaHR0cC5zZXJ2aWNlXCI7XHJcbmV4cG9ydCB7Q29uZmlnU2VydmljZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3NlcnZpY2VzL2NvbmZpZy5zZXJ2aWNlXCI7XHJcbmV4cG9ydCB7RXJyb3JIYW5kbGVyU2VydmljZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3NlcnZpY2VzL2Vycm9yLWhhbmRsZXIuc2VydmljZVwiO1xyXG5leHBvcnQge0V2ZW50c1NlcnZpY2V9IGZyb20gXCIuL25neC11dGlscy9zZXJ2aWNlcy9ldmVudHMuc2VydmljZVwiO1xyXG5leHBvcnQge0Zvcm1hdHRlclNlcnZpY2V9IGZyb20gXCIuL25neC11dGlscy9zZXJ2aWNlcy9mb3JtYXR0ZXIuc2VydmljZVwiO1xyXG5leHBvcnQge0ljb25TZXJ2aWNlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvaWNvbi5zZXJ2aWNlXCI7XHJcbmV4cG9ydCB7TGFuZ3VhZ2VTZXJ2aWNlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvbGFuZ3VhZ2Uuc2VydmljZVwiO1xyXG5leHBvcnQge09wZW5BcGlTZXJ2aWNlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvb3Blbi1hcGkuc2VydmljZVwiO1xyXG5leHBvcnQge0lTdGF0ZUluZm8sIFN0YXRlU2VydmljZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3NlcnZpY2VzL3N0YXRlLnNlcnZpY2VcIjtcclxuZXhwb3J0IHtTdGF0aWNMYW5ndWFnZVNlcnZpY2V9IGZyb20gXCIuL25neC11dGlscy9zZXJ2aWNlcy9zdGF0aWMtbGFuZ3VhZ2Uuc2VydmljZVwiO1xyXG5leHBvcnQge1N0b3JhZ2VTZXJ2aWNlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvc3RvcmFnZS5zZXJ2aWNlXCI7XHJcbmV4cG9ydCB7Q29uc29sZVRvYXN0ZXJTZXJ2aWNlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvdG9hc3Rlci5zZXJ2aWNlXCI7XHJcbmV4cG9ydCB7SVVybERpY3Rpb25hcnksIFRyYW5zbGF0ZWRVcmxTZXJpYWxpemVyfSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvdHJhbnNsYXRlZC11cmwuc2VyaWFsaXplclwiO1xyXG5leHBvcnQge1Byb21pc2VTZXJ2aWNlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvcHJvbWlzZS5zZXJ2aWNlXCI7XHJcblxyXG5leHBvcnQge1Jlc2l6ZUV2ZW50UGx1Z2lufSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGx1Z2lucy9yZXNpemUtZXZlbnQucGx1Z2luXCI7XHJcbmV4cG9ydCB7U2Nyb2xsRXZlbnRQbHVnaW59IGZyb20gXCIuL25neC11dGlscy9wbHVnaW5zL3Njcm9sbC1ldmVudC5wbHVnaW5cIjtcclxuXHJcbmV4cG9ydCB7Q2h1bmtQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMvY2h1bmsucGlwZVwiO1xyXG5leHBvcnQge0VudHJpZXNQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMvZW50cmllcy5waXBlXCI7XHJcbmV4cG9ydCB7RXh0cmFJdGVtUHJvcGVydGllc1BpcGV9IGZyb20gXCIuL25neC11dGlscy9waXBlcy9leHRyYS1pdGVtLXByb3BlcnRpZXMucGlwZVwiO1xyXG5leHBvcnQge0ZpbHRlclBpcGV9IGZyb20gXCIuL25neC11dGlscy9waXBlcy9maWx0ZXIucGlwZVwiO1xyXG5leHBvcnQge0ZpbmRQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMvZmluZC5waXBlXCI7XHJcbmV4cG9ydCB7Rm9ybWF0TnVtYmVyUGlwZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3BpcGVzL2Zvcm1hdC1udW1iZXIucGlwZVwiO1xyXG5leHBvcnQge0dldE9mZnNldFBpcGV9IGZyb20gXCIuL25neC11dGlscy9waXBlcy9nZXQtb2Zmc2V0LnBpcGVcIjtcclxuZXhwb3J0IHtHZXRUeXBlUGlwZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3BpcGVzL2dldC10eXBlLnBpcGVcIjtcclxuZXhwb3J0IHtHbG9iYWxUZW1wbGF0ZVBpcGV9IGZyb20gXCIuL25neC11dGlscy9waXBlcy9nbG9iYWwtdGVtcGxhdGUucGlwZVwiO1xyXG5leHBvcnQge0dyb3VwQnlQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMvZ3JvdXAtYnkucGlwZVwiO1xyXG5leHBvcnQge0lzVHlwZVBpcGV9IGZyb20gXCIuL25neC11dGlscy9waXBlcy9pcy10eXBlLnBpcGVcIjtcclxuZXhwb3J0IHtKb2luUGlwZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3BpcGVzL2pvaW4ucGlwZVwiO1xyXG5leHBvcnQge0tleXNQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMva2V5cy5waXBlXCI7XHJcbmV4cG9ydCB7TWFwUGlwZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3BpcGVzL21hcC5waXBlXCI7XHJcbmV4cG9ydCB7TWF4UGlwZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3BpcGVzL21heC5waXBlXCI7XHJcbmV4cG9ydCB7TWluUGlwZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3BpcGVzL21pbi5waXBlXCI7XHJcbmV4cG9ydCB7UmVkdWNlUGlwZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3BpcGVzL3JlZHVjZS5waXBlXCI7XHJcbmV4cG9ydCB7UmVtYXBQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMvcmVtYXAucGlwZVwiO1xyXG5leHBvcnQge1JlcGxhY2VQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMvcmVwbGFjZS5waXBlXCI7XHJcbmV4cG9ydCB7UmV2ZXJzZVBpcGV9IGZyb20gXCIuL25neC11dGlscy9waXBlcy9yZXZlcnNlLnBpcGVcIjtcclxuZXhwb3J0IHtSb3VuZFBpcGV9IGZyb20gXCIuL25neC11dGlscy9waXBlcy9yb3VuZC5waXBlXCI7XHJcbmV4cG9ydCB7U2FmZUh0bWxQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMvc2FmZS1odG1sLnBpcGVcIjtcclxuZXhwb3J0IHtUcmFuc2xhdGVQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMvdHJhbnNsYXRlLnBpcGVcIjtcclxuZXhwb3J0IHtWYWx1ZXNQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMvdmFsdWVzLnBpcGVcIjtcclxuXHJcbmV4cG9ydCB7QXN5bmNNZXRob2REaXJlY3RpdmV9IGZyb20gXCIuL25neC11dGlscy9kaXJlY3RpdmVzL2FzeW5jLW1ldGhvZC5kaXJlY3RpdmVcIjtcclxuZXhwb3J0IHtCYWNrZ3JvdW5kRGlyZWN0aXZlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvZGlyZWN0aXZlcy9iYWNrZ3JvdW5kLmRpcmVjdGl2ZVwiO1xyXG5leHBvcnQge0R5bmFtaWNUYWJsZVRlbXBsYXRlRGlyZWN0aXZlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvZGlyZWN0aXZlcy9keW5hbWljLXRhYmxlLXRlbXBsYXRlLmRpcmVjdGl2ZVwiO1xyXG5leHBvcnQge0dsb2JhbFRlbXBsYXRlRGlyZWN0aXZlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvZGlyZWN0aXZlcy9nbG9iYWwtdGVtcGxhdGUuZGlyZWN0aXZlXCI7XHJcbmV4cG9ydCB7SWNvbkRpcmVjdGl2ZX0gZnJvbSBcIi4vbmd4LXV0aWxzL2RpcmVjdGl2ZXMvaWNvbi5kaXJlY3RpdmVcIjtcclxuZXhwb3J0IHtOZ3hUZW1wbGF0ZU91dGxldERpcmVjdGl2ZX0gZnJvbSBcIi4vbmd4LXV0aWxzL2RpcmVjdGl2ZXMvbmd4LXRlbXBsYXRlLW91dGxldC5kaXJlY3RpdmVcIjtcclxuZXhwb3J0IHtQYWdpbmF0aW9uRGlyZWN0aXZlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvZGlyZWN0aXZlcy9wYWdpbmF0aW9uLmRpcmVjdGl2ZVwiO1xyXG5leHBvcnQge1BhZ2luYXRpb25JdGVtRGlyZWN0aXZlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvZGlyZWN0aXZlcy9wYWdpbmF0aW9uLWl0ZW0uZGlyZWN0aXZlXCI7XHJcbmV4cG9ydCB7UmVzb3VyY2VJZkRpcmVjdGl2ZX0gZnJvbSBcIi4vbmd4LXV0aWxzL2RpcmVjdGl2ZXMvcmVzb3VyY2UtaWYuZGlyZWN0aXZlXCI7XHJcbmV4cG9ydCB7U3RpY2t5RGlyZWN0aXZlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvZGlyZWN0aXZlcy9zdGlja3kuZGlyZWN0aXZlXCI7XHJcbmV4cG9ydCB7VW5vcmRlcmVkTGlzdEl0ZW1EaXJlY3RpdmV9IGZyb20gXCIuL25neC11dGlscy9kaXJlY3RpdmVzL3Vub3JkZXJlZC1saXN0LWl0ZW0uZGlyZWN0aXZlXCI7XHJcbmV4cG9ydCB7VW5vcmRlcmVkTGlzdFRlbXBsYXRlRGlyZWN0aXZlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvZGlyZWN0aXZlcy91bm9yZGVyZWQtbGlzdC10ZW1wbGF0ZS5kaXJlY3RpdmVcIjtcclxuXHJcbmV4cG9ydCB7VW5vcmRlcmVkTGlzdENvbXBvbmVudH0gZnJvbSBcIi4vbmd4LXV0aWxzL2NvbXBvbmVudHMvdW5vcmRlcmVkLWxpc3QvdW5vcmRlcmVkLWxpc3QuY29tcG9uZW50XCI7XHJcbmV4cG9ydCB7RHluYW1pY1RhYmxlQ29tcG9uZW50fSBmcm9tIFwiLi9uZ3gtdXRpbHMvY29tcG9uZW50cy9keW5hbWljLXRhYmxlL2R5bmFtaWMtdGFibGUuY29tcG9uZW50XCI7XHJcbmV4cG9ydCB7UGFnaW5hdGlvbk1lbnVDb21wb25lbnR9IGZyb20gXCIuL25neC11dGlscy9jb21wb25lbnRzL3BhZ2luYXRpb24tbWVudS9wYWdpbmF0aW9uLW1lbnUuY29tcG9uZW50XCI7XHJcblxyXG5leHBvcnQge05neFV0aWxzTW9kdWxlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvbmd4LXV0aWxzLm1vZHVsZVwiO1xyXG4iXX0=
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxXQUFXLEVBRVgsWUFBWSxFQUtaLGdCQUFnQixFQUtoQixZQUFZLEVBR1osZUFBZSxFQUdmLFdBQVcsRUFFWCxlQUFlLEVBR2Ysc0JBQXNCLEVBUXRCLG1CQUFtQixFQVFuQixxQkFBcUIsRUFRckIsV0FBVyxFQUVYLGVBQWUsRUFFZixXQUFXLEVBUVgsaUJBQWlCLEVBQ2pCLGNBQWMsRUFFZCxjQUFjLEVBQ2QsV0FBVyxFQUNYLGFBQWEsRUFDYixZQUFZLEVBRVosYUFBYSxFQUdiLGdCQUFnQixFQUdoQixhQUFhLEVBQ2hCLE1BQU0sMEJBQTBCLENBQUM7QUFFbEMsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDMUUsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQzNELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDM0QsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUM3RCxPQUFPLEVBQVMsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUN2RSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDMUQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQzdELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDdkQsT0FBTyxFQUFDLFNBQVMs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LHVCQUF1QixFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFDekYsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDakYsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQ3hFLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQ2hHLE9BQU8sRUFBQyw4QkFBOEIsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBRXhHLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLGdFQUFnRSxDQUFDO0FBQ3RHLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLDhEQUE4RCxDQUFDO0FBQ25HLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLGtFQUFrRSxDQUFDO0FBRXpHLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7XHJcbiAgICBJUmVzb2x2ZUZhY3RvcnksXHJcbiAgICBDYW52YXNDb2xvcixcclxuICAgIElJY29uU2VydmljZSxcclxuICAgIElDT05fU0VSVklDRSxcclxuICAgIElUcmFuc2xhdGlvbixcclxuICAgIElUcmFuc2xhdGlvbnMsXHJcbiAgICBJTGFuZ3VhZ2VTZXR0aW5ncyxcclxuICAgIElMYW5ndWFnZVNlcnZpY2UsXHJcbiAgICBMQU5HVUFHRV9TRVJWSUNFLFxyXG4gICAgSUF1dGhTZXJ2aWNlLFxyXG4gICAgUm91dGVWYWxpZGF0b3IsXHJcbiAgICBJUm91dGVEYXRhLFxyXG4gICAgSVJvdXRlLFxyXG4gICAgQVVUSF9TRVJWSUNFLFxyXG4gICAgSUFjbENvbXBvbmVudCxcclxuICAgIElQcm9taXNlU2VydmljZSxcclxuICAgIFBST01JU0VfU0VSVklDRSxcclxuICAgIElSb3V0ZVN0YXRlSW5mbyxcclxuICAgIE5hdmlnYXRpb25VcmxQYXJhbSxcclxuICAgIFN0b3JhZ2VNb2RlLFxyXG4gICAgSVRvYXN0ZXJTZXJ2aWNlLFxyXG4gICAgVE9BU1RFUl9TRVJWSUNFLFxyXG4gICAgSUFzeW5jTWVzc2FnZSxcclxuICAgIEFzeW5jTWV0aG9kLFxyXG4gICAgVW5vcmVkZXJlZExpc3RUZW1wbGF0ZSxcclxuICAgIFVub3JkZXJlZExpc3RUZW1wbGF0ZXMsXHJcbiAgICBVbm9yZGVyZWRMaXN0U3R5bGUsXHJcbiAgICBJQWpheFJlcXVlc3REZXRhaWxzLFxyXG4gICAgQWpheFJlcXVlc3RDYWxsYmFjayxcclxuICAgIElTY3JpcHRQcm9taXNlcyxcclxuICAgIElTdHlsZVByb21pc2VzLFxyXG4gICAgSVNlYXJjaE9ic2VydmFibGUsXHJcbiAgICBGYWN0b3J5RGVwZW5kZW5jaWVzLFxyXG4gICAgSVRpbWVyLFxyXG4gICAgSUV4dHJhUHJvcGVydGllcyxcclxuICAgIElHcm91cE1hcCxcclxuICAgIFRyYW5zbGF0aW9uUXVlcnksXHJcbiAgICBJUGFnZUluZm8sXHJcbiAgICBJUGFnaW5hdGlvbkRhdGEsXHJcbiAgICBQYWdpbmF0aW9uRGF0YUxvYWRlcixcclxuICAgIFBhZ2luYXRpb25JdGVtQ29udGV4dCxcclxuICAgIElIdHRwSGVhZGVycyxcclxuICAgIElIdHRwUGFyYW1zLFxyXG4gICAgSVJlcXVlc3RPcHRpb25zLFxyXG4gICAgSUlzc3VlQ29udGV4dCxcclxuICAgIElQcm9ncmVzcyxcclxuICAgIFByb2dyZXNzTGlzdGVuZXIsXHJcbiAgICBQcm9taXNlRXhlY3V0b3IsXHJcbiAgICBIdHRwUHJvbWlzZSxcclxuICAgIElIdHRwU2VydmljZSxcclxuICAgIEVYUFJFU1NfUkVRVUVTVCxcclxuICAgIElBcGlTZXJ2aWNlLFxyXG4gICAgQVBJX1NFUlZJQ0UsXHJcbiAgICBJT3BlbkFwaVNjaGVtYVByb3BlcnR5LFxyXG4gICAgSU9wZW5BcGlTY2hlbWEsXHJcbiAgICBJT3BlbkFwaVNjaGVtYXMsXHJcbiAgICBJVGFibGVDb2x1bW5zLFxyXG4gICAgSVRhYmxlVGVtcGxhdGUsXHJcbiAgICBJVGFibGVUZW1wbGF0ZXMsXHJcbiAgICBUYWJsZURhdGFMb2FkZXIsXHJcbiAgICBSZXNvdXJjZUlmQ29udGV4dCxcclxuICAgIElDb25maWd1cmF0aW9uLFxyXG4gICAgSUNvbmZpZ1NlcnZpY2UsXHJcbiAgICBDT05GSUdfU0VSVklDRSxcclxuICAgIEJBU0VfQ09ORklHLFxyXG4gICAgU0NSSVBUX1BBUkFNUyxcclxuICAgIFJPT1RfRUxFTUVOVCxcclxuICAgIEVycm9ySGFuZGxlckNhbGxiYWNrLFxyXG4gICAgRVJST1JfSEFORExFUixcclxuICAgIEdsb2JhbENvbXBvbmVudE1vZGlmaWVyLFxyXG4gICAgSUdsb2JhbFRlbXBsYXRlcyxcclxuICAgIEdMT0JBTF9URU1QTEFURVMsXHJcbiAgICBBcHBJbml0aWFsaXplckZ1bmMsXHJcbiAgICBJTW9kdWxlQ29uZmlnLFxyXG4gICAgVmFsdWVkUHJvbWlzZVxyXG59IGZyb20gXCIuL25neC11dGlscy9jb21tb24tdHlwZXNcIjtcclxuXHJcbmV4cG9ydCB7QWpheFJlcXVlc3RIYW5kbGVyfSBmcm9tIFwiLi9uZ3gtdXRpbHMvdXRpbHMvYWpheC1yZXF1ZXN0LWhhbmRsZXJcIjtcclxuZXhwb3J0IHtPYmplY3RVdGlsc30gZnJvbSBcIi4vbmd4LXV0aWxzL3V0aWxzL29iamVjdC51dGlsc1wiO1xyXG5leHBvcnQge0RhdGVVdGlsc30gZnJvbSBcIi4vbmd4LXV0aWxzL3V0aWxzL2RhdGUudXRpbHNcIjtcclxuZXhwb3J0IHtDYW52YXNVdGlsc30gZnJvbSBcIi4vbmd4LXV0aWxzL3V0aWxzL2NhbnZhcy51dGlsc1wiO1xyXG5leHBvcnQge0ZpbGVVdGlsc30gZnJvbSBcIi4vbmd4LXV0aWxzL3V0aWxzL2ZpbGUudXRpbHNcIjtcclxuZXhwb3J0IHtHZW5lcmljVmFsdWV9IGZyb20gXCIuL25neC11dGlscy91dGlscy9nZW5lcmljLXZhbHVlXCI7XHJcbmV4cG9ydCB7SVNoYXBlLCBSZWN0LCBDaXJjbGUsIFBvaW50fSBmcm9tIFwiLi9uZ3gtdXRpbHMvdXRpbHMvZ2VvbWV0cnlcIjtcclxuZXhwb3J0IHtJbml0aWFsaXplcn0gZnJvbSBcIi4vbmd4LXV0aWxzL3V0aWxzL2luaXRpYWxpemVyXCI7XHJcbmV4cG9ydCB7UmVmbGVjdFV0aWxzfSBmcm9tIFwiLi9uZ3gtdXRpbHMvdXRpbHMvcmVmbGVjdC51dGlsc1wiO1xyXG5leHBvcnQge0xvYWRlclV0aWxzfSBmcm9tIFwiLi9uZ3gtdXRpbHMvdXRpbHMvbG9hZGVyLnV0aWxzXCI7XHJcbmV4cG9ydCB7TWF0aFV0aWxzfSBmcm9tIFwiLi9uZ3gtdXRpbHMvdXRpbHMvbWF0aC51dGlsc1wiO1xyXG5leHBvcnQge0F1dGhHdWFyZH0gZnJvbSBcIi4vbmd4LXV0aWxzL3V0aWxzL2F1dGguZ3VhcmRcIjtcclxuZXhwb3J0IHtPYnNlcnZhYmxlVXRpbHMsIElTdWJzY3JpYmVySW5mb30gZnJvbSBcIi4vbmd4LXV0aWxzL3V0aWxzL29ic2VydmFibGUudXRpbHNcIjtcclxuZXhwb3J0IHtTdHJpbmdVdGlsc30gZnJvbSBcIi4vbmd4LXV0aWxzL3V0aWxzL3N0cmluZy51dGlsc1wiO1xyXG5leHBvcnQge0FycmF5VXRpbHN9IGZyb20gXCIuL25neC11dGlscy91dGlscy9hcnJheS51dGlsc1wiO1xyXG5leHBvcnQge1NldFV0aWxzfSBmcm9tIFwiLi9uZ3gtdXRpbHMvdXRpbHMvc2V0LnV0aWxzXCI7XHJcbmV4cG9ydCB7VGltZXJVdGlsc30gZnJvbSBcIi4vbmd4LXV0aWxzL3V0aWxzL3RpbWVyLnV0aWxzXCI7XHJcbmV4cG9ydCB7VW5pcXVlVXRpbHN9IGZyb20gXCIuL25neC11dGlscy91dGlscy91bmlxdWUudXRpbHNcIjtcclxuZXhwb3J0IHtWZWN0b3J9IGZyb20gXCIuL25neC11dGlscy91dGlscy92ZWN0b3JcIjtcclxuXHJcbmV4cG9ydCB7VW5pdmVyc2FsU2VydmljZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3NlcnZpY2VzL3VuaXZlcnNhbC5zZXJ2aWNlXCI7XHJcbmV4cG9ydCB7QWNsU2VydmljZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3NlcnZpY2VzL2FjbC5zZXJ2aWNlXCI7XHJcbmV4cG9ydCB7QXBpU2VydmljZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3NlcnZpY2VzL2FwaS5zZXJ2aWNlXCI7XHJcbmV4cG9ydCB7U3RhdGljQXV0aFNlcnZpY2V9IGZyb20gXCIuL25neC11dGlscy9zZXJ2aWNlcy9hdXRoLnNlcnZpY2VcIjtcclxuZXhwb3J0IHtCYXNlSHR0cENsaWVudH0gZnJvbSBcIi4vbmd4LXV0aWxzL3NlcnZpY2VzL2Jhc2UtaHR0cC5jbGllbnRcIjtcclxuZXhwb3J0IHtCYXNlSHR0cFNlcnZpY2V9IGZyb20gXCIuL25neC11dGlscy9zZXJ2aWNlcy9iYXNlLWh0dHAuc2VydmljZVwiO1xyXG5leHBvcnQge0NvbmZpZ1NlcnZpY2V9IGZyb20gXCIuL25neC11dGlscy9zZXJ2aWNlcy9jb25maWcuc2VydmljZVwiO1xyXG5leHBvcnQge0Vycm9ySGFuZGxlclNlcnZpY2V9IGZyb20gXCIuL25neC11dGlscy9zZXJ2aWNlcy9lcnJvci1oYW5kbGVyLnNlcnZpY2VcIjtcclxuZXhwb3J0IHtFdmVudHNTZXJ2aWNlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvZXZlbnRzLnNlcnZpY2VcIjtcclxuZXhwb3J0IHtGb3JtYXR0ZXJTZXJ2aWNlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvZm9ybWF0dGVyLnNlcnZpY2VcIjtcclxuZXhwb3J0IHtHbG9iYWxUZW1wbGF0ZVNlcnZpY2V9IGZyb20gXCIuL25neC11dGlscy9zZXJ2aWNlcy9nbG9iYWwtdGVtcGxhdGUuc2VydmljZVwiO1xyXG5leHBvcnQge0ljb25TZXJ2aWNlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvaWNvbi5zZXJ2aWNlXCI7XHJcbmV4cG9ydCB7TGFuZ3VhZ2VTZXJ2aWNlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvbGFuZ3VhZ2Uuc2VydmljZVwiO1xyXG5leHBvcnQge09wZW5BcGlTZXJ2aWNlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvb3Blbi1hcGkuc2VydmljZVwiO1xyXG5leHBvcnQge0lTdGF0ZUluZm8sIFN0YXRlU2VydmljZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3NlcnZpY2VzL3N0YXRlLnNlcnZpY2VcIjtcclxuZXhwb3J0IHtTdGF0aWNMYW5ndWFnZVNlcnZpY2V9IGZyb20gXCIuL25neC11dGlscy9zZXJ2aWNlcy9zdGF0aWMtbGFuZ3VhZ2Uuc2VydmljZVwiO1xyXG5leHBvcnQge1N0b3JhZ2VTZXJ2aWNlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvc3RvcmFnZS5zZXJ2aWNlXCI7XHJcbmV4cG9ydCB7Q29uc29sZVRvYXN0ZXJTZXJ2aWNlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvdG9hc3Rlci5zZXJ2aWNlXCI7XHJcbmV4cG9ydCB7SVVybERpY3Rpb25hcnksIFRyYW5zbGF0ZWRVcmxTZXJpYWxpemVyfSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvdHJhbnNsYXRlZC11cmwuc2VyaWFsaXplclwiO1xyXG5leHBvcnQge1Byb21pc2VTZXJ2aWNlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvc2VydmljZXMvcHJvbWlzZS5zZXJ2aWNlXCI7XHJcblxyXG5leHBvcnQge1Jlc2l6ZUV2ZW50UGx1Z2lufSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGx1Z2lucy9yZXNpemUtZXZlbnQucGx1Z2luXCI7XHJcbmV4cG9ydCB7U2Nyb2xsRXZlbnRQbHVnaW59IGZyb20gXCIuL25neC11dGlscy9wbHVnaW5zL3Njcm9sbC1ldmVudC5wbHVnaW5cIjtcclxuXHJcbmV4cG9ydCB7Q2h1bmtQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMvY2h1bmsucGlwZVwiO1xyXG5leHBvcnQge0VudHJpZXNQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMvZW50cmllcy5waXBlXCI7XHJcbmV4cG9ydCB7RXh0cmFJdGVtUHJvcGVydGllc1BpcGV9IGZyb20gXCIuL25neC11dGlscy9waXBlcy9leHRyYS1pdGVtLXByb3BlcnRpZXMucGlwZVwiO1xyXG5leHBvcnQge0ZpbHRlclBpcGV9IGZyb20gXCIuL25neC11dGlscy9waXBlcy9maWx0ZXIucGlwZVwiO1xyXG5leHBvcnQge0ZpbmRQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMvZmluZC5waXBlXCI7XHJcbmV4cG9ydCB7Rm9ybWF0TnVtYmVyUGlwZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3BpcGVzL2Zvcm1hdC1udW1iZXIucGlwZVwiO1xyXG5leHBvcnQge0dldE9mZnNldFBpcGV9IGZyb20gXCIuL25neC11dGlscy9waXBlcy9nZXQtb2Zmc2V0LnBpcGVcIjtcclxuZXhwb3J0IHtHZXRUeXBlUGlwZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3BpcGVzL2dldC10eXBlLnBpcGVcIjtcclxuZXhwb3J0IHtHbG9iYWxUZW1wbGF0ZVBpcGV9IGZyb20gXCIuL25neC11dGlscy9waXBlcy9nbG9iYWwtdGVtcGxhdGUucGlwZVwiO1xyXG5leHBvcnQge0dyb3VwQnlQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMvZ3JvdXAtYnkucGlwZVwiO1xyXG5leHBvcnQge0lzVHlwZVBpcGV9IGZyb20gXCIuL25neC11dGlscy9waXBlcy9pcy10eXBlLnBpcGVcIjtcclxuZXhwb3J0IHtKb2luUGlwZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3BpcGVzL2pvaW4ucGlwZVwiO1xyXG5leHBvcnQge0tleXNQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMva2V5cy5waXBlXCI7XHJcbmV4cG9ydCB7TWFwUGlwZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3BpcGVzL21hcC5waXBlXCI7XHJcbmV4cG9ydCB7TWF4UGlwZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3BpcGVzL21heC5waXBlXCI7XHJcbmV4cG9ydCB7TWluUGlwZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3BpcGVzL21pbi5waXBlXCI7XHJcbmV4cG9ydCB7UmVkdWNlUGlwZX0gZnJvbSBcIi4vbmd4LXV0aWxzL3BpcGVzL3JlZHVjZS5waXBlXCI7XHJcbmV4cG9ydCB7UmVtYXBQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMvcmVtYXAucGlwZVwiO1xyXG5leHBvcnQge1JlcGxhY2VQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMvcmVwbGFjZS5waXBlXCI7XHJcbmV4cG9ydCB7UmV2ZXJzZVBpcGV9IGZyb20gXCIuL25neC11dGlscy9waXBlcy9yZXZlcnNlLnBpcGVcIjtcclxuZXhwb3J0IHtSb3VuZFBpcGV9IGZyb20gXCIuL25neC11dGlscy9waXBlcy9yb3VuZC5waXBlXCI7XHJcbmV4cG9ydCB7U2FmZUh0bWxQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMvc2FmZS1odG1sLnBpcGVcIjtcclxuZXhwb3J0IHtUcmFuc2xhdGVQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMvdHJhbnNsYXRlLnBpcGVcIjtcclxuZXhwb3J0IHtWYWx1ZXNQaXBlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvcGlwZXMvdmFsdWVzLnBpcGVcIjtcclxuXHJcbmV4cG9ydCB7QXN5bmNNZXRob2RCYXNlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvZGlyZWN0aXZlcy9hc3luYy1tZXRob2QuYmFzZVwiO1xyXG5leHBvcnQge0FzeW5jTWV0aG9kRGlyZWN0aXZlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvZGlyZWN0aXZlcy9hc3luYy1tZXRob2QuZGlyZWN0aXZlXCI7XHJcbmV4cG9ydCB7QmFja2dyb3VuZERpcmVjdGl2ZX0gZnJvbSBcIi4vbmd4LXV0aWxzL2RpcmVjdGl2ZXMvYmFja2dyb3VuZC5kaXJlY3RpdmVcIjtcclxuZXhwb3J0IHtEeW5hbWljVGFibGVUZW1wbGF0ZURpcmVjdGl2ZX0gZnJvbSBcIi4vbmd4LXV0aWxzL2RpcmVjdGl2ZXMvZHluYW1pYy10YWJsZS10ZW1wbGF0ZS5kaXJlY3RpdmVcIjtcclxuZXhwb3J0IHtHbG9iYWxUZW1wbGF0ZURpcmVjdGl2ZX0gZnJvbSBcIi4vbmd4LXV0aWxzL2RpcmVjdGl2ZXMvZ2xvYmFsLXRlbXBsYXRlLmRpcmVjdGl2ZVwiO1xyXG5leHBvcnQge0ljb25EaXJlY3RpdmV9IGZyb20gXCIuL25neC11dGlscy9kaXJlY3RpdmVzL2ljb24uZGlyZWN0aXZlXCI7XHJcbmV4cG9ydCB7Tmd4VGVtcGxhdGVPdXRsZXREaXJlY3RpdmV9IGZyb20gXCIuL25neC11dGlscy9kaXJlY3RpdmVzL25neC10ZW1wbGF0ZS1vdXRsZXQuZGlyZWN0aXZlXCI7XHJcbmV4cG9ydCB7UGFnaW5hdGlvbkRpcmVjdGl2ZX0gZnJvbSBcIi4vbmd4LXV0aWxzL2RpcmVjdGl2ZXMvcGFnaW5hdGlvbi5kaXJlY3RpdmVcIjtcclxuZXhwb3J0IHtQYWdpbmF0aW9uSXRlbURpcmVjdGl2ZX0gZnJvbSBcIi4vbmd4LXV0aWxzL2RpcmVjdGl2ZXMvcGFnaW5hdGlvbi1pdGVtLmRpcmVjdGl2ZVwiO1xyXG5leHBvcnQge1Jlc291cmNlSWZEaXJlY3RpdmV9IGZyb20gXCIuL25neC11dGlscy9kaXJlY3RpdmVzL3Jlc291cmNlLWlmLmRpcmVjdGl2ZVwiO1xyXG5leHBvcnQge1N0aWNreURpcmVjdGl2ZX0gZnJvbSBcIi4vbmd4LXV0aWxzL2RpcmVjdGl2ZXMvc3RpY2t5LmRpcmVjdGl2ZVwiO1xyXG5leHBvcnQge1Vub3JkZXJlZExpc3RJdGVtRGlyZWN0aXZlfSBmcm9tIFwiLi9uZ3gtdXRpbHMvZGlyZWN0aXZlcy91bm9yZGVyZWQtbGlzdC1pdGVtLmRpcmVjdGl2ZVwiO1xyXG5leHBvcnQge1Vub3JkZXJlZExpc3RUZW1wbGF0ZURpcmVjdGl2ZX0gZnJvbSBcIi4vbmd4LXV0aWxzL2RpcmVjdGl2ZXMvdW5vcmRlcmVkLWxpc3QtdGVtcGxhdGUuZGlyZWN0aXZlXCI7XHJcblxyXG5leHBvcnQge1Vub3JkZXJlZExpc3RDb21wb25lbnR9IGZyb20gXCIuL25neC11dGlscy9jb21wb25lbnRzL3Vub3JkZXJlZC1saXN0L3Vub3JkZXJlZC1saXN0LmNvbXBvbmVudFwiO1xyXG5leHBvcnQge0R5bmFtaWNUYWJsZUNvbXBvbmVudH0gZnJvbSBcIi4vbmd4LXV0aWxzL2NvbXBvbmVudHMvZHluYW1pYy10YWJsZS9keW5hbWljLXRhYmxlLmNvbXBvbmVudFwiO1xyXG5leHBvcnQge1BhZ2luYXRpb25NZW51Q29tcG9uZW50fSBmcm9tIFwiLi9uZ3gtdXRpbHMvY29tcG9uZW50cy9wYWdpbmF0aW9uLW1lbnUvcGFnaW5hdGlvbi1tZW51LmNvbXBvbmVudFwiO1xyXG5cclxuZXhwb3J0IHtOZ3hVdGlsc01vZHVsZX0gZnJvbSBcIi4vbmd4LXV0aWxzL25neC11dGlscy5tb2R1bGVcIjtcclxuIl19
@@ -4,5 +4,4 @@
4
4
  export * from './public_api';
5
5
  export { StickyClassDirective as ɵf } from './ngx-utils/directives/sticky-class.directive';
6
6
  export { components as ɵc, directives as ɵb, loadConfig as ɵe, pipes as ɵa, providers as ɵd } from './ngx-utils/ngx-utils.module';
7
- export { GlobalTemplateService as ɵg } from './ngx-utils/services/global-template.service';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlbXktbmd4LXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0ZW15LW5neC11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsTUFBTSwrQ0FBK0MsQ0FBQztBQUN6RixPQUFPLEVBQUMsVUFBVSxJQUFJLEVBQUUsRUFBQyxVQUFVLElBQUksRUFBRSxFQUFDLFVBQVUsSUFBSSxFQUFFLEVBQUMsS0FBSyxJQUFJLEVBQUUsRUFBQyxTQUFTLElBQUksRUFBRSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDNUgsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLDhDQUE4QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuXG5leHBvcnQge1N0aWNreUNsYXNzRGlyZWN0aXZlIGFzIMm1Zn0gZnJvbSAnLi9uZ3gtdXRpbHMvZGlyZWN0aXZlcy9zdGlja3ktY2xhc3MuZGlyZWN0aXZlJztcbmV4cG9ydCB7Y29tcG9uZW50cyBhcyDJtWMsZGlyZWN0aXZlcyBhcyDJtWIsbG9hZENvbmZpZyBhcyDJtWUscGlwZXMgYXMgybVhLHByb3ZpZGVycyBhcyDJtWR9IGZyb20gJy4vbmd4LXV0aWxzL25neC11dGlscy5tb2R1bGUnO1xuZXhwb3J0IHtHbG9iYWxUZW1wbGF0ZVNlcnZpY2UgYXMgybVnfSBmcm9tICcuL25neC11dGlscy9zZXJ2aWNlcy9nbG9iYWwtdGVtcGxhdGUuc2VydmljZSc7Il19
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlbXktbmd4LXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0ZW15LW5neC11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsTUFBTSwrQ0FBK0MsQ0FBQztBQUN6RixPQUFPLEVBQUMsVUFBVSxJQUFJLEVBQUUsRUFBQyxVQUFVLElBQUksRUFBRSxFQUFDLFVBQVUsSUFBSSxFQUFFLEVBQUMsS0FBSyxJQUFJLEVBQUUsRUFBQyxTQUFTLElBQUksRUFBRSxFQUFDLE1BQU0sOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG5cbmV4cG9ydCB7U3RpY2t5Q2xhc3NEaXJlY3RpdmUgYXMgybVmfSBmcm9tICcuL25neC11dGlscy9kaXJlY3RpdmVzL3N0aWNreS1jbGFzcy5kaXJlY3RpdmUnO1xuZXhwb3J0IHtjb21wb25lbnRzIGFzIMm1YyxkaXJlY3RpdmVzIGFzIMm1Yixsb2FkQ29uZmlnIGFzIMm1ZSxwaXBlcyBhcyDJtWEscHJvdmlkZXJzIGFzIMm1ZH0gZnJvbSAnLi9uZ3gtdXRpbHMvbmd4LXV0aWxzLm1vZHVsZSc7Il19
@@ -1,4 +1,4 @@
1
- import { InjectionToken, TemplateRef, Injectable, Inject, PLATFORM_ID, Injector, NgZone, Optional, EventEmitter, ErrorHandler, Pipe, ChangeDetectorRef, Directive, Input, Output, HostBinding, HostListener, ElementRef, Renderer2, ViewContainerRef, Component, ContentChildren, ViewChild, ContentChild, APP_INITIALIZER, NgModule } from '@angular/core';
1
+ import { InjectionToken, TemplateRef, Injectable, Inject, PLATFORM_ID, Injector, NgZone, Optional, EventEmitter, ErrorHandler, Pipe, ChangeDetectorRef, Input, Output, HostBinding, HostListener, Directive, ElementRef, Renderer2, ViewContainerRef, Component, ContentChildren, ViewChild, ContentChild, APP_INITIALIZER, NgModule } from '@angular/core';
2
2
  import 'reflect-metadata';
3
3
  import { utc } from 'moment';
4
4
  import { first, skipWhile, mergeMap, timeout, map } from 'rxjs/operators';
@@ -2653,6 +2653,39 @@ FormatterService.ctorParameters = () => [
2653
2653
  { type: undefined, decorators: [{ type: Inject, args: [LANGUAGE_SERVICE,] }] }
2654
2654
  ];
2655
2655
 
2656
+ class GlobalTemplateService {
2657
+ constructor() {
2658
+ this.templatesUpdated = new EventEmitter();
2659
+ this.globalTemplates = {};
2660
+ this.componentModifiers = {};
2661
+ }
2662
+ get(id, component) {
2663
+ const template = this.globalTemplates[id];
2664
+ if (!template)
2665
+ return undefined;
2666
+ const modifier = this.componentModifiers[id];
2667
+ if (ObjectUtils.isFunction(modifier) && component) {
2668
+ modifier(component);
2669
+ }
2670
+ return template;
2671
+ }
2672
+ add(id, template) {
2673
+ this.globalTemplates[id] = template;
2674
+ this.templatesUpdated.emit();
2675
+ }
2676
+ remove(id) {
2677
+ delete this.globalTemplates[id];
2678
+ this.templatesUpdated.emit();
2679
+ }
2680
+ addComponentModifier(id, modifier) {
2681
+ this.componentModifiers[id] = modifier;
2682
+ }
2683
+ }
2684
+ GlobalTemplateService.decorators = [
2685
+ { type: Injectable }
2686
+ ];
2687
+ GlobalTemplateService.ctorParameters = () => [];
2688
+
2656
2689
  class IconService {
2657
2690
  constructor() {
2658
2691
  this.iconsLoaded = new EventEmitter();
@@ -3742,7 +3775,7 @@ ValuesPipe.decorators = [
3742
3775
  },] }
3743
3776
  ];
3744
3777
 
3745
- class AsyncMethodDirective {
3778
+ class AsyncMethodBase {
3746
3779
  constructor(toaster) {
3747
3780
  this.toaster = toaster;
3748
3781
  this.onSuccess = new EventEmitter();
@@ -3761,9 +3794,15 @@ class AsyncMethodDirective {
3761
3794
  }
3762
3795
  callMethod() {
3763
3796
  if (this.loading)
3764
- return;
3797
+ return true;
3765
3798
  this.loading = true;
3766
- this.method(this.context).then(result => {
3799
+ const method = this.getMethod();
3800
+ const result = !method ? null : method(this.context);
3801
+ if (!(result instanceof Promise)) {
3802
+ this.loading = false;
3803
+ return false;
3804
+ }
3805
+ result.then(result => {
3767
3806
  this.loading = false;
3768
3807
  if (result) {
3769
3808
  this.onSuccess.emit(result);
@@ -3776,6 +3815,25 @@ class AsyncMethodDirective {
3776
3815
  this.onError.emit(reason);
3777
3816
  this.toaster.error(reason.message, reason.context);
3778
3817
  });
3818
+ return true;
3819
+ }
3820
+ }
3821
+ AsyncMethodBase.propDecorators = {
3822
+ disabled: [{ type: Input }],
3823
+ context: [{ type: Input }],
3824
+ onSuccess: [{ type: Output }],
3825
+ onError: [{ type: Output }],
3826
+ isDisabled: [{ type: HostBinding, args: ["class.disabled",] }],
3827
+ isLoading: [{ type: HostBinding, args: ["class.loading",] }],
3828
+ click: [{ type: HostListener, args: ["click",] }]
3829
+ };
3830
+
3831
+ class AsyncMethodDirective extends AsyncMethodBase {
3832
+ constructor(toaster) {
3833
+ super(toaster);
3834
+ }
3835
+ getMethod() {
3836
+ return this.method;
3779
3837
  }
3780
3838
  }
3781
3839
  AsyncMethodDirective.decorators = [
@@ -3788,14 +3846,7 @@ AsyncMethodDirective.ctorParameters = () => [
3788
3846
  { type: undefined, decorators: [{ type: Inject, args: [TOASTER_SERVICE,] }] }
3789
3847
  ];
3790
3848
  AsyncMethodDirective.propDecorators = {
3791
- method: [{ type: Input, args: ["async-method",] }],
3792
- disabled: [{ type: Input }],
3793
- context: [{ type: Input }],
3794
- onSuccess: [{ type: Output }],
3795
- onError: [{ type: Output }],
3796
- isDisabled: [{ type: HostBinding, args: ["class.disabled",] }],
3797
- isLoading: [{ type: HostBinding, args: ["class.loading",] }],
3798
- click: [{ type: HostListener, args: ["click",] }]
3849
+ method: [{ type: Input, args: ["async-method",] }]
3799
3850
  };
3800
3851
 
3801
3852
  const defaultClass = "default-image";
@@ -4591,39 +4642,6 @@ PaginationMenuComponent.propDecorators = {
4591
4642
  boundaryLinks: [{ type: Input }]
4592
4643
  };
4593
4644
 
4594
- class GlobalTemplateService {
4595
- constructor() {
4596
- this.templatesUpdated = new EventEmitter();
4597
- this.globalTemplates = {};
4598
- this.componentModifiers = {};
4599
- }
4600
- get(id, component) {
4601
- const template = this.globalTemplates[id];
4602
- if (!template)
4603
- return undefined;
4604
- const modifier = this.componentModifiers[id];
4605
- if (ObjectUtils.isFunction(modifier) && component) {
4606
- modifier(component);
4607
- }
4608
- return template;
4609
- }
4610
- add(id, template) {
4611
- this.globalTemplates[id] = template;
4612
- this.templatesUpdated.emit();
4613
- }
4614
- remove(id) {
4615
- delete this.globalTemplates[id];
4616
- this.templatesUpdated.emit();
4617
- }
4618
- addComponentModifier(id, modifier) {
4619
- this.componentModifiers[id] = modifier;
4620
- }
4621
- }
4622
- GlobalTemplateService.decorators = [
4623
- { type: Injectable }
4624
- ];
4625
- GlobalTemplateService.ctorParameters = () => [];
4626
-
4627
4645
  class StickyClassDirective {
4628
4646
  constructor(events, element, renderer) {
4629
4647
  this.events = events;
@@ -4829,5 +4847,5 @@ NgxUtilsModule.decorators = [
4829
4847
  * Generated bundle index. Do not edit.
4830
4848
  */
4831
4849
 
4832
- export { API_SERVICE, AUTH_SERVICE, AclService, AjaxRequestHandler, ApiService, ArrayUtils, AsyncMethodDirective, AuthGuard, BASE_CONFIG, BackgroundDirective, BaseHttpClient, BaseHttpService, CONFIG_SERVICE, CanvasColor, CanvasUtils, ChunkPipe, Circle, ConfigService, ConsoleToasterService, DateUtils, DynamicTableComponent, DynamicTableTemplateDirective, ERROR_HANDLER, EXPRESS_REQUEST, EntriesPipe, ErrorHandlerService, EventsService, ExtraItemPropertiesPipe, FactoryDependencies, FileUtils, FilterPipe, FindPipe, FormatNumberPipe, FormatterService, GLOBAL_TEMPLATES, GenericValue, GetOffsetPipe, GetTypePipe, GlobalTemplateDirective, GlobalTemplatePipe, GroupByPipe, HttpPromise, ICON_SERVICE, IConfiguration, IconDirective, IconService, Initializer, IsTypePipe, JoinPipe, KeysPipe, LANGUAGE_SERVICE, LanguageService, LoaderUtils, MapPipe, MathUtils, MaxPipe, MinPipe, NgxTemplateOutletDirective, NgxUtilsModule, ObjectUtils, ObservableUtils, OpenApiService, PROMISE_SERVICE, PaginationDirective, PaginationItemContext, PaginationItemDirective, PaginationMenuComponent, Point, PromiseService, ROOT_ELEMENT, Rect, ReducePipe, ReflectUtils, RemapPipe, ReplacePipe, ResizeEventPlugin, ResourceIfContext, ResourceIfDirective, ReversePipe, RoundPipe, SCRIPT_PARAMS, SafeHtmlPipe, ScrollEventPlugin, SetUtils, StateService, StaticAuthService, StaticLanguageService, StickyDirective, StorageMode, StorageService, StringUtils, TOASTER_SERVICE, TimerUtils, TranslatePipe, TranslatedUrlSerializer, UniqueUtils, UniversalService, UnorderedListComponent, UnorderedListItemDirective, UnorderedListTemplateDirective, UnorederedListTemplate, ValuedPromise, ValuesPipe, Vector, pipes as ɵa, directives as ɵb, components as ɵc, providers as ɵd, loadConfig as ɵe, StickyClassDirective as ɵf, GlobalTemplateService as ɵg };
4850
+ export { API_SERVICE, AUTH_SERVICE, AclService, AjaxRequestHandler, ApiService, ArrayUtils, AsyncMethodBase, AsyncMethodDirective, AuthGuard, BASE_CONFIG, BackgroundDirective, BaseHttpClient, BaseHttpService, CONFIG_SERVICE, CanvasColor, CanvasUtils, ChunkPipe, Circle, ConfigService, ConsoleToasterService, DateUtils, DynamicTableComponent, DynamicTableTemplateDirective, ERROR_HANDLER, EXPRESS_REQUEST, EntriesPipe, ErrorHandlerService, EventsService, ExtraItemPropertiesPipe, FactoryDependencies, FileUtils, FilterPipe, FindPipe, FormatNumberPipe, FormatterService, GLOBAL_TEMPLATES, GenericValue, GetOffsetPipe, GetTypePipe, GlobalTemplateDirective, GlobalTemplatePipe, GlobalTemplateService, GroupByPipe, HttpPromise, ICON_SERVICE, IConfiguration, IconDirective, IconService, Initializer, IsTypePipe, JoinPipe, KeysPipe, LANGUAGE_SERVICE, LanguageService, LoaderUtils, MapPipe, MathUtils, MaxPipe, MinPipe, NgxTemplateOutletDirective, NgxUtilsModule, ObjectUtils, ObservableUtils, OpenApiService, PROMISE_SERVICE, PaginationDirective, PaginationItemContext, PaginationItemDirective, PaginationMenuComponent, Point, PromiseService, ROOT_ELEMENT, Rect, ReducePipe, ReflectUtils, RemapPipe, ReplacePipe, ResizeEventPlugin, ResourceIfContext, ResourceIfDirective, ReversePipe, RoundPipe, SCRIPT_PARAMS, SafeHtmlPipe, ScrollEventPlugin, SetUtils, StateService, StaticAuthService, StaticLanguageService, StickyDirective, StorageMode, StorageService, StringUtils, TOASTER_SERVICE, TimerUtils, TranslatePipe, TranslatedUrlSerializer, UniqueUtils, UniversalService, UnorderedListComponent, UnorderedListItemDirective, UnorderedListTemplateDirective, UnorederedListTemplate, ValuedPromise, ValuesPipe, Vector, pipes as ɵa, directives as ɵb, components as ɵc, providers as ɵd, loadConfig as ɵe, StickyClassDirective as ɵf };
4833
4851
  //# sourceMappingURL=stemy-ngx-utils.js.map