@ngxs/store 3.7.5-dev.master-0da56b4 → 3.7.5-dev.master-b4f4da3
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.
- package/bundles/ngxs-store.umd.js +162 -57
- package/bundles/ngxs-store.umd.js.map +1 -1
- package/bundles/ngxs-store.umd.min.js +1 -1
- package/bundles/ngxs-store.umd.min.js.map +1 -1
- package/esm2015/ngxs-store.js +6 -5
- package/esm2015/src/internal/dispatcher.js +14 -36
- package/esm2015/src/internal/error-handler.js +118 -0
- package/esm2015/src/internal/lifecycle-state-manager.js +29 -11
- package/esm5/ngxs-store.js +6 -5
- package/esm5/src/internal/dispatcher.js +13 -37
- package/esm5/src/internal/error-handler.js +125 -0
- package/esm5/src/internal/lifecycle-state-manager.js +28 -19
- package/fesm2015/ngxs-store.js +152 -43
- package/fesm2015/ngxs-store.js.map +1 -1
- package/fesm5/ngxs-store.js +156 -52
- package/fesm5/ngxs-store.js.map +1 -1
- package/ngxs-store.d.ts +6 -5
- package/ngxs-store.metadata.json +1 -1
- package/package.json +1 -1
- package/src/internal/dispatcher.d.ts +3 -4
- package/src/internal/error-handler.d.ts +23 -0
- package/src/internal/lifecycle-state-manager.d.ts +5 -9
package/esm2015/ngxs-store.js
CHANGED
|
@@ -7,18 +7,19 @@
|
|
|
7
7
|
*/
|
|
8
8
|
export { NgxsModule, Action, Store, State, Select, SelectorOptions, Actions, getSelectorMetadata, getStoreMetadata, ensureStoreMetadata, ensureSelectorMetadata, ofAction, ofActionDispatched, ofActionSuccessful, ofActionCanceled, ofActionErrored, ofActionCompleted, NgxsSimpleChange, Selector, getActionTypeFromInstance, actionMatcher, createSelector, NoopNgxsExecutionStrategy, StateToken, NGXS_PLUGINS, StateStream, setValue, getValue, InitState, UpdateState } from './index';
|
|
9
9
|
export { InternalActions as ɵb, OrderedSubject as ɵa } from './src/actions-stream';
|
|
10
|
-
export { SelectFactory as
|
|
10
|
+
export { SelectFactory as ɵs } from './src/decorators/select/select-factory';
|
|
11
11
|
export { InternalNgxsExecutionStrategy as ɵq } from './src/execution/internal-ngxs-execution-strategy';
|
|
12
12
|
export { NGXS_EXECUTION_STRATEGY as ɵi, USER_PROVIDED_NGXS_EXECUTION_STRATEGY as ɵh } from './src/execution/symbols';
|
|
13
13
|
export { InternalDispatchedActionResults as ɵl, InternalDispatcher as ɵm } from './src/internal/dispatcher';
|
|
14
|
-
export {
|
|
15
|
-
export {
|
|
14
|
+
export { InternalErrorReporter as ɵr } from './src/internal/error-handler';
|
|
15
|
+
export { ensureSelectorMetadata as ɵw, ensureStoreMetadata as ɵu, getSelectorMetadata as ɵx, getStoreMetadata as ɵv } from './src/internal/internals';
|
|
16
|
+
export { LifecycleStateManager as ɵy } from './src/internal/lifecycle-state-manager';
|
|
16
17
|
export { StateContextFactory as ɵn } from './src/internal/state-context-factory';
|
|
17
18
|
export { StateFactory as ɵk } from './src/internal/state-factory';
|
|
18
19
|
export { InternalStateOperations as ɵo } from './src/internal/state-operations';
|
|
19
|
-
export { NgxsFeatureModule as
|
|
20
|
+
export { NgxsFeatureModule as ɵz } from './src/modules/ngxs-feature.module';
|
|
20
21
|
export { NgxsRootModule as ɵj } from './src/modules/ngxs-root.module';
|
|
21
22
|
export { PluginManager as ɵp } from './src/plugin-manager';
|
|
22
23
|
export { FEATURE_STATE_TOKEN as ɵd, NgxsConfig as ɵf, ROOT_STATE_TOKEN as ɵc, SELECTOR_META_KEY as ɵe } from './src/symbols';
|
|
23
24
|
export { mergeDeep as ɵg } from './src/utils/utils';
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4cy1zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3hzL3N0b3JlLyIsInNvdXJjZXMiOlsibmd4cy1zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsbWRBQWMsU0FBUyxDQUFDO0FBRXhCLE9BQU8sRUFBQyxlQUFlLElBQUksRUFBRSxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRixPQUFPLEVBQUMsYUFBYSxJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQzNFLE9BQU8sRUFBQyw2QkFBNkIsSUFBSSxFQUFFLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUNyRyxPQUFPLEVBQUMsdUJBQXVCLElBQUksRUFBRSxFQUFDLHFDQUFxQyxJQUFJLEVBQUUsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ2xILE9BQU8sRUFBQywrQkFBK0IsSUFBSSxFQUFFLEVBQUMsa0JBQWtCLElBQUksRUFBRSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDekcsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ3pFLE9BQU8sRUFBMEIsc0JBQXNCLElBQUksRUFBRSxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsZ0JBQWdCLElBQUksRUFBRSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDMUssT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQ25GLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUMvRSxPQUFPLEVBQUMsWUFBWSxJQUFJLEVBQUUsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBQyx1QkFBdUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUM5RSxPQUFPLEVBQUMsaUJBQWlCLElBQUksRUFBRSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDMUUsT0FBTyxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRSxPQUFPLEVBQUMsYUFBYSxJQUFJLEVBQUUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRXpELE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsVUFBVSxJQUFJLEVBQUUsRUFBQyxnQkFBZ0IsSUFBSSxFQUFFLEVBQUMsaUJBQWlCLElBQUksRUFBRSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hILE9BQU8sRUFBQyxTQUFTLElBQUksRUFBRSxFQUFDLE1BQU0sbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuXG5leHBvcnQge0ludGVybmFsQWN0aW9ucyBhcyDJtWIsT3JkZXJlZFN1YmplY3QgYXMgybVhfSBmcm9tICcuL3NyYy9hY3Rpb25zLXN0cmVhbSc7XG5leHBvcnQge1NlbGVjdEZhY3RvcnkgYXMgybVzfSBmcm9tICcuL3NyYy9kZWNvcmF0b3JzL3NlbGVjdC9zZWxlY3QtZmFjdG9yeSc7XG5leHBvcnQge0ludGVybmFsTmd4c0V4ZWN1dGlvblN0cmF0ZWd5IGFzIMm1cX0gZnJvbSAnLi9zcmMvZXhlY3V0aW9uL2ludGVybmFsLW5neHMtZXhlY3V0aW9uLXN0cmF0ZWd5JztcbmV4cG9ydCB7TkdYU19FWEVDVVRJT05fU1RSQVRFR1kgYXMgybVpLFVTRVJfUFJPVklERURfTkdYU19FWEVDVVRJT05fU1RSQVRFR1kgYXMgybVofSBmcm9tICcuL3NyYy9leGVjdXRpb24vc3ltYm9scyc7XG5leHBvcnQge0ludGVybmFsRGlzcGF0Y2hlZEFjdGlvblJlc3VsdHMgYXMgybVsLEludGVybmFsRGlzcGF0Y2hlciBhcyDJtW19IGZyb20gJy4vc3JjL2ludGVybmFsL2Rpc3BhdGNoZXInO1xuZXhwb3J0IHtJbnRlcm5hbEVycm9yUmVwb3J0ZXIgYXMgybVyfSBmcm9tICcuL3NyYy9pbnRlcm5hbC9lcnJvci1oYW5kbGVyJztcbmV4cG9ydCB7U3RhdGVDbGFzc0ludGVybmFsIGFzIMm1dCxlbnN1cmVTZWxlY3Rvck1ldGFkYXRhIGFzIMm1dyxlbnN1cmVTdG9yZU1ldGFkYXRhIGFzIMm1dSxnZXRTZWxlY3Rvck1ldGFkYXRhIGFzIMm1eCxnZXRTdG9yZU1ldGFkYXRhIGFzIMm1dn0gZnJvbSAnLi9zcmMvaW50ZXJuYWwvaW50ZXJuYWxzJztcbmV4cG9ydCB7TGlmZWN5Y2xlU3RhdGVNYW5hZ2VyIGFzIMm1eX0gZnJvbSAnLi9zcmMvaW50ZXJuYWwvbGlmZWN5Y2xlLXN0YXRlLW1hbmFnZXInO1xuZXhwb3J0IHtTdGF0ZUNvbnRleHRGYWN0b3J5IGFzIMm1bn0gZnJvbSAnLi9zcmMvaW50ZXJuYWwvc3RhdGUtY29udGV4dC1mYWN0b3J5JztcbmV4cG9ydCB7U3RhdGVGYWN0b3J5IGFzIMm1a30gZnJvbSAnLi9zcmMvaW50ZXJuYWwvc3RhdGUtZmFjdG9yeSc7XG5leHBvcnQge0ludGVybmFsU3RhdGVPcGVyYXRpb25zIGFzIMm1b30gZnJvbSAnLi9zcmMvaW50ZXJuYWwvc3RhdGUtb3BlcmF0aW9ucyc7XG5leHBvcnQge05neHNGZWF0dXJlTW9kdWxlIGFzIMm1en0gZnJvbSAnLi9zcmMvbW9kdWxlcy9uZ3hzLWZlYXR1cmUubW9kdWxlJztcbmV4cG9ydCB7Tmd4c1Jvb3RNb2R1bGUgYXMgybVqfSBmcm9tICcuL3NyYy9tb2R1bGVzL25neHMtcm9vdC5tb2R1bGUnO1xuZXhwb3J0IHtQbHVnaW5NYW5hZ2VyIGFzIMm1cH0gZnJvbSAnLi9zcmMvcGx1Z2luLW1hbmFnZXInO1xuZXhwb3J0IHtUb2tlbk5hbWUgYXMgybViYX0gZnJvbSAnLi9zcmMvc3RhdGUtdG9rZW4vc3ltYm9scyc7XG5leHBvcnQge0ZFQVRVUkVfU1RBVEVfVE9LRU4gYXMgybVkLE5neHNDb25maWcgYXMgybVmLFJPT1RfU1RBVEVfVE9LRU4gYXMgybVjLFNFTEVDVE9SX01FVEFfS0VZIGFzIMm1ZX0gZnJvbSAnLi9zcmMvc3ltYm9scyc7XG5leHBvcnQge21lcmdlRGVlcCBhcyDJtWd9IGZyb20gJy4vc3JjL3V0aWxzL3V0aWxzJzsiXX0=
|
|
@@ -2,15 +2,15 @@
|
|
|
2
2
|
* @fileoverview added by tsickle
|
|
3
3
|
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
4
|
*/
|
|
5
|
-
import {
|
|
5
|
+
import { Injectable } from '@angular/core';
|
|
6
6
|
import { EMPTY, forkJoin, of, Subject, throwError } from 'rxjs';
|
|
7
7
|
import { exhaustMap, filter, shareReplay, take } from 'rxjs/operators';
|
|
8
8
|
import { compose } from '../utils/compose';
|
|
9
|
+
import { InternalErrorReporter, ngxsErrorHandler } from './error-handler';
|
|
9
10
|
import { InternalActions } from '../actions-stream';
|
|
10
11
|
import { StateStream } from './state-stream';
|
|
11
12
|
import { PluginManager } from '../plugin-manager';
|
|
12
13
|
import { InternalNgxsExecutionStrategy } from '../execution/internal-ngxs-execution-strategy';
|
|
13
|
-
import { leaveNgxs } from '../operators/leave-ngxs';
|
|
14
14
|
import { getActionTypeFromInstance } from '../utils/utils';
|
|
15
15
|
/**
|
|
16
16
|
* Internal Action result stream that is emitted when an action is completed.
|
|
@@ -25,20 +25,20 @@ InternalDispatchedActionResults.decorators = [
|
|
|
25
25
|
];
|
|
26
26
|
export class InternalDispatcher {
|
|
27
27
|
/**
|
|
28
|
-
* @param {?} _injector
|
|
29
28
|
* @param {?} _actions
|
|
30
29
|
* @param {?} _actionResults
|
|
31
30
|
* @param {?} _pluginManager
|
|
32
31
|
* @param {?} _stateStream
|
|
33
32
|
* @param {?} _ngxsExecutionStrategy
|
|
33
|
+
* @param {?} _internalErrorReporter
|
|
34
34
|
*/
|
|
35
|
-
constructor(
|
|
36
|
-
this._injector = _injector;
|
|
35
|
+
constructor(_actions, _actionResults, _pluginManager, _stateStream, _ngxsExecutionStrategy, _internalErrorReporter) {
|
|
37
36
|
this._actions = _actions;
|
|
38
37
|
this._actionResults = _actionResults;
|
|
39
38
|
this._pluginManager = _pluginManager;
|
|
40
39
|
this._stateStream = _stateStream;
|
|
41
40
|
this._ngxsExecutionStrategy = _ngxsExecutionStrategy;
|
|
41
|
+
this._internalErrorReporter = _internalErrorReporter;
|
|
42
42
|
}
|
|
43
43
|
/**
|
|
44
44
|
* Dispatches event(s).
|
|
@@ -51,24 +51,7 @@ export class InternalDispatcher {
|
|
|
51
51
|
* @return {?}
|
|
52
52
|
*/
|
|
53
53
|
() => this.dispatchByEvents(actionOrActions)));
|
|
54
|
-
result.
|
|
55
|
-
error: (/**
|
|
56
|
-
* @param {?} error
|
|
57
|
-
* @return {?}
|
|
58
|
-
*/
|
|
59
|
-
error => this._ngxsExecutionStrategy.leave((/**
|
|
60
|
-
* @return {?}
|
|
61
|
-
*/
|
|
62
|
-
() => {
|
|
63
|
-
try {
|
|
64
|
-
// Retrieve lazily to avoid cyclic dependency exception
|
|
65
|
-
this._errorHandler = this._errorHandler || this._injector.get(ErrorHandler);
|
|
66
|
-
this._errorHandler.handleError(error);
|
|
67
|
-
}
|
|
68
|
-
catch (_a) { }
|
|
69
|
-
})))
|
|
70
|
-
});
|
|
71
|
-
return result.pipe(leaveNgxs(this._ngxsExecutionStrategy));
|
|
54
|
+
return result.pipe(ngxsErrorHandler(this._internalErrorReporter, this._ngxsExecutionStrategy));
|
|
72
55
|
}
|
|
73
56
|
/**
|
|
74
57
|
* @private
|
|
@@ -172,24 +155,14 @@ InternalDispatcher.decorators = [
|
|
|
172
155
|
];
|
|
173
156
|
/** @nocollapse */
|
|
174
157
|
InternalDispatcher.ctorParameters = () => [
|
|
175
|
-
{ type: Injector },
|
|
176
158
|
{ type: InternalActions },
|
|
177
159
|
{ type: InternalDispatchedActionResults },
|
|
178
160
|
{ type: PluginManager },
|
|
179
161
|
{ type: StateStream },
|
|
180
|
-
{ type: InternalNgxsExecutionStrategy }
|
|
162
|
+
{ type: InternalNgxsExecutionStrategy },
|
|
163
|
+
{ type: InternalErrorReporter }
|
|
181
164
|
];
|
|
182
165
|
if (false) {
|
|
183
|
-
/**
|
|
184
|
-
* @type {?}
|
|
185
|
-
* @private
|
|
186
|
-
*/
|
|
187
|
-
InternalDispatcher.prototype._errorHandler;
|
|
188
|
-
/**
|
|
189
|
-
* @type {?}
|
|
190
|
-
* @private
|
|
191
|
-
*/
|
|
192
|
-
InternalDispatcher.prototype._injector;
|
|
193
166
|
/**
|
|
194
167
|
* @type {?}
|
|
195
168
|
* @private
|
|
@@ -215,5 +188,10 @@ if (false) {
|
|
|
215
188
|
* @private
|
|
216
189
|
*/
|
|
217
190
|
InternalDispatcher.prototype._ngxsExecutionStrategy;
|
|
191
|
+
/**
|
|
192
|
+
* @type {?}
|
|
193
|
+
* @private
|
|
194
|
+
*/
|
|
195
|
+
InternalDispatcher.prototype._internalErrorReporter;
|
|
218
196
|
}
|
|
219
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzcGF0Y2hlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3hzL3N0b3JlLyIsInNvdXJjZXMiOlsic3JjL2ludGVybmFsL2Rpc3BhdGNoZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBYyxFQUFFLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM1RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdkUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzNDLE9BQU8sRUFBK0IsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUM5RixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7QUFTM0QsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLE9BQXNCOzs7WUFEMUUsVUFBVTs7QUFJWCxNQUFNLE9BQU8sa0JBQWtCOzs7Ozs7Ozs7SUFHN0IsWUFDVSxTQUFtQixFQUNuQixRQUF5QixFQUN6QixjQUErQyxFQUMvQyxjQUE2QixFQUM3QixZQUF5QixFQUN6QixzQkFBcUQ7UUFMckQsY0FBUyxHQUFULFNBQVMsQ0FBVTtRQUNuQixhQUFRLEdBQVIsUUFBUSxDQUFpQjtRQUN6QixtQkFBYyxHQUFkLGNBQWMsQ0FBaUM7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Y2VzQ29udGVudCI6WyJpbXBvcnQgeyBFcnJvckhhbmRsZXIsIEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFTVBUWSwgZm9ya0pvaW4sIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0LCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBleGhhdXN0TWFwLCBmaWx0ZXIsIHNoYXJlUmVwbGF5LCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBjb21wb3NlIH0gZnJvbSAnLi4vdXRpbHMvY29tcG9zZSc7XG5pbXBvcnQgeyBBY3Rpb25Db250ZXh0LCBBY3Rpb25TdGF0dXMsIEludGVybmFsQWN0aW9ucyB9IGZyb20gJy4uL2FjdGlvbnMtc3RyZWFtJztcbmltcG9ydCB7IFN0YXRlU3RyZWFtIH0gZnJvbSAnLi9zdGF0ZS1zdHJlYW0nO1xuaW1wb3J0IHsgUGx1Z2luTWFuYWdlciB9IGZyb20gJy4uL3BsdWdpbi1tYW5hZ2VyJztcbmltcG9ydCB7IEludGVybmFsTmd4c0V4ZWN1dGlvblN0cmF0ZWd5IH0gZnJvbSAnLi4vZXhlY3V0aW9uL2ludGVybmFsLW5neHMtZXhlY3V0aW9uLXN0cmF0ZWd5JztcbmltcG9ydCB7IGxlYXZlTmd4cyB9IGZyb20gJy4uL29wZXJhdG9ycy9sZWF2ZS1uZ3hzJztcbmltcG9ydCB7IGdldEFjdGlvblR5cGVGcm9tSW5zdGFuY2UgfSBmcm9tICcuLi91dGlscy91dGlscyc7XG5cbi8qKlxuICogSW50ZXJuYWwgQWN0aW9uIHJlc3VsdCBzdHJlYW0gdGhhdCBpcyBlbWl0dGVkIHdoZW4gYW4gYWN0aW9uIGlzIGNvbXBsZXRlZC5cbiAqIFRoaXMgaXMgdXNlZCBhcyBhIG1ldGhvZCBvZiByZXR1cm5pbmcgdGhlIGFjdGlvbiByZXN1bHQgdG8gdGhlIGRpc3BhdGNoZXJcbiAqIGZvciB0aGUgb2JzZXJ2YWJsZSByZXR1cm5lZCBieSB0aGUgZGlzcGF0Y2goLi4uKSBjYWxsLlxuICogVGhlIGRpc3BhdGNoZXIgdGhlbiBhc3luY2hyb25vdXNseSBwdXNoZXMgdGhlIHJlc3VsdCBmcm9tIHRoaXMgc3RyZWFtIG9udG8gdGhlIG1haW4gYWN0aW9uIHN0cmVhbSBhcyBhIHJlc3VsdC5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEludGVybmFsRGlzcGF0Y2hlZEFjdGlvblJlc3VsdHMgZXh0ZW5kcyBTdWJqZWN0PEFjdGlvbkNvbnRleHQ+IHt9XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBJbnRlcm5hbERpc3BhdGNoZXIge1xuICBwcml2YXRlIF9lcnJvckhhbmRsZXI6IEVycm9ySGFuZGxlcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSBfYWN0aW9uczogSW50ZXJuYWxBY3Rpb25zLFxuICAgIHByaXZhdGUgX2FjdGlvblJlc3VsdHM6IEludGVybmFsRGlzcGF0Y2hlZEFjdGlvblJlc3VsdHMsXG4gICAgcHJpdmF0ZSBfcGx1Z2luTWFuYWdlcjogUGx1Z2luTWFuYWdlcixcbiAgICBwcml2YXRlIF9zdGF0ZVN0cmVhbTogU3RhdGVTdHJlYW0sXG4gICAgcHJpdmF0ZSBfbmd4c0V4ZWN1dGlvblN0cmF0ZWd5OiBJbnRlcm5hbE5neHNFeGVjdXRpb25TdHJhdGVneVxuICApIHt9XG5cbiAgLyoqXG4gICAqIERpc3BhdGNoZXMgZXZlbnQocykuXG4gICAqL1xuICBkaXNwYXRjaChhY3Rpb25PckFjdGlvbnM6IGFueSB8IGFueVtdKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLl9uZ3hzRXhlY3V0aW9uU3RyYXRlZ3kuZW50ZXIoKCkgPT5cbiAgICAgIHRoaXMuZGlzcGF0Y2hCeUV2ZW50cyhhY3Rpb25PckFjdGlvbnMpXG4gICAgKTtcblxuICAgIHJlc3VsdC5zdWJzY3JpYmUoe1xuICAgICAgZXJyb3I6IGVycm9yID0+XG4gICAgICAgIHRoaXMuX25neHNFeGVjdXRpb25TdHJhdGVneS5sZWF2ZSgoKSA9PiB7XG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIC8vIFJldHJpZXZlIGxhemlseSB0byBhdm9pZCBjeWNsaWMgZGVwZW5kZW5jeSBleGNlcHRpb25cbiAgICAgICAgICAgIHRoaXMuX2Vycm9ySGFuZGxlciA9IHRoaXMuX2Vycm9ySGFuZGxlciB8fCB0aGlzLl9pbmplY3Rvci5nZXQoRXJyb3JIYW5kbGVyKTtcbiAgICAgICAgICAgIHRoaXMuX2Vycm9ySGFuZGxlci5oYW5kbGVFcnJvcihlcnJvcik7XG4gICAgICAgICAgfSBjYXRjaCB7fVxuICAgICAgICB9KVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHJlc3VsdC5waXBlKGxlYXZlTmd4cyh0aGlzLl9uZ3hzRXhlY3V0aW9uU3RyYXRlZ3kpKTtcbiAgfVxuXG4gIHByaXZhdGUgZGlzcGF0Y2hCeUV2ZW50cyhhY3Rpb25PckFjdGlvbnM6IGFueSB8IGFueVtdKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShhY3Rpb25PckFjdGlvbnMpKSB7XG4gICAgICBpZiAoYWN0aW9uT3JBY3Rpb25zLmxlbmd0aCA9PT0gMCkgcmV0dXJuIG9mKHRoaXMuX3N0YXRlU3RyZWFtLmdldFZhbHVlKCkpO1xuICAgICAgcmV0dXJuIGZvcmtKb2luKGFjdGlvbk9yQWN0aW9ucy5tYXAoYWN0aW9uID0+IHRoaXMuZGlzcGF0Y2hTaW5nbGUoYWN0aW9uKSkpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5kaXNwYXRjaFNpbmdsZShhY3Rpb25PckFjdGlvbnMpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZGlzcGF0Y2hTaW5nbGUoYWN0aW9uOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGlmICh0eXBlb2YgbmdEZXZNb2RlID09PSAndW5kZWZpbmVkJyB8fCBuZ0Rldk1vZGUpIHtcbiAgICAgIGNvbnN0IHR5cGU6IHN0cmluZyB8IHVuZGVmaW5lZCA9IGdldEFjdGlvblR5cGVGcm9tSW5zdGFuY2UoYWN0aW9uKTtcbiAgICAgIGlmICghdHlwZSkge1xuICAgICAgICBjb25zdCBlcnJvciA9IG5ldyBFcnJvcihcbiAgICAgICAgICBgVGhpcyBhY3Rpb24gZG9lc24ndCBoYXZlIGEgdHlwZSBwcm9wZXJ0eTogJHthY3Rpb24uY29uc3RydWN0b3IubmFtZX1gXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiB0aHJvd0Vycm9yKGVycm9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBwcmV2U3RhdGUgPSB0aGlzLl9zdGF0ZVN0cmVhbS5nZXRWYWx1ZSgpO1xuICAgIGNvbnN0IHBsdWdpbnMgPSB0aGlzLl9wbHVnaW5NYW5hZ2VyLnBsdWdpbnM7XG5cbiAgICByZXR1cm4gKGNvbXBvc2UoW1xuICAgICAgLi4ucGx1Z2lucyxcbiAgICAgIChuZXh0U3RhdGU6IGFueSwgbmV4dEFjdGlvbjogYW55KSA9PiB7XG4gICAgICAgIGlmIChuZXh0U3RhdGUgIT09IHByZXZTdGF0ZSkge1xuICAgICAgICAgIHRoaXMuX3N0YXRlU3RyZWFtLm5leHQobmV4dFN0YXRlKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBhY3Rpb25SZXN1bHQkID0gdGhpcy5nZXRBY3Rpb25SZXN1bHRTdHJlYW0obmV4dEFjdGlvbik7XG4gICAgICAgIGFjdGlvblJlc3VsdCQuc3Vic2NyaWJlKGN0eCA9PiB0aGlzLl9hY3Rpb25zLm5leHQoY3R4KSk7XG4gICAgICAgIHRoaXMuX2FjdGlvbnMubmV4dCh7IGFjdGlvbjogbmV4dEFjdGlvbiwgc3RhdHVzOiBBY3Rpb25TdGF0dXMuRGlzcGF0Y2hlZCB9KTtcbiAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlRGlzcGF0Y2hPYnNlcnZhYmxlKGFjdGlvblJlc3VsdCQpO1xuICAgICAgfVxuICAgIF0pKHByZXZTdGF0ZSwgYWN0aW9uKSBhcyBPYnNlcnZhYmxlPGFueT4pLnBpcGUoc2hhcmVSZXBsYXkoKSk7XG4gIH1cblxuICBwcml2YXRlIGdldEFjdGlvblJlc3VsdFN0cmVhbShhY3Rpb246IGFueSk6IE9ic2VydmFibGU8QWN0aW9uQ29udGV4dD4ge1xuICAgIHJldHVybiB0aGlzLl9hY3Rpb25SZXN1bHRzLnBpcGUoXG4gICAgICBmaWx0ZXIoXG4gICAgICAgIChjdHg6IEFjdGlvbkNvbnRleHQpID0+IGN0eC5hY3Rpb24gPT09IGFjdGlvbiAmJiBjdHguc3RhdHVzICE9PSBBY3Rpb25TdGF0dXMuRGlzcGF0Y2hlZFxuICAgICAgKSxcbiAgICAgIHRha2UoMSksXG4gICAgICBzaGFyZVJlcGxheSgpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlRGlzcGF0Y2hPYnNlcnZhYmxlKGFjdGlvblJlc3VsdCQ6IE9ic2VydmFibGU8QWN0aW9uQ29udGV4dD4pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiBhY3Rpb25SZXN1bHQkXG4gICAgICAucGlwZShcbiAgICAgICAgZXhoYXVzdE1hcCgoY3R4OiBBY3Rpb25Db250ZXh0KSA9PiB7XG4gICAgICAgICAgc3dpdGNoIChjdHguc3RhdHVzKSB7XG4gICAgICAgICAgICBjYXNlIEFjdGlvblN0YXR1cy5TdWNjZXNzZnVsOlxuICAgICAgICAgICAgICByZXR1cm4gb2YodGhpcy5fc3RhdGVTdHJlYW0uZ2V0VmFsdWUoKSk7XG4gICAgICAgICAgICBjYXNlIEFjdGlvblN0YXR1cy5FcnJvcmVkOlxuICAgICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihjdHguZXJyb3IpO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgcmV0dXJuIEVNUFRZO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC5waXBlKHNoYXJlUmVwbGF5KCkpO1xuICB9XG59XG4iXX0=
|
|
197
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzcGF0Y2hlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3hzL3N0b3JlLyIsInNvdXJjZXMiOlsic3JjL2ludGVybmFsL2Rpc3BhdGNoZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQWMsRUFBRSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXZFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxRSxPQUFPLEVBQStCLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDOUYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7QUFTM0QsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLE9BQXNCOzs7WUFEMUUsVUFBVTs7QUFJWCxNQUFNLE9BQU8sa0JBQWtCOzs7Ozs7Ozs7SUFDN0IsWUFDVSxRQUF5QixFQUN6QixjQUErQyxFQUMvQyxjQUE2QixFQUM3QixZQUF5QixFQUN6QixzQkFBcUQsRUFDckQsc0JBQTZDO1FBTDdDLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBQ3pCLG1CQUFjLEdBQWQsY0FBYyxDQUFpQztRQUMvQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZTtRQUM3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Q1AsV0FBVyxFQUFFLENBQ2QsQ0FBQztJQUNKLENBQUM7Ozs7OztJQUVPLHdCQUF3QixDQUFDLGFBQXdDO1FBQ3ZFLE9BQU8sYUFBYTthQUNqQixJQUFJLENBQ0gsVUFBVTs7OztRQUFDLENBQUMsR0FBa0IsRUFBRSxFQUFFO1lBQ2hDLFFBQVEsR0FBRyxDQUFDLE1BQU0sRUFBRTtnQkFDbEI7b0JBQ0UsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO2dCQUMxQztvQkFDRSxPQUFPLFVBQVUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQy9CO29CQUNFLE9BQU8sS0FBSyxDQUFDO2FBQ2hCO1FBQ0gsQ0FBQyxFQUFDLENBQ0g7YUFDQSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUN6QixDQUFDOzs7WUF0RkYsVUFBVTs7OztZQWYyQixlQUFlO1lBbUJ6QiwrQkFBK0I7WUFqQmxELGFBQWE7WUFEYixXQUFXO1lBRVgsNkJBQTZCO1lBSjdCLHFCQUFxQjs7Ozs7OztJQW1CMUIsc0NBQWlDOzs7OztJQUNqQyw0Q0FBdUQ7Ozs7O0lBQ3ZELDRDQUFxQzs7Ozs7SUFDckMsMENBQWlDOzs7OztJQUNqQyxvREFBNkQ7Ozs7O0lBQzdELG9EQUFxRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVNUFRZLCBmb3JrSm9pbiwgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3QsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGV4aGF1c3RNYXAsIGZpbHRlciwgc2hhcmVSZXBsYXksIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IGNvbXBvc2UgfSBmcm9tICcuLi91dGlscy9jb21wb3NlJztcbmltcG9ydCB7IEludGVybmFsRXJyb3JSZXBvcnRlciwgbmd4c0Vycm9ySGFuZGxlciB9IGZyb20gJy4vZXJyb3ItaGFuZGxlcic7XG5pbXBvcnQgeyBBY3Rpb25Db250ZXh0LCBBY3Rpb25TdGF0dXMsIEludGVybmFsQWN0aW9ucyB9IGZyb20gJy4uL2FjdGlvbnMtc3RyZWFtJztcbmltcG9ydCB7IFN0YXRlU3RyZWFtIH0gZnJvbSAnLi9zdGF0ZS1zdHJlYW0nO1xuaW1wb3J0IHsgUGx1Z2luTWFuYWdlciB9IGZyb20gJy4uL3BsdWdpbi1tYW5hZ2VyJztcbmltcG9ydCB7IEludGVybmFsTmd4c0V4ZWN1dGlvblN0cmF0ZWd5IH0gZnJvbSAnLi4vZXhlY3V0aW9uL2ludGVybmFsLW5neHMtZXhlY3V0aW9uLXN0cmF0ZWd5JztcbmltcG9ydCB7IGdldEFjdGlvblR5cGVGcm9tSW5zdGFuY2UgfSBmcm9tICcuLi91dGlscy91dGlscyc7XG5cbi8qKlxuICogSW50ZXJuYWwgQWN0aW9uIHJlc3VsdCBzdHJlYW0gdGhhdCBpcyBlbWl0dGVkIHdoZW4gYW4gYWN0aW9uIGlzIGNvbXBsZXRlZC5cbiAqIFRoaXMgaXMgdXNlZCBhcyBhIG1ldGhvZCBvZiByZXR1cm5pbmcgdGhlIGFjdGlvbiByZXN1bHQgdG8gdGhlIGRpc3BhdGNoZXJcbiAqIGZvciB0aGUgb2JzZXJ2YWJsZSByZXR1cm5lZCBieSB0aGUgZGlzcGF0Y2goLi4uKSBjYWxsLlxuICogVGhlIGRpc3BhdGNoZXIgdGhlbiBhc3luY2hyb25vdXNseSBwdXNoZXMgdGhlIHJlc3VsdCBmcm9tIHRoaXMgc3RyZWFtIG9udG8gdGhlIG1haW4gYWN0aW9uIHN0cmVhbSBhcyBhIHJlc3VsdC5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEludGVybmFsRGlzcGF0Y2hlZEFjdGlvblJlc3VsdHMgZXh0ZW5kcyBTdWJqZWN0PEFjdGlvbkNvbnRleHQ+IHt9XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBJbnRlcm5hbERpc3BhdGNoZXIge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9hY3Rpb25zOiBJbnRlcm5hbEFjdGlvbnMsXG4gICAgcHJpdmF0ZSBfYWN0aW9uUmVzdWx0czogSW50ZXJuYWxEaXNwYXRjaGVkQWN0aW9uUmVzdWx0cyxcbiAgICBwcml2YXRlIF9wbHVnaW5NYW5hZ2VyOiBQbHVnaW5NYW5hZ2VyLFxuICAgIHByaXZhdGUgX3N0YXRlU3RyZWFtOiBTdGF0ZVN0cmVhbSxcbiAgICBwcml2YXRlIF9uZ3hzRXhlY3V0aW9uU3RyYXRlZ3k6IEludGVybmFsTmd4c0V4ZWN1dGlvblN0cmF0ZWd5LFxuICAgIHByaXZhdGUgX2ludGVybmFsRXJyb3JSZXBvcnRlcjogSW50ZXJuYWxFcnJvclJlcG9ydGVyXG4gICkge31cblxuICAvKipcbiAgICogRGlzcGF0Y2hlcyBldmVudChzKS5cbiAgICovXG4gIGRpc3BhdGNoKGFjdGlvbk9yQWN0aW9uczogYW55IHwgYW55W10pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuX25neHNFeGVjdXRpb25TdHJhdGVneS5lbnRlcigoKSA9PlxuICAgICAgdGhpcy5kaXNwYXRjaEJ5RXZlbnRzKGFjdGlvbk9yQWN0aW9ucylcbiAgICApO1xuXG4gICAgcmV0dXJuIHJlc3VsdC5waXBlKFxuICAgICAgbmd4c0Vycm9ySGFuZGxlcih0aGlzLl9pbnRlcm5hbEVycm9yUmVwb3J0ZXIsIHRoaXMuX25neHNFeGVjdXRpb25TdHJhdGVneSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBkaXNwYXRjaEJ5RXZlbnRzKGFjdGlvbk9yQWN0aW9uczogYW55IHwgYW55W10pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGlmIChBcnJheS5pc0FycmF5KGFjdGlvbk9yQWN0aW9ucykpIHtcbiAgICAgIGlmIChhY3Rpb25PckFjdGlvbnMubGVuZ3RoID09PSAwKSByZXR1cm4gb2YodGhpcy5fc3RhdGVTdHJlYW0uZ2V0VmFsdWUoKSk7XG4gICAgICByZXR1cm4gZm9ya0pvaW4oYWN0aW9uT3JBY3Rpb25zLm1hcChhY3Rpb24gPT4gdGhpcy5kaXNwYXRjaFNpbmdsZShhY3Rpb24pKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLmRpc3BhdGNoU2luZ2xlKGFjdGlvbk9yQWN0aW9ucyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBkaXNwYXRjaFNpbmdsZShhY3Rpb246IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgaWYgKHR5cGVvZiBuZ0Rldk1vZGUgPT09ICd1bmRlZmluZWQnIHx8IG5nRGV2TW9kZSkge1xuICAgICAgY29uc3QgdHlwZTogc3RyaW5nIHwgdW5kZWZpbmVkID0gZ2V0QWN0aW9uVHlwZUZyb21JbnN0YW5jZShhY3Rpb24pO1xuICAgICAgaWYgKCF0eXBlKSB7XG4gICAgICAgIGNvbnN0IGVycm9yID0gbmV3IEVycm9yKFxuICAgICAgICAgIGBUaGlzIGFjdGlvbiBkb2Vzbid0IGhhdmUgYSB0eXBlIHByb3BlcnR5OiAke2FjdGlvbi5jb25zdHJ1Y3Rvci5uYW1lfWBcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoZXJyb3IpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IHByZXZTdGF0ZSA9IHRoaXMuX3N0YXRlU3RyZWFtLmdldFZhbHVlKCk7XG4gICAgY29uc3QgcGx1Z2lucyA9IHRoaXMuX3BsdWdpbk1hbmFnZXIucGx1Z2lucztcblxuICAgIHJldHVybiAoY29tcG9zZShbXG4gICAgICAuLi5wbHVnaW5zLFxuICAgICAgKG5leHRTdGF0ZTogYW55LCBuZXh0QWN0aW9uOiBhbnkpID0+IHtcbiAgICAgICAgaWYgKG5leHRTdGF0ZSAhPT0gcHJldlN0YXRlKSB7XG4gICAgICAgICAgdGhpcy5fc3RhdGVTdHJlYW0ubmV4dChuZXh0U3RhdGUpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGFjdGlvblJlc3VsdCQgPSB0aGlzLmdldEFjdGlvblJlc3VsdFN0cmVhbShuZXh0QWN0aW9uKTtcbiAgICAgICAgYWN0aW9uUmVzdWx0JC5zdWJzY3JpYmUoY3R4ID0+IHRoaXMuX2FjdGlvbnMubmV4dChjdHgpKTtcbiAgICAgICAgdGhpcy5fYWN0aW9ucy5uZXh0KHsgYWN0aW9uOiBuZXh0QWN0aW9uLCBzdGF0dXM6IEFjdGlvblN0YXR1cy5EaXNwYXRjaGVkIH0pO1xuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVEaXNwYXRjaE9ic2VydmFibGUoYWN0aW9uUmVzdWx0JCk7XG4gICAgICB9XG4gICAgXSkocHJldlN0YXRlLCBhY3Rpb24pIGFzIE9ic2VydmFibGU8YW55PikucGlwZShzaGFyZVJlcGxheSgpKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0QWN0aW9uUmVzdWx0U3RyZWFtKGFjdGlvbjogYW55KTogT2JzZXJ2YWJsZTxBY3Rpb25Db250ZXh0PiB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGlvblJlc3VsdHMucGlwZShcbiAgICAgIGZpbHRlcihcbiAgICAgICAgKGN0eDogQWN0aW9uQ29udGV4dCkgPT4gY3R4LmFjdGlvbiA9PT0gYWN0aW9uICYmIGN0eC5zdGF0dXMgIT09IEFjdGlvblN0YXR1cy5EaXNwYXRjaGVkXG4gICAgICApLFxuICAgICAgdGFrZSgxKSxcbiAgICAgIHNoYXJlUmVwbGF5KClcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVEaXNwYXRjaE9ic2VydmFibGUoYWN0aW9uUmVzdWx0JDogT2JzZXJ2YWJsZTxBY3Rpb25Db250ZXh0Pik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIGFjdGlvblJlc3VsdCRcbiAgICAgIC5waXBlKFxuICAgICAgICBleGhhdXN0TWFwKChjdHg6IEFjdGlvbkNvbnRleHQpID0+IHtcbiAgICAgICAgICBzd2l0Y2ggKGN0eC5zdGF0dXMpIHtcbiAgICAgICAgICAgIGNhc2UgQWN0aW9uU3RhdHVzLlN1Y2Nlc3NmdWw6XG4gICAgICAgICAgICAgIHJldHVybiBvZih0aGlzLl9zdGF0ZVN0cmVhbS5nZXRWYWx1ZSgpKTtcbiAgICAgICAgICAgIGNhc2UgQWN0aW9uU3RhdHVzLkVycm9yZWQ6XG4gICAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKGN0eC5lcnJvcik7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnBpcGUoc2hhcmVSZXBsYXkoKSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
import { ErrorHandler, Injectable, Injector } from '@angular/core';
|
|
6
|
+
import { Observable } from 'rxjs';
|
|
7
|
+
import { leaveNgxs } from '../operators/leave-ngxs';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
/**
|
|
10
|
+
* This operator is used for piping the observable result
|
|
11
|
+
* from the `dispatch()`. It has a "smart" error handling
|
|
12
|
+
* strategy that allows us to decide whether we propagate
|
|
13
|
+
* errors to Angular's `ErrorHandler` or enable users to
|
|
14
|
+
* handle them manually. We consider following cases:
|
|
15
|
+
* 1) `store.dispatch()` (no subscribe) -> call `handleError()`
|
|
16
|
+
* 2) `store.dispatch().subscribe()` (no error callback) -> call `handleError()`
|
|
17
|
+
* 3) `store.dispatch().subscribe({ error: ... })` -> don't call `handleError()`
|
|
18
|
+
* 4) `toPromise()` without `catch` -> do `handleError()`
|
|
19
|
+
* 5) `toPromise()` with `catch` -> don't `handleError()`
|
|
20
|
+
* @template T
|
|
21
|
+
* @param {?} internalErrorReporter
|
|
22
|
+
* @param {?} ngxsExecutionStrategy
|
|
23
|
+
* @return {?}
|
|
24
|
+
*/
|
|
25
|
+
export function ngxsErrorHandler(internalErrorReporter, ngxsExecutionStrategy) {
|
|
26
|
+
return (/**
|
|
27
|
+
* @param {?} source
|
|
28
|
+
* @return {?}
|
|
29
|
+
*/
|
|
30
|
+
(source) => {
|
|
31
|
+
/** @type {?} */
|
|
32
|
+
let subscribed = false;
|
|
33
|
+
source.subscribe({
|
|
34
|
+
error: (/**
|
|
35
|
+
* @param {?} error
|
|
36
|
+
* @return {?}
|
|
37
|
+
*/
|
|
38
|
+
error => {
|
|
39
|
+
// Do not trigger change detection for a microtask. This depends on the execution
|
|
40
|
+
// strategy being used, but the default `DispatchOutsideZoneNgxsExecutionStrategy`
|
|
41
|
+
// leaves the Angular zone.
|
|
42
|
+
ngxsExecutionStrategy.enter((/**
|
|
43
|
+
* @return {?}
|
|
44
|
+
*/
|
|
45
|
+
() => Promise.resolve().then((/**
|
|
46
|
+
* @return {?}
|
|
47
|
+
*/
|
|
48
|
+
() => {
|
|
49
|
+
if (!subscribed) {
|
|
50
|
+
ngxsExecutionStrategy.leave((/**
|
|
51
|
+
* @return {?}
|
|
52
|
+
*/
|
|
53
|
+
() => internalErrorReporter.reportErrorSafely(error)));
|
|
54
|
+
}
|
|
55
|
+
}))));
|
|
56
|
+
})
|
|
57
|
+
});
|
|
58
|
+
return new Observable((/**
|
|
59
|
+
* @param {?} subscriber
|
|
60
|
+
* @return {?}
|
|
61
|
+
*/
|
|
62
|
+
subscriber => {
|
|
63
|
+
subscribed = true;
|
|
64
|
+
return source.pipe(leaveNgxs(ngxsExecutionStrategy)).subscribe(subscriber);
|
|
65
|
+
}));
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
export class InternalErrorReporter {
|
|
69
|
+
/**
|
|
70
|
+
* @param {?} _injector
|
|
71
|
+
*/
|
|
72
|
+
constructor(_injector) {
|
|
73
|
+
this._injector = _injector;
|
|
74
|
+
/**
|
|
75
|
+
* Will be set lazily to be backward compatible.
|
|
76
|
+
*/
|
|
77
|
+
this._errorHandler = (/** @type {?} */ (null));
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* @param {?} error
|
|
81
|
+
* @return {?}
|
|
82
|
+
*/
|
|
83
|
+
reportErrorSafely(error) {
|
|
84
|
+
if (this._errorHandler === null) {
|
|
85
|
+
this._errorHandler = this._injector.get(ErrorHandler);
|
|
86
|
+
}
|
|
87
|
+
// The `try-catch` is used to avoid handling the error twice. Suppose we call
|
|
88
|
+
// `handleError` which re-throws the error internally. The re-thrown error will
|
|
89
|
+
// be caught by zone.js which will then get to the `zone.onError.emit()` and the
|
|
90
|
+
// `onError` subscriber will call `handleError` again.
|
|
91
|
+
try {
|
|
92
|
+
this._errorHandler.handleError(error);
|
|
93
|
+
}
|
|
94
|
+
catch (_a) { }
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
InternalErrorReporter.decorators = [
|
|
98
|
+
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
99
|
+
];
|
|
100
|
+
/** @nocollapse */
|
|
101
|
+
InternalErrorReporter.ctorParameters = () => [
|
|
102
|
+
{ type: Injector }
|
|
103
|
+
];
|
|
104
|
+
/** @nocollapse */ InternalErrorReporter.ngInjectableDef = i0.defineInjectable({ factory: function InternalErrorReporter_Factory() { return new InternalErrorReporter(i0.inject(i0.INJECTOR)); }, token: InternalErrorReporter, providedIn: "root" });
|
|
105
|
+
if (false) {
|
|
106
|
+
/**
|
|
107
|
+
* Will be set lazily to be backward compatible.
|
|
108
|
+
* @type {?}
|
|
109
|
+
* @private
|
|
110
|
+
*/
|
|
111
|
+
InternalErrorReporter.prototype._errorHandler;
|
|
112
|
+
/**
|
|
113
|
+
* @type {?}
|
|
114
|
+
* @private
|
|
115
|
+
*/
|
|
116
|
+
InternalErrorReporter.prototype._injector;
|
|
117
|
+
}
|
|
118
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3hzL3N0b3JlLyIsInNvdXJjZXMiOlsic3JjL2ludGVybmFsL2Vycm9yLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWxDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBZXBELE1BQU0sVUFBVSxnQkFBZ0IsQ0FDOUIscUJBQTRDLEVBQzVDLHFCQUE0QztJQUU1Qzs7OztJQUFPLENBQUMsTUFBcUIsRUFBRSxFQUFFOztZQUMzQixVQUFVLEdBQUcsS0FBSztRQUV0QixNQUFNLENBQUMsU0FBUyxDQUFDO1lBQ2YsS0FBSzs7OztZQUFFLEtBQUssQ0FBQyxFQUFFO2dCQUNiLGlGQUFpRjtnQkFDakYsa0ZBQWtGO2dCQUNsRiwyQkFBMkI7Z0JBQzNCLHFCQUFxQixDQUFDLEtBQUs7OztnQkFBQyxHQUFHLEVBQUUsQ0FDL0IsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUk7OztnQkFBQyxHQUFHLEVBQUU7b0JBQzFCLElBQUksQ0FBQyxVQUFVLEVBQUU7d0JBQ2YscUJBQXFCLENBQUMsS0FBSzs7O3dCQUFDLEdBQUcsRUFBRSxDQUMvQixxQkFBcUIsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsRUFDL0MsQ0FBQztxQkFDSDtnQkFDSCxDQUFDLEVBQUMsRUFDSCxDQUFDO1lBQ0osQ0FBQyxDQUFBO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFJLFVBQVU7Ozs7UUFBQyxVQUFVLENBQUMsRUFBRTtZQUNqQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1lBQ2xCLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM3RSxDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUMsRUFBQztBQUNKLENBQUM7QUFHRCxNQUFNLE9BQU8scUJBQXFCOzs7O0lBSWhDLFlBQW9CLFNBQW1CO1FBQW5CLGNBQVMsR0FBVCxTQUFTLENBQVU7Ozs7UUFGL0Isa0JBQWEsR0FBaUIsbUJBQUEsSUFBSSxFQUFDLENBQUM7SUFFRixDQUFDOzs7OztJQUUzQyxpQkFBaUIsQ0FBQyxLQUFVO1FBQzFCLElBQUksSUFBSSxDQUFDLGFBQWEsS0FBSyxJQUFJLEVBQUU7WUFDL0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUN2RDtRQUNELDZFQUE2RTtRQUM3RSwrRUFBK0U7UUFDL0UsZ0ZBQWdGO1FBQ2hGLHNEQUFzRDtRQUN0RCxJQUFJO1lBQ0YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDdkM7UUFBQyxXQUFNLEdBQUU7SUFDWixDQUFDOzs7WUFsQkYsVUFBVSxTQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7OztZQWpEQyxRQUFROzs7Ozs7Ozs7SUFvRHpDLDhDQUE0Qzs7Ozs7SUFFaEMsMENBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXJyb3JIYW5kbGVyLCBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBsZWF2ZU5neHMgfSBmcm9tICcuLi9vcGVyYXRvcnMvbGVhdmUtbmd4cyc7XG5pbXBvcnQgeyBOZ3hzRXhlY3V0aW9uU3RyYXRlZ3kgfSBmcm9tICcuLi9leGVjdXRpb24vc3ltYm9scyc7XG5cbi8qKlxuICogVGhpcyBvcGVyYXRvciBpcyB1c2VkIGZvciBwaXBpbmcgdGhlIG9ic2VydmFibGUgcmVzdWx0XG4gKiBmcm9tIHRoZSBgZGlzcGF0Y2goKWAuIEl0IGhhcyBhIFwic21hcnRcIiBlcnJvciBoYW5kbGluZ1xuICogc3RyYXRlZ3kgdGhhdCBhbGxvd3MgdXMgdG8gZGVjaWRlIHdoZXRoZXIgd2UgcHJvcGFnYXRlXG4gKiBlcnJvcnMgdG8gQW5ndWxhcidzIGBFcnJvckhhbmRsZXJgIG9yIGVuYWJsZSB1c2VycyB0b1xuICogaGFuZGxlIHRoZW0gbWFudWFsbHkuIFdlIGNvbnNpZGVyIGZvbGxvd2luZyBjYXNlczpcbiAqIDEpIGBzdG9yZS5kaXNwYXRjaCgpYCAobm8gc3Vic2NyaWJlKSAtPiBjYWxsIGBoYW5kbGVFcnJvcigpYFxuICogMikgYHN0b3JlLmRpc3BhdGNoKCkuc3Vic2NyaWJlKClgIChubyBlcnJvciBjYWxsYmFjaykgLT4gY2FsbCBgaGFuZGxlRXJyb3IoKWBcbiAqIDMpIGBzdG9yZS5kaXNwYXRjaCgpLnN1YnNjcmliZSh7IGVycm9yOiAuLi4gfSlgIC0+IGRvbid0IGNhbGwgYGhhbmRsZUVycm9yKClgXG4gKiA0KSBgdG9Qcm9taXNlKClgIHdpdGhvdXQgYGNhdGNoYCAtPiBkbyBgaGFuZGxlRXJyb3IoKWBcbiAqIDUpIGB0b1Byb21pc2UoKWAgd2l0aCBgY2F0Y2hgIC0+IGRvbid0IGBoYW5kbGVFcnJvcigpYFxuICovXG5leHBvcnQgZnVuY3Rpb24gbmd4c0Vycm9ySGFuZGxlcjxUPihcbiAgaW50ZXJuYWxFcnJvclJlcG9ydGVyOiBJbnRlcm5hbEVycm9yUmVwb3J0ZXIsXG4gIG5neHNFeGVjdXRpb25TdHJhdGVneTogTmd4c0V4ZWN1dGlvblN0cmF0ZWd5XG4pIHtcbiAgcmV0dXJuIChzb3VyY2U6IE9ic2VydmFibGU8VD4pID0+IHtcbiAgICBsZXQgc3Vic2NyaWJlZCA9IGZhbHNlO1xuXG4gICAgc291cmNlLnN1YnNjcmliZSh7XG4gICAgICBlcnJvcjogZXJyb3IgPT4ge1xuICAgICAgICAvLyBEbyBub3QgdHJpZ2dlciBjaGFuZ2UgZGV0ZWN0aW9uIGZvciBhIG1pY3JvdGFzay4gVGhpcyBkZXBlbmRzIG9uIHRoZSBleGVjdXRpb25cbiAgICAgICAgLy8gc3RyYXRlZ3kgYmVpbmcgdXNlZCwgYnV0IHRoZSBkZWZhdWx0IGBEaXNwYXRjaE91dHNpZGVab25lTmd4c0V4ZWN1dGlvblN0cmF0ZWd5YFxuICAgICAgICAvLyBsZWF2ZXMgdGhlIEFuZ3VsYXIgem9uZS5cbiAgICAgICAgbmd4c0V4ZWN1dGlvblN0cmF0ZWd5LmVudGVyKCgpID0+XG4gICAgICAgICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXN1YnNjcmliZWQpIHtcbiAgICAgICAgICAgICAgbmd4c0V4ZWN1dGlvblN0cmF0ZWd5LmxlYXZlKCgpID0+XG4gICAgICAgICAgICAgICAgaW50ZXJuYWxFcnJvclJlcG9ydGVyLnJlcG9ydEVycm9yU2FmZWx5KGVycm9yKVxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoc3Vic2NyaWJlciA9PiB7XG4gICAgICBzdWJzY3JpYmVkID0gdHJ1ZTtcbiAgICAgIHJldHVybiBzb3VyY2UucGlwZShsZWF2ZU5neHMobmd4c0V4ZWN1dGlvblN0cmF0ZWd5KSkuc3Vic2NyaWJlKHN1YnNjcmliZXIpO1xuICAgIH0pO1xuICB9O1xufVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEludGVybmFsRXJyb3JSZXBvcnRlciB7XG4gIC8qKiBXaWxsIGJlIHNldCBsYXppbHkgdG8gYmUgYmFja3dhcmQgY29tcGF0aWJsZS4gKi9cbiAgcHJpdmF0ZSBfZXJyb3JIYW5kbGVyOiBFcnJvckhhbmRsZXIgPSBudWxsITtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9pbmplY3RvcjogSW5qZWN0b3IpIHt9XG5cbiAgcmVwb3J0RXJyb3JTYWZlbHkoZXJyb3I6IGFueSk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9lcnJvckhhbmRsZXIgPT09IG51bGwpIHtcbiAgICAgIHRoaXMuX2Vycm9ySGFuZGxlciA9IHRoaXMuX2luamVjdG9yLmdldChFcnJvckhhbmRsZXIpO1xuICAgIH1cbiAgICAvLyBUaGUgYHRyeS1jYXRjaGAgaXMgdXNlZCB0byBhdm9pZCBoYW5kbGluZyB0aGUgZXJyb3IgdHdpY2UuIFN1cHBvc2Ugd2UgY2FsbFxuICAgIC8vIGBoYW5kbGVFcnJvcmAgd2hpY2ggcmUtdGhyb3dzIHRoZSBlcnJvciBpbnRlcm5hbGx5LiBUaGUgcmUtdGhyb3duIGVycm9yIHdpbGxcbiAgICAvLyBiZSBjYXVnaHQgYnkgem9uZS5qcyB3aGljaCB3aWxsIHRoZW4gZ2V0IHRvIHRoZSBgem9uZS5vbkVycm9yLmVtaXQoKWAgYW5kIHRoZVxuICAgIC8vIGBvbkVycm9yYCBzdWJzY3JpYmVyIHdpbGwgY2FsbCBgaGFuZGxlRXJyb3JgIGFnYWluLlxuICAgIHRyeSB7XG4gICAgICB0aGlzLl9lcnJvckhhbmRsZXIuaGFuZGxlRXJyb3IoZXJyb3IpO1xuICAgIH0gY2F0Y2gge31cbiAgfVxufVxuIl19
|
|
@@ -4,22 +4,25 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { Injectable } from '@angular/core';
|
|
6
6
|
import { NgxsBootstrapper } from '@ngxs/store/internals';
|
|
7
|
-
import { Subject } from 'rxjs';
|
|
8
|
-
import { filter, mergeMap, pairwise, startWith, takeUntil, tap } from 'rxjs/operators';
|
|
7
|
+
import { EMPTY, Subject } from 'rxjs';
|
|
8
|
+
import { catchError, filter, mergeMap, pairwise, startWith, takeUntil, tap } from 'rxjs/operators';
|
|
9
9
|
import { Store } from '../store';
|
|
10
10
|
import { getValue } from '../utils/utils';
|
|
11
|
+
import { InternalErrorReporter } from './error-handler';
|
|
11
12
|
import { StateContextFactory } from './state-context-factory';
|
|
12
13
|
import { InternalStateOperations } from './state-operations';
|
|
13
14
|
import { NgxsSimpleChange } from '../symbols';
|
|
14
15
|
export class LifecycleStateManager {
|
|
15
16
|
/**
|
|
16
17
|
* @param {?} _store
|
|
18
|
+
* @param {?} _internalErrorReporter
|
|
17
19
|
* @param {?} _internalStateOperations
|
|
18
20
|
* @param {?} _stateContextFactory
|
|
19
21
|
* @param {?} _bootstrapper
|
|
20
22
|
*/
|
|
21
|
-
constructor(_store, _internalStateOperations, _stateContextFactory, _bootstrapper) {
|
|
23
|
+
constructor(_store, _internalErrorReporter, _internalStateOperations, _stateContextFactory, _bootstrapper) {
|
|
22
24
|
this._store = _store;
|
|
25
|
+
this._internalErrorReporter = _internalErrorReporter;
|
|
23
26
|
this._internalStateOperations = _internalStateOperations;
|
|
24
27
|
this._stateContextFactory = _stateContextFactory;
|
|
25
28
|
this._bootstrapper = _bootstrapper;
|
|
@@ -47,26 +50,36 @@ export class LifecycleStateManager {
|
|
|
47
50
|
() => !!results)), tap((/**
|
|
48
51
|
* @return {?}
|
|
49
52
|
*/
|
|
50
|
-
() => this.
|
|
53
|
+
() => this._invokeInitOnStates((/** @type {?} */ (results)).states))), mergeMap((/**
|
|
51
54
|
* @return {?}
|
|
52
55
|
*/
|
|
53
56
|
() => this._bootstrapper.appBootstrapped$)), filter((/**
|
|
54
57
|
* @param {?} appBootstrapped
|
|
55
58
|
* @return {?}
|
|
56
59
|
*/
|
|
57
|
-
appBootstrapped => !!appBootstrapped)),
|
|
60
|
+
appBootstrapped => !!appBootstrapped)), catchError((/**
|
|
61
|
+
* @param {?} error
|
|
62
|
+
* @return {?}
|
|
63
|
+
*/
|
|
64
|
+
error => {
|
|
65
|
+
// The `SafeSubscriber` (which is used by most RxJS operators) re-throws
|
|
66
|
+
// errors asynchronously (`setTimeout(() => { throw error })`). This might
|
|
67
|
+
// break existing user's code or unit tests. We catch the error manually to
|
|
68
|
+
// be backward compatible with the old behavior.
|
|
69
|
+
this._internalErrorReporter.reportErrorSafely(error);
|
|
70
|
+
return EMPTY;
|
|
71
|
+
})), takeUntil(this._destroy$))
|
|
58
72
|
.subscribe((/**
|
|
59
73
|
* @return {?}
|
|
60
74
|
*/
|
|
61
|
-
() => this.
|
|
75
|
+
() => this._invokeBootstrapOnStates((/** @type {?} */ (results)).states)));
|
|
62
76
|
}
|
|
63
77
|
/**
|
|
64
|
-
* Invoke the init function on the states.
|
|
65
78
|
* @private
|
|
66
79
|
* @param {?} mappedStores
|
|
67
80
|
* @return {?}
|
|
68
81
|
*/
|
|
69
|
-
|
|
82
|
+
_invokeInitOnStates(mappedStores) {
|
|
70
83
|
for (const mappedStore of mappedStores) {
|
|
71
84
|
/** @type {?} */
|
|
72
85
|
const instance = mappedStore.instance;
|
|
@@ -95,12 +108,11 @@ export class LifecycleStateManager {
|
|
|
95
108
|
}
|
|
96
109
|
}
|
|
97
110
|
/**
|
|
98
|
-
* Invoke the bootstrap function on the states.
|
|
99
111
|
* @private
|
|
100
112
|
* @param {?} mappedStores
|
|
101
113
|
* @return {?}
|
|
102
114
|
*/
|
|
103
|
-
|
|
115
|
+
_invokeBootstrapOnStates(mappedStores) {
|
|
104
116
|
for (const mappedStore of mappedStores) {
|
|
105
117
|
/** @type {?} */
|
|
106
118
|
const instance = mappedStore.instance;
|
|
@@ -124,6 +136,7 @@ LifecycleStateManager.decorators = [
|
|
|
124
136
|
/** @nocollapse */
|
|
125
137
|
LifecycleStateManager.ctorParameters = () => [
|
|
126
138
|
{ type: Store },
|
|
139
|
+
{ type: InternalErrorReporter },
|
|
127
140
|
{ type: InternalStateOperations },
|
|
128
141
|
{ type: StateContextFactory },
|
|
129
142
|
{ type: NgxsBootstrapper }
|
|
@@ -139,6 +152,11 @@ if (false) {
|
|
|
139
152
|
* @private
|
|
140
153
|
*/
|
|
141
154
|
LifecycleStateManager.prototype._store;
|
|
155
|
+
/**
|
|
156
|
+
* @type {?}
|
|
157
|
+
* @private
|
|
158
|
+
*/
|
|
159
|
+
LifecycleStateManager.prototype._internalErrorReporter;
|
|
142
160
|
/**
|
|
143
161
|
* @type {?}
|
|
144
162
|
* @private
|
|
@@ -155,4 +173,4 @@ if (false) {
|
|
|
155
173
|
*/
|
|
156
174
|
LifecycleStateManager.prototype._bootstrapper;
|
|
157
175
|
}
|
|
158
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
176
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlmZWN5Y2xlLXN0YXRlLW1hbmFnZXIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Abmd4cy9zdG9yZS8iLCJzb3VyY2VzIjpbInNyYy9pbnRlcm5hbC9saWZlY3ljbGUtc3RhdGUtbWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQ0wsVUFBVSxFQUNWLE1BQU0sRUFDTixRQUFRLEVBQ1IsUUFBUSxFQUNSLFNBQVMsRUFDVCxTQUFTLEVBQ1QsR0FBRyxFQUNKLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNqQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFN0QsT0FBTyxFQUFpQixnQkFBZ0IsRUFBZ0IsTUFBTSxZQUFZLENBQUM7QUFHM0UsTUFBTSxPQUFPLHFCQUFxQjs7Ozs7Ozs7SUFHaEMsWUFDVSxNQUFhLEVBQ2Isc0JBQTZDLEVBQzdDLHdCQUFpRCxFQUNqRCxvQkFBeUMsRUFDekMsYUFBK0I7UUFKL0IsV0FBTSxHQUFOLE1BQU0sQ0FBTztRQUNiLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBdUI7UUFDN0MsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUF5QjtRQUNqRCx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXFCO1FBQ3pDLGtCQUFhLEdBQWIsYUFBYSxDQUFrQjtRQVB4QixjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQVE5QyxDQUFDOzs7O0lBRUosV0FBVztRQUNULElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEIsQ0FBQzs7Ozs7OztJQUVELGFBQWEsQ0FBSSxNQUFTLEVBQUUsT0FBc0M7UUFDaEUsSUFBSSxDQUFDLHdCQUF3QjthQUMxQixzQkFBc0IsRUFBRTthQUN4QixRQUFRLENBQUMsTUFBTSxDQUFDO2FBQ2hCLElBQUksQ0FDSCxNQUFNOzs7UUFBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFDLEVBQ3ZCLEdBQUc7OztRQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxtQkFBQSxPQUFPLEVBQUMsQ0FBQyxNQUFNLENBQUMsRUFBQyxFQUNwRCxRQUFROzs7UUFBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGdCQUFnQixFQUFDLEVBQ25ELE1BQU07Ozs7UUFBQyxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxlQUFlLEVBQUMsRUFDNUMsVUFBVTs7OztRQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2pCLHdFQUF3RTtZQUN4RSwwRUFBMEU7WUFDMUUsMkVBQTJFO1lBQzNFLGdEQUFnRDtZQUNoRCxJQUFJLENBQUMsc0JBQXNCLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDckQsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDLEVBQUMsRUFDRixTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUMxQjthQUNBLFNBQVM7OztRQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxtQkFBQSxPQUFPLEVBQUMsQ0FBQyxNQUFNLENBQUMsRUFBQyxDQUFDO0lBQ3JFLENBQUM7Ozs7OztJQUVPLG1CQUFtQixDQUFDLFlBQTJCO1FBQ3JELEtBQUssTUFBTSxXQUFXLElBQUksWUFBWSxFQUFFOztrQkFDaEMsUUFBUSxHQUFrQixXQUFXLENBQUMsUUFBUTtZQUVwRCxJQUFJLFFBQVEsQ0FBQyxhQUFhLEVBQUU7Z0JBQzFCLElBQUksQ0FBQyxNQUFNO3FCQUNSLE1BQU07Ozs7Z0JBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBQztxQkFDbEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFBRSxRQUFRLEVBQUUsRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO3FCQUNqRSxTQUFTOzs7O2dCQUFDLENBQUMsQ0FBQyxhQUFhLEVBQUUsWUFBWSxDQUFDLEVBQUUsRUFBRTs7MEJBQ3JDLE1BQU0sR0FBRyxJQUFJLGdCQUFnQixDQUNqQyxhQUFhLEVBQ2IsWUFBWSxFQUNaLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FDM0I7b0JBQ0QsbUJBQUEsUUFBUSxDQUFDLGFBQWEsRUFBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUNsQyxDQUFDLEVBQUMsQ0FBQzthQUNOO1lBRUQsSUFBSSxRQUFRLENBQUMsVUFBVSxFQUFFO2dCQUN2QixRQUFRLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO2FBQ3pEO1lBRUQsV0FBVyxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7U0FDbEM7SUFDSCxDQUFDOzs7Ozs7SUFFTyx3QkFBd0IsQ0FBQyxZQUEyQjtRQUMxRCxLQUFLLE1BQU0sV0FBVyxJQUFJLFlBQVksRUFBRTs7a0JBQ2hDLFFBQVEsR0FBa0IsV0FBVyxDQUFDLFFBQVE7WUFDcEQsSUFBSSxRQUFRLENBQUMsa0JBQWtCLEVBQUU7Z0JBQy9CLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQzthQUNqRTtTQUNGO0lBQ0gsQ0FBQzs7Ozs7O0lBRU8sZ0JBQWdCLENBQUMsV0FBd0I7UUFDL0MsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbkUsQ0FBQzs7O1lBM0VGLFVBQVU7Ozs7WUFSRixLQUFLO1lBRUwscUJBQXFCO1lBRXJCLHVCQUF1QjtZQUR2QixtQkFBbUI7WUFmbkIsZ0JBQWdCOzs7Ozs7O0lBc0J2QiwwQ0FBaUQ7Ozs7O0lBRy9DLHVDQUFxQjs7Ozs7SUFDckIsdURBQXFEOzs7OztJQUNyRCx5REFBeUQ7Ozs7O0lBQ3pELHFEQUFpRDs7Ozs7SUFDakQsOENBQXVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ3hzQm9vdHN0cmFwcGVyIH0gZnJvbSAnQG5neHMvc3RvcmUvaW50ZXJuYWxzJztcbmltcG9ydCB7IEVNUFRZLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBjYXRjaEVycm9yLFxuICBmaWx0ZXIsXG4gIG1lcmdlTWFwLFxuICBwYWlyd2lzZSxcbiAgc3RhcnRXaXRoLFxuICB0YWtlVW50aWwsXG4gIHRhcFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnLi4vc3RvcmUnO1xuaW1wb3J0IHsgZ2V0VmFsdWUgfSBmcm9tICcuLi91dGlscy91dGlscyc7XG5pbXBvcnQgeyBJbnRlcm5hbEVycm9yUmVwb3J0ZXIgfSBmcm9tICcuL2Vycm9yLWhhbmRsZXInO1xuaW1wb3J0IHsgU3RhdGVDb250ZXh0RmFjdG9yeSB9IGZyb20gJy4vc3RhdGUtY29udGV4dC1mYWN0b3J5JztcbmltcG9ydCB7IEludGVybmFsU3RhdGVPcGVyYXRpb25zIH0gZnJvbSAnLi9zdGF0ZS1vcGVyYXRpb25zJztcbmltcG9ydCB7IE1hcHBlZFN0b3JlLCBTdGF0ZXNBbmREZWZhdWx0cyB9IGZyb20gJy4vaW50ZXJuYWxzJztcbmltcG9ydCB7IE5neHNMaWZlQ3ljbGUsIE5neHNTaW1wbGVDaGFuZ2UsIFN0YXRlQ29udGV4dCB9IGZyb20gJy4uL3N5bWJvbHMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTGlmZWN5Y2xlU3RhdGVNYW5hZ2VyIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX3N0b3JlOiBTdG9yZSxcbiAgICBwcml2YXRlIF9pbnRlcm5hbEVycm9yUmVwb3J0ZXI6IEludGVybmFsRXJyb3JSZXBvcnRlcixcbiAgICBwcml2YXRlIF9pbnRlcm5hbFN0YXRlT3BlcmF0aW9uczogSW50ZXJuYWxTdGF0ZU9wZXJhdGlvbnMsXG4gICAgcHJpdmF0ZSBfc3RhdGVDb250ZXh0RmFjdG9yeTogU3RhdGVDb250ZXh0RmFjdG9yeSxcbiAgICBwcml2YXRlIF9ib290c3RyYXBwZXI6IE5neHNCb290c3RyYXBwZXJcbiAgKSB7fVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2Rlc3Ryb3kkLm5leHQoKTtcbiAgfVxuXG4gIG5neHNCb290c3RyYXA8VD4oYWN0aW9uOiBULCByZXN1bHRzOiBTdGF0ZXNBbmREZWZhdWx0cyB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICAgIHRoaXMuX2ludGVybmFsU3RhdGVPcGVyYXRpb25zXG4gICAgICAuZ2V0Um9vdFN0YXRlT3BlcmF0aW9ucygpXG4gICAgICAuZGlzcGF0Y2goYWN0aW9uKVxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcigoKSA9PiAhIXJlc3VsdHMpLFxuICAgICAgICB0YXAoKCkgPT4gdGhpcy5faW52b2tlSW5pdE9uU3RhdGVzKHJlc3VsdHMhLnN0YXRlcykpLFxuICAgICAgICBtZXJnZU1hcCgoKSA9PiB0aGlzLl9ib290c3RyYXBwZXIuYXBwQm9vdHN0cmFwcGVkJCksXG4gICAgICAgIGZpbHRlcihhcHBCb290c3RyYXBwZWQgPT4gISFhcHBCb290c3RyYXBwZWQpLFxuICAgICAgICBjYXRjaEVycm9yKGVycm9yID0+IHtcbiAgICAgICAgICAvLyBUaGUgYFNhZmVTdWJzY3JpYmVyYCAod2hpY2ggaXMgdXNlZCBieSBtb3N0IFJ4SlMgb3BlcmF0b3JzKSByZS10aHJvd3NcbiAgICAgICAgICAvLyBlcnJvcnMgYXN5bmNocm9ub3VzbHkgKGBzZXRUaW1lb3V0KCgpID0+IHsgdGhyb3cgZXJyb3IgfSlgKS4gVGhpcyBtaWdodFxuICAgICAgICAgIC8vIGJyZWFrIGV4aXN0aW5nIHVzZXIncyBjb2RlIG9yIHVuaXQgdGVzdHMuIFdlIGNhdGNoIHRoZSBlcnJvciBtYW51YWxseSB0b1xuICAgICAgICAgIC8vIGJlIGJhY2t3YXJkIGNvbXBhdGlibGUgd2l0aCB0aGUgb2xkIGJlaGF2aW9yLlxuICAgICAgICAgIHRoaXMuX2ludGVybmFsRXJyb3JSZXBvcnRlci5yZXBvcnRFcnJvclNhZmVseShlcnJvcik7XG4gICAgICAgICAgcmV0dXJuIEVNUFRZO1xuICAgICAgICB9KSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLl9pbnZva2VCb290c3RyYXBPblN0YXRlcyhyZXN1bHRzIS5zdGF0ZXMpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2ludm9rZUluaXRPblN0YXRlcyhtYXBwZWRTdG9yZXM6IE1hcHBlZFN0b3JlW10pOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IG1hcHBlZFN0b3JlIG9mIG1hcHBlZFN0b3Jlcykge1xuICAgICAgY29uc3QgaW5zdGFuY2U6IE5neHNMaWZlQ3ljbGUgPSBtYXBwZWRTdG9yZS5pbnN0YW5jZTtcblxuICAgICAgaWYgKGluc3RhbmNlLm5neHNPbkNoYW5nZXMpIHtcbiAgICAgICAgdGhpcy5fc3RvcmVcbiAgICAgICAgICAuc2VsZWN0KHN0YXRlID0+IGdldFZhbHVlKHN0YXRlLCBtYXBwZWRTdG9yZS5wYXRoKSlcbiAgICAgICAgICAucGlwZShzdGFydFdpdGgodW5kZWZpbmVkKSwgcGFpcndpc2UoKSwgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSlcbiAgICAgICAgICAuc3Vic2NyaWJlKChbcHJldmlvdXNWYWx1ZSwgY3VycmVudFZhbHVlXSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY2hhbmdlID0gbmV3IE5neHNTaW1wbGVDaGFuZ2UoXG4gICAgICAgICAgICAgIHByZXZpb3VzVmFsdWUsXG4gICAgICAgICAgICAgIGN1cnJlbnRWYWx1ZSxcbiAgICAgICAgICAgICAgIW1hcHBlZFN0b3JlLmlzSW5pdGlhbGlzZWRcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBpbnN0YW5jZS5uZ3hzT25DaGFuZ2VzIShjaGFuZ2UpO1xuICAgICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBpZiAoaW5zdGFuY2Uubmd4c09uSW5pdCkge1xuICAgICAgICBpbnN0YW5jZS5uZ3hzT25Jbml0KHRoaXMuX2dldFN0YXRlQ29udGV4dChtYXBwZWRTdG9yZSkpO1xuICAgICAgfVxuXG4gICAgICBtYXBwZWRTdG9yZS5pc0luaXRpYWxpc2VkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9pbnZva2VCb290c3RyYXBPblN0YXRlcyhtYXBwZWRTdG9yZXM6IE1hcHBlZFN0b3JlW10pIHtcbiAgICBmb3IgKGNvbnN0IG1hcHBlZFN0b3JlIG9mIG1hcHBlZFN0b3Jlcykge1xuICAgICAgY29uc3QgaW5zdGFuY2U6IE5neHNMaWZlQ3ljbGUgPSBtYXBwZWRTdG9yZS5pbnN0YW5jZTtcbiAgICAgIGlmIChpbnN0YW5jZS5uZ3hzQWZ0ZXJCb290c3RyYXApIHtcbiAgICAgICAgaW5zdGFuY2Uubmd4c0FmdGVyQm9vdHN0cmFwKHRoaXMuX2dldFN0YXRlQ29udGV4dChtYXBwZWRTdG9yZSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2dldFN0YXRlQ29udGV4dChtYXBwZWRTdG9yZTogTWFwcGVkU3RvcmUpOiBTdGF0ZUNvbnRleHQ8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuX3N0YXRlQ29udGV4dEZhY3RvcnkuY3JlYXRlU3RhdGVDb250ZXh0KG1hcHBlZFN0b3JlKTtcbiAgfVxufVxuIl19
|
package/esm5/ngxs-store.js
CHANGED
|
@@ -7,18 +7,19 @@
|
|
|
7
7
|
*/
|
|
8
8
|
export { NgxsModule, Action, Store, State, Select, SelectorOptions, Actions, getSelectorMetadata, getStoreMetadata, ensureStoreMetadata, ensureSelectorMetadata, ofAction, ofActionDispatched, ofActionSuccessful, ofActionCanceled, ofActionErrored, ofActionCompleted, NgxsSimpleChange, Selector, getActionTypeFromInstance, actionMatcher, createSelector, NoopNgxsExecutionStrategy, StateToken, NGXS_PLUGINS, StateStream, setValue, getValue, InitState, UpdateState } from './index';
|
|
9
9
|
export { InternalActions as ɵb, OrderedSubject as ɵa } from './src/actions-stream';
|
|
10
|
-
export { SelectFactory as
|
|
10
|
+
export { SelectFactory as ɵs } from './src/decorators/select/select-factory';
|
|
11
11
|
export { InternalNgxsExecutionStrategy as ɵq } from './src/execution/internal-ngxs-execution-strategy';
|
|
12
12
|
export { NGXS_EXECUTION_STRATEGY as ɵi, USER_PROVIDED_NGXS_EXECUTION_STRATEGY as ɵh } from './src/execution/symbols';
|
|
13
13
|
export { InternalDispatchedActionResults as ɵl, InternalDispatcher as ɵm } from './src/internal/dispatcher';
|
|
14
|
-
export {
|
|
15
|
-
export {
|
|
14
|
+
export { InternalErrorReporter as ɵr } from './src/internal/error-handler';
|
|
15
|
+
export { ensureSelectorMetadata as ɵw, ensureStoreMetadata as ɵu, getSelectorMetadata as ɵx, getStoreMetadata as ɵv } from './src/internal/internals';
|
|
16
|
+
export { LifecycleStateManager as ɵy } from './src/internal/lifecycle-state-manager';
|
|
16
17
|
export { StateContextFactory as ɵn } from './src/internal/state-context-factory';
|
|
17
18
|
export { StateFactory as ɵk } from './src/internal/state-factory';
|
|
18
19
|
export { InternalStateOperations as ɵo } from './src/internal/state-operations';
|
|
19
|
-
export { NgxsFeatureModule as
|
|
20
|
+
export { NgxsFeatureModule as ɵz } from './src/modules/ngxs-feature.module';
|
|
20
21
|
export { NgxsRootModule as ɵj } from './src/modules/ngxs-root.module';
|
|
21
22
|
export { PluginManager as ɵp } from './src/plugin-manager';
|
|
22
23
|
export { FEATURE_STATE_TOKEN as ɵd, NgxsConfig as ɵf, ROOT_STATE_TOKEN as ɵc, SELECTOR_META_KEY as ɵe } from './src/symbols';
|
|
23
24
|
export { mergeDeep as ɵg } from './src/utils/utils';
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4cy1zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3hzL3N0b3JlLyIsInNvdXJjZXMiOlsibmd4cy1zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsbWRBQWMsU0FBUyxDQUFDO0FBRXhCLE9BQU8sRUFBQyxlQUFlLElBQUksRUFBRSxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRixPQUFPLEVBQUMsYUFBYSxJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQzNFLE9BQU8sRUFBQyw2QkFBNkIsSUFBSSxFQUFFLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUNyRyxPQUFPLEVBQUMsdUJBQXVCLElBQUksRUFBRSxFQUFDLHFDQUFxQyxJQUFJLEVBQUUsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ2xILE9BQU8sRUFBQywrQkFBK0IsSUFBSSxFQUFFLEVBQUMsa0JBQWtCLElBQUksRUFBRSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDekcsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ3pFLE9BQU8sRUFBMEIsc0JBQXNCLElBQUksRUFBRSxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsZ0JBQWdCLElBQUksRUFBRSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDMUssT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQ25GLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUMvRSxPQUFPLEVBQUMsWUFBWSxJQUFJLEVBQUUsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBQyx1QkFBdUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUM5RSxPQUFPLEVBQUMsaUJBQWlCLElBQUksRUFBRSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDMUUsT0FBTyxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRSxPQUFPLEVBQUMsYUFBYSxJQUFJLEVBQUUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRXpELE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsVUFBVSxJQUFJLEVBQUUsRUFBQyxnQkFBZ0IsSUFBSSxFQUFFLEVBQUMsaUJBQWlCLElBQUksRUFBRSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hILE9BQU8sRUFBQyxTQUFTLElBQUksRUFBRSxFQUFDLE1BQU0sbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuXG5leHBvcnQge0ludGVybmFsQWN0aW9ucyBhcyDJtWIsT3JkZXJlZFN1YmplY3QgYXMgybVhfSBmcm9tICcuL3NyYy9hY3Rpb25zLXN0cmVhbSc7XG5leHBvcnQge1NlbGVjdEZhY3RvcnkgYXMgybVzfSBmcm9tICcuL3NyYy9kZWNvcmF0b3JzL3NlbGVjdC9zZWxlY3QtZmFjdG9yeSc7XG5leHBvcnQge0ludGVybmFsTmd4c0V4ZWN1dGlvblN0cmF0ZWd5IGFzIMm1cX0gZnJvbSAnLi9zcmMvZXhlY3V0aW9uL2ludGVybmFsLW5neHMtZXhlY3V0aW9uLXN0cmF0ZWd5JztcbmV4cG9ydCB7TkdYU19FWEVDVVRJT05fU1RSQVRFR1kgYXMgybVpLFVTRVJfUFJPVklERURfTkdYU19FWEVDVVRJT05fU1RSQVRFR1kgYXMgybVofSBmcm9tICcuL3NyYy9leGVjdXRpb24vc3ltYm9scyc7XG5leHBvcnQge0ludGVybmFsRGlzcGF0Y2hlZEFjdGlvblJlc3VsdHMgYXMgybVsLEludGVybmFsRGlzcGF0Y2hlciBhcyDJtW19IGZyb20gJy4vc3JjL2ludGVybmFsL2Rpc3BhdGNoZXInO1xuZXhwb3J0IHtJbnRlcm5hbEVycm9yUmVwb3J0ZXIgYXMgybVyfSBmcm9tICcuL3NyYy9pbnRlcm5hbC9lcnJvci1oYW5kbGVyJztcbmV4cG9ydCB7U3RhdGVDbGFzc0ludGVybmFsIGFzIMm1dCxlbnN1cmVTZWxlY3Rvck1ldGFkYXRhIGFzIMm1dyxlbnN1cmVTdG9yZU1ldGFkYXRhIGFzIMm1dSxnZXRTZWxlY3Rvck1ldGFkYXRhIGFzIMm1eCxnZXRTdG9yZU1ldGFkYXRhIGFzIMm1dn0gZnJvbSAnLi9zcmMvaW50ZXJuYWwvaW50ZXJuYWxzJztcbmV4cG9ydCB7TGlmZWN5Y2xlU3RhdGVNYW5hZ2VyIGFzIMm1eX0gZnJvbSAnLi9zcmMvaW50ZXJuYWwvbGlmZWN5Y2xlLXN0YXRlLW1hbmFnZXInO1xuZXhwb3J0IHtTdGF0ZUNvbnRleHRGYWN0b3J5IGFzIMm1bn0gZnJvbSAnLi9zcmMvaW50ZXJuYWwvc3RhdGUtY29udGV4dC1mYWN0b3J5JztcbmV4cG9ydCB7U3RhdGVGYWN0b3J5IGFzIMm1a30gZnJvbSAnLi9zcmMvaW50ZXJuYWwvc3RhdGUtZmFjdG9yeSc7XG5leHBvcnQge0ludGVybmFsU3RhdGVPcGVyYXRpb25zIGFzIMm1b30gZnJvbSAnLi9zcmMvaW50ZXJuYWwvc3RhdGUtb3BlcmF0aW9ucyc7XG5leHBvcnQge05neHNGZWF0dXJlTW9kdWxlIGFzIMm1en0gZnJvbSAnLi9zcmMvbW9kdWxlcy9uZ3hzLWZlYXR1cmUubW9kdWxlJztcbmV4cG9ydCB7Tmd4c1Jvb3RNb2R1bGUgYXMgybVqfSBmcm9tICcuL3NyYy9tb2R1bGVzL25neHMtcm9vdC5tb2R1bGUnO1xuZXhwb3J0IHtQbHVnaW5NYW5hZ2VyIGFzIMm1cH0gZnJvbSAnLi9zcmMvcGx1Z2luLW1hbmFnZXInO1xuZXhwb3J0IHtUb2tlbk5hbWUgYXMgybViYX0gZnJvbSAnLi9zcmMvc3RhdGUtdG9rZW4vc3ltYm9scyc7XG5leHBvcnQge0ZFQVRVUkVfU1RBVEVfVE9LRU4gYXMgybVkLE5neHNDb25maWcgYXMgybVmLFJPT1RfU1RBVEVfVE9LRU4gYXMgybVjLFNFTEVDVE9SX01FVEFfS0VZIGFzIMm1ZX0gZnJvbSAnLi9zcmMvc3ltYm9scyc7XG5leHBvcnQge21lcmdlRGVlcCBhcyDJtWd9IGZyb20gJy4vc3JjL3V0aWxzL3V0aWxzJzsiXX0=
|