37 lines
1.3 KiB
JavaScript
37 lines
1.3 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.build = exports.joinDirectoryPath = exports.joinPathWithBasePath = void 0;
|
|
const path_1 = require("path");
|
|
const utils_1 = require("../../utils");
|
|
function joinPathWithBasePath(filename, directoryPath) {
|
|
return directoryPath + filename;
|
|
}
|
|
exports.joinPathWithBasePath = joinPathWithBasePath;
|
|
function joinPathWithRelativePath(root, options) {
|
|
return function (filename, directoryPath) {
|
|
const sameRoot = directoryPath.startsWith(root);
|
|
if (sameRoot)
|
|
return directoryPath.replace(root, "") + filename;
|
|
else
|
|
return ((0, utils_1.convertSlashes)((0, path_1.relative)(root, directoryPath), options.pathSeparator) +
|
|
options.pathSeparator +
|
|
filename);
|
|
};
|
|
}
|
|
function joinPath(filename) {
|
|
return filename;
|
|
}
|
|
function joinDirectoryPath(filename, directoryPath, separator) {
|
|
return directoryPath + filename + separator;
|
|
}
|
|
exports.joinDirectoryPath = joinDirectoryPath;
|
|
function build(root, options) {
|
|
const { relativePaths, includeBasePath } = options;
|
|
return relativePaths && root
|
|
? joinPathWithRelativePath(root, options)
|
|
: includeBasePath
|
|
? joinPathWithBasePath
|
|
: joinPath;
|
|
}
|
|
exports.build = build;
|