@ngxs/store 3.6.2-dev.master-8e14fe1 → 3.7.0

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 (231) hide show
  1. package/README.md +16 -16
  2. package/bundles/ngxs-store-internals.umd.js +210 -210
  3. package/bundles/ngxs-store-internals.umd.js.map +1 -1
  4. package/bundles/ngxs-store-internals.umd.min.js.map +1 -1
  5. package/bundles/ngxs-store-operators.umd.js +326 -321
  6. package/bundles/ngxs-store-operators.umd.js.map +1 -1
  7. package/bundles/ngxs-store-operators.umd.min.js +10 -10
  8. package/bundles/ngxs-store-operators.umd.min.js.map +1 -1
  9. package/bundles/ngxs-store.umd.js +4401 -4386
  10. package/bundles/ngxs-store.umd.js.map +1 -1
  11. package/bundles/ngxs-store.umd.min.js +11 -11
  12. package/bundles/ngxs-store.umd.min.js.map +1 -1
  13. package/esm2015/index.js +13 -13
  14. package/esm2015/internals/angular.js +40 -40
  15. package/esm2015/internals/index.js +10 -10
  16. package/esm2015/internals/initial-state.js +34 -34
  17. package/esm2015/internals/internal-tokens.js +16 -16
  18. package/esm2015/internals/memoize.js +70 -70
  19. package/esm2015/internals/ngxs-bootstrapper.js +41 -41
  20. package/esm2015/internals/ngxs-store-internals.js +8 -8
  21. package/esm2015/internals/src/symbols.js +14 -14
  22. package/esm2015/internals/symbols.js +14 -14
  23. package/esm2015/ngxs-store.js +25 -25
  24. package/esm2015/operators/append.js +31 -31
  25. package/esm2015/operators/compose.js +24 -24
  26. package/esm2015/operators/iif.js +56 -56
  27. package/esm2015/operators/index.js +18 -18
  28. package/esm2015/operators/insert-item.js +41 -41
  29. package/esm2015/operators/internals.js +5 -5
  30. package/esm2015/operators/ngxs-store-operators.js +8 -8
  31. package/esm2015/operators/patch.js +39 -39
  32. package/esm2015/operators/remove-item.js +34 -34
  33. package/esm2015/operators/update-item.js +52 -52
  34. package/esm2015/operators/utils.js +50 -50
  35. package/esm2015/src/actions/actions.js +39 -39
  36. package/esm2015/src/actions/symbols.js +39 -39
  37. package/esm2015/src/actions-stream.js +140 -140
  38. package/esm2015/src/configs/messages.config.js +87 -87
  39. package/esm2015/src/decorators/action.js +44 -44
  40. package/esm2015/src/decorators/select/select-factory.js +39 -39
  41. package/esm2015/src/decorators/select/select.js +45 -46
  42. package/esm2015/src/decorators/select/symbols.js +50 -50
  43. package/esm2015/src/decorators/selector/selector.js +55 -55
  44. package/esm2015/src/decorators/selector/symbols.js +5 -5
  45. package/esm2015/src/decorators/selector-options.js +34 -34
  46. package/esm2015/src/decorators/state.js +75 -75
  47. package/esm2015/src/execution/dispatch-outside-zone-ngxs-execution-strategy.js +96 -96
  48. package/esm2015/src/execution/internal-ngxs-execution-strategy.js +45 -45
  49. package/esm2015/src/execution/noop-ngxs-execution-strategy.js +27 -27
  50. package/esm2015/src/execution/symbols.js +29 -29
  51. package/esm2015/src/host-environment/host-environment.js +31 -31
  52. package/esm2015/src/internal/config-validator.js +67 -67
  53. package/esm2015/src/internal/dispatcher.js +210 -202
  54. package/esm2015/src/internal/internals.js +489 -489
  55. package/esm2015/src/internal/lifecycle-state-manager.js +129 -129
  56. package/esm2015/src/internal/state-context-factory.js +138 -138
  57. package/esm2015/src/internal/state-factory.js +401 -392
  58. package/esm2015/src/internal/state-operations.js +125 -125
  59. package/esm2015/src/internal/state-operators.js +33 -33
  60. package/esm2015/src/internal/state-stream.js +21 -21
  61. package/esm2015/src/ivy/ensure-state-class-is-injectable.js +34 -34
  62. package/esm2015/src/ivy/ivy-enabled-in-dev-mode.js +40 -50
  63. package/esm2015/src/module.js +171 -171
  64. package/esm2015/src/modules/ngxs-feature.module.js +63 -63
  65. package/esm2015/src/modules/ngxs-root.module.js +52 -52
  66. package/esm2015/src/operators/leave-ngxs.js +58 -58
  67. package/esm2015/src/operators/of-action.js +191 -188
  68. package/esm2015/src/plugin-manager.js +70 -70
  69. package/esm2015/src/plugin_api.js +10 -10
  70. package/esm2015/src/public_api.js +29 -29
  71. package/esm2015/src/public_to_deprecate.js +64 -64
  72. package/esm2015/src/state-token/state-token.js +45 -45
  73. package/esm2015/src/state-token/symbols.js +5 -5
  74. package/esm2015/src/store.js +174 -174
  75. package/esm2015/src/symbols.js +221 -221
  76. package/esm2015/src/utils/compose.js +44 -44
  77. package/esm2015/src/utils/freeze.js +35 -35
  78. package/esm2015/src/utils/selector-utils.js +221 -221
  79. package/esm2015/src/utils/store-validators.js +65 -65
  80. package/esm2015/src/utils/utils.js +95 -93
  81. package/esm5/index.js +13 -13
  82. package/esm5/internals/angular.js +40 -40
  83. package/esm5/internals/index.js +10 -10
  84. package/esm5/internals/initial-state.js +45 -45
  85. package/esm5/internals/internal-tokens.js +16 -16
  86. package/esm5/internals/memoize.js +71 -71
  87. package/esm5/internals/ngxs-bootstrapper.js +56 -56
  88. package/esm5/internals/ngxs-store-internals.js +8 -8
  89. package/esm5/internals/src/symbols.js +14 -14
  90. package/esm5/internals/symbols.js +14 -14
  91. package/esm5/ngxs-store.js +25 -25
  92. package/esm5/operators/append.js +31 -31
  93. package/esm5/operators/compose.js +28 -28
  94. package/esm5/operators/iif.js +56 -56
  95. package/esm5/operators/index.js +18 -18
  96. package/esm5/operators/insert-item.js +41 -41
  97. package/esm5/operators/internals.js +5 -5
  98. package/esm5/operators/ngxs-store-operators.js +8 -8
  99. package/esm5/operators/patch.js +40 -40
  100. package/esm5/operators/remove-item.js +34 -34
  101. package/esm5/operators/update-item.js +52 -52
  102. package/esm5/operators/utils.js +50 -50
  103. package/esm5/src/actions/actions.js +62 -62
  104. package/esm5/src/actions/symbols.js +39 -39
  105. package/esm5/src/actions-stream.js +186 -186
  106. package/esm5/src/configs/messages.config.js +104 -104
  107. package/esm5/src/decorators/action.js +56 -56
  108. package/esm5/src/decorators/select/select-factory.js +37 -37
  109. package/esm5/src/decorators/select/select.js +50 -51
  110. package/esm5/src/decorators/select/symbols.js +51 -51
  111. package/esm5/src/decorators/selector/selector.js +55 -55
  112. package/esm5/src/decorators/selector/symbols.js +5 -5
  113. package/esm5/src/decorators/selector-options.js +34 -34
  114. package/esm5/src/decorators/state.js +76 -76
  115. package/esm5/src/execution/dispatch-outside-zone-ngxs-execution-strategy.js +121 -121
  116. package/esm5/src/execution/internal-ngxs-execution-strategy.js +54 -54
  117. package/esm5/src/execution/noop-ngxs-execution-strategy.js +41 -41
  118. package/esm5/src/execution/symbols.js +29 -29
  119. package/esm5/src/host-environment/host-environment.js +29 -29
  120. package/esm5/src/internal/config-validator.js +76 -76
  121. package/esm5/src/internal/dispatcher.js +246 -238
  122. package/esm5/src/internal/internals.js +491 -491
  123. package/esm5/src/internal/lifecycle-state-manager.js +177 -177
  124. package/esm5/src/internal/state-context-factory.js +146 -146
  125. package/esm5/src/internal/state-factory.js +528 -519
  126. package/esm5/src/internal/state-operations.js +139 -139
  127. package/esm5/src/internal/state-operators.js +34 -34
  128. package/esm5/src/internal/state-stream.js +25 -25
  129. package/esm5/src/ivy/ensure-state-class-is-injectable.js +34 -34
  130. package/esm5/src/ivy/ivy-enabled-in-dev-mode.js +40 -50
  131. package/esm5/src/module.js +214 -214
  132. package/esm5/src/modules/ngxs-feature.module.js +65 -65
  133. package/esm5/src/modules/ngxs-root.module.js +47 -47
  134. package/esm5/src/operators/leave-ngxs.js +58 -58
  135. package/esm5/src/operators/of-action.js +217 -214
  136. package/esm5/src/plugin-manager.js +82 -82
  137. package/esm5/src/plugin_api.js +10 -10
  138. package/esm5/src/public_api.js +29 -29
  139. package/esm5/src/public_to_deprecate.js +64 -64
  140. package/esm5/src/state-token/state-token.js +57 -57
  141. package/esm5/src/state-token/symbols.js +5 -5
  142. package/esm5/src/store.js +225 -225
  143. package/esm5/src/symbols.js +230 -230
  144. package/esm5/src/utils/compose.js +55 -55
  145. package/esm5/src/utils/freeze.js +35 -35
  146. package/esm5/src/utils/selector-utils.js +230 -230
  147. package/esm5/src/utils/store-validators.js +86 -86
  148. package/esm5/src/utils/utils.js +98 -96
  149. package/fesm2015/ngxs-store-internals.js +191 -191
  150. package/fesm2015/ngxs-store-internals.js.map +1 -1
  151. package/fesm2015/ngxs-store-operators.js +312 -312
  152. package/fesm2015/ngxs-store-operators.js.map +1 -1
  153. package/fesm2015/ngxs-store.js +3878 -3868
  154. package/fesm2015/ngxs-store.js.map +1 -1
  155. package/fesm5/ngxs-store-internals.js +216 -216
  156. package/fesm5/ngxs-store-internals.js.map +1 -1
  157. package/fesm5/ngxs-store-operators.js +316 -316
  158. package/fesm5/ngxs-store-operators.js.map +1 -1
  159. package/fesm5/ngxs-store.js +4397 -4387
  160. package/fesm5/ngxs-store.js.map +1 -1
  161. package/index.d.ts +8 -8
  162. package/internals/angular.d.ts +3 -3
  163. package/internals/index.d.ts +6 -6
  164. package/internals/initial-state.d.ts +8 -8
  165. package/internals/internal-tokens.d.ts +9 -9
  166. package/internals/memoize.d.ts +9 -9
  167. package/internals/ngxs-bootstrapper.d.ts +13 -13
  168. package/internals/ngxs-store-internals.d.ts +4 -4
  169. package/internals/src/symbols.d.ts +7 -7
  170. package/internals/symbols.d.ts +7 -7
  171. package/ngxs-store.d.ts +22 -22
  172. package/ngxs-store.metadata.json +1 -1
  173. package/operators/append.d.ts +6 -6
  174. package/operators/compose.d.ts +2 -2
  175. package/operators/iif.d.ts +11 -11
  176. package/operators/index.d.ts +13 -13
  177. package/operators/insert-item.d.ts +7 -7
  178. package/operators/internals.d.ts +2 -2
  179. package/operators/ngxs-store-operators.d.ts +4 -4
  180. package/operators/patch.d.ts +10 -10
  181. package/operators/remove-item.d.ts +7 -7
  182. package/operators/update-item.d.ts +10 -10
  183. package/operators/utils.d.ts +9 -9
  184. package/package.json +4 -4
  185. package/src/actions/actions.d.ts +15 -15
  186. package/src/actions/symbols.d.ts +21 -21
  187. package/src/actions-stream.d.ts +49 -49
  188. package/src/configs/messages.config.d.ts +30 -30
  189. package/src/decorators/action.d.ts +5 -5
  190. package/src/decorators/select/select-factory.d.ts +12 -12
  191. package/src/decorators/select/select.d.ts +4 -5
  192. package/src/decorators/select/symbols.d.ts +10 -14
  193. package/src/decorators/selector/selector.d.ts +5 -5
  194. package/src/decorators/selector/symbols.d.ts +4 -4
  195. package/src/decorators/selector-options.d.ts +5 -5
  196. package/src/decorators/state.d.ts +6 -6
  197. package/src/execution/dispatch-outside-zone-ngxs-execution-strategy.d.ts +12 -12
  198. package/src/execution/internal-ngxs-execution-strategy.d.ts +7 -7
  199. package/src/execution/noop-ngxs-execution-strategy.d.ts +5 -5
  200. package/src/execution/symbols.d.ts +6 -6
  201. package/src/host-environment/host-environment.d.ts +6 -6
  202. package/src/internal/config-validator.d.ts +10 -10
  203. package/src/internal/dispatcher.d.ts +31 -31
  204. package/src/internal/internals.d.ts +167 -167
  205. package/src/internal/lifecycle-state-manager.d.ts +20 -20
  206. package/src/internal/state-context-factory.d.ts +15 -15
  207. package/src/internal/state-factory.d.ts +57 -57
  208. package/src/internal/state-operations.d.ts +21 -21
  209. package/src/internal/state-operators.d.ts +2 -2
  210. package/src/internal/state-stream.d.ts +9 -9
  211. package/src/ivy/ensure-state-class-is-injectable.d.ts +6 -6
  212. package/src/ivy/ivy-enabled-in-dev-mode.d.ts +14 -14
  213. package/src/module.d.ts +23 -23
  214. package/src/modules/ngxs-feature.module.d.ts +13 -13
  215. package/src/modules/ngxs-root.module.d.ts +13 -13
  216. package/src/operators/leave-ngxs.d.ts +7 -7
  217. package/src/operators/of-action.d.ts +43 -42
  218. package/src/plugin-manager.d.ts +10 -10
  219. package/src/plugin_api.d.ts +5 -5
  220. package/src/public_api.d.ts +17 -17
  221. package/src/public_to_deprecate.d.ts +21 -21
  222. package/src/state-token/state-token.d.ts +7 -7
  223. package/src/state-token/symbols.d.ts +5 -5
  224. package/src/store.d.ts +53 -53
  225. package/src/symbols.d.ts +137 -137
  226. package/src/utils/compose.d.ts +23 -23
  227. package/src/utils/freeze.d.ts +5 -5
  228. package/src/utils/selector-utils.d.ts +23 -23
  229. package/src/utils/store-validators.d.ts +8 -8
  230. package/src/utils/utils.d.ts +29 -29
  231. package/types/index.d.ts +2 -2
