@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,35 +0,0 @@
|
|
|
1
|
-
import { Directive, inject, input } from '@angular/core';
|
|
2
|
-
import { combineLatest } from 'rxjs';
|
|
3
|
-
import { AbstractSubscriptionDirective } from '../../../subscription';
|
|
4
|
-
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
5
|
-
import { toObservable } from '@angular/core/rxjs-interop';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export const APP_ACTION_DISABLED_ON_SUCCESS_DIRECTIVE_KEY = 'dbx_action_disabled_on_success';
|
|
8
|
-
/**
|
|
9
|
-
* Directive that will disable the action after the action completes successfully.
|
|
10
|
-
*/
|
|
11
|
-
export class DbxActionDisabledOnSuccessDirective extends AbstractSubscriptionDirective {
|
|
12
|
-
source = inject((DbxActionContextStoreSourceInstance), { host: true });
|
|
13
|
-
disabledOnSuccess = input(true, { alias: 'dbxActionDisabledOnSuccess', transform: (value) => value !== false });
|
|
14
|
-
disabledOnSuccess$ = toObservable(this.disabledOnSuccess);
|
|
15
|
-
constructor() {
|
|
16
|
-
super();
|
|
17
|
-
this.sub = combineLatest([this.disabledOnSuccess$, this.source.isSuccess$]).subscribe(([disableOnSuccess, success]) => {
|
|
18
|
-
this.source.disable(APP_ACTION_DISABLED_ON_SUCCESS_DIRECTIVE_KEY, disableOnSuccess && success);
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
ngOnDestroy() {
|
|
22
|
-
super.ngOnDestroy();
|
|
23
|
-
this.source.enable(APP_ACTION_DISABLED_ON_SUCCESS_DIRECTIVE_KEY);
|
|
24
|
-
}
|
|
25
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionDisabledOnSuccessDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
26
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionDisabledOnSuccessDirective, isStandalone: true, selector: "[dbxActionDisabledOnSuccess]", inputs: { disabledOnSuccess: { classPropertyName: "disabledOnSuccess", publicName: "dbxActionDisabledOnSuccess", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });
|
|
27
|
-
}
|
|
28
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionDisabledOnSuccessDirective, decorators: [{
|
|
29
|
-
type: Directive,
|
|
30
|
-
args: [{
|
|
31
|
-
selector: '[dbxActionDisabledOnSuccess]',
|
|
32
|
-
standalone: true
|
|
33
|
-
}]
|
|
34
|
-
}], ctorParameters: () => [] });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmRpc2FibGVvbnN1Y2Nlc3MuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWNvcmUvc3JjL2xpYi9hY3Rpb24vZGlyZWN0aXZlL3N0YXRlL2FjdGlvbi5kaXNhYmxlb25zdWNjZXNzLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFhLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFcEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyQyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBRTFELE1BQU0sQ0FBQyxNQUFNLDRDQUE0QyxHQUFHLGdDQUFnQyxDQUFDO0FBRTdGOztHQUVHO0FBS0gsTUFBTSxPQUFPLG1DQUEwQyxTQUFRLDZCQUE2QjtJQUNqRixNQUFNLEdBQUcsTUFBTSxDQUFDLENBQUEsbUNBQXlDLENBQUEsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBRTNFLGlCQUFpQixHQUFHLEtBQUssQ0FBK0IsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLDRCQUE0QixFQUFFLFNBQVMsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxLQUFLLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDOUksa0JBQWtCLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBRW5FO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsR0FBRyxHQUFHLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxPQUFPLENBQUMsRUFBRSxFQUFFO1lBQ3BILElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLDRDQUE0QyxFQUFFLGdCQUFnQixJQUFJLE9BQU8sQ0FBQyxDQUFDO1FBQ2pHLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVRLFdBQVc7UUFDbEIsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLDRDQUE0QyxDQUFDLENBQUM7SUFDbkUsQ0FBQzt3R0FoQlUsbUNBQW1DOzRGQUFuQyxtQ0FBbUM7OzRGQUFuQyxtQ0FBbUM7a0JBSi9DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDhCQUE4QjtvQkFDeEMsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkRlc3Ryb3ksIGluamVjdCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHR5cGUgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vc3Vic2NyaXB0aW9uJztcbmltcG9ydCB7IERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLnN0b3JlLnNvdXJjZSc7XG5pbXBvcnQgeyB0b09ic2VydmFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbmV4cG9ydCBjb25zdCBBUFBfQUNUSU9OX0RJU0FCTEVEX09OX1NVQ0NFU1NfRElSRUNUSVZFX0tFWSA9ICdkYnhfYWN0aW9uX2Rpc2FibGVkX29uX3N1Y2Nlc3MnO1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0aGF0IHdpbGwgZGlzYWJsZSB0aGUgYWN0aW9uIGFmdGVyIHRoZSBhY3Rpb24gY29tcGxldGVzIHN1Y2Nlc3NmdWxseS5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEFjdGlvbkRpc2FibGVkT25TdWNjZXNzXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4QWN0aW9uRGlzYWJsZWRPblN1Y2Nlc3NEaXJlY3RpdmU8VCwgTz4gZXh0ZW5kcyBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHJlYWRvbmx5IHNvdXJjZSA9IGluamVjdChEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZTxULCBPPiwgeyBob3N0OiB0cnVlIH0pO1xuXG4gIHJlYWRvbmx5IGRpc2FibGVkT25TdWNjZXNzID0gaW5wdXQ8Ym9vbGVhbiwgTWF5YmU8Ym9vbGVhbiB8ICcnPj4odHJ1ZSwgeyBhbGlhczogJ2RieEFjdGlvbkRpc2FibGVkT25TdWNjZXNzJywgdHJhbnNmb3JtOiAodmFsdWUpID0+IHZhbHVlICE9PSBmYWxzZSB9KTtcbiAgcmVhZG9ubHkgZGlzYWJsZWRPblN1Y2Nlc3MkID0gdG9PYnNlcnZhYmxlKHRoaXMuZGlzYWJsZWRPblN1Y2Nlc3MpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5zdWIgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLmRpc2FibGVkT25TdWNjZXNzJCwgdGhpcy5zb3VyY2UuaXNTdWNjZXNzJF0pLnN1YnNjcmliZSgoW2Rpc2FibGVPblN1Y2Nlc3MsIHN1Y2Nlc3NdKSA9PiB7XG4gICAgICB0aGlzLnNvdXJjZS5kaXNhYmxlKEFQUF9BQ1RJT05fRElTQUJMRURfT05fU1VDQ0VTU19ESVJFQ1RJVkVfS0VZLCBkaXNhYmxlT25TdWNjZXNzICYmIHN1Y2Nlc3MpO1xuICAgIH0pO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB0aGlzLnNvdXJjZS5lbmFibGUoQVBQX0FDVElPTl9ESVNBQkxFRF9PTl9TVUNDRVNTX0RJUkVDVElWRV9LRVkpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { Directive, inject, input } from '@angular/core';
|
|
2
|
-
import { combineLatest, delay } from 'rxjs';
|
|
3
|
-
import { AbstractSubscriptionDirective } from '../../../subscription';
|
|
4
|
-
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
5
|
-
import { toObservable } from '@angular/core/rxjs-interop';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export const APP_ACTION_ENFORCE_MODIFIED_DIRECTIVE_KEY = 'dbx_action_enforce_modified';
|
|
8
|
-
/**
|
|
9
|
-
* Directive that toggles disabling an action if the action is not marked modified.
|
|
10
|
-
*/
|
|
11
|
-
export class DbxActionEnforceModifiedDirective extends AbstractSubscriptionDirective {
|
|
12
|
-
source = inject(DbxActionContextStoreSourceInstance, { host: true });
|
|
13
|
-
enabled = input(true, { alias: 'dbxActionEnforceModified', transform: (value) => value !== false });
|
|
14
|
-
enabled$ = toObservable(this.enabled);
|
|
15
|
-
ngOnInit() {
|
|
16
|
-
this.sub = combineLatest([this.source.isModified$, this.enabled$])
|
|
17
|
-
.pipe(delay(0))
|
|
18
|
-
.subscribe(([modified, enableDirective]) => {
|
|
19
|
-
const disable = enableDirective && !modified;
|
|
20
|
-
this.source.disable(APP_ACTION_ENFORCE_MODIFIED_DIRECTIVE_KEY, disable);
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
ngOnDestroy() {
|
|
24
|
-
super.ngOnDestroy();
|
|
25
|
-
this.source.enable(APP_ACTION_ENFORCE_MODIFIED_DIRECTIVE_KEY);
|
|
26
|
-
}
|
|
27
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionEnforceModifiedDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
28
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionEnforceModifiedDirective, isStandalone: true, selector: "[dbxActionEnforceModified]", inputs: { enabled: { classPropertyName: "enabled", publicName: "dbxActionEnforceModified", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });
|
|
29
|
-
}
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionEnforceModifiedDirective, decorators: [{
|
|
31
|
-
type: Directive,
|
|
32
|
-
args: [{
|
|
33
|
-
selector: '[dbxActionEnforceModified]',
|
|
34
|
-
standalone: true
|
|
35
|
-
}]
|
|
36
|
-
}] });
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmVuZm9yY2UubW9kaWZpZWQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWNvcmUvc3JjL2xpYi9hY3Rpb24vZGlyZWN0aXZlL3N0YXRlL2FjdGlvbi5lbmZvcmNlLm1vZGlmaWVkLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTVFLE9BQU8sRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFMUQsTUFBTSxDQUFDLE1BQU0seUNBQXlDLEdBQUcsNkJBQTZCLENBQUM7QUFFdkY7O0dBRUc7QUFLSCxNQUFNLE9BQU8saUNBQWtDLFNBQVEsNkJBQTZCO0lBQ3pFLE1BQU0sR0FBRyxNQUFNLENBQUMsbUNBQW1DLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUVyRSxPQUFPLEdBQUcsS0FBSyxDQUErQixJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsMEJBQTBCLEVBQUUsU0FBUyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEtBQUssS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNsSSxRQUFRLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUUvQyxRQUFRO1FBQ04sSUFBSSxDQUFDLEdBQUcsR0FBRyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDL0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNkLFNBQVMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLGVBQWUsQ0FBQyxFQUFFLEVBQUU7WUFDekMsTUFBTSxPQUFPLEdBQUcsZUFBZSxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQzdDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLHlDQUF5QyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzFFLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVRLFdBQVc7UUFDbEIsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLHlDQUF5QyxDQUFDLENBQUM7SUFDaEUsQ0FBQzt3R0FsQlUsaUNBQWlDOzRGQUFqQyxpQ0FBaUM7OzRGQUFqQyxpQ0FBaUM7a0JBSjdDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDRCQUE0QjtvQkFDdEMsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkluaXQsIE9uRGVzdHJveSwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdHlwZSBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgZGVsYXkgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vc3Vic2NyaXB0aW9uJztcbmltcG9ydCB7IERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLnN0b3JlLnNvdXJjZSc7XG5pbXBvcnQgeyB0b09ic2VydmFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbmV4cG9ydCBjb25zdCBBUFBfQUNUSU9OX0VORk9SQ0VfTU9ESUZJRURfRElSRUNUSVZFX0tFWSA9ICdkYnhfYWN0aW9uX2VuZm9yY2VfbW9kaWZpZWQnO1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0aGF0IHRvZ2dsZXMgZGlzYWJsaW5nIGFuIGFjdGlvbiBpZiB0aGUgYWN0aW9uIGlzIG5vdCBtYXJrZWQgbW9kaWZpZWQuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhBY3Rpb25FbmZvcmNlTW9kaWZpZWRdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhBY3Rpb25FbmZvcmNlTW9kaWZpZWREaXJlY3RpdmUgZXh0ZW5kcyBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcmVhZG9ubHkgc291cmNlID0gaW5qZWN0KERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlLCB7IGhvc3Q6IHRydWUgfSk7XG5cbiAgcmVhZG9ubHkgZW5hYmxlZCA9IGlucHV0PGJvb2xlYW4sIE1heWJlPGJvb2xlYW4gfCAnJz4+KHRydWUsIHsgYWxpYXM6ICdkYnhBY3Rpb25FbmZvcmNlTW9kaWZpZWQnLCB0cmFuc2Zvcm06ICh2YWx1ZSkgPT4gdmFsdWUgIT09IGZhbHNlIH0pO1xuICByZWFkb25seSBlbmFibGVkJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLmVuYWJsZWQpO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3ViID0gY29tYmluZUxhdGVzdChbdGhpcy5zb3VyY2UuaXNNb2RpZmllZCQsIHRoaXMuZW5hYmxlZCRdKVxuICAgICAgLnBpcGUoZGVsYXkoMCkpXG4gICAgICAuc3Vic2NyaWJlKChbbW9kaWZpZWQsIGVuYWJsZURpcmVjdGl2ZV0pID0+IHtcbiAgICAgICAgY29uc3QgZGlzYWJsZSA9IGVuYWJsZURpcmVjdGl2ZSAmJiAhbW9kaWZpZWQ7XG4gICAgICAgIHRoaXMuc291cmNlLmRpc2FibGUoQVBQX0FDVElPTl9FTkZPUkNFX01PRElGSUVEX0RJUkVDVElWRV9LRVksIGRpc2FibGUpO1xuICAgICAgfSk7XG4gIH1cblxuICBvdmVycmlkZSBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgIHRoaXMuc291cmNlLmVuYWJsZShBUFBfQUNUSU9OX0VORk9SQ0VfTU9ESUZJRURfRElSRUNUSVZFX0tFWSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { map, tap, shareReplay, switchMap } from 'rxjs';
|
|
2
|
-
import { filterMaybe } from '@dereekb/rxjs';
|
|
3
|
-
import { Directive, inject, input } from '@angular/core';
|
|
4
|
-
import { AbstractSubscriptionDirective } from '../../../subscription';
|
|
5
|
-
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
6
|
-
import { toObservable } from '@angular/core/rxjs-interop';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
/**
|
|
9
|
-
* Directive that executes a function on ActionContextStore error.
|
|
10
|
-
*/
|
|
11
|
-
export class DbxActionErrorHandlerDirective extends AbstractSubscriptionDirective {
|
|
12
|
-
source = inject((DbxActionContextStoreSourceInstance), { host: true });
|
|
13
|
-
dbxActionErrorHandler = input();
|
|
14
|
-
errorFunction$ = toObservable(this.dbxActionErrorHandler).pipe(filterMaybe(), shareReplay(1));
|
|
15
|
-
ngOnInit() {
|
|
16
|
-
this.sub = this.errorFunction$
|
|
17
|
-
.pipe(switchMap((errorFunction) => this.source.error$.pipe(filterMaybe(), map((x) => [errorFunction, x]), tap(([errorFn, error]) => {
|
|
18
|
-
errorFn(error);
|
|
19
|
-
}))))
|
|
20
|
-
.subscribe();
|
|
21
|
-
}
|
|
22
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionErrorHandlerDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
23
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionErrorHandlerDirective, isStandalone: true, selector: "[dbxActionErrorHandler]", inputs: { dbxActionErrorHandler: { classPropertyName: "dbxActionErrorHandler", publicName: "dbxActionErrorHandler", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });
|
|
24
|
-
}
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionErrorHandlerDirective, decorators: [{
|
|
26
|
-
type: Directive,
|
|
27
|
-
args: [{
|
|
28
|
-
selector: '[dbxActionErrorHandler]',
|
|
29
|
-
standalone: true
|
|
30
|
-
}]
|
|
31
|
-
}] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmVycm9yLmhhbmRsZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWNvcmUvc3JjL2xpYi9hY3Rpb24vZGlyZWN0aXZlL3N0YXRlL2FjdGlvbi5lcnJvci5oYW5kbGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3hELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU1RSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBTzFEOztHQUVHO0FBS0gsTUFBTSxPQUFPLDhCQUFxQyxTQUFRLDZCQUE2QjtJQUM1RSxNQUFNLEdBQUcsTUFBTSxDQUFDLENBQUEsbUNBQXlDLENBQUEsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBRTNFLHFCQUFxQixHQUFHLEtBQUssRUFBd0MsQ0FBQztJQUN0RSxjQUFjLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUV2RyxRQUFRO1FBQ04sSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsY0FBYzthQUMzQixJQUFJLENBQ0gsU0FBUyxDQUFDLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FDMUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNyQixXQUFXLEVBQUUsRUFDYixHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBVSxDQUFDLEVBQ3ZDLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUU7WUFDdkIsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pCLENBQUMsQ0FBQyxDQUNILENBQ0YsQ0FDRjthQUNBLFNBQVMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7d0dBcEJVLDhCQUE4Qjs0RkFBOUIsOEJBQThCOzs0RkFBOUIsOEJBQThCO2tCQUoxQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1hcCwgdGFwLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXJNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkluaXQsIE9uRGVzdHJveSwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmVhZGFibGVFcnJvciwgdHlwZSBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9zdWJzY3JpcHRpb24nO1xuaW1wb3J0IHsgRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuLyoqXG4gKiBQZXJmb3JtcyB0aGUgYWN0aW9uIG9uIGVycm9yLlxuICovXG5leHBvcnQgdHlwZSBEYnhBY3Rpb25FcnJvckhhbmRsZXJGdW5jdGlvbiA9IChlcnJvcj86IE1heWJlPFJlYWRhYmxlRXJyb3I+KSA9PiB2b2lkO1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0aGF0IGV4ZWN1dGVzIGEgZnVuY3Rpb24gb24gQWN0aW9uQ29udGV4dFN0b3JlIGVycm9yLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZGJ4QWN0aW9uRXJyb3JIYW5kbGVyXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4QWN0aW9uRXJyb3JIYW5kbGVyRGlyZWN0aXZlPFQsIE8+IGV4dGVuZHMgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHJlYWRvbmx5IHNvdXJjZSA9IGluamVjdChEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZTxULCBPPiwgeyBob3N0OiB0cnVlIH0pO1xuXG4gIHJlYWRvbmx5IGRieEFjdGlvbkVycm9ySGFuZGxlciA9IGlucHV0PE1heWJlPERieEFjdGlvbkVycm9ySGFuZGxlckZ1bmN0aW9uPj4oKTtcbiAgcmVhZG9ubHkgZXJyb3JGdW5jdGlvbiQgPSB0b09ic2VydmFibGUodGhpcy5kYnhBY3Rpb25FcnJvckhhbmRsZXIpLnBpcGUoZmlsdGVyTWF5YmUoKSwgc2hhcmVSZXBsYXkoMSkpO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3ViID0gdGhpcy5lcnJvckZ1bmN0aW9uJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCgoZXJyb3JGdW5jdGlvbikgPT5cbiAgICAgICAgICB0aGlzLnNvdXJjZS5lcnJvciQucGlwZShcbiAgICAgICAgICAgIGZpbHRlck1heWJlKCksXG4gICAgICAgICAgICBtYXAoKHgpID0+IFtlcnJvckZ1bmN0aW9uLCB4XSBhcyBjb25zdCksXG4gICAgICAgICAgICB0YXAoKFtlcnJvckZuLCBlcnJvcl0pID0+IHtcbiAgICAgICAgICAgICAgZXJyb3JGbihlcnJvcik7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { Directive, effect, inject, input } from '@angular/core';
|
|
2
|
-
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
3
|
-
import { DbxActionHandlerInstance } from './action.handler.instance';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* Abstract directive that wraps and handles a DbxActionHandlerInstance lifecycle.
|
|
7
|
-
*/
|
|
8
|
-
export class AbstractDbxActionHandlerDirective {
|
|
9
|
-
source = inject((DbxActionContextStoreSourceInstance), { host: true });
|
|
10
|
-
_dbxActionHandlerInstance = new DbxActionHandlerInstance(this.source);
|
|
11
|
-
constructor() {
|
|
12
|
-
this._dbxActionHandlerInstance.init();
|
|
13
|
-
}
|
|
14
|
-
ngOnDestroy() {
|
|
15
|
-
this._dbxActionHandlerInstance.destroy();
|
|
16
|
-
}
|
|
17
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AbstractDbxActionHandlerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
18
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: AbstractDbxActionHandlerDirective, ngImport: i0 });
|
|
19
|
-
}
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AbstractDbxActionHandlerDirective, decorators: [{
|
|
21
|
-
type: Directive
|
|
22
|
-
}], ctorParameters: () => [] });
|
|
23
|
-
/**
|
|
24
|
-
* Directive that passes a Work function to handle a valueReady$ event from an action context.
|
|
25
|
-
*/
|
|
26
|
-
export class DbxActionHandlerDirective extends AbstractDbxActionHandlerDirective {
|
|
27
|
-
handlerFunction = input.required({ alias: 'dbxActionHandler' });
|
|
28
|
-
_handlerFunctionEffect = effect(() => {
|
|
29
|
-
this._dbxActionHandlerInstance.setHandlerFunction(this.handlerFunction());
|
|
30
|
-
});
|
|
31
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionHandlerDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
32
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionHandlerDirective, isStandalone: true, selector: "[dbxActionHandler]", inputs: { handlerFunction: { classPropertyName: "handlerFunction", publicName: "dbxActionHandler", isSignal: true, isRequired: true, transformFunction: null } }, usesInheritance: true, ngImport: i0 });
|
|
33
|
-
}
|
|
34
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionHandlerDirective, decorators: [{
|
|
35
|
-
type: Directive,
|
|
36
|
-
args: [{
|
|
37
|
-
selector: '[dbxActionHandler]',
|
|
38
|
-
standalone: true
|
|
39
|
-
}]
|
|
40
|
-
}] });
|
|
41
|
-
/**
|
|
42
|
-
* Directive that passes a value to handle a valueReady$ event from an action context.
|
|
43
|
-
*/
|
|
44
|
-
export class DbxActionHandlerValueDirective extends AbstractDbxActionHandlerDirective {
|
|
45
|
-
handlerValue = input.required({ alias: 'dbxActionHandlerValue' });
|
|
46
|
-
_handlerValueEffect = effect(() => {
|
|
47
|
-
this._dbxActionHandlerInstance.setHandlerValue(this.handlerValue());
|
|
48
|
-
});
|
|
49
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionHandlerValueDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
50
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionHandlerValueDirective, isStandalone: true, selector: "[dbxActionHandlerValue]", inputs: { handlerValue: { classPropertyName: "handlerValue", publicName: "dbxActionHandlerValue", isSignal: true, isRequired: true, transformFunction: null } }, usesInheritance: true, ngImport: i0 });
|
|
51
|
-
}
|
|
52
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionHandlerValueDirective, decorators: [{
|
|
53
|
-
type: Directive,
|
|
54
|
-
args: [{
|
|
55
|
-
selector: '[dbxActionHandlerValue]',
|
|
56
|
-
standalone: true
|
|
57
|
-
}]
|
|
58
|
-
}] });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmhhbmRsZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWNvcmUvc3JjL2xpYi9hY3Rpb24vZGlyZWN0aXZlL3N0YXRlL2FjdGlvbi5oYW5kbGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFhLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVFLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRWhGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUdyRTs7R0FFRztBQUVILE1BQU0sT0FBZ0IsaUNBQWlDO0lBQzVDLE1BQU0sR0FBOEMsTUFBTSxDQUFDLENBQUEsbUNBQXlDLENBQUEsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzVHLHlCQUF5QixHQUFHLElBQUksd0JBQXdCLENBQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRS9GO1FBQ0UsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLHlCQUF5QixDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzNDLENBQUM7d0dBVm1CLGlDQUFpQzs0RkFBakMsaUNBQWlDOzs0RkFBakMsaUNBQWlDO2tCQUR0RCxTQUFTOztBQWNWOztHQUVHO0FBS0gsTUFBTSxPQUFPLHlCQUFvRCxTQUFRLGlDQUF1QztJQUNyRyxlQUFlLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBb0IsRUFBRSxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDO0lBRXpFLHNCQUFzQixHQUFHLE1BQU0sQ0FBQyxHQUFHLEVBQUU7UUFDdEQsSUFBSSxDQUFDLHlCQUF5QixDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDO0lBQzVFLENBQUMsQ0FBQyxDQUFDO3dHQUxRLHlCQUF5Qjs0RkFBekIseUJBQXlCOzs0RkFBekIseUJBQXlCO2tCQUpyQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs7QUFTRDs7R0FFRztBQUtILE1BQU0sT0FBTyw4QkFBeUQsU0FBUSxpQ0FBdUM7SUFDMUcsWUFBWSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQW1ELEVBQUUsS0FBSyxFQUFFLHVCQUF1QixFQUFFLENBQUMsQ0FBQztJQUMxRyxtQkFBbUIsR0FBRyxNQUFNLENBQUMsR0FBRyxFQUFFO1FBQ25ELElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDdEUsQ0FBQyxDQUFDLENBQUM7d0dBSlEsOEJBQThCOzRGQUE5Qiw4QkFBOEI7OzRGQUE5Qiw4QkFBOEI7a0JBSjFDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHlCQUF5QjtvQkFDbkMsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkRlc3Ryb3ksIGVmZmVjdCwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlJztcbmltcG9ydCB7IEZhY3RvcnlXaXRoSW5wdXQsIEdldHRlck9yVmFsdWUsIHR5cGUgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IERieEFjdGlvbkhhbmRsZXJJbnN0YW5jZSB9IGZyb20gJy4vYWN0aW9uLmhhbmRsZXIuaW5zdGFuY2UnO1xuaW1wb3J0IHsgV29yayB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuXG4vKipcbiAqIEFic3RyYWN0IGRpcmVjdGl2ZSB0aGF0IHdyYXBzIGFuZCBoYW5kbGVzIGEgRGJ4QWN0aW9uSGFuZGxlckluc3RhbmNlIGxpZmVjeWNsZS5cbiAqL1xuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3REYnhBY3Rpb25IYW5kbGVyRGlyZWN0aXZlPFQgPSB1bmtub3duLCBPID0gdW5rbm93bj4gaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICByZWFkb25seSBzb3VyY2U6IERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlPFQsIE8+ID0gaW5qZWN0KERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlPFQsIE8+LCB7IGhvc3Q6IHRydWUgfSk7XG4gIHByb3RlY3RlZCByZWFkb25seSBfZGJ4QWN0aW9uSGFuZGxlckluc3RhbmNlID0gbmV3IERieEFjdGlvbkhhbmRsZXJJbnN0YW5jZTxULCBPPih0aGlzLnNvdXJjZSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5fZGJ4QWN0aW9uSGFuZGxlckluc3RhbmNlLmluaXQoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2RieEFjdGlvbkhhbmRsZXJJbnN0YW5jZS5kZXN0cm95KCk7XG4gIH1cbn1cblxuLyoqXG4gKiBEaXJlY3RpdmUgdGhhdCBwYXNzZXMgYSBXb3JrIGZ1bmN0aW9uIHRvIGhhbmRsZSBhIHZhbHVlUmVhZHkkIGV2ZW50IGZyb20gYW4gYWN0aW9uIGNvbnRleHQuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhBY3Rpb25IYW5kbGVyXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4QWN0aW9uSGFuZGxlckRpcmVjdGl2ZTxUID0gdW5rbm93biwgTyA9IHVua25vd24+IGV4dGVuZHMgQWJzdHJhY3REYnhBY3Rpb25IYW5kbGVyRGlyZWN0aXZlPFQsIE8+IHtcbiAgcmVhZG9ubHkgaGFuZGxlckZ1bmN0aW9uID0gaW5wdXQucmVxdWlyZWQ8TWF5YmU8V29yazxULCBPPj4+KHsgYWxpYXM6ICdkYnhBY3Rpb25IYW5kbGVyJyB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX2hhbmRsZXJGdW5jdGlvbkVmZmVjdCA9IGVmZmVjdCgoKSA9PiB7XG4gICAgdGhpcy5fZGJ4QWN0aW9uSGFuZGxlckluc3RhbmNlLnNldEhhbmRsZXJGdW5jdGlvbih0aGlzLmhhbmRsZXJGdW5jdGlvbigpKTtcbiAgfSk7XG59XG5cbi8qKlxuICogRGlyZWN0aXZlIHRoYXQgcGFzc2VzIGEgdmFsdWUgdG8gaGFuZGxlIGEgdmFsdWVSZWFkeSQgZXZlbnQgZnJvbSBhbiBhY3Rpb24gY29udGV4dC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEFjdGlvbkhhbmRsZXJWYWx1ZV0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERieEFjdGlvbkhhbmRsZXJWYWx1ZURpcmVjdGl2ZTxUID0gdW5rbm93biwgTyA9IHVua25vd24+IGV4dGVuZHMgQWJzdHJhY3REYnhBY3Rpb25IYW5kbGVyRGlyZWN0aXZlPFQsIE8+IHtcbiAgcmVhZG9ubHkgaGFuZGxlclZhbHVlID0gaW5wdXQucmVxdWlyZWQ8TWF5YmU8R2V0dGVyT3JWYWx1ZTxPPiB8IEZhY3RvcnlXaXRoSW5wdXQ8TywgVD4+Pih7IGFsaWFzOiAnZGJ4QWN0aW9uSGFuZGxlclZhbHVlJyB9KTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IF9oYW5kbGVyVmFsdWVFZmZlY3QgPSBlZmZlY3QoKCkgPT4ge1xuICAgIHRoaXMuX2RieEFjdGlvbkhhbmRsZXJJbnN0YW5jZS5zZXRIYW5kbGVyVmFsdWUodGhpcy5oYW5kbGVyVmFsdWUoKSk7XG4gIH0pO1xufVxuIl19
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { map, shareReplay, switchMap, tap, BehaviorSubject, combineLatest } from 'rxjs';
|
|
2
|
-
import { DbxActionWorkInstanceDelegate } from '../../action.handler';
|
|
3
|
-
import { asGetter } from '@dereekb/util';
|
|
4
|
-
import { filterMaybe, SubscriptionObject, workFactory } from '@dereekb/rxjs';
|
|
5
|
-
export const DBX_ACTION_HANDLER_LOCK_KEY = 'dbxActionHandler';
|
|
6
|
-
/**
|
|
7
|
-
* Context used for defining a function that performs an action using the input function to handle valueReady$ events from an action context.
|
|
8
|
-
*/
|
|
9
|
-
export class DbxActionHandlerInstance {
|
|
10
|
-
_delegate;
|
|
11
|
-
_sub = new SubscriptionObject();
|
|
12
|
-
_handlerFunction = new BehaviorSubject(undefined);
|
|
13
|
-
_handlerValue = new BehaviorSubject(undefined);
|
|
14
|
-
handlerFunction$ = combineLatest([this._handlerValue, this._handlerFunction]).pipe(map(([handlerValue, handlerFunction]) => {
|
|
15
|
-
let work;
|
|
16
|
-
if (handlerFunction != null) {
|
|
17
|
-
work = handlerFunction;
|
|
18
|
-
}
|
|
19
|
-
else if (handlerValue !== undefined) {
|
|
20
|
-
const getter = asGetter(handlerValue);
|
|
21
|
-
work = (x, c) => c.performTaskWithReturnValue(() => getter(x));
|
|
22
|
-
}
|
|
23
|
-
return work;
|
|
24
|
-
}), filterMaybe(), shareReplay(1));
|
|
25
|
-
constructor(source) {
|
|
26
|
-
this._delegate = new DbxActionWorkInstanceDelegate(source);
|
|
27
|
-
}
|
|
28
|
-
get source() {
|
|
29
|
-
return this._delegate.source;
|
|
30
|
-
}
|
|
31
|
-
get handlerFunction() {
|
|
32
|
-
return this._handlerFunction.value;
|
|
33
|
-
}
|
|
34
|
-
get handlerValue() {
|
|
35
|
-
return this._handlerValue.value;
|
|
36
|
-
}
|
|
37
|
-
setHandlerFunction(handlerFunction) {
|
|
38
|
-
this._handlerFunction.next(handlerFunction);
|
|
39
|
-
}
|
|
40
|
-
setHandlerValue(handlerValue) {
|
|
41
|
-
this._handlerValue.next(handlerValue);
|
|
42
|
-
}
|
|
43
|
-
init() {
|
|
44
|
-
this._sub.subscription = this.handlerFunction$
|
|
45
|
-
.pipe(switchMap((work) => this.source.valueReady$.pipe(tap((value) => {
|
|
46
|
-
const context = workFactory({ work, delegate: this._delegate })(value);
|
|
47
|
-
if (context) {
|
|
48
|
-
// Add the action to the lockSet for the source to prevent it from being destroyed until the action completes.
|
|
49
|
-
this.source.lockSet.addLock(DBX_ACTION_HANDLER_LOCK_KEY, context.isComplete$.pipe(map((x) => !x)));
|
|
50
|
-
}
|
|
51
|
-
}))))
|
|
52
|
-
.subscribe();
|
|
53
|
-
}
|
|
54
|
-
destroy() {
|
|
55
|
-
this.source.lockSet.onNextUnlock(() => {
|
|
56
|
-
this._sub.destroy();
|
|
57
|
-
this._handlerFunction.complete();
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmhhbmRsZXIuaW5zdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvc3RhdGUvYWN0aW9uLmhhbmRsZXIuaW5zdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXhGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JFLE9BQU8sRUFBc0UsUUFBUSxFQUF5QixNQUFNLGVBQWUsQ0FBQztBQUNwSSxPQUFPLEVBQUUsV0FBVyxFQUFFLGtCQUFrQixFQUFhLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4RixNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyxrQkFBa0IsQ0FBQztBQUU5RDs7R0FFRztBQUNILE1BQU0sT0FBTyx3QkFBd0I7SUFDbEIsU0FBUyxDQUFzQztJQUUvQyxJQUFJLEdBQUcsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO0lBQ2hDLGdCQUFnQixHQUFHLElBQUksZUFBZSxDQUFvQixTQUFTLENBQUMsQ0FBQztJQUNyRSxhQUFhLEdBQUcsSUFBSSxlQUFlLENBQW1ELFNBQVMsQ0FBQyxDQUFDO0lBRXpHLGdCQUFnQixHQUFHLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ3pGLEdBQUcsQ0FBQyxDQUFDLENBQUMsWUFBWSxFQUFFLGVBQWUsQ0FBQyxFQUFFLEVBQUU7UUFDdEMsSUFBSSxJQUF1QixDQUFDO1FBRTVCLElBQUksZUFBZSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQzVCLElBQUksR0FBRyxlQUFlLENBQUM7UUFDekIsQ0FBQzthQUFNLElBQUksWUFBWSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3RDLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxZQUFZLENBQTJCLENBQUM7WUFDaEUsSUFBSSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLDBCQUEwQixDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pFLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUMsQ0FBQyxFQUNGLFdBQVcsRUFBRSxFQUNiLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO0lBRUYsWUFBWSxNQUFpRDtRQUMzRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksNkJBQTZCLENBQU8sTUFBTSxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQUksZUFBZTtRQUNqQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUM7SUFDckMsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUM7SUFDbEMsQ0FBQztJQUVELGtCQUFrQixDQUFDLGVBQWtDO1FBQ25ELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELGVBQWUsQ0FBQyxZQUE4RDtRQUM1RSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxnQkFBZ0I7YUFDM0MsSUFBSSxDQUNILFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQ2pCLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDMUIsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDWixNQUFNLE9BQU8sR0FBRyxXQUFXLENBQUMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRXZFLElBQUksT0FBTyxFQUFFLENBQUM7Z0JBQ1osOEdBQThHO2dCQUM5RyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsMkJBQTJCLEVBQUUsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNyRyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FDRixDQUNGO2FBQ0EsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFO1lBQ3BDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ25DLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbWFwLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwLCB0YXAsIEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdHlwZSBEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZSB9IGZyb20gJy4uLy4uL2FjdGlvbi5zdG9yZS5zb3VyY2UnO1xuaW1wb3J0IHsgRGJ4QWN0aW9uV29ya0luc3RhbmNlRGVsZWdhdGUgfSBmcm9tICcuLi8uLi9hY3Rpb24uaGFuZGxlcic7XG5pbXBvcnQgeyB0eXBlIE1heWJlLCB0eXBlIERlc3Ryb3lhYmxlLCB0eXBlIEluaXRpYWxpemVkLCB0eXBlIEdldHRlck9yVmFsdWUsIGFzR2V0dGVyLCB0eXBlIEZhY3RvcnlXaXRoSW5wdXQgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IGZpbHRlck1heWJlLCBTdWJzY3JpcHRpb25PYmplY3QsIHR5cGUgV29yaywgd29ya0ZhY3RvcnkgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcblxuZXhwb3J0IGNvbnN0IERCWF9BQ1RJT05fSEFORExFUl9MT0NLX0tFWSA9ICdkYnhBY3Rpb25IYW5kbGVyJztcblxuLyoqXG4gKiBDb250ZXh0IHVzZWQgZm9yIGRlZmluaW5nIGEgZnVuY3Rpb24gdGhhdCBwZXJmb3JtcyBhbiBhY3Rpb24gdXNpbmcgdGhlIGlucHV0IGZ1bmN0aW9uIHRvIGhhbmRsZSB2YWx1ZVJlYWR5JCBldmVudHMgZnJvbSBhbiBhY3Rpb24gY29udGV4dC5cbiAqL1xuZXhwb3J0IGNsYXNzIERieEFjdGlvbkhhbmRsZXJJbnN0YW5jZTxUID0gdW5rbm93biwgTyA9IHVua25vd24+IGltcGxlbWVudHMgSW5pdGlhbGl6ZWQsIERlc3Ryb3lhYmxlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVsZWdhdGU6IERieEFjdGlvbldvcmtJbnN0YW5jZURlbGVnYXRlPFQsIE8+O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3N1YiA9IG5ldyBTdWJzY3JpcHRpb25PYmplY3QoKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfaGFuZGxlckZ1bmN0aW9uID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNYXliZTxXb3JrPFQsIE8+Pj4odW5kZWZpbmVkKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfaGFuZGxlclZhbHVlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNYXliZTxHZXR0ZXJPclZhbHVlPE8+IHwgRmFjdG9yeVdpdGhJbnB1dDxPLCBUPj4+KHVuZGVmaW5lZCk7XG5cbiAgcmVhZG9ubHkgaGFuZGxlckZ1bmN0aW9uJCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuX2hhbmRsZXJWYWx1ZSwgdGhpcy5faGFuZGxlckZ1bmN0aW9uXSkucGlwZShcbiAgICBtYXAoKFtoYW5kbGVyVmFsdWUsIGhhbmRsZXJGdW5jdGlvbl0pID0+IHtcbiAgICAgIGxldCB3b3JrOiBNYXliZTxXb3JrPFQsIE8+PjtcblxuICAgICAgaWYgKGhhbmRsZXJGdW5jdGlvbiAhPSBudWxsKSB7XG4gICAgICAgIHdvcmsgPSBoYW5kbGVyRnVuY3Rpb247XG4gICAgICB9IGVsc2UgaWYgKGhhbmRsZXJWYWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNvbnN0IGdldHRlciA9IGFzR2V0dGVyKGhhbmRsZXJWYWx1ZSkgYXMgRmFjdG9yeVdpdGhJbnB1dDxPLCBUPjtcbiAgICAgICAgd29yayA9ICh4LCBjKSA9PiBjLnBlcmZvcm1UYXNrV2l0aFJldHVyblZhbHVlKCgpID0+IGdldHRlcih4KSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB3b3JrO1xuICAgIH0pLFxuICAgIGZpbHRlck1heWJlKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICBjb25zdHJ1Y3Rvcihzb3VyY2U6IERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlPFQsIE8+KSB7XG4gICAgdGhpcy5fZGVsZWdhdGUgPSBuZXcgRGJ4QWN0aW9uV29ya0luc3RhbmNlRGVsZWdhdGU8VCwgTz4oc291cmNlKTtcbiAgfVxuXG4gIGdldCBzb3VyY2UoKTogRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2U8VCwgTz4ge1xuICAgIHJldHVybiB0aGlzLl9kZWxlZ2F0ZS5zb3VyY2U7XG4gIH1cblxuICBnZXQgaGFuZGxlckZ1bmN0aW9uKCk6IE1heWJlPFdvcms8VCwgTz4+IHtcbiAgICByZXR1cm4gdGhpcy5faGFuZGxlckZ1bmN0aW9uLnZhbHVlO1xuICB9XG5cbiAgZ2V0IGhhbmRsZXJWYWx1ZSgpOiBNYXliZTxHZXR0ZXJPclZhbHVlPE8+IHwgRmFjdG9yeVdpdGhJbnB1dDxPLCBUPj4ge1xuICAgIHJldHVybiB0aGlzLl9oYW5kbGVyVmFsdWUudmFsdWU7XG4gIH1cblxuICBzZXRIYW5kbGVyRnVuY3Rpb24oaGFuZGxlckZ1bmN0aW9uOiBNYXliZTxXb3JrPFQsIE8+Pik6IHZvaWQge1xuICAgIHRoaXMuX2hhbmRsZXJGdW5jdGlvbi5uZXh0KGhhbmRsZXJGdW5jdGlvbik7XG4gIH1cblxuICBzZXRIYW5kbGVyVmFsdWUoaGFuZGxlclZhbHVlOiBNYXliZTxHZXR0ZXJPclZhbHVlPE8+IHwgRmFjdG9yeVdpdGhJbnB1dDxPLCBUPj4pOiB2b2lkIHtcbiAgICB0aGlzLl9oYW5kbGVyVmFsdWUubmV4dChoYW5kbGVyVmFsdWUpO1xuICB9XG5cbiAgaW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9zdWIuc3Vic2NyaXB0aW9uID0gdGhpcy5oYW5kbGVyRnVuY3Rpb24kXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCh3b3JrKSA9PlxuICAgICAgICAgIHRoaXMuc291cmNlLnZhbHVlUmVhZHkkLnBpcGUoXG4gICAgICAgICAgICB0YXAoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGNvbnRleHQgPSB3b3JrRmFjdG9yeSh7IHdvcmssIGRlbGVnYXRlOiB0aGlzLl9kZWxlZ2F0ZSB9KSh2YWx1ZSk7XG5cbiAgICAgICAgICAgICAgaWYgKGNvbnRleHQpIHtcbiAgICAgICAgICAgICAgICAvLyBBZGQgdGhlIGFjdGlvbiB0byB0aGUgbG9ja1NldCBmb3IgdGhlIHNvdXJjZSB0byBwcmV2ZW50IGl0IGZyb20gYmVpbmcgZGVzdHJveWVkIHVudGlsIHRoZSBhY3Rpb24gY29tcGxldGVzLlxuICAgICAgICAgICAgICAgIHRoaXMuc291cmNlLmxvY2tTZXQuYWRkTG9jayhEQlhfQUNUSU9OX0hBTkRMRVJfTE9DS19LRVksIGNvbnRleHQuaXNDb21wbGV0ZSQucGlwZShtYXAoKHgpID0+ICF4KSkpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgZGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnNvdXJjZS5sb2NrU2V0Lm9uTmV4dFVubG9jaygoKSA9PiB7XG4gICAgICB0aGlzLl9zdWIuZGVzdHJveSgpO1xuICAgICAgdGhpcy5faGFuZGxlckZ1bmN0aW9uLmNvbXBsZXRlKCk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { Directive, inject, input } from '@angular/core';
|
|
2
|
-
import { emitDelayObs } from '@dereekb/rxjs';
|
|
3
|
-
import { of, exhaustMap, shareReplay } from 'rxjs';
|
|
4
|
-
import { AbstractIfDirective } from '../../../view/if.directive';
|
|
5
|
-
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
6
|
-
import { transformEmptyStringInputToUndefined } from '../../../util/input';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
/**
|
|
9
|
-
* Structural directive that displays the content before the store has success.
|
|
10
|
-
*
|
|
11
|
-
* Can be configured to hide for a temporary period.
|
|
12
|
-
*/
|
|
13
|
-
export class DbxActionIdleDirective extends AbstractIfDirective {
|
|
14
|
-
_store = inject(DbxActionContextStoreSourceInstance);
|
|
15
|
-
hideAfter = input(undefined, { alias: 'dbxActionIdle', transform: transformEmptyStringInputToUndefined });
|
|
16
|
-
show$ = this._store.idle$.pipe(exhaustMap((idle) => {
|
|
17
|
-
if (idle) {
|
|
18
|
-
return emitDelayObs(true, false, this.hideAfter());
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
return of(false);
|
|
22
|
-
}
|
|
23
|
-
}), shareReplay(1));
|
|
24
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionIdleDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
25
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionIdleDirective, isStandalone: true, selector: "[dbxActionIdle]", inputs: { hideAfter: { classPropertyName: "hideAfter", publicName: "dbxActionIdle", 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: DbxActionIdleDirective, decorators: [{
|
|
28
|
-
type: Directive,
|
|
29
|
-
args: [{
|
|
30
|
-
selector: '[dbxActionIdle]',
|
|
31
|
-
standalone: true
|
|
32
|
-
}]
|
|
33
|
-
}] });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmlkbGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWNvcmUvc3JjL2xpYi9hY3Rpb24vZGlyZWN0aXZlL3N0YXRlL2FjdGlvbi5pZGxlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3QyxPQUFPLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDakUsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDaEYsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBRTNFOzs7O0dBSUc7QUFLSCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsbUJBQW1CO0lBQzVDLE1BQU0sR0FBRyxNQUFNLENBQUMsbUNBQW1DLENBQUMsQ0FBQztJQUU3RCxTQUFTLEdBQUcsS0FBSyxDQUFvQyxTQUFTLEVBQUUsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxvQ0FBb0MsRUFBRSxDQUFDLENBQUM7SUFFN0ksS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDckMsVUFBVSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7UUFDbEIsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNULE9BQU8sWUFBWSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDckQsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuQixDQUFDO0lBQ0gsQ0FBQyxDQUFDLEVBQ0YsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7d0dBZFMsc0JBQXNCOzRGQUF0QixzQkFBc0I7OzRGQUF0QixzQkFBc0I7a0JBSmxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBlbWl0RGVsYXlPYnMgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IHR5cGUgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IG9mLCBleGhhdXN0TWFwLCBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQWJzdHJhY3RJZkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL3ZpZXcvaWYuZGlyZWN0aXZlJztcbmltcG9ydCB7IERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLnN0b3JlLnNvdXJjZSc7XG5pbXBvcnQgeyB0cmFuc2Zvcm1FbXB0eVN0cmluZ0lucHV0VG9VbmRlZmluZWQgfSBmcm9tICcuLi8uLi8uLi91dGlsL2lucHV0JztcblxuLyoqXG4gKiBTdHJ1Y3R1cmFsIGRpcmVjdGl2ZSB0aGF0IGRpc3BsYXlzIHRoZSBjb250ZW50IGJlZm9yZSB0aGUgc3RvcmUgaGFzIHN1Y2Nlc3MuXG4gKlxuICogQ2FuIGJlIGNvbmZpZ3VyZWQgdG8gaGlkZSBmb3IgYSB0ZW1wb3JhcnkgcGVyaW9kLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZGJ4QWN0aW9uSWRsZV0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERieEFjdGlvbklkbGVEaXJlY3RpdmUgZXh0ZW5kcyBBYnN0cmFjdElmRGlyZWN0aXZlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfc3RvcmUgPSBpbmplY3QoRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UpO1xuXG4gIHJlYWRvbmx5IGhpZGVBZnRlciA9IGlucHV0PE1heWJlPG51bWJlcj4sIE1heWJlPG51bWJlcj4gfCAnJz4odW5kZWZpbmVkLCB7IGFsaWFzOiAnZGJ4QWN0aW9uSWRsZScsIHRyYW5zZm9ybTogdHJhbnNmb3JtRW1wdHlTdHJpbmdJbnB1dFRvVW5kZWZpbmVkIH0pO1xuXG4gIHJlYWRvbmx5IHNob3ckID0gdGhpcy5fc3RvcmUuaWRsZSQucGlwZShcbiAgICBleGhhdXN0TWFwKChpZGxlKSA9PiB7XG4gICAgICBpZiAoaWRsZSkge1xuICAgICAgICByZXR1cm4gZW1pdERlbGF5T2JzKHRydWUsIGZhbHNlLCB0aGlzLmhpZGVBZnRlcigpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBvZihmYWxzZSk7XG4gICAgICB9XG4gICAgfSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcbn1cbiJdfQ==
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { Directive, inject, input } from '@angular/core';
|
|
2
|
-
import { emitDelayObs } from '@dereekb/rxjs';
|
|
3
|
-
import { of, exhaustMap, shareReplay } from 'rxjs';
|
|
4
|
-
import { AbstractIfDirective } from '../../../view/if.directive';
|
|
5
|
-
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
6
|
-
import { transformEmptyStringInputToUndefined } from '../../../util/input';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
/**
|
|
9
|
-
* Structural directive that displays the content before the store has success.
|
|
10
|
-
*
|
|
11
|
-
* Can be configured to hide for a temporary period.
|
|
12
|
-
*/
|
|
13
|
-
export class DbxActionPreSuccessDirective extends AbstractIfDirective {
|
|
14
|
-
_store = inject(DbxActionContextStoreSourceInstance);
|
|
15
|
-
hideFor = input(undefined, { alias: 'dbxActionPreSuccess', transform: transformEmptyStringInputToUndefined });
|
|
16
|
-
show$ = this._store.isSuccess$.pipe(exhaustMap((success) => {
|
|
17
|
-
if (success) {
|
|
18
|
-
return emitDelayObs(false, true, this.hideFor());
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
return of(true);
|
|
22
|
-
}
|
|
23
|
-
}), shareReplay(1));
|
|
24
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionPreSuccessDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
25
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionPreSuccessDirective, isStandalone: true, selector: "[dbxActionPreSuccess]", inputs: { hideFor: { classPropertyName: "hideFor", publicName: "dbxActionPreSuccess", 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: DbxActionPreSuccessDirective, decorators: [{
|
|
28
|
-
type: Directive,
|
|
29
|
-
args: [{
|
|
30
|
-
selector: '[dbxActionPreSuccess]',
|
|
31
|
-
standalone: true
|
|
32
|
-
}]
|
|
33
|
-
}] });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLnByZXN1Y2Nlc3MuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWNvcmUvc3JjL2xpYi9hY3Rpb24vZGlyZWN0aXZlL3N0YXRlL2FjdGlvbi5wcmVzdWNjZXNzLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3QyxPQUFPLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDakUsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDaEYsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBRTNFOzs7O0dBSUc7QUFLSCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsbUJBQW1CO0lBQ2xELE1BQU0sR0FBRyxNQUFNLENBQUMsbUNBQW1DLENBQUMsQ0FBQztJQUU3RCxPQUFPLEdBQUcsS0FBSyxDQUFvQyxTQUFTLEVBQUUsRUFBRSxLQUFLLEVBQUUscUJBQXFCLEVBQUUsU0FBUyxFQUFFLG9DQUFvQyxFQUFFLENBQUMsQ0FBQztJQUVqSixLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQyxVQUFVLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtRQUNyQixJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osT0FBTyxZQUFZLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUNuRCxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xCLENBQUM7SUFDSCxDQUFDLENBQUMsRUFDRixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQzt3R0FkUyw0QkFBNEI7NEZBQTVCLDRCQUE0Qjs7NEZBQTVCLDRCQUE0QjtrQkFKeEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGluamVjdCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGVtaXREZWxheU9icyB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgdHlwZSBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgb2YsIGV4aGF1c3RNYXAsIHNoYXJlUmVwbGF5IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBYnN0cmFjdElmRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vdmlldy9pZi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlJztcbmltcG9ydCB7IHRyYW5zZm9ybUVtcHR5U3RyaW5nSW5wdXRUb1VuZGVmaW5lZCB9IGZyb20gJy4uLy4uLy4uL3V0aWwvaW5wdXQnO1xuXG4vKipcbiAqIFN0cnVjdHVyYWwgZGlyZWN0aXZlIHRoYXQgZGlzcGxheXMgdGhlIGNvbnRlbnQgYmVmb3JlIHRoZSBzdG9yZSBoYXMgc3VjY2Vzcy5cbiAqXG4gKiBDYW4gYmUgY29uZmlndXJlZCB0byBoaWRlIGZvciBhIHRlbXBvcmFyeSBwZXJpb2QuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhBY3Rpb25QcmVTdWNjZXNzXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4QWN0aW9uUHJlU3VjY2Vzc0RpcmVjdGl2ZSBleHRlbmRzIEFic3RyYWN0SWZEaXJlY3RpdmUge1xuICBwcml2YXRlIHJlYWRvbmx5IF9zdG9yZSA9IGluamVjdChEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZSk7XG5cbiAgcmVhZG9ubHkgaGlkZUZvciA9IGlucHV0PE1heWJlPG51bWJlcj4sIE1heWJlPG51bWJlcj4gfCAnJz4odW5kZWZpbmVkLCB7IGFsaWFzOiAnZGJ4QWN0aW9uUHJlU3VjY2VzcycsIHRyYW5zZm9ybTogdHJhbnNmb3JtRW1wdHlTdHJpbmdJbnB1dFRvVW5kZWZpbmVkIH0pO1xuXG4gIHJlYWRvbmx5IHNob3ckID0gdGhpcy5fc3RvcmUuaXNTdWNjZXNzJC5waXBlKFxuICAgIGV4aGF1c3RNYXAoKHN1Y2Nlc3MpID0+IHtcbiAgICAgIGlmIChzdWNjZXNzKSB7XG4gICAgICAgIHJldHVybiBlbWl0RGVsYXlPYnMoZmFsc2UsIHRydWUsIHRoaXMuaGlkZUZvcigpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBvZih0cnVlKTtcbiAgICAgIH1cbiAgICB9KSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xufVxuIl19
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { Directive, inject, input } from '@angular/core';
|
|
2
|
-
import { emitDelayObs } from '@dereekb/rxjs';
|
|
3
|
-
import { of, exhaustMap, shareReplay } from 'rxjs';
|
|
4
|
-
import { AbstractIfDirective } from '../../../view/if.directive';
|
|
5
|
-
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
6
|
-
import { transformEmptyStringInputToUndefined } from '../../../util/input';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
/**
|
|
9
|
-
* Structural directive that displays the content when the store has a success value.
|
|
10
|
-
*
|
|
11
|
-
* Can be configured to show for a temporary period.
|
|
12
|
-
*/
|
|
13
|
-
export class DbxActionHasSuccessDirective extends AbstractIfDirective {
|
|
14
|
-
_store = inject(DbxActionContextStoreSourceInstance);
|
|
15
|
-
hideAfter = input(undefined, { alias: 'dbxActionHasSuccess', transform: transformEmptyStringInputToUndefined });
|
|
16
|
-
show$ = this._store.isSuccess$.pipe(exhaustMap((success) => {
|
|
17
|
-
if (success) {
|
|
18
|
-
return emitDelayObs(true, false, this.hideAfter());
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
return of(false);
|
|
22
|
-
}
|
|
23
|
-
}), shareReplay(1));
|
|
24
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionHasSuccessDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
25
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionHasSuccessDirective, isStandalone: true, selector: "[dbxActionHasSuccess]", inputs: { hideAfter: { classPropertyName: "hideAfter", publicName: "dbxActionHasSuccess", 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: DbxActionHasSuccessDirective, decorators: [{
|
|
28
|
-
type: Directive,
|
|
29
|
-
args: [{
|
|
30
|
-
selector: '[dbxActionHasSuccess]',
|
|
31
|
-
standalone: true
|
|
32
|
-
}]
|
|
33
|
-
}] });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLnN1Y2Nlc3MuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWNvcmUvc3JjL2xpYi9hY3Rpb24vZGlyZWN0aXZlL3N0YXRlL2FjdGlvbi5zdWNjZXNzLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWEsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3QyxPQUFPLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDakUsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDaEYsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBRTNFOzs7O0dBSUc7QUFLSCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsbUJBQW1CO0lBQ2xELE1BQU0sR0FBRyxNQUFNLENBQUMsbUNBQW1DLENBQUMsQ0FBQztJQUU3RCxTQUFTLEdBQUcsS0FBSyxDQUFvQyxTQUFTLEVBQUUsRUFBRSxLQUFLLEVBQUUscUJBQXFCLEVBQUUsU0FBUyxFQUFFLG9DQUFvQyxFQUFFLENBQUMsQ0FBQztJQUVuSixLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQyxVQUFVLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtRQUNyQixJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osT0FBTyxZQUFZLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUNyRCxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25CLENBQUM7SUFDSCxDQUFDLENBQUMsRUFDRixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQzt3R0FkUyw0QkFBNEI7NEZBQTVCLDRCQUE0Qjs7NEZBQTVCLDRCQUE0QjtrQkFKeEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPbkRlc3Ryb3ksIERpcmVjdGl2ZSwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZW1pdERlbGF5T2JzIH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyB0eXBlIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBvZiwgZXhoYXVzdE1hcCwgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFic3RyYWN0SWZEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi92aWV3L2lmLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZSB9IGZyb20gJy4uLy4uL2FjdGlvbi5zdG9yZS5zb3VyY2UnO1xuaW1wb3J0IHsgdHJhbnNmb3JtRW1wdHlTdHJpbmdJbnB1dFRvVW5kZWZpbmVkIH0gZnJvbSAnLi4vLi4vLi4vdXRpbC9pbnB1dCc7XG5cbi8qKlxuICogU3RydWN0dXJhbCBkaXJlY3RpdmUgdGhhdCBkaXNwbGF5cyB0aGUgY29udGVudCB3aGVuIHRoZSBzdG9yZSBoYXMgYSBzdWNjZXNzIHZhbHVlLlxuICpcbiAqIENhbiBiZSBjb25maWd1cmVkIHRvIHNob3cgZm9yIGEgdGVtcG9yYXJ5IHBlcmlvZC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEFjdGlvbkhhc1N1Y2Nlc3NdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhBY3Rpb25IYXNTdWNjZXNzRGlyZWN0aXZlIGV4dGVuZHMgQWJzdHJhY3RJZkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3N0b3JlID0gaW5qZWN0KERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlKTtcblxuICByZWFkb25seSBoaWRlQWZ0ZXIgPSBpbnB1dDxNYXliZTxudW1iZXI+LCBNYXliZTxudW1iZXI+IHwgJyc+KHVuZGVmaW5lZCwgeyBhbGlhczogJ2RieEFjdGlvbkhhc1N1Y2Nlc3MnLCB0cmFuc2Zvcm06IHRyYW5zZm9ybUVtcHR5U3RyaW5nSW5wdXRUb1VuZGVmaW5lZCB9KTtcblxuICByZWFkb25seSBzaG93JCA9IHRoaXMuX3N0b3JlLmlzU3VjY2VzcyQucGlwZShcbiAgICBleGhhdXN0TWFwKChzdWNjZXNzKSA9PiB7XG4gICAgICBpZiAoc3VjY2Vzcykge1xuICAgICAgICByZXR1cm4gZW1pdERlbGF5T2JzKHRydWUsIGZhbHNlLCB0aGlzLmhpZGVBZnRlcigpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBvZihmYWxzZSk7XG4gICAgICB9XG4gICAgfSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcbn1cbiJdfQ==
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { map, tap, shareReplay, switchMap } from 'rxjs';
|
|
2
|
-
import { filterMaybe } from '@dereekb/rxjs';
|
|
3
|
-
import { Directive, inject, input } from '@angular/core';
|
|
4
|
-
import { AbstractSubscriptionDirective } from '../../../subscription';
|
|
5
|
-
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
6
|
-
import { toObservable } from '@angular/core/rxjs-interop';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
/**
|
|
9
|
-
* Directive that executes a function on ActionContextStore Success.
|
|
10
|
-
*/
|
|
11
|
-
export class DbxActionSuccessHandlerDirective extends AbstractSubscriptionDirective {
|
|
12
|
-
source = inject((DbxActionContextStoreSourceInstance), { host: true });
|
|
13
|
-
dbxActionSuccessHandler = input();
|
|
14
|
-
successFunction$ = toObservable(this.dbxActionSuccessHandler).pipe(filterMaybe(), shareReplay(1));
|
|
15
|
-
ngOnInit() {
|
|
16
|
-
this.sub = this.successFunction$
|
|
17
|
-
.pipe(switchMap((successFunction) => this.source.success$.pipe(map((x) => [successFunction, x]), tap(([successFn, result]) => {
|
|
18
|
-
successFn(result);
|
|
19
|
-
}))))
|
|
20
|
-
.subscribe();
|
|
21
|
-
}
|
|
22
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionSuccessHandlerDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
23
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionSuccessHandlerDirective, isStandalone: true, selector: "[dbxActionSuccessHandler]", inputs: { dbxActionSuccessHandler: { classPropertyName: "dbxActionSuccessHandler", publicName: "dbxActionSuccessHandler", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });
|
|
24
|
-
}
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionSuccessHandlerDirective, decorators: [{
|
|
26
|
-
type: Directive,
|
|
27
|
-
args: [{
|
|
28
|
-
selector: '[dbxActionSuccessHandler]',
|
|
29
|
-
standalone: true
|
|
30
|
-
}]
|
|
31
|
-
}] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLnN1Y2Nlc3MuaGFuZGxlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvc3RhdGUvYWN0aW9uLnN1Y2Nlc3MuaGFuZGxlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN4RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFNUUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEUsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDaEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQU8xRDs7R0FFRztBQUtILE1BQU0sT0FBTyxnQ0FBdUMsU0FBUSw2QkFBNkI7SUFDOUUsTUFBTSxHQUFHLE1BQU0sQ0FBQyxDQUFBLG1DQUF5QyxDQUFBLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUUzRSx1QkFBdUIsR0FBRyxLQUFLLEVBQTZDLENBQUM7SUFDN0UsZ0JBQWdCLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUUzRyxRQUFRO1FBQ04sSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsZ0JBQWdCO2FBQzdCLElBQUksQ0FDSCxTQUFTLENBQUMsQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUM1QixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ3ZCLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUE0QyxDQUFDLEVBQzNFLEdBQUcsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxFQUFFLEVBQUU7WUFDMUIsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3BCLENBQUMsQ0FBQyxDQUNILENBQ0YsQ0FDRjthQUNBLFNBQVMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7d0dBbkJVLGdDQUFnQzs0RkFBaEMsZ0NBQWdDOzs0RkFBaEMsZ0NBQWdDO2tCQUo1QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1hcCwgdGFwLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXJNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkluaXQsIE9uRGVzdHJveSwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdHlwZSBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9zdWJzY3JpcHRpb24nO1xuaW1wb3J0IHsgRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuLyoqXG4gKiBQZXJmb3JtcyB0aGUgYWN0aW9uIG9uIHN1Y2Nlc3MuXG4gKi9cbmV4cG9ydCB0eXBlIERieEFjdGlvblN1Y2Nlc3NIYW5kbGVyRnVuY3Rpb248TyA9IHVua25vd24+ID0gKHZhbHVlOiBPKSA9PiB2b2lkO1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0aGF0IGV4ZWN1dGVzIGEgZnVuY3Rpb24gb24gQWN0aW9uQ29udGV4dFN0b3JlIFN1Y2Nlc3MuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhBY3Rpb25TdWNjZXNzSGFuZGxlcl0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERieEFjdGlvblN1Y2Nlc3NIYW5kbGVyRGlyZWN0aXZlPFQsIE8+IGV4dGVuZHMgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHJlYWRvbmx5IHNvdXJjZSA9IGluamVjdChEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZTxULCBPPiwgeyBob3N0OiB0cnVlIH0pO1xuXG4gIHJlYWRvbmx5IGRieEFjdGlvblN1Y2Nlc3NIYW5kbGVyID0gaW5wdXQ8TWF5YmU8RGJ4QWN0aW9uU3VjY2Vzc0hhbmRsZXJGdW5jdGlvbjxPPj4+KCk7XG4gIHJlYWRvbmx5IHN1Y2Nlc3NGdW5jdGlvbiQgPSB0b09ic2VydmFibGUodGhpcy5kYnhBY3Rpb25TdWNjZXNzSGFuZGxlcikucGlwZShmaWx0ZXJNYXliZSgpLCBzaGFyZVJlcGxheSgxKSk7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zdWIgPSB0aGlzLnN1Y2Nlc3NGdW5jdGlvbiRcbiAgICAgIC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKHN1Y2Nlc3NGdW5jdGlvbikgPT5cbiAgICAgICAgICB0aGlzLnNvdXJjZS5zdWNjZXNzJC5waXBlKFxuICAgICAgICAgICAgbWFwKCh4KSA9PiBbc3VjY2Vzc0Z1bmN0aW9uLCB4XSBhcyBbRGJ4QWN0aW9uU3VjY2Vzc0hhbmRsZXJGdW5jdGlvbjxPPiwgT10pLFxuICAgICAgICAgICAgdGFwKChbc3VjY2Vzc0ZuLCByZXN1bHRdKSA9PiB7XG4gICAgICAgICAgICAgIHN1Y2Nlc3NGbihyZXN1bHQpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICApXG4gICAgICAgIClcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIl19
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { Directive, inject, input } from '@angular/core';
|
|
2
|
-
import { emitDelayObs } from '@dereekb/rxjs';
|
|
3
|
-
import { of, exhaustMap, shareReplay } from 'rxjs';
|
|
4
|
-
import { AbstractIfDirective } from '../../../view/if.directive';
|
|
5
|
-
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
6
|
-
import { transformEmptyStringInputToUndefined } from '../../../util/input';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
/**
|
|
9
|
-
* Structural directive that displays the content when the store has been triggered.
|
|
10
|
-
*
|
|
11
|
-
* Can be configured to hide for a temporary period.
|
|
12
|
-
*/
|
|
13
|
-
export class DbxActionTriggeredDirective extends AbstractIfDirective {
|
|
14
|
-
_store = inject(DbxActionContextStoreSourceInstance);
|
|
15
|
-
hideAfter = input(undefined, { alias: 'dbxActionTriggered', transform: transformEmptyStringInputToUndefined });
|
|
16
|
-
show$ = this._store.triggered$.pipe(exhaustMap((triggered) => {
|
|
17
|
-
if (triggered) {
|
|
18
|
-
return emitDelayObs(true, false, this.hideAfter());
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
return of(false);
|
|
22
|
-
}
|
|
23
|
-
}), shareReplay(1));
|
|
24
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionTriggeredDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
25
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionTriggeredDirective, isStandalone: true, selector: "[dbxActionTriggered]", inputs: { hideAfter: { classPropertyName: "hideAfter", publicName: "dbxActionTriggered", 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: DbxActionTriggeredDirective, decorators: [{
|
|
28
|
-
type: Directive,
|
|
29
|
-
args: [{
|
|
30
|
-
selector: '[dbxActionTriggered]',
|
|
31
|
-
standalone: true
|
|
32
|
-
}]
|
|
33
|
-
}] });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLnRyaWdnZXJlZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvc3RhdGUvYWN0aW9uLnRyaWdnZXJlZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0MsT0FBTyxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUUzRTs7OztHQUlHO0FBS0gsTUFBTSxPQUFPLDJCQUE0QixTQUFRLG1CQUFtQjtJQUNqRCxNQUFNLEdBQUcsTUFBTSxDQUFDLG1DQUFtQyxDQUFDLENBQUM7SUFFN0QsU0FBUyxHQUFHLEtBQUssQ0FBb0MsU0FBUyxFQUFFLEVBQUUsS0FBSyxFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxvQ0FBb0MsRUFBRSxDQUFDLENBQUM7SUFFbEosS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDMUMsVUFBVSxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7UUFDdkIsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNkLE9BQU8sWUFBWSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDckQsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuQixDQUFDO0lBQ0gsQ0FBQyxDQUFDLEVBQ0YsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7d0dBZFMsMkJBQTJCOzRGQUEzQiwyQkFBMkI7OzRGQUEzQiwyQkFBMkI7a0JBSnZDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBlbWl0RGVsYXlPYnMgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IHR5cGUgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IG9mLCBleGhhdXN0TWFwLCBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQWJzdHJhY3RJZkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL3ZpZXcvaWYuZGlyZWN0aXZlJztcbmltcG9ydCB7IERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLnN0b3JlLnNvdXJjZSc7XG5pbXBvcnQgeyB0cmFuc2Zvcm1FbXB0eVN0cmluZ0lucHV0VG9VbmRlZmluZWQgfSBmcm9tICcuLi8uLi8uLi91dGlsL2lucHV0JztcblxuLyoqXG4gKiBTdHJ1Y3R1cmFsIGRpcmVjdGl2ZSB0aGF0IGRpc3BsYXlzIHRoZSBjb250ZW50IHdoZW4gdGhlIHN0b3JlIGhhcyBiZWVuIHRyaWdnZXJlZC5cbiAqXG4gKiBDYW4gYmUgY29uZmlndXJlZCB0byBoaWRlIGZvciBhIHRlbXBvcmFyeSBwZXJpb2QuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhBY3Rpb25UcmlnZ2VyZWRdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhBY3Rpb25UcmlnZ2VyZWREaXJlY3RpdmUgZXh0ZW5kcyBBYnN0cmFjdElmRGlyZWN0aXZlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfc3RvcmUgPSBpbmplY3QoRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UpO1xuXG4gIHJlYWRvbmx5IGhpZGVBZnRlciA9IGlucHV0PE1heWJlPG51bWJlcj4sIE1heWJlPG51bWJlcj4gfCAnJz4odW5kZWZpbmVkLCB7IGFsaWFzOiAnZGJ4QWN0aW9uVHJpZ2dlcmVkJywgdHJhbnNmb3JtOiB0cmFuc2Zvcm1FbXB0eVN0cmluZ0lucHV0VG9VbmRlZmluZWQgfSk7XG5cbiAgcmVhZG9ubHkgc2hvdyQgPSB0aGlzLl9zdG9yZS50cmlnZ2VyZWQkLnBpcGUoXG4gICAgZXhoYXVzdE1hcCgodHJpZ2dlcmVkKSA9PiB7XG4gICAgICBpZiAodHJpZ2dlcmVkKSB7XG4gICAgICAgIHJldHVybiBlbWl0RGVsYXlPYnModHJ1ZSwgZmFsc2UsIHRoaXMuaGlkZUFmdGVyKCkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIG9mKGZhbHNlKTtcbiAgICAgIH1cbiAgICB9KSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xufVxuIl19
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { Directive, inject, input } from '@angular/core';
|
|
2
|
-
import { getValueFromGetter } from '@dereekb/util';
|
|
3
|
-
import { filterMaybe } from '@dereekb/rxjs';
|
|
4
|
-
import { BehaviorSubject, combineLatest, map, shareReplay, switchMap } from 'rxjs';
|
|
5
|
-
import { AbstractSubscriptionDirective } from '../../../subscription';
|
|
6
|
-
import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
|
|
7
|
-
import { toObservable } from '@angular/core/rxjs-interop';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
/**
|
|
10
|
-
* Directive that provides a default value when triggered.
|
|
11
|
-
*
|
|
12
|
-
* No value is required, allowing the directive to automatically call readyValue.
|
|
13
|
-
*
|
|
14
|
-
* The valueOrFunction will filter on null/undefined input and wait until the input value is non-null.
|
|
15
|
-
*
|
|
16
|
-
* Use a getter if null/undefined values should be passed to the action.
|
|
17
|
-
*/
|
|
18
|
-
export class DbxActionValueDirective extends AbstractSubscriptionDirective {
|
|
19
|
-
valueOrFunction = input('', { alias: 'dbxActionValue' });
|
|
20
|
-
source = inject((DbxActionContextStoreSourceInstance), { host: true });
|
|
21
|
-
_valueOrFunctionOverride = new BehaviorSubject(undefined);
|
|
22
|
-
valueOrFunction$ = combineLatest([this._valueOrFunctionOverride, toObservable(this.valueOrFunction)]).pipe(map(([x, y]) => x ?? y), filterMaybe(), shareReplay(1));
|
|
23
|
-
constructor() {
|
|
24
|
-
super();
|
|
25
|
-
}
|
|
26
|
-
ngOnInit() {
|
|
27
|
-
this.sub = this.valueOrFunction$.pipe(switchMap((valueOrFunction) => this.source.triggered$.pipe(map(() => valueOrFunction)))).subscribe((valueOrFunction) => {
|
|
28
|
-
const value = getValueFromGetter(valueOrFunction);
|
|
29
|
-
this.source.readyValue(value);
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
setValueOrFunction(value) {
|
|
33
|
-
this._valueOrFunctionOverride.next(value);
|
|
34
|
-
}
|
|
35
|
-
ngOnDestroy() {
|
|
36
|
-
this.source.lockSet.onNextUnlock(() => {
|
|
37
|
-
super.ngOnDestroy();
|
|
38
|
-
this._valueOrFunctionOverride.complete();
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionValueDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
42
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionValueDirective, isStandalone: true, selector: "dbxActionValue,[dbxActionValue]", inputs: { valueOrFunction: { classPropertyName: "valueOrFunction", publicName: "dbxActionValue", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });
|
|
43
|
-
}
|
|
44
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionValueDirective, decorators: [{
|
|
45
|
-
type: Directive,
|
|
46
|
-
args: [{
|
|
47
|
-
selector: 'dbxActionValue,[dbxActionValue]',
|
|
48
|
-
standalone: true
|
|
49
|
-
}]
|
|
50
|
-
}], ctorParameters: () => [] });
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLnZhbHVlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1jb3JlL3NyYy9saWIvYWN0aW9uL2RpcmVjdGl2ZS9zdGF0ZS9hY3Rpb24udmFsdWUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUUsT0FBTyxFQUFFLGtCQUFrQixFQUF3QixNQUFNLGVBQWUsQ0FBQztBQUN6RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBYyxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9GLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFMUQ7Ozs7Ozs7O0dBUUc7QUFLSCxNQUFNLE9BQU8sdUJBQThCLFNBQVEsNkJBQTZCO0lBQ3JFLGVBQWUsR0FBRyxLQUFLLENBQStCLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7SUFFdkYsTUFBTSxHQUFHLE1BQU0sQ0FBQyxDQUFBLG1DQUF5QyxDQUFBLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUVuRSx3QkFBd0IsR0FBRyxJQUFJLGVBQWUsQ0FBMEIsU0FBUyxDQUFDLENBQUM7SUFFM0YsZ0JBQWdCLEdBQWlDLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxZQUFZLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQy9JLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUssQ0FBNkIsQ0FBQyxFQUNwRCxXQUFXLEVBQUUsRUFDYixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztJQUVGO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsZUFBZSxFQUFFLEVBQUU7WUFDM0osTUFBTSxLQUFLLEdBQU0sa0JBQWtCLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDckQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsS0FBOEI7UUFDL0MsSUFBSSxDQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRVEsV0FBVztRQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFO1lBQ3BDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsd0JBQXdCLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDM0MsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3dHQWpDVSx1QkFBdUI7NEZBQXZCLHVCQUF1Qjs7NEZBQXZCLHVCQUF1QjtrQkFKbkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUNBQWlDO29CQUMzQyxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIE9uSW5pdCwgT25EZXN0cm95LCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBnZXRWYWx1ZUZyb21HZXR0ZXIsIE1heWJlLCBHZXR0ZXJPclZhbHVlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBmaWx0ZXJNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAsIE9ic2VydmFibGUsIHNoYXJlUmVwbGF5LCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vc3Vic2NyaXB0aW9uJztcbmltcG9ydCB7IERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLnN0b3JlLnNvdXJjZSc7XG5pbXBvcnQgeyB0b09ic2VydmFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbi8qKlxuICogRGlyZWN0aXZlIHRoYXQgcHJvdmlkZXMgYSBkZWZhdWx0IHZhbHVlIHdoZW4gdHJpZ2dlcmVkLlxuICpcbiAqIE5vIHZhbHVlIGlzIHJlcXVpcmVkLCBhbGxvd2luZyB0aGUgZGlyZWN0aXZlIHRvIGF1dG9tYXRpY2FsbHkgY2FsbCByZWFkeVZhbHVlLlxuICpcbiAqIFRoZSB2YWx1ZU9yRnVuY3Rpb24gd2lsbCBmaWx0ZXIgb24gbnVsbC91bmRlZmluZWQgaW5wdXQgYW5kIHdhaXQgdW50aWwgdGhlIGlucHV0IHZhbHVlIGlzIG5vbi1udWxsLlxuICpcbiAqIFVzZSBhIGdldHRlciBpZiBudWxsL3VuZGVmaW5lZCB2YWx1ZXMgc2hvdWxkIGJlIHBhc3NlZCB0byB0aGUgYWN0aW9uLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdkYnhBY3Rpb25WYWx1ZSxbZGJ4QWN0aW9uVmFsdWVdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhBY3Rpb25WYWx1ZURpcmVjdGl2ZTxULCBPPiBleHRlbmRzIEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICByZWFkb25seSB2YWx1ZU9yRnVuY3Rpb24gPSBpbnB1dDxNYXliZTxHZXR0ZXJPclZhbHVlPFQ+IHwgJyc+PignJywgeyBhbGlhczogJ2RieEFjdGlvblZhbHVlJyB9KTtcblxuICByZWFkb25seSBzb3VyY2UgPSBpbmplY3QoRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2U8VCwgTz4sIHsgaG9zdDogdHJ1ZSB9KTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF92YWx1ZU9yRnVuY3Rpb25PdmVycmlkZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWF5YmU8R2V0dGVyT3JWYWx1ZTxUPj4+KHVuZGVmaW5lZCk7XG5cbiAgcmVhZG9ubHkgdmFsdWVPckZ1bmN0aW9uJDogT2JzZXJ2YWJsZTxHZXR0ZXJPclZhbHVlPFQ+PiA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuX3ZhbHVlT3JGdW5jdGlvbk92ZXJyaWRlLCB0b09ic2VydmFibGUodGhpcy52YWx1ZU9yRnVuY3Rpb24pXSkucGlwZShcbiAgICBtYXAoKFt4LCB5XSkgPT4geCA/PyAoeSBhcyBNYXliZTxHZXR0ZXJPclZhbHVlPFQ+PikpLFxuICAgIGZpbHRlck1heWJlKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zdWIgPSB0aGlzLnZhbHVlT3JGdW5jdGlvbiQucGlwZShzd2l0Y2hNYXAoKHZhbHVlT3JGdW5jdGlvbikgPT4gdGhpcy5zb3VyY2UudHJpZ2dlcmVkJC5waXBlKG1hcCgoKSA9PiB2YWx1ZU9yRnVuY3Rpb24pKSkpLnN1YnNjcmliZSgodmFsdWVPckZ1bmN0aW9uKSA9PiB7XG4gICAgICBjb25zdCB2YWx1ZTogVCA9IGdldFZhbHVlRnJvbUdldHRlcih2YWx1ZU9yRnVuY3Rpb24pO1xuICAgICAgdGhpcy5zb3VyY2UucmVhZHlWYWx1ZSh2YWx1ZSk7XG4gICAgfSk7XG4gIH1cblxuICBzZXRWYWx1ZU9yRnVuY3Rpb24odmFsdWU6IE1heWJlPEdldHRlck9yVmFsdWU8VD4+KSB7XG4gICAgdGhpcy5fdmFsdWVPckZ1bmN0aW9uT3ZlcnJpZGUubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBvdmVycmlkZSBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnNvdXJjZS5sb2NrU2V0Lm9uTmV4dFVubG9jaygoKSA9PiB7XG4gICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgICAgdGhpcy5fdmFsdWVPckZ1bmN0aW9uT3ZlcnJpZGUuY29tcGxldGUoKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
|