@dereekb/dbx-core 12.6.21 → 13.0.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/fesm2022/dereekb-dbx-core.mjs +920 -1176
- package/fesm2022/dereekb-dbx-core.mjs.map +1 -1
- package/package.json +16 -18
- package/types/dereekb-dbx-core.d.ts +3633 -0
- package/esm2022/dereekb-dbx-core.mjs +0 -5
- package/esm2022/index.mjs +0 -2
- package/esm2022/lib/action/action.handler.mjs +0 -22
- package/esm2022/lib/action/action.holder.mjs +0 -76
- package/esm2022/lib/action/action.machine.mjs +0 -72
- package/esm2022/lib/action/action.mjs +0 -95
- package/esm2022/lib/action/action.module.mjs +0 -85
- package/esm2022/lib/action/action.reference.mjs +0 -7
- package/esm2022/lib/action/action.store.mjs +0 -286
- package/esm2022/lib/action/action.store.source.mjs +0 -162
- package/esm2022/lib/action/action.store.source.provide.mjs +0 -41
- package/esm2022/lib/action/directive/auto/action.automodify.directive.mjs +0 -36
- package/esm2022/lib/action/directive/auto/action.autotrigger.directive.mjs +0 -113
- package/esm2022/lib/action/directive/auto/index.mjs +0 -3
- package/esm2022/lib/action/directive/context/action.directive.mjs +0 -30
- package/esm2022/lib/action/directive/context/action.source.directive.mjs +0 -25
- package/esm2022/lib/action/directive/context/index.mjs +0 -3
- package/esm2022/lib/action/directive/debug/action.logger.directive.mjs +0 -25
- package/esm2022/lib/action/directive/debug/index.mjs +0 -2
- package/esm2022/lib/action/directive/index.mjs +0 -6
- package/esm2022/lib/action/directive/map/action.map.directive.mjs +0 -36
- package/esm2022/lib/action/directive/map/action.map.key.directive.mjs +0 -27
- package/esm2022/lib/action/directive/map/action.map.mjs +0 -59
- package/esm2022/lib/action/directive/map/action.map.source.directive.mjs +0 -44
- package/esm2022/lib/action/directive/map/action.map.utility.mjs +0 -37
- package/esm2022/lib/action/directive/map/action.map.working.disable.directive.mjs +0 -35
- package/esm2022/lib/action/directive/map/index.mjs +0 -7
- package/esm2022/lib/action/directive/state/action.disabled.directive.mjs +0 -34
- package/esm2022/lib/action/directive/state/action.disableonsuccess.directive.mjs +0 -35
- package/esm2022/lib/action/directive/state/action.enforce.modified.directive.mjs +0 -37
- package/esm2022/lib/action/directive/state/action.error.handler.directive.mjs +0 -32
- package/esm2022/lib/action/directive/state/action.handler.directive.mjs +0 -59
- package/esm2022/lib/action/directive/state/action.handler.instance.mjs +0 -61
- package/esm2022/lib/action/directive/state/action.idle.directive.mjs +0 -34
- package/esm2022/lib/action/directive/state/action.presuccess.directive.mjs +0 -34
- package/esm2022/lib/action/directive/state/action.success.directive.mjs +0 -34
- package/esm2022/lib/action/directive/state/action.success.handler.directive.mjs +0 -32
- package/esm2022/lib/action/directive/state/action.triggered.directive.mjs +0 -34
- package/esm2022/lib/action/directive/state/action.value.directive.mjs +0 -51
- package/esm2022/lib/action/directive/state/action.value.stream.directive.mjs +0 -60
- package/esm2022/lib/action/directive/state/action.value.trigger.directive.mjs +0 -76
- package/esm2022/lib/action/directive/state/action.value.trigger.instance.mjs +0 -59
- package/esm2022/lib/action/directive/state/action.working.directive.mjs +0 -41
- package/esm2022/lib/action/directive/state/index.mjs +0 -17
- package/esm2022/lib/action/index.mjs +0 -11
- package/esm2022/lib/auth/auth.module.mjs +0 -25
- package/esm2022/lib/auth/auth.providers.mjs +0 -16
- package/esm2022/lib/auth/auth.role.any.directive.mjs +0 -24
- package/esm2022/lib/auth/auth.role.has.directive.mjs +0 -24
- package/esm2022/lib/auth/auth.role.not.directive.mjs +0 -24
- package/esm2022/lib/auth/auth.state.providers.mjs +0 -14
- package/esm2022/lib/auth/auth.state.service.mjs +0 -20
- package/esm2022/lib/auth/auth.user.mjs +0 -11
- package/esm2022/lib/auth/index.mjs +0 -12
- package/esm2022/lib/auth/router/auth.router.mjs +0 -6
- package/esm2022/lib/auth/router/auth.router.providers.mjs +0 -19
- package/esm2022/lib/auth/router/auth.router.service.mjs +0 -73
- package/esm2022/lib/auth/router/index.mjs +0 -6
- package/esm2022/lib/auth/router/provider/uirouter/auth.hook.mjs +0 -23
- package/esm2022/lib/auth/router/provider/uirouter/hook.mjs +0 -71
- package/esm2022/lib/auth/router/provider/uirouter/index.mjs +0 -6
- package/esm2022/lib/auth/router/provider/uirouter/redirect.mjs +0 -29
- package/esm2022/lib/auth/router/provider/uirouter/role.hook.mjs +0 -58
- package/esm2022/lib/auth/router/provider/uirouter/state.hook.mjs +0 -53
- package/esm2022/lib/auth/router/state/auth.router.state.providers.mjs +0 -23
- package/esm2022/lib/auth/router/state/effect/auth.router.state.effect.mjs +0 -37
- package/esm2022/lib/auth/router/state/effect/index.mjs +0 -2
- package/esm2022/lib/auth/router/state/index.mjs +0 -3
- package/esm2022/lib/auth/service/auth.service.mjs +0 -6
- package/esm2022/lib/auth/service/auth.service.rxjs.mjs +0 -30
- package/esm2022/lib/auth/service/index.mjs +0 -3
- package/esm2022/lib/auth/state/action/auth.action.mjs +0 -14
- package/esm2022/lib/auth/state/action/index.mjs +0 -12
- package/esm2022/lib/auth/state/action/user.action.mjs +0 -18
- package/esm2022/lib/auth/state/effect/auth.effect.mjs +0 -33
- package/esm2022/lib/auth/state/index.mjs +0 -13
- package/esm2022/lib/auth/state/reducer/index.mjs +0 -23
- package/esm2022/lib/auth/state/reducer/user.reducer.mjs +0 -12
- package/esm2022/lib/auth/state/state.mjs +0 -2
- package/esm2022/lib/button/action/action.button.directive.mjs +0 -35
- package/esm2022/lib/button/action/action.button.trigger.directive.mjs +0 -30
- package/esm2022/lib/button/action/index.mjs +0 -3
- package/esm2022/lib/button/button.directive.mjs +0 -120
- package/esm2022/lib/button/button.loading.directive.mjs +0 -36
- package/esm2022/lib/button/button.mjs +0 -21
- package/esm2022/lib/button/button.module.mjs +0 -28
- package/esm2022/lib/button/index.mjs +0 -7
- package/esm2022/lib/button/router/button.segue.directive.mjs +0 -30
- package/esm2022/lib/button/router/index.mjs +0 -2
- package/esm2022/lib/context/context.directive.mjs +0 -26
- package/esm2022/lib/context/context.mjs +0 -25
- package/esm2022/lib/context/context.module.mjs +0 -19
- package/esm2022/lib/context/context.providers.mjs +0 -12
- package/esm2022/lib/context/context.service.mjs +0 -26
- package/esm2022/lib/context/index.mjs +0 -7
- package/esm2022/lib/context/state/action/data.action.mjs +0 -10
- package/esm2022/lib/context/state/action/index.mjs +0 -7
- package/esm2022/lib/context/state/effect/index.mjs +0 -33
- package/esm2022/lib/context/state/index.mjs +0 -13
- package/esm2022/lib/context/state/reducer/data.reducer.mjs +0 -16
- package/esm2022/lib/context/state/reducer/index.mjs +0 -25
- package/esm2022/lib/context/state/state.mjs +0 -2
- package/esm2022/lib/environment/environment.mjs +0 -6
- package/esm2022/lib/environment/environment.providers.mjs +0 -19
- package/esm2022/lib/environment/environment.service.mjs +0 -30
- package/esm2022/lib/environment/index.mjs +0 -4
- package/esm2022/lib/filter/filter.abstract.connector.directive.mjs +0 -23
- package/esm2022/lib/filter/filter.abstract.source.directive.mjs +0 -69
- package/esm2022/lib/filter/filter.connect.source.directive.mjs +0 -23
- package/esm2022/lib/filter/filter.connector.directive.mjs +0 -20
- package/esm2022/lib/filter/filter.content.mjs +0 -29
- package/esm2022/lib/filter/filter.map.connector.directive.mjs +0 -33
- package/esm2022/lib/filter/filter.map.directive.mjs +0 -24
- package/esm2022/lib/filter/filter.map.instance.directive.mjs +0 -25
- package/esm2022/lib/filter/filter.map.source.directive.mjs +0 -38
- package/esm2022/lib/filter/filter.module.mjs +0 -22
- package/esm2022/lib/filter/filter.preset.mjs +0 -8
- package/esm2022/lib/filter/filter.source.directive.mjs +0 -19
- package/esm2022/lib/filter/index.mjs +0 -13
- package/esm2022/lib/index.mjs +0 -15
- package/esm2022/lib/injection/index.mjs +0 -14
- package/esm2022/lib/injection/injection.array.component.mjs +0 -31
- package/esm2022/lib/injection/injection.array.mjs +0 -2
- package/esm2022/lib/injection/injection.component.mjs +0 -32
- package/esm2022/lib/injection/injection.component.module.mjs +0 -26
- package/esm2022/lib/injection/injection.context.directive.mjs +0 -130
- package/esm2022/lib/injection/injection.context.forward.directive.mjs +0 -25
- package/esm2022/lib/injection/injection.context.mjs +0 -20
- package/esm2022/lib/injection/injection.directive.mjs +0 -30
- package/esm2022/lib/injection/injection.instance.mjs +0 -121
- package/esm2022/lib/injection/injection.mjs +0 -16
- package/esm2022/lib/injection/injection.rxjs.mjs +0 -24
- package/esm2022/lib/injection/injection.util.mjs +0 -11
- package/esm2022/lib/injection/injector.mjs +0 -13
- package/esm2022/lib/ngrx/index.mjs +0 -2
- package/esm2022/lib/ngrx/store.lockset.mjs +0 -66
- package/esm2022/lib/pipe/async/asobservable.pipe.mjs +0 -21
- package/esm2022/lib/pipe/async/async.pipe.module.mjs +0 -20
- package/esm2022/lib/pipe/async/index.mjs +0 -3
- package/esm2022/lib/pipe/date/date.pipe.module.mjs +0 -108
- package/esm2022/lib/pipe/date/datedayrange.pipe.mjs +0 -24
- package/esm2022/lib/pipe/date/datedaytimerange.pipe.mjs +0 -24
- package/esm2022/lib/pipe/date/datedistance.pipe.mjs +0 -27
- package/esm2022/lib/pipe/date/dateformatdistance.pipe.mjs +0 -36
- package/esm2022/lib/pipe/date/datefromtoformat.pipe.mjs +0 -34
- package/esm2022/lib/pipe/date/daterangedistance.pipe.mjs +0 -24
- package/esm2022/lib/pipe/date/datetimerange.pipe.mjs +0 -24
- package/esm2022/lib/pipe/date/datetimerangeonly.pipe.mjs +0 -24
- package/esm2022/lib/pipe/date/datetimerangeonlydistance.pipe.mjs +0 -24
- package/esm2022/lib/pipe/date/index.mjs +0 -18
- package/esm2022/lib/pipe/date/minutesstring.pipe.mjs +0 -36
- package/esm2022/lib/pipe/date/systemdatetotargetdate.pipe.mjs +0 -27
- package/esm2022/lib/pipe/date/targetdatetosystemdate.pipe.mjs +0 -27
- package/esm2022/lib/pipe/date/timedistance.pipe.mjs +0 -57
- package/esm2022/lib/pipe/date/timezoneabbreviation.pipe.mjs +0 -27
- package/esm2022/lib/pipe/date/tojsdate.pipe.mjs +0 -30
- package/esm2022/lib/pipe/date/tominutes.pipe.mjs +0 -21
- package/esm2022/lib/pipe/index.mjs +0 -6
- package/esm2022/lib/pipe/misc/index.mjs +0 -3
- package/esm2022/lib/pipe/misc/misc.pipe.module.mjs +0 -21
- package/esm2022/lib/pipe/misc/prettyjson.pipe.mjs +0 -30
- package/esm2022/lib/pipe/pipe.module.mjs +0 -25
- package/esm2022/lib/pipe/value/cuttext.pipe.mjs +0 -22
- package/esm2022/lib/pipe/value/dollar.pipe.mjs +0 -24
- package/esm2022/lib/pipe/value/getvalue.pipe.mjs +0 -40
- package/esm2022/lib/pipe/value/index.mjs +0 -5
- package/esm2022/lib/pipe/value/value.pipe.module.mjs +0 -27
- package/esm2022/lib/router/anchor/anchor.directive.mjs +0 -63
- package/esm2022/lib/router/anchor/anchor.mjs +0 -52
- package/esm2022/lib/router/anchor/clickable.mjs +0 -18
- package/esm2022/lib/router/anchor/index.mjs +0 -5
- package/esm2022/lib/router/anchor/mousable.mjs +0 -2
- package/esm2022/lib/router/auth/hook/id.hook.mjs +0 -54
- package/esm2022/lib/router/auth/hook/index.mjs +0 -3
- package/esm2022/lib/router/auth/hook/uid.hook.mjs +0 -19
- package/esm2022/lib/router/auth/index.mjs +0 -2
- package/esm2022/lib/router/index.mjs +0 -6
- package/esm2022/lib/router/model/id.param.redirect.mjs +0 -73
- package/esm2022/lib/router/model/index.mjs +0 -7
- package/esm2022/lib/router/model/model.module.mjs +0 -26
- package/esm2022/lib/router/model/model.router.id.directive.mjs +0 -62
- package/esm2022/lib/router/model/model.router.key.directive.mjs +0 -63
- package/esm2022/lib/router/model/model.router.mjs +0 -38
- package/esm2022/lib/router/model/model.router.uid.directive.mjs +0 -25
- package/esm2022/lib/router/router/index.mjs +0 -5
- package/esm2022/lib/router/router/provider/angular/angular.router.service.mjs +0 -78
- package/esm2022/lib/router/router/provider/angular/angular.router.service.module.mjs +0 -31
- package/esm2022/lib/router/router/provider/angular/index.mjs +0 -3
- package/esm2022/lib/router/router/provider/index.mjs +0 -3
- package/esm2022/lib/router/router/provider/uirouter/index.mjs +0 -4
- package/esm2022/lib/router/router/provider/uirouter/uirouter.router.service.mjs +0 -95
- package/esm2022/lib/router/router/provider/uirouter/uirouter.router.service.module.mjs +0 -34
- package/esm2022/lib/router/router/provider/uirouter/uirouter.router.service.providers.mjs +0 -24
- package/esm2022/lib/router/router/service/index.mjs +0 -6
- package/esm2022/lib/router/router/service/router.go.mjs +0 -14
- package/esm2022/lib/router/router/service/router.service.mjs +0 -7
- package/esm2022/lib/router/router/service/router.service.rxjs.mjs +0 -39
- package/esm2022/lib/router/router/service/router.service.util.mjs +0 -14
- package/esm2022/lib/router/router/service/router.transition.service.mjs +0 -6
- package/esm2022/lib/router/router/transition/index.mjs +0 -5
- package/esm2022/lib/router/router/transition/transition.directive.mjs +0 -19
- package/esm2022/lib/router/router/transition/transition.mjs +0 -12
- package/esm2022/lib/router/router/transition/transition.rxjs.mjs +0 -55
- package/esm2022/lib/router/router/transition/transition.watcher.directive.mjs +0 -31
- package/esm2022/lib/router/router/util/index.mjs +0 -3
- package/esm2022/lib/router/router/util/route.default.mjs +0 -63
- package/esm2022/lib/router/router/util/route.reader.mjs +0 -47
- package/esm2022/lib/router/segue.mjs +0 -35
- package/esm2022/lib/storage/index.mjs +0 -9
- package/esm2022/lib/storage/storage.accessor.mjs +0 -16
- package/esm2022/lib/storage/storage.accessor.simple.factory.mjs +0 -26
- package/esm2022/lib/storage/storage.accessor.simple.mjs +0 -172
- package/esm2022/lib/storage/storage.accessor.string.mjs +0 -50
- package/esm2022/lib/storage/storage.di.mjs +0 -4
- package/esm2022/lib/storage/storage.object.localstorage.mjs +0 -47
- package/esm2022/lib/storage/storage.object.memory.mjs +0 -17
- package/esm2022/lib/storage/storage.providers.mjs +0 -41
- package/esm2022/lib/subscription/index.mjs +0 -2
- package/esm2022/lib/subscription/subscription.directive.mjs +0 -38
- package/esm2022/lib/util/index.mjs +0 -3
- package/esm2022/lib/util/input.mjs +0 -7
- package/esm2022/lib/util/view.mjs +0 -81
- package/esm2022/lib/view/if.directive.mjs +0 -27
- package/esm2022/lib/view/index.mjs +0 -2
- package/index.d.ts +0 -1
- package/lib/action/action.d.ts +0 -80
- package/lib/action/action.handler.d.ts +0 -15
- package/lib/action/action.holder.d.ts +0 -38
- package/lib/action/action.machine.d.ts +0 -50
- package/lib/action/action.module.d.ts +0 -30
- package/lib/action/action.reference.d.ts +0 -11
- package/lib/action/action.store.d.ts +0 -208
- package/lib/action/action.store.source.d.ts +0 -77
- package/lib/action/action.store.source.provide.d.ts +0 -10
- package/lib/action/directive/auto/action.automodify.directive.d.ts +0 -13
- package/lib/action/directive/auto/action.autotrigger.directive.d.ts +0 -38
- package/lib/action/directive/auto/index.d.ts +0 -2
- package/lib/action/directive/context/action.directive.d.ts +0 -12
- package/lib/action/directive/context/action.source.directive.d.ts +0 -12
- package/lib/action/directive/context/index.d.ts +0 -2
- package/lib/action/directive/debug/action.logger.directive.d.ts +0 -13
- package/lib/action/directive/debug/index.d.ts +0 -1
- package/lib/action/directive/index.d.ts +0 -5
- package/lib/action/directive/map/action.map.d.ts +0 -43
- package/lib/action/directive/map/action.map.directive.d.ts +0 -14
- package/lib/action/directive/map/action.map.key.directive.d.ts +0 -14
- package/lib/action/directive/map/action.map.source.directive.d.ts +0 -19
- package/lib/action/directive/map/action.map.utility.d.ts +0 -48
- package/lib/action/directive/map/action.map.working.disable.directive.d.ts +0 -19
- package/lib/action/directive/map/index.d.ts +0 -6
- package/lib/action/directive/state/action.disabled.directive.d.ts +0 -18
- package/lib/action/directive/state/action.disableonsuccess.directive.d.ts +0 -18
- package/lib/action/directive/state/action.enforce.modified.directive.d.ts +0 -18
- package/lib/action/directive/state/action.error.handler.directive.d.ts +0 -20
- package/lib/action/directive/state/action.handler.directive.d.ts +0 -35
- package/lib/action/directive/state/action.handler.instance.d.ts +0 -22
- package/lib/action/directive/state/action.idle.directive.d.ts +0 -15
- package/lib/action/directive/state/action.presuccess.directive.d.ts +0 -15
- package/lib/action/directive/state/action.success.directive.d.ts +0 -16
- package/lib/action/directive/state/action.success.handler.directive.d.ts +0 -20
- package/lib/action/directive/state/action.triggered.directive.d.ts +0 -15
- package/lib/action/directive/state/action.value.directive.d.ts +0 -27
- package/lib/action/directive/state/action.value.stream.directive.d.ts +0 -23
- package/lib/action/directive/state/action.value.trigger.directive.d.ts +0 -39
- package/lib/action/directive/state/action.value.trigger.instance.d.ts +0 -45
- package/lib/action/directive/state/action.working.directive.d.ts +0 -17
- package/lib/action/directive/state/index.d.ts +0 -16
- package/lib/action/index.d.ts +0 -10
- package/lib/auth/auth.module.d.ts +0 -16
- package/lib/auth/auth.providers.d.ts +0 -12
- package/lib/auth/auth.role.any.directive.d.ts +0 -15
- package/lib/auth/auth.role.has.directive.d.ts +0 -15
- package/lib/auth/auth.role.not.directive.d.ts +0 -15
- package/lib/auth/auth.state.providers.d.ts +0 -7
- package/lib/auth/auth.state.service.d.ts +0 -11
- package/lib/auth/auth.user.d.ts +0 -28
- package/lib/auth/index.d.ts +0 -11
- package/lib/auth/router/auth.router.d.ts +0 -10
- package/lib/auth/router/auth.router.providers.d.ts +0 -18
- package/lib/auth/router/auth.router.service.d.ts +0 -46
- package/lib/auth/router/index.d.ts +0 -5
- package/lib/auth/router/provider/uirouter/auth.hook.d.ts +0 -18
- package/lib/auth/router/provider/uirouter/hook.d.ts +0 -51
- package/lib/auth/router/provider/uirouter/index.d.ts +0 -5
- package/lib/auth/router/provider/uirouter/redirect.d.ts +0 -9
- package/lib/auth/router/provider/uirouter/role.hook.d.ts +0 -44
- package/lib/auth/router/provider/uirouter/state.hook.d.ts +0 -31
- package/lib/auth/router/state/auth.router.state.providers.d.ts +0 -19
- package/lib/auth/router/state/effect/auth.router.state.effect.d.ts +0 -28
- package/lib/auth/router/state/effect/index.d.ts +0 -1
- package/lib/auth/router/state/index.d.ts +0 -2
- package/lib/auth/service/auth.service.d.ts +0 -46
- package/lib/auth/service/auth.service.rxjs.d.ts +0 -19
- package/lib/auth/service/index.d.ts +0 -2
- package/lib/auth/state/action/auth.action.d.ts +0 -12
- package/lib/auth/state/action/index.d.ts +0 -11
- package/lib/auth/state/action/user.action.d.ts +0 -34
- package/lib/auth/state/effect/auth.effect.d.ts +0 -28
- package/lib/auth/state/index.d.ts +0 -12
- package/lib/auth/state/reducer/index.d.ts +0 -29
- package/lib/auth/state/reducer/user.reducer.d.ts +0 -11
- package/lib/auth/state/state.d.ts +0 -5
- package/lib/button/action/action.button.directive.d.ts +0 -14
- package/lib/button/action/action.button.trigger.directive.d.ts +0 -16
- package/lib/button/action/index.d.ts +0 -2
- package/lib/button/button.d.ts +0 -113
- package/lib/button/button.directive.d.ts +0 -62
- package/lib/button/button.loading.directive.d.ts +0 -18
- package/lib/button/button.module.d.ts +0 -19
- package/lib/button/index.d.ts +0 -6
- package/lib/button/router/button.segue.directive.d.ts +0 -14
- package/lib/button/router/index.d.ts +0 -1
- package/lib/context/context.d.ts +0 -42
- package/lib/context/context.directive.d.ts +0 -13
- package/lib/context/context.module.d.ts +0 -10
- package/lib/context/context.providers.d.ts +0 -7
- package/lib/context/context.service.d.ts +0 -14
- package/lib/context/index.d.ts +0 -6
- package/lib/context/state/action/data.action.d.ts +0 -13
- package/lib/context/state/action/index.d.ts +0 -6
- package/lib/context/state/effect/index.d.ts +0 -24
- package/lib/context/state/index.d.ts +0 -12
- package/lib/context/state/reducer/data.reducer.d.ts +0 -13
- package/lib/context/state/reducer/index.d.ts +0 -34
- package/lib/context/state/state.d.ts +0 -9
- package/lib/environment/environment.d.ts +0 -21
- package/lib/environment/environment.providers.d.ts +0 -8
- package/lib/environment/environment.service.d.ts +0 -17
- package/lib/environment/index.d.ts +0 -3
- package/lib/filter/filter.abstract.connector.directive.d.ts +0 -15
- package/lib/filter/filter.abstract.source.directive.d.ts +0 -37
- package/lib/filter/filter.connect.source.directive.d.ts +0 -13
- package/lib/filter/filter.connector.directive.d.ts +0 -9
- package/lib/filter/filter.content.d.ts +0 -10
- package/lib/filter/filter.map.connector.directive.d.ts +0 -14
- package/lib/filter/filter.map.directive.d.ts +0 -12
- package/lib/filter/filter.map.instance.directive.d.ts +0 -16
- package/lib/filter/filter.map.source.directive.d.ts +0 -23
- package/lib/filter/filter.module.d.ts +0 -12
- package/lib/filter/filter.preset.d.ts +0 -29
- package/lib/filter/filter.source.directive.d.ts +0 -9
- package/lib/filter/index.d.ts +0 -12
- package/lib/index.d.ts +0 -14
- package/lib/injection/index.d.ts +0 -13
- package/lib/injection/injection.array.component.d.ts +0 -11
- package/lib/injection/injection.array.d.ts +0 -12
- package/lib/injection/injection.component.d.ts +0 -19
- package/lib/injection/injection.component.module.d.ts +0 -16
- package/lib/injection/injection.context.d.ts +0 -39
- package/lib/injection/injection.context.directive.d.ts +0 -26
- package/lib/injection/injection.context.forward.directive.d.ts +0 -15
- package/lib/injection/injection.d.ts +0 -51
- package/lib/injection/injection.directive.d.ts +0 -18
- package/lib/injection/injection.instance.d.ts +0 -32
- package/lib/injection/injection.rxjs.d.ts +0 -10
- package/lib/injection/injection.util.d.ts +0 -9
- package/lib/injection/injector.d.ts +0 -10
- package/lib/ngrx/index.d.ts +0 -1
- package/lib/ngrx/store.lockset.d.ts +0 -36
- package/lib/pipe/async/asobservable.pipe.d.ts +0 -12
- package/lib/pipe/async/async.pipe.module.d.ts +0 -10
- package/lib/pipe/async/index.d.ts +0 -2
- package/lib/pipe/date/date.pipe.module.d.ts +0 -43
- package/lib/pipe/date/datedayrange.pipe.d.ts +0 -9
- package/lib/pipe/date/datedaytimerange.pipe.d.ts +0 -9
- package/lib/pipe/date/datedistance.pipe.d.ts +0 -8
- package/lib/pipe/date/dateformatdistance.pipe.d.ts +0 -12
- package/lib/pipe/date/datefromtoformat.pipe.d.ts +0 -13
- package/lib/pipe/date/daterangedistance.pipe.d.ts +0 -9
- package/lib/pipe/date/datetimerange.pipe.d.ts +0 -9
- package/lib/pipe/date/datetimerangeonly.pipe.d.ts +0 -9
- package/lib/pipe/date/datetimerangeonlydistance.pipe.d.ts +0 -9
- package/lib/pipe/date/index.d.ts +0 -17
- package/lib/pipe/date/minutesstring.pipe.d.ts +0 -8
- package/lib/pipe/date/systemdatetotargetdate.pipe.d.ts +0 -12
- package/lib/pipe/date/targetdatetosystemdate.pipe.d.ts +0 -12
- package/lib/pipe/date/timedistance.pipe.d.ts +0 -13
- package/lib/pipe/date/timezoneabbreviation.pipe.d.ts +0 -12
- package/lib/pipe/date/tojsdate.pipe.d.ts +0 -10
- package/lib/pipe/date/tominutes.pipe.d.ts +0 -7
- package/lib/pipe/index.d.ts +0 -5
- package/lib/pipe/misc/index.d.ts +0 -2
- package/lib/pipe/misc/misc.pipe.module.d.ts +0 -12
- package/lib/pipe/misc/prettyjson.pipe.d.ts +0 -9
- package/lib/pipe/pipe.module.d.ts +0 -15
- package/lib/pipe/value/cuttext.pipe.d.ts +0 -11
- package/lib/pipe/value/dollar.pipe.d.ts +0 -13
- package/lib/pipe/value/getvalue.pipe.d.ts +0 -19
- package/lib/pipe/value/index.d.ts +0 -4
- package/lib/pipe/value/value.pipe.module.d.ts +0 -17
- package/lib/router/anchor/anchor.d.ts +0 -71
- package/lib/router/anchor/anchor.directive.d.ts +0 -30
- package/lib/router/anchor/clickable.d.ts +0 -20
- package/lib/router/anchor/index.d.ts +0 -4
- package/lib/router/anchor/mousable.d.ts +0 -9
- package/lib/router/auth/hook/id.hook.d.ts +0 -44
- package/lib/router/auth/hook/index.d.ts +0 -2
- package/lib/router/auth/hook/uid.hook.d.ts +0 -41
- package/lib/router/auth/index.d.ts +0 -1
- package/lib/router/index.d.ts +0 -5
- package/lib/router/model/id.param.redirect.d.ts +0 -51
- package/lib/router/model/index.d.ts +0 -6
- package/lib/router/model/model.module.d.ts +0 -16
- package/lib/router/model/model.router.d.ts +0 -35
- package/lib/router/model/model.router.id.directive.d.ts +0 -30
- package/lib/router/model/model.router.key.directive.d.ts +0 -32
- package/lib/router/model/model.router.uid.directive.d.ts +0 -15
- package/lib/router/router/index.d.ts +0 -4
- package/lib/router/router/provider/angular/angular.router.service.d.ts +0 -24
- package/lib/router/router/provider/angular/angular.router.service.module.d.ts +0 -8
- package/lib/router/router/provider/angular/index.d.ts +0 -2
- package/lib/router/router/provider/index.d.ts +0 -2
- package/lib/router/router/provider/uirouter/index.d.ts +0 -3
- package/lib/router/router/provider/uirouter/uirouter.router.service.d.ts +0 -32
- package/lib/router/router/provider/uirouter/uirouter.router.service.module.d.ts +0 -11
- package/lib/router/router/provider/uirouter/uirouter.router.service.providers.d.ts +0 -7
- package/lib/router/router/service/index.d.ts +0 -5
- package/lib/router/router/service/router.go.d.ts +0 -14
- package/lib/router/router/service/router.service.d.ts +0 -49
- package/lib/router/router/service/router.service.rxjs.d.ts +0 -27
- package/lib/router/router/service/router.service.util.d.ts +0 -26
- package/lib/router/router/service/router.transition.service.d.ts +0 -11
- package/lib/router/router/transition/index.d.ts +0 -4
- package/lib/router/router/transition/transition.d.ts +0 -13
- package/lib/router/router/transition/transition.directive.d.ts +0 -13
- package/lib/router/router/transition/transition.rxjs.d.ts +0 -67
- package/lib/router/router/transition/transition.watcher.directive.d.ts +0 -16
- package/lib/router/router/util/index.d.ts +0 -2
- package/lib/router/router/util/route.default.d.ts +0 -20
- package/lib/router/router/util/route.reader.d.ts +0 -56
- package/lib/router/segue.d.ts +0 -38
- package/lib/storage/index.d.ts +0 -8
- package/lib/storage/storage.accessor.d.ts +0 -35
- package/lib/storage/storage.accessor.simple.d.ts +0 -80
- package/lib/storage/storage.accessor.simple.factory.d.ts +0 -17
- package/lib/storage/storage.accessor.string.d.ts +0 -16
- package/lib/storage/storage.di.d.ts +0 -3
- package/lib/storage/storage.object.localstorage.d.ts +0 -16
- package/lib/storage/storage.object.memory.d.ts +0 -9
- package/lib/storage/storage.providers.d.ts +0 -13
- package/lib/subscription/index.d.ts +0 -1
- package/lib/subscription/subscription.directive.d.ts +0 -25
- package/lib/util/index.d.ts +0 -2
- package/lib/util/input.d.ts +0 -6
- package/lib/util/view.d.ts +0 -61
- package/lib/view/if.directive.d.ts +0 -18
- package/lib/view/index.d.ts +0 -1
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
import { inject, Directive, input, computed, signal } from '@angular/core';
|
|
2
|
-
import { AbstractSubscriptionDirective } from '../../../subscription';
|
|
3
|
-
import { debounce, distinctUntilChanged, exhaustMap, filter, first, map, mergeMap, shareReplay, switchMap, throttle, EMPTY, interval, combineLatest } from 'rxjs';
|
|
4
|
-
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
5
|
-
import { isDefinedAndNotFalse, isNotFalse } from '@dereekb/util';
|
|
6
|
-
import { toObservable } from '@angular/core/rxjs-interop';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
const DEFAULT_DEBOUNCE_MS = 2 * 1000;
|
|
9
|
-
const DEFAULT_THROTTLE_MS = 10 * 1000;
|
|
10
|
-
const DEFAULT_ERROR_THROTTLE_MS = 3 * 1000;
|
|
11
|
-
const MAX_ERRORS_TO_THROTTLE_ON = 6;
|
|
12
|
-
const DBX_ACTION_AUTO_TRIGGER_FAST_TRIGGER_DEBOUNCE = 200;
|
|
13
|
-
const DBX_ACTION_AUTO_TRIGGER_INSTANT_TRIGGER_DEBOUNCE = 10;
|
|
14
|
-
/**
|
|
15
|
-
* Directive that automatically triggers the action periodically when it is in a modified state.
|
|
16
|
-
*
|
|
17
|
-
* When using auto triggers be sure to make sure that the action is not triggering too often due to misconfiguration.
|
|
18
|
-
*/
|
|
19
|
-
export class DbxActionAutoTriggerDirective extends AbstractSubscriptionDirective {
|
|
20
|
-
source = inject((DbxActionContextStoreSourceInstance), { host: true });
|
|
21
|
-
triggerDebounce = input(undefined);
|
|
22
|
-
triggerThrottle = input(undefined);
|
|
23
|
-
triggerErrorThrottle = input(DEFAULT_ERROR_THROTTLE_MS, { transform: (x) => x ?? DEFAULT_ERROR_THROTTLE_MS });
|
|
24
|
-
maxErrorsForThrottle = input(MAX_ERRORS_TO_THROTTLE_ON, { transform: (x) => x ?? MAX_ERRORS_TO_THROTTLE_ON });
|
|
25
|
-
triggerLimit = input();
|
|
26
|
-
triggerEnabled = input(true, { alias: 'dbxActionAutoTrigger', transform: isNotFalse });
|
|
27
|
-
useFastTriggerPreset = input(false, { transform: isDefinedAndNotFalse });
|
|
28
|
-
useInstantTriggerPreset = input(false, { transform: isDefinedAndNotFalse });
|
|
29
|
-
triggerDebounceSignal = computed(() => {
|
|
30
|
-
let debounce = this.triggerDebounce();
|
|
31
|
-
if (debounce == null) {
|
|
32
|
-
const useFastTrigger = this.useFastTriggerPreset();
|
|
33
|
-
const useInstantTrigger = this.useInstantTriggerPreset();
|
|
34
|
-
if (useFastTrigger) {
|
|
35
|
-
debounce = DBX_ACTION_AUTO_TRIGGER_FAST_TRIGGER_DEBOUNCE;
|
|
36
|
-
}
|
|
37
|
-
else if (useInstantTrigger) {
|
|
38
|
-
debounce = DBX_ACTION_AUTO_TRIGGER_INSTANT_TRIGGER_DEBOUNCE;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
return debounce ?? DEFAULT_DEBOUNCE_MS;
|
|
42
|
-
});
|
|
43
|
-
triggerThrottleSignal = computed(() => {
|
|
44
|
-
let throttle = this.triggerThrottle();
|
|
45
|
-
if (throttle == null) {
|
|
46
|
-
const useFastTrigger = this.useFastTriggerPreset();
|
|
47
|
-
const useInstantTrigger = this.useInstantTriggerPreset();
|
|
48
|
-
if (useFastTrigger) {
|
|
49
|
-
throttle = DBX_ACTION_AUTO_TRIGGER_FAST_TRIGGER_DEBOUNCE;
|
|
50
|
-
}
|
|
51
|
-
else if (useInstantTrigger) {
|
|
52
|
-
throttle = DBX_ACTION_AUTO_TRIGGER_INSTANT_TRIGGER_DEBOUNCE;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
return throttle ?? DEFAULT_THROTTLE_MS;
|
|
56
|
-
});
|
|
57
|
-
triggerCountSignal = signal(0);
|
|
58
|
-
_errorCount$ = this.source.errorCountSinceLastSuccess$;
|
|
59
|
-
_triggerCount$ = this.source.isModifiedAndCanTriggerUpdates$.pipe(
|
|
60
|
-
// each time something is triggered the
|
|
61
|
-
filter(() => this.triggerEnabled() ?? false), debounce(() => interval(this.triggerDebounceSignal())), throttle(() => this._errorCount$.pipe(first(), exhaustMap((errorCount) => {
|
|
62
|
-
const maxErrors = this.maxErrorsForThrottle() ?? MAX_ERRORS_TO_THROTTLE_ON;
|
|
63
|
-
const throttleTime = this.triggerErrorThrottle() ?? DEFAULT_ERROR_THROTTLE_MS;
|
|
64
|
-
const additionalInterval = Math.min(errorCount, maxErrors) * throttleTime;
|
|
65
|
-
return interval(this.triggerThrottleSignal() + additionalInterval);
|
|
66
|
-
})), { leading: true, trailing: true }),
|
|
67
|
-
// Check again for the "trailing" piece.
|
|
68
|
-
filter(() => this.triggerEnabled() ?? false), mergeMap(() => this.source.isModifiedAndCanTrigger$.pipe(first())), filter((x) => x), map(() => {
|
|
69
|
-
const count = this.triggerCountSignal();
|
|
70
|
-
this.triggerCountSignal.update((x) => x + 1);
|
|
71
|
-
return count;
|
|
72
|
-
}), shareReplay(1));
|
|
73
|
-
/**
|
|
74
|
-
* Observable for the trigger mechanism.
|
|
75
|
-
*/
|
|
76
|
-
triggerCount$ = toObservable(this.triggerEnabled).pipe(switchMap((enabled) => {
|
|
77
|
-
let countObs;
|
|
78
|
-
if (enabled !== false) {
|
|
79
|
-
countObs = this._triggerCount$;
|
|
80
|
-
}
|
|
81
|
-
else {
|
|
82
|
-
countObs = EMPTY;
|
|
83
|
-
}
|
|
84
|
-
return countObs;
|
|
85
|
-
}));
|
|
86
|
-
_isTriggerLimited$ = combineLatest([this.triggerCount$, toObservable(this.triggerLimit)]).pipe(map(([triggerCount, limit]) => {
|
|
87
|
-
const isAllowedToRun = limit != null ? triggerCount < limit : true;
|
|
88
|
-
return [triggerCount, isAllowedToRun];
|
|
89
|
-
}), shareReplay(1));
|
|
90
|
-
isTriggerAllowedToRun$ = this._isTriggerLimited$.pipe(map((x) => x[1]), shareReplay(1));
|
|
91
|
-
automaticTrigger$ = this._isTriggerLimited$.pipe(filter((x) => x[1]), distinctUntilChanged((a, b) => a[0] === b[0]), // Only trigger when the count changes.
|
|
92
|
-
map(() => undefined));
|
|
93
|
-
ngOnInit() {
|
|
94
|
-
this.sub = this.automaticTrigger$.subscribe(() => {
|
|
95
|
-
this.source.trigger();
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
ngOnDestroy() {
|
|
99
|
-
this.source.lockSet.onNextUnlock(() => {
|
|
100
|
-
super.ngOnDestroy();
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionAutoTriggerDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
104
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionAutoTriggerDirective, isStandalone: true, selector: "dbxActionAutoTrigger,[dbxActionAutoTrigger]", inputs: { triggerDebounce: { classPropertyName: "triggerDebounce", publicName: "triggerDebounce", isSignal: true, isRequired: false, transformFunction: null }, triggerThrottle: { classPropertyName: "triggerThrottle", publicName: "triggerThrottle", isSignal: true, isRequired: false, transformFunction: null }, triggerErrorThrottle: { classPropertyName: "triggerErrorThrottle", publicName: "triggerErrorThrottle", isSignal: true, isRequired: false, transformFunction: null }, maxErrorsForThrottle: { classPropertyName: "maxErrorsForThrottle", publicName: "maxErrorsForThrottle", isSignal: true, isRequired: false, transformFunction: null }, triggerLimit: { classPropertyName: "triggerLimit", publicName: "triggerLimit", isSignal: true, isRequired: false, transformFunction: null }, triggerEnabled: { classPropertyName: "triggerEnabled", publicName: "dbxActionAutoTrigger", isSignal: true, isRequired: false, transformFunction: null }, useFastTriggerPreset: { classPropertyName: "useFastTriggerPreset", publicName: "useFastTriggerPreset", isSignal: true, isRequired: false, transformFunction: null }, useInstantTriggerPreset: { classPropertyName: "useInstantTriggerPreset", publicName: "useInstantTriggerPreset", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });
|
|
105
|
-
}
|
|
106
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionAutoTriggerDirective, decorators: [{
|
|
107
|
-
type: Directive,
|
|
108
|
-
args: [{
|
|
109
|
-
selector: 'dbxActionAutoTrigger,[dbxActionAutoTrigger]',
|
|
110
|
-
standalone: true
|
|
111
|
-
}]
|
|
112
|
-
}] });
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmF1dG90cmlnZ2VyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1jb3JlL3NyYy9saWIvYWN0aW9uL2RpcmVjdGl2ZS9hdXRvL2FjdGlvbi5hdXRvdHJpZ2dlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQXFCLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3RHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxRQUFRLEVBQUUsb0JBQW9CLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUM5SyxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsVUFBVSxFQUFjLE1BQU0sZUFBZSxDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFMUQsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDO0FBRXJDLE1BQU0sbUJBQW1CLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQztBQUV0QyxNQUFNLHlCQUF5QixHQUFHLENBQUMsR0FBRyxJQUFJLENBQUM7QUFFM0MsTUFBTSx5QkFBeUIsR0FBRyxDQUFDLENBQUM7QUFFcEMsTUFBTSw2Q0FBNkMsR0FBRyxHQUFHLENBQUM7QUFDMUQsTUFBTSxnREFBZ0QsR0FBRyxFQUFFLENBQUM7QUFFNUQ7Ozs7R0FJRztBQUtILE1BQU0sT0FBTyw2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QUMsQ0FBQyxDQUFDLEVBQ25CLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLHVDQUF1QztJQUN0RixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsU0FBaUIsQ0FBQyxDQUM3QixDQUFDO0lBRUYsUUFBUTtRQUNOLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDL0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN4QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUSxXQUFXO1FBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxHQUFHLEVBQUU7WUFDcEMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3RCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt3R0E1SFUsNkJBQTZCOzRGQUE3Qiw2QkFBNkI7OzRGQUE3Qiw2QkFBNkI7a0JBSnpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDZDQUE2QztvQkFDdkQsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBEaXJlY3RpdmUsIE9uSW5pdCwgT25EZXN0cm95LCBpbnB1dCwgY29tcHV0ZWQsIHNpZ25hbCwgU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL3N1YnNjcmlwdGlvbic7XG5pbXBvcnQgeyBkZWJvdW5jZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIGV4aGF1c3RNYXAsIGZpbHRlciwgZmlyc3QsIG1hcCwgbWVyZ2VNYXAsIHNoYXJlUmVwbGF5LCBzd2l0Y2hNYXAsIHRocm90dGxlLCBFTVBUWSwgaW50ZXJ2YWwsIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLnN0b3JlLnNvdXJjZSc7XG5pbXBvcnQgeyBpc0RlZmluZWRBbmROb3RGYWxzZSwgaXNOb3RGYWxzZSwgdHlwZSBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG5jb25zdCBERUZBVUxUX0RFQk9VTkNFX01TID0gMiAqIDEwMDA7XG5cbmNvbnN0IERFRkFVTFRfVEhST1RUTEVfTVMgPSAxMCAqIDEwMDA7XG5cbmNvbnN0IERFRkFVTFRfRVJST1JfVEhST1RUTEVfTVMgPSAzICogMTAwMDtcblxuY29uc3QgTUFYX0VSUk9SU19UT19USFJPVFRMRV9PTiA9IDY7XG5cbmNvbnN0IERCWF9BQ1RJT05fQVVUT19UUklHR0VSX0ZBU1RfVFJJR0dFUl9ERUJPVU5DRSA9IDIwMDtcbmNvbnN0IERCWF9BQ1RJT05fQVVUT19UUklHR0VSX0lOU1RBTlRfVFJJR0dFUl9ERUJPVU5DRSA9IDEwO1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0aGF0IGF1dG9tYXRpY2FsbHkgdHJpZ2dlcnMgdGhlIGFjdGlvbiBwZXJpb2RpY2FsbHkgd2hlbiBpdCBpcyBpbiBhIG1vZGlmaWVkIHN0YXRlLlxuICpcbiAqIFdoZW4gdXNpbmcgYXV0byB0cmlnZ2VycyBiZSBzdXJlIHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBhY3Rpb24gaXMgbm90IHRyaWdnZXJpbmcgdG9vIG9mdGVuIGR1ZSB0byBtaXNjb25maWd1cmF0aW9uLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdkYnhBY3Rpb25BdXRvVHJpZ2dlcixbZGJ4QWN0aW9uQXV0b1RyaWdnZXJdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhBY3Rpb25BdXRvVHJpZ2dlckRpcmVjdGl2ZTxUID0gdW5rbm93biwgTyA9IHVua25vd24+IGV4dGVuZHMgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHJlYWRvbmx5IHNvdXJjZSA9IGluamVjdChEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZTxULCBPPiwgeyBob3N0OiB0cnVlIH0pO1xuXG4gIHJlYWRvbmx5IHRyaWdnZXJEZWJvdW5jZSA9IGlucHV0PE1heWJlPG51bWJlcj4+KHVuZGVmaW5lZCk7XG4gIHJlYWRvbmx5IHRyaWdnZXJUaHJvdHRsZSA9IGlucHV0PE1heWJlPG51bWJlcj4+KHVuZGVmaW5lZCk7XG4gIHJlYWRvbmx5IHRyaWdnZXJFcnJvclRocm90dGxlID0gaW5wdXQ8bnVtYmVyLCBNYXliZTxudW1iZXI+PihERUZBVUxUX0VSUk9SX1RIUk9UVExFX01TLCB7IHRyYW5zZm9ybTogKHgpID0+IHggPz8gREVGQVVMVF9FUlJPUl9USFJPVFRMRV9NUyB9KTtcbiAgcmVhZG9ubHkgbWF4RXJyb3JzRm9yVGhyb3R0bGUgPSBpbnB1dDxudW1iZXIsIE1heWJlPG51bWJlcj4+KE1BWF9FUlJPUlNfVE9fVEhST1RUTEVfT04sIHsgdHJhbnNmb3JtOiAoeCkgPT4geCA/PyBNQVhfRVJST1JTX1RPX1RIUk9UVExFX09OIH0pO1xuICByZWFkb25seSB0cmlnZ2VyTGltaXQgPSBpbnB1dDxNYXliZTxudW1iZXI+PigpO1xuICByZWFkb25seSB0cmlnZ2VyRW5hYmxlZCA9IGlucHV0PGJvb2xlYW4sIE1heWJlPHN0cmluZyB8IGJvb2xlYW4+Pih0cnVlLCB7IGFsaWFzOiAnZGJ4QWN0aW9uQXV0b1RyaWdnZXInLCB0cmFuc2Zvcm06IGlzTm90RmFsc2UgfSk7XG4gIHJlYWRvbmx5IHVzZUZhc3RUcmlnZ2VyUHJlc2V0ID0gaW5wdXQ8Ym9vbGVhbiwgTWF5YmU8JycgfCBib29sZWFuPj4oZmFsc2UsIHsgdHJhbnNmb3JtOiBpc0RlZmluZWRBbmROb3RGYWxzZSB9KTtcbiAgcmVhZG9ubHkgdXNlSW5zdGFudFRyaWdnZXJQcmVzZXQgPSBpbnB1dDxib29sZWFuLCBNYXliZTwnJyB8IGJvb2xlYW4+PihmYWxzZSwgeyB0cmFuc2Zvcm06IGlzRGVmaW5lZEFuZE5vdEZhbHNlIH0pO1xuXG4gIHJlYWRvbmx5IHRyaWdnZXJEZWJvdW5jZVNpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBsZXQgZGVib3VuY2UgPSB0aGlzLnRyaWdnZXJEZWJvdW5jZSgpO1xuXG4gICAgaWYgKGRlYm91bmNlID09IG51bGwpIHtcbiAgICAgIGNvbnN0IHVzZUZhc3RUcmlnZ2VyID0gdGhpcy51c2VGYXN0VHJpZ2dlclByZXNldCgpO1xuICAgICAgY29uc3QgdXNlSW5zdGFudFRyaWdnZXIgPSB0aGlzLnVzZUluc3RhbnRUcmlnZ2VyUHJlc2V0KCk7XG5cbiAgICAgIGlmICh1c2VGYXN0VHJpZ2dlcikge1xuICAgICAgICBkZWJvdW5jZSA9IERCWF9BQ1RJT05fQVVUT19UUklHR0VSX0ZBU1RfVFJJR0dFUl9ERUJPVU5DRTtcbiAgICAgIH0gZWxzZSBpZiAodXNlSW5zdGFudFRyaWdnZXIpIHtcbiAgICAgICAgZGVib3VuY2UgPSBEQlhfQUNUSU9OX0FVVE9fVFJJR0dFUl9JTlNUQU5UX1RSSUdHRVJfREVCT1VOQ0U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGRlYm91bmNlID8/IERFRkFVTFRfREVCT1VOQ0VfTVM7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IHRyaWdnZXJUaHJvdHRsZVNpZ25hbDogU2lnbmFsPG51bWJlcj4gPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgbGV0IHRocm90dGxlID0gdGhpcy50cmlnZ2VyVGhyb3R0bGUoKTtcblxuICAgIGlmICh0aHJvdHRsZSA9PSBudWxsKSB7XG4gICAgICBjb25zdCB1c2VGYXN0VHJpZ2dlciA9IHRoaXMudXNlRmFzdFRyaWdnZXJQcmVzZXQoKTtcbiAgICAgIGNvbnN0IHVzZUluc3RhbnRUcmlnZ2VyID0gdGhpcy51c2VJbnN0YW50VHJpZ2dlclByZXNldCgpO1xuXG4gICAgICBpZiAodXNlRmFzdFRyaWdnZXIpIHtcbiAgICAgICAgdGhyb3R0bGUgPSBEQlhfQUNUSU9OX0FVVE9fVFJJR0dFUl9GQVNUX1RSSUdHRVJfREVCT1VOQ0U7XG4gICAgICB9IGVsc2UgaWYgKHVzZUluc3RhbnRUcmlnZ2VyKSB7XG4gICAgICAgIHRocm90dGxlID0gREJYX0FDVElPTl9BVVRPX1RSSUdHRVJfSU5TVEFOVF9UUklHR0VSX0RFQk9VTkNFO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0aHJvdHRsZSA/PyBERUZBVUxUX1RIUk9UVExFX01TO1xuICB9KTtcblxuICByZWFkb25seSB0cmlnZ2VyQ291bnRTaWduYWwgPSBzaWduYWw8bnVtYmVyPigwKTtcblxuICByZWFkb25seSBfZXJyb3JDb3VudCQgPSB0aGlzLnNvdXJjZS5lcnJvckNvdW50U2luY2VMYXN0U3VjY2VzcyQ7XG4gIHJlYWRvbmx5IF90cmlnZ2VyQ291bnQkID0gdGhpcy5zb3VyY2UuaXNNb2RpZmllZEFuZENhblRyaWdnZXJVcGRhdGVzJC5waXBlKFxuICAgIC8vIGVhY2ggdGltZSBzb21ldGhpbmcgaXMgdHJpZ2dlcmVkIHRoZVxuICAgIGZpbHRlcigoKSA9PiB0aGlzLnRyaWdnZXJFbmFibGVkKCkgPz8gZmFsc2UpLFxuICAgIGRlYm91bmNlKCgpID0+IGludGVydmFsKHRoaXMudHJpZ2dlckRlYm91bmNlU2lnbmFsKCkpKSxcbiAgICB0aHJvdHRsZShcbiAgICAgICgpID0+XG4gICAgICAgIHRoaXMuX2Vycm9yQ291bnQkLnBpcGUoXG4gICAgICAgICAgZmlyc3QoKSxcbiAgICAgICAgICBleGhhdXN0TWFwKChlcnJvckNvdW50KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBtYXhFcnJvcnMgPSB0aGlzLm1heEVycm9yc0ZvclRocm90dGxlKCkgPz8gTUFYX0VSUk9SU19UT19USFJPVFRMRV9PTjtcbiAgICAgICAgICAgIGNvbnN0IHRocm90dGxlVGltZSA9IHRoaXMudHJpZ2dlckVycm9yVGhyb3R0bGUoKSA/PyBERUZBVUxUX0VSUk9SX1RIUk9UVExFX01TO1xuICAgICAgICAgICAgY29uc3QgYWRkaXRpb25hbEludGVydmFsID0gTWF0aC5taW4oZXJyb3JDb3VudCwgbWF4RXJyb3JzKSAqIHRocm90dGxlVGltZTtcblxuICAgICAgICAgICAgcmV0dXJuIGludGVydmFsKHRoaXMudHJpZ2dlclRocm90dGxlU2lnbmFsKCkgKyBhZGRpdGlvbmFsSW50ZXJ2YWwpO1xuICAgICAgICAgIH0pXG4gICAgICAgICksXG4gICAgICB7IGxlYWRpbmc6IHRydWUsIHRyYWlsaW5nOiB0cnVlIH1cbiAgICApLFxuICAgIC8vIENoZWNrIGFnYWluIGZvciB0aGUgXCJ0cmFpbGluZ1wiIHBpZWNlLlxuICAgIGZpbHRlcigoKSA9PiB0aGlzLnRyaWdnZXJFbmFibGVkKCkgPz8gZmFsc2UpLFxuICAgIG1lcmdlTWFwKCgpID0+IHRoaXMuc291cmNlLmlzTW9kaWZpZWRBbmRDYW5UcmlnZ2VyJC5waXBlKGZpcnN0KCkpKSxcbiAgICBmaWx0ZXIoKHgpID0+IHgpLFxuICAgIG1hcCgoKSA9PiB7XG4gICAgICBjb25zdCBjb3VudCA9IHRoaXMudHJpZ2dlckNvdW50U2lnbmFsKCk7XG4gICAgICB0aGlzLnRyaWdnZXJDb3VudFNpZ25hbC51cGRhdGUoKHgpID0+IHggKyAxKTtcbiAgICAgIHJldHVybiBjb3VudDtcbiAgICB9KSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIC8qKlxuICAgKiBPYnNlcnZhYmxlIGZvciB0aGUgdHJpZ2dlciBtZWNoYW5pc20uXG4gICAqL1xuICByZWFkb25seSB0cmlnZ2VyQ291bnQkID0gdG9PYnNlcnZhYmxlKHRoaXMudHJpZ2dlckVuYWJsZWQpLnBpcGUoXG4gICAgc3dpdGNoTWFwKChlbmFibGVkKSA9PiB7XG4gICAgICBsZXQgY291bnRPYnM6IE9ic2VydmFibGU8bnVtYmVyPjtcblxuICAgICAgaWYgKGVuYWJsZWQgIT09IGZhbHNlKSB7XG4gICAgICAgIGNvdW50T2JzID0gdGhpcy5fdHJpZ2dlckNvdW50JDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvdW50T2JzID0gRU1QVFk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjb3VudE9icztcbiAgICB9KVxuICApO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2lzVHJpZ2dlckxpbWl0ZWQkOiBPYnNlcnZhYmxlPHJlYWRvbmx5IFtudW1iZXIsIGJvb2xlYW5dPiA9IGNvbWJpbmVMYXRlc3QoW3RoaXMudHJpZ2dlckNvdW50JCwgdG9PYnNlcnZhYmxlKHRoaXMudHJpZ2dlckxpbWl0KV0pLnBpcGUoXG4gICAgbWFwKChbdHJpZ2dlckNvdW50LCBsaW1pdF0pID0+IHtcbiAgICAgIGNvbnN0IGlzQWxsb3dlZFRvUnVuID0gbGltaXQgIT0gbnVsbCA/IHRyaWdnZXJDb3VudCA8IGxpbWl0IDogdHJ1ZTtcbiAgICAgIHJldHVybiBbdHJpZ2dlckNvdW50LCBpc0FsbG93ZWRUb1J1bl0gYXMgY29uc3Q7XG4gICAgfSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBpc1RyaWdnZXJBbGxvd2VkVG9SdW4kID0gdGhpcy5faXNUcmlnZ2VyTGltaXRlZCQucGlwZShcbiAgICBtYXAoKHgpID0+IHhbMV0pLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG4gIHJlYWRvbmx5IGF1dG9tYXRpY1RyaWdnZXIkOiBPYnNlcnZhYmxlPHZvaWQ+ID0gdGhpcy5faXNUcmlnZ2VyTGltaXRlZCQucGlwZShcbiAgICBmaWx0ZXIoKHgpID0+IHhbMV0pLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKChhLCBiKSA9PiBhWzBdID09PSBiWzBdKSwgLy8gT25seSB0cmlnZ2VyIHdoZW4gdGhlIGNvdW50IGNoYW5nZXMuXG4gICAgbWFwKCgpID0+IHVuZGVmaW5lZCBhcyB2b2lkKVxuICApO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3ViID0gdGhpcy5hdXRvbWF0aWNUcmlnZ2VyJC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5zb3VyY2UudHJpZ2dlcigpO1xuICAgIH0pO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zb3VyY2UubG9ja1NldC5vbk5leHRVbmxvY2soKCkgPT4ge1xuICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './action.automodify.directive';
|
|
2
|
-
export * from './action.autotrigger.directive';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvYXV0by9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2FjdGlvbi5hdXRvbW9kaWZ5LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2FjdGlvbi5hdXRvdHJpZ2dlci5kaXJlY3RpdmUnO1xuIl19
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { Directive, inject } from '@angular/core';
|
|
2
|
-
import { SecondaryActionContextStoreSource } from '../../action.store.source';
|
|
3
|
-
import { provideActionStoreSource } from '../../action.store.source.provide';
|
|
4
|
-
import { DbxActionContextBaseSource } from '../../action.holder';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
/**
|
|
7
|
-
* Provides an DbxActionContext.
|
|
8
|
-
*/
|
|
9
|
-
export class DbxActionDirective extends DbxActionContextBaseSource {
|
|
10
|
-
constructor() {
|
|
11
|
-
super(inject((SecondaryActionContextStoreSource), { optional: true, host: true }));
|
|
12
|
-
}
|
|
13
|
-
ngOnDestroy() {
|
|
14
|
-
this.lockSet.destroyOnNextUnlock(() => {
|
|
15
|
-
this.destroy();
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
19
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DbxActionDirective, isStandalone: true, selector: "dbx-action,[dbxAction],dbx-action-context,[dbxActionContext]", providers: provideActionStoreSource(DbxActionDirective), exportAs: ["action", "dbxAction"], usesInheritance: true, ngImport: i0 });
|
|
20
|
-
}
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionDirective, decorators: [{
|
|
22
|
-
type: Directive,
|
|
23
|
-
args: [{
|
|
24
|
-
selector: 'dbx-action,[dbxAction],dbx-action-context,[dbxActionContext]',
|
|
25
|
-
exportAs: 'action,dbxAction',
|
|
26
|
-
providers: provideActionStoreSource(DbxActionDirective),
|
|
27
|
-
standalone: true
|
|
28
|
-
}]
|
|
29
|
-
}], ctorParameters: () => [] });
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1jb3JlL3NyYy9saWIvYWN0aW9uL2RpcmVjdGl2ZS9jb250ZXh0L2FjdGlvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDOUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDN0UsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBRWpFOztHQUVHO0FBT0gsTUFBTSxPQUFPLGtCQUE2QyxTQUFRLDBCQUFnQztJQUNoRztRQUNFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQSxpQ0FBdUMsQ0FBQSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLEVBQUU7WUFDcEMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2pCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt3R0FUVSxrQkFBa0I7NEZBQWxCLGtCQUFrQiwyR0FIbEIsd0JBQXdCLENBQUMsa0JBQWtCLENBQUM7OzRGQUc1QyxrQkFBa0I7a0JBTjlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDhEQUE4RDtvQkFDeEUsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsU0FBUyxFQUFFLHdCQUF3QixvQkFBb0I7b0JBQ3ZELFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgT25EZXN0cm95LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNlY29uZGFyeUFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZSB9IGZyb20gJy4uLy4uL2FjdGlvbi5zdG9yZS5zb3VyY2UnO1xuaW1wb3J0IHsgcHJvdmlkZUFjdGlvblN0b3JlU291cmNlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLnN0b3JlLnNvdXJjZS5wcm92aWRlJztcbmltcG9ydCB7IERieEFjdGlvbkNvbnRleHRCYXNlU291cmNlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLmhvbGRlcic7XG5cbi8qKlxuICogUHJvdmlkZXMgYW4gRGJ4QWN0aW9uQ29udGV4dC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnZGJ4LWFjdGlvbixbZGJ4QWN0aW9uXSxkYngtYWN0aW9uLWNvbnRleHQsW2RieEFjdGlvbkNvbnRleHRdJyxcbiAgZXhwb3J0QXM6ICdhY3Rpb24sZGJ4QWN0aW9uJyxcbiAgcHJvdmlkZXJzOiBwcm92aWRlQWN0aW9uU3RvcmVTb3VyY2UoRGJ4QWN0aW9uRGlyZWN0aXZlKSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhBY3Rpb25EaXJlY3RpdmU8VCA9IHVua25vd24sIE8gPSB1bmtub3duPiBleHRlbmRzIERieEFjdGlvbkNvbnRleHRCYXNlU291cmNlPFQsIE8+IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoaW5qZWN0KFNlY29uZGFyeUFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZTxULCBPPiwgeyBvcHRpb25hbDogdHJ1ZSwgaG9zdDogdHJ1ZSB9KSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmxvY2tTZXQuZGVzdHJveU9uTmV4dFVubG9jaygoKSA9PiB7XG4gICAgICB0aGlzLmRlc3Ryb3koKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { filterMaybe } from '@dereekb/rxjs';
|
|
2
|
-
import { Directive, input } from '@angular/core';
|
|
3
|
-
import { switchMap } from 'rxjs';
|
|
4
|
-
import { actionContextStoreSourcePipe } from '../../action.store.source';
|
|
5
|
-
import { provideSecondaryActionStoreSource } from '../../action.store.source.provide';
|
|
6
|
-
import { toObservable } from '@angular/core/rxjs-interop';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
/**
|
|
9
|
-
* Directive that provides a DbxActionSourceDirective that is passed in.
|
|
10
|
-
*/
|
|
11
|
-
export class DbxActionSourceDirective {
|
|
12
|
-
dbxActionSource = input();
|
|
13
|
-
store$ = toObservable(this.dbxActionSource).pipe(filterMaybe(), switchMap((x) => actionContextStoreSourcePipe(x.store$)));
|
|
14
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionSourceDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
15
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionSourceDirective, isStandalone: true, selector: "[dbxActionSource]", inputs: { dbxActionSource: { classPropertyName: "dbxActionSource", publicName: "dbxActionSource", isSignal: true, isRequired: false, transformFunction: null } }, providers: provideSecondaryActionStoreSource(DbxActionSourceDirective), ngImport: i0 });
|
|
16
|
-
}
|
|
17
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionSourceDirective, decorators: [{
|
|
18
|
-
type: Directive,
|
|
19
|
-
args: [{
|
|
20
|
-
selector: '[dbxActionSource]',
|
|
21
|
-
providers: provideSecondaryActionStoreSource(DbxActionSourceDirective),
|
|
22
|
-
standalone: true
|
|
23
|
-
}]
|
|
24
|
-
}] });
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLnNvdXJjZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvY29udGV4dC9hY3Rpb24uc291cmNlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakMsT0FBTyxFQUErRCw0QkFBNEIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3RJLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFMUQ7O0dBRUc7QUFNSCxNQUFNLE9BQU8sd0JBQXdCO0lBQzFCLGVBQWUsR0FBRyxLQUFLLEVBQW1DLENBQUM7SUFFM0QsTUFBTSxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsSUFBSSxDQUN2RCxXQUFXLEVBQUUsRUFDYixTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLDRCQUE0QixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUN6RCxDQUFDO3dHQU5TLHdCQUF3Qjs0RkFBeEIsd0JBQXdCLGtPQUh4QixpQ0FBaUMsQ0FBQyx3QkFBd0IsQ0FBQzs7NEZBRzNELHdCQUF3QjtrQkFMcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixTQUFTLEVBQUUsaUNBQWlDLDBCQUEwQjtvQkFDdEUsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmlsdGVyTWF5YmUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHR5cGUgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU2Vjb25kYXJ5QWN0aW9uQ29udGV4dFN0b3JlU291cmNlLCBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2UsIGFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZVBpcGUgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlJztcbmltcG9ydCB7IHByb3ZpZGVTZWNvbmRhcnlBY3Rpb25TdG9yZVNvdXJjZSB9IGZyb20gJy4uLy4uL2FjdGlvbi5zdG9yZS5zb3VyY2UucHJvdmlkZSc7XG5pbXBvcnQgeyB0b09ic2VydmFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbi8qKlxuICogRGlyZWN0aXZlIHRoYXQgcHJvdmlkZXMgYSBEYnhBY3Rpb25Tb3VyY2VEaXJlY3RpdmUgdGhhdCBpcyBwYXNzZWQgaW4uXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhBY3Rpb25Tb3VyY2VdJyxcbiAgcHJvdmlkZXJzOiBwcm92aWRlU2Vjb25kYXJ5QWN0aW9uU3RvcmVTb3VyY2UoRGJ4QWN0aW9uU291cmNlRGlyZWN0aXZlKSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhBY3Rpb25Tb3VyY2VEaXJlY3RpdmUgaW1wbGVtZW50cyBTZWNvbmRhcnlBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2Uge1xuICByZWFkb25seSBkYnhBY3Rpb25Tb3VyY2UgPSBpbnB1dDxNYXliZTxBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2U+PigpO1xuXG4gIHJlYWRvbmx5IHN0b3JlJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLmRieEFjdGlvblNvdXJjZSkucGlwZShcbiAgICBmaWx0ZXJNYXliZSgpLFxuICAgIHN3aXRjaE1hcCgoeCkgPT4gYWN0aW9uQ29udGV4dFN0b3JlU291cmNlUGlwZSh4LnN0b3JlJCkpXG4gICk7XG59XG4iXX0=
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './action.directive';
|
|
2
|
-
export * from './action.source.directive';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvY29udGV4dC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2FjdGlvbi5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb24uc291cmNlLmRpcmVjdGl2ZSc7XG4iXX0=
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { Directive, inject } from '@angular/core';
|
|
2
|
-
import { AbstractSubscriptionDirective } from '../../../subscription';
|
|
3
|
-
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* Prints out the current state to the console. Useful for debugging.
|
|
7
|
-
*/
|
|
8
|
-
export class DbxActionContextLoggerDirective extends AbstractSubscriptionDirective {
|
|
9
|
-
source = inject(DbxActionContextStoreSourceInstance, { host: true });
|
|
10
|
-
ngOnInit() {
|
|
11
|
-
this.sub = this.source.state$.subscribe((state) => {
|
|
12
|
-
console.log('dbxActionLogger - state: ', state);
|
|
13
|
-
});
|
|
14
|
-
}
|
|
15
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionContextLoggerDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
16
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DbxActionContextLoggerDirective, isStandalone: true, selector: "[dbxActionLogger],[dbxActionContextLogger]", usesInheritance: true, ngImport: i0 });
|
|
17
|
-
}
|
|
18
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionContextLoggerDirective, decorators: [{
|
|
19
|
-
type: Directive,
|
|
20
|
-
args: [{
|
|
21
|
-
selector: '[dbxActionLogger],[dbxActionContextLogger]',
|
|
22
|
-
standalone: true
|
|
23
|
-
}]
|
|
24
|
-
}] });
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmxvZ2dlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvZGVidWcvYWN0aW9uLmxvZ2dlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEUsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBRWhGOztHQUVHO0FBS0gsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLDZCQUE2QjtJQUN2RSxNQUFNLEdBQUcsTUFBTSxDQUFDLG1DQUFtQyxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFFOUUsUUFBUTtRQUNOLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDaEQsT0FBTyxDQUFDLEdBQUcsQ0FBQywyQkFBMkIsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNsRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7d0dBUFUsK0JBQStCOzRGQUEvQiwrQkFBK0I7OzRGQUEvQiwrQkFBK0I7a0JBSjNDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDRDQUE0QztvQkFDdEQsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkluaXQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9zdWJzY3JpcHRpb24nO1xuaW1wb3J0IHsgRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlJztcblxuLyoqXG4gKiBQcmludHMgb3V0IHRoZSBjdXJyZW50IHN0YXRlIHRvIHRoZSBjb25zb2xlLiBVc2VmdWwgZm9yIGRlYnVnZ2luZy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEFjdGlvbkxvZ2dlcl0sW2RieEFjdGlvbkNvbnRleHRMb2dnZXJdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhBY3Rpb25Db250ZXh0TG9nZ2VyRGlyZWN0aXZlIGV4dGVuZHMgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xuICByZWFkb25seSBzb3VyY2UgPSBpbmplY3QoRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UsIHsgaG9zdDogdHJ1ZSB9KTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YiA9IHRoaXMuc291cmNlLnN0YXRlJC5zdWJzY3JpYmUoKHN0YXRlKSA9PiB7XG4gICAgICBjb25zb2xlLmxvZygnZGJ4QWN0aW9uTG9nZ2VyIC0gc3RhdGU6ICcsIHN0YXRlKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './action.logger.directive';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvZGVidWcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYWN0aW9uLmxvZ2dlci5kaXJlY3RpdmUnO1xuIl19
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export * from './auto';
|
|
2
|
-
export * from './context';
|
|
3
|
-
export * from './debug';
|
|
4
|
-
export * from './map';
|
|
5
|
-
export * from './state';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxPQUFPLENBQUM7QUFDdEIsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2F1dG8nO1xuZXhwb3J0ICogZnJvbSAnLi9jb250ZXh0JztcbmV4cG9ydCAqIGZyb20gJy4vZGVidWcnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXAnO1xuZXhwb3J0ICogZnJvbSAnLi9zdGF0ZSc7XG4iXX0=
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { Directive, inject } from '@angular/core';
|
|
2
|
-
import { actionContextStoreSourceMap, ActionContextStoreSourceMap } from './action.map';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
/**
|
|
5
|
-
* Context used for providing actions based on the action key.
|
|
6
|
-
*
|
|
7
|
-
* This is useful for passing action contexts around via the providers instead of explicit injection.
|
|
8
|
-
*/
|
|
9
|
-
export class DbxActionContextMapDirective {
|
|
10
|
-
actionContextStoreSourceMap = inject(ActionContextStoreSourceMap);
|
|
11
|
-
ngOnDestroy() {
|
|
12
|
-
this.actionContextStoreSourceMap.destroy();
|
|
13
|
-
}
|
|
14
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionContextMapDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
15
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DbxActionContextMapDirective, isStandalone: true, selector: "[dbxActionContextMap]", providers: [
|
|
16
|
-
{
|
|
17
|
-
provide: ActionContextStoreSourceMap,
|
|
18
|
-
useFactory: actionContextStoreSourceMap
|
|
19
|
-
}
|
|
20
|
-
], exportAs: ["actionMap"], ngImport: i0 });
|
|
21
|
-
}
|
|
22
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionContextMapDirective, decorators: [{
|
|
23
|
-
type: Directive,
|
|
24
|
-
args: [{
|
|
25
|
-
selector: '[dbxActionContextMap]',
|
|
26
|
-
providers: [
|
|
27
|
-
{
|
|
28
|
-
provide: ActionContextStoreSourceMap,
|
|
29
|
-
useFactory: actionContextStoreSourceMap
|
|
30
|
-
}
|
|
31
|
-
],
|
|
32
|
-
exportAs: 'actionMap',
|
|
33
|
-
standalone: true
|
|
34
|
-
}]
|
|
35
|
-
}] });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLm1hcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvbWFwL2FjdGlvbi5tYXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFFeEY7Ozs7R0FJRztBQVlILE1BQU0sT0FBTyw0QkFBNEI7SUFDOUIsMkJBQTJCLEdBQUcsTUFBTSxDQUFDLDJCQUEyQixDQUFDLENBQUM7SUFFM0UsV0FBVztRQUNULElBQUksQ0FBQywyQkFBMkIsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM3QyxDQUFDO3dHQUxVLDRCQUE0Qjs0RkFBNUIsNEJBQTRCLG9FQVQ1QjtZQUNUO2dCQUNFLE9BQU8sRUFBRSwyQkFBMkI7Z0JBQ3BDLFVBQVUsRUFBRSwyQkFBMkI7YUFDeEM7U0FDRjs7NEZBSVUsNEJBQTRCO2tCQVh4QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsMkJBQTJCOzRCQUNwQyxVQUFVLEVBQUUsMkJBQTJCO3lCQUN4QztxQkFDRjtvQkFDRCxRQUFRLEVBQUUsV0FBVztvQkFDckIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBpbmplY3QsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgYWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwLCBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXAgfSBmcm9tICcuL2FjdGlvbi5tYXAnO1xuXG4vKipcbiAqIENvbnRleHQgdXNlZCBmb3IgcHJvdmlkaW5nIGFjdGlvbnMgYmFzZWQgb24gdGhlIGFjdGlvbiBrZXkuXG4gKlxuICogVGhpcyBpcyB1c2VmdWwgZm9yIHBhc3NpbmcgYWN0aW9uIGNvbnRleHRzIGFyb3VuZCB2aWEgdGhlIHByb3ZpZGVycyBpbnN0ZWFkIG9mIGV4cGxpY2l0IGluamVjdGlvbi5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEFjdGlvbkNvbnRleHRNYXBdJyxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogQWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwLFxuICAgICAgdXNlRmFjdG9yeTogYWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwXG4gICAgfVxuICBdLFxuICBleHBvcnRBczogJ2FjdGlvbk1hcCcsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4QWN0aW9uQ29udGV4dE1hcERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHJlYWRvbmx5IGFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZU1hcCA9IGluamVjdChBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXApO1xuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuYWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwLmRlc3Ryb3koKTtcbiAgfVxufVxuIl19
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { filterMaybe } from '@dereekb/rxjs';
|
|
2
|
-
import { Directive, inject, input } from '@angular/core';
|
|
3
|
-
import { switchMap } from 'rxjs';
|
|
4
|
-
import { ActionContextStoreSourceMap } from './action.map';
|
|
5
|
-
import { provideSecondaryActionStoreSource } from '../../action.store.source.provide';
|
|
6
|
-
import { toObservable } from '@angular/core/rxjs-interop';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
/**
|
|
9
|
-
* Directive that provides a ActionContextStoreSource using the input key and DbxActionContextMapDirective.
|
|
10
|
-
*/
|
|
11
|
-
export class DbxActionFromMapDirective {
|
|
12
|
-
_actionContextStoreSourceMap = inject(ActionContextStoreSourceMap);
|
|
13
|
-
key = input(undefined, { alias: 'dbxActionFromMap' });
|
|
14
|
-
key$ = toObservable(this.key);
|
|
15
|
-
store$ = this.key$.pipe(filterMaybe(), switchMap((x) => this._actionContextStoreSourceMap.sourceForKey(x).store$));
|
|
16
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionFromMapDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
17
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionFromMapDirective, isStandalone: true, selector: "[dbxActionFromMap]", inputs: { key: { classPropertyName: "key", publicName: "dbxActionFromMap", isSignal: true, isRequired: false, transformFunction: null } }, providers: provideSecondaryActionStoreSource(DbxActionFromMapDirective), ngImport: i0 });
|
|
18
|
-
}
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionFromMapDirective, decorators: [{
|
|
20
|
-
type: Directive,
|
|
21
|
-
args: [{
|
|
22
|
-
selector: '[dbxActionFromMap]',
|
|
23
|
-
providers: provideSecondaryActionStoreSource(DbxActionFromMapDirective),
|
|
24
|
-
standalone: true
|
|
25
|
-
}]
|
|
26
|
-
}] });
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLm1hcC5rZXkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWNvcmUvc3JjL2xpYi9hY3Rpb24vZGlyZWN0aXZlL21hcC9hY3Rpb24ubWFwLmtleS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqQyxPQUFPLEVBQUUsMkJBQTJCLEVBQWEsTUFBTSxjQUFjLENBQUM7QUFFdEUsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQUUxRDs7R0FFRztBQU1ILE1BQU0sT0FBTyx5QkFBeUI7SUFDbkIsNEJBQTRCLEdBQUcsTUFBTSxDQUFDLDJCQUEyQixDQUFDLENBQUM7SUFFM0UsR0FBRyxHQUFHLEtBQUssQ0FBbUIsU0FBUyxFQUFFLEVBQUUsS0FBSyxFQUFFLGtCQUFrQixFQUFFLENBQUMsQ0FBQztJQUN4RSxJQUFJLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUU5QixNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQzlCLFdBQVcsRUFBRSxFQUNiLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLDRCQUE0QixDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FDM0UsQ0FBQzt3R0FUUyx5QkFBeUI7NEZBQXpCLHlCQUF5Qiw0TUFIekIsaUNBQWlDLENBQUMseUJBQXlCLENBQUM7OzRGQUc1RCx5QkFBeUI7a0JBTHJDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsU0FBUyxFQUFFLGlDQUFpQywyQkFBMkI7b0JBQ3ZFLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZpbHRlck1heWJlIH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIGluamVjdCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHR5cGUgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwLCBBY3Rpb25LZXkgfSBmcm9tICcuL2FjdGlvbi5tYXAnO1xuaW1wb3J0IHsgU2Vjb25kYXJ5QWN0aW9uQ29udGV4dFN0b3JlU291cmNlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLnN0b3JlLnNvdXJjZSc7XG5pbXBvcnQgeyBwcm92aWRlU2Vjb25kYXJ5QWN0aW9uU3RvcmVTb3VyY2UgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlLnByb3ZpZGUnO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0aGF0IHByb3ZpZGVzIGEgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlIHVzaW5nIHRoZSBpbnB1dCBrZXkgYW5kIERieEFjdGlvbkNvbnRleHRNYXBEaXJlY3RpdmUuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhBY3Rpb25Gcm9tTWFwXScsXG4gIHByb3ZpZGVyczogcHJvdmlkZVNlY29uZGFyeUFjdGlvblN0b3JlU291cmNlKERieEFjdGlvbkZyb21NYXBEaXJlY3RpdmUpLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERieEFjdGlvbkZyb21NYXBEaXJlY3RpdmUgaW1wbGVtZW50cyBTZWNvbmRhcnlBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IF9hY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXAgPSBpbmplY3QoQWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwKTtcblxuICByZWFkb25seSBrZXkgPSBpbnB1dDxNYXliZTxBY3Rpb25LZXk+Pih1bmRlZmluZWQsIHsgYWxpYXM6ICdkYnhBY3Rpb25Gcm9tTWFwJyB9KTtcbiAgcmVhZG9ubHkga2V5JCA9IHRvT2JzZXJ2YWJsZSh0aGlzLmtleSk7XG5cbiAgcmVhZG9ubHkgc3RvcmUkID0gdGhpcy5rZXkkLnBpcGUoXG4gICAgZmlsdGVyTWF5YmUoKSxcbiAgICBzd2l0Y2hNYXAoKHgpID0+IHRoaXMuX2FjdGlvbkNvbnRleHRTdG9yZVNvdXJjZU1hcC5zb3VyY2VGb3JLZXkoeCkuc3RvcmUkKVxuICApO1xufVxuIl19
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { BehaviorSubject, distinctUntilChanged, map, of, shareReplay, switchMap } from 'rxjs';
|
|
2
|
-
import { actionContextStoreSourcePipe } from '../../action.store.source';
|
|
3
|
-
/**
|
|
4
|
-
* Map that returns sources for ActionKey values.
|
|
5
|
-
*/
|
|
6
|
-
export class ActionContextStoreSourceMap {
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* Creates a new ActionContextStoreSourceMap.
|
|
10
|
-
*
|
|
11
|
-
* @returns A new ActionContextStoreSourceMap.
|
|
12
|
-
*/
|
|
13
|
-
export function actionContextStoreSourceMap() {
|
|
14
|
-
const _actionKeySourceMap = new BehaviorSubject(new Map());
|
|
15
|
-
const actionKeySourceMap$ = _actionKeySourceMap.asObservable();
|
|
16
|
-
function updateMap(fn) {
|
|
17
|
-
const currentMap = _actionKeySourceMap.value;
|
|
18
|
-
const nextMap = fn(currentMap) ?? currentMap;
|
|
19
|
-
_actionKeySourceMap.next(nextMap);
|
|
20
|
-
}
|
|
21
|
-
function sourceForKey(key) {
|
|
22
|
-
const _store$ = actionKeySourceMap$.pipe(map((x) => x.get(key)), distinctUntilChanged(), switchMap((x) => x?.store$ ?? of(undefined)), shareReplay(1));
|
|
23
|
-
const source = {
|
|
24
|
-
store$: actionContextStoreSourcePipe(_store$)
|
|
25
|
-
};
|
|
26
|
-
return source;
|
|
27
|
-
}
|
|
28
|
-
function addStoreSource(key, source) {
|
|
29
|
-
updateMap((actionKeySourceMap) => {
|
|
30
|
-
if (actionKeySourceMap.has(key)) {
|
|
31
|
-
throw new Error(`Key already existed for "${key}" in map. Ensure the previous store is removed before setting another.`);
|
|
32
|
-
}
|
|
33
|
-
else if (!source) {
|
|
34
|
-
throw new Error('addStoreSource requires a source.');
|
|
35
|
-
}
|
|
36
|
-
actionKeySourceMap.set(key, source);
|
|
37
|
-
return actionKeySourceMap;
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
function removeStoreSource(key) {
|
|
41
|
-
updateMap((actionKeySourceMap) => {
|
|
42
|
-
if (!actionKeySourceMap.delete(key)) {
|
|
43
|
-
console.warn('removeStore called and no value was found.');
|
|
44
|
-
}
|
|
45
|
-
return actionKeySourceMap;
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
const result = {
|
|
49
|
-
actionKeySourceMap$: actionKeySourceMap$,
|
|
50
|
-
sourceForKey: sourceForKey,
|
|
51
|
-
addStoreSource: addStoreSource,
|
|
52
|
-
removeStoreSource: removeStoreSource,
|
|
53
|
-
destroy: () => {
|
|
54
|
-
_actionKeySourceMap.complete();
|
|
55
|
-
}
|
|
56
|
-
};
|
|
57
|
-
return result;
|
|
58
|
-
}
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLm1hcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1jb3JlL3NyYy9saWIvYWN0aW9uL2RpcmVjdGl2ZS9tYXAvYWN0aW9uLm1hcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBbUIsRUFBRSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0csT0FBTyxFQUFpQyw0QkFBNEIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBUXhHOztHQUVHO0FBQ0gsTUFBTSxPQUFnQiwyQkFBMkI7Q0EwQmhEO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSwyQkFBMkI7SUFDekMsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLGVBQWUsQ0FBaUQsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQzNHLE1BQU0sbUJBQW1CLEdBQUcsbUJBQW1CLENBQUMsWUFBWSxFQUFFLENBQUM7SUFFL0QsU0FBUyxTQUFTLENBQUMsRUFBa0g7UUFDbkksTUFBTSxVQUFVLEdBQUcsbUJBQW1CLENBQUMsS0FBSyxDQUFDO1FBQzdDLE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxVQUFVLENBQUM7UUFDN0MsbUJBQW1CLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxTQUFTLFlBQVksQ0FBQyxHQUFjO1FBQ2xDLE1BQU0sT0FBTyxHQUFHLG1CQUFtQixDQUFDLElBQUksQ0FDdEMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQ3RCLG9CQUFvQixFQUFFLEVBQ3RCLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLE1BQU0sSUFBSSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsRUFDNUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7UUFFRixNQUFNLE1BQU0sR0FBbUM7WUFDN0MsTUFBTSxFQUFFLDRCQUE0QixDQUFDLE9BQU8sQ0FBQztTQUM5QyxDQUFDO1FBRUYsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELFNBQVMsY0FBYyxDQUFDLEdBQWMsRUFBRSxNQUFzQztRQUM1RSxTQUFTLENBQUMsQ0FBQyxrQkFBa0IsRUFBRSxFQUFFO1lBQy9CLElBQUksa0JBQWtCLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQ2hDLE1BQU0sSUFBSSxLQUFLLENBQUMsNEJBQTRCLEdBQUcsd0VBQXdFLENBQUMsQ0FBQztZQUMzSCxDQUFDO2lCQUFNLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDbkIsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO1lBQ3ZELENBQUM7WUFFRCxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ3BDLE9BQU8sa0JBQWtCLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsU0FBUyxpQkFBaUIsQ0FBQyxHQUFjO1FBQ3ZDLFNBQVMsQ0FBQyxDQUFDLGtCQUFrQixFQUFFLEVBQUU7WUFDL0IsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUNwQyxPQUFPLENBQUMsSUFBSSxDQUFDLDRDQUE0QyxDQUFDLENBQUM7WUFDN0QsQ0FBQztZQUVELE9BQU8sa0JBQWtCLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsTUFBTSxNQUFNLEdBQXNDO1FBQ2hELG1CQUFtQixFQUFFLG1CQUFtQjtRQUN4QyxZQUFZLEVBQUUsWUFBWTtRQUMxQixjQUFjLEVBQUUsY0FBYztRQUM5QixpQkFBaUIsRUFBRSxpQkFBaUI7UUFDcEMsT0FBTyxFQUFFLEdBQUcsRUFBRTtZQUNaLG1CQUFtQixDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pDLENBQUM7S0FDRixDQUFDO0lBRUYsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgdHlwZSBPYnNlcnZhYmxlLCBvZiwgc2hhcmVSZXBsYXksIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdHlwZSBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2UsIGFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZVBpcGUgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlJztcbmltcG9ydCB7IHR5cGUgRGVzdHJveWFibGUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcblxuLyoqXG4gKiBBcmJpdHJhcnkgc3RyaW5nIHVzZWQgdG8gaWRlbnRpZnkgYW4gYWN0aW9uLlxuICovXG5leHBvcnQgdHlwZSBBY3Rpb25LZXkgPSBzdHJpbmc7XG5cbi8qKlxuICogTWFwIHRoYXQgcmV0dXJucyBzb3VyY2VzIGZvciBBY3Rpb25LZXkgdmFsdWVzLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwPFQgPSB1bmtub3duLCBPID0gdW5rbm93bj4gaW1wbGVtZW50cyBEZXN0cm95YWJsZSB7XG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSByZWFkLW9ubHkgbWFwIG9mIGFjdGlvbiBrZXlzIHRvIHNvdXJjZXMuXG4gICAqL1xuICBhYnN0cmFjdCByZWFkb25seSBhY3Rpb25LZXlTb3VyY2VNYXAkOiBPYnNlcnZhYmxlPE1hcDxBY3Rpb25LZXksIEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZTxULCBPPj4+O1xuICAvKipcbiAgICogUmV0dXJucyBhIEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZSBmb3IgdGhlIGlucHV0IGFjdGlvbiBrZXkuXG4gICAqXG4gICAqIEBwYXJhbSBrZXkgQWN0aW9uIGtleSB0byByZXRyaWV2ZSB0aGUgc291cmNlIGZvci5cbiAgICovXG4gIGFic3RyYWN0IHNvdXJjZUZvcktleShrZXk6IEFjdGlvbktleSk6IEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZTxULCBPPjtcbiAgLyoqXG4gICAqIEFkZHMgdGhlIHN0b3JlIHNvdXJjZSBmb3IgdGhlIGlucHV0IGtleS5cbiAgICogQHBhcmFtIGtleSBBY3Rpb24ga2V5IHRvIGFkZCB0aGUgc291cmNlIGZvci5cbiAgICogQHBhcmFtIHNvdXJjZSBTdG9yZSBzb3VyY2UgdG8gYWRkLlxuICAgKi9cbiAgYWJzdHJhY3QgYWRkU3RvcmVTb3VyY2Uoa2V5OiBBY3Rpb25LZXksIHNvdXJjZTogQWN0aW9uQ29udGV4dFN0b3JlU291cmNlPFQsIE8+KTogdm9pZDtcbiAgLyoqXG4gICAqIFJlbW92ZXMgdGhlIHN0b3JlIHNvdXJjZSBmb3IgdGhlIGlucHV0IGtleS5cbiAgICogQHBhcmFtIGtleSBBY3Rpb24ga2V5IHRvIHJlbW92ZSB0aGUgc291cmNlIGZvci5cbiAgICovXG4gIGFic3RyYWN0IHJlbW92ZVN0b3JlU291cmNlKGtleTogQWN0aW9uS2V5KTogdm9pZDtcbiAgLyoqXG4gICAqIERlc3Ryb3lzIHRoZSBtYXAuXG4gICAqL1xuICBhYnN0cmFjdCBkZXN0cm95KCk6IHZvaWQ7XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIG5ldyBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXAuXG4gKlxuICogQHJldHVybnMgQSBuZXcgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwPFQgPSB1bmtub3duLCBPID0gdW5rbm93bj4oKTogQWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwPFQsIE8+IHtcbiAgY29uc3QgX2FjdGlvbktleVNvdXJjZU1hcCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWFwPEFjdGlvbktleSwgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlPFQsIE8+Pj4obmV3IE1hcCgpKTtcbiAgY29uc3QgYWN0aW9uS2V5U291cmNlTWFwJCA9IF9hY3Rpb25LZXlTb3VyY2VNYXAuYXNPYnNlcnZhYmxlKCk7XG5cbiAgZnVuY3Rpb24gdXBkYXRlTWFwKGZuOiAobWFwOiBNYXA8QWN0aW9uS2V5LCBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2U8VCwgTz4+KSA9PiBNYXA8QWN0aW9uS2V5LCBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2U8VCwgTz4+IHwgdm9pZCk6IHZvaWQge1xuICAgIGNvbnN0IGN1cnJlbnRNYXAgPSBfYWN0aW9uS2V5U291cmNlTWFwLnZhbHVlO1xuICAgIGNvbnN0IG5leHRNYXAgPSBmbihjdXJyZW50TWFwKSA/PyBjdXJyZW50TWFwO1xuICAgIF9hY3Rpb25LZXlTb3VyY2VNYXAubmV4dChuZXh0TWFwKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIHNvdXJjZUZvcktleShrZXk6IEFjdGlvbktleSk6IEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZTxULCBPPiB7XG4gICAgY29uc3QgX3N0b3JlJCA9IGFjdGlvbktleVNvdXJjZU1hcCQucGlwZShcbiAgICAgIG1hcCgoeCkgPT4geC5nZXQoa2V5KSksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgc3dpdGNoTWFwKCh4KSA9PiB4Py5zdG9yZSQgPz8gb2YodW5kZWZpbmVkKSksXG4gICAgICBzaGFyZVJlcGxheSgxKVxuICAgICk7XG5cbiAgICBjb25zdCBzb3VyY2U6IEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZTxULCBPPiA9IHtcbiAgICAgIHN0b3JlJDogYWN0aW9uQ29udGV4dFN0b3JlU291cmNlUGlwZShfc3RvcmUkKVxuICAgIH07XG5cbiAgICByZXR1cm4gc291cmNlO1xuICB9XG5cbiAgZnVuY3Rpb24gYWRkU3RvcmVTb3VyY2Uoa2V5OiBBY3Rpb25LZXksIHNvdXJjZTogQWN0aW9uQ29udGV4dFN0b3JlU291cmNlPFQsIE8+KTogdm9pZCB7XG4gICAgdXBkYXRlTWFwKChhY3Rpb25LZXlTb3VyY2VNYXApID0+IHtcbiAgICAgIGlmIChhY3Rpb25LZXlTb3VyY2VNYXAuaGFzKGtleSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBLZXkgYWxyZWFkeSBleGlzdGVkIGZvciBcIiR7a2V5fVwiIGluIG1hcC4gRW5zdXJlIHRoZSBwcmV2aW91cyBzdG9yZSBpcyByZW1vdmVkIGJlZm9yZSBzZXR0aW5nIGFub3RoZXIuYCk7XG4gICAgICB9IGVsc2UgaWYgKCFzb3VyY2UpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdhZGRTdG9yZVNvdXJjZSByZXF1aXJlcyBhIHNvdXJjZS4nKTtcbiAgICAgIH1cblxuICAgICAgYWN0aW9uS2V5U291cmNlTWFwLnNldChrZXksIHNvdXJjZSk7XG4gICAgICByZXR1cm4gYWN0aW9uS2V5U291cmNlTWFwO1xuICAgIH0pO1xuICB9XG5cbiAgZnVuY3Rpb24gcmVtb3ZlU3RvcmVTb3VyY2Uoa2V5OiBBY3Rpb25LZXkpOiB2b2lkIHtcbiAgICB1cGRhdGVNYXAoKGFjdGlvbktleVNvdXJjZU1hcCkgPT4ge1xuICAgICAgaWYgKCFhY3Rpb25LZXlTb3VyY2VNYXAuZGVsZXRlKGtleSkpIHtcbiAgICAgICAgY29uc29sZS53YXJuKCdyZW1vdmVTdG9yZSBjYWxsZWQgYW5kIG5vIHZhbHVlIHdhcyBmb3VuZC4nKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGFjdGlvbktleVNvdXJjZU1hcDtcbiAgICB9KTtcbiAgfVxuXG4gIGNvbnN0IHJlc3VsdDogQWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwPFQsIE8+ID0ge1xuICAgIGFjdGlvbktleVNvdXJjZU1hcCQ6IGFjdGlvbktleVNvdXJjZU1hcCQsXG4gICAgc291cmNlRm9yS2V5OiBzb3VyY2VGb3JLZXksXG4gICAgYWRkU3RvcmVTb3VyY2U6IGFkZFN0b3JlU291cmNlLFxuICAgIHJlbW92ZVN0b3JlU291cmNlOiByZW1vdmVTdG9yZVNvdXJjZSxcbiAgICBkZXN0cm95OiAoKSA9PiB7XG4gICAgICBfYWN0aW9uS2V5U291cmNlTWFwLmNvbXBsZXRlKCk7XG4gICAgfVxuICB9O1xuXG4gIHJldHVybiByZXN1bHQ7XG59XG4iXX0=
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { Directive, effect, inject, input } from '@angular/core';
|
|
2
|
-
import { ActionContextStoreSource } from '../../action.store.source';
|
|
3
|
-
import { ActionContextStoreSourceMap } from './action.map';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* Used to communicate with an dbxActionMap and set the ActionContextStore to the store based on the key.
|
|
7
|
-
*/
|
|
8
|
-
export class DbxActionMapSourceDirective {
|
|
9
|
-
_actionContextStoreSourceMap = inject(ActionContextStoreSourceMap);
|
|
10
|
-
source = inject(ActionContextStoreSource, { host: true });
|
|
11
|
-
key = input(undefined, { alias: 'dbxActionMapSource' });
|
|
12
|
-
_currentKey;
|
|
13
|
-
_keyEffect = effect(() => {
|
|
14
|
-
const nextKey = this.key();
|
|
15
|
-
if (this._currentKey !== nextKey) {
|
|
16
|
-
this._removeFromToStore();
|
|
17
|
-
}
|
|
18
|
-
this._currentKey = nextKey;
|
|
19
|
-
this._addToStore();
|
|
20
|
-
}, { allowSignalWrites: true });
|
|
21
|
-
ngOnDestroy() {
|
|
22
|
-
this._removeFromToStore();
|
|
23
|
-
}
|
|
24
|
-
_addToStore() {
|
|
25
|
-
if (this._currentKey) {
|
|
26
|
-
this._actionContextStoreSourceMap.addStoreSource(this._currentKey, this.source);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
_removeFromToStore() {
|
|
30
|
-
if (this._currentKey) {
|
|
31
|
-
this._actionContextStoreSourceMap.removeStoreSource(this._currentKey);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionMapSourceDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
35
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionMapSourceDirective, isStandalone: true, selector: "[dbxActionMapSource]", inputs: { key: { classPropertyName: "key", publicName: "dbxActionMapSource", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 });
|
|
36
|
-
}
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionMapSourceDirective, decorators: [{
|
|
38
|
-
type: Directive,
|
|
39
|
-
args: [{
|
|
40
|
-
selector: '[dbxActionMapSource]',
|
|
41
|
-
standalone: true
|
|
42
|
-
}]
|
|
43
|
-
}] });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLm1hcC5zb3VyY2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWNvcmUvc3JjL2xpYi9hY3Rpb24vZGlyZWN0aXZlL21hcC9hY3Rpb24ubWFwLnNvdXJjZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU1RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsMkJBQTJCLEVBQWEsTUFBTSxjQUFjLENBQUM7O0FBRXRFOztHQUVHO0FBS0gsTUFBTSxPQUFPLDJCQUEyQjtJQUNyQiw0QkFBNEIsR0FBRyxNQUFNLENBQUMsMkJBQTJCLENBQUMsQ0FBQztJQUUzRSxNQUFNLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFFMUQsR0FBRyxHQUFHLEtBQUssQ0FBbUIsU0FBUyxFQUFFLEVBQUUsS0FBSyxFQUFFLG9CQUFvQixFQUFFLENBQUMsQ0FBQztJQUMzRSxXQUFXLENBQW1CO0lBRW5CLFVBQVUsR0FBRyxNQUFNLENBQ3BDLEdBQUcsRUFBRTtRQUNILE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUUzQixJQUFJLElBQUksQ0FBQyxXQUFXLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDakMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDNUIsQ0FBQztRQUVELElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDO1FBQzNCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDLEVBQ0QsRUFBRSxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsQ0FDNUIsQ0FBQztJQUVGLFdBQVc7UUFDVCxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRU8sV0FBVztRQUNqQixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsNEJBQTRCLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2xGLENBQUM7SUFDSCxDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDeEUsQ0FBQztJQUNILENBQUM7d0dBcENVLDJCQUEyQjs0RkFBM0IsMkJBQTJCOzs0RkFBM0IsMkJBQTJCO2tCQUp2QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgT25EZXN0cm95LCBlZmZlY3QsIGluamVjdCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHR5cGUgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZSB9IGZyb20gJy4uLy4uL2FjdGlvbi5zdG9yZS5zb3VyY2UnO1xuaW1wb3J0IHsgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwLCBBY3Rpb25LZXkgfSBmcm9tICcuL2FjdGlvbi5tYXAnO1xuXG4vKipcbiAqIFVzZWQgdG8gY29tbXVuaWNhdGUgd2l0aCBhbiBkYnhBY3Rpb25NYXAgYW5kIHNldCB0aGUgQWN0aW9uQ29udGV4dFN0b3JlIHRvIHRoZSBzdG9yZSBiYXNlZCBvbiB0aGUga2V5LlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZGJ4QWN0aW9uTWFwU291cmNlXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4QWN0aW9uTWFwU291cmNlRGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfYWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwID0gaW5qZWN0KEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZU1hcCk7XG5cbiAgcmVhZG9ubHkgc291cmNlID0gaW5qZWN0KEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZSwgeyBob3N0OiB0cnVlIH0pO1xuXG4gIHJlYWRvbmx5IGtleSA9IGlucHV0PE1heWJlPEFjdGlvbktleT4+KHVuZGVmaW5lZCwgeyBhbGlhczogJ2RieEFjdGlvbk1hcFNvdXJjZScgfSk7XG4gIHByaXZhdGUgX2N1cnJlbnRLZXk6IE1heWJlPEFjdGlvbktleT47XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IF9rZXlFZmZlY3QgPSBlZmZlY3QoXG4gICAgKCkgPT4ge1xuICAgICAgY29uc3QgbmV4dEtleSA9IHRoaXMua2V5KCk7XG5cbiAgICAgIGlmICh0aGlzLl9jdXJyZW50S2V5ICE9PSBuZXh0S2V5KSB7XG4gICAgICAgIHRoaXMuX3JlbW92ZUZyb21Ub1N0b3JlKCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuX2N1cnJlbnRLZXkgPSBuZXh0S2V5O1xuICAgICAgdGhpcy5fYWRkVG9TdG9yZSgpO1xuICAgIH0sXG4gICAgeyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9XG4gICk7XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fcmVtb3ZlRnJvbVRvU3RvcmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2FkZFRvU3RvcmUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2N1cnJlbnRLZXkpIHtcbiAgICAgIHRoaXMuX2FjdGlvbkNvbnRleHRTdG9yZVNvdXJjZU1hcC5hZGRTdG9yZVNvdXJjZSh0aGlzLl9jdXJyZW50S2V5LCB0aGlzLnNvdXJjZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfcmVtb3ZlRnJvbVRvU3RvcmUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2N1cnJlbnRLZXkpIHtcbiAgICAgIHRoaXMuX2FjdGlvbkNvbnRleHRTdG9yZVNvdXJjZU1hcC5yZW1vdmVTdG9yZVNvdXJjZSh0aGlzLl9jdXJyZW50S2V5KTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { asObservable, combineLatestFromMapValuesObsFn } from '@dereekb/rxjs';
|
|
2
|
-
import { map, switchMap } from 'rxjs';
|
|
3
|
-
import { reduceBooleansWithOrFn } from '@dereekb/util';
|
|
4
|
-
/**
|
|
5
|
-
* Creates a new ActionContextStoreSourceMapReader from the input.
|
|
6
|
-
|
|
7
|
-
* @param actionKeySourceMap$
|
|
8
|
-
*/
|
|
9
|
-
export function actionContextStoreSourceMapReader(actionKeySourceMap$) {
|
|
10
|
-
const sourceMap$ = asObservable(actionKeySourceMap$);
|
|
11
|
-
function checkAnyAre(mapFn, emptyArrayValue) {
|
|
12
|
-
return reduceFromAllSources(mapFn, reduceBooleansWithOrFn(emptyArrayValue));
|
|
13
|
-
}
|
|
14
|
-
function reduceFromAllSources(mapFn, reduceFn) {
|
|
15
|
-
return fromAllSources(mapFn).pipe(map(reduceFn));
|
|
16
|
-
}
|
|
17
|
-
function fromAllSources(mapFn) {
|
|
18
|
-
return sourceMap$.pipe(switchMap(combineLatestFromMapValuesObsFn((x) => x.store$.pipe(switchMap(mapFn)))));
|
|
19
|
-
}
|
|
20
|
-
return {
|
|
21
|
-
actionKeySourceMap$: sourceMap$,
|
|
22
|
-
fromAllSources,
|
|
23
|
-
checkAny: checkAnyAre,
|
|
24
|
-
reduceFromAllSources
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Returns an Observable of the results of the mapFn for each source in the actionKeySourceMap$.
|
|
29
|
-
*
|
|
30
|
-
* @param actionKeySourceMap$ Observable of the action key source map.
|
|
31
|
-
* @param mapFn Function to apply to each source.
|
|
32
|
-
* @returns Observable of the results of the mapFn for each source.
|
|
33
|
-
*/
|
|
34
|
-
export function fromAllActionContextStoreSourceMapSources(actionKeySourceMap$, mapFn) {
|
|
35
|
-
return asObservable(actionKeySourceMap$).pipe(switchMap((x) => x.actionKeySourceMap$), switchMap(combineLatestFromMapValuesObsFn((x) => x.store$.pipe(switchMap(mapFn)))));
|
|
36
|
-
}
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLm1hcC51dGlsaXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWNvcmUvc3JjL2xpYi9hY3Rpb24vZGlyZWN0aXZlL21hcC9hY3Rpb24ubWFwLnV0aWxpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSwrQkFBK0IsRUFBZ0QsTUFBTSxlQUFlLENBQUM7QUFDNUgsT0FBTyxFQUFFLEdBQUcsRUFBbUIsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSXZELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQW1DdkQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxpQ0FBaUMsQ0FBMkIsbUJBQXNGO0lBQ2hLLE1BQU0sVUFBVSxHQUFHLFlBQVksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBRXJELFNBQVMsV0FBVyxDQUFDLEtBQStELEVBQUUsZUFBeUI7UUFDN0csT0FBTyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsc0JBQXNCLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQsU0FBUyxvQkFBb0IsQ0FBTyxLQUF5RCxFQUFFLFFBQTRCO1FBQ3pILE9BQU8sY0FBYyxDQUFJLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsU0FBUyxjQUFjLENBQUksS0FBeUQ7UUFDbEYsT0FBTyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDN0csQ0FBQztJQUVELE9BQU87UUFDTCxtQkFBbUIsRUFBRSxVQUFVO1FBQy9CLGNBQWM7UUFDZCxRQUFRLEVBQUUsV0FBVztRQUNyQixvQkFBb0I7S0FDckIsQ0FBQztBQUNKLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUseUNBQXlDLENBQUksbUJBQW1FLEVBQUUsS0FBbUQ7SUFDbkwsT0FBTyxZQUFZLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxJQUFJLENBQzNDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLEVBQ3ZDLFNBQVMsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUNuRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFzT2JzZXJ2YWJsZSwgY29tYmluZUxhdGVzdEZyb21NYXBWYWx1ZXNPYnNGbiwgdHlwZSBJc0NoZWNrRnVuY3Rpb24sIHR5cGUgT2JzZXJ2YWJsZU9yVmFsdWUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IG1hcCwgdHlwZSBPYnNlcnZhYmxlLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHR5cGUgQWN0aW9uQ29udGV4dFN0b3JlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLnN0b3JlJztcbmltcG9ydCB7IHR5cGUgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwLCB0eXBlIEFjdGlvbktleSB9IGZyb20gJy4vYWN0aW9uLm1hcCc7XG5pbXBvcnQgeyB0eXBlIEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZSB9IGZyb20gJy4uLy4uL2FjdGlvbi5zdG9yZS5zb3VyY2UnO1xuaW1wb3J0IHsgcmVkdWNlQm9vbGVhbnNXaXRoT3JGbiB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuXG4vKipcbiAqIFV0aWxpdHkgaW50ZXJmYWNlIHRoYXQgcHJvdmlkZXMgYSBzZXQgb2YgZnVuY3Rpb25zIHRvIHJlYWQgZnJvbSBhbiBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwUmVhZGVyPFQgPSB1bmtub3duLCBPID0gdW5rbm93bj4ge1xuICAvKipcbiAgICogVGhlIGlucHV0IGtleSBzb3VyY2UgbWFwLlxuICAgKi9cbiAgcmVhZG9ubHkgYWN0aW9uS2V5U291cmNlTWFwJDogT2JzZXJ2YWJsZTxNYXA8QWN0aW9uS2V5LCBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2U8VCwgTz4+PjtcblxuICAvKipcbiAgICogQ2hlY2tzIGlmIGFueSBvZiB0aGUgc3RvcmVzIGluIHRoZSBtYXAgbWF0Y2ggdGhlIGlucHV0IGNoZWNrRnVuY3Rpb24uXG4gICAqXG4gICAqIEBwYXJhbSBjaGVja0Z1bmN0aW9uIEZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2ggc3RvcmUuXG4gICAqIEBwYXJhbSBlbXB0eUFycmF5VmFsdWUgVmFsdWUgdG8gcmV0dXJuIGlmIHRoZSBtYXAgaXMgZW1wdHkuXG4gICAqL1xuICBjaGVja0FueShjaGVja0Z1bmN0aW9uOiBJc0NoZWNrRnVuY3Rpb248QWN0aW9uQ29udGV4dFN0b3JlPFQsIE8+PiwgZW1wdHlBcnJheVZhbHVlPzogYm9vbGVhbik6IE9ic2VydmFibGU8Ym9vbGVhbj47XG5cbiAgLyoqXG4gICAqIFJlZHVjZXMgYSB2YWx1ZSBmcm9tIGFsbCBzdG9yZXMgaW4gdGhlIG1hcC5cbiAgICpcbiAgICogQHBhcmFtIG1hcEZuIEZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2ggc3RvcmUuXG4gICAqIEBwYXJhbSByZWR1Y2VGbiBGdW5jdGlvbiB0byBhcHBseSB0byB0aGUgcmVzdWx0cyBvZiB0aGUgbWFwRm4uXG4gICAqL1xuICByZWR1Y2VGcm9tQWxsU291cmNlczxYLCBZPihtYXBGbjogKGlucHV0OiBBY3Rpb25Db250ZXh0U3RvcmU8VCwgTz4pID0+IE9ic2VydmFibGU8WD4sIHJlZHVjZUZuOiAodmFsdWVzOiBYW10pID0+IFkpOiBPYnNlcnZhYmxlPFk+O1xuXG4gIC8qKlxuICAgKiBSZWFkcyBhIHZhbHVlIGZyb20gZWFjaCBzdG9yZSBpbiB0aGUgbWFwIGFuZCByZXR1cm5zIGFuIGFycmF5IG9mIHRoZSByZXN1bHRzLlxuICAgKlxuICAgKiBAcGFyYW0gbWFwRm4gRnVuY3Rpb24gdG8gYXBwbHkgdG8gZWFjaCBzdG9yZS5cbiAgICovXG4gIGZyb21BbGxTb3VyY2VzPFk+KG1hcEZuOiAoaW5wdXQ6IEFjdGlvbkNvbnRleHRTdG9yZTxULCBPPikgPT4gT2JzZXJ2YWJsZTxZPik6IE9ic2VydmFibGU8WVtdPjtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgbmV3IEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZU1hcFJlYWRlciBmcm9tIHRoZSBpbnB1dC5cbiBcbiAqIEBwYXJhbSBhY3Rpb25LZXlTb3VyY2VNYXAkIFxuICovXG5leHBvcnQgZnVuY3Rpb24gYWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwUmVhZGVyPFQgPSB1bmtub3duLCBPID0gdW5rbm93bj4oYWN0aW9uS2V5U291cmNlTWFwJDogT2JzZXJ2YWJsZU9yVmFsdWU8TWFwPEFjdGlvbktleSwgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlPFQsIE8+Pj4pOiBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXBSZWFkZXI8VCwgTz4ge1xuICBjb25zdCBzb3VyY2VNYXAkID0gYXNPYnNlcnZhYmxlKGFjdGlvbktleVNvdXJjZU1hcCQpO1xuXG4gIGZ1bmN0aW9uIGNoZWNrQW55QXJlKG1hcEZuOiAoaW5wdXQ6IEFjdGlvbkNvbnRleHRTdG9yZTxULCBPPikgPT4gT2JzZXJ2YWJsZTxib29sZWFuPiwgZW1wdHlBcnJheVZhbHVlPzogYm9vbGVhbik6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiByZWR1Y2VGcm9tQWxsU291cmNlcyhtYXBGbiwgcmVkdWNlQm9vbGVhbnNXaXRoT3JGbihlbXB0eUFycmF5VmFsdWUpKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIHJlZHVjZUZyb21BbGxTb3VyY2VzPFgsIFk+KG1hcEZuOiAoaW5wdXQ6IEFjdGlvbkNvbnRleHRTdG9yZTxULCBPPikgPT4gT2JzZXJ2YWJsZTxYPiwgcmVkdWNlRm46ICh2YWx1ZXM6IFhbXSkgPT4gWSk6IE9ic2VydmFibGU8WT4ge1xuICAgIHJldHVybiBmcm9tQWxsU291cmNlczxYPihtYXBGbikucGlwZShtYXAocmVkdWNlRm4pKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIGZyb21BbGxTb3VyY2VzPFk+KG1hcEZuOiAoaW5wdXQ6IEFjdGlvbkNvbnRleHRTdG9yZTxULCBPPikgPT4gT2JzZXJ2YWJsZTxZPik6IE9ic2VydmFibGU8WVtdPiB7XG4gICAgcmV0dXJuIHNvdXJjZU1hcCQucGlwZShzd2l0Y2hNYXAoY29tYmluZUxhdGVzdEZyb21NYXBWYWx1ZXNPYnNGbigoeCkgPT4geC5zdG9yZSQucGlwZShzd2l0Y2hNYXAobWFwRm4pKSkpKTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgYWN0aW9uS2V5U291cmNlTWFwJDogc291cmNlTWFwJCxcbiAgICBmcm9tQWxsU291cmNlcyxcbiAgICBjaGVja0FueTogY2hlY2tBbnlBcmUsXG4gICAgcmVkdWNlRnJvbUFsbFNvdXJjZXNcbiAgfTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIGFuIE9ic2VydmFibGUgb2YgdGhlIHJlc3VsdHMgb2YgdGhlIG1hcEZuIGZvciBlYWNoIHNvdXJjZSBpbiB0aGUgYWN0aW9uS2V5U291cmNlTWFwJC5cbiAqXG4gKiBAcGFyYW0gYWN0aW9uS2V5U291cmNlTWFwJCBPYnNlcnZhYmxlIG9mIHRoZSBhY3Rpb24ga2V5IHNvdXJjZSBtYXAuXG4gKiBAcGFyYW0gbWFwRm4gRnVuY3Rpb24gdG8gYXBwbHkgdG8gZWFjaCBzb3VyY2UuXG4gKiBAcmV0dXJucyBPYnNlcnZhYmxlIG9mIHRoZSByZXN1bHRzIG9mIHRoZSBtYXBGbiBmb3IgZWFjaCBzb3VyY2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tQWxsQWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwU291cmNlczxPPihhY3Rpb25LZXlTb3VyY2VNYXAkOiBPYnNlcnZhYmxlT3JWYWx1ZTxBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXA+LCBtYXBGbjogKGlucHV0OiBBY3Rpb25Db250ZXh0U3RvcmUpID0+IE9ic2VydmFibGU8Tz4pOiBPYnNlcnZhYmxlPE9bXT4ge1xuICByZXR1cm4gYXNPYnNlcnZhYmxlKGFjdGlvbktleVNvdXJjZU1hcCQpLnBpcGUoXG4gICAgc3dpdGNoTWFwKCh4KSA9PiB4LmFjdGlvbktleVNvdXJjZU1hcCQpLFxuICAgIHN3aXRjaE1hcChjb21iaW5lTGF0ZXN0RnJvbU1hcFZhbHVlc09ic0ZuKCh4KSA9PiB4LnN0b3JlJC5waXBlKHN3aXRjaE1hcChtYXBGbikpKSlcbiAgKTtcbn1cbiJdfQ==
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { Directive, inject, input } from '@angular/core';
|
|
2
|
-
import { AbstractSubscriptionDirective } from '../../../subscription';
|
|
3
|
-
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
4
|
-
import { actionContextStoreSourceMapReader } from './action.map.utility';
|
|
5
|
-
import { ActionContextStoreSourceMap } from './action.map';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export const DEFAULT_ACTION_MAP_WORKING_DISABLED_KEY = 'action_map_working_disable';
|
|
8
|
-
/**
|
|
9
|
-
* Used to communicate with an dbxActionMap and set the ActionContextStore to be disabled if any other element in the map is working.
|
|
10
|
-
*/
|
|
11
|
-
export class DbxActionMapWorkingDisableDirective extends AbstractSubscriptionDirective {
|
|
12
|
-
_actionContextStoreSourceMap = inject(ActionContextStoreSourceMap);
|
|
13
|
-
source = inject(DbxActionContextStoreSourceInstance, { host: true });
|
|
14
|
-
disabledKey = input(undefined, { alias: 'dbxActionMapWorkingDisable' });
|
|
15
|
-
areAnySourcesWorking$ = actionContextStoreSourceMapReader(this._actionContextStoreSourceMap.actionKeySourceMap$).checkAny((x) => x.isWorking$, false);
|
|
16
|
-
ngOnInit() {
|
|
17
|
-
this.sub = this.areAnySourcesWorking$.subscribe((x) => {
|
|
18
|
-
this.source.disable(this.disabledKey() || DEFAULT_ACTION_MAP_WORKING_DISABLED_KEY, x);
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
ngOnDestroy() {
|
|
22
|
-
super.ngOnDestroy();
|
|
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 });
|
|
27
|
-
}
|
|
28
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionMapWorkingDisableDirective, decorators: [{
|
|
29
|
-
type: Directive,
|
|
30
|
-
args: [{
|
|
31
|
-
selector: '[dbxActionMapWorkingDisable]',
|
|
32
|
-
standalone: true
|
|
33
|
-
}]
|
|
34
|
-
}] });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLm1hcC53b3JraW5nLmRpc2FibGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWNvcmUvc3JjL2xpYi9hY3Rpb24vZGlyZWN0aXZlL21hcC9hY3Rpb24ubWFwLndvcmtpbmcuZGlzYWJsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU1RSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVoRixPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxjQUFjLENBQUM7O0FBRTNELE1BQU0sQ0FBQyxNQUFNLHVDQUF1QyxHQUFHLDRCQUE0QixDQUFDO0FBRXBGOztHQUVHO0FBS0gsTUFBTSxPQUFPLG1DQUFvQyxTQUFRLDZCQUE2QjtJQUNuRSw0QkFBNEIsR0FBRyxNQUFNLENBQUMsMkJBQTJCLENBQUMsQ0FBQztJQUMzRSxNQUFNLEdBQUcsTUFBTSxDQUFDLG1DQUFtQyxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFFckUsV0FBVyxHQUFHLEtBQUssQ0FBOEIsU0FBUyxFQUFFLEVBQUUsS0FBSyxFQUFFLDRCQUE0QixFQUFFLENBQUMsQ0FBQztJQUVyRyxxQkFBcUIsR0FBRyxpQ0FBaUMsQ0FBQyxJQUFJLENBQUMsNEJBQTRCLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFFL0osUUFBUTtRQUNOLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ3BELElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSx1Q0FBdUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN4RixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUSxXQUFXO1FBQ2xCLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksdUNBQXVDLENBQUMsQ0FBQztJQUNwRixDQUFDO3dHQWpCVSxtQ0FBbUM7NEZBQW5DLG1DQUFtQzs7NEZBQW5DLG1DQUFtQztrQkFKL0MsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsOEJBQThCO29CQUN4QyxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIE9uSW5pdCwgT25EZXN0cm95LCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0eXBlIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL3N1YnNjcmlwdGlvbic7XG5pbXBvcnQgeyBEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZSB9IGZyb20gJy4uLy4uL2FjdGlvbi5zdG9yZS5zb3VyY2UnO1xuaW1wb3J0IHsgdHlwZSBEYnhBY3Rpb25EaXNhYmxlZEtleSB9IGZyb20gJy4uLy4uL2FjdGlvbic7XG5pbXBvcnQgeyBhY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXBSZWFkZXIgfSBmcm9tICcuL2FjdGlvbi5tYXAudXRpbGl0eSc7XG5pbXBvcnQgeyBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXAgfSBmcm9tICcuL2FjdGlvbi5tYXAnO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9BQ1RJT05fTUFQX1dPUktJTkdfRElTQUJMRURfS0VZID0gJ2FjdGlvbl9tYXBfd29ya2luZ19kaXNhYmxlJztcblxuLyoqXG4gKiBVc2VkIHRvIGNvbW11bmljYXRlIHdpdGggYW4gZGJ4QWN0aW9uTWFwIGFuZCBzZXQgdGhlIEFjdGlvbkNvbnRleHRTdG9yZSB0byBiZSBkaXNhYmxlZCBpZiBhbnkgb3RoZXIgZWxlbWVudCBpbiB0aGUgbWFwIGlzIHdvcmtpbmcuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhBY3Rpb25NYXBXb3JraW5nRGlzYWJsZV0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERieEFjdGlvbk1hcFdvcmtpbmdEaXNhYmxlRGlyZWN0aXZlIGV4dGVuZHMgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2FjdGlvbkNvbnRleHRTdG9yZVNvdXJjZU1hcCA9IGluamVjdChBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXApO1xuICByZWFkb25seSBzb3VyY2UgPSBpbmplY3QoRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UsIHsgaG9zdDogdHJ1ZSB9KTtcblxuICByZWFkb25seSBkaXNhYmxlZEtleSA9IGlucHV0PE1heWJlPERieEFjdGlvbkRpc2FibGVkS2V5Pj4odW5kZWZpbmVkLCB7IGFsaWFzOiAnZGJ4QWN0aW9uTWFwV29ya2luZ0Rpc2FibGUnIH0pO1xuXG4gIHJlYWRvbmx5IGFyZUFueVNvdXJjZXNXb3JraW5nJCA9IGFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZU1hcFJlYWRlcih0aGlzLl9hY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXAuYWN0aW9uS2V5U291cmNlTWFwJCkuY2hlY2tBbnkoKHgpID0+IHguaXNXb3JraW5nJCwgZmFsc2UpO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3ViID0gdGhpcy5hcmVBbnlTb3VyY2VzV29ya2luZyQuc3Vic2NyaWJlKCh4KSA9PiB7XG4gICAgICB0aGlzLnNvdXJjZS5kaXNhYmxlKHRoaXMuZGlzYWJsZWRLZXkoKSB8fCBERUZBVUxUX0FDVElPTl9NQVBfV09SS0lOR19ESVNBQkxFRF9LRVksIHgpO1xuICAgIH0pO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB0aGlzLnNvdXJjZS5lbmFibGUodGhpcy5kaXNhYmxlZEtleSgpIHx8IERFRkFVTFRfQUNUSU9OX01BUF9XT1JLSU5HX0RJU0FCTEVEX0tFWSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export * from './action.map.directive';
|
|
2
|
-
export * from './action.map.key.directive';
|
|
3
|
-
export * from './action.map.source.directive';
|
|
4
|
-
export * from './action.map';
|
|
5
|
-
export * from './action.map.utility';
|
|
6
|
-
export * from './action.map.working.disable.directive';
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvbWFwL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyx3Q0FBd0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYWN0aW9uLm1hcC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb24ubWFwLmtleS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb24ubWFwLnNvdXJjZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb24ubWFwJztcbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9uLm1hcC51dGlsaXR5JztcbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9uLm1hcC53b3JraW5nLmRpc2FibGUuZGlyZWN0aXZlJztcbiJdfQ==
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { Directive, inject, input } from '@angular/core';
|
|
2
|
-
import { AbstractSubscriptionDirective } from '../../../subscription';
|
|
3
|
-
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
4
|
-
import { toObservable } from '@angular/core/rxjs-interop';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export const APP_ACTION_DISABLED_DIRECTIVE_KEY = 'dbx_action_disabled';
|
|
7
|
-
/**
|
|
8
|
-
* Directive that allows disabling an action using the inputs.
|
|
9
|
-
*/
|
|
10
|
-
export class DbxActionDisabledDirective extends AbstractSubscriptionDirective {
|
|
11
|
-
source = inject((DbxActionContextStoreSourceInstance), { host: true });
|
|
12
|
-
disabled = input(false, { alias: 'dbxActionDisabled', transform: (value) => value !== false });
|
|
13
|
-
disabled$ = toObservable(this.disabled);
|
|
14
|
-
constructor() {
|
|
15
|
-
super();
|
|
16
|
-
this.sub = this.disabled$.subscribe((x) => {
|
|
17
|
-
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);
|
|
23
|
-
}
|
|
24
|
-
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 } }, usesInheritance: true, ngImport: i0 });
|
|
26
|
-
}
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionDisabledDirective, decorators: [{
|
|
28
|
-
type: Directive,
|
|
29
|
-
args: [{
|
|
30
|
-
selector: '[dbxActionDisabled]',
|
|
31
|
-
standalone: true
|
|
32
|
-
}]
|
|
33
|
-
}], ctorParameters: () => [] });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmRpc2FibGVkLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1jb3JlL3NyYy9saWIvYWN0aW9uL2RpcmVjdGl2ZS9zdGF0ZS9hY3Rpb24uZGlzYWJsZWQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWEsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBRTFELE1BQU0sQ0FBQyxNQUFNLGlDQUFpQyxHQUFHLHFCQUFxQixDQUFDO0FBRXZFOztHQUVHO0FBS0gsTUFBTSxPQUFPLDBCQUFpQyxTQUFRLDZCQUE2QjtJQUN4RSxNQUFNLEdBQUcsTUFBTSxDQUFDLENBQUEsbUNBQXlDLENBQUEsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBRTNFLFFBQVEsR0FBRyxLQUFLLENBQStCLEtBQUssRUFBRSxFQUFFLEtBQUssRUFBRSxtQkFBbUIsRUFBRSxTQUFTLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssS0FBSyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzdILFNBQVMsR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRWpEO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDeEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsaUNBQWlDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDNUQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRVEsV0FBVztRQUNsQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsaUNBQWlDLENBQUMsQ0FBQztJQUN4RCxDQUFDO3dHQWhCVSwwQkFBMEI7NEZBQTFCLDBCQUEwQjs7NEZBQTFCLDBCQUEwQjtrQkFKdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIE9uRGVzdHJveSwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdHlwZSBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9zdWJzY3JpcHRpb24nO1xuaW1wb3J0IHsgRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuZXhwb3J0IGNvbnN0IEFQUF9BQ1RJT05fRElTQUJMRURfRElSRUNUSVZFX0tFWSA9ICdkYnhfYWN0aW9uX2Rpc2FibGVkJztcblxuLyoqXG4gKiBEaXJlY3RpdmUgdGhhdCBhbGxvd3MgZGlzYWJsaW5nIGFuIGFjdGlvbiB1c2luZyB0aGUgaW5wdXRzLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZGJ4QWN0aW9uRGlzYWJsZWRdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhBY3Rpb25EaXNhYmxlZERpcmVjdGl2ZTxULCBPPiBleHRlbmRzIEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcmVhZG9ubHkgc291cmNlID0gaW5qZWN0KERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlPFQsIE8+LCB7IGhvc3Q6IHRydWUgfSk7XG5cbiAgcmVhZG9ubHkgZGlzYWJsZWQgPSBpbnB1dDxib29sZWFuLCBNYXliZTxib29sZWFuIHwgJyc+PihmYWxzZSwgeyBhbGlhczogJ2RieEFjdGlvbkRpc2FibGVkJywgdHJhbnNmb3JtOiAodmFsdWUpID0+IHZhbHVlICE9PSBmYWxzZSB9KTtcbiAgcmVhZG9ubHkgZGlzYWJsZWQkID0gdG9PYnNlcnZhYmxlKHRoaXMuZGlzYWJsZWQpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5zdWIgPSB0aGlzLmRpc2FibGVkJC5zdWJzY3JpYmUoKHgpID0+IHtcbiAgICAgIHRoaXMuc291cmNlLmRpc2FibGUoQVBQX0FDVElPTl9ESVNBQkxFRF9ESVJFQ1RJVkVfS0VZLCB4KTtcbiAgICB9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgdGhpcy5zb3VyY2UuZW5hYmxlKEFQUF9BQ1RJT05fRElTQUJMRURfRElSRUNUSVZFX0tFWSk7XG4gIH1cbn1cbiJdfQ==
|