@pushrocks/smartpath
Version:
offers smart ways to handle paths
43 lines • 2.77 kB
JavaScript
import * as plugins from './smartpath.plugins.js';
/**
* returns the type of the given path. Can be "url" or "local"
*/
export const type = (pathStringArg) => {
const urlRegex = /http[s|\s]:\/\/.*/i;
if (urlRegex.exec(pathStringArg)) {
return 'url';
}
else {
return 'local';
}
};
/**
* gets the dirname from import.meta.url
*/
export const dirnameFromImportMetaUrl = (importMetaUrlArg) => {
return plugins.path.dirname(plugins.url.fileURLToPath(importMetaUrlArg));
};
/**
* returns homedir as absolute path
* @param pathArgument if a pathargument is given, ~ is being replaced with the homedir
* @returns
*/
export const home = (pathArgument) => {
if (pathArgument) {
return pathArgument.replace('~', plugins.os.homedir());
}
else {
return plugins.os.homedir();
}
};
export const pathLevels = (pathArg, systemArg = 'dynamic') => {
let pathLevelArray;
if (systemArg === 'dynamic') {
pathLevelArray = pathArg.split(plugins.path.sep);
}
return pathLevelArray;
};
export const pathLevelsBackwards = (pathArg, systemArg) => {
return pathLevels(pathArg, systemArg).reverse();
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnRwYXRoLmdldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL3NtYXJ0cGF0aC5nZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSx3QkFBd0IsQ0FBQztBQUdsRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLElBQUksR0FBRyxDQUFDLGFBQXFCLEVBQWEsRUFBRTtJQUN2RCxNQUFNLFFBQVEsR0FBRyxvQkFBb0IsQ0FBQztJQUN0QyxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUU7UUFDaEMsT0FBTyxLQUFLLENBQUM7S0FDZDtTQUFNO1FBQ0wsT0FBTyxPQUFPLENBQUM7S0FDaEI7QUFDSCxDQUFDLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLENBQUMsZ0JBQXdCLEVBQUUsRUFBRTtJQUNuRSxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztBQUMzRSxDQUFDLENBQUM7QUFFRjs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sSUFBSSxHQUFHLENBQUMsWUFBcUIsRUFBRSxFQUFFO0lBQzVDLElBQUksWUFBWSxFQUFFO1FBQ2hCLE9BQU8sWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0tBQ3hEO1NBQU07UUFDTCxPQUFPLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7S0FDN0I7QUFDSCxDQUFDLENBQUM7QUFJRixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxPQUFlLEVBQUUsWUFBd0IsU0FBUyxFQUFFLEVBQUU7SUFDL0UsSUFBSSxjQUF3QixDQUFDO0lBQzdCLElBQUksU0FBUyxLQUFLLFNBQVMsRUFBRTtRQUMzQixjQUFjLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0tBQ2xEO0lBQ0QsT0FBTyxjQUFjLENBQUM7QUFDeEIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxPQUFlLEVBQUUsU0FBc0IsRUFBRSxFQUFFO0lBQzdFLE9BQU8sVUFBVSxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztBQUNsRCxDQUFDLENBQUMifQ==