@dereekb/dbx-core 11.1.7 → 12.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.
Files changed (279) hide show
  1. package/esm2022/lib/action/action.holder.mjs +1 -1
  2. package/esm2022/lib/action/action.machine.mjs +5 -5
  3. package/esm2022/lib/action/action.mjs +1 -1
  4. package/esm2022/lib/action/action.module.mjs +14 -13
  5. package/esm2022/lib/action/action.store.mjs +22 -10
  6. package/esm2022/lib/action/action.store.source.mjs +4 -1
  7. package/esm2022/lib/action/directive/auto/action.automodify.directive.mjs +24 -32
  8. package/esm2022/lib/action/directive/auto/action.autotrigger.directive.mjs +74 -87
  9. package/esm2022/lib/action/directive/auto/index.mjs +1 -2
  10. package/esm2022/lib/action/directive/context/action.directive.mjs +7 -6
  11. package/esm2022/lib/action/directive/context/action.source.directive.mjs +12 -25
  12. package/esm2022/lib/action/directive/debug/action.logger.directive.mjs +6 -5
  13. package/esm2022/lib/action/directive/map/action.map.directive.mjs +21 -65
  14. package/esm2022/lib/action/directive/map/action.map.key.directive.mjs +9 -8
  15. package/esm2022/lib/action/directive/map/action.map.mjs +54 -1
  16. package/esm2022/lib/action/directive/map/action.map.source.directive.mjs +10 -9
  17. package/esm2022/lib/action/directive/map/action.map.utility.mjs +37 -0
  18. package/esm2022/lib/action/directive/map/action.map.working.disable.directive.mjs +16 -16
  19. package/esm2022/lib/action/directive/map/index.mjs +2 -1
  20. package/esm2022/lib/action/directive/state/action.disabled.directive.mjs +6 -5
  21. package/esm2022/lib/action/directive/state/action.disableonsuccess.directive.mjs +6 -5
  22. package/esm2022/lib/action/directive/state/action.enforce.modified.directive.mjs +6 -5
  23. package/esm2022/lib/action/directive/state/action.handler.directive.mjs +29 -43
  24. package/esm2022/lib/action/directive/state/action.handler.instance.mjs +12 -14
  25. package/esm2022/lib/action/directive/state/action.presuccess.directive.mjs +6 -5
  26. package/esm2022/lib/action/directive/state/action.success.directive.mjs +6 -5
  27. package/esm2022/lib/action/directive/state/action.success.handler.directive.mjs +12 -23
  28. package/esm2022/lib/action/directive/state/action.value.directive.mjs +23 -24
  29. package/esm2022/lib/action/directive/state/action.value.stream.directive.mjs +22 -36
  30. package/esm2022/lib/action/directive/state/action.value.trigger.directive.mjs +50 -42
  31. package/esm2022/lib/action/directive/state/action.value.trigger.instance.mjs +27 -15
  32. package/esm2022/lib/action/directive/state/action.working.directive.mjs +35 -0
  33. package/esm2022/lib/action/directive/state/index.mjs +3 -2
  34. package/esm2022/lib/auth/auth.module.mjs +13 -7
  35. package/esm2022/lib/auth/auth.providers.mjs +16 -0
  36. package/esm2022/lib/auth/auth.role.any.directive.mjs +13 -14
  37. package/esm2022/lib/auth/auth.role.has.directive.mjs +13 -14
  38. package/esm2022/lib/auth/auth.role.not.directive.mjs +13 -14
  39. package/esm2022/lib/auth/auth.state.providers.mjs +14 -0
  40. package/esm2022/lib/auth/auth.state.service.mjs +3 -3
  41. package/esm2022/lib/auth/index.mjs +3 -2
  42. package/esm2022/lib/auth/router/auth.router.module.mjs +4 -4
  43. package/esm2022/lib/auth/router/auth.router.providers.mjs +19 -0
  44. package/esm2022/lib/auth/router/auth.router.service.mjs +5 -5
  45. package/esm2022/lib/auth/router/index.mjs +2 -1
  46. package/esm2022/lib/auth/router/provider/uirouter/hook.mjs +1 -1
  47. package/esm2022/lib/auth/router/provider/uirouter/redirect.mjs +1 -1
  48. package/esm2022/lib/auth/router/provider/uirouter/role.hook.mjs +1 -1
  49. package/esm2022/lib/auth/router/provider/uirouter/state.hook.mjs +1 -1
  50. package/esm2022/lib/auth/router/state/auth.router.state.module.mjs +10 -9
  51. package/esm2022/lib/auth/router/state/auth.router.state.providers.mjs +23 -0
  52. package/esm2022/lib/auth/router/state/effect/auth.router.state.effect.mjs +4 -4
  53. package/esm2022/lib/auth/router/state/index.mjs +2 -1
  54. package/esm2022/lib/auth/state/effect/auth.effect.mjs +5 -5
  55. package/esm2022/lib/button/action/action.button.directive.mjs +9 -12
  56. package/esm2022/lib/button/action/action.button.trigger.directive.mjs +7 -6
  57. package/esm2022/lib/button/button.directive.mjs +51 -60
  58. package/esm2022/lib/button/button.loading.directive.mjs +19 -20
  59. package/esm2022/lib/button/button.mjs +3 -3
  60. package/esm2022/lib/button/button.module.mjs +16 -8
  61. package/esm2022/lib/button/router/button.segue.directive.mjs +8 -7
  62. package/esm2022/lib/context/context.directive.mjs +7 -6
  63. package/esm2022/lib/context/context.mjs +8 -5
  64. package/esm2022/lib/context/context.module.mjs +9 -10
  65. package/esm2022/lib/context/context.providers.mjs +12 -0
  66. package/esm2022/lib/context/context.service.mjs +3 -3
  67. package/esm2022/lib/context/index.mjs +2 -1
  68. package/esm2022/lib/environment/environment.mjs +6 -0
  69. package/esm2022/lib/environment/environment.providers.mjs +19 -0
  70. package/esm2022/lib/environment/environment.service.mjs +30 -0
  71. package/esm2022/lib/environment/index.mjs +4 -3
  72. package/esm2022/lib/filter/filter.abstract.connector.directive.mjs +4 -4
  73. package/esm2022/lib/filter/filter.abstract.source.directive.mjs +31 -20
  74. package/esm2022/lib/filter/filter.connect.source.directive.mjs +6 -5
  75. package/esm2022/lib/filter/filter.connector.directive.mjs +6 -5
  76. package/esm2022/lib/filter/filter.map.connector.directive.mjs +12 -18
  77. package/esm2022/lib/filter/filter.map.directive.mjs +6 -5
  78. package/esm2022/lib/filter/filter.map.instance.directive.mjs +13 -10
  79. package/esm2022/lib/filter/filter.map.source.directive.mjs +22 -18
  80. package/esm2022/lib/filter/filter.module.mjs +8 -10
  81. package/esm2022/lib/filter/filter.source.directive.mjs +6 -5
  82. package/esm2022/lib/injection/injection.array.component.mjs +18 -31
  83. package/esm2022/lib/injection/injection.component.mjs +17 -23
  84. package/esm2022/lib/injection/injection.component.module.mjs +13 -9
  85. package/esm2022/lib/injection/injection.context.directive.mjs +7 -6
  86. package/esm2022/lib/injection/injection.context.forward.directive.mjs +3 -3
  87. package/esm2022/lib/injection/injection.directive.mjs +4 -4
  88. package/esm2022/lib/injection/injection.instance.mjs +7 -4
  89. package/esm2022/lib/injection/injection.mjs +1 -1
  90. package/esm2022/lib/injection/injection.rxjs.mjs +1 -1
  91. package/esm2022/lib/ngrx/store.lockset.mjs +6 -6
  92. package/esm2022/lib/pipe/async/asobservable.pipe.mjs +8 -5
  93. package/esm2022/lib/pipe/async/async.pipe.module.mjs +10 -7
  94. package/esm2022/lib/pipe/date/date.pipe.module.mjs +29 -8
  95. package/esm2022/lib/pipe/date/datedayrange.pipe.mjs +9 -5
  96. package/esm2022/lib/pipe/date/datedaytimerange.pipe.mjs +9 -5
  97. package/esm2022/lib/pipe/date/datedistance.pipe.mjs +9 -5
  98. package/esm2022/lib/pipe/date/dateformatdistance.pipe.mjs +9 -5
  99. package/esm2022/lib/pipe/date/datefromtoformat.pipe.mjs +9 -5
  100. package/esm2022/lib/pipe/date/daterangedistance.pipe.mjs +9 -5
  101. package/esm2022/lib/pipe/date/datetimerange.pipe.mjs +9 -5
  102. package/esm2022/lib/pipe/date/datetimerangeonly.pipe.mjs +9 -5
  103. package/esm2022/lib/pipe/date/datetimerangeonlydistance.pipe.mjs +9 -5
  104. package/esm2022/lib/pipe/date/minutesstring.pipe.mjs +9 -5
  105. package/esm2022/lib/pipe/date/systemdatetotargetdate.pipe.mjs +9 -5
  106. package/esm2022/lib/pipe/date/targetdatetosystemdate.pipe.mjs +9 -5
  107. package/esm2022/lib/pipe/date/timedistance.pipe.mjs +17 -9
  108. package/esm2022/lib/pipe/date/timezoneabbreviation.pipe.mjs +9 -5
  109. package/esm2022/lib/pipe/date/tojsdate.pipe.mjs +9 -5
  110. package/esm2022/lib/pipe/date/tominutes.pipe.mjs +9 -5
  111. package/esm2022/lib/pipe/misc/misc.pipe.module.mjs +12 -7
  112. package/esm2022/lib/pipe/misc/prettyjson.pipe.mjs +8 -5
  113. package/esm2022/lib/pipe/pipe.module.mjs +13 -6
  114. package/esm2022/lib/pipe/value/cuttext.pipe.mjs +9 -5
  115. package/esm2022/lib/pipe/value/dollar.pipe.mjs +9 -5
  116. package/esm2022/lib/pipe/value/getvalue.pipe.mjs +9 -7
  117. package/esm2022/lib/pipe/value/value.pipe.module.mjs +16 -8
  118. package/esm2022/lib/router/anchor/anchor.directive.mjs +12 -5
  119. package/esm2022/lib/router/anchor/anchor.mjs +7 -20
  120. package/esm2022/lib/router/anchor/clickable.mjs +1 -1
  121. package/esm2022/lib/router/auth/hook/id.hook.mjs +1 -1
  122. package/esm2022/lib/router/model/id.param.redirect.mjs +1 -1
  123. package/esm2022/lib/router/model/model.module.mjs +15 -9
  124. package/esm2022/lib/router/model/model.router.id.directive.mjs +6 -5
  125. package/esm2022/lib/router/model/model.router.key.directive.mjs +6 -5
  126. package/esm2022/lib/router/model/model.router.uid.directive.mjs +6 -5
  127. package/esm2022/lib/router/router/provider/angular/angular.router.service.mjs +4 -4
  128. package/esm2022/lib/router/router/provider/angular/angular.router.service.module.mjs +7 -6
  129. package/esm2022/lib/router/router/provider/uirouter/index.mjs +2 -1
  130. package/esm2022/lib/router/router/provider/uirouter/uirouter.router.service.mjs +5 -5
  131. package/esm2022/lib/router/router/provider/uirouter/uirouter.router.service.module.mjs +8 -5
  132. package/esm2022/lib/router/router/provider/uirouter/uirouter.router.service.providers.mjs +24 -0
  133. package/esm2022/lib/router/router/service/router.service.rxjs.mjs +1 -1
  134. package/esm2022/lib/router/router/transition/transition.directive.mjs +3 -3
  135. package/esm2022/lib/router/router/transition/transition.watcher.directive.mjs +4 -4
  136. package/esm2022/lib/router/router/util/route.default.mjs +1 -1
  137. package/esm2022/lib/router/segue.mjs +1 -1
  138. package/esm2022/lib/storage/index.mjs +2 -2
  139. package/esm2022/lib/storage/storage.accessor.simple.factory.mjs +3 -3
  140. package/esm2022/lib/storage/storage.accessor.simple.mjs +1 -1
  141. package/esm2022/lib/storage/storage.object.localstorage.mjs +1 -1
  142. package/esm2022/lib/storage/storage.providers.mjs +41 -0
  143. package/esm2022/lib/subscription/subscription.directive.mjs +7 -7
  144. package/esm2022/lib/util/view.mjs +9 -1
  145. package/esm2022/lib/view/if.directive.mjs +4 -4
  146. package/fesm2022/dereekb-dbx-core.mjs +2483 -2234
  147. package/fesm2022/dereekb-dbx-core.mjs.map +1 -1
  148. package/lib/action/action.module.d.ts +5 -3
  149. package/lib/action/action.store.d.ts +18 -9
  150. package/lib/action/action.store.source.d.ts +1 -0
  151. package/lib/action/directive/auto/action.automodify.directive.d.ts +4 -6
  152. package/lib/action/directive/auto/action.autotrigger.directive.d.ts +15 -32
  153. package/lib/action/directive/auto/index.d.ts +0 -1
  154. package/lib/action/directive/context/action.directive.d.ts +1 -1
  155. package/lib/action/directive/context/action.source.directive.d.ts +3 -7
  156. package/lib/action/directive/debug/action.logger.directive.d.ts +1 -1
  157. package/lib/action/directive/map/action.map.d.ts +31 -1
  158. package/lib/action/directive/map/action.map.directive.d.ts +4 -24
  159. package/lib/action/directive/map/action.map.key.directive.d.ts +3 -3
  160. package/lib/action/directive/map/action.map.source.directive.d.ts +2 -2
  161. package/lib/action/directive/map/action.map.utility.d.ts +48 -0
  162. package/lib/action/directive/map/action.map.working.disable.directive.d.ts +4 -4
  163. package/lib/action/directive/map/index.d.ts +1 -0
  164. package/lib/action/directive/state/action.disabled.directive.d.ts +1 -1
  165. package/lib/action/directive/state/action.disableonsuccess.directive.d.ts +1 -1
  166. package/lib/action/directive/state/action.enforce.modified.directive.d.ts +1 -1
  167. package/lib/action/directive/state/action.handler.directive.d.ts +12 -13
  168. package/lib/action/directive/state/action.handler.instance.d.ts +4 -4
  169. package/lib/action/directive/state/action.presuccess.directive.d.ts +1 -1
  170. package/lib/action/directive/state/action.success.directive.d.ts +1 -1
  171. package/lib/action/directive/state/action.success.handler.directive.d.ts +2 -5
  172. package/lib/action/directive/state/action.value.directive.d.ts +10 -5
  173. package/lib/action/directive/state/action.value.stream.directive.d.ts +11 -11
  174. package/lib/action/directive/state/action.value.trigger.directive.d.ts +23 -17
  175. package/lib/action/directive/state/action.value.trigger.instance.d.ts +28 -17
  176. package/lib/action/directive/state/{action.working.component.d.ts → action.working.directive.d.ts} +1 -1
  177. package/lib/action/directive/state/index.d.ts +2 -1
  178. package/lib/auth/auth.module.d.ts +8 -1
  179. package/lib/auth/auth.providers.d.ts +12 -0
  180. package/lib/auth/auth.role.any.directive.d.ts +7 -7
  181. package/lib/auth/auth.role.has.directive.d.ts +7 -7
  182. package/lib/auth/auth.role.not.directive.d.ts +7 -7
  183. package/lib/auth/auth.state.providers.d.ts +7 -0
  184. package/lib/auth/index.d.ts +2 -1
  185. package/lib/auth/router/auth.router.providers.d.ts +18 -0
  186. package/lib/auth/router/index.d.ts +1 -0
  187. package/lib/auth/router/state/auth.router.state.module.d.ts +4 -2
  188. package/lib/auth/router/state/auth.router.state.providers.d.ts +19 -0
  189. package/lib/auth/router/state/index.d.ts +1 -0
  190. package/lib/auth/state/action/auth.action.d.ts +3 -3
  191. package/lib/auth/state/action/user.action.d.ts +4 -4
  192. package/lib/auth/state/effect/auth.effect.d.ts +9 -9
  193. package/lib/auth/state/reducer/user.reducer.d.ts +1 -1
  194. package/lib/button/action/action.button.directive.d.ts +3 -4
  195. package/lib/button/action/action.button.trigger.directive.d.ts +2 -2
  196. package/lib/button/button.d.ts +55 -14
  197. package/lib/button/button.directive.d.ts +25 -18
  198. package/lib/button/button.loading.directive.d.ts +7 -9
  199. package/lib/button/button.module.d.ts +9 -1
  200. package/lib/button/router/button.segue.directive.d.ts +4 -3
  201. package/lib/context/context.d.ts +7 -4
  202. package/lib/context/context.directive.d.ts +1 -1
  203. package/lib/context/context.module.d.ts +4 -2
  204. package/lib/context/context.providers.d.ts +7 -0
  205. package/lib/context/index.d.ts +1 -0
  206. package/lib/context/state/action/data.action.d.ts +2 -2
  207. package/lib/context/state/reducer/data.reducer.d.ts +1 -1
  208. package/lib/environment/environment.providers.d.ts +8 -0
  209. package/lib/environment/index.d.ts +3 -2
  210. package/lib/filter/filter.abstract.connector.directive.d.ts +1 -1
  211. package/lib/filter/filter.abstract.source.directive.d.ts +14 -10
  212. package/lib/filter/filter.connect.source.directive.d.ts +1 -1
  213. package/lib/filter/filter.connector.directive.d.ts +1 -1
  214. package/lib/filter/filter.map.connector.directive.d.ts +6 -6
  215. package/lib/filter/filter.map.directive.d.ts +1 -1
  216. package/lib/filter/filter.map.instance.directive.d.ts +4 -5
  217. package/lib/filter/filter.map.source.directive.d.ts +13 -6
  218. package/lib/filter/filter.module.d.ts +1 -2
  219. package/lib/filter/filter.source.directive.d.ts +1 -1
  220. package/lib/injection/injection.array.component.d.ts +3 -9
  221. package/lib/injection/injection.component.d.ts +8 -4
  222. package/lib/injection/injection.component.module.d.ts +8 -3
  223. package/lib/injection/injection.context.directive.d.ts +2 -2
  224. package/lib/injection/injection.d.ts +8 -8
  225. package/lib/injection/injection.directive.d.ts +4 -3
  226. package/lib/injection/injection.instance.d.ts +5 -4
  227. package/lib/pipe/async/asobservable.pipe.d.ts +1 -1
  228. package/lib/pipe/async/async.pipe.module.d.ts +4 -1
  229. package/lib/pipe/date/date.pipe.module.d.ts +22 -1
  230. package/lib/pipe/date/datedayrange.pipe.d.ts +1 -1
  231. package/lib/pipe/date/datedaytimerange.pipe.d.ts +1 -1
  232. package/lib/pipe/date/datedistance.pipe.d.ts +1 -1
  233. package/lib/pipe/date/dateformatdistance.pipe.d.ts +2 -2
  234. package/lib/pipe/date/datefromtoformat.pipe.d.ts +2 -2
  235. package/lib/pipe/date/daterangedistance.pipe.d.ts +1 -1
  236. package/lib/pipe/date/datetimerange.pipe.d.ts +1 -1
  237. package/lib/pipe/date/datetimerangeonly.pipe.d.ts +1 -1
  238. package/lib/pipe/date/datetimerangeonlydistance.pipe.d.ts +1 -1
  239. package/lib/pipe/date/minutesstring.pipe.d.ts +1 -1
  240. package/lib/pipe/date/systemdatetotargetdate.pipe.d.ts +1 -1
  241. package/lib/pipe/date/targetdatetosystemdate.pipe.d.ts +1 -1
  242. package/lib/pipe/date/timedistance.pipe.d.ts +2 -2
  243. package/lib/pipe/date/timezoneabbreviation.pipe.d.ts +1 -1
  244. package/lib/pipe/date/tojsdate.pipe.d.ts +1 -1
  245. package/lib/pipe/date/tominutes.pipe.d.ts +1 -1
  246. package/lib/pipe/misc/misc.pipe.module.d.ts +6 -1
  247. package/lib/pipe/misc/prettyjson.pipe.d.ts +1 -1
  248. package/lib/pipe/pipe.module.d.ts +6 -1
  249. package/lib/pipe/value/cuttext.pipe.d.ts +1 -1
  250. package/lib/pipe/value/dollar.pipe.d.ts +1 -1
  251. package/lib/pipe/value/getvalue.pipe.d.ts +2 -2
  252. package/lib/pipe/value/value.pipe.module.d.ts +9 -1
  253. package/lib/router/anchor/anchor.d.ts +26 -28
  254. package/lib/router/anchor/anchor.directive.d.ts +12 -6
  255. package/lib/router/anchor/clickable.d.ts +3 -3
  256. package/lib/router/model/model.module.d.ts +8 -1
  257. package/lib/router/model/model.router.id.directive.d.ts +1 -1
  258. package/lib/router/model/model.router.key.directive.d.ts +1 -1
  259. package/lib/router/model/model.router.uid.directive.d.ts +1 -1
  260. package/lib/router/router/provider/angular/angular.router.service.d.ts +2 -1
  261. package/lib/router/router/provider/uirouter/index.d.ts +1 -0
  262. package/lib/router/router/provider/uirouter/uirouter.router.service.d.ts +2 -1
  263. package/lib/router/router/provider/uirouter/uirouter.router.service.module.d.ts +3 -0
  264. package/lib/router/router/provider/uirouter/uirouter.router.service.providers.d.ts +7 -0
  265. package/lib/router/router/transition/transition.watcher.directive.d.ts +1 -1
  266. package/lib/storage/index.d.ts +1 -1
  267. package/lib/storage/storage.providers.d.ts +13 -0
  268. package/lib/subscription/subscription.directive.d.ts +8 -8
  269. package/lib/util/view.d.ts +8 -0
  270. package/package.json +8 -8
  271. package/esm2022/lib/action/directive/state/action.working.component.mjs +0 -34
  272. package/esm2022/lib/auth/auth.state.module.mjs +0 -22
  273. package/esm2022/lib/environment/service/environment.mjs +0 -6
  274. package/esm2022/lib/environment/service/environment.service.mjs +0 -33
  275. package/esm2022/lib/storage/storage.module.mjs +0 -41
  276. package/lib/auth/auth.state.module.d.ts +0 -8
  277. package/lib/storage/storage.module.d.ts +0 -10
  278. /package/lib/environment/{service/environment.d.ts → environment.d.ts} +0 -0
  279. /package/lib/environment/{service/environment.service.d.ts → environment.service.d.ts} +0 -0