@@ -1,140 +1,140 @@
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 { Subject, Observable } from 'rxjs';
7
- import { leaveNgxs } from './operators/leave-ngxs';
8
- import { InternalNgxsExecutionStrategy } from './execution/internal-ngxs-execution-strategy';
9
- /** @enum {string} */
10
- const ActionStatus = {
11
- Dispatched: 'DISPATCHED',
12
- Successful: 'SUCCESSFUL',
13
- Canceled: 'CANCELED',
14
- Errored: 'ERRORED',
15
- };
16
- export { ActionStatus };
17
- /**
18
- * @record
19
- * @template T
20
- */
21
- export function ActionContext() { }
22
- if (false) {
23
- /** @type {?} */
24
- ActionContext.prototype.status;
25
- /** @type {?} */
26
- ActionContext.prototype.action;
27
- /** @type {?|undefined} */
28
- ActionContext.prototype.error;
29
- }
30
- /**
31
- * Custom Subject that ensures that subscribers are notified of values in the order that they arrived.
32
- * A standard Subject does not have this guarantee.
33
- * For example, given the following code:
34
- * ```typescript
35
- * const subject = new Subject<string>();
36
- * subject.subscribe(value => {
37
- * if (value === 'start') subject.next('end');
38
- * });
39
- * subject.subscribe(value => { });
40
- * subject.next('start');
41
- * ```
42
- * When `subject` is a standard `Subject<T>` the second subscriber would recieve `end` and then `start`.
43
- * When `subject` is a `OrderedSubject<T>` the second subscriber would recieve `start` and then `end`.
44
- * @template T
45
- */
46
- export class OrderedSubject extends Subject {
47
- constructor() {
48
- super(...arguments);
49
- this._itemQueue = [];
50
- this._busyPushingNext = false;
51
- }
52
- /**
53
- * @param {?=} value
54
- * @return {?}
55
- */
56
- next(value) {
57
- if (this._busyPushingNext) {
58
- this._itemQueue.unshift((/** @type {?} */ (value)));
59
- return;
60
- }
61
- this._busyPushingNext = true;
62
- super.next(value);
63
- while (this._itemQueue.length > 0) {
64
- /** @type {?} */
65
- const nextValue = this._itemQueue.pop();
66
- super.next(nextValue);
67
- }
68
- this._busyPushingNext = false;
69
- }
70
- }
71
- if (false) {
72
- /**
73
- * @type {?}
74
- * @private
75
- */
76
- OrderedSubject.prototype._itemQueue;
77
- /**
78
- * @type {?}
79
- * @private
80
- */
81
- OrderedSubject.prototype._busyPushingNext;
82
- }
83
- /**
84
- * Internal Action stream that is emitted anytime an action is dispatched.
85
- */
86
- export class InternalActions extends OrderedSubject {
87
- }
88
- InternalActions.decorators = [
89
- { type: Injectable }
90
- ];
91
- /**
92
- * Action stream that is emitted anytime an action is dispatched.
93
- *
94
- * You can listen to this in services to react without stores.
95
- */
96
- export class Actions extends Observable {
97
- // This has to be `Observable<ActionContext>` in the v4. Because `InternalActions`
98
- // is a `Subject<ActionContext>`. Leave it as `any` to avoid breaking changes
99
- /**
100
- * @param {?} internalActions$
101
- * @param {?} internalExecutionStrategy
102
- */
103
- constructor(internalActions$, internalExecutionStrategy) {
104
- super((/**
105
- * @param {?} observer
106
- * @return {?}
107
- */
108
- observer => {
109
- /** @type {?} */
110
- const childSubscription = internalActions$
111
- .pipe(leaveNgxs(internalExecutionStrategy))
112
- .subscribe({
113
- next: (/**
114
- * @param {?} ctx
115
- * @return {?}
116
- */
117
- ctx => observer.next(ctx)),
118
- error: (/**
119
- * @param {?} error
120
- * @return {?}
121
- */
122
- error => observer.error(error)),
123
- complete: (/**
124
- * @return {?}
125
- */
126
- () => observer.complete())
127
- });
128
- observer.add(childSubscription);
129
- }));
130
- }
131
- }
132
- Actions.decorators = [
133
- { type: Injectable }
134
- ];
135
- /** @nocollapse */
136
- Actions.ctorParameters = () => [
137
- { type: InternalActions },
138
- { type: InternalNgxsExecutionStrategy }
139
- ];
140
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy1zdHJlYW0uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Abmd4cy9zdG9yZS8iLCJzb3VyY2VzIjpbInNyYy9hY3Rpb25zLXN0cmVhbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sOENBQThDLENBQUM7OztJQU0zRixZQUFhLFlBQVk7SUFDekIsWUFBYSxZQUFZO0lBQ3pCLFVBQVcsVUFBVTtJQUNyQixTQUFVLFNBQVM7Ozs7Ozs7QUFHckIsbUNBSUM7OztJQUhDLCtCQUFxQjs7SUFDckIsK0JBQVU7O0lBQ1YsOEJBQWM7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWtCaEIsTUFBTSxPQUFPLGNBQWtCLFNBQVEsT0FBVTtJQUFqRDs7UUFDVSxlQUFVLEdBQVEsRUFBRSxDQUFDO1FBQ3JCLHFCQUFnQixHQUFHLEtBQUssQ0FBQztJQWVuQyxDQUFDOzs7OztJQWJDLElBQUksQ0FBQyxLQUFTO1FBQ1osSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDekIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsbUJBQUEsS0FBSyxFQUFDLENBQUMsQ0FBQztZQUNoQyxPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1FBQzdCLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7O2tCQUMzQixTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDdkMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUN2QjtRQUNELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUM7SUFDaEMsQ0FBQztDQUNGOzs7Ozs7SUFoQkMsb0NBQTZCOzs7OztJQUM3QiwwQ0FBaUM7Ozs7O0FBcUJuQyxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxjQUE2Qjs7O1lBRGpFLFVBQVU7Ozs7Ozs7QUFTWCxNQUFNLE9BQU8sT0FBUSxTQUFRLFVBQWU7Ozs7Ozs7SUFHMUMsWUFDRSxnQkFBaUMsRUFDakMseUJBQXdEO1FBRXhELEtBQUs7Ozs7UUFBQyxRQUFRLENBQUMsRUFBRTs7a0JBQ1QsaUJBQWlCLEdBQUcsZ0JBQWdCO2lCQUN2QyxJQUFJLENBQUMsU0FBUyxDQUFDLHlCQUF5QixDQUFDLENBQUM7aUJBQzFDLFNBQVMsQ0FBQztnQkFDVCxJQUFJOzs7O2dCQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtnQkFDL0IsS0FBSzs7OztnQkFBRSxLQUFLLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUE7Z0JBQ3JDLFFBQVE7OztnQkFBRSxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUE7YUFDcEMsQ0FBQztZQUVKLFFBQVEsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNsQyxDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUM7OztZQW5CRixVQUFVOzs7O1lBS1csZUFBZTtZQXBFNUIsNkJBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBsZWF2ZU5neHMgfSBmcm9tICcuL29wZXJhdG9ycy9sZWF2ZS1uZ3hzJztcbmltcG9ydCB7IEludGVybmFsTmd4c0V4ZWN1dGlvblN0cmF0ZWd5IH0gZnJvbSAnLi9leGVjdXRpb24vaW50ZXJuYWwtbmd4cy1leGVjdXRpb24tc3RyYXRlZ3knO1xuXG4vKipcbiAqIFN0YXR1cyBvZiBhIGRpc3BhdGNoZWQgYWN0aW9uXG4gKi9cbmV4cG9ydCBjb25zdCBlbnVtIEFjdGlvblN0YXR1cyB7XG4gIERpc3BhdGNoZWQgPSAnRElTUEFUQ0hFRCcsXG4gIFN1Y2Nlc3NmdWwgPSAnU1VDQ0VTU0ZVTCcsXG4gIENhbmNlbGVkID0gJ0NBTkNFTEVEJyxcbiAgRXJyb3JlZCA9ICdFUlJPUkVEJ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGlvbkNvbnRleHQ8VCA9IGFueT4ge1xuICBzdGF0dXM6IEFjdGlvblN0YXR1cztcbiAgYWN0aW9uOiBUO1xuICBlcnJvcj86IEVycm9yO1xufVxuXG4vKipcbiAqIEN1c3RvbSBTdWJqZWN0IHRoYXQgZW5zdXJlcyB0aGF0IHN1YnNjcmliZXJzIGFyZSBub3RpZmllZCBvZiB2YWx1ZXMgaW4gdGhlIG9yZGVyIHRoYXQgdGhleSBhcnJpdmVkLlxuICogQSBzdGFuZGFyZCBTdWJqZWN0IGRvZXMgbm90IGhhdmUgdGhpcyBndWFyYW50ZWUuXG4gKiBGb3IgZXhhbXBsZSwgZ2l2ZW4gdGhlIGZvbGxvd2luZyBjb2RlOlxuICogYGBgdHlwZXNjcmlwdFxuICogICBjb25zdCBzdWJqZWN0ID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xuICAgICBzdWJqZWN0LnN1YnNjcmliZSh2YWx1ZSA9PiB7XG4gICAgICAgaWYgKHZhbHVlID09PSAnc3RhcnQnKSBzdWJqZWN0Lm5leHQoJ2VuZCcpO1xuICAgICB9KTtcbiAgICAgc3ViamVjdC5zdWJzY3JpYmUodmFsdWUgPT4geyB9KTtcbiAgICAgc3ViamVjdC5uZXh0KCdzdGFydCcpO1xuICogYGBgXG4gKiBXaGVuIGBzdWJqZWN0YCBpcyBhIHN0YW5kYXJkIGBTdWJqZWN0PFQ+YCB0aGUgc2Vjb25kIHN1YnNjcmliZXIgd291bGQgcmVjaWV2ZSBgZW5kYCBhbmQgdGhlbiBgc3RhcnRgLlxuICogV2hlbiBgc3ViamVjdGAgaXMgYSBgT3JkZXJlZFN1YmplY3Q8VD5gIHRoZSBzZWNvbmQgc3Vic2NyaWJlciB3b3VsZCByZWNpZXZlIGBzdGFydGAgYW5kIHRoZW4gYGVuZGAuXG4gKi9cbmV4cG9ydCBjbGFzcyBPcmRlcmVkU3ViamVjdDxUPiBleHRlbmRzIFN1YmplY3Q8VD4ge1xuICBwcml2YXRlIF9pdGVtUXVldWU6IFRbXSA9IFtdO1xuICBwcml2YXRlIF9idXN5UHVzaGluZ05leHQgPSBmYWxzZTtcblxuICBuZXh0KHZhbHVlPzogVCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9idXN5UHVzaGluZ05leHQpIHtcbiAgICAgIHRoaXMuX2l0ZW1RdWV1ZS51bnNoaWZ0KHZhbHVlISk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX2J1c3lQdXNoaW5nTmV4dCA9IHRydWU7XG4gICAgc3VwZXIubmV4dCh2YWx1ZSk7XG4gICAgd2hpbGUgKHRoaXMuX2l0ZW1RdWV1ZS5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zdCBuZXh0VmFsdWUgPSB0aGlzLl9pdGVtUXVldWUucG9wKCk7XG4gICAgICBzdXBlci5uZXh0KG5leHRWYWx1ZSk7XG4gICAgfVxuICAgIHRoaXMuX2J1c3lQdXNoaW5nTmV4dCA9IGZhbHNlO1xuICB9XG59XG5cbi8qKlxuICogSW50ZXJuYWwgQWN0aW9uIHN0cmVhbSB0aGF0IGlzIGVtaXR0ZWQgYW55dGltZSBhbiBhY3Rpb24gaXMgZGlzcGF0Y2hlZC5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEludGVybmFsQWN0aW9ucyBleHRlbmRzIE9yZGVyZWRTdWJqZWN0PEFjdGlvbkNvbnRleHQ+IHt9XG5cbi8qKlxuICogQWN0aW9uIHN0cmVhbSB0aGF0IGlzIGVtaXR0ZWQgYW55dGltZSBhbiBhY3Rpb24gaXMgZGlzcGF0Y2hlZC5cbiAqXG4gKiBZb3UgY2FuIGxpc3RlbiB0byB0aGlzIGluIHNlcnZpY2VzIHRvIHJlYWN0IHdpdGhvdXQgc3RvcmVzLlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQWN0aW9ucyBleHRlbmRzIE9ic2VydmFibGU8YW55PiB7XG4gIC8vIFRoaXMgaGFzIHRvIGJlIGBPYnNlcnZhYmxlPEFjdGlvbkNvbnRleHQ+YCBpbiB0aGUgdjQuIEJlY2F1c2UgYEludGVybmFsQWN0aW9uc2BcbiAgLy8gaXMgYSBgU3ViamVjdDxBY3Rpb25Db250ZXh0PmAuIExlYXZlIGl0IGFzIGBhbnlgIHRvIGF2b2lkIGJyZWFraW5nIGNoYW5nZXNcbiAgY29uc3RydWN0b3IoXG4gICAgaW50ZXJuYWxBY3Rpb25zJDogSW50ZXJuYWxBY3Rpb25zLFxuICAgIGludGVybmFsRXhlY3V0aW9uU3RyYXRlZ3k6IEludGVybmFsTmd4c0V4ZWN1dGlvblN0cmF0ZWd5XG4gICkge1xuICAgIHN1cGVyKG9ic2VydmVyID0+IHtcbiAgICAgIGNvbnN0IGNoaWxkU3Vic2NyaXB0aW9uID0gaW50ZXJuYWxBY3Rpb25zJFxuICAgICAgICAucGlwZShsZWF2ZU5neHMoaW50ZXJuYWxFeGVjdXRpb25TdHJhdGVneSkpXG4gICAgICAgIC5zdWJzY3JpYmUoe1xuICAgICAgICAgIG5leHQ6IGN0eCA9PiBvYnNlcnZlci5uZXh0KGN0eCksXG4gICAgICAgICAgZXJyb3I6IGVycm9yID0+IG9ic2VydmVyLmVycm9yKGVycm9yKSxcbiAgICAgICAgICBjb21wbGV0ZTogKCkgPT4gb2JzZXJ2ZXIuY29tcGxldGUoKVxuICAgICAgICB9KTtcblxuICAgICAgb2JzZXJ2ZXIuYWRkKGNoaWxkU3Vic2NyaXB0aW9uKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
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 { Subject, Observable } from 'rxjs';
7
+ import { leaveNgxs } from './operators/leave-ngxs';
8
+ import { InternalNgxsExecutionStrategy } from './execution/internal-ngxs-execution-strategy';
9
+ /** @enum {string} */
10
+ const ActionStatus = {
11
+ Dispatched: 'DISPATCHED',
12
+ Successful: 'SUCCESSFUL',
13
+ Canceled: 'CANCELED',
14
+ Errored: 'ERRORED',
15
+ };
16
+ export { ActionStatus };
17
+ /**
18
+ * @record
19
+ * @template T
20
+ */
21
+ export function ActionContext() { }
22
+ if (false) {
23
+ /** @type {?} */
24
+ ActionContext.prototype.status;
25
+ /** @type {?} */
26
+ ActionContext.prototype.action;
27
+ /** @type {?|undefined} */
28
+ ActionContext.prototype.error;
29
+ }
30
+ /**
31
+ * Custom Subject that ensures that subscribers are notified of values in the order that they arrived.
32
+ * A standard Subject does not have this guarantee.
33
+ * For example, given the following code:
34
+ * ```typescript
35
+ * const subject = new Subject<string>();
36
+ * subject.subscribe(value => {
37
+ * if (value === 'start') subject.next('end');
38
+ * });
39
+ * subject.subscribe(value => { });
40
+ * subject.next('start');
41
+ * ```
42
+ * When `subject` is a standard `Subject<T>` the second subscriber would recieve `end` and then `start`.
43
+ * When `subject` is a `OrderedSubject<T>` the second subscriber would recieve `start` and then `end`.
44
+ * @template T
45
+ */
46
+ export class OrderedSubject extends Subject {
47
+ constructor() {
48
+ super(...arguments);
49
+ this._itemQueue = [];
50
+ this._busyPushingNext = false;
51
+ }
52
+ /**
53
+ * @param {?=} value
54
+ * @return {?}
55
+ */
56
+ next(value) {
57
+ if (this._busyPushingNext) {
58
+ this._itemQueue.unshift((/** @type {?} */ (value)));
59
+ return;
60
+ }
61
+ this._busyPushingNext = true;
62
+ super.next(value);
63
+ while (this._itemQueue.length > 0) {
64
+ /** @type {?} */
65
+ const nextValue = this._itemQueue.pop();
66
+ super.next(nextValue);
67
+ }
68
+ this._busyPushingNext = false;
69
+ }
70
+ }
71
+ if (false) {
72
+ /**
73
+ * @type {?}
74
+ * @private
75
+ */
76
+ OrderedSubject.prototype._itemQueue;
77
+ /**
78
+ * @type {?}
79
+ * @private
80
+ */
81
+ OrderedSubject.prototype._busyPushingNext;
82
+ }
83
+ /**
84
+ * Internal Action stream that is emitted anytime an action is dispatched.
85
+ */
86
+ export class InternalActions extends OrderedSubject {
87
+ }
88
+ InternalActions.decorators = [
89
+ { type: Injectable }
90
+ ];
91
+ /**
92
+ * Action stream that is emitted anytime an action is dispatched.
93
+ *
94
+ * You can listen to this in services to react without stores.
95
+ */
96
+ export class Actions extends Observable {
97
+ // This has to be `Observable<ActionContext>` in the v4. Because `InternalActions`
98
+ // is a `Subject<ActionContext>`. Leave it as `any` to avoid breaking changes
99
+ /**
100
+ * @param {?} internalActions$
101
+ * @param {?} internalExecutionStrategy
102
+ */
103
+ constructor(internalActions$, internalExecutionStrategy) {
104
+ super((/**
105
+ * @param {?} observer
106
+ * @return {?}
107
+ */
108
+ observer => {
109
+ /** @type {?} */
110
+ const childSubscription = internalActions$
111
+ .pipe(leaveNgxs(internalExecutionStrategy))
112
+ .subscribe({
113
+ next: (/**
114
+ * @param {?} ctx
115
+ * @return {?}
116
+ */
117
+ ctx => observer.next(ctx)),
118
+ error: (/**
119
+ * @param {?} error
120
+ * @return {?}
121
+ */
122
+ error => observer.error(error)),
123
+ complete: (/**
124
+ * @return {?}
125
+ */
126
+ () => observer.complete())
127
+ });
128
+ observer.add(childSubscription);
129
+ }));
130
+ }
131
+ }
132
+ Actions.decorators = [
133
+ { type: Injectable }
134
+ ];
135
+ /** @nocollapse */
136
+ Actions.ctorParameters = () => [
137
+ { type: InternalActions },
138
+ { type: InternalNgxsExecutionStrategy }
139
+ ];
140
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy1zdHJlYW0uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Abmd4cy9zdG9yZS8iLCJzb3VyY2VzIjpbInNyYy9hY3Rpb25zLXN0cmVhbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sOENBQThDLENBQUM7OztJQU0zRixZQUFhLFlBQVk7SUFDekIsWUFBYSxZQUFZO0lBQ3pCLFVBQVcsVUFBVTtJQUNyQixTQUFVLFNBQVM7Ozs7Ozs7QUFHckIsbUNBSUM7OztJQUhDLCtCQUFxQjs7SUFDckIsK0JBQVU7O0lBQ1YsOEJBQWM7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWtCaEIsTUFBTSxPQUFPLGNBQWtCLFNBQVEsT0FBVTtJQUFqRDs7UUFDVSxlQUFVLEdBQVEsRUFBRSxDQUFDO1FBQ3JCLHFCQUFnQixHQUFHLEtBQUssQ0FBQztJQWVuQyxDQUFDOzs7OztJQWJDLElBQUksQ0FBQyxLQUFTO1FBQ1osSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDekIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsbUJBQUEsS0FBSyxFQUFDLENBQUMsQ0FBQztZQUNoQyxPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1FBQzdCLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7O2tCQUMzQixTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDdkMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUN2QjtRQUNELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUM7SUFDaEMsQ0FBQztDQUNGOzs7Ozs7SUFoQkMsb0NBQTZCOzs7OztJQUM3QiwwQ0FBaUM7Ozs7O0FBcUJuQyxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxjQUE2Qjs7O1lBRGpFLFVBQVU7Ozs7Ozs7QUFTWCxNQUFNLE9BQU8sT0FBUSxTQUFRLFVBQWU7Ozs7Ozs7SUFHMUMsWUFDRSxnQkFBaUMsRUFDakMseUJBQXdEO1FBRXhELEtBQUs7Ozs7UUFBQyxRQUFRLENBQUMsRUFBRTs7a0JBQ1QsaUJBQWlCLEdBQUcsZ0JBQWdCO2lCQUN2QyxJQUFJLENBQUMsU0FBUyxDQUFDLHlCQUF5QixDQUFDLENBQUM7aUJBQzFDLFNBQVMsQ0FBQztnQkFDVCxJQUFJOzs7O2dCQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtnQkFDL0IsS0FBSzs7OztnQkFBRSxLQUFLLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUE7Z0JBQ3JDLFFBQVE7OztnQkFBRSxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUE7YUFDcEMsQ0FBQztZQUVKLFFBQVEsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNsQyxDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUM7OztZQW5CRixVQUFVOzs7O1lBS1csZUFBZTtZQXBFNUIsNkJBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBsZWF2ZU5neHMgfSBmcm9tICcuL29wZXJhdG9ycy9sZWF2ZS1uZ3hzJztcclxuaW1wb3J0IHsgSW50ZXJuYWxOZ3hzRXhlY3V0aW9uU3RyYXRlZ3kgfSBmcm9tICcuL2V4ZWN1dGlvbi9pbnRlcm5hbC1uZ3hzLWV4ZWN1dGlvbi1zdHJhdGVneSc7XHJcblxyXG4vKipcclxuICogU3RhdHVzIG9mIGEgZGlzcGF0Y2hlZCBhY3Rpb25cclxuICovXHJcbmV4cG9ydCBjb25zdCBlbnVtIEFjdGlvblN0YXR1cyB7XHJcbiAgRGlzcGF0Y2hlZCA9ICdESVNQQVRDSEVEJyxcclxuICBTdWNjZXNzZnVsID0gJ1NVQ0NFU1NGVUwnLFxyXG4gIENhbmNlbGVkID0gJ0NBTkNFTEVEJyxcclxuICBFcnJvcmVkID0gJ0VSUk9SRUQnXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uQ29udGV4dDxUID0gYW55PiB7XHJcbiAgc3RhdHVzOiBBY3Rpb25TdGF0dXM7XHJcbiAgYWN0aW9uOiBUO1xyXG4gIGVycm9yPzogRXJyb3I7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDdXN0b20gU3ViamVjdCB0aGF0IGVuc3VyZXMgdGhhdCBzdWJzY3JpYmVycyBhcmUgbm90aWZpZWQgb2YgdmFsdWVzIGluIHRoZSBvcmRlciB0aGF0IHRoZXkgYXJyaXZlZC5cclxuICogQSBzdGFuZGFyZCBTdWJqZWN0IGRvZXMgbm90IGhhdmUgdGhpcyBndWFyYW50ZWUuXHJcbiAqIEZvciBleGFtcGxlLCBnaXZlbiB0aGUgZm9sbG93aW5nIGNvZGU6XHJcbiAqIGBgYHR5cGVzY3JpcHRcclxuICogICBjb25zdCBzdWJqZWN0ID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xyXG4gICAgIHN1YmplY3Quc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgIGlmICh2YWx1ZSA9PT0gJ3N0YXJ0Jykgc3ViamVjdC5uZXh0KCdlbmQnKTtcclxuICAgICB9KTtcclxuICAgICBzdWJqZWN0LnN1YnNjcmliZSh2YWx1ZSA9PiB7IH0pO1xyXG4gICAgIHN1YmplY3QubmV4dCgnc3RhcnQnKTtcclxuICogYGBgXHJcbiAqIFdoZW4gYHN1YmplY3RgIGlzIGEgc3RhbmRhcmQgYFN1YmplY3Q8VD5gIHRoZSBzZWNvbmQgc3Vic2NyaWJlciB3b3VsZCByZWNpZXZlIGBlbmRgIGFuZCB0aGVuIGBzdGFydGAuXHJcbiAqIFdoZW4gYHN1YmplY3RgIGlzIGEgYE9yZGVyZWRTdWJqZWN0PFQ+YCB0aGUgc2Vjb25kIHN1YnNjcmliZXIgd291bGQgcmVjaWV2ZSBgc3RhcnRgIGFuZCB0aGVuIGBlbmRgLlxyXG4gKi9cclxuZXhwb3J0IGNsYXNzIE9yZGVyZWRTdWJqZWN0PFQ+IGV4dGVuZHMgU3ViamVjdDxUPiB7XHJcbiAgcHJpdmF0ZSBfaXRlbVF1ZXVlOiBUW10gPSBbXTtcclxuICBwcml2YXRlIF9idXN5UHVzaGluZ05leHQgPSBmYWxzZTtcclxuXHJcbiAgbmV4dCh2YWx1ZT86IFQpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl9idXN5UHVzaGluZ05leHQpIHtcclxuICAgICAgdGhpcy5faXRlbVF1ZXVlLnVuc2hpZnQodmFsdWUhKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fYnVzeVB1c2hpbmdOZXh0ID0gdHJ1ZTtcclxuICAgIHN1cGVyLm5leHQodmFsdWUpO1xyXG4gICAgd2hpbGUgKHRoaXMuX2l0ZW1RdWV1ZS5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGNvbnN0IG5leHRWYWx1ZSA9IHRoaXMuX2l0ZW1RdWV1ZS5wb3AoKTtcclxuICAgICAgc3VwZXIubmV4dChuZXh0VmFsdWUpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fYnVzeVB1c2hpbmdOZXh0ID0gZmFsc2U7XHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICogSW50ZXJuYWwgQWN0aW9uIHN0cmVhbSB0aGF0IGlzIGVtaXR0ZWQgYW55dGltZSBhbiBhY3Rpb24gaXMgZGlzcGF0Y2hlZC5cclxuICovXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEludGVybmFsQWN0aW9ucyBleHRlbmRzIE9yZGVyZWRTdWJqZWN0PEFjdGlvbkNvbnRleHQ+IHt9XHJcblxyXG4vKipcclxuICogQWN0aW9uIHN0cmVhbSB0aGF0IGlzIGVtaXR0ZWQgYW55dGltZSBhbiBhY3Rpb24gaXMgZGlzcGF0Y2hlZC5cclxuICpcclxuICogWW91IGNhbiBsaXN0ZW4gdG8gdGhpcyBpbiBzZXJ2aWNlcyB0byByZWFjdCB3aXRob3V0IHN0b3Jlcy5cclxuICovXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEFjdGlvbnMgZXh0ZW5kcyBPYnNlcnZhYmxlPGFueT4ge1xyXG4gIC8vIFRoaXMgaGFzIHRvIGJlIGBPYnNlcnZhYmxlPEFjdGlvbkNvbnRleHQ+YCBpbiB0aGUgdjQuIEJlY2F1c2UgYEludGVybmFsQWN0aW9uc2BcclxuICAvLyBpcyBhIGBTdWJqZWN0PEFjdGlvbkNvbnRleHQ+YC4gTGVhdmUgaXQgYXMgYGFueWAgdG8gYXZvaWQgYnJlYWtpbmcgY2hhbmdlc1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgaW50ZXJuYWxBY3Rpb25zJDogSW50ZXJuYWxBY3Rpb25zLFxyXG4gICAgaW50ZXJuYWxFeGVjdXRpb25TdHJhdGVneTogSW50ZXJuYWxOZ3hzRXhlY3V0aW9uU3RyYXRlZ3lcclxuICApIHtcclxuICAgIHN1cGVyKG9ic2VydmVyID0+IHtcclxuICAgICAgY29uc3QgY2hpbGRTdWJzY3JpcHRpb24gPSBpbnRlcm5hbEFjdGlvbnMkXHJcbiAgICAgICAgLnBpcGUobGVhdmVOZ3hzKGludGVybmFsRXhlY3V0aW9uU3RyYXRlZ3kpKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoe1xyXG4gICAgICAgICAgbmV4dDogY3R4ID0+IG9ic2VydmVyLm5leHQoY3R4KSxcclxuICAgICAgICAgIGVycm9yOiBlcnJvciA9PiBvYnNlcnZlci5lcnJvcihlcnJvciksXHJcbiAgICAgICAgICBjb21wbGV0ZTogKCkgPT4gb2JzZXJ2ZXIuY29tcGxldGUoKVxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgb2JzZXJ2ZXIuYWRkKGNoaWxkU3Vic2NyaXB0aW9uKTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,87 +1,87 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- /** @enum {string} */
6
- const VALIDATION_CODE = {
7
- STATE_NAME: 'STATE_NAME',
8
- STATE_UNIQUE: 'STATE_UNIQUE',
9
- STATE_NAME_PROPERTY: 'STATE_NAME_PROPERTY',
10
- STATE_DECORATOR: 'STATE_DECORATOR',
11
- INCORRECT_PRODUCTION: 'INCORRECT_PRODUCTION',
12
- INCORRECT_DEVELOPMENT: 'INCORRECT_DEVELOPMENT',
13
- SELECT_FACTORY_NOT_CONNECTED: 'SELECT_FACTORY_NOT_CONNECTED',
14
- ACTION_DECORATOR: 'ACTION_DECORATOR',
15
- SELECTOR_DECORATOR: 'SELECTOR_DECORATOR',
16
- ZONE_WARNING: 'ZONE_WARNING',
17
- PATCHING_ARRAY: 'PATCHING_ARRAY',
18
- PATCHING_PRIMITIVE: 'PATCHING_PRIMITIVE',
19
- UNDECORATED_STATE_IN_IVY: 'UNDECORATED_STATE_IN_IVY',
20
- };
21
- export { VALIDATION_CODE };
22
- /** @type {?} */
23
- export const CONFIG_MESSAGES = {
24
- [VALIDATION_CODE.STATE_NAME]: (/**
25
- * @param {?} name
26
- * @return {?}
27
- */
28
- (name) => `${name} is not a valid state name. It needs to be a valid object property name.`),
29
- [VALIDATION_CODE.STATE_NAME_PROPERTY]: (/**
30
- * @return {?}
31
- */
32
- () => `States must register a 'name' property`),
33
- [VALIDATION_CODE.STATE_UNIQUE]: (/**
34
- * @param {?} current
35
- * @param {?} newName
36
- * @param {?} oldName
37
- * @return {?}
38
- */
39
- (current, newName, oldName) => `State name '${current}' from ${newName} already exists in ${oldName}`),
40
- [VALIDATION_CODE.STATE_DECORATOR]: (/**
41
- * @return {?}
42
- */
43
- () => 'States must be decorated with @State() decorator'),
44
- [VALIDATION_CODE.INCORRECT_PRODUCTION]: (/**
45
- * @return {?}
46
- */
47
- () => 'Angular is running in production mode but NGXS is still running in the development mode!\n' +
48
- 'Please set developmentMode to false on the NgxsModule options when in production mode.\n' +
49
- 'NgxsModule.forRoot(states, { developmentMode: !environment.production })'),
50
- [VALIDATION_CODE.INCORRECT_DEVELOPMENT]: (/**
51
- * @return {?}
52
- */
53
- () => 'RECOMMENDATION: Set developmentMode to true on the NgxsModule when Angular is running in development mode.\n' +
54
- 'NgxsModule.forRoot(states, { developmentMode: !environment.production })'),
55
- [VALIDATION_CODE.SELECT_FACTORY_NOT_CONNECTED]: (/**
56
- * @return {?}
57
- */
58
- () => 'You have forgotten to import the NGXS module!'),
59
- [VALIDATION_CODE.ACTION_DECORATOR]: (/**
60
- * @return {?}
61
- */
62
- () => '@Action() decorator cannot be used with static methods'),
63
- [VALIDATION_CODE.SELECTOR_DECORATOR]: (/**
64
- * @return {?}
65
- */
66
- () => 'Selectors only work on methods'),
67
- [VALIDATION_CODE.ZONE_WARNING]: (/**
68
- * @return {?}
69
- */
70
- () => 'Your application was bootstrapped with nooped zone and your execution strategy requires an actual NgZone!\n' +
71
- 'Please set the value of the executionStrategy property to NoopNgxsExecutionStrategy.\n' +
72
- 'NgxsModule.forRoot(states, { executionStrategy: NoopNgxsExecutionStrategy })'),
73
- [VALIDATION_CODE.PATCHING_ARRAY]: (/**
74
- * @return {?}
75
- */
76
- () => 'Patching arrays is not supported.'),
77
- [VALIDATION_CODE.PATCHING_PRIMITIVE]: (/**
78
- * @return {?}
79
- */
80
- () => 'Patching primitives is not supported.'),
81
- [VALIDATION_CODE.UNDECORATED_STATE_IN_IVY]: (/**
82
- * @param {?} name
83
- * @return {?}
84
- */
85
- (name) => `'${name}' class should be decorated with @Injectable() right after the @State() decorator`)
86
- };
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZXMuY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neHMvc3RvcmUvIiwic291cmNlcyI6WyJzcmMvY29uZmlncy9tZXNzYWdlcy5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0lBQ0UsWUFBYSxZQUFZO0lBQ3pCLGNBQWUsY0FBYztJQUM3QixxQkFBc0IscUJBQXFCO0lBQzNDLGlCQUFrQixpQkFBaUI7SUFDbkMsc0JBQXVCLHNCQUFzQjtJQUM3Qyx1QkFBd0IsdUJBQXVCO0lBQy9DLDhCQUErQiw4QkFBOEI7SUFDN0Qsa0JBQW1CLGtCQUFrQjtJQUNyQyxvQkFBcUIsb0JBQW9CO0lBQ3pDLGNBQWUsY0FBYztJQUM3QixnQkFBaUIsZ0JBQWdCO0lBQ2pDLG9CQUFxQixvQkFBb0I7SUFDekMsMEJBQTJCLDBCQUEwQjs7OztBQUd2RCxNQUFNLE9BQU8sZUFBZSxHQUFHO0lBQzdCLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQzs7OztJQUFFLENBQUMsSUFBWSxFQUFFLEVBQUUsQ0FDN0MsR0FBRyxJQUFJLDBFQUEwRSxDQUFBO0lBQ25GLENBQUMsZUFBZSxDQUFDLG1CQUFtQixDQUFDOzs7SUFBRSxHQUFHLEVBQUUsQ0FBQyx3Q0FBd0MsQ0FBQTtJQUNyRixDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUM7Ozs7OztJQUFFLENBQUMsT0FBZSxFQUFFLE9BQWUsRUFBRSxPQUFlLEVBQUUsRUFBRSxDQUNwRixlQUFlLE9BQU8sVUFBVSxPQUFPLHNCQUFzQixPQUFPLEVBQUUsQ0FBQTtJQUN4RSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQUM7OztJQUFFLEdBQUcsRUFBRSxDQUFDLGtEQUFrRCxDQUFBO0lBQzNGLENBQUMsZUFBZSxDQUFDLG9CQUFvQixDQUFDOzs7SUFBRSxHQUFHLEVBQUUsQ0FDM0MsNEZBQTRGO1FBQzVGLDBGQUEwRjtRQUMxRiwwRUFBMEUsQ0FBQTtJQUM1RSxDQUFDLGVBQWUsQ0FBQyxxQkFBcUIsQ0FBQzs7O0lBQUUsR0FBRyxFQUFFLENBQzVDLDhHQUE4RztRQUM5RywwRUFBMEUsQ0FBQTtJQUM1RSxDQUFDLGVBQWUsQ0FBQyw0QkFBNEIsQ0FBQzs7O0lBQUUsR0FBRyxFQUFFLENBQ25ELCtDQUErQyxDQUFBO0lBQ2pELENBQUMsZUFBZSxDQUFDLGdCQUFnQixDQUFDOzs7SUFBRSxHQUFHLEVBQUUsQ0FDdkMsd0RBQXdELENBQUE7SUFDMUQsQ0FBQyxlQUFlLENBQUMsa0JBQWtCLENBQUM7OztJQUFFLEdBQUcsRUFBRSxDQUFDLGdDQUFnQyxDQUFBO0lBQzVFLENBQUMsZUFBZSxDQUFDLFlBQVksQ0FBQzs7O0lBQUUsR0FBRyxFQUFFLENBQ25DLDZHQUE2RztRQUM3Ryx3RkFBd0Y7UUFDeEYsOEVBQThFLENBQUE7SUFDaEYsQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDOzs7SUFBRSxHQUFHLEVBQUUsQ0FBQyxtQ0FBbUMsQ0FBQTtJQUMzRSxDQUFDLGVBQWUsQ0FBQyxrQkFBa0IsQ0FBQzs7O0lBQUUsR0FBRyxFQUFFLENBQUMsdUNBQXVDLENBQUE7SUFDbkYsQ0FBQyxlQUFlLENBQUMsd0JBQXdCLENBQUM7Ozs7SUFBRSxDQUFDLElBQVksRUFBRSxFQUFFLENBQzNELElBQUksSUFBSSxtRkFBbUYsQ0FBQTtDQUM5RiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFZBTElEQVRJT05fQ09ERSB7XG4gIFNUQVRFX05BTUUgPSAnU1RBVEVfTkFNRScsXG4gIFNUQVRFX1VOSVFVRSA9ICdTVEFURV9VTklRVUUnLFxuICBTVEFURV9OQU1FX1BST1BFUlRZID0gJ1NUQVRFX05BTUVfUFJPUEVSVFknLFxuICBTVEFURV9ERUNPUkFUT1IgPSAnU1RBVEVfREVDT1JBVE9SJyxcbiAgSU5DT1JSRUNUX1BST0RVQ1RJT04gPSAnSU5DT1JSRUNUX1BST0RVQ1RJT04nLFxuICBJTkNPUlJFQ1RfREVWRUxPUE1FTlQgPSAnSU5DT1JSRUNUX0RFVkVMT1BNRU5UJyxcbiAgU0VMRUNUX0ZBQ1RPUllfTk9UX0NPTk5FQ1RFRCA9ICdTRUxFQ1RfRkFDVE9SWV9OT1RfQ09OTkVDVEVEJyxcbiAgQUNUSU9OX0RFQ09SQVRPUiA9ICdBQ1RJT05fREVDT1JBVE9SJyxcbiAgU0VMRUNUT1JfREVDT1JBVE9SID0gJ1NFTEVDVE9SX0RFQ09SQVRPUicsXG4gIFpPTkVfV0FSTklORyA9ICdaT05FX1dBUk5JTkcnLFxuICBQQVRDSElOR19BUlJBWSA9ICdQQVRDSElOR19BUlJBWScsXG4gIFBBVENISU5HX1BSSU1JVElWRSA9ICdQQVRDSElOR19QUklNSVRJVkUnLFxuICBVTkRFQ09SQVRFRF9TVEFURV9JTl9JVlkgPSAnVU5ERUNPUkFURURfU1RBVEVfSU5fSVZZJ1xufVxuXG5leHBvcnQgY29uc3QgQ09ORklHX01FU1NBR0VTID0ge1xuICBbVkFMSURBVElPTl9DT0RFLlNUQVRFX05BTUVdOiAobmFtZTogc3RyaW5nKSA9PlxuICAgIGAke25hbWV9IGlzIG5vdCBhIHZhbGlkIHN0YXRlIG5hbWUuIEl0IG5lZWRzIHRvIGJlIGEgdmFsaWQgb2JqZWN0IHByb3BlcnR5IG5hbWUuYCxcbiAgW1ZBTElEQVRJT05fQ09ERS5TVEFURV9OQU1FX1BST1BFUlRZXTogKCkgPT4gYFN0YXRlcyBtdXN0IHJlZ2lzdGVyIGEgJ25hbWUnIHByb3BlcnR5YCxcbiAgW1ZBTElEQVRJT05fQ09ERS5TVEFURV9VTklRVUVdOiAoY3VycmVudDogc3RyaW5nLCBuZXdOYW1lOiBzdHJpbmcsIG9sZE5hbWU6IHN0cmluZykgPT5cbiAgICBgU3RhdGUgbmFtZSAnJHtjdXJyZW50fScgZnJvbSAke25ld05hbWV9IGFscmVhZHkgZXhpc3RzIGluICR7b2xkTmFtZX1gLFxuICBbVkFMSURBVElPTl9DT0RFLlNUQVRFX0RFQ09SQVRPUl06ICgpID0+ICdTdGF0ZXMgbXVzdCBiZSBkZWNvcmF0ZWQgd2l0aCBAU3RhdGUoKSBkZWNvcmF0b3InLFxuICBbVkFMSURBVElPTl9DT0RFLklOQ09SUkVDVF9QUk9EVUNUSU9OXTogKCkgPT5cbiAgICAnQW5ndWxhciBpcyBydW5uaW5nIGluIHByb2R1Y3Rpb24gbW9kZSBidXQgTkdYUyBpcyBzdGlsbCBydW5uaW5nIGluIHRoZSBkZXZlbG9wbWVudCBtb2RlIVxcbicgK1xuICAgICdQbGVhc2Ugc2V0IGRldmVsb3BtZW50TW9kZSB0byBmYWxzZSBvbiB0aGUgTmd4c01vZHVsZSBvcHRpb25zIHdoZW4gaW4gcHJvZHVjdGlvbiBtb2RlLlxcbicgK1xuICAgICdOZ3hzTW9kdWxlLmZvclJvb3Qoc3RhdGVzLCB7IGRldmVsb3BtZW50TW9kZTogIWVudmlyb25tZW50LnByb2R1Y3Rpb24gfSknLFxuICBbVkFMSURBVElPTl9DT0RFLklOQ09SUkVDVF9ERVZFTE9QTUVOVF06ICgpID0+XG4gICAgJ1JFQ09NTUVOREFUSU9OOiBTZXQgZGV2ZWxvcG1lbnRNb2RlIHRvIHRydWUgb24gdGhlIE5neHNNb2R1bGUgd2hlbiBBbmd1bGFyIGlzIHJ1bm5pbmcgaW4gZGV2ZWxvcG1lbnQgbW9kZS5cXG4nICtcbiAgICAnTmd4c01vZHVsZS5mb3JSb290KHN0YXRlcywgeyBkZXZlbG9wbWVudE1vZGU6ICFlbnZpcm9ubWVudC5wcm9kdWN0aW9uIH0pJyxcbiAgW1ZBTElEQVRJT05fQ09ERS5TRUxFQ1RfRkFDVE9SWV9OT1RfQ09OTkVDVEVEXTogKCkgPT5cbiAgICAnWW91IGhhdmUgZm9yZ290dGVuIHRvIGltcG9ydCB0aGUgTkdYUyBtb2R1bGUhJyxcbiAgW1ZBTElEQVRJT05fQ09ERS5BQ1RJT05fREVDT1JBVE9SXTogKCkgPT5cbiAgICAnQEFjdGlvbigpIGRlY29yYXRvciBjYW5ub3QgYmUgdXNlZCB3aXRoIHN0YXRpYyBtZXRob2RzJyxcbiAgW1ZBTElEQVRJT05fQ09ERS5TRUxFQ1RPUl9ERUNPUkFUT1JdOiAoKSA9PiAnU2VsZWN0b3JzIG9ubHkgd29yayBvbiBtZXRob2RzJyxcbiAgW1ZBTElEQVRJT05fQ09ERS5aT05FX1dBUk5JTkddOiAoKSA9PlxuICAgICdZb3VyIGFwcGxpY2F0aW9uIHdhcyBib290c3RyYXBwZWQgd2l0aCBub29wZWQgem9uZSBhbmQgeW91ciBleGVjdXRpb24gc3RyYXRlZ3kgcmVxdWlyZXMgYW4gYWN0dWFsIE5nWm9uZSFcXG4nICtcbiAgICAnUGxlYXNlIHNldCB0aGUgdmFsdWUgb2YgdGhlIGV4ZWN1dGlvblN0cmF0ZWd5IHByb3BlcnR5IHRvIE5vb3BOZ3hzRXhlY3V0aW9uU3RyYXRlZ3kuXFxuJyArXG4gICAgJ05neHNNb2R1bGUuZm9yUm9vdChzdGF0ZXMsIHsgZXhlY3V0aW9uU3RyYXRlZ3k6IE5vb3BOZ3hzRXhlY3V0aW9uU3RyYXRlZ3kgfSknLFxuICBbVkFMSURBVElPTl9DT0RFLlBBVENISU5HX0FSUkFZXTogKCkgPT4gJ1BhdGNoaW5nIGFycmF5cyBpcyBub3Qgc3VwcG9ydGVkLicsXG4gIFtWQUxJREFUSU9OX0NPREUuUEFUQ0hJTkdfUFJJTUlUSVZFXTogKCkgPT4gJ1BhdGNoaW5nIHByaW1pdGl2ZXMgaXMgbm90IHN1cHBvcnRlZC4nLFxuICBbVkFMSURBVElPTl9DT0RFLlVOREVDT1JBVEVEX1NUQVRFX0lOX0lWWV06IChuYW1lOiBzdHJpbmcpID0+XG4gICAgYCcke25hbWV9JyBjbGFzcyBzaG91bGQgYmUgZGVjb3JhdGVkIHdpdGggQEluamVjdGFibGUoKSByaWdodCBhZnRlciB0aGUgQFN0YXRlKCkgZGVjb3JhdG9yYFxufTtcbiJdfQ==
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ /** @enum {string} */
6
+ const VALIDATION_CODE = {
7
+ STATE_NAME: 'STATE_NAME',
8
+ STATE_UNIQUE: 'STATE_UNIQUE',
9
+ STATE_NAME_PROPERTY: 'STATE_NAME_PROPERTY',
10
+ STATE_DECORATOR: 'STATE_DECORATOR',
11
+ INCORRECT_PRODUCTION: 'INCORRECT_PRODUCTION',
12
+ INCORRECT_DEVELOPMENT: 'INCORRECT_DEVELOPMENT',
13
+ SELECT_FACTORY_NOT_CONNECTED: 'SELECT_FACTORY_NOT_CONNECTED',
14
+ ACTION_DECORATOR: 'ACTION_DECORATOR',
15
+ SELECTOR_DECORATOR: 'SELECTOR_DECORATOR',
16
+ ZONE_WARNING: 'ZONE_WARNING',
17
+ PATCHING_ARRAY: 'PATCHING_ARRAY',
18
+ PATCHING_PRIMITIVE: 'PATCHING_PRIMITIVE',
19
+ UNDECORATED_STATE_IN_IVY: 'UNDECORATED_STATE_IN_IVY',
20
+ };
21
+ export { VALIDATION_CODE };
22
+ /** @type {?} */
23
+ export const CONFIG_MESSAGES = {
24
+ [VALIDATION_CODE.STATE_NAME]: (/**
25
+ * @param {?} name
26
+ * @return {?}
27
+ */
28
+ (name) => `${name} is not a valid state name. It needs to be a valid object property name.`),
29
+ [VALIDATION_CODE.STATE_NAME_PROPERTY]: (/**
30
+ * @return {?}
31
+ */
32
+ () => `States must register a 'name' property`),
33
+ [VALIDATION_CODE.STATE_UNIQUE]: (/**
34
+ * @param {?} current
35
+ * @param {?} newName
36
+ * @param {?} oldName
37
+ * @return {?}
38
+ */
39
+ (current, newName, oldName) => `State name '${current}' from ${newName} already exists in ${oldName}`),
40
+ [VALIDATION_CODE.STATE_DECORATOR]: (/**
41
+ * @return {?}
42
+ */
43
+ () => 'States must be decorated with @State() decorator'),
44
+ [VALIDATION_CODE.INCORRECT_PRODUCTION]: (/**
45
+ * @return {?}
46
+ */
47
+ () => 'Angular is running in production mode but NGXS is still running in the development mode!\n' +
48
+ 'Please set developmentMode to false on the NgxsModule options when in production mode.\n' +
49
+ 'NgxsModule.forRoot(states, { developmentMode: !environment.production })'),
50
+ [VALIDATION_CODE.INCORRECT_DEVELOPMENT]: (/**
51
+ * @return {?}
52
+ */
53
+ () => 'RECOMMENDATION: Set developmentMode to true on the NgxsModule when Angular is running in development mode.\n' +
54
+ 'NgxsModule.forRoot(states, { developmentMode: !environment.production })'),
55
+ [VALIDATION_CODE.SELECT_FACTORY_NOT_CONNECTED]: (/**
56
+ * @return {?}
57
+ */
58
+ () => 'You have forgotten to import the NGXS module!'),
59
+ [VALIDATION_CODE.ACTION_DECORATOR]: (/**
60
+ * @return {?}
61
+ */
62
+ () => '@Action() decorator cannot be used with static methods'),
63
+ [VALIDATION_CODE.SELECTOR_DECORATOR]: (/**
64
+ * @return {?}
65
+ */
66
+ () => 'Selectors only work on methods'),
67
+ [VALIDATION_CODE.ZONE_WARNING]: (/**
68
+ * @return {?}
69
+ */
70
+ () => 'Your application was bootstrapped with nooped zone and your execution strategy requires an actual NgZone!\n' +
71
+ 'Please set the value of the executionStrategy property to NoopNgxsExecutionStrategy.\n' +
72
+ 'NgxsModule.forRoot(states, { executionStrategy: NoopNgxsExecutionStrategy })'),
73
+ [VALIDATION_CODE.PATCHING_ARRAY]: (/**
74
+ * @return {?}
75
+ */
76
+ () => 'Patching arrays is not supported.'),
77
+ [VALIDATION_CODE.PATCHING_PRIMITIVE]: (/**
78
+ * @return {?}
79
+ */
80
+ () => 'Patching primitives is not supported.'),
81
+ [VALIDATION_CODE.UNDECORATED_STATE_IN_IVY]: (/**
82
+ * @param {?} name
83
+ * @return {?}
84
+ */
85
+ (name) => `'${name}' class should be decorated with @Injectable() right after the @State() decorator`)
86
+ };
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZXMuY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neHMvc3RvcmUvIiwic291cmNlcyI6WyJzcmMvY29uZmlncy9tZXNzYWdlcy5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0lBQ0UsWUFBYSxZQUFZO0lBQ3pCLGNBQWUsY0FBYztJQUM3QixxQkFBc0IscUJBQXFCO0lBQzNDLGlCQUFrQixpQkFBaUI7SUFDbkMsc0JBQXVCLHNCQUFzQjtJQUM3Qyx1QkFBd0IsdUJBQXVCO0lBQy9DLDhCQUErQiw4QkFBOEI7SUFDN0Qsa0JBQW1CLGtCQUFrQjtJQUNyQyxvQkFBcUIsb0JBQW9CO0lBQ3pDLGNBQWUsY0FBYztJQUM3QixnQkFBaUIsZ0JBQWdCO0lBQ2pDLG9CQUFxQixvQkFBb0I7SUFDekMsMEJBQTJCLDBCQUEwQjs7OztBQUd2RCxNQUFNLE9BQU8sZUFBZSxHQUFHO0lBQzdCLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQzs7OztJQUFFLENBQUMsSUFBWSxFQUFFLEVBQUUsQ0FDN0MsR0FBRyxJQUFJLDBFQUEwRSxDQUFBO0lBQ25GLENBQUMsZUFBZSxDQUFDLG1CQUFtQixDQUFDOzs7SUFBRSxHQUFHLEVBQUUsQ0FBQyx3Q0FBd0MsQ0FBQTtJQUNyRixDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUM7Ozs7OztJQUFFLENBQUMsT0FBZSxFQUFFLE9BQWUsRUFBRSxPQUFlLEVBQUUsRUFBRSxDQUNwRixlQUFlLE9BQU8sVUFBVSxPQUFPLHNCQUFzQixPQUFPLEVBQUUsQ0FBQTtJQUN4RSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQUM7OztJQUFFLEdBQUcsRUFBRSxDQUFDLGtEQUFrRCxDQUFBO0lBQzNGLENBQUMsZUFBZSxDQUFDLG9CQUFvQixDQUFDOzs7SUFBRSxHQUFHLEVBQUUsQ0FDM0MsNEZBQTRGO1FBQzVGLDBGQUEwRjtRQUMxRiwwRUFBMEUsQ0FBQTtJQUM1RSxDQUFDLGVBQWUsQ0FBQyxxQkFBcUIsQ0FBQzs7O0lBQUUsR0FBRyxFQUFFLENBQzVDLDhHQUE4RztRQUM5RywwRUFBMEUsQ0FBQTtJQUM1RSxDQUFDLGVBQWUsQ0FBQyw0QkFBNEIsQ0FBQzs7O0lBQUUsR0FBRyxFQUFFLENBQ25ELCtDQUErQyxDQUFBO0lBQ2pELENBQUMsZUFBZSxDQUFDLGdCQUFnQixDQUFDOzs7SUFBRSxHQUFHLEVBQUUsQ0FDdkMsd0RBQXdELENBQUE7SUFDMUQsQ0FBQyxlQUFlLENBQUMsa0JBQWtCLENBQUM7OztJQUFFLEdBQUcsRUFBRSxDQUFDLGdDQUFnQyxDQUFBO0lBQzVFLENBQUMsZUFBZSxDQUFDLFlBQVksQ0FBQzs7O0lBQUUsR0FBRyxFQUFFLENBQ25DLDZHQUE2RztRQUM3Ryx3RkFBd0Y7UUFDeEYsOEVBQThFLENBQUE7SUFDaEYsQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDOzs7SUFBRSxHQUFHLEVBQUUsQ0FBQyxtQ0FBbUMsQ0FBQTtJQUMzRSxDQUFDLGVBQWUsQ0FBQyxrQkFBa0IsQ0FBQzs7O0lBQUUsR0FBRyxFQUFFLENBQUMsdUNBQXVDLENBQUE7SUFDbkYsQ0FBQyxlQUFlLENBQUMsd0JBQXdCLENBQUM7Ozs7SUFBRSxDQUFDLElBQVksRUFBRSxFQUFFLENBQzNELElBQUksSUFBSSxtRkFBbUYsQ0FBQTtDQUM5RiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFZBTElEQVRJT05fQ09ERSB7XHJcbiAgU1RBVEVfTkFNRSA9ICdTVEFURV9OQU1FJyxcclxuICBTVEFURV9VTklRVUUgPSAnU1RBVEVfVU5JUVVFJyxcclxuICBTVEFURV9OQU1FX1BST1BFUlRZID0gJ1NUQVRFX05BTUVfUFJPUEVSVFknLFxyXG4gIFNUQVRFX0RFQ09SQVRPUiA9ICdTVEFURV9ERUNPUkFUT1InLFxyXG4gIElOQ09SUkVDVF9QUk9EVUNUSU9OID0gJ0lOQ09SUkVDVF9QUk9EVUNUSU9OJyxcclxuICBJTkNPUlJFQ1RfREVWRUxPUE1FTlQgPSAnSU5DT1JSRUNUX0RFVkVMT1BNRU5UJyxcclxuICBTRUxFQ1RfRkFDVE9SWV9OT1RfQ09OTkVDVEVEID0gJ1NFTEVDVF9GQUNUT1JZX05PVF9DT05ORUNURUQnLFxyXG4gIEFDVElPTl9ERUNPUkFUT1IgPSAnQUNUSU9OX0RFQ09SQVRPUicsXHJcbiAgU0VMRUNUT1JfREVDT1JBVE9SID0gJ1NFTEVDVE9SX0RFQ09SQVRPUicsXHJcbiAgWk9ORV9XQVJOSU5HID0gJ1pPTkVfV0FSTklORycsXHJcbiAgUEFUQ0hJTkdfQVJSQVkgPSAnUEFUQ0hJTkdfQVJSQVknLFxyXG4gIFBBVENISU5HX1BSSU1JVElWRSA9ICdQQVRDSElOR19QUklNSVRJVkUnLFxyXG4gIFVOREVDT1JBVEVEX1NUQVRFX0lOX0lWWSA9ICdVTkRFQ09SQVRFRF9TVEFURV9JTl9JVlknXHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBDT05GSUdfTUVTU0FHRVMgPSB7XHJcbiAgW1ZBTElEQVRJT05fQ09ERS5TVEFURV9OQU1FXTogKG5hbWU6IHN0cmluZykgPT5cclxuICAgIGAke25hbWV9IGlzIG5vdCBhIHZhbGlkIHN0YXRlIG5hbWUuIEl0IG5lZWRzIHRvIGJlIGEgdmFsaWQgb2JqZWN0IHByb3BlcnR5IG5hbWUuYCxcclxuICBbVkFMSURBVElPTl9DT0RFLlNUQVRFX05BTUVfUFJPUEVSVFldOiAoKSA9PiBgU3RhdGVzIG11c3QgcmVnaXN0ZXIgYSAnbmFtZScgcHJvcGVydHlgLFxyXG4gIFtWQUxJREFUSU9OX0NPREUuU1RBVEVfVU5JUVVFXTogKGN1cnJlbnQ6IHN0cmluZywgbmV3TmFtZTogc3RyaW5nLCBvbGROYW1lOiBzdHJpbmcpID0+XHJcbiAgICBgU3RhdGUgbmFtZSAnJHtjdXJyZW50fScgZnJvbSAke25ld05hbWV9IGFscmVhZHkgZXhpc3RzIGluICR7b2xkTmFtZX1gLFxyXG4gIFtWQUxJREFUSU9OX0NPREUuU1RBVEVfREVDT1JBVE9SXTogKCkgPT4gJ1N0YXRlcyBtdXN0IGJlIGRlY29yYXRlZCB3aXRoIEBTdGF0ZSgpIGRlY29yYXRvcicsXHJcbiAgW1ZBTElEQVRJT05fQ09ERS5JTkNPUlJFQ1RfUFJPRFVDVElPTl06ICgpID0+XHJcbiAgICAnQW5ndWxhciBpcyBydW5uaW5nIGluIHByb2R1Y3Rpb24gbW9kZSBidXQgTkdYUyBpcyBzdGlsbCBydW5uaW5nIGluIHRoZSBkZXZlbG9wbWVudCBtb2RlIVxcbicgK1xyXG4gICAgJ1BsZWFzZSBzZXQgZGV2ZWxvcG1lbnRNb2RlIHRvIGZhbHNlIG9uIHRoZSBOZ3hzTW9kdWxlIG9wdGlvbnMgd2hlbiBpbiBwcm9kdWN0aW9uIG1vZGUuXFxuJyArXHJcbiAgICAnTmd4c01vZHVsZS5mb3JSb290KHN0YXRlcywgeyBkZXZlbG9wbWVudE1vZGU6ICFlbnZpcm9ubWVudC5wcm9kdWN0aW9uIH0pJyxcclxuICBbVkFMSURBVElPTl9DT0RFLklOQ09SUkVDVF9ERVZFTE9QTUVOVF06ICgpID0+XHJcbiAgICAnUkVDT01NRU5EQVRJT046IFNldCBkZXZlbG9wbWVudE1vZGUgdG8gdHJ1ZSBvbiB0aGUgTmd4c01vZHVsZSB3aGVuIEFuZ3VsYXIgaXMgcnVubmluZyBpbiBkZXZlbG9wbWVudCBtb2RlLlxcbicgK1xyXG4gICAgJ05neHNNb2R1bGUuZm9yUm9vdChzdGF0ZXMsIHsgZGV2ZWxvcG1lbnRNb2RlOiAhZW52aXJvbm1lbnQucHJvZHVjdGlvbiB9KScsXHJcbiAgW1ZBTElEQVRJT05fQ09ERS5TRUxFQ1RfRkFDVE9SWV9OT1RfQ09OTkVDVEVEXTogKCkgPT5cclxuICAgICdZb3UgaGF2ZSBmb3Jnb3R0ZW4gdG8gaW1wb3J0IHRoZSBOR1hTIG1vZHVsZSEnLFxyXG4gIFtWQUxJREFUSU9OX0NPREUuQUNUSU9OX0RFQ09SQVRPUl06ICgpID0+XHJcbiAgICAnQEFjdGlvbigpIGRlY29yYXRvciBjYW5ub3QgYmUgdXNlZCB3aXRoIHN0YXRpYyBtZXRob2RzJyxcclxuICBbVkFMSURBVElPTl9DT0RFLlNFTEVDVE9SX0RFQ09SQVRPUl06ICgpID0+ICdTZWxlY3RvcnMgb25seSB3b3JrIG9uIG1ldGhvZHMnLFxyXG4gIFtWQUxJREFUSU9OX0NPREUuWk9ORV9XQVJOSU5HXTogKCkgPT5cclxuICAgICdZb3VyIGFwcGxpY2F0aW9uIHdhcyBib290c3RyYXBwZWQgd2l0aCBub29wZWQgem9uZSBhbmQgeW91ciBleGVjdXRpb24gc3RyYXRlZ3kgcmVxdWlyZXMgYW4gYWN0dWFsIE5nWm9uZSFcXG4nICtcclxuICAgICdQbGVhc2Ugc2V0IHRoZSB2YWx1ZSBvZiB0aGUgZXhlY3V0aW9uU3RyYXRlZ3kgcHJvcGVydHkgdG8gTm9vcE5neHNFeGVjdXRpb25TdHJhdGVneS5cXG4nICtcclxuICAgICdOZ3hzTW9kdWxlLmZvclJvb3Qoc3RhdGVzLCB7IGV4ZWN1dGlvblN0cmF0ZWd5OiBOb29wTmd4c0V4ZWN1dGlvblN0cmF0ZWd5IH0pJyxcclxuICBbVkFMSURBVElPTl9DT0RFLlBBVENISU5HX0FSUkFZXTogKCkgPT4gJ1BhdGNoaW5nIGFycmF5cyBpcyBub3Qgc3VwcG9ydGVkLicsXHJcbiAgW1ZBTElEQVRJT05fQ09ERS5QQVRDSElOR19QUklNSVRJVkVdOiAoKSA9PiAnUGF0Y2hpbmcgcHJpbWl0aXZlcyBpcyBub3Qgc3VwcG9ydGVkLicsXHJcbiAgW1ZBTElEQVRJT05fQ09ERS5VTkRFQ09SQVRFRF9TVEFURV9JTl9JVlldOiAobmFtZTogc3RyaW5nKSA9PlxyXG4gICAgYCcke25hbWV9JyBjbGFzcyBzaG91bGQgYmUgZGVjb3JhdGVkIHdpdGggQEluamVjdGFibGUoKSByaWdodCBhZnRlciB0aGUgQFN0YXRlKCkgZGVjb3JhdG9yYFxyXG59O1xyXG4iXX0=
@@ -1,44 +1,44 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- import { ensureStoreMetadata } from '../internal/internals';
6
- import { CONFIG_MESSAGES, VALIDATION_CODE } from '../configs/messages.config';
7
- /**
8
- * Decorates a method with a action information.
9
- * @param {?} actions
10
- * @param {?=} options
11
- * @return {?}
12
- */
13
- export function Action(actions, options) {
14
- return (/**
15
- * @param {?} target
16
- * @param {?} name
17
- * @return {?}
18
- */
19
- (target, name) => {
20
- /** @type {?} */
21
- const isStaticMethod = target.hasOwnProperty('prototype');
22
- if (isStaticMethod) {
23
- throw new Error(CONFIG_MESSAGES[VALIDATION_CODE.ACTION_DECORATOR]());
24
- }
25
- /** @type {?} */
26
- const meta = ensureStoreMetadata(target.constructor);
27
- if (!Array.isArray(actions)) {
28
- actions = [actions];
29
- }
30
- for (const action of actions) {
31
- /** @type {?} */
32
- const type = action.type;
33
- if (!meta.actions[type]) {
34
- meta.actions[type] = [];
35
- }
36
- meta.actions[type].push({
37
- fn: name,
38
- options: options || {},
39
- type
40
- });
41
- }
42
- });
43
- }
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neHMvc3RvcmUvIiwic291cmNlcyI6WyJzcmMvZGVjb3JhdG9ycy9hY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTVELE9BQU8sRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7QUFLOUUsTUFBTSxVQUFVLE1BQU0sQ0FDcEIsT0FBa0MsRUFDbEMsT0FBdUI7SUFFdkI7Ozs7O0lBQU8sQ0FBQyxNQUFXLEVBQUUsSUFBcUIsRUFBUSxFQUFFOztjQUM1QyxjQUFjLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUM7UUFFekQsSUFBSSxjQUFjLEVBQUU7WUFDbEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxlQUFlLENBQUMsZUFBZSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ3RFOztjQUVLLElBQUksR0FBRyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDO1FBRXBELElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQzNCLE9BQU8sR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ3JCO1FBRUQsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUU7O2tCQUN0QixJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUk7WUFFeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ3ZCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO2FBQ3pCO1lBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUM7Z0JBQ3RCLEVBQUUsRUFBRSxJQUFJO2dCQUNSLE9BQU8sRUFBRSxPQUFPLElBQUksRUFBRTtnQkFDdEIsSUFBSTthQUNMLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQyxFQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGVuc3VyZVN0b3JlTWV0YWRhdGEgfSBmcm9tICcuLi9pbnRlcm5hbC9pbnRlcm5hbHMnO1xuaW1wb3J0IHsgQWN0aW9uVHlwZSwgQWN0aW9uT3B0aW9ucyB9IGZyb20gJy4uL2FjdGlvbnMvc3ltYm9scyc7XG5pbXBvcnQgeyBDT05GSUdfTUVTU0FHRVMsIFZBTElEQVRJT05fQ09ERSB9IGZyb20gJy4uL2NvbmZpZ3MvbWVzc2FnZXMuY29uZmlnJztcblxuLyoqXG4gKiBEZWNvcmF0ZXMgYSBtZXRob2Qgd2l0aCBhIGFjdGlvbiBpbmZvcm1hdGlvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIEFjdGlvbihcbiAgYWN0aW9uczogQWN0aW9uVHlwZSB8IEFjdGlvblR5cGVbXSxcbiAgb3B0aW9ucz86IEFjdGlvbk9wdGlvbnNcbik6IE1ldGhvZERlY29yYXRvciB7XG4gIHJldHVybiAodGFyZ2V0OiBhbnksIG5hbWU6IHN0cmluZyB8IHN5bWJvbCk6IHZvaWQgPT4ge1xuICAgIGNvbnN0IGlzU3RhdGljTWV0aG9kID0gdGFyZ2V0Lmhhc093blByb3BlcnR5KCdwcm90b3R5cGUnKTtcblxuICAgIGlmIChpc1N0YXRpY01ldGhvZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKENPTkZJR19NRVNTQUdFU1tWQUxJREFUSU9OX0NPREUuQUNUSU9OX0RFQ09SQVRPUl0oKSk7XG4gICAgfVxuXG4gICAgY29uc3QgbWV0YSA9IGVuc3VyZVN0b3JlTWV0YWRhdGEodGFyZ2V0LmNvbnN0cnVjdG9yKTtcblxuICAgIGlmICghQXJyYXkuaXNBcnJheShhY3Rpb25zKSkge1xuICAgICAgYWN0aW9ucyA9IFthY3Rpb25zXTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGFjdGlvbiBvZiBhY3Rpb25zKSB7XG4gICAgICBjb25zdCB0eXBlID0gYWN0aW9uLnR5cGU7XG5cbiAgICAgIGlmICghbWV0YS5hY3Rpb25zW3R5cGVdKSB7XG4gICAgICAgIG1ldGEuYWN0aW9uc1t0eXBlXSA9IFtdO1xuICAgICAgfVxuXG4gICAgICBtZXRhLmFjdGlvbnNbdHlwZV0ucHVzaCh7XG4gICAgICAgIGZuOiBuYW1lLFxuICAgICAgICBvcHRpb25zOiBvcHRpb25zIHx8IHt9LFxuICAgICAgICB0eXBlXG4gICAgICB9KTtcbiAgICB9XG4gIH07XG59XG4iXX0=
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ import { ensureStoreMetadata } from '../internal/internals';
6
+ import { CONFIG_MESSAGES, VALIDATION_CODE } from '../configs/messages.config';
7
+ /**
8
+ * Decorates a method with a action information.
9
+ * @param {?} actions
10
+ * @param {?=} options
11
+ * @return {?}
12
+ */
13
+ export function Action(actions, options) {
14
+ return (/**
15
+ * @param {?} target
16
+ * @param {?} name
17
+ * @return {?}
18
+ */
19
+ (target, name) => {
20
+ /** @type {?} */
21
+ const isStaticMethod = target.hasOwnProperty('prototype');
22
+ if (isStaticMethod) {
23
+ throw new Error(CONFIG_MESSAGES[VALIDATION_CODE.ACTION_DECORATOR]());
24
+ }
25
+ /** @type {?} */
26
+ const meta = ensureStoreMetadata(target.constructor);
27
+ if (!Array.isArray(actions)) {
28
+ actions = [actions];
29
+ }
30
+ for (const action of actions) {
31
+ /** @type {?} */
32
+ const type = action.type;
33
+ if (!meta.actions[type]) {
34
+ meta.actions[type] = [];
35
+ }
36
+ meta.actions[type].push({
37
+ fn: name,
38
+ options: options || {},
39
+ type
40
+ });
41
+ }
42
+ });
43
+ }
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neHMvc3RvcmUvIiwic291cmNlcyI6WyJzcmMvZGVjb3JhdG9ycy9hY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTVELE9BQU8sRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7QUFLOUUsTUFBTSxVQUFVLE1BQU0sQ0FDcEIsT0FBa0MsRUFDbEMsT0FBdUI7SUFFdkI7Ozs7O0lBQU8sQ0FBQyxNQUFXLEVBQUUsSUFBcUIsRUFBUSxFQUFFOztjQUM1QyxjQUFjLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUM7UUFFekQsSUFBSSxjQUFjLEVBQUU7WUFDbEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxlQUFlLENBQUMsZUFBZSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ3RFOztjQUVLLElBQUksR0FBRyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDO1FBRXBELElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQzNCLE9BQU8sR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ3JCO1FBRUQsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUU7O2tCQUN0QixJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUk7WUFFeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ3ZCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO2FBQ3pCO1lBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUM7Z0JBQ3RCLEVBQUUsRUFBRSxJQUFJO2dCQUNSLE9BQU8sRUFBRSxPQUFPLElBQUksRUFBRTtnQkFDdEIsSUFBSTthQUNMLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQyxFQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGVuc3VyZVN0b3JlTWV0YWRhdGEgfSBmcm9tICcuLi9pbnRlcm5hbC9pbnRlcm5hbHMnO1xyXG5pbXBvcnQgeyBBY3Rpb25UeXBlLCBBY3Rpb25PcHRpb25zIH0gZnJvbSAnLi4vYWN0aW9ucy9zeW1ib2xzJztcclxuaW1wb3J0IHsgQ09ORklHX01FU1NBR0VTLCBWQUxJREFUSU9OX0NPREUgfSBmcm9tICcuLi9jb25maWdzL21lc3NhZ2VzLmNvbmZpZyc7XHJcblxyXG4vKipcclxuICogRGVjb3JhdGVzIGEgbWV0aG9kIHdpdGggYSBhY3Rpb24gaW5mb3JtYXRpb24uXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gQWN0aW9uKFxyXG4gIGFjdGlvbnM6IEFjdGlvblR5cGUgfCBBY3Rpb25UeXBlW10sXHJcbiAgb3B0aW9ucz86IEFjdGlvbk9wdGlvbnNcclxuKTogTWV0aG9kRGVjb3JhdG9yIHtcclxuICByZXR1cm4gKHRhcmdldDogYW55LCBuYW1lOiBzdHJpbmcgfCBzeW1ib2wpOiB2b2lkID0+IHtcclxuICAgIGNvbnN0IGlzU3RhdGljTWV0aG9kID0gdGFyZ2V0Lmhhc093blByb3BlcnR5KCdwcm90b3R5cGUnKTtcclxuXHJcbiAgICBpZiAoaXNTdGF0aWNNZXRob2QpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKENPTkZJR19NRVNTQUdFU1tWQUxJREFUSU9OX0NPREUuQUNUSU9OX0RFQ09SQVRPUl0oKSk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgbWV0YSA9IGVuc3VyZVN0b3JlTWV0YWRhdGEodGFyZ2V0LmNvbnN0cnVjdG9yKTtcclxuXHJcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkoYWN0aW9ucykpIHtcclxuICAgICAgYWN0aW9ucyA9IFthY3Rpb25zXTtcclxuICAgIH1cclxuXHJcbiAgICBmb3IgKGNvbnN0IGFjdGlvbiBvZiBhY3Rpb25zKSB7XHJcbiAgICAgIGNvbnN0IHR5cGUgPSBhY3Rpb24udHlwZTtcclxuXHJcbiAgICAgIGlmICghbWV0YS5hY3Rpb25zW3R5cGVdKSB7XHJcbiAgICAgICAgbWV0YS5hY3Rpb25zW3R5cGVdID0gW107XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIG1ldGEuYWN0aW9uc1t0eXBlXS5wdXNoKHtcclxuICAgICAgICBmbjogbmFtZSxcclxuICAgICAgICBvcHRpb25zOiBvcHRpb25zIHx8IHt9LFxyXG4gICAgICAgIHR5cGVcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfTtcclxufVxyXG4iXX0=