@ngxs/store 3.7.2-dev.master-bfe989b → 3.7.2

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