@ngxs/store 3.8.2 → 18.0.0-dev.master-f4c2c19

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 (379) hide show
  1. package/README.md +1 -1
  2. package/{esm2015/index.js → esm2022/index.mjs} +2 -2
  3. package/esm2022/internals/custom-rxjs-subjects.mjs +92 -0
  4. package/esm2022/internals/index.mjs +10 -0
  5. package/esm2022/internals/initial-state.mjs +18 -0
  6. package/esm2022/internals/internal-tokens.mjs +6 -0
  7. package/esm2022/internals/memoize.mjs +45 -0
  8. package/esm2022/internals/metadata.mjs +57 -0
  9. package/esm2022/internals/ngxs-app-bootstrapped-state.mjs +19 -0
  10. package/esm2022/internals/state-stream.mjs +32 -0
  11. package/esm2022/internals/state-token.mjs +17 -0
  12. package/esm2022/internals/symbols.mjs +11 -0
  13. package/esm2022/internals/testing/fresh-platform.mjs +72 -0
  14. package/{esm2015/internals/testing/helpers/ngxs-test.component.js → esm2022/internals/testing/helpers/ngxs-test.component.mjs} +4 -4
  15. package/esm2022/internals/testing/helpers/ngxs-test.module.mjs +20 -0
  16. package/{esm2015/internals/testing/index.js → esm2022/internals/testing/index.mjs} +2 -2
  17. package/esm2022/internals/testing/ngxs.setup.mjs +48 -0
  18. package/{esm2015/internals/testing/skip-console-logging.js → esm2022/internals/testing/skip-console-logging.mjs} +1 -1
  19. package/esm2022/internals/testing/symbol.mjs +2 -0
  20. package/esm2022/operators/append.mjs +20 -0
  21. package/esm2022/operators/iif.mjs +38 -0
  22. package/esm2022/operators/insert-item.mjs +29 -0
  23. package/esm2022/operators/patch.mjs +21 -0
  24. package/esm2022/operators/remove-item.mjs +22 -0
  25. package/esm2022/operators/update-item.mjs +40 -0
  26. package/esm2022/plugins/actions.mjs +16 -0
  27. package/esm2022/plugins/index.mjs +4 -0
  28. package/esm2022/plugins/ngxs-store-plugins.mjs +5 -0
  29. package/esm2022/plugins/symbols.mjs +6 -0
  30. package/esm2022/plugins/utils.mjs +51 -0
  31. package/esm2022/src/actions/symbols.mjs +2 -0
  32. package/esm2022/src/actions-stream.mjs +52 -0
  33. package/esm2022/src/configs/messages.config.mjs +48 -0
  34. package/esm2022/src/decorators/action.mjs +31 -0
  35. package/esm2022/src/decorators/select/select-factory.mjs +29 -0
  36. package/esm2022/src/decorators/select/select.mjs +29 -0
  37. package/esm2022/src/decorators/select/symbols.mjs +29 -0
  38. package/esm2022/src/decorators/selector/selector.mjs +29 -0
  39. package/esm2022/src/decorators/selector/symbols.mjs +2 -0
  40. package/esm2022/src/decorators/selector-options.mjs +21 -0
  41. package/esm2022/src/decorators/state.mjs +35 -0
  42. package/esm2022/src/dev-features/ngxs-development.module.mjs +28 -0
  43. package/esm2022/src/dev-features/ngxs-unhandled-actions-logger.mjs +45 -0
  44. package/esm2022/src/dev-features/symbols.mjs +7 -0
  45. package/esm2022/src/execution/dispatch-outside-zone-ngxs-execution-strategy.mjs +55 -0
  46. package/{esm2015/src/execution/internal-ngxs-execution-strategy.js → esm2022/src/execution/internal-ngxs-execution-strategy.mjs} +6 -6
  47. package/{esm2015/src/execution/noop-ngxs-execution-strategy.js → esm2022/src/execution/noop-ngxs-execution-strategy.mjs} +4 -4
  48. package/esm2022/src/execution/symbols.mjs +29 -0
  49. package/esm2022/src/internal/dispatcher.mjs +106 -0
  50. package/esm2022/src/internal/fallback-subscriber.mjs +29 -0
  51. package/esm2022/src/internal/internals.mjs +206 -0
  52. package/esm2022/src/internal/lifecycle-state-manager.mjs +86 -0
  53. package/esm2022/src/internal/state-context-factory.mjs +71 -0
  54. package/esm2022/src/internal/state-factory.mjs +311 -0
  55. package/esm2022/src/internal/state-operations.mjs +63 -0
  56. package/esm2022/src/internal/state-operators.mjs +20 -0
  57. package/esm2022/src/internal/unhandled-rxjs-error-callback.mjs +39 -0
  58. package/esm2022/src/ivy/ivy-enabled-in-dev-mode.mjs +25 -0
  59. package/esm2022/src/module.mjs +27 -0
  60. package/esm2022/src/modules/ngxs-feature.module.mjs +18 -0
  61. package/esm2022/src/modules/ngxs-root.module.mjs +18 -0
  62. package/esm2022/src/ngxs-unhandled-error-handler.mjs +29 -0
  63. package/esm2022/src/operators/of-action.mjs +104 -0
  64. package/esm2022/src/plugin-manager.mjs +37 -0
  65. package/esm2022/src/plugin_api.mjs +2 -0
  66. package/{esm2015/src/private_api.js → esm2022/src/private_api.mjs} +2 -1
  67. package/esm2022/src/public_api.mjs +20 -0
  68. package/esm2022/src/selectors/create-model-selector.mjs +30 -0
  69. package/esm2022/src/selectors/create-pick-selector.mjs +16 -0
  70. package/esm2022/src/selectors/create-property-selectors.mjs +20 -0
  71. package/esm2022/src/selectors/create-selector.mjs +9 -0
  72. package/esm2022/src/selectors/private_api.mjs +2 -0
  73. package/esm2022/src/selectors/selector-checks.util.mjs +18 -0
  74. package/esm2022/src/selectors/selector-metadata.mjs +35 -0
  75. package/esm2022/src/selectors/selector-models.mjs +2 -0
  76. package/esm2022/src/selectors/selector-types.util.mjs +2 -0
  77. package/esm2022/src/selectors/selector-utils.mjs +95 -0
  78. package/esm2022/src/standalone-features/feature-providers.mjs +20 -0
  79. package/esm2022/src/standalone-features/index.mjs +5 -0
  80. package/esm2022/src/standalone-features/initializers.mjs +89 -0
  81. package/esm2022/src/standalone-features/plugin.mjs +20 -0
  82. package/esm2022/src/standalone-features/preboot.mjs +32 -0
  83. package/esm2022/src/standalone-features/provide-states.mjs +26 -0
  84. package/esm2022/src/standalone-features/provide-store.mjs +26 -0
  85. package/esm2022/src/standalone-features/root-providers.mjs +47 -0
  86. package/esm2022/src/store.mjs +117 -0
  87. package/esm2022/src/symbols.mjs +87 -0
  88. package/esm2022/src/utils/compose.mjs +26 -0
  89. package/esm2022/src/utils/create-dispatch-map.mjs +11 -0
  90. package/esm2022/src/utils/create-select-map.mjs +13 -0
  91. package/esm2022/src/utils/dispatch.mjs +7 -0
  92. package/{esm2015/src/utils/freeze.js → esm2022/src/utils/freeze.mjs} +1 -1
  93. package/esm2022/src/utils/public_api.mjs +5 -0
  94. package/esm2022/src/utils/select.mjs +19 -0
  95. package/esm2022/src/utils/store-validators.mjs +25 -0
  96. package/{fesm2015/ngxs-store-internals-testing.js → fesm2022/ngxs-store-internals-testing.mjs} +84 -81
  97. package/fesm2022/ngxs-store-internals-testing.mjs.map +1 -0
  98. package/fesm2022/ngxs-store-internals.mjs +296 -0
  99. package/fesm2022/ngxs-store-internals.mjs.map +1 -0
  100. package/{fesm2015/ngxs-store-operators.js → fesm2022/ngxs-store-operators.mjs} +3 -3
  101. package/fesm2022/ngxs-store-operators.mjs.map +1 -0
  102. package/fesm2022/ngxs-store-plugins.mjs +80 -0
  103. package/fesm2022/ngxs-store-plugins.mjs.map +1 -0
  104. package/{fesm2015/ngxs-store.js → fesm2022/ngxs-store.mjs} +1319 -1265
  105. package/fesm2022/ngxs-store.mjs.map +1 -0
  106. package/index.d.ts +1 -1
  107. package/{src/internal → internals}/custom-rxjs-subjects.d.ts +2 -2
  108. package/internals/index.d.ts +8 -4
  109. package/internals/initial-state.d.ts +5 -5
  110. package/internals/memoize.d.ts +1 -1
  111. package/internals/metadata.d.ts +25 -0
  112. package/internals/ngxs-app-bootstrapped-state.d.ts +8 -0
  113. package/internals/state-stream.d.ts +15 -0
  114. package/internals/state-token.d.ts +7 -0
  115. package/internals/symbols.d.ts +84 -3
  116. package/internals/testing/helpers/ngxs-test.component.d.ts +1 -1
  117. package/internals/testing/index.d.ts +2 -2
  118. package/internals/testing/symbol.d.ts +2 -2
  119. package/operators/patch.d.ts +2 -2
  120. package/operators/types.d.ts +5 -5
  121. package/operators/utils.d.ts +1 -1
  122. package/package.json +44 -13
  123. package/{src/actions → plugins}/actions.d.ts +3 -3
  124. package/plugins/index.d.ts +3 -0
  125. package/plugins/symbols.d.ts +13 -0
  126. package/{src/utils → plugins}/utils.d.ts +0 -17
  127. package/schematics/collection.json +36 -0
  128. package/schematics/src/actions/actions.factory.d.ts +3 -0
  129. package/schematics/src/actions/actions.factory.js +24 -0
  130. package/schematics/src/actions/actions.factory.js.map +1 -0
  131. package/schematics/src/actions/files/__name__.actions.ts__template__ +4 -0
  132. package/schematics/src/actions/schema.json +35 -0
  133. package/schematics/src/ng-add/add-declaration.d.ts +4 -0
  134. package/schematics/src/ng-add/add-declaration.js +109 -0
  135. package/schematics/src/ng-add/add-declaration.js.map +1 -0
  136. package/schematics/src/ng-add/ng-add.factory.d.ts +9 -0
  137. package/schematics/src/ng-add/ng-add.factory.js +89 -0
  138. package/schematics/src/ng-add/ng-add.factory.js.map +1 -0
  139. package/schematics/src/ng-add/schema.json +72 -0
  140. package/schematics/src/starter-kit/files/store/auth/auth.actions.ts__template__ +6 -0
  141. package/schematics/src/starter-kit/files/store/auth/auth.state.spec.ts__template__ +55 -0
  142. package/schematics/src/starter-kit/files/store/auth/auth.state.ts__template__ +47 -0
  143. package/schematics/src/starter-kit/files/store/dashboard/index.ts__template__ +4 -0
  144. package/schematics/src/starter-kit/files/store/dashboard/states/dictionary/dictionary.actions.ts__template__ +10 -0
  145. package/schematics/src/starter-kit/files/store/dashboard/states/dictionary/dictionary.state.spec.ts__template__ +92 -0
  146. package/schematics/src/starter-kit/files/store/dashboard/states/dictionary/dictionary.state.ts__template__ +62 -0
  147. package/schematics/src/starter-kit/files/store/dashboard/states/user/user.actions.ts__template__ +6 -0
  148. package/schematics/src/starter-kit/files/store/dashboard/states/user/user.state.spec.ts__template__ +61 -0
  149. package/schematics/src/starter-kit/files/store/dashboard/states/user/user.state.ts__template__ +42 -0
  150. package/schematics/src/starter-kit/files/store/store.config.ts__template__ +39 -0
  151. package/schematics/src/starter-kit/files/store/store.module.ts__template__ +22 -0
  152. package/schematics/src/starter-kit/schema.json +22 -0
  153. package/schematics/src/starter-kit/starter-kit.factory.d.ts +3 -0
  154. package/schematics/src/starter-kit/starter-kit.factory.js +21 -0
  155. package/schematics/src/starter-kit/starter-kit.factory.js.map +1 -0
  156. package/schematics/src/state/files/__name__.state.spec.ts__template__ +25 -0
  157. package/schematics/src/state/files/__name__.state.ts__template__ +22 -0
  158. package/schematics/src/state/schema.json +44 -0
  159. package/schematics/src/state/state.factory.d.ts +3 -0
  160. package/schematics/src/state/state.factory.js +29 -0
  161. package/schematics/src/state/state.factory.js.map +1 -0
  162. package/schematics/src/store/files/__name__.actions.ts__template__ +4 -0
  163. package/schematics/src/store/files/__name__.state.spec.ts__template__ +26 -0
  164. package/schematics/src/store/files/__name__.state.ts__template__ +29 -0
  165. package/schematics/src/store/schema.json +44 -0
  166. package/schematics/src/store/store.factory.d.ts +3 -0
  167. package/schematics/src/store/store.factory.js +29 -0
  168. package/schematics/src/store/store.factory.js.map +1 -0
  169. package/schematics/src/utils/common/lib.config.d.ts +10 -0
  170. package/schematics/src/utils/common/lib.config.js +15 -0
  171. package/schematics/src/utils/common/lib.config.js.map +1 -0
  172. package/schematics/src/utils/common/project-files.config.d.ts +3 -0
  173. package/schematics/src/utils/common/project-files.config.js +7 -0
  174. package/schematics/src/utils/common/project-files.config.js.map +1 -0
  175. package/schematics/src/utils/common/properties.d.ts +1 -0
  176. package/schematics/src/utils/common/properties.js +8 -0
  177. package/schematics/src/utils/common/properties.js.map +1 -0
  178. package/schematics/src/utils/config.d.ts +119 -0
  179. package/schematics/src/utils/config.js +21 -0
  180. package/schematics/src/utils/config.js.map +1 -0
  181. package/schematics/src/utils/generate-utils.d.ts +4 -0
  182. package/schematics/src/utils/generate-utils.js +14 -0
  183. package/schematics/src/utils/generate-utils.js.map +1 -0
  184. package/schematics/src/utils/interfaces/package.interface.d.ts +7 -0
  185. package/schematics/src/utils/interfaces/package.interface.js +3 -0
  186. package/schematics/src/utils/interfaces/package.interface.js.map +1 -0
  187. package/schematics/src/utils/ng-utils/README.md +1 -0
  188. package/schematics/src/utils/ng-utils/ast-utils.d.ts +99 -0
  189. package/schematics/src/utils/ng-utils/ast-utils.js +517 -0
  190. package/schematics/src/utils/ng-utils/ast-utils.js.map +1 -0
  191. package/schematics/src/utils/ng-utils/ng-ast-utils.d.ts +5 -0
  192. package/schematics/src/utils/ng-utils/ng-ast-utils.js +67 -0
  193. package/schematics/src/utils/ng-utils/ng-ast-utils.js.map +1 -0
  194. package/schematics/src/utils/ng-utils/project.d.ts +2 -0
  195. package/schematics/src/utils/ng-utils/project.js +27 -0
  196. package/schematics/src/utils/ng-utils/project.js.map +1 -0
  197. package/schematics/src/utils/ng-utils/standalone/app_config.d.ts +16 -0
  198. package/schematics/src/utils/ng-utils/standalone/app_config.js +84 -0
  199. package/schematics/src/utils/ng-utils/standalone/app_config.js.map +1 -0
  200. package/schematics/src/utils/ng-utils/standalone/code_block.d.ts +46 -0
  201. package/schematics/src/utils/ng-utils/standalone/code_block.js +73 -0
  202. package/schematics/src/utils/ng-utils/standalone/code_block.js.map +1 -0
  203. package/schematics/src/utils/ng-utils/standalone/index.d.ts +1 -0
  204. package/schematics/src/utils/ng-utils/standalone/index.js +7 -0
  205. package/schematics/src/utils/ng-utils/standalone/index.js.map +1 -0
  206. package/schematics/src/utils/ng-utils/standalone/rules.d.ts +38 -0
  207. package/schematics/src/utils/ng-utils/standalone/rules.js +195 -0
  208. package/schematics/src/utils/ng-utils/standalone/rules.js.map +1 -0
  209. package/schematics/src/utils/ng-utils/standalone/util.d.ts +28 -0
  210. package/schematics/src/utils/ng-utils/standalone/util.js +138 -0
  211. package/schematics/src/utils/ng-utils/standalone/util.js.map +1 -0
  212. package/schematics/src/utils/normalize-options.d.ts +11 -0
  213. package/schematics/src/utils/normalize-options.js +27 -0
  214. package/schematics/src/utils/normalize-options.js.map +1 -0
  215. package/schematics/src/utils/project.d.ts +19 -0
  216. package/schematics/src/utils/project.js +46 -0
  217. package/schematics/src/utils/project.js.map +1 -0
  218. package/schematics/src/utils/versions.json +3 -0
  219. package/src/actions/symbols.d.ts +3 -17
  220. package/src/actions-stream.d.ts +2 -2
  221. package/src/configs/messages.config.d.ts +3 -1
  222. package/src/decorators/action.d.ts +28 -3
  223. package/src/decorators/select/select.d.ts +3 -0
  224. package/src/decorators/select/symbols.d.ts +2 -3
  225. package/src/decorators/selector/selector.d.ts +2 -3
  226. package/src/decorators/selector/symbols.d.ts +73 -4
  227. package/src/decorators/selector-options.d.ts +2 -2
  228. package/src/decorators/state.d.ts +2 -3
  229. package/src/dev-features/ngxs-development.module.d.ts +1 -0
  230. package/src/execution/symbols.d.ts +8 -2
  231. package/src/internal/dispatcher.d.ts +5 -5
  232. package/src/internal/fallback-subscriber.d.ts +3 -0
  233. package/src/internal/internals.d.ts +13 -69
  234. package/src/internal/lifecycle-state-manager.d.ts +6 -6
  235. package/src/internal/state-factory.d.ts +8 -6
  236. package/src/internal/state-operations.d.ts +2 -2
  237. package/src/internal/unhandled-rxjs-error-callback.d.ts +2 -0
  238. package/src/module.d.ts +3 -14
  239. package/src/modules/ngxs-feature.module.d.ts +2 -9
  240. package/src/modules/ngxs-root.module.d.ts +2 -9
  241. package/src/ngxs-unhandled-error-handler.d.ts +16 -0
  242. package/src/operators/of-action.d.ts +3 -3
  243. package/src/plugin-manager.d.ts +1 -1
  244. package/src/plugin_api.d.ts +1 -5
  245. package/src/private_api.d.ts +1 -0
  246. package/src/public_api.d.ts +11 -8
  247. package/src/selectors/create-model-selector.d.ts +2 -2
  248. package/src/selectors/create-pick-selector.d.ts +1 -1
  249. package/src/selectors/create-property-selectors.d.ts +3 -3
  250. package/src/selectors/create-selector.d.ts +10 -10
  251. package/src/selectors/private_api.d.ts +7 -0
  252. package/src/selectors/selector-checks.util.d.ts +2 -2
  253. package/src/selectors/selector-metadata.d.ts +4 -4
  254. package/src/selectors/selector-models.d.ts +4 -4
  255. package/src/selectors/selector-types.util.d.ts +6 -7
  256. package/src/selectors/selector-utils.d.ts +3 -3
  257. package/src/standalone-features/feature-providers.d.ts +7 -0
  258. package/src/standalone-features/index.d.ts +4 -0
  259. package/src/standalone-features/initializers.d.ts +29 -0
  260. package/src/standalone-features/plugin.d.ts +17 -0
  261. package/src/standalone-features/preboot.d.ts +26 -0
  262. package/src/standalone-features/provide-states.d.ts +18 -0
  263. package/src/standalone-features/provide-store.d.ts +22 -0
  264. package/src/standalone-features/root-providers.d.ts +8 -0
  265. package/src/store.d.ts +13 -15
  266. package/src/symbols.d.ts +12 -54
  267. package/src/utils/compose.d.ts +1 -1
  268. package/src/utils/create-dispatch-map.d.ts +4 -0
  269. package/src/utils/create-select-map.d.ts +4 -0
  270. package/src/utils/dispatch.d.ts +2 -0
  271. package/src/utils/public_api.d.ts +4 -0
  272. package/src/utils/select.d.ts +16 -0
  273. package/src/utils/store-validators.d.ts +4 -3
  274. package/bundles/ngxs-store-internals-testing.umd.js +0 -684
  275. package/bundles/ngxs-store-internals-testing.umd.js.map +0 -1
  276. package/bundles/ngxs-store-internals.umd.js +0 -141
  277. package/bundles/ngxs-store-internals.umd.js.map +0 -1
  278. package/bundles/ngxs-store-operators.umd.js +0 -224
  279. package/bundles/ngxs-store-operators.umd.js.map +0 -1
  280. package/bundles/ngxs-store.umd.js +0 -3076
  281. package/bundles/ngxs-store.umd.js.map +0 -1
  282. package/esm2015/internals/index.js +0 -5
  283. package/esm2015/internals/initial-state.js +0 -17
  284. package/esm2015/internals/internal-tokens.js +0 -5
  285. package/esm2015/internals/memoize.js +0 -45
  286. package/esm2015/internals/ngxs-bootstrapper.js +0 -29
  287. package/esm2015/internals/src/symbols.js +0 -2
  288. package/esm2015/internals/symbols.js +0 -2
  289. package/esm2015/internals/testing/fresh-platform.js +0 -70
  290. package/esm2015/internals/testing/helpers/ngxs-test.module.js +0 -21
  291. package/esm2015/internals/testing/ngxs.setup.js +0 -46
  292. package/esm2015/internals/testing/symbol.js +0 -2
  293. package/esm2015/operators/append.js +0 -20
  294. package/esm2015/operators/iif.js +0 -38
  295. package/esm2015/operators/insert-item.js +0 -29
  296. package/esm2015/operators/patch.js +0 -21
  297. package/esm2015/operators/remove-item.js +0 -22
  298. package/esm2015/operators/update-item.js +0 -40
  299. package/esm2015/src/actions/actions.js +0 -16
  300. package/esm2015/src/actions/symbols.js +0 -2
  301. package/esm2015/src/actions-stream.js +0 -52
  302. package/esm2015/src/configs/messages.config.js +0 -36
  303. package/esm2015/src/decorators/action.js +0 -33
  304. package/esm2015/src/decorators/select/select-factory.js +0 -29
  305. package/esm2015/src/decorators/select/select.js +0 -26
  306. package/esm2015/src/decorators/select/symbols.js +0 -29
  307. package/esm2015/src/decorators/selector/selector.js +0 -32
  308. package/esm2015/src/decorators/selector/symbols.js +0 -2
  309. package/esm2015/src/decorators/selector-options.js +0 -21
  310. package/esm2015/src/decorators/state.js +0 -36
  311. package/esm2015/src/dev-features/ngxs-development.module.js +0 -22
  312. package/esm2015/src/dev-features/ngxs-unhandled-actions-logger.js +0 -46
  313. package/esm2015/src/dev-features/symbols.js +0 -6
  314. package/esm2015/src/execution/dispatch-outside-zone-ngxs-execution-strategy.js +0 -57
  315. package/esm2015/src/execution/symbols.js +0 -23
  316. package/esm2015/src/internal/custom-rxjs-subjects.js +0 -92
  317. package/esm2015/src/internal/dispatcher.js +0 -104
  318. package/esm2015/src/internal/error-handler.js +0 -64
  319. package/esm2015/src/internal/internals.js +0 -248
  320. package/esm2015/src/internal/lifecycle-state-manager.js +0 -79
  321. package/esm2015/src/internal/state-context-factory.js +0 -68
  322. package/esm2015/src/internal/state-factory.js +0 -288
  323. package/esm2015/src/internal/state-operations.js +0 -63
  324. package/esm2015/src/internal/state-operators.js +0 -20
  325. package/esm2015/src/internal/state-stream.js +0 -25
  326. package/esm2015/src/ivy/ivy-enabled-in-dev-mode.js +0 -25
  327. package/esm2015/src/module.js +0 -88
  328. package/esm2015/src/modules/ngxs-feature.module.js +0 -45
  329. package/esm2015/src/modules/ngxs-root.module.js +0 -41
  330. package/esm2015/src/operators/of-action.js +0 -102
  331. package/esm2015/src/plugin-manager.js +0 -37
  332. package/esm2015/src/plugin_api.js +0 -6
  333. package/esm2015/src/public_api.js +0 -27
  334. package/esm2015/src/public_to_deprecate.js +0 -14
  335. package/esm2015/src/selectors/create-model-selector.js +0 -30
  336. package/esm2015/src/selectors/create-pick-selector.js +0 -16
  337. package/esm2015/src/selectors/create-property-selectors.js +0 -20
  338. package/esm2015/src/selectors/create-selector.js +0 -9
  339. package/esm2015/src/selectors/selector-checks.util.js +0 -18
  340. package/esm2015/src/selectors/selector-metadata.js +0 -30
  341. package/esm2015/src/selectors/selector-models.js +0 -2
  342. package/esm2015/src/selectors/selector-types.util.js +0 -2
  343. package/esm2015/src/selectors/selector-utils.js +0 -74
  344. package/esm2015/src/state-token/state-token.js +0 -17
  345. package/esm2015/src/state-token/symbols.js +0 -2
  346. package/esm2015/src/store.js +0 -107
  347. package/esm2015/src/symbols.js +0 -58
  348. package/esm2015/src/utils/compose.js +0 -26
  349. package/esm2015/src/utils/store-validators.js +0 -25
  350. package/esm2015/src/utils/utils.js +0 -92
  351. package/fesm2015/ngxs-store-internals-testing.js.map +0 -1
  352. package/fesm2015/ngxs-store-internals.js +0 -101
  353. package/fesm2015/ngxs-store-internals.js.map +0 -1
  354. package/fesm2015/ngxs-store-operators.js.map +0 -1
  355. package/fesm2015/ngxs-store.js.map +0 -1
  356. package/internals/ngxs-bootstrapper.d.ts +0 -16
  357. package/internals/ngxs-store-internals.d.ts +0 -5
  358. package/internals/package.json +0 -10
  359. package/internals/src/symbols.d.ts +0 -7
  360. package/internals/testing/ngxs-store-internals-testing.d.ts +0 -5
  361. package/internals/testing/package.json +0 -10
  362. package/ngxs-store.d.ts +0 -5
  363. package/operators/ngxs-store-operators.d.ts +0 -5
  364. package/operators/package.json +0 -10
  365. package/src/internal/error-handler.d.ts +0 -26
  366. package/src/internal/state-stream.d.ts +0 -14
  367. package/src/public_to_deprecate.d.ts +0 -21
  368. package/src/state-token/state-token.d.ts +0 -7
  369. package/src/state-token/symbols.d.ts +0 -5
  370. /package/{esm2015/internals/ngxs-store-internals.js → esm2022/internals/ngxs-store-internals.mjs} +0 -0
  371. /package/{esm2015/internals/testing/ngxs-store-internals-testing.js → esm2022/internals/testing/ngxs-store-internals-testing.mjs} +0 -0
  372. /package/{esm2015/ngxs-store.js → esm2022/ngxs-store.mjs} +0 -0
  373. /package/{esm2015/operators/compose.js → esm2022/operators/compose.mjs} +0 -0
  374. /package/{esm2015/operators/index.js → esm2022/operators/index.mjs} +0 -0
  375. /package/{esm2015/operators/ngxs-store-operators.js → esm2022/operators/ngxs-store-operators.mjs} +0 -0
  376. /package/{esm2015/operators/types.js → esm2022/operators/types.mjs} +0 -0
  377. /package/{esm2015/operators/utils.js → esm2022/operators/utils.mjs} +0 -0
  378. /package/{esm2015/src/operators/leave-ngxs.js → esm2022/src/operators/leave-ngxs.mjs} +0 -0
  379. /package/{esm2015/src/selectors/index.js → esm2022/src/selectors/index.mjs} +0 -0