@@ -1,13 +1,16 @@
1
- import { inject, Directive, Input } from '@angular/core';
1
+ import { inject, Directive, input, computed, signal } from '@angular/core';
2
2
  import { AbstractSubscriptionDirective } from '../../../subscription';
3
- import { debounce, distinctUntilChanged, exhaustMap, filter, first, map, mergeMap, shareReplay, switchMap, throttle, EMPTY, interval, Subject, combineLatest, BehaviorSubject } from 'rxjs';
3
+ import { debounce, distinctUntilChanged, exhaustMap, filter, first, map, mergeMap, shareReplay, switchMap, throttle, EMPTY, interval, combineLatest } from 'rxjs';
4
4
  import { DbxActionContextStoreSourceInstance } from '../../action.store.source';
5
- import { isDefinedAndNotFalse } from '@dereekb/util';
5
+ import { isDefinedAndNotFalse, isNotFalse } from '@dereekb/util';
6
+ import { toObservable } from '@angular/core/rxjs-interop';
6
7
  import * as i0 from "@angular/core";
7
8
  const DEFAULT_DEBOUNCE_MS = 2 * 1000;
8
9
  const DEFAULT_THROTTLE_MS = 10 * 1000;
9
10
  const DEFAULT_ERROR_THROTTLE_MS = 3 * 1000;
10
11
  const MAX_ERRORS_TO_THROTTLE_ON = 6;
12
+ const DBX_ACTION_AUTO_TRIGGER_FAST_TRIGGER_DEBOUNCE = 200;
13
+ const DBX_ACTION_AUTO_TRIGGER_INSTANT_TRIGGER_DEBOUNCE = 10;
11
14
  /**
12
15
  * Directive that automatically triggers the action periodically when it is in a modified state.
13
16
  *
@@ -15,112 +18,96 @@ const MAX_ERRORS_TO_THROTTLE_ON = 6;
15
18
  */
