@ngxs/store 3.7.3-dev.master-5175b98 → 3.7.3

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 (267) hide show
  1. package/README.md +16 -16
  2. package/bundles/ngxs-store-internals-testing.umd.js +215 -235
  3. package/bundles/ngxs-store-internals-testing.umd.js.map +1 -1
  4. package/bundles/ngxs-store-internals-testing.umd.min.js +2 -2
  5. package/bundles/ngxs-store-internals-testing.umd.min.js.map +1 -1
  6. package/bundles/ngxs-store-internals.umd.js +211 -422
  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 +310 -311
  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 +4518 -4423
  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 +40 -46
  20. package/esm2015/internals/index.js +10 -11
  21. package/esm2015/internals/initial-state.js +34 -34
  22. package/esm2015/internals/internal-tokens.js +16 -16
  23. package/esm2015/internals/memoize.js +70 -70
  24. package/esm2015/internals/ngxs-bootstrapper.js +41 -41
  25. package/esm2015/internals/ngxs-store-internals.js +9 -9
  26. package/esm2015/internals/src/symbols.js +14 -14
  27. package/esm2015/internals/symbols.js +14 -14
  28. package/esm2015/internals/testing/fresh-platform.js +71 -90
  29. package/esm2015/internals/testing/helpers/ngxs-test.component.js +22 -22
  30. package/esm2015/internals/testing/helpers/ngxs-test.module.js +24 -24
  31. package/esm2015/internals/testing/index.js +7 -7
  32. package/esm2015/internals/testing/ngxs-store-internals-testing.js +8 -8
  33. package/esm2015/internals/testing/ngxs.setup.js +76 -76
  34. package/esm2015/internals/testing/symbol.js +29 -29
  35. package/esm2015/ngxs-store.js +27 -24
  36. package/esm2015/operators/append.js +31 -31
  37. package/esm2015/operators/compose.js +24 -24
  38. package/esm2015/operators/iif.js +56 -56
  39. package/esm2015/operators/index.js +18 -18
  40. package/esm2015/operators/insert-item.js +41 -41
  41. package/esm2015/operators/internals.js +5 -5
  42. package/esm2015/operators/ngxs-store-operators.js +8 -8
  43. package/esm2015/operators/patch.js +39 -38
  44. package/esm2015/operators/remove-item.js +34 -34
  45. package/esm2015/operators/update-item.js +52 -54
  46. package/esm2015/operators/utils.js +50 -50
  47. package/esm2015/src/actions/actions.js +39 -39
  48. package/esm2015/src/actions/symbols.js +39 -39
  49. package/esm2015/src/actions-stream.js +140 -138
  50. package/esm2015/src/configs/messages.config.js +87 -79
  51. package/esm2015/src/decorators/action.js +44 -48
  52. package/esm2015/src/decorators/select/select-factory.js +46 -49
  53. package/esm2015/src/decorators/select/select.js +45 -81
  54. package/esm2015/src/decorators/select/symbols.js +50 -94
  55. package/esm2015/src/decorators/selector/selector.js +55 -59
  56. package/esm2015/src/decorators/selector/symbols.js +5 -5
  57. package/esm2015/src/decorators/selector-options.js +34 -34
  58. package/esm2015/src/decorators/state.js +75 -83
  59. package/esm2015/src/execution/dispatch-outside-zone-ngxs-execution-strategy.js +96 -101
  60. package/esm2015/src/execution/internal-ngxs-execution-strategy.js +45 -45
  61. package/esm2015/src/execution/noop-ngxs-execution-strategy.js +27 -27
  62. package/esm2015/src/execution/symbols.js +29 -29
  63. package/esm2015/src/host-environment/host-environment.js +31 -0
  64. package/esm2015/src/internal/config-validator.js +67 -0
  65. package/esm2015/src/internal/dispatcher.js +217 -217
  66. package/esm2015/src/internal/internals.js +489 -493
  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 +429 -449
  70. package/esm2015/src/internal/state-operations.js +125 -120
  71. package/esm2015/src/internal/state-operators.js +33 -33
  72. package/esm2015/src/internal/state-stream.js +21 -21
  73. package/esm2015/src/ivy/ensure-state-class-is-injectable.js +34 -0
  74. package/esm2015/src/ivy/ivy-enabled-in-dev-mode.js +40 -28
  75. package/esm2015/src/module.js +172 -158
  76. package/esm2015/src/modules/ngxs-feature.module.js +63 -63
  77. package/esm2015/src/modules/ngxs-root.module.js +52 -52
  78. package/esm2015/src/operators/leave-ngxs.js +58 -58
  79. package/esm2015/src/operators/of-action.js +191 -191
  80. package/esm2015/src/plugin-manager.js +70 -70
  81. package/esm2015/src/plugin_api.js +10 -10
  82. package/esm2015/src/public_api.js +29 -29
  83. package/esm2015/src/public_to_deprecate.js +64 -64
  84. package/esm2015/src/state-token/state-token.js +45 -45
  85. package/esm2015/src/state-token/symbols.js +5 -5
  86. package/esm2015/src/store.js +174 -174
  87. package/esm2015/src/symbols.js +221 -217
  88. package/esm2015/src/utils/compose.js +44 -44
  89. package/esm2015/src/utils/freeze.js +35 -35
  90. package/esm2015/src/utils/selector-utils.js +221 -221
  91. package/esm2015/src/utils/store-validators.js +65 -60
  92. package/esm2015/src/utils/utils.js +143 -143
  93. package/esm5/index.js +13 -13
  94. package/esm5/internals/angular.js +40 -46
  95. package/esm5/internals/index.js +10 -11
  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 +81 -101
  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 +7 -7
  107. package/esm5/internals/testing/ngxs-store-internals-testing.js +8 -8
  108. package/esm5/internals/testing/ngxs.setup.js +98 -98
  109. package/esm5/internals/testing/symbol.js +29 -29
  110. package/esm5/ngxs-store.js +27 -24
  111. package/esm5/operators/append.js +31 -31
  112. package/esm5/operators/compose.js +28 -28
  113. package/esm5/operators/iif.js +56 -56
  114. package/esm5/operators/index.js +18 -18
  115. package/esm5/operators/insert-item.js +41 -41
  116. package/esm5/operators/internals.js +5 -5
  117. package/esm5/operators/ngxs-store-operators.js +8 -8
  118. package/esm5/operators/patch.js +40 -39
  119. package/esm5/operators/remove-item.js +34 -34
  120. package/esm5/operators/update-item.js +52 -54
  121. package/esm5/operators/utils.js +50 -50
  122. package/esm5/src/actions/actions.js +62 -62
  123. package/esm5/src/actions/symbols.js +39 -39
  124. package/esm5/src/actions-stream.js +186 -184
  125. package/esm5/src/configs/messages.config.js +104 -79
  126. package/esm5/src/decorators/action.js +56 -60
  127. package/esm5/src/decorators/select/select-factory.js +47 -50
  128. package/esm5/src/decorators/select/select.js +50 -87
  129. package/esm5/src/decorators/select/symbols.js +51 -95
  130. package/esm5/src/decorators/selector/selector.js +55 -59
  131. package/esm5/src/decorators/selector/symbols.js +5 -5
  132. package/esm5/src/decorators/selector-options.js +34 -34
  133. package/esm5/src/decorators/state.js +76 -84
  134. package/esm5/src/execution/dispatch-outside-zone-ngxs-execution-strategy.js +121 -121
  135. package/esm5/src/execution/internal-ngxs-execution-strategy.js +54 -54
  136. package/esm5/src/execution/noop-ngxs-execution-strategy.js +41 -41
  137. package/esm5/src/execution/symbols.js +29 -29
  138. package/esm5/src/host-environment/host-environment.js +29 -0
  139. package/esm5/src/internal/config-validator.js +76 -0
  140. package/esm5/src/internal/dispatcher.js +253 -253
  141. package/esm5/src/internal/internals.js +491 -495
  142. package/esm5/src/internal/lifecycle-state-manager.js +177 -177
  143. package/esm5/src/internal/state-context-factory.js +146 -146
  144. package/esm5/src/internal/state-factory.js +563 -575
  145. package/esm5/src/internal/state-operations.js +139 -130
  146. package/esm5/src/internal/state-operators.js +34 -34
  147. package/esm5/src/internal/state-stream.js +25 -25
  148. package/esm5/src/ivy/ensure-state-class-is-injectable.js +34 -0
  149. package/esm5/src/ivy/ivy-enabled-in-dev-mode.js +40 -28
  150. package/esm5/src/module.js +215 -201
  151. package/esm5/src/modules/ngxs-feature.module.js +65 -65
  152. package/esm5/src/modules/ngxs-root.module.js +47 -47
  153. package/esm5/src/operators/leave-ngxs.js +58 -58
  154. package/esm5/src/operators/of-action.js +217 -217
  155. package/esm5/src/plugin-manager.js +82 -82
  156. package/esm5/src/plugin_api.js +10 -10
  157. package/esm5/src/public_api.js +29 -29
  158. package/esm5/src/public_to_deprecate.js +64 -64
  159. package/esm5/src/state-token/state-token.js +57 -57
  160. package/esm5/src/state-token/symbols.js +5 -5
  161. package/esm5/src/store.js +225 -225
  162. package/esm5/src/symbols.js +230 -226
  163. package/esm5/src/utils/compose.js +55 -55
  164. package/esm5/src/utils/freeze.js +35 -35
  165. package/esm5/src/utils/selector-utils.js +230 -230
  166. package/esm5/src/utils/store-validators.js +86 -78
  167. package/esm5/src/utils/utils.js +151 -151
  168. package/fesm2015/ngxs-store-internals-testing.js +175 -194
  169. package/fesm2015/ngxs-store-internals-testing.js.map +1 -1
  170. package/fesm2015/ngxs-store-internals.js +194 -402
  171. package/fesm2015/ngxs-store-internals.js.map +1 -1
  172. package/fesm2015/ngxs-store-operators.js +312 -313
  173. package/fesm2015/ngxs-store-operators.js.map +1 -1
  174. package/fesm2015/ngxs-store.js +3976 -3927
  175. package/fesm2015/ngxs-store.js.map +1 -1
  176. package/fesm5/ngxs-store-internals-testing.js +221 -241
  177. package/fesm5/ngxs-store-internals-testing.js.map +1 -1
  178. package/fesm5/ngxs-store-internals.js +219 -427
  179. package/fesm5/ngxs-store-internals.js.map +1 -1
  180. package/fesm5/ngxs-store-operators.js +316 -317
  181. package/fesm5/ngxs-store-operators.js.map +1 -1
  182. package/fesm5/ngxs-store.js +4510 -4420
  183. package/fesm5/ngxs-store.js.map +1 -1
  184. package/index.d.ts +8 -8
  185. package/internals/angular.d.ts +3 -3
  186. package/internals/index.d.ts +6 -7
  187. package/internals/initial-state.d.ts +8 -8
  188. package/internals/internal-tokens.d.ts +9 -9
  189. package/internals/memoize.d.ts +9 -9
  190. package/internals/ngxs-bootstrapper.d.ts +13 -13
  191. package/internals/ngxs-store-internals.d.ts +4 -4
  192. package/internals/ngxs-store-internals.metadata.json +1 -1
  193. package/internals/src/symbols.d.ts +7 -7
  194. package/internals/symbols.d.ts +7 -7
  195. package/internals/testing/fresh-platform.d.ts +1 -1
  196. package/internals/testing/helpers/ngxs-test.component.d.ts +5 -5
  197. package/internals/testing/helpers/ngxs-test.module.d.ts +4 -4
  198. package/internals/testing/index.d.ts +3 -3
  199. package/internals/testing/ngxs-store-internals-testing.d.ts +4 -4
  200. package/internals/testing/ngxs-store-internals-testing.metadata.json +1 -1
  201. package/internals/testing/ngxs.setup.d.ts +7 -7
  202. package/internals/testing/symbol.d.ts +14 -14
  203. package/ngxs-store.d.ts +23 -20
  204. package/ngxs-store.metadata.json +1 -1
  205. package/operators/append.d.ts +6 -6
  206. package/operators/compose.d.ts +2 -3
  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 +10 -6
  214. package/operators/remove-item.d.ts +7 -7
  215. package/operators/update-item.d.ts +10 -10
  216. package/operators/utils.d.ts +9 -10
  217. package/package.json +2 -2
  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 +30 -11
  222. package/src/decorators/action.d.ts +5 -5
  223. package/src/decorators/select/select-factory.d.ts +14 -13
  224. package/src/decorators/select/select.d.ts +4 -4
  225. package/src/decorators/select/symbols.d.ts +10 -14
  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 +12 -11
  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 +6 -6
  234. package/src/host-environment/host-environment.d.ts +6 -0
  235. package/src/internal/config-validator.d.ts +10 -0
  236. package/src/internal/dispatcher.d.ts +32 -32
  237. package/src/internal/internals.d.ts +167 -166
  238. package/src/internal/lifecycle-state-manager.d.ts +20 -20
  239. package/src/internal/state-context-factory.d.ts +15 -15
  240. package/src/internal/state-factory.d.ts +58 -57
  241. package/src/internal/state-operations.d.ts +21 -19
  242. package/src/internal/state-operators.d.ts +2 -2
  243. package/src/internal/state-stream.d.ts +9 -9
  244. package/src/ivy/ensure-state-class-is-injectable.d.ts +6 -0
  245. package/src/ivy/ivy-enabled-in-dev-mode.d.ts +14 -6
  246. package/src/module.d.ts +23 -23
  247. package/src/modules/ngxs-feature.module.d.ts +13 -13
  248. package/src/modules/ngxs-root.module.d.ts +13 -13
  249. package/src/operators/leave-ngxs.d.ts +7 -7
  250. package/src/operators/of-action.d.ts +43 -43
  251. package/src/plugin-manager.d.ts +10 -10
  252. package/src/plugin_api.d.ts +5 -5
  253. package/src/public_api.d.ts +17 -17
  254. package/src/public_to_deprecate.d.ts +21 -21
  255. package/src/state-token/state-token.d.ts +7 -7
  256. package/src/state-token/symbols.d.ts +5 -5
  257. package/src/store.d.ts +53 -53
  258. package/src/symbols.d.ts +137 -135
  259. package/src/utils/compose.d.ts +23 -23
  260. package/src/utils/freeze.d.ts +5 -5
  261. package/src/utils/selector-utils.d.ts +23 -23
  262. package/src/utils/store-validators.d.ts +8 -7
  263. package/src/utils/utils.d.ts +46 -46
  264. package/types/index.d.ts +2 -2
  265. package/esm2015/internals/decorator-injector-adapter.js +0 -204
  266. package/esm5/internals/decorator-injector-adapter.js +0 -204
  267. package/internals/decorator-injector-adapter.d.ts +0 -15
@@ -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,166 +1,167 @@
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
+ 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,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,57 +1,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
+ 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,19 +1,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
+ 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,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
+ }