/opt/canhelp/node_modules/next/dist/esm/lib
NameSizeModeActions
eslint/-0755rm
framework/-0755rm
fs/-0755rm
helpers/-0755rm
memory/-0755rm
metadata/-0755rm
typescript/-0755rm
batcher.js20580644editdlrm
batcher.js.map42230644editdlrm
build-custom-route.js9030644editdlrm
build-custom-route.js.map24250644editdlrm
client-and-server-references.js6940644editdlrm
client-and-server-references.js.map16700644editdlrm
coalesced-function.js8680644editdlrm
coalesced-function.js.map20030644editdlrm
compile-error.js860644editdlrm
compile-error.js.map2160644editdlrm
constants.js83860644editdlrm
constants.js.map135700644editdlrm
create-client-router-filter.js21660644editdlrm
create-client-router-filter.js.map40100644editdlrm
default-transpiled-packages.json100644editdlrm
detached-promise.js6790644editdlrm
detached-promise.js.map12830644editdlrm
detect-typo.js13190644editdlrm
detect-typo.js.map27740644editdlrm
download-swc.js48300644editdlrm
download-swc.js.map82020644editdlrm
error-telemetry-utils.js13910644editdlrm
error-telemetry-utils.js.map23800644editdlrm
fallback.js29330644editdlrm
fallback.js.map38460644editdlrm
fatal-error.js820644editdlrm
fatal-error.js.map2100644editdlrm
file-exists.js8140644editdlrm
file-exists.js.map14470644editdlrm
find-config.js29380644editdlrm
find-config.js.map50320644editdlrm
find-pages-dir.js8810644editdlrm
find-pages-dir.js.map15600644editdlrm
find-root.js25100644editdlrm
find-root.js.map42820644editdlrm
format-cli-help-output.js25780644editdlrm
format-cli-help-output.js.map49000644editdlrm
format-dynamic-import-path.js7060644editdlrm
format-dynamic-import-path.js.map11890644editdlrm
format-server-error.js24070644editdlrm
format-server-error.js.map37500644editdlrm
generate-interception-routes-rewrites.js26510644editdlrm
generate-interception-routes-rewrites.js.map43580644editdlrm
get-files-in-dir.js5100644editdlrm
get-files-in-dir.js.map11780644editdlrm
get-network-host.js10440644editdlrm
get-network-host.js.map19160644editdlrm
get-package-version.js15470644editdlrm
get-package-version.js.map31930644editdlrm
get-project-dir.js14650644editdlrm
get-project-dir.js.map23940644editdlrm
has-necessary-dependencies.js13570644editdlrm
has-necessary-dependencies.js.map37320644editdlrm
import-next-warning.js3220644editdlrm
import-next-warning.js.map5060644editdlrm
inline-static-env.js39780644editdlrm
inline-static-env.js.map71300644editdlrm
install-dependencies.js8860644editdlrm
install-dependencies.js.map19680644editdlrm
interop-default.js1150644editdlrm
interop-default.js.map2930644editdlrm
is-api-route.js1710644editdlrm
is-api-route.js.map3630644editdlrm
is-app-page-route.js1240644editdlrm
is-app-page-route.js.map3160644editdlrm
is-app-route-route.js1270644editdlrm
is-app-route-route.js.map3220644editdlrm
is-edge-runtime.js2180644editdlrm
is-edge-runtime.js.map5710644editdlrm
is-error.js19320644editdlrm
is-error.js.map28310644editdlrm
is-internal-component.js3870644editdlrm
is-internal-component.js.map6980644editdlrm
is-serializable-props.js41650644editdlrm
is-serializable-props.js.map64740644editdlrm
known-edge-safe-packages.json180644editdlrm
load-custom-routes.js221900644editdlrm
load-custom-routes.js.map386290644editdlrm
mime-type.js2240644editdlrm
mime-type.js.map4480644editdlrm
mkcert.js60370644editdlrm
mkcert.js.map96840644editdlrm
multi-file-writer.js24190644editdlrm
multi-file-writer.js.map42030644editdlrm
needs-experimental-react.js2580644editdlrm
needs-experimental-react.js.map6800644editdlrm
non-nullable.js1300644editdlrm
non-nullable.js.map3350644editdlrm
normalize-path.js1720644editdlrm
normalize-path.js.map4260644editdlrm
oxford-comma-list.js2330644editdlrm
oxford-comma-list.js.map7010644editdlrm
page-types.js2290644editdlrm
page-types.js.map2620644editdlrm
patch-incorrect-lockfile.js53600644editdlrm
patch-incorrect-lockfile.js.map92290644editdlrm
pick.js1780644editdlrm
pick.js.map4960644editdlrm
picocolors.js33720644editdlrm
picocolors.js.map60240644editdlrm
pretty-bytes.js28640644editdlrm
pretty-bytes.js.map41280644editdlrm
realpath.js5090644editdlrm
realpath.js.map8370644editdlrm
recursive-copy.js23780644editdlrm
recursive-copy.js.map44830644editdlrm
recursive-delete.js22260644editdlrm
recursive-delete.js.map41960644editdlrm
recursive-readdir.js52300644editdlrm
recursive-readdir.js.map84950644editdlrm
redirect-status.js8340644editdlrm
redirect-status.js.map17850644editdlrm
require-instrumentation-client.js12780644editdlrm
require-instrumentation-client.js.map19470644editdlrm
resolve-from.js16890644editdlrm
resolve-from.js.map26450644editdlrm
route-pattern-normalizer.js44320644editdlrm
route-pattern-normalizer.js.map65670644editdlrm
scheduler.js23320644editdlrm
scheduler.js.map34640644editdlrm
semver-noop.js2710644editdlrm
semver-noop.js.map4360644editdlrm
server-external-packages.json12810644editdlrm
setup-exception-listeners.js2780644editdlrm
setup-exception-listeners.js.map5900644editdlrm
static-env.js21120644editdlrm
static-env.js.map37930644editdlrm
try-to-parse-path.js24520644editdlrm
try-to-parse-path.js.map44780644editdlrm
turbopack-warning.js69480644editdlrm
turbopack-warning.js.map116590644editdlrm
url.js13220644editdlrm
url.js.map28840644editdlrm
verify-partytown-setup.js28420644editdlrm
verify-partytown-setup.js.map50880644editdlrm
verify-root-layout.js37940644editdlrm
verify-root-layout.js.map66280644editdlrm
verify-typescript-setup.js52820644editdlrm
verify-typescript-setup.js.map90110644editdlrm
verifyAndLint.js26940644editdlrm
verifyAndLint.js.map47470644editdlrm
wait.js2480644editdlrm
wait.js.map4780644editdlrm
with-promise-cache.js3800644editdlrm
with-promise-cache.js.map13790644editdlrm
worker.js79810644editdlrm
worker.js.map131850644editdlrm
Edit: /opt/canhelp/node_modules/next/dist/esm/lib/recursive-readdir.js (5230B)
import fs from 'fs/promises'; import path from 'path'; /** * Recursively reads a directory and returns the list of pathnames. * * @param rootDirectory the directory to read * @param options options to control the behavior of the recursive read * @returns the list of pathnames */ export async function recursiveReadDir(rootDirectory, options = {}) { // Grab our options. const { pathnameFilter, ignoreFilter, ignorePartFilter, sortPathnames = true, relativePathnames = true } = options; // The list of pathnames to return. const pathnames = []; /** * Coerces the pathname to be relative if requested. */ const coerce = relativePathnames ? (pathname)=>pathname.replace(rootDirectory, '') : (pathname)=>pathname; // The queue of directories to scan. let directories = [ rootDirectory ]; while(directories.length > 0){ // Load all the files in each directory at the same time. const results = await Promise.all(directories.map(async (directory)=>{ const result = { directories: [], pathnames: [], links: [] }; try { const dir = await fs.readdir(directory, { withFileTypes: true }); for (const file of dir){ // If enabled, ignore the file if it matches the ignore filter. if (ignorePartFilter && ignorePartFilter(file.name)) { continue; } // Handle each file. const absolutePathname = path.join(directory, file.name); // If enabled, ignore the file if it matches the ignore filter. if (ignoreFilter && ignoreFilter(absolutePathname)) { continue; } // If the file is a directory, then add it to the list of directories, // they'll be scanned on a later pass. if (file.isDirectory()) { result.directories.push(absolutePathname); } else if (file.isSymbolicLink()) { result.links.push(absolutePathname); } else if (!pathnameFilter || pathnameFilter(absolutePathname)) { result.pathnames.push(coerce(absolutePathname)); } } } catch (err) { // This can only happen when the underlying directory was removed. If // anything other than this error occurs, re-throw it. // if (err.code !== 'ENOENT') throw err if (err.code !== 'ENOENT' || directory === rootDirectory) throw err; // The error occurred, so abandon reading this directory. return null; } return result; })); // Empty the directories, we'll fill it later if some of the files are // directories. directories = []; // Keep track of any symbolic links we find, we'll resolve them later. const links = []; // For each result of directory scans... for (const result of results){ // If the directory was removed, then skip it. if (!result) continue; // Add any directories to the list of directories to scan. directories.push(...result.directories); // Add any symbolic links to the list of symbolic links to resolve. links.push(...result.links); // Add any file pathnames to the list of pathnames. pathnames.push(...result.pathnames); } // Resolve all the symbolic links we found if any. if (links.length > 0) { const resolved = await Promise.all(links.map(async (absolutePathname)=>{ try { return await fs.stat(absolutePathname); } catch (err) { // This can only happen when the underlying link was removed. If // anything other than this error occurs, re-throw it. if (err.code !== 'ENOENT') throw err; // The error occurred, so abandon reading this directory. return null; } })); for(let i = 0; i < links.length; i++){ const stats = resolved[i]; // If the link was removed, then skip it. if (!stats) continue; // We would have already ignored the file if it matched the ignore // filter, so we don't need to check it again. const absolutePathname = links[i]; if (stats.isDirectory()) { directories.push(absolutePathname); } else if (!pathnameFilter || pathnameFilter(absolutePathname)) { pathnames.push(coerce(absolutePathname)); } } } } // Sort the pathnames in place if requested. if (sortPathnames) { pathnames.sort(); } return pathnames; } //# sourceMappingURL=recursive-readdir.js.map