@@ -0,0 +1,29 @@
1
+ import { ErrorHandler, Injectable, NgZone, inject } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class NgxsUnhandledErrorHandler {
4
+ constructor() {
5
+ this._ngZone = inject(NgZone);
6
+ this._errorHandler = inject(ErrorHandler);
7
+ }
8
+ /**
9
+ * The `_unhandledErrorContext` is left unused internally since we do not
10
+ * require it for internal operations. However, developers who wish to provide
11
+ * their own custom error handler may utilize this context information.
12
+ */
13
+ handleError(error, _unhandledErrorContext) {
14
+ // In order to avoid duplicate error handling, it is necessary to leave
15
+ // the Angular zone to ensure that errors are not caught twice. The `handleError`
16
+ // method may contain a `throw error` statement, which is used to re-throw the error.
17
+ // If the error is re-thrown within the Angular zone, it will be caught again by the
18
+ // Angular zone. By default, `@angular/core` leaves the Angular zone when invoking
19
+ // `handleError` (see `_callAndReportToErrorHandler`).
20
+ this._ngZone.runOutsideAngular(() => this._errorHandler.handleError(error));
21
+ }
22
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: NgxsUnhandledErrorHandler, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
23
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: NgxsUnhandledErrorHandler, providedIn: 'root' }); }
24
+ }
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: NgxsUnhandledErrorHandler, decorators: [{
26
+ type: Injectable,
27
+ args: [{ providedIn: 'root' }]
28
+ }] });
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4cy11bmhhbmRsZWQtZXJyb3ItaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0b3JlL3NyYy9uZ3hzLXVuaGFuZGxlZC1lcnJvci1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBT3pFLE1BQU0sT0FBTyx5QkFBeUI7SUFEdEM7UUFFVSxZQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3pCLGtCQUFhLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0tBZ0I5QztJQWRDOzs7O09BSUc7SUFDSCxXQUFXLENBQUMsS0FBVSxFQUFFLHNCQUFpRDtRQUN2RSx1RUFBdUU7UUFDdkUsaUZBQWlGO1FBQ2pGLHFGQUFxRjtRQUNyRixvRkFBb0Y7UUFDcEYsa0ZBQWtGO1FBQ2xGLHNEQUFzRDtRQUN0RCxJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDOUUsQ0FBQztpSUFqQlUseUJBQXlCO3FJQUF6Qix5QkFBeUIsY0FEWixNQUFNOzsyRkFDbkIseUJBQXlCO2tCQURyQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVycm9ySGFuZGxlciwgSW5qZWN0YWJsZSwgTmdab25lLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBOZ3hzVW5oYW5kbGVkRXJyb3JDb250ZXh0IHtcbiAgYWN0aW9uOiBhbnk7XG59XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgTmd4c1VuaGFuZGxlZEVycm9ySGFuZGxlciB7XG4gIHByaXZhdGUgX25nWm9uZSA9IGluamVjdChOZ1pvbmUpO1xuICBwcml2YXRlIF9lcnJvckhhbmRsZXIgPSBpbmplY3QoRXJyb3JIYW5kbGVyKTtcblxuICAvKipcbiAgICogVGhlIGBfdW5oYW5kbGVkRXJyb3JDb250ZXh0YCBpcyBsZWZ0IHVudXNlZCBpbnRlcm5hbGx5IHNpbmNlIHdlIGRvIG5vdFxuICAgKiByZXF1aXJlIGl0IGZvciBpbnRlcm5hbCBvcGVyYXRpb25zLiBIb3dldmVyLCBkZXZlbG9wZXJzIHdobyB3aXNoIHRvIHByb3ZpZGVcbiAgICogdGhlaXIgb3duIGN1c3RvbSBlcnJvciBoYW5kbGVyIG1heSB1dGlsaXplIHRoaXMgY29udGV4dCBpbmZvcm1hdGlvbi5cbiAgICovXG4gIGhhbmRsZUVycm9yKGVycm9yOiBhbnksIF91bmhhbmRsZWRFcnJvckNvbnRleHQ6IE5neHNVbmhhbmRsZWRFcnJvckNvbnRleHQpOiB2b2lkIHtcbiAgICAvLyBJbiBvcmRlciB0byBhdm9pZCBkdXBsaWNhdGUgZXJyb3IgaGFuZGxpbmcsIGl0IGlzIG5lY2Vzc2FyeSB0byBsZWF2ZVxuICAgIC8vIHRoZSBBbmd1bGFyIHpvbmUgdG8gZW5zdXJlIHRoYXQgZXJyb3JzIGFyZSBub3QgY2F1Z2h0IHR3aWNlLiBUaGUgYGhhbmRsZUVycm9yYFxuICAgIC8vIG1ldGhvZCBtYXkgY29udGFpbiBhIGB0aHJvdyBlcnJvcmAgc3RhdGVtZW50LCB3aGljaCBpcyB1c2VkIHRvIHJlLXRocm93IHRoZSBlcnJvci5cbiAgICAvLyBJZiB0aGUgZXJyb3IgaXMgcmUtdGhyb3duIHdpdGhpbiB0aGUgQW5ndWxhciB6b25lLCBpdCB3aWxsIGJlIGNhdWdodCBhZ2FpbiBieSB0aGVcbiAgICAvLyBBbmd1bGFyIHpvbmUuIEJ5IGRlZmF1bHQsIGBAYW5ndWxhci9jb3JlYCBsZWF2ZXMgdGhlIEFuZ3VsYXIgem9uZSB3aGVuIGludm9raW5nXG4gICAgLy8gYGhhbmRsZUVycm9yYCAoc2VlIGBfY2FsbEFuZFJlcG9ydFRvRXJyb3JIYW5kbGVyYCkuXG4gICAgdGhpcy5fbmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHRoaXMuX2Vycm9ySGFuZGxlci5oYW5kbGVFcnJvcihlcnJvcikpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,104 @@
1
+ import { getActionTypeFromInstance } from '@ngxs/store/plugins';
2
+ import { map, filter } from 'rxjs/operators';
3
+ /**
4
+ * RxJS operator for selecting out specific actions.
5
+ *
6
+ * This will grab actions that have just been dispatched as well as actions that have completed
7
+ */
8
+ export function ofAction(...allowedTypes) {
9
+ return ofActionOperator(allowedTypes);
10
+ }
11
+ /**
12
+ * RxJS operator for selecting out specific actions.
13
+ *
14
+ * This will ONLY grab actions that have just been dispatched
15
+ */
16
+ export function ofActionDispatched(...allowedTypes) {
17
+ return ofActionOperator(allowedTypes, ["DISPATCHED" /* ActionStatus.Dispatched */]);
18
+ }
19
+ /**
20
+ * RxJS operator for selecting out specific actions.
21
+ *
22
+ * This will ONLY grab actions that have just been successfully completed
23
+ */
24
+ export function ofActionSuccessful(...allowedTypes) {
25
+ return ofActionOperator(allowedTypes, ["SUCCESSFUL" /* ActionStatus.Successful */]);
26
+ }
27
+ /**
28
+ * RxJS operator for selecting out specific actions.
29
+ *
30
+ * This will ONLY grab actions that have just been canceled
31
+ */
32
+ export function ofActionCanceled(...allowedTypes) {
33
+ return ofActionOperator(allowedTypes, ["CANCELED" /* ActionStatus.Canceled */]);
34
+ }
35
+ /**
36
+ * RxJS operator for selecting out specific actions.
37
+ *
38
+ * This will ONLY grab actions that have just been completed
39
+ */
40
+ export function ofActionCompleted(...allowedTypes) {
41
+ const allowedStatuses = [
42
+ "SUCCESSFUL" /* ActionStatus.Successful */,
43
+ "CANCELED" /* ActionStatus.Canceled */,
44
+ "ERRORED" /* ActionStatus.Errored */
45
+ ];
46
+ return ofActionOperator(allowedTypes, allowedStatuses, mapActionResult);
47
+ }
48
+ /**
49
+ * RxJS operator for selecting out specific actions.
50
+ *
51
+ * This will ONLY grab actions that have just thrown an error
52
+ */
53
+ export function ofActionErrored(...allowedTypes) {
54
+ return ofActionOperator(allowedTypes, ["ERRORED" /* ActionStatus.Errored */], mapActionResult);
55
+ }
56
+ function ofActionOperator(allowedTypes, statuses,
57
+ // This could have been written as
58
+ // `OperatorFunction<ActionContext, ActionCompletion | any>`, as it maps
59
+ // either to `ctx.action` or to `ActionCompletion`. However,
60
+ // `ActionCompletion | any` defaults to `any`, rendering the union
61
+ // type meaningless.
62
+ mapOperator = mapAction) {
63
+ const allowedMap = createAllowedActionTypesMap(allowedTypes);
64
+ const allowedStatusMap = statuses && createAllowedStatusesMap(statuses);
65
+ return function (o) {
66
+ return o.pipe(filterStatus(allowedMap, allowedStatusMap), mapOperator());
67
+ };
68
+ }
69
+ function filterStatus(allowedTypes, allowedStatuses) {
70
+ return filter((ctx) => {
71
+ const actionType = getActionTypeFromInstance(ctx.action);
72
+ const typeMatch = allowedTypes[actionType];
73
+ const statusMatch = allowedStatuses ? allowedStatuses[ctx.status] : true;
74
+ return typeMatch && statusMatch;
75
+ });
76
+ }
77
+ function mapActionResult() {
78
+ return map(({ action, status, error }) => {
79
+ return {
80
+ action,
81
+ result: {
82
+ successful: "SUCCESSFUL" /* ActionStatus.Successful */ === status,
83
+ canceled: "CANCELED" /* ActionStatus.Canceled */ === status,
84
+ error
85
+ }
86
+ };
87
+ });
88
+ }
89
+ function mapAction() {
90
+ return map((ctx) => ctx.action);
91
+ }
92
+ function createAllowedActionTypesMap(types) {
93
+ return types.reduce((filterMap, klass) => {
94
+ filterMap[getActionTypeFromInstance(klass)] = true;
95
+ return filterMap;
96
+ }, {});
97
+ }
98
+ function createAllowedStatusesMap(statuses) {
99
+ return statuses.reduce((filterMap, status) => {
100
+ filterMap[status] = true;
101
+ return filterMap;
102
+ }, {});
103
+ }
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2YtYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RvcmUvc3JjL29wZXJhdG9ycy9vZi1hY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFaEUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQXdCN0M7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxRQUFRLENBQ3RCLEdBQUcsWUFBZTtJQUtsQixPQUFPLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxDQUFDO0FBQ3hDLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGtCQUFrQixDQUNoQyxHQUFHLFlBQWU7SUFLbEIsT0FBTyxnQkFBZ0IsQ0FBQyxZQUFZLEVBQUUsNENBQXlCLENBQUMsQ0FBQztBQUNuRSxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxrQkFBa0IsQ0FDaEMsR0FBRyxZQUFlO0lBS2xCLE9BQU8sZ0JBQWdCLENBQUMsWUFBWSxFQUFFLDRDQUF5QixDQUFDLENBQUM7QUFDbkUsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsZ0JBQWdCLENBQzlCLEdBQUcsWUFBZTtJQUtsQixPQUFPLGdCQUFnQixDQUFDLFlBQVksRUFBRSx3Q0FBdUIsQ0FBQyxDQUFDO0FBQ2pFLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUMvQixHQUFHLFlBQWU7SUFLbEIsTUFBTSxlQUFlLEdBQUc7Ozs7S0FJdkIsQ0FBQztJQUNGLE9BQU8sZ0JBQWdCLENBQUMsWUFBWSxFQUFFLGVBQWUsRUFBRSxlQUFlLENBQUMsQ0FBQztBQUMxRSxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxlQUFlLENBQzdCLEdBQUcsWUFBZTtJQUtsQixPQUFPLGdCQUFnQixDQUFDLFlBQVksRUFBRSxzQ0FBc0IsRUFBRSxlQUFlLENBQUMsQ0FBQztBQUNqRixDQUFDO0FBRUQsU0FBUyxnQkFBZ0IsQ0FDdkIsWUFBMEIsRUFDMUIsUUFBeUI7QUFDekIsa0NBQWtDO0FBQ2xDLHdFQUF3RTtBQUN4RSw0REFBNEQ7QUFDNUQsa0VBQWtFO0FBQ2xFLG9CQUFvQjtBQUNwQixjQUEwRCxTQUFTO0lBRW5FLE1BQU0sVUFBVSxHQUFHLDJCQUEyQixDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzdELE1BQU0sZ0JBQWdCLEdBQUcsUUFBUSxJQUFJLHdCQUF3QixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3hFLE9BQU8sVUFBVSxDQUE0QjtRQUMzQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDM0UsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUVELFNBQVMsWUFBWSxDQUFDLFlBQXVCLEVBQUUsZUFBMkI7SUFDeEUsT0FBTyxNQUFNLENBQUMsQ0FBQyxHQUFrQixFQUFFLEVBQUU7UUFDbkMsTUFBTSxVQUFVLEdBQUcseUJBQXlCLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBRSxDQUFDO1FBQzFELE1BQU0sU0FBUyxHQUFHLFlBQVksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMzQyxNQUFNLFdBQVcsR0FBRyxlQUFlLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUN6RSxPQUFPLFNBQVMsSUFBSSxXQUFXLENBQUM7SUFDbEMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQsU0FBUyxlQUFlO0lBQ3RCLE9BQU8sR0FBRyxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBaUIsRUFBRSxFQUFFO1FBQ3RELE9BQXlCO1lBQ3ZCLE1BQU07WUFDTixNQUFNLEVBQUU7Z0JBQ04sVUFBVSxFQUFFLCtDQUE0QixNQUFNO2dCQUM5QyxRQUFRLEVBQUUsMkNBQTBCLE1BQU07Z0JBQzFDLEtBQUs7YUFDTjtTQUNGLENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxTQUFTLFNBQVM7SUFDaEIsT0FBTyxHQUFHLENBQUMsQ0FBQyxHQUFrQixFQUFFLEVBQUUsQ0FBSSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDcEQsQ0FBQztBQU1ELFNBQVMsMkJBQTJCLENBQUMsS0FBbUI7SUFDdEQsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUNqQixDQUFDLFNBQW9CLEVBQUUsS0FBVSxFQUFFLEVBQUU7UUFDbkMsU0FBUyxDQUFDLHlCQUF5QixDQUFDLEtBQUssQ0FBRSxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQ3BELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUMsRUFDVSxFQUFFLENBQ2QsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLHdCQUF3QixDQUFDLFFBQXdCO0lBQ3hELE9BQU8sUUFBUSxDQUFDLE1BQU0sQ0FDcEIsQ0FBQyxTQUFvQixFQUFFLE1BQW9CLEVBQUUsRUFBRTtRQUM3QyxTQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUMsRUFDVSxFQUFFLENBQ2QsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRBY3Rpb25UeXBlRnJvbUluc3RhbmNlIH0gZnJvbSAnQG5neHMvc3RvcmUvcGx1Z2lucyc7XG5pbXBvcnQgeyBPcGVyYXRvckZ1bmN0aW9uLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgQWN0aW9uVHlwZSB9IGZyb20gJy4uL2FjdGlvbnMvc3ltYm9scyc7XG5pbXBvcnQgeyBBY3Rpb25Db250ZXh0LCBBY3Rpb25TdGF0dXMgfSBmcm9tICcuLi9hY3Rpb25zLXN0cmVhbSc7XG5cbnR5cGUgVHVwbGVLZXlzPFQgZXh0ZW5kcyBhbnlbXT4gPSBFeGNsdWRlPGtleW9mIFQsIGtleW9mIFtdPjtcblxuLyoqXG4gKiBHaXZlbiBhIFBPSk8sIHJldHVybnMgdGhlIFBPSk8gdHlwZSwgZ2l2ZW4gYSBjbGFzcyBjb25zdHJ1Y3RvciBvYmplY3QsIHJldHVybnMgdGhlIHR5cGUgb2YgdGhlIGNsYXNzLlxuICpcbiAqIFRoaXMgdXRpbGl0eSB0eXBlIGV4aXN0cyBkdWUgdG8gdGhlIGNvbXBsZXhpdHkgb2YgQWN0aW9uVHlwZSBiZWluZyBlaXRoZXIgYW4gQWN0aW9uRGVmIGNsYXNzIG9yIHRoZSBwbGFpblxuICogYHsgdHlwZTogc3RyaW5nIH1gIHR5cGUgKG9yIHNpbWlsYXIgY29tcGF0aWJsZSBQT0pPIHR5cGVzKS5cbiAqL1xudHlwZSBDb25zdHJ1Y3RlZDxUPiA9IFQgZXh0ZW5kcyBuZXcgKC4uLmFyZ3M6IGFueVtdKSA9PiBpbmZlciBVID8gVSA6IFQ7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uQ29tcGxldGlvbjxUID0gYW55LCBFID0gRXJyb3I+IHtcbiAgYWN0aW9uOiBUO1xuICByZXN1bHQ6IHtcbiAgICBzdWNjZXNzZnVsOiBib29sZWFuO1xuICAgIGNhbmNlbGVkOiBib29sZWFuO1xuICAgIGVycm9yPzogRTtcbiAgfTtcbn1cblxuLyoqXG4gKiBSeEpTIG9wZXJhdG9yIGZvciBzZWxlY3Rpbmcgb3V0IHNwZWNpZmljIGFjdGlvbnMuXG4gKlxuICogVGhpcyB3aWxsIGdyYWIgYWN0aW9ucyB0aGF0IGhhdmUganVzdCBiZWVuIGRpc3BhdGNoZWQgYXMgd2VsbCBhcyBhY3Rpb25zIHRoYXQgaGF2ZSBjb21wbGV0ZWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG9mQWN0aW9uPFQgZXh0ZW5kcyBBY3Rpb25UeXBlW10+KFxuICAuLi5hbGxvd2VkVHlwZXM6IFRcbik6IE9wZXJhdG9yRnVuY3Rpb248XG4gIEFjdGlvbkNvbnRleHQ8Q29uc3RydWN0ZWQ8VFtUdXBsZUtleXM8VD5dPj4sXG4gIENvbnN0cnVjdGVkPFRbVHVwbGVLZXlzPFQ+XT5cbj4ge1xuICByZXR1cm4gb2ZBY3Rpb25PcGVyYXRvcihhbGxvd2VkVHlwZXMpO1xufVxuXG4vKipcbiAqIFJ4SlMgb3BlcmF0b3IgZm9yIHNlbGVjdGluZyBvdXQgc3BlY2lmaWMgYWN0aW9ucy5cbiAqXG4gKiBUaGlzIHdpbGwgT05MWSBncmFiIGFjdGlvbnMgdGhhdCBoYXZlIGp1c3QgYmVlbiBkaXNwYXRjaGVkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBvZkFjdGlvbkRpc3BhdGNoZWQ8VCBleHRlbmRzIEFjdGlvblR5cGVbXT4oXG4gIC4uLmFsbG93ZWRUeXBlczogVFxuKTogT3BlcmF0b3JGdW5jdGlvbjxcbiAgQWN0aW9uQ29udGV4dDxDb25zdHJ1Y3RlZDxUW1R1cGxlS2V5czxUPl0+PixcbiAgQ29uc3RydWN0ZWQ8VFtUdXBsZUtleXM8VD5dPlxuPiB7XG4gIHJldHVybiBvZkFjdGlvbk9wZXJhdG9yKGFsbG93ZWRUeXBlcywgW0FjdGlvblN0YXR1cy5EaXNwYXRjaGVkXSk7XG59XG5cbi8qKlxuICogUnhKUyBvcGVyYXRvciBmb3Igc2VsZWN0aW5nIG91dCBzcGVjaWZpYyBhY3Rpb25zLlxuICpcbiAqIFRoaXMgd2lsbCBPTkxZIGdyYWIgYWN0aW9ucyB0aGF0IGhhdmUganVzdCBiZWVuIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG9mQWN0aW9uU3VjY2Vzc2Z1bDxUIGV4dGVuZHMgQWN0aW9uVHlwZVtdPihcbiAgLi4uYWxsb3dlZFR5cGVzOiBUXG4pOiBPcGVyYXRvckZ1bmN0aW9uPFxuICBBY3Rpb25Db250ZXh0PENvbnN0cnVjdGVkPFRbVHVwbGVLZXlzPFQ+XT4+LFxuICBDb25zdHJ1Y3RlZDxUW1R1cGxlS2V5czxUPl0+XG4+IHtcbiAgcmV0dXJuIG9mQWN0aW9uT3BlcmF0b3IoYWxsb3dlZFR5cGVzLCBbQWN0aW9uU3RhdHVzLlN1Y2Nlc3NmdWxdKTtcbn1cblxuLyoqXG4gKiBSeEpTIG9wZXJhdG9yIGZvciBzZWxlY3Rpbmcgb3V0IHNwZWNpZmljIGFjdGlvbnMuXG4gKlxuICogVGhpcyB3aWxsIE9OTFkgZ3JhYiBhY3Rpb25zIHRoYXQgaGF2ZSBqdXN0IGJlZW4gY2FuY2VsZWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG9mQWN0aW9uQ2FuY2VsZWQ8VCBleHRlbmRzIEFjdGlvblR5cGVbXT4oXG4gIC4uLmFsbG93ZWRUeXBlczogVFxuKTogT3BlcmF0b3JGdW5jdGlvbjxcbiAgQWN0aW9uQ29udGV4dDxDb25zdHJ1Y3RlZDxUW1R1cGxlS2V5czxUPl0+PixcbiAgQ29uc3RydWN0ZWQ8VFtUdXBsZUtleXM8VD5dPlxuPiB7XG4gIHJldHVybiBvZkFjdGlvbk9wZXJhdG9yKGFsbG93ZWRUeXBlcywgW0FjdGlvblN0YXR1cy5DYW5jZWxlZF0pO1xufVxuXG4vKipcbiAqIFJ4SlMgb3BlcmF0b3IgZm9yIHNlbGVjdGluZyBvdXQgc3BlY2lmaWMgYWN0aW9ucy5cbiAqXG4gKiBUaGlzIHdpbGwgT05MWSBncmFiIGFjdGlvbnMgdGhhdCBoYXZlIGp1c3QgYmVlbiBjb21wbGV0ZWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG9mQWN0aW9uQ29tcGxldGVkPFQgZXh0ZW5kcyBBY3Rpb25UeXBlW10+KFxuICAuLi5hbGxvd2VkVHlwZXM6IFRcbik6IE9wZXJhdG9yRnVuY3Rpb248XG4gIEFjdGlvbkNvbnRleHQ8Q29uc3RydWN0ZWQ8VFtUdXBsZUtleXM8VD5dPj4sXG4gIEFjdGlvbkNvbXBsZXRpb248Q29uc3RydWN0ZWQ8VFtUdXBsZUtleXM8VD5dPj5cbj4ge1xuICBjb25zdCBhbGxvd2VkU3RhdHVzZXMgPSBbXG4gICAgQWN0aW9uU3RhdHVzLlN1Y2Nlc3NmdWwsXG4gICAgQWN0aW9uU3RhdHVzLkNhbmNlbGVkLFxuICAgIEFjdGlvblN0YXR1cy5FcnJvcmVkXG4gIF07XG4gIHJldHVybiBvZkFjdGlvbk9wZXJhdG9yKGFsbG93ZWRUeXBlcywgYWxsb3dlZFN0YXR1c2VzLCBtYXBBY3Rpb25SZXN1bHQpO1xufVxuXG4vKipcbiAqIFJ4SlMgb3BlcmF0b3IgZm9yIHNlbGVjdGluZyBvdXQgc3BlY2lmaWMgYWN0aW9ucy5cbiAqXG4gKiBUaGlzIHdpbGwgT05MWSBncmFiIGFjdGlvbnMgdGhhdCBoYXZlIGp1c3QgdGhyb3duIGFuIGVycm9yXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBvZkFjdGlvbkVycm9yZWQ8VCBleHRlbmRzIEFjdGlvblR5cGVbXT4oXG4gIC4uLmFsbG93ZWRUeXBlczogVFxuKTogT3BlcmF0b3JGdW5jdGlvbjxcbiAgQWN0aW9uQ29udGV4dDxDb25zdHJ1Y3RlZDxUW1R1cGxlS2V5czxUPl0+PixcbiAgQWN0aW9uQ29tcGxldGlvbjxDb25zdHJ1Y3RlZDxUW1R1cGxlS2V5czxUPl0+PlxuPiB7XG4gIHJldHVybiBvZkFjdGlvbk9wZXJhdG9yKGFsbG93ZWRUeXBlcywgW0FjdGlvblN0YXR1cy5FcnJvcmVkXSwgbWFwQWN0aW9uUmVzdWx0KTtcbn1cblxuZnVuY3Rpb24gb2ZBY3Rpb25PcGVyYXRvcihcbiAgYWxsb3dlZFR5cGVzOiBBY3Rpb25UeXBlW10sXG4gIHN0YXR1c2VzPzogQWN0aW9uU3RhdHVzW10sXG4gIC8vIFRoaXMgY291bGQgaGF2ZSBiZWVuIHdyaXR0ZW4gYXNcbiAgLy8gYE9wZXJhdG9yRnVuY3Rpb248QWN0aW9uQ29udGV4dCwgQWN0aW9uQ29tcGxldGlvbiB8IGFueT5gLCBhcyBpdCBtYXBzXG4gIC8vIGVpdGhlciB0byBgY3R4LmFjdGlvbmAgb3IgdG8gYEFjdGlvbkNvbXBsZXRpb25gLiBIb3dldmVyLFxuICAvLyBgQWN0aW9uQ29tcGxldGlvbiB8IGFueWAgZGVmYXVsdHMgdG8gYGFueWAsIHJlbmRlcmluZyB0aGUgdW5pb25cbiAgLy8gdHlwZSBtZWFuaW5nbGVzcy5cbiAgbWFwT3BlcmF0b3I6ICgpID0+IE9wZXJhdG9yRnVuY3Rpb248QWN0aW9uQ29udGV4dCwgYW55PiA9IG1hcEFjdGlvblxuKTogT3BlcmF0b3JGdW5jdGlvbjxBY3Rpb25Db250ZXh0LCBhbnk+IHtcbiAgY29uc3QgYWxsb3dlZE1hcCA9IGNyZWF0ZUFsbG93ZWRBY3Rpb25UeXBlc01hcChhbGxvd2VkVHlwZXMpO1xuICBjb25zdCBhbGxvd2VkU3RhdHVzTWFwID0gc3RhdHVzZXMgJiYgY3JlYXRlQWxsb3dlZFN0YXR1c2VzTWFwKHN0YXR1c2VzKTtcbiAgcmV0dXJuIGZ1bmN0aW9uIChvOiBPYnNlcnZhYmxlPEFjdGlvbkNvbnRleHQ+KSB7XG4gICAgcmV0dXJuIG8ucGlwZShmaWx0ZXJTdGF0dXMoYWxsb3dlZE1hcCwgYWxsb3dlZFN0YXR1c01hcCksIG1hcE9wZXJhdG9yKCkpO1xuICB9O1xufVxuXG5mdW5jdGlvbiBmaWx0ZXJTdGF0dXMoYWxsb3dlZFR5cGVzOiBGaWx0ZXJNYXAsIGFsbG93ZWRTdGF0dXNlcz86IEZpbHRlck1hcCkge1xuICByZXR1cm4gZmlsdGVyKChjdHg6IEFjdGlvbkNvbnRleHQpID0+IHtcbiAgICBjb25zdCBhY3Rpb25UeXBlID0gZ2V0QWN0aW9uVHlwZUZyb21JbnN0YW5jZShjdHguYWN0aW9uKSE7XG4gICAgY29uc3QgdHlwZU1hdGNoID0gYWxsb3dlZFR5cGVzW2FjdGlvblR5cGVdO1xuICAgIGNvbnN0IHN0YXR1c01hdGNoID0gYWxsb3dlZFN0YXR1c2VzID8gYWxsb3dlZFN0YXR1c2VzW2N0eC5zdGF0dXNdIDogdHJ1ZTtcbiAgICByZXR1cm4gdHlwZU1hdGNoICYmIHN0YXR1c01hdGNoO1xuICB9KTtcbn1cblxuZnVuY3Rpb24gbWFwQWN0aW9uUmVzdWx0KCk6IE9wZXJhdG9yRnVuY3Rpb248QWN0aW9uQ29udGV4dCwgQWN0aW9uQ29tcGxldGlvbj4ge1xuICByZXR1cm4gbWFwKCh7IGFjdGlvbiwgc3RhdHVzLCBlcnJvciB9OiBBY3Rpb25Db250ZXh0KSA9PiB7XG4gICAgcmV0dXJuIDxBY3Rpb25Db21wbGV0aW9uPntcbiAgICAgIGFjdGlvbixcbiAgICAgIHJlc3VsdDoge1xuICAgICAgICBzdWNjZXNzZnVsOiBBY3Rpb25TdGF0dXMuU3VjY2Vzc2Z1bCA9PT0gc3RhdHVzLFxuICAgICAgICBjYW5jZWxlZDogQWN0aW9uU3RhdHVzLkNhbmNlbGVkID09PSBzdGF0dXMsXG4gICAgICAgIGVycm9yXG4gICAgICB9XG4gICAgfTtcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIG1hcEFjdGlvbjxUID0gYW55PigpOiBPcGVyYXRvckZ1bmN0aW9uPEFjdGlvbkNvbnRleHQsIFQ+IHtcbiAgcmV0dXJuIG1hcCgoY3R4OiBBY3Rpb25Db250ZXh0KSA9PiA8VD5jdHguYWN0aW9uKTtcbn1cblxuaW50ZXJmYWNlIEZpbHRlck1hcCB7XG4gIFtrZXk6IHN0cmluZ106IGJvb2xlYW47XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZUFsbG93ZWRBY3Rpb25UeXBlc01hcCh0eXBlczogQWN0aW9uVHlwZVtdKTogRmlsdGVyTWFwIHtcbiAgcmV0dXJuIHR5cGVzLnJlZHVjZShcbiAgICAoZmlsdGVyTWFwOiBGaWx0ZXJNYXAsIGtsYXNzOiBhbnkpID0+IHtcbiAgICAgIGZpbHRlck1hcFtnZXRBY3Rpb25UeXBlRnJvbUluc3RhbmNlKGtsYXNzKSFdID0gdHJ1ZTtcbiAgICAgIHJldHVybiBmaWx0ZXJNYXA7XG4gICAgfSxcbiAgICA8RmlsdGVyTWFwPnt9XG4gICk7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZUFsbG93ZWRTdGF0dXNlc01hcChzdGF0dXNlczogQWN0aW9uU3RhdHVzW10pOiBGaWx0ZXJNYXAge1xuICByZXR1cm4gc3RhdHVzZXMucmVkdWNlKFxuICAgIChmaWx0ZXJNYXA6IEZpbHRlck1hcCwgc3RhdHVzOiBBY3Rpb25TdGF0dXMpID0+IHtcbiAgICAgIGZpbHRlck1hcFtzdGF0dXNdID0gdHJ1ZTtcbiAgICAgIHJldHVybiBmaWx0ZXJNYXA7XG4gICAgfSxcbiAgICA8RmlsdGVyTWFwPnt9XG4gICk7XG59XG4iXX0=
@@ -0,0 +1,37 @@
1
+ import { Inject, Injectable, Optional, SkipSelf } from '@angular/core';
2
+ import { NGXS_PLUGINS } from '@ngxs/store/plugins';
3
+ import * as i0 from "@angular/core";
4
+ export class PluginManager {
5
+ constructor(_parentManager, _pluginHandlers) {
6
+ this._parentManager = _parentManager;
7
+ this._pluginHandlers = _pluginHandlers;
8
+ this.plugins = [];
9
+ this.registerHandlers();
10
+ }
11
+ get rootPlugins() {
12
+ return (this._parentManager && this._parentManager.plugins) || this.plugins;
13
+ }
14
+ registerHandlers() {
15
+ const pluginHandlers = this.getPluginHandlers();
16
+ this.rootPlugins.push(...pluginHandlers);
17
+ }
18
+ getPluginHandlers() {
19
+ const handlers = this._pluginHandlers || [];
20
+ return handlers.map((plugin) => (plugin.handle ? plugin.handle.bind(plugin) : plugin));
21
+ }
22
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: PluginManager, deps: [{ token: PluginManager, optional: true, skipSelf: true }, { token: NGXS_PLUGINS, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
23
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: PluginManager }); }
24
+ }
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: PluginManager, decorators: [{
26
+ type: Injectable
27
+ }], ctorParameters: () => [{ type: PluginManager, decorators: [{
28
+ type: Optional
29
+ }, {
30
+ type: SkipSelf
31
+ }] }, { type: undefined, decorators: [{
32
+ type: Inject,
33
+ args: [NGXS_PLUGINS]
34
+ }, {
35
+ type: Optional
36
+ }] }] });
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLW1hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvcGx1Z2luLW1hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsWUFBWSxFQUE0QixNQUFNLHFCQUFxQixDQUFDOztBQUc3RSxNQUFNLE9BQU8sYUFBYTtJQUd4QixZQUdVLGNBQTZCLEVBRzdCLGVBQTZCO1FBSDdCLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBRzdCLG9CQUFlLEdBQWYsZUFBZSxDQUFjO1FBUmhDLFlBQU8sR0FBbUIsRUFBRSxDQUFDO1FBVWxDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFZLFdBQVc7UUFDckIsT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQzlFLENBQUM7SUFFTyxnQkFBZ0I7UUFDdEIsTUFBTSxjQUFjLEdBQW1CLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ2hFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsY0FBYyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixNQUFNLFFBQVEsR0FBaUIsSUFBSSxDQUFDLGVBQWUsSUFBSSxFQUFFLENBQUM7UUFDMUQsT0FBTyxRQUFRLENBQUMsR0FBRyxDQUNqQixDQUFDLE1BQWtCLEVBQUUsRUFBRSxDQUNyQixDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQWlCLENBQ3hFLENBQUM7SUFDSixDQUFDO2lJQTdCVSxhQUFhLDRFQU9kLFlBQVk7cUlBUFgsYUFBYTs7MkZBQWIsYUFBYTtrQkFEekIsVUFBVTs7MEJBS04sUUFBUTs7MEJBQ1IsUUFBUTs7MEJBRVIsTUFBTTsyQkFBQyxZQUFZOzswQkFDbkIsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwsIFNraXBTZWxmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR1hTX1BMVUdJTlMsIE5neHNQbHVnaW4sIE5neHNQbHVnaW5GbiB9IGZyb20gJ0BuZ3hzL3N0b3JlL3BsdWdpbnMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUGx1Z2luTWFuYWdlciB7XG4gIHB1YmxpYyBwbHVnaW5zOiBOZ3hzUGx1Z2luRm5bXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpXG4gICAgQFNraXBTZWxmKClcbiAgICBwcml2YXRlIF9wYXJlbnRNYW5hZ2VyOiBQbHVnaW5NYW5hZ2VyLFxuICAgIEBJbmplY3QoTkdYU19QTFVHSU5TKVxuICAgIEBPcHRpb25hbCgpXG4gICAgcHJpdmF0ZSBfcGx1Z2luSGFuZGxlcnM6IE5neHNQbHVnaW5bXVxuICApIHtcbiAgICB0aGlzLnJlZ2lzdGVySGFuZGxlcnMoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IHJvb3RQbHVnaW5zKCk6IE5neHNQbHVnaW5GbltdIHtcbiAgICByZXR1cm4gKHRoaXMuX3BhcmVudE1hbmFnZXIgJiYgdGhpcy5fcGFyZW50TWFuYWdlci5wbHVnaW5zKSB8fCB0aGlzLnBsdWdpbnM7XG4gIH1cblxuICBwcml2YXRlIHJlZ2lzdGVySGFuZGxlcnMoKTogdm9pZCB7XG4gICAgY29uc3QgcGx1Z2luSGFuZGxlcnM6IE5neHNQbHVnaW5GbltdID0gdGhpcy5nZXRQbHVnaW5IYW5kbGVycygpO1xuICAgIHRoaXMucm9vdFBsdWdpbnMucHVzaCguLi5wbHVnaW5IYW5kbGVycyk7XG4gIH1cblxuICBwcml2YXRlIGdldFBsdWdpbkhhbmRsZXJzKCk6IE5neHNQbHVnaW5GbltdIHtcbiAgICBjb25zdCBoYW5kbGVyczogTmd4c1BsdWdpbltdID0gdGhpcy5fcGx1Z2luSGFuZGxlcnMgfHwgW107XG4gICAgcmV0dXJuIGhhbmRsZXJzLm1hcChcbiAgICAgIChwbHVnaW46IE5neHNQbHVnaW4pID0+XG4gICAgICAgIChwbHVnaW4uaGFuZGxlID8gcGx1Z2luLmhhbmRsZS5iaW5kKHBsdWdpbikgOiBwbHVnaW4pIGFzIE5neHNQbHVnaW5GblxuICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export { InitState, UpdateState, getActionTypeFromInstance, setValue, getValue, NGXS_PLUGINS } from '@ngxs/store/plugins';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0b3JlL3NyYy9wbHVnaW5fYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsV0FBVyxFQUNYLHlCQUF5QixFQUN6QixRQUFRLEVBQ1IsUUFBUSxFQUNSLFlBQVksRUFJYixNQUFNLHFCQUFxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHtcbiAgSW5pdFN0YXRlLFxuICBVcGRhdGVTdGF0ZSxcbiAgZ2V0QWN0aW9uVHlwZUZyb21JbnN0YW5jZSxcbiAgc2V0VmFsdWUsXG4gIGdldFZhbHVlLFxuICBOR1hTX1BMVUdJTlMsXG4gIE5neHNQbHVnaW4sXG4gIE5neHNQbHVnaW5GbixcbiAgTmd4c05leHRQbHVnaW5GblxufSBmcm9tICdAbmd4cy9zdG9yZS9wbHVnaW5zJztcbiJdfQ==
@@ -1,3 +1,4 @@
1
1
  export { NgxsRootModule as ɵNgxsRootModule } from './modules/ngxs-root.module';
