@ngxs/devtools-plugin 3.7.6 → 3.8.0-dev.master-743a236

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/esm5/index.js DELETED
@@ -1,9 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- /**
6
- * The public api for consumers of @ngxs/devtools-plugin
7
- */
8
- export { NgxsReduxDevtoolsPluginModule, NgxsReduxDevtoolsPlugin, NGXS_DEVTOOLS_OPTIONS } from './src/public_api';
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Abmd4cy9kZXZ0b29scy1wbHVnaW4vIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBR0EsOEZBQWMsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRoZSBwdWJsaWMgYXBpIGZvciBjb25zdW1lcnMgb2YgQG5neHMvZGV2dG9vbHMtcGx1Z2luXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vc3JjL3B1YmxpY19hcGknO1xuIl19
@@ -1,10 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- /**
6
- * Generated bundle index. Do not edit.
7
- */
8
- export { NgxsReduxDevtoolsPluginModule, NgxsReduxDevtoolsPlugin, NGXS_DEVTOOLS_OPTIONS } from './index';
9
- export { USER_OPTIONS as ɵb, devtoolsOptionsFactory as ɵa } from './src/devtools.module';
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4cy1kZXZ0b29scy1wbHVnaW4uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Abmd4cy9kZXZ0b29scy1wbHVnaW4vIiwic291cmNlcyI6WyJuZ3hzLWRldnRvb2xzLXBsdWdpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsOEZBQWMsU0FBUyxDQUFDO0FBRXhCLE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLHNCQUFzQixJQUFJLEVBQUUsRUFBQyxNQUFNLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcblxuZXhwb3J0IHtVU0VSX09QVElPTlMgYXMgybViLGRldnRvb2xzT3B0aW9uc0ZhY3RvcnkgYXMgybVhfSBmcm9tICcuL3NyYy9kZXZ0b29scy5tb2R1bGUnOyJdfQ==
@@ -1,57 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- import * as tslib_1 from "tslib";
6
- import { NgModule, InjectionToken } from '@angular/core';
7
- import { NGXS_PLUGINS } from '@ngxs/store';
8
- import { NGXS_DEVTOOLS_OPTIONS } from './symbols';
9
- import { NgxsReduxDevtoolsPlugin } from './devtools.plugin';
10
- /**
11
- * @param {?} options
12
- * @return {?}
13
- */
14
- export function devtoolsOptionsFactory(options) {
15
- return tslib_1.__assign({ name: 'NGXS' }, options);
16
- }
17
- /** @type {?} */
18
- export var USER_OPTIONS = new InjectionToken('USER_OPTIONS');
19
- var NgxsReduxDevtoolsPluginModule = /** @class */ (function () {
20
- function NgxsReduxDevtoolsPluginModule() {
21
- }
22
- /**
23
- * @param {?=} options
24
- * @return {?}
25
- */
26
- NgxsReduxDevtoolsPluginModule.forRoot = /**
27
- * @param {?=} options
28
- * @return {?}
29
- */
30
- function (options) {
31
- return {
32
- ngModule: NgxsReduxDevtoolsPluginModule,
33
- providers: [
34
- {
35
- provide: NGXS_PLUGINS,
36
- useClass: NgxsReduxDevtoolsPlugin,
37
- multi: true
38
- },
39
- {
40
- provide: USER_OPTIONS,
41
- useValue: options
42
- },
43
- {
44
- provide: NGXS_DEVTOOLS_OPTIONS,
45
- useFactory: devtoolsOptionsFactory,
46
- deps: [USER_OPTIONS]
47
- }
48
- ]
49
- };
50
- };
51
- NgxsReduxDevtoolsPluginModule.decorators = [
52
- { type: NgModule }
53
- ];
54
- return NgxsReduxDevtoolsPluginModule;
55
- }());
56
- export { NgxsReduxDevtoolsPluginModule };
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2dG9vbHMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neHMvZGV2dG9vbHMtcGx1Z2luLyIsInNvdXJjZXMiOlsic3JjL2RldnRvb2xzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQXVCLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTNDLE9BQU8sRUFBdUIscUJBQXFCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDdkUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7O0FBRTVELE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxPQUE0QjtJQUNqRSwwQkFDRSxJQUFJLEVBQUUsTUFBTSxJQUNULE9BQU8sRUFDVjtBQUNKLENBQUM7O0FBRUQsTUFBTSxLQUFPLFlBQVksR0FBRyxJQUFJLGNBQWMsQ0FBQyxjQUFjLENBQUM7QUFFOUQ7SUFBQTtJQXlCQSxDQUFDOzs7OztJQXZCUSxxQ0FBTzs7OztJQUFkLFVBQ0UsT0FBNkI7UUFFN0IsT0FBTztZQUNMLFFBQVEsRUFBRSw2QkFBNkI7WUFDdkMsU0FBUyxFQUFFO2dCQUNUO29CQUNFLE9BQU8sRUFBRSxZQUFZO29CQUNyQixRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxLQUFLLEVBQUUsSUFBSTtpQkFDWjtnQkFDRDtvQkFDRSxPQUFPLEVBQUUsWUFBWTtvQkFDckIsUUFBUSxFQUFFLE9BQU87aUJBQ2xCO2dCQUNEO29CQUNFLE9BQU8sRUFBRSxxQkFBcUI7b0JBQzlCLFVBQVUsRUFBRSxzQkFBc0I7b0JBQ2xDLElBQUksRUFBRSxDQUFDLFlBQVksQ0FBQztpQkFDckI7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDOztnQkF4QkYsUUFBUTs7SUF5QlQsb0NBQUM7Q0FBQSxBQXpCRCxJQXlCQztTQXhCWSw2QkFBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycywgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HWFNfUExVR0lOUyB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcblxuaW1wb3J0IHsgTmd4c0RldnRvb2xzT3B0aW9ucywgTkdYU19ERVZUT09MU19PUFRJT05TIH0gZnJvbSAnLi9zeW1ib2xzJztcbmltcG9ydCB7IE5neHNSZWR1eERldnRvb2xzUGx1Z2luIH0gZnJvbSAnLi9kZXZ0b29scy5wbHVnaW4nO1xuXG5leHBvcnQgZnVuY3Rpb24gZGV2dG9vbHNPcHRpb25zRmFjdG9yeShvcHRpb25zOiBOZ3hzRGV2dG9vbHNPcHRpb25zKSB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogJ05HWFMnLFxuICAgIC4uLm9wdGlvbnNcbiAgfTtcbn1cblxuZXhwb3J0IGNvbnN0IFVTRVJfT1BUSU9OUyA9IG5ldyBJbmplY3Rpb25Ub2tlbignVVNFUl9PUFRJT05TJyk7XG5cbkBOZ01vZHVsZSgpXG5leHBvcnQgY2xhc3MgTmd4c1JlZHV4RGV2dG9vbHNQbHVnaW5Nb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChcbiAgICBvcHRpb25zPzogTmd4c0RldnRvb2xzT3B0aW9uc1xuICApOiBNb2R1bGVXaXRoUHJvdmlkZXJzPE5neHNSZWR1eERldnRvb2xzUGx1Z2luTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBOZ3hzUmVkdXhEZXZ0b29sc1BsdWdpbk1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogTkdYU19QTFVHSU5TLFxuICAgICAgICAgIHVzZUNsYXNzOiBOZ3hzUmVkdXhEZXZ0b29sc1BsdWdpbixcbiAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogVVNFUl9PUFRJT05TLFxuICAgICAgICAgIHVzZVZhbHVlOiBvcHRpb25zXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBOR1hTX0RFVlRPT0xTX09QVElPTlMsXG4gICAgICAgICAgdXNlRmFjdG9yeTogZGV2dG9vbHNPcHRpb25zRmFjdG9yeSxcbiAgICAgICAgICBkZXBzOiBbVVNFUl9PUFRJT05TXVxuICAgICAgICB9XG4gICAgICBdXG4gICAgfTtcbiAgfVxufVxuIl19
@@ -1,271 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- import * as tslib_1 from "tslib";
6
- import { Inject, Injectable, Injector, NgZone, ɵglobal } from '@angular/core';
7
- import { getActionTypeFromInstance, Store } from '@ngxs/store';
8
- import { tap, catchError } from 'rxjs/operators';
9
- import { NGXS_DEVTOOLS_OPTIONS } from './symbols';
10
- /** @enum {string} */
11
- var ReduxDevtoolsActionType = {
12
- Dispatch: 'DISPATCH',
13
- Action: 'ACTION',
14
- };
15
- /** @enum {string} */
16
- var ReduxDevtoolsPayloadType = {
17
- JumpToAction: 'JUMP_TO_ACTION',
18
- JumpToState: 'JUMP_TO_STATE',
19
- ToggleAction: 'TOGGLE_ACTION',
20
- ImportState: 'IMPORT_STATE',
21
- };
22
- /**
23
- * Adds support for the Redux Devtools extension:
24
- * http://extension.remotedev.io/
25
- */
26
- var NgxsReduxDevtoolsPlugin = /** @class */ (function () {
27
- function NgxsReduxDevtoolsPlugin(_options, _injector, _ngZone) {
28
- this._options = _options;
29
- this._injector = _injector;
30
- this._ngZone = _ngZone;
31
- this.devtoolsExtension = null;
32
- this.globalDevtools = ɵglobal['__REDUX_DEVTOOLS_EXTENSION__'] || ɵglobal['devToolsExtension'];
33
- this.unsubscribe = null;
34
- this.connect();
35
- }
36
- /**
37
- * @return {?}
38
- */
39
- NgxsReduxDevtoolsPlugin.prototype.ngOnDestroy = /**
40
- * @return {?}
41
- */
42
- function () {
43
- if (this.unsubscribe !== null) {
44
- this.unsubscribe();
45
- }
46
- if (this.globalDevtools) {
47
- this.globalDevtools.disconnect();
48
- }
49
- };
50
- Object.defineProperty(NgxsReduxDevtoolsPlugin.prototype, "store", {
51
- /**
52
- * Lazy get the store for circular dependency issues
53
- */
54
- get: /**
55
- * Lazy get the store for circular dependency issues
56
- * @private
57
- * @return {?}
58
- */
59
- function () {
60
- return this._injector.get(Store);
61
- },
62
- enumerable: true,
63
- configurable: true
64
- });
65
- /**
66
- * Middleware handle function
67
- */
68
- /**
69
- * Middleware handle function
70
- * @param {?} state
71
- * @param {?} action
72
- * @param {?} next
73
- * @return {?}
74
- */
75
- NgxsReduxDevtoolsPlugin.prototype.handle = /**
76
- * Middleware handle function
77
- * @param {?} state
78
- * @param {?} action
79
- * @param {?} next
80
- * @return {?}
81
- */
82
- function (state, action, next) {
83
- var _this = this;
84
- if (!this.devtoolsExtension || this._options.disabled) {
85
- return next(state, action);
86
- }
87
- return next(state, action).pipe(catchError((/**
88
- * @param {?} error
89
- * @return {?}
90
- */
91
- function (error) {
92
- /** @type {?} */
93
- var newState = _this.store.snapshot();
94
- _this.sendToDevTools(state, action, newState);
95
- throw error;
96
- })), tap((/**
97
- * @param {?} newState
98
- * @return {?}
99
- */
100
- function (newState) {
101
- _this.sendToDevTools(state, action, newState);
102
- })));
103
- };
104
- /**
105
- * @private
106
- * @param {?} state
107
- * @param {?} action
108
- * @param {?} newState
109
- * @return {?}
110
- */
111
- NgxsReduxDevtoolsPlugin.prototype.sendToDevTools = /**
112
- * @private
113
- * @param {?} state
114
- * @param {?} action
115
- * @param {?} newState
116
- * @return {?}
117
- */
118
- function (state, action, newState) {
119
- /** @type {?} */
120
- var type = getActionTypeFromInstance(action);
121
- // if init action, send initial state to dev tools
122
- /** @type {?} */
123
- var isInitAction = type === '@@INIT';
124
- if (isInitAction) {
125
- (/** @type {?} */ (this.devtoolsExtension)).init(state);
126
- }
127
- else {
128
- (/** @type {?} */ (this.devtoolsExtension)).send(tslib_1.__assign({}, action, { action: null, type: type }), newState);
129
- }
130
- };
131
- /**
132
- * Handle the action from the dev tools subscription
133
- */
134
- /**
135
- * Handle the action from the dev tools subscription
136
- * @param {?} action
137
- * @return {?}
138
- */
139
- NgxsReduxDevtoolsPlugin.prototype.dispatched = /**
140
- * Handle the action from the dev tools subscription
141
- * @param {?} action
142
- * @return {?}
143
- */
144
- function (action) {
145
- var _this = this;
146
- if (action.type === "DISPATCH" /* Dispatch */) {
147
- if (action.payload.type === "JUMP_TO_ACTION" /* JumpToAction */ ||
148
- action.payload.type === "JUMP_TO_STATE" /* JumpToState */) {
149
- /** @type {?} */
150
- var prevState = JSON.parse(action.state);
151
- // This makes the DevTools and Router plugins friends with each other.
152
- // We're checking for the `router` state to exist, and it also should
153
- // have the `trigger` property, so we're sure that this is our router
154
- // state (coming from `@ngxs/router-plugin`). This enables a time-traveling
155
- // feature since it doesn't only restore the state but also allows the `RouterState`
156
- // to navigate back when the action is jumped.
157
- if (prevState.router && prevState.router.trigger) {
158
- prevState.router.trigger = 'devtools';
159
- }
160
- this.store.reset(prevState);
161
- }
162
- else if (action.payload.type === "TOGGLE_ACTION" /* ToggleAction */) {
163
- console.warn('Skip is not supported at this time.');
164
- }
165
- else if (action.payload.type === "IMPORT_STATE" /* ImportState */) {
166
- var _a = action.payload.nextLiftedState, actionsById_1 = _a.actionsById, computedStates_1 = _a.computedStates, currentStateIndex = _a.currentStateIndex;
167
- (/** @type {?} */ (this.devtoolsExtension)).init(computedStates_1[0].state);
168
- Object.keys(actionsById_1)
169
- .filter((/**
170
- * @param {?} actionId
171
- * @return {?}
172
- */
173
- function (actionId) { return actionId !== '0'; }))
174
- .forEach((/**
175
- * @param {?} actionId
176
- * @return {?}
177
- */
178
- function (actionId) {
179
- return (/** @type {?} */ (_this.devtoolsExtension)).send(actionsById_1[actionId], computedStates_1[actionId].state);
180
- }));
181
- this.store.reset(computedStates_1[currentStateIndex].state);
182
- }
183
- }
184
- else if (action.type === "ACTION" /* Action */) {
185
- /** @type {?} */
186
- var actionPayload = JSON.parse(action.payload);
187
- this.store.dispatch(actionPayload);
188
- }
189
- };
190
- /**
191
- * @private
192
- * @return {?}
193
- */
194
- NgxsReduxDevtoolsPlugin.prototype.connect = /**
195
- * @private
196
- * @return {?}
197
- */
198
- function () {
199
- var _this = this;
200
- if (!this.globalDevtools || this._options.disabled) {
201
- return;
202
- }
203
- // The `connect` method adds `message` event listener since it communicates
204
- // with an extension through `window.postMessage` and message events.
205
- // We handle only 2 events; thus, we don't want to run many change detections
206
- // because the extension sends events that we don't have to handle.
207
- this.devtoolsExtension = this._ngZone.runOutsideAngular((/**
208
- * @return {?}
209
- */
210
- function () { return (/** @type {?} */ (_this.globalDevtools.connect(_this._options))); }));
211
- this.unsubscribe = this.devtoolsExtension.subscribe((/**
212
- * @param {?} action
213
- * @return {?}
214
- */
215
- function (action) {
216
- if (action.type === "DISPATCH" /* Dispatch */ ||
217
- action.type === "ACTION" /* Action */) {
218
- _this._ngZone.run((/**
219
- * @return {?}
220
- */
221
- function () {
222
- _this.dispatched(action);
223
- }));
224
- }
225
- }));
226
- };
227
- NgxsReduxDevtoolsPlugin.decorators = [
228
- { type: Injectable }
229
- ];
230
- /** @nocollapse */
231
- NgxsReduxDevtoolsPlugin.ctorParameters = function () { return [
232
- { type: undefined, decorators: [{ type: Inject, args: [NGXS_DEVTOOLS_OPTIONS,] }] },
233
- { type: Injector },
234
- { type: NgZone }
235
- ]; };
236
- return NgxsReduxDevtoolsPlugin;
237
- }());
238
- export { NgxsReduxDevtoolsPlugin };
239
- if (false) {
240
- /**
241
- * @type {?}
242
- * @private
243
- */
244
- NgxsReduxDevtoolsPlugin.prototype.devtoolsExtension;
245
- /**
246
- * @type {?}
247
- * @private
248
- */
249
- NgxsReduxDevtoolsPlugin.prototype.globalDevtools;
250
- /**
251
- * @type {?}
252
- * @private
253
- */
254
- NgxsReduxDevtoolsPlugin.prototype.unsubscribe;
255
- /**
256
- * @type {?}
257
- * @private
258
- */
259
- NgxsReduxDevtoolsPlugin.prototype._options;
260
- /**
261
- * @type {?}
262
- * @private
263
- */
264
- NgxsReduxDevtoolsPlugin.prototype._injector;
265
- /**
266
- * @type {?}
267
- * @private
268
- */
269
- NgxsReduxDevtoolsPlugin.prototype._ngZone;
270
- }
271
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2dG9vbHMucGx1Z2luLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neHMvZGV2dG9vbHMtcGx1Z2luLyIsInNvdXJjZXMiOlsic3JjL2RldnRvb2xzLnBsdWdpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQWEsT0FBTyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pGLE9BQU8sRUFBRSx5QkFBeUIsRUFBZ0MsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzdGLE9BQU8sRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFakQsT0FBTyxFQUNMLHFCQUFxQixFQUl0QixNQUFNLFdBQVcsQ0FBQzs7O0lBR2pCLFVBQVcsVUFBVTtJQUNyQixRQUFTLFFBQVE7Ozs7SUFJakIsY0FBZSxnQkFBZ0I7SUFDL0IsYUFBYyxlQUFlO0lBQzdCLGNBQWUsZUFBZTtJQUM5QixhQUFjLGNBQWM7Ozs7OztBQU85QjtJQVFFLGlDQUN5QyxRQUE2QixFQUM1RCxTQUFtQixFQUNuQixPQUFlO1FBRmdCLGFBQVEsR0FBUixRQUFRLENBQXFCO1FBQzVELGNBQVMsR0FBVCxTQUFTLENBQVU7UUFDbkIsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQVRqQixzQkFBaUIsR0FBaUMsSUFBSSxDQUFDO1FBQzlDLG1CQUFjLEdBQzdCLE9BQU8sQ0FBQyw4QkFBOEIsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBRWxFLGdCQUFXLEdBQXdCLElBQUksQ0FBQztRQU85QyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakIsQ0FBQzs7OztJQUVELDZDQUFXOzs7SUFBWDtRQUNFLElBQUksSUFBSSxDQUFDLFdBQVcsS0FBSyxJQUFJLEVBQUU7WUFDN0IsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3BCO1FBQ0QsSUFBSSxJQUFJLENB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QyxFQUFBLEdBQUEsRUFDeEUsQ0FBQztRQUVGLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVM7Ozs7UUFBQyxVQUFBLE1BQU07WUFDeEQsSUFDRSxNQUFNLENBQUMsSUFBSSw4QkFBcUM7Z0JBQ2hELE1BQU0sQ0FBQyxJQUFJLDBCQUFtQyxFQUM5QztnQkFDQSxLQUFJLENBQUMsT0FBTyxDQUFDLEdBQUc7OztnQkFBQztvQkFDZixLQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUMxQixDQUFDLEVBQUMsQ0FBQzthQUNKO1FBQ0gsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOztnQkFoSUYsVUFBVTs7OztnREFTTixNQUFNLFNBQUMscUJBQXFCO2dCQXBDSixRQUFRO2dCQUFFLE1BQU07O0lBNEo3Qyw4QkFBQztDQUFBLEFBaklELElBaUlDO1NBaElZLHVCQUF1Qjs7Ozs7O0lBQ2xDLG9EQUErRDs7Ozs7SUFDL0QsaURBQzBFOzs7OztJQUUxRSw4Q0FBZ0Q7Ozs7O0lBRzlDLDJDQUFvRTs7Ozs7SUFDcEUsNENBQTJCOzs7OztJQUMzQiwwQ0FBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIEluamVjdG9yLCBOZ1pvbmUsIE9uRGVzdHJveSwgybVnbG9iYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGdldEFjdGlvblR5cGVGcm9tSW5zdGFuY2UsIE5neHNOZXh0UGx1Z2luRm4sIE5neHNQbHVnaW4sIFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgdGFwLCBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1xuICBOR1hTX0RFVlRPT0xTX09QVElPTlMsXG4gIE5neHNEZXZ0b29sc0FjdGlvbixcbiAgTmd4c0RldnRvb2xzRXh0ZW5zaW9uLFxuICBOZ3hzRGV2dG9vbHNPcHRpb25zXG59IGZyb20gJy4vc3ltYm9scyc7XG5cbmNvbnN0IGVudW0gUmVkdXhEZXZ0b29sc0FjdGlvblR5cGUge1xuICBEaXNwYXRjaCA9ICdESVNQQVRDSCcsXG4gIEFjdGlvbiA9ICdBQ1RJT04nXG59XG5cbmNvbnN0IGVudW0gUmVkdXhEZXZ0b29sc1BheWxvYWRUeXBlIHtcbiAgSnVtcFRvQWN0aW9uID0gJ0pVTVBfVE9fQUNUSU9OJyxcbiAgSnVtcFRvU3RhdGUgPSAnSlVNUF9UT19TVEFURScsXG4gIFRvZ2dsZUFjdGlvbiA9ICdUT0dHTEVfQUNUSU9OJyxcbiAgSW1wb3J0U3RhdGUgPSAnSU1QT1JUX1NUQVRFJ1xufVxuXG4vKipcbiAqIEFkZHMgc3VwcG9ydCBmb3IgdGhlIFJlZHV4IERldnRvb2xzIGV4dGVuc2lvbjpcbiAqIGh0dHA6Ly9leHRlbnNpb24ucmVtb3RlZGV2LmlvL1xuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTmd4c1JlZHV4RGV2dG9vbHNQbHVnaW4gaW1wbGVtZW50cyBPbkRlc3Ryb3ksIE5neHNQbHVnaW4ge1xuICBwcml2YXRlIGRldnRvb2xzRXh0ZW5zaW9uOiBOZ3hzRGV2dG9vbHNFeHRlbnNpb24gfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSByZWFkb25seSBnbG9iYWxEZXZ0b29scyA9XG4gICAgybVnbG9iYWxbJ19fUkVEVVhfREVWVE9PTFNfRVhURU5TSU9OX18nXSB8fCDJtWdsb2JhbFsnZGV2VG9vbHNFeHRlbnNpb24nXTtcblxuICBwcml2YXRlIHVuc3Vic2NyaWJlOiBWb2lkRnVuY3Rpb24gfCBudWxsID0gbnVsbDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KE5HWFNfREVWVE9PTFNfT1BUSU9OUykgcHJpdmF0ZSBfb3B0aW9uczogTmd4c0RldnRvb2xzT3B0aW9ucyxcbiAgICBwcml2YXRlIF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSBfbmdab25lOiBOZ1pvbmVcbiAgKSB7XG4gICAgdGhpcy5jb25uZWN0KCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy51bnN1YnNjcmliZSAhPT0gbnVsbCkge1xuICAgICAgdGhpcy51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgICBpZiAodGhpcy5nbG9iYWxEZXZ0b29scykge1xuICAgICAgdGhpcy5nbG9iYWxEZXZ0b29scy5kaXNjb25uZWN0KCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIExhenkgZ2V0IHRoZSBzdG9yZSBmb3IgY2lyY3VsYXIgZGVwZW5kZW5jeSBpc3N1ZXNcbiAgICovXG4gIHByaXZhdGUgZ2V0IHN0b3JlKCk6IFN0b3JlIHtcbiAgICByZXR1cm4gdGhpcy5faW5qZWN0b3IuZ2V0PFN0b3JlPihTdG9yZSk7XG4gIH1cblxuICAvKipcbiAgICogTWlkZGxld2FyZSBoYW5kbGUgZnVuY3Rpb25cbiAgICovXG4gIGhhbmRsZShzdGF0ZTogYW55LCBhY3Rpb246IGFueSwgbmV4dDogTmd4c05leHRQbHVnaW5Gbikge1xuICAgIGlmICghdGhpcy5kZXZ0b29sc0V4dGVuc2lvbiB8fCB0aGlzLl9vcHRpb25zLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm4gbmV4dChzdGF0ZSwgYWN0aW9uKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV4dChzdGF0ZSwgYWN0aW9uKS5waXBlKFxuICAgICAgY2F0Y2hFcnJvcihlcnJvciA9PiB7XG4gICAgICAgIGNvbnN0IG5ld1N0YXRlID0gdGhpcy5zdG9yZS5zbmFwc2hvdCgpO1xuICAgICAgICB0aGlzLnNlbmRUb0RldlRvb2xzKHN0YXRlLCBhY3Rpb24sIG5ld1N0YXRlKTtcbiAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICB9KSxcbiAgICAgIHRhcChuZXdTdGF0ZSA9PiB7XG4gICAgICAgIHRoaXMuc2VuZFRvRGV2VG9vbHMoc3RhdGUsIGFjdGlvbiwgbmV3U3RhdGUpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBzZW5kVG9EZXZUb29scyhzdGF0ZTogYW55LCBhY3Rpb246IGFueSwgbmV3U3RhdGU6IGFueSkge1xuICAgIGNvbnN0IHR5cGUgPSBnZXRBY3Rpb25UeXBlRnJvbUluc3RhbmNlKGFjdGlvbik7XG4gICAgLy8gaWYgaW5pdCBhY3Rpb24sIHNlbmQgaW5pdGlhbCBzdGF0ZSB0byBkZXYgdG9vbHNcbiAgICBjb25zdCBpc0luaXRBY3Rpb24gPSB0eXBlID09PSAnQEBJTklUJztcbiAgICBpZiAoaXNJbml0QWN0aW9uKSB7XG4gICAgICB0aGlzLmRldnRvb2xzRXh0ZW5zaW9uIS5pbml0KHN0YXRlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kZXZ0b29sc0V4dGVuc2lvbiEuc2VuZCh7IC4uLmFjdGlvbiwgYWN0aW9uOiBudWxsLCB0eXBlIH0sIG5ld1N0YXRlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogSGFuZGxlIHRoZSBhY3Rpb24gZnJvbSB0aGUgZGV2IHRvb2xzIHN1YnNjcmlwdGlvblxuICAgKi9cbiAgZGlzcGF0Y2hlZChhY3Rpb246IE5neHNEZXZ0b29sc0FjdGlvbikge1xuICAgIGlmIChhY3Rpb24udHlwZSA9PT0gUmVkdXhEZXZ0b29sc0FjdGlvblR5cGUuRGlzcGF0Y2gpIHtcbiAgICAgIGlmIChcbiAgICAgICAgYWN0aW9uLnBheWxvYWQudHlwZSA9PT0gUmVkdXhEZXZ0b29sc1BheWxvYWRUeXBlLkp1bXBUb0FjdGlvbiB8fFxuICAgICAgICBhY3Rpb24ucGF5bG9hZC50eXBlID09PSBSZWR1eERldnRvb2xzUGF5bG9hZFR5cGUuSnVtcFRvU3RhdGVcbiAgICAgICkge1xuICAgICAgICBjb25zdCBwcmV2U3RhdGUgPSBKU09OLnBhcnNlKGFjdGlvbi5zdGF0ZSk7XG4gICAgICAgIC8vIFRoaXMgbWFrZXMgdGhlIERldlRvb2xzIGFuZCBSb3V0ZXIgcGx1Z2lucyBmcmllbmRzIHdpdGggZWFjaCBvdGhlci5cbiAgICAgICAgLy8gV2UncmUgY2hlY2tpbmcgZm9yIHRoZSBgcm91dGVyYCBzdGF0ZSB0byBleGlzdCwgYW5kIGl0IGFsc28gc2hvdWxkXG4gICAgICAgIC8vIGhhdmUgdGhlIGB0cmlnZ2VyYCBwcm9wZXJ0eSwgc28gd2UncmUgc3VyZSB0aGF0IHRoaXMgaXMgb3VyIHJvdXRlclxuICAgICAgICAvLyBzdGF0ZSAoY29taW5nIGZyb20gYEBuZ3hzL3JvdXRlci1wbHVnaW5gKS4gVGhpcyBlbmFibGVzIGEgdGltZS10cmF2ZWxpbmdcbiAgICAgICAgLy8gZmVhdHVyZSBzaW5jZSBpdCBkb2Vzbid0IG9ubHkgcmVzdG9yZSB0aGUgc3RhdGUgYnV0IGFsc28gYWxsb3dzIHRoZSBgUm91dGVyU3RhdGVgXG4gICAgICAgIC8vIHRvIG5hdmlnYXRlIGJhY2sgd2hlbiB0aGUgYWN0aW9uIGlzIGp1bXBlZC5cbiAgICAgICAgaWYgKHByZXZTdGF0ZS5yb3V0ZXIgJiYgcHJldlN0YXRlLnJvdXRlci50cmlnZ2VyKSB7XG4gICAgICAgICAgcHJldlN0YXRlLnJvdXRlci50cmlnZ2VyID0gJ2RldnRvb2xzJztcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnN0b3JlLnJlc2V0KHByZXZTdGF0ZSk7XG4gICAgICB9IGVsc2UgaWYgKGFjdGlvbi5wYXlsb2FkLnR5cGUgPT09IFJlZHV4RGV2dG9vbHNQYXlsb2FkVHlwZS5Ub2dnbGVBY3Rpb24pIHtcbiAgICAgICAgY29uc29sZS53YXJuKCdTa2lwIGlzIG5vdCBzdXBwb3J0ZWQgYXQgdGhpcyB0aW1lLicpO1xuICAgICAgfSBlbHNlIGlmIChhY3Rpb24ucGF5bG9hZC50eXBlID09PSBSZWR1eERldnRvb2xzUGF5bG9hZFR5cGUuSW1wb3J0U3RhdGUpIHtcbiAgICAgICAgY29uc3Qge1xuICAgICAgICAgIGFjdGlvbnNCeUlkLFxuICAgICAgICAgIGNvbXB1dGVkU3RhdGVzLFxuICAgICAgICAgIGN1cnJlbnRTdGF0ZUluZGV4XG4gICAgICAgIH0gPSBhY3Rpb24ucGF5bG9hZC5uZXh0TGlmdGVkU3RhdGU7XG4gICAgICAgIHRoaXMuZGV2dG9vbHNFeHRlbnNpb24hLmluaXQoY29tcHV0ZWRTdGF0ZXNbMF0uc3RhdGUpO1xuICAgICAgICBPYmplY3Qua2V5cyhhY3Rpb25zQnlJZClcbiAgICAgICAgICAuZmlsdGVyKGFjdGlvbklkID0+IGFjdGlvbklkICE9PSAnMCcpXG4gICAgICAgICAgLmZvckVhY2goYWN0aW9uSWQgPT5cbiAgICAgICAgICAgIHRoaXMuZGV2dG9vbHNFeHRlbnNpb24hLnNlbmQoYWN0aW9uc0J5SWRbYWN0aW9uSWRdLCBjb21wdXRlZFN0YXRlc1thY3Rpb25JZF0uc3RhdGUpXG4gICAgICAgICAgKTtcbiAgICAgICAgdGhpcy5zdG9yZS5yZXNldChjb21wdXRlZFN0YXRlc1tjdXJyZW50U3RhdGVJbmRleF0uc3RhdGUpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoYWN0aW9uLnR5cGUgPT09IFJlZHV4RGV2dG9vbHNBY3Rpb25UeXBlLkFjdGlvbikge1xuICAgICAgY29uc3QgYWN0aW9uUGF5bG9hZCA9IEpTT04ucGFyc2UoYWN0aW9uLnBheWxvYWQpO1xuICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChhY3Rpb25QYXlsb2FkKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNvbm5lY3QoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmdsb2JhbERldnRvb2xzIHx8IHRoaXMuX29wdGlvbnMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBUaGUgYGNvbm5lY3RgIG1ldGhvZCBhZGRzIGBtZXNzYWdlYCBldmVudCBsaXN0ZW5lciBzaW5jZSBpdCBjb21tdW5pY2F0ZXNcbiAgICAvLyB3aXRoIGFuIGV4dGVuc2lvbiB0aHJvdWdoIGB3aW5kb3cucG9zdE1lc3NhZ2VgIGFuZCBtZXNzYWdlIGV2ZW50cy5cbiAgICAvLyBXZSBoYW5kbGUgb25seSAyIGV2ZW50czsgdGh1cywgd2UgZG9uJ3Qgd2FudCB0byBydW4gbWFueSBjaGFuZ2UgZGV0ZWN0aW9uc1xuICAgIC8vIGJlY2F1c2UgdGhlIGV4dGVuc2lvbiBzZW5kcyBldmVudHMgdGhhdCB3ZSBkb24ndCBoYXZlIHRvIGhhbmRsZS5cbiAgICB0aGlzLmRldnRvb2xzRXh0ZW5zaW9uID0gdGhpcy5fbmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKFxuICAgICAgKCkgPT4gPE5neHNEZXZ0b29sc0V4dGVuc2lvbj50aGlzLmdsb2JhbERldnRvb2xzLmNvbm5lY3QodGhpcy5fb3B0aW9ucylcbiAgICApO1xuXG4gICAgdGhpcy51bnN1YnNjcmliZSA9IHRoaXMuZGV2dG9vbHNFeHRlbnNpb24uc3Vic2NyaWJlKGFjdGlvbiA9PiB7XG4gICAgICBpZiAoXG4gICAgICAgIGFjdGlvbi50eXBlID09PSBSZWR1eERldnRvb2xzQWN0aW9uVHlwZS5EaXNwYXRjaCB8fFxuICAgICAgICBhY3Rpb24udHlwZSA9PT0gUmVkdXhEZXZ0b29sc0FjdGlvblR5cGUuQWN0aW9uXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5fbmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgdGhpcy5kaXNwYXRjaGVkKGFjdGlvbik7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -1,8 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- export { NgxsReduxDevtoolsPluginModule } from './devtools.module';
6
- export { NgxsReduxDevtoolsPlugin } from './devtools.plugin';
7
- export { NGXS_DEVTOOLS_OPTIONS } from './symbols';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3hzL2RldnRvb2xzLXBsdWdpbi8iLCJzb3VyY2VzIjpbInNyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM1RCxzQ0FBYyxXQUFXLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBOZ3hzUmVkdXhEZXZ0b29sc1BsdWdpbk1vZHVsZSB9IGZyb20gJy4vZGV2dG9vbHMubW9kdWxlJztcbmV4cG9ydCB7IE5neHNSZWR1eERldnRvb2xzUGx1Z2luIH0gZnJvbSAnLi9kZXZ0b29scy5wbHVnaW4nO1xuZXhwb3J0ICogZnJvbSAnLi9zeW1ib2xzJztcbiJdfQ==
@@ -1,78 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- import { InjectionToken } from '@angular/core';
6
- /**
7
- * Interface for the redux-devtools-extension API.
8
- * @record
9
- */
10
- export function NgxsDevtoolsExtension() { }
11
- if (false) {
12
- /**
13
- * @param {?} state
14
- * @return {?}
15
- */
16
- NgxsDevtoolsExtension.prototype.init = function (state) { };
17
- /**
18
- * @param {?} action
19
- * @param {?=} state
20
- * @return {?}
21
- */
22
- NgxsDevtoolsExtension.prototype.send = function (action, state) { };
23
- /**
24
- * @param {?} fn
25
- * @return {?}
26
- */
27
- NgxsDevtoolsExtension.prototype.subscribe = function (fn) { };
28
- }
29
- /**
30
- * @record
31
- */
32
- export function NgxsDevtoolsAction() { }
33
- if (false) {
34
- /** @type {?} */
35
- NgxsDevtoolsAction.prototype.type;
36
- /** @type {?} */
37
- NgxsDevtoolsAction.prototype.payload;
38
- /** @type {?} */
39
- NgxsDevtoolsAction.prototype.state;
40
- /** @type {?} */
41
- NgxsDevtoolsAction.prototype.id;
42
- /** @type {?} */
43
- NgxsDevtoolsAction.prototype.source;
44
- }
45
- /**
46
- * @record
47
- */
48
- export function NgxsDevtoolsOptions() { }
49
- if (false) {
50
- /**
51
- * The name of the extension
52
- * @type {?|undefined}
53
- */
54
- NgxsDevtoolsOptions.prototype.name;
55
- /**
56
- * Whether the dev tools is enabled or note. Useful for setting during production.
57
- * @type {?|undefined}
58
- */
59
- NgxsDevtoolsOptions.prototype.disabled;
60
- /**
61
- * Max number of entiries to keep.
62
- * @type {?|undefined}
63
- */
64
- NgxsDevtoolsOptions.prototype.maxAge;
65
- /**
66
- * Reformat actions before sending to dev tools
67
- * @type {?|undefined}
68
- */
69
- NgxsDevtoolsOptions.prototype.actionSanitizer;
70
- /**
71
- * Reformat state before sending to devtools
72
- * @type {?|undefined}
73
- */
74
- NgxsDevtoolsOptions.prototype.stateSanitizer;
75
- }
76
- /** @type {?} */
77
- export var NGXS_DEVTOOLS_OPTIONS = new InjectionToken('NGXS_DEVTOOLS_OPTIONS');
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ltYm9scy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3hzL2RldnRvb2xzLXBsdWdpbi8iLCJzb3VyY2VzIjpbInNyYy9zeW1ib2xzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7OztBQUsvQywyQ0FJQzs7Ozs7O0lBSEMsNERBQXVCOzs7Ozs7SUFDdkIsb0VBQXFDOzs7OztJQUNyQyw4REFBbUU7Ozs7O0FBR3JFLHdDQU1DOzs7SUFMQyxrQ0FBYTs7SUFDYixxQ0FBYTs7SUFDYixtQ0FBVzs7SUFDWCxnQ0FBVzs7SUFDWCxvQ0FBZTs7Ozs7QUFHakIseUNBeUJDOzs7Ozs7SUFyQkMsbUNBQWM7Ozs7O0lBS2QsdUNBQW1COzs7OztJQUtuQixxQ0FBZ0I7Ozs7O0lBS2hCLDhDQUF3Qzs7Ozs7SUFLeEMsNkNBQXNDOzs7QUFHeEMsTUFBTSxLQUFPLHFCQUFxQixHQUFHLElBQUksY0FBYyxDQUFDLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBJbnRlcmZhY2UgZm9yIHRoZSByZWR1eC1kZXZ0b29scy1leHRlbnNpb24gQVBJLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5neHNEZXZ0b29sc0V4dGVuc2lvbiB7XG4gIGluaXQoc3RhdGU6IGFueSk6IHZvaWQ7XG4gIHNlbmQoYWN0aW9uOiBhbnksIHN0YXRlPzogYW55KTogdm9pZDtcbiAgc3Vic2NyaWJlKGZuOiAobWVzc2FnZTogTmd4c0RldnRvb2xzQWN0aW9uKSA9PiB2b2lkKTogVm9pZEZ1bmN0aW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5neHNEZXZ0b29sc0FjdGlvbiB7XG4gIHR5cGU6IHN0cmluZztcbiAgcGF5bG9hZDogYW55O1xuICBzdGF0ZTogYW55O1xuICBpZDogbnVtYmVyO1xuICBzb3VyY2U6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOZ3hzRGV2dG9vbHNPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBleHRlbnNpb25cbiAgICovXG4gIG5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGRldiB0b29scyBpcyBlbmFibGVkIG9yIG5vdGUuIFVzZWZ1bCBmb3Igc2V0dGluZyBkdXJpbmcgcHJvZHVjdGlvbi5cbiAgICovXG4gIGRpc2FibGVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogTWF4IG51bWJlciBvZiBlbnRpcmllcyB0byBrZWVwLlxuICAgKi9cbiAgbWF4QWdlPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBSZWZvcm1hdCBhY3Rpb25zIGJlZm9yZSBzZW5kaW5nIHRvIGRldiB0b29sc1xuICAgKi9cbiAgYWN0aW9uU2FuaXRpemVyPzogKGFjdGlvbjogYW55KSA9PiB2b2lkO1xuXG4gIC8qKlxuICAgKiBSZWZvcm1hdCBzdGF0ZSBiZWZvcmUgc2VuZGluZyB0byBkZXZ0b29sc1xuICAgKi9cbiAgc3RhdGVTYW5pdGl6ZXI/OiAoc3RhdGU6IGFueSkgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGNvbnN0IE5HWFNfREVWVE9PTFNfT1BUSU9OUyA9IG5ldyBJbmplY3Rpb25Ub2tlbignTkdYU19ERVZUT09MU19PUFRJT05TJyk7XG4iXX0=