@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,120 +1,125 @@
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 { InternalDispatcher } from '../internal/dispatcher';
7
- import { StateStream } from './state-stream';
8
- import { NgxsConfig } from '../symbols';
9
- import { deepFreeze } from '../utils/freeze';
10
- /**
11
- * State Context factory class
12
- * @ignore
13
- */
14
- export class InternalStateOperations {
15
- /**
16
- * @param {?} _stateStream
17
- * @param {?} _dispatcher
18
- * @param {?} _config
19
- */
20
- constructor(_stateStream, _dispatcher, _config) {
21
- this._stateStream = _stateStream;
22
- this._dispatcher = _dispatcher;
23
- this._config = _config;
24
- }
25
- /**
26
- * Returns the root state operators.
27
- * @return {?}
28
- */
29
- getRootStateOperations() {
30
- /** @type {?} */
31
- const rootStateOperations = {
32
- getState: (/**
33
- * @return {?}
34
- */
35
- () => this._stateStream.getValue()),
36
- setState: (/**
37
- * @param {?} newState
38
- * @return {?}
39
- */
40
- (newState) => this._stateStream.next(newState)),
41
- dispatch: (/**
42
- * @param {?} actionOrActions
43
- * @return {?}
44
- */
45
- (actionOrActions) => this._dispatcher.dispatch(actionOrActions))
46
- };
47
- return this._config.developmentMode
48
- ? ensureStateAndActionsAreImmutable(rootStateOperations)
49
- : rootStateOperations;
50
- }
51
- /**
52
- * @param {?} results
53
- * @return {?}
54
- */
55
- setStateToTheCurrentWithNew(results) {
56
- /** @type {?} */
57
- const stateOperations = this.getRootStateOperations();
58
- // Get our current stream
59
- /** @type {?} */
60
- const currentState = stateOperations.getState();
61
- // Set the state to the current + new
62
- stateOperations.setState(Object.assign({}, currentState, results.defaults));
63
- }
64
- }
65
- InternalStateOperations.decorators = [
66
- { type: Injectable }
67
- ];
68
- /** @nocollapse */
69
- InternalStateOperations.ctorParameters = () => [
70
- { type: StateStream },
71
- { type: InternalDispatcher },
72
- { type: NgxsConfig }
73
- ];
74
- if (false) {
75
- /**
76
- * @type {?}
77
- * @private
78
- */
79
- InternalStateOperations.prototype._stateStream;
80
- /**
81
- * @type {?}
82
- * @private
83
- */
84
- InternalStateOperations.prototype._dispatcher;
85
- /**
86
- * @type {?}
87
- * @private
88
- */
89
- InternalStateOperations.prototype._config;
90
- }
91
- // We make it as a separate function and not the class method to tree-shake it in the future.
92
- /**
93
- * @param {?} root
94
- * @return {?}
95
- */
96
- function ensureStateAndActionsAreImmutable(root) {
97
- return {
98
- getState: (/**
99
- * @return {?}
100
- */
101
- () => root.getState()),
102
- setState: (/**
103
- * @param {?} value
104
- * @return {?}
105
- */
106
- value => {
107
- /** @type {?} */
108
- const frozenValue = deepFreeze(value);
109
- return root.setState(frozenValue);
110
- }),
111
- dispatch: (/**
112
- * @param {?} actions
113
- * @return {?}
114
- */
115
- actions => {
116
- return root.dispatch(actions);
117
- })
118
- };
119
- }
120
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUtb3BlcmF0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3hzL3N0b3JlLyIsInNvdXJjZXMiOlsic3JjL2ludGVybmFsL3N0YXRlLW9wZXJhdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDeEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7OztBQU83QyxNQUFNLE9BQU8sdUJBQXVCOzs7Ozs7SUFDbEMsWUFDVSxZQUF5QixFQUN6QixXQUErQixFQUMvQixPQUFtQjtRQUZuQixpQkFBWSxHQUFaLFlBQVksQ0FBYTtRQUN6QixnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFDL0IsWUFBTyxHQUFQLE9BQU8sQ0FBWTtJQUMxQixDQUFDOzs7OztJQUtKLHNCQUFzQjs7Y0FDZCxtQkFBbUIsR0FBRztZQUMxQixRQUFROzs7WUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFBO1lBQzVDLFFBQVE7Ozs7WUFBRSxDQUFDLFFBQWEsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7WUFDN0QsUUFBUTs7OztZQUFFLENBQUMsZUFBNEIsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUE7U0FDdkY7UUFFRCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZTtZQUNqQyxDQUFDLENBQUMsaUNBQWlDLENBQUMsbUJBQW1CLENBQUM7WUFDeEQsQ0FBQyxDQUFDLG1CQUFtQixDQUFDO0lBQzFCLENBQUM7Ozs7O0lBRUQsMkJBQTJCLENBQUMsT0FBMEI7O2NBQzlDLGVBQWUsR0FBeUIsSUFBSSxDQUFDLHNCQUFzQixFQUFFOzs7Y0FHckUsWUFBWSxHQUFHLGVBQWUsQ0FBQyxRQUFRLEVBQUU7UUFDL0MscUNBQXFDO1FBQ3JDLGVBQWUsQ0FBQyxRQUFRLG1CQUFNLFlBQVksRUFBSyxPQUFPLENBQUMsUUFBUSxFQUFHLENBQUM7SUFDckUsQ0FBQzs7O1lBOUJGLFVBQVU7Ozs7WUFSRixXQUFXO1lBRFgsa0JBQWtCO1lBRWxCLFVBQVU7Ozs7Ozs7SUFVZiwrQ0FBaUM7Ozs7O0lBQ2pDLDhDQUF1Qzs7Ozs7SUFDdkMsMENBQTJCOzs7Ozs7O0FBNkIvQixTQUFTLGlDQUFpQyxDQUFDLElBQTBCO0lBQ25FLE9BQU87UUFDTCxRQUFROzs7UUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUE7UUFDL0IsUUFBUTs7OztRQUFFLEtBQUssQ0FBQyxFQUFFOztrQkFDVixXQUFXLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQztZQUNyQyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDcEMsQ0FBQyxDQUFBO1FBQ0QsUUFBUTs7OztRQUFFLE9BQU8sQ0FBQyxFQUFFO1lBQ2xCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNoQyxDQUFDLENBQUE7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU3RhdGVPcGVyYXRpb25zLCBTdGF0ZXNBbmREZWZhdWx0cyB9IGZyb20gJy4uL2ludGVybmFsL2ludGVybmFscyc7XG5pbXBvcnQgeyBJbnRlcm5hbERpc3BhdGNoZXIgfSBmcm9tICcuLi9pbnRlcm5hbC9kaXNwYXRjaGVyJztcbmltcG9ydCB7IFN0YXRlU3RyZWFtIH0gZnJvbSAnLi9zdGF0ZS1zdHJlYW0nO1xuaW1wb3J0IHsgTmd4c0NvbmZpZyB9IGZyb20gJy4uL3N5bWJvbHMnO1xuaW1wb3J0IHsgZGVlcEZyZWV6ZSB9IGZyb20gJy4uL3V0aWxzL2ZyZWV6ZSc7XG5cbi8qKlxuICogU3RhdGUgQ29udGV4dCBmYWN0b3J5IGNsYXNzXG4gKiBAaWdub3JlXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBJbnRlcm5hbFN0YXRlT3BlcmF0aW9ucyB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX3N0YXRlU3RyZWFtOiBTdGF0ZVN0cmVhbSxcbiAgICBwcml2YXRlIF9kaXNwYXRjaGVyOiBJbnRlcm5hbERpc3BhdGNoZXIsXG4gICAgcHJpdmF0ZSBfY29uZmlnOiBOZ3hzQ29uZmlnXG4gICkge31cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgcm9vdCBzdGF0ZSBvcGVyYXRvcnMuXG4gICAqL1xuICBnZXRSb290U3RhdGVPcGVyYXRpb25zKCk6IFN0YXRlT3BlcmF0aW9uczxhbnk+IHtcbiAgICBjb25zdCByb290U3RhdGVPcGVyYXRpb25zID0ge1xuICAgICAgZ2V0U3RhdGU6ICgpID0+IHRoaXMuX3N0YXRlU3RyZWFtLmdldFZhbHVlKCksXG4gICAgICBzZXRTdGF0ZTogKG5ld1N0YXRlOiBhbnkpID0+IHRoaXMuX3N0YXRlU3RyZWFtLm5leHQobmV3U3RhdGUpLFxuICAgICAgZGlzcGF0Y2g6IChhY3Rpb25PckFjdGlvbnM6IGFueSB8IGFueVtdKSA9PiB0aGlzLl9kaXNwYXRjaGVyLmRpc3BhdGNoKGFjdGlvbk9yQWN0aW9ucylcbiAgICB9O1xuXG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZy5kZXZlbG9wbWVudE1vZGVcbiAgICAgID8gZW5zdXJlU3RhdGVBbmRBY3Rpb25zQXJlSW1tdXRhYmxlKHJvb3RTdGF0ZU9wZXJhdGlvbnMpXG4gICAgICA6IHJvb3RTdGF0ZU9wZXJhdGlvbnM7XG4gIH1cblxuICBzZXRTdGF0ZVRvVGhlQ3VycmVudFdpdGhOZXcocmVzdWx0czogU3RhdGVzQW5kRGVmYXVsdHMpOiB2b2lkIHtcbiAgICBjb25zdCBzdGF0ZU9wZXJhdGlvbnM6IFN0YXRlT3BlcmF0aW9uczxhbnk+ID0gdGhpcy5nZXRSb290U3RhdGVPcGVyYXRpb25zKCk7XG5cbiAgICAvLyBHZXQgb3VyIGN1cnJlbnQgc3RyZWFtXG4gICAgY29uc3QgY3VycmVudFN0YXRlID0gc3RhdGVPcGVyYXRpb25zLmdldFN0YXRlKCk7XG4gICAgLy8gU2V0IHRoZSBzdGF0ZSB0byB0aGUgY3VycmVudCArIG5ld1xuICAgIHN0YXRlT3BlcmF0aW9ucy5zZXRTdGF0ZSh7IC4uLmN1cnJlbnRTdGF0ZSwgLi4ucmVzdWx0cy5kZWZhdWx0cyB9KTtcbiAgfVxufVxuXG4vLyBXZSBtYWtlIGl0IGFzIGEgc2VwYXJhdGUgZnVuY3Rpb24gYW5kIG5vdCB0aGUgY2xhc3MgbWV0aG9kIHRvIHRyZWUtc2hha2UgaXQgaW4gdGhlIGZ1dHVyZS5cbmZ1bmN0aW9uIGVuc3VyZVN0YXRlQW5kQWN0aW9uc0FyZUltbXV0YWJsZShyb290OiBTdGF0ZU9wZXJhdGlvbnM8YW55Pik6IFN0YXRlT3BlcmF0aW9uczxhbnk+IHtcbiAgcmV0dXJuIHtcbiAgICBnZXRTdGF0ZTogKCkgPT4gcm9vdC5nZXRTdGF0ZSgpLFxuICAgIHNldFN0YXRlOiB2YWx1ZSA9PiB7XG4gICAgICBjb25zdCBmcm96ZW5WYWx1ZSA9IGRlZXBGcmVlemUodmFsdWUpO1xuICAgICAgcmV0dXJuIHJvb3Quc2V0U3RhdGUoZnJvemVuVmFsdWUpO1xuICAgIH0sXG4gICAgZGlzcGF0Y2g6IGFjdGlvbnMgPT4ge1xuICAgICAgcmV0dXJuIHJvb3QuZGlzcGF0Y2goYWN0aW9ucyk7XG4gICAgfVxuICB9O1xufVxuIl19
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 { InternalDispatcher } from '../internal/dispatcher';
7
+ import { StateStream } from './state-stream';
8
+ import { NgxsConfig } from '../symbols';
9
+ import { deepFreeze } from '../utils/freeze';
10
+ import { ConfigValidator } from '../internal/config-validator';
11
+ /**
12
+ * State Context factory class
13
+ * @ignore
14
+ */
15
+ export class InternalStateOperations {
16
+ /**
17
+ * @param {?} _stateStream
18
+ * @param {?} _dispatcher
19
+ * @param {?} _config
20
+ * @param {?} configValidator
21
+ */
22
+ constructor(_stateStream, _dispatcher, _config, configValidator) {
23
+ this._stateStream = _stateStream;
24
+ this._dispatcher = _dispatcher;
25
+ this._config = _config;
26
+ configValidator.verifyDevMode();
27
+ }
28
+ /**
29
+ * Returns the root state operators.
30
+ * @return {?}
31
+ */
32
+ getRootStateOperations() {
33
+ /** @type {?} */
34
+ const rootStateOperations = {
35
+ getState: (/**
36
+ * @return {?}
37
+ */
38
+ () => this._stateStream.getValue()),
39
+ setState: (/**
40
+ * @param {?} newState
41
+ * @return {?}
42
+ */
43
+ (newState) => this._stateStream.next(newState)),
44
+ dispatch: (/**
45
+ * @param {?} actionOrActions
46
+ * @return {?}
47
+ */
48
+ (actionOrActions) => this._dispatcher.dispatch(actionOrActions))
49
+ };
50
+ if (this._config.developmentMode) {
51
+ return this.ensureStateAndActionsAreImmutable(rootStateOperations);
52
+ }
53
+ return rootStateOperations;
54
+ }
55
+ /**
56
+ * @private
57
+ * @param {?} root
58
+ * @return {?}
59
+ */
60
+ ensureStateAndActionsAreImmutable(root) {
61
+ return {
62
+ getState: (/**
63
+ * @return {?}
64
+ */
65
+ () => root.getState()),
66
+ setState: (/**
67
+ * @param {?} value
68
+ * @return {?}
69
+ */
70
+ value => {
71
+ /** @type {?} */
72
+ const frozenValue = deepFreeze(value);
73
+ return root.setState(frozenValue);
74
+ }),
75
+ dispatch: (/**
76
+ * @param {?} actions
77
+ * @return {?}
78
+ */
79
+ actions => {
80
+ return root.dispatch(actions);
81
+ })
82
+ };
83
+ }
84
+ /**
85
+ * @param {?} results
86
+ * @return {?}
87
+ */
88
+ setStateToTheCurrentWithNew(results) {
89
+ /** @type {?} */
90
+ const stateOperations = this.getRootStateOperations();
91
+ // Get our current stream
92
+ /** @type {?} */
93
+ const currentState = stateOperations.getState();
94
+ // Set the state to the current + new
95
+ stateOperations.setState(Object.assign({}, currentState, results.defaults));
96
+ }
97
+ }
98
+ InternalStateOperations.decorators = [
99
+ { type: Injectable }
100
+ ];
101
+ /** @nocollapse */
102
+ InternalStateOperations.ctorParameters = () => [
103
+ { type: StateStream },
104
+ { type: InternalDispatcher },
105
+ { type: NgxsConfig },
106
+ { type: ConfigValidator }
107
+ ];
108
+ if (false) {
109
+ /**
110
+ * @type {?}
111
+ * @private
112
+ */
113
+ InternalStateOperations.prototype._stateStream;
114
+ /**
115
+ * @type {?}
116
+ * @private
117
+ */
118
+ InternalStateOperations.prototype._dispatcher;
119
+ /**
120
+ * @type {?}
121
+ * @private
122
+ */
123
+ InternalStateOperations.prototype._config;
124
+ }
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUtb3BlcmF0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3hzL3N0b3JlLyIsInNvdXJjZXMiOlsic3JjL2ludGVybmFsL3N0YXRlLW9wZXJhdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDeEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7QUFPL0QsTUFBTSxPQUFPLHVCQUF1Qjs7Ozs7OztJQUNsQyxZQUNVLFlBQXlCLEVBQ3pCLFdBQStCLEVBQy9CLE9BQW1CLEVBQzNCLGVBQWdDO1FBSHhCLGlCQUFZLEdBQVosWUFBWSxDQUFhO1FBQ3pCLGdCQUFXLEdBQVgsV0FBVyxDQUFvQjtRQUMvQixZQUFPLEdBQVAsT0FBTyxDQUFZO1FBRzNCLGVBQWUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNsQyxDQUFDOzs7OztJQUtELHNCQUFzQjs7Y0FDZCxtQkFBbUIsR0FBRztZQUMxQixRQUFROzs7WUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFBO1lBQzVDLFFBQVE7Ozs7WUFBRSxDQUFDLFFBQWEsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7WUFDN0QsUUFBUTs7OztZQUFFLENBQUMsZUFBNEIsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUE7U0FDdkY7UUFFRCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZSxFQUFFO1lBQ2hDLE9BQU8sSUFBSSxDQUFDLGlDQUFpQyxDQUFDLG1CQUFtQixDQUFDLENBQUM7U0FDcEU7UUFFRCxPQUFPLG1CQUFtQixDQUFDO0lBQzdCLENBQUM7Ozs7OztJQUVPLGlDQUFpQyxDQUFDLElBQTBCO1FBQ2xFLE9BQU87WUFDTCxRQUFROzs7WUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUE7WUFDL0IsUUFBUTs7OztZQUFFLEtBQUssQ0FBQyxFQUFFOztzQkFDVixXQUFXLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQztnQkFDckMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3BDLENBQUMsQ0FBQTtZQUNELFFBQVE7Ozs7WUFBRSxPQUFPLENBQUMsRUFBRTtnQkFDbEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ2hDLENBQUMsQ0FBQTtTQUNGLENBQUM7SUFDSixDQUFDOzs7OztJQUVELDJCQUEyQixDQUFDLE9BQTBCOztjQUM5QyxlQUFlLEdBQXlCLElBQUksQ0FBQyxzQkFBc0IsRUFBRTs7O2NBR3JFLFlBQVksR0FBRyxlQUFlLENBQUMsUUFBUSxFQUFFO1FBQy9DLHFDQUFxQztRQUNyQyxlQUFlLENBQUMsUUFBUSxtQkFBTSxZQUFZLEVBQUssT0FBTyxDQUFDLFFBQVEsRUFBRyxDQUFDO0lBQ3JFLENBQUM7OztZQWhERixVQUFVOzs7O1lBVEYsV0FBVztZQURYLGtCQUFrQjtZQUVsQixVQUFVO1lBRVYsZUFBZTs7Ozs7OztJQVNwQiwrQ0FBaUM7Ozs7O0lBQ2pDLDhDQUF1Qzs7Ozs7SUFDdkMsMENBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgU3RhdGVPcGVyYXRpb25zLCBTdGF0ZXNBbmREZWZhdWx0cyB9IGZyb20gJy4uL2ludGVybmFsL2ludGVybmFscyc7XHJcbmltcG9ydCB7IEludGVybmFsRGlzcGF0Y2hlciB9IGZyb20gJy4uL2ludGVybmFsL2Rpc3BhdGNoZXInO1xyXG5pbXBvcnQgeyBTdGF0ZVN0cmVhbSB9IGZyb20gJy4vc3RhdGUtc3RyZWFtJztcclxuaW1wb3J0IHsgTmd4c0NvbmZpZyB9IGZyb20gJy4uL3N5bWJvbHMnO1xyXG5pbXBvcnQgeyBkZWVwRnJlZXplIH0gZnJvbSAnLi4vdXRpbHMvZnJlZXplJztcclxuaW1wb3J0IHsgQ29uZmlnVmFsaWRhdG9yIH0gZnJvbSAnLi4vaW50ZXJuYWwvY29uZmlnLXZhbGlkYXRvcic7XHJcblxyXG4vKipcclxuICogU3RhdGUgQ29udGV4dCBmYWN0b3J5IGNsYXNzXHJcbiAqIEBpZ25vcmVcclxuICovXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEludGVybmFsU3RhdGVPcGVyYXRpb25zIHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX3N0YXRlU3RyZWFtOiBTdGF0ZVN0cmVhbSxcclxuICAgIHByaXZhdGUgX2Rpc3BhdGNoZXI6IEludGVybmFsRGlzcGF0Y2hlcixcclxuICAgIHByaXZhdGUgX2NvbmZpZzogTmd4c0NvbmZpZyxcclxuICAgIGNvbmZpZ1ZhbGlkYXRvcjogQ29uZmlnVmFsaWRhdG9yXHJcbiAgKSB7XHJcbiAgICBjb25maWdWYWxpZGF0b3IudmVyaWZ5RGV2TW9kZSgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0dXJucyB0aGUgcm9vdCBzdGF0ZSBvcGVyYXRvcnMuXHJcbiAgICovXHJcbiAgZ2V0Um9vdFN0YXRlT3BlcmF0aW9ucygpOiBTdGF0ZU9wZXJhdGlvbnM8YW55PiB7XHJcbiAgICBjb25zdCByb290U3RhdGVPcGVyYXRpb25zID0ge1xyXG4gICAgICBnZXRTdGF0ZTogKCkgPT4gdGhpcy5fc3RhdGVTdHJlYW0uZ2V0VmFsdWUoKSxcclxuICAgICAgc2V0U3RhdGU6IChuZXdTdGF0ZTogYW55KSA9PiB0aGlzLl9zdGF0ZVN0cmVhbS5uZXh0KG5ld1N0YXRlKSxcclxuICAgICAgZGlzcGF0Y2g6IChhY3Rpb25PckFjdGlvbnM6IGFueSB8IGFueVtdKSA9PiB0aGlzLl9kaXNwYXRjaGVyLmRpc3BhdGNoKGFjdGlvbk9yQWN0aW9ucylcclxuICAgIH07XHJcblxyXG4gICAgaWYgKHRoaXMuX2NvbmZpZy5kZXZlbG9wbWVudE1vZGUpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuZW5zdXJlU3RhdGVBbmRBY3Rpb25zQXJlSW1tdXRhYmxlKHJvb3RTdGF0ZU9wZXJhdGlvbnMpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiByb290U3RhdGVPcGVyYXRpb25zO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBlbnN1cmVTdGF0ZUFuZEFjdGlvbnNBcmVJbW11dGFibGUocm9vdDogU3RhdGVPcGVyYXRpb25zPGFueT4pOiBTdGF0ZU9wZXJhdGlvbnM8YW55PiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBnZXRTdGF0ZTogKCkgPT4gcm9vdC5nZXRTdGF0ZSgpLFxyXG4gICAgICBzZXRTdGF0ZTogdmFsdWUgPT4ge1xyXG4gICAgICAgIGNvbnN0IGZyb3plblZhbHVlID0gZGVlcEZyZWV6ZSh2YWx1ZSk7XHJcbiAgICAgICAgcmV0dXJuIHJvb3Quc2V0U3RhdGUoZnJvemVuVmFsdWUpO1xyXG4gICAgICB9LFxyXG4gICAgICBkaXNwYXRjaDogYWN0aW9ucyA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHJvb3QuZGlzcGF0Y2goYWN0aW9ucyk7XHJcbiAgICAgIH1cclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBzZXRTdGF0ZVRvVGhlQ3VycmVudFdpdGhOZXcocmVzdWx0czogU3RhdGVzQW5kRGVmYXVsdHMpOiB2b2lkIHtcclxuICAgIGNvbnN0IHN0YXRlT3BlcmF0aW9uczogU3RhdGVPcGVyYXRpb25zPGFueT4gPSB0aGlzLmdldFJvb3RTdGF0ZU9wZXJhdGlvbnMoKTtcclxuXHJcbiAgICAvLyBHZXQgb3VyIGN1cnJlbnQgc3RyZWFtXHJcbiAgICBjb25zdCBjdXJyZW50U3RhdGUgPSBzdGF0ZU9wZXJhdGlvbnMuZ2V0U3RhdGUoKTtcclxuICAgIC8vIFNldCB0aGUgc3RhdGUgdG8gdGhlIGN1cnJlbnQgKyBuZXdcclxuICAgIHN0YXRlT3BlcmF0aW9ucy5zZXRTdGF0ZSh7IC4uLmN1cnJlbnRTdGF0ZSwgLi4ucmVzdWx0cy5kZWZhdWx0cyB9KTtcclxuICB9XHJcbn1cclxuIl19
@@ -1,33 +1,33 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- import { throwPatchingArrayError, throwPatchingPrimitiveError } from '../configs/messages.config';
6
- /**
7
- * @template T
8
- * @param {?} val
9
- * @return {?}
10
- */
11
- export function simplePatch(val) {
12
- return (/**
13
- * @param {?} existingState
14
- * @return {?}
15
- */
16
- (existingState) => {
17
- if (Array.isArray(val)) {
18
- throwPatchingArrayError();
19
- }
20
- else if (typeof val !== 'object') {
21
- throwPatchingPrimitiveError();
22
- }
23
- /** @type {?} */
24
- const newState = Object.assign({}, ((/** @type {?} */ (existingState))));
25
- for (const key in val) {
26
- // deep clone for patch compatibility
27
- // noinspection JSUnfilteredForInLoop (IDE)
28
- newState[key] = ((/** @type {?} */ (val)))[key];
29
- }
30
- return (/** @type {?} */ (newState));
31
- });
32
- }
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUtb3BlcmF0b3JzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neHMvc3RvcmUvIiwic291cmNlcyI6WyJzcmMvaW50ZXJuYWwvc3RhdGUtb3BlcmF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLDJCQUEyQixFQUM1QixNQUFNLDRCQUE0QixDQUFDOzs7Ozs7QUFHcEMsTUFBTSxVQUFVLFdBQVcsQ0FBSSxHQUFlO0lBQzVDOzs7O0lBQU8sQ0FBQyxhQUEwQixFQUFFLEVBQUU7UUFDcEMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3RCLHVCQUF1QixFQUFFLENBQUM7U0FDM0I7YUFBTSxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRTtZQUNsQywyQkFBMkIsRUFBRSxDQUFDO1NBQy9COztjQUVLLFFBQVEscUJBQWEsQ0FBQyxtQkFBQSxhQUFhLEVBQU8sQ0FBQyxDQUFFO1FBQ25ELEtBQUssTUFBTSxHQUFHLElBQUksR0FBRyxFQUFFO1lBQ3JCLHFDQUFxQztZQUNyQywyQ0FBMkM7WUFDM0MsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsbUJBQUEsR0FBRyxFQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNuQztRQUVELE9BQU8sbUJBQUEsUUFBUSxFQUFLLENBQUM7SUFDdkIsQ0FBQyxFQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHRocm93UGF0Y2hpbmdBcnJheUVycm9yLFxuICB0aHJvd1BhdGNoaW5nUHJpbWl0aXZlRXJyb3Jcbn0gZnJvbSAnLi4vY29uZmlncy9tZXNzYWdlcy5jb25maWcnO1xuaW1wb3J0IHsgU3RhdGVPcGVyYXRvciB9IGZyb20gJy4uL3N5bWJvbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gc2ltcGxlUGF0Y2g8VD4odmFsOiBQYXJ0aWFsPFQ+KTogU3RhdGVPcGVyYXRvcjxUPiB7XG4gIHJldHVybiAoZXhpc3RpbmdTdGF0ZTogUmVhZG9ubHk8VD4pID0+IHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWwpKSB7XG4gICAgICB0aHJvd1BhdGNoaW5nQXJyYXlFcnJvcigpO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbCAhPT0gJ29iamVjdCcpIHtcbiAgICAgIHRocm93UGF0Y2hpbmdQcmltaXRpdmVFcnJvcigpO1xuICAgIH1cblxuICAgIGNvbnN0IG5ld1N0YXRlOiBhbnkgPSB7IC4uLihleGlzdGluZ1N0YXRlIGFzIGFueSkgfTtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiB2YWwpIHtcbiAgICAgIC8vIGRlZXAgY2xvbmUgZm9yIHBhdGNoIGNvbXBhdGliaWxpdHlcbiAgICAgIC8vIG5vaW5zcGVjdGlvbiBKU1VuZmlsdGVyZWRGb3JJbkxvb3AgKElERSlcbiAgICAgIG5ld1N0YXRlW2tleV0gPSAodmFsIGFzIGFueSlba2V5XTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3U3RhdGUgYXMgVDtcbiAgfTtcbn1cbiJdfQ==
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ import { CONFIG_MESSAGES as MESSAGES, VALIDATION_CODE as CODE } from '../configs/messages.config';
6
+ /**
7
+ * @template T
8
+ * @param {?} val
9
+ * @return {?}
10
+ */
11
+ export function simplePatch(val) {
12
+ return (/**
13
+ * @param {?} existingState
14
+ * @return {?}
15
+ */
16
+ (existingState) => {
17
+ if (Array.isArray(val)) {
18
+ throw new Error(MESSAGES[CODE.PATCHING_ARRAY]());
19
+ }
20
+ else if (typeof val !== 'object') {
21
+ throw new Error(MESSAGES[CODE.PATCHING_PRIMITIVE]());
22
+ }
23
+ /** @type {?} */
24
+ const newState = Object.assign({}, ((/** @type {?} */ (existingState))));
25
+ for (const key in val) {
26
+ // deep clone for patch compatibility
27
+ // noinspection JSUnfilteredForInLoop (IDE)
28
+ newState[key] = ((/** @type {?} */ (val)))[key];
29
+ }
30
+ return (/** @type {?} */ (newState));
31
+ });
32
+ }
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUtb3BlcmF0b3JzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neHMvc3RvcmUvIiwic291cmNlcyI6WyJzcmMvaW50ZXJuYWwvc3RhdGUtb3BlcmF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQ0wsZUFBZSxJQUFJLFFBQVEsRUFDM0IsZUFBZSxJQUFJLElBQUksRUFDeEIsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7O0FBR3BDLE1BQU0sVUFBVSxXQUFXLENBQUksR0FBZTtJQUM1Qzs7OztJQUFPLENBQUMsYUFBMEIsRUFBRSxFQUFFO1FBQ3BDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUN0QixNQUFNLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ2xEO2FBQU0sSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLEVBQUU7WUFDbEMsTUFBTSxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ3REOztjQUVLLFFBQVEscUJBQWEsQ0FBQyxtQkFBQSxhQUFhLEVBQU8sQ0FBQyxDQUFFO1FBQ25ELEtBQUssTUFBTSxHQUFHLElBQUksR0FBRyxFQUFFO1lBQ3JCLHFDQUFxQztZQUNyQywyQ0FBMkM7WUFDM0MsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsbUJBQUEsR0FBRyxFQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNuQztRQUVELE9BQU8sbUJBQUEsUUFBUSxFQUFLLENBQUM7SUFDdkIsQ0FBQyxFQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ09ORklHX01FU1NBR0VTIGFzIE1FU1NBR0VTLFxyXG4gIFZBTElEQVRJT05fQ09ERSBhcyBDT0RFXHJcbn0gZnJvbSAnLi4vY29uZmlncy9tZXNzYWdlcy5jb25maWcnO1xyXG5pbXBvcnQgeyBTdGF0ZU9wZXJhdG9yIH0gZnJvbSAnLi4vc3ltYm9scyc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc2ltcGxlUGF0Y2g8VD4odmFsOiBQYXJ0aWFsPFQ+KTogU3RhdGVPcGVyYXRvcjxUPiB7XHJcbiAgcmV0dXJuIChleGlzdGluZ1N0YXRlOiBSZWFkb25seTxUPikgPT4ge1xyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsKSkge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoTUVTU0FHRVNbQ09ERS5QQVRDSElOR19BUlJBWV0oKSk7XHJcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWwgIT09ICdvYmplY3QnKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcihNRVNTQUdFU1tDT0RFLlBBVENISU5HX1BSSU1JVElWRV0oKSk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgbmV3U3RhdGU6IGFueSA9IHsgLi4uKGV4aXN0aW5nU3RhdGUgYXMgYW55KSB9O1xyXG4gICAgZm9yIChjb25zdCBrZXkgaW4gdmFsKSB7XHJcbiAgICAgIC8vIGRlZXAgY2xvbmUgZm9yIHBhdGNoIGNvbXBhdGliaWxpdHlcclxuICAgICAgLy8gbm9pbnNwZWN0aW9uIEpTVW5maWx0ZXJlZEZvckluTG9vcCAoSURFKVxyXG4gICAgICBuZXdTdGF0ZVtrZXldID0gKHZhbCBhcyBhbnkpW2tleV07XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG5ld1N0YXRlIGFzIFQ7XHJcbiAgfTtcclxufVxyXG4iXX0=
@@ -1,21 +1,21 @@
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 { BehaviorSubject } from 'rxjs';
7
- /**
8
- * BehaviorSubject of the entire state.
9
- * @ignore
10
- */
11
- export class StateStream extends BehaviorSubject {
12
- constructor() {
13
- super({});
14
- }
15
- }
16
- StateStream.decorators = [
17
- { type: Injectable }
18
- ];
19
- /** @nocollapse */
20
- StateStream.ctorParameters = () => [];
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUtc3RyZWFtLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neHMvc3RvcmUvIiwic291cmNlcyI6WyJzcmMvaW50ZXJuYWwvc3RhdGUtc3RyZWFtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBU3ZDLE1BQU0sT0FBTyxXQUFZLFNBQVEsZUFBNEI7SUFDM0Q7UUFDRSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDWixDQUFDOzs7WUFKRixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFBsYWluT2JqZWN0IH0gZnJvbSAnQG5neHMvc3RvcmUvaW50ZXJuYWxzJztcblxuLyoqXG4gKiBCZWhhdmlvclN1YmplY3Qgb2YgdGhlIGVudGlyZSBzdGF0ZS5cbiAqIEBpZ25vcmVcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFN0YXRlU3RyZWFtIGV4dGVuZHMgQmVoYXZpb3JTdWJqZWN0PFBsYWluT2JqZWN0PiB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKHt9KTtcbiAgfVxufVxuIl19
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 { BehaviorSubject } from 'rxjs';
7
+ /**
8
+ * BehaviorSubject of the entire state.
9
+ * @ignore
10
+ */
11
+ export class StateStream extends BehaviorSubject {
12
+ constructor() {
13
+ super({});
14
+ }
15
+ }
16
+ StateStream.decorators = [
17
+ { type: Injectable }
18
+ ];
19
+ /** @nocollapse */
20
+ StateStream.ctorParameters = () => [];
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUtc3RyZWFtLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neHMvc3RvcmUvIiwic291cmNlcyI6WyJzcmMvaW50ZXJuYWwvc3RhdGUtc3RyZWFtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBU3ZDLE1BQU0sT0FBTyxXQUFZLFNBQVEsZUFBNEI7SUFDM0Q7UUFDRSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDWixDQUFDOzs7WUFKRixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IFBsYWluT2JqZWN0IH0gZnJvbSAnQG5neHMvc3RvcmUvaW50ZXJuYWxzJztcclxuXHJcbi8qKlxyXG4gKiBCZWhhdmlvclN1YmplY3Qgb2YgdGhlIGVudGlyZSBzdGF0ZS5cclxuICogQGlnbm9yZVxyXG4gKi9cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgU3RhdGVTdHJlYW0gZXh0ZW5kcyBCZWhhdmlvclN1YmplY3Q8UGxhaW5PYmplY3Q+IHtcclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHN1cGVyKHt9KTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,34 @@
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=
@@ -1,28 +1,40 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- import { ɵivyEnabled } from '@angular/core';
6
- import { getUndecoratedStateInIvyWarningMessage } 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
- if (ɵivyEnabled) {
20
- /** @type {?} */
21
- /** @nocollapse */ const ngInjectableDef = target.ɵprov;
22
- if (!ngInjectableDef) {
23
- // Don't warn if Ivy is disabled or `ɵprov` exists on the class
24
- console.warn(getUndecoratedStateInIvyWarningMessage(target.name));
25
- }
26
- }
27
- }
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXZ5LWVuYWJsZWQtaW4tZGV2LW1vZGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Abmd4cy9zdG9yZS8iLCJzb3VyY2VzIjpbInNyYy9pdnkvaXZ5LWVuYWJsZWQtaW4tZGV2LW1vZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFNUMsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7O0FBT3BGLE1BQU0sVUFBVSw0QkFBNEIsQ0FBQyxNQUFXO0lBQ3RELCtFQUErRTtJQUMvRSwwRkFBMEY7SUFDMUYsaUdBQWlHO0lBQ2pHLHFHQUFxRztJQUNyRyxJQUFJLFdBQVcsRUFBRTs7Y0FDVCxlQUFlLEdBQUcsTUFBTSxDQUFDLEtBQUs7UUFDcEMsSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUNwQiwrREFBK0Q7WUFDL0QsT0FBTyxDQUFDLElBQUksQ0FBQyxzQ0FBc0MsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztTQUNuRTtLQUNGO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IMm1aXZ5RW5hYmxlZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBnZXRVbmRlY29yYXRlZFN0YXRlSW5JdnlXYXJuaW5nTWVzc2FnZSB9IGZyb20gJy4uL2NvbmZpZ3MvbWVzc2FnZXMuY29uZmlnJztcblxuLyoqXG4gKiBBbGwgcHJvdmlkZWQgb3IgaW5qZWN0ZWQgdG9rZW5zIG11c3QgaGF2ZSBgQEluamVjdGFibGVgIGRlY29yYXRvclxuICogKHByZXZpb3VzbHksIGluamVjdGVkIHRva2VucyB3aXRob3V0IGBASW5qZWN0YWJsZWAgd2VyZSBhbGxvd2VkXG4gKiBpZiBhbm90aGVyIGRlY29yYXRvciB3YXMgdXNlZCwgZS5nLiBwaXBlcykuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBlbnN1cmVTdGF0ZUNsYXNzSXNJbmplY3RhYmxlKHRhcmdldDogYW55KTogdm9pZCB7XG4gIC8vIGDJtXByb3ZgIGlzIGEgc3RhdGljIHByb3BlcnR5IGFkZGVkIGJ5IHRoZSBOR0NDIGNvbXBpbGVyLiBJdCBhbHdheXMgZXhpc3RzIGluXG4gIC8vIEFPVCBtb2RlIGJlY2F1c2UgdGhpcyBwcm9wZXJ0eSBpcyBhZGRlZCBiZWZvcmUgcnVudGltZS4gSWYgYW4gYXBwbGljYXRpb24gaXMgcnVubmluZyBpblxuICAvLyBKSVQgbW9kZSB0aGVuIHRoaXMgcHJvcGVydHkgY2FuIGJlIGFkZGVkIGJ5IHRoZSBgQEluamVjdGFibGUoKWAgZGVjb3JhdG9yLiBUaGUgYEBJbmplY3RhYmxlKClgXG4gIC8vIGRlY29yYXRvciBoYXMgdG8gZ28gYWZ0ZXIgdGhlIGBAU3RhdGUoKWAgZGVjb3JhdG9yLCB0aHVzIHdlIHByZXZlbnQgdXNlcnMgZnJvbSB1bndhbnRlZCBESSBlcnJvcnMuXG4gIGlmICjJtWl2eUVuYWJsZWQpIHtcbiAgICBjb25zdCBuZ0luamVjdGFibGVEZWYgPSB0YXJnZXQuybVwcm92O1xuICAgIGlmICghbmdJbmplY3RhYmxlRGVmKSB7XG4gICAgICAvLyBEb24ndCB3YXJuIGlmIEl2eSBpcyBkaXNhYmxlZCBvciBgybVwcm92YCBleGlzdHMgb24gdGhlIGNsYXNzXG4gICAgICBjb25zb2xlLndhcm4oZ2V0VW5kZWNvcmF0ZWRTdGF0ZUluSXZ5V2FybmluZ01lc3NhZ2UodGFyZ2V0Lm5hbWUpKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ import { isDevMode } from '@angular/core';
6
+ import { ReplaySubject } from 'rxjs';
7
+ /** @type {?} */
8
+ export const ivyEnabledInDevMode$ = new ReplaySubject(1);
9
+ /**
10
+ * Ivy exposes helper functions to the global `window.ng` object.
11
+ * Those functions are `getComponent, getContext,
12
+ * getListeners, getViewComponent, getHostElement, getInjector,
13
+ * getRootComponents, getDirectives, getDebugNode`
14
+ * Previously, old view engine exposed `window.ng.coreTokens` and
15
+ * `window.ng.probe` if an application was in development/production.
16
+ * Ivy doesn't expose these functions in production. Developers will be able
17
+ * to see warnings in both JIT/AOT modes, but only if an application
18
+ * is in development.
19
+ * @return {?}
20
+ */
21
+ export function setIvyEnabledInDevMode() {
22
+ try {
23
+ // `try-catch` will also handle server-side rendering, as
24
+ // `window is not defined` will not be thrown.
25
+ /** @type {?} */
26
+ const ng = ((/** @type {?} */ (window))).ng;
27
+ /** @type {?} */
28
+ const _viewEngineEnabled = !!ng.probe && !!ng.coreTokens;
29
+ /** @type {?} */
30
+ const _ivyEnabledInDevMode = !_viewEngineEnabled && isDevMode();
31
+ ivyEnabledInDevMode$.next(_ivyEnabledInDevMode);
32
+ }
33
+ catch (_a) {
34
+ ivyEnabledInDevMode$.next(false);
35
+ }
36
+ finally {
37
+ ivyEnabledInDevMode$.complete();
38
+ }
39
+ }
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXZ5LWVuYWJsZWQtaW4tZGV2LW1vZGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Abmd4cy9zdG9yZS8iLCJzb3VyY2VzIjpbInNyYy9pdnkvaXZ5LWVuYWJsZWQtaW4tZGV2LW1vZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFFckMsTUFBTSxPQUFPLG9CQUFvQixHQUFHLElBQUksYUFBYSxDQUFVLENBQUMsQ0FBQzs7Ozs7Ozs7Ozs7OztBQWFqRSxNQUFNLFVBQVUsc0JBQXNCO0lBQ3BDLElBQUk7Ozs7Y0FHSSxFQUFFLEdBQUcsQ0FBQyxtQkFBQSxNQUFNLEVBQU8sQ0FBQyxDQUFDLEVBQUU7O2NBQ3ZCLGtCQUFrQixHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUMsVUFBVTs7Y0FDbEQsb0JBQW9CLEdBQUcsQ0FBQyxrQkFBa0IsSUFBSSxTQUFTLEVBQUU7UUFDL0Qsb0JBQW9CLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7S0FDakQ7SUFBQyxXQUFNO1FBQ04sb0JBQW9CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBQ2xDO1lBQVM7UUFDUixvQkFBb0IsQ0FBQyxRQUFRLEVBQUUsQ0FBQztLQUNqQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0Rldk1vZGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUmVwbGF5U3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuZXhwb3J0IGNvbnN0IGl2eUVuYWJsZWRJbkRldk1vZGUkID0gbmV3IFJlcGxheVN1YmplY3Q8Ym9vbGVhbj4oMSk7XHJcblxyXG4vKipcclxuICogSXZ5IGV4cG9zZXMgaGVscGVyIGZ1bmN0aW9ucyB0byB0aGUgZ2xvYmFsIGB3aW5kb3cubmdgIG9iamVjdC5cclxuICogVGhvc2UgZnVuY3Rpb25zIGFyZSBgZ2V0Q29tcG9uZW50LCBnZXRDb250ZXh0LFxyXG4gKiBnZXRMaXN0ZW5lcnMsIGdldFZpZXdDb21wb25lbnQsIGdldEhvc3RFbGVtZW50LCBnZXRJbmplY3RvcixcclxuICogZ2V0Um9vdENvbXBvbmVudHMsIGdldERpcmVjdGl2ZXMsIGdldERlYnVnTm9kZWBcclxuICogUHJldmlvdXNseSwgb2xkIHZpZXcgZW5naW5lIGV4cG9zZWQgYHdpbmRvdy5uZy5jb3JlVG9rZW5zYCBhbmRcclxuICogYHdpbmRvdy5uZy5wcm9iZWAgaWYgYW4gYXBwbGljYXRpb24gd2FzIGluIGRldmVsb3BtZW50L3Byb2R1Y3Rpb24uXHJcbiAqIEl2eSBkb2Vzbid0IGV4cG9zZSB0aGVzZSBmdW5jdGlvbnMgaW4gcHJvZHVjdGlvbi4gRGV2ZWxvcGVycyB3aWxsIGJlIGFibGVcclxuICogdG8gc2VlIHdhcm5pbmdzIGluIGJvdGggSklUL0FPVCBtb2RlcywgYnV0IG9ubHkgaWYgYW4gYXBwbGljYXRpb25cclxuICogaXMgaW4gZGV2ZWxvcG1lbnQuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gc2V0SXZ5RW5hYmxlZEluRGV2TW9kZSgpOiB2b2lkIHtcclxuICB0cnkge1xyXG4gICAgLy8gYHRyeS1jYXRjaGAgd2lsbCBhbHNvIGhhbmRsZSBzZXJ2ZXItc2lkZSByZW5kZXJpbmcsIGFzXHJcbiAgICAvLyBgd2luZG93IGlzIG5vdCBkZWZpbmVkYCB3aWxsIG5vdCBiZSB0aHJvd24uXHJcbiAgICBjb25zdCBuZyA9ICh3aW5kb3cgYXMgYW55KS5uZztcclxuICAgIGNvbnN0IF92aWV3RW5naW5lRW5hYmxlZCA9ICEhbmcucHJvYmUgJiYgISFuZy5jb3JlVG9rZW5zO1xyXG4gICAgY29uc3QgX2l2eUVuYWJsZWRJbkRldk1vZGUgPSAhX3ZpZXdFbmdpbmVFbmFibGVkICYmIGlzRGV2TW9kZSgpO1xyXG4gICAgaXZ5RW5hYmxlZEluRGV2TW9kZSQubmV4dChfaXZ5RW5hYmxlZEluRGV2TW9kZSk7XHJcbiAgfSBjYXRjaCB7XHJcbiAgICBpdnlFbmFibGVkSW5EZXZNb2RlJC5uZXh0KGZhbHNlKTtcclxuICB9IGZpbmFsbHkge1xyXG4gICAgaXZ5RW5hYmxlZEluRGV2TW9kZSQuY29tcGxldGUoKTtcclxuICB9XHJcbn1cclxuIl19