@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/bundles/ngxs-devtools-plugin.umd.js +69 -488
- package/bundles/ngxs-devtools-plugin.umd.js.map +1 -1
- package/esm2015/index.js +2 -6
- package/esm2015/ngxs-devtools-plugin.js +2 -7
- package/esm2015/src/devtools.module.js +8 -17
- package/esm2015/src/devtools.plugin.js +23 -129
- package/esm2015/src/public_api.js +2 -6
- package/esm2015/src/symbols.js +1 -76
- package/fesm2015/ngxs-devtools-plugin.js +32 -230
- package/fesm2015/ngxs-devtools-plugin.js.map +1 -1
- package/ngxs-devtools-plugin.d.ts +1 -1
- package/package.json +5 -8
- package/src/devtools.module.d.ts +11 -1
- package/src/devtools.plugin.d.ts +4 -1
- package/src/symbols.d.ts +32 -1
- package/bundles/ngxs-devtools-plugin.umd.min.js +0 -16
- package/bundles/ngxs-devtools-plugin.umd.min.js.map +0 -1
- package/esm5/index.js +0 -9
- package/esm5/ngxs-devtools-plugin.js +0 -10
- package/esm5/src/devtools.module.js +0 -57
- package/esm5/src/devtools.plugin.js +0 -271
- package/esm5/src/public_api.js +0 -8
- package/esm5/src/symbols.js +0 -78
- package/fesm5/ngxs-devtools-plugin.js +0 -415
- package/fesm5/ngxs-devtools-plugin.js.map +0 -1
- package/ngxs-devtools-plugin.metadata.json +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngxs-devtools-plugin.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@ngxs/devtools-plugin/src/symbols.ts","ng://@ngxs/devtools-plugin/src/devtools.plugin.ts","ng://@ngxs/devtools-plugin/src/devtools.module.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { InjectionToken } from '@angular/core';\n\n/**\n * Interface for the redux-devtools-extension API.\n */\nexport interface NgxsDevtoolsExtension {\n init(state: any): void;\n send(action: any, state?: any): void;\n subscribe(fn: (message: NgxsDevtoolsAction) => void): VoidFunction;\n}\n\nexport interface NgxsDevtoolsAction {\n type: string;\n payload: any;\n state: any;\n id: number;\n source: string;\n}\n\nexport interface NgxsDevtoolsOptions {\n /**\n * The name of the extension\n */\n name?: string;\n\n /**\n * Whether the dev tools is enabled or note. Useful for setting during production.\n */\n disabled?: boolean;\n\n /**\n * Max number of entiries to keep.\n */\n maxAge?: number;\n\n /**\n * Reformat actions before sending to dev tools\n */\n actionSanitizer?: (action: any) => void;\n\n /**\n * Reformat state before sending to devtools\n */\n stateSanitizer?: (state: any) => void;\n}\n\nexport const NGXS_DEVTOOLS_OPTIONS = new InjectionToken('NGXS_DEVTOOLS_OPTIONS');\n","import { Inject, Injectable, Injector, NgZone, OnDestroy, ɵglobal } from '@angular/core';\nimport { getActionTypeFromInstance, NgxsNextPluginFn, NgxsPlugin, Store } from '@ngxs/store';\nimport { tap, catchError } from 'rxjs/operators';\n\nimport {\n NGXS_DEVTOOLS_OPTIONS,\n NgxsDevtoolsAction,\n NgxsDevtoolsExtension,\n NgxsDevtoolsOptions\n} from './symbols';\n\nconst enum ReduxDevtoolsActionType {\n Dispatch = 'DISPATCH',\n Action = 'ACTION'\n}\n\nconst enum ReduxDevtoolsPayloadType {\n JumpToAction = 'JUMP_TO_ACTION',\n JumpToState = 'JUMP_TO_STATE',\n ToggleAction = 'TOGGLE_ACTION',\n ImportState = 'IMPORT_STATE'\n}\n\n/**\n * Adds support for the Redux Devtools extension:\n * http://extension.remotedev.io/\n */\n@Injectable()\nexport class NgxsReduxDevtoolsPlugin implements OnDestroy, NgxsPlugin {\n private devtoolsExtension: NgxsDevtoolsExtension | null = null;\n private readonly globalDevtools =\n ɵglobal['__REDUX_DEVTOOLS_EXTENSION__'] || ɵglobal['devToolsExtension'];\n\n private unsubscribe: VoidFunction | null = null;\n\n constructor(\n @Inject(NGXS_DEVTOOLS_OPTIONS) private _options: NgxsDevtoolsOptions,\n private _injector: Injector,\n private _ngZone: NgZone\n ) {\n this.connect();\n }\n\n ngOnDestroy(): void {\n if (this.unsubscribe !== null) {\n this.unsubscribe();\n }\n if (this.globalDevtools) {\n this.globalDevtools.disconnect();\n }\n }\n\n /**\n * Lazy get the store for circular dependency issues\n */\n private get store(): Store {\n return this._injector.get<Store>(Store);\n }\n\n /**\n * Middleware handle function\n */\n handle(state: any, action: any, next: NgxsNextPluginFn) {\n if (!this.devtoolsExtension || this._options.disabled) {\n return next(state, action);\n }\n\n return next(state, action).pipe(\n catchError(error => {\n const newState = this.store.snapshot();\n this.sendToDevTools(state, action, newState);\n throw error;\n }),\n tap(newState => {\n this.sendToDevTools(state, action, newState);\n })\n );\n }\n\n private sendToDevTools(state: any, action: any, newState: any) {\n const type = getActionTypeFromInstance(action);\n // if init action, send initial state to dev tools\n const isInitAction = type === '@@INIT';\n if (isInitAction) {\n this.devtoolsExtension!.init(state);\n } else {\n this.devtoolsExtension!.send({ ...action, action: null, type }, newState);\n }\n }\n\n /**\n * Handle the action from the dev tools subscription\n */\n dispatched(action: NgxsDevtoolsAction) {\n if (action.type === ReduxDevtoolsActionType.Dispatch) {\n if (\n action.payload.type === ReduxDevtoolsPayloadType.JumpToAction ||\n action.payload.type === ReduxDevtoolsPayloadType.JumpToState\n ) {\n const prevState = JSON.parse(action.state);\n // This makes the DevTools and Router plugins friends with each other.\n // We're checking for the `router` state to exist, and it also should\n // have the `trigger` property, so we're sure that this is our router\n // state (coming from `@ngxs/router-plugin`). This enables a time-traveling\n // feature since it doesn't only restore the state but also allows the `RouterState`\n // to navigate back when the action is jumped.\n if (prevState.router && prevState.router.trigger) {\n prevState.router.trigger = 'devtools';\n }\n this.store.reset(prevState);\n } else if (action.payload.type === ReduxDevtoolsPayloadType.ToggleAction) {\n console.warn('Skip is not supported at this time.');\n } else if (action.payload.type === ReduxDevtoolsPayloadType.ImportState) {\n const {\n actionsById,\n computedStates,\n currentStateIndex\n } = action.payload.nextLiftedState;\n this.devtoolsExtension!.init(computedStates[0].state);\n Object.keys(actionsById)\n .filter(actionId => actionId !== '0')\n .forEach(actionId =>\n this.devtoolsExtension!.send(actionsById[actionId], computedStates[actionId].state)\n );\n this.store.reset(computedStates[currentStateIndex].state);\n }\n } else if (action.type === ReduxDevtoolsActionType.Action) {\n const actionPayload = JSON.parse(action.payload);\n this.store.dispatch(actionPayload);\n }\n }\n\n private connect(): void {\n if (!this.globalDevtools || this._options.disabled) {\n return;\n }\n\n // The `connect` method adds `message` event listener since it communicates\n // with an extension through `window.postMessage` and message events.\n // We handle only 2 events; thus, we don't want to run many change detections\n // because the extension sends events that we don't have to handle.\n this.devtoolsExtension = this._ngZone.runOutsideAngular(\n () => <NgxsDevtoolsExtension>this.globalDevtools.connect(this._options)\n );\n\n this.unsubscribe = this.devtoolsExtension.subscribe(action => {\n if (\n action.type === ReduxDevtoolsActionType.Dispatch ||\n action.type === ReduxDevtoolsActionType.Action\n ) {\n this._ngZone.run(() => {\n this.dispatched(action);\n });\n }\n });\n }\n}\n","import { NgModule, ModuleWithProviders, InjectionToken } from '@angular/core';\nimport { NGXS_PLUGINS } from '@ngxs/store';\n\nimport { NgxsDevtoolsOptions, NGXS_DEVTOOLS_OPTIONS } from './symbols';\nimport { NgxsReduxDevtoolsPlugin } from './devtools.plugin';\n\nexport function devtoolsOptionsFactory(options: NgxsDevtoolsOptions) {\n return {\n name: 'NGXS',\n ...options\n };\n}\n\nexport const USER_OPTIONS = new InjectionToken('USER_OPTIONS');\n\n@NgModule()\nexport class NgxsReduxDevtoolsPluginModule {\n static forRoot(\n options?: NgxsDevtoolsOptions\n ): ModuleWithProviders<NgxsReduxDevtoolsPluginModule> {\n return {\n ngModule: NgxsReduxDevtoolsPluginModule,\n providers: [\n {\n provide: NGXS_PLUGINS,\n useClass: NgxsReduxDevtoolsPlugin,\n multi: true\n },\n {\n provide: USER_OPTIONS,\n useValue: options\n },\n {\n provide: NGXS_DEVTOOLS_OPTIONS,\n useFactory: devtoolsOptionsFactory,\n deps: [USER_OPTIONS]\n }\n ]\n };\n }\n}\n"],"names":["InjectionToken","ɵglobal","Store","catchError","tap","getActionTypeFromInstance","Injectable","Inject","Injector","NgZone","NGXS_PLUGINS","NgModule"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ngxs-devtools-plugin.umd.js","sources":["../../../packages/devtools-plugin/src/symbols.ts","../../../packages/devtools-plugin/src/devtools.plugin.ts","../../../packages/devtools-plugin/src/devtools.module.ts","../../../packages/devtools-plugin/index.ts","../../../packages/devtools-plugin/ngxs-devtools-plugin.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\n/**\n * Interface for the redux-devtools-extension API.\n */\nexport interface NgxsDevtoolsExtension {\n init(state: any): void;\n send(action: any, state?: any): void;\n subscribe(fn: (message: NgxsDevtoolsAction) => void): VoidFunction;\n}\n\nexport interface NgxsDevtoolsAction {\n type: string;\n payload: any;\n state: any;\n id: number;\n source: string;\n}\n\nexport interface NgxsDevtoolsOptions {\n /**\n * The name of the extension\n */\n name?: string;\n\n /**\n * Whether the dev tools is enabled or note. Useful for setting during production.\n */\n disabled?: boolean;\n\n /**\n * Max number of entiries to keep.\n */\n maxAge?: number;\n\n /**\n * If more than one action is dispatched in the indicated interval, all new actions will be collected\n * and sent at once. It is the joint between performance and speed. When set to 0, all actions will be\n * sent instantly. Set it to a higher value when experiencing perf issues (also maxAge to a lower value).\n * Default is 500 ms.\n */\n latency?: number;\n\n /**\n * string or array of strings as regex - actions types to be hidden in the monitors (while passed to the reducers).\n * If actionsWhitelist specified, actionsBlacklist is ignored.\n */\n actionsBlacklist?: string | string[];\n\n /**\n * string or array of strings as regex - actions types to be shown in the monitors (while passed to the reducers).\n * If actionsWhitelist specified, actionsBlacklist is ignored.\n */\n actionsWhitelist?: string | string[];\n\n /**\n * called for every action before sending, takes state and action object, and returns true in case it allows\n * sending the current data to the monitor. Use it as a more advanced version of\n * actionsBlacklist/actionsWhitelist parameters\n */\n predicate?: (state: any, action: any) => boolean;\n\n /**\n * Reformat actions before sending to dev tools\n */\n actionSanitizer?: (action: any) => void;\n\n /**\n * Reformat state before sending to devtools\n */\n stateSanitizer?: (state: any) => void;\n\n /**\n * If set to true, will include stack trace for every dispatched action\n */\n trace?: boolean | (() => string);\n\n /**\n * Maximum stack trace frames to be stored (in case trace option was provided as true)\n */\n traceLimit?: number;\n}\n\nexport const NGXS_DEVTOOLS_OPTIONS = new InjectionToken('NGXS_DEVTOOLS_OPTIONS');\n","import { Inject, Injectable, Injector, NgZone, OnDestroy, ɵglobal } from '@angular/core';\nimport { getActionTypeFromInstance, NgxsNextPluginFn, NgxsPlugin, Store } from '@ngxs/store';\nimport { tap, catchError } from 'rxjs/operators';\n\nimport {\n NGXS_DEVTOOLS_OPTIONS,\n NgxsDevtoolsAction,\n NgxsDevtoolsExtension,\n NgxsDevtoolsOptions\n} from './symbols';\n\nconst enum ReduxDevtoolsActionType {\n Dispatch = 'DISPATCH',\n Action = 'ACTION'\n}\n\nconst enum ReduxDevtoolsPayloadType {\n JumpToAction = 'JUMP_TO_ACTION',\n JumpToState = 'JUMP_TO_STATE',\n ToggleAction = 'TOGGLE_ACTION',\n ImportState = 'IMPORT_STATE'\n}\n\n/**\n * Adds support for the Redux Devtools extension:\n * http://extension.remotedev.io/\n */\n@Injectable()\nexport class NgxsReduxDevtoolsPlugin implements OnDestroy, NgxsPlugin {\n private devtoolsExtension: NgxsDevtoolsExtension | null = null;\n private readonly globalDevtools =\n ɵglobal['__REDUX_DEVTOOLS_EXTENSION__'] || ɵglobal['devToolsExtension'];\n\n private unsubscribe: VoidFunction | null = null;\n\n constructor(\n @Inject(NGXS_DEVTOOLS_OPTIONS) private _options: NgxsDevtoolsOptions,\n private _injector: Injector,\n private _ngZone: NgZone\n ) {\n this.connect();\n }\n\n ngOnDestroy(): void {\n if (this.unsubscribe !== null) {\n this.unsubscribe();\n }\n if (this.globalDevtools) {\n this.globalDevtools.disconnect();\n }\n }\n\n /**\n * Lazy get the store for circular dependency issues\n */\n private get store(): Store {\n return this._injector.get<Store>(Store);\n }\n\n /**\n * Middleware handle function\n */\n handle(state: any, action: any, next: NgxsNextPluginFn) {\n if (!this.devtoolsExtension || this._options.disabled) {\n return next(state, action);\n }\n\n return next(state, action).pipe(\n catchError(error => {\n const newState = this.store.snapshot();\n this.sendToDevTools(state, action, newState);\n throw error;\n }),\n tap(newState => {\n this.sendToDevTools(state, action, newState);\n })\n );\n }\n\n private sendToDevTools(state: any, action: any, newState: any) {\n const type = getActionTypeFromInstance(action);\n // if init action, send initial state to dev tools\n const isInitAction = type === '@@INIT';\n if (isInitAction) {\n this.devtoolsExtension!.init(state);\n } else {\n this.devtoolsExtension!.send({ ...action, action: null, type }, newState);\n }\n }\n\n /**\n * Handle the action from the dev tools subscription\n */\n dispatched(action: NgxsDevtoolsAction) {\n if (action.type === ReduxDevtoolsActionType.Dispatch) {\n if (\n action.payload.type === ReduxDevtoolsPayloadType.JumpToAction ||\n action.payload.type === ReduxDevtoolsPayloadType.JumpToState\n ) {\n const prevState = JSON.parse(action.state);\n // This makes the DevTools and Router plugins friends with each other.\n // We're checking for the `router` state to exist, and it also should\n // have the `trigger` property, so we're sure that this is our router\n // state (coming from `@ngxs/router-plugin`). This enables a time-traveling\n // feature since it doesn't only restore the state but also allows the `RouterState`\n // to navigate back when the action is jumped.\n if (prevState.router && prevState.router.trigger) {\n prevState.router.trigger = 'devtools';\n }\n this.store.reset(prevState);\n } else if (action.payload.type === ReduxDevtoolsPayloadType.ToggleAction) {\n console.warn('Skip is not supported at this time.');\n } else if (action.payload.type === ReduxDevtoolsPayloadType.ImportState) {\n const {\n actionsById,\n computedStates,\n currentStateIndex\n } = action.payload.nextLiftedState;\n this.devtoolsExtension!.init(computedStates[0].state);\n Object.keys(actionsById)\n .filter(actionId => actionId !== '0')\n .forEach(actionId =>\n this.devtoolsExtension!.send(actionsById[actionId], computedStates[actionId].state)\n );\n this.store.reset(computedStates[currentStateIndex].state);\n }\n } else if (action.type === ReduxDevtoolsActionType.Action) {\n const actionPayload = JSON.parse(action.payload);\n this.store.dispatch(actionPayload);\n }\n }\n\n private connect(): void {\n if (!this.globalDevtools || this._options.disabled) {\n return;\n }\n\n // The `connect` method adds `message` event listener since it communicates\n // with an extension through `window.postMessage` and message events.\n // We handle only 2 events; thus, we don't want to run many change detections\n // because the extension sends events that we don't have to handle.\n this.devtoolsExtension = this._ngZone.runOutsideAngular(\n () => <NgxsDevtoolsExtension>this.globalDevtools.connect(this._options)\n );\n\n this.unsubscribe = this.devtoolsExtension.subscribe(action => {\n if (\n action.type === ReduxDevtoolsActionType.Dispatch ||\n action.type === ReduxDevtoolsActionType.Action\n ) {\n this._ngZone.run(() => {\n this.dispatched(action);\n });\n }\n });\n }\n}\n","import { NgModule, ModuleWithProviders, InjectionToken } from '@angular/core';\nimport { NGXS_PLUGINS } from '@ngxs/store';\n\nimport { NgxsDevtoolsOptions, NGXS_DEVTOOLS_OPTIONS } from './symbols';\nimport { NgxsReduxDevtoolsPlugin } from './devtools.plugin';\n\nexport function devtoolsOptionsFactory(options: NgxsDevtoolsOptions) {\n return {\n name: 'NGXS',\n ...options\n };\n}\n\nexport const USER_OPTIONS = new InjectionToken('USER_OPTIONS');\n\n@NgModule()\nexport class NgxsReduxDevtoolsPluginModule {\n static forRoot(\n options?: NgxsDevtoolsOptions\n ): ModuleWithProviders<NgxsReduxDevtoolsPluginModule> {\n return {\n ngModule: NgxsReduxDevtoolsPluginModule,\n providers: [\n {\n provide: NGXS_PLUGINS,\n useClass: NgxsReduxDevtoolsPlugin,\n multi: true\n },\n {\n provide: USER_OPTIONS,\n useValue: options\n },\n {\n provide: NGXS_DEVTOOLS_OPTIONS,\n useFactory: devtoolsOptionsFactory,\n deps: [USER_OPTIONS]\n }\n ]\n };\n }\n}\n","/**\n * The public api for consumers of @ngxs/devtools-plugin\n */\nexport * from './src/public_api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["InjectionToken","ɵglobal","Store","catchError","tap","getActionTypeFromInstance","i0","Injectable","Inject","NGXS_PLUGINS","NgModule"],"mappings":"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"}
|
package/esm2015/index.js
CHANGED
|
@@ -1,9 +1,5 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
1
|
/**
|
|
6
2
|
* The public api for consumers of @ngxs/devtools-plugin
|
|
7
3
|
*/
|
|
8
|
-
export
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
4
|
+
export * from './src/public_api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wYWNrYWdlcy9kZXZ0b29scy1wbHVnaW4vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBUaGUgcHVibGljIGFwaSBmb3IgY29uc3VtZXJzIG9mIEBuZ3hzL2RldnRvb2xzLXBsdWdpblxuICovXG5leHBvcnQgKiBmcm9tICcuL3NyYy9wdWJsaWNfYXBpJztcbiJdfQ==
|
|
@@ -1,10 +1,5 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
1
|
/**
|
|
6
2
|
* Generated bundle index. Do not edit.
|
|
7
3
|
*/
|
|
8
|
-
export
|
|
9
|
-
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4cy1kZXZ0b29scy1wbHVnaW4uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Abmd4cy9kZXZ0b29scy1wbHVnaW4vIiwic291cmNlcyI6WyJuZ3hzLWRldnRvb2xzLXBsdWdpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsOEZBQWMsU0FBUyxDQUFDO0FBRXhCLE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLHNCQUFzQixJQUFJLEVBQUUsRUFBQyxNQUFNLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcblxuZXhwb3J0IHtVU0VSX09QVElPTlMgYXMgybViLGRldnRvb2xzT3B0aW9uc0ZhY3RvcnkgYXMgybVhfSBmcm9tICcuL3NyYy9kZXZ0b29scy5tb2R1bGUnOyJdfQ==
|
|
4
|
+
export * from './index';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4cy1kZXZ0b29scy1wbHVnaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wYWNrYWdlcy9kZXZ0b29scy1wbHVnaW4vbmd4cy1kZXZ0b29scy1wbHVnaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0=
|
|
@@ -1,25 +1,13 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
1
|
import { NgModule, InjectionToken } from '@angular/core';
|
|
6
2
|
import { NGXS_PLUGINS } from '@ngxs/store';
|
|
7
3
|
import { NGXS_DEVTOOLS_OPTIONS } from './symbols';
|
|
8
4
|
import { NgxsReduxDevtoolsPlugin } from './devtools.plugin';
|
|
9
|
-
|
|
10
|
-
* @param {?} options
|
|
11
|
-
* @return {?}
|
|
12
|
-
*/
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
13
6
|
export function devtoolsOptionsFactory(options) {
|
|
14
7
|
return Object.assign({ name: 'NGXS' }, options);
|
|
15
8
|
}
|
|
16
|
-
/** @type {?} */
|
|
17
9
|
export const USER_OPTIONS = new InjectionToken('USER_OPTIONS');
|
|
18
10
|
export class NgxsReduxDevtoolsPluginModule {
|
|
19
|
-
/**
|
|
20
|
-
* @param {?=} options
|
|
21
|
-
* @return {?}
|
|
22
|
-
*/
|
|
23
11
|
static forRoot(options) {
|
|
24
12
|
return {
|
|
25
13
|
ngModule: NgxsReduxDevtoolsPluginModule,
|
|
@@ -42,7 +30,10 @@ export class NgxsReduxDevtoolsPluginModule {
|
|
|
42
30
|
};
|
|
43
31
|
}
|
|
44
32
|
}
|
|
45
|
-
NgxsReduxDevtoolsPluginModule
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
33
|
+
/** @nocollapse */ NgxsReduxDevtoolsPluginModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsReduxDevtoolsPluginModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
34
|
+
/** @nocollapse */ NgxsReduxDevtoolsPluginModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsReduxDevtoolsPluginModule });
|
|
35
|
+
/** @nocollapse */ NgxsReduxDevtoolsPluginModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsReduxDevtoolsPluginModule });
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsReduxDevtoolsPluginModule, decorators: [{
|
|
37
|
+
type: NgModule
|
|
38
|
+
}] });
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2dG9vbHMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvZGV2dG9vbHMtcGx1Z2luL3NyYy9kZXZ0b29scy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBdUIsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFM0MsT0FBTyxFQUF1QixxQkFBcUIsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN2RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUFFNUQsTUFBTSxVQUFVLHNCQUFzQixDQUFDLE9BQTRCO0lBQ2pFLHVCQUNFLElBQUksRUFBRSxNQUFNLElBQ1QsT0FBTyxFQUNWO0FBQ0osQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxJQUFJLGNBQWMsQ0FBQyxjQUFjLENBQUMsQ0FBQztBQUcvRCxNQUFNLE9BQU8sNkJBQTZCO0lBQ3hDLE1BQU0sQ0FBQyxPQUFPLENBQ1osT0FBNkI7UUFFN0IsT0FBTztZQUNMLFFBQVEsRUFBRSw2QkFBNkI7WUFDdkMsU0FBUyxFQUFFO2dCQUNUO29CQUNFLE9BQU8sRUFBRSxZQUFZO29CQUNyQixRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxLQUFLLEVBQUUsSUFBSTtpQkFDWjtnQkFDRDtvQkFDRSxPQUFPLEVBQUUsWUFBWTtvQkFDckIsUUFBUSxFQUFFLE9BQU87aUJBQ2xCO2dCQUNEO29CQUNFLE9BQU8sRUFBRSxxQkFBcUI7b0JBQzlCLFVBQVUsRUFBRSxzQkFBc0I7b0JBQ2xDLElBQUksRUFBRSxDQUFDLFlBQVksQ0FBQztpQkFDckI7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDOzs4SUF2QlUsNkJBQTZCOytJQUE3Qiw2QkFBNkI7K0lBQTdCLDZCQUE2Qjs0RkFBN0IsNkJBQTZCO2tCQUR6QyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUsIE1vZHVsZVdpdGhQcm92aWRlcnMsIEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR1hTX1BMVUdJTlMgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5cbmltcG9ydCB7IE5neHNEZXZ0b29sc09wdGlvbnMsIE5HWFNfREVWVE9PTFNfT1BUSU9OUyB9IGZyb20gJy4vc3ltYm9scyc7XG5pbXBvcnQgeyBOZ3hzUmVkdXhEZXZ0b29sc1BsdWdpbiB9IGZyb20gJy4vZGV2dG9vbHMucGx1Z2luJztcblxuZXhwb3J0IGZ1bmN0aW9uIGRldnRvb2xzT3B0aW9uc0ZhY3Rvcnkob3B0aW9uczogTmd4c0RldnRvb2xzT3B0aW9ucykge1xuICByZXR1cm4ge1xuICAgIG5hbWU6ICdOR1hTJyxcbiAgICAuLi5vcHRpb25zXG4gIH07XG59XG5cbmV4cG9ydCBjb25zdCBVU0VSX09QVElPTlMgPSBuZXcgSW5qZWN0aW9uVG9rZW4oJ1VTRVJfT1BUSU9OUycpO1xuXG5ATmdNb2R1bGUoKVxuZXhwb3J0IGNsYXNzIE5neHNSZWR1eERldnRvb2xzUGx1Z2luTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoXG4gICAgb3B0aW9ucz86IE5neHNEZXZ0b29sc09wdGlvbnNcbiAgKTogTW9kdWxlV2l0aFByb3ZpZGVyczxOZ3hzUmVkdXhEZXZ0b29sc1BsdWdpbk1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogTmd4c1JlZHV4RGV2dG9vbHNQbHVnaW5Nb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IE5HWFNfUExVR0lOUyxcbiAgICAgICAgICB1c2VDbGFzczogTmd4c1JlZHV4RGV2dG9vbHNQbHVnaW4sXG4gICAgICAgICAgbXVsdGk6IHRydWVcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IFVTRVJfT1BUSU9OUyxcbiAgICAgICAgICB1c2VWYWx1ZTogb3B0aW9uc1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogTkdYU19ERVZUT09MU19PUFRJT05TLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IGRldnRvb2xzT3B0aW9uc0ZhY3RvcnksXG4gICAgICAgICAgZGVwczogW1VTRVJfT1BUSU9OU11cbiAgICAgICAgfVxuICAgICAgXVxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,33 +1,13 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
1
|
import { Inject, Injectable, Injector, NgZone, ɵglobal } from '@angular/core';
|
|
6
2
|
import { getActionTypeFromInstance, Store } from '@ngxs/store';
|
|
7
3
|
import { tap, catchError } from 'rxjs/operators';
|
|
8
4
|
import { NGXS_DEVTOOLS_OPTIONS } from './symbols';
|
|
9
|
-
|
|
10
|
-
const ReduxDevtoolsActionType = {
|
|
11
|
-
Dispatch: 'DISPATCH',
|
|
12
|
-
Action: 'ACTION',
|
|
13
|
-
};
|
|
14
|
-
/** @enum {string} */
|
|
15
|
-
const ReduxDevtoolsPayloadType = {
|
|
16
|
-
JumpToAction: 'JUMP_TO_ACTION',
|
|
17
|
-
JumpToState: 'JUMP_TO_STATE',
|
|
18
|
-
ToggleAction: 'TOGGLE_ACTION',
|
|
19
|
-
ImportState: 'IMPORT_STATE',
|
|
20
|
-
};
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
21
6
|
/**
|
|
22
7
|
* Adds support for the Redux Devtools extension:
|
|
23
8
|
* http://extension.remotedev.io/
|
|
24
9
|
*/
|
|
25
10
|
export class NgxsReduxDevtoolsPlugin {
|
|
26
|
-
/**
|
|
27
|
-
* @param {?} _options
|
|
28
|
-
* @param {?} _injector
|
|
29
|
-
* @param {?} _ngZone
|
|
30
|
-
*/
|
|
31
11
|
constructor(_options, _injector, _ngZone) {
|
|
32
12
|
this._options = _options;
|
|
33
13
|
this._injector = _injector;
|
|
@@ -37,9 +17,6 @@ export class NgxsReduxDevtoolsPlugin {
|
|
|
37
17
|
this.unsubscribe = null;
|
|
38
18
|
this.connect();
|
|
39
19
|
}
|
|
40
|
-
/**
|
|
41
|
-
* @return {?}
|
|
42
|
-
*/
|
|
43
20
|
ngOnDestroy() {
|
|
44
21
|
if (this.unsubscribe !== null) {
|
|
45
22
|
this.unsubscribe();
|
|
@@ -50,70 +27,43 @@ export class NgxsReduxDevtoolsPlugin {
|
|
|
50
27
|
}
|
|
51
28
|
/**
|
|
52
29
|
* Lazy get the store for circular dependency issues
|
|
53
|
-
* @private
|
|
54
|
-
* @return {?}
|
|
55
30
|
*/
|
|
56
31
|
get store() {
|
|
57
32
|
return this._injector.get(Store);
|
|
58
33
|
}
|
|
59
34
|
/**
|
|
60
35
|
* Middleware handle function
|
|
61
|
-
* @param {?} state
|
|
62
|
-
* @param {?} action
|
|
63
|
-
* @param {?} next
|
|
64
|
-
* @return {?}
|
|
65
36
|
*/
|
|
66
37
|
handle(state, action, next) {
|
|
67
38
|
if (!this.devtoolsExtension || this._options.disabled) {
|
|
68
39
|
return next(state, action);
|
|
69
40
|
}
|
|
70
|
-
return next(state, action).pipe(catchError(
|
|
71
|
-
* @param {?} error
|
|
72
|
-
* @return {?}
|
|
73
|
-
*/
|
|
74
|
-
error => {
|
|
75
|
-
/** @type {?} */
|
|
41
|
+
return next(state, action).pipe(catchError(error => {
|
|
76
42
|
const newState = this.store.snapshot();
|
|
77
43
|
this.sendToDevTools(state, action, newState);
|
|
78
44
|
throw error;
|
|
79
|
-
})
|
|
80
|
-
* @param {?} newState
|
|
81
|
-
* @return {?}
|
|
82
|
-
*/
|
|
83
|
-
newState => {
|
|
45
|
+
}), tap(newState => {
|
|
84
46
|
this.sendToDevTools(state, action, newState);
|
|
85
|
-
}))
|
|
47
|
+
}));
|
|
86
48
|
}
|
|
87
|
-
/**
|
|
88
|
-
* @private
|
|
89
|
-
* @param {?} state
|
|
90
|
-
* @param {?} action
|
|
91
|
-
* @param {?} newState
|
|
92
|
-
* @return {?}
|
|
93
|
-
*/
|
|
94
49
|
sendToDevTools(state, action, newState) {
|
|
95
|
-
/** @type {?} */
|
|
96
50
|
const type = getActionTypeFromInstance(action);
|
|
97
51
|
// if init action, send initial state to dev tools
|
|
98
|
-
/** @type {?} */
|
|
99
52
|
const isInitAction = type === '@@INIT';
|
|
100
53
|
if (isInitAction) {
|
|
101
|
-
|
|
54
|
+
this.devtoolsExtension.init(state);
|
|
102
55
|
}
|
|
103
56
|
else {
|
|
104
|
-
|
|
57
|
+
this.devtoolsExtension.send(Object.assign(Object.assign({}, action), { action: null, type }), newState);
|
|
105
58
|
}
|
|
106
59
|
}
|
|
107
60
|
/**
|
|
108
61
|
* Handle the action from the dev tools subscription
|
|
109
|
-
* @param {?} action
|
|
110
|
-
* @return {?}
|
|
111
62
|
*/
|
|
112
63
|
dispatched(action) {
|
|
113
64
|
if (action.type === "DISPATCH" /* Dispatch */) {
|
|
114
65
|
if (action.payload.type === "JUMP_TO_ACTION" /* JumpToAction */ ||
|
|
115
66
|
action.payload.type === "JUMP_TO_STATE" /* JumpToState */) {
|
|
116
|
-
/** @type {?} */
|
|
117
67
|
const prevState = JSON.parse(action.state);
|
|
118
68
|
// This makes the DevTools and Router plugins friends with each other.
|
|
119
69
|
// We're checking for the `router` state to exist, and it also should
|
|
@@ -131,31 +81,18 @@ export class NgxsReduxDevtoolsPlugin {
|
|
|
131
81
|
}
|
|
132
82
|
else if (action.payload.type === "IMPORT_STATE" /* ImportState */) {
|
|
133
83
|
const { actionsById, computedStates, currentStateIndex } = action.payload.nextLiftedState;
|
|
134
|
-
|
|
84
|
+
this.devtoolsExtension.init(computedStates[0].state);
|
|
135
85
|
Object.keys(actionsById)
|
|
136
|
-
.filter(
|
|
137
|
-
|
|
138
|
-
* @return {?}
|
|
139
|
-
*/
|
|
140
|
-
actionId => actionId !== '0'))
|
|
141
|
-
.forEach((/**
|
|
142
|
-
* @param {?} actionId
|
|
143
|
-
* @return {?}
|
|
144
|
-
*/
|
|
145
|
-
actionId => (/** @type {?} */ (this.devtoolsExtension)).send(actionsById[actionId], computedStates[actionId].state)));
|
|
86
|
+
.filter(actionId => actionId !== '0')
|
|
87
|
+
.forEach(actionId => this.devtoolsExtension.send(actionsById[actionId], computedStates[actionId].state));
|
|
146
88
|
this.store.reset(computedStates[currentStateIndex].state);
|
|
147
89
|
}
|
|
148
90
|
}
|
|
149
91
|
else if (action.type === "ACTION" /* Action */) {
|
|
150
|
-
/** @type {?} */
|
|
151
92
|
const actionPayload = JSON.parse(action.payload);
|
|
152
93
|
this.store.dispatch(actionPayload);
|
|
153
94
|
}
|
|
154
95
|
}
|
|
155
|
-
/**
|
|
156
|
-
* @private
|
|
157
|
-
* @return {?}
|
|
158
|
-
*/
|
|
159
96
|
connect() {
|
|
160
97
|
if (!this.globalDevtools || this._options.disabled) {
|
|
161
98
|
return;
|
|
@@ -164,66 +101,23 @@ export class NgxsReduxDevtoolsPlugin {
|
|
|
164
101
|
// with an extension through `window.postMessage` and message events.
|
|
165
102
|
// We handle only 2 events; thus, we don't want to run many change detections
|
|
166
103
|
// because the extension sends events that we don't have to handle.
|
|
167
|
-
this.devtoolsExtension = this._ngZone.runOutsideAngular((
|
|
168
|
-
|
|
169
|
-
*/
|
|
170
|
-
() => (/** @type {?} */ (this.globalDevtools.connect(this._options)))));
|
|
171
|
-
this.unsubscribe = this.devtoolsExtension.subscribe((/**
|
|
172
|
-
* @param {?} action
|
|
173
|
-
* @return {?}
|
|
174
|
-
*/
|
|
175
|
-
action => {
|
|
104
|
+
this.devtoolsExtension = this._ngZone.runOutsideAngular(() => this.globalDevtools.connect(this._options));
|
|
105
|
+
this.unsubscribe = this.devtoolsExtension.subscribe(action => {
|
|
176
106
|
if (action.type === "DISPATCH" /* Dispatch */ ||
|
|
177
107
|
action.type === "ACTION" /* Action */) {
|
|
178
|
-
this._ngZone.run((
|
|
179
|
-
* @return {?}
|
|
180
|
-
*/
|
|
181
|
-
() => {
|
|
108
|
+
this._ngZone.run(() => {
|
|
182
109
|
this.dispatched(action);
|
|
183
|
-
})
|
|
110
|
+
});
|
|
184
111
|
}
|
|
185
|
-
})
|
|
112
|
+
});
|
|
186
113
|
}
|
|
187
114
|
}
|
|
188
|
-
NgxsReduxDevtoolsPlugin
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
];
|
|
197
|
-
if (false) {
|
|
198
|
-
/**
|
|
199
|
-
* @type {?}
|
|
200
|
-
* @private
|
|
201
|
-
*/
|
|
202
|
-
NgxsReduxDevtoolsPlugin.prototype.devtoolsExtension;
|
|
203
|
-
/**
|
|
204
|
-
* @type {?}
|
|
205
|
-
* @private
|
|
206
|
-
*/
|
|
207
|
-
NgxsReduxDevtoolsPlugin.prototype.globalDevtools;
|
|
208
|
-
/**
|
|
209
|
-
* @type {?}
|
|
210
|
-
* @private
|
|
211
|
-
*/
|
|
212
|
-
NgxsReduxDevtoolsPlugin.prototype.unsubscribe;
|
|
213
|
-
/**
|
|
214
|
-
* @type {?}
|
|
215
|
-
* @private
|
|
216
|
-
*/
|
|
217
|
-
NgxsReduxDevtoolsPlugin.prototype._options;
|
|
218
|
-
/**
|
|
219
|
-
* @type {?}
|
|
220
|
-
* @private
|
|
221
|
-
*/
|
|
222
|
-
NgxsReduxDevtoolsPlugin.prototype._injector;
|
|
223
|
-
/**
|
|
224
|
-
* @type {?}
|
|
225
|
-
* @private
|
|
226
|
-
*/
|
|
227
|
-
NgxsReduxDevtoolsPlugin.prototype._ngZone;
|
|
228
|
-
}
|
|
229
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2dG9vbHMucGx1Z2luLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neHMvZGV2dG9vbHMtcGx1Z2luLyIsInNvdXJjZXMiOlsic3JjL2RldnRvb2xzLnBsdWdpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBYSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLHlCQUF5QixFQUFnQyxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDN0YsT0FBTyxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRCxPQUFPLEVBQ0wscUJBQXFCLEVBSXRCLE1BQU0sV0FBVyxDQUFDOzs7SUFHakIsVUFBVyxVQUFVO0lBQ3JCLFFBQVMsUUFBUTs7OztJQUlqQixjQUFlLGdCQUFnQjtJQUMvQixhQUFjLGVBQWU7SUFDN0IsY0FBZSxlQUFlO0lBQzlCLGFBQWMsY0FBYzs7Ozs7O0FBUTlCLE1BQU0sT0FBTyx1QkFBdUI7Ozs7OztJQU9sQyxZQUN5QyxRQUE2QixFQUM1RCxTQUFtQixFQUNuQixPQUFlO1FBRmdCLGFBQVEsR0FBUixRQUFRLENBQXFCO1FBQzVELGNBQVMsR0FBVCxTQUFTLENBQVU7UUFDbkIsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQVRqQixzQkFBaUIsR0FBaUMsSUFBSSxDQUFDO1FBQzlDLG1CQUFjLEdBQzdCLE9BQU8sQ0FBQyw4QkFBOEIsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBRWxFLGdCQUFXLEdBQXdCLElBQUksQ0FBQztRQU85QyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakIsQ0FBQzs7OztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxXQUFXLEtBQUssSUFBSSxFQUFFO1lBQzdCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUNwQjtRQUNE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QUFDLElBQUksOEJBQXFDO2dCQUNoRCxNQUFNLENBQUMsSUFBSSwwQkFBbUMsRUFDOUM7Z0JBQ0EsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHOzs7Z0JBQUMsR0FBRyxFQUFFO29CQUNwQixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUMxQixDQUFDLEVBQUMsQ0FBQzthQUNKO1FBQ0gsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOzs7WUFoSUYsVUFBVTs7Ozs0Q0FTTixNQUFNLFNBQUMscUJBQXFCO1lBcENKLFFBQVE7WUFBRSxNQUFNOzs7Ozs7O0lBNkIzQyxvREFBK0Q7Ozs7O0lBQy9ELGlEQUMwRTs7Ozs7SUFFMUUsOENBQWdEOzs7OztJQUc5QywyQ0FBb0U7Ozs7O0lBQ3BFLDRDQUEyQjs7Ozs7SUFDM0IsMENBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3RvciwgTmdab25lLCBPbkRlc3Ryb3ksIMm1Z2xvYmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBnZXRBY3Rpb25UeXBlRnJvbUluc3RhbmNlLCBOZ3hzTmV4dFBsdWdpbkZuLCBOZ3hzUGx1Z2luLCBTdG9yZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IHRhcCwgY2F0Y2hFcnJvciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgTkdYU19ERVZUT09MU19PUFRJT05TLFxuICBOZ3hzRGV2dG9vbHNBY3Rpb24sXG4gIE5neHNEZXZ0b29sc0V4dGVuc2lvbixcbiAgTmd4c0RldnRvb2xzT3B0aW9uc1xufSBmcm9tICcuL3N5bWJvbHMnO1xuXG5jb25zdCBlbnVtIFJlZHV4RGV2dG9vbHNBY3Rpb25UeXBlIHtcbiAgRGlzcGF0Y2ggPSAnRElTUEFUQ0gnLFxuICBBY3Rpb24gPSAnQUNUSU9OJ1xufVxuXG5jb25zdCBlbnVtIFJlZHV4RGV2dG9vbHNQYXlsb2FkVHlwZSB7XG4gIEp1bXBUb0FjdGlvbiA9ICdKVU1QX1RPX0FDVElPTicsXG4gIEp1bXBUb1N0YXRlID0gJ0pVTVBfVE9fU1RBVEUnLFxuICBUb2dnbGVBY3Rpb24gPSAnVE9HR0xFX0FDVElPTicsXG4gIEltcG9ydFN0YXRlID0gJ0lNUE9SVF9TVEFURSdcbn1cblxuLyoqXG4gKiBBZGRzIHN1cHBvcnQgZm9yIHRoZSBSZWR1eCBEZXZ0b29scyBleHRlbnNpb246XG4gKiBodHRwOi8vZXh0ZW5zaW9uLnJlbW90ZWRldi5pby9cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE5neHNSZWR1eERldnRvb2xzUGx1Z2luIGltcGxlbWVudHMgT25EZXN0cm95LCBOZ3hzUGx1Z2luIHtcbiAgcHJpdmF0ZSBkZXZ0b29sc0V4dGVuc2lvbjogTmd4c0RldnRvb2xzRXh0ZW5zaW9uIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgcmVhZG9ubHkgZ2xvYmFsRGV2dG9vbHMgPVxuICAgIMm1Z2xvYmFsWydfX1JFRFVYX0RFVlRPT0xTX0VYVEVOU0lPTl9fJ10gfHwgybVnbG9iYWxbJ2RldlRvb2xzRXh0ZW5zaW9uJ107XG5cbiAgcHJpdmF0ZSB1bnN1YnNjcmliZTogVm9pZEZ1bmN0aW9uIHwgbnVsbCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChOR1hTX0RFVlRPT0xTX09QVElPTlMpIHByaXZhdGUgX29wdGlvbnM6IE5neHNEZXZ0b29sc09wdGlvbnMsXG4gICAgcHJpdmF0ZSBfaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIHByaXZhdGUgX25nWm9uZTogTmdab25lXG4gICkge1xuICAgIHRoaXMuY29ubmVjdCgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudW5zdWJzY3JpYmUgIT09IG51bGwpIHtcbiAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuZ2xvYmFsRGV2dG9vbHMpIHtcbiAgICAgIHRoaXMuZ2xvYmFsRGV2dG9vbHMuZGlzY29ubmVjdCgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBMYXp5IGdldCB0aGUgc3RvcmUgZm9yIGNpcmN1bGFyIGRlcGVuZGVuY3kgaXNzdWVzXG4gICAqL1xuICBwcml2YXRlIGdldCBzdG9yZSgpOiBTdG9yZSB7XG4gICAgcmV0dXJuIHRoaXMuX2luamVjdG9yLmdldDxTdG9yZT4oU3RvcmUpO1xuICB9XG5cbiAgLyoqXG4gICAqIE1pZGRsZXdhcmUgaGFuZGxlIGZ1bmN0aW9uXG4gICAqL1xuICBoYW5kbGUoc3RhdGU6IGFueSwgYWN0aW9uOiBhbnksIG5leHQ6IE5neHNOZXh0UGx1Z2luRm4pIHtcbiAgICBpZiAoIXRoaXMuZGV2dG9vbHNFeHRlbnNpb24gfHwgdGhpcy5fb3B0aW9ucy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuIG5leHQoc3RhdGUsIGFjdGlvbik7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5leHQoc3RhdGUsIGFjdGlvbikucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICBjb25zdCBuZXdTdGF0ZSA9IHRoaXMuc3RvcmUuc25hcHNob3QoKTtcbiAgICAgICAgdGhpcy5zZW5kVG9EZXZUb29scyhzdGF0ZSwgYWN0aW9uLCBuZXdTdGF0ZSk7XG4gICAgICAgIHRocm93IGVycm9yO1xuICAgICAgfSksXG4gICAgICB0YXAobmV3U3RhdGUgPT4ge1xuICAgICAgICB0aGlzLnNlbmRUb0RldlRvb2xzKHN0YXRlLCBhY3Rpb24sIG5ld1N0YXRlKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgc2VuZFRvRGV2VG9vbHMoc3RhdGU6IGFueSwgYWN0aW9uOiBhbnksIG5ld1N0YXRlOiBhbnkpIHtcbiAgICBjb25zdCB0eXBlID0gZ2V0QWN0aW9uVHlwZUZyb21JbnN0YW5jZShhY3Rpb24pO1xuICAgIC8vIGlmIGluaXQgYWN0aW9uLCBzZW5kIGluaXRpYWwgc3RhdGUgdG8gZGV2IHRvb2xzXG4gICAgY29uc3QgaXNJbml0QWN0aW9uID0gdHlwZSA9PT0gJ0BASU5JVCc7XG4gICAgaWYgKGlzSW5pdEFjdGlvbikge1xuICAgICAgdGhpcy5kZXZ0b29sc0V4dGVuc2lvbiEuaW5pdChzdGF0ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGV2dG9vbHNFeHRlbnNpb24hLnNlbmQoeyAuLi5hY3Rpb24sIGFjdGlvbjogbnVsbCwgdHlwZSB9LCBuZXdTdGF0ZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZSB0aGUgYWN0aW9uIGZyb20gdGhlIGRldiB0b29scyBzdWJzY3JpcHRpb25cbiAgICovXG4gIGRpc3BhdGNoZWQoYWN0aW9uOiBOZ3hzRGV2dG9vbHNBY3Rpb24pIHtcbiAgICBpZiAoYWN0aW9uLnR5cGUgPT09IFJlZHV4RGV2dG9vbHNBY3Rpb25UeXBlLkRpc3BhdGNoKSB7XG4gICAgICBpZiAoXG4gICAgICAgIGFjdGlvbi5wYXlsb2FkLnR5cGUgPT09IFJlZHV4RGV2dG9vbHNQYXlsb2FkVHlwZS5KdW1wVG9BY3Rpb24gfHxcbiAgICAgICAgYWN0aW9uLnBheWxvYWQudHlwZSA9PT0gUmVkdXhEZXZ0b29sc1BheWxvYWRUeXBlLkp1bXBUb1N0YXRlXG4gICAgICApIHtcbiAgICAgICAgY29uc3QgcHJldlN0YXRlID0gSlNPTi5wYXJzZShhY3Rpb24uc3RhdGUpO1xuICAgICAgICAvLyBUaGlzIG1ha2VzIHRoZSBEZXZUb29scyBhbmQgUm91dGVyIHBsdWdpbnMgZnJpZW5kcyB3aXRoIGVhY2ggb3RoZXIuXG4gICAgICAgIC8vIFdlJ3JlIGNoZWNraW5nIGZvciB0aGUgYHJvdXRlcmAgc3RhdGUgdG8gZXhpc3QsIGFuZCBpdCBhbHNvIHNob3VsZFxuICAgICAgICAvLyBoYXZlIHRoZSBgdHJpZ2dlcmAgcHJvcGVydHksIHNvIHdlJ3JlIHN1cmUgdGhhdCB0aGlzIGlzIG91ciByb3V0ZXJcbiAgICAgICAgLy8gc3RhdGUgKGNvbWluZyBmcm9tIGBAbmd4cy9yb3V0ZXItcGx1Z2luYCkuIFRoaXMgZW5hYmxlcyBhIHRpbWUtdHJhdmVsaW5nXG4gICAgICAgIC8vIGZlYXR1cmUgc2luY2UgaXQgZG9lc24ndCBvbmx5IHJlc3RvcmUgdGhlIHN0YXRlIGJ1dCBhbHNvIGFsbG93cyB0aGUgYFJvdXRlclN0YXRlYFxuICAgICAgICAvLyB0byBuYXZpZ2F0ZSBiYWNrIHdoZW4gdGhlIGFjdGlvbiBpcyBqdW1wZWQuXG4gICAgICAgIGlmIChwcmV2U3RhdGUucm91dGVyICYmIHByZXZTdGF0ZS5yb3V0ZXIudHJpZ2dlcikge1xuICAgICAgICAgIHByZXZTdGF0ZS5yb3V0ZXIudHJpZ2dlciA9ICdkZXZ0b29scyc7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zdG9yZS5yZXNldChwcmV2U3RhdGUpO1xuICAgICAgfSBlbHNlIGlmIChhY3Rpb24ucGF5bG9hZC50eXBlID09PSBSZWR1eERldnRvb2xzUGF5bG9hZFR5cGUuVG9nZ2xlQWN0aW9uKSB7XG4gICAgICAgIGNvbnNvbGUud2FybignU2tpcCBpcyBub3Qgc3VwcG9ydGVkIGF0IHRoaXMgdGltZS4nKTtcbiAgICAgIH0gZWxzZSBpZiAoYWN0aW9uLnBheWxvYWQudHlwZSA9PT0gUmVkdXhEZXZ0b29sc1BheWxvYWRUeXBlLkltcG9ydFN0YXRlKSB7XG4gICAgICAgIGNvbnN0IHtcbiAgICAgICAgICBhY3Rpb25zQnlJZCxcbiAgICAgICAgICBjb21wdXRlZFN0YXRlcyxcbiAgICAgICAgICBjdXJyZW50U3RhdGVJbmRleFxuICAgICAgICB9ID0gYWN0aW9uLnBheWxvYWQubmV4dExpZnRlZFN0YXRlO1xuICAgICAgICB0aGlzLmRldnRvb2xzRXh0ZW5zaW9uIS5pbml0KGNvbXB1dGVkU3RhdGVzWzBdLnN0YXRlKTtcbiAgICAgICAgT2JqZWN0LmtleXMoYWN0aW9uc0J5SWQpXG4gICAgICAgICAgLmZpbHRlcihhY3Rpb25JZCA9PiBhY3Rpb25JZCAhPT0gJzAnKVxuICAgICAgICAgIC5mb3JFYWNoKGFjdGlvbklkID0+XG4gICAgICAgICAgICB0aGlzLmRldnRvb2xzRXh0ZW5zaW9uIS5zZW5kKGFjdGlvbnNCeUlkW2FjdGlvbklkXSwgY29tcHV0ZWRTdGF0ZXNbYWN0aW9uSWRdLnN0YXRlKVxuICAgICAgICAgICk7XG4gICAgICAgIHRoaXMuc3RvcmUucmVzZXQoY29tcHV0ZWRTdGF0ZXNbY3VycmVudFN0YXRlSW5kZXhdLnN0YXRlKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGFjdGlvbi50eXBlID09PSBSZWR1eERldnRvb2xzQWN0aW9uVHlwZS5BY3Rpb24pIHtcbiAgICAgIGNvbnN0IGFjdGlvblBheWxvYWQgPSBKU09OLnBhcnNlKGFjdGlvbi5wYXlsb2FkKTtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goYWN0aW9uUGF5bG9hZCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjb25uZWN0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5nbG9iYWxEZXZ0b29scyB8fCB0aGlzLl9vcHRpb25zLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gVGhlIGBjb25uZWN0YCBtZXRob2QgYWRkcyBgbWVzc2FnZWAgZXZlbnQgbGlzdGVuZXIgc2luY2UgaXQgY29tbXVuaWNhdGVzXG4gICAgLy8gd2l0aCBhbiBleHRlbnNpb24gdGhyb3VnaCBgd2luZG93LnBvc3RNZXNzYWdlYCBhbmQgbWVzc2FnZSBldmVudHMuXG4gICAgLy8gV2UgaGFuZGxlIG9ubHkgMiBldmVudHM7IHRodXMsIHdlIGRvbid0IHdhbnQgdG8gcnVuIG1hbnkgY2hhbmdlIGRldGVjdGlvbnNcbiAgICAvLyBiZWNhdXNlIHRoZSBleHRlbnNpb24gc2VuZHMgZXZlbnRzIHRoYXQgd2UgZG9uJ3QgaGF2ZSB0byBoYW5kbGUuXG4gICAgdGhpcy5kZXZ0b29sc0V4dGVuc2lvbiA9IHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcihcbiAgICAgICgpID0+IDxOZ3hzRGV2dG9vbHNFeHRlbnNpb24+dGhpcy5nbG9iYWxEZXZ0b29scy5jb25uZWN0KHRoaXMuX29wdGlvbnMpXG4gICAgKTtcblxuICAgIHRoaXMudW5zdWJzY3JpYmUgPSB0aGlzLmRldnRvb2xzRXh0ZW5zaW9uLnN1YnNjcmliZShhY3Rpb24gPT4ge1xuICAgICAgaWYgKFxuICAgICAgICBhY3Rpb24udHlwZSA9PT0gUmVkdXhEZXZ0b29sc0FjdGlvblR5cGUuRGlzcGF0Y2ggfHxcbiAgICAgICAgYWN0aW9uLnR5cGUgPT09IFJlZHV4RGV2dG9vbHNBY3Rpb25UeXBlLkFjdGlvblxuICAgICAgKSB7XG4gICAgICAgIHRoaXMuX25nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgIHRoaXMuZGlzcGF0Y2hlZChhY3Rpb24pO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
115
|
+
/** @nocollapse */ NgxsReduxDevtoolsPlugin.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsReduxDevtoolsPlugin, deps: [{ token: NGXS_DEVTOOLS_OPTIONS }, { token: i0.Injector }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
116
|
+
/** @nocollapse */ NgxsReduxDevtoolsPlugin.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsReduxDevtoolsPlugin });
|
|
117
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsReduxDevtoolsPlugin, decorators: [{
|
|
118
|
+
type: Injectable
|
|
119
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
120
|
+
type: Inject,
|
|
121
|
+
args: [NGXS_DEVTOOLS_OPTIONS]
|
|
122
|
+
}] }, { type: i0.Injector }, { type: i0.NgZone }]; } });
|
|
123
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2dG9vbHMucGx1Z2luLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvZGV2dG9vbHMtcGx1Z2luL3NyYy9kZXZ0b29scy5wbHVnaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBYSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLHlCQUF5QixFQUFnQyxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDN0YsT0FBTyxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRCxPQUFPLEVBQ0wscUJBQXFCLEVBSXRCLE1BQU0sV0FBVyxDQUFDOztBQWNuQjs7O0dBR0c7QUFFSCxNQUFNLE9BQU8sdUJBQXVCO0lBT2xDLFlBQ3lDLFFBQTZCLEVBQzVELFNBQW1CLEVBQ25CLE9BQWU7UUFGZ0IsYUFBUSxHQUFSLFFBQVEsQ0FBcUI7UUFDNUQsY0FBUyxHQUFULFNBQVMsQ0FBVTtRQUNuQixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBVGpCLHNCQUFpQixHQUFpQyxJQUFJLENBQUM7UUFDOUMsbUJBQWMsR0FDN0IsT0FBTyxDQUFDLDhCQUE4QixDQUFDLElBQUksT0FBTyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFFbEUsZ0JBQVcsR0FBd0IsSUFBSSxDQUFDO1FBTzlDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLFdBQVcsS0FBSyxJQUFJLEVBQUU7WUFDN0IsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3BCO1FBQ0QsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUM7U0FDbEM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFD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Q3BCLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQzFCLENBQUMsQ0FBQyxDQUFDO2FBQ0o7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7O3dJQS9IVSx1QkFBdUIsa0JBUXhCLHFCQUFxQjs0SUFScEIsdUJBQXVCOzRGQUF2Qix1QkFBdUI7a0JBRG5DLFVBQVU7OzBCQVNOLE1BQU07MkJBQUMscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3RvciwgTmdab25lLCBPbkRlc3Ryb3ksIMm1Z2xvYmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBnZXRBY3Rpb25UeXBlRnJvbUluc3RhbmNlLCBOZ3hzTmV4dFBsdWdpbkZuLCBOZ3hzUGx1Z2luLCBTdG9yZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IHRhcCwgY2F0Y2hFcnJvciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgTkdYU19ERVZUT09MU19PUFRJT05TLFxuICBOZ3hzRGV2dG9vbHNBY3Rpb24sXG4gIE5neHNEZXZ0b29sc0V4dGVuc2lvbixcbiAgTmd4c0RldnRvb2xzT3B0aW9uc1xufSBmcm9tICcuL3N5bWJvbHMnO1xuXG5jb25zdCBlbnVtIFJlZHV4RGV2dG9vbHNBY3Rpb25UeXBlIHtcbiAgRGlzcGF0Y2ggPSAnRElTUEFUQ0gnLFxuICBBY3Rpb24gPSAnQUNUSU9OJ1xufVxuXG5jb25zdCBlbnVtIFJlZHV4RGV2dG9vbHNQYXlsb2FkVHlwZSB7XG4gIEp1bXBUb0FjdGlvbiA9ICdKVU1QX1RPX0FDVElPTicsXG4gIEp1bXBUb1N0YXRlID0gJ0pVTVBfVE9fU1RBVEUnLFxuICBUb2dnbGVBY3Rpb24gPSAnVE9HR0xFX0FDVElPTicsXG4gIEltcG9ydFN0YXRlID0gJ0lNUE9SVF9TVEFURSdcbn1cblxuLyoqXG4gKiBBZGRzIHN1cHBvcnQgZm9yIHRoZSBSZWR1eCBEZXZ0b29scyBleHRlbnNpb246XG4gKiBodHRwOi8vZXh0ZW5zaW9uLnJlbW90ZWRldi5pby9cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE5neHNSZWR1eERldnRvb2xzUGx1Z2luIGltcGxlbWVudHMgT25EZXN0cm95LCBOZ3hzUGx1Z2luIHtcbiAgcHJpdmF0ZSBkZXZ0b29sc0V4dGVuc2lvbjogTmd4c0RldnRvb2xzRXh0ZW5zaW9uIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgcmVhZG9ubHkgZ2xvYmFsRGV2dG9vbHMgPVxuICAgIMm1Z2xvYmFsWydfX1JFRFVYX0RFVlRPT0xTX0VYVEVOU0lPTl9fJ10gfHwgybVnbG9iYWxbJ2RldlRvb2xzRXh0ZW5zaW9uJ107XG5cbiAgcHJpdmF0ZSB1bnN1YnNjcmliZTogVm9pZEZ1bmN0aW9uIHwgbnVsbCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChOR1hTX0RFVlRPT0xTX09QVElPTlMpIHByaXZhdGUgX29wdGlvbnM6IE5neHNEZXZ0b29sc09wdGlvbnMsXG4gICAgcHJpdmF0ZSBfaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIHByaXZhdGUgX25nWm9uZTogTmdab25lXG4gICkge1xuICAgIHRoaXMuY29ubmVjdCgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudW5zdWJzY3JpYmUgIT09IG51bGwpIHtcbiAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuZ2xvYmFsRGV2dG9vbHMpIHtcbiAgICAgIHRoaXMuZ2xvYmFsRGV2dG9vbHMuZGlzY29ubmVjdCgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBMYXp5IGdldCB0aGUgc3RvcmUgZm9yIGNpcmN1bGFyIGRlcGVuZGVuY3kgaXNzdWVzXG4gICAqL1xuICBwcml2YXRlIGdldCBzdG9yZSgpOiBTdG9yZSB7XG4gICAgcmV0dXJuIHRoaXMuX2luamVjdG9yLmdldDxTdG9yZT4oU3RvcmUpO1xuICB9XG5cbiAgLyoqXG4gICAqIE1pZGRsZXdhcmUgaGFuZGxlIGZ1bmN0aW9uXG4gICAqL1xuICBoYW5kbGUoc3RhdGU6IGFueSwgYWN0aW9uOiBhbnksIG5leHQ6IE5neHNOZXh0UGx1Z2luRm4pIHtcbiAgICBpZiAoIXRoaXMuZGV2dG9vbHNFeHRlbnNpb24gfHwgdGhpcy5fb3B0aW9ucy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuIG5leHQoc3RhdGUsIGFjdGlvbik7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5leHQoc3RhdGUsIGFjdGlvbikucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICBjb25zdCBuZXdTdGF0ZSA9IHRoaXMuc3RvcmUuc25hcHNob3QoKTtcbiAgICAgICAgdGhpcy5zZW5kVG9EZXZUb29scyhzdGF0ZSwgYWN0aW9uLCBuZXdTdGF0ZSk7XG4gICAgICAgIHRocm93IGVycm9yO1xuICAgICAgfSksXG4gICAgICB0YXAobmV3U3RhdGUgPT4ge1xuICAgICAgICB0aGlzLnNlbmRUb0RldlRvb2xzKHN0YXRlLCBhY3Rpb24sIG5ld1N0YXRlKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgc2VuZFRvRGV2VG9vbHMoc3RhdGU6IGFueSwgYWN0aW9uOiBhbnksIG5ld1N0YXRlOiBhbnkpIHtcbiAgICBjb25zdCB0eXBlID0gZ2V0QWN0aW9uVHlwZUZyb21JbnN0YW5jZShhY3Rpb24pO1xuICAgIC8vIGlmIGluaXQgYWN0aW9uLCBzZW5kIGluaXRpYWwgc3RhdGUgdG8gZGV2IHRvb2xzXG4gICAgY29uc3QgaXNJbml0QWN0aW9uID0gdHlwZSA9PT0gJ0BASU5JVCc7XG4gICAgaWYgKGlzSW5pdEFjdGlvbikge1xuICAgICAgdGhpcy5kZXZ0b29sc0V4dGVuc2lvbiEuaW5pdChzdGF0ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGV2dG9vbHNFeHRlbnNpb24hLnNlbmQoeyAuLi5hY3Rpb24sIGFjdGlvbjogbnVsbCwgdHlwZSB9LCBuZXdTdGF0ZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZSB0aGUgYWN0aW9uIGZyb20gdGhlIGRldiB0b29scyBzdWJzY3JpcHRpb25cbiAgICovXG4gIGRpc3BhdGNoZWQoYWN0aW9uOiBOZ3hzRGV2dG9vbHNBY3Rpb24pIHtcbiAgICBpZiAoYWN0aW9uLnR5cGUgPT09IFJlZHV4RGV2dG9vbHNBY3Rpb25UeXBlLkRpc3BhdGNoKSB7XG4gICAgICBpZiAoXG4gICAgICAgIGFjdGlvbi5wYXlsb2FkLnR5cGUgPT09IFJlZHV4RGV2dG9vbHNQYXlsb2FkVHlwZS5KdW1wVG9BY3Rpb24gfHxcbiAgICAgICAgYWN0aW9uLnBheWxvYWQudHlwZSA9PT0gUmVkdXhEZXZ0b29sc1BheWxvYWRUeXBlLkp1bXBUb1N0YXRlXG4gICAgICApIHtcbiAgICAgICAgY29uc3QgcHJldlN0YXRlID0gSlNPTi5wYXJzZShhY3Rpb24uc3RhdGUpO1xuICAgICAgICAvLyBUaGlzIG1ha2VzIHRoZSBEZXZUb29scyBhbmQgUm91dGVyIHBsdWdpbnMgZnJpZW5kcyB3aXRoIGVhY2ggb3RoZXIuXG4gICAgICAgIC8vIFdlJ3JlIGNoZWNraW5nIGZvciB0aGUgYHJvdXRlcmAgc3RhdGUgdG8gZXhpc3QsIGFuZCBpdCBhbHNvIHNob3VsZFxuICAgICAgICAvLyBoYXZlIHRoZSBgdHJpZ2dlcmAgcHJvcGVydHksIHNvIHdlJ3JlIHN1cmUgdGhhdCB0aGlzIGlzIG91ciByb3V0ZXJcbiAgICAgICAgLy8gc3RhdGUgKGNvbWluZyBmcm9tIGBAbmd4cy9yb3V0ZXItcGx1Z2luYCkuIFRoaXMgZW5hYmxlcyBhIHRpbWUtdHJhdmVsaW5nXG4gICAgICAgIC8vIGZlYXR1cmUgc2luY2UgaXQgZG9lc24ndCBvbmx5IHJlc3RvcmUgdGhlIHN0YXRlIGJ1dCBhbHNvIGFsbG93cyB0aGUgYFJvdXRlclN0YXRlYFxuICAgICAgICAvLyB0byBuYXZpZ2F0ZSBiYWNrIHdoZW4gdGhlIGFjdGlvbiBpcyBqdW1wZWQuXG4gICAgICAgIGlmIChwcmV2U3RhdGUucm91dGVyICYmIHByZXZTdGF0ZS5yb3V0ZXIudHJpZ2dlcikge1xuICAgICAgICAgIHByZXZTdGF0ZS5yb3V0ZXIudHJpZ2dlciA9ICdkZXZ0b29scyc7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zdG9yZS5yZXNldChwcmV2U3RhdGUpO1xuICAgICAgfSBlbHNlIGlmIChhY3Rpb24ucGF5bG9hZC50eXBlID09PSBSZWR1eERldnRvb2xzUGF5bG9hZFR5cGUuVG9nZ2xlQWN0aW9uKSB7XG4gICAgICAgIGNvbnNvbGUud2FybignU2tpcCBpcyBub3Qgc3VwcG9ydGVkIGF0IHRoaXMgdGltZS4nKTtcbiAgICAgIH0gZWxzZSBpZiAoYWN0aW9uLnBheWxvYWQudHlwZSA9PT0gUmVkdXhEZXZ0b29sc1BheWxvYWRUeXBlLkltcG9ydFN0YXRlKSB7XG4gICAgICAgIGNvbnN0IHtcbiAgICAgICAgICBhY3Rpb25zQnlJZCxcbiAgICAgICAgICBjb21wdXRlZFN0YXRlcyxcbiAgICAgICAgICBjdXJyZW50U3RhdGVJbmRleFxuICAgICAgICB9ID0gYWN0aW9uLnBheWxvYWQubmV4dExpZnRlZFN0YXRlO1xuICAgICAgICB0aGlzLmRldnRvb2xzRXh0ZW5zaW9uIS5pbml0KGNvbXB1dGVkU3RhdGVzWzBdLnN0YXRlKTtcbiAgICAgICAgT2JqZWN0LmtleXMoYWN0aW9uc0J5SWQpXG4gICAgICAgICAgLmZpbHRlcihhY3Rpb25JZCA9PiBhY3Rpb25JZCAhPT0gJzAnKVxuICAgICAgICAgIC5mb3JFYWNoKGFjdGlvbklkID0+XG4gICAgICAgICAgICB0aGlzLmRldnRvb2xzRXh0ZW5zaW9uIS5zZW5kKGFjdGlvbnNCeUlkW2FjdGlvbklkXSwgY29tcHV0ZWRTdGF0ZXNbYWN0aW9uSWRdLnN0YXRlKVxuICAgICAgICAgICk7XG4gICAgICAgIHRoaXMuc3RvcmUucmVzZXQoY29tcHV0ZWRTdGF0ZXNbY3VycmVudFN0YXRlSW5kZXhdLnN0YXRlKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGFjdGlvbi50eXBlID09PSBSZWR1eERldnRvb2xzQWN0aW9uVHlwZS5BY3Rpb24pIHtcbiAgICAgIGNvbnN0IGFjdGlvblBheWxvYWQgPSBKU09OLnBhcnNlKGFjdGlvbi5wYXlsb2FkKTtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goYWN0aW9uUGF5bG9hZCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjb25uZWN0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5nbG9iYWxEZXZ0b29scyB8fCB0aGlzLl9vcHRpb25zLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gVGhlIGBjb25uZWN0YCBtZXRob2QgYWRkcyBgbWVzc2FnZWAgZXZlbnQgbGlzdGVuZXIgc2luY2UgaXQgY29tbXVuaWNhdGVzXG4gICAgLy8gd2l0aCBhbiBleHRlbnNpb24gdGhyb3VnaCBgd2luZG93LnBvc3RNZXNzYWdlYCBhbmQgbWVzc2FnZSBldmVudHMuXG4gICAgLy8gV2UgaGFuZGxlIG9ubHkgMiBldmVudHM7IHRodXMsIHdlIGRvbid0IHdhbnQgdG8gcnVuIG1hbnkgY2hhbmdlIGRldGVjdGlvbnNcbiAgICAvLyBiZWNhdXNlIHRoZSBleHRlbnNpb24gc2VuZHMgZXZlbnRzIHRoYXQgd2UgZG9uJ3QgaGF2ZSB0byBoYW5kbGUuXG4gICAgdGhpcy5kZXZ0b29sc0V4dGVuc2lvbiA9IHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcihcbiAgICAgICgpID0+IDxOZ3hzRGV2dG9vbHNFeHRlbnNpb24+dGhpcy5nbG9iYWxEZXZ0b29scy5jb25uZWN0KHRoaXMuX29wdGlvbnMpXG4gICAgKTtcblxuICAgIHRoaXMudW5zdWJzY3JpYmUgPSB0aGlzLmRldnRvb2xzRXh0ZW5zaW9uLnN1YnNjcmliZShhY3Rpb24gPT4ge1xuICAgICAgaWYgKFxuICAgICAgICBhY3Rpb24udHlwZSA9PT0gUmVkdXhEZXZ0b29sc0FjdGlvblR5cGUuRGlzcGF0Y2ggfHxcbiAgICAgICAgYWN0aW9uLnR5cGUgPT09IFJlZHV4RGV2dG9vbHNBY3Rpb25UeXBlLkFjdGlvblxuICAgICAgKSB7XG4gICAgICAgIHRoaXMuX25nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgIHRoaXMuZGlzcGF0Y2hlZChhY3Rpb24pO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
1
|
export { NgxsReduxDevtoolsPluginModule } from './devtools.module';
|
|
6
2
|
export { NgxsReduxDevtoolsPlugin } from './devtools.plugin';
|
|
7
|
-
export
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
export * from './symbols';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2RldnRvb2xzLXBsdWdpbi9zcmMvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM1RCxjQUFjLFdBQVcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IE5neHNSZWR1eERldnRvb2xzUGx1Z2luTW9kdWxlIH0gZnJvbSAnLi9kZXZ0b29scy5tb2R1bGUnO1xuZXhwb3J0IHsgTmd4c1JlZHV4RGV2dG9vbHNQbHVnaW4gfSBmcm9tICcuL2RldnRvb2xzLnBsdWdpbic7XG5leHBvcnQgKiBmcm9tICcuL3N5bWJvbHMnO1xuIl19
|
package/esm2015/src/symbols.js
CHANGED
|
@@ -1,78 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
1
|
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
2
|
export const NGXS_DEVTOOLS_OPTIONS = new InjectionToken('NGXS_DEVTOOLS_OPTIONS');
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ltYm9scy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2RldnRvb2xzLXBsdWdpbi9zcmMvc3ltYm9scy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBbUYvQyxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLGNBQWMsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBJbnRlcmZhY2UgZm9yIHRoZSByZWR1eC1kZXZ0b29scy1leHRlbnNpb24gQVBJLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5neHNEZXZ0b29sc0V4dGVuc2lvbiB7XG4gIGluaXQoc3RhdGU6IGFueSk6IHZvaWQ7XG4gIHNlbmQoYWN0aW9uOiBhbnksIHN0YXRlPzogYW55KTogdm9pZDtcbiAgc3Vic2NyaWJlKGZuOiAobWVzc2FnZTogTmd4c0RldnRvb2xzQWN0aW9uKSA9PiB2b2lkKTogVm9pZEZ1bmN0aW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5neHNEZXZ0b29sc0FjdGlvbiB7XG4gIHR5cGU6IHN0cmluZztcbiAgcGF5bG9hZDogYW55O1xuICBzdGF0ZTogYW55O1xuICBpZDogbnVtYmVyO1xuICBzb3VyY2U6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOZ3hzRGV2dG9vbHNPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBleHRlbnNpb25cbiAgICovXG4gIG5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGRldiB0b29scyBpcyBlbmFibGVkIG9yIG5vdGUuIFVzZWZ1bCBmb3Igc2V0dGluZyBkdXJpbmcgcHJvZHVjdGlvbi5cbiAgICovXG4gIGRpc2FibGVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogTWF4IG51bWJlciBvZiBlbnRpcmllcyB0byBrZWVwLlxuICAgKi9cbiAgbWF4QWdlPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBJZiBtb3JlIHRoYW4gb25lIGFjdGlvbiBpcyBkaXNwYXRjaGVkIGluIHRoZSBpbmRpY2F0ZWQgaW50ZXJ2YWwsIGFsbCBuZXcgYWN0aW9ucyB3aWxsIGJlIGNvbGxlY3RlZFxuICAgKiBhbmQgc2VudCBhdCBvbmNlLiBJdCBpcyB0aGUgam9pbnQgYmV0d2VlbiBwZXJmb3JtYW5jZSBhbmQgc3BlZWQuIFdoZW4gc2V0IHRvIDAsIGFsbCBhY3Rpb25zIHdpbGwgYmVcbiAgICogc2VudCBpbnN0YW50bHkuIFNldCBpdCB0byBhIGhpZ2hlciB2YWx1ZSB3aGVuIGV4cGVyaWVuY2luZyBwZXJmIGlzc3VlcyAoYWxzbyBtYXhBZ2UgdG8gYSBsb3dlciB2YWx1ZSkuXG4gICAqIERlZmF1bHQgaXMgNTAwIG1zLlxuICAgKi9cbiAgbGF0ZW5jeT86IG51bWJlcjtcblxuICAvKipcbiAgICogc3RyaW5nIG9yIGFycmF5IG9mIHN0cmluZ3MgYXMgcmVnZXggLSBhY3Rpb25zIHR5cGVzIHRvIGJlIGhpZGRlbiBpbiB0aGUgbW9uaXRvcnMgKHdoaWxlIHBhc3NlZCB0byB0aGUgcmVkdWNlcnMpLlxuICAgKiBJZiBhY3Rpb25zV2hpdGVsaXN0IHNwZWNpZmllZCwgYWN0aW9uc0JsYWNrbGlzdCBpcyBpZ25vcmVkLlxuICAgKi9cbiAgYWN0aW9uc0JsYWNrbGlzdD86IHN0cmluZyB8IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBzdHJpbmcgb3IgYXJyYXkgb2Ygc3RyaW5ncyBhcyByZWdleCAtIGFjdGlvbnMgdHlwZXMgdG8gYmUgc2hvd24gaW4gdGhlIG1vbml0b3JzICh3aGlsZSBwYXNzZWQgdG8gdGhlIHJlZHVjZXJzKS5cbiAgICogSWYgYWN0aW9uc1doaXRlbGlzdCBzcGVjaWZpZWQsIGFjdGlvbnNCbGFja2xpc3QgaXMgaWdub3JlZC5cbiAgICovXG4gIGFjdGlvbnNXaGl0ZWxpc3Q/OiBzdHJpbmcgfCBzdHJpbmdbXTtcblxuICAvKipcbiAgICogY2FsbGVkIGZvciBldmVyeSBhY3Rpb24gYmVmb3JlIHNlbmRpbmcsIHRha2VzIHN0YXRlIGFuZCBhY3Rpb24gb2JqZWN0LCBhbmQgcmV0dXJucyB0cnVlIGluIGNhc2UgaXQgYWxsb3dzXG4gICAqIHNlbmRpbmcgdGhlIGN1cnJlbnQgZGF0YSB0byB0aGUgbW9uaXRvci4gVXNlIGl0IGFzIGEgbW9yZSBhZHZhbmNlZCB2ZXJzaW9uIG9mXG4gICAqIGFjdGlvbnNCbGFja2xpc3QvYWN0aW9uc1doaXRlbGlzdCBwYXJhbWV0ZXJzXG4gICAqL1xuICBwcmVkaWNhdGU/OiAoc3RhdGU6IGFueSwgYWN0aW9uOiBhbnkpID0+IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFJlZm9ybWF0IGFjdGlvbnMgYmVmb3JlIHNlbmRpbmcgdG8gZGV2IHRvb2xzXG4gICAqL1xuICBhY3Rpb25TYW5pdGl6ZXI/OiAoYWN0aW9uOiBhbnkpID0+IHZvaWQ7XG5cbiAgLyoqXG4gICAqIFJlZm9ybWF0IHN0YXRlIGJlZm9yZSBzZW5kaW5nIHRvIGRldnRvb2xzXG4gICAqL1xuICBzdGF0ZVNhbml0aXplcj86IChzdGF0ZTogYW55KSA9PiB2b2lkO1xuXG4gIC8qKlxuICAgKiBJZiBzZXQgdG8gdHJ1ZSwgd2lsbCBpbmNsdWRlIHN0YWNrIHRyYWNlIGZvciBldmVyeSBkaXNwYXRjaGVkIGFjdGlvblxuICAgKi9cbiAgdHJhY2U/OiBib29sZWFuIHwgKCgpID0+IHN0cmluZyk7XG5cbiAgLyoqXG4gICAqIE1heGltdW0gc3RhY2sgdHJhY2UgZnJhbWVzIHRvIGJlIHN0b3JlZCAoaW4gY2FzZSB0cmFjZSBvcHRpb24gd2FzIHByb3ZpZGVkIGFzIHRydWUpXG4gICAqL1xuICB0cmFjZUxpbWl0PzogbnVtYmVyO1xufVxuXG5leHBvcnQgY29uc3QgTkdYU19ERVZUT09MU19PUFRJT05TID0gbmV3IEluamVjdGlvblRva2VuKCdOR1hTX0RFVlRPT0xTX09QVElPTlMnKTtcbiJdfQ==
|