ring-websites-toolbelt
Version:
Ring Publishing Platform tool to work with Ring Websites
24 lines (20 loc) • 919 B
JavaScript
const os = require('os');
const path = require('path');
const upath = require('upath');
/**
* Function normalizing all system functions used in the app that return paths.
* These paths have to be consistent (Linux style of paths).
*/
module.exports = function() {
const originalPath = {};
originalPath.join = path.join;
originalPath.relative = path.relative;
originalPath.basename = path.basename;
path.join = (...args) => upath.normalize(originalPath.join(...args));
path.relative = (...args) => upath.normalize(originalPath.relative(...args));
path.basename = (...args) => upath.normalize(originalPath.basename(...args));
const originalHomedir = os.homedir;
os.homedir = (...args) => upath.normalize(originalHomedir(...args));
const originalProcessCwd = process.cwd;
process.cwd = (...args) => upath.normalize(originalProcessCwd(...args));
}