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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (270) hide show
  1. package/README.md +16 -16
  2. package/bundles/ngxs-store-internals-testing.umd.js +318 -215
  3. package/bundles/ngxs-store-internals-testing.umd.js.map +1 -1
  4. package/bundles/ngxs-store-internals-testing.umd.min.js +1 -1
  5. package/bundles/ngxs-store-internals-testing.umd.min.js.map +1 -1
  6. package/bundles/ngxs-store-internals.umd.js +398 -211
  7. package/bundles/ngxs-store-internals.umd.js.map +1 -1
  8. package/bundles/ngxs-store-internals.umd.min.js +1 -1
  9. package/bundles/ngxs-store-internals.umd.min.js.map +1 -1
  10. package/bundles/ngxs-store-operators.umd.js +311 -310
  11. package/bundles/ngxs-store-operators.umd.js.map +1 -1
  12. package/bundles/ngxs-store-operators.umd.min.js +1 -1
  13. package/bundles/ngxs-store-operators.umd.min.js.map +1 -1
  14. package/bundles/ngxs-store.umd.js +4496 -4519
  15. package/bundles/ngxs-store.umd.js.map +1 -1
  16. package/bundles/ngxs-store.umd.min.js +1 -1
  17. package/bundles/ngxs-store.umd.min.js.map +1 -1
  18. package/esm2015/index.js +13 -13
  19. package/esm2015/internals/angular.js +20 -40
  20. package/esm2015/internals/decorator-injector-adapter.js +204 -0
  21. package/esm2015/internals/index.js +11 -10
  22. package/esm2015/internals/initial-state.js +34 -34
  23. package/esm2015/internals/internal-tokens.js +16 -16
  24. package/esm2015/internals/memoize.js +70 -70
  25. package/esm2015/internals/ngxs-bootstrapper.js +41 -41
  26. package/esm2015/internals/ngxs-store-internals.js +9 -9
  27. package/esm2015/internals/src/symbols.js +14 -14
  28. package/esm2015/internals/symbols.js +14 -14
  29. package/esm2015/internals/testing/fresh-platform.js +110 -71
  30. package/esm2015/internals/testing/helpers/ngxs-test.component.js +22 -22
  31. package/esm2015/internals/testing/helpers/ngxs-test.module.js +24 -24
  32. package/esm2015/internals/testing/index.js +8 -7
  33. package/esm2015/internals/testing/ngxs-store-internals-testing.js +9 -9
  34. package/esm2015/internals/testing/ngxs.setup.js +76 -76
  35. package/esm2015/internals/testing/skip-console-logging.js +62 -0
  36. package/esm2015/internals/testing/symbol.js +29 -29
  37. package/esm2015/ngxs-store.js +23 -27
  38. package/esm2015/operators/append.js +31 -31
  39. package/esm2015/operators/compose.js +24 -24
  40. package/esm2015/operators/iif.js +56 -56
  41. package/esm2015/operators/index.js +18 -18
  42. package/esm2015/operators/insert-item.js +41 -41
  43. package/esm2015/operators/internals.js +5 -5
  44. package/esm2015/operators/ngxs-store-operators.js +8 -8
  45. package/esm2015/operators/patch.js +38 -39
  46. package/esm2015/operators/remove-item.js +34 -34
  47. package/esm2015/operators/update-item.js +54 -52
  48. package/esm2015/operators/utils.js +50 -50
  49. package/esm2015/src/actions/actions.js +39 -39
  50. package/esm2015/src/actions/symbols.js +39 -39
  51. package/esm2015/src/actions-stream.js +138 -140
  52. package/esm2015/src/configs/messages.config.js +79 -87
  53. package/esm2015/src/decorators/action.js +48 -44
  54. package/esm2015/src/decorators/select/select-factory.js +49 -46
  55. package/esm2015/src/decorators/select/select.js +81 -45
  56. package/esm2015/src/decorators/select/symbols.js +94 -50
  57. package/esm2015/src/decorators/selector/selector.js +59 -55
  58. package/esm2015/src/decorators/selector/symbols.js +5 -5
  59. package/esm2015/src/decorators/selector-options.js +34 -34
  60. package/esm2015/src/decorators/state.js +83 -75
  61. package/esm2015/src/execution/dispatch-outside-zone-ngxs-execution-strategy.js +103 -96
  62. package/esm2015/src/execution/internal-ngxs-execution-strategy.js +45 -45
  63. package/esm2015/src/execution/noop-ngxs-execution-strategy.js +29 -27
  64. package/esm2015/src/execution/symbols.js +52 -29
  65. package/esm2015/src/internal/dispatcher.js +217 -217
  66. package/esm2015/src/internal/internals.js +493 -489
  67. package/esm2015/src/internal/lifecycle-state-manager.js +129 -129
  68. package/esm2015/src/internal/state-context-factory.js +138 -138
  69. package/esm2015/src/internal/state-factory.js +449 -429
  70. package/esm2015/src/internal/state-operations.js +133 -125
  71. package/esm2015/src/internal/state-operators.js +33 -33
  72. package/esm2015/src/internal/state-stream.js +30 -21
  73. package/esm2015/src/ivy/ivy-enabled-in-dev-mode.js +28 -40
  74. package/esm2015/src/module.js +157 -172
  75. package/esm2015/src/modules/ngxs-feature.module.js +63 -63
  76. package/esm2015/src/modules/ngxs-root.module.js +52 -52
  77. package/esm2015/src/operators/leave-ngxs.js +58 -58
  78. package/esm2015/src/operators/of-action.js +197 -191
  79. package/esm2015/src/plugin-manager.js +70 -70
  80. package/esm2015/src/plugin_api.js +10 -10
  81. package/esm2015/src/public_api.js +29 -29
  82. package/esm2015/src/public_to_deprecate.js +64 -64
  83. package/esm2015/src/state-token/state-token.js +45 -45
  84. package/esm2015/src/state-token/symbols.js +5 -5
  85. package/esm2015/src/store.js +190 -174
  86. package/esm2015/src/symbols.js +220 -221
  87. package/esm2015/src/utils/compose.js +44 -44
  88. package/esm2015/src/utils/freeze.js +35 -35
  89. package/esm2015/src/utils/selector-utils.js +221 -221
  90. package/esm2015/src/utils/store-validators.js +60 -65
  91. package/esm2015/src/utils/utils.js +143 -143
  92. package/esm5/index.js +13 -13
  93. package/esm5/internals/angular.js +20 -40
  94. package/esm5/internals/decorator-injector-adapter.js +204 -0
  95. package/esm5/internals/index.js +11 -10
  96. package/esm5/internals/initial-state.js +45 -45
  97. package/esm5/internals/internal-tokens.js +16 -16
  98. package/esm5/internals/memoize.js +71 -71
  99. package/esm5/internals/ngxs-bootstrapper.js +56 -56
  100. package/esm5/internals/ngxs-store-internals.js +9 -9
  101. package/esm5/internals/src/symbols.js +14 -14
  102. package/esm5/internals/symbols.js +14 -14
  103. package/esm5/internals/testing/fresh-platform.js +121 -81
  104. package/esm5/internals/testing/helpers/ngxs-test.component.js +32 -32
  105. package/esm5/internals/testing/helpers/ngxs-test.module.js +32 -32
  106. package/esm5/internals/testing/index.js +8 -7
  107. package/esm5/internals/testing/ngxs-store-internals-testing.js +9 -9
  108. package/esm5/internals/testing/ngxs.setup.js +98 -98
  109. package/esm5/internals/testing/skip-console-logging.js +62 -0
  110. package/esm5/internals/testing/symbol.js +29 -29
  111. package/esm5/ngxs-store.js +23 -27
  112. package/esm5/operators/append.js +31 -31
  113. package/esm5/operators/compose.js +28 -28
  114. package/esm5/operators/iif.js +56 -56
  115. package/esm5/operators/index.js +18 -18
  116. package/esm5/operators/insert-item.js +41 -41
  117. package/esm5/operators/internals.js +5 -5
  118. package/esm5/operators/ngxs-store-operators.js +8 -8
  119. package/esm5/operators/patch.js +39 -40
  120. package/esm5/operators/remove-item.js +34 -34
  121. package/esm5/operators/update-item.js +54 -52
  122. package/esm5/operators/utils.js +50 -50
  123. package/esm5/src/actions/actions.js +62 -62
  124. package/esm5/src/actions/symbols.js +39 -39
  125. package/esm5/src/actions-stream.js +184 -186
  126. package/esm5/src/configs/messages.config.js +79 -104
  127. package/esm5/src/decorators/action.js +60 -56
  128. package/esm5/src/decorators/select/select-factory.js +50 -47
  129. package/esm5/src/decorators/select/select.js +87 -50
  130. package/esm5/src/decorators/select/symbols.js +95 -51
  131. package/esm5/src/decorators/selector/selector.js +59 -55
  132. package/esm5/src/decorators/selector/symbols.js +5 -5
  133. package/esm5/src/decorators/selector-options.js +34 -34
  134. package/esm5/src/decorators/state.js +84 -76
  135. package/esm5/src/execution/dispatch-outside-zone-ngxs-execution-strategy.js +123 -121
  136. package/esm5/src/execution/internal-ngxs-execution-strategy.js +54 -54
  137. package/esm5/src/execution/noop-ngxs-execution-strategy.js +43 -41
  138. package/esm5/src/execution/symbols.js +52 -29
  139. package/esm5/src/internal/dispatcher.js +253 -253
  140. package/esm5/src/internal/internals.js +495 -491
  141. package/esm5/src/internal/lifecycle-state-manager.js +177 -177
  142. package/esm5/src/internal/state-context-factory.js +146 -146
  143. package/esm5/src/internal/state-factory.js +575 -563
  144. package/esm5/src/internal/state-operations.js +143 -139
  145. package/esm5/src/internal/state-operators.js +34 -34
  146. package/esm5/src/internal/state-stream.js +37 -25
  147. package/esm5/src/ivy/ivy-enabled-in-dev-mode.js +28 -40
  148. package/esm5/src/module.js +200 -215
  149. package/esm5/src/modules/ngxs-feature.module.js +65 -65
  150. package/esm5/src/modules/ngxs-root.module.js +47 -47
  151. package/esm5/src/operators/leave-ngxs.js +58 -58
  152. package/esm5/src/operators/of-action.js +223 -217
  153. package/esm5/src/plugin-manager.js +82 -82
  154. package/esm5/src/plugin_api.js +10 -10
  155. package/esm5/src/public_api.js +29 -29
  156. package/esm5/src/public_to_deprecate.js +64 -64
  157. package/esm5/src/state-token/state-token.js +57 -57
  158. package/esm5/src/state-token/symbols.js +5 -5
  159. package/esm5/src/store.js +241 -225
  160. package/esm5/src/symbols.js +229 -230
  161. package/esm5/src/utils/compose.js +55 -55
  162. package/esm5/src/utils/freeze.js +35 -35
  163. package/esm5/src/utils/selector-utils.js +230 -230
  164. package/esm5/src/utils/store-validators.js +78 -86
  165. package/esm5/src/utils/utils.js +151 -151
  166. package/fesm2015/ngxs-store-internals-testing.js +278 -177
  167. package/fesm2015/ngxs-store-internals-testing.js.map +1 -1
  168. package/fesm2015/ngxs-store-internals.js +378 -194
  169. package/fesm2015/ngxs-store-internals.js.map +1 -1
  170. package/fesm2015/ngxs-store-operators.js +313 -312
  171. package/fesm2015/ngxs-store-operators.js.map +1 -1
  172. package/fesm2015/ngxs-store.js +3999 -3979
  173. package/fesm2015/ngxs-store.js.map +1 -1
  174. package/fesm5/ngxs-store-internals-testing.js +325 -223
  175. package/fesm5/ngxs-store-internals-testing.js.map +1 -1
  176. package/fesm5/ngxs-store-internals.js +403 -219
  177. package/fesm5/ngxs-store-internals.js.map +1 -1
  178. package/fesm5/ngxs-store-operators.js +317 -316
  179. package/fesm5/ngxs-store-operators.js.map +1 -1
  180. package/fesm5/ngxs-store.js +4494 -4512
  181. package/fesm5/ngxs-store.js.map +1 -1
  182. package/index.d.ts +8 -8
  183. package/internals/angular.d.ts +1 -3
  184. package/internals/decorator-injector-adapter.d.ts +15 -0
  185. package/internals/index.d.ts +7 -6
  186. package/internals/initial-state.d.ts +8 -8
  187. package/internals/internal-tokens.d.ts +9 -9
  188. package/internals/memoize.d.ts +9 -9
  189. package/internals/ngxs-bootstrapper.d.ts +13 -13
  190. package/internals/ngxs-store-internals.d.ts +4 -4
  191. package/internals/ngxs-store-internals.metadata.json +1 -1
  192. package/internals/src/symbols.d.ts +7 -7
  193. package/internals/symbols.d.ts +7 -7
  194. package/internals/testing/fresh-platform.d.ts +1 -1
  195. package/internals/testing/helpers/ngxs-test.component.d.ts +5 -5
  196. package/internals/testing/helpers/ngxs-test.module.d.ts +4 -4
  197. package/internals/testing/index.d.ts +4 -3
  198. package/internals/testing/ngxs-store-internals-testing.d.ts +4 -4
  199. package/internals/testing/ngxs-store-internals-testing.metadata.json +1 -1
  200. package/internals/testing/ngxs.setup.d.ts +7 -7
  201. package/internals/testing/skip-console-logging.d.ts +1 -0
  202. package/internals/testing/symbol.d.ts +14 -14
  203. package/ngxs-store.d.ts +19 -23
  204. package/ngxs-store.metadata.json +1 -1
  205. package/operators/append.d.ts +6 -6
  206. package/operators/compose.d.ts +3 -2
  207. package/operators/iif.d.ts +11 -11
  208. package/operators/index.d.ts +13 -13
  209. package/operators/insert-item.d.ts +7 -7
  210. package/operators/internals.d.ts +2 -2
  211. package/operators/ngxs-store-operators.d.ts +4 -4
  212. package/operators/ngxs-store-operators.metadata.json +1 -1
  213. package/operators/patch.d.ts +6 -10
  214. package/operators/remove-item.d.ts +7 -7
  215. package/operators/update-item.d.ts +10 -10
  216. package/operators/utils.d.ts +10 -9
  217. package/package.json +3 -3
  218. package/src/actions/actions.d.ts +15 -15
  219. package/src/actions/symbols.d.ts +21 -21
  220. package/src/actions-stream.d.ts +49 -49
  221. package/src/configs/messages.config.d.ts +11 -30
  222. package/src/decorators/action.d.ts +5 -5
  223. package/src/decorators/select/select-factory.d.ts +13 -14
  224. package/src/decorators/select/select.d.ts +4 -4
  225. package/src/decorators/select/symbols.d.ts +14 -10
  226. package/src/decorators/selector/selector.d.ts +5 -5
  227. package/src/decorators/selector/symbols.d.ts +4 -4
  228. package/src/decorators/selector-options.d.ts +5 -5
  229. package/src/decorators/state.d.ts +6 -6
  230. package/src/execution/dispatch-outside-zone-ngxs-execution-strategy.d.ts +11 -12
  231. package/src/execution/internal-ngxs-execution-strategy.d.ts +7 -7
  232. package/src/execution/noop-ngxs-execution-strategy.d.ts +5 -5
  233. package/src/execution/symbols.d.ts +10 -6
  234. package/src/internal/dispatcher.d.ts +32 -32
  235. package/src/internal/internals.d.ts +166 -167
  236. package/src/internal/lifecycle-state-manager.d.ts +20 -20
  237. package/src/internal/state-context-factory.d.ts +15 -15
  238. package/src/internal/state-factory.d.ts +57 -58
  239. package/src/internal/state-operations.d.ts +19 -21
  240. package/src/internal/state-operators.d.ts +2 -2
  241. package/src/internal/state-stream.d.ts +11 -9
  242. package/src/ivy/ivy-enabled-in-dev-mode.d.ts +6 -14
  243. package/src/module.d.ts +23 -23
  244. package/src/modules/ngxs-feature.module.d.ts +13 -13
  245. package/src/modules/ngxs-root.module.d.ts +13 -13
  246. package/src/operators/leave-ngxs.d.ts +7 -7
  247. package/src/operators/of-action.d.ts +56 -43
  248. package/src/plugin-manager.d.ts +10 -10
  249. package/src/plugin_api.d.ts +5 -5
  250. package/src/public_api.d.ts +17 -17
  251. package/src/public_to_deprecate.d.ts +21 -21
  252. package/src/state-token/state-token.d.ts +7 -7
  253. package/src/state-token/symbols.d.ts +5 -5
  254. package/src/store.d.ts +59 -53
  255. package/src/symbols.d.ts +138 -137
  256. package/src/utils/compose.d.ts +23 -23
  257. package/src/utils/freeze.d.ts +5 -5
  258. package/src/utils/selector-utils.d.ts +23 -23
  259. package/src/utils/store-validators.d.ts +7 -8
  260. package/src/utils/utils.d.ts +46 -46
  261. package/types/index.d.ts +2 -2
  262. package/esm2015/src/host-environment/host-environment.js +0 -31
  263. package/esm2015/src/internal/config-validator.js +0 -67
  264. package/esm2015/src/ivy/ensure-state-class-is-injectable.js +0 -34
  265. package/esm5/src/host-environment/host-environment.js +0 -29
  266. package/esm5/src/internal/config-validator.js +0 -76
  267. package/esm5/src/ivy/ensure-state-class-is-injectable.js +0 -34
  268. package/src/host-environment/host-environment.d.ts +0 -6
  269. package/src/internal/config-validator.d.ts +0 -10
  270. package/src/ivy/ensure-state-class-is-injectable.d.ts +0 -6
