31 lines
977 B
JavaScript
31 lines
977 B
JavaScript
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
"use strict";
|
|
|
|
/**
|
|
* A middleware that logs all actions coming through the system
|
|
* to the console.
|
|
*/
|
|
function log() {
|
|
return next => action => {
|
|
try {
|
|
// Only print the action type, rather than printing the whole object
|
|
console.log("[DISPATCH] action type:", action.type);
|
|
/*
|
|
* USE WITH CAUTION!! This will output everything from an action object,
|
|
* and these can be quite large. Printing out large objects will slow
|
|
* down tests and cause test failures
|
|
*
|
|
* console.log("[DISPATCH]", JSON.stringify(action, null, 2));
|
|
*/
|
|
} catch (e) {
|
|
// this occurs if JSON.stringify throws.
|
|
console.warn(e);
|
|
console.log("[DISPATCH]", action);
|
|
}
|
|
next(action);
|
|
};
|
|
}
|
|
|
|
exports.log = log;
|