16
19
  export class DbxActionAutoTriggerDirective extends AbstractSubscriptionDirective {
17
20
  source = inject((DbxActionContextStoreSourceInstance), { host: true });
18
- _triggerEnabled = new BehaviorSubject(true);
19
- _triggerLimit = new BehaviorSubject(undefined);
20
- _trigger = new Subject();
21
- /**
22
- * How much to throttle the auto-triggering.
23
- */
24
- get triggerEnabled() {
25
- return this._triggerEnabled.value;
26
- }
27
- set triggerEnabled(triggerEnabled) {
28
- triggerEnabled = triggerEnabled !== false; // Default to true
29
- if (this.triggerEnabled !== triggerEnabled) {
30
- this._triggerEnabled.next(triggerEnabled);
31
- }
32
- }
33
- triggerDebounce = DEFAULT_DEBOUNCE_MS;
34
- triggerThrottle = DEFAULT_THROTTLE_MS;
35
- triggerErrorThrottle = DEFAULT_ERROR_THROTTLE_MS;
36
- maxErrorsForThrottle = MAX_ERRORS_TO_THROTTLE_ON;
37
- /**
38
- * Optional input to override both triggerDebounce and triggerThrottle.
39
- *
40
- * Used in forms that are simple.
41
- */
42
- set fastTrigger(fastTrigger) {
43
- if (isDefinedAndNotFalse(fastTrigger)) {
44
- this.triggerDebounce = 200;
45
- this.triggerThrottle = 500;
21
+ triggerDebounce = input(undefined);
22
+ triggerThrottle = input(undefined);
23
+ triggerErrorThrottle = input(DEFAULT_ERROR_THROTTLE_MS, { transform: (x) => x ?? DEFAULT_ERROR_THROTTLE_MS });
24
+ maxErrorsForThrottle = input(MAX_ERRORS_TO_THROTTLE_ON, { transform: (x) => x ?? MAX_ERRORS_TO_THROTTLE_ON });
25
+ triggerLimit = input();
26
+ triggerEnabled = input(true, { alias: 'dbxActionAutoTrigger', transform: isNotFalse });
27
+ useFastTriggerPreset = input(false, { transform: isDefinedAndNotFalse });
28
+ useInstantTriggerPreset = input(false, { transform: isDefinedAndNotFalse });
29
+ triggerDebounceSignal = computed(() => {
30
+ let debounce = this.triggerDebounce();
31
+ if (debounce == null) {
32
+ const useFastTrigger = this.useFastTriggerPreset();
33
+ const useInstantTrigger = this.useInstantTriggerPreset();
34
+ if (useFastTrigger) {
35
+ debounce = DBX_ACTION_AUTO_TRIGGER_FAST_TRIGGER_DEBOUNCE;
36
+ }
37
+ else if (useInstantTrigger) {
38
+ debounce = DBX_ACTION_AUTO_TRIGGER_INSTANT_TRIGGER_DEBOUNCE;
39
+ }
46
40
  }
47
- }
48
- /**
49
- * Optional input to override both triggerDebounce and triggerThrottle to be 0.
50
- *
51
- * Used in forms that generally return a single value.
52
- */
53
- set instantTrigger(instantTrigger) {
54
- if (isDefinedAndNotFalse(instantTrigger)) {
55
- this.triggerDebounce = 10;
56
- this.triggerThrottle = 0;
41
+ return debounce ?? DEFAULT_DEBOUNCE_MS;
42
+ });
43
+ triggerThrottleSignal = computed(() => {
44
+ let throttle = this.triggerThrottle();
45
+ if (throttle == null) {
46
+ const useFastTrigger = this.useFastTriggerPreset();
47
+ const useInstantTrigger = this.useInstantTriggerPreset();
48
+ if (useFastTrigger) {
49
+ throttle = DBX_ACTION_AUTO_TRIGGER_FAST_TRIGGER_DEBOUNCE;
50
+ }
51
+ else if (useInstantTrigger) {
52
+ throttle = DBX_ACTION_AUTO_TRIGGER_INSTANT_TRIGGER_DEBOUNCE;
53
+ }
57
54
  }
58
- }
59
- get triggerLimit() {
60
- return this._triggerLimit.value;
61
- }
62
- set triggerLimit(triggerLimit) {
63
- triggerLimit = triggerLimit || 0;
64
- this._triggerLimit.next(triggerLimit);
65
- }
66
- _triggerCount = 0;
55
+ return throttle ?? DEFAULT_THROTTLE_MS;
56
+ });
57
+ triggerCountSignal = signal(0);
67
58
  _errorCount$ = this.source.errorCountSinceLastSuccess$;
68
- _triggerCount$ = this.source.isModifiedAndCanTriggerUpdates$.pipe(filter(() => this.isEnabled), filter((x) => x), debounce(() => interval(this.triggerDebounce)), throttle(() => this._errorCount$.pipe(first(), exhaustMap((count) => interval(this.triggerThrottle + Math.min(count, this.maxErrorsForThrottle) * this.triggerErrorThrottle))), { leading: true, trailing: true }),
59
+ _triggerCount$ = this.source.isModifiedAndCanTriggerUpdates$.pipe(
60
+ // each time something is triggered the
61
+ filter(() => this.triggerEnabled() ?? false), debounce(() => interval(this.triggerDebounceSignal())), throttle(() => this._errorCount$.pipe(first(), exhaustMap((errorCount) => {
62
+ const maxErrors = this.maxErrorsForThrottle() ?? MAX_ERRORS_TO_THROTTLE_ON;
63
+ const throttleTime = this.triggerErrorThrottle() ?? DEFAULT_ERROR_THROTTLE_MS;
64
+ const additionalInterval = Math.min(errorCount, maxErrors) * throttleTime;
65
+ return interval(this.triggerThrottleSignal() + additionalInterval);
66
+ })), { leading: true, trailing: true }),
69
67
  // Check again for the "trailing" piece.
70
- filter(() => this.isEnabled), mergeMap(() => this.source.isModifiedAndCanTrigger$.pipe(first())), filter((x) => x), map(() => (this._triggerCount += 1)), shareReplay(1));
68
+ filter(() => this.triggerEnabled() ?? false), mergeMap(() => this.source.isModifiedAndCanTrigger$.pipe(first())), filter((x) => x), map(() => {
69
+ const count = this.triggerCountSignal();
70
+ this.triggerCountSignal.update((x) => x + 1);
71
+ return count;
72
+ }), shareReplay(1));
71
73
  /**
72
74
  * Observable for the trigger mechanism.
73
75
  */
74
- triggerCount$ = this._triggerEnabled.pipe(switchMap((enabled) => {
75
- if (enabled) {
76
- return this._triggerCount$;
76
+ triggerCount$ = toObservable(this.triggerEnabled).pipe(switchMap((enabled) => {
77
+ let countObs;
78
+ if (enabled !== false) {
79
+ countObs = this._triggerCount$;
77
80
  }
78
81
  else {
79
- return EMPTY;
82
+ countObs = EMPTY;
80
83
  }
84
+ return countObs;
81
85
  }));
82
- _isTriggerLimited$ = combineLatest([this.triggerCount$, this._triggerLimit]).pipe(map(([triggerCount, limit]) => [triggerCount, limit ? triggerCount > limit : false]), shareReplay(1));
83
- isTriggerLimited$ = this._isTriggerLimited$.pipe(map((x) => x[1]));
84
- trigger$ = this._isTriggerLimited$.pipe(filter((x) => !x[1]), distinctUntilChanged((a, b) => a[0] === b[0]), // Only trigger when the count changes.
86
+ _isTriggerLimited$ = combineLatest([this.triggerCount$, toObservable(this.triggerLimit)]).pipe(map(([triggerCount, limit]) => {
87
+ const isAllowedToRun = limit != null ? triggerCount < limit : true;
88
+ return [triggerCount, isAllowedToRun];
89
+ }), shareReplay(1));
90
+ isTriggerAllowedToRun$ = this._isTriggerLimited$.pipe(map((x) => x[1]), shareReplay(1));
91
+ automaticTrigger$ = this._isTriggerLimited$.pipe(filter((x) => x[1]), distinctUntilChanged((a, b) => a[0] === b[0]), // Only trigger when the count changes.
85
92
  map(() => undefined));
86
- get isEnabled() {
87
- return this.triggerEnabled !== false;
88
- }
89
93
  ngOnInit() {
90
- this.sub = this.trigger$.subscribe(() => {
94
+ this.sub = this.automaticTrigger$.subscribe(() => {
91
95
  this.source.trigger();
92
96
  });
93
97
  }
94
98
  ngOnDestroy() {
95
99
  this.source.lockSet.onNextUnlock(() => {
96
100
  super.ngOnDestroy();
97
- this._triggerEnabled.complete();
98
- this._trigger.complete();
99
- this._triggerLimit.complete();
100
101
  });
101
102
  }
102
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxActionAutoTriggerDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
103
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DbxActionAutoTriggerDirective, selector: "dbxActionAutoTrigger, [dbxActionAutoTrigger]", inputs: { triggerEnabled: ["dbxActionAutoTrigger", "triggerEnabled"], triggerDebounce: "triggerDebounce", triggerThrottle: "triggerThrottle", triggerErrorThrottle: "triggerErrorThrottle", fastTrigger: "fastTrigger", instantTrigger: "instantTrigger", triggerLimit: "triggerLimit" }, usesInheritance: true, ngImport: i0 });
103
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionAutoTriggerDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
104
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionAutoTriggerDirective, isStandalone: true, selector: "dbxActionAutoTrigger,[dbxActionAutoTrigger]", inputs: { triggerDebounce: { classPropertyName: "triggerDebounce", publicName: "triggerDebounce", isSignal: true, isRequired: false, transformFunction: null }, triggerThrottle: { classPropertyName: "triggerThrottle", publicName: "triggerThrottle", isSignal: true, isRequired: false, transformFunction: null }, triggerErrorThrottle: { classPropertyName: "triggerErrorThrottle", publicName: "triggerErrorThrottle", isSignal: true, isRequired: false, transformFunction: null }, maxErrorsForThrottle: { classPropertyName: "maxErrorsForThrottle", publicName: "maxErrorsForThrottle", isSignal: true, isRequired: false, transformFunction: null }, triggerLimit: { classPropertyName: "triggerLimit", publicName: "triggerLimit", isSignal: true, isRequired: false, transformFunction: null }, triggerEnabled: { classPropertyName: "triggerEnabled", publicName: "dbxActionAutoTrigger", isSignal: true, isRequired: false, transformFunction: null }, useFastTriggerPreset: { classPropertyName: "useFastTriggerPreset", publicName: "useFastTriggerPreset", isSignal: true, isRequired: false, transformFunction: null }, useInstantTriggerPreset: { classPropertyName: "useInstantTriggerPreset", publicName: "useInstantTriggerPreset", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });
104
105
  }
105
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxActionAutoTriggerDirective, decorators: [{
106
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionAutoTriggerDirective, decorators: [{
106
107
  type: Directive,
107
108
  args: [{
108
- selector: 'dbxActionAutoTrigger, [dbxActionAutoTrigger]'
109
+ selector: 'dbxActionAutoTrigger,[dbxActionAutoTrigger]',
110
+ standalone: true
109
111
  }]
110
- }], propDecorators: { triggerEnabled: [{
111
- type: Input,
112
- args: ['dbxActionAutoTrigger']
113
- }], triggerDebounce: [{
114
- type: Input
115
- }], triggerThrottle: [{
116
- type: Input
117
- }], triggerErrorThrottle: [{
118
- type: Input
119
- }], fastTrigger: [{
120
- type: Input
121
- }], instantTrigger: [{
122
- type: Input
123
- }], triggerLimit: [{
124
- type: Input
125
- }] } });
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmF1dG90cmlnZ2VyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1jb3JlL3NyYy9saWIvYWN0aW9uL2RpcmVjdGl2ZS9hdXRvL2FjdGlvbi5hdXRvdHJpZ2dlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUM1RSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsUUFBUSxFQUFFLG9CQUFvQixFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFjLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN4TSxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRixPQUFPLEVBQUUsb0JBQW9CLEVBQWMsTUFBTSxlQUFlLENBQUM7O0FBRWpFLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQztBQUVyQyxNQUFNLG1CQUFtQixHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUM7QUFFdEMsTUFBTSx5QkFBeUIsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDO0FBRTNDLE1BQU0seUJBQXlCLEdBQUcsQ0FBQyxDQUFDO0FBRXBDOzs7O0dBSUc7QUFJSCxNQUFNLE9BQU8sNkJBQXdELFNBQVEsNkJBQTZCO0lBQy9GLE1BQU0sR0FBRyxNQUFNLENBQUMsQ0FBQSxtQ0FBeUMsQ0FBQSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFFbkUsZUFBZSxHQUFHLElB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LENBQUMsRUFBRSx1Q0FBdUM7SUFDdEYsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLFNBQWlCLENBQUMsQ0FDN0IsQ0FBQztJQUVGLElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLGNBQWMsS0FBSyxLQUFLLENBQUM7SUFDdkMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUN0QyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVRLFdBQVc7UUFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRTtZQUNwQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNoQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDaEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3dHQXhJVSw2QkFBNkI7NEZBQTdCLDZCQUE2Qjs7NEZBQTdCLDZCQUE2QjtrQkFIekMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsOENBQThDO2lCQUN6RDs4QkFZSyxjQUFjO3NCQURqQixLQUFLO3VCQUFDLHNCQUFzQjtnQkFjN0IsZUFBZTtzQkFEZCxLQUFLO2dCQUlOLGVBQWU7c0JBRGQsS0FBSztnQkFJTixvQkFBb0I7c0JBRG5CLEtBQUs7Z0JBV0YsV0FBVztzQkFEZCxLQUFLO2dCQWNGLGNBQWM7c0JBRGpCLEtBQUs7Z0JBU0YsWUFBWTtzQkFEZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBEaXJlY3RpdmUsIElucHV0LCBPbkluaXQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9zdWJzY3JpcHRpb24nO1xuaW1wb3J0IHsgZGVib3VuY2UsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBleGhhdXN0TWFwLCBmaWx0ZXIsIGZpcnN0LCBtYXAsIG1lcmdlTWFwLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwLCB0aHJvdHRsZSwgRU1QVFksIGludGVydmFsLCBTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLnN0b3JlLnNvdXJjZSc7XG5pbXBvcnQgeyBpc0RlZmluZWRBbmROb3RGYWxzZSwgdHlwZSBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuXG5jb25zdCBERUZBVUxUX0RFQk9VTkNFX01TID0gMiAqIDEwMDA7XG5cbmNvbnN0IERFRkFVTFRfVEhST1RUTEVfTVMgPSAxMCAqIDEwMDA7XG5cbmNvbnN0IERFRkFVTFRfRVJST1JfVEhST1RUTEVfTVMgPSAzICogMTAwMDtcblxuY29uc3QgTUFYX0VSUk9SU19UT19USFJPVFRMRV9PTiA9IDY7XG5cbi8qKlxuICogRGlyZWN0aXZlIHRoYXQgYXV0b21hdGljYWxseSB0cmlnZ2VycyB0aGUgYWN0aW9uIHBlcmlvZGljYWxseSB3aGVuIGl0IGlzIGluIGEgbW9kaWZpZWQgc3RhdGUuXG4gKlxuICogV2hlbiB1c2luZyBhdXRvIHRyaWdnZXJzIGJlIHN1cmUgdG8gbWFrZSBzdXJlIHRoYXQgdGhlIGFjdGlvbiBpcyBub3QgdHJpZ2dlcmluZyB0b28gb2Z0ZW4gZHVlIHRvIG1pc2NvbmZpZ3VyYXRpb24uXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ2RieEFjdGlvbkF1dG9UcmlnZ2VyLCBbZGJ4QWN0aW9uQXV0b1RyaWdnZXJdJ1xufSlcbmV4cG9ydCBjbGFzcyBEYnhBY3Rpb25BdXRvVHJpZ2dlckRpcmVjdGl2ZTxUID0gdW5rbm93biwgTyA9IHVua25vd24+IGV4dGVuZHMgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHJlYWRvbmx5IHNvdXJjZSA9IGluamVjdChEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZTxULCBPPiwgeyBob3N0OiB0cnVlIH0pO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3RyaWdnZXJFbmFibGVkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfdHJpZ2dlckxpbWl0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXIgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3RyaWdnZXIgPSBuZXcgU3ViamVjdDxudW1iZXI+KCk7XG5cbiAgLyoqXG4gICAqIEhvdyBtdWNoIHRvIHRocm90dGxlIHRoZSBhdXRvLXRyaWdnZXJpbmcuXG4gICAqL1xuICBASW5wdXQoJ2RieEFjdGlvbkF1dG9UcmlnZ2VyJylcbiAgZ2V0IHRyaWdnZXJFbmFibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl90cmlnZ2VyRW5hYmxlZC52YWx1ZTtcbiAgfVxuXG4gIHNldCB0cmlnZ2VyRW5hYmxlZCh0cmlnZ2VyRW5hYmxlZDogTWF5YmU8Ym9vbGVhbj4gfCAnJykge1xuICAgIHRyaWdnZXJFbmFibGVkID0gdHJpZ2dlckVuYWJsZWQgIT09IGZhbHNlOyAvLyBEZWZhdWx0IHRvIHRydWVcblxuICAgIGlmICh0aGlzLnRyaWdnZXJFbmFibGVkICE9PSB0cmlnZ2VyRW5hYmxlZCkge1xuICAgICAgdGhpcy5fdHJpZ2dlckVuYWJsZWQubmV4dCh0cmlnZ2VyRW5hYmxlZCk7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KClcbiAgdHJpZ2dlckRlYm91bmNlID0gREVGQVVMVF9ERUJPVU5DRV9NUztcblxuICBASW5wdXQoKVxuICB0cmlnZ2VyVGhyb3R0bGUgPSBERUZBVUxUX1RIUk9UVExFX01TO1xuXG4gIEBJbnB1dCgpXG4gIHRyaWdnZXJFcnJvclRocm90dGxlID0gREVGQVVMVF9FUlJPUl9USFJPVFRMRV9NUztcblxuICBtYXhFcnJvcnNGb3JUaHJvdHRsZSA9IE1BWF9FUlJPUlNfVE9fVEhST1RUTEVfT047XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGlucHV0IHRvIG92ZXJyaWRlIGJvdGggdHJpZ2dlckRlYm91bmNlIGFuZCB0cmlnZ2VyVGhyb3R0bGUuXG4gICAqXG4gICAqIFVzZWQgaW4gZm9ybXMgdGhhdCBhcmUgc2ltcGxlLlxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IGZhc3RUcmlnZ2VyKGZhc3RUcmlnZ2VyOiBNYXliZTxib29sZWFuPiB8ICcnKSB7XG4gICAgaWYgKGlzRGVmaW5lZEFuZE5vdEZhbHNlKGZhc3RUcmlnZ2VyKSkge1xuICAgICAgdGhpcy50cmlnZ2VyRGVib3VuY2UgPSAyMDA7XG4gICAgICB0aGlzLnRyaWdnZXJUaHJvdHRsZSA9IDUwMDtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogT3B0aW9uYWwgaW5wdXQgdG8gb3ZlcnJpZGUgYm90aCB0cmlnZ2VyRGVib3VuY2UgYW5kIHRyaWdnZXJUaHJvdHRsZSB0byBiZSAwLlxuICAgKlxuICAgKiBVc2VkIGluIGZvcm1zIHRoYXQgZ2VuZXJhbGx5IHJldHVybiBhIHNpbmdsZSB2YWx1ZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBpbnN0YW50VHJpZ2dlcihpbnN0YW50VHJpZ2dlcjogTWF5YmU8Ym9vbGVhbj4gfCAnJykge1xuICAgIGlmIChpc0RlZmluZWRBbmROb3RGYWxzZShpbnN0YW50VHJpZ2dlcikpIHtcbiAgICAgIHRoaXMudHJpZ2dlckRlYm91bmNlID0gMTA7XG4gICAgICB0aGlzLnRyaWdnZXJUaHJvdHRsZSA9IDA7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KClcbiAgZ2V0IHRyaWdnZXJMaW1pdCgpOiBNYXliZTxudW1iZXI+IHtcbiAgICByZXR1cm4gdGhpcy5fdHJpZ2dlckxpbWl0LnZhbHVlO1xuICB9XG5cbiAgc2V0IHRyaWdnZXJMaW1pdCh0cmlnZ2VyTGltaXQ6IE1heWJlPG51bWJlcj4pIHtcbiAgICB0cmlnZ2VyTGltaXQgPSB0cmlnZ2VyTGltaXQgfHwgMDtcbiAgICB0aGlzLl90cmlnZ2VyTGltaXQubmV4dCh0cmlnZ2VyTGltaXQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfdHJpZ2dlckNvdW50ID0gMDtcblxuICByZWFkb25seSBfZXJyb3JDb3VudCQgPSB0aGlzLnNvdXJjZS5lcnJvckNvdW50U2luY2VMYXN0U3VjY2VzcyQ7XG5cbiAgcmVhZG9ubHkgX3RyaWdnZXJDb3VudCQgPSB0aGlzLnNvdXJjZS5pc01vZGlmaWVkQW5kQ2FuVHJpZ2dlclVwZGF0ZXMkLnBpcGUoXG4gICAgZmlsdGVyKCgpID0+IHRoaXMuaXNFbmFibGVkKSxcbiAgICBmaWx0ZXIoKHgpID0+IHgpLFxuICAgIGRlYm91bmNlKCgpID0+IGludGVydmFsKHRoaXMudHJpZ2dlckRlYm91bmNlKSksXG4gICAgdGhyb3R0bGUoXG4gICAgICAoKSA9PlxuICAgICAgICB0aGlzLl9lcnJvckNvdW50JC5waXBlKFxuICAgICAgICAgIGZpcnN0KCksXG4gICAgICAgICAgZXhoYXVzdE1hcCgoY291bnQpID0+IGludGVydmFsKHRoaXMudHJpZ2dlclRocm90dGxlICsgTWF0aC5taW4oY291bnQsIHRoaXMubWF4RXJyb3JzRm9yVGhyb3R0bGUpICogdGhpcy50cmlnZ2VyRXJyb3JUaHJvdHRsZSkpXG4gICAgICAgICksXG4gICAgICB7IGxlYWRpbmc6IHRydWUsIHRyYWlsaW5nOiB0cnVlIH1cbiAgICApLFxuICAgIC8vIENoZWNrIGFnYWluIGZvciB0aGUgXCJ0cmFpbGluZ1wiIHBpZWNlLlxuICAgIGZpbHRlcigoKSA9PiB0aGlzLmlzRW5hYmxlZCksXG4gICAgbWVyZ2VNYXAoKCkgPT4gdGhpcy5zb3VyY2UuaXNNb2RpZmllZEFuZENhblRyaWdnZXIkLnBpcGUoZmlyc3QoKSkpLFxuICAgIGZpbHRlcigoeCkgPT4geCksXG4gICAgbWFwKCgpID0+ICh0aGlzLl90cmlnZ2VyQ291bnQgKz0gMSkpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgLyoqXG4gICAqIE9ic2VydmFibGUgZm9yIHRoZSB0cmlnZ2VyIG1lY2hhbmlzbS5cbiAgICovXG4gIHJlYWRvbmx5IHRyaWdnZXJDb3VudCQgPSB0aGlzLl90cmlnZ2VyRW5hYmxlZC5waXBlKFxuICAgIHN3aXRjaE1hcCgoZW5hYmxlZCkgPT4ge1xuICAgICAgaWYgKGVuYWJsZWQpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RyaWdnZXJDb3VudCQ7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICB9XG4gICAgfSlcbiAgKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9pc1RyaWdnZXJMaW1pdGVkJDogT2JzZXJ2YWJsZTxbbnVtYmVyLCBib29sZWFuXT4gPSBjb21iaW5lTGF0ZXN0KFt0aGlzLnRyaWdnZXJDb3VudCQsIHRoaXMuX3RyaWdnZXJMaW1pdF0pLnBpcGUoXG4gICAgbWFwKChbdHJpZ2dlckNvdW50LCBsaW1pdF0pID0+IFt0cmlnZ2VyQ291bnQsIGxpbWl0ID8gdHJpZ2dlckNvdW50ID4gbGltaXQgOiBmYWxzZV0gYXMgW251bWJlciwgYm9vbGVhbl0pLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgaXNUcmlnZ2VyTGltaXRlZCQgPSB0aGlzLl9pc1RyaWdnZXJMaW1pdGVkJC5waXBlKG1hcCgoeCkgPT4geFsxXSkpO1xuICByZWFkb25seSB0cmlnZ2VyJDogT2JzZXJ2YWJsZTx2b2lkPiA9IHRoaXMuX2lzVHJpZ2dlckxpbWl0ZWQkLnBpcGUoXG4gICAgZmlsdGVyKCh4KSA9PiAheFsxXSksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKGEsIGIpID0+IGFbMF0gPT09IGJbMF0pLCAvLyBPbmx5IHRyaWdnZXIgd2hlbiB0aGUgY291bnQgY2hhbmdlcy5cbiAgICBtYXAoKCkgPT4gdW5kZWZpbmVkIGFzIHZvaWQpXG4gICk7XG5cbiAgZ2V0IGlzRW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50cmlnZ2VyRW5hYmxlZCAhPT0gZmFsc2U7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YiA9IHRoaXMudHJpZ2dlciQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuc291cmNlLnRyaWdnZXIoKTtcbiAgICB9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc291cmNlLmxvY2tTZXQub25OZXh0VW5sb2NrKCgpID0+IHtcbiAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgICB0aGlzLl90cmlnZ2VyRW5hYmxlZC5jb21wbGV0ZSgpO1xuICAgICAgdGhpcy5fdHJpZ2dlci5jb21wbGV0ZSgpO1xuICAgICAgdGhpcy5fdHJpZ2dlckxpbWl0LmNvbXBsZXRlKCk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
112
+ }] });
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmF1dG90cmlnZ2VyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1jb3JlL3NyYy9saWIvYWN0aW9uL2RpcmVjdGl2ZS9hdXRvL2FjdGlvbi5hdXRvdHJpZ2dlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQXFCLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3RHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxRQUFRLEVBQUUsb0JBQW9CLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUM5SyxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsVUFBVSxFQUFjLE1BQU0sZUFBZSxDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFMUQsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDO0FBRXJDLE1BQU0sbUJBQW1CLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQztBQUV0QyxNQUFNLHlCQUF5QixHQUFHLENBQUMsR0FBRyxJQUFJLENBQUM7QUFFM0MsTUFBTSx5QkFBeUIsR0FBRyxDQUFDLENBQUM7QUFFcEMsTUFBTSw2Q0FBNkMsR0FBRyxHQUFHLENBQUM7QUFDMUQsTUFBTSxnREFBZ0QsR0FBRyxFQUFFLENBQUM7QUFFNUQ7Ozs7R0FJRztBQUtILE1BQU0sT0FBTyw2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QUMsQ0FBQyxDQUFDLEVBQ25CLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLHVDQUF1QztJQUN0RixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsU0FBaUIsQ0FBQyxDQUM3QixDQUFDO0lBRUYsUUFBUTtRQUNOLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDL0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN4QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUSxXQUFXO1FBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxHQUFHLEVBQUU7WUFDcEMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3RCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt3R0E1SFUsNkJBQTZCOzRGQUE3Qiw2QkFBNkI7OzRGQUE3Qiw2QkFBNkI7a0JBSnpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDZDQUE2QztvQkFDdkQsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBEaXJlY3RpdmUsIE9uSW5pdCwgT25EZXN0cm95LCBpbnB1dCwgY29tcHV0ZWQsIHNpZ25hbCwgU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL3N1YnNjcmlwdGlvbic7XG5pbXBvcnQgeyBkZWJvdW5jZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIGV4aGF1c3RNYXAsIGZpbHRlciwgZmlyc3QsIG1hcCwgbWVyZ2VNYXAsIHNoYXJlUmVwbGF5LCBzd2l0Y2hNYXAsIHRocm90dGxlLCBFTVBUWSwgaW50ZXJ2YWwsIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLnN0b3JlLnNvdXJjZSc7XG5pbXBvcnQgeyBpc0RlZmluZWRBbmROb3RGYWxzZSwgaXNOb3RGYWxzZSwgdHlwZSBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG5jb25zdCBERUZBVUxUX0RFQk9VTkNFX01TID0gMiAqIDEwMDA7XG5cbmNvbnN0IERFRkFVTFRfVEhST1RUTEVfTVMgPSAxMCAqIDEwMDA7XG5cbmNvbnN0IERFRkFVTFRfRVJST1JfVEhST1RUTEVfTVMgPSAzICogMTAwMDtcblxuY29uc3QgTUFYX0VSUk9SU19UT19USFJPVFRMRV9PTiA9IDY7XG5cbmNvbnN0IERCWF9BQ1RJT05fQVVUT19UUklHR0VSX0ZBU1RfVFJJR0dFUl9ERUJPVU5DRSA9IDIwMDtcbmNvbnN0IERCWF9BQ1RJT05fQVVUT19UUklHR0VSX0lOU1RBTlRfVFJJR0dFUl9ERUJPVU5DRSA9IDEwO1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0aGF0IGF1dG9tYXRpY2FsbHkgdHJpZ2dlcnMgdGhlIGFjdGlvbiBwZXJpb2RpY2FsbHkgd2hlbiBpdCBpcyBpbiBhIG1vZGlmaWVkIHN0YXRlLlxuICpcbiAqIFdoZW4gdXNpbmcgYXV0byB0cmlnZ2VycyBiZSBzdXJlIHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBhY3Rpb24gaXMgbm90IHRyaWdnZXJpbmcgdG9vIG9mdGVuIGR1ZSB0byBtaXNjb25maWd1cmF0aW9uLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdkYnhBY3Rpb25BdXRvVHJpZ2dlcixbZGJ4QWN0aW9uQXV0b1RyaWdnZXJdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhBY3Rpb25BdXRvVHJpZ2dlckRpcmVjdGl2ZTxUID0gdW5rbm93biwgTyA9IHVua25vd24+IGV4dGVuZHMgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHJlYWRvbmx5IHNvdXJjZSA9IGluamVjdChEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZTxULCBPPiwgeyBob3N0OiB0cnVlIH0pO1xuXG4gIHJlYWRvbmx5IHRyaWdnZXJEZWJvdW5jZSA9IGlucHV0PE1heWJlPG51bWJlcj4+KHVuZGVmaW5lZCk7XG4gIHJlYWRvbmx5IHRyaWdnZXJUaHJvdHRsZSA9IGlucHV0PE1heWJlPG51bWJlcj4+KHVuZGVmaW5lZCk7XG4gIHJlYWRvbmx5IHRyaWdnZXJFcnJvclRocm90dGxlID0gaW5wdXQ8bnVtYmVyLCBNYXliZTxudW1iZXI+PihERUZBVUxUX0VSUk9SX1RIUk9UVExFX01TLCB7IHRyYW5zZm9ybTogKHgpID0+IHggPz8gREVGQVVMVF9FUlJPUl9USFJPVFRMRV9NUyB9KTtcbiAgcmVhZG9ubHkgbWF4RXJyb3JzRm9yVGhyb3R0bGUgPSBpbnB1dDxudW1iZXIsIE1heWJlPG51bWJlcj4+KE1BWF9FUlJPUlNfVE9fVEhST1RUTEVfT04sIHsgdHJhbnNmb3JtOiAoeCkgPT4geCA/PyBNQVhfRVJST1JTX1RPX1RIUk9UVExFX09OIH0pO1xuICByZWFkb25seSB0cmlnZ2VyTGltaXQgPSBpbnB1dDxNYXliZTxudW1iZXI+PigpO1xuICByZWFkb25seSB0cmlnZ2VyRW5hYmxlZCA9IGlucHV0PGJvb2xlYW4sIE1heWJlPHN0cmluZyB8IGJvb2xlYW4+Pih0cnVlLCB7IGFsaWFzOiAnZGJ4QWN0aW9uQXV0b1RyaWdnZXInLCB0cmFuc2Zvcm06IGlzTm90RmFsc2UgfSk7XG4gIHJlYWRvbmx5IHVzZUZhc3RUcmlnZ2VyUHJlc2V0ID0gaW5wdXQ8Ym9vbGVhbiwgTWF5YmU8c3RyaW5nIHwgYm9vbGVhbj4+KGZhbHNlLCB7IHRyYW5zZm9ybTogaXNEZWZpbmVkQW5kTm90RmFsc2UgfSk7XG4gIHJlYWRvbmx5IHVzZUluc3RhbnRUcmlnZ2VyUHJlc2V0ID0gaW5wdXQ8Ym9vbGVhbiwgTWF5YmU8c3RyaW5nIHwgYm9vbGVhbj4+KGZhbHNlLCB7IHRyYW5zZm9ybTogaXNEZWZpbmVkQW5kTm90RmFsc2UgfSk7XG5cbiAgcmVhZG9ubHkgdHJpZ2dlckRlYm91bmNlU2lnbmFsID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGxldCBkZWJvdW5jZSA9IHRoaXMudHJpZ2dlckRlYm91bmNlKCk7XG5cbiAgICBpZiAoZGVib3VuY2UgPT0gbnVsbCkge1xuICAgICAgY29uc3QgdXNlRmFzdFRyaWdnZXIgPSB0aGlzLnVzZUZhc3RUcmlnZ2VyUHJlc2V0KCk7XG4gICAgICBjb25zdCB1c2VJbnN0YW50VHJpZ2dlciA9IHRoaXMudXNlSW5zdGFudFRyaWdnZXJQcmVzZXQoKTtcblxuICAgICAgaWYgKHVzZUZhc3RUcmlnZ2VyKSB7XG4gICAgICAgIGRlYm91bmNlID0gREJYX0FDVElPTl9BVVRPX1RSSUdHRVJfRkFTVF9UUklHR0VSX0RFQk9VTkNFO1xuICAgICAgfSBlbHNlIGlmICh1c2VJbnN0YW50VHJpZ2dlcikge1xuICAgICAgICBkZWJvdW5jZSA9IERCWF9BQ1RJT05fQVVUT19UUklHR0VSX0lOU1RBTlRfVFJJR0dFUl9ERUJPVU5DRTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZGVib3VuY2UgPz8gREVGQVVMVF9ERUJPVU5DRV9NUztcbiAgfSk7XG5cbiAgcmVhZG9ubHkgdHJpZ2dlclRocm90dGxlU2lnbmFsOiBTaWduYWw8bnVtYmVyPiA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBsZXQgdGhyb3R0bGUgPSB0aGlzLnRyaWdnZXJUaHJvdHRsZSgpO1xuXG4gICAgaWYgKHRocm90dGxlID09IG51bGwpIHtcbiAgICAgIGNvbnN0IHVzZUZhc3RUcmlnZ2VyID0gdGhpcy51c2VGYXN0VHJpZ2dlclByZXNldCgpO1xuICAgICAgY29uc3QgdXNlSW5zdGFudFRyaWdnZXIgPSB0aGlzLnVzZUluc3RhbnRUcmlnZ2VyUHJlc2V0KCk7XG5cbiAgICAgIGlmICh1c2VGYXN0VHJpZ2dlcikge1xuICAgICAgICB0aHJvdHRsZSA9IERCWF9BQ1RJT05fQVVUT19UUklHR0VSX0ZBU1RfVFJJR0dFUl9ERUJPVU5DRTtcbiAgICAgIH0gZWxzZSBpZiAodXNlSW5zdGFudFRyaWdnZXIpIHtcbiAgICAgICAgdGhyb3R0bGUgPSBEQlhfQUNUSU9OX0FVVE9fVFJJR0dFUl9JTlNUQU5UX1RSSUdHRVJfREVCT1VOQ0U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRocm90dGxlID8/IERFRkFVTFRfVEhST1RUTEVfTVM7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IHRyaWdnZXJDb3VudFNpZ25hbCA9IHNpZ25hbDxudW1iZXI+KDApO1xuXG4gIHJlYWRvbmx5IF9lcnJvckNvdW50JCA9IHRoaXMuc291cmNlLmVycm9yQ291bnRTaW5jZUxhc3RTdWNjZXNzJDtcbiAgcmVhZG9ubHkgX3RyaWdnZXJDb3VudCQgPSB0aGlzLnNvdXJjZS5pc01vZGlmaWVkQW5kQ2FuVHJpZ2dlclVwZGF0ZXMkLnBpcGUoXG4gICAgLy8gZWFjaCB0aW1lIHNvbWV0aGluZyBpcyB0cmlnZ2VyZWQgdGhlXG4gICAgZmlsdGVyKCgpID0+IHRoaXMudHJpZ2dlckVuYWJsZWQoKSA/PyBmYWxzZSksXG4gICAgZGVib3VuY2UoKCkgPT4gaW50ZXJ2YWwodGhpcy50cmlnZ2VyRGVib3VuY2VTaWduYWwoKSkpLFxuICAgIHRocm90dGxlKFxuICAgICAgKCkgPT5cbiAgICAgICAgdGhpcy5fZXJyb3JDb3VudCQucGlwZShcbiAgICAgICAgICBmaXJzdCgpLFxuICAgICAgICAgIGV4aGF1c3RNYXAoKGVycm9yQ291bnQpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG1heEVycm9ycyA9IHRoaXMubWF4RXJyb3JzRm9yVGhyb3R0bGUoKSA/PyBNQVhfRVJST1JTX1RPX1RIUk9UVExFX09OO1xuICAgICAgICAgICAgY29uc3QgdGhyb3R0bGVUaW1lID0gdGhpcy50cmlnZ2VyRXJyb3JUaHJvdHRsZSgpID8/IERFRkFVTFRfRVJST1JfVEhST1RUTEVfTVM7XG4gICAgICAgICAgICBjb25zdCBhZGRpdGlvbmFsSW50ZXJ2YWwgPSBNYXRoLm1pbihlcnJvckNvdW50LCBtYXhFcnJvcnMpICogdGhyb3R0bGVUaW1lO1xuXG4gICAgICAgICAgICByZXR1cm4gaW50ZXJ2YWwodGhpcy50cmlnZ2VyVGhyb3R0bGVTaWduYWwoKSArIGFkZGl0aW9uYWxJbnRlcnZhbCk7XG4gICAgICAgICAgfSlcbiAgICAgICAgKSxcbiAgICAgIHsgbGVhZGluZzogdHJ1ZSwgdHJhaWxpbmc6IHRydWUgfVxuICAgICksXG4gICAgLy8gQ2hlY2sgYWdhaW4gZm9yIHRoZSBcInRyYWlsaW5nXCIgcGllY2UuXG4gICAgZmlsdGVyKCgpID0+IHRoaXMudHJpZ2dlckVuYWJsZWQoKSA/PyBmYWxzZSksXG4gICAgbWVyZ2VNYXAoKCkgPT4gdGhpcy5zb3VyY2UuaXNNb2RpZmllZEFuZENhblRyaWdnZXIkLnBpcGUoZmlyc3QoKSkpLFxuICAgIGZpbHRlcigoeCkgPT4geCksXG4gICAgbWFwKCgpID0+IHtcbiAgICAgIGNvbnN0IGNvdW50ID0gdGhpcy50cmlnZ2VyQ291bnRTaWduYWwoKTtcbiAgICAgIHRoaXMudHJpZ2dlckNvdW50U2lnbmFsLnVwZGF0ZSgoeCkgPT4geCArIDEpO1xuICAgICAgcmV0dXJuIGNvdW50O1xuICAgIH0pLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgLyoqXG4gICAqIE9ic2VydmFibGUgZm9yIHRoZSB0cmlnZ2VyIG1lY2hhbmlzbS5cbiAgICovXG4gIHJlYWRvbmx5IHRyaWdnZXJDb3VudCQgPSB0b09ic2VydmFibGUodGhpcy50cmlnZ2VyRW5hYmxlZCkucGlwZShcbiAgICBzd2l0Y2hNYXAoKGVuYWJsZWQpID0+IHtcbiAgICAgIGxldCBjb3VudE9iczogT2JzZXJ2YWJsZTxudW1iZXI+O1xuXG4gICAgICBpZiAoZW5hYmxlZCAhPT0gZmFsc2UpIHtcbiAgICAgICAgY291bnRPYnMgPSB0aGlzLl90cmlnZ2VyQ291bnQkO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY291bnRPYnMgPSBFTVBUWTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNvdW50T2JzO1xuICAgIH0pXG4gICk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfaXNUcmlnZ2VyTGltaXRlZCQ6IE9ic2VydmFibGU8cmVhZG9ubHkgW251bWJlciwgYm9vbGVhbl0+ID0gY29tYmluZUxhdGVzdChbdGhpcy50cmlnZ2VyQ291bnQkLCB0b09ic2VydmFibGUodGhpcy50cmlnZ2VyTGltaXQpXSkucGlwZShcbiAgICBtYXAoKFt0cmlnZ2VyQ291bnQsIGxpbWl0XSkgPT4ge1xuICAgICAgY29uc3QgaXNBbGxvd2VkVG9SdW4gPSBsaW1pdCAhPSBudWxsID8gdHJpZ2dlckNvdW50IDwgbGltaXQgOiB0cnVlO1xuICAgICAgcmV0dXJuIFt0cmlnZ2VyQ291bnQsIGlzQWxsb3dlZFRvUnVuXSBhcyBjb25zdDtcbiAgICB9KSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGlzVHJpZ2dlckFsbG93ZWRUb1J1biQgPSB0aGlzLl9pc1RyaWdnZXJMaW1pdGVkJC5waXBlKFxuICAgIG1hcCgoeCkgPT4geFsxXSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcbiAgcmVhZG9ubHkgYXV0b21hdGljVHJpZ2dlciQ6IE9ic2VydmFibGU8dm9pZD4gPSB0aGlzLl9pc1RyaWdnZXJMaW1pdGVkJC5waXBlKFxuICAgIGZpbHRlcigoeCkgPT4geFsxXSksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKGEsIGIpID0+IGFbMF0gPT09IGJbMF0pLCAvLyBPbmx5IHRyaWdnZXIgd2hlbiB0aGUgY291bnQgY2hhbmdlcy5cbiAgICBtYXAoKCkgPT4gdW5kZWZpbmVkIGFzIHZvaWQpXG4gICk7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zdWIgPSB0aGlzLmF1dG9tYXRpY1RyaWdnZXIkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnNvdXJjZS50cmlnZ2VyKCk7XG4gICAgfSk7XG4gIH1cblxuICBvdmVycmlkZSBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnNvdXJjZS5sb2NrU2V0Lm9uTmV4dFVubG9jaygoKSA9PiB7XG4gICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -1,4 +1,3 @@
1
1
  export * from './action.automodify.directive';
2
2
  export * from './action.autotrigger.directive';
3
- export * from '../state/action.value.stream.directive';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvYXV0by9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyx3Q0FBd0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYWN0aW9uLmF1dG9tb2RpZnkuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9uLmF1dG90cmlnZ2VyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuLi9zdGF0ZS9hY3Rpb24udmFsdWUuc3RyZWFtLmRpcmVjdGl2ZSc7XG4iXX0=
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvYXV0by9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2FjdGlvbi5hdXRvbW9kaWZ5LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2FjdGlvbi5hdXRvdHJpZ2dlci5kaXJlY3RpdmUnO1xuIl19
@@ -15,15 +15,16 @@ export class DbxActionDirective extends DbxActionContextBaseSource {
15
15
  this.destroy();
16
16
  });
17
17
  }
18
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxActionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
19
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DbxActionDirective, selector: "dbx-action,[dbxAction],dbx-action-context,[dbxActionContext]", providers: provideActionStoreSource(DbxActionDirective), exportAs: ["action", "dbxAction"], usesInheritance: true, ngImport: i0 });
18
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
19
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DbxActionDirective, isStandalone: true, selector: "dbx-action,[dbxAction],dbx-action-context,[dbxActionContext]", providers: provideActionStoreSource(DbxActionDirective), exportAs: ["action", "dbxAction"], usesInheritance: true, ngImport: i0 });
20
20
  }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxActionDirective, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionDirective, decorators: [{
22
22
  type: Directive,
23
23
  args: [{
24
24
  selector: 'dbx-action,[dbxAction],dbx-action-context,[dbxActionContext]',
25
25
  exportAs: 'action,dbxAction',
26
- providers: provideActionStoreSource(DbxActionDirective)
26
+ providers: provideActionStoreSource(DbxActionDirective),
27
+ standalone: true
27
28
  }]
28
- }], ctorParameters: function () { return []; } });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1jb3JlL3NyYy9saWIvYWN0aW9uL2RpcmVjdGl2ZS9jb250ZXh0L2FjdGlvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDOUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDN0UsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBRWpFOztHQUVHO0FBTUgsTUFBTSxPQUFPLGtCQUE2QyxTQUFRLDBCQUFnQztJQUNoRztRQUNFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQSxpQ0FBdUMsQ0FBQSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLEVBQUU7WUFDcEMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2pCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt3R0FUVSxrQkFBa0I7NEZBQWxCLGtCQUFrQix1RkFGbEIsd0JBQXdCLENBQUMsa0JBQWtCLENBQUM7OzRGQUU1QyxrQkFBa0I7a0JBTDlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDhEQUE4RDtvQkFDeEUsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsU0FBUyxFQUFFLHdCQUF3QixvQkFBb0I7aUJBQ3hEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkRlc3Ryb3ksIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2Vjb25kYXJ5QWN0aW9uQ29udGV4dFN0b3JlU291cmNlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLnN0b3JlLnNvdXJjZSc7XG5pbXBvcnQgeyBwcm92aWRlQWN0aW9uU3RvcmVTb3VyY2UgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlLnByb3ZpZGUnO1xuaW1wb3J0IHsgRGJ4QWN0aW9uQ29udGV4dEJhc2VTb3VyY2UgfSBmcm9tICcuLi8uLi9hY3Rpb24uaG9sZGVyJztcblxuLyoqXG4gKiBQcm92aWRlcyBhbiBEYnhBY3Rpb25Db250ZXh0LlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdkYngtYWN0aW9uLFtkYnhBY3Rpb25dLGRieC1hY3Rpb24tY29udGV4dCxbZGJ4QWN0aW9uQ29udGV4dF0nLFxuICBleHBvcnRBczogJ2FjdGlvbixkYnhBY3Rpb24nLFxuICBwcm92aWRlcnM6IHByb3ZpZGVBY3Rpb25TdG9yZVNvdXJjZShEYnhBY3Rpb25EaXJlY3RpdmUpXG59KVxuZXhwb3J0IGNsYXNzIERieEFjdGlvbkRpcmVjdGl2ZTxUID0gdW5rbm93biwgTyA9IHVua25vd24+IGV4dGVuZHMgRGJ4QWN0aW9uQ29udGV4dEJhc2VTb3VyY2U8VCwgTz4gaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcihpbmplY3QoU2Vjb25kYXJ5QWN0aW9uQ29udGV4dFN0b3JlU291cmNlPFQsIE8+LCB7IG9wdGlvbmFsOiB0cnVlLCBob3N0OiB0cnVlIH0pKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMubG9ja1NldC5kZXN0cm95T25OZXh0VW5sb2NrKCgpID0+IHtcbiAgICAgIHRoaXMuZGVzdHJveSgpO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
29
+ }], ctorParameters: () => [] });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1jb3JlL3NyYy9saWIvYWN0aW9uL2RpcmVjdGl2ZS9jb250ZXh0L2FjdGlvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDOUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDN0UsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBRWpFOztHQUVHO0FBT0gsTUFBTSxPQUFPLGtCQUE2QyxTQUFRLDBCQUFnQztJQUNoRztRQUNFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQSxpQ0FBdUMsQ0FBQSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLEVBQUU7WUFDcEMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2pCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt3R0FUVSxrQkFBa0I7NEZBQWxCLGtCQUFrQiwyR0FIbEIsd0JBQXdCLENBQUMsa0JBQWtCLENBQUM7OzRGQUc1QyxrQkFBa0I7a0JBTjlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDhEQUE4RDtvQkFDeEUsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsU0FBUyxFQUFFLHdCQUF3QixvQkFBb0I7b0JBQ3ZELFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgT25EZXN0cm95LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNlY29uZGFyeUFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZSB9IGZyb20gJy4uLy4uL2FjdGlvbi5zdG9yZS5zb3VyY2UnO1xuaW1wb3J0IHsgcHJvdmlkZUFjdGlvblN0b3JlU291cmNlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLnN0b3JlLnNvdXJjZS5wcm92aWRlJztcbmltcG9ydCB7IERieEFjdGlvbkNvbnRleHRCYXNlU291cmNlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLmhvbGRlcic7XG5cbi8qKlxuICogUHJvdmlkZXMgYW4gRGJ4QWN0aW9uQ29udGV4dC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnZGJ4LWFjdGlvbixbZGJ4QWN0aW9uXSxkYngtYWN0aW9uLWNvbnRleHQsW2RieEFjdGlvbkNvbnRleHRdJyxcbiAgZXhwb3J0QXM6ICdhY3Rpb24sZGJ4QWN0aW9uJyxcbiAgcHJvdmlkZXJzOiBwcm92aWRlQWN0aW9uU3RvcmVTb3VyY2UoRGJ4QWN0aW9uRGlyZWN0aXZlKSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhBY3Rpb25EaXJlY3RpdmU8VCA9IHVua25vd24sIE8gPSB1bmtub3duPiBleHRlbmRzIERieEFjdGlvbkNvbnRleHRCYXNlU291cmNlPFQsIE8+IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoaW5qZWN0KFNlY29uZGFyeUFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZTxULCBPPiwgeyBvcHRpb25hbDogdHJ1ZSwgaG9zdDogdHJ1ZSB9KSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmxvY2tTZXQuZGVzdHJveU9uTmV4dFVubG9jaygoKSA9PiB7XG4gICAgICB0aGlzLmRlc3Ryb3koKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -1,38 +1,25 @@
1
1
  import { filterMaybe } from '@dereekb/rxjs';
