@ngxs/store 3.7.2 → 3.7.3-dev.master-8834f50

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 (268) hide show
  1. package/README.md +16 -16
  2. package/bundles/ngxs-store-internals-testing.umd.js +475 -0
  3. package/bundles/ngxs-store-internals-testing.umd.js.map +1 -0
  4. package/bundles/ngxs-store-internals-testing.umd.min.js +16 -0
  5. package/bundles/ngxs-store-internals-testing.umd.min.js.map +1 -0
  6. package/bundles/ngxs-store-internals.umd.js +422 -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 +4422 -4518
  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 +46 -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 +90 -0
  30. package/esm2015/internals/testing/helpers/ngxs-test.component.js +22 -0
  31. package/esm2015/internals/testing/helpers/ngxs-test.module.js +24 -0
  32. package/esm2015/internals/testing/index.js +7 -0
  33. package/esm2015/internals/testing/ngxs-store-internals-testing.js +9 -0
  34. package/esm2015/internals/testing/ngxs.setup.js +76 -0
  35. package/esm2015/internals/testing/symbol.js +29 -0
  36. package/esm2015/ngxs-store.js +24 -27
  37. package/esm2015/operators/append.js +31 -31
  38. package/esm2015/operators/compose.js +24 -24
  39. package/esm2015/operators/iif.js +56 -56
  40. package/esm2015/operators/index.js +18 -18
  41. package/esm2015/operators/insert-item.js +41 -41
  42. package/esm2015/operators/internals.js +5 -5
  43. package/esm2015/operators/ngxs-store-operators.js +8 -8
  44. package/esm2015/operators/patch.js +38 -39
  45. package/esm2015/operators/remove-item.js +34 -34
  46. package/esm2015/operators/update-item.js +54 -52
  47. package/esm2015/operators/utils.js +50 -50
  48. package/esm2015/src/actions/actions.js +39 -39
  49. package/esm2015/src/actions/symbols.js +39 -39
  50. package/esm2015/src/actions-stream.js +138 -140
  51. package/esm2015/src/configs/messages.config.js +79 -87
  52. package/esm2015/src/decorators/action.js +48 -44
  53. package/esm2015/src/decorators/select/select-factory.js +49 -46
  54. package/esm2015/src/decorators/select/select.js +80 -45
  55. package/esm2015/src/decorators/select/symbols.js +94 -50
  56. package/esm2015/src/decorators/selector/selector.js +59 -55
  57. package/esm2015/src/decorators/selector/symbols.js +5 -5
  58. package/esm2015/src/decorators/selector-options.js +34 -34
  59. package/esm2015/src/decorators/state.js +83 -75
  60. package/esm2015/src/execution/dispatch-outside-zone-ngxs-execution-strategy.js +101 -96
  61. package/esm2015/src/execution/internal-ngxs-execution-strategy.js +45 -45
  62. package/esm2015/src/execution/noop-ngxs-execution-strategy.js +27 -27
  63. package/esm2015/src/execution/symbols.js +29 -29
  64. package/esm2015/src/internal/dispatcher.js +217 -217
  65. package/esm2015/src/internal/internals.js +493 -489
  66. package/esm2015/src/internal/lifecycle-state-manager.js +129 -129
  67. package/esm2015/src/internal/state-context-factory.js +138 -138
  68. package/esm2015/src/internal/state-factory.js +449 -429
  69. package/esm2015/src/internal/state-operations.js +120 -125
  70. package/esm2015/src/internal/state-operators.js +33 -33
  71. package/esm2015/src/internal/state-stream.js +21 -21
  72. package/esm2015/src/ivy/ivy-enabled-in-dev-mode.js +28 -40
  73. package/esm2015/src/module.js +158 -172
  74. package/esm2015/src/modules/ngxs-feature.module.js +63 -63
  75. package/esm2015/src/modules/ngxs-root.module.js +52 -52
  76. package/esm2015/src/operators/leave-ngxs.js +58 -58
  77. package/esm2015/src/operators/of-action.js +191 -191
  78. package/esm2015/src/plugin-manager.js +70 -70
  79. package/esm2015/src/plugin_api.js +10 -10
  80. package/esm2015/src/public_api.js +29 -29
  81. package/esm2015/src/public_to_deprecate.js +64 -64
  82. package/esm2015/src/state-token/state-token.js +45 -45
  83. package/esm2015/src/state-token/symbols.js +5 -5
  84. package/esm2015/src/store.js +174 -174
  85. package/esm2015/src/symbols.js +217 -221
  86. package/esm2015/src/utils/compose.js +44 -44
  87. package/esm2015/src/utils/freeze.js +35 -35
  88. package/esm2015/src/utils/selector-utils.js +221 -221
  89. package/esm2015/src/utils/store-validators.js +60 -65
  90. package/esm2015/src/utils/utils.js +143 -143
  91. package/esm5/index.js +13 -13
  92. package/esm5/internals/angular.js +46 -40
  93. package/esm5/internals/decorator-injector-adapter.js +204 -0
  94. package/esm5/internals/index.js +11 -10
  95. package/esm5/internals/initial-state.js +45 -45
  96. package/esm5/internals/internal-tokens.js +16 -16
  97. package/esm5/internals/memoize.js +71 -71
  98. package/esm5/internals/ngxs-bootstrapper.js +56 -56
  99. package/esm5/internals/ngxs-store-internals.js +9 -9
  100. package/esm5/internals/src/symbols.js +14 -14
  101. package/esm5/internals/symbols.js +14 -14
  102. package/esm5/internals/testing/fresh-platform.js +101 -0
  103. package/esm5/internals/testing/helpers/ngxs-test.component.js +32 -0
  104. package/esm5/internals/testing/helpers/ngxs-test.module.js +32 -0
  105. package/esm5/internals/testing/index.js +7 -0
  106. package/esm5/internals/testing/ngxs-store-internals-testing.js +9 -0
  107. package/esm5/internals/testing/ngxs.setup.js +98 -0
  108. package/esm5/internals/testing/symbol.js +29 -0
  109. package/esm5/ngxs-store.js +24 -27
  110. package/esm5/operators/append.js +31 -31
  111. package/esm5/operators/compose.js +28 -28
  112. package/esm5/operators/iif.js +56 -56
  113. package/esm5/operators/index.js +18 -18
  114. package/esm5/operators/insert-item.js +41 -41
  115. package/esm5/operators/internals.js +5 -5
  116. package/esm5/operators/ngxs-store-operators.js +8 -8
  117. package/esm5/operators/patch.js +39 -40
  118. package/esm5/operators/remove-item.js +34 -34
  119. package/esm5/operators/update-item.js +54 -52
  120. package/esm5/operators/utils.js +50 -50
  121. package/esm5/src/actions/actions.js +62 -62
  122. package/esm5/src/actions/symbols.js +39 -39
  123. package/esm5/src/actions-stream.js +184 -186
  124. package/esm5/src/configs/messages.config.js +79 -104
  125. package/esm5/src/decorators/action.js +60 -56
  126. package/esm5/src/decorators/select/select-factory.js +50 -47
  127. package/esm5/src/decorators/select/select.js +86 -50
  128. package/esm5/src/decorators/select/symbols.js +95 -51
  129. package/esm5/src/decorators/selector/selector.js +59 -55
  130. package/esm5/src/decorators/selector/symbols.js +5 -5
  131. package/esm5/src/decorators/selector-options.js +34 -34
  132. package/esm5/src/decorators/state.js +84 -76
  133. package/esm5/src/execution/dispatch-outside-zone-ngxs-execution-strategy.js +121 -121
  134. package/esm5/src/execution/internal-ngxs-execution-strategy.js +54 -54
  135. package/esm5/src/execution/noop-ngxs-execution-strategy.js +41 -41
  136. package/esm5/src/execution/symbols.js +29 -29
  137. package/esm5/src/internal/dispatcher.js +253 -253
  138. package/esm5/src/internal/internals.js +495 -491
  139. package/esm5/src/internal/lifecycle-state-manager.js +177 -177
  140. package/esm5/src/internal/state-context-factory.js +146 -146
  141. package/esm5/src/internal/state-factory.js +575 -563
  142. package/esm5/src/internal/state-operations.js +130 -139
  143. package/esm5/src/internal/state-operators.js +34 -34
  144. package/esm5/src/internal/state-stream.js +25 -25
  145. package/esm5/src/ivy/ivy-enabled-in-dev-mode.js +28 -40
  146. package/esm5/src/module.js +201 -215
  147. package/esm5/src/modules/ngxs-feature.module.js +65 -65
  148. package/esm5/src/modules/ngxs-root.module.js +47 -47
  149. package/esm5/src/operators/leave-ngxs.js +58 -58
  150. package/esm5/src/operators/of-action.js +217 -217
  151. package/esm5/src/plugin-manager.js +82 -82
  152. package/esm5/src/plugin_api.js +10 -10
  153. package/esm5/src/public_api.js +29 -29
  154. package/esm5/src/public_to_deprecate.js +64 -64
  155. package/esm5/src/state-token/state-token.js +57 -57
  156. package/esm5/src/state-token/symbols.js +5 -5
  157. package/esm5/src/store.js +225 -225
  158. package/esm5/src/symbols.js +226 -230
  159. package/esm5/src/utils/compose.js +55 -55
  160. package/esm5/src/utils/freeze.js +35 -35
  161. package/esm5/src/utils/selector-utils.js +230 -230
  162. package/esm5/src/utils/store-validators.js +78 -86
  163. package/esm5/src/utils/utils.js +151 -151
  164. package/fesm2015/ngxs-store-internals-testing.js +216 -0
  165. package/fesm2015/ngxs-store-internals-testing.js.map +1 -0
  166. package/fesm2015/ngxs-store-internals.js +402 -194
  167. package/fesm2015/ngxs-store-internals.js.map +1 -1
  168. package/fesm2015/ngxs-store-operators.js +313 -312
  169. package/fesm2015/ngxs-store-operators.js.map +1 -1
  170. package/fesm2015/ngxs-store.js +3926 -3976
  171. package/fesm2015/ngxs-store.js.map +1 -1
  172. package/fesm5/ngxs-store-internals-testing.js +263 -0
  173. package/fesm5/ngxs-store-internals-testing.js.map +1 -0
  174. package/fesm5/ngxs-store-internals.js +427 -219
  175. package/fesm5/ngxs-store-internals.js.map +1 -1
  176. package/fesm5/ngxs-store-operators.js +317 -316
  177. package/fesm5/ngxs-store-operators.js.map +1 -1
  178. package/fesm5/ngxs-store.js +4419 -4510
  179. package/fesm5/ngxs-store.js.map +1 -1
  180. package/index.d.ts +8 -8
  181. package/internals/angular.d.ts +3 -3
  182. package/internals/decorator-injector-adapter.d.ts +15 -0
  183. package/internals/index.d.ts +7 -6
  184. package/internals/initial-state.d.ts +8 -8
  185. package/internals/internal-tokens.d.ts +9 -9
  186. package/internals/memoize.d.ts +9 -9
  187. package/internals/ngxs-bootstrapper.d.ts +13 -13
  188. package/internals/ngxs-store-internals.d.ts +4 -4
  189. package/internals/ngxs-store-internals.metadata.json +1 -1
  190. package/internals/src/symbols.d.ts +7 -7
  191. package/internals/symbols.d.ts +7 -7
  192. package/internals/testing/fresh-platform.d.ts +1 -0
  193. package/internals/testing/helpers/ngxs-test.component.d.ts +5 -0
  194. package/internals/testing/helpers/ngxs-test.module.d.ts +4 -0
  195. package/internals/testing/index.d.ts +3 -0
  196. package/internals/testing/ngxs-store-internals-testing.d.ts +4 -0
  197. package/internals/testing/ngxs-store-internals-testing.metadata.json +1 -0
  198. package/internals/testing/ngxs.setup.d.ts +7 -0
  199. package/internals/testing/package.json +13 -0
  200. package/internals/testing/symbol.d.ts +14 -0
  201. package/ngxs-store.d.ts +20 -23
  202. package/ngxs-store.metadata.json +1 -1
  203. package/operators/append.d.ts +6 -6
  204. package/operators/compose.d.ts +3 -2
  205. package/operators/iif.d.ts +11 -11
  206. package/operators/index.d.ts +13 -13
  207. package/operators/insert-item.d.ts +7 -7
  208. package/operators/internals.d.ts +2 -2
  209. package/operators/ngxs-store-operators.d.ts +4 -4
  210. package/operators/ngxs-store-operators.metadata.json +1 -1
  211. package/operators/patch.d.ts +6 -10
  212. package/operators/remove-item.d.ts +7 -7
  213. package/operators/update-item.d.ts +10 -10
  214. package/operators/utils.d.ts +10 -9
  215. package/package.json +3 -3
  216. package/src/actions/actions.d.ts +15 -15
  217. package/src/actions/symbols.d.ts +21 -21
  218. package/src/actions-stream.d.ts +49 -49
  219. package/src/configs/messages.config.d.ts +11 -30
  220. package/src/decorators/action.d.ts +5 -5
  221. package/src/decorators/select/select-factory.d.ts +13 -14
  222. package/src/decorators/select/select.d.ts +4 -4
  223. package/src/decorators/select/symbols.d.ts +14 -10
  224. package/src/decorators/selector/selector.d.ts +5 -5
  225. package/src/decorators/selector/symbols.d.ts +4 -4
  226. package/src/decorators/selector-options.d.ts +5 -5
  227. package/src/decorators/state.d.ts +6 -6
  228. package/src/execution/dispatch-outside-zone-ngxs-execution-strategy.d.ts +11 -12
  229. package/src/execution/internal-ngxs-execution-strategy.d.ts +7 -7
  230. package/src/execution/noop-ngxs-execution-strategy.d.ts +5 -5
  231. package/src/execution/symbols.d.ts +6 -6
  232. package/src/internal/dispatcher.d.ts +32 -32
  233. package/src/internal/internals.d.ts +166 -167
  234. package/src/internal/lifecycle-state-manager.d.ts +20 -20
  235. package/src/internal/state-context-factory.d.ts +15 -15
  236. package/src/internal/state-factory.d.ts +57 -58
  237. package/src/internal/state-operations.d.ts +19 -21
  238. package/src/internal/state-operators.d.ts +2 -2
  239. package/src/internal/state-stream.d.ts +9 -9
  240. package/src/ivy/ivy-enabled-in-dev-mode.d.ts +6 -14
  241. package/src/module.d.ts +23 -23
  242. package/src/modules/ngxs-feature.module.d.ts +13 -13
  243. package/src/modules/ngxs-root.module.d.ts +13 -13
  244. package/src/operators/leave-ngxs.d.ts +7 -7
  245. package/src/operators/of-action.d.ts +43 -43
  246. package/src/plugin-manager.d.ts +10 -10
  247. package/src/plugin_api.d.ts +5 -5
  248. package/src/public_api.d.ts +17 -17
  249. package/src/public_to_deprecate.d.ts +21 -21
  250. package/src/state-token/state-token.d.ts +7 -7
  251. package/src/state-token/symbols.d.ts +5 -5
  252. package/src/store.d.ts +53 -53
  253. package/src/symbols.d.ts +135 -137
  254. package/src/utils/compose.d.ts +23 -23
  255. package/src/utils/freeze.d.ts +5 -5
  256. package/src/utils/selector-utils.d.ts +23 -23
  257. package/src/utils/store-validators.d.ts +7 -8
  258. package/src/utils/utils.d.ts +46 -46
  259. package/types/index.d.ts +2 -2
  260. package/esm2015/src/host-environment/host-environment.js +0 -31
  261. package/esm2015/src/internal/config-validator.js +0 -67
  262. package/esm2015/src/ivy/ensure-state-class-is-injectable.js +0 -34
  263. package/esm5/src/host-environment/host-environment.js +0 -29
  264. package/esm5/src/internal/config-validator.js +0 -76
  265. package/esm5/src/ivy/ensure-state-class-is-injectable.js +0 -34
  266. package/src/host-environment/host-environment.d.ts +0 -6
  267. package/src/internal/config-validator.d.ts +0 -10
  268. package/src/ivy/ensure-state-class-is-injectable.d.ts +0 -6
