@ngxs/store 3.7.3 → 3.7.4-dev.master-327646e

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 (270) hide show
  1. package/README.md +16 -16
  2. package/bundles/ngxs-store-internals-testing.umd.js +318 -215
  3. package/bundles/ngxs-store-internals-testing.umd.js.map +1 -1
  4. package/bundles/ngxs-store-internals-testing.umd.min.js +1 -1
  5. package/bundles/ngxs-store-internals-testing.umd.min.js.map +1 -1
  6. package/bundles/ngxs-store-internals.umd.js +398 -211
  7. package/bundles/ngxs-store-internals.umd.js.map +1 -1
  8. package/bundles/ngxs-store-internals.umd.min.js +1 -1
  9. package/bundles/ngxs-store-internals.umd.min.js.map +1 -1
  10. package/bundles/ngxs-store-operators.umd.js +311 -310
  11. package/bundles/ngxs-store-operators.umd.js.map +1 -1
  12. package/bundles/ngxs-store-operators.umd.min.js +1 -1
  13. package/bundles/ngxs-store-operators.umd.min.js.map +1 -1
  14. package/bundles/ngxs-store.umd.js +4496 -4519
  15. package/bundles/ngxs-store.umd.js.map +1 -1
  16. package/bundles/ngxs-store.umd.min.js +1 -1
  17. package/bundles/ngxs-store.umd.min.js.map +1 -1
  18. package/esm2015/index.js +13 -13
  19. package/esm2015/internals/angular.js +20 -40
  20. package/esm2015/internals/decorator-injector-adapter.js +204 -0
  21. package/esm2015/internals/index.js +11 -10
  22. package/esm2015/internals/initial-state.js +34 -34
  23. package/esm2015/internals/internal-tokens.js +16 -16
  24. package/esm2015/internals/memoize.js +70 -70
  25. package/esm2015/internals/ngxs-bootstrapper.js +41 -41
  26. package/esm2015/internals/ngxs-store-internals.js +9 -9
  27. package/esm2015/internals/src/symbols.js +14 -14
  28. package/esm2015/internals/symbols.js +14 -14
  29. package/esm2015/internals/testing/fresh-platform.js +110 -71
  30. package/esm2015/internals/testing/helpers/ngxs-test.component.js +22 -22
  31. package/esm2015/internals/testing/helpers/ngxs-test.module.js +24 -24
  32. package/esm2015/internals/testing/index.js +8 -7
  33. package/esm2015/internals/testing/ngxs-store-internals-testing.js +9 -9
  34. package/esm2015/internals/testing/ngxs.setup.js +76 -76
  35. package/esm2015/internals/testing/skip-console-logging.js +62 -0
  36. package/esm2015/internals/testing/symbol.js +29 -29
  37. package/esm2015/ngxs-store.js +23 -27
  38. package/esm2015/operators/append.js +31 -31
  39. package/esm2015/operators/compose.js +24 -24
  40. package/esm2015/operators/iif.js +56 -56
  41. package/esm2015/operators/index.js +18 -18
  42. package/esm2015/operators/insert-item.js +41 -41
  43. package/esm2015/operators/internals.js +5 -5
  44. package/esm2015/operators/ngxs-store-operators.js +8 -8
  45. package/esm2015/operators/patch.js +38 -39
  46. package/esm2015/operators/remove-item.js +34 -34
  47. package/esm2015/operators/update-item.js +54 -52
  48. package/esm2015/operators/utils.js +50 -50
  49. package/esm2015/src/actions/actions.js +39 -39
  50. package/esm2015/src/actions/symbols.js +39 -39
  51. package/esm2015/src/actions-stream.js +138 -140
  52. package/esm2015/src/configs/messages.config.js +79 -87
  53. package/esm2015/src/decorators/action.js +48 -44
  54. package/esm2015/src/decorators/select/select-factory.js +49 -46
  55. package/esm2015/src/decorators/select/select.js +81 -45
  56. package/esm2015/src/decorators/select/symbols.js +94 -50
  57. package/esm2015/src/decorators/selector/selector.js +59 -55
  58. package/esm2015/src/decorators/selector/symbols.js +5 -5
  59. package/esm2015/src/decorators/selector-options.js +34 -34
  60. package/esm2015/src/decorators/state.js +83 -75
  61. package/esm2015/src/execution/dispatch-outside-zone-ngxs-execution-strategy.js +103 -96
  62. package/esm2015/src/execution/internal-ngxs-execution-strategy.js +45 -45
  63. package/esm2015/src/execution/noop-ngxs-execution-strategy.js +29 -27
  64. package/esm2015/src/execution/symbols.js +52 -29
  65. package/esm2015/src/internal/dispatcher.js +217 -217
  66. package/esm2015/src/internal/internals.js +493 -489
  67. package/esm2015/src/internal/lifecycle-state-manager.js +129 -129
  68. package/esm2015/src/internal/state-context-factory.js +138 -138
  69. package/esm2015/src/internal/state-factory.js +449 -429
  70. package/esm2015/src/internal/state-operations.js +133 -125
  71. package/esm2015/src/internal/state-operators.js +33 -33
  72. package/esm2015/src/internal/state-stream.js +30 -21
  73. package/esm2015/src/ivy/ivy-enabled-in-dev-mode.js +28 -40
  74. package/esm2015/src/module.js +157 -172
  75. package/esm2015/src/modules/ngxs-feature.module.js +63 -63
  76. package/esm2015/src/modules/ngxs-root.module.js +52 -52
  77. package/esm2015/src/operators/leave-ngxs.js +58 -58
  78. package/esm2015/src/operators/of-action.js +197 -191
  79. package/esm2015/src/plugin-manager.js +70 -70
  80. package/esm2015/src/plugin_api.js +10 -10
  81. package/esm2015/src/public_api.js +29 -29
  82. package/esm2015/src/public_to_deprecate.js +64 -64
  83. package/esm2015/src/state-token/state-token.js +45 -45
  84. package/esm2015/src/state-token/symbols.js +5 -5
  85. package/esm2015/src/store.js +190 -174
  86. package/esm2015/src/symbols.js +220 -221
  87. package/esm2015/src/utils/compose.js +44 -44
  88. package/esm2015/src/utils/freeze.js +35 -35
  89. package/esm2015/src/utils/selector-utils.js +221 -221
  90. package/esm2015/src/utils/store-validators.js +60 -65
  91. package/esm2015/src/utils/utils.js +143 -143
  92. package/esm5/index.js +13 -13
  93. package/esm5/internals/angular.js +20 -40
  94. package/esm5/internals/decorator-injector-adapter.js +204 -0
  95. package/esm5/internals/index.js +11 -10
  96. package/esm5/internals/initial-state.js +45 -45
  97. package/esm5/internals/internal-tokens.js +16 -16
  98. package/esm5/internals/memoize.js +71 -71
  99. package/esm5/internals/ngxs-bootstrapper.js +56 -56
  100. package/esm5/internals/ngxs-store-internals.js +9 -9
  101. package/esm5/internals/src/symbols.js +14 -14
  102. package/esm5/internals/symbols.js +14 -14
  103. package/esm5/internals/testing/fresh-platform.js +121 -81
  104. package/esm5/internals/testing/helpers/ngxs-test.component.js +32 -32
  105. package/esm5/internals/testing/helpers/ngxs-test.module.js +32 -32
  106. package/esm5/internals/testing/index.js +8 -7
  107. package/esm5/internals/testing/ngxs-store-internals-testing.js +9 -9
  108. package/esm5/internals/testing/ngxs.setup.js +98 -98
  109. package/esm5/internals/testing/skip-console-logging.js +62 -0
  110. package/esm5/internals/testing/symbol.js +29 -29
  111. package/esm5/ngxs-store.js +23 -27
  112. package/esm5/operators/append.js +31 -31
  113. package/esm5/operators/compose.js +28 -28
  114. package/esm5/operators/iif.js +56 -56
  115. package/esm5/operators/index.js +18 -18
  116. package/esm5/operators/insert-item.js +41 -41
  117. package/esm5/operators/internals.js +5 -5
  118. package/esm5/operators/ngxs-store-operators.js +8 -8
  119. package/esm5/operators/patch.js +39 -40
  120. package/esm5/operators/remove-item.js +34 -34
  121. package/esm5/operators/update-item.js +54 -52
  122. package/esm5/operators/utils.js +50 -50
  123. package/esm5/src/actions/actions.js +62 -62
  124. package/esm5/src/actions/symbols.js +39 -39
  125. package/esm5/src/actions-stream.js +184 -186
  126. package/esm5/src/configs/messages.config.js +79 -104
  127. package/esm5/src/decorators/action.js +60 -56
  128. package/esm5/src/decorators/select/select-factory.js +50 -47
  129. package/esm5/src/decorators/select/select.js +87 -50
  130. package/esm5/src/decorators/select/symbols.js +95 -51
  131. package/esm5/src/decorators/selector/selector.js +59 -55
  132. package/esm5/src/decorators/selector/symbols.js +5 -5
  133. package/esm5/src/decorators/selector-options.js +34 -34
  134. package/esm5/src/decorators/state.js +84 -76
  135. package/esm5/src/execution/dispatch-outside-zone-ngxs-execution-strategy.js +123 -121
  136. package/esm5/src/execution/internal-ngxs-execution-strategy.js +54 -54
  137. package/esm5/src/execution/noop-ngxs-execution-strategy.js +43 -41
  138. package/esm5/src/execution/symbols.js +52 -29
  139. package/esm5/src/internal/dispatcher.js +253 -253
  140. package/esm5/src/internal/internals.js +495 -491
  141. package/esm5/src/internal/lifecycle-state-manager.js +177 -177
  142. package/esm5/src/internal/state-context-factory.js +146 -146
  143. package/esm5/src/internal/state-factory.js +575 -563
  144. package/esm5/src/internal/state-operations.js +143 -139
  145. package/esm5/src/internal/state-operators.js +34 -34
  146. package/esm5/src/internal/state-stream.js +37 -25
  147. package/esm5/src/ivy/ivy-enabled-in-dev-mode.js +28 -40
  148. package/esm5/src/module.js +200 -215
  149. package/esm5/src/modules/ngxs-feature.module.js +65 -65
  150. package/esm5/src/modules/ngxs-root.module.js +47 -47
  151. package/esm5/src/operators/leave-ngxs.js +58 -58
  152. package/esm5/src/operators/of-action.js +223 -217
  153. package/esm5/src/plugin-manager.js +82 -82
  154. package/esm5/src/plugin_api.js +10 -10
  155. package/esm5/src/public_api.js +29 -29
  156. package/esm5/src/public_to_deprecate.js +64 -64
  157. package/esm5/src/state-token/state-token.js +57 -57
  158. package/esm5/src/state-token/symbols.js +5 -5
  159. package/esm5/src/store.js +241 -225
  160. package/esm5/src/symbols.js +229 -230
  161. package/esm5/src/utils/compose.js +55 -55
  162. package/esm5/src/utils/freeze.js +35 -35
  163. package/esm5/src/utils/selector-utils.js +230 -230
  164. package/esm5/src/utils/store-validators.js +78 -86
  165. package/esm5/src/utils/utils.js +151 -151
  166. package/fesm2015/ngxs-store-internals-testing.js +278 -177
  167. package/fesm2015/ngxs-store-internals-testing.js.map +1 -1
  168. package/fesm2015/ngxs-store-internals.js +378 -194
  169. package/fesm2015/ngxs-store-internals.js.map +1 -1
  170. package/fesm2015/ngxs-store-operators.js +313 -312
  171. package/fesm2015/ngxs-store-operators.js.map +1 -1
  172. package/fesm2015/ngxs-store.js +3999 -3979
  173. package/fesm2015/ngxs-store.js.map +1 -1
  174. package/fesm5/ngxs-store-internals-testing.js +325 -223
  175. package/fesm5/ngxs-store-internals-testing.js.map +1 -1
  176. package/fesm5/ngxs-store-internals.js +403 -219
  177. package/fesm5/ngxs-store-internals.js.map +1 -1
  178. package/fesm5/ngxs-store-operators.js +317 -316
  179. package/fesm5/ngxs-store-operators.js.map +1 -1
  180. package/fesm5/ngxs-store.js +4494 -4512
  181. package/fesm5/ngxs-store.js.map +1 -1
  182. package/index.d.ts +8 -8
  183. package/internals/angular.d.ts +1 -3
  184. package/internals/decorator-injector-adapter.d.ts +15 -0
  185. package/internals/index.d.ts +7 -6
  186. package/internals/initial-state.d.ts +8 -8
  187. package/internals/internal-tokens.d.ts +9 -9
  188. package/internals/memoize.d.ts +9 -9
  189. package/internals/ngxs-bootstrapper.d.ts +13 -13
  190. package/internals/ngxs-store-internals.d.ts +4 -4
  191. package/internals/ngxs-store-internals.metadata.json +1 -1
  192. package/internals/src/symbols.d.ts +7 -7
  193. package/internals/symbols.d.ts +7 -7
  194. package/internals/testing/fresh-platform.d.ts +1 -1
  195. package/internals/testing/helpers/ngxs-test.component.d.ts +5 -5
  196. package/internals/testing/helpers/ngxs-test.module.d.ts +4 -4
  197. package/internals/testing/index.d.ts +4 -3
  198. package/internals/testing/ngxs-store-internals-testing.d.ts +4 -4
  199. package/internals/testing/ngxs-store-internals-testing.metadata.json +1 -1
  200. package/internals/testing/ngxs.setup.d.ts +7 -7
  201. package/internals/testing/skip-console-logging.d.ts +1 -0
  202. package/internals/testing/symbol.d.ts +14 -14
  203. package/ngxs-store.d.ts +19 -23
  204. package/ngxs-store.metadata.json +1 -1
  205. package/operators/append.d.ts +6 -6
  206. package/operators/compose.d.ts +3 -2
  207. package/operators/iif.d.ts +11 -11
  208. package/operators/index.d.ts +13 -13
  209. package/operators/insert-item.d.ts +7 -7
  210. package/operators/internals.d.ts +2 -2
  211. package/operators/ngxs-store-operators.d.ts +4 -4
  212. package/operators/ngxs-store-operators.metadata.json +1 -1
  213. package/operators/patch.d.ts +6 -10
  214. package/operators/remove-item.d.ts +7 -7
  215. package/operators/update-item.d.ts +10 -10
  216. package/operators/utils.d.ts +10 -9
  217. package/package.json +3 -3
  218. package/src/actions/actions.d.ts +15 -15
  219. package/src/actions/symbols.d.ts +21 -21
  220. package/src/actions-stream.d.ts +49 -49
  221. package/src/configs/messages.config.d.ts +11 -30
  222. package/src/decorators/action.d.ts +5 -5
  223. package/src/decorators/select/select-factory.d.ts +13 -14
  224. package/src/decorators/select/select.d.ts +4 -4
  225. package/src/decorators/select/symbols.d.ts +14 -10
  226. package/src/decorators/selector/selector.d.ts +5 -5
  227. package/src/decorators/selector/symbols.d.ts +4 -4
  228. package/src/decorators/selector-options.d.ts +5 -5
  229. package/src/decorators/state.d.ts +6 -6
  230. package/src/execution/dispatch-outside-zone-ngxs-execution-strategy.d.ts +11 -12
  231. package/src/execution/internal-ngxs-execution-strategy.d.ts +7 -7
  232. package/src/execution/noop-ngxs-execution-strategy.d.ts +5 -5
  233. package/src/execution/symbols.d.ts +10 -6
  234. package/src/internal/dispatcher.d.ts +32 -32
  235. package/src/internal/internals.d.ts +166 -167
  236. package/src/internal/lifecycle-state-manager.d.ts +20 -20
  237. package/src/internal/state-context-factory.d.ts +15 -15
  238. package/src/internal/state-factory.d.ts +57 -58
  239. package/src/internal/state-operations.d.ts +19 -21
  240. package/src/internal/state-operators.d.ts +2 -2
  241. package/src/internal/state-stream.d.ts +11 -9
  242. package/src/ivy/ivy-enabled-in-dev-mode.d.ts +6 -14
  243. package/src/module.d.ts +23 -23
  244. package/src/modules/ngxs-feature.module.d.ts +13 -13
  245. package/src/modules/ngxs-root.module.d.ts +13 -13
  246. package/src/operators/leave-ngxs.d.ts +7 -7
  247. package/src/operators/of-action.d.ts +56 -43
  248. package/src/plugin-manager.d.ts +10 -10
  249. package/src/plugin_api.d.ts +5 -5
  250. package/src/public_api.d.ts +17 -17
  251. package/src/public_to_deprecate.d.ts +21 -21
  252. package/src/state-token/state-token.d.ts +7 -7
  253. package/src/state-token/symbols.d.ts +5 -5
  254. package/src/store.d.ts +59 -53
  255. package/src/symbols.d.ts +138 -137
  256. package/src/utils/compose.d.ts +23 -23
  257. package/src/utils/freeze.d.ts +5 -5
  258. package/src/utils/selector-utils.d.ts +23 -23
  259. package/src/utils/store-validators.d.ts +7 -8
  260. package/src/utils/utils.d.ts +46 -46
  261. package/types/index.d.ts +2 -2
  262. package/esm2015/src/host-environment/host-environment.js +0 -31
  263. package/esm2015/src/internal/config-validator.js +0 -67
  264. package/esm2015/src/ivy/ensure-state-class-is-injectable.js +0 -34
  265. package/esm5/src/host-environment/host-environment.js +0 -29
  266. package/esm5/src/internal/config-validator.js +0 -76
  267. package/esm5/src/ivy/ensure-state-class-is-injectable.js +0 -34
  268. package/src/host-environment/host-environment.d.ts +0 -6
  269. package/src/internal/config-validator.d.ts +0 -10
  270. package/src/ivy/ensure-state-class-is-injectable.d.ts +0 -6
