@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
@@ -1,243 +1,345 @@
1
1
  import { __spread, __awaiter, __generator } from 'tslib';
2
- import { Component, NgModule, ApplicationRef, destroyPlatform, createPlatform } from '@angular/core';
2
+ import { Component, NgModule, ApplicationRef, destroyPlatform, VERSION, createPlatform } from '@angular/core';
3
3
  import { TestBed } from '@angular/core/testing';
4
4
  import { DOCUMENT } from '@angular/common';
5
5
  import { BrowserModule, ɵBrowserDomAdapter, ɵgetDOM } from '@angular/platform-browser';
6
6
  import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing';
7
7
  import { NgxsModule, Store } from '@ngxs/store';
8
8
 
9
- /**
10
- * @fileoverview added by tsickle
11
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
12
- */
13
- var NgxsTestComponent = /** @class */ (function () {
14
- function NgxsTestComponent() {
15
- }
16
- /**
17
- * @return {?}
18
- */
19
- NgxsTestComponent.prototype.ngOnInit = /**
20
- * @return {?}
21
- */
22
- function () { };
23
- /**
24
- * @return {?}
25
- */
26
- NgxsTestComponent.prototype.ngAfterViewInit = /**
27
- * @return {?}
28
- */
29
- function () { };
30
- NgxsTestComponent.decorators = [
31
- { type: Component, args: [{
32
- selector: 'app-root',
33
- template: ''
34
- }] }
35
- ];
36
- return NgxsTestComponent;
9
+ /**
10
+ * @fileoverview added by tsickle
11
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
12
+ */
13
+ var NgxsTestComponent = /** @class */ (function () {
14
+ function NgxsTestComponent() {
15
+ }
16
+ /**
17
+ * @return {?}
18
+ */
19
+ NgxsTestComponent.prototype.ngOnInit = /**
20
+ * @return {?}
21
+ */
22
+ function () { };
23
+ /**
24
+ * @return {?}
25
+ */
26
+ NgxsTestComponent.prototype.ngAfterViewInit = /**
27
+ * @return {?}
28
+ */
29
+ function () { };
30
+ NgxsTestComponent.decorators = [
31
+ { type: Component, args: [{
32
+ selector: 'app-root',
33
+ template: ''
34
+ }] }
35
+ ];
36
+ return NgxsTestComponent;
37
37
  }());
38
38
 
39
- /**
40
- * @fileoverview added by tsickle
41
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
42
- */
43
- var NgxsTestModule = /** @class */ (function () {
44
- function NgxsTestModule() {
45
- }
46
- /**
47
- * @param {?} app
48
- * @return {?}
49
- */
50
- NgxsTestModule.ngDoBootstrap = /**
51
- * @param {?} app
52
- * @return {?}
53
- */
54
- function (app) {
55
- app.bootstrap(NgxsTestComponent);
56
- };
57
- NgxsTestModule.decorators = [
58
- { type: NgModule, args: [{
59
- imports: [BrowserModule],
60
- declarations: [NgxsTestComponent],
61
- entryComponents: [NgxsTestComponent]
62
- },] }
63
- ];
64
- return NgxsTestModule;
39
+ /**
40
+ * @fileoverview added by tsickle
41
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
42
+ */
43
+ var NgxsTestModule = /** @class */ (function () {
44
+ function NgxsTestModule() {
45
+ }
46
+ /**
47
+ * @param {?} app
48
+ * @return {?}
49
+ */
50
+ NgxsTestModule.ngDoBootstrap = /**
51
+ * @param {?} app
52
+ * @return {?}
53
+ */
54
+ function (app) {
55
+ app.bootstrap(NgxsTestComponent);
56
+ };
57
+ NgxsTestModule.decorators = [
58
+ { type: NgModule, args: [{
59
+ imports: [BrowserModule],
60
+ declarations: [NgxsTestComponent],
61
+ entryComponents: [NgxsTestComponent]
62
+ },] }
63
+ ];
64
+ return NgxsTestModule;
65
65
  }());
66
66
 
67
- /**
68
- * @fileoverview added by tsickle
69
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
70
- */
71
- var NgxsTestBed = /** @class */ (function () {
72
- function NgxsTestBed() {
73
- }
74
- /**
75
- * @param {?} options
76
- * @return {?}
77
- */
78
- NgxsTestBed.configureTestingStates = /**
79
- * @param {?} options
80
- * @return {?}
81
- */
82
- function (options) {
83
- this.resetTestBed();
84
- if (options.before) {
85
- options.before();
86
- }
87
- TestBed.configureTestingModule({
88
- imports: __spread([
89
- NgxsTestModule,
90
- NgxsModule.forRoot(options.states || [], options.ngxsOptions || {})
91
- ], (options.imports || []))
92
- }).compileComponents();
93
- NgxsTestBed.ngxsBootstrap();
94
- return {
95
- /**
96
- * @return {?}
97
- */
98
- get store() {
99
- return TestBed.inject(Store);
100
- },
101
- /**
102
- * @return {?}
103
- */
104
- get getTestBed() {
105
- return TestBed;
106
- }
107
- };
108
- };
109
- /**
110
- * @private
111
- * @return {?}
112
- */
113
- NgxsTestBed.ngxsBootstrap = /**
114
- * @private
115
- * @return {?}
116
- */
117
- function () {
118
- NgxsTestBed.createRootNode();
119
- NgxsTestModule.ngDoBootstrap(TestBed.inject(ApplicationRef));
120
- };
121
- /**
122
- * @private
123
- * @return {?}
124
- */
125
- NgxsTestBed.resetTestBed = /**
126
- * @private
127
- * @return {?}
128
- */
129
- function () {
130
- TestBed.resetTestEnvironment();
131
- TestBed.initTestEnvironment(BrowserDynamicTestingModule, platformBrowserDynamicTesting());
132
- };
133
- /**
134
- * @private
135
- * @param {?=} selector
136
- * @return {?}
137
- */
138
- NgxsTestBed.createRootNode = /**
139
- * @private
140
- * @param {?=} selector
141
- * @return {?}
142
- */
143
- function (selector) {
144
- if (selector === void 0) { selector = 'app-root'; }
145
- /** @type {?} */
146
- var document = TestBed.inject(DOCUMENT);
147
- /** @type {?} */
148
- var adapter = new ɵBrowserDomAdapter();
149
- /** @type {?} */
150
- var root = adapter.createElement(selector);
151
- document.body.appendChild(root);
152
- };
153
- return NgxsTestBed;
67
+ /**
68
+ * @fileoverview added by tsickle
69
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
70
+ */
71
+ var NgxsTestBed = /** @class */ (function () {
72
+ function NgxsTestBed() {
73
+ }
74
+ /**
75
+ * @param {?} options
76
+ * @return {?}
77
+ */
78
+ NgxsTestBed.configureTestingStates = /**
79
+ * @param {?} options
80
+ * @return {?}
81
+ */
82
+ function (options) {
83
+ this.resetTestBed();
84
+ if (options.before) {
85
+ options.before();
86
+ }
87
+ TestBed.configureTestingModule({
88
+ imports: __spread([
89
+ NgxsTestModule,
90
+ NgxsModule.forRoot(options.states || [], options.ngxsOptions || {})
91
+ ], (options.imports || []))
92
+ }).compileComponents();
93
+ NgxsTestBed.ngxsBootstrap();
94
+ return {
95
+ /**
96
+ * @return {?}
97
+ */
98
+ get store() {
99
+ return TestBed.inject(Store);
100
+ },
101
+ /**
102
+ * @return {?}
103
+ */
104
+ get getTestBed() {
105
+ return TestBed;
106
+ }
107
+ };
108
+ };
109
+ /**
110
+ * @private
111
+ * @return {?}
112
+ */
113
+ NgxsTestBed.ngxsBootstrap = /**
114
+ * @private
115
+ * @return {?}
116
+ */
117
+ function () {
118
+ NgxsTestBed.createRootNode();
119
+ NgxsTestModule.ngDoBootstrap(TestBed.inject(ApplicationRef));
120
+ };
121
+ /**
122
+ * @private
123
+ * @return {?}
124
+ */
125
+ NgxsTestBed.resetTestBed = /**
126
+ * @private
127
+ * @return {?}
128
+ */
129
+ function () {
130
+ TestBed.resetTestEnvironment();
131
+ TestBed.initTestEnvironment(BrowserDynamicTestingModule, platformBrowserDynamicTesting());
132
+ };
133
+ /**
134
+ * @private
135
+ * @param {?=} selector
136
+ * @return {?}
137
+ */
138
+ NgxsTestBed.createRootNode = /**
139
+ * @private
140
+ * @param {?=} selector
141
+ * @return {?}
142
+ */
143
+ function (selector) {
144
+ if (selector === void 0) { selector = 'app-root'; }
145
+ /** @type {?} */
146
+ var document = TestBed.inject(DOCUMENT);
147
+ /** @type {?} */
148
+ var adapter = new ɵBrowserDomAdapter();
149
+ /** @type {?} */
150
+ var root = adapter.createElement(selector);
151
+ document.body.appendChild(root);
152
+ };
153
+ return NgxsTestBed;
154
154
  }());
155
155
 
156
- /**
157
- * @fileoverview added by tsickle
158
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
159
- */
160
- /**
161
- * @return {?}
162
- */
163
- function createRootElement() {
164
- /** @type {?} */
165
- var document = TestBed.inject(DOCUMENT);
166
- /** @type {?} */
167
- var root = ɵgetDOM().createElement('app-root', document);
168
- document.body.appendChild(root);
169
- }
170
- /**
171
- * @return {?}
172
- */
173
- function removeRootElement() {
174
- /** @type {?} */
175
- var root = (/** @type {?} */ (document.getElementsByTagName('app-root').item(0)));
176
- try {
177
- document.body.removeChild(root);
178
- }
179
- catch (_a) { }
180
- }
181
- /**
182
- * @return {?}
183
- */
184
- function destroyPlatformBeforeBootstrappingTheNewOne() {
185
- destroyPlatform();
186
- createRootElement();
187
- }
188
- // As we create our custom platform via `bootstrapModule`
189
- // we have to destroy it after assetions and revert
190
- // the previous one
191
- /**
192
- * @return {?}
193
- */
194
- function resetPlatformAfterBootstrapping() {
195
- removeRootElement();
196
- destroyPlatform();
197
- createPlatform(TestBed);
198
- }
199
- /**
200
- * @param {?} fn
201
- * @return {?}
202
- */
203
- function freshPlatform(fn) {
204
- return (/**
205
- * @this {?}
206
- * @param {...?} args
207
- * @return {?}
208
- */
209
- function testWithAFreshPlatform() {
210
- var args = [];
211
- for (var _i = 0; _i < arguments.length; _i++) {
212
- args[_i] = arguments[_i];
213
- }
214
- return __awaiter(this, void 0, void 0, function () {
215
- return __generator(this, function (_a) {
216
- switch (_a.label) {
217
- case 0:
218
- _a.trys.push([0, , 2, 3]);
219
- destroyPlatformBeforeBootstrappingTheNewOne();
220
- return [4 /*yield*/, fn.apply(this, args)];
221
- case 1: return [2 /*return*/, _a.sent()];
222
- case 2:
223
- resetPlatformAfterBootstrapping();
224
- return [7 /*endfinally*/];
225
- case 3: return [2 /*return*/];
226
- }
227
- });
228
- });
229
- });
156
+ /**
157
+ * @fileoverview added by tsickle
158
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
159
+ */
160
+ /**
161
+ * @return {?}
162
+ */
163
+ function createRootElement() {
164
+ /** @type {?} */
165
+ var document = TestBed.inject(DOCUMENT);
166
+ /** @type {?} */
167
+ var root = ɵgetDOM().createElement('app-root', document);
168
+ document.body.appendChild(root);
169
+ }
170
+ /**
171
+ * @return {?}
172
+ */
173
+ function removeRootElement() {
174
+ /** @type {?} */
175
+ var root = (/** @type {?} */ (document.getElementsByTagName('app-root').item(0)));
176
+ try {
177
+ document.body.removeChild(root);
178
+ }
179
+ catch (_a) { }
180
+ }
181
+ /**
182
+ * @return {?}
183
+ */
184
+ function destroyPlatformBeforeBootstrappingTheNewOne() {
185
+ destroyPlatform();
186
+ createRootElement();
187
+ }
188
+ // As we create our custom platform via `bootstrapModule`
189
+ // we have to destroy it after assetions and revert
190
+ // the previous one
191
+ /**
192
+ * @return {?}
193
+ */
194
+ function resetPlatformAfterBootstrapping() {
195
+ removeRootElement();
196
+ destroyPlatform();
197
+ /** @type {?} */
198
+ var version = +VERSION.major;
199
+ // https://github.com/angular/angular/commit/e250db4f261741b04ee4cbad4dec41a8908a12aa
200
+ if (version < 14) {
201
+ createPlatform(TestBed);
202
+ }
203
+ }
204
+ /**
205
+ * @param {?} fn
206
+ * @return {?}
207
+ */
208
+ function freshPlatform(fn) {
209
+ /** @type {?} */
210
+ var resolve = null;
211
+ /** @type {?} */
212
+ var reject = null;
213
+ /** @type {?} */
214
+ var whenDoneIsCalledPromise = null;
215
+ /** @type {?} */
216
+ var hasDoneArgument = fn.length === 1;
217
+ if (hasDoneArgument) {
218
+ whenDoneIsCalledPromise = new Promise((/**
219
+ * @param {?} _resolve
220
+ * @param {?} _reject
221
+ * @return {?}
222
+ */
223
+ function (_resolve, _reject) {
224
+ resolve = _resolve;
225
+ reject = _reject;
226
+ }));
227
+ }
228
+ return (/**
229
+ * @return {?}
230
+ */
231
+ function testWithAFreshPlatform() {
232
+ return __awaiter(this, void 0, void 0, function () {
233
+ return __generator(this, function (_a) {
234
+ switch (_a.label) {
235
+ case 0:
236
+ _a.trys.push([0, , 6, 7]);
237
+ destroyPlatformBeforeBootstrappingTheNewOne();
238
+ if (!hasDoneArgument) return [3 /*break*/, 3];
239
+ return [4 /*yield*/, fn((/**
240
+ * @param {?=} error
241
+ * @return {?}
242
+ */
243
+ function (error) {
244
+ if (error) {
245
+ (/** @type {?} */ (reject))(error);
246
+ }
247
+ else {
248
+ (/** @type {?} */ (resolve))();
249
+ }
250
+ }))];
251
+ case 1:
252
+ _a.sent();
253
+ return [4 /*yield*/, (/** @type {?} */ (whenDoneIsCalledPromise))];
254
+ case 2:
255
+ _a.sent();
256
+ return [3 /*break*/, 5];
257
+ case 3: return [4 /*yield*/, fn()];
258
+ case 4:
259
+ _a.sent();
260
+ _a.label = 5;
261
+ case 5: return [3 /*break*/, 7];
262
+ case 6:
263
+ resetPlatformAfterBootstrapping();
264
+ return [7 /*endfinally*/];
265
+ case 7: return [2 /*return*/];
266
+ }
267
+ });
268
+ });
269
+ });
270
+ }
271
+
272
+ /**
273
+ * @fileoverview added by tsickle
274
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
275
+ */
276
+ /// <reference types="jest" />
277
+ /// <reference types="jest" />
278
+ /**
279
+ * @template T
280
+ * @param {?} fn
281
+ * @return {?}
282
+ */
283
+ function skipConsoleLogging(fn) {
284
+ /** @type {?} */
285
+ var consoleSpies = [
286
+ jest.spyOn(console, 'log').mockImplementation((/**
287
+ * @return {?}
288
+ */
289
+ function () { })),
290
+ jest.spyOn(console, 'warn').mockImplementation((/**
291
+ * @return {?}
292
+ */
293
+ function () { })),
294
+ jest.spyOn(console, 'error').mockImplementation((/**
295
+ * @return {?}
296
+ */
297
+ function () { })),
298
+ jest.spyOn(console, 'info').mockImplementation((/**
299
+ * @return {?}
300
+ */
301
+ function () { }))
302
+ ];
303
+ /**
304
+ * @return {?}
305
+ */
306
+ function restoreSpies() {
307
+ consoleSpies.forEach((/**
308
+ * @param {?} spy
309
+ * @return {?}
310
+ */
311
+ function (spy) { return spy.mockRestore(); }));
312
+ }
313
+ /** @type {?} */
314
+ var restoreSpyAsync = false;
315
+ try {
316
+ /** @type {?} */
317
+ var returnValue = fn();
318
+ if (returnValue instanceof Promise) {
319
+ restoreSpyAsync = true;
320
+ return (/** @type {?} */ (returnValue.finally((/**
321
+ * @return {?}
322
+ */
323
+ function () { return restoreSpies(); }))));
324
+ }
325
+ return returnValue;
326
+ }
327
+ finally {
328
+ if (!restoreSpyAsync) {
329
+ restoreSpies();
330
+ }
331
+ }
230
332
  }
231
333
 
232
- /**
233
- * @fileoverview added by tsickle
234
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
334
+ /**
335
+ * @fileoverview added by tsickle
336
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
235
337
  */
236
338
 
237
- /**
238
- * @fileoverview added by tsickle
239
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
339
+ /**
340
+ * @fileoverview added by tsickle
341
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
240
342
  */
241
343
 
242
- export { NgxsTestBed, freshPlatform };
344
+ export { NgxsTestBed, freshPlatform, skipConsoleLogging };
243
345
  //# sourceMappingURL=ngxs-store-internals-testing.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ngxs-store-internals-testing.js","sources":["ng://@ngxs/store/internals/testing/helpers/ngxs-test.component.ts","ng://@ngxs/store/internals/testing/helpers/ngxs-test.module.ts","ng://@ngxs/store/internals/testing/ngxs.setup.ts","ng://@ngxs/store/internals/testing/fresh-platform.ts"],"sourcesContent":["import { AfterViewInit, Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n template: ''\r\n})\r\nexport class NgxsTestComponent implements OnInit, AfterViewInit {\r\n public ngOnInit(): void {}\r\n public ngAfterViewInit(): void {}\r\n}\r\n","import { ApplicationRef, NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\n\r\nimport { NgxsTestComponent } from './ngxs-test.component';\r\n\r\n@NgModule({\r\n imports: [BrowserModule],\r\n declarations: [NgxsTestComponent],\r\n entryComponents: [NgxsTestComponent]\r\n})\r\nexport class NgxsTestModule {\r\n public static ngDoBootstrap(app: ApplicationRef): void {\r\n app.bootstrap(NgxsTestComponent);\r\n }\r\n}\r\n","import { ApplicationRef } from '@angular/core';\r\nimport { TestBed, TestBedStatic } from '@angular/core/testing';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { ɵBrowserDomAdapter as BrowserDomAdapter } from '@angular/platform-browser';\r\nimport {\r\n BrowserDynamicTestingModule,\r\n platformBrowserDynamicTesting\r\n} from '@angular/platform-browser-dynamic/testing';\r\nimport { NgxsModule, Store } from '@ngxs/store';\r\n\r\nimport { NgxsTestModule } from './helpers/ngxs-test.module';\r\nimport { NgxsOptionsTesting, NgxsTesting } from './symbol';\r\n\r\nexport class NgxsTestBed {\r\n public static configureTestingStates(options: NgxsOptionsTesting): NgxsTesting {\r\n this.resetTestBed();\r\n\r\n if (options.before) {\r\n options.before();\r\n }\r\n\r\n TestBed.configureTestingModule({\r\n imports: [\r\n NgxsTestModule,\r\n NgxsModule.forRoot(options.states || [], options.ngxsOptions || {}),\r\n ...(options.imports || [])\r\n ]\r\n }).compileComponents();\r\n\r\n NgxsTestBed.ngxsBootstrap();\r\n\r\n return {\r\n get store(): Store {\r\n return TestBed.inject(Store);\r\n },\r\n get getTestBed(): TestBedStatic {\r\n return TestBed;\r\n }\r\n };\r\n }\r\n\r\n private static ngxsBootstrap(): void {\r\n NgxsTestBed.createRootNode();\r\n NgxsTestModule.ngDoBootstrap(TestBed.inject(ApplicationRef));\r\n }\r\n\r\n private static resetTestBed(): void {\r\n TestBed.resetTestEnvironment();\r\n TestBed.initTestEnvironment(BrowserDynamicTestingModule, platformBrowserDynamicTesting());\r\n }\r\n\r\n private static createRootNode(selector = 'app-root'): void {\r\n const document = TestBed.inject(DOCUMENT);\r\n const adapter = new BrowserDomAdapter();\r\n const root = adapter.createElement(selector);\r\n document.body.appendChild(root);\r\n }\r\n}\r\n","import { TestBed } from '@angular/core/testing';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { ɵgetDOM as getDOM } from '@angular/platform-browser';\r\nimport { destroyPlatform, createPlatform } from '@angular/core';\r\n\r\nfunction createRootElement() {\r\n const document = TestBed.inject(DOCUMENT);\r\n const root = getDOM().createElement('app-root', document);\r\n document.body.appendChild(root);\r\n}\r\n\r\nfunction removeRootElement() {\r\n const root: Element = document.getElementsByTagName('app-root').item(0)!;\r\n try {\r\n document.body.removeChild(root);\r\n } catch {}\r\n}\r\n\r\nfunction destroyPlatformBeforeBootstrappingTheNewOne() {\r\n destroyPlatform();\r\n createRootElement();\r\n}\r\n\r\n// As we create our custom platform via `bootstrapModule`\r\n// we have to destroy it after assetions and revert\r\n// the previous one\r\nfunction resetPlatformAfterBootstrapping() {\r\n removeRootElement();\r\n destroyPlatform();\r\n createPlatform(TestBed);\r\n}\r\n\r\nexport function freshPlatform(fn: Function): (...args: any[]) => any {\r\n return async function testWithAFreshPlatform(this: any, ...args: any[]) {\r\n try {\r\n destroyPlatformBeforeBootstrappingTheNewOne();\r\n return await fn.apply(this, args);\r\n } finally {\r\n resetPlatformAfterBootstrapping();\r\n }\r\n };\r\n}\r\n"],"names":["BrowserDomAdapter","getDOM"],"mappings":"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"}
1
+ {"version":3,"file":"ngxs-store-internals-testing.js","sources":["ng://@ngxs/store/internals/testing/helpers/ngxs-test.component.ts","ng://@ngxs/store/internals/testing/helpers/ngxs-test.module.ts","ng://@ngxs/store/internals/testing/ngxs.setup.ts","ng://@ngxs/store/internals/testing/fresh-platform.ts","ng://@ngxs/store/internals/testing/skip-console-logging.ts"],"sourcesContent":["import { AfterViewInit, Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-root',\n template: ''\n})\nexport class NgxsTestComponent implements OnInit, AfterViewInit {\n public ngOnInit(): void {}\n public ngAfterViewInit(): void {}\n}\n","import { ApplicationRef, NgModule } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\n\nimport { NgxsTestComponent } from './ngxs-test.component';\n\n@NgModule({\n imports: [BrowserModule],\n declarations: [NgxsTestComponent],\n entryComponents: [NgxsTestComponent]\n})\nexport class NgxsTestModule {\n public static ngDoBootstrap(app: ApplicationRef): void {\n app.bootstrap(NgxsTestComponent);\n }\n}\n","import { ApplicationRef } from '@angular/core';\nimport { TestBed, TestBedStatic } from '@angular/core/testing';\nimport { DOCUMENT } from '@angular/common';\nimport { ɵBrowserDomAdapter as BrowserDomAdapter } from '@angular/platform-browser';\nimport {\n BrowserDynamicTestingModule,\n platformBrowserDynamicTesting\n} from '@angular/platform-browser-dynamic/testing';\nimport { NgxsModule, Store } from '@ngxs/store';\n\nimport { NgxsTestModule } from './helpers/ngxs-test.module';\nimport { NgxsOptionsTesting, NgxsTesting } from './symbol';\n\nexport class NgxsTestBed {\n public static configureTestingStates(options: NgxsOptionsTesting): NgxsTesting {\n this.resetTestBed();\n\n if (options.before) {\n options.before();\n }\n\n TestBed.configureTestingModule({\n imports: [\n NgxsTestModule,\n NgxsModule.forRoot(options.states || [], options.ngxsOptions || {}),\n ...(options.imports || [])\n ]\n }).compileComponents();\n\n NgxsTestBed.ngxsBootstrap();\n\n return {\n get store(): Store {\n return TestBed.inject(Store);\n },\n get getTestBed(): TestBedStatic {\n return TestBed;\n }\n };\n }\n\n private static ngxsBootstrap(): void {\n NgxsTestBed.createRootNode();\n NgxsTestModule.ngDoBootstrap(TestBed.inject(ApplicationRef));\n }\n\n private static resetTestBed(): void {\n TestBed.resetTestEnvironment();\n TestBed.initTestEnvironment(BrowserDynamicTestingModule, platformBrowserDynamicTesting());\n }\n\n private static createRootNode(selector = 'app-root'): void {\n const document = TestBed.inject(DOCUMENT);\n const adapter = new BrowserDomAdapter();\n const root = adapter.createElement(selector);\n document.body.appendChild(root);\n }\n}\n","import { TestBed } from '@angular/core/testing';\nimport { DOCUMENT } from '@angular/common';\nimport { ɵgetDOM as getDOM } from '@angular/platform-browser';\nimport { VERSION, destroyPlatform, createPlatform } from '@angular/core';\n\nfunction createRootElement() {\n const document = TestBed.inject(DOCUMENT);\n const root = getDOM().createElement('app-root', document);\n document.body.appendChild(root);\n}\n\nfunction removeRootElement() {\n const root: Element = document.getElementsByTagName('app-root').item(0)!;\n try {\n document.body.removeChild(root);\n } catch {}\n}\n\nfunction destroyPlatformBeforeBootstrappingTheNewOne() {\n destroyPlatform();\n createRootElement();\n}\n\n// As we create our custom platform via `bootstrapModule`\n// we have to destroy it after assetions and revert\n// the previous one\nfunction resetPlatformAfterBootstrapping() {\n removeRootElement();\n destroyPlatform();\n const version = +VERSION.major;\n // https://github.com/angular/angular/commit/e250db4f261741b04ee4cbad4dec41a8908a12aa\n if (version < 14) {\n createPlatform(TestBed);\n }\n}\n\nexport function freshPlatform(fn: (done?: VoidFunction) => Promise<void>) {\n let resolve: VoidFunction | null = null;\n let reject: ((error: Error) => void) | null = null;\n let whenDoneIsCalledPromise: Promise<void> | null = null;\n\n const hasDoneArgument = fn.length === 1;\n\n if (hasDoneArgument) {\n whenDoneIsCalledPromise = new Promise<void>((_resolve, _reject) => {\n resolve = _resolve;\n reject = _reject;\n });\n }\n\n return async function testWithAFreshPlatform() {\n try {\n destroyPlatformBeforeBootstrappingTheNewOne();\n\n if (hasDoneArgument) {\n await fn((error?: Error) => {\n if (error) {\n reject!(error);\n } else {\n resolve!();\n }\n });\n await whenDoneIsCalledPromise!;\n } else {\n await fn();\n }\n } finally {\n resetPlatformAfterBootstrapping();\n }\n };\n}\n","/// <reference types=\"jest\" />\n\nexport function skipConsoleLogging<T extends (...args: any[]) => any>(fn: T): ReturnType<T> {\n const consoleSpies = [\n jest.spyOn(console, 'log').mockImplementation(() => {}),\n jest.spyOn(console, 'warn').mockImplementation(() => {}),\n jest.spyOn(console, 'error').mockImplementation(() => {}),\n jest.spyOn(console, 'info').mockImplementation(() => {})\n ];\n function restoreSpies() {\n consoleSpies.forEach(spy => spy.mockRestore());\n }\n let restoreSpyAsync = false;\n try {\n const returnValue = fn();\n if (returnValue instanceof Promise) {\n restoreSpyAsync = true;\n return returnValue.finally(() => restoreSpies()) as ReturnType<T>;\n }\n return returnValue;\n } finally {\n if (!restoreSpyAsync) {\n restoreSpies();\n }\n }\n}\n"],"names":["BrowserDomAdapter","getDOM"],"mappings":"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"}