@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,47 +1,47 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- import { Inject, Injector, NgModule, Optional, ɵivyEnabled } from '@angular/core';
6
- import { StateFactory } from '../internal/state-factory';
7
- import { InternalStateOperations } from '../internal/state-operations';
8
- import { Store } from '../store';
9
- import { SelectFactory } from '../decorators/select/select-factory';
10
- import { ROOT_STATE_TOKEN } from '../symbols';
11
- import { LifecycleStateManager } from '../internal/lifecycle-state-manager';
12
- import { InitState } from '../actions/actions';
13
- /**
14
- * Root module
15
- * @ignore
16
- */
17
- var NgxsRootModule = /** @class */ (function () {
18
- function NgxsRootModule(factory, internalStateOperations, _store, injector, states, lifecycleStateManager) {
19
- if (states === void 0) { states = []; }
20
- // If the user is running View Engine then we create the `SelectFactory` instance,
21
- // otherwise it'll be tree-shaken away in Ivy.
22
- !ɵivyEnabled && injector.get(SelectFactory);
23
- // Add stores to the state graph and return their defaults
24
- /** @type {?} */
25
- var results = factory.addAndReturnDefaults(states);
26
- internalStateOperations.setStateToTheCurrentWithNew(results);
27
- // Connect our actions stream
28
- factory.connectActionHandlers();
29
- // Dispatch the init action and invoke init and bootstrap functions after
30
- lifecycleStateManager.ngxsBootstrap(new InitState(), results);
31
- }
32
- NgxsRootModule.decorators = [
33
- { type: NgModule }
34
- ];
35
- /** @nocollapse */
36
- NgxsRootModule.ctorParameters = function () { return [
37
- { type: StateFactory },
38
- { type: InternalStateOperations },
39
- { type: Store },
40
- { type: Injector },
41
- { type: Array, decorators: [{ type: Optional }, { type: Inject, args: [ROOT_STATE_TOKEN,] }] },
42
- { type: LifecycleStateManager }
43
- ]; };
44
- return NgxsRootModule;
45
- }());
46
- export { NgxsRootModule };
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4cy1yb290Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3hzL3N0b3JlLyIsInNvdXJjZXMiOlsic3JjL21vZHVsZXMvbmd4cy1yb290Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDakMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUU5QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7O0FBTS9DO0lBRUUsd0JBQ0UsT0FBcUIsRUFDckIsdUJBQWdELEVBQ2hELE1BQWEsRUFDYixRQUFrQixFQUdsQixNQUFpQyxFQUNqQyxxQkFBNEM7UUFINUMsdUJBQUEsRUFBQSxXQUVpQztRQUdqQyxrRkFBa0Y7UUFDbEYsOENBQThDO1FBQzlDLENBQUMsV0FBVyxJQUFJLFFBQVEsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7OztZQUd0QyxPQUFPLEdBQXNCLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUM7UUFFdkUsdUJBQXVCLENBQUMsMkJBQTJCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFN0QsNkJBQTZCO1FBQzdCLE9BQU8sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBRWhDLHlFQUF5RTtRQUN6RSxxQkFBcUIsQ0FBQyxhQUFhLENBQUMsSUFBSSxTQUFTLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNoRSxDQUFDOztnQkExQkYsUUFBUTs7OztnQkFiQSxZQUFZO2dCQUNaLHVCQUF1QjtnQkFDdkIsS0FBSztnQkFKRyxRQUFROzRDQXNCcEIsUUFBUSxZQUNSLE1BQU0sU0FBQyxnQkFBZ0I7Z0JBZm5CLHFCQUFxQjs7SUFrQzlCLHFCQUFDO0NBQUEsQUEzQkQsSUEyQkM7U0ExQlksY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0b3IsIE5nTW9kdWxlLCBPcHRpb25hbCwgybVpdnlFbmFibGVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFN0YXRlRmFjdG9yeSB9IGZyb20gJy4uL2ludGVybmFsL3N0YXRlLWZhY3RvcnknO1xuaW1wb3J0IHsgSW50ZXJuYWxTdGF0ZU9wZXJhdGlvbnMgfSBmcm9tICcuLi9pbnRlcm5hbC9zdGF0ZS1vcGVyYXRpb25zJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnLi4vc3RvcmUnO1xuaW1wb3J0IHsgU2VsZWN0RmFjdG9yeSB9IGZyb20gJy4uL2RlY29yYXRvcnMvc2VsZWN0L3NlbGVjdC1mYWN0b3J5JztcbmltcG9ydCB7IFJPT1RfU1RBVEVfVE9LRU4gfSBmcm9tICcuLi9zeW1ib2xzJztcbmltcG9ydCB7IFN0YXRlQ2xhc3NJbnRlcm5hbCwgU3RhdGVzQW5kRGVmYXVsdHMgfSBmcm9tICcuLi9pbnRlcm5hbC9pbnRlcm5hbHMnO1xuaW1wb3J0IHsgTGlmZWN5Y2xlU3RhdGVNYW5hZ2VyIH0gZnJvbSAnLi4vaW50ZXJuYWwvbGlmZWN5Y2xlLXN0YXRlLW1hbmFnZXInO1xuaW1wb3J0IHsgSW5pdFN0YXRlIH0gZnJvbSAnLi4vYWN0aW9ucy9hY3Rpb25zJztcblxuLyoqXG4gKiBSb290IG1vZHVsZVxuICogQGlnbm9yZVxuICovXG5ATmdNb2R1bGUoKVxuZXhwb3J0IGNsYXNzIE5neHNSb290TW9kdWxlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgZmFjdG9yeTogU3RhdGVGYWN0b3J5LFxuICAgIGludGVybmFsU3RhdGVPcGVyYXRpb25zOiBJbnRlcm5hbFN0YXRlT3BlcmF0aW9ucyxcbiAgICBfc3RvcmU6IFN0b3JlLFxuICAgIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoUk9PVF9TVEFURV9UT0tFTilcbiAgICBzdGF0ZXM6IFN0YXRlQ2xhc3NJbnRlcm5hbFtdID0gW10sXG4gICAgbGlmZWN5Y2xlU3RhdGVNYW5hZ2VyOiBMaWZlY3ljbGVTdGF0ZU1hbmFnZXJcbiAgKSB7XG4gICAgLy8gSWYgdGhlIHVzZXIgaXMgcnVubmluZyBWaWV3IEVuZ2luZSB0aGVuIHdlIGNyZWF0ZSB0aGUgYFNlbGVjdEZhY3RvcnlgIGluc3RhbmNlLFxuICAgIC8vIG90aGVyd2lzZSBpdCdsbCBiZSB0cmVlLXNoYWtlbiBhd2F5IGluIEl2eS5cbiAgICAhybVpdnlFbmFibGVkICYmIGluamVjdG9yLmdldChTZWxlY3RGYWN0b3J5KTtcblxuICAgIC8vIEFkZCBzdG9yZXMgdG8gdGhlIHN0YXRlIGdyYXBoIGFuZCByZXR1cm4gdGhlaXIgZGVmYXVsdHNcbiAgICBjb25zdCByZXN1bHRzOiBTdGF0ZXNBbmREZWZhdWx0cyA9IGZhY3RvcnkuYWRkQW5kUmV0dXJuRGVmYXVsdHMoc3RhdGVzKTtcblxuICAgIGludGVybmFsU3RhdGVPcGVyYXRpb25zLnNldFN0YXRlVG9UaGVDdXJyZW50V2l0aE5ldyhyZXN1bHRzKTtcblxuICAgIC8vIENvbm5lY3Qgb3VyIGFjdGlvbnMgc3RyZWFtXG4gICAgZmFjdG9yeS5jb25uZWN0QWN0aW9uSGFuZGxlcnMoKTtcblxuICAgIC8vIERpc3BhdGNoIHRoZSBpbml0IGFjdGlvbiBhbmQgaW52b2tlIGluaXQgYW5kIGJvb3RzdHJhcCBmdW5jdGlvbnMgYWZ0ZXJcbiAgICBsaWZlY3ljbGVTdGF0ZU1hbmFnZXIubmd4c0Jvb3RzdHJhcChuZXcgSW5pdFN0YXRlKCksIHJlc3VsdHMpO1xuICB9XG59XG4iXX0=
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ import { Inject, NgModule, Optional } from '@angular/core';
6
+ import { StateFactory } from '../internal/state-factory';
7
+ import { InternalStateOperations } from '../internal/state-operations';
8
+ import { Store } from '../store';
9
+ import { SelectFactory } from '../decorators/select/select-factory';
10
+ import { ROOT_STATE_TOKEN } from '../symbols';
11
+ import { LifecycleStateManager } from '../internal/lifecycle-state-manager';
12
+ import { InitState } from '../actions/actions';
13
+ import { setIvyEnabledInDevMode } from '../ivy/ivy-enabled-in-dev-mode';
14
+ /**
15
+ * Root module
16
+ * @ignore
17
+ */
18
+ var NgxsRootModule = /** @class */ (function () {
19
+ function NgxsRootModule(factory, internalStateOperations, _store, _select, states, lifecycleStateManager) {
20
+ if (states === void 0) { states = []; }
21
+ // Validate states on having the `@Injectable()` decorator in Ivy
22
+ setIvyEnabledInDevMode();
23
+ // Add stores to the state graph and return their defaults
24
+ /** @type {?} */
25
+ var results = factory.addAndReturnDefaults(states);
26
+ internalStateOperations.setStateToTheCurrentWithNew(results);
27
+ // Connect our actions stream
28
+ factory.connectActionHandlers();
29
+ // Dispatch the init action and invoke init and bootstrap functions after
30
+ lifecycleStateManager.ngxsBootstrap(new InitState(), results);
31
+ }
32
+ NgxsRootModule.decorators = [
33
+ { type: NgModule }
34
+ ];
35
+ /** @nocollapse */
36
+ NgxsRootModule.ctorParameters = function () { return [
37
+ { type: StateFactory },
38
+ { type: InternalStateOperations },
39
+ { type: Store },
40
+ { type: SelectFactory },
41
+ { type: Array, decorators: [{ type: Optional }, { type: Inject, args: [ROOT_STATE_TOKEN,] }] },
42
+ { type: LifecycleStateManager }
43
+ ]; };
44
+ return NgxsRootModule;
45
+ }());
46
+ export { NgxsRootModule };
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4cy1yb290Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3hzL3N0b3JlLyIsInNvdXJjZXMiOlsic3JjL21vZHVsZXMvbmd4cy1yb290Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFOUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDNUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7OztBQU14RTtJQUVFLHdCQUNFLE9BQXFCLEVBQ3JCLHVCQUFnRCxFQUNoRCxNQUFhLEVBQ2IsT0FBc0IsRUFHdEIsTUFBaUMsRUFDakMscUJBQTRDO1FBSDVDLHVCQUFBLEVBQUEsV0FFaUM7UUFHakMsaUVBQWlFO1FBQ2pFLHNCQUFzQixFQUFFLENBQUM7OztZQUduQixPQUFPLEdBQXNCLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUM7UUFFdkUsdUJBQXVCLENBQUMsMkJBQTJCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFN0QsNkJBQTZCO1FBQzdCLE9BQU8sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBRWhDLHlFQUF5RTtRQUN6RSxxQkFBcUIsQ0FBQyxhQUFhLENBQUMsSUFBSSxTQUFTLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNoRSxDQUFDOztnQkF6QkYsUUFBUTs7OztnQkFkQSxZQUFZO2dCQUNaLHVCQUF1QjtnQkFDdkIsS0FBSztnQkFDTCxhQUFhOzRDQWtCakIsUUFBUSxZQUNSLE1BQU0sU0FBQyxnQkFBZ0I7Z0JBaEJuQixxQkFBcUI7O0lBa0M5QixxQkFBQztDQUFBLEFBMUJELElBMEJDO1NBekJZLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIE5nTW9kdWxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgU3RhdGVGYWN0b3J5IH0gZnJvbSAnLi4vaW50ZXJuYWwvc3RhdGUtZmFjdG9yeSc7XHJcbmltcG9ydCB7IEludGVybmFsU3RhdGVPcGVyYXRpb25zIH0gZnJvbSAnLi4vaW50ZXJuYWwvc3RhdGUtb3BlcmF0aW9ucyc7XHJcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnLi4vc3RvcmUnO1xyXG5pbXBvcnQgeyBTZWxlY3RGYWN0b3J5IH0gZnJvbSAnLi4vZGVjb3JhdG9ycy9zZWxlY3Qvc2VsZWN0LWZhY3RvcnknO1xyXG5pbXBvcnQgeyBST09UX1NUQVRFX1RPS0VOIH0gZnJvbSAnLi4vc3ltYm9scyc7XHJcbmltcG9ydCB7IFN0YXRlQ2xhc3NJbnRlcm5hbCwgU3RhdGVzQW5kRGVmYXVsdHMgfSBmcm9tICcuLi9pbnRlcm5hbC9pbnRlcm5hbHMnO1xyXG5pbXBvcnQgeyBMaWZlY3ljbGVTdGF0ZU1hbmFnZXIgfSBmcm9tICcuLi9pbnRlcm5hbC9saWZlY3ljbGUtc3RhdGUtbWFuYWdlcic7XHJcbmltcG9ydCB7IEluaXRTdGF0ZSB9IGZyb20gJy4uL2FjdGlvbnMvYWN0aW9ucyc7XHJcbmltcG9ydCB7IHNldEl2eUVuYWJsZWRJbkRldk1vZGUgfSBmcm9tICcuLi9pdnkvaXZ5LWVuYWJsZWQtaW4tZGV2LW1vZGUnO1xyXG5cclxuLyoqXHJcbiAqIFJvb3QgbW9kdWxlXHJcbiAqIEBpZ25vcmVcclxuICovXHJcbkBOZ01vZHVsZSgpXHJcbmV4cG9ydCBjbGFzcyBOZ3hzUm9vdE1vZHVsZSB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBmYWN0b3J5OiBTdGF0ZUZhY3RvcnksXHJcbiAgICBpbnRlcm5hbFN0YXRlT3BlcmF0aW9uczogSW50ZXJuYWxTdGF0ZU9wZXJhdGlvbnMsXHJcbiAgICBfc3RvcmU6IFN0b3JlLFxyXG4gICAgX3NlbGVjdDogU2VsZWN0RmFjdG9yeSxcclxuICAgIEBPcHRpb25hbCgpXHJcbiAgICBASW5qZWN0KFJPT1RfU1RBVEVfVE9LRU4pXHJcbiAgICBzdGF0ZXM6IFN0YXRlQ2xhc3NJbnRlcm5hbFtdID0gW10sXHJcbiAgICBsaWZlY3ljbGVTdGF0ZU1hbmFnZXI6IExpZmVjeWNsZVN0YXRlTWFuYWdlclxyXG4gICkge1xyXG4gICAgLy8gVmFsaWRhdGUgc3RhdGVzIG9uIGhhdmluZyB0aGUgYEBJbmplY3RhYmxlKClgIGRlY29yYXRvciBpbiBJdnlcclxuICAgIHNldEl2eUVuYWJsZWRJbkRldk1vZGUoKTtcclxuXHJcbiAgICAvLyBBZGQgc3RvcmVzIHRvIHRoZSBzdGF0ZSBncmFwaCBhbmQgcmV0dXJuIHRoZWlyIGRlZmF1bHRzXHJcbiAgICBjb25zdCByZXN1bHRzOiBTdGF0ZXNBbmREZWZhdWx0cyA9IGZhY3RvcnkuYWRkQW5kUmV0dXJuRGVmYXVsdHMoc3RhdGVzKTtcclxuXHJcbiAgICBpbnRlcm5hbFN0YXRlT3BlcmF0aW9ucy5zZXRTdGF0ZVRvVGhlQ3VycmVudFdpdGhOZXcocmVzdWx0cyk7XHJcblxyXG4gICAgLy8gQ29ubmVjdCBvdXIgYWN0aW9ucyBzdHJlYW1cclxuICAgIGZhY3RvcnkuY29ubmVjdEFjdGlvbkhhbmRsZXJzKCk7XHJcblxyXG4gICAgLy8gRGlzcGF0Y2ggdGhlIGluaXQgYWN0aW9uIGFuZCBpbnZva2UgaW5pdCBhbmQgYm9vdHN0cmFwIGZ1bmN0aW9ucyBhZnRlclxyXG4gICAgbGlmZWN5Y2xlU3RhdGVNYW5hZ2VyLm5neHNCb290c3RyYXAobmV3IEluaXRTdGF0ZSgpLCByZXN1bHRzKTtcclxuICB9XHJcbn1cclxuIl19
@@ -1,58 +1,58 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- import { Observable } from 'rxjs';
6
- /**
7
- * Returns operator that will run
8
- * `subscribe` outside of the ngxs execution context
9
- * @template T
10
- * @param {?} ngxsExecutionStrategy
11
- * @return {?}
12
- */
13
- export function leaveNgxs(ngxsExecutionStrategy) {
14
- return (/**
15
- * @param {?} source
16
- * @return {?}
17
- */
18
- function (source) {
19
- return new Observable((/**
20
- * @param {?} sink
21
- * @return {?}
22
- */
23
- function (sink) {
24
- return source.subscribe({
25
- next: /**
26
- * @param {?} value
27
- * @return {?}
28
- */
29
- function (value) {
30
- ngxsExecutionStrategy.leave((/**
31
- * @return {?}
32
- */
33
- function () { return sink.next(value); }));
34
- },
35
- error: /**
36
- * @param {?} error
37
- * @return {?}
38
- */
39
- function (error) {
40
- ngxsExecutionStrategy.leave((/**
41
- * @return {?}
42
- */
43
- function () { return sink.error(error); }));
44
- },
45
- complete: /**
46
- * @return {?}
47
- */
48
- function () {
49
- ngxsExecutionStrategy.leave((/**
50
- * @return {?}
51
- */
52
- function () { return sink.complete(); }));
53
- }
54
- });
55
- }));
56
- });
57
- }
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVhdmUtbmd4cy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3hzL3N0b3JlLyIsInNvdXJjZXMiOlsic3JjL29wZXJhdG9ycy9sZWF2ZS1uZ3hzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQTRCLFVBQVUsRUFBWSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7QUFPdEUsTUFBTSxVQUFVLFNBQVMsQ0FDdkIscUJBQTRDO0lBRTVDOzs7O0lBQU8sVUFBQyxNQUFxQjtRQUMzQixPQUFPLElBQUksVUFBVTs7OztRQUFDLFVBQUMsSUFBaUI7WUFDdEMsT0FBTyxNQUFNLENBQUMsU0FBUyxDQUFDO2dCQUN0QixJQUFJOzs7OzBCQUFDLEtBQUs7b0JBQ1IscUJBQXFCLENBQUMsS0FBSzs7O29CQUFDLGNBQU0sT0FBQSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFoQixDQUFnQixFQUFDLENBQUM7Z0JBQ3RELENBQUM7Z0JBQ0QsS0FBSzs7OzswQkFBQyxLQUFLO29CQUNULHFCQUFxQixDQUFDLEtBQUs7OztvQkFBQyxjQUFNLE9BQUEsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBakIsQ0FBaUIsRUFBQyxDQUFDO2dCQUN2RCxDQUFDO2dCQUNELFFBQVE7Ozs7b0JBQ04scUJBQXFCLENBQUMsS0FBSzs7O29CQUFDLGNBQU0sT0FBQSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQWYsQ0FBZSxFQUFDLENBQUM7Z0JBQ3JELENBQUM7YUFDRixDQUFDLENBQUM7UUFDTCxDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUMsRUFBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb25vVHlwZU9wZXJhdG9yRnVuY3Rpb24sIE9ic2VydmFibGUsIE9ic2VydmVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBOZ3hzRXhlY3V0aW9uU3RyYXRlZ3kgfSBmcm9tICcuLi9leGVjdXRpb24vc3ltYm9scyc7XG5cbi8qKlxuICogUmV0dXJucyBvcGVyYXRvciB0aGF0IHdpbGwgcnVuXG4gKiBgc3Vic2NyaWJlYCBvdXRzaWRlIG9mIHRoZSBuZ3hzIGV4ZWN1dGlvbiBjb250ZXh0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBsZWF2ZU5neHM8VD4oXG4gIG5neHNFeGVjdXRpb25TdHJhdGVneTogTmd4c0V4ZWN1dGlvblN0cmF0ZWd5XG4pOiBNb25vVHlwZU9wZXJhdG9yRnVuY3Rpb248VD4ge1xuICByZXR1cm4gKHNvdXJjZTogT2JzZXJ2YWJsZTxUPikgPT4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSgoc2luazogT2JzZXJ2ZXI8VD4pID0+IHtcbiAgICAgIHJldHVybiBzb3VyY2Uuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dCh2YWx1ZSkge1xuICAgICAgICAgIG5neHNFeGVjdXRpb25TdHJhdGVneS5sZWF2ZSgoKSA9PiBzaW5rLm5leHQodmFsdWUpKTtcbiAgICAgICAgfSxcbiAgICAgICAgZXJyb3IoZXJyb3IpIHtcbiAgICAgICAgICBuZ3hzRXhlY3V0aW9uU3RyYXRlZ3kubGVhdmUoKCkgPT4gc2luay5lcnJvcihlcnJvcikpO1xuICAgICAgICB9LFxuICAgICAgICBjb21wbGV0ZSgpIHtcbiAgICAgICAgICBuZ3hzRXhlY3V0aW9uU3RyYXRlZ3kubGVhdmUoKCkgPT4gc2luay5jb21wbGV0ZSgpKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gIH07XG59XG4iXX0=
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ import { Observable } from 'rxjs';
6
+ /**
7
+ * Returns operator that will run
8
+ * `subscribe` outside of the ngxs execution context
9
+ * @template T
10
+ * @param {?} ngxsExecutionStrategy
11
+ * @return {?}
12
+ */
13
+ export function leaveNgxs(ngxsExecutionStrategy) {
14
+ return (/**
15
+ * @param {?} source
16
+ * @return {?}
17
+ */
18
+ function (source) {
19
+ return new Observable((/**
20
+ * @param {?} sink
21
+ * @return {?}
22
+ */
23
+ function (sink) {
24
+ return source.subscribe({
25
+ next: /**
26
+ * @param {?} value
27
+ * @return {?}
28
+ */
29
+ function (value) {
30
+ ngxsExecutionStrategy.leave((/**
31
+ * @return {?}
32
+ */
33
+ function () { return sink.next(value); }));
34
+ },
35
+ error: /**
36
+ * @param {?} error
37
+ * @return {?}
38
+ */
39
+ function (error) {
40
+ ngxsExecutionStrategy.leave((/**
41
+ * @return {?}
42
+ */
43
+ function () { return sink.error(error); }));
44
+ },
45
+ complete: /**
46
+ * @return {?}
47
+ */
48
+ function () {
49
+ ngxsExecutionStrategy.leave((/**
50
+ * @return {?}
51
+ */
52
+ function () { return sink.complete(); }));
53
+ }
54
+ });
55
+ }));
56
+ });
57
+ }
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVhdmUtbmd4cy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3hzL3N0b3JlLyIsInNvdXJjZXMiOlsic3JjL29wZXJhdG9ycy9sZWF2ZS1uZ3hzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQTRCLFVBQVUsRUFBWSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7QUFPdEUsTUFBTSxVQUFVLFNBQVMsQ0FDdkIscUJBQTRDO0lBRTVDOzs7O0lBQU8sVUFBQyxNQUFxQjtRQUMzQixPQUFPLElBQUksVUFBVTs7OztRQUFDLFVBQUMsSUFBaUI7WUFDdEMsT0FBTyxNQUFNLENBQUMsU0FBUyxDQUFDO2dCQUN0QixJQUFJOzs7OzBCQUFDLEtBQUs7b0JBQ1IscUJBQXFCLENBQUMsS0FBSzs7O29CQUFDLGNBQU0sT0FBQSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFoQixDQUFnQixFQUFDLENBQUM7Z0JBQ3RELENBQUM7Z0JBQ0QsS0FBSzs7OzswQkFBQyxLQUFLO29CQUNULHFCQUFxQixDQUFDLEtBQUs7OztvQkFBQyxjQUFNLE9BQUEsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBakIsQ0FBaUIsRUFBQyxDQUFDO2dCQUN2RCxDQUFDO2dCQUNELFFBQVE7Ozs7b0JBQ04scUJBQXFCLENBQUMsS0FBSzs7O29CQUFDLGNBQU0sT0FBQSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQWYsQ0FBZSxFQUFDLENBQUM7Z0JBQ3JELENBQUM7YUFDRixDQUFDLENBQUM7UUFDTCxDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUMsRUFBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb25vVHlwZU9wZXJhdG9yRnVuY3Rpb24sIE9ic2VydmFibGUsIE9ic2VydmVyIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IE5neHNFeGVjdXRpb25TdHJhdGVneSB9IGZyb20gJy4uL2V4ZWN1dGlvbi9zeW1ib2xzJztcclxuXHJcbi8qKlxyXG4gKiBSZXR1cm5zIG9wZXJhdG9yIHRoYXQgd2lsbCBydW5cclxuICogYHN1YnNjcmliZWAgb3V0c2lkZSBvZiB0aGUgbmd4cyBleGVjdXRpb24gY29udGV4dFxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGxlYXZlTmd4czxUPihcclxuICBuZ3hzRXhlY3V0aW9uU3RyYXRlZ3k6IE5neHNFeGVjdXRpb25TdHJhdGVneVxyXG4pOiBNb25vVHlwZU9wZXJhdG9yRnVuY3Rpb248VD4ge1xyXG4gIHJldHVybiAoc291cmNlOiBPYnNlcnZhYmxlPFQ+KSA9PiB7XHJcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoKHNpbms6IE9ic2VydmVyPFQ+KSA9PiB7XHJcbiAgICAgIHJldHVybiBzb3VyY2Uuc3Vic2NyaWJlKHtcclxuICAgICAgICBuZXh0KHZhbHVlKSB7XHJcbiAgICAgICAgICBuZ3hzRXhlY3V0aW9uU3RyYXRlZ3kubGVhdmUoKCkgPT4gc2luay5uZXh0KHZhbHVlKSk7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnJvcihlcnJvcikge1xyXG4gICAgICAgICAgbmd4c0V4ZWN1dGlvblN0cmF0ZWd5LmxlYXZlKCgpID0+IHNpbmsuZXJyb3IoZXJyb3IpKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGNvbXBsZXRlKCkge1xyXG4gICAgICAgICAgbmd4c0V4ZWN1dGlvblN0cmF0ZWd5LmxlYXZlKCgpID0+IHNpbmsuY29tcGxldGUoKSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH07XHJcbn1cclxuIl19