2
2
  export { NgxsFeatureModule as ɵNgxsFeatureModule } from './modules/ngxs-feature.module';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvcHJpdmF0ZV9hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsSUFBSSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRSxPQUFPLEVBQUUsaUJBQWlCLElBQUksa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IE5neHNSb290TW9kdWxlIGFzIMm1Tmd4c1Jvb3RNb2R1bGUgfSBmcm9tICcuL21vZHVsZXMvbmd4cy1yb290Lm1vZHVsZSc7XG5leHBvcnQgeyBOZ3hzRmVhdHVyZU1vZHVsZSBhcyDJtU5neHNGZWF0dXJlTW9kdWxlIH0gZnJvbSAnLi9tb2R1bGVzL25neHMtZmVhdHVyZS5tb2R1bGUnO1xuIl19
3
+ export * from './selectors/private_api';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvcHJpdmF0ZV9hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsSUFBSSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRSxPQUFPLEVBQUUsaUJBQWlCLElBQUksa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUV4RixjQUFjLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgTmd4c1Jvb3RNb2R1bGUgYXMgybVOZ3hzUm9vdE1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy9uZ3hzLXJvb3QubW9kdWxlJztcbmV4cG9ydCB7IE5neHNGZWF0dXJlTW9kdWxlIGFzIMm1Tmd4c0ZlYXR1cmVNb2R1bGUgfSBmcm9tICcuL21vZHVsZXMvbmd4cy1mZWF0dXJlLm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vc2VsZWN0b3JzL3ByaXZhdGVfYXBpJztcbiJdfQ==
@@ -0,0 +1,20 @@
1
+ export { NgxsModule } from './module';
2
+ export { Action } from './decorators/action';
3
+ export { Store } from './store';
4
+ export { State } from './decorators/state';
5
+ export { Select } from './decorators/select/select';
6
+ export { SelectorOptions } from './decorators/selector-options';
7
+ export { Actions } from './actions-stream';
8
+ export { ofAction, ofActionDispatched, ofActionSuccessful, ofActionCanceled, ofActionErrored, ofActionCompleted } from './operators/of-action';
9
+ export { NgxsConfig, NgxsSimpleChange } from './symbols';
10
+ export { Selector } from './decorators/selector/selector';
11
+ export { NoopNgxsExecutionStrategy } from './execution/noop-ngxs-execution-strategy';
12
+ export { NgxsUnhandledErrorHandler } from './ngxs-unhandled-error-handler';
13
+ export { NgxsDevelopmentModule, withNgxsDevelopmentOptions } from './dev-features/ngxs-development.module';
14
+ export { NgxsUnhandledActionsLogger } from './dev-features/ngxs-unhandled-actions-logger';
15
+ export { createModelSelector, createPickSelector, createPropertySelectors, createSelector } from './selectors';
16
+ export * from './standalone-features';
17
+ export * from './utils/public_api';
18
+ export { StateToken } from '@ngxs/store/internals';
19
+ export { getActionTypeFromInstance, actionMatcher } from '@ngxs/store/plugins';
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0b3JlL3NyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDdEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDaEMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDaEUsT0FBTyxFQUFFLE9BQU8sRUFBK0IsTUFBTSxrQkFBa0IsQ0FBQztBQUV4RSxPQUFPLEVBQ0wsUUFBUSxFQUNSLGtCQUFrQixFQUNsQixrQkFBa0IsRUFDbEIsZ0JBQWdCLEVBQ2hCLGVBQWUsRUFDZixpQkFBaUIsRUFFbEIsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQ0wsVUFBVSxFQU9WLGdCQUFnQixFQUNqQixNQUFNLFdBQVcsQ0FBQztBQUNuQixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFHMUQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDckYsT0FBTyxFQUNMLHlCQUF5QixFQUUxQixNQUFNLGdDQUFnQyxDQUFDO0FBR3hDLE9BQU8sRUFDTCxxQkFBcUIsRUFDckIsMEJBQTBCLEVBQzNCLE1BQU0sd0NBQXdDLENBQUM7QUFDaEQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFMUYsT0FBTyxFQUNMLG1CQUFtQixFQUNuQixrQkFBa0IsRUFDbEIsdUJBQXVCLEVBQ3ZCLGNBQWMsRUFHZixNQUFNLGFBQWEsQ0FBQztBQUVyQixjQUFjLHVCQUF1QixDQUFDO0FBRXRDLGNBQWMsb0JBQW9CLENBQUM7QUFFbkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBR25ELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IE5neHNNb2R1bGUgfSBmcm9tICcuL21vZHVsZSc7XG5leHBvcnQgeyBBY3Rpb24gfSBmcm9tICcuL2RlY29yYXRvcnMvYWN0aW9uJztcbmV4cG9ydCB7IFN0b3JlIH0gZnJvbSAnLi9zdG9yZSc7XG5leHBvcnQgeyBTdGF0ZSB9IGZyb20gJy4vZGVjb3JhdG9ycy9zdGF0ZSc7XG5leHBvcnQgeyBTZWxlY3QgfSBmcm9tICcuL2RlY29yYXRvcnMvc2VsZWN0L3NlbGVjdCc7XG5leHBvcnQgeyBTZWxlY3Rvck9wdGlvbnMgfSBmcm9tICcuL2RlY29yYXRvcnMvc2VsZWN0b3Itb3B0aW9ucyc7XG5leHBvcnQgeyBBY3Rpb25zLCBBY3Rpb25Db250ZXh0LCBBY3Rpb25TdGF0dXMgfSBmcm9tICcuL2FjdGlvbnMtc3RyZWFtJztcblxuZXhwb3J0IHtcbiAgb2ZBY3Rpb24sXG4gIG9mQWN0aW9uRGlzcGF0Y2hlZCxcbiAgb2ZBY3Rpb25TdWNjZXNzZnVsLFxuICBvZkFjdGlvbkNhbmNlbGVkLFxuICBvZkFjdGlvbkVycm9yZWQsXG4gIG9mQWN0aW9uQ29tcGxldGVkLFxuICBBY3Rpb25Db21wbGV0aW9uXG59IGZyb20gJy4vb3BlcmF0b3JzL29mLWFjdGlvbic7XG5leHBvcnQge1xuICBOZ3hzQ29uZmlnLFxuICBTdGF0ZUNvbnRleHQsXG4gIFN0YXRlT3BlcmF0b3IsXG4gIE5neHNPbkluaXQsXG4gIE5neHNBZnRlckJvb3RzdHJhcCxcbiAgTmd4c09uQ2hhbmdlcyxcbiAgTmd4c01vZHVsZU9wdGlvbnMsXG4gIE5neHNTaW1wbGVDaGFuZ2Vcbn0gZnJvbSAnLi9zeW1ib2xzJztcbmV4cG9ydCB7IFNlbGVjdG9yIH0gZnJvbSAnLi9kZWNvcmF0b3JzL3NlbGVjdG9yL3NlbGVjdG9yJztcbmV4cG9ydCB7IE5neHNFeGVjdXRpb25TdHJhdGVneSB9IGZyb20gJy4vZXhlY3V0aW9uL3N5bWJvbHMnO1xuZXhwb3J0IHsgQWN0aW9uVHlwZSwgQWN0aW9uRGVmIH0gZnJvbSAnLi9hY3Rpb25zL3N5bWJvbHMnO1xuZXhwb3J0IHsgTm9vcE5neHNFeGVjdXRpb25TdHJhdGVneSB9IGZyb20gJy4vZXhlY3V0aW9uL25vb3Atbmd4cy1leGVjdXRpb24tc3RyYXRlZ3knO1xuZXhwb3J0IHtcbiAgTmd4c1VuaGFuZGxlZEVycm9ySGFuZGxlcixcbiAgTmd4c1VuaGFuZGxlZEVycm9yQ29udGV4dFxufSBmcm9tICcuL25neHMtdW5oYW5kbGVkLWVycm9yLWhhbmRsZXInO1xuXG5leHBvcnQgeyBOZ3hzRGV2ZWxvcG1lbnRPcHRpb25zIH0gZnJvbSAnLi9kZXYtZmVhdHVyZXMvc3ltYm9scyc7XG5leHBvcnQge1xuICBOZ3hzRGV2ZWxvcG1lbnRNb2R1bGUsXG4gIHdpdGhOZ3hzRGV2ZWxvcG1lbnRPcHRpb25zXG59IGZyb20gJy4vZGV2LWZlYXR1cmVzL25neHMtZGV2ZWxvcG1lbnQubW9kdWxlJztcbmV4cG9ydCB7IE5neHNVbmhhbmRsZWRBY3Rpb25zTG9nZ2VyIH0gZnJvbSAnLi9kZXYtZmVhdHVyZXMvbmd4cy11bmhhbmRsZWQtYWN0aW9ucy1sb2dnZXInO1xuXG5leHBvcnQge1xuICBjcmVhdGVNb2RlbFNlbGVjdG9yLFxuICBjcmVhdGVQaWNrU2VsZWN0b3IsXG4gIGNyZWF0ZVByb3BlcnR5U2VsZWN0b3JzLFxuICBjcmVhdGVTZWxlY3RvcixcbiAgUHJvcGVydHlTZWxlY3RvcnMsXG4gIFR5cGVkU2VsZWN0b3Jcbn0gZnJvbSAnLi9zZWxlY3RvcnMnO1xuXG5leHBvcnQgKiBmcm9tICcuL3N0YW5kYWxvbmUtZmVhdHVyZXMnO1xuXG5leHBvcnQgKiBmcm9tICcuL3V0aWxzL3B1YmxpY19hcGknO1xuXG5leHBvcnQgeyBTdGF0ZVRva2VuIH0gZnJvbSAnQG5neHMvc3RvcmUvaW50ZXJuYWxzJztcbmV4cG9ydCB7IMm1QWN0aW9uT3B0aW9ucyBhcyBBY3Rpb25PcHRpb25zIH0gZnJvbSAnQG5neHMvc3RvcmUvaW50ZXJuYWxzJztcblxuZXhwb3J0IHsgZ2V0QWN0aW9uVHlwZUZyb21JbnN0YW5jZSwgYWN0aW9uTWF0Y2hlciB9IGZyb20gJ0BuZ3hzL3N0b3JlL3BsdWdpbnMnO1xuIl19
@@ -0,0 +1,30 @@
1
+ import { createSelector } from './create-selector';
2
+ import { ensureValidSelector, ensureValueProvided } from './selector-checks.util';
3
+ export function createModelSelector(selectorMap) {
4
+ const selectorKeys = Object.keys(selectorMap);
5
+ const selectors = Object.values(selectorMap);
6
+ if (typeof ngDevMode !== 'undefined' && ngDevMode) {
7
+ ensureValidSelectorMap({
8
+ prefix: '[createModelSelector]',
9
+ selectorMap,
10
+ selectorKeys,
11
+ selectors
12
+ });
13
+ }
14
+ return createSelector(selectors, (...args) => {
15
+ return selectorKeys.reduce((obj, key, index) => {
16
+ obj[key] = args[index];
17
+ return obj;
18
+ }, {});
19
+ });
20
+ }
21
+ function ensureValidSelectorMap({ prefix, selectorMap, selectorKeys, selectors }) {
22
+ ensureValueProvided(selectorMap, { prefix, noun: 'selector map' });
23
+ ensureValueProvided(typeof selectorMap === 'object', { prefix, noun: 'valid selector map' });
24
+ ensureValueProvided(selectorKeys.length, { prefix, noun: 'non-empty selector map' });
25
+ selectors.forEach((selector, index) => ensureValidSelector(selector, {
26
+ prefix,
27
+ noun: `selector for the '${selectorKeys[index]}' property`
28
+ }));
29
+ }
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW1vZGVsLXNlbGVjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RvcmUvc3JjL3NlbGVjdG9ycy9jcmVhdGUtbW9kZWwtc2VsZWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBYWxGLE1BQU0sVUFBVSxtQkFBbUIsQ0FBd0IsV0FBYztJQUN2RSxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzlDLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFN0MsSUFBSSxPQUFPLFNBQVMsS0FBSyxXQUFXLElBQUksU0FBUyxFQUFFLENBQUM7UUFDbEQsc0JBQXNCLENBQUk7WUFDeEIsTUFBTSxFQUFFLHVCQUF1QjtZQUMvQixXQUFXO1lBQ1gsWUFBWTtZQUNaLFNBQVM7U0FDVixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsT0FBTyxjQUFjLENBQUMsU0FBUyxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsRUFBRTtRQUMzQyxPQUFPLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFO1lBQzVDLEdBQVcsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDaEMsT0FBTyxHQUFHLENBQUM7UUFDYixDQUFDLEVBQUUsRUFBcUIsQ0FBQyxDQUFDO0lBQzVCLENBQUMsQ0FBcUIsQ0FBQztBQUN6QixDQUFDO0FBRUQsU0FBUyxzQkFBc0IsQ0FBd0IsRUFDckQsTUFBTSxFQUNOLFdBQVcsRUFDWCxZQUFZLEVBQ1osU0FBUyxFQU1WO0lBQ0MsbUJBQW1CLENBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQ25FLG1CQUFtQixDQUFDLE9BQU8sV0FBVyxLQUFLLFFBQVEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDO0lBQzdGLG1CQUFtQixDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLHdCQUF3QixFQUFFLENBQUMsQ0FBQztJQUNyRixTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQ3BDLG1CQUFtQixDQUFDLFFBQVEsRUFBRTtRQUM1QixNQUFNO1FBQ04sSUFBSSxFQUFFLHFCQUFxQixZQUFZLENBQUMsS0FBSyxDQUFDLFlBQVk7S0FDM0QsQ0FBQyxDQUNILENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlU2VsZWN0b3IgfSBmcm9tICcuL2NyZWF0ZS1zZWxlY3Rvcic7XG5pbXBvcnQgeyBlbnN1cmVWYWxpZFNlbGVjdG9yLCBlbnN1cmVWYWx1ZVByb3ZpZGVkIH0gZnJvbSAnLi9zZWxlY3Rvci1jaGVja3MudXRpbCc7XG5pbXBvcnQgeyBUeXBlZFNlbGVjdG9yIH0gZnJvbSAnLi9zZWxlY3Rvci10eXBlcy51dGlsJztcblxuaW50ZXJmYWNlIFNlbGVjdG9yTWFwIHtcbiAgW2tleTogc3RyaW5nXTogVHlwZWRTZWxlY3Rvcjxhbnk+O1xufVxuXG50eXBlIE1vZGVsU2VsZWN0b3I8VCBleHRlbmRzIFNlbGVjdG9yTWFwPiA9ICguLi5hcmdzOiBhbnlbXSkgPT4gTWFwcGVkUmVzdWx0PFQ+O1xuXG50eXBlIE1hcHBlZFJlc3VsdDxUU2VsZWN0b3JNYXA+ID0ge1xuICBbUCBpbiBrZXlvZiBUU2VsZWN0b3JNYXBdOiBUU2VsZWN0b3JNYXBbUF0gZXh0ZW5kcyBUeXBlZFNlbGVjdG9yPGluZmVyIFI+ID8gUiA6IG5ldmVyO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZU1vZGVsU2VsZWN0b3I8VCBleHRlbmRzIFNlbGVjdG9yTWFwPihzZWxlY3Rvck1hcDogVCk6IE1vZGVsU2VsZWN0b3I8VD4ge1xuICBjb25zdCBzZWxlY3RvcktleXMgPSBPYmplY3Qua2V5cyhzZWxlY3Rvck1hcCk7XG4gIGNvbnN0IHNlbGVjdG9ycyA9IE9iamVjdC52YWx1ZXMoc2VsZWN0b3JNYXApO1xuXG4gIGlmICh0eXBlb2YgbmdEZXZNb2RlICE9PSAndW5kZWZpbmVkJyAmJiBuZ0Rldk1vZGUpIHtcbiAgICBlbnN1cmVWYWxpZFNlbGVjdG9yTWFwPFQ+KHtcbiAgICAgIHByZWZpeDogJ1tjcmVhdGVNb2RlbFNlbGVjdG9yXScsXG4gICAgICBzZWxlY3Rvck1hcCxcbiAgICAgIHNlbGVjdG9yS2V5cyxcbiAgICAgIHNlbGVjdG9yc1xuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIGNyZWF0ZVNlbGVjdG9yKHNlbGVjdG9ycywgKC4uLmFyZ3MpID0+IHtcbiAgICByZXR1cm4gc2VsZWN0b3JLZXlzLnJlZHVjZSgob2JqLCBrZXksIGluZGV4KSA9PiB7XG4gICAgICAob2JqIGFzIGFueSlba2V5XSA9IGFyZ3NbaW5kZXhdO1xuICAgICAgcmV0dXJuIG9iajtcbiAgICB9LCB7fSBhcyBNYXBwZWRSZXN1bHQ8VD4pO1xuICB9KSBhcyBNb2RlbFNlbGVjdG9yPFQ+O1xufVxuXG5mdW5jdGlvbiBlbnN1cmVWYWxpZFNlbGVjdG9yTWFwPFQgZXh0ZW5kcyBTZWxlY3Rvck1hcD4oe1xuICBwcmVmaXgsXG4gIHNlbGVjdG9yTWFwLFxuICBzZWxlY3RvcktleXMsXG4gIHNlbGVjdG9yc1xufToge1xuICBwcmVmaXg6IHN0cmluZztcbiAgc2VsZWN0b3JNYXA6IFQ7XG4gIHNlbGVjdG9yS2V5czogc3RyaW5nW107XG4gIHNlbGVjdG9yczogVHlwZWRTZWxlY3Rvcjxhbnk+W107XG59KSB7XG4gIGVuc3VyZVZhbHVlUHJvdmlkZWQoc2VsZWN0b3JNYXAsIHsgcHJlZml4LCBub3VuOiAnc2VsZWN0b3IgbWFwJyB9KTtcbiAgZW5zdXJlVmFsdWVQcm92aWRlZCh0eXBlb2Ygc2VsZWN0b3JNYXAgPT09ICdvYmplY3QnLCB7IHByZWZpeCwgbm91bjogJ3ZhbGlkIHNlbGVjdG9yIG1hcCcgfSk7XG4gIGVuc3VyZVZhbHVlUHJvdmlkZWQoc2VsZWN0b3JLZXlzLmxlbmd0aCwgeyBwcmVmaXgsIG5vdW46ICdub24tZW1wdHkgc2VsZWN0b3IgbWFwJyB9KTtcbiAgc2VsZWN0b3JzLmZvckVhY2goKHNlbGVjdG9yLCBpbmRleCkgPT5cbiAgICBlbnN1cmVWYWxpZFNlbGVjdG9yKHNlbGVjdG9yLCB7XG4gICAgICBwcmVmaXgsXG4gICAgICBub3VuOiBgc2VsZWN0b3IgZm9yIHRoZSAnJHtzZWxlY3RvcktleXNbaW5kZXhdfScgcHJvcGVydHlgXG4gICAgfSlcbiAgKTtcbn1cbiJdfQ==
@@ -0,0 +1,16 @@
1
+ import { createSelector } from './create-selector';
2
+ import { ensureValidSelector } from './selector-checks.util';
3
+ export function createPickSelector(selector, keys) {
4
+ if (typeof ngDevMode !== 'undefined' && ngDevMode) {
5
+ ensureValidSelector(selector, { prefix: '[createPickSelector]' });
6
+ }
7
+ const validKeys = keys.filter(Boolean);
8
+ const selectors = validKeys.map(key => createSelector([selector], (s) => s[key]));
9
+ return createSelector([...selectors], (...props) => {
10
+ return validKeys.reduce((acc, key, index) => {
11
+ acc[key] = props[index];
12
+ return acc;
13
+ }, {});
14
+ });
15
+ }
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXBpY2stc2VsZWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvc2VsZWN0b3JzL2NyZWF0ZS1waWNrLXNlbGVjdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQU83RCxNQUFNLFVBQVUsa0JBQWtCLENBQ2hDLFFBQStCLEVBQy9CLElBQWU7SUFFZixJQUFJLE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxTQUFTLEVBQUUsQ0FBQztRQUNsRCxtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFDRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZDLE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxjQUFjLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxRixPQUFPLGNBQWMsQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQWlDLEVBQUUsRUFBRTtRQUM3RSxPQUFPLFNBQVMsQ0FBQyxNQUFNLENBQ3JCLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUNsQixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3hCLE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQyxFQUNELEVBQWdDLENBQ2pDLENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVTZWxlY3RvciB9IGZyb20gJy4vY3JlYXRlLXNlbGVjdG9yJztcbmltcG9ydCB7IGVuc3VyZVZhbGlkU2VsZWN0b3IgfSBmcm9tICcuL3NlbGVjdG9yLWNoZWNrcy51dGlsJztcbmltcG9ydCB7IFR5cGVkU2VsZWN0b3IgfSBmcm9tICcuL3NlbGVjdG9yLXR5cGVzLnV0aWwnO1xuXG50eXBlIEtleXNUb1ZhbHVlczxULCBLZXlzIGV4dGVuZHMgKGtleW9mIFQpW10+ID0ge1xuICBbSW5kZXggaW4ga2V5b2YgS2V5c106IEtleXNbSW5kZXhdIGV4dGVuZHMga2V5b2YgVCA/IFRbS2V5c1tJbmRleF1dIDogbmV2ZXI7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlUGlja1NlbGVjdG9yPFRNb2RlbCwgS2V5cyBleHRlbmRzIChrZXlvZiBUTW9kZWwpW10+KFxuICBzZWxlY3RvcjogVHlwZWRTZWxlY3RvcjxUTW9kZWw+LFxuICBrZXlzOiBbLi4uS2V5c11cbikge1xuICBpZiAodHlwZW9mIG5nRGV2TW9kZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbmdEZXZNb2RlKSB7XG4gICAgZW5zdXJlVmFsaWRTZWxlY3RvcihzZWxlY3RvciwgeyBwcmVmaXg6ICdbY3JlYXRlUGlja1NlbGVjdG9yXScgfSk7XG4gIH1cbiAgY29uc3QgdmFsaWRLZXlzID0ga2V5cy5maWx0ZXIoQm9vbGVhbik7XG4gIGNvbnN0IHNlbGVjdG9ycyA9IHZhbGlkS2V5cy5tYXAoa2V5ID0+IGNyZWF0ZVNlbGVjdG9yKFtzZWxlY3Rvcl0sIChzOiBUTW9kZWwpID0+IHNba2V5XSkpO1xuICByZXR1cm4gY3JlYXRlU2VsZWN0b3IoWy4uLnNlbGVjdG9yc10sICguLi5wcm9wczogS2V5c1RvVmFsdWVzPFRNb2RlbCwgS2V5cz4pID0+IHtcbiAgICByZXR1cm4gdmFsaWRLZXlzLnJlZHVjZShcbiAgICAgIChhY2MsIGtleSwgaW5kZXgpID0+IHtcbiAgICAgICAgYWNjW2tleV0gPSBwcm9wc1tpbmRleF07XG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgICB9LFxuICAgICAge30gYXMgUGljazxUTW9kZWwsIEtleXNbbnVtYmVyXT5cbiAgICApO1xuICB9KTtcbn1cbiJdfQ==
@@ -0,0 +1,20 @@
1
+ import { createSelector } from './create-selector';
2
+ import { ensureValidSelector } from './selector-checks.util';
3
+ export function createPropertySelectors(parentSelector) {
4
+ if (typeof ngDevMode !== 'undefined' && ngDevMode) {
5
+ ensureValidSelector(parentSelector, {
6
+ prefix: '[createPropertySelectors]',
7
+ noun: 'parent selector'
8
+ });
9
+ }
10
+ const cache = {};
11
+ return new Proxy({}, {
12
+ get(_target, prop) {
13
+ const selector = cache[prop] ||
14
+ createSelector([parentSelector], (s) => s?.[prop]);
15
+ cache[prop] = selector;
16
+ return selector;
17
+ }
18
+ });
19
+ }
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXByb3BlcnR5LXNlbGVjdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0b3JlL3NyYy9zZWxlY3RvcnMvY3JlYXRlLXByb3BlcnR5LXNlbGVjdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFTN0QsTUFBTSxVQUFVLHVCQUF1QixDQUNyQyxjQUFvQztJQUVwQyxJQUFJLE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxTQUFTLEVBQUUsQ0FBQztRQUNsRCxtQkFBbUIsQ0FBQyxjQUFjLEVBQUU7WUFDbEMsTUFBTSxFQUFFLDJCQUEyQjtZQUNuQyxJQUFJLEVBQUUsaUJBQWlCO1NBQ3hCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxNQUFNLEtBQUssR0FBdUMsRUFBRSxDQUFDO0lBQ3JELE9BQU8sSUFBSSxLQUFLLENBQ2QsRUFBMEMsRUFDMUM7UUFDRSxHQUFHLENBQUMsT0FBWSxFQUFFLElBQWtCO1lBQ2xDLE1BQU0sUUFBUSxHQUNaLEtBQUssQ0FBQyxJQUFJLENBQUM7Z0JBQ1YsY0FBYyxDQUNiLENBQUMsY0FBYyxDQUFDLEVBQ2hCLENBQUMsQ0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FDa0IsQ0FBQztZQUMvQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsUUFBUSxDQUFDO1lBQ3ZCLE9BQU8sUUFBUSxDQUFDO1FBQ2xCLENBQUM7S0FDeUMsQ0FDN0MsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVTZWxlY3RvciB9IGZyb20gJy4vY3JlYXRlLXNlbGVjdG9yJztcbmltcG9ydCB7IGVuc3VyZVZhbGlkU2VsZWN0b3IgfSBmcm9tICcuL3NlbGVjdG9yLWNoZWNrcy51dGlsJztcbmltcG9ydCB7IMm1U2VsZWN0b3JEZWYgfSBmcm9tICcuL3NlbGVjdG9yLXR5cGVzLnV0aWwnO1xuXG5leHBvcnQgdHlwZSBQcm9wZXJ0eVNlbGVjdG9yczxUTW9kZWw+ID0ge1xuICBbUCBpbiBrZXlvZiBOb25OdWxsYWJsZTxUTW9kZWw+XS0/OiAoXG4gICAgbW9kZWw6IFRNb2RlbFxuICApID0+IFRNb2RlbCBleHRlbmRzIG51bGwgfCB1bmRlZmluZWQgPyB1bmRlZmluZWQgOiBOb25OdWxsYWJsZTxUTW9kZWw+W1BdO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVByb3BlcnR5U2VsZWN0b3JzPFRNb2RlbD4oXG4gIHBhcmVudFNlbGVjdG9yOiDJtVNlbGVjdG9yRGVmPFRNb2RlbD5cbik6IFByb3BlcnR5U2VsZWN0b3JzPFRNb2RlbD4ge1xuICBpZiAodHlwZW9mIG5nRGV2TW9kZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbmdEZXZNb2RlKSB7XG4gICAgZW5zdXJlVmFsaWRTZWxlY3RvcihwYXJlbnRTZWxlY3Rvciwge1xuICAgICAgcHJlZml4OiAnW2NyZWF0ZVByb3BlcnR5U2VsZWN0b3JzXScsXG4gICAgICBub3VuOiAncGFyZW50IHNlbGVjdG9yJ1xuICAgIH0pO1xuICB9XG4gIGNvbnN0IGNhY2hlOiBQYXJ0aWFsPFByb3BlcnR5U2VsZWN0b3JzPFRNb2RlbD4+ID0ge307XG4gIHJldHVybiBuZXcgUHJveHk8UHJvcGVydHlTZWxlY3RvcnM8VE1vZGVsPj4oXG4gICAge30gYXMgdW5rbm93biBhcyBQcm9wZXJ0eVNlbGVjdG9yczxUTW9kZWw+LFxuICAgIHtcbiAgICAgIGdldChfdGFyZ2V0OiBhbnksIHByb3A6IGtleW9mIFRNb2RlbCkge1xuICAgICAgICBjb25zdCBzZWxlY3RvciA9XG4gICAgICAgICAgY2FjaGVbcHJvcF0gfHxcbiAgICAgICAgICAoY3JlYXRlU2VsZWN0b3IoXG4gICAgICAgICAgICBbcGFyZW50U2VsZWN0b3JdLFxuICAgICAgICAgICAgKHM6IFRNb2RlbCkgPT4gcz8uW3Byb3BdXG4gICAgICAgICAgKSBhcyBQcm9wZXJ0eVNlbGVjdG9yczxUTW9kZWw+W3R5cGVvZiBwcm9wXSk7XG4gICAgICAgIGNhY2hlW3Byb3BdID0gc2VsZWN0b3I7XG4gICAgICAgIHJldHVybiBzZWxlY3RvcjtcbiAgICAgIH1cbiAgICB9IGFzIFByb3h5SGFuZGxlcjxQcm9wZXJ0eVNlbGVjdG9yczxUTW9kZWw+PlxuICApO1xufVxuIl19
@@ -0,0 +1,9 @@
1
+ import { setupSelectorMetadata } from './selector-metadata';
2
+ import { createMemoizedSelectorFn, createRootSelectorFactory } from './selector-utils';
3
+ export function createSelector(selectors, projector, creationMetadata) {
4
+ const memoizedFn = createMemoizedSelectorFn(projector, creationMetadata);
5
+ const selectorMetaData = setupSelectorMetadata(projector, creationMetadata);
6
+ selectorMetaData.makeRootSelector = createRootSelectorFactory(selectorMetaData, selectors, memoizedFn);
7
+ return memoizedFn;
8
+ }
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXNlbGVjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RvcmUvc3JjL3NlbGVjdG9ycy9jcmVhdGUtc2VsZWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLHlCQUF5QixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUE2SnZGLE1BQU0sVUFBVSxjQUFjLENBQzVCLFNBQW9DLEVBQ3BDLFNBQVksRUFDWixnQkFBNEM7SUFFNUMsTUFBTSxVQUFVLEdBQUcsd0JBQXdCLENBQUksU0FBUyxFQUFFLGdCQUFnQixDQUFDLENBQUM7SUFFNUUsTUFBTSxnQkFBZ0IsR0FBRyxxQkFBcUIsQ0FBSSxTQUFTLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztJQUUvRSxnQkFBZ0IsQ0FBQyxnQkFBZ0IsR0FBRyx5QkFBeUIsQ0FDM0QsZ0JBQWdCLEVBQ2hCLFNBQVMsRUFDVCxVQUFVLENBQ1gsQ0FBQztJQUVGLE9BQU8sVUFBVSxDQUFDO0FBQ3BCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDcmVhdGlvbk1ldGFkYXRhIH0gZnJvbSAnLi9zZWxlY3Rvci1tb2RlbHMnO1xuaW1wb3J0IHsgc2V0dXBTZWxlY3Rvck1ldGFkYXRhIH0gZnJvbSAnLi9zZWxlY3Rvci1tZXRhZGF0YSc7XG5pbXBvcnQgeyBjcmVhdGVNZW1vaXplZFNlbGVjdG9yRm4sIGNyZWF0ZVJvb3RTZWxlY3RvckZhY3RvcnkgfSBmcm9tICcuL3NlbGVjdG9yLXV0aWxzJztcblxuaW1wb3J0IHsgybVTZWxlY3RvckRlZiwgybVTZWxlY3RvclJldHVyblR5cGUgfSBmcm9tICcuL3NlbGVjdG9yLXR5cGVzLnV0aWwnO1xuXG50eXBlIFNlbGVjdG9yQXJnID0gybVTZWxlY3RvckRlZjxhbnk+O1xuXG4vKipcbiAqIEZ1bmN0aW9uIGZvciBjcmVhdGluZyBhIHNlbGVjdG9yXG4gKiBAcGFyYW0gc2VsZWN0b3JzIFRoZSBzZWxlY3RvcnMgdG8gdXNlIHRvIGNyZWF0ZSB0aGUgYXJndW1lbnRzIG9mIHRoaXMgZnVuY3Rpb25cbiAqIEBwYXJhbSBvcmlnaW5hbEZuIFRoZSBvcmlnaW5hbCBmdW5jdGlvbiBiZWluZyBtYWRlIGludG8gYSBzZWxlY3RvclxuICogQHBhcmFtIGNyZWF0aW9uTWV0YWRhdGFcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVNlbGVjdG9yPFxuICBTMSBleHRlbmRzIFNlbGVjdG9yQXJnLFxuICBUUHJvamVjdG9yIGV4dGVuZHMgKHMxOiDJtVNlbGVjdG9yUmV0dXJuVHlwZTxTMT4pID0+IGFueVxuPihcbiAgc2VsZWN0b3JzOiBbUzFdLFxuICBwcm9qZWN0b3I6IFRQcm9qZWN0b3IsXG4gIGNyZWF0aW9uTWV0YWRhdGE/OiBQYXJ0aWFsPENyZWF0aW9uTWV0YWRhdGE+XG4pOiBUUHJvamVjdG9yO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2VsZWN0b3I8XG4gIFMxIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFMyIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFRQcm9qZWN0b3IgZXh0ZW5kcyAoczE6IMm1U2VsZWN0b3JSZXR1cm5UeXBlPFMxPiwgczI6IMm1U2VsZWN0b3JSZXR1cm5UeXBlPFMyPikgPT4gYW55XG4+KFxuICBzZWxlY3RvcnM6IFtTMSwgUzJdLFxuICBwcm9qZWN0b3I6IFRQcm9qZWN0b3IsXG4gIGNyZWF0aW9uTWV0YWRhdGE/OiBQYXJ0aWFsPENyZWF0aW9uTWV0YWRhdGE+XG4pOiBUUHJvamVjdG9yO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2VsZWN0b3I8XG4gIFMxIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFMyIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFMzIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFRQcm9qZWN0b3IgZXh0ZW5kcyAoXG4gICAgczE6IMm1U2VsZWN0b3JSZXR1cm5UeXBlPFMxPixcbiAgICBzMjogybVTZWxlY3RvclJldHVyblR5cGU8UzI+LFxuICAgIHMzOiDJtVNlbGVjdG9yUmV0dXJuVHlwZTxTMz5cbiAgKSA9PiBhbnlcbj4oXG4gIHNlbGVjdG9yczogW1MxLCBTMiwgUzNdLFxuICBwcm9qZWN0b3I6IFRQcm9qZWN0b3IsXG4gIGNyZWF0aW9uTWV0YWRhdGE/OiBQYXJ0aWFsPENyZWF0aW9uTWV0YWRhdGE+XG4pOiBUUHJvamVjdG9yO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2VsZWN0b3I8XG4gIFMxIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFMyIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFMzIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFM0IGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFRQcm9qZWN0b3IgZXh0ZW5kcyAoXG4gICAgczE6IMm1U2VsZWN0b3JSZXR1cm5UeXBlPFMxPixcbiAgICBzMjogybVTZWxlY3RvclJldHVyblR5cGU8UzI+LFxuICAgIHMzOiDJtVNlbGVjdG9yUmV0dXJuVHlwZTxTMz4sXG4gICAgczQ6IMm1U2VsZWN0b3JSZXR1cm5UeXBlPFM0PlxuICApID0+IGFueVxuPihcbiAgc2VsZWN0b3JzOiBbUzEsIFMyLCBTMywgUzRdLFxuICBwcm9qZWN0b3I6IFRQcm9qZWN0b3IsXG4gIGNyZWF0aW9uTWV0YWRhdGE/OiBQYXJ0aWFsPENyZWF0aW9uTWV0YWRhdGE+XG4pOiBUUHJvamVjdG9yO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2VsZWN0b3I8XG4gIFMxIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFMyIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFMzIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFM0IGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFM1IGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFRQcm9qZWN0b3IgZXh0ZW5kcyAoXG4gICAgczE6IMm1U2VsZWN0b3JSZXR1cm5UeXBlPFMxPixcbiAgICBzMjogybVTZWxlY3RvclJldHVyblR5cGU8UzI+LFxuICAgIHMzOiDJtVNlbGVjdG9yUmV0dXJuVHlwZTxTMz4sXG4gICAgczQ6IMm1U2VsZWN0b3JSZXR1cm5UeXBlPFM0PixcbiAgICBzNTogybVTZWxlY3RvclJldHVyblR5cGU8UzU+XG4gICkgPT4gYW55XG4+KFxuICBzZWxlY3RvcnM6IFtTMSwgUzIsIFMzLCBTNCwgUzVdLFxuICBwcm9qZWN0b3I6IFRQcm9qZWN0b3IsXG4gIGNyZWF0aW9uTWV0YWRhdGE/OiBQYXJ0aWFsPENyZWF0aW9uTWV0YWRhdGE+XG4pOiBUUHJvamVjdG9yO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2VsZWN0b3I8XG4gIFMxIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFMyIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFMzIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFM0IGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFM1IGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFM2IGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFRQcm9qZWN0b3IgZXh0ZW5kcyAoXG4gICAgczE6IMm1U2VsZWN0b3JSZXR1cm5UeXBlPFMxPixcbiAgICBzMjogybVTZWxlY3RvclJldHVyblR5cGU8UzI+LFxuICAgIHMzOiDJtVNlbGVjdG9yUmV0dXJuVHlwZTxTMz4sXG4gICAgczQ6IMm1U2VsZWN0b3JSZXR1cm5UeXBlPFM0PixcbiAgICBzNTogybVTZWxlY3RvclJldHVyblR5cGU8UzU+LFxuICAgIHM2OiDJtVNlbGVjdG9yUmV0dXJuVHlwZTxTNj5cbiAgKSA9PiBhbnlcbj4oXG4gIHNlbGVjdG9yczogW1MxLCBTMiwgUzMsIFM0LCBTNSwgUzZdLFxuICBwcm9qZWN0b3I6IFRQcm9qZWN0b3IsXG4gIGNyZWF0aW9uTWV0YWRhdGE/OiBQYXJ0aWFsPENyZWF0aW9uTWV0YWRhdGE+XG4pOiBUUHJvamVjdG9yO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2VsZWN0b3I8XG4gIFMxIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFMyIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFMzIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFM0IGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFM1IGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFM2IGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFM3IGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFRQcm9qZWN0b3IgZXh0ZW5kcyAoXG4gICAgczE6IMm1U2VsZWN0b3JSZXR1cm5UeXBlPFMxPixcbiAgICBzMjogybVTZWxlY3RvclJldHVyblR5cGU8UzI+LFxuICAgIHMzOiDJtVNlbGVjdG9yUmV0dXJuVHlwZTxTMz4sXG4gICAgczQ6IMm1U2VsZWN0b3JSZXR1cm5UeXBlPFM0PixcbiAgICBzNTogybVTZWxlY3RvclJldHVyblR5cGU8UzU+LFxuICAgIHM2OiDJtVNlbGVjdG9yUmV0dXJuVHlwZTxTNj4sXG4gICAgczc6IMm1U2VsZWN0b3JSZXR1cm5UeXBlPFM3PlxuICApID0+IGFueVxuPihcbiAgc2VsZWN0b3JzOiBbUzEsIFMyLCBTMywgUzQsIFM1LCBTNiwgUzddLFxuICBwcm9qZWN0b3I6IFRQcm9qZWN0b3IsXG4gIGNyZWF0aW9uTWV0YWRhdGE/OiBQYXJ0aWFsPENyZWF0aW9uTWV0YWRhdGE+XG4pOiBUUHJvamVjdG9yO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2VsZWN0b3I8XG4gIFMxIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFMyIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFMzIGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFM0IGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFM1IGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFM2IGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFM3IGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFM4IGV4dGVuZHMgU2VsZWN0b3JBcmcsXG4gIFRQcm9qZWN0b3IgZXh0ZW5kcyAoXG4gICAgczE6IMm1U2VsZWN0b3JSZXR1cm5UeXBlPFMxPixcbiAgICBzMjogybVTZWxlY3RvclJldHVyblR5cGU8UzI+LFxuICAgIHMzOiDJtVNlbGVjdG9yUmV0dXJuVHlwZTxTMz4sXG4gICAgczQ6IMm1U2VsZWN0b3JSZXR1cm5UeXBlPFM0PixcbiAgICBzNTogybVTZWxlY3RvclJldHVyblR5cGU8UzU+LFxuICAgIHM2OiDJtVNlbGVjdG9yUmV0dXJuVHlwZTxTNj4sXG4gICAgczc6IMm1U2VsZWN0b3JSZXR1cm5UeXBlPFM3PixcbiAgICBzODogybVTZWxlY3RvclJldHVyblR5cGU8Uzg+XG4gICkgPT4gYW55XG4+KFxuICBzZWxlY3RvcnM6IFtTMSwgUzIsIFMzLCBTNCwgUzUsIFM2LCBTNywgUzhdLFxuICBwcm9qZWN0b3I6IFRQcm9qZWN0b3IsXG4gIGNyZWF0aW9uTWV0YWRhdGE/OiBQYXJ0aWFsPENyZWF0aW9uTWV0YWRhdGE+XG4pOiBUUHJvamVjdG9yO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2VsZWN0b3I8VCBleHRlbmRzICguLi5hcmdzOiBhbnlbXSkgPT4gYW55PihcbiAgc2VsZWN0b3JzOiBTZWxlY3RvckFyZ1tdIHwgdW5kZWZpbmVkLFxuICBwcm9qZWN0b3I6IFQsXG4gIGNyZWF0aW9uTWV0YWRhdGE/OiBQYXJ0aWFsPENyZWF0aW9uTWV0YWRhdGE+XG4pOiBUO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2VsZWN0b3I8VCBleHRlbmRzICguLi5hcmdzOiBhbnlbXSkgPT4gYW55PihcbiAgc2VsZWN0b3JzOiBTZWxlY3RvckFyZ1tdIHwgdW5kZWZpbmVkLFxuICBwcm9qZWN0b3I6IFQsXG4gIGNyZWF0aW9uTWV0YWRhdGE/OiBQYXJ0aWFsPENyZWF0aW9uTWV0YWRhdGE+XG4pIHtcbiAgY29uc3QgbWVtb2l6ZWRGbiA9IGNyZWF0ZU1lbW9pemVkU2VsZWN0b3JGbjxUPihwcm9qZWN0b3IsIGNyZWF0aW9uTWV0YWRhdGEpO1xuXG4gIGNvbnN0IHNlbGVjdG9yTWV0YURhdGEgPSBzZXR1cFNlbGVjdG9yTWV0YWRhdGE8VD4ocHJvamVjdG9yLCBjcmVhdGlvbk1ldGFkYXRhKTtcblxuICBzZWxlY3Rvck1ldGFEYXRhLm1ha2VSb290U2VsZWN0b3IgPSBjcmVhdGVSb290U2VsZWN0b3JGYWN0b3J5PFQ+KFxuICAgIHNlbGVjdG9yTWV0YURhdGEsXG4gICAgc2VsZWN0b3JzLFxuICAgIG1lbW9pemVkRm5cbiAgKTtcblxuICByZXR1cm4gbWVtb2l6ZWRGbjtcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvc2VsZWN0b3JzL3ByaXZhdGVfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRoZXNlIHR5cGVzIGFyZSBleHBvcnRlZCBwcml2YXRlbHkgZm9yIGRldmVsb3BlcnMgd2hvIHdvcmsgb24gYWR2YW5jZWRcbiAqIHV0aWxpdGllcyBhbmQgbWF5IG5lZWQgdG8gdXNlIHRoZXNlIHR5cGVzIGV4dGVybmFsbHkuIEZvciBpbnN0YW5jZSxcbiAqIHRoZXkgbWF5IGhhdmUgYSBmdW5jdGlvbiB0aGF0IGFjY2VwdHMgc2VsZWN0b3IgZnVuY3Rpb25zIGFuZCByZXR1cm5zXG4gKiBzaWduYWxzIHdpdGggdGhlIHR5cGUgY29ycmVzcG9uZGluZyB0byB0aGUgcmV0dXJuIHR5cGUgb2YgdGhvc2Ugc2VsZWN0b3JzLlxuICovXG5leHBvcnQge1xuICDJtVNlbGVjdG9yRnVuYyxcbiAgybVTdGF0ZVNlbGVjdG9yLFxuICDJtVNlbGVjdG9yRGVmLFxuICDJtVNlbGVjdG9yUmV0dXJuVHlwZVxufSBmcm9tICcuL3NlbGVjdG9yLXR5cGVzLnV0aWwnO1xuIl19
@@ -0,0 +1,18 @@
1
+ import { ɵgetSelectorMetadata, ɵgetStoreMetadata } from '@ngxs/store/internals';
2
+ export function ensureValidSelector(selector, context = {}) {
3
+ const noun = context.noun || 'selector';
4
+ const prefix = context.prefix ? context.prefix + ': ' : '';
5
+ ensureValueProvided(selector, { noun, prefix: context.prefix });
6
+ const metadata = ɵgetSelectorMetadata(selector) || ɵgetStoreMetadata(selector);
7
+ if (!metadata) {
8
+ throw new Error(`${prefix}The value provided as the ${noun} is not a valid selector.`);
9
+ }
10
+ }
11
+ export function ensureValueProvided(value, context = {}) {
12
+ const noun = context.noun || 'value';
13
+ const prefix = context.prefix ? context.prefix + ': ' : '';
14
+ if (!value) {
15
+ throw new Error(`${prefix}A ${noun} must be provided.`);
16
+ }
17
+ }
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0b3ItY2hlY2tzLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvc2VsZWN0b3JzL3NlbGVjdG9yLWNoZWNrcy51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBSWhGLE1BQU0sVUFBVSxtQkFBbUIsQ0FDakMsUUFBMkIsRUFDM0IsVUFBOEMsRUFBRTtJQUVoRCxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxJQUFJLFVBQVUsQ0FBQztJQUN4QyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQzNELG1CQUFtQixDQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDaEUsTUFBTSxRQUFRLEdBQUcsb0JBQW9CLENBQUMsUUFBUSxDQUFDLElBQUksaUJBQWlCLENBQUMsUUFBZSxDQUFDLENBQUM7SUFDdEYsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2QsTUFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLE1BQU0sNkJBQTZCLElBQUksMkJBQTJCLENBQUMsQ0FBQztJQUN6RixDQUFDO0FBQ0gsQ0FBQztBQUVELE1BQU0sVUFBVSxtQkFBbUIsQ0FDakMsS0FBVSxFQUNWLFVBQThDLEVBQUU7SUFFaEQsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksSUFBSSxPQUFPLENBQUM7SUFDckMsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUMzRCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDWCxNQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsTUFBTSxLQUFLLElBQUksb0JBQW9CLENBQUMsQ0FBQztJQUMxRCxDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IMm1Z2V0U2VsZWN0b3JNZXRhZGF0YSwgybVnZXRTdG9yZU1ldGFkYXRhIH0gZnJvbSAnQG5neHMvc3RvcmUvaW50ZXJuYWxzJztcblxuaW1wb3J0IHsgybVTZWxlY3RvckRlZiB9IGZyb20gJy4vc2VsZWN0b3ItdHlwZXMudXRpbCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBlbnN1cmVWYWxpZFNlbGVjdG9yKFxuICBzZWxlY3RvcjogybVTZWxlY3RvckRlZjxhbnk+LFxuICBjb250ZXh0OiB7IHByZWZpeD86IHN0cmluZzsgbm91bj86IHN0cmluZyB9ID0ge31cbikge1xuICBjb25zdCBub3VuID0gY29udGV4dC5ub3VuIHx8ICdzZWxlY3Rvcic7XG4gIGNvbnN0IHByZWZpeCA9IGNvbnRleHQucHJlZml4ID8gY29udGV4dC5wcmVmaXggKyAnOiAnIDogJyc7XG4gIGVuc3VyZVZhbHVlUHJvdmlkZWQoc2VsZWN0b3IsIHsgbm91biwgcHJlZml4OiBjb250ZXh0LnByZWZpeCB9KTtcbiAgY29uc3QgbWV0YWRhdGEgPSDJtWdldFNlbGVjdG9yTWV0YWRhdGEoc2VsZWN0b3IpIHx8IMm1Z2V0U3RvcmVNZXRhZGF0YShzZWxlY3RvciBhcyBhbnkpO1xuICBpZiAoIW1ldGFkYXRhKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGAke3ByZWZpeH1UaGUgdmFsdWUgcHJvdmlkZWQgYXMgdGhlICR7bm91bn0gaXMgbm90IGEgdmFsaWQgc2VsZWN0b3IuYCk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGVuc3VyZVZhbHVlUHJvdmlkZWQoXG4gIHZhbHVlOiBhbnksXG4gIGNvbnRleHQ6IHsgcHJlZml4Pzogc3RyaW5nOyBub3VuPzogc3RyaW5nIH0gPSB7fVxuKSB7XG4gIGNvbnN0IG5vdW4gPSBjb250ZXh0Lm5vdW4gfHwgJ3ZhbHVlJztcbiAgY29uc3QgcHJlZml4ID0gY29udGV4dC5wcmVmaXggPyBjb250ZXh0LnByZWZpeCArICc6ICcgOiAnJztcbiAgaWYgKCF2YWx1ZSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgJHtwcmVmaXh9QSAke25vdW59IG11c3QgYmUgcHJvdmlkZWQuYCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,35 @@
1
+ import { ɵensureSelectorMetadata } from '@ngxs/store/internals';
2
+ const SELECTOR_OPTIONS_META_KEY = 'NGXS_SELECTOR_OPTIONS_META';
3
+ export const selectorOptionsMetaAccessor = {
4
+ getOptions: (target) => {
5
+ return (target && target[SELECTOR_OPTIONS_META_KEY]) || {};
6
+ },
7
+ defineOptions: (target, options) => {
8
+ if (!target)
9
+ return;
10
+ target[SELECTOR_OPTIONS_META_KEY] = options;
11
+ }
12
+ };
13
+ export function setupSelectorMetadata(originalFn, creationMetadata) {
14
+ const selectorMetaData = ɵensureSelectorMetadata(originalFn);
15
+ selectorMetaData.originalFn = originalFn;
16
+ let getExplicitSelectorOptions = () => ({});
17
+ if (creationMetadata) {
18
+ selectorMetaData.containerClass = creationMetadata.containerClass;
19
+ selectorMetaData.selectorName = creationMetadata.selectorName || null;
20
+ getExplicitSelectorOptions =
21
+ creationMetadata.getSelectorOptions || getExplicitSelectorOptions;
22
+ }
23
+ const selectorMetaDataClone = { ...selectorMetaData };
24
+ selectorMetaData.getSelectorOptions = () => getLocalSelectorOptions(selectorMetaDataClone, getExplicitSelectorOptions());
25
+ return selectorMetaData;
26
+ }
27
+ function getLocalSelectorOptions(selectorMetaData, explicitOptions) {
28
+ return {
29
+ ...(selectorOptionsMetaAccessor.getOptions(selectorMetaData.containerClass) || {}),
30
+ ...(selectorOptionsMetaAccessor.getOptions(selectorMetaData.originalFn) || {}),
31
+ ...(selectorMetaData.getSelectorOptions() || {}),
32
+ ...explicitOptions
33
+ };
34
+ }
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0b3ItbWV0YWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvc2VsZWN0b3JzL3NlbGVjdG9yLW1ldGFkYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHTCx1QkFBdUIsRUFDeEIsTUFBTSx1QkFBdUIsQ0FBQztBQUkvQixNQUFNLHlCQUF5QixHQUFHLDRCQUE0QixDQUFDO0FBRS9ELE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHO0lBQ3pDLFVBQVUsRUFBRSxDQUFDLE1BQVcsRUFBMEIsRUFBRTtRQUNsRCxPQUFPLENBQUMsTUFBTSxJQUFVLE1BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BFLENBQUM7SUFDRCxhQUFhLEVBQUUsQ0FBQyxNQUFXLEVBQUUsT0FBK0IsRUFBRSxFQUFFO1FBQzlELElBQUksQ0FBQyxNQUFNO1lBQUUsT0FBTztRQUNkLE1BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxHQUFHLE9BQU8sQ0FBQztJQUNyRCxDQUFDO0NBQ0YsQ0FBQztBQUVGLE1BQU0sVUFBVSxxQkFBcUIsQ0FDbkMsVUFBYSxFQUNiLGdCQUF1RDtJQUV2RCxNQUFNLGdCQUFnQixHQUFHLHVCQUF1QixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzdELGdCQUFnQixDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7SUFDekMsSUFBSSwwQkFBMEIsR0FBRyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzVDLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztRQUNyQixnQkFBZ0IsQ0FBQyxjQUFjLEdBQUcsZ0JBQWdCLENBQUMsY0FBYyxDQUFDO1FBQ2xFLGdCQUFnQixDQUFDLFlBQVksR0FBRyxnQkFBZ0IsQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDO1FBQ3RFLDBCQUEwQjtZQUN4QixnQkFBZ0IsQ0FBQyxrQkFBa0IsSUFBSSwwQkFBMEIsQ0FBQztJQUN0RSxDQUFDO0lBQ0QsTUFBTSxxQkFBcUIsR0FBRyxFQUFFLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztJQUN0RCxnQkFBZ0IsQ0FBQyxrQkFBa0IsR0FBRyxHQUFHLEVBQUUsQ0FDekMsdUJBQXVCLENBQUMscUJBQXFCLEVBQUUsMEJBQTBCLEVBQUUsQ0FBQyxDQUFDO0lBQy9FLE9BQU8sZ0JBQWdCLENBQUM7QUFDMUIsQ0FBQztBQUVELFNBQVMsdUJBQXVCLENBQzlCLGdCQUF3QyxFQUN4QyxlQUF1QztJQUV2QyxPQUFPO1FBQ0wsR0FBRyxDQUFDLDJCQUEyQixDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbEYsR0FBRyxDQUFDLDJCQUEyQixDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDOUUsR0FBRyxDQUFDLGdCQUFnQixDQUFDLGtCQUFrQixFQUFFLElBQUksRUFBRSxDQUFDO1FBQ2hELEdBQUcsZUFBZTtLQUNuQixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIMm1U2VsZWN0b3JNZXRhRGF0YU1vZGVsLFxuICDJtVNoYXJlZFNlbGVjdG9yT3B0aW9ucyxcbiAgybVlbnN1cmVTZWxlY3Rvck1ldGFkYXRhXG59IGZyb20gJ0BuZ3hzL3N0b3JlL2ludGVybmFscyc7XG5cbmltcG9ydCB7IENyZWF0aW9uTWV0YWRhdGEgfSBmcm9tICcuL3NlbGVjdG9yLW1vZGVscyc7XG5cbmNvbnN0IFNFTEVDVE9SX09QVElPTlNfTUVUQV9LRVkgPSAnTkdYU19TRUxFQ1RPUl9PUFRJT05TX01FVEEnO1xuXG5leHBvcnQgY29uc3Qgc2VsZWN0b3JPcHRpb25zTWV0YUFjY2Vzc29yID0ge1xuICBnZXRPcHRpb25zOiAodGFyZ2V0OiBhbnkpOiDJtVNoYXJlZFNlbGVjdG9yT3B0aW9ucyA9PiB7XG4gICAgcmV0dXJuICh0YXJnZXQgJiYgKDxhbnk+dGFyZ2V0KVtTRUxFQ1RPUl9PUFRJT05TX01FVEFfS0VZXSkgfHwge307XG4gIH0sXG4gIGRlZmluZU9wdGlvbnM6ICh0YXJnZXQ6IGFueSwgb3B0aW9uczogybVTaGFyZWRTZWxlY3Rvck9wdGlvbnMpID0+IHtcbiAgICBpZiAoIXRhcmdldCkgcmV0dXJuO1xuICAgICg8YW55PnRhcmdldClbU0VMRUNUT1JfT1BUSU9OU19NRVRBX0tFWV0gPSBvcHRpb25zO1xuICB9XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gc2V0dXBTZWxlY3Rvck1ldGFkYXRhPFQgZXh0ZW5kcyAoLi4uYXJnczogYW55W10pID0+IGFueT4oXG4gIG9yaWdpbmFsRm46IFQsXG4gIGNyZWF0aW9uTWV0YWRhdGE6IFBhcnRpYWw8Q3JlYXRpb25NZXRhZGF0YT4gfCB1bmRlZmluZWRcbikge1xuICBjb25zdCBzZWxlY3Rvck1ldGFEYXRhID0gybVlbnN1cmVTZWxlY3Rvck1ldGFkYXRhKG9yaWdpbmFsRm4pO1xuICBzZWxlY3Rvck1ldGFEYXRhLm9yaWdpbmFsRm4gPSBvcmlnaW5hbEZuO1xuICBsZXQgZ2V0RXhwbGljaXRTZWxlY3Rvck9wdGlvbnMgPSAoKSA9PiAoe30pO1xuICBpZiAoY3JlYXRpb25NZXRhZGF0YSkge1xuICAgIHNlbGVjdG9yTWV0YURhdGEuY29udGFpbmVyQ2xhc3MgPSBjcmVhdGlvbk1ldGFkYXRhLmNvbnRhaW5lckNsYXNzO1xuICAgIHNlbGVjdG9yTWV0YURhdGEuc2VsZWN0b3JOYW1lID0gY3JlYXRpb25NZXRhZGF0YS5zZWxlY3Rvck5hbWUgfHwgbnVsbDtcbiAgICBnZXRFeHBsaWNpdFNlbGVjdG9yT3B0aW9ucyA9XG4gICAgICBjcmVhdGlvbk1ldGFkYXRhLmdldFNlbGVjdG9yT3B0aW9ucyB8fCBnZXRFeHBsaWNpdFNlbGVjdG9yT3B0aW9ucztcbiAgfVxuICBjb25zdCBzZWxlY3Rvck1ldGFEYXRhQ2xvbmUgPSB7IC4uLnNlbGVjdG9yTWV0YURhdGEgfTtcbiAgc2VsZWN0b3JNZXRhRGF0YS5nZXRTZWxlY3Rvck9wdGlvbnMgPSAoKSA9PlxuICAgIGdldExvY2FsU2VsZWN0b3JPcHRpb25zKHNlbGVjdG9yTWV0YURhdGFDbG9uZSwgZ2V0RXhwbGljaXRTZWxlY3Rvck9wdGlvbnMoKSk7XG4gIHJldHVybiBzZWxlY3Rvck1ldGFEYXRhO1xufVxuXG5mdW5jdGlvbiBnZXRMb2NhbFNlbGVjdG9yT3B0aW9ucyhcbiAgc2VsZWN0b3JNZXRhRGF0YTogybVTZWxlY3Rvck1ldGFEYXRhTW9kZWwsXG4gIGV4cGxpY2l0T3B0aW9uczogybVTaGFyZWRTZWxlY3Rvck9wdGlvbnNcbik6IMm1U2hhcmVkU2VsZWN0b3JPcHRpb25zIHtcbiAgcmV0dXJuIHtcbiAgICAuLi4oc2VsZWN0b3JPcHRpb25zTWV0YUFjY2Vzc29yLmdldE9wdGlvbnMoc2VsZWN0b3JNZXRhRGF0YS5jb250YWluZXJDbGFzcykgfHwge30pLFxuICAgIC4uLihzZWxlY3Rvck9wdGlvbnNNZXRhQWNjZXNzb3IuZ2V0T3B0aW9ucyhzZWxlY3Rvck1ldGFEYXRhLm9yaWdpbmFsRm4pIHx8IHt9KSxcbiAgICAuLi4oc2VsZWN0b3JNZXRhRGF0YS5nZXRTZWxlY3Rvck9wdGlvbnMoKSB8fCB7fSksXG4gICAgLi4uZXhwbGljaXRPcHRpb25zXG4gIH07XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0b3ItbW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RvcmUvc3JjL3NlbGVjdG9ycy9zZWxlY3Rvci1tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IMm1U2hhcmVkU2VsZWN0b3JPcHRpb25zLCDJtVNlbGVjdEZyb21Sb290U3RhdGUgfSBmcm9tICdAbmd4cy9zdG9yZS9pbnRlcm5hbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0aW9uTWV0YWRhdGEge1xuICBjb250YWluZXJDbGFzczogYW55O1xuICBzZWxlY3Rvck5hbWU6IHN0cmluZztcbiAgZ2V0U2VsZWN0b3JPcHRpb25zPzogKCkgPT4gybVTaGFyZWRTZWxlY3Rvck9wdGlvbnM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUnVudGltZVNlbGVjdG9ySW5mbyB7XG4gIHNlbGVjdG9yT3B0aW9uczogybVTaGFyZWRTZWxlY3Rvck9wdGlvbnM7XG4gIGFyZ3VtZW50U2VsZWN0b3JGdW5jdGlvbnM6IMm1U2VsZWN0RnJvbVJvb3RTdGF0ZVtdO1xufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0b3ItdHlwZXMudXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0b3JlL3NyYy9zZWxlY3RvcnMvc2VsZWN0b3ItdHlwZXMudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgybVTdGF0ZUNsYXNzLCBTdGF0ZVRva2VuIH0gZnJvbSAnQG5neHMvc3RvcmUvaW50ZXJuYWxzJztcblxuZXhwb3J0IHR5cGUgybVTZWxlY3RvckZ1bmM8VE1vZGVsPiA9ICguLi5hcmc6IGFueVtdKSA9PiBUTW9kZWw7XG5cbmV4cG9ydCB0eXBlIFR5cGVkU2VsZWN0b3I8VE1vZGVsPiA9IFN0YXRlVG9rZW48VE1vZGVsPiB8IMm1U2VsZWN0b3JGdW5jPFRNb2RlbD47XG5cbmV4cG9ydCB0eXBlIMm1U3RhdGVTZWxlY3RvciA9IMm1U3RhdGVDbGFzczxhbnk+O1xuXG5leHBvcnQgdHlwZSDJtVNlbGVjdG9yRGVmPFRNb2RlbD4gPSDJtVN0YXRlU2VsZWN0b3IgfCBUeXBlZFNlbGVjdG9yPFRNb2RlbD47XG5cbmV4cG9ydCB0eXBlIMm1U2VsZWN0b3JSZXR1cm5UeXBlPFQgZXh0ZW5kcyDJtVNlbGVjdG9yRGVmPGFueT4+ID1cbiAgVCBleHRlbmRzIFN0YXRlVG9rZW48aW5mZXIgUjE+XG4gICAgPyBSMVxuICAgIDogVCBleHRlbmRzIMm1U2VsZWN0b3JGdW5jPGluZmVyIFIyPlxuICAgICAgPyBSMlxuICAgICAgOiBUIGV4dGVuZHMgybVTdGF0ZUNsYXNzPGFueT5cbiAgICAgICAgPyBhbnkgLyogKEJsb2NrIGNvbW1lbnQgdG8gc3RvcCBwcmV0dGllciBicmVha2luZyB0aGUgY29tbWVudCBiZWxvdylcbiAgLy8gSWYgdGhlIHN0YXRlIHNlbGVjdG9yIGlzIGEgY2xhc3MgdGhlbiB3ZSBzaG91bGQgaW5mZXIgaXRzIHJldHVybiB0eXBlIHRvIGBhbnlgLCBhbmQgbm90IHRvIGB1bmtub3duYC5cbiAgLy8gU2luY2Ugd2UnbGwgZ2V0IGFuIGVycm9yIHRoYXQgYFR5cGUgJ3Vua25vd24nIGlzIG5vdCBhc3NpZ25hYmxlIHRvIHR5cGUgJ0F1dGhTdGF0ZU1vZGVsJy5gXG4gIC8vIFRoZSBgdW5rbm93bmAgdHlwZSBpcyBub3Qgb3ZlcnJpZGFibGUgd2hlbiB0aGUgc3RyaWN0IG1vZGUgaXMgZW5hYmxlZDpcbiAgLy8gZnVuY3Rpb24gZG9Tb21ldGhpbmdXaXRoQXJyYXkoYXJyYXk6IG51bWJlcltdLCBmYWN0b3J5OiAoeDogdW5rbm93bikgPT4gdm9pZCkge1xuICAvLyAgIGFycmF5LmZvckVhY2goZmFjdG9yeSk7XG4gIC8vIH1cbiAgLy8gZG9Tb21ldGhpbmdXaXRoQXJyYXkoWzEsIDJdLCAoeDogbnVtYmVyKSA9PiBjb25zb2xlLmxvZyh4KSk7XG4gIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5cbiAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUeXBlICd1bmtub3duJyBpcyBub3QgYXNzaWduYWJsZSB0byB0eXBlICdudW1iZXInLlxuICAqL1xuICAgICAgICA6IG5ldmVyO1xuIl19
@@ -0,0 +1,95 @@
1
+ import { ɵmemoize, ɵgetStoreMetadata, ɵgetSelectorMetadata } from '@ngxs/store/internals';
2
+ const NG_DEV_MODE = typeof ngDevMode !== 'undefined' && ngDevMode;
3
+ export function createRootSelectorFactory(selectorMetaData, selectors, memoizedSelectorFn) {
4
+ return (context) => {
5
+ const { argumentSelectorFunctions, selectorOptions } = getRuntimeSelectorInfo(context, selectorMetaData, selectors);
6
+ const { suppressErrors } = selectorOptions;
7
+ return function selectFromRoot(rootState) {
8
+ // Determine arguments from the app state using the selectors
9
+ const results = argumentSelectorFunctions.map(argFn => argFn(rootState));
10
+ // If the lambda attempts to access something in the state that doesn't exist,
11
+ // it will throw a `TypeError`. Since this behavior is common, we simply return
12
+ // `undefined` in such cases.
13
+ try {
14
+ return memoizedSelectorFn(...results);
15
+ }
16
+ catch (ex) {
17
+ if (suppressErrors && ex instanceof TypeError) {
18
+ return undefined;
19
+ }
20
+ // We're logging an error in this function because it may be used by `select`,
21
+ // `selectSignal`, and `selectSnapshot`. Therefore, there's no need to catch
22
+ // exceptions there to log errors.
23
+ if (NG_DEV_MODE) {
24
+ const message = 'The selector below has thrown an error upon invocation. ' +
25
+ 'Please check for any unsafe property access that may result in null ' +
26
+ 'or undefined values.';
27
+ // Avoid concatenating the message with the original function, as this will
28
+ // invoke `toString()` on the function. Instead, log it as the second argument.
29
+ // This way, developers will be able to navigate to the actual code in the browser.
30
+ console.error(message, selectorMetaData.originalFn);
31
+ }
32
+ throw ex;
33
+ }
34
+ };
35
+ };
36
+ }
37
+ export function createMemoizedSelectorFn(originalFn, creationMetadata) {
38
+ const containerClass = creationMetadata && creationMetadata.containerClass;
39
+ const wrappedFn = function wrappedSelectorFn(...args) {
40
+ const returnValue = originalFn.apply(containerClass, args);
41
+ if (returnValue instanceof Function) {
42
+ const innerMemoizedFn = ɵmemoize.apply(null, [returnValue]);
43
+ return innerMemoizedFn;
44
+ }
45
+ return returnValue;
46
+ };
47
+ const memoizedFn = ɵmemoize(wrappedFn);
48
+ Object.setPrototypeOf(memoizedFn, originalFn);
49
+ return memoizedFn;
50
+ }
51
+ function getRuntimeSelectorInfo(context, selectorMetaData, selectors = []) {
52
+ const localSelectorOptions = selectorMetaData.getSelectorOptions();
53
+ const selectorOptions = context.getSelectorOptions(localSelectorOptions);
54
+ const selectorsToApply = getSelectorsToApply(selectors, selectorOptions, selectorMetaData.containerClass);
55
+ const argumentSelectorFunctions = selectorsToApply.map(selector => {
56
+ const factory = getRootSelectorFactory(selector);
57
+ return factory(context);
58
+ });
59
+ return {
60
+ selectorOptions,
61
+ argumentSelectorFunctions
62
+ };
63
+ }
64
+ function getSelectorsToApply(selectors = [], selectorOptions, containerClass) {
65
+ const selectorsToApply = [];
66
+ // The container state refers to the state class that includes the
67
+ // definition of the selector function, for example:
68
+ // @State()
69
+ // class AnimalsState {
70
+ // @Selector()
71
+ // static getAnimals(state: AnimalsStateModel) {}
72
+ // }
73
+ // The `AnimalsState` serves as the container state. Additionally, the
74
+ // selector may reside within a namespace or another class lacking the
75
+ // `@State` decorator, thus not being treated as the container state.
76
+ const canInjectContainerState = selectorOptions.injectContainerState || selectors.length === 0;
77
+ if (containerClass && canInjectContainerState) {
78
+ // If we are on a state class, add it as the first selector parameter
79
+ const metadata = ɵgetStoreMetadata(containerClass);
80
+ if (metadata) {
81
+ selectorsToApply.push(containerClass);
82
+ }
83
+ }
84
+ selectorsToApply.push(...selectors);
85
+ return selectorsToApply;
86
+ }
87
+ /**
88
+ * This function gets the factory function to create the selector to get the selected slice from the app state
89
+ * @ignore
90
+ */
91
+ export function getRootSelectorFactory(selector) {
92
+ const metadata = ɵgetSelectorMetadata(selector) || ɵgetStoreMetadata(selector);
93
+ return (metadata && metadata.makeRootSelector) || (() => selector);
94
+ }
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0b3ItdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvc2VsZWN0b3JzL3NlbGVjdG9yLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxRQUFRLEVBR1IsaUJBQWlCLEVBQ2pCLG9CQUFvQixFQUdyQixNQUFNLHVCQUF1QixDQUFDO0FBTS9CLE1BQU0sV0FBVyxHQUFHLE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxTQUFTLENBQUM7QUFFbEUsTUFBTSxVQUFVLHlCQUF5QixDQUN2QyxnQkFBd0MsRUFDeEMsU0FBNEIsRUFDNUIsa0JBQXFCO0lBRXJCLE9BQU8sQ0FBQyxPQUFnQyxFQUFFLEVBQUU7UUFDMUMsTUFBTSxFQUFFLHlCQUF5QixFQUFFLGVBQWUsRUFBRSxHQUFHLHNCQUFzQixDQUMzRSxPQUFPLEVBQ1AsZ0JBQWdCLEVBQ2hCLFNBQVMsQ0FDVixDQUFDO1FBRUYsTUFBTSxFQUFFLGNBQWMsRUFBRSxHQUFHLGVBQWUsQ0FBQztRQUUzQyxPQUFPLFNBQVMsY0FBYyxDQUFDLFNBQWM7WUFDM0MsNkRBQTZEO1lBQzdELE1BQU0sT0FBTyxHQUFHLHlCQUF5QixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBRXpFLDhFQUE4RTtZQUM5RSwrRUFBK0U7WUFDL0UsNkJBQTZCO1lBQzdCLElBQUksQ0FBQztnQkFDSCxPQUFPLGtCQUFrQixDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUM7WUFDeEMsQ0FBQztZQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7Z0JBQ1osSUFBSSxjQUFjLElBQUksRUFBRSxZQUFZLFNBQVMsRUFBRSxDQUFDO29CQUM5QyxPQUFPLFNBQVMsQ0FBQztnQkFDbkIsQ0FBQztnQkFFRCw4RUFBOEU7Z0JBQzlFLDRFQUE0RTtnQkFDNUUsa0NBQWtDO2dCQUNsQyxJQUFJLFdBQVcsRUFBRSxDQUFDO29CQUNoQixNQUFNLE9BQU8sR0FDWCwwREFBMEQ7d0JBQzFELHNFQUFzRTt3QkFDdEUsc0JBQXNCLENBQUM7b0JBRXpCLDJFQUEyRTtvQkFDM0UsK0VBQStFO29CQUMvRSxtRkFBbUY7b0JBQ25GLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUN0RCxDQUFDO2dCQUVELE1BQU0sRUFBRSxDQUFDO1lBQ1gsQ0FBQztRQUNILENBQUMsQ0FBQztJQUNKLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsd0JBQXdCLENBQ3RDLFVBQWEsRUFDYixnQkFBdUQ7SUFFdkQsTUFBTSxjQUFjLEdBQUcsZ0JBQWdCLElBQUksZ0JBQWdCLENBQUMsY0FBYyxDQUFDO0lBQzNFLE1BQU0sU0FBUyxHQUFHLFNBQVMsaUJBQWlCLENBQUMsR0FBRyxJQUFXO1FBQ3pELE1BQU0sV0FBVyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzNELElBQUksV0FBVyxZQUFZLFFBQVEsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sZUFBZSxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztZQUM1RCxPQUFPLGVBQWUsQ0FBQztRQUN6QixDQUFDO1FBQ0QsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBTSxDQUFDO0lBQ1AsTUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3ZDLE1BQU0sQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQzlDLE9BQU8sVUFBVSxDQUFDO0FBQ3BCLENBQUM7QUFFRCxTQUFTLHNCQUFzQixDQUM3QixPQUFnQyxFQUNoQyxnQkFBd0MsRUFDeEMsWUFBK0IsRUFBRTtJQUVqQyxNQUFNLG9CQUFvQixHQUFHLGdCQUFnQixDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDbkUsTUFBTSxlQUFlLEdBQUcsT0FBTyxDQUFDLGtCQUFrQixDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDekUsTUFBTSxnQkFBZ0IsR0FBRyxtQkFBbUIsQ0FDMUMsU0FBUyxFQUNULGVBQWUsRUFDZixnQkFBZ0IsQ0FBQyxjQUFjLENBQ2hDLENBQUM7SUFFRixNQUFNLHlCQUF5QixHQUFHLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRTtRQUNoRSxNQUFNLE9BQU8sR0FBRyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNqRCxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMxQixDQUFDLENBQUMsQ0FBQztJQUNILE9BQU87UUFDTCxlQUFlO1FBQ2YseUJBQXlCO0tBQzFCLENBQUM7QUFDSixDQUFDO0FBRUQsU0FBUyxtQkFBbUIsQ0FDMUIsWUFBK0IsRUFBRSxFQUNqQyxlQUF1QyxFQUN2QyxjQUFtQjtJQUVuQixNQUFNLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztJQUM1QixrRUFBa0U7SUFDbEUsb0RBQW9EO0lBQ3BELFdBQVc7SUFDWCx1QkFBdUI7SUFDdkIsZ0JBQWdCO0lBQ2hCLG1EQUFtRDtJQUNuRCxJQUFJO0lBQ0osc0VBQXNFO0lBQ3RFLHNFQUFzRTtJQUN0RSxxRUFBcUU7SUFDckUsTUFBTSx1QkFBdUIsR0FDM0IsZUFBZSxDQUFDLG9CQUFvQixJQUFJLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDO0lBRWpFLElBQUksY0FBYyxJQUFJLHVCQUF1QixFQUFFLENBQUM7UUFDOUMscUVBQXFFO1FBQ3JFLE1BQU0sUUFBUSxHQUFHLGlCQUFpQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ25ELElBQUksUUFBUSxFQUFFLENBQUM7WUFDYixnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDeEMsQ0FBQztJQUNILENBQUM7SUFDRCxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUNwQyxPQUFPLGdCQUFnQixDQUFDO0FBQzFCLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsUUFBYTtJQUNsRCxNQUFNLFFBQVEsR0FBRyxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMvRSxPQUFPLENBQUMsUUFBUSxJQUFJLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDckUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIMm1bWVtb2l6ZSxcbiAgybVSdW50aW1lU2VsZWN0b3JDb250ZXh0LFxuICDJtVNlbGVjdG9yRmFjdG9yeSxcbiAgybVnZXRTdG9yZU1ldGFkYXRhLFxuICDJtWdldFNlbGVjdG9yTWV0YWRhdGEsXG4gIMm1U2VsZWN0b3JNZXRhRGF0YU1vZGVsLFxuICDJtVNoYXJlZFNlbGVjdG9yT3B0aW9uc1xufSBmcm9tICdAbmd4cy9zdG9yZS9pbnRlcm5hbHMnO1xuXG5pbXBvcnQgeyBDcmVhdGlvbk1ldGFkYXRhLCBSdW50aW1lU2VsZWN0b3JJbmZvIH0gZnJvbSAnLi9zZWxlY3Rvci1tb2RlbHMnO1xuXG5kZWNsYXJlIGNvbnN0IG5nRGV2TW9kZTogYm9vbGVhbjtcblxuY29uc3QgTkdfREVWX01PREUgPSB0eXBlb2YgbmdEZXZNb2RlICE9PSAndW5kZWZpbmVkJyAmJiBuZ0Rldk1vZGU7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVSb290U2VsZWN0b3JGYWN0b3J5PFQgZXh0ZW5kcyAoLi4uYXJnczogYW55W10pID0+IGFueT4oXG4gIHNlbGVjdG9yTWV0YURhdGE6IMm1U2VsZWN0b3JNZXRhRGF0YU1vZGVsLFxuICBzZWxlY3RvcnM6IGFueVtdIHwgdW5kZWZpbmVkLFxuICBtZW1vaXplZFNlbGVjdG9yRm46IFRcbik6IMm1U2VsZWN0b3JGYWN0b3J5IHtcbiAgcmV0dXJuIChjb250ZXh0OiDJtVJ1bnRpbWVTZWxlY3RvckNvbnRleHQpID0+IHtcbiAgICBjb25zdCB7IGFyZ3VtZW50U2VsZWN0b3JGdW5jdGlvbnMsIHNlbGVjdG9yT3B0aW9ucyB9ID0gZ2V0UnVudGltZVNlbGVjdG9ySW5mbyhcbiAgICAgIGNvbnRleHQsXG4gICAgICBzZWxlY3Rvck1ldGFEYXRhLFxuICAgICAgc2VsZWN0b3JzXG4gICAgKTtcblxuICAgIGNvbnN0IHsgc3VwcHJlc3NFcnJvcnMgfSA9IHNlbGVjdG9yT3B0aW9ucztcblxuICAgIHJldHVybiBmdW5jdGlvbiBzZWxlY3RGcm9tUm9vdChyb290U3RhdGU6IGFueSkge1xuICAgICAgLy8gRGV0ZXJtaW5lIGFyZ3VtZW50cyBmcm9tIHRoZSBhcHAgc3RhdGUgdXNpbmcgdGhlIHNlbGVjdG9yc1xuICAgICAgY29uc3QgcmVzdWx0cyA9IGFyZ3VtZW50U2VsZWN0b3JGdW5jdGlvbnMubWFwKGFyZ0ZuID0+IGFyZ0ZuKHJvb3RTdGF0ZSkpO1xuXG4gICAgICAvLyBJZiB0aGUgbGFtYmRhIGF0dGVtcHRzIHRvIGFjY2VzcyBzb21ldGhpbmcgaW4gdGhlIHN0YXRlIHRoYXQgZG9lc24ndCBleGlzdCxcbiAgICAgIC8vIGl0IHdpbGwgdGhyb3cgYSBgVHlwZUVycm9yYC4gU2luY2UgdGhpcyBiZWhhdmlvciBpcyBjb21tb24sIHdlIHNpbXBseSByZXR1cm5cbiAgICAgIC8vIGB1bmRlZmluZWRgIGluIHN1Y2ggY2FzZXMuXG4gICAgICB0cnkge1xuICAgICAgICByZXR1cm4gbWVtb2l6ZWRTZWxlY3RvckZuKC4uLnJlc3VsdHMpO1xuICAgICAgfSBjYXRjaCAoZXgpIHtcbiAgICAgICAgaWYgKHN1cHByZXNzRXJyb3JzICYmIGV4IGluc3RhbmNlb2YgVHlwZUVycm9yKSB7XG4gICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFdlJ3JlIGxvZ2dpbmcgYW4gZXJyb3IgaW4gdGhpcyBmdW5jdGlvbiBiZWNhdXNlIGl0IG1heSBiZSB1c2VkIGJ5IGBzZWxlY3RgLFxuICAgICAgICAvLyBgc2VsZWN0U2lnbmFsYCwgYW5kIGBzZWxlY3RTbmFwc2hvdGAuIFRoZXJlZm9yZSwgdGhlcmUncyBubyBuZWVkIHRvIGNhdGNoXG4gICAgICAgIC8vIGV4Y2VwdGlvbnMgdGhlcmUgdG8gbG9nIGVycm9ycy5cbiAgICAgICAgaWYgKE5HX0RFVl9NT0RFKSB7XG4gICAgICAgICAgY29uc3QgbWVzc2FnZSA9XG4gICAgICAgICAgICAnVGhlIHNlbGVjdG9yIGJlbG93IGhhcyB0aHJvd24gYW4gZXJyb3IgdXBvbiBpbnZvY2F0aW9uLiAnICtcbiAgICAgICAgICAgICdQbGVhc2UgY2hlY2sgZm9yIGFueSB1bnNhZmUgcHJvcGVydHkgYWNjZXNzIHRoYXQgbWF5IHJlc3VsdCBpbiBudWxsICcgK1xuICAgICAgICAgICAgJ29yIHVuZGVmaW5lZCB2YWx1ZXMuJztcblxuICAgICAgICAgIC8vIEF2b2lkIGNvbmNhdGVuYXRpbmcgdGhlIG1lc3NhZ2Ugd2l0aCB0aGUgb3JpZ2luYWwgZnVuY3Rpb24sIGFzIHRoaXMgd2lsbFxuICAgICAgICAgIC8vIGludm9rZSBgdG9TdHJpbmcoKWAgb24gdGhlIGZ1bmN0aW9uLiBJbnN0ZWFkLCBsb2cgaXQgYXMgdGhlIHNlY29uZCBhcmd1bWVudC5cbiAgICAgICAgICAvLyBUaGlzIHdheSwgZGV2ZWxvcGVycyB3aWxsIGJlIGFibGUgdG8gbmF2aWdhdGUgdG8gdGhlIGFjdHVhbCBjb2RlIGluIHRoZSBicm93c2VyLlxuICAgICAgICAgIGNvbnNvbGUuZXJyb3IobWVzc2FnZSwgc2VsZWN0b3JNZXRhRGF0YS5vcmlnaW5hbEZuKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRocm93IGV4O1xuICAgICAgfVxuICAgIH07XG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVNZW1vaXplZFNlbGVjdG9yRm48VCBleHRlbmRzICguLi5hcmdzOiBhbnlbXSkgPT4gYW55PihcbiAgb3JpZ2luYWxGbjogVCxcbiAgY3JlYXRpb25NZXRhZGF0YTogUGFydGlhbDxDcmVhdGlvbk1ldGFkYXRhPiB8IHVuZGVmaW5lZFxuKSB7XG4gIGNvbnN0IGNvbnRhaW5lckNsYXNzID0gY3JlYXRpb25NZXRhZGF0YSAmJiBjcmVhdGlvbk1ldGFkYXRhLmNvbnRhaW5lckNsYXNzO1xuICBjb25zdCB3cmFwcGVkRm4gPSBmdW5jdGlvbiB3cmFwcGVkU2VsZWN0b3JGbiguLi5hcmdzOiBhbnlbXSkge1xuICAgIGNvbnN0IHJldHVyblZhbHVlID0gb3JpZ2luYWxGbi5hcHBseShjb250YWluZXJDbGFzcywgYXJncyk7XG4gICAgaWYgKHJldHVyblZhbHVlIGluc3RhbmNlb2YgRnVuY3Rpb24pIHtcbiAgICAgIGNvbnN0IGlubmVyTWVtb2l6ZWRGbiA9IMm1bWVtb2l6ZS5hcHBseShudWxsLCBbcmV0dXJuVmFsdWVdKTtcbiAgICAgIHJldHVybiBpbm5lck1lbW9pemVkRm47XG4gICAgfVxuICAgIHJldHVybiByZXR1cm5WYWx1ZTtcbiAgfSBhcyBUO1xuICBjb25zdCBtZW1vaXplZEZuID0gybVtZW1vaXplKHdyYXBwZWRGbik7XG4gIE9iamVjdC5zZXRQcm90b3R5cGVPZihtZW1vaXplZEZuLCBvcmlnaW5hbEZuKTtcbiAgcmV0dXJuIG1lbW9pemVkRm47XG59XG5cbmZ1bmN0aW9uIGdldFJ1bnRpbWVTZWxlY3RvckluZm8oXG4gIGNvbnRleHQ6IMm1UnVudGltZVNlbGVjdG9yQ29udGV4dCxcbiAgc2VsZWN0b3JNZXRhRGF0YTogybVTZWxlY3Rvck1ldGFEYXRhTW9kZWwsXG4gIHNlbGVjdG9yczogYW55W10gfCB1bmRlZmluZWQgPSBbXVxuKTogUnVudGltZVNlbGVjdG9ySW5mbyB7XG4gIGNvbnN0IGxvY2FsU2VsZWN0b3JPcHRpb25zID0gc2VsZWN0b3JNZXRhRGF0YS5nZXRTZWxlY3Rvck9wdGlvbnMoKTtcbiAgY29uc3Qgc2VsZWN0b3JPcHRpb25zID0gY29udGV4dC5nZXRTZWxlY3Rvck9wdGlvbnMobG9jYWxTZWxlY3Rvck9wdGlvbnMpO1xuICBjb25zdCBzZWxlY3RvcnNUb0FwcGx5ID0gZ2V0U2VsZWN0b3JzVG9BcHBseShcbiAgICBzZWxlY3RvcnMsXG4gICAgc2VsZWN0b3JPcHRpb25zLFxuICAgIHNlbGVjdG9yTWV0YURhdGEuY29udGFpbmVyQ2xhc3NcbiAgKTtcblxuICBjb25zdCBhcmd1bWVudFNlbGVjdG9yRnVuY3Rpb25zID0gc2VsZWN0b3JzVG9BcHBseS5tYXAoc2VsZWN0b3IgPT4ge1xuICAgIGNvbnN0IGZhY3RvcnkgPSBnZXRSb290U2VsZWN0b3JGYWN0b3J5KHNlbGVjdG9yKTtcbiAgICByZXR1cm4gZmFjdG9yeShjb250ZXh0KTtcbiAgfSk7XG4gIHJldHVybiB7XG4gICAgc2VsZWN0b3JPcHRpb25zLFxuICAgIGFyZ3VtZW50U2VsZWN0b3JGdW5jdGlvbnNcbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2V0U2VsZWN0b3JzVG9BcHBseShcbiAgc2VsZWN0b3JzOiBhbnlbXSB8IHVuZGVmaW5lZCA9IFtdLFxuICBzZWxlY3Rvck9wdGlvbnM6IMm1U2hhcmVkU2VsZWN0b3JPcHRpb25zLFxuICBjb250YWluZXJDbGFzczogYW55XG4pIHtcbiAgY29uc3Qgc2VsZWN0b3JzVG9BcHBseSA9IFtdO1xuICAvLyBUaGUgY29udGFpbmVyIHN0YXRlIHJlZmVycyB0byB0aGUgc3RhdGUgY2xhc3MgdGhhdCBpbmNsdWRlcyB0aGVcbiAgLy8gZGVmaW5pdGlvbiBvZiB0aGUgc2VsZWN0b3IgZnVuY3Rpb24sIGZvciBleGFtcGxlOlxuICAvLyBAU3RhdGUoKVxuICAvLyBjbGFzcyBBbmltYWxzU3RhdGUge1xuICAvLyAgIEBTZWxlY3RvcigpXG4gIC8vICAgc3RhdGljIGdldEFuaW1hbHMoc3RhdGU6IEFuaW1hbHNTdGF0ZU1vZGVsKSB7fVxuICAvLyB9XG4gIC8vIFRoZSBgQW5pbWFsc1N0YXRlYCBzZXJ2ZXMgYXMgdGhlIGNvbnRhaW5lciBzdGF0ZS4gQWRkaXRpb25hbGx5LCB0aGVcbiAgLy8gc2VsZWN0b3IgbWF5IHJlc2lkZSB3aXRoaW4gYSBuYW1lc3BhY2Ugb3IgYW5vdGhlciBjbGFzcyBsYWNraW5nIHRoZVxuICAvLyBgQFN0YXRlYCBkZWNvcmF0b3IsIHRodXMgbm90IGJlaW5nIHRyZWF0ZWQgYXMgdGhlIGNvbnRhaW5lciBzdGF0ZS5cbiAgY29uc3QgY2FuSW5qZWN0Q29udGFpbmVyU3RhdGUgPVxuICAgIHNlbGVjdG9yT3B0aW9ucy5pbmplY3RDb250YWluZXJTdGF0ZSB8fCBzZWxlY3RvcnMubGVuZ3RoID09PSAwO1xuXG4gIGlmIChjb250YWluZXJDbGFzcyAmJiBjYW5JbmplY3RDb250YWluZXJTdGF0ZSkge1xuICAgIC8vIElmIHdlIGFyZSBvbiBhIHN0YXRlIGNsYXNzLCBhZGQgaXQgYXMgdGhlIGZpcnN0IHNlbGVjdG9yIHBhcmFtZXRlclxuICAgIGNvbnN0IG1ldGFkYXRhID0gybVnZXRTdG9yZU1ldGFkYXRhKGNvbnRhaW5lckNsYXNzKTtcbiAgICBpZiAobWV0YWRhdGEpIHtcbiAgICAgIHNlbGVjdG9yc1RvQXBwbHkucHVzaChjb250YWluZXJDbGFzcyk7XG4gICAgfVxuICB9XG4gIHNlbGVjdG9yc1RvQXBwbHkucHVzaCguLi5zZWxlY3RvcnMpO1xuICByZXR1cm4gc2VsZWN0b3JzVG9BcHBseTtcbn1cblxuLyoqXG4gKiBUaGlzIGZ1bmN0aW9uIGdldHMgdGhlIGZhY3RvcnkgZnVuY3Rpb24gdG8gY3JlYXRlIHRoZSBzZWxlY3RvciB0byBnZXQgdGhlIHNlbGVjdGVkIHNsaWNlIGZyb20gdGhlIGFwcCBzdGF0ZVxuICogQGlnbm9yZVxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Um9vdFNlbGVjdG9yRmFjdG9yeShzZWxlY3RvcjogYW55KTogybVTZWxlY3RvckZhY3Rvcnkge1xuICBjb25zdCBtZXRhZGF0YSA9IMm1Z2V0U2VsZWN0b3JNZXRhZGF0YShzZWxlY3RvcikgfHwgybVnZXRTdG9yZU1ldGFkYXRhKHNlbGVjdG9yKTtcbiAgcmV0dXJuIChtZXRhZGF0YSAmJiBtZXRhZGF0YS5tYWtlUm9vdFNlbGVjdG9yKSB8fCAoKCkgPT4gc2VsZWN0b3IpO1xufVxuIl19
@@ -0,0 +1,20 @@
1
+ import { FEATURE_STATE_TOKEN } from '../symbols';
2
+ import { PluginManager } from '../plugin-manager';
3
+ import { StateFactory } from '../internal/state-factory';
4
+ /**
5
+ * This function provides the required providers when calling `NgxsModule.forFeature`
6
+ * or `provideStates`. It is shared between the NgModule and standalone APIs.
7
+ */
8
+ export function getFeatureProviders(states) {
9
+ return [
10
+ StateFactory,
11
+ PluginManager,
12
+ ...states,
13
+ {
14
+ provide: FEATURE_STATE_TOKEN,
15
+ multi: true,
16
+ useValue: states
17
+ }
18
+ ];
19
+ }
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1wcm92aWRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvc3RhbmRhbG9uZS1mZWF0dXJlcy9mZWF0dXJlLXByb3ZpZGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUV6RDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsbUJBQW1CLENBQUMsTUFBcUI7SUFDdkQsT0FBTztRQUNMLFlBQVk7UUFDWixhQUFhO1FBQ2IsR0FBRyxNQUFNO1FBQ1Q7WUFDRSxPQUFPLEVBQUUsbUJBQW1CO1lBQzVCLEtBQUssRUFBRSxJQUFJO1lBQ1gsUUFBUSxFQUFFLE1BQU07U0FDakI7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyDJtVN0YXRlQ2xhc3MgfSBmcm9tICdAbmd4cy9zdG9yZS9pbnRlcm5hbHMnO1xuXG5pbXBvcnQgeyBGRUFUVVJFX1NUQVRFX1RPS0VOIH0gZnJvbSAnLi4vc3ltYm9scyc7XG5pbXBvcnQgeyBQbHVnaW5NYW5hZ2VyIH0gZnJvbSAnLi4vcGx1Z2luLW1hbmFnZXInO1xuaW1wb3J0IHsgU3RhdGVGYWN0b3J5IH0gZnJvbSAnLi4vaW50ZXJuYWwvc3RhdGUtZmFjdG9yeSc7XG5cbi8qKlxuICogVGhpcyBmdW5jdGlvbiBwcm92aWRlcyB0aGUgcmVxdWlyZWQgcHJvdmlkZXJzIHdoZW4gY2FsbGluZyBgTmd4c01vZHVsZS5mb3JGZWF0dXJlYFxuICogb3IgYHByb3ZpZGVTdGF0ZXNgLiBJdCBpcyBzaGFyZWQgYmV0d2VlbiB0aGUgTmdNb2R1bGUgYW5kIHN0YW5kYWxvbmUgQVBJcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEZlYXR1cmVQcm92aWRlcnMoc3RhdGVzOiDJtVN0YXRlQ2xhc3NbXSk6IFByb3ZpZGVyW10ge1xuICByZXR1cm4gW1xuICAgIFN0YXRlRmFjdG9yeSxcbiAgICBQbHVnaW5NYW5hZ2VyLFxuICAgIC4uLnN0YXRlcyxcbiAgICB7XG4gICAgICBwcm92aWRlOiBGRUFUVVJFX1NUQVRFX1RPS0VOLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgICB1c2VWYWx1ZTogc3RhdGVzXG4gICAgfVxuICBdO1xufVxuIl19
@@ -0,0 +1,5 @@
1
+ export { provideStore } from './provide-store';
2
+ export { provideStates } from './provide-states';
3
+ export { withNgxsPlugin } from './plugin';
4
+ export { withNgxsPreboot } from './preboot';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvc3RhbmRhbG9uZS1mZWF0dXJlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFdBQVcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IHByb3ZpZGVTdG9yZSB9IGZyb20gJy4vcHJvdmlkZS1zdG9yZSc7XG5leHBvcnQgeyBwcm92aWRlU3RhdGVzIH0gZnJvbSAnLi9wcm92aWRlLXN0YXRlcyc7XG5leHBvcnQgeyB3aXRoTmd4c1BsdWdpbiB9IGZyb20gJy4vcGx1Z2luJztcbmV4cG9ydCB7IHdpdGhOZ3hzUHJlYm9vdCB9IGZyb20gJy4vcHJlYm9vdCc7XG4iXX0=