@tethys/cdk 14.2.13 → 15.0.0-next.1
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/behaviors/use-action.d.ts +11 -7
- package/behaviors/use-async.d.ts +4 -4
- package/dom/host-renderer.d.ts +3 -0
- package/esm2020/behaviors/use-action.mjs +34 -14
- package/esm2020/behaviors/use-async.mjs +3 -3
- package/esm2020/dom/element-renderer.mjs +4 -4
- package/esm2020/dom/host-renderer.mjs +7 -4
- package/esm2020/event/click-dispatcher.mjs +3 -3
- package/esm2020/event/event-dispatcher.mjs +12 -12
- package/esm2020/event/keyboard-dispatcher.mjs +3 -3
- package/esm2020/hotkey/hotkey-dispatcher.mjs +3 -3
- package/esm2020/hotkey/hotkey.directive.mjs +4 -4
- package/esm2020/hotkey/module.mjs +4 -4
- package/event/event-dispatcher.d.ts +1 -1
- package/fesm2015/tethys-cdk-behaviors.mjs +37 -15
- package/fesm2015/tethys-cdk-behaviors.mjs.map +1 -1
- package/fesm2015/tethys-cdk-dom.mjs +9 -6
- package/fesm2015/tethys-cdk-dom.mjs.map +1 -1
- package/fesm2015/tethys-cdk-event.mjs +18 -18
- package/fesm2015/tethys-cdk-event.mjs.map +1 -1
- package/fesm2015/tethys-cdk-hotkey.mjs +10 -10
- package/fesm2015/tethys-cdk-hotkey.mjs.map +1 -1
- package/fesm2020/tethys-cdk-behaviors.mjs +35 -15
- package/fesm2020/tethys-cdk-behaviors.mjs.map +1 -1
- package/fesm2020/tethys-cdk-dom.mjs +9 -6
- package/fesm2020/tethys-cdk-dom.mjs.map +1 -1
- package/fesm2020/tethys-cdk-event.mjs +18 -18
- package/fesm2020/tethys-cdk-event.mjs.map +1 -1
- package/fesm2020/tethys-cdk-hotkey.mjs +10 -10
- package/fesm2020/tethys-cdk-hotkey.mjs.map +1 -1
- package/hotkey/hotkey.directive.d.ts +1 -1
- package/immutable/immutable.d.ts +4 -4
- package/immutable/object-producer.d.ts +4 -4
- package/package.json +1 -1
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
|
-
|
|
2
|
+
export interface ActionBehaviorContext<T> {
|
|
3
|
+
success?: (result: T) => void;
|
|
4
|
+
error?: (error: Error) => void;
|
|
5
|
+
}
|
|
6
|
+
declare class ActionBehavior<T, A extends (...args: any) => Observable<T>> {
|
|
3
7
|
private action;
|
|
8
|
+
private context;
|
|
4
9
|
saving: boolean;
|
|
5
|
-
constructor(action:
|
|
6
|
-
execute(
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}): void;
|
|
10
|
+
constructor(action: A, context: ActionBehaviorContext<T>);
|
|
11
|
+
execute(...params: Parameters<A>): void;
|
|
12
|
+
success(successFn: (result: T) => void): this;
|
|
13
|
+
error(errorFn: (error: Error) => void): this;
|
|
10
14
|
}
|
|
11
|
-
export declare function useAction<T>(
|
|
15
|
+
export declare function useAction<T, A extends (...args: any) => Observable<T> = (...args: any) => Observable<T>>(action: A, context?: ActionBehaviorContext<T>): ActionBehavior<T, A>;
|
|
12
16
|
export {};
|
package/behaviors/use-async.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
|
-
declare class AsyncBehavior<T
|
|
2
|
+
declare class AsyncBehavior<T, A extends (...args: any) => Observable<T>> {
|
|
3
3
|
private action;
|
|
4
4
|
loadingDone: boolean;
|
|
5
5
|
value: T;
|
|
6
6
|
state: 'pending' | 'loading' | 'success' | 'error';
|
|
7
7
|
error?: Error;
|
|
8
|
-
constructor(action:
|
|
9
|
-
execute():
|
|
8
|
+
constructor(action: A);
|
|
9
|
+
execute(...params: Parameters<A>): ReturnType<A>;
|
|
10
10
|
}
|
|
11
|
-
export declare function useAsync<T
|
|
11
|
+
export declare function useAsync<T, A extends (...args: any) => Observable<T>>(action: A): AsyncBehavior<unknown, A>;
|
|
12
12
|
export {};
|
package/dom/host-renderer.d.ts
CHANGED
|
@@ -1,27 +1,47 @@
|
|
|
1
1
|
import { finalize, tap } from 'rxjs/operators';
|
|
2
2
|
class ActionBehavior {
|
|
3
|
-
constructor(action) {
|
|
3
|
+
constructor(action, context) {
|
|
4
4
|
this.action = action;
|
|
5
|
+
this.context = context;
|
|
5
6
|
this.saving = false;
|
|
6
7
|
}
|
|
7
|
-
execute(
|
|
8
|
+
execute(...params) {
|
|
8
9
|
if (this.saving) {
|
|
9
10
|
return;
|
|
10
11
|
}
|
|
11
12
|
this.saving = true;
|
|
12
|
-
|
|
13
|
-
.
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
try {
|
|
14
|
+
return this.action
|
|
15
|
+
.apply(null, params)
|
|
16
|
+
.pipe(finalize(() => {
|
|
17
|
+
this.saving = false;
|
|
18
|
+
}), tap(value => {
|
|
19
|
+
debugger;
|
|
20
|
+
this.saving = false;
|
|
21
|
+
}))
|
|
22
|
+
.subscribe({
|
|
23
|
+
next: this.context?.success,
|
|
24
|
+
error: (error) => {
|
|
25
|
+
this.saving = false;
|
|
26
|
+
this.context?.error(error);
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
catch (error) {
|
|
16
31
|
this.saving = false;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
32
|
+
this.context?.error(error);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
success(successFn) {
|
|
36
|
+
this.context.success = successFn;
|
|
37
|
+
return this;
|
|
38
|
+
}
|
|
39
|
+
error(errorFn) {
|
|
40
|
+
this.context.error = errorFn;
|
|
41
|
+
return this;
|
|
22
42
|
}
|
|
23
43
|
}
|
|
24
|
-
export function useAction(action) {
|
|
25
|
-
return new ActionBehavior(action);
|
|
44
|
+
export function useAction(action, context = {}) {
|
|
45
|
+
return new ActionBehavior(action, context);
|
|
26
46
|
}
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLWFjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2Nkay9iZWhhdmlvcnMvdXNlLWFjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQWMsUUFBUSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBTzNELE1BQU0sY0FBYztJQUdoQixZQUFvQixNQUFTLEVBQVUsT0FBaUM7UUFBcEQsV0FBTSxHQUFOLE1BQU0sQ0FBRztRQUFVLFlBQU8sR0FBUCxPQUFPLENBQTBCO1FBRnhFLFdBQU0sR0FBRyxLQUFLLENBQUM7SUFFNEQsQ0FBQztJQUU1RSxPQUFPLENBQUMsR0FBRyxNQUFxQjtRQUM1QixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDYixPQUFPO1NBQ1Y7UUFDRCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUNuQixJQUFJO1lBQ0EsT0FBTyxJQUFJLENBQUMsTUFBTTtpQkFDYixLQUFLLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQztpQkFDbkIsSUFBSSxDQUNELFFBQVEsQ0FBQyxHQUFHLEVBQUU7Z0JBQ1YsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7WUFDeEIsQ0FBQyxDQUFDLEVBQ0YsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUNSLFFBQVEsQ0FBQztnQkFDVCxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUN4QixDQUFDLENBQUMsQ0FDTDtpQkFDQSxTQUFTLENBQUM7Z0JBQ1AsSUFBSSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsT0FBTztnQkFDM0IsS0FBSyxFQUFFLENBQUMsS0FBWSxFQUFFLEVBQUU7b0JBQ3BCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO29CQUNwQixJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDL0IsQ0FBQzthQUNKLENBQUMsQ0FBQztTQUNWO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDWixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUNwQixJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM5QjtJQUNMLENBQUM7SUFFRCxPQUFPLENBQUMsU0FBOEI7UUFDbEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEdBQUcsU0FBUyxDQUFDO1FBQ2pDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxLQUFLLENBQUMsT0FBK0I7UUFDakMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDO1FBQzdCLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7Q0FDSjtBQUVELE1BQU0sVUFBVSxTQUFTLENBQ3JCLE1BQVMsRUFDVCxVQUFvQyxFQUFFO0lBRXRDLE9BQU8sSUFBSSxjQUFjLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQy9DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZmluYWxpemUsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuZXhwb3J0IGludGVyZmFjZSBBY3Rpb25CZWhhdmlvckNvbnRleHQ8VD4ge1xuICAgIHN1Y2Nlc3M/OiAocmVzdWx0OiBUKSA9PiB2b2lkO1xuICAgIGVycm9yPzogKGVycm9yOiBFcnJvcikgPT4gdm9pZDtcbn1cblxuY2xhc3MgQWN0aW9uQmVoYXZpb3I8VCwgQSBleHRlbmRzICguLi5hcmdzOiBhbnkpID0+IE9ic2VydmFibGU8VD4+IHtcbiAgICBzYXZpbmcgPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgYWN0aW9uOiBBLCBwcml2YXRlIGNvbnRleHQ6IEFjdGlvbkJlaGF2aW9yQ29udGV4dDxUPikge31cblxuICAgIGV4ZWN1dGUoLi4ucGFyYW1zOiBQYXJhbWV0ZXJzPEE+KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnNhdmluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc2F2aW5nID0gdHJ1ZTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmFjdGlvblxuICAgICAgICAgICAgICAgIC5hcHBseShudWxsLCBwYXJhbXMpXG4gICAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2F2aW5nID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICB0YXAodmFsdWUgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGVidWdnZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNhdmluZyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKHtcbiAgICAgICAgICAgICAgICAgICAgbmV4dDogdGhpcy5jb250ZXh0Py5zdWNjZXNzLFxuICAgICAgICAgICAgICAgICAgICBlcnJvcjogKGVycm9yOiBFcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zYXZpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29udGV4dD8uZXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICB0aGlzLnNhdmluZyA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5jb250ZXh0Py5lcnJvcihlcnJvcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzdWNjZXNzKHN1Y2Nlc3NGbjogKHJlc3VsdDogVCkgPT4gdm9pZCkge1xuICAgICAgICB0aGlzLmNvbnRleHQuc3VjY2VzcyA9IHN1Y2Nlc3NGbjtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgZXJyb3IoZXJyb3JGbjogKGVycm9yOiBFcnJvcikgPT4gdm9pZCkge1xuICAgICAgICB0aGlzLmNvbnRleHQuZXJyb3IgPSBlcnJvckZuO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VBY3Rpb248VCwgQSBleHRlbmRzICguLi5hcmdzOiBhbnkpID0+IE9ic2VydmFibGU8VD4gPSAoLi4uYXJnczogYW55KSA9PiBPYnNlcnZhYmxlPFQ+PihcbiAgICBhY3Rpb246IEEsXG4gICAgY29udGV4dDogQWN0aW9uQmVoYXZpb3JDb250ZXh0PFQ+ID0ge31cbikge1xuICAgIHJldHVybiBuZXcgQWN0aW9uQmVoYXZpb3IoYWN0aW9uLCBjb250ZXh0KTtcbn1cbiJdfQ==
|
|
@@ -5,10 +5,10 @@ class AsyncBehavior {
|
|
|
5
5
|
this.loadingDone = false;
|
|
6
6
|
this.state = 'pending';
|
|
7
7
|
}
|
|
8
|
-
execute() {
|
|
8
|
+
execute(...params) {
|
|
9
9
|
this.loadingDone = false;
|
|
10
10
|
this.state = 'loading';
|
|
11
|
-
return this.action().pipe(finalize(() => {
|
|
11
|
+
return this.action.apply(undefined, params).pipe(finalize(() => {
|
|
12
12
|
this.loadingDone = true;
|
|
13
13
|
}), catchError(error => {
|
|
14
14
|
this.state = 'error';
|
|
@@ -23,4 +23,4 @@ class AsyncBehavior {
|
|
|
23
23
|
export function useAsync(action) {
|
|
24
24
|
return new AsyncBehavior(action);
|
|
25
25
|
}
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLWFzeW5jLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vY2RrL2JlaGF2aW9ycy91c2UtYXN5bmMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0QsTUFBTSxhQUFhO0lBU2YsWUFBb0IsTUFBUztRQUFULFdBQU0sR0FBTixNQUFNLENBQUc7UUFSN0IsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFJcEIsVUFBSyxHQUFnRCxTQUFTLENBQUM7SUFJL0IsQ0FBQztJQUVqQyxPQUFPLENBQUMsR0FBRyxNQUFxQjtRQUM1QixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQztRQUN2QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQzVDLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDVixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUM1QixDQUFDLENBQUMsRUFDRixVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQztZQUNyQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztZQUNuQixNQUFNLEtBQUssQ0FBQztRQUNoQixDQUFDLENBQUMsRUFDRixHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDUixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQVUsQ0FBQztZQUN4QixJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FDTCxDQUFDO0lBQ04sQ0FBQztDQUNKO0FBRUQsTUFBTSxVQUFVLFFBQVEsQ0FBK0MsTUFBUztJQUM1RSxPQUFPLElBQUksYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ3JDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmluYWxpemUsIHRhcCwgY2F0Y2hFcnJvciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuY2xhc3MgQXN5bmNCZWhhdmlvcjxULCBBIGV4dGVuZHMgKC4uLmFyZ3M6IGFueSkgPT4gT2JzZXJ2YWJsZTxUPj4ge1xuICAgIGxvYWRpbmdEb25lID0gZmFsc2U7XG5cbiAgICB2YWx1ZTogVDtcblxuICAgIHN0YXRlOiAncGVuZGluZycgfCAnbG9hZGluZycgfCAnc3VjY2VzcycgfCAnZXJyb3InID0gJ3BlbmRpbmcnO1xuXG4gICAgZXJyb3I/OiBFcnJvcjtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgYWN0aW9uOiBBKSB7fVxuXG4gICAgZXhlY3V0ZSguLi5wYXJhbXM6IFBhcmFtZXRlcnM8QT4pOiBSZXR1cm5UeXBlPEE+IHtcbiAgICAgICAgdGhpcy5sb2FkaW5nRG9uZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLnN0YXRlID0gJ2xvYWRpbmcnO1xuICAgICAgICByZXR1cm4gdGhpcy5hY3Rpb24uYXBwbHkodW5kZWZpbmVkLCBwYXJhbXMpLnBpcGUoXG4gICAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5sb2FkaW5nRG9uZSA9IHRydWU7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuc3RhdGUgPSAnZXJyb3InO1xuICAgICAgICAgICAgICAgIHRoaXMuZXJyb3IgPSBlcnJvcjtcbiAgICAgICAgICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgdGFwKHZhbHVlID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWUgYXMgVDtcbiAgICAgICAgICAgICAgICB0aGlzLnN0YXRlID0gJ3N1Y2Nlc3MnO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VBc3luYzxULCBBIGV4dGVuZHMgKC4uLmFyZ3M6IGFueSkgPT4gT2JzZXJ2YWJsZTxUPj4oYWN0aW9uOiBBKSB7XG4gICAgcmV0dXJuIG5ldyBBc3luY0JlaGF2aW9yKGFjdGlvbik7XG59XG4iXX0=
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { AbstractElementRenderer } from './abstract-element-renderer';
|
|
2
2
|
export class ElementRenderer extends AbstractElementRenderer {
|
|
3
|
-
|
|
4
|
-
super();
|
|
3
|
+
setElement(element) {
|
|
5
4
|
this.element = element;
|
|
6
5
|
}
|
|
7
|
-
|
|
6
|
+
constructor(element) {
|
|
7
|
+
super();
|
|
8
8
|
this.element = element;
|
|
9
9
|
}
|
|
10
10
|
}
|
|
11
11
|
export function useElementRenderer(element) {
|
|
12
12
|
return new ElementRenderer(element);
|
|
13
13
|
}
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1yZW5kZXJlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2Nkay9kb20vZWxlbWVudC1yZW5kZXJlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUV0RSxNQUFNLE9BQU8sZUFBZ0IsU0FBUSx1QkFBdUI7SUFHeEQsVUFBVSxDQUFDLE9BQWdCO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQzNCLENBQUM7SUFFRCxZQUFZLE9BQWdCO1FBQ3hCLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDM0IsQ0FBQztDQUNKO0FBRUQsTUFBTSxVQUFVLGtCQUFrQixDQUFDLE9BQWlCO0lBQ2hELE9BQU8sSUFBSSxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDeEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0RWxlbWVudFJlbmRlcmVyIH0gZnJvbSAnLi9hYnN0cmFjdC1lbGVtZW50LXJlbmRlcmVyJztcblxuZXhwb3J0IGNsYXNzIEVsZW1lbnRSZW5kZXJlciBleHRlbmRzIEFic3RyYWN0RWxlbWVudFJlbmRlcmVyIHtcbiAgICBwcm90ZWN0ZWQgZWxlbWVudDogRWxlbWVudDtcblxuICAgIHNldEVsZW1lbnQoZWxlbWVudDogRWxlbWVudCkge1xuICAgICAgICB0aGlzLmVsZW1lbnQgPSBlbGVtZW50O1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGVsZW1lbnQ6IEVsZW1lbnQpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgdGhpcy5lbGVtZW50ID0gZWxlbWVudDtcbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VFbGVtZW50UmVuZGVyZXIoZWxlbWVudD86IEVsZW1lbnQpOiBFbGVtZW50UmVuZGVyZXIge1xuICAgIHJldHVybiBuZXcgRWxlbWVudFJlbmRlcmVyKGVsZW1lbnQpO1xufVxuIl19
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { Injectable, inject, ElementRef } from '@angular/core';
|
|
2
2
|
import { AbstractElementRenderer } from './abstract-element-renderer';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* @private
|
|
6
|
+
*/
|
|
4
7
|
export class HostRenderer extends AbstractElementRenderer {
|
|
5
8
|
constructor() {
|
|
6
9
|
super(...arguments);
|
|
@@ -10,12 +13,12 @@ export class HostRenderer extends AbstractElementRenderer {
|
|
|
10
13
|
return this.elementRef.nativeElement;
|
|
11
14
|
}
|
|
12
15
|
}
|
|
13
|
-
HostRenderer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
14
|
-
HostRenderer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
15
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
16
|
+
HostRenderer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: HostRenderer, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
17
|
+
HostRenderer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: HostRenderer });
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: HostRenderer, decorators: [{
|
|
16
19
|
type: Injectable
|
|
17
20
|
}] });
|
|
18
21
|
export function useHostRenderer() {
|
|
19
22
|
return new HostRenderer();
|
|
20
23
|
}
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9zdC1yZW5kZXJlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2Nkay9kb20vaG9zdC1yZW5kZXJlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBRXRFOztHQUVHO0FBRUgsTUFBTSxPQUFPLFlBQWEsU0FBUSx1QkFBdUI7SUFEekQ7O1FBRVksZUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztLQUszQztJQUhHLElBQWMsT0FBTztRQUNqQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO0lBQ3pDLENBQUM7O3lHQUxRLFlBQVk7NkdBQVosWUFBWTsyRkFBWixZQUFZO2tCQUR4QixVQUFVOztBQVNYLE1BQU0sVUFBVSxlQUFlO0lBQzNCLE9BQU8sSUFBSSxZQUFZLEVBQUUsQ0FBQztBQUM5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0LCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdEVsZW1lbnRSZW5kZXJlciB9IGZyb20gJy4vYWJzdHJhY3QtZWxlbWVudC1yZW5kZXJlcic7XG5cbi8qKlxuICogQHByaXZhdGVcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEhvc3RSZW5kZXJlciBleHRlbmRzIEFic3RyYWN0RWxlbWVudFJlbmRlcmVyIHtcbiAgICBwcml2YXRlIGVsZW1lbnRSZWYgPSBpbmplY3QoRWxlbWVudFJlZik7XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGVsZW1lbnQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VIb3N0UmVuZGVyZXIoKSB7XG4gICAgcmV0dXJuIG5ldyBIb3N0UmVuZGVyZXIoKTtcbn1cbiJdfQ==
|
|
@@ -11,9 +11,9 @@ export class ThyClickDispatcher extends ThyEventDispatcher {
|
|
|
11
11
|
return this.subscribe(auditTimeInMs);
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
|
-
ThyClickDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
15
|
-
ThyClickDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
14
|
+
ThyClickDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: ThyClickDispatcher, deps: [{ token: DOCUMENT }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
15
|
+
ThyClickDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: ThyClickDispatcher, providedIn: 'root' });
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: ThyClickDispatcher, decorators: [{
|
|
17
17
|
type: Injectable,
|
|
18
18
|
args: [{
|
|
19
19
|
providedIn: 'root'
|
|
@@ -4,14 +4,6 @@ import { Directive, NgZone } from '@angular/core';
|
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
const DEFAULT_EVENT_TIME = 100;
|
|
6
6
|
export class ThyEventDispatcher {
|
|
7
|
-
constructor(document, ngZone, eventName) {
|
|
8
|
-
this.document = document;
|
|
9
|
-
this.ngZone = ngZone;
|
|
10
|
-
this.eventName = eventName;
|
|
11
|
-
this._globalSubscription = null;
|
|
12
|
-
this._event$ = new Subject();
|
|
13
|
-
this._subscriptionCount = 0;
|
|
14
|
-
}
|
|
15
7
|
_addGlobalListener() {
|
|
16
8
|
this._globalSubscription = this.ngZone.runOutsideAngular(() => {
|
|
17
9
|
return fromEvent(this.document, this.eventName).subscribe((event) => {
|
|
@@ -28,6 +20,14 @@ export class ThyEventDispatcher {
|
|
|
28
20
|
get globalSubscription() {
|
|
29
21
|
return this._globalSubscription;
|
|
30
22
|
}
|
|
23
|
+
constructor(document, ngZone, eventName) {
|
|
24
|
+
this.document = document;
|
|
25
|
+
this.ngZone = ngZone;
|
|
26
|
+
this.eventName = eventName;
|
|
27
|
+
this._globalSubscription = null;
|
|
28
|
+
this._event$ = new Subject();
|
|
29
|
+
this._subscriptionCount = 0;
|
|
30
|
+
}
|
|
31
31
|
subscribe(auditTimeInMs = DEFAULT_EVENT_TIME) {
|
|
32
32
|
return new Observable(observer => {
|
|
33
33
|
if (!this._globalSubscription) {
|
|
@@ -51,9 +51,9 @@ export class ThyEventDispatcher {
|
|
|
51
51
|
this._event$.complete();
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
|
-
ThyEventDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
55
|
-
ThyEventDispatcher.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
56
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
54
|
+
ThyEventDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: ThyEventDispatcher, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
|
|
55
|
+
ThyEventDispatcher.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.2", type: ThyEventDispatcher, ngImport: i0 });
|
|
56
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: ThyEventDispatcher, decorators: [{
|
|
57
57
|
type: Directive
|
|
58
58
|
}], ctorParameters: function () { return [{ type: Document }, { type: i0.NgZone }, { type: undefined }]; } });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtZGlzcGF0Y2hlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2Nkay9ldmVudC9ldmVudC1kaXNwYXRjaGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDcEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFhLE1BQU0sZUFBZSxDQUFDOztBQUU3RCxNQUFNLGtCQUFrQixHQUFHLEdBQUcsQ0FBQztBQUcvQixNQUFNLE9BQWdCLGtCQUFrQjtJQU81QixrQkFBa0I7UUFDdEIsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFO1lBQzFELE9BQU8sU0FBUyxDQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQVEsRUFBRSxFQUFFO2dCQUN0RSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM3QixDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVPLHFCQUFxQjtRQUN6QixJQUFJLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUMxQixJQUFJLENBQUMsbUJBQW1CLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDdkMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQztTQUNuQztJQUNMLENBQUM7SUFFRCxJQUFJLGtCQUFrQjtRQUNsQixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztJQUNwQyxDQUFDO0lBRUQsWUFBc0IsUUFBa0IsRUFBWSxNQUFjLEVBQVUsU0FBaUI7UUFBdkUsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUFZLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxjQUFTLEdBQVQsU0FBUyxDQUFRO1FBekJyRix3QkFBbUIsR0FBaUIsSUFBSSxDQUFDO1FBRXpDLFlBQU8sR0FBRyxJQUFJLE9BQU8sRUFBSyxDQUFDO1FBRTNCLHVCQUFrQixHQUFHLENBQUMsQ0FBQztJQXFCaUUsQ0FBQztJQUV2RixTQUFTLENBQUMsZ0JBQXdCLGtCQUFrQjtRQUMxRCxPQUFPLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzdCLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUU7Z0JBQzNCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO2FBQzdCO1lBQ0Qsa0VBQWtFO1lBQ2xFLGdFQUFnRTtZQUNoRSxNQUFNLFlBQVksR0FDZCxhQUFhLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBRTNILElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1lBQzFCLE9BQU8sR0FBRyxFQUFFO2dCQUNSLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDM0IsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7Z0JBRTFCLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUU7b0JBQzFCLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO2lCQUNoQztZQUNMLENBQUMsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzVCLENBQUM7OytHQXJEaUIsa0JBQWtCO21HQUFsQixrQkFBa0I7MkZBQWxCLGtCQUFrQjtrQkFEdkMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZyb21FdmVudCwgT2JzZXJ2YWJsZSwgU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBhdWRpdFRpbWUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IERpcmVjdGl2ZSwgTmdab25lLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuY29uc3QgREVGQVVMVF9FVkVOVF9USU1FID0gMTAwO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUaHlFdmVudERpc3BhdGNoZXI8VCA9IEV2ZW50PiBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSBfZ2xvYmFsU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gPSBudWxsO1xuXG4gICAgcHJpdmF0ZSBfZXZlbnQkID0gbmV3IFN1YmplY3Q8VD4oKTtcblxuICAgIHByaXZhdGUgX3N1YnNjcmlwdGlvbkNvdW50ID0gMDtcblxuICAgIHByaXZhdGUgX2FkZEdsb2JhbExpc3RlbmVyKCkge1xuICAgICAgICB0aGlzLl9nbG9iYWxTdWJzY3JpcHRpb24gPSB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gZnJvbUV2ZW50PFQ+KHRoaXMuZG9jdW1lbnQsIHRoaXMuZXZlbnROYW1lKS5zdWJzY3JpYmUoKGV2ZW50OiBUKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZXZlbnQkLm5leHQoZXZlbnQpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3JlbW92ZUdsb2JhbExpc3RlbmVyKCkge1xuICAgICAgICBpZiAodGhpcy5fZ2xvYmFsU3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLl9nbG9iYWxTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgIHRoaXMuX2dsb2JhbFN1YnNjcmlwdGlvbiA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXQgZ2xvYmFsU3Vic2NyaXB0aW9uKCk6IFN1YnNjcmlwdGlvbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9nbG9iYWxTdWJzY3JpcHRpb247XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIGRvY3VtZW50OiBEb2N1bWVudCwgcHJvdGVjdGVkIG5nWm9uZTogTmdab25lLCBwcml2YXRlIGV2ZW50TmFtZTogc3RyaW5nKSB7fVxuXG4gICAgcHJvdGVjdGVkIHN1YnNjcmliZShhdWRpdFRpbWVJbk1zOiBudW1iZXIgPSBERUZBVUxUX0VWRU5UX1RJTUUpOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKG9ic2VydmVyID0+IHtcbiAgICAgICAgICAgIGlmICghdGhpcy5fZ2xvYmFsU3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fYWRkR2xvYmFsTGlzdGVuZXIoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIEluIHRoZSBjYXNlIG9mIGEgMG1zIGRlbGF5LCB1c2UgYW4gb2JzZXJ2YWJsZSB3aXRob3V0IGF1ZGl0VGltZVxuICAgICAgICAgICAgLy8gc2luY2UgaXQgZG9lcyBhZGQgYSBwZXJjZXB0aWJsZSBkZWxheSBpbiBwcm9jZXNzaW5nIG92ZXJoZWFkLlxuICAgICAgICAgICAgY29uc3Qgc3Vic2NyaXB0aW9uID1cbiAgICAgICAgICAgICAgICBhdWRpdFRpbWVJbk1zID4gMCA/IHRoaXMuX2V2ZW50JC5waXBlKGF1ZGl0VGltZShhdWRpdFRpbWVJbk1zKSkuc3Vic2NyaWJlKG9ic2VydmVyKSA6IHRoaXMuX2V2ZW50JC5zdWJzY3JpYmUob2JzZXJ2ZXIpO1xuXG4gICAgICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb25Db3VudCsrO1xuICAgICAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgICAgICBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb25Db3VudC0tO1xuXG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLl9zdWJzY3JpcHRpb25Db3VudCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9yZW1vdmVHbG9iYWxMaXN0ZW5lcigpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLl9yZW1vdmVHbG9iYWxMaXN0ZW5lcigpO1xuICAgICAgICB0aGlzLl9ldmVudCQuY29tcGxldGUoKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -18,9 +18,9 @@ export class ThyKeyboardDispatcher extends ThyEventDispatcher {
|
|
|
18
18
|
return this.subscribe(auditTimeInMs);
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
|
-
ThyKeyboardDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
22
|
-
ThyKeyboardDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
21
|
+
ThyKeyboardDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: ThyKeyboardDispatcher, deps: [{ token: DOCUMENT }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
22
|
+
ThyKeyboardDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: ThyKeyboardDispatcher, providedIn: 'root' });
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: ThyKeyboardDispatcher, decorators: [{
|
|
24
24
|
type: Injectable,
|
|
25
25
|
args: [{
|
|
26
26
|
providedIn: 'root'
|
|
@@ -52,9 +52,9 @@ export class ThyHotkeyDispatcher extends ThyEventDispatcher {
|
|
|
52
52
|
}).pipe(runInZone(this.ngZone));
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
|
-
ThyHotkeyDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
56
|
-
ThyHotkeyDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
57
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
55
|
+
ThyHotkeyDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: ThyHotkeyDispatcher, deps: [{ token: DOCUMENT }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
56
|
+
ThyHotkeyDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: ThyHotkeyDispatcher, providedIn: 'root' });
|
|
57
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: ThyHotkeyDispatcher, decorators: [{
|
|
58
58
|
type: Injectable,
|
|
59
59
|
args: [{ providedIn: 'root' }]
|
|
60
60
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
@@ -38,9 +38,9 @@ export class ThyHotkeyDirective {
|
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
|
-
ThyHotkeyDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
42
|
-
ThyHotkeyDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
43
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
41
|
+
ThyHotkeyDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: ThyHotkeyDirective, deps: [{ token: DOCUMENT }, { token: i1.ThyHotkeyDispatcher }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
42
|
+
ThyHotkeyDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.2", type: ThyHotkeyDirective, selector: "[thyHotkey]", inputs: { thyHotkey: "thyHotkey", thyHotkeyScope: "thyHotkeyScope" }, outputs: { thyHotkeyListener: "thyHotkeyListener" }, ngImport: i0 });
|
|
43
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: ThyHotkeyDirective, decorators: [{
|
|
44
44
|
type: Directive,
|
|
45
45
|
args: [{ selector: '[thyHotkey]' }]
|
|
46
46
|
}], ctorParameters: function () { return [{ type: Document, decorators: [{
|
|
@@ -53,4 +53,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
53
53
|
}], thyHotkeyListener: [{
|
|
54
54
|
type: Output
|
|
55
55
|
}] } });
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG90a2V5LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2Nkay9ob3RrZXkvaG90a2V5LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRTlHLE9BQU8sRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7OztBQUUxRDs7R0FFRztBQUVILE1BQU0sT0FBTyxrQkFBa0I7SUFrQjNCLFlBQzhCLFFBQWtCLEVBQ3BDLGdCQUFxQyxFQUNyQyxVQUFtQztRQUZqQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ3BDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBcUI7UUFDckMsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFWL0M7O1dBRUc7UUFDTyxzQkFBaUIsR0FBZ0MsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUV0RSxpQkFBWSxHQUFpQixJQUFJLENBQUM7SUFNdkMsQ0FBQztJQUVKLFFBQVE7UUFDSixNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUM7UUFDckgsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3ZGLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDeEIsSUFBSSxhQUFhLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFO2dCQUNoQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQzthQUN6QztpQkFBTTtnQkFDSCxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQzthQUN6QztZQUNELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNuQixJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ25DO0lBQ0wsQ0FBQzs7K0dBMUNRLGtCQUFrQixrQkFtQmYsUUFBUTttR0FuQlgsa0JBQWtCOzJGQUFsQixrQkFBa0I7a0JBRDlCLFNBQVM7bUJBQUMsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFOzswQkFvQjdCLE1BQU07MkJBQUMsUUFBUTt1R0FmWCxTQUFTO3NCQUFqQixLQUFLO2dCQUtHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBS0ksaUJBQWlCO3NCQUExQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEluamVjdCwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgaXNGb3JtRWxlbWVudCwgaXNTdHJpbmcgfSBmcm9tICdAdGV0aHlzL2Nkay9pcyc7XG5pbXBvcnQgeyBUaHlIb3RrZXlEaXNwYXRjaGVyIH0gZnJvbSAnLi9ob3RrZXktZGlzcGF0Y2hlcic7XG5cbi8qKlxuICogQG5hbWUgdGh5SG90a2V5XG4gKi9cbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1t0aHlIb3RrZXldJyB9KVxuZXhwb3J0IGNsYXNzIFRoeUhvdGtleURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICAvKipcbiAgICAgKiAg54Ot6ZSu5a+55bqUIENvZGXvvIzlpJrkuKrng63plK7nu4TlkIjmlK/mjIHpgJrov4fmlbDnu4TmiJbpgJflj7fliIblibLnmoTlvaLlvI/kvKDlhaVcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlIb3RrZXk6IHN0cmluZyB8IHN0cmluZ1tdO1xuXG4gICAgLyoqXG4gICAgICogIOmFjee9rueDremUruinpuWPkeiMg+WbtO+8jOm7mOiupOe7keWumuWcqCBkb2N1bWVudCDkuIpcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlIb3RrZXlTY29wZT86IHN0cmluZyB8IEVsZW1lbnQgfCBFbGVtZW50UmVmPEVsZW1lbnQ+O1xuXG4gICAgLyoqXG4gICAgICogIOeDremUruinpuWPkeWQjueahOS6i+S7tlxuICAgICAqL1xuICAgIEBPdXRwdXQoKSB0aHlIb3RrZXlMaXN0ZW5lcjogRXZlbnRFbWl0dGVyPEtleWJvYXJkRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgcHJpdmF0ZSBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiA9IG51bGw7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBkb2N1bWVudDogRG9jdW1lbnQsXG4gICAgICAgIHByaXZhdGUgaG90a2V5RGlzcGF0Y2hlcjogVGh5SG90a2V5RGlzcGF0Y2hlcixcbiAgICAgICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PlxuICAgICkge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBzY29wZSA9IGlzU3RyaW5nKHRoaXMudGh5SG90a2V5U2NvcGUpID8gdGhpcy5kb2N1bWVudC5xdWVyeVNlbGVjdG9yKHRoaXMudGh5SG90a2V5U2NvcGUpIDogdGhpcy50aHlIb3RrZXlTY29wZTtcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLmhvdGtleURpc3BhdGNoZXIua2V5ZG93bih0aGlzLnRoeUhvdGtleSwgc2NvcGUpLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICBpZiAoaXNGb3JtRWxlbWVudCh0aGlzLmVsZW1lbnRSZWYpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMudGh5SG90a2V5TGlzdGVuZXIuZW1pdChldmVudCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5zdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
@@ -3,10 +3,10 @@ import { ThyHotkeyDirective } from './hotkey.directive';
|
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export class ThyHotkeyModule {
|
|
5
5
|
}
|
|
6
|
-
ThyHotkeyModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
7
|
-
ThyHotkeyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
8
|
-
ThyHotkeyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
9
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
6
|
+
ThyHotkeyModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: ThyHotkeyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
7
|
+
ThyHotkeyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.2", ngImport: i0, type: ThyHotkeyModule, declarations: [ThyHotkeyDirective], exports: [ThyHotkeyDirective] });
|
|
8
|
+
ThyHotkeyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: ThyHotkeyModule });
|
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: ThyHotkeyModule, decorators: [{
|
|
10
10
|
type: NgModule,
|
|
11
11
|
args: [{
|
|
12
12
|
imports: [],
|
|
@@ -15,5 +15,5 @@ export declare abstract class ThyEventDispatcher<T = Event> implements OnDestroy
|
|
|
15
15
|
protected subscribe(auditTimeInMs?: number): Observable<T>;
|
|
16
16
|
ngOnDestroy(): void;
|
|
17
17
|
static ɵfac: i0.ɵɵFactoryDeclaration<ThyEventDispatcher<any>, never>;
|
|
18
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<ThyEventDispatcher<any>, never, never, {}, {}, never, never, false>;
|
|
18
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<ThyEventDispatcher<any>, never, never, {}, {}, never, never, false, never>;
|
|
19
19
|
}
|
|
@@ -22,10 +22,10 @@ class AsyncBehavior {
|
|
|
22
22
|
this.loadingDone = false;
|
|
23
23
|
this.state = 'pending';
|
|
24
24
|
}
|
|
25
|
-
execute() {
|
|
25
|
+
execute(...params) {
|
|
26
26
|
this.loadingDone = false;
|
|
27
27
|
this.state = 'loading';
|
|
28
|
-
return this.action().pipe(finalize(() => {
|
|
28
|
+
return this.action.apply(undefined, params).pipe(finalize(() => {
|
|
29
29
|
this.loadingDone = true;
|
|
30
30
|
}), catchError(error => {
|
|
31
31
|
this.state = 'error';
|
|
@@ -42,29 +42,51 @@ function useAsync(action) {
|
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
class ActionBehavior {
|
|
45
|
-
constructor(action) {
|
|
45
|
+
constructor(action, context) {
|
|
46
46
|
this.action = action;
|
|
47
|
+
this.context = context;
|
|
47
48
|
this.saving = false;
|
|
48
49
|
}
|
|
49
|
-
execute(
|
|
50
|
+
execute(...params) {
|
|
51
|
+
var _a, _b;
|
|
50
52
|
if (this.saving) {
|
|
51
53
|
return;
|
|
52
54
|
}
|
|
53
55
|
this.saving = true;
|
|
54
|
-
|
|
55
|
-
.
|
|
56
|
-
|
|
57
|
-
|
|
56
|
+
try {
|
|
57
|
+
return this.action
|
|
58
|
+
.apply(null, params)
|
|
59
|
+
.pipe(finalize(() => {
|
|
60
|
+
this.saving = false;
|
|
61
|
+
}), tap(value => {
|
|
62
|
+
debugger;
|
|
63
|
+
this.saving = false;
|
|
64
|
+
}))
|
|
65
|
+
.subscribe({
|
|
66
|
+
next: (_a = this.context) === null || _a === void 0 ? void 0 : _a.success,
|
|
67
|
+
error: (error) => {
|
|
68
|
+
var _a;
|
|
69
|
+
this.saving = false;
|
|
70
|
+
(_a = this.context) === null || _a === void 0 ? void 0 : _a.error(error);
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
catch (error) {
|
|
58
75
|
this.saving = false;
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
76
|
+
(_b = this.context) === null || _b === void 0 ? void 0 : _b.error(error);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
success(successFn) {
|
|
80
|
+
this.context.success = successFn;
|
|
81
|
+
return this;
|
|
82
|
+
}
|
|
83
|
+
error(errorFn) {
|
|
84
|
+
this.context.error = errorFn;
|
|
85
|
+
return this;
|
|
64
86
|
}
|
|
65
87
|
}
|
|
66
|
-
function useAction(action) {
|
|
67
|
-
return new ActionBehavior(action);
|
|
88
|
+
function useAction(action, context = {}) {
|
|
89
|
+
return new ActionBehavior(action, context);
|
|
68
90
|
}
|
|
69
91
|
|
|
70
92
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tethys-cdk-behaviors.mjs","sources":["../../../cdk/behaviors/run-in-zone.ts","../../../cdk/behaviors/use-async.ts","../../../cdk/behaviors/use-action.ts","../../../cdk/behaviors/tethys-cdk-behaviors.ts"],"sourcesContent":["import { NgZone } from '@angular/core';\nimport { Observable, OperatorFunction } from 'rxjs';\n\nexport function runInZone<T>(zone: NgZone): OperatorFunction<T, T> {\n return source => {\n return new Observable(observer => {\n const onNext = (value: T) => zone.run(() => observer.next(value));\n const onError = (e: Error) => zone.run(() => observer.error(e));\n const onComplete = () => zone.run(() => observer.complete());\n return source.subscribe({\n next: onNext,\n error: onError,\n complete: onComplete\n });\n });\n };\n}\n","import { Observable, of } from 'rxjs';\nimport { finalize, tap, catchError } from 'rxjs/operators';\n\nclass AsyncBehavior<T
|
|
1
|
+
{"version":3,"file":"tethys-cdk-behaviors.mjs","sources":["../../../cdk/behaviors/run-in-zone.ts","../../../cdk/behaviors/use-async.ts","../../../cdk/behaviors/use-action.ts","../../../cdk/behaviors/tethys-cdk-behaviors.ts"],"sourcesContent":["import { NgZone } from '@angular/core';\nimport { Observable, OperatorFunction } from 'rxjs';\n\nexport function runInZone<T>(zone: NgZone): OperatorFunction<T, T> {\n return source => {\n return new Observable(observer => {\n const onNext = (value: T) => zone.run(() => observer.next(value));\n const onError = (e: Error) => zone.run(() => observer.error(e));\n const onComplete = () => zone.run(() => observer.complete());\n return source.subscribe({\n next: onNext,\n error: onError,\n complete: onComplete\n });\n });\n };\n}\n","import { Observable, of } from 'rxjs';\nimport { finalize, tap, catchError } from 'rxjs/operators';\n\nclass AsyncBehavior<T, A extends (...args: any) => Observable<T>> {\n loadingDone = false;\n\n value: T;\n\n state: 'pending' | 'loading' | 'success' | 'error' = 'pending';\n\n error?: Error;\n\n constructor(private action: A) {}\n\n execute(...params: Parameters<A>): ReturnType<A> {\n this.loadingDone = false;\n this.state = 'loading';\n return this.action.apply(undefined, params).pipe(\n finalize(() => {\n this.loadingDone = true;\n }),\n catchError(error => {\n this.state = 'error';\n this.error = error;\n throw error;\n }),\n tap(value => {\n this.value = value as T;\n this.state = 'success';\n })\n );\n }\n}\n\nexport function useAsync<T, A extends (...args: any) => Observable<T>>(action: A) {\n return new AsyncBehavior(action);\n}\n","import { Observable, of, throwError } from 'rxjs';\nimport { catchError, finalize, tap } from 'rxjs/operators';\n\nexport interface ActionBehaviorContext<T> {\n success?: (result: T) => void;\n error?: (error: Error) => void;\n}\n\nclass ActionBehavior<T, A extends (...args: any) => Observable<T>> {\n saving = false;\n\n constructor(private action: A, private context: ActionBehaviorContext<T>) {}\n\n execute(...params: Parameters<A>): void {\n if (this.saving) {\n return;\n }\n this.saving = true;\n try {\n return this.action\n .apply(null, params)\n .pipe(\n finalize(() => {\n this.saving = false;\n }),\n tap(value => {\n debugger;\n this.saving = false;\n })\n )\n .subscribe({\n next: this.context?.success,\n error: (error: Error) => {\n this.saving = false;\n this.context?.error(error);\n }\n });\n } catch (error) {\n this.saving = false;\n this.context?.error(error);\n }\n }\n\n success(successFn: (result: T) => void) {\n this.context.success = successFn;\n return this;\n }\n\n error(errorFn: (error: Error) => void) {\n this.context.error = errorFn;\n return this;\n }\n}\n\nexport function useAction<T, A extends (...args: any) => Observable<T> = (...args: any) => Observable<T>>(\n action: A,\n context: ActionBehaviorContext<T> = {}\n) {\n return new ActionBehavior(action, context);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -56,11 +56,11 @@ class AbstractElementRenderer {
|
|
|
56
56
|
}
|
|
57
57
|
|
|
58
58
|
class ElementRenderer extends AbstractElementRenderer {
|
|
59
|
-
|
|
60
|
-
super();
|
|
59
|
+
setElement(element) {
|
|
61
60
|
this.element = element;
|
|
62
61
|
}
|
|
63
|
-
|
|
62
|
+
constructor(element) {
|
|
63
|
+
super();
|
|
64
64
|
this.element = element;
|
|
65
65
|
}
|
|
66
66
|
}
|
|
@@ -68,6 +68,9 @@ function useElementRenderer(element) {
|
|
|
68
68
|
return new ElementRenderer(element);
|
|
69
69
|
}
|
|
70
70
|
|
|
71
|
+
/**
|
|
72
|
+
* @private
|
|
73
|
+
*/
|
|
71
74
|
class HostRenderer extends AbstractElementRenderer {
|
|
72
75
|
constructor() {
|
|
73
76
|
super(...arguments);
|
|
@@ -77,9 +80,9 @@ class HostRenderer extends AbstractElementRenderer {
|
|
|
77
80
|
return this.elementRef.nativeElement;
|
|
78
81
|
}
|
|
79
82
|
}
|
|
80
|
-
HostRenderer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
81
|
-
HostRenderer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
82
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
83
|
+
HostRenderer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: HostRenderer, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
84
|
+
HostRenderer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: HostRenderer });
|
|
85
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: HostRenderer, decorators: [{
|
|
83
86
|
type: Injectable
|
|
84
87
|
}] });
|
|
85
88
|
function useHostRenderer() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tethys-cdk-dom.mjs","sources":["../../../cdk/dom/abstract-element-renderer.ts","../../../cdk/dom/element-renderer.ts","../../../cdk/dom/host-renderer.ts","../../../cdk/dom/tethys-cdk-dom.ts"],"sourcesContent":["import { Renderer2, inject, RendererStyleFlags2 } from '@angular/core';\n\nexport abstract class AbstractElementRenderer {\n private renderer = inject(Renderer2);\n\n protected abstract element: Element;\n\n private classNames: string[] = [];\n\n private get safeElement() {\n if (!this.element) {\n throw new Error(`Element is null, should call setElement method for ElementRenderer before update dom.`);\n }\n return this.element;\n }\n\n updateClass(classNames: string[]) {\n if (this.classNames) {\n this.classNames.forEach(className => {\n if (classNames.indexOf(className) < 0) {\n this.removeClass(className);\n }\n });\n }\n const newClasses: string[] = [];\n classNames.forEach(className => {\n if (className) {\n newClasses.push(className);\n if (this.classNames.indexOf(className) < 0) {\n this.addClass(className);\n }\n }\n });\n this.classNames = newClasses;\n return this;\n }\n\n updateClassByMap(classMap: Record<string, boolean>) {\n const newClasses = [];\n for (const key in classMap) {\n if (classMap.hasOwnProperty(key) && classMap[key]) {\n newClasses.push(key);\n }\n }\n this.updateClass(newClasses);\n }\n\n addClass(className: string) {\n this.renderer.addClass(this.safeElement, className);\n return this;\n }\n\n removeClass(className: string) {\n this.renderer.removeClass(this.safeElement, className);\n return this;\n }\n\n setStyle(style: string, value: any, flags?: RendererStyleFlags2) {\n this.renderer.setStyle(this.safeElement, style, value, flags);\n return this;\n }\n}\n","import { AbstractElementRenderer } from './abstract-element-renderer';\n\nexport class ElementRenderer extends AbstractElementRenderer {\n protected element: Element;\n\n setElement(element: Element) {\n this.element = element;\n }\n\n constructor(element: Element) {\n super();\n this.element = element;\n }\n}\n\nexport function useElementRenderer(element?: Element): ElementRenderer {\n return new ElementRenderer(element);\n}\n","import { Injectable, inject, ElementRef } from '@angular/core';\nimport { AbstractElementRenderer } from './abstract-element-renderer';\n\n@Injectable()\nexport class HostRenderer extends AbstractElementRenderer {\n private elementRef = inject(ElementRef);\n\n protected get element() {\n return this.elementRef.nativeElement;\n }\n}\n\nexport function useHostRenderer() {\n return new HostRenderer();\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAEsB,uBAAuB,CAAA;AAA7C,IAAA,WAAA,GAAA;AACY,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AAI7B,QAAA,IAAU,CAAA,UAAA,GAAa,EAAE,CAAC;KAsDrC;AApDG,IAAA,IAAY,WAAW,GAAA;AACnB,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;AACf,YAAA,MAAM,IAAI,KAAK,CAAC,CAAA,qFAAA,CAAuF,CAAC,CAAC;AAC5G,SAAA;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;KACvB;AAED,IAAA,WAAW,CAAC,UAAoB,EAAA;QAC5B,IAAI,IAAI,CAAC,UAAU,EAAE;AACjB,YAAA,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,IAAG;gBAChC,IAAI,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;AACnC,oBAAA,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;AAC/B,iBAAA;AACL,aAAC,CAAC,CAAC;AACN,SAAA;QACD,MAAM,UAAU,GAAa,EAAE,CAAC;AAChC,QAAA,UAAU,CAAC,OAAO,CAAC,SAAS,IAAG;AAC3B,YAAA,IAAI,SAAS,EAAE;AACX,gBAAA,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC3B,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;AACxC,oBAAA,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AAC5B,iBAAA;AACJ,aAAA;AACL,SAAC,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;AAC7B,QAAA,OAAO,IAAI,CAAC;KACf;AAED,IAAA,gBAAgB,CAAC,QAAiC,EAAA;QAC9C,MAAM,UAAU,GAAG,EAAE,CAAC;AACtB,QAAA,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE;YACxB,IAAI,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE;AAC/C,gBAAA,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACxB,aAAA;AACJ,SAAA;AACD,QAAA,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;KAChC;AAED,IAAA,QAAQ,CAAC,SAAiB,EAAA;QACtB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;AACpD,QAAA,OAAO,IAAI,CAAC;KACf;AAED,IAAA,WAAW,CAAC,SAAiB,EAAA;QACzB,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;AACvD,QAAA,OAAO,IAAI,CAAC;KACf;AAED,IAAA,QAAQ,CAAC,KAAa,EAAE,KAAU,EAAE,KAA2B,EAAA;AAC3D,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC9D,QAAA,OAAO,IAAI,CAAC;KACf;AACJ;;AC3DK,MAAO,eAAgB,SAAQ,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"tethys-cdk-dom.mjs","sources":["../../../cdk/dom/abstract-element-renderer.ts","../../../cdk/dom/element-renderer.ts","../../../cdk/dom/host-renderer.ts","../../../cdk/dom/tethys-cdk-dom.ts"],"sourcesContent":["import { Renderer2, inject, RendererStyleFlags2 } from '@angular/core';\n\nexport abstract class AbstractElementRenderer {\n private renderer = inject(Renderer2);\n\n protected abstract element: Element;\n\n private classNames: string[] = [];\n\n private get safeElement() {\n if (!this.element) {\n throw new Error(`Element is null, should call setElement method for ElementRenderer before update dom.`);\n }\n return this.element;\n }\n\n updateClass(classNames: string[]) {\n if (this.classNames) {\n this.classNames.forEach(className => {\n if (classNames.indexOf(className) < 0) {\n this.removeClass(className);\n }\n });\n }\n const newClasses: string[] = [];\n classNames.forEach(className => {\n if (className) {\n newClasses.push(className);\n if (this.classNames.indexOf(className) < 0) {\n this.addClass(className);\n }\n }\n });\n this.classNames = newClasses;\n return this;\n }\n\n updateClassByMap(classMap: Record<string, boolean>) {\n const newClasses = [];\n for (const key in classMap) {\n if (classMap.hasOwnProperty(key) && classMap[key]) {\n newClasses.push(key);\n }\n }\n this.updateClass(newClasses);\n }\n\n addClass(className: string) {\n this.renderer.addClass(this.safeElement, className);\n return this;\n }\n\n removeClass(className: string) {\n this.renderer.removeClass(this.safeElement, className);\n return this;\n }\n\n setStyle(style: string, value: any, flags?: RendererStyleFlags2) {\n this.renderer.setStyle(this.safeElement, style, value, flags);\n return this;\n }\n}\n","import { AbstractElementRenderer } from './abstract-element-renderer';\n\nexport class ElementRenderer extends AbstractElementRenderer {\n protected element: Element;\n\n setElement(element: Element) {\n this.element = element;\n }\n\n constructor(element: Element) {\n super();\n this.element = element;\n }\n}\n\nexport function useElementRenderer(element?: Element): ElementRenderer {\n return new ElementRenderer(element);\n}\n","import { Injectable, inject, ElementRef } from '@angular/core';\nimport { AbstractElementRenderer } from './abstract-element-renderer';\n\n/**\n * @private\n */\n@Injectable()\nexport class HostRenderer extends AbstractElementRenderer {\n private elementRef = inject(ElementRef);\n\n protected get element() {\n return this.elementRef.nativeElement;\n }\n}\n\nexport function useHostRenderer() {\n return new HostRenderer();\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|