2
- import { Directive, Input } from '@angular/core';
3
- import { BehaviorSubject, switchMap } from 'rxjs';
2
+ import { Directive, input } from '@angular/core';
3
+ import { switchMap } from 'rxjs';
4
4
  import { actionContextStoreSourcePipe } from '../../action.store.source';
5
5
  import { provideSecondaryActionStoreSource } from '../../action.store.source.provide';
6
+ import { toObservable } from '@angular/core/rxjs-interop';
6
7
  import * as i0 from "@angular/core";
7
8
  /**
8
9
  * Directive that provides a DbxActionSourceDirective that is passed in.
9
10
  */
10
11
  export class DbxActionSourceDirective {
11
- _source = new BehaviorSubject(undefined);
12
- store$ = this._source.pipe(filterMaybe(), switchMap((x) => actionContextStoreSourcePipe(x.store$)));
13
- ngOnDestroy() {
14
- this._source.complete();
15
- }
16
- get source() {
17
- return this._source.value;
18
- }
19
- set source(source) {
20
- if (source && !source.store$) {
21
- throw new Error('Invalid source passed to dbxActionSource.');
22
- }
23
- this._source.next(source);
24
- }
25
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxActionSourceDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
26
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DbxActionSourceDirective, selector: "[dbxActionSource]", inputs: { source: ["dbxActionSource", "source"] }, providers: provideSecondaryActionStoreSource(DbxActionSourceDirective), ngImport: i0 });
12
+ dbxActionSource = input();
13
+ store$ = toObservable(this.dbxActionSource).pipe(filterMaybe(), switchMap((x) => actionContextStoreSourcePipe(x.store$)));
14
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionSourceDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
15
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionSourceDirective, isStandalone: true, selector: "[dbxActionSource]", inputs: { dbxActionSource: { classPropertyName: "dbxActionSource", publicName: "dbxActionSource", isSignal: true, isRequired: false, transformFunction: null } }, providers: provideSecondaryActionStoreSource(DbxActionSourceDirective), ngImport: i0 });
27
16
  }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxActionSourceDirective, decorators: [{
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionSourceDirective, decorators: [{
29
18
  type: Directive,
30
19
  args: [{
31
20
  selector: '[dbxActionSource]',
32
- providers: provideSecondaryActionStoreSource(DbxActionSourceDirective)
21
+ providers: provideSecondaryActionStoreSource(DbxActionSourceDirective),
22
+ standalone: true
33
23
  }]
34
- }], propDecorators: { source: [{
35
- type: Input,
36
- args: ['dbxActionSource']
37
- }] } });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLnNvdXJjZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvY29udGV4dC9hY3Rpb24uc291cmNlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRTVELE9BQU8sRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xELE9BQU8sRUFBK0QsNEJBQTRCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN0SSxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7QUFFdEY7O0dBRUc7QUFLSCxNQUFNLE9BQU8sd0JBQXdCO0lBQzNCLE9BQU8sR0FBRyxJQUFJLGVBQWUsQ0FBa0MsU0FBUyxDQUFDLENBQUM7SUFDekUsTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUNqQyxXQUFXLEVBQUUsRUFDYixTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLDRCQUE0QixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUN6RCxDQUFDO0lBRUYsV0FBVztRQUNULElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQ0ksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQUksTUFBTSxDQUFDLE1BQXVDO1FBQ2hELElBQUksTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtZQUM1QixNQUFNLElBQUksS0FBSyxDQUFDLDJDQUEyQyxDQUFDLENBQUM7U0FDOUQ7UUFFRCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1QixDQUFDO3dHQXRCVSx3QkFBd0I7NEZBQXhCLHdCQUF3QiwrRkFGeEIsaUNBQWlDLENBQUMsd0JBQXdCLENBQUM7OzRGQUUzRCx3QkFBd0I7a0JBSnBDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsU0FBUyxFQUFFLGlDQUFpQywwQkFBMEI7aUJBQ3ZFOzhCQWFLLE1BQU07c0JBRFQsS0FBSzt1QkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmaWx0ZXJNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0eXBlIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU2Vjb25kYXJ5QWN0aW9uQ29udGV4dFN0b3JlU291cmNlLCBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2UsIGFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZVBpcGUgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlJztcbmltcG9ydCB7IHByb3ZpZGVTZWNvbmRhcnlBY3Rpb25TdG9yZVNvdXJjZSB9IGZyb20gJy4uLy4uL2FjdGlvbi5zdG9yZS5zb3VyY2UucHJvdmlkZSc7XG5cbi8qKlxuICogRGlyZWN0aXZlIHRoYXQgcHJvdmlkZXMgYSBEYnhBY3Rpb25Tb3VyY2VEaXJlY3RpdmUgdGhhdCBpcyBwYXNzZWQgaW4uXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhBY3Rpb25Tb3VyY2VdJyxcbiAgcHJvdmlkZXJzOiBwcm92aWRlU2Vjb25kYXJ5QWN0aW9uU3RvcmVTb3VyY2UoRGJ4QWN0aW9uU291cmNlRGlyZWN0aXZlKVxufSlcbmV4cG9ydCBjbGFzcyBEYnhBY3Rpb25Tb3VyY2VEaXJlY3RpdmUgaW1wbGVtZW50cyBTZWNvbmRhcnlBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2UsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgX3NvdXJjZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWF5YmU8QWN0aW9uQ29udGV4dFN0b3JlU291cmNlPj4odW5kZWZpbmVkKTtcbiAgcmVhZG9ubHkgc3RvcmUkID0gdGhpcy5fc291cmNlLnBpcGUoXG4gICAgZmlsdGVyTWF5YmUoKSxcbiAgICBzd2l0Y2hNYXAoKHgpID0+IGFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZVBpcGUoeC5zdG9yZSQpKVxuICApO1xuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX3NvdXJjZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgQElucHV0KCdkYnhBY3Rpb25Tb3VyY2UnKVxuICBnZXQgc291cmNlKCk6IE1heWJlPEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZT4ge1xuICAgIHJldHVybiB0aGlzLl9zb3VyY2UudmFsdWU7XG4gIH1cblxuICBzZXQgc291cmNlKHNvdXJjZTogTWF5YmU8QWN0aW9uQ29udGV4dFN0b3JlU291cmNlPikge1xuICAgIGlmIChzb3VyY2UgJiYgIXNvdXJjZS5zdG9yZSQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBzb3VyY2UgcGFzc2VkIHRvIGRieEFjdGlvblNvdXJjZS4nKTtcbiAgICB9XG5cbiAgICB0aGlzLl9zb3VyY2UubmV4dChzb3VyY2UpO1xuICB9XG59XG4iXX0=
24
+ }] });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLnNvdXJjZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvY29udGV4dC9hY3Rpb24uc291cmNlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakMsT0FBTyxFQUErRCw0QkFBNEIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3RJLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFMUQ7O0dBRUc7QUFNSCxNQUFNLE9BQU8sd0JBQXdCO0lBQzFCLGVBQWUsR0FBRyxLQUFLLEVBQW1DLENBQUM7SUFFM0QsTUFBTSxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsSUFBSSxDQUN2RCxXQUFXLEVBQUUsRUFDYixTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLDRCQUE0QixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUN6RCxDQUFDO3dHQU5TLHdCQUF3Qjs0RkFBeEIsd0JBQXdCLGtPQUh4QixpQ0FBaUMsQ0FBQyx3QkFBd0IsQ0FBQzs7NEZBRzNELHdCQUF3QjtrQkFMcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixTQUFTLEVBQUUsaUNBQWlDLDBCQUEwQjtvQkFDdEUsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmlsdGVyTWF5YmUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHR5cGUgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU2Vjb25kYXJ5QWN0aW9uQ29udGV4dFN0b3JlU291cmNlLCBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2UsIGFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZVBpcGUgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlJztcbmltcG9ydCB7IHByb3ZpZGVTZWNvbmRhcnlBY3Rpb25TdG9yZVNvdXJjZSB9IGZyb20gJy4uLy4uL2FjdGlvbi5zdG9yZS5zb3VyY2UucHJvdmlkZSc7XG5pbXBvcnQgeyB0b09ic2VydmFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbi8qKlxuICogRGlyZWN0aXZlIHRoYXQgcHJvdmlkZXMgYSBEYnhBY3Rpb25Tb3VyY2VEaXJlY3RpdmUgdGhhdCBpcyBwYXNzZWQgaW4uXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhBY3Rpb25Tb3VyY2VdJyxcbiAgcHJvdmlkZXJzOiBwcm92aWRlU2Vjb25kYXJ5QWN0aW9uU3RvcmVTb3VyY2UoRGJ4QWN0aW9uU291cmNlRGlyZWN0aXZlKSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhBY3Rpb25Tb3VyY2VEaXJlY3RpdmUgaW1wbGVtZW50cyBTZWNvbmRhcnlBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2Uge1xuICByZWFkb25seSBkYnhBY3Rpb25Tb3VyY2UgPSBpbnB1dDxNYXliZTxBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2U+PigpO1xuXG4gIHJlYWRvbmx5IHN0b3JlJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLmRieEFjdGlvblNvdXJjZSkucGlwZShcbiAgICBmaWx0ZXJNYXliZSgpLFxuICAgIHN3aXRjaE1hcCgoeCkgPT4gYWN0aW9uQ29udGV4dFN0b3JlU291cmNlUGlwZSh4LnN0b3JlJCkpXG4gICk7XG59XG4iXX0=
@@ -12,13 +12,14 @@ export class DbxActionContextLoggerDirective extends AbstractSubscriptionDirecti
12
12
  console.log('dbxActionLogger - state: ', state);
