full site update
This commit is contained in:
37
node_modules/fdir/dist/api/functions/push-directory.js
generated
vendored
Normal file
37
node_modules/fdir/dist/api/functions/push-directory.js
generated
vendored
Normal file
@@ -0,0 +1,37 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.build = void 0;
|
||||
function pushDirectoryWithRelativePath(root) {
|
||||
return function (directoryPath, paths) {
|
||||
paths.push(directoryPath.substring(root.length) || ".");
|
||||
};
|
||||
}
|
||||
function pushDirectoryFilterWithRelativePath(root) {
|
||||
return function (directoryPath, paths, filters) {
|
||||
const relativePath = directoryPath.substring(root.length) || ".";
|
||||
if (filters.every((filter) => filter(relativePath, true))) {
|
||||
paths.push(relativePath);
|
||||
}
|
||||
};
|
||||
}
|
||||
const pushDirectory = (directoryPath, paths) => {
|
||||
paths.push(directoryPath || ".");
|
||||
};
|
||||
const pushDirectoryFilter = (directoryPath, paths, filters) => {
|
||||
const path = directoryPath || ".";
|
||||
if (filters.every((filter) => filter(path, true))) {
|
||||
paths.push(path);
|
||||
}
|
||||
};
|
||||
const empty = () => { };
|
||||
function build(root, options) {
|
||||
const { includeDirs, filters, relativePaths } = options;
|
||||
if (!includeDirs)
|
||||
return empty;
|
||||
if (relativePaths)
|
||||
return filters && filters.length
|
||||
? pushDirectoryFilterWithRelativePath(root)
|
||||
: pushDirectoryWithRelativePath(root);
|
||||
return filters && filters.length ? pushDirectoryFilter : pushDirectory;
|
||||
}
|
||||
exports.build = build;
|
Reference in New Issue
Block a user