@@ -1,14 +1,6 @@
1
- import { ReplaySubject } from 'rxjs';
2
- export declare const ivyEnabledInDevMode$: ReplaySubject<boolean>;
3
- /**
4
- * Ivy exposes helper functions to the global `window.ng` object.
5
- * Those functions are `getComponent, getContext,
6
- * getListeners, getViewComponent, getHostElement, getInjector,
7
- * getRootComponents, getDirectives, getDebugNode`
8
- * Previously, old view engine exposed `window.ng.coreTokens` and
9
- * `window.ng.probe` if an application was in development/production.
10
- * Ivy doesn't expose these functions in production. Developers will be able
11
- * to see warnings in both JIT/AOT modes, but only if an application
12
- * is in development.
13
- */
14
- export declare function setIvyEnabledInDevMode(): void;
1
+ /**
2
+ * All provided or injected tokens must have `@Injectable` decorator
3
+ * (previously, injected tokens without `@Injectable` were allowed
4
+ * if another decorator was used, e.g. pipes).
5
+ */
6
+ export declare function ensureStateClassIsInjectable(target: any): void;
package/src/module.d.ts CHANGED
@@ -1,23 +1,23 @@
1
- import { ModuleWithProviders } from '@angular/core';
2
- import { StateClass } from '@ngxs/store/internals';
3
- import { NgxsModuleOptions } from './symbols';
4
- import { NgxsRootModule } from './modules/ngxs-root.module';
5
- import { NgxsFeatureModule } from './modules/ngxs-feature.module';
6
- /**
7
- * Ngxs Module
8
- */
9
- export declare class NgxsModule {
10
- private static readonly ROOT_OPTIONS;
11
- /**
12
- * Root module factory
13
- */
14
- static forRoot(states?: StateClass[], options?: NgxsModuleOptions): ModuleWithProviders<NgxsRootModule>;
15
- /**
16
- * Feature module factory
17
- */
18
- static forFeature(states?: StateClass[]): ModuleWithProviders<NgxsFeatureModule>;
19
- private static ngxsTokenProviders;
20
- private static ngxsConfigFactory;
21
- private static appBootstrapListenerFactory;
22
- private static getInitialState;
23
- }
1
+ import { ModuleWithProviders } from '@angular/core';
2
+ import { StateClass } from '@ngxs/store/internals';
3
+ import { NgxsModuleOptions } from './symbols';
4
+ import { NgxsRootModule } from './modules/ngxs-root.module';
5
+ import { NgxsFeatureModule } from './modules/ngxs-feature.module';
6
+ /**
7
+ * Ngxs Module
8
+ */
9
+ export declare class NgxsModule {
10
+ private static readonly ROOT_OPTIONS;
11
+ /**
12
+ * Root module factory
13
+ */
14
+ static forRoot(states?: StateClass[], options?: NgxsModuleOptions): ModuleWithProviders<NgxsRootModule>;
15
+ /**
16
+ * Feature module factory
17
+ */
18
+ static forFeature(states?: StateClass[]): ModuleWithProviders<NgxsFeatureModule>;
19
+ private static ngxsTokenProviders;
20
+ private static ngxsConfigFactory;
21
+ private static appBootstrapListenerFactory;
22
+ private static getInitialState;
23
+ }
@@ -1,13 +1,13 @@
1
- import { Store } from '../store';
2
- import { InternalStateOperations } from '../internal/state-operations';
3
- import { StateFactory } from '../internal/state-factory';
4
- import { LifecycleStateManager } from '../internal/lifecycle-state-manager';
5
- import { StateClassInternal } from '../internal/internals';
6
- /**
7
- * Feature module
8
- * @ignore
9
- */
10
- export declare class NgxsFeatureModule {
11
- constructor(_store: Store, internalStateOperations: InternalStateOperations, factory: StateFactory, states: StateClassInternal<any, any>[][] | undefined, lifecycleStateManager: LifecycleStateManager);
12
- private static flattenStates;
13
- }
1
+ import { Store } from '../store';
2
+ import { InternalStateOperations } from '../internal/state-operations';
3
+ import { StateFactory } from '../internal/state-factory';
4
+ import { LifecycleStateManager } from '../internal/lifecycle-state-manager';
5
+ import { StateClassInternal } from '../internal/internals';
6
+ /**
7
+ * Feature module
8
+ * @ignore
9
+ */
10
+ export declare class NgxsFeatureModule {
11
+ constructor(_store: Store, internalStateOperations: InternalStateOperations, factory: StateFactory, states: StateClassInternal<any, any>[][] | undefined, lifecycleStateManager: LifecycleStateManager);
12
+ private static flattenStates;
13
+ }
@@ -1,13 +1,13 @@
1
- import { StateFactory } from '../internal/state-factory';
2
- import { InternalStateOperations } from '../internal/state-operations';
3
- import { Store } from '../store';
4
- import { SelectFactory } from '../decorators/select/select-factory';
5
- import { StateClassInternal } from '../internal/internals';
6
- import { LifecycleStateManager } from '../internal/lifecycle-state-manager';
7
- /**
8
- * Root module
9
- * @ignore
10
- */
11
- export declare class NgxsRootModule {
12
- constructor(factory: StateFactory, internalStateOperations: InternalStateOperations, _store: Store, _select: SelectFactory, states: StateClassInternal<any, any>[] | undefined, lifecycleStateManager: LifecycleStateManager);
13
- }
1
+ import { Injector } from '@angular/core';
2
+ import { StateFactory } from '../internal/state-factory';
3
+ import { InternalStateOperations } from '../internal/state-operations';
4
+ import { Store } from '../store';
5
+ import { StateClassInternal } from '../internal/internals';
6
+ import { LifecycleStateManager } from '../internal/lifecycle-state-manager';
7
+ /**
8
+ * Root module
9
+ * @ignore
10
+ */
11
+ export declare class NgxsRootModule {
12
+ constructor(factory: StateFactory, internalStateOperations: InternalStateOperations, _store: Store, injector: Injector, states: StateClassInternal<any, any>[] | undefined, lifecycleStateManager: LifecycleStateManager);
13
+ }
@@ -1,7 +1,7 @@
1
- import { MonoTypeOperatorFunction } from 'rxjs';
2
- import { NgxsExecutionStrategy } from '../execution/symbols';
3
- /**
4
- * Returns operator that will run
5
- * `subscribe` outside of the ngxs execution context
6
- */
7
- export declare function leaveNgxs<T>(ngxsExecutionStrategy: NgxsExecutionStrategy): MonoTypeOperatorFunction<T>;
1
+ import { MonoTypeOperatorFunction } from 'rxjs';
2
+ import { NgxsExecutionStrategy } from '../execution/symbols';
3
+ /**
4
+ * Returns operator that will run
5
+ * `subscribe` outside of the ngxs execution context
6
+ */
7
+ export declare function leaveNgxs<T>(ngxsExecutionStrategy: NgxsExecutionStrategy): MonoTypeOperatorFunction<T>;
@@ -1,43 +1,56 @@
1
- import { OperatorFunction } from 'rxjs';
2
- import { ActionType } from '../actions/symbols';
3
- import { ActionContext } from '../actions-stream';
4
- export interface ActionCompletion<T = any, E = Error> {
5
- action: T;
6
- result: {
7
- successful: boolean;
8
- canceled: boolean;
9
- error?: E;
10
- };
11
- }
12
- export declare function ofAction<T = any>(allowedType: ActionType): OperatorFunction<ActionContext, T>;
13
- export declare function ofAction<T = any>(...allowedTypes: ActionType[]): OperatorFunction<ActionContext, T>;
14
- /**
15
- * RxJS operator for selecting out specific actions.
16
- *
17
- * This will ONLY grab actions that have just been dispatched
18
- */
19
- export declare function ofActionDispatched(...allowedTypes: ActionType[]): OperatorFunction<ActionContext, any>;
20
- /**
21
- * RxJS operator for selecting out specific actions.
22
- *
23
- * This will ONLY grab actions that have just been successfully completed
24
- */
25
- export declare function ofActionSuccessful(...allowedTypes: ActionType[]): OperatorFunction<ActionContext, any>;
26
- /**
27
- * RxJS operator for selecting out specific actions.
28
- *
29
- * This will ONLY grab actions that have just been canceled
30
- */
31
- export declare function ofActionCanceled(...allowedTypes: ActionType[]): OperatorFunction<ActionContext, any>;
32
- /**
33
- * RxJS operator for selecting out specific actions.
34
- *
35
- * This will ONLY grab actions that have just been completed
36
- */
37
- export declare function ofActionCompleted(...allowedTypes: ActionType[]): OperatorFunction<ActionContext, ActionCompletion>;
38
- /**
39
- * RxJS operator for selecting out specific actions.
40
- *
41
- * This will ONLY grab actions that have just thrown an error
42
- */
43
- export declare function ofActionErrored(...allowedTypes: ActionType[]): OperatorFunction<ActionContext, any>;
1
+ import { OperatorFunction } from 'rxjs';
2
+ import { ActionType } from '../actions/symbols';
3
+ import { ActionContext } from '../actions-stream';
4
+ declare type TupleKeys<T extends any[]> = Exclude<keyof T, keyof []>;
5
+ /**
6
+ * Given a POJO, returns the POJO type, given a class constructor object, returns the type of the class.
7
+ *
8
+ * This utility type exists due to the complexity of ActionType being either an ActionDef class or the plain
9
+ * `{ type: string }` type (or similar compatible POJO types).
10
+ */
11
+ declare type Constructed<T> = T extends new (...args: any[]) => infer U ? U : T;
12
+ export interface ActionCompletion<T = any, E = Error> {
13
+ action: T;
14
+ result: {
15
+ successful: boolean;
16
+ canceled: boolean;
17
+ error?: E;
18
+ };
19
+ }
20
+ /**
21
+ * RxJS operator for selecting out specific actions.
22
+ *
23
+ * This will grab actions that have just been dispatched as well as actions that have completed
24
+ */
25
+ export declare function ofAction<T extends ActionType[]>(...allowedTypes: T): OperatorFunction<ActionContext<Constructed<T[TupleKeys<T>]>>, Constructed<T[TupleKeys<T>]>>;
26
+ /**
27
+ * RxJS operator for selecting out specific actions.
28
+ *
29
+ * This will ONLY grab actions that have just been dispatched
30
+ */
31
+ export declare function ofActionDispatched<T extends ActionType[]>(...allowedTypes: T): OperatorFunction<ActionContext<Constructed<T[TupleKeys<T>]>>, Constructed<T[TupleKeys<T>]>>;
32
+ /**
33
+ * RxJS operator for selecting out specific actions.
34
+ *
35
+ * This will ONLY grab actions that have just been successfully completed
36
+ */
37
+ export declare function ofActionSuccessful<T extends ActionType[]>(...allowedTypes: T): OperatorFunction<ActionContext<Constructed<T[TupleKeys<T>]>>, Constructed<T[TupleKeys<T>]>>;
38
+ /**
39
+ * RxJS operator for selecting out specific actions.
40
+ *
41
+ * This will ONLY grab actions that have just been canceled
42
+ */
43
+ export declare function ofActionCanceled<T extends ActionType[]>(...allowedTypes: T): OperatorFunction<ActionContext<Constructed<T[TupleKeys<T>]>>, Constructed<T[TupleKeys<T>]>>;
44
+ /**
45
+ * RxJS operator for selecting out specific actions.
46
+ *
47
+ * This will ONLY grab actions that have just been completed
48
+ */
49
+ export declare function ofActionCompleted<T extends ActionType[]>(...allowedTypes: T): OperatorFunction<ActionContext<Constructed<T[TupleKeys<T>]>>, ActionCompletion<Constructed<T[TupleKeys<T>]>>>;
50
+ /**
51
+ * RxJS operator for selecting out specific actions.
52
+ *
53
+ * This will ONLY grab actions that have just thrown an error
54
+ */
55
+ export declare function ofActionErrored<T extends ActionType[]>(...allowedTypes: T): OperatorFunction<ActionContext<Constructed<T[TupleKeys<T>]>>, Constructed<T[TupleKeys<T>]>>;
56
+ export {};
@@ -1,10 +1,10 @@
1
- import { NgxsPlugin, NgxsPluginFn } from './symbols';
2
- export declare class PluginManager {
3
- private _parentManager;
4
- private _pluginHandlers;
5
- plugins: NgxsPluginFn[];
6
- constructor(_parentManager: PluginManager, _pluginHandlers: NgxsPlugin[]);
7
- private readonly rootPlugins;
8
- private registerHandlers;
9
- private getPluginHandlers;
10
- }
1
+ import { NgxsPlugin, NgxsPluginFn } from './symbols';
2
+ export declare class PluginManager {
3
+ private _parentManager;
4
+ private _pluginHandlers;
5
+ plugins: NgxsPluginFn[];
6
+ constructor(_parentManager: PluginManager, _pluginHandlers: NgxsPlugin[]);
7
+ private readonly rootPlugins;
8
+ private registerHandlers;
9
+ private getPluginHandlers;
10
+ }
@@ -1,5 +1,5 @@
1
- export { NgxsModule } from './module';
2
- export { NGXS_PLUGINS, NgxsPlugin, NgxsPluginFn, NgxsNextPluginFn } from './symbols';
3
- export { StateStream } from './internal/state-stream';
4
- export { getActionTypeFromInstance, setValue, getValue } from './utils/utils';
5
- export { InitState, UpdateState } from './actions/actions';
1
+ export { NgxsModule } from './module';
2
+ export { NGXS_PLUGINS, NgxsPlugin, NgxsPluginFn, NgxsNextPluginFn } from './symbols';
3
+ export { StateStream } from './internal/state-stream';
4
+ export { getActionTypeFromInstance, setValue, getValue } from './utils/utils';
5
+ export { InitState, UpdateState } from './actions/actions';
@@ -1,17 +1,17 @@
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 { getSelectorMetadata, getStoreMetadata, ensureStoreMetadata, ensureSelectorMetadata } from './public_to_deprecate';
9
- export { ofAction, ofActionDispatched, ofActionSuccessful, ofActionCanceled, ofActionErrored, ofActionCompleted, ActionCompletion } from './operators/of-action';
10
- export { StateContext, StateOperator, NgxsOnInit, NgxsAfterBootstrap, NgxsOnChanges, NgxsModuleOptions, NgxsSimpleChange } from './symbols';
11
- export { Selector } from './decorators/selector/selector';
12
- export { getActionTypeFromInstance, actionMatcher } from './utils/utils';
13
- export { createSelector } from './utils/selector-utils';
14
- export { NgxsExecutionStrategy } from './execution/symbols';
15
- export { ActionType, ActionOptions } from './actions/symbols';
16
- export { NoopNgxsExecutionStrategy } from './execution/noop-ngxs-execution-strategy';
17
- export { StateToken } from './state-token/state-token';
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, ActionContext, ActionStatus } from './actions-stream';
8
+ export { getSelectorMetadata, getStoreMetadata, ensureStoreMetadata, ensureSelectorMetadata } from './public_to_deprecate';
9
+ export { ofAction, ofActionDispatched, ofActionSuccessful, ofActionCanceled, ofActionErrored, ofActionCompleted, ActionCompletion } from './operators/of-action';
10
+ export { StateContext, StateOperator, NgxsOnInit, NgxsAfterBootstrap, NgxsOnChanges, NgxsModuleOptions, NgxsSimpleChange } from './symbols';
11
+ export { Selector } from './decorators/selector/selector';
12
+ export { getActionTypeFromInstance, actionMatcher } from './utils/utils';
13
+ export { createSelector } from './utils/selector-utils';
14
+ export { NgxsExecutionStrategy } from './execution/symbols';
15
+ export { ActionType, ActionOptions } from './actions/symbols';
16
+ export { NoopNgxsExecutionStrategy } from './execution/noop-ngxs-execution-strategy';
17
+ export { StateToken } from './state-token/state-token';
@@ -1,21 +1,21 @@
1
- import { StateClassInternal, SharedSelectorOptions } from './internal/internals';
2
- import { PlainObjectOf } from '../internals/src/symbols';
3
- import { ActionHandlerMetaData } from './actions/symbols';
4
- interface MetaDataModel {
5
- name: string | null;
6
- actions: PlainObjectOf<ActionHandlerMetaData[]>;
7
- defaults: any;
8
- path: string | null;
9
- children?: StateClassInternal[];
10
- }
11
- interface SelectorMetaDataModel {
12
- originalFn: Function | null;
13
- containerClass: any;
14
- selectorName: string | null;
15
- getSelectorOptions: () => SharedSelectorOptions;
16
- }
17
- export declare function ensureStoreMetadata(target: StateClassInternal<any, any>): MetaDataModel;
18
- export declare function getStoreMetadata(target: StateClassInternal<any, any>): MetaDataModel;
19
- export declare function ensureSelectorMetadata(target: Function): SelectorMetaDataModel;
20
- export declare function getSelectorMetadata(target: any): SelectorMetaDataModel;
21
- export {};
1
+ import { StateClassInternal, SharedSelectorOptions } from './internal/internals';
2
+ import { PlainObjectOf } from '../internals/src/symbols';
3
+ import { ActionHandlerMetaData } from './actions/symbols';
4
+ interface MetaDataModel {
5
+ name: string | null;
6
+ actions: PlainObjectOf<ActionHandlerMetaData[]>;
7
+ defaults: any;
8
+ path: string | null;
9
+ children?: StateClassInternal[];
10
+ }
11
+ interface SelectorMetaDataModel {
12
+ originalFn: Function | null;
13
+ containerClass: any;
14
+ selectorName: string | null;
15
+ getSelectorOptions: () => SharedSelectorOptions;
16
+ }
17
+ export declare function ensureStoreMetadata(target: StateClassInternal<any, any>): MetaDataModel;
18
+ export declare function getStoreMetadata(target: StateClassInternal<any, any>): MetaDataModel;
19
+ export declare function ensureSelectorMetadata(target: Function): SelectorMetaDataModel;
20
+ export declare function getSelectorMetadata(target: any): SelectorMetaDataModel;
21
+ export {};
@@ -1,7 +1,7 @@
1
- import { TokenName } from './symbols';
2
- export declare class StateToken<T = void> {
3
- private readonly name;
4
- constructor(name: TokenName<T>);
5
- getName(): string;
6
- toString(): string;
7
- }
1
+ import { TokenName } from './symbols';
2
+ export declare class StateToken<T = void> {
3
+ private readonly name;
4
+ constructor(name: TokenName<T>);
5
+ getName(): string;
6
+ toString(): string;
7
+ }
@@ -1,5 +1,5 @@
1
- import { StateToken } from './state-token';
2
- declare type RequireGeneric<T, U> = T extends void ? 'You must provide a type parameter' : U;
3
- export declare type TokenName<T> = string & RequireGeneric<T, string>;
4
- export declare type ExtractTokenType<P> = P extends StateToken<infer T> ? T : never;
5
- export {};
1
+ import { StateToken } from './state-token';
2
+ declare type RequireGeneric<T, U> = T extends void ? 'You must provide a type parameter' : U;
3
+ export declare type TokenName<T> = string & RequireGeneric<T, string>;
4
+ export declare type ExtractTokenType<P> = P extends StateToken<infer T> ? T : never;
5
+ export {};
package/src/store.d.ts CHANGED
@@ -1,53 +1,59 @@
1
- import { Type } from '@angular/core';
2
- import { Observable, Subscription } from 'rxjs';
3
- import { InternalNgxsExecutionStrategy } from './execution/internal-ngxs-execution-strategy';
4
- import { InternalStateOperations } from './internal/state-operations';
5
- import { StateStream } from './internal/state-stream';
6
- import { NgxsConfig } from './symbols';
7
- import { StateToken } from './state-token/state-token';
8
- import { StateFactory } from './internal/state-factory';
9
- export declare class Store {
10
- private _stateStream;
11
- private _internalStateOperations;
12
- private _config;
13
- private _internalExecutionStrategy;
14
- private _stateFactory;
15
- constructor(_stateStream: StateStream, _internalStateOperations: InternalStateOperations, _config: NgxsConfig, _internalExecutionStrategy: InternalNgxsExecutionStrategy, _stateFactory: StateFactory, initialStateValue: any);
16
- /**
17
- * Dispatches event(s).
18
- */
19
- dispatch(actionOrActions: any | any[]): Observable<any>;
20
- /**
21
- * Selects a slice of data from the store.
22
- */
23
- select<T>(selector: (state: any, ...states: any[]) => T): Observable<T>;
24
- select<T = any>(selector: string | Type<any>): Observable<T>;
25
- select<T>(selector: StateToken<T>): Observable<T>;
26
- /**
27
- * Select one slice of data from the store.
28
- */
29
- selectOnce<T>(selector: (state: any, ...states: any[]) => T): Observable<T>;
30
- selectOnce<T = any>(selector: string | Type<any>): Observable<T>;
31
- selectOnce<T>(selector: StateToken<T>): Observable<T>;
32
- /**
33
- * Select a snapshot from the state.
34
- */
35
- selectSnapshot<T>(selector: (state: any, ...states: any[]) => T): T;
36
- selectSnapshot<T = any>(selector: string | Type<any>): T;
37
- selectSnapshot<T>(selector: StateToken<T>): T;
38
- /**
39
- * Allow the user to subscribe to the root of the state
40
- */
41
- subscribe(fn?: (value: any) => void): Subscription;
42
- /**
43
- * Return the raw value of the state.
44
- */
45
- snapshot(): any;
46
- /**
47
- * Reset the state to a specific point in time. This method is useful
48
- * for plugin's who need to modify the state directly or unit testing.
49
- */
50
- reset(state: any): any;
51
- private getStoreBoundSelectorFn;
52
- private initStateStream;
53
- }
1
+ import { Type } from '@angular/core';
2
+ import { Observable, Subscription } from 'rxjs';
3
+ import { InternalNgxsExecutionStrategy } from './execution/internal-ngxs-execution-strategy';
4
+ import { InternalStateOperations } from './internal/state-operations';
5
+ import { StateStream } from './internal/state-stream';
6
+ import { NgxsConfig } from './symbols';
7
+ import { StateToken } from './state-token/state-token';
8
+ import { StateFactory } from './internal/state-factory';
9
+ export declare class Store {
10
+ private _stateStream;
11
+ private _internalStateOperations;
12
+ private _config;
13
+ private _internalExecutionStrategy;
14
+ private _stateFactory;
15
+ /**
16
+ * This is a derived state stream that leaves NGXS execution strategy to emit state changes within the Angular zone,
17
+ * because state is being changed actually within the `<root>` zone, see `InternalDispatcher#dispatchSingle`.
18
+ * All selects would use this stream, and it would call leave only once for any state change across all active selectors.
19
+ */
20
+ private _selectableStateStream;
21
+ constructor(_stateStream: StateStream, _internalStateOperations: InternalStateOperations, _config: NgxsConfig, _internalExecutionStrategy: InternalNgxsExecutionStrategy, _stateFactory: StateFactory, initialStateValue: any);
22
+ /**
23
+ * Dispatches event(s).
24
+ */
25
+ dispatch(actionOrActions: any | any[]): Observable<any>;
26
+ /**
27
+ * Selects a slice of data from the store.
28
+ */
29
+ select<T>(selector: (state: any, ...states: any[]) => T): Observable<T>;
30
+ select<T = any>(selector: string | Type<any>): Observable<T>;
31
+ select<T>(selector: StateToken<T>): Observable<T>;
32
+ /**
33
+ * Select one slice of data from the store.
34
+ */
35
+ selectOnce<T>(selector: (state: any, ...states: any[]) => T): Observable<T>;
36
+ selectOnce<T = any>(selector: string | Type<any>): Observable<T>;
37
+ selectOnce<T>(selector: StateToken<T>): Observable<T>;
38
+ /**
39
+ * Select a snapshot from the state.
40
+ */
41
+ selectSnapshot<T>(selector: (state: any, ...states: any[]) => T): T;
42
+ selectSnapshot<T = any>(selector: string | Type<any>): T;
43
+ selectSnapshot<T>(selector: StateToken<T>): T;
44
+ /**
45
+ * Allow the user to subscribe to the root of the state
46
+ */
47
+ subscribe(fn?: (value: any) => void): Subscription;
48
+ /**
49
+ * Return the raw value of the state.
50
+ */
51
+ snapshot(): any;
52
+ /**
53
+ * Reset the state to a specific point in time. This method is useful
54
+ * for plugin's who need to modify the state directly or unit testing.
55
+ */
56
+ reset(state: any): any;
57
+ private getStoreBoundSelectorFn;
58
+ private initStateStream;
59
+ }