13
13
  });
14
14
  }
15
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxActionContextLoggerDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
16
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DbxActionContextLoggerDirective, selector: "[dbxActionLogger],[dbxActionContextLogger]", usesInheritance: true, ngImport: i0 });
15
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionContextLoggerDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
16
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DbxActionContextLoggerDirective, isStandalone: true, selector: "[dbxActionLogger],[dbxActionContextLogger]", usesInheritance: true, ngImport: i0 });
17
17
  }
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxActionContextLoggerDirective, decorators: [{
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionContextLoggerDirective, decorators: [{
19
19
  type: Directive,
20
20
  args: [{
21
- selector: '[dbxActionLogger],[dbxActionContextLogger]'
21
+ selector: '[dbxActionLogger],[dbxActionContextLogger]',
22
+ standalone: true
22
23
  }]
23
24
  }] });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmxvZ2dlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvZGVidWcvYWN0aW9uLmxvZ2dlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEUsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBRWhGOztHQUVHO0FBSUgsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLDZCQUE2QjtJQUN2RSxNQUFNLEdBQUcsTUFBTSxDQUFDLG1DQUFtQyxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFFOUUsUUFBUTtRQUNOLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDaEQsT0FBTyxDQUFDLEdBQUcsQ0FBQywyQkFBMkIsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNsRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7d0dBUFUsK0JBQStCOzRGQUEvQiwrQkFBK0I7OzRGQUEvQiwrQkFBK0I7a0JBSDNDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDRDQUE0QztpQkFDdkQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIE9uSW5pdCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL3N1YnNjcmlwdGlvbic7XG5pbXBvcnQgeyBEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZSB9IGZyb20gJy4uLy4uL2FjdGlvbi5zdG9yZS5zb3VyY2UnO1xuXG4vKipcbiAqIFByaW50cyBvdXQgdGhlIGN1cnJlbnQgc3RhdGUgdG8gdGhlIGNvbnNvbGUuIFVzZWZ1bCBmb3IgZGVidWdnaW5nLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZGJ4QWN0aW9uTG9nZ2VyXSxbZGJ4QWN0aW9uQ29udGV4dExvZ2dlcl0nXG59KVxuZXhwb3J0IGNsYXNzIERieEFjdGlvbkNvbnRleHRMb2dnZXJEaXJlY3RpdmUgZXh0ZW5kcyBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHJlYWRvbmx5IHNvdXJjZSA9IGluamVjdChEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZSwgeyBob3N0OiB0cnVlIH0pO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3ViID0gdGhpcy5zb3VyY2Uuc3RhdGUkLnN1YnNjcmliZSgoc3RhdGUpID0+IHtcbiAgICAgIGNvbnNvbGUubG9nKCdkYnhBY3Rpb25Mb2dnZXIgLSBzdGF0ZTogJywgc3RhdGUpO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmxvZ2dlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvZGVidWcvYWN0aW9uLmxvZ2dlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEUsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBRWhGOztHQUVHO0FBS0gsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLDZCQUE2QjtJQUN2RSxNQUFNLEdBQUcsTUFBTSxDQUFDLG1DQUFtQyxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFFOUUsUUFBUTtRQUNOLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDaEQsT0FBTyxDQUFDLEdBQUcsQ0FBQywyQkFBMkIsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNsRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7d0dBUFUsK0JBQStCOzRGQUEvQiwrQkFBK0I7OzRGQUEvQiwrQkFBK0I7a0JBSjNDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDRDQUE0QztvQkFDdEQsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkluaXQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9zdWJzY3JpcHRpb24nO1xuaW1wb3J0IHsgRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlJztcblxuLyoqXG4gKiBQcmludHMgb3V0IHRoZSBjdXJyZW50IHN0YXRlIHRvIHRoZSBjb25zb2xlLiBVc2VmdWwgZm9yIGRlYnVnZ2luZy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEFjdGlvbkxvZ2dlcl0sW2RieEFjdGlvbkNvbnRleHRMb2dnZXJdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhBY3Rpb25Db250ZXh0TG9nZ2VyRGlyZWN0aXZlIGV4dGVuZHMgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xuICByZWFkb25seSBzb3VyY2UgPSBpbmplY3QoRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UsIHsgaG9zdDogdHJ1ZSB9KTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YiA9IHRoaXMuc291cmNlLnN0YXRlJC5zdWJzY3JpYmUoKHN0YXRlKSA9PiB7XG4gICAgICBjb25zb2xlLmxvZygnZGJ4QWN0aW9uTG9nZ2VyIC0gc3RhdGU6ICcsIHN0YXRlKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -1,8 +1,5 @@
