UNPKG

@tacky/store

Version:

State management framework based on react

43 lines (33 loc) 1.3 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _deepMerge = require("../utils/deep-merge"); var _symbol = require("../const/symbol"); function createLoggerMiddleware() { return function (_ref) { var dispatch = _ref.dispatch; return function (next) { return function (action) { if (!action.domain) { return next(action); } console.group("%caction: ".concat(action.name, ", namespace: ").concat(action.domain[_symbol.NAMESPACE], ", prev state:"), 'color: red'); console.dir((0, _deepMerge.deepMerge)({}, action.domain, { clone: true })); // deep copy,logger current state before change. console.groupEnd(); var nextResult = next(action); // wait the result of the next middleware console.group("%caction: ".concat(action.name, ", namespace: ").concat(action.domain[_symbol.NAMESPACE], ", next state:"), 'color: green'); console.dir((0, _deepMerge.deepMerge)({}, action.domain, { clone: true })); // deep copy,logger current state after change. console.groupEnd(); return nextResult; }; }; }; } var _default = createLoggerMiddleware(); exports["default"] = _default;