package/src/symbols.d.ts CHANGED
@@ -1,137 +1,138 @@
1
- import { InjectionToken, Type } from '@angular/core';
2
- import { Observable } from 'rxjs';
3
- import { PlainObject, StateClass } from '@ngxs/store/internals';
4
- import { SharedSelectorOptions, Callback } from './internal/internals';
5
- import { NgxsExecutionStrategy } from './execution/symbols';
6
- import { StateToken } from './state-token/state-token';
7
- export declare const ROOT_STATE_TOKEN: InjectionToken<any>;
8
- export declare const FEATURE_STATE_TOKEN: InjectionToken<any>;
9
- export declare const NGXS_PLUGINS: InjectionToken<{}>;
10
- export declare const NG_TEST_MODE: InjectionToken<Callback<boolean, any>>;
11
- export declare const NG_DEV_MODE: InjectionToken<Callback<boolean, any>>;
12
- export declare const META_KEY = "NGXS_META";
13
- export declare const META_OPTIONS_KEY = "NGXS_OPTIONS_META";
14
- export declare const SELECTOR_META_KEY = "NGXS_SELECTOR_META";
15
- export declare type NgxsLifeCycle = Partial<NgxsOnChanges> & Partial<NgxsOnInit> & Partial<NgxsAfterBootstrap>;
16
- export declare type NgxsPluginFn = (state: any, mutation: any, next: NgxsNextPluginFn) => any;
17
- /**
18
- * The NGXS config settings.
19
- */
20
- export declare class NgxsConfig {
21
- /**
22
- * Run in development mode. This will add additional debugging features:
23
- * - Object.freeze on the state and actions to guarantee immutability
24
- * (default: false)
25
- */
26
- developmentMode: boolean;
27
- compatibility: {
28
- /**
29
- * Support a strict Content Security Policy.
30
- * This will circumvent some optimisations that violate a strict CSP through the use of `new Function(...)`.
31
- * (default: false)
32
- */
33
- strictContentSecurityPolicy: boolean;
34
- };
35
- /**
36
- * Determines the execution context to perform async operations inside. An implementation can be
37
- * provided to override the default behaviour where the async operations are run
38
- * outside Angular's zone but all observable behaviours of NGXS are run back inside Angular's zone.
39
- * These observable behaviours are from:
40
- * `@Select(...)`, `store.select(...)`, `actions.subscribe(...)` or `store.dispatch(...).subscribe(...)`
41
- * Every `zone.run` causes Angular to run change detection on the whole tree (`app.tick()`) so of your
42
- * application doesn't rely on zone.js running change detection then you can switch to the
43
- * `NoopNgxsExecutionStrategy` that doesn't interact with zones.
44
- * (default: null)
45
- */
46
- executionStrategy: Type<NgxsExecutionStrategy>;
47
- /**
48
- * Defining the default state before module initialization
49
- * This is convenient if we need to create a define our own set of states.
50
- * @deprecated will be removed after v4
51
- * (default: {})
52
- */
53
- defaultsState: PlainObject;
54
- /**
55
- * Defining shared selector options
56
- */
57
- selectorOptions: SharedSelectorOptions;
58
- constructor();
59
- }
60
- export declare type StateOperator<T> = (existing: Readonly<T>) => T;
61
- /**
62
- * State context provided to the actions in the state.
63
- */
64
- export interface StateContext<T> {
65
- /**
66
- * Get the current state.
67
- */
68
- getState(): T;
69
- /**
70
- * Reset the state to a new value.
71
- */
72
- setState(val: T | StateOperator<T>): T;
73
- /**
74
- * Patch the existing state with the provided value.
75
- */
76
- patchState(val: Partial<T>): T;
77
- /**
78
- * Dispatch a new action and return the dispatched observable.
79
- */
80
- dispatch(actions: any | any[]): Observable<void>;
81
- }
82
- export declare type NgxsNextPluginFn = (state: any, mutation: any) => any;
83
- /**
84
- * Plugin interface
85
- */
86
- export interface NgxsPlugin {
87
- /**
88
- * Handle the state/action before its submitted to the state handlers.
89
- */
90
- handle(state: any, action: any, next: NgxsNextPluginFn): any;
91
- }
92
- /**
93
- * Options that can be provided to the store.
94
- */
95
- export interface StoreOptions<T> {
96
- /**
97
- * Name of the state. Required.
98
- */
99
- name: string | StateToken<T>;
100
- /**
101
- * Default values for the state. If not provided, uses empty object.
102
- */
103
- defaults?: T;
104
- /**
105
- * Sub states for the given state.
106
- */
107
- children?: StateClass[];
108
- }
109
- /**
110
- * Represents a basic change from a previous to a new value for a single state instance.
111
- * Passed as a value in a NgxsSimpleChanges object to the ngxsOnChanges hook.
112
- */
113
- export declare class NgxsSimpleChange<T = any> {
114
- readonly previousValue: T;
115
- readonly currentValue: T;
116
- readonly firstChange: boolean;
117
- constructor(previousValue: T, currentValue: T, firstChange: boolean);
118
- }
119
- /**
120
- * On init interface
121
- */
122
- export interface NgxsOnInit {
123
- ngxsOnInit(ctx?: StateContext<any>): void | any;
124
- }
125
- /**
126
- * On change interface
127
- */
128
- export interface NgxsOnChanges {
129
- ngxsOnChanges(change: NgxsSimpleChange): void;
130
- }
131
- /**
132
- * After bootstrap interface
133
- */
134
- export interface NgxsAfterBootstrap {
135
- ngxsAfterBootstrap(ctx?: StateContext<any>): void;
136
- }
137
- export declare type NgxsModuleOptions = Partial<NgxsConfig>;
1
+ import { InjectionToken, Type } from '@angular/core';
2
+ import { Observable } from 'rxjs';
3
+ import { PlainObject, StateClass } from '@ngxs/store/internals';
4
+ import { SharedSelectorOptions } from './internal/internals';
5
+ import { NgxsExecutionStrategy } from './execution/symbols';
6
+ import { StateToken } from './state-token/state-token';
7
+ export declare const ROOT_STATE_TOKEN: InjectionToken<any>;
8
+ export declare const FEATURE_STATE_TOKEN: InjectionToken<any>;
9
+ export declare const NGXS_PLUGINS: InjectionToken<{}>;
10
+ export declare const META_KEY = "NGXS_META";
11
+ export declare const META_OPTIONS_KEY = "NGXS_OPTIONS_META";
12
+ export declare const SELECTOR_META_KEY = "NGXS_SELECTOR_META";
13
+ export declare type NgxsLifeCycle = Partial<NgxsOnChanges> & Partial<NgxsOnInit> & Partial<NgxsAfterBootstrap>;
14
+ export declare type NgxsPluginFn = (state: any, mutation: any, next: NgxsNextPluginFn) => any;
15
+ /**
16
+ * The NGXS config settings.
17
+ */
18
+ export declare class NgxsConfig {
19
+ /**
20
+ * Run in development mode. This will add additional debugging features:
21
+ * - Object.freeze on the state and actions to guarantee immutability
22
+ * (default: false)
23
+ *
24
+ * @deprecated This property is no longer necessary when the Ivy compiler is used.
25
+ * We'll determine the development mode through the `ngDevMode`. It's still essential with View Engine.
26
+ */
27
+ developmentMode: boolean;
28
+ compatibility: {
29
+ /**
30
+ * Support a strict Content Security Policy.
31
+ * This will circumvent some optimisations that violate a strict CSP through the use of `new Function(...)`.
32
+ * (default: false)
33
+ */
34
+ strictContentSecurityPolicy: boolean;
35
+ };
36
+ /**
37
+ * Determines the execution context to perform async operations inside. An implementation can be
38
+ * provided to override the default behaviour where the async operations are run
39
+ * outside Angular's zone but all observable behaviours of NGXS are run back inside Angular's zone.
40
+ * These observable behaviours are from:
41
+ * `@Select(...)`, `store.select(...)`, `actions.subscribe(...)` or `store.dispatch(...).subscribe(...)`
42
+ * Every `zone.run` causes Angular to run change detection on the whole tree (`app.tick()`) so of your
43
+ * application doesn't rely on zone.js running change detection then you can switch to the
44
+ * `NoopNgxsExecutionStrategy` that doesn't interact with zones.
45
+ * (default: null)
46
+ */
47
+ executionStrategy: Type<NgxsExecutionStrategy>;
48
+ /**
49
+ * Defining the default state before module initialization
50
+ * This is convenient if we need to create a define our own set of states.
51
+ * @deprecated will be removed after v4
52
+ * (default: {})
53
+ */
54
+ defaultsState: PlainObject;
55
+ /**
56
+ * Defining shared selector options
57
+ */
58
+ selectorOptions: SharedSelectorOptions;
59
+ constructor();
60
+ }
61
+ export declare type StateOperator<T> = (existing: Readonly<T>) => T;
62
+ /**
63
+ * State context provided to the actions in the state.
64
+ */
65
+ export interface StateContext<T> {
66
+ /**
67
+ * Get the current state.
68
+ */
69
+ getState(): T;
70
+ /**
71
+ * Reset the state to a new value.
72
+ */
73
+ setState(val: T | StateOperator<T>): T;
74
+ /**
75
+ * Patch the existing state with the provided value.
76
+ */
77
+ patchState(val: Partial<T>): T;
78
+ /**
79
+ * Dispatch a new action and return the dispatched observable.
80
+ */
81
+ dispatch(actions: any | any[]): Observable<void>;
82
+ }
83
+ export declare type NgxsNextPluginFn = (state: any, mutation: any) => any;
84
+ /**
85
+ * Plugin interface
86
+ */
87
+ export interface NgxsPlugin {
88
+ /**
89
+ * Handle the state/action before its submitted to the state handlers.
90
+ */
91
+ handle(state: any, action: any, next: NgxsNextPluginFn): any;
92
+ }
93
+ /**
94
+ * Options that can be provided to the store.
95
+ */
96
+ export interface StoreOptions<T> {
97
+ /**
98
+ * Name of the state. Required.
99
+ */
100
+ name: string | StateToken<T>;
101
+ /**
102
+ * Default values for the state. If not provided, uses empty object.
103
+ */
104
+ defaults?: T;
105
+ /**
106
+ * Sub states for the given state.
107
+ */
108
+ children?: StateClass[];
109
+ }
110
+ /**
111
+ * Represents a basic change from a previous to a new value for a single state instance.
112
+ * Passed as a value in a NgxsSimpleChanges object to the ngxsOnChanges hook.
113
+ */
114
+ export declare class NgxsSimpleChange<T = any> {
115
+ readonly previousValue: T;
116
+ readonly currentValue: T;
117
+ readonly firstChange: boolean;
118
+ constructor(previousValue: T, currentValue: T, firstChange: boolean);
119
+ }
120
+ /**
121
+ * On init interface
122
+ */
123
+ export interface NgxsOnInit {
124
+ ngxsOnInit(ctx?: StateContext<any>): void | any;
125
+ }
126
+ /**
127
+ * On change interface
128
+ */
129
+ export interface NgxsOnChanges {
130
+ ngxsOnChanges(change: NgxsSimpleChange): void;
131
+ }
132
+ /**
133
+ * After bootstrap interface
134
+ */
135
+ export interface NgxsAfterBootstrap {
136
+ ngxsAfterBootstrap(ctx?: StateContext<any>): void;
137
+ }
138
+ export declare type NgxsModuleOptions = Partial<NgxsConfig>;
@@ -1,23 +1,23 @@
1
- export declare type StateFn = (...args: any[]) => any;
2
- /**
3
- * Composes a array of functions from left to right. Example:
4
- *
5
- * compose([fn, final])(state, action);
6
- *
7
- * then the funcs have a signature like:
8
- *
9
- * function fn (state, action, next) {
10
- * console.log('here', state, action, next);
11
- * return next(state, action);
12
- * }
13
- *
14
- * function final (state, action) {
15
- * console.log('here', state, action);
16
- * return state;
17
- * }
18
- *
19
- * the last function should not call `next`.
20
- *
21
- * @ignore
22
- */
23
- export declare const compose: (funcs: StateFn[]) => (...args: any[]) => any;
1
+ export declare type StateFn = (...args: any[]) => any;
2
+ /**
3
+ * Composes a array of functions from left to right. Example:
4
+ *
5
+ * compose([fn, final])(state, action);
6
+ *
7
+ * then the funcs have a signature like:
8
+ *
9
+ * function fn (state, action, next) {
10
+ * console.log('here', state, action, next);
11
+ * return next(state, action);
12
+ * }
13
+ *
14
+ * function final (state, action) {
15
+ * console.log('here', state, action);
16
+ * return state;
17
+ * }
18
+ *
19
+ * the last function should not call `next`.
20
+ *
21
+ * @ignore
22
+ */
23
+ export declare const compose: (funcs: StateFn[]) => (...args: any[]) => any;
@@ -1,5 +1,5 @@
1
- /**
2
- * Object freeze code
3
- * https://github.com/jsdf/deep-freeze
4
- */
5
- export declare const deepFreeze: (o: any) => any;
1
+ /**
2
+ * Object freeze code
3
+ * https://github.com/jsdf/deep-freeze
4
+ */
5
+ export declare const deepFreeze: (o: any) => any;
@@ -1,23 +1,23 @@
1
- import { SharedSelectorOptions, SelectorFactory } from '../internal/internals';
2
- export declare const selectorOptionsMetaAccessor: {
3
- getOptions: (target: any) => SharedSelectorOptions;
4
- defineOptions: (target: any, options: SharedSelectorOptions) => void;
5
- };
6
- interface CreationMetadata {
7
- containerClass: any;
8
- selectorName: string;
9
- getSelectorOptions?: () => SharedSelectorOptions;
10
- }
11
- /**
12
- * Function for creating a selector
13
- * @param selectors The selectors to use to create the arguments of this function
14
- * @param originalFn The original function being made into a selector
15
- * @param creationMetadata
16
- */
17
- export declare function createSelector<T extends (...args: any[]) => any>(selectors: any[] | undefined, originalFn: T, creationMetadata?: CreationMetadata): T;
18
- /**
19
- * This function gets the factory function to create the selector to get the selected slice from the app state
20
- * @ignore
21
- */
22
- export declare function getRootSelectorFactory(selector: any): SelectorFactory;
23
- export {};
1
+ import { SharedSelectorOptions, SelectorFactory } from '../internal/internals';
2
+ export declare const selectorOptionsMetaAccessor: {
3
+ getOptions: (target: any) => SharedSelectorOptions;
4
+ defineOptions: (target: any, options: SharedSelectorOptions) => void;
5
+ };
6
+ interface CreationMetadata {
7
+ containerClass: any;
8
+ selectorName: string;
9
+ getSelectorOptions?: () => SharedSelectorOptions;
10
+ }
11
+ /**
12
+ * Function for creating a selector
13
+ * @param selectors The selectors to use to create the arguments of this function
14
+ * @param originalFn The original function being made into a selector
15
+ * @param creationMetadata
16
+ */
17
+ export declare function createSelector<T extends (...args: any[]) => any>(selectors: any[] | undefined, originalFn: T, creationMetadata?: CreationMetadata): T;
18
+ /**
19
+ * This function gets the factory function to create the selector to get the selected slice from the app state
20
+ * @ignore
21
+ */
22
+ export declare function getRootSelectorFactory(selector: any): SelectorFactory;
23
+ export {};
@@ -1,8 +1,7 @@
1
- import { MetaDataModel, StateClassInternal, StatesByName } from '../internal/internals';
2
- export declare abstract class StoreValidators {
3
- static stateNameRegex: RegExp;
4
- static stateNameErrorMessage(name: string): string;
5
- static checkCorrectStateName(name: string | null): void;
6
- static checkStateNameIsUnique(state: StateClassInternal, statesByName: StatesByName): string;
7
- static getValidStateMeta(state: StateClassInternal): MetaDataModel;
8
- }
1
+ import { StateClassInternal, StatesByName } from '../internal/internals';
2
+ export declare abstract class StoreValidators {
3
+ private static stateNameRegex;
4
+ static checkThatStateIsNamedCorrectly(name: string | null): void | never;
5
+ static checkThatStateNameIsUnique(stateName: string, state: StateClassInternal, statesByName: StatesByName): void | never;
6
+ static checkThatStateClassesHaveBeenDecorated(stateClasses: StateClassInternal[]): void | never;
7
+ }
@@ -1,46 +1,46 @@
1
- /**
2
- * Returns the type from an action instance/class.
3
- * @ignore
4
- */
5
- export declare function getActionTypeFromInstance(action: any): string | undefined;
6
- /**
7
- * Matches a action
8
- * @ignore
9
- */
10
- export declare function actionMatcher(action1: any): (action2: any) => boolean;
11
- /**
12
- * Set a deeply nested value. Example:
13
- *
14
- * setValue({ foo: { bar: { eat: false } } },
15
- * 'foo.bar.eat', true) //=> { foo: { bar: { eat: true } } }
16
- *
17
- * While it traverses it also creates new objects from top down.
18
- *
19
- * @ignore
20
- */
21
- export declare const setValue: (obj: any, prop: string, val: any) => any;
22
- /**
23
- * Get a deeply nested value. Example:
24
- *
25
- * getValue({ foo: bar: [] }, 'foo.bar') //=> []
26
- *
27
- * @ignore
28
- */
29
- export declare const getValue: (obj: any, prop: string) => any;
30
- /**
31
- * Simple object check.
32
- *
33
- * isObject({a:1}) //=> true
34
- * isObject(1) //=> false
35
- *
36
- * @ignore
37
- */
38
- export declare const isObject: (item: any) => boolean;
39
- /**
40
- * Deep merge two objects.
41
- *
42
- * mergeDeep({a:1, b:{x: 1, y:2}}, {b:{x: 3}, c:4}) //=> {a:1, b:{x:3, y:2}, c:4}
43
- *
44
- * @param base base object onto which `sources` will be applied
45
- */
46
- export declare const mergeDeep: (base: any, ...sources: any[]) => any;
1
+ /**
2
+ * Returns the type from an action instance/class.
3
+ * @ignore
4
+ */
5
+ export declare function getActionTypeFromInstance(action: any): string | undefined;
6
+ /**
7
+ * Matches a action
8
+ * @ignore
9
+ */
10
+ export declare function actionMatcher(action1: any): (action2: any) => boolean;
11
+ /**
12
+ * Set a deeply nested value. Example:
13
+ *
14
+ * setValue({ foo: { bar: { eat: false } } },
15
+ * 'foo.bar.eat', true) //=> { foo: { bar: { eat: true } } }
16
+ *
17
+ * While it traverses it also creates new objects from top down.
18
+ *
19
+ * @ignore
20
+ */
21
+ export declare const setValue: (obj: any, prop: string, val: any) => any;
22
+ /**
23
+ * Get a deeply nested value. Example:
24
+ *
25
+ * getValue({ foo: bar: [] }, 'foo.bar') //=> []
26
+ *
27
+ * @ignore
28
+ */
29
+ export declare const getValue: (obj: any, prop: string) => any;
30
+ /**
31
+ * Simple object check.
32
+ *
33
+ * isObject({a:1}) //=> true
34
+ * isObject(1) //=> false
35
+ *
36
+ * @ignore
37
+ */
38
+ export declare const isObject: (item: any) => boolean;
39
+ /**
40
+ * Deep merge two objects.
41
+ *
42
+ * mergeDeep({a:1, b:{x: 1, y:2}}, {b:{x: 3}, c:4}) //=> {a:1, b:{x:3, y:2}, c:4}
43
+ *
44
+ * @param base base object onto which `sources` will be applied
45
+ */
46
+ export declare const mergeDeep: (base: any, ...sources: any[]) => any;
package/types/index.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- /* file: packages/store/types/index.d.ts */
2
- // TypeScript Version: 3.4
1
+ /* file: packages/store/types/index.d.ts */
2
+ // TypeScript Version: 3.4
@@ -1,31 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- import { Inject, Injectable } from '@angular/core';
6
- import { NG_DEV_MODE, NG_TEST_MODE } from '../symbols';
7
- export class HostEnvironment {
8
- /**
9
- * @param {?} isDevMode
10
- * @param {?} isTestMode
11
- */
12
- constructor(isDevMode, isTestMode) {
13
- this.isDevMode = isDevMode;
14
- this.isTestMode = isTestMode;
15
- }
16
- }
17
- HostEnvironment.decorators = [
18
- { type: Injectable }
19
- ];
20
- /** @nocollapse */
21
- HostEnvironment.ctorParameters = () => [
22
- { type: undefined, decorators: [{ type: Inject, args: [NG_DEV_MODE,] }] },
23
- { type: undefined, decorators: [{ type: Inject, args: [NG_TEST_MODE,] }] }
24
- ];
25
- if (false) {
26
- /** @type {?} */
27
- HostEnvironment.prototype.isDevMode;
28
- /** @type {?} */
29
- HostEnvironment.prototype.isTestMode;
30
- }
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9zdC1lbnZpcm9ubWVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3hzL3N0b3JlLyIsInNvdXJjZXMiOlsic3JjL2hvc3QtZW52aXJvbm1lbnQvaG9zdC1lbnZpcm9ubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFJdkQsTUFBTSxPQUFPLGVBQWU7Ozs7O0lBQzFCLFlBQzhCLFNBQTRCLEVBQzNCLFVBQTZCO1FBRDlCLGNBQVMsR0FBVCxTQUFTLENBQW1CO1FBQzNCLGVBQVUsR0FBVixVQUFVLENBQW1CO0lBQ3pELENBQUM7OztZQUxMLFVBQVU7Ozs7NENBR04sTUFBTSxTQUFDLFdBQVc7NENBQ2xCLE1BQU0sU0FBQyxZQUFZOzs7O0lBRHBCLG9DQUF3RDs7SUFDeEQscUNBQTBEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5HX0RFVl9NT0RFLCBOR19URVNUX01PREUgfSBmcm9tICcuLi9zeW1ib2xzJztcclxuaW1wb3J0IHsgQ2FsbGJhY2sgfSBmcm9tICcuLi9pbnRlcm5hbC9pbnRlcm5hbHMnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgSG9zdEVudmlyb25tZW50IHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBJbmplY3QoTkdfREVWX01PREUpIHB1YmxpYyBpc0Rldk1vZGU6IENhbGxiYWNrPGJvb2xlYW4+LFxyXG4gICAgQEluamVjdChOR19URVNUX01PREUpIHB1YmxpYyBpc1Rlc3RNb2RlOiBDYWxsYmFjazxib29sZWFuPlxyXG4gICkge31cclxufVxyXG4iXX0=
@@ -1,67 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- import { Injectable } from '@angular/core';
6
- import { CONFIG_MESSAGES as MESSAGES, VALIDATION_CODE as CODE } from '../configs/messages.config';
7
- import { NgxsConfig } from '../symbols';
8
- import { HostEnvironment } from '../host-environment/host-environment';
9
- export class ConfigValidator {
10
- /**
11
- * @param {?} _host
12
- * @param {?} _config
13
- */
14
- constructor(_host, _config) {
15
- this._host = _host;
16
- this._config = _config;
17
- }
18
- /**
19
- * @private
20
- * @return {?}
21
- */
22
- get isIncorrectProduction() {
23
- return !this._host.isDevMode() && this._config.developmentMode;
24
- }
25
- /**
26
- * @private
27
- * @return {?}
28
- */
29
- get isIncorrectDevelopment() {
30
- return this._host.isDevMode() && !this._config.developmentMode;
31
- }
32
- /**
33
- * @return {?}
34
- */
35
- verifyDevMode() {
36
- if (this._host.isTestMode()) {
37
- return;
38
- }
39
- if (this.isIncorrectProduction) {
40
- console.warn(MESSAGES[CODE.INCORRECT_PRODUCTION]());
41
- }
42
- else if (this.isIncorrectDevelopment) {
43
- console.warn(MESSAGES[CODE.INCORRECT_DEVELOPMENT]());
44
- }
45
- }
46
- }
47
- ConfigValidator.decorators = [
48
- { type: Injectable }
49
- ];
50
- /** @nocollapse */
51
- ConfigValidator.ctorParameters = () => [
52
- { type: HostEnvironment },
53
- { type: NgxsConfig }
54
- ];
55
- if (false) {
56
- /**
57
- * @type {?}
58
- * @private
59
- */
60
- ConfigValidator.prototype._host;
61
- /**
62
- * @type {?}
63
- * @private
64
- */
65
- ConfigValidator.prototype._config;
66
- }
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLXZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3hzL3N0b3JlLyIsInNvdXJjZXMiOlsic3JjL2ludGVybmFsL2NvbmZpZy12YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUNMLGVBQWUsSUFBSSxRQUFRLEVBQzNCLGVBQWUsSUFBSSxJQUFJLEVBQ3hCLE1BQU0sNEJBQTRCLENBQUM7QUFDcEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN4QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFHdkUsTUFBTSxPQUFPLGVBQWU7Ozs7O0lBQzFCLFlBQW9CLEtBQXNCLEVBQVUsT0FBbUI7UUFBbkQsVUFBSyxHQUFMLEtBQUssQ0FBaUI7UUFBVSxZQUFPLEdBQVAsT0FBTyxDQUFZO0lBQUcsQ0FBQzs7Ozs7SUFFM0UsSUFBWSxxQkFBcUI7UUFDL0IsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUM7SUFDakUsQ0FBQzs7Ozs7SUFFRCxJQUFZLHNCQUFzQjtRQUNoQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQztJQUNqRSxDQUFDOzs7O0lBRU0sYUFBYTtRQUNsQixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDM0IsT0FBTztTQUNSO1FBRUQsSUFBSSxJQUFJLENBQUMscUJBQXFCLEVBQUU7WUFDOUIsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ3JEO2FBQU0sSUFBSSxJQUFJLENBQUMsc0JBQXNCLEVBQUU7WUFDdEMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ3REO0lBQ0gsQ0FBQzs7O1lBdEJGLFVBQVU7Ozs7WUFGRixlQUFlO1lBRGYsVUFBVTs7Ozs7OztJQUtMLGdDQUE4Qjs7Ozs7SUFBRSxrQ0FBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQge1xyXG4gIENPTkZJR19NRVNTQUdFUyBhcyBNRVNTQUdFUyxcclxuICBWQUxJREFUSU9OX0NPREUgYXMgQ09ERVxyXG59IGZyb20gJy4uL2NvbmZpZ3MvbWVzc2FnZXMuY29uZmlnJztcclxuaW1wb3J0IHsgTmd4c0NvbmZpZyB9IGZyb20gJy4uL3N5bWJvbHMnO1xyXG5pbXBvcnQgeyBIb3N0RW52aXJvbm1lbnQgfSBmcm9tICcuLi9ob3N0LWVudmlyb25tZW50L2hvc3QtZW52aXJvbm1lbnQnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQ29uZmlnVmFsaWRhdG9yIHtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9ob3N0OiBIb3N0RW52aXJvbm1lbnQsIHByaXZhdGUgX2NvbmZpZzogTmd4c0NvbmZpZykge31cclxuXHJcbiAgcHJpdmF0ZSBnZXQgaXNJbmNvcnJlY3RQcm9kdWN0aW9uKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICF0aGlzLl9ob3N0LmlzRGV2TW9kZSgpICYmIHRoaXMuX2NvbmZpZy5kZXZlbG9wbWVudE1vZGU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldCBpc0luY29ycmVjdERldmVsb3BtZW50KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2hvc3QuaXNEZXZNb2RlKCkgJiYgIXRoaXMuX2NvbmZpZy5kZXZlbG9wbWVudE1vZGU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdmVyaWZ5RGV2TW9kZSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl9ob3N0LmlzVGVzdE1vZGUoKSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuaXNJbmNvcnJlY3RQcm9kdWN0aW9uKSB7XHJcbiAgICAgIGNvbnNvbGUud2FybihNRVNTQUdFU1tDT0RFLklOQ09SUkVDVF9QUk9EVUNUSU9OXSgpKTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5pc0luY29ycmVjdERldmVsb3BtZW50KSB7XHJcbiAgICAgIGNvbnNvbGUud2FybihNRVNTQUdFU1tDT0RFLklOQ09SUkVDVF9ERVZFTE9QTUVOVF0oKSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,34 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- import { ivyEnabledInDevMode$ } from './ivy-enabled-in-dev-mode';
6
- import { CONFIG_MESSAGES, VALIDATION_CODE } from '../configs/messages.config';
7
- /**
8
- * All provided or injected tokens must have `\@Injectable` decorator
9
- * (previously, injected tokens without `\@Injectable` were allowed
10
- * if another decorator was used, e.g. pipes).
11
- * @param {?} target
12
- * @return {?}
13
- */
14
- export function ensureStateClassIsInjectable(target) {
15
- // `ɵprov` is a static property added by the NGCC compiler. It always exists in
16
- // AOT mode because this property is added before runtime. If an application is running in
17
- // JIT mode then this property can be added by the `@Injectable()` decorator. The `@Injectable()`
18
- // decorator has to go after the `@State()` decorator, thus we prevent users from unwanted DI errors.
19
- ivyEnabledInDevMode$.subscribe((/**
20
- * @param {?} _ivyEnabledInDevMode
21
- * @return {?}
22
- */
23
- _ivyEnabledInDevMode => {
24
- if (_ivyEnabledInDevMode) {
25
- /** @type {?} */
26
- /** @nocollapse */ const ngInjectableDef = target.ɵprov;
27
- if (!ngInjectableDef) {
28
- // Don't warn if Ivy is disabled or `ɵprov` exists on the class
29
- console.warn(CONFIG_MESSAGES[VALIDATION_CODE.UNDECORATED_STATE_IN_IVY](target.name));
30
- }
31
- }
32
- }));
33
- }
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5zdXJlLXN0YXRlLWNsYXNzLWlzLWluamVjdGFibGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Abmd4cy9zdG9yZS8iLCJzb3VyY2VzIjpbInNyYy9pdnkvZW5zdXJlLXN0YXRlLWNsYXNzLWlzLWluamVjdGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7O0FBTzlFLE1BQU0sVUFBVSw0QkFBNEIsQ0FBQyxNQUFXO0lBQ3RELCtFQUErRTtJQUMvRSwwRkFBMEY7SUFDMUYsaUdBQWlHO0lBQ2pHLHFHQUFxRztJQUNyRyxvQkFBb0IsQ0FBQyxTQUFTOzs7O0lBQUMsb0JBQW9CLENBQUMsRUFBRTtRQUNwRCxJQUFJLG9CQUFvQixFQUFFOztrQkFDbEIsZUFBZSxHQUFHLE1BQU0sQ0FBQyxLQUFLO1lBQ3BDLElBQUksQ0FBQyxlQUFlLEVBQUU7Z0JBQ3BCLCtEQUErRDtnQkFDL0QsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxDQUFDLHdCQUF3QixDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7YUFDdEY7U0FDRjtJQUNILENBQUMsRUFBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGl2eUVuYWJsZWRJbkRldk1vZGUkIH0gZnJvbSAnLi9pdnktZW5hYmxlZC1pbi1kZXYtbW9kZSc7XHJcbmltcG9ydCB7IENPTkZJR19NRVNTQUdFUywgVkFMSURBVElPTl9DT0RFIH0gZnJvbSAnLi4vY29uZmlncy9tZXNzYWdlcy5jb25maWcnO1xyXG5cclxuLyoqXHJcbiAqIEFsbCBwcm92aWRlZCBvciBpbmplY3RlZCB0b2tlbnMgbXVzdCBoYXZlIGBASW5qZWN0YWJsZWAgZGVjb3JhdG9yXHJcbiAqIChwcmV2aW91c2x5LCBpbmplY3RlZCB0b2tlbnMgd2l0aG91dCBgQEluamVjdGFibGVgIHdlcmUgYWxsb3dlZFxyXG4gKiBpZiBhbm90aGVyIGRlY29yYXRvciB3YXMgdXNlZCwgZS5nLiBwaXBlcykuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZW5zdXJlU3RhdGVDbGFzc0lzSW5qZWN0YWJsZSh0YXJnZXQ6IGFueSk6IHZvaWQge1xyXG4gIC8vIGDJtXByb3ZgIGlzIGEgc3RhdGljIHByb3BlcnR5IGFkZGVkIGJ5IHRoZSBOR0NDIGNvbXBpbGVyLiBJdCBhbHdheXMgZXhpc3RzIGluXHJcbiAgLy8gQU9UIG1vZGUgYmVjYXVzZSB0aGlzIHByb3BlcnR5IGlzIGFkZGVkIGJlZm9yZSBydW50aW1lLiBJZiBhbiBhcHBsaWNhdGlvbiBpcyBydW5uaW5nIGluXHJcbiAgLy8gSklUIG1vZGUgdGhlbiB0aGlzIHByb3BlcnR5IGNhbiBiZSBhZGRlZCBieSB0aGUgYEBJbmplY3RhYmxlKClgIGRlY29yYXRvci4gVGhlIGBASW5qZWN0YWJsZSgpYFxyXG4gIC8vIGRlY29yYXRvciBoYXMgdG8gZ28gYWZ0ZXIgdGhlIGBAU3RhdGUoKWAgZGVjb3JhdG9yLCB0aHVzIHdlIHByZXZlbnQgdXNlcnMgZnJvbSB1bndhbnRlZCBESSBlcnJvcnMuXHJcbiAgaXZ5RW5hYmxlZEluRGV2TW9kZSQuc3Vic2NyaWJlKF9pdnlFbmFibGVkSW5EZXZNb2RlID0+IHtcclxuICAgIGlmIChfaXZ5RW5hYmxlZEluRGV2TW9kZSkge1xyXG4gICAgICBjb25zdCBuZ0luamVjdGFibGVEZWYgPSB0YXJnZXQuybVwcm92O1xyXG4gICAgICBpZiAoIW5nSW5qZWN0YWJsZURlZikge1xyXG4gICAgICAgIC8vIERvbid0IHdhcm4gaWYgSXZ5IGlzIGRpc2FibGVkIG9yIGDJtXByb3ZgIGV4aXN0cyBvbiB0aGUgY2xhc3NcclxuICAgICAgICBjb25zb2xlLndhcm4oQ09ORklHX01FU1NBR0VTW1ZBTElEQVRJT05fQ09ERS5VTkRFQ09SQVRFRF9TVEFURV9JTl9JVlldKHRhcmdldC5uYW1lKSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9KTtcclxufVxyXG4iXX0=