1
- import { reduceBooleansWithOrFn } from '@dereekb/util';
2
- import { Directive } from '@angular/core';
3
- import { BehaviorSubject, of, distinctUntilChanged, map, shareReplay, switchMap } from 'rxjs';
4
- import { combineLatestFromMapValuesObsFn } from '@dereekb/rxjs';
5
- import { actionContextStoreSourcePipe } from '../../action.store.source';
1
+ import { Directive, inject } from '@angular/core';
2
+ import { actionContextStoreSourceMap, ActionContextStoreSourceMap } from './action.map';
6
3
  import * as i0 from "@angular/core";
7
4
  /**
8
5
  * Context used for providing actions based on the action key.
@@ -10,71 +7,30 @@ import * as i0 from "@angular/core";
10
7
  * This is useful for passing action contexts around via the providers instead of explicit injection.
11
8
  */
12
9
  export class DbxActionContextMapDirective {
13
- _map = new BehaviorSubject(new Map());
14
- map$ = this._map.asObservable();
15
- areAnyWorking$ = this.checkAnyAre((x) => x.isWorking$, false);
16
- get map() {
17
- return this._map.value;
18
- }
19
- sourceForKey(key) {
20
- return new DbxActionContextMapDirectiveSourceInstance(this, key);
21
- }
22
- addStoreSource(key, source) {
23
- if (this.map.has(key)) {
24
- throw new Error(`Key already existed for "${key}" in map. Ensure the previous store is removed before setting another.`);
25
- }
26
- else if (!source) {
27
- throw new Error('addStoreSource requires a source.');
28
- }
29
- this.map.set(key, source);
30
- this._map.next(this.map);
31
- }
32
- removeStore(key) {
33
- if (!this.map.delete(key)) {
34
- console.warn('removeStore called and no value was found.');
35
- }
36
- this._map.next(this.map);
37
- }
10
+ actionContextStoreSourceMap = inject(ActionContextStoreSourceMap);
38
11
  ngOnDestroy() {
39
- this._map.complete();
40
- }
41
- // MARK: Utility
42
- checkAnyAre(mapFn, emptyArrayValue = false) {
43
- return this.reduceFromAllSources(mapFn, reduceBooleansWithOrFn(emptyArrayValue));
44
- }
45
- reduceFromAllSources(mapFn, reduceFn) {
46
- return this.fromAllSources(mapFn).pipe(map(reduceFn));
47
- }
48
- fromAllSources(mapFn) {
49
- return this.map$.pipe(switchMap(combineLatestFromMapValuesObsFn((x) => x.store$.pipe(switchMap(mapFn)))));
50
- }
51
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxActionContextMapDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
52
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DbxActionContextMapDirective, selector: "[dbxActionContextMap]", providers: [], exportAs: ["actionMap"], ngImport: i0 });
12
+ this.actionContextStoreSourceMap.destroy();
13
+ }
14
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionContextMapDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
15
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DbxActionContextMapDirective, isStandalone: true, selector: "[dbxActionContextMap]", providers: [
16
+ {
17
+ provide: ActionContextStoreSourceMap,
18
+ useFactory: actionContextStoreSourceMap
19
+ }
20
+ ], exportAs: ["actionMap"], ngImport: i0 });
53
21
  }
