ts-packager
Version:
TypeScript npm packager
39 lines • 1.4 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.replaceAllDoubleDots = exports.replaceDoubleDot = void 0;
const path_1 = require("path");
/**
* Replace double dots for a changed relative path
*
* @param outdir Relative output directoy
* @param source Package source
* @returns Returns the modified path string
*/
function replaceDoubleDot(outdir, source) {
const path1 = (0, path_1.join)(process.cwd(), outdir);
const path2 = (0, path_1.join)(source);
return (0, path_1.relative)(path1, path2);
}
exports.replaceDoubleDot = replaceDoubleDot;
/**
* Replace all relative path double-dots
*
* @param dependencies Dependency map
* @param outdir Relative output directory
* @returns Returns modified dependency map
*/
function replaceAllDoubleDots(dependencies, outdir) {
for (const dependency in dependencies) {
let source = dependencies[dependency];
if (typeof source === 'string' &&
(source.includes('../') || source.includes('..\\'))) {
source = source.replace('file:', '');
source = replaceDoubleDot(outdir, source);
source = `file:${source}`;
dependencies[dependency] = source;
}
}
return dependencies;
}
exports.replaceAllDoubleDots = replaceAllDoubleDots;
//# sourceMappingURL=replace-double-dots.js.map