diff options
| author | pack <pack@packgekko.xyz> | 2026-08-09 10:54:08 +0000 |
|---|---|---|
| committer | pack <pack@packgekko.xyz> | 2026-08-09 10:54:08 +0000 |
| commit | d3adc16a08d95d6e331de55d7d3bf05a66a874a8 (patch) | |
| tree | a2dabd199501e67c547c2ce79e1374ca3aa55443 /node_modules/tar/dist/commonjs/mkdir.js | |
| parent | 55a4f1fc869e41aca748c63d3018f0448b1606e0 (diff) | |
| download | crud-d3adc16a08d95d6e331de55d7d3bf05a66a874a8.tar.gz | |
stop tracking node_modules/
Diffstat (limited to '')
| -rw-r--r-- | node_modules/tar/dist/commonjs/mkdir.js | 187 |
1 files changed, 0 insertions, 187 deletions
diff --git a/node_modules/tar/dist/commonjs/mkdir.js b/node_modules/tar/dist/commonjs/mkdir.js deleted file mode 100644 index 050e6bb..0000000 --- a/node_modules/tar/dist/commonjs/mkdir.js +++ /dev/null @@ -1,187 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.mkdirSync = exports.mkdir = void 0; -const chownr_1 = require("chownr"); -const node_fs_1 = __importDefault(require("node:fs")); -const promises_1 = __importDefault(require("node:fs/promises")); -const node_path_1 = __importDefault(require("node:path")); -const cwd_error_js_1 = require("./cwd-error.js"); -const normalize_windows_path_js_1 = require("./normalize-windows-path.js"); -const symlink_error_js_1 = require("./symlink-error.js"); -const checkCwd = (dir, cb) => { - node_fs_1.default.stat(dir, (er, st) => { - if (er || !st.isDirectory()) { - er = new cwd_error_js_1.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. - */ -const mkdir = (dir, opt, cb) => { - dir = (0, normalize_windows_path_js_1.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 = (0, normalize_windows_path_js_1.normalizeWindowsPath)(opt.cwd); - const done = (er, created) => { - if (er) { - cb(er); - } - else { - if (created && doChown) { - (0, chownr_1.chownr)(created, uid, gid, er => done(er)); - } - else if (needChmod) { - node_fs_1.default.chmod(dir, mode, cb); - } - else { - cb(); - } - } - }; - if (dir === cwd) { - return checkCwd(dir, done); - } - if (preserve) { - return promises_1.default.mkdir(dir, { mode, recursive: true }).then(made => done(null, made ?? undefined), // oh, ts - done); - } - const sub = (0, normalize_windows_path_js_1.normalizeWindowsPath)(node_path_1.default.relative(cwd, dir)); - const parts = sub.split('/'); - mkdir_(cwd, parts, mode, unlink, cwd, undefined, done); -}; -exports.mkdir = mkdir; -const mkdir_ = (base, parts, mode, unlink, cwd, created, cb) => { - if (parts.length === 0) { - return cb(null, created); - } - const p = parts.shift(); - const part = (0, normalize_windows_path_js_1.normalizeWindowsPath)(node_path_1.default.resolve(base + '/' + p)); - node_fs_1.default.mkdir(part, mode, onmkdir(part, parts, mode, unlink, cwd, created, cb)); -}; -const onmkdir = (part, parts, mode, unlink, cwd, created, cb) => (er) => { - if (er) { - node_fs_1.default.lstat(part, (statEr, st) => { - if (statEr) { - statEr.path = statEr.path && (0, normalize_windows_path_js_1.normalizeWindowsPath)(statEr.path); - cb(statEr); - } - else if (st.isDirectory()) { - mkdir_(part, parts, mode, unlink, cwd, created, cb); - } - else if (unlink) { - node_fs_1.default.unlink(part, er => { - if (er) { - return cb(er); - } - node_fs_1.default.mkdir(part, mode, onmkdir(part, parts, mode, unlink, cwd, created, cb)); - }); - } - else if (st.isSymbolicLink()) { - return cb(new symlink_error_js_1.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; - try { - ok = node_fs_1.default.statSync(dir).isDirectory(); - } - catch (er) { - code = er?.code; - } - finally { - if (!ok) { - throw new cwd_error_js_1.CwdError(dir, code ?? 'ENOTDIR'); - } - } -}; -const mkdirSync = (dir, opt) => { - dir = (0, normalize_windows_path_js_1.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 = (0, normalize_windows_path_js_1.normalizeWindowsPath)(opt.cwd); - const done = (created) => { - if (created && doChown) { - (0, chownr_1.chownrSync)(created, uid, gid); - } - if (needChmod) { - node_fs_1.default.chmodSync(dir, mode); - } - }; - if (dir === cwd) { - checkCwdSync(cwd); - return done(); - } - if (preserve) { - return done(node_fs_1.default.mkdirSync(dir, { mode, recursive: true }) ?? undefined); - } - const sub = (0, normalize_windows_path_js_1.normalizeWindowsPath)(node_path_1.default.relative(cwd, dir)); - const parts = sub.split('/'); - let created; - for (let p = parts.shift(), part = cwd; p && (part += '/' + p); p = parts.shift()) { - part = (0, normalize_windows_path_js_1.normalizeWindowsPath)(node_path_1.default.resolve(part)); - try { - node_fs_1.default.mkdirSync(part, mode); - created = created || part; - } - catch { - const st = node_fs_1.default.lstatSync(part); - if (st.isDirectory()) { - continue; - } - else if (unlink) { - node_fs_1.default.unlinkSync(part); - node_fs_1.default.mkdirSync(part, mode); - created = created || part; - continue; - } - else if (st.isSymbolicLink()) { - return new symlink_error_js_1.SymlinkError(part, part + '/' + parts.join('/')); - } - } - } - return done(created); -}; -exports.mkdirSync = mkdirSync; -//# sourceMappingURL=mkdir.js.map
\ No newline at end of file |