54
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxActionContextMapDirective, decorators: [{
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionContextMapDirective, decorators: [{
55
23
  type: Directive,
56
24
  args: [{
57
25
  selector: '[dbxActionContextMap]',
26
+ providers: [
27
+ {
28
+ provide: ActionContextStoreSourceMap,
29
+ useFactory: actionContextStoreSourceMap
30
+ }
31
+ ],
58
32
  exportAs: 'actionMap',
59
- providers: []
33
+ standalone: true
60
34
  }]
61
35
  }] });
62
- export class DbxActionContextMapDirectiveSourceInstance {
63
- _parent;
64
- _key;
65
- store$;
66
- constructor(parent, key) {
67
- this._parent = parent;
68
- this._key = key;
69
- const _source$ = parent.map$.pipe(map((x) => x.get(key)), distinctUntilChanged());
70
- const _store$ = _source$.pipe(switchMap((x) => x?.store$ ?? of(undefined)), shareReplay(1));
71
- this.store$ = actionContextStoreSourcePipe(_store$);
72
- }
73
- get parent() {
74
- return this._parent;
75
- }
76
- get key() {
77
- return this._key;
78
- }
79
- }
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLm1hcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvbWFwL2FjdGlvbi5tYXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLEVBQUUsU0FBUyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQWMsRUFBRSxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFHLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQTRCLDRCQUE0QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBSW5HOzs7O0dBSUc7QUFNSCxNQUFNLE9BQU8sNEJBQTRCO0lBQ3RCLElBQUksR0FBRyxJQUFJLGVBQWUsQ0FBMkMsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ3hGLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBRWhDLGNBQWMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBRXZFLElBQUksR0FBRztRQUNMLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDekIsQ0FBQztJQUVELFlBQVksQ0FBQyxHQUFjO1FBQ3pCLE9BQU8sSUFBSSwwQ0FBMEMsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVELGNBQWMsQ0FBQyxHQUFjLEVBQUUsTUFBZ0M7UUFDN0QsSUFBSSxJQUFJLENB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QU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZWR1Y2VCb29sZWFuc1dpdGhPckZuIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBvZiwgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgc2hhcmVSZXBsYXksIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdEZyb21NYXBWYWx1ZXNPYnNGbiB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlLCBhY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VQaXBlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLnN0b3JlLnNvdXJjZSc7XG5pbXBvcnQgeyBBY3Rpb25Db250ZXh0U3RvcmUgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUnO1xuaW1wb3J0IHsgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwLCBBY3Rpb25LZXkgfSBmcm9tICcuL2FjdGlvbi5tYXAnO1xuXG4vKipcbiAqIENvbnRleHQgdXNlZCBmb3IgcHJvdmlkaW5nIGFjdGlvbnMgYmFzZWQgb24gdGhlIGFjdGlvbiBrZXkuXG4gKlxuICogVGhpcyBpcyB1c2VmdWwgZm9yIHBhc3NpbmcgYWN0aW9uIGNvbnRleHRzIGFyb3VuZCB2aWEgdGhlIHByb3ZpZGVycyBpbnN0ZWFkIG9mIGV4cGxpY2l0IGluamVjdGlvbi5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEFjdGlvbkNvbnRleHRNYXBdJyxcbiAgZXhwb3J0QXM6ICdhY3Rpb25NYXAnLFxuICBwcm92aWRlcnM6IFtdXG59KVxuZXhwb3J0IGNsYXNzIERieEFjdGlvbkNvbnRleHRNYXBEaXJlY3RpdmUgaW1wbGVtZW50cyBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXAsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX21hcCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWFwPEFjdGlvbktleSwgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlPj4obmV3IE1hcCgpKTtcbiAgcmVhZG9ubHkgbWFwJCA9IHRoaXMuX21hcC5hc09ic2VydmFibGUoKTtcblxuICByZWFkb25seSBhcmVBbnlXb3JraW5nJCA9IHRoaXMuY2hlY2tBbnlBcmUoKHgpID0+IHguaXNXb3JraW5nJCwgZmFsc2UpO1xuXG4gIGdldCBtYXAoKTogTWFwPEFjdGlvbktleSwgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlPiB7XG4gICAgcmV0dXJuIHRoaXMuX21hcC52YWx1ZTtcbiAgfVxuXG4gIHNvdXJjZUZvcktleShrZXk6IEFjdGlvbktleSk6IEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZTx1bmtub3duLCB1bmtub3duPiB7XG4gICAgcmV0dXJuIG5ldyBEYnhBY3Rpb25Db250ZXh0TWFwRGlyZWN0aXZlU291cmNlSW5zdGFuY2UodGhpcywga2V5KTtcbiAgfVxuXG4gIGFkZFN0b3JlU291cmNlKGtleTogQWN0aW9uS2V5LCBzb3VyY2U6IEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZSk6IHZvaWQge1xuICAgIGlmICh0aGlzLm1hcC5oYXMoa2V5KSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBLZXkgYWxyZWFkeSBleGlzdGVkIGZvciBcIiR7a2V5fVwiIGluIG1hcC4gRW5zdXJlIHRoZSBwcmV2aW91cyBzdG9yZSBpcyByZW1vdmVkIGJlZm9yZSBzZXR0aW5nIGFub3RoZXIuYCk7XG4gICAgfSBlbHNlIGlmICghc291cmNlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2FkZFN0b3JlU291cmNlIHJlcXVpcmVzIGEgc291cmNlLicpO1xuICAgIH1cblxuICAgIHRoaXMubWFwLnNldChrZXksIHNvdXJjZSk7XG4gICAgdGhpcy5fbWFwLm5leHQodGhpcy5tYXApO1xuICB9XG5cbiAgcmVtb3ZlU3RvcmUoa2V5OiBBY3Rpb25LZXkpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubWFwLmRlbGV0ZShrZXkpKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ3JlbW92ZVN0b3JlIGNhbGxlZCBhbmQgbm8gdmFsdWUgd2FzIGZvdW5kLicpO1xuICAgIH1cblxuICAgIHRoaXMuX21hcC5uZXh0KHRoaXMubWFwKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX21hcC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLy8gTUFSSzogVXRpbGl0eVxuICBjaGVja0FueUFyZShtYXBGbjogKGlucHV0OiBBY3Rpb25Db250ZXh0U3RvcmUpID0+IE9ic2VydmFibGU8Ym9vbGVhbj4sIGVtcHR5QXJyYXlWYWx1ZSA9IGZhbHNlKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMucmVkdWNlRnJvbUFsbFNvdXJjZXMobWFwRm4sIHJlZHVjZUJvb2xlYW5zV2l0aE9yRm4oZW1wdHlBcnJheVZhbHVlKSk7XG4gIH1cblxuICByZWR1Y2VGcm9tQWxsU291cmNlczxPLCBSPihtYXBGbjogKGlucHV0OiBBY3Rpb25Db250ZXh0U3RvcmUpID0+IE9ic2VydmFibGU8Tz4sIHJlZHVjZUZuOiAodmFsdWVzOiBPW10pID0+IFIpOiBPYnNlcnZhYmxlPFI+IHtcbiAgICByZXR1cm4gdGhpcy5mcm9tQWxsU291cmNlczxPPihtYXBGbikucGlwZShtYXAocmVkdWNlRm4pKTtcbiAgfVxuXG4gIGZyb21BbGxTb3VyY2VzPE8+KG1hcEZuOiAoaW5wdXQ6IEFjdGlvbkNvbnRleHRTdG9yZSkgPT4gT2JzZXJ2YWJsZTxPPik6IE9ic2VydmFibGU8T1tdPiB7XG4gICAgcmV0dXJuIHRoaXMubWFwJC5waXBlKHN3aXRjaE1hcChjb21iaW5lTGF0ZXN0RnJvbU1hcFZhbHVlc09ic0ZuKCh4KSA9PiB4LnN0b3JlJC5waXBlKHN3aXRjaE1hcChtYXBGbikpKSkpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBEYnhBY3Rpb25Db250ZXh0TWFwRGlyZWN0aXZlU291cmNlSW5zdGFuY2UgaW1wbGVtZW50cyBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IF9wYXJlbnQ6IERieEFjdGlvbkNvbnRleHRNYXBEaXJlY3RpdmU7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2tleTogQWN0aW9uS2V5O1xuXG4gIHJlYWRvbmx5IHN0b3JlJDogT2JzZXJ2YWJsZTxBY3Rpb25Db250ZXh0U3RvcmU+O1xuXG4gIGNvbnN0cnVjdG9yKHBhcmVudDogRGJ4QWN0aW9uQ29udGV4dE1hcERpcmVjdGl2ZSwga2V5OiBBY3Rpb25LZXkpIHtcbiAgICB0aGlzLl9wYXJlbnQgPSBwYXJlbnQ7XG4gICAgdGhpcy5fa2V5ID0ga2V5O1xuXG4gICAgY29uc3QgX3NvdXJjZSQgPSBwYXJlbnQubWFwJC5waXBlKFxuICAgICAgbWFwKCh4KSA9PiB4LmdldChrZXkpKSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcbiAgICApO1xuXG4gICAgY29uc3QgX3N0b3JlJCA9IF9zb3VyY2UkLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKHgpID0+IHg/LnN0b3JlJCA/PyBvZih1bmRlZmluZWQpKSxcbiAgICAgIHNoYXJlUmVwbGF5KDEpXG4gICAgKTtcblxuICAgIHRoaXMuc3RvcmUkID0gYWN0aW9uQ29udGV4dFN0b3JlU291cmNlUGlwZShfc3RvcmUkKTtcbiAgfVxuXG4gIGdldCBwYXJlbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3BhcmVudDtcbiAgfVxuXG4gIGdldCBrZXkoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2tleTtcbiAgfVxufVxuIl19
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLm1hcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtY29yZS9zcmMvbGliL2FjdGlvbi9kaXJlY3RpdmUvbWFwL2FjdGlvbi5tYXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFFeEY7Ozs7R0FJRztBQVlILE1BQU0sT0FBTyw0QkFBNEI7SUFDOUIsMkJBQTJCLEdBQUcsTUFBTSxDQUFDLDJCQUEyQixDQUFDLENBQUM7SUFFM0UsV0FBVztRQUNULElBQUksQ0FBQywyQkFBMkIsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM3QyxDQUFDO3dHQUxVLDRCQUE0Qjs0RkFBNUIsNEJBQTRCLG9FQVQ1QjtZQUNUO2dCQUNFLE9BQU8sRUFBRSwyQkFBMkI7Z0JBQ3BDLFVBQVUsRUFBRSwyQkFBMkI7YUFDeEM7U0FDRjs7NEZBSVUsNEJBQTRCO2tCQVh4QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsMkJBQTJCOzRCQUNwQyxVQUFVLEVBQUUsMkJBQTJCO3lCQUN4QztxQkFDRjtvQkFDRCxRQUFRLEVBQUUsV0FBVztvQkFDckIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBpbmplY3QsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgYWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwLCBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXAgfSBmcm9tICcuL2FjdGlvbi5tYXAnO1xuXG4vKipcbiAqIENvbnRleHQgdXNlZCBmb3IgcHJvdmlkaW5nIGFjdGlvbnMgYmFzZWQgb24gdGhlIGFjdGlvbiBrZXkuXG4gKlxuICogVGhpcyBpcyB1c2VmdWwgZm9yIHBhc3NpbmcgYWN0aW9uIGNvbnRleHRzIGFyb3VuZCB2aWEgdGhlIHByb3ZpZGVycyBpbnN0ZWFkIG9mIGV4cGxpY2l0IGluamVjdGlvbi5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEFjdGlvbkNvbnRleHRNYXBdJyxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogQWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwLFxuICAgICAgdXNlRmFjdG9yeTogYWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwXG4gICAgfVxuICBdLFxuICBleHBvcnRBczogJ2FjdGlvbk1hcCcsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4QWN0aW9uQ29udGV4dE1hcERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHJlYWRvbmx5IGFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZU1hcCA9IGluamVjdChBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXApO1xuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuYWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwLmRlc3Ryb3koKTtcbiAgfVxufVxuIl19
@@ -1,16 +1,16 @@
1
1
  import { filterMaybe } from '@dereekb/rxjs';
