@dereekb/dbx-core 12.6.21 → 12.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/action/action.machine.mjs +4 -5
- package/esm2022/lib/action/action.store.mjs +11 -7
- package/esm2022/lib/action/action.store.source.provide.mjs +4 -9
- package/esm2022/lib/action/directive/auto/action.automodify.directive.mjs +9 -9
- package/esm2022/lib/action/directive/auto/action.autotrigger.directive.mjs +12 -14
- package/esm2022/lib/action/directive/context/action.directive.mjs +7 -5
- package/esm2022/lib/action/directive/debug/action.logger.directive.mjs +9 -9
- package/esm2022/lib/action/directive/map/action.map.directive.mjs +3 -5
- package/esm2022/lib/action/directive/map/action.map.mjs +5 -4
- package/esm2022/lib/action/directive/map/action.map.working.disable.directive.mjs +11 -12
- package/esm2022/lib/action/directive/state/action.disabled.directive.mjs +7 -11
- package/esm2022/lib/action/directive/state/action.disableonsuccess.directive.mjs +7 -11
- package/esm2022/lib/action/directive/state/action.enforce.modified.directive.mjs +10 -13
- package/esm2022/lib/action/directive/state/action.error.handler.directive.mjs +9 -9
- package/esm2022/lib/action/directive/state/action.handler.directive.mjs +3 -5
- package/esm2022/lib/action/directive/state/action.success.directive.mjs +1 -1
- package/esm2022/lib/action/directive/state/action.success.handler.directive.mjs +9 -9
- package/esm2022/lib/action/directive/state/action.value.directive.mjs +6 -15
- package/esm2022/lib/action/directive/state/action.value.stream.directive.mjs +18 -19
- package/esm2022/lib/action/directive/state/action.value.trigger.directive.mjs +5 -6
- package/esm2022/lib/button/action/action.button.directive.mjs +10 -17
- package/esm2022/lib/button/action/action.button.trigger.directive.mjs +9 -9
- package/esm2022/lib/button/button.directive.mjs +11 -16
- package/esm2022/lib/button/button.loading.directive.mjs +7 -6
- package/esm2022/lib/button/router/button.segue.directive.mjs +6 -7
- package/esm2022/lib/filter/filter.abstract.connector.directive.mjs +3 -5
- package/esm2022/lib/filter/filter.map.directive.mjs +3 -5
- package/esm2022/lib/index.mjs +2 -2
- package/esm2022/lib/injection/injection.context.directive.mjs +2 -2
- package/esm2022/lib/injection/injection.instance.mjs +3 -3
- package/esm2022/lib/injection/injection.mjs +1 -1
- package/esm2022/lib/router/model/model.router.id.directive.mjs +9 -13
- package/esm2022/lib/router/model/model.router.key.directive.mjs +9 -12
- package/esm2022/lib/router/model/model.router.uid.directive.mjs +8 -8
- package/esm2022/lib/router/router/transition/transition.watcher.directive.mjs +8 -11
- package/esm2022/lib/rxjs/clean.mjs +28 -0
- package/esm2022/lib/rxjs/destroy.mjs +13 -0
- package/esm2022/lib/rxjs/index.mjs +7 -0
- package/esm2022/lib/rxjs/loading.mjs +19 -0
- package/esm2022/lib/rxjs/lockset.mjs +56 -0
- package/esm2022/lib/rxjs/rxjs.directive.mjs +42 -0
- package/esm2022/lib/rxjs/subscription.mjs +16 -0
- package/esm2022/lib/view/if.directive.mjs +7 -6
- package/fesm2022/dereekb-dbx-core.mjs +306 -245
- package/fesm2022/dereekb-dbx-core.mjs.map +1 -1
- package/lib/action/action.machine.d.ts +2 -4
- package/lib/action/action.store.d.ts +2 -2
- package/lib/action/action.store.source.provide.d.ts +1 -4
- package/lib/action/directive/auto/action.automodify.directive.d.ts +2 -4
- package/lib/action/directive/auto/action.autotrigger.directive.d.ts +3 -5
- package/lib/action/directive/context/action.directive.d.ts +1 -3
- package/lib/action/directive/debug/action.logger.directive.d.ts +2 -4
- package/lib/action/directive/map/action.map.directive.d.ts +1 -3
- package/lib/action/directive/map/action.map.working.disable.directive.d.ts +2 -5
- package/lib/action/directive/state/action.disabled.directive.d.ts +1 -4
- package/lib/action/directive/state/action.disableonsuccess.directive.d.ts +1 -4
- package/lib/action/directive/state/action.enforce.modified.directive.d.ts +2 -5
- package/lib/action/directive/state/action.error.handler.directive.d.ts +2 -4
- package/lib/action/directive/state/action.handler.directive.d.ts +1 -3
- package/lib/action/directive/state/action.success.directive.d.ts +1 -2
- package/lib/action/directive/state/action.success.handler.directive.d.ts +2 -4
- package/lib/action/directive/state/action.value.directive.d.ts +1 -5
- package/lib/action/directive/state/action.value.stream.directive.d.ts +2 -6
- package/lib/action/directive/state/action.value.trigger.directive.d.ts +4 -5
- package/lib/button/action/action.button.directive.d.ts +2 -6
- package/lib/button/action/action.button.trigger.directive.d.ts +2 -4
- package/lib/button/button.directive.d.ts +3 -5
- package/lib/button/button.loading.directive.d.ts +2 -2
- package/lib/button/router/button.segue.directive.d.ts +1 -2
- package/lib/filter/filter.abstract.connector.directive.d.ts +1 -3
- package/lib/filter/filter.map.directive.d.ts +1 -3
- package/lib/index.d.ts +1 -1
- package/lib/injection/injection.d.ts +2 -0
- package/lib/router/model/model.router.id.directive.d.ts +2 -5
- package/lib/router/model/model.router.key.directive.d.ts +2 -5
- package/lib/router/model/model.router.uid.directive.d.ts +2 -4
- package/lib/router/router/transition/transition.watcher.directive.d.ts +3 -5
- package/lib/rxjs/clean.d.ts +16 -0
- package/lib/rxjs/destroy.d.ts +7 -0
- package/lib/rxjs/index.d.ts +6 -0
- package/lib/rxjs/loading.d.ts +13 -0
- package/lib/rxjs/lockset.d.ts +47 -0
- package/lib/{subscription/subscription.directive.d.ts → rxjs/rxjs.directive.d.ts} +4 -0
- package/lib/rxjs/subscription.d.ts +9 -0
- package/lib/view/if.directive.d.ts +2 -2
- package/package.json +1 -1
- package/esm2022/lib/subscription/index.mjs +0 -2
- package/esm2022/lib/subscription/subscription.directive.mjs +0 -38
- package/lib/subscription/index.d.ts +0 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Directive, inject } from '@angular/core';
|
|
2
2
|
import { actionContextStoreSourceMap, ActionContextStoreSourceMap } from './action.map';
|
|
3
|
+
import { clean } from '../../../rxjs/clean';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
/**
|
|
5
6
|
* Context used for providing actions based on the action key.
|
|
@@ -7,10 +8,7 @@ import * as i0 from "@angular/core";
|
|
|
7
8
|
* This is useful for passing action contexts around via the providers instead of explicit injection.
|
|
8
9
|
*/
|
|
9
10
|
export class DbxActionContextMapDirective {
|
|
10
|
-
actionContextStoreSourceMap = inject(ActionContextStoreSourceMap);
|
|
11
|
-
ngOnDestroy() {
|
|
12
|
-
this.actionContextStoreSourceMap.destroy();
|
|
13
|
-
}
|
|
11
|
+
actionContextStoreSourceMap = clean(inject(ActionContextStoreSourceMap));
|
|
14
12
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionContextMapDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
15
13
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DbxActionContextMapDirective, isStandalone: true, selector: "[dbxActionContextMap]", providers: [
|
|
16
14
|
{
|
|
@@ -33,4 +31,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
33
31
|
standalone: true
|
|
34
32
|
}]
|
|
35
33
|
}] });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLm1hcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvbWFwL2FjdGlvbi5tYXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN4RixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBRTVDOzs7O0dBSUc7QUFZSCxNQUFNLE9BQU8sNEJBQTRCO0lBQzlCLDJCQUEyQixHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsMkJBQTJCLENBQUMsQ0FBQyxDQUFDO3dHQUR2RSw0QkFBNEI7NEZBQTVCLDRCQUE0QixvRUFUNUI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsMkJBQTJCO2dCQUNwQyxVQUFVLEVBQUUsMkJBQTJCO2FBQ3hDO1NBQ0Y7OzRGQUlVLDRCQUE0QjtrQkFYeEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLDJCQUEyQjs0QkFDcEMsVUFBVSxFQUFFLDJCQUEyQjt5QkFDeEM7cUJBQ0Y7b0JBQ0QsUUFBUSxFQUFFLFdBQVc7b0JBQ3JCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBhY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXAsIEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZU1hcCB9IGZyb20gJy4vYWN0aW9uLm1hcCc7XG5pbXBvcnQgeyBjbGVhbiB9IGZyb20gJy4uLy4uLy4uL3J4anMvY2xlYW4nO1xuXG4vKipcbiAqIENvbnRleHQgdXNlZCBmb3IgcHJvdmlkaW5nIGFjdGlvbnMgYmFzZWQgb24gdGhlIGFjdGlvbiBrZXkuXG4gKlxuICogVGhpcyBpcyB1c2VmdWwgZm9yIHBhc3NpbmcgYWN0aW9uIGNvbnRleHRzIGFyb3VuZCB2aWEgdGhlIHByb3ZpZGVycyBpbnN0ZWFkIG9mIGV4cGxpY2l0IGluamVjdGlvbi5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEFjdGlvbkNvbnRleHRNYXBdJyxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogQWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwLFxuICAgICAgdXNlRmFjdG9yeTogYWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwXG4gICAgfVxuICBdLFxuICBleHBvcnRBczogJ2FjdGlvbk1hcCcsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4QWN0aW9uQ29udGV4dE1hcERpcmVjdGl2ZSB7XG4gIHJlYWRvbmx5IGFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZU1hcCA9IGNsZWFuKGluamVjdChBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXApKTtcbn1cbiJdfQ==
|
|
@@ -45,15 +45,16 @@ export function actionContextStoreSourceMap() {
|
|
|
45
45
|
return actionKeySourceMap;
|
|
46
46
|
});
|
|
47
47
|
}
|
|
48
|
+
function destroy() {
|
|
49
|
+
_actionKeySourceMap.complete();
|
|
50
|
+
}
|
|
48
51
|
const result = {
|
|
49
52
|
actionKeySourceMap$: actionKeySourceMap$,
|
|
50
53
|
sourceForKey: sourceForKey,
|
|
51
54
|
addStoreSource: addStoreSource,
|
|
52
55
|
removeStoreSource: removeStoreSource,
|
|
53
|
-
destroy
|
|
54
|
-
_actionKeySourceMap.complete();
|
|
55
|
-
}
|
|
56
|
+
destroy
|
|
56
57
|
};
|
|
57
58
|
return result;
|
|
58
59
|
}
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLm1hcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1jb3JlL3NyYy9saWIvYWN0aW9uL2RpcmVjdGl2ZS9tYXAvYWN0aW9uLm1hcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBbUIsRUFBRSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0csT0FBTyxFQUFpQyw0QkFBNEIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBUXhHOztHQUVHO0FBQ0gsTUFBTSxPQUFnQiwyQkFBMkI7Q0EwQmhEO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSwyQkFBMkI7SUFDekMsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLGVBQWUsQ0FBaUQsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQzNHLE1BQU0sbUJBQW1CLEdBQUcsbUJBQW1CLENBQUMsWUFBWSxFQUFFLENBQUM7SUFFL0QsU0FBUyxTQUFTLENBQUMsRUFBa0g7UUFDbkksTUFBTSxVQUFVLEdBQUcsbUJBQW1CLENBQUMsS0FBSyxDQUFDO1FBQzdDLE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxVQUFVLENBQUM7UUFDN0MsbUJBQW1CLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxTQUFTLFlBQVksQ0FBQyxHQUFjO1FBQ2xDLE1BQU0sT0FBTyxHQUFHLG1CQUFtQixDQUFDLElBQUksQ0FDdEMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQ3RCLG9CQUFvQixFQUFFLEVBQ3RCLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLE1BQU0sSUFBSSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsRUFDNUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7UUFFRixNQUFNLE1BQU0sR0FBbUM7WUFDN0MsTUFBTSxFQUFFLDRCQUE0QixDQUFDLE9BQU8sQ0FBQztTQUM5QyxDQUFDO1FBRUYsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELFNBQVMsY0FBYyxDQUFDLEdBQWMsRUFBRSxNQUFzQztRQUM1RSxTQUFTLENBQUMsQ0FBQyxrQkFBa0IsRUFBRSxFQUFFO1lBQy9CLElBQUksa0JBQWtCLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQ2hDLE1BQU0sSUFBSSxLQUFLLENBQUMsNEJBQTRCLEdBQUcsd0VBQXdFLENBQUMsQ0FBQztZQUMzSCxDQUFDO2lCQUFNLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDbkIsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO1lBQ3ZELENBQUM7WUFFRCxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ3BDLE9BQU8sa0JBQWtCLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsU0FBUyxpQkFBaUIsQ0FBQyxHQUFjO1FBQ3ZDLFNBQVMsQ0FBQyxDQUFDLGtCQUFrQixFQUFFLEVBQUU7WUFDL0IsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUNwQyxPQUFPLENBQUMsSUFBSSxDQUFDLDRDQUE0QyxDQUFDLENBQUM7WUFDN0QsQ0FBQztZQUVELE9BQU8sa0JBQWtCLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsU0FBUyxPQUFPO1FBQ2QsbUJBQW1CLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVELE1BQU0sTUFBTSxHQUFzQztRQUNoRCxtQkFBbUIsRUFBRSxtQkFBbUI7UUFDeEMsWUFBWSxFQUFFLFlBQVk7UUFDMUIsY0FBYyxFQUFFLGNBQWM7UUFDOUIsaUJBQWlCLEVBQUUsaUJBQWlCO1FBQ3BDLE9BQU87S0FDUixDQUFDO0lBRUYsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgdHlwZSBPYnNlcnZhYmxlLCBvZiwgc2hhcmVSZXBsYXksIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdHlwZSBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2UsIGFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZVBpcGUgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlJztcbmltcG9ydCB7IHR5cGUgRGVzdHJveWFibGUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcblxuLyoqXG4gKiBBcmJpdHJhcnkgc3RyaW5nIHVzZWQgdG8gaWRlbnRpZnkgYW4gYWN0aW9uLlxuICovXG5leHBvcnQgdHlwZSBBY3Rpb25LZXkgPSBzdHJpbmc7XG5cbi8qKlxuICogTWFwIHRoYXQgcmV0dXJucyBzb3VyY2VzIGZvciBBY3Rpb25LZXkgdmFsdWVzLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwPFQgPSB1bmtub3duLCBPID0gdW5rbm93bj4gaW1wbGVtZW50cyBEZXN0cm95YWJsZSB7XG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSByZWFkLW9ubHkgbWFwIG9mIGFjdGlvbiBrZXlzIHRvIHNvdXJjZXMuXG4gICAqL1xuICBhYnN0cmFjdCByZWFkb25seSBhY3Rpb25LZXlTb3VyY2VNYXAkOiBPYnNlcnZhYmxlPE1hcDxBY3Rpb25LZXksIEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZTxULCBPPj4+O1xuICAvKipcbiAgICogUmV0dXJucyBhIEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZSBmb3IgdGhlIGlucHV0IGFjdGlvbiBrZXkuXG4gICAqXG4gICAqIEBwYXJhbSBrZXkgQWN0aW9uIGtleSB0byByZXRyaWV2ZSB0aGUgc291cmNlIGZvci5cbiAgICovXG4gIGFic3RyYWN0IHNvdXJjZUZvcktleShrZXk6IEFjdGlvbktleSk6IEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZTxULCBPPjtcbiAgLyoqXG4gICAqIEFkZHMgdGhlIHN0b3JlIHNvdXJjZSBmb3IgdGhlIGlucHV0IGtleS5cbiAgICogQHBhcmFtIGtleSBBY3Rpb24ga2V5IHRvIGFkZCB0aGUgc291cmNlIGZvci5cbiAgICogQHBhcmFtIHNvdXJjZSBTdG9yZSBzb3VyY2UgdG8gYWRkLlxuICAgKi9cbiAgYWJzdHJhY3QgYWRkU3RvcmVTb3VyY2Uoa2V5OiBBY3Rpb25LZXksIHNvdXJjZTogQWN0aW9uQ29udGV4dFN0b3JlU291cmNlPFQsIE8+KTogdm9pZDtcbiAgLyoqXG4gICAqIFJlbW92ZXMgdGhlIHN0b3JlIHNvdXJjZSBmb3IgdGhlIGlucHV0IGtleS5cbiAgICogQHBhcmFtIGtleSBBY3Rpb24ga2V5IHRvIHJlbW92ZSB0aGUgc291cmNlIGZvci5cbiAgICovXG4gIGFic3RyYWN0IHJlbW92ZVN0b3JlU291cmNlKGtleTogQWN0aW9uS2V5KTogdm9pZDtcbiAgLyoqXG4gICAqIERlc3Ryb3lzIHRoZSBtYXAuXG4gICAqL1xuICBhYnN0cmFjdCBkZXN0cm95KCk6IHZvaWQ7XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIG5ldyBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXAuXG4gKlxuICogQHJldHVybnMgQSBuZXcgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwPFQgPSB1bmtub3duLCBPID0gdW5rbm93bj4oKTogQWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwPFQsIE8+IHtcbiAgY29uc3QgX2FjdGlvbktleVNvdXJjZU1hcCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWFwPEFjdGlvbktleSwgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlPFQsIE8+Pj4obmV3IE1hcCgpKTtcbiAgY29uc3QgYWN0aW9uS2V5U291cmNlTWFwJCA9IF9hY3Rpb25LZXlTb3VyY2VNYXAuYXNPYnNlcnZhYmxlKCk7XG5cbiAgZnVuY3Rpb24gdXBkYXRlTWFwKGZuOiAobWFwOiBNYXA8QWN0aW9uS2V5LCBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2U8VCwgTz4+KSA9PiBNYXA8QWN0aW9uS2V5LCBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2U8VCwgTz4+IHwgdm9pZCk6IHZvaWQge1xuICAgIGNvbnN0IGN1cnJlbnRNYXAgPSBfYWN0aW9uS2V5U291cmNlTWFwLnZhbHVlO1xuICAgIGNvbnN0IG5leHRNYXAgPSBmbihjdXJyZW50TWFwKSA/PyBjdXJyZW50TWFwO1xuICAgIF9hY3Rpb25LZXlTb3VyY2VNYXAubmV4dChuZXh0TWFwKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIHNvdXJjZUZvcktleShrZXk6IEFjdGlvbktleSk6IEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZTxULCBPPiB7XG4gICAgY29uc3QgX3N0b3JlJCA9IGFjdGlvbktleVNvdXJjZU1hcCQucGlwZShcbiAgICAgIG1hcCgoeCkgPT4geC5nZXQoa2V5KSksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgc3dpdGNoTWFwKCh4KSA9PiB4Py5zdG9yZSQgPz8gb2YodW5kZWZpbmVkKSksXG4gICAgICBzaGFyZVJlcGxheSgxKVxuICAgICk7XG5cbiAgICBjb25zdCBzb3VyY2U6IEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZTxULCBPPiA9IHtcbiAgICAgIHN0b3JlJDogYWN0aW9uQ29udGV4dFN0b3JlU291cmNlUGlwZShfc3RvcmUkKVxuICAgIH07XG5cbiAgICByZXR1cm4gc291cmNlO1xuICB9XG5cbiAgZnVuY3Rpb24gYWRkU3RvcmVTb3VyY2Uoa2V5OiBBY3Rpb25LZXksIHNvdXJjZTogQWN0aW9uQ29udGV4dFN0b3JlU291cmNlPFQsIE8+KTogdm9pZCB7XG4gICAgdXBkYXRlTWFwKChhY3Rpb25LZXlTb3VyY2VNYXApID0+IHtcbiAgICAgIGlmIChhY3Rpb25LZXlTb3VyY2VNYXAuaGFzKGtleSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBLZXkgYWxyZWFkeSBleGlzdGVkIGZvciBcIiR7a2V5fVwiIGluIG1hcC4gRW5zdXJlIHRoZSBwcmV2aW91cyBzdG9yZSBpcyByZW1vdmVkIGJlZm9yZSBzZXR0aW5nIGFub3RoZXIuYCk7XG4gICAgICB9IGVsc2UgaWYgKCFzb3VyY2UpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdhZGRTdG9yZVNvdXJjZSByZXF1aXJlcyBhIHNvdXJjZS4nKTtcbiAgICAgIH1cblxuICAgICAgYWN0aW9uS2V5U291cmNlTWFwLnNldChrZXksIHNvdXJjZSk7XG4gICAgICByZXR1cm4gYWN0aW9uS2V5U291cmNlTWFwO1xuICAgIH0pO1xuICB9XG5cbiAgZnVuY3Rpb24gcmVtb3ZlU3RvcmVTb3VyY2Uoa2V5OiBBY3Rpb25LZXkpOiB2b2lkIHtcbiAgICB1cGRhdGVNYXAoKGFjdGlvbktleVNvdXJjZU1hcCkgPT4ge1xuICAgICAgaWYgKCFhY3Rpb25LZXlTb3VyY2VNYXAuZGVsZXRlKGtleSkpIHtcbiAgICAgICAgY29uc29sZS53YXJuKCdyZW1vdmVTdG9yZSBjYWxsZWQgYW5kIG5vIHZhbHVlIHdhcyBmb3VuZC4nKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGFjdGlvbktleVNvdXJjZU1hcDtcbiAgICB9KTtcbiAgfVxuXG4gIGZ1bmN0aW9uIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgX2FjdGlvbktleVNvdXJjZU1hcC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgY29uc3QgcmVzdWx0OiBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXA8VCwgTz4gPSB7XG4gICAgYWN0aW9uS2V5U291cmNlTWFwJDogYWN0aW9uS2V5U291cmNlTWFwJCxcbiAgICBzb3VyY2VGb3JLZXk6IHNvdXJjZUZvcktleSxcbiAgICBhZGRTdG9yZVNvdXJjZTogYWRkU3RvcmVTb3VyY2UsXG4gICAgcmVtb3ZlU3RvcmVTb3VyY2U6IHJlbW92ZVN0b3JlU291cmNlLFxuICAgIGRlc3Ryb3lcbiAgfTtcblxuICByZXR1cm4gcmVzdWx0O1xufVxuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Directive, inject, input } from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { clean, cleanSubscription } from '../../../rxjs';
|
|
3
3
|
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
4
4
|
import { actionContextStoreSourceMapReader } from './action.map.utility';
|
|
5
5
|
import { ActionContextStoreSourceMap } from './action.map';
|
|
@@ -8,22 +8,21 @@ export const DEFAULT_ACTION_MAP_WORKING_DISABLED_KEY = 'action_map_working_disab
|
|
|
8
8
|
/**
|
|
9
9
|
* Used to communicate with an dbxActionMap and set the ActionContextStore to be disabled if any other element in the map is working.
|
|
10
10
|
*/
|
|
11
|
-
export class DbxActionMapWorkingDisableDirective
|
|
11
|
+
export class DbxActionMapWorkingDisableDirective {
|
|
12
12
|
_actionContextStoreSourceMap = inject(ActionContextStoreSourceMap);
|
|
13
13
|
source = inject(DbxActionContextStoreSourceInstance, { host: true });
|
|
14
14
|
disabledKey = input(undefined, { alias: 'dbxActionMapWorkingDisable' });
|
|
15
15
|
areAnySourcesWorking$ = actionContextStoreSourceMapReader(this._actionContextStoreSourceMap.actionKeySourceMap$).checkAny((x) => x.isWorking$, false);
|
|
16
|
-
|
|
17
|
-
this.
|
|
16
|
+
constructor() {
|
|
17
|
+
cleanSubscription(this.areAnySourcesWorking$.subscribe((x) => {
|
|
18
18
|
this.source.disable(this.disabledKey() || DEFAULT_ACTION_MAP_WORKING_DISABLED_KEY, x);
|
|
19
|
+
}));
|
|
20
|
+
clean(() => {
|
|
21
|
+
this.source.enable(this.disabledKey() || DEFAULT_ACTION_MAP_WORKING_DISABLED_KEY);
|
|
19
22
|
});
|
|
20
23
|
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
this.source.enable(this.disabledKey() || DEFAULT_ACTION_MAP_WORKING_DISABLED_KEY);
|
|
24
|
-
}
|
|
25
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionMapWorkingDisableDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
26
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionMapWorkingDisableDirective, isStandalone: true, selector: "[dbxActionMapWorkingDisable]", inputs: { disabledKey: { classPropertyName: "disabledKey", publicName: "dbxActionMapWorkingDisable", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });
|
|
24
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionMapWorkingDisableDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
25
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionMapWorkingDisableDirective, isStandalone: true, selector: "[dbxActionMapWorkingDisable]", inputs: { disabledKey: { classPropertyName: "disabledKey", publicName: "dbxActionMapWorkingDisable", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 });
|
|
27
26
|
}
|
|
28
27
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionMapWorkingDisableDirective, decorators: [{
|
|
29
28
|
type: Directive,
|
|
@@ -31,5 +30,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
31
30
|
selector: '[dbxActionMapWorkingDisable]',
|
|
32
31
|
standalone: true
|
|
33
32
|
}]
|
|
34
|
-
}] });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
}], ctorParameters: () => [] });
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLm1hcC53b3JraW5nLmRpc2FibGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWNvcmUvc3JjL2xpYi9hY3Rpb24vZGlyZWN0aXZlL21hcC9hY3Rpb24ubWFwLndvcmtpbmcuZGlzYWJsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpELE9BQU8sRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFaEYsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sY0FBYyxDQUFDOztBQUUzRCxNQUFNLENBQUMsTUFBTSx1Q0FBdUMsR0FBRyw0QkFBNEIsQ0FBQztBQUVwRjs7R0FFRztBQUtILE1BQU0sT0FBTyxtQ0FBbUM7SUFDN0IsNEJBQTRCLEdBQUcsTUFBTSxDQUFDLDJCQUEyQixDQUFDLENBQUM7SUFFM0UsTUFBTSxHQUFHLE1BQU0sQ0FBQyxtQ0FBbUMsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBRXJFLFdBQVcsR0FBRyxLQUFLLENBQThCLFNBQVMsRUFBRSxFQUFFLEtBQUssRUFBRSw0QkFBNEIsRUFBRSxDQUFDLENBQUM7SUFFckcscUJBQXFCLEdBQUcsaUNBQWlDLENBQUMsSUFBSSxDQUFDLDRCQUE0QixDQUFDLG1CQUFtQixDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBRS9KO1FBQ0UsaUJBQWlCLENBQ2YsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ3pDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSx1Q0FBdUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN4RixDQUFDLENBQUMsQ0FDSCxDQUFDO1FBRUYsS0FBSyxDQUFDLEdBQUcsRUFBRTtZQUNULElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSx1Q0FBdUMsQ0FBQyxDQUFDO1FBQ3BGLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt3R0FuQlUsbUNBQW1DOzRGQUFuQyxtQ0FBbUM7OzRGQUFuQyxtQ0FBbUM7a0JBSi9DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDhCQUE4QjtvQkFDeEMsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0eXBlIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBjbGVhbiwgY2xlYW5TdWJzY3JpcHRpb24gfSBmcm9tICcuLi8uLi8uLi9yeGpzJztcbmltcG9ydCB7IERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLnN0b3JlLnNvdXJjZSc7XG5pbXBvcnQgeyB0eXBlIERieEFjdGlvbkRpc2FibGVkS2V5IH0gZnJvbSAnLi4vLi4vYWN0aW9uJztcbmltcG9ydCB7IGFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZU1hcFJlYWRlciB9IGZyb20gJy4vYWN0aW9uLm1hcC51dGlsaXR5JztcbmltcG9ydCB7IEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZU1hcCB9IGZyb20gJy4vYWN0aW9uLm1hcCc7XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0FDVElPTl9NQVBfV09SS0lOR19ESVNBQkxFRF9LRVkgPSAnYWN0aW9uX21hcF93b3JraW5nX2Rpc2FibGUnO1xuXG4vKipcbiAqIFVzZWQgdG8gY29tbXVuaWNhdGUgd2l0aCBhbiBkYnhBY3Rpb25NYXAgYW5kIHNldCB0aGUgQWN0aW9uQ29udGV4dFN0b3JlIHRvIGJlIGRpc2FibGVkIGlmIGFueSBvdGhlciBlbGVtZW50IGluIHRoZSBtYXAgaXMgd29ya2luZy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEFjdGlvbk1hcFdvcmtpbmdEaXNhYmxlXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4QWN0aW9uTWFwV29ya2luZ0Rpc2FibGVEaXJlY3RpdmUge1xuICBwcml2YXRlIHJlYWRvbmx5IF9hY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXAgPSBpbmplY3QoQWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwKTtcblxuICByZWFkb25seSBzb3VyY2UgPSBpbmplY3QoRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UsIHsgaG9zdDogdHJ1ZSB9KTtcblxuICByZWFkb25seSBkaXNhYmxlZEtleSA9IGlucHV0PE1heWJlPERieEFjdGlvbkRpc2FibGVkS2V5Pj4odW5kZWZpbmVkLCB7IGFsaWFzOiAnZGJ4QWN0aW9uTWFwV29ya2luZ0Rpc2FibGUnIH0pO1xuXG4gIHJlYWRvbmx5IGFyZUFueVNvdXJjZXNXb3JraW5nJCA9IGFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZU1hcFJlYWRlcih0aGlzLl9hY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXAuYWN0aW9uS2V5U291cmNlTWFwJCkuY2hlY2tBbnkoKHgpID0+IHguaXNXb3JraW5nJCwgZmFsc2UpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGNsZWFuU3Vic2NyaXB0aW9uKFxuICAgICAgdGhpcy5hcmVBbnlTb3VyY2VzV29ya2luZyQuc3Vic2NyaWJlKCh4KSA9PiB7XG4gICAgICAgIHRoaXMuc291cmNlLmRpc2FibGUodGhpcy5kaXNhYmxlZEtleSgpIHx8IERFRkFVTFRfQUNUSU9OX01BUF9XT1JLSU5HX0RJU0FCTEVEX0tFWSwgeCk7XG4gICAgICB9KVxuICAgICk7XG5cbiAgICBjbGVhbigoKSA9PiB7XG4gICAgICB0aGlzLnNvdXJjZS5lbmFibGUodGhpcy5kaXNhYmxlZEtleSgpIHx8IERFRkFVTFRfQUNUSU9OX01BUF9XT1JLSU5HX0RJU0FCTEVEX0tFWSk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Directive, inject, input } from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { clean, cleanSubscription } from '../../../rxjs';
|
|
3
3
|
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
4
4
|
import { toObservable } from '@angular/core/rxjs-interop';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
@@ -7,22 +7,18 @@ export const APP_ACTION_DISABLED_DIRECTIVE_KEY = 'dbx_action_disabled';
|
|
|
7
7
|
/**
|
|
8
8
|
* Directive that allows disabling an action using the inputs.
|
|
9
9
|
*/
|
|
10
|
-
export class DbxActionDisabledDirective
|
|
10
|
+
export class DbxActionDisabledDirective {
|
|
11
11
|
source = inject((DbxActionContextStoreSourceInstance), { host: true });
|
|
12
12
|
disabled = input(false, { alias: 'dbxActionDisabled', transform: (value) => value !== false });
|
|
13
13
|
disabled$ = toObservable(this.disabled);
|
|
14
14
|
constructor() {
|
|
15
|
-
|
|
16
|
-
this.sub = this.disabled$.subscribe((x) => {
|
|
15
|
+
cleanSubscription(this.disabled$.subscribe((x) => {
|
|
17
16
|
this.source.disable(APP_ACTION_DISABLED_DIRECTIVE_KEY, x);
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
ngOnDestroy() {
|
|
21
|
-
super.ngOnDestroy();
|
|
22
|
-
this.source.enable(APP_ACTION_DISABLED_DIRECTIVE_KEY);
|
|
17
|
+
}));
|
|
18
|
+
clean(() => this.source.enable(APP_ACTION_DISABLED_DIRECTIVE_KEY));
|
|
23
19
|
}
|
|
24
20
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionDisabledDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
25
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionDisabledDirective, isStandalone: true, selector: "[dbxActionDisabled]", inputs: { disabled: { classPropertyName: "disabled", publicName: "dbxActionDisabled", isSignal: true, isRequired: false, transformFunction: null } },
|
|
21
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionDisabledDirective, isStandalone: true, selector: "[dbxActionDisabled]", inputs: { disabled: { classPropertyName: "disabled", publicName: "dbxActionDisabled", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 });
|
|
26
22
|
}
|
|
27
23
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionDisabledDirective, decorators: [{
|
|
28
24
|
type: Directive,
|
|
@@ -31,4 +27,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
31
27
|
standalone: true
|
|
32
28
|
}]
|
|
33
29
|
}], ctorParameters: () => [] });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmRpc2FibGVkLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1jb3JlL3NyYy9saWIvYWN0aW9uL2RpcmVjdGl2ZS9zdGF0ZS9hY3Rpb24uZGlzYWJsZWQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RCxPQUFPLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFMUQsTUFBTSxDQUFDLE1BQU0saUNBQWlDLEdBQUcscUJBQXFCLENBQUM7QUFFdkU7O0dBRUc7QUFLSCxNQUFNLE9BQU8sMEJBQTBCO0lBQzVCLE1BQU0sR0FBRyxNQUFNLENBQUMsQ0FBQSxtQ0FBeUMsQ0FBQSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFFM0UsUUFBUSxHQUFHLEtBQUssQ0FBK0IsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLG1CQUFtQixFQUFFLFNBQVMsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxLQUFLLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDN0gsU0FBUyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFakQ7UUFDRSxpQkFBaUIsQ0FDZixJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQzdCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLGlDQUFpQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzVELENBQUMsQ0FBQyxDQUNILENBQUM7UUFFRixLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsaUNBQWlDLENBQUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7d0dBZFUsMEJBQTBCOzRGQUExQiwwQkFBMEI7OzRGQUExQiwwQkFBMEI7a0JBSnRDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0eXBlIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBjbGVhbiwgY2xlYW5TdWJzY3JpcHRpb24gfSBmcm9tICcuLi8uLi8uLi9yeGpzJztcbmltcG9ydCB7IERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLnN0b3JlLnNvdXJjZSc7XG5pbXBvcnQgeyB0b09ic2VydmFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbmV4cG9ydCBjb25zdCBBUFBfQUNUSU9OX0RJU0FCTEVEX0RJUkVDVElWRV9LRVkgPSAnZGJ4X2FjdGlvbl9kaXNhYmxlZCc7XG5cbi8qKlxuICogRGlyZWN0aXZlIHRoYXQgYWxsb3dzIGRpc2FibGluZyBhbiBhY3Rpb24gdXNpbmcgdGhlIGlucHV0cy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEFjdGlvbkRpc2FibGVkXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4QWN0aW9uRGlzYWJsZWREaXJlY3RpdmU8VCwgTz4ge1xuICByZWFkb25seSBzb3VyY2UgPSBpbmplY3QoRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2U8VCwgTz4sIHsgaG9zdDogdHJ1ZSB9KTtcblxuICByZWFkb25seSBkaXNhYmxlZCA9IGlucHV0PGJvb2xlYW4sIE1heWJlPGJvb2xlYW4gfCAnJz4+KGZhbHNlLCB7IGFsaWFzOiAnZGJ4QWN0aW9uRGlzYWJsZWQnLCB0cmFuc2Zvcm06ICh2YWx1ZSkgPT4gdmFsdWUgIT09IGZhbHNlIH0pO1xuICByZWFkb25seSBkaXNhYmxlZCQgPSB0b09ic2VydmFibGUodGhpcy5kaXNhYmxlZCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY2xlYW5TdWJzY3JpcHRpb24oXG4gICAgICB0aGlzLmRpc2FibGVkJC5zdWJzY3JpYmUoKHgpID0+IHtcbiAgICAgICAgdGhpcy5zb3VyY2UuZGlzYWJsZShBUFBfQUNUSU9OX0RJU0FCTEVEX0RJUkVDVElWRV9LRVksIHgpO1xuICAgICAgfSlcbiAgICApO1xuXG4gICAgY2xlYW4oKCkgPT4gdGhpcy5zb3VyY2UuZW5hYmxlKEFQUF9BQ1RJT05fRElTQUJMRURfRElSRUNUSVZFX0tFWSkpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Directive, inject, input } from '@angular/core';
|
|
2
2
|
import { combineLatest } from 'rxjs';
|
|
3
|
-
import {
|
|
3
|
+
import { clean, cleanSubscription } from '../../../rxjs';
|
|
4
4
|
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
5
5
|
import { toObservable } from '@angular/core/rxjs-interop';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
@@ -8,22 +8,18 @@ export const APP_ACTION_DISABLED_ON_SUCCESS_DIRECTIVE_KEY = 'dbx_action_disabled
|
|
|
8
8
|
/**
|
|
9
9
|
* Directive that will disable the action after the action completes successfully.
|
|
10
10
|
*/
|
|
11
|
-
export class DbxActionDisabledOnSuccessDirective
|
|
11
|
+
export class DbxActionDisabledOnSuccessDirective {
|
|
12
12
|
source = inject((DbxActionContextStoreSourceInstance), { host: true });
|
|
13
13
|
disabledOnSuccess = input(true, { alias: 'dbxActionDisabledOnSuccess', transform: (value) => value !== false });
|
|
14
14
|
disabledOnSuccess$ = toObservable(this.disabledOnSuccess);
|
|
15
15
|
constructor() {
|
|
16
|
-
|
|
17
|
-
this.sub = combineLatest([this.disabledOnSuccess$, this.source.isSuccess$]).subscribe(([disableOnSuccess, success]) => {
|
|
16
|
+
cleanSubscription(combineLatest([this.disabledOnSuccess$, this.source.isSuccess$]).subscribe(([disableOnSuccess, success]) => {
|
|
18
17
|
this.source.disable(APP_ACTION_DISABLED_ON_SUCCESS_DIRECTIVE_KEY, disableOnSuccess && success);
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
ngOnDestroy() {
|
|
22
|
-
super.ngOnDestroy();
|
|
23
|
-
this.source.enable(APP_ACTION_DISABLED_ON_SUCCESS_DIRECTIVE_KEY);
|
|
18
|
+
}));
|
|
19
|
+
clean(() => this.source.enable(APP_ACTION_DISABLED_ON_SUCCESS_DIRECTIVE_KEY));
|
|
24
20
|
}
|
|
25
21
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionDisabledOnSuccessDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
26
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionDisabledOnSuccessDirective, isStandalone: true, selector: "[dbxActionDisabledOnSuccess]", inputs: { disabledOnSuccess: { classPropertyName: "disabledOnSuccess", publicName: "dbxActionDisabledOnSuccess", isSignal: true, isRequired: false, transformFunction: null } },
|
|
22
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionDisabledOnSuccessDirective, isStandalone: true, selector: "[dbxActionDisabledOnSuccess]", inputs: { disabledOnSuccess: { classPropertyName: "disabledOnSuccess", publicName: "dbxActionDisabledOnSuccess", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 });
|
|
27
23
|
}
|
|
28
24
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionDisabledOnSuccessDirective, decorators: [{
|
|
29
25
|
type: Directive,
|
|
@@ -32,4 +28,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
32
28
|
standalone: true
|
|
33
29
|
}]
|
|
34
30
|
}], ctorParameters: () => [] });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmRpc2FibGVvbnN1Y2Nlc3MuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWNvcmUvc3JjL2xpYi9hY3Rpb24vZGlyZWN0aXZlL3N0YXRlL2FjdGlvbi5kaXNhYmxlb25zdWNjZXNzLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyQyxPQUFPLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFMUQsTUFBTSxDQUFDLE1BQU0sNENBQTRDLEdBQUcsZ0NBQWdDLENBQUM7QUFFN0Y7O0dBRUc7QUFLSCxNQUFNLE9BQU8sbUNBQW1DO0lBQ3JDLE1BQU0sR0FBRyxNQUFNLENBQUMsQ0FBQSxtQ0FBeUMsQ0FBQSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFFM0UsaUJBQWlCLEdBQUcsS0FBSyxDQUErQixJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsNEJBQTRCLEVBQUUsU0FBUyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEtBQUssS0FBSyxFQUFFLENBQUMsQ0FBQztJQUM5SSxrQkFBa0IsR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFFbkU7UUFDRSxpQkFBaUIsQ0FDZixhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLEVBQUUsRUFBRTtZQUN6RyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyw0Q0FBNEMsRUFBRSxnQkFBZ0IsSUFBSSxPQUFPLENBQUMsQ0FBQztRQUNqRyxDQUFDLENBQUMsQ0FDSCxDQUFDO1FBRUYsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLDRDQUE0QyxDQUFDLENBQUMsQ0FBQztJQUNoRixDQUFDO3dHQWRVLG1DQUFtQzs0RkFBbkMsbUNBQW1DOzs0RkFBbkMsbUNBQW1DO2tCQUovQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw4QkFBOEI7b0JBQ3hDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdHlwZSBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2xlYW4sIGNsZWFuU3Vic2NyaXB0aW9uIH0gZnJvbSAnLi4vLi4vLi4vcnhqcyc7XG5pbXBvcnQgeyBEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZSB9IGZyb20gJy4uLy4uL2FjdGlvbi5zdG9yZS5zb3VyY2UnO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG5leHBvcnQgY29uc3QgQVBQX0FDVElPTl9ESVNBQkxFRF9PTl9TVUNDRVNTX0RJUkVDVElWRV9LRVkgPSAnZGJ4X2FjdGlvbl9kaXNhYmxlZF9vbl9zdWNjZXNzJztcblxuLyoqXG4gKiBEaXJlY3RpdmUgdGhhdCB3aWxsIGRpc2FibGUgdGhlIGFjdGlvbiBhZnRlciB0aGUgYWN0aW9uIGNvbXBsZXRlcyBzdWNjZXNzZnVsbHkuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhBY3Rpb25EaXNhYmxlZE9uU3VjY2Vzc10nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERieEFjdGlvbkRpc2FibGVkT25TdWNjZXNzRGlyZWN0aXZlPFQsIE8+IHtcbiAgcmVhZG9ubHkgc291cmNlID0gaW5qZWN0KERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlPFQsIE8+LCB7IGhvc3Q6IHRydWUgfSk7XG5cbiAgcmVhZG9ubHkgZGlzYWJsZWRPblN1Y2Nlc3MgPSBpbnB1dDxib29sZWFuLCBNYXliZTxib29sZWFuIHwgJyc+Pih0cnVlLCB7IGFsaWFzOiAnZGJ4QWN0aW9uRGlzYWJsZWRPblN1Y2Nlc3MnLCB0cmFuc2Zvcm06ICh2YWx1ZSkgPT4gdmFsdWUgIT09IGZhbHNlIH0pO1xuICByZWFkb25seSBkaXNhYmxlZE9uU3VjY2VzcyQgPSB0b09ic2VydmFibGUodGhpcy5kaXNhYmxlZE9uU3VjY2Vzcyk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY2xlYW5TdWJzY3JpcHRpb24oXG4gICAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLmRpc2FibGVkT25TdWNjZXNzJCwgdGhpcy5zb3VyY2UuaXNTdWNjZXNzJF0pLnN1YnNjcmliZSgoW2Rpc2FibGVPblN1Y2Nlc3MsIHN1Y2Nlc3NdKSA9PiB7XG4gICAgICAgIHRoaXMuc291cmNlLmRpc2FibGUoQVBQX0FDVElPTl9ESVNBQkxFRF9PTl9TVUNDRVNTX0RJUkVDVElWRV9LRVksIGRpc2FibGVPblN1Y2Nlc3MgJiYgc3VjY2Vzcyk7XG4gICAgICB9KVxuICAgICk7XG5cbiAgICBjbGVhbigoKSA9PiB0aGlzLnNvdXJjZS5lbmFibGUoQVBQX0FDVElPTl9ESVNBQkxFRF9PTl9TVUNDRVNTX0RJUkVDVElWRV9LRVkpKTtcbiAgfVxufVxuIl19
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Directive, inject, input } from '@angular/core';
|
|
2
2
|
import { combineLatest, delay } from 'rxjs';
|
|
3
|
-
import {
|
|
3
|
+
import { clean, cleanSubscription } from '../../../rxjs';
|
|
4
4
|
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
5
5
|
import { toObservable } from '@angular/core/rxjs-interop';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
@@ -8,24 +8,21 @@ export const APP_ACTION_ENFORCE_MODIFIED_DIRECTIVE_KEY = 'dbx_action_enforce_mod
|
|
|
8
8
|
/**
|
|
9
9
|
* Directive that toggles disabling an action if the action is not marked modified.
|
|
10
10
|
*/
|
|
11
|
-
export class DbxActionEnforceModifiedDirective
|
|
11
|
+
export class DbxActionEnforceModifiedDirective {
|
|
12
12
|
source = inject(DbxActionContextStoreSourceInstance, { host: true });
|
|
13
13
|
enabled = input(true, { alias: 'dbxActionEnforceModified', transform: (value) => value !== false });
|
|
14
14
|
enabled$ = toObservable(this.enabled);
|
|
15
|
-
|
|
16
|
-
|
|
15
|
+
constructor() {
|
|
16
|
+
cleanSubscription(combineLatest([this.source.isModified$, this.enabled$])
|
|
17
17
|
.pipe(delay(0))
|
|
18
18
|
.subscribe(([modified, enableDirective]) => {
|
|
19
19
|
const disable = enableDirective && !modified;
|
|
20
20
|
this.source.disable(APP_ACTION_ENFORCE_MODIFIED_DIRECTIVE_KEY, disable);
|
|
21
|
-
});
|
|
21
|
+
}));
|
|
22
|
+
clean(() => this.source.enable(APP_ACTION_ENFORCE_MODIFIED_DIRECTIVE_KEY));
|
|
22
23
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
this.source.enable(APP_ACTION_ENFORCE_MODIFIED_DIRECTIVE_KEY);
|
|
26
|
-
}
|
|
27
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionEnforceModifiedDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
28
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionEnforceModifiedDirective, isStandalone: true, selector: "[dbxActionEnforceModified]", inputs: { enabled: { classPropertyName: "enabled", publicName: "dbxActionEnforceModified", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });
|
|
24
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionEnforceModifiedDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
25
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionEnforceModifiedDirective, isStandalone: true, selector: "[dbxActionEnforceModified]", inputs: { enabled: { classPropertyName: "enabled", publicName: "dbxActionEnforceModified", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 });
|
|
29
26
|
}
|
|
30
27
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionEnforceModifiedDirective, decorators: [{
|
|
31
28
|
type: Directive,
|
|
@@ -33,5 +30,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
33
30
|
selector: '[dbxActionEnforceModified]',
|
|
34
31
|
standalone: true
|
|
35
32
|
}]
|
|
36
|
-
}] });
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
}], ctorParameters: () => [] });
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmVuZm9yY2UubW9kaWZpZWQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWNvcmUvc3JjL2xpYi9hY3Rpb24vZGlyZWN0aXZlL3N0YXRlL2FjdGlvbi5lbmZvcmNlLm1vZGlmaWVkLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUMsT0FBTyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBRTFELE1BQU0sQ0FBQyxNQUFNLHlDQUF5QyxHQUFHLDZCQUE2QixDQUFDO0FBRXZGOztHQUVHO0FBS0gsTUFBTSxPQUFPLGlDQUFpQztJQUNuQyxNQUFNLEdBQUcsTUFBTSxDQUFDLG1DQUFtQyxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFFckUsT0FBTyxHQUFHLEtBQUssQ0FBK0IsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLDBCQUEwQixFQUFFLFNBQVMsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxLQUFLLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDbEksUUFBUSxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFL0M7UUFDRSxpQkFBaUIsQ0FDZixhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDcEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNkLFNBQVMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLGVBQWUsQ0FBQyxFQUFFLEVBQUU7WUFDekMsTUFBTSxPQUFPLEdBQUcsZUFBZSxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQzdDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLHlDQUF5QyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzFFLENBQUMsQ0FBQyxDQUNMLENBQUM7UUFFRixLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMseUNBQXlDLENBQUMsQ0FBQyxDQUFDO0lBQzdFLENBQUM7d0dBakJVLGlDQUFpQzs0RkFBakMsaUNBQWlDOzs0RkFBakMsaUNBQWlDO2tCQUo3QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw0QkFBNEI7b0JBQ3RDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdHlwZSBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgZGVsYXkgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNsZWFuLCBjbGVhblN1YnNjcmlwdGlvbiB9IGZyb20gJy4uLy4uLy4uL3J4anMnO1xuaW1wb3J0IHsgRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuZXhwb3J0IGNvbnN0IEFQUF9BQ1RJT05fRU5GT1JDRV9NT0RJRklFRF9ESVJFQ1RJVkVfS0VZID0gJ2RieF9hY3Rpb25fZW5mb3JjZV9tb2RpZmllZCc7XG5cbi8qKlxuICogRGlyZWN0aXZlIHRoYXQgdG9nZ2xlcyBkaXNhYmxpbmcgYW4gYWN0aW9uIGlmIHRoZSBhY3Rpb24gaXMgbm90IG1hcmtlZCBtb2RpZmllZC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEFjdGlvbkVuZm9yY2VNb2RpZmllZF0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERieEFjdGlvbkVuZm9yY2VNb2RpZmllZERpcmVjdGl2ZSB7XG4gIHJlYWRvbmx5IHNvdXJjZSA9IGluamVjdChEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZSwgeyBob3N0OiB0cnVlIH0pO1xuXG4gIHJlYWRvbmx5IGVuYWJsZWQgPSBpbnB1dDxib29sZWFuLCBNYXliZTxib29sZWFuIHwgJyc+Pih0cnVlLCB7IGFsaWFzOiAnZGJ4QWN0aW9uRW5mb3JjZU1vZGlmaWVkJywgdHJhbnNmb3JtOiAodmFsdWUpID0+IHZhbHVlICE9PSBmYWxzZSB9KTtcbiAgcmVhZG9ubHkgZW5hYmxlZCQgPSB0b09ic2VydmFibGUodGhpcy5lbmFibGVkKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBjbGVhblN1YnNjcmlwdGlvbihcbiAgICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMuc291cmNlLmlzTW9kaWZpZWQkLCB0aGlzLmVuYWJsZWQkXSlcbiAgICAgICAgLnBpcGUoZGVsYXkoMCkpXG4gICAgICAgIC5zdWJzY3JpYmUoKFttb2RpZmllZCwgZW5hYmxlRGlyZWN0aXZlXSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGRpc2FibGUgPSBlbmFibGVEaXJlY3RpdmUgJiYgIW1vZGlmaWVkO1xuICAgICAgICAgIHRoaXMuc291cmNlLmRpc2FibGUoQVBQX0FDVElPTl9FTkZPUkNFX01PRElGSUVEX0RJUkVDVElWRV9LRVksIGRpc2FibGUpO1xuICAgICAgICB9KVxuICAgICk7XG5cbiAgICBjbGVhbigoKSA9PiB0aGlzLnNvdXJjZS5lbmFibGUoQVBQX0FDVElPTl9FTkZPUkNFX01PRElGSUVEX0RJUkVDVElWRV9LRVkpKTtcbiAgfVxufVxuIl19
|
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
import { map, tap, shareReplay, switchMap } from 'rxjs';
|
|
2
2
|
import { filterMaybe } from '@dereekb/rxjs';
|
|
3
3
|
import { Directive, inject, input } from '@angular/core';
|
|
4
|
-
import {
|
|
4
|
+
import { cleanSubscription } from '../../../rxjs';
|
|
5
5
|
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
6
6
|
import { toObservable } from '@angular/core/rxjs-interop';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
/**
|
|
9
9
|
* Directive that executes a function on ActionContextStore error.
|
|
10
10
|
*/
|
|
11
|
-
export class DbxActionErrorHandlerDirective
|
|
11
|
+
export class DbxActionErrorHandlerDirective {
|
|
12
12
|
source = inject((DbxActionContextStoreSourceInstance), { host: true });
|
|
13
13
|
dbxActionErrorHandler = input();
|
|
14
14
|
errorFunction$ = toObservable(this.dbxActionErrorHandler).pipe(filterMaybe(), shareReplay(1));
|
|
15
|
-
|
|
16
|
-
this.
|
|
15
|
+
constructor() {
|
|
16
|
+
cleanSubscription(this.errorFunction$
|
|
17
17
|
.pipe(switchMap((errorFunction) => this.source.error$.pipe(filterMaybe(), map((x) => [errorFunction, x]), tap(([errorFn, error]) => {
|
|
18
18
|
errorFn(error);
|
|
19
19
|
}))))
|
|
20
|
-
.subscribe();
|
|
20
|
+
.subscribe());
|
|
21
21
|
}
|
|
22
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionErrorHandlerDirective, deps:
|
|
23
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionErrorHandlerDirective, isStandalone: true, selector: "[dbxActionErrorHandler]", inputs: { dbxActionErrorHandler: { classPropertyName: "dbxActionErrorHandler", publicName: "dbxActionErrorHandler", isSignal: true, isRequired: false, transformFunction: null } },
|
|
22
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionErrorHandlerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
23
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionErrorHandlerDirective, isStandalone: true, selector: "[dbxActionErrorHandler]", inputs: { dbxActionErrorHandler: { classPropertyName: "dbxActionErrorHandler", publicName: "dbxActionErrorHandler", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 });
|
|
24
24
|
}
|
|
25
25
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionErrorHandlerDirective, decorators: [{
|
|
26
26
|
type: Directive,
|
|
@@ -28,5 +28,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
28
28
|
selector: '[dbxActionErrorHandler]',
|
|
29
29
|
standalone: true
|
|
30
30
|
}]
|
|
31
|
-
}] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
}], ctorParameters: () => [] });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmVycm9yLmhhbmRsZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWNvcmUvc3JjL2xpYi9hY3Rpb24vZGlyZWN0aXZlL3N0YXRlL2FjdGlvbi5lcnJvci5oYW5kbGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3hELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBTzFEOztHQUVHO0FBS0gsTUFBTSxPQUFPLDhCQUE4QjtJQUNoQyxNQUFNLEdBQUcsTUFBTSxDQUFDLENBQUEsbUNBQXlDLENBQUEsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBRTNFLHFCQUFxQixHQUFHLEtBQUssRUFBd0MsQ0FBQztJQUN0RSxjQUFjLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUV2RztRQUNFLGlCQUFpQixDQUNmLElBQUksQ0FBQyxjQUFjO2FBQ2hCLElBQUksQ0FDSCxTQUFTLENBQUMsQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUMxQixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ3JCLFdBQVcsRUFBRSxFQUNiLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFVLENBQUMsRUFDdkMsR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRTtZQUN2QixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQ0gsQ0FDRixDQUNGO2FBQ0EsU0FBUyxFQUFFLENBQ2YsQ0FBQztJQUNKLENBQUM7d0dBdEJVLDhCQUE4Qjs0RkFBOUIsOEJBQThCOzs0RkFBOUIsOEJBQThCO2tCQUoxQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1hcCwgdGFwLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXJNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZWFkYWJsZUVycm9yLCB0eXBlIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBjbGVhblN1YnNjcmlwdGlvbiB9IGZyb20gJy4uLy4uLy4uL3J4anMnO1xuaW1wb3J0IHsgRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuLyoqXG4gKiBQZXJmb3JtcyB0aGUgYWN0aW9uIG9uIGVycm9yLlxuICovXG5leHBvcnQgdHlwZSBEYnhBY3Rpb25FcnJvckhhbmRsZXJGdW5jdGlvbiA9IChlcnJvcj86IE1heWJlPFJlYWRhYmxlRXJyb3I+KSA9PiB2b2lkO1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0aGF0IGV4ZWN1dGVzIGEgZnVuY3Rpb24gb24gQWN0aW9uQ29udGV4dFN0b3JlIGVycm9yLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZGJ4QWN0aW9uRXJyb3JIYW5kbGVyXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4QWN0aW9uRXJyb3JIYW5kbGVyRGlyZWN0aXZlPFQsIE8+IHtcbiAgcmVhZG9ubHkgc291cmNlID0gaW5qZWN0KERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlPFQsIE8+LCB7IGhvc3Q6IHRydWUgfSk7XG5cbiAgcmVhZG9ubHkgZGJ4QWN0aW9uRXJyb3JIYW5kbGVyID0gaW5wdXQ8TWF5YmU8RGJ4QWN0aW9uRXJyb3JIYW5kbGVyRnVuY3Rpb24+PigpO1xuICByZWFkb25seSBlcnJvckZ1bmN0aW9uJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLmRieEFjdGlvbkVycm9ySGFuZGxlcikucGlwZShmaWx0ZXJNYXliZSgpLCBzaGFyZVJlcGxheSgxKSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY2xlYW5TdWJzY3JpcHRpb24oXG4gICAgICB0aGlzLmVycm9yRnVuY3Rpb24kXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIHN3aXRjaE1hcCgoZXJyb3JGdW5jdGlvbikgPT5cbiAgICAgICAgICAgIHRoaXMuc291cmNlLmVycm9yJC5waXBlKFxuICAgICAgICAgICAgICBmaWx0ZXJNYXliZSgpLFxuICAgICAgICAgICAgICBtYXAoKHgpID0+IFtlcnJvckZ1bmN0aW9uLCB4XSBhcyBjb25zdCksXG4gICAgICAgICAgICAgIHRhcCgoW2Vycm9yRm4sIGVycm9yXSkgPT4ge1xuICAgICAgICAgICAgICAgIGVycm9yRm4oZXJyb3IpO1xuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKClcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -1,19 +1,17 @@
|
|
|
1
1
|
import { Directive, effect, inject, input } from '@angular/core';
|
|
2
2
|
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
3
3
|
import { DbxActionHandlerInstance } from './action.handler.instance';
|
|
4
|
+
import { clean } from '../../../rxjs';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
/**
|
|
6
7
|
* Abstract directive that wraps and handles a DbxActionHandlerInstance lifecycle.
|
|
7
8
|
*/
|
|
8
9
|
export class AbstractDbxActionHandlerDirective {
|
|
9
10
|
source = inject((DbxActionContextStoreSourceInstance), { host: true });
|
|
10
|
-
_dbxActionHandlerInstance = new DbxActionHandlerInstance(this.source);
|
|
11
|
+
_dbxActionHandlerInstance = clean(new DbxActionHandlerInstance(this.source));
|
|
11
12
|
constructor() {
|
|
12
13
|
this._dbxActionHandlerInstance.init();
|
|
13
14
|
}
|
|
14
|
-
ngOnDestroy() {
|
|
15
|
-
this._dbxActionHandlerInstance.destroy();
|
|
16
|
-
}
|
|
17
15
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AbstractDbxActionHandlerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
18
16
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: AbstractDbxActionHandlerDirective, ngImport: i0 });
|
|
19
17
|
}
|
|
@@ -56,4 +54,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
56
54
|
standalone: true
|
|
57
55
|
}]
|
|
58
56
|
}] });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmhhbmRsZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWNvcmUvc3JjL2xpYi9hY3Rpb24vZGlyZWN0aXZlL3N0YXRlL2FjdGlvbi5oYW5kbGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRWhGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXJFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRXRDOztHQUVHO0FBRUgsTUFBTSxPQUFnQixpQ0FBaUM7SUFDNUMsTUFBTSxHQUE4QyxNQUFNLENBQUMsQ0FBQSxtQ0FBeUMsQ0FBQSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFFNUcseUJBQXlCLEdBQUcsS0FBSyxDQUFDLElBQUksd0JBQXdCLENBQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFFdEc7UUFDRSxJQUFJLENBQUMseUJBQXlCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEMsQ0FBQzt3R0FQbUIsaUNBQWlDOzRGQUFqQyxpQ0FBaUM7OzRGQUFqQyxpQ0FBaUM7a0JBRHRELFNBQVM7O0FBV1Y7O0dBRUc7QUFLSCxNQUFNLE9BQU8seUJBQW9ELFNBQVEsaUNBQXVDO0lBQ3JHLGVBQWUsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFvQixFQUFFLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxDQUFDLENBQUM7SUFFekUsc0JBQXNCLEdBQUcsTUFBTSxDQUFDLEdBQUcsRUFBRTtRQUN0RCxJQUFJLENBQUMseUJBQXlCLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFDNUUsQ0FBQyxDQUFDLENBQUM7d0dBTFEseUJBQXlCOzRGQUF6Qix5QkFBeUI7OzRGQUF6Qix5QkFBeUI7a0JBSnJDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOztBQVNEOztHQUVHO0FBS0gsTUFBTSxPQUFPLDhCQUF5RCxTQUFRLGlDQUF1QztJQUMxRyxZQUFZLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBbUQsRUFBRSxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsQ0FBQyxDQUFDO0lBQzFHLG1CQUFtQixHQUFHLE1BQU0sQ0FBQyxHQUFHLEVBQUU7UUFDbkQsSUFBSSxDQUFDLHlCQUF5QixDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztJQUN0RSxDQUFDLENBQUMsQ0FBQzt3R0FKUSw4QkFBOEI7NEZBQTlCLDhCQUE4Qjs7NEZBQTlCLDhCQUE4QjtrQkFKMUMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUseUJBQXlCO29CQUNuQyxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGVmZmVjdCwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlJztcbmltcG9ydCB7IEZhY3RvcnlXaXRoSW5wdXQsIEdldHRlck9yVmFsdWUsIHR5cGUgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IERieEFjdGlvbkhhbmRsZXJJbnN0YW5jZSB9IGZyb20gJy4vYWN0aW9uLmhhbmRsZXIuaW5zdGFuY2UnO1xuaW1wb3J0IHsgV29yayB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgY2xlYW4gfSBmcm9tICcuLi8uLi8uLi9yeGpzJztcblxuLyoqXG4gKiBBYnN0cmFjdCBkaXJlY3RpdmUgdGhhdCB3cmFwcyBhbmQgaGFuZGxlcyBhIERieEFjdGlvbkhhbmRsZXJJbnN0YW5jZSBsaWZlY3ljbGUuXG4gKi9cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0RGJ4QWN0aW9uSGFuZGxlckRpcmVjdGl2ZTxUID0gdW5rbm93biwgTyA9IHVua25vd24+IHtcbiAgcmVhZG9ubHkgc291cmNlOiBEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZTxULCBPPiA9IGluamVjdChEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZTxULCBPPiwgeyBob3N0OiB0cnVlIH0pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBfZGJ4QWN0aW9uSGFuZGxlckluc3RhbmNlID0gY2xlYW4obmV3IERieEFjdGlvbkhhbmRsZXJJbnN0YW5jZTxULCBPPih0aGlzLnNvdXJjZSkpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuX2RieEFjdGlvbkhhbmRsZXJJbnN0YW5jZS5pbml0KCk7XG4gIH1cbn1cblxuLyoqXG4gKiBEaXJlY3RpdmUgdGhhdCBwYXNzZXMgYSBXb3JrIGZ1bmN0aW9uIHRvIGhhbmRsZSBhIHZhbHVlUmVhZHkkIGV2ZW50IGZyb20gYW4gYWN0aW9uIGNvbnRleHQuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhBY3Rpb25IYW5kbGVyXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4QWN0aW9uSGFuZGxlckRpcmVjdGl2ZTxUID0gdW5rbm93biwgTyA9IHVua25vd24+IGV4dGVuZHMgQWJzdHJhY3REYnhBY3Rpb25IYW5kbGVyRGlyZWN0aXZlPFQsIE8+IHtcbiAgcmVhZG9ubHkgaGFuZGxlckZ1bmN0aW9uID0gaW5wdXQucmVxdWlyZWQ8TWF5YmU8V29yazxULCBPPj4+KHsgYWxpYXM6ICdkYnhBY3Rpb25IYW5kbGVyJyB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX2hhbmRsZXJGdW5jdGlvbkVmZmVjdCA9IGVmZmVjdCgoKSA9PiB7XG4gICAgdGhpcy5fZGJ4QWN0aW9uSGFuZGxlckluc3RhbmNlLnNldEhhbmRsZXJGdW5jdGlvbih0aGlzLmhhbmRsZXJGdW5jdGlvbigpKTtcbiAgfSk7XG59XG5cbi8qKlxuICogRGlyZWN0aXZlIHRoYXQgcGFzc2VzIGEgdmFsdWUgdG8gaGFuZGxlIGEgdmFsdWVSZWFkeSQgZXZlbnQgZnJvbSBhbiBhY3Rpb24gY29udGV4dC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEFjdGlvbkhhbmRsZXJWYWx1ZV0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERieEFjdGlvbkhhbmRsZXJWYWx1ZURpcmVjdGl2ZTxUID0gdW5rbm93biwgTyA9IHVua25vd24+IGV4dGVuZHMgQWJzdHJhY3REYnhBY3Rpb25IYW5kbGVyRGlyZWN0aXZlPFQsIE8+IHtcbiAgcmVhZG9ubHkgaGFuZGxlclZhbHVlID0gaW5wdXQucmVxdWlyZWQ8TWF5YmU8R2V0dGVyT3JWYWx1ZTxPPiB8IEZhY3RvcnlXaXRoSW5wdXQ8TywgVD4+Pih7IGFsaWFzOiAnZGJ4QWN0aW9uSGFuZGxlclZhbHVlJyB9KTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IF9oYW5kbGVyVmFsdWVFZmZlY3QgPSBlZmZlY3QoKCkgPT4ge1xuICAgIHRoaXMuX2RieEFjdGlvbkhhbmRsZXJJbnN0YW5jZS5zZXRIYW5kbGVyVmFsdWUodGhpcy5oYW5kbGVyVmFsdWUoKSk7XG4gIH0pO1xufVxuIl19
|
|
@@ -31,4 +31,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
31
31
|
standalone: true
|
|
32
32
|
}]
|
|
33
33
|
}] });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLnN1Y2Nlc3MuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWNvcmUvc3JjL2xpYi9hY3Rpb24vZGlyZWN0aXZlL3N0YXRlL2FjdGlvbi5zdWNjZXNzLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3QyxPQUFPLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDakUsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDaEYsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBRTNFOzs7O0dBSUc7QUFLSCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsbUJBQW1CO0lBQ2xELE1BQU0sR0FBRyxNQUFNLENBQUMsbUNBQW1DLENBQUMsQ0FBQztJQUU3RCxTQUFTLEdBQUcsS0FBSyxDQUFvQyxTQUFTLEVBQUUsRUFBRSxLQUFLLEVBQUUscUJBQXFCLEVBQUUsU0FBUyxFQUFFLG9DQUFvQyxFQUFFLENBQUMsQ0FBQztJQUVuSixLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQyxVQUFVLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtRQUNyQixJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osT0FBTyxZQUFZLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUNyRCxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25CLENBQUM7SUFDSCxDQUFDLENBQUMsRUFDRixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQzt3R0FkUyw0QkFBNEI7NEZBQTVCLDRCQUE0Qjs7NEZBQTVCLDRCQUE0QjtrQkFKeEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGluamVjdCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGVtaXREZWxheU9icyB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgdHlwZSBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgb2YsIGV4aGF1c3RNYXAsIHNoYXJlUmVwbGF5IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBYnN0cmFjdElmRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vdmlldy9pZi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlJztcbmltcG9ydCB7IHRyYW5zZm9ybUVtcHR5U3RyaW5nSW5wdXRUb1VuZGVmaW5lZCB9IGZyb20gJy4uLy4uLy4uL3V0aWwvaW5wdXQnO1xuXG4vKipcbiAqIFN0cnVjdHVyYWwgZGlyZWN0aXZlIHRoYXQgZGlzcGxheXMgdGhlIGNvbnRlbnQgd2hlbiB0aGUgc3RvcmUgaGFzIGEgc3VjY2VzcyB2YWx1ZS5cbiAqXG4gKiBDYW4gYmUgY29uZmlndXJlZCB0byBzaG93IGZvciBhIHRlbXBvcmFyeSBwZXJpb2QuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhBY3Rpb25IYXNTdWNjZXNzXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4QWN0aW9uSGFzU3VjY2Vzc0RpcmVjdGl2ZSBleHRlbmRzIEFic3RyYWN0SWZEaXJlY3RpdmUge1xuICBwcml2YXRlIHJlYWRvbmx5IF9zdG9yZSA9IGluamVjdChEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZSk7XG5cbiAgcmVhZG9ubHkgaGlkZUFmdGVyID0gaW5wdXQ8TWF5YmU8bnVtYmVyPiwgTWF5YmU8bnVtYmVyPiB8ICcnPih1bmRlZmluZWQsIHsgYWxpYXM6ICdkYnhBY3Rpb25IYXNTdWNjZXNzJywgdHJhbnNmb3JtOiB0cmFuc2Zvcm1FbXB0eVN0cmluZ0lucHV0VG9VbmRlZmluZWQgfSk7XG5cbiAgcmVhZG9ubHkgc2hvdyQgPSB0aGlzLl9zdG9yZS5pc1N1Y2Nlc3MkLnBpcGUoXG4gICAgZXhoYXVzdE1hcCgoc3VjY2VzcykgPT4ge1xuICAgICAgaWYgKHN1Y2Nlc3MpIHtcbiAgICAgICAgcmV0dXJuIGVtaXREZWxheU9icyh0cnVlLCBmYWxzZSwgdGhpcy5oaWRlQWZ0ZXIoKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gb2YoZmFsc2UpO1xuICAgICAgfVxuICAgIH0pLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG59XG4iXX0=
|
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
import { map, tap, shareReplay, switchMap } from 'rxjs';
|
|
2
2
|
import { filterMaybe } from '@dereekb/rxjs';
|
|
3
3
|
import { Directive, inject, input } from '@angular/core';
|
|
4
|
-
import {
|
|
4
|
+
import { cleanSubscription } from '../../../rxjs';
|
|
5
5
|
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
6
6
|
import { toObservable } from '@angular/core/rxjs-interop';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
/**
|
|
9
9
|
* Directive that executes a function on ActionContextStore Success.
|
|
10
10
|
*/
|
|
11
|
-
export class DbxActionSuccessHandlerDirective
|
|
11
|
+
export class DbxActionSuccessHandlerDirective {
|
|
12
12
|
source = inject((DbxActionContextStoreSourceInstance), { host: true });
|
|
13
13
|
dbxActionSuccessHandler = input();
|
|
14
14
|
successFunction$ = toObservable(this.dbxActionSuccessHandler).pipe(filterMaybe(), shareReplay(1));
|
|
15
|
-
|
|
16
|
-
this.
|
|
15
|
+
constructor() {
|
|
16
|
+
cleanSubscription(this.successFunction$
|
|
17
17
|
.pipe(switchMap((successFunction) => this.source.success$.pipe(map((x) => [successFunction, x]), tap(([successFn, result]) => {
|
|
18
18
|
successFn(result);
|
|
19
19
|
}))))
|
|
20
|
-
.subscribe();
|
|
20
|
+
.subscribe());
|
|
21
21
|
}
|
|
22
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionSuccessHandlerDirective, deps:
|
|
23
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionSuccessHandlerDirective, isStandalone: true, selector: "[dbxActionSuccessHandler]", inputs: { dbxActionSuccessHandler: { classPropertyName: "dbxActionSuccessHandler", publicName: "dbxActionSuccessHandler", isSignal: true, isRequired: false, transformFunction: null } },
|
|
22
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionSuccessHandlerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
23
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionSuccessHandlerDirective, isStandalone: true, selector: "[dbxActionSuccessHandler]", inputs: { dbxActionSuccessHandler: { classPropertyName: "dbxActionSuccessHandler", publicName: "dbxActionSuccessHandler", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 });
|
|
24
24
|
}
|
|
25
25
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionSuccessHandlerDirective, decorators: [{
|
|
26
26
|
type: Directive,
|
|
@@ -28,5 +28,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
28
28
|
selector: '[dbxActionSuccessHandler]',
|
|
29
29
|
standalone: true
|
|
30
30
|
}]
|
|
31
|
-
}] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
}], ctorParameters: () => [] });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLnN1Y2Nlc3MuaGFuZGxlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvc3RhdGUvYWN0aW9uLnN1Y2Nlc3MuaGFuZGxlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN4RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDaEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQU8xRDs7R0FFRztBQUtILE1BQU0sT0FBTyxnQ0FBZ0M7SUFDbEMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxDQUFBLG1DQUF5QyxDQUFBLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUUzRSx1QkFBdUIsR0FBRyxLQUFLLEVBQTZDLENBQUM7SUFDN0UsZ0JBQWdCLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUUzRztRQUNFLGlCQUFpQixDQUNmLElBQUksQ0FBQyxnQkFBZ0I7YUFDbEIsSUFBSSxDQUNILFNBQVMsQ0FBQyxDQUFDLGVBQWUsRUFBRSxFQUFFLENBQzVCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDdkIsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQTRDLENBQUMsRUFDM0UsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLEVBQUUsRUFBRTtZQUMxQixTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDcEIsQ0FBQyxDQUFDLENBQ0gsQ0FDRixDQUNGO2FBQ0EsU0FBUyxFQUFFLENBQ2YsQ0FBQztJQUNKLENBQUM7d0dBckJVLGdDQUFnQzs0RkFBaEMsZ0NBQWdDOzs0RkFBaEMsZ0NBQWdDO2tCQUo1QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1hcCwgdGFwLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXJNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0eXBlIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBjbGVhblN1YnNjcmlwdGlvbiB9IGZyb20gJy4uLy4uLy4uL3J4anMnO1xuaW1wb3J0IHsgRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuLyoqXG4gKiBQZXJmb3JtcyB0aGUgYWN0aW9uIG9uIHN1Y2Nlc3MuXG4gKi9cbmV4cG9ydCB0eXBlIERieEFjdGlvblN1Y2Nlc3NIYW5kbGVyRnVuY3Rpb248TyA9IHVua25vd24+ID0gKHZhbHVlOiBPKSA9PiB2b2lkO1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0aGF0IGV4ZWN1dGVzIGEgZnVuY3Rpb24gb24gQWN0aW9uQ29udGV4dFN0b3JlIFN1Y2Nlc3MuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhBY3Rpb25TdWNjZXNzSGFuZGxlcl0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERieEFjdGlvblN1Y2Nlc3NIYW5kbGVyRGlyZWN0aXZlPFQsIE8+IHtcbiAgcmVhZG9ubHkgc291cmNlID0gaW5qZWN0KERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlPFQsIE8+LCB7IGhvc3Q6IHRydWUgfSk7XG5cbiAgcmVhZG9ubHkgZGJ4QWN0aW9uU3VjY2Vzc0hhbmRsZXIgPSBpbnB1dDxNYXliZTxEYnhBY3Rpb25TdWNjZXNzSGFuZGxlckZ1bmN0aW9uPE8+Pj4oKTtcbiAgcmVhZG9ubHkgc3VjY2Vzc0Z1bmN0aW9uJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLmRieEFjdGlvblN1Y2Nlc3NIYW5kbGVyKS5waXBlKGZpbHRlck1heWJlKCksIHNoYXJlUmVwbGF5KDEpKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBjbGVhblN1YnNjcmlwdGlvbihcbiAgICAgIHRoaXMuc3VjY2Vzc0Z1bmN0aW9uJFxuICAgICAgICAucGlwZShcbiAgICAgICAgICBzd2l0Y2hNYXAoKHN1Y2Nlc3NGdW5jdGlvbikgPT5cbiAgICAgICAgICAgIHRoaXMuc291cmNlLnN1Y2Nlc3MkLnBpcGUoXG4gICAgICAgICAgICAgIG1hcCgoeCkgPT4gW3N1Y2Nlc3NGdW5jdGlvbiwgeF0gYXMgW0RieEFjdGlvblN1Y2Nlc3NIYW5kbGVyRnVuY3Rpb248Tz4sIE9dKSxcbiAgICAgICAgICAgICAgdGFwKChbc3VjY2Vzc0ZuLCByZXN1bHRdKSA9PiB7XG4gICAgICAgICAgICAgICAgc3VjY2Vzc0ZuKHJlc3VsdCk7XG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgKVxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -2,7 +2,7 @@ import { Directive, inject, input } from '@angular/core';
|
|
|
2
2
|
import { getValueFromGetter } from '@dereekb/util';
|
|
3
3
|
import { filterMaybe } from '@dereekb/rxjs';
|
|
4
4
|
import { BehaviorSubject, combineLatest, map, shareReplay, switchMap } from 'rxjs';
|
|
5
|
-
import {
|
|
5
|
+
import { cleanSubscription } from '../../../rxjs/subscription';
|
|
6
6
|
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
7
7
|
import { toObservable } from '@angular/core/rxjs-interop';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
@@ -15,31 +15,22 @@ import * as i0 from "@angular/core";
|
|
|
15
15
|
*
|
|
16
16
|
* Use a getter if null/undefined values should be passed to the action.
|
|
17
17
|
*/
|
|
18
|
-
export class DbxActionValueDirective
|
|
18
|
+
export class DbxActionValueDirective {
|
|
19
19
|
valueOrFunction = input('', { alias: 'dbxActionValue' });
|
|
20
20
|
source = inject((DbxActionContextStoreSourceInstance), { host: true });
|
|
21
21
|
_valueOrFunctionOverride = new BehaviorSubject(undefined);
|
|
22
22
|
valueOrFunction$ = combineLatest([this._valueOrFunctionOverride, toObservable(this.valueOrFunction)]).pipe(map(([x, y]) => x ?? y), filterMaybe(), shareReplay(1));
|
|
23
23
|
constructor() {
|
|
24
|
-
|
|
25
|
-
}
|
|
26
|
-
ngOnInit() {
|
|
27
|
-
this.sub = this.valueOrFunction$.pipe(switchMap((valueOrFunction) => this.source.triggered$.pipe(map(() => valueOrFunction)))).subscribe((valueOrFunction) => {
|
|
24
|
+
cleanSubscription(this.valueOrFunction$.pipe(switchMap((valueOrFunction) => this.source.triggered$.pipe(map(() => valueOrFunction)))).subscribe((valueOrFunction) => {
|
|
28
25
|
const value = getValueFromGetter(valueOrFunction);
|
|
29
26
|
this.source.readyValue(value);
|
|
30
|
-
});
|
|
27
|
+
}));
|
|
31
28
|
}
|
|
32
29
|
setValueOrFunction(value) {
|
|
33
30
|
this._valueOrFunctionOverride.next(value);
|
|
34
31
|
}
|
|
35
|
-
ngOnDestroy() {
|
|
36
|
-
this.source.lockSet.onNextUnlock(() => {
|
|
37
|
-
super.ngOnDestroy();
|
|
38
|
-
this._valueOrFunctionOverride.complete();
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
32
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionValueDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
42
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionValueDirective, isStandalone: true, selector: "dbxActionValue,[dbxActionValue]", inputs: { valueOrFunction: { classPropertyName: "valueOrFunction", publicName: "dbxActionValue", isSignal: true, isRequired: false, transformFunction: null } },
|
|
33
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionValueDirective, isStandalone: true, selector: "dbxActionValue,[dbxActionValue]", inputs: { valueOrFunction: { classPropertyName: "valueOrFunction", publicName: "dbxActionValue", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 });
|
|
43
34
|
}
|
|
44
35
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionValueDirective, decorators: [{
|
|
45
36
|
type: Directive,
|
|
@@ -48,4 +39,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
48
39
|
standalone: true
|
|
49
40
|
}]
|
|
50
41
|
}], ctorParameters: () => [] });
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLnZhbHVlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1jb3JlL3NyYy9saWIvYWN0aW9uL2RpcmVjdGl2ZS9zdGF0ZS9hY3Rpb24udmFsdWUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQXdCLE1BQU0sZUFBZSxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFjLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDaEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQUUxRDs7Ozs7Ozs7R0FRRztBQUtILE1BQU0sT0FBTyx1QkFBdUI7SUFDekIsZUFBZSxHQUFHLEtBQUssQ0FBK0IsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixFQUFFLENBQUMsQ0FBQztJQUV2RixNQUFNLEdBQUcsTUFBTSxDQUFDLENBQUEsbUNBQXlDLENBQUEsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBRW5FLHdCQUF3QixHQUFHLElBQUksZUFBZSxDQUEwQixTQUFTLENBQUMsQ0FBQztJQUUzRixnQkFBZ0IsR0FBaUMsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLHdCQUF3QixFQUFFLFlBQVksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDL0ksR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSyxDQUE2QixDQUFDLEVBQ3BELFdBQVcsRUFBRSxFQUNiLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO0lBRUY7UUFDRSxpQkFBaUIsQ0FDZixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLGVBQWUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxlQUFlLEVBQUUsRUFBRTtZQUNoSixNQUFNLEtBQUssR0FBTSxrQkFBa0IsQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUNyRCxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoQyxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELGtCQUFrQixDQUFDLEtBQThCO1FBQy9DLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUMsQ0FBQzt3R0F4QlUsdUJBQXVCOzRGQUF2Qix1QkFBdUI7OzRGQUF2Qix1QkFBdUI7a0JBSm5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlDQUFpQztvQkFDM0MsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBnZXRWYWx1ZUZyb21HZXR0ZXIsIE1heWJlLCBHZXR0ZXJPclZhbHVlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBmaWx0ZXJNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAsIE9ic2VydmFibGUsIHNoYXJlUmVwbGF5LCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNsZWFuU3Vic2NyaXB0aW9uIH0gZnJvbSAnLi4vLi4vLi4vcnhqcy9zdWJzY3JpcHRpb24nO1xuaW1wb3J0IHsgRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuLyoqXG4gKiBEaXJlY3RpdmUgdGhhdCBwcm92aWRlcyBhIGRlZmF1bHQgdmFsdWUgd2hlbiB0cmlnZ2VyZWQuXG4gKlxuICogTm8gdmFsdWUgaXMgcmVxdWlyZWQsIGFsbG93aW5nIHRoZSBkaXJlY3RpdmUgdG8gYXV0b21hdGljYWxseSBjYWxsIHJlYWR5VmFsdWUuXG4gKlxuICogVGhlIHZhbHVlT3JGdW5jdGlvbiB3aWxsIGZpbHRlciBvbiBudWxsL3VuZGVmaW5lZCBpbnB1dCBhbmQgd2FpdCB1bnRpbCB0aGUgaW5wdXQgdmFsdWUgaXMgbm9uLW51bGwuXG4gKlxuICogVXNlIGEgZ2V0dGVyIGlmIG51bGwvdW5kZWZpbmVkIHZhbHVlcyBzaG91bGQgYmUgcGFzc2VkIHRvIHRoZSBhY3Rpb24uXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ2RieEFjdGlvblZhbHVlLFtkYnhBY3Rpb25WYWx1ZV0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERieEFjdGlvblZhbHVlRGlyZWN0aXZlPFQsIE8+IHtcbiAgcmVhZG9ubHkgdmFsdWVPckZ1bmN0aW9uID0gaW5wdXQ8TWF5YmU8R2V0dGVyT3JWYWx1ZTxUPiB8ICcnPj4oJycsIHsgYWxpYXM6ICdkYnhBY3Rpb25WYWx1ZScgfSk7XG5cbiAgcmVhZG9ubHkgc291cmNlID0gaW5qZWN0KERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlPFQsIE8+LCB7IGhvc3Q6IHRydWUgfSk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfdmFsdWVPckZ1bmN0aW9uT3ZlcnJpZGUgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1heWJlPEdldHRlck9yVmFsdWU8VD4+Pih1bmRlZmluZWQpO1xuXG4gIHJlYWRvbmx5IHZhbHVlT3JGdW5jdGlvbiQ6IE9ic2VydmFibGU8R2V0dGVyT3JWYWx1ZTxUPj4gPSBjb21iaW5lTGF0ZXN0KFt0aGlzLl92YWx1ZU9yRnVuY3Rpb25PdmVycmlkZSwgdG9PYnNlcnZhYmxlKHRoaXMudmFsdWVPckZ1bmN0aW9uKV0pLnBpcGUoXG4gICAgbWFwKChbeCwgeV0pID0+IHggPz8gKHkgYXMgTWF5YmU8R2V0dGVyT3JWYWx1ZTxUPj4pKSxcbiAgICBmaWx0ZXJNYXliZSgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY2xlYW5TdWJzY3JpcHRpb24oXG4gICAgICB0aGlzLnZhbHVlT3JGdW5jdGlvbiQucGlwZShzd2l0Y2hNYXAoKHZhbHVlT3JGdW5jdGlvbikgPT4gdGhpcy5zb3VyY2UudHJpZ2dlcmVkJC5waXBlKG1hcCgoKSA9PiB2YWx1ZU9yRnVuY3Rpb24pKSkpLnN1YnNjcmliZSgodmFsdWVPckZ1bmN0aW9uKSA9PiB7XG4gICAgICAgIGNvbnN0IHZhbHVlOiBUID0gZ2V0VmFsdWVGcm9tR2V0dGVyKHZhbHVlT3JGdW5jdGlvbik7XG4gICAgICAgIHRoaXMuc291cmNlLnJlYWR5VmFsdWUodmFsdWUpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgc2V0VmFsdWVPckZ1bmN0aW9uKHZhbHVlOiBNYXliZTxHZXR0ZXJPclZhbHVlPFQ+Pikge1xuICAgIHRoaXMuX3ZhbHVlT3JGdW5jdGlvbk92ZXJyaWRlLm5leHQodmFsdWUpO1xuICB9XG59XG4iXX0=
|