@@ -1,32 +1,32 @@
1
- import { Injector } from '@angular/core';
2
- import { Observable, Subject } from 'rxjs';
3
- import { ActionContext, InternalActions } from '../actions-stream';
4
- import { StateStream } from './state-stream';
5
- import { PluginManager } from '../plugin-manager';
6
- import { InternalNgxsExecutionStrategy } from '../execution/internal-ngxs-execution-strategy';
7
- /**
8
- * Internal Action result stream that is emitted when an action is completed.
9
- * This is used as a method of returning the action result to the dispatcher
10
- * for the observable returned by the dispatch(...) call.
11
- * The dispatcher then asynchronously pushes the result from this stream onto the main action stream as a result.
12
- */
13
- export declare class InternalDispatchedActionResults extends Subject<ActionContext> {
14
- }
15
- export declare class InternalDispatcher {
16
- private _injector;
17
- private _actions;
18
- private _actionResults;
19
- private _pluginManager;
20
- private _stateStream;
21
- private _ngxsExecutionStrategy;
22
- private _errorHandler;
23
- constructor(_injector: Injector, _actions: InternalActions, _actionResults: InternalDispatchedActionResults, _pluginManager: PluginManager, _stateStream: StateStream, _ngxsExecutionStrategy: InternalNgxsExecutionStrategy);
24
- /**
25
- * Dispatches event(s).
26
- */
27
- dispatch(actionOrActions: any | any[]): Observable<any>;
28
- private dispatchByEvents;
29
- private dispatchSingle;
30
- private getActionResultStream;
31
- private createDispatchObservable;
32
- }
1
+ import { Injector } from '@angular/core';
2
+ import { Observable, Subject } from 'rxjs';
3
+ import { ActionContext, InternalActions } from '../actions-stream';
4
+ import { StateStream } from './state-stream';
5
+ import { PluginManager } from '../plugin-manager';
6
+ import { InternalNgxsExecutionStrategy } from '../execution/internal-ngxs-execution-strategy';
7
+ /**
8
+ * Internal Action result stream that is emitted when an action is completed.
9
+ * This is used as a method of returning the action result to the dispatcher
10
+ * for the observable returned by the dispatch(...) call.
11
+ * The dispatcher then asynchronously pushes the result from this stream onto the main action stream as a result.
12
+ */
13
+ export declare class InternalDispatchedActionResults extends Subject<ActionContext> {
14
+ }
15
+ export declare class InternalDispatcher {
16
+ private _injector;
17
+ private _actions;
18
+ private _actionResults;
19
+ private _pluginManager;
20
+ private _stateStream;
21
+ private _ngxsExecutionStrategy;
22
+ private _errorHandler;
23
+ constructor(_injector: Injector, _actions: InternalActions, _actionResults: InternalDispatchedActionResults, _pluginManager: PluginManager, _stateStream: StateStream, _ngxsExecutionStrategy: InternalNgxsExecutionStrategy);
24
+ /**
25
+ * Dispatches event(s).
26
+ */
27
+ dispatch(actionOrActions: any | any[]): Observable<any>;
28
+ private dispatchByEvents;
29
+ private dispatchSingle;
30
+ private getActionResultStream;
31
+ private createDispatchObservable;
32
+ }
@@ -1,167 +1,166 @@
1
- import { PlainObjectOf, StateClass } from '@ngxs/store/internals';
2
- import { Observable } from 'rxjs';
3
- import { META_KEY, META_OPTIONS_KEY, NgxsConfig, NgxsSimpleChange, StoreOptions } from '../symbols';
4
- import { ActionHandlerMetaData } from '../actions/symbols';
5
- export interface StateClassInternal<T = any, U = any> extends StateClass<T> {
6
- [META_KEY]?: MetaDataModel;
7
- [META_OPTIONS_KEY]?: StoreOptions<U>;
8
- }
9
- export declare type StateKeyGraph = PlainObjectOf<string[]>;
10
- export declare type StatesByName = PlainObjectOf<StateClassInternal>;
11
- export interface StateOperations<T> {
12
- getState(): T;
13
- setState(val: T): T;
14
- dispatch(actionOrActions: any | any[]): Observable<void>;
15
- }
16
- export interface MetaDataModel {
17
- name: string | null;
18
- actions: PlainObjectOf<ActionHandlerMetaData[]>;
19
- defaults: any;
20
- path: string | null;
21
- makeRootSelector: SelectorFactory | null;
22
- children?: StateClassInternal[];
23
- }
24
- export interface RuntimeSelectorContext {
25
- getStateGetter(key: any): (state: any) => any;
26
- getSelectorOptions(localOptions?: SharedSelectorOptions): SharedSelectorOptions;
27
- }
28
- export declare type SelectFromRootState = (rootState: any) => any;
29
- export declare type SelectorFactory = (runtimeContext: RuntimeSelectorContext) => SelectFromRootState;
30
- export interface SharedSelectorOptions {
31
- injectContainerState?: boolean;
32
- suppressErrors?: boolean;
33
- }
34
- export interface SelectorMetaDataModel {
35
- makeRootSelector: SelectorFactory | null;
36
- originalFn: Function | null;
37
- containerClass: any;
38
- selectorName: string | null;
39
- getSelectorOptions: () => SharedSelectorOptions;
40
- }
41
- export interface MappedStore {
42
- name: string;
43
- isInitialised: boolean;
44
- actions: PlainObjectOf<ActionHandlerMetaData[]>;
45
- defaults: any;
46
- instance: any;
47
- path: string;
48
- }
49
- export interface StatesAndDefaults {
50
- defaults: any;
51
- states: MappedStore[];
52
- }
53
- export declare type Callback<T = any, V = any> = (...args: V[]) => T;
54
- export interface RootStateDiff<T> {
55
- currentAppState: T;
56
- newAppState: T;
57
- }
58
- /**
59
- * Ensures metadata is attached to the class and returns it.
60
- *
61
- * @ignore
62
- */
63
- export declare function ensureStoreMetadata(target: StateClassInternal): MetaDataModel;
64
- /**
65
- * Get the metadata attached to the state class if it exists.
66
- *
67
- * @ignore
68
- */
69
- export declare function getStoreMetadata(target: StateClassInternal): MetaDataModel;
70
- /**
71
- * Ensures metadata is attached to the selector and returns it.
72
- *
73
- * @ignore
74
- */
75
- export declare function ensureSelectorMetadata(target: Function): SelectorMetaDataModel;
76
- /**
77
- * Get the metadata attached to the selector if it exists.
78
- *
79
- * @ignore
80
- */
81
- export declare function getSelectorMetadata(target: any): SelectorMetaDataModel;
82
- /**
83
- * Get a deeply nested value. Example:
84
- *
85
- * getValue({ foo: bar: [] }, 'foo.bar') //=> []
86
- *
87
- * @ignore
88
- */
89
- export declare function propGetter(paths: string[], config: NgxsConfig): (x: any) => any;
90
- /**
91
- * Given an array of states, it will return a object graph. Example:
92
- * const states = [
93
- * Cart,
94
- * CartSaved,
95
- * CartSavedItems
96
- * ]
97
- *
98
- * would return:
99
- *
100
- * const graph = {
101
- * cart: ['saved'],
102
- * saved: ['items'],
103
- * items: []
104
- * };
105
- *
106
- * @ignore
107
- */
108
- export declare function buildGraph(stateClasses: StateClassInternal[]): StateKeyGraph;
109
- /**
110
- * Given a states array, returns object graph
111
- * returning the name and state metadata. Example:
112
- *
113
- * const graph = {
114
- * cart: { metadata }
115
- * };
116
- *
117
- * @ignore
118
- */
119
- export declare function nameToState(states: StateClassInternal[]): PlainObjectOf<StateClassInternal>;
120
- /**
121
- * Given a object relationship graph will return the full path
122
- * for the child items. Example:
123
- *
124
- * const graph = {
125
- * cart: ['saved'],
126
- * saved: ['items'],
127
- * items: []
128
- * };
129
- *
130
- * would return:
131
- *
132
- * const r = {
133
- * cart: 'cart',
134
- * saved: 'cart.saved',
135
- * items: 'cart.saved.items'
136
- * };
137
- *
138
- * @ignore
139
- */
140
- export declare function findFullParentPath(obj: StateKeyGraph, newObj?: PlainObjectOf<string>): PlainObjectOf<string>;
141
- /**
142
- * Given a object graph, it will return the items topologically sorted Example:
143
- *
144
- * const graph = {
145
- * cart: ['saved'],
146
- * saved: ['items'],
147
- * items: []
148
- * };
149
- *
150
- * would return:
151
- *
152
- * const results = [
153
- * 'items',
154
- * 'saved',
155
- * 'cart'
156
- * ];
157
- *
158
- * @ignore
159
- */
160
- export declare function topologicalSort(graph: StateKeyGraph): string[];
161
- /**
162
- * Returns if the parameter is a object or not.
163
- *
164
- * @ignore
165
- */
166
- export declare function isObject(obj: any): boolean;
167
- export declare function getStateDiffChanges<T>(mappedStore: MappedStore, diff: RootStateDiff<T>): NgxsSimpleChange;
1
+ import { PlainObjectOf, StateClass } from '@ngxs/store/internals';
2
+ import { Observable } from 'rxjs';
3
+ import { META_KEY, META_OPTIONS_KEY, NgxsConfig, NgxsSimpleChange, StoreOptions } from '../symbols';
4
+ import { ActionHandlerMetaData } from '../actions/symbols';
5
+ export interface StateClassInternal<T = any, U = any> extends StateClass<T> {
6
+ [META_KEY]?: MetaDataModel;
7
+ [META_OPTIONS_KEY]?: StoreOptions<U>;
8
+ }
9
+ export declare type StateKeyGraph = PlainObjectOf<string[]>;
10
+ export declare type StatesByName = PlainObjectOf<StateClassInternal>;
11
+ export interface StateOperations<T> {
12
+ getState(): T;
13
+ setState(val: T): T;
14
+ dispatch(actionOrActions: any | any[]): Observable<void>;
15
+ }
16
+ export interface MetaDataModel {
17
+ name: string | null;
18
+ actions: PlainObjectOf<ActionHandlerMetaData[]>;
19
+ defaults: any;
20
+ path: string | null;
21
+ makeRootSelector: SelectorFactory | null;
22
+ children?: StateClassInternal[];
23
+ }
24
+ export interface RuntimeSelectorContext {
25
+ getStateGetter(key: any): (state: any) => any;
26
+ getSelectorOptions(localOptions?: SharedSelectorOptions): SharedSelectorOptions;
27
+ }
28
+ export declare type SelectFromRootState = (rootState: any) => any;
29
+ export declare type SelectorFactory = (runtimeContext: RuntimeSelectorContext) => SelectFromRootState;
30
+ export interface SharedSelectorOptions {
31
+ injectContainerState?: boolean;
32
+ suppressErrors?: boolean;
33
+ }
34
+ export interface SelectorMetaDataModel {
35
+ makeRootSelector: SelectorFactory | null;
36
+ originalFn: Function | null;
37
+ containerClass: any;
38
+ selectorName: string | null;
39
+ getSelectorOptions: () => SharedSelectorOptions;
40
+ }
41
+ export interface MappedStore {
42
+ name: string;
43
+ isInitialised: boolean;
44
+ actions: PlainObjectOf<ActionHandlerMetaData[]>;
45
+ defaults: any;
46
+ instance: any;
47
+ path: string;
48
+ }
49
+ export interface StatesAndDefaults {
50
+ defaults: any;
51
+ states: MappedStore[];
52
+ }
53
+ export interface RootStateDiff<T> {
54
+ currentAppState: T;
55
+ newAppState: T;
56
+ }
57
+ /**
58
+ * Ensures metadata is attached to the class and returns it.
59
+ *
60
+ * @ignore
61
+ */
62
+ export declare function ensureStoreMetadata(target: StateClassInternal): MetaDataModel;
63
+ /**
64
+ * Get the metadata attached to the state class if it exists.
65
+ *
66
+ * @ignore
67
+ */
68
+ export declare function getStoreMetadata(target: StateClassInternal): MetaDataModel;
69
+ /**
70
+ * Ensures metadata is attached to the selector and returns it.
71
+ *
72
+ * @ignore
73
+ */
74
+ export declare function ensureSelectorMetadata(target: Function): SelectorMetaDataModel;
75
+ /**
76
+ * Get the metadata attached to the selector if it exists.
77
+ *
78
+ * @ignore
79
+ */
80
+ export declare function getSelectorMetadata(target: any): SelectorMetaDataModel;
81
+ /**
82
+ * Get a deeply nested value. Example:
83
+ *
84
+ * getValue({ foo: bar: [] }, 'foo.bar') //=> []
85
+ *
86
+ * @ignore
87
+ */
88
+ export declare function propGetter(paths: string[], config: NgxsConfig): (x: any) => any;
89
+ /**
90
+ * Given an array of states, it will return a object graph. Example:
91
+ * const states = [
92
+ * Cart,
93
+ * CartSaved,
94
+ * CartSavedItems
95
+ * ]
96
+ *
97
+ * would return:
98
+ *
99
+ * const graph = {
100
+ * cart: ['saved'],
101
+ * saved: ['items'],
102
+ * items: []
103
+ * };
104
+ *
105
+ * @ignore
106
+ */
107
+ export declare function buildGraph(stateClasses: StateClassInternal[]): StateKeyGraph;
108
+ /**
109
+ * Given a states array, returns object graph
110
+ * returning the name and state metadata. Example:
111
+ *
112
+ * const graph = {
113
+ * cart: { metadata }
114
+ * };
115
+ *
116
+ * @ignore
117
+ */
118
+ export declare function nameToState(states: StateClassInternal[]): PlainObjectOf<StateClassInternal>;
119
+ /**
120
+ * Given a object relationship graph will return the full path
121
+ * for the child items. Example:
122
+ *
123
+ * const graph = {
124
+ * cart: ['saved'],
125
+ * saved: ['items'],
126
+ * items: []
127
+ * };
128
+ *
129
+ * would return:
130
+ *
131
+ * const r = {
132
+ * cart: 'cart',
133
+ * saved: 'cart.saved',
134
+ * items: 'cart.saved.items'
135
+ * };
136
+ *
137
+ * @ignore
138
+ */
139
+ export declare function findFullParentPath(obj: StateKeyGraph, newObj?: PlainObjectOf<string>): PlainObjectOf<string>;
140
+ /**
141
+ * Given a object graph, it will return the items topologically sorted Example:
142
+ *
143
+ * const graph = {
144
+ * cart: ['saved'],
145
+ * saved: ['items'],
146
+ * items: []
147
+ * };
148
+ *
149
+ * would return:
150
+ *
151
+ * const results = [
152
+ * 'items',
153
+ * 'saved',
154
+ * 'cart'
155
+ * ];
156
+ *
157
+ * @ignore
158
+ */
159
+ export declare function topologicalSort(graph: StateKeyGraph): string[];
160
+ /**
161
+ * Returns if the parameter is a object or not.
162
+ *
163
+ * @ignore
164
+ */
165
+ export declare function isObject(obj: any): boolean;
166
+ export declare function getStateDiffChanges<T>(mappedStore: MappedStore, diff: RootStateDiff<T>): NgxsSimpleChange;
@@ -1,20 +1,20 @@
1
- import { NgxsBootstrapper } from '@ngxs/store/internals';
2
- import { StateContextFactory } from './state-context-factory';
3
- import { InternalStateOperations } from './state-operations';
4
- import { MappedStore, StatesAndDefaults } from './internals';
5
- export declare class LifecycleStateManager {
6
- private internalStateOperations;
7
- private stateContextFactory;
8
- private bootstrapper;
9
- constructor(internalStateOperations: InternalStateOperations, stateContextFactory: StateContextFactory, bootstrapper: NgxsBootstrapper);
10
- ngxsBootstrap<T>(action: T, results: StatesAndDefaults | undefined): void;
11
- /**
12
- * Invoke the init function on the states.
13
- */
14
- invokeInit(mappedStores: MappedStore[]): void;
15
- /**
16
- * Invoke the bootstrap function on the states.
17
- */
18
- invokeBootstrap(mappedStores: MappedStore[]): void;
19
- private getStateContext;
20
- }
1
+ import { NgxsBootstrapper } from '@ngxs/store/internals';
2
+ import { StateContextFactory } from './state-context-factory';
3
+ import { InternalStateOperations } from './state-operations';
4
+ import { MappedStore, StatesAndDefaults } from './internals';
5
+ export declare class LifecycleStateManager {
6
+ private internalStateOperations;
7
+ private stateContextFactory;
8
+ private bootstrapper;
9
+ constructor(internalStateOperations: InternalStateOperations, stateContextFactory: StateContextFactory, bootstrapper: NgxsBootstrapper);
10
+ ngxsBootstrap<T>(action: T, results: StatesAndDefaults | undefined): void;
11
+ /**
12
+ * Invoke the init function on the states.
13
+ */
14
+ invokeInit(mappedStores: MappedStore[]): void;
15
+ /**
16
+ * Invoke the bootstrap function on the states.
17
+ */
18
+ invokeBootstrap(mappedStores: MappedStore[]): void;
19
+ private getStateContext;
20
+ }
@@ -1,15 +1,15 @@
1
- import { StateContext } from '../symbols';
2
- import { MappedStore } from '../internal/internals';
3
- import { InternalStateOperations } from '../internal/state-operations';
4
- /**
5
- * State Context factory class
6
- * @ignore
7
- */
8
- export declare class StateContextFactory {
9
- private _internalStateOperations;
10
- constructor(_internalStateOperations: InternalStateOperations);
11
- /**
12
- * Create the state context
13
- */
14
- createStateContext<T>(mappedStore: MappedStore): StateContext<T>;
15
- }
1
+ import { StateContext } from '../symbols';
2
+ import { MappedStore } from '../internal/internals';
3
+ import { InternalStateOperations } from '../internal/state-operations';
4
+ /**
5
+ * State Context factory class
6
+ * @ignore
7
+ */
8
+ export declare class StateContextFactory {
9
+ private _internalStateOperations;
10
+ constructor(_internalStateOperations: InternalStateOperations);
11
+ /**
12
+ * Create the state context
13
+ */
14
+ createStateContext<T>(mappedStore: MappedStore): StateContext<T>;
15
+ }
@@ -1,58 +1,57 @@
1
- import { Injector, OnDestroy } from '@angular/core';
2
- import { Observable } from 'rxjs';
3
- import { NgxsConfig } from '../symbols';
4
- import { MappedStore, StateClassInternal, StatesAndDefaults, StatesByName, RuntimeSelectorContext } from './internals';
5
- import { InternalActions } from '../actions-stream';
6
- import { InternalDispatchedActionResults } from '../internal/dispatcher';
7
- import { StateContextFactory } from '../internal/state-context-factory';
8
- /**
9
- * State factory class
10
- * @ignore
11
- */
12
- export declare class StateFactory implements OnDestroy {
13
- private _injector;
14
- private _config;
15
- private _parentFactory;
16
- private _actions;
17
- private _actionResults;
18
- private _stateContextFactory;
19
- private _initialState;
20
- private _actionsSubscription;
21
- constructor(_injector: Injector, _config: NgxsConfig, _parentFactory: StateFactory, _actions: InternalActions, _actionResults: InternalDispatchedActionResults, _stateContextFactory: StateContextFactory, _initialState: any);
22
- private _states;
23
- readonly states: MappedStore[];
24
- private _statesByName;
25
- readonly statesByName: StatesByName;
26
- private _statePaths;
27
- private readonly statePaths;
28
- getRuntimeSelectorContext: () => RuntimeSelectorContext;
29
- private static cloneDefaults;
30
- private static checkStatesAreValid;
31
- ngOnDestroy(): void;
32
- /**
33
- * Add a new state to the global defs.
34
- */
35
- add(stateClasses: StateClassInternal[]): MappedStore[];
36
- /**
37
- * Add a set of states to the store and return the defaults
38
- */
39
- addAndReturnDefaults(stateClasses: StateClassInternal[]): StatesAndDefaults;
40
- /**
41
- * Bind the actions to the handlers
42
- */
43
- connectActionHandlers(): void;
44
- /**
45
- * Invoke actions on the states.
46
- */
47
- invokeActions(actions$: InternalActions, action: any): Observable<{}[]>;
48
- private addToStatesMap;
49
- private addRuntimeInfoToMeta;
50
- /**
51
- * @description
52
- * the method checks if the state has already been added to the tree
53
- * and completed the life cycle
54
- * @param name
55
- * @param path
56
- */
57
- private hasBeenMountedAndBootstrapped;
58
- }
1
+ import { Injector, OnDestroy } from '@angular/core';
2
+ import { Observable } from 'rxjs';
3
+ import { NgxsConfig } from '../symbols';
4
+ import { MappedStore, StateClassInternal, StatesAndDefaults, StatesByName, RuntimeSelectorContext } from './internals';
5
+ import { ActionContext, InternalActions } from '../actions-stream';
6
+ import { InternalDispatchedActionResults } from '../internal/dispatcher';
7
+ import { StateContextFactory } from '../internal/state-context-factory';
8
+ /**
9
+ * State factory class
10
+ * @ignore
11
+ */
12
+ export declare class StateFactory implements OnDestroy {
13
+ private _injector;
14
+ private _config;
15
+ private _parentFactory;
16
+ private _actions;
17
+ private _actionResults;
18
+ private _stateContextFactory;
19
+ private _initialState;
20
+ private _actionsSubscription;
21
+ constructor(_injector: Injector, _config: NgxsConfig, _parentFactory: StateFactory, _actions: InternalActions, _actionResults: InternalDispatchedActionResults, _stateContextFactory: StateContextFactory, _initialState: any);
22
+ private _states;
23
+ readonly states: MappedStore[];
24
+ private _statesByName;
25
+ readonly statesByName: StatesByName;
26
+ private _statePaths;
27
+ private readonly statePaths;
28
+ getRuntimeSelectorContext: () => RuntimeSelectorContext;
29
+ private static cloneDefaults;
30
+ ngOnDestroy(): void;
31
+ /**
32
+ * Add a new state to the global defs.
33
+ */
34
+ add(stateClasses: StateClassInternal[]): MappedStore[];
35
+ /**
36
+ * Add a set of states to the store and return the defaults
37
+ */
38
+ addAndReturnDefaults(stateClasses: StateClassInternal[]): StatesAndDefaults;
39
+ /**
40
+ * Bind the actions to the handlers
41
+ */
42
+ connectActionHandlers(): void;
43
+ /**
44
+ * Invoke actions on the states.
45
+ */
46
+ invokeActions(dispatched$: Observable<ActionContext>, action: any): Observable<{}[]>;
47
+ private addToStatesMap;
48
+ private addRuntimeInfoToMeta;
49
+ /**
50
+ * @description
51
+ * the method checks if the state has already been added to the tree
52
+ * and completed the life cycle
53
+ * @param name
54
+ * @param path
55
+ */
56
+ private hasBeenMountedAndBootstrapped;
57
+ }
@@ -1,21 +1,19 @@
1
- import { StateOperations, StatesAndDefaults } from '../internal/internals';
2
- import { InternalDispatcher } from '../internal/dispatcher';
3
- import { StateStream } from './state-stream';
4
- import { NgxsConfig } from '../symbols';
5
- import { ConfigValidator } from '../internal/config-validator';
6
- /**
7
- * State Context factory class
8
- * @ignore
9
- */
10
- export declare class InternalStateOperations {
11
- private _stateStream;
12
- private _dispatcher;
13
- private _config;
14
- constructor(_stateStream: StateStream, _dispatcher: InternalDispatcher, _config: NgxsConfig, configValidator: ConfigValidator);
15
- /**
16
- * Returns the root state operators.
17
- */
18
- getRootStateOperations(): StateOperations<any>;
19
- private ensureStateAndActionsAreImmutable;
20
- setStateToTheCurrentWithNew(results: StatesAndDefaults): void;
21
- }
1
+ import { StateOperations, StatesAndDefaults } from '../internal/internals';
2
+ import { InternalDispatcher } from '../internal/dispatcher';
3
+ import { StateStream } from './state-stream';
4
+ import { NgxsConfig } from '../symbols';
5
+ /**
6
+ * State Context factory class
7
+ * @ignore
8
+ */
9
+ export declare class InternalStateOperations {
10
+ private _stateStream;
11
+ private _dispatcher;
12
+ private _config;
13
+ constructor(_stateStream: StateStream, _dispatcher: InternalDispatcher, _config: NgxsConfig);
14
+ /**
15
+ * Returns the root state operators.
16
+ */
17
+ getRootStateOperations(): StateOperations<any>;
18
+ setStateToTheCurrentWithNew(results: StatesAndDefaults): void;
19
+ }
@@ -1,2 +1,2 @@
1
- import { StateOperator } from '../symbols';
2
- export declare function simplePatch<T>(val: Partial<T>): StateOperator<T>;
1
+ import { StateOperator } from '../symbols';
2
+ export declare function simplePatch<T>(val: Partial<T>): StateOperator<T>;
@@ -1,9 +1,9 @@
1
- import { BehaviorSubject } from 'rxjs';
2
- import { PlainObject } from '@ngxs/store/internals';
3
- /**
4
- * BehaviorSubject of the entire state.
5
- * @ignore
6
- */
7
- export declare class StateStream extends BehaviorSubject<PlainObject> {
8
- constructor();
9
- }
1
+ import { BehaviorSubject } from 'rxjs';
2
+ import { PlainObject } from '@ngxs/store/internals';
3
+ /**
4
+ * BehaviorSubject of the entire state.
5
+ * @ignore
6
+ */
7
+ export declare class StateStream extends BehaviorSubject<PlainObject> {
8
+ constructor();
9
+ }