2
2
  import { Directive, Input, inject } from '@angular/core';
3
3
  import { BehaviorSubject, switchMap } from 'rxjs';
4
- import { DbxActionContextMapDirective } from './action.map.directive';
4
+ import { ActionContextStoreSourceMap } from './action.map';
5
5
  import { provideSecondaryActionStoreSource } from '../../action.store.source.provide';
6
6
  import * as i0 from "@angular/core";
7
7
  /**
8
8
  * Directive that provides a ActionContextStoreSource using the input key and DbxActionContextMapDirective.
9
9
  */
10
10
  export class DbxActionFromMapDirective {
11
- _map = inject(DbxActionContextMapDirective);
11
+ _actionContextStoreSourceMap = inject(ActionContextStoreSourceMap);
12
12
  _key = new BehaviorSubject(undefined);
13
- store$ = this._key.pipe(filterMaybe(), switchMap((x) => this._map.sourceForKey(x).store$));
13
+ store$ = this._key.pipe(filterMaybe(), switchMap((x) => this._actionContextStoreSourceMap.sourceForKey(x).store$));
14
14
  ngOnDestroy() {
15
15
  this._key.complete();
16
16
  }
@@ -20,17 +20,18 @@ export class DbxActionFromMapDirective {
20
20
  set key(key) {
21
21
  this._key.next(key);
22
22
  }
23
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxActionFromMapDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
24
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DbxActionFromMapDirective, selector: "[dbxActionFromMap]", inputs: { key: ["dbxActionFromMap", "key"] }, providers: provideSecondaryActionStoreSource(DbxActionFromMapDirective), ngImport: i0 });
23
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionFromMapDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
24
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DbxActionFromMapDirective, isStandalone: true, selector: "[dbxActionFromMap]", inputs: { key: ["dbxActionFromMap", "key"] }, providers: provideSecondaryActionStoreSource(DbxActionFromMapDirective), ngImport: i0 });
25
25
  }
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxActionFromMapDirective, decorators: [{
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionFromMapDirective, decorators: [{
27
27
  type: Directive,
28
28
  args: [{
29
29
  selector: '[dbxActionFromMap]',
30
- providers: provideSecondaryActionStoreSource(DbxActionFromMapDirective)
30
+ providers: provideSecondaryActionStoreSource(DbxActionFromMapDirective),
31
+ standalone: true
31
32
  }]
32
33
  }], propDecorators: { key: [{
33
34
  type: Input,
34
35
  args: ['dbxActionFromMap']
35
36
  }] } });
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLm1hcC5rZXkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWNvcmUvc3JjL2xpYi9hY3Rpb24vZGlyZWN0aXZlL21hcC9hY3Rpb24ubWFwLmtleS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFcEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHbEQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7O0FBRXRGOztHQUVHO0FBS0gsTUFBTSxPQUFPLHlCQUF5QjtJQUNuQixJQUFJLEdBQUcsTUFBTSxDQUFDLDRCQUE0QixDQUFDLENBQUM7SUFDNUMsSUFBSSxHQUFHLElBQUksZUFBZSxDQUFtQixTQUFTLENBQUMsQ0FBQztJQUVoRSxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQzlCLFdBQVcsRUFBRSxFQUNiLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQ25ELENBQUM7SUFFRixXQUFXO1FBQ1QsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFDSSxHQUFHO1FBQ0wsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBSSxHQUFHLENBQUMsR0FBcUI7UUFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdEIsQ0FBQzt3R0FwQlUseUJBQXlCOzRGQUF6Qix5QkFBeUIsMkZBRnpCLGlDQUFpQyxDQUFDLHlCQUF5QixDQUFDOzs0RkFFNUQseUJBQXlCO2tCQUpyQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFNBQVMsRUFBRSxpQ0FBaUMsMkJBQTJCO2lCQUN4RTs4QkFlSyxHQUFHO3NCQUROLEtBQUs7dUJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmlsdGVyTWF5YmUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIE9uRGVzdHJveSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0eXBlIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQWN0aW9uS2V5IH0gZnJvbSAnLi9hY3Rpb24ubWFwJztcbmltcG9ydCB7IFNlY29uZGFyeUFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZSB9IGZyb20gJy4uLy4uL2FjdGlvbi5zdG9yZS5zb3VyY2UnO1xuaW1wb3J0IHsgRGJ4QWN0aW9uQ29udGV4dE1hcERpcmVjdGl2ZSB9IGZyb20gJy4vYWN0aW9uLm1hcC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgcHJvdmlkZVNlY29uZGFyeUFjdGlvblN0b3JlU291cmNlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLnN0b3JlLnNvdXJjZS5wcm92aWRlJztcblxuLyoqXG4gKiBEaXJlY3RpdmUgdGhhdCBwcm92aWRlcyBhIEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZSB1c2luZyB0aGUgaW5wdXQga2V5IGFuZCBEYnhBY3Rpb25Db250ZXh0TWFwRGlyZWN0aXZlLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZGJ4QWN0aW9uRnJvbU1hcF0nLFxuICBwcm92aWRlcnM6IHByb3ZpZGVTZWNvbmRhcnlBY3Rpb25TdG9yZVNvdXJjZShEYnhBY3Rpb25Gcm9tTWFwRGlyZWN0aXZlKVxufSlcbmV4cG9ydCBjbGFzcyBEYnhBY3Rpb25Gcm9tTWFwRGlyZWN0aXZlIGltcGxlbWVudHMgU2Vjb25kYXJ5QWN0aW9uQ29udGV4dFN0b3JlU291cmNlLCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJlYWRvbmx5IF9tYXAgPSBpbmplY3QoRGJ4QWN0aW9uQ29udGV4dE1hcERpcmVjdGl2ZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2tleSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWF5YmU8QWN0aW9uS2V5Pj4odW5kZWZpbmVkKTtcblxuICByZWFkb25seSBzdG9yZSQgPSB0aGlzLl9rZXkucGlwZShcbiAgICBmaWx0ZXJNYXliZSgpLFxuICAgIHN3aXRjaE1hcCgoeCkgPT4gdGhpcy5fbWFwLnNvdXJjZUZvcktleSh4KS5zdG9yZSQpXG4gICk7XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fa2V5LmNvbXBsZXRlKCk7XG4gIH1cblxuICBASW5wdXQoJ2RieEFjdGlvbkZyb21NYXAnKVxuICBnZXQga2V5KCk6IE1heWJlPEFjdGlvbktleT4ge1xuICAgIHJldHVybiB0aGlzLl9rZXkudmFsdWU7XG4gIH1cblxuICBzZXQga2V5KGtleTogTWF5YmU8QWN0aW9uS2V5Pikge1xuICAgIHRoaXMuX2tleS5uZXh0KGtleSk7XG4gIH1cbn1cbiJdfQ==
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLm1hcC5rZXkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWNvcmUvc3JjL2xpYi9hY3Rpb24vZGlyZWN0aXZlL21hcC9hY3Rpb24ubWFwLmtleS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFcEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEQsT0FBTyxFQUFFLDJCQUEyQixFQUFhLE1BQU0sY0FBYyxDQUFDO0FBRXRFLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOztBQUV0Rjs7R0FFRztBQU1ILE1BQU0sT0FBTyx5QkFBeUI7SUFDbkIsNEJBQTRCLEdBQUcsTUFBTSxDQUFDLDJCQUEyQixDQUFDLENBQUM7SUFDbkUsSUFBSSxHQUFHLElBQUksZUFBZSxDQUFtQixTQUFTLENBQUMsQ0FBQztJQUVoRSxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQzlCLFdBQVcsRUFBRSxFQUNiLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLDRCQUE0QixDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FDM0UsQ0FBQztJQUVGLFdBQVc7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUNJLEdBQUc7UUFDTCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFJLEdBQUcsQ0FBQyxHQUFxQjtRQUMzQixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN0QixDQUFDO3dHQXBCVSx5QkFBeUI7NEZBQXpCLHlCQUF5QiwrR0FIekIsaUNBQWlDLENBQUMseUJBQXlCLENBQUM7OzRGQUc1RCx5QkFBeUI7a0JBTHJDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsU0FBUyxFQUFFLGlDQUFpQywyQkFBMkI7b0JBQ3ZFLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs4QkFlSyxHQUFHO3NCQUROLEtBQUs7dUJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmlsdGVyTWF5YmUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIE9uRGVzdHJveSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0eXBlIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlTWFwLCBBY3Rpb25LZXkgfSBmcm9tICcuL2FjdGlvbi5tYXAnO1xuaW1wb3J0IHsgU2Vjb25kYXJ5QWN0aW9uQ29udGV4dFN0b3JlU291cmNlIH0gZnJvbSAnLi4vLi4vYWN0aW9uLnN0b3JlLnNvdXJjZSc7XG5pbXBvcnQgeyBwcm92aWRlU2Vjb25kYXJ5QWN0aW9uU3RvcmVTb3VyY2UgfSBmcm9tICcuLi8uLi9hY3Rpb24uc3RvcmUuc291cmNlLnByb3ZpZGUnO1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0aGF0IHByb3ZpZGVzIGEgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlIHVzaW5nIHRoZSBpbnB1dCBrZXkgYW5kIERieEFjdGlvbkNvbnRleHRNYXBEaXJlY3RpdmUuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhBY3Rpb25Gcm9tTWFwXScsXG4gIHByb3ZpZGVyczogcHJvdmlkZVNlY29uZGFyeUFjdGlvblN0b3JlU291cmNlKERieEFjdGlvbkZyb21NYXBEaXJlY3RpdmUpLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERieEFjdGlvbkZyb21NYXBEaXJlY3RpdmUgaW1wbGVtZW50cyBTZWNvbmRhcnlBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2UsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2FjdGlvbkNvbnRleHRTdG9yZVNvdXJjZU1hcCA9IGluamVjdChBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VNYXApO1xuICBwcml2YXRlIHJlYWRvbmx5IF9rZXkgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1heWJlPEFjdGlvbktleT4+KHVuZGVmaW5lZCk7XG5cbiAgcmVhZG9ubHkgc3RvcmUkID0gdGhpcy5fa2V5LnBpcGUoXG4gICAgZmlsdGVyTWF5YmUoKSxcbiAgICBzd2l0Y2hNYXAoKHgpID0+IHRoaXMuX2FjdGlvbkNvbnRleHRTdG9yZVNvdXJjZU1hcC5zb3VyY2VGb3JLZXkoeCkuc3RvcmUkKVxuICApO1xuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2tleS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgQElucHV0KCdkYnhBY3Rpb25Gcm9tTWFwJylcbiAgZ2V0IGtleSgpOiBNYXliZTxBY3Rpb25LZXk+IHtcbiAgICByZXR1cm4gdGhpcy5fa2V5LnZhbHVlO1xuICB9XG5cbiAgc2V0IGtleShrZXk6IE1heWJlPEFjdGlvbktleT4pIHtcbiAgICB0aGlzLl9rZXkubmV4dChrZXkpO1xuICB9XG59XG4iXX0=