rimraf 3.0.2 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/README.md +128 -64
- package/dist/cjs/package.json +74 -0
- package/dist/cjs/src/bin.d.ts +7 -0
- package/dist/cjs/src/bin.js +144 -0
- package/dist/cjs/src/bin.js.map +1 -0
- package/dist/cjs/src/default-tmp.d.ts +2 -0
- package/dist/cjs/src/default-tmp.js +61 -0
- package/dist/cjs/src/default-tmp.js.map +1 -0
- package/dist/cjs/src/fix-eperm.d.ts +2 -0
- package/dist/cjs/src/fix-eperm.js +58 -0
- package/dist/cjs/src/fix-eperm.js.map +1 -0
- package/dist/cjs/src/fs.d.ts +17 -0
- package/dist/cjs/src/fs.js +41 -0
- package/dist/cjs/src/fs.js.map +1 -0
- package/dist/cjs/src/ignore-enoent.d.ts +2 -0
- package/dist/cjs/src/ignore-enoent.js +21 -0
- package/dist/cjs/src/ignore-enoent.js.map +1 -0
- package/dist/cjs/src/index.d.ts +60 -0
- package/dist/cjs/src/index.js +79 -0
- package/dist/cjs/src/index.js.map +1 -0
- package/dist/cjs/src/opt-arg.d.ts +3 -0
- package/dist/cjs/src/opt-arg.js +8 -0
- package/dist/cjs/src/opt-arg.js.map +1 -0
- package/dist/cjs/src/path-arg.d.ts +3 -0
- package/dist/cjs/src/path-arg.js +54 -0
- package/dist/cjs/src/path-arg.js.map +1 -0
- package/dist/cjs/src/platform.d.ts +2 -0
- package/dist/cjs/src/platform.js +4 -0
- package/dist/cjs/src/platform.js.map +1 -0
- package/dist/cjs/src/readdir-or-error.d.ts +3 -0
- package/dist/cjs/src/readdir-or-error.js +19 -0
- package/dist/cjs/src/readdir-or-error.js.map +1 -0
- package/dist/cjs/src/retry-busy.d.ts +7 -0
- package/dist/cjs/src/retry-busy.js +65 -0
- package/dist/cjs/src/retry-busy.js.map +1 -0
- package/dist/cjs/src/rimraf-manual.d.ts +2 -0
- package/dist/cjs/src/rimraf-manual.js +12 -0
- package/dist/cjs/src/rimraf-manual.js.map +1 -0
- package/dist/cjs/src/rimraf-move-remove.d.ts +3 -0
- package/dist/cjs/src/rimraf-move-remove.js +124 -0
- package/dist/cjs/src/rimraf-move-remove.js.map +1 -0
- package/dist/cjs/src/rimraf-native.d.ts +3 -0
- package/dist/cjs/src/rimraf-native.js +18 -0
- package/dist/cjs/src/rimraf-native.js.map +1 -0
- package/dist/cjs/src/rimraf-posix.d.ts +3 -0
- package/dist/cjs/src/rimraf-posix.js +60 -0
- package/dist/cjs/src/rimraf-posix.js.map +1 -0
- package/dist/cjs/src/rimraf-windows.d.ts +3 -0
- package/dist/cjs/src/rimraf-windows.js +110 -0
- package/dist/cjs/src/rimraf-windows.js.map +1 -0
- package/dist/cjs/src/use-native.d.ts +2 -0
- package/dist/cjs/src/use-native.js +9 -0
- package/dist/cjs/src/use-native.js.map +1 -0
- package/dist/mjs/package.json +74 -0
- package/dist/mjs/src/bin.d.ts +7 -0
- package/dist/mjs/src/bin.js +138 -0
- package/dist/mjs/src/bin.js.map +1 -0
- package/dist/mjs/src/default-tmp.d.ts +2 -0
- package/dist/mjs/src/default-tmp.js +55 -0
- package/dist/mjs/src/default-tmp.js.map +1 -0
- package/dist/mjs/src/fix-eperm.d.ts +2 -0
- package/dist/mjs/src/fix-eperm.js +53 -0
- package/dist/mjs/src/fix-eperm.js.map +1 -0
- package/dist/mjs/src/fs.d.ts +17 -0
- package/dist/mjs/src/fs.js +27 -0
- package/dist/mjs/src/fs.js.map +1 -0
- package/dist/mjs/src/ignore-enoent.d.ts +2 -0
- package/dist/mjs/src/ignore-enoent.js +16 -0
- package/dist/mjs/src/ignore-enoent.js.map +1 -0
- package/dist/mjs/src/index.d.ts +60 -0
- package/dist/mjs/src/index.js +71 -0
- package/dist/mjs/src/index.js.map +1 -0
- package/dist/mjs/src/opt-arg.d.ts +3 -0
- package/dist/mjs/src/opt-arg.js +6 -0
- package/dist/mjs/src/opt-arg.js.map +1 -0
- package/dist/mjs/src/path-arg.d.ts +3 -0
- package/dist/mjs/src/path-arg.js +49 -0
- package/dist/mjs/src/path-arg.js.map +1 -0
- package/dist/mjs/src/platform.d.ts +2 -0
- package/dist/mjs/src/platform.js +2 -0
- package/dist/mjs/src/platform.js.map +1 -0
- package/dist/mjs/src/readdir-or-error.d.ts +3 -0
- package/dist/mjs/src/readdir-or-error.js +14 -0
- package/dist/mjs/src/readdir-or-error.js.map +1 -0
- package/dist/mjs/src/retry-busy.d.ts +7 -0
- package/dist/mjs/src/retry-busy.js +60 -0
- package/dist/mjs/src/retry-busy.js.map +1 -0
- package/dist/mjs/src/rimraf-manual.d.ts +2 -0
- package/dist/mjs/src/rimraf-manual.js +6 -0
- package/dist/mjs/src/rimraf-manual.js.map +1 -0
- package/dist/mjs/src/rimraf-move-remove.d.ts +3 -0
- package/dist/mjs/src/rimraf-move-remove.js +119 -0
- package/dist/mjs/src/rimraf-move-remove.js.map +1 -0
- package/dist/mjs/src/rimraf-native.d.ts +3 -0
- package/dist/mjs/src/rimraf-native.js +13 -0
- package/dist/mjs/src/rimraf-native.js.map +1 -0
- package/dist/mjs/src/rimraf-posix.d.ts +3 -0
- package/dist/mjs/src/rimraf-posix.js +55 -0
- package/dist/mjs/src/rimraf-posix.js.map +1 -0
- package/dist/mjs/src/rimraf-windows.d.ts +3 -0
- package/dist/mjs/src/rimraf-windows.js +105 -0
- package/dist/mjs/src/rimraf-windows.js.map +1 -0
- package/dist/mjs/src/use-native.d.ts +2 -0
- package/dist/mjs/src/use-native.js +6 -0
- package/dist/mjs/src/use-native.js.map +1 -0
- package/package.json +57 -15
- package/CHANGELOG.md +0 -65
- package/bin.js +0 -68
- package/rimraf.js +0 -360
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// promisify ourselves, because older nodes don't have fs.promises
|
|
3
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
+
};
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.promises = exports.unlinkSync = exports.statSync = exports.rmSync = exports.rmdirSync = exports.renameSync = exports.readdirSync = exports.mkdirSync = exports.chmodSync = void 0;
|
|
8
|
+
const fs_1 = __importDefault(require("fs"));
|
|
9
|
+
// sync ones just take the sync version from node
|
|
10
|
+
var fs_2 = require("fs");
|
|
11
|
+
Object.defineProperty(exports, "chmodSync", { enumerable: true, get: function () { return fs_2.chmodSync; } });
|
|
12
|
+
Object.defineProperty(exports, "mkdirSync", { enumerable: true, get: function () { return fs_2.mkdirSync; } });
|
|
13
|
+
Object.defineProperty(exports, "readdirSync", { enumerable: true, get: function () { return fs_2.readdirSync; } });
|
|
14
|
+
Object.defineProperty(exports, "renameSync", { enumerable: true, get: function () { return fs_2.renameSync; } });
|
|
15
|
+
Object.defineProperty(exports, "rmdirSync", { enumerable: true, get: function () { return fs_2.rmdirSync; } });
|
|
16
|
+
Object.defineProperty(exports, "rmSync", { enumerable: true, get: function () { return fs_2.rmSync; } });
|
|
17
|
+
Object.defineProperty(exports, "statSync", { enumerable: true, get: function () { return fs_2.statSync; } });
|
|
18
|
+
Object.defineProperty(exports, "unlinkSync", { enumerable: true, get: function () { return fs_2.unlinkSync; } });
|
|
19
|
+
// unrolled for better inlining, this seems to get better performance
|
|
20
|
+
// than something like:
|
|
21
|
+
// const makeCb = (res, rej) => (er, ...d) => er ? rej(er) : res(...d)
|
|
22
|
+
// which would be a bit cleaner.
|
|
23
|
+
const chmod = (path, mode) => new Promise((res, rej) => fs_1.default.chmod(path, mode, (er, ...d) => (er ? rej(er) : res(...d))));
|
|
24
|
+
const mkdir = (path, options) => new Promise((res, rej) => fs_1.default.mkdir(path, options, (er, made) => (er ? rej(er) : res(made))));
|
|
25
|
+
const readdir = (path) => new Promise((res, rej) => fs_1.default.readdir(path, (er, data) => (er ? rej(er) : res(data))));
|
|
26
|
+
const rename = (oldPath, newPath) => new Promise((res, rej) => fs_1.default.rename(oldPath, newPath, (er, ...d) => (er ? rej(er) : res(...d))));
|
|
27
|
+
const rm = (path, options) => new Promise((res, rej) => fs_1.default.rm(path, options, (er, ...d) => (er ? rej(er) : res(...d))));
|
|
28
|
+
const rmdir = (path) => new Promise((res, rej) => fs_1.default.rmdir(path, (er, ...d) => (er ? rej(er) : res(...d))));
|
|
29
|
+
const stat = (path) => new Promise((res, rej) => fs_1.default.stat(path, (er, data) => (er ? rej(er) : res(data))));
|
|
30
|
+
const unlink = (path) => new Promise((res, rej) => fs_1.default.unlink(path, (er, ...d) => (er ? rej(er) : res(...d))));
|
|
31
|
+
exports.promises = {
|
|
32
|
+
chmod,
|
|
33
|
+
mkdir,
|
|
34
|
+
readdir,
|
|
35
|
+
rename,
|
|
36
|
+
rm,
|
|
37
|
+
rmdir,
|
|
38
|
+
stat,
|
|
39
|
+
unlink,
|
|
40
|
+
};
|
|
41
|
+
//# sourceMappingURL=fs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs.js","sourceRoot":"","sources":["../../../src/fs.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ignoreENOENTSync = exports.ignoreENOENT = void 0;
|
|
4
|
+
const ignoreENOENT = async (p) => p.catch(er => {
|
|
5
|
+
if (er.code !== 'ENOENT') {
|
|
6
|
+
throw er;
|
|
7
|
+
}
|
|
8
|
+
});
|
|
9
|
+
exports.ignoreENOENT = ignoreENOENT;
|
|
10
|
+
const ignoreENOENTSync = (fn) => {
|
|
11
|
+
try {
|
|
12
|
+
return fn();
|
|
13
|
+
}
|
|
14
|
+
catch (er) {
|
|
15
|
+
if (er?.code !== 'ENOENT') {
|
|
16
|
+
throw er;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
exports.ignoreENOENTSync = ignoreENOENTSync;
|
|
21
|
+
//# sourceMappingURL=ignore-enoent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ignore-enoent.js","sourceRoot":"","sources":["../../../src/ignore-enoent.ts"],"names":[],"mappings":";;;AAEO,MAAM,YAAY,GAAG,KAAK,EAAE,CAAe,EAAE,EAAE,CACpD,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE;IACX,IAAI,EAAE,CAAC,IAAI,KAAK,QAAQ,EAAE;QACxB,MAAM,EAAE,CAAA;KACT;AACH,CAAC,CAAC,CAAA;AALS,QAAA,YAAY,gBAKrB;AAEG,MAAM,gBAAgB,GAAG,CAAC,EAAa,EAAE,EAAE;IAChD,IAAI;QACF,OAAO,EAAE,EAAE,CAAA;KACZ;IAAC,OAAO,EAAE,EAAE;QACX,IAAK,EAAc,EAAE,IAAI,KAAK,QAAQ,EAAE;YACtC,MAAM,EAAE,CAAA;SACT;KACF;AACH,CAAC,CAAA;AARY,QAAA,gBAAgB,oBAQ5B"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
export interface RimrafOptions {
|
|
2
|
+
preserveRoot?: boolean;
|
|
3
|
+
tmp?: string;
|
|
4
|
+
maxRetries?: number;
|
|
5
|
+
retryDelay?: number;
|
|
6
|
+
backoff?: number;
|
|
7
|
+
maxBackoff?: number;
|
|
8
|
+
}
|
|
9
|
+
export declare const isRimrafOptions: (o: any) => o is RimrafOptions;
|
|
10
|
+
export declare const assertRimrafOptions: (o: any) => void;
|
|
11
|
+
export declare const nativeSync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
12
|
+
export declare const native: ((path: string | string[], opt?: RimrafOptions) => Promise<void>) & {
|
|
13
|
+
sync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
14
|
+
};
|
|
15
|
+
export declare const manualSync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
16
|
+
export declare const manual: ((path: string | string[], opt?: RimrafOptions) => Promise<void>) & {
|
|
17
|
+
sync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
18
|
+
};
|
|
19
|
+
export declare const windowsSync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
20
|
+
export declare const windows: ((path: string | string[], opt?: RimrafOptions) => Promise<void>) & {
|
|
21
|
+
sync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
22
|
+
};
|
|
23
|
+
export declare const posixSync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
24
|
+
export declare const posix: ((path: string | string[], opt?: RimrafOptions) => Promise<void>) & {
|
|
25
|
+
sync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
26
|
+
};
|
|
27
|
+
export declare const moveRemoveSync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
28
|
+
export declare const moveRemove: ((path: string | string[], opt?: RimrafOptions) => Promise<void>) & {
|
|
29
|
+
sync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
30
|
+
};
|
|
31
|
+
export declare const rimrafSync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
32
|
+
export declare const sync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
33
|
+
export declare const rimraf: ((path: string | string[], opt?: RimrafOptions) => Promise<void>) & {
|
|
34
|
+
rimraf: ((path: string | string[], opt?: RimrafOptions) => Promise<void>) & {
|
|
35
|
+
sync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
36
|
+
};
|
|
37
|
+
sync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
38
|
+
rimrafSync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
39
|
+
manual: ((path: string | string[], opt?: RimrafOptions) => Promise<void>) & {
|
|
40
|
+
sync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
41
|
+
};
|
|
42
|
+
manualSync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
43
|
+
native: ((path: string | string[], opt?: RimrafOptions) => Promise<void>) & {
|
|
44
|
+
sync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
45
|
+
};
|
|
46
|
+
nativeSync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
47
|
+
posix: ((path: string | string[], opt?: RimrafOptions) => Promise<void>) & {
|
|
48
|
+
sync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
49
|
+
};
|
|
50
|
+
posixSync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
51
|
+
windows: ((path: string | string[], opt?: RimrafOptions) => Promise<void>) & {
|
|
52
|
+
sync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
53
|
+
};
|
|
54
|
+
windowsSync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
55
|
+
moveRemove: ((path: string | string[], opt?: RimrafOptions) => Promise<void>) & {
|
|
56
|
+
sync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
57
|
+
};
|
|
58
|
+
moveRemoveSync: (path: string | string[], opt?: RimrafOptions) => void;
|
|
59
|
+
};
|
|
60
|
+
export default rimraf;
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.rimraf = exports.sync = exports.rimrafSync = exports.moveRemove = exports.moveRemoveSync = exports.posix = exports.posixSync = exports.windows = exports.windowsSync = exports.manual = exports.manualSync = exports.native = exports.nativeSync = exports.assertRimrafOptions = exports.isRimrafOptions = void 0;
|
|
7
|
+
const opt_arg_1 = __importDefault(require("./opt-arg"));
|
|
8
|
+
const path_arg_1 = __importDefault(require("./path-arg"));
|
|
9
|
+
/* c8 ignore start */
|
|
10
|
+
const typeOrUndef = (val, t) => typeof val === 'undefined' || typeof val === t;
|
|
11
|
+
/* c8 ignore stop */
|
|
12
|
+
const isRimrafOptions = (o) => !!o &&
|
|
13
|
+
typeof o === 'object' &&
|
|
14
|
+
typeOrUndef(o.preserveRoot, 'boolean') &&
|
|
15
|
+
typeOrUndef(o.preserveRoot, 'number') &&
|
|
16
|
+
typeOrUndef(o.maxRetries, 'number') &&
|
|
17
|
+
typeOrUndef(o.retryDelay, 'number') &&
|
|
18
|
+
typeOrUndef(o.backoff, 'number') &&
|
|
19
|
+
typeOrUndef(o.maxBackoff, 'number');
|
|
20
|
+
exports.isRimrafOptions = isRimrafOptions;
|
|
21
|
+
/* c8 ignore start */
|
|
22
|
+
const assertRimrafOptions = (o) => {
|
|
23
|
+
if (!(0, exports.isRimrafOptions)(o)) {
|
|
24
|
+
throw new Error('invalid rimraf options');
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
exports.assertRimrafOptions = assertRimrafOptions;
|
|
28
|
+
/* c8 ignore stop */
|
|
29
|
+
const rimraf_manual_1 = require("./rimraf-manual");
|
|
30
|
+
const rimraf_move_remove_1 = require("./rimraf-move-remove");
|
|
31
|
+
const rimraf_native_1 = require("./rimraf-native");
|
|
32
|
+
const rimraf_posix_1 = require("./rimraf-posix");
|
|
33
|
+
const rimraf_windows_1 = require("./rimraf-windows");
|
|
34
|
+
const use_native_1 = require("./use-native");
|
|
35
|
+
const wrap = (fn) => async (path, opt) => {
|
|
36
|
+
const options = (0, opt_arg_1.default)(opt);
|
|
37
|
+
await (Array.isArray(path)
|
|
38
|
+
? Promise.all(path.map(p => fn((0, path_arg_1.default)(p, options), options)))
|
|
39
|
+
: fn((0, path_arg_1.default)(path, options), options));
|
|
40
|
+
};
|
|
41
|
+
const wrapSync = (fn) => (path, opt) => {
|
|
42
|
+
const options = (0, opt_arg_1.default)(opt);
|
|
43
|
+
return Array.isArray(path)
|
|
44
|
+
? path.forEach(p => fn((0, path_arg_1.default)(p, options), options))
|
|
45
|
+
: fn((0, path_arg_1.default)(path, options), options);
|
|
46
|
+
};
|
|
47
|
+
exports.nativeSync = wrapSync(rimraf_native_1.rimrafNativeSync);
|
|
48
|
+
exports.native = Object.assign(wrap(rimraf_native_1.rimrafNative), { sync: exports.nativeSync });
|
|
49
|
+
exports.manualSync = wrapSync(rimraf_manual_1.rimrafManualSync);
|
|
50
|
+
exports.manual = Object.assign(wrap(rimraf_manual_1.rimrafManual), { sync: exports.manualSync });
|
|
51
|
+
exports.windowsSync = wrapSync(rimraf_windows_1.rimrafWindowsSync);
|
|
52
|
+
exports.windows = Object.assign(wrap(rimraf_windows_1.rimrafWindows), { sync: exports.windowsSync });
|
|
53
|
+
exports.posixSync = wrapSync(rimraf_posix_1.rimrafPosixSync);
|
|
54
|
+
exports.posix = Object.assign(wrap(rimraf_posix_1.rimrafPosix), { sync: exports.posixSync });
|
|
55
|
+
exports.moveRemoveSync = wrapSync(rimraf_move_remove_1.rimrafMoveRemoveSync);
|
|
56
|
+
exports.moveRemove = Object.assign(wrap(rimraf_move_remove_1.rimrafMoveRemove), {
|
|
57
|
+
sync: exports.moveRemoveSync,
|
|
58
|
+
});
|
|
59
|
+
exports.rimrafSync = wrapSync((path, opt) => (0, use_native_1.useNativeSync)() ? (0, rimraf_native_1.rimrafNativeSync)(path, opt) : (0, rimraf_manual_1.rimrafManualSync)(path, opt));
|
|
60
|
+
exports.sync = exports.rimrafSync;
|
|
61
|
+
exports.rimraf = Object.assign(wrap((path, opt) => (0, use_native_1.useNative)() ? (0, rimraf_native_1.rimrafNative)(path, opt) : (0, rimraf_manual_1.rimrafManual)(path, opt)), {
|
|
62
|
+
// this weirdness because it's easier than explicitly declaring
|
|
63
|
+
rimraf: exports.manual,
|
|
64
|
+
sync: exports.rimrafSync,
|
|
65
|
+
rimrafSync: exports.rimrafSync,
|
|
66
|
+
manual: exports.manual,
|
|
67
|
+
manualSync: exports.manualSync,
|
|
68
|
+
native: exports.native,
|
|
69
|
+
nativeSync: exports.nativeSync,
|
|
70
|
+
posix: exports.posix,
|
|
71
|
+
posixSync: exports.posixSync,
|
|
72
|
+
windows: exports.windows,
|
|
73
|
+
windowsSync: exports.windowsSync,
|
|
74
|
+
moveRemove: exports.moveRemove,
|
|
75
|
+
moveRemoveSync: exports.moveRemoveSync,
|
|
76
|
+
});
|
|
77
|
+
exports.rimraf.rimraf = exports.rimraf;
|
|
78
|
+
exports.default = exports.rimraf;
|
|
79
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"opt-arg.js","sourceRoot":"","sources":["../../../src/opt-arg.ts"],"names":[],"mappings":";;AAAA,mCAA4D;AAC5D,kBAAe,CAAC,MAAqB,EAAE,EAAE,EAAE;IACzC,IAAA,2BAAmB,EAAC,GAAG,CAAC,CAAA;IACxB,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const platform_1 = __importDefault(require("./platform"));
|
|
7
|
+
const path_1 = require("path");
|
|
8
|
+
const util_1 = require("util");
|
|
9
|
+
const pathArg = (path, opt = {}) => {
|
|
10
|
+
const type = typeof path;
|
|
11
|
+
if (type !== 'string') {
|
|
12
|
+
const ctor = path && type === 'object' && path.constructor;
|
|
13
|
+
const received = ctor && ctor.name
|
|
14
|
+
? `an instance of ${ctor.name}`
|
|
15
|
+
: type === 'object'
|
|
16
|
+
? (0, util_1.inspect)(path)
|
|
17
|
+
: `type ${type} ${path}`;
|
|
18
|
+
const msg = 'The "path" argument must be of type string. ' + `Received ${received}`;
|
|
19
|
+
throw Object.assign(new TypeError(msg), {
|
|
20
|
+
path,
|
|
21
|
+
code: 'ERR_INVALID_ARG_TYPE',
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
if (/\0/.test(path)) {
|
|
25
|
+
// simulate same failure that node raises
|
|
26
|
+
const msg = 'path must be a string without null bytes';
|
|
27
|
+
throw Object.assign(new TypeError(msg), {
|
|
28
|
+
path,
|
|
29
|
+
code: 'ERR_INVALID_ARG_VALUE',
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
path = (0, path_1.resolve)(path);
|
|
33
|
+
const { root } = (0, path_1.parse)(path);
|
|
34
|
+
if (path === root && opt.preserveRoot !== false) {
|
|
35
|
+
const msg = 'refusing to remove root directory without preserveRoot:false';
|
|
36
|
+
throw Object.assign(new Error(msg), {
|
|
37
|
+
path,
|
|
38
|
+
code: 'ERR_PRESERVE_ROOT',
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
if (platform_1.default === 'win32') {
|
|
42
|
+
const badWinChars = /[*|"<>?:]/;
|
|
43
|
+
const { root } = (0, path_1.parse)(path);
|
|
44
|
+
if (badWinChars.test(path.substring(root.length))) {
|
|
45
|
+
throw Object.assign(new Error('Illegal characters in path.'), {
|
|
46
|
+
path,
|
|
47
|
+
code: 'EINVAL',
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return path;
|
|
52
|
+
};
|
|
53
|
+
exports.default = pathArg;
|
|
54
|
+
//# sourceMappingURL=path-arg.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path-arg.js","sourceRoot":"","sources":["../../../src/path-arg.ts"],"names":[],"mappings":";;;;;AAAA,0DAAiC;AACjC,+BAAqC;AACrC,+BAA8B;AAG9B,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,MAAqB,EAAE,EAAE,EAAE;IACxD,MAAM,IAAI,GAAG,OAAO,IAAI,CAAA;IACxB,IAAI,IAAI,KAAK,QAAQ,EAAE;QACrB,MAAM,IAAI,GAAG,IAAI,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,CAAA;QAC1D,MAAM,QAAQ,GACZ,IAAI,IAAI,IAAI,CAAC,IAAI;YACf,CAAC,CAAC,kBAAkB,IAAI,CAAC,IAAI,EAAE;YAC/B,CAAC,CAAC,IAAI,KAAK,QAAQ;gBACnB,CAAC,CAAC,IAAA,cAAO,EAAC,IAAI,CAAC;gBACf,CAAC,CAAC,QAAQ,IAAI,IAAI,IAAI,EAAE,CAAA;QAC5B,MAAM,GAAG,GACP,8CAA8C,GAAG,YAAY,QAAQ,EAAE,CAAA;QACzE,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE;YACtC,IAAI;YACJ,IAAI,EAAE,sBAAsB;SAC7B,CAAC,CAAA;KACH;IAED,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACnB,yCAAyC;QACzC,MAAM,GAAG,GAAG,0CAA0C,CAAA;QACtD,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE;YACtC,IAAI;YACJ,IAAI,EAAE,uBAAuB;SAC9B,CAAC,CAAA;KACH;IAED,IAAI,GAAG,IAAA,cAAO,EAAC,IAAI,CAAC,CAAA;IACpB,MAAM,EAAE,IAAI,EAAE,GAAG,IAAA,YAAK,EAAC,IAAI,CAAC,CAAA;IAE5B,IAAI,IAAI,KAAK,IAAI,IAAI,GAAG,CAAC,YAAY,KAAK,KAAK,EAAE;QAC/C,MAAM,GAAG,GAAG,8DAA8D,CAAA;QAC1E,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE;YAClC,IAAI;YACJ,IAAI,EAAE,mBAAmB;SAC1B,CAAC,CAAA;KACH;IAED,IAAI,kBAAQ,KAAK,OAAO,EAAE;QACxB,MAAM,WAAW,GAAG,WAAW,CAAA;QAC/B,MAAM,EAAE,IAAI,EAAE,GAAG,IAAA,YAAK,EAAC,IAAI,CAAC,CAAA;QAC5B,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE;YACjD,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,EAAE;gBAC5D,IAAI;gBACJ,IAAI,EAAE,QAAQ;aACf,CAAC,CAAA;SACH;KACF;IAED,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,kBAAe,OAAO,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform.js","sourceRoot":"","sources":["../../../src/platform.ts"],"names":[],"mappings":";;AAAA,kBAAe,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,OAAO,CAAC,QAAQ,CAAA"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.readdirOrErrorSync = exports.readdirOrError = void 0;
|
|
4
|
+
// returns an array of entries if readdir() works,
|
|
5
|
+
// or the error that readdir() raised if not.
|
|
6
|
+
const fs_1 = require("./fs");
|
|
7
|
+
const { readdir } = fs_1.promises;
|
|
8
|
+
const readdirOrError = (path) => readdir(path).catch(er => er);
|
|
9
|
+
exports.readdirOrError = readdirOrError;
|
|
10
|
+
const readdirOrErrorSync = (path) => {
|
|
11
|
+
try {
|
|
12
|
+
return (0, fs_1.readdirSync)(path);
|
|
13
|
+
}
|
|
14
|
+
catch (er) {
|
|
15
|
+
return er;
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
exports.readdirOrErrorSync = readdirOrErrorSync;
|
|
19
|
+
//# sourceMappingURL=readdir-or-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"readdir-or-error.js","sourceRoot":"","sources":["../../../src/readdir-or-error.ts"],"names":[],"mappings":";;;AAAA,kDAAkD;AAClD,6CAA6C;AAC7C,6BAAqD;AACrD,MAAM,EAAE,OAAO,EAAE,GAAG,aAAQ,CAAA;AACrB,MAAM,cAAc,GAAG,CAAC,IAAY,EAAE,EAAE,CAC7C,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAa,CAAC,CAAA;AAD7B,QAAA,cAAc,kBACe;AACnC,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,EAAE;IACjD,IAAI;QACF,OAAO,IAAA,gBAAW,EAAC,IAAI,CAAC,CAAA;KACzB;IAAC,OAAO,EAAE,EAAE;QACX,OAAO,EAAa,CAAA;KACrB;AACH,CAAC,CAAA;AANY,QAAA,kBAAkB,sBAM9B"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { RimrafOptions } from '.';
|
|
2
|
+
export declare const MAXBACKOFF = 200;
|
|
3
|
+
export declare const RATE = 1.2;
|
|
4
|
+
export declare const MAXRETRIES = 10;
|
|
5
|
+
export declare const codes: Set<string>;
|
|
6
|
+
export declare const retryBusy: (fn: (path: string) => Promise<any>) => (path: string, opt: RimrafOptions, backoff?: number, total?: number) => Promise<any>;
|
|
7
|
+
export declare const retryBusySync: (fn: (path: string) => any) => (path: string, opt: RimrafOptions) => any;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// note: max backoff is the maximum that any *single* backoff will do
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.retryBusySync = exports.retryBusy = exports.codes = exports.MAXRETRIES = exports.RATE = exports.MAXBACKOFF = void 0;
|
|
5
|
+
exports.MAXBACKOFF = 200;
|
|
6
|
+
exports.RATE = 1.2;
|
|
7
|
+
exports.MAXRETRIES = 10;
|
|
8
|
+
exports.codes = new Set(['EMFILE', 'ENFILE', 'EBUSY']);
|
|
9
|
+
const retryBusy = (fn) => {
|
|
10
|
+
const method = async (path, opt, backoff = 1, total = 0) => {
|
|
11
|
+
const mbo = opt.maxBackoff || exports.MAXBACKOFF;
|
|
12
|
+
const rate = opt.backoff || exports.RATE;
|
|
13
|
+
const max = opt.maxRetries || exports.MAXRETRIES;
|
|
14
|
+
let retries = 0;
|
|
15
|
+
while (true) {
|
|
16
|
+
try {
|
|
17
|
+
return await fn(path);
|
|
18
|
+
}
|
|
19
|
+
catch (er) {
|
|
20
|
+
const fer = er;
|
|
21
|
+
if (fer?.code && exports.codes.has(fer.code)) {
|
|
22
|
+
backoff = Math.ceil(backoff * rate);
|
|
23
|
+
total = backoff + total;
|
|
24
|
+
if (total < mbo) {
|
|
25
|
+
return new Promise((res, rej) => {
|
|
26
|
+
setTimeout(() => {
|
|
27
|
+
method(path, opt, backoff, total).then(res, rej);
|
|
28
|
+
}, backoff);
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
if (retries < max) {
|
|
32
|
+
retries++;
|
|
33
|
+
continue;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
throw er;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
return method;
|
|
41
|
+
};
|
|
42
|
+
exports.retryBusy = retryBusy;
|
|
43
|
+
// just retries, no async so no backoff
|
|
44
|
+
const retryBusySync = (fn) => {
|
|
45
|
+
const method = (path, opt) => {
|
|
46
|
+
const max = opt.maxRetries || exports.MAXRETRIES;
|
|
47
|
+
let retries = 0;
|
|
48
|
+
while (true) {
|
|
49
|
+
try {
|
|
50
|
+
return fn(path);
|
|
51
|
+
}
|
|
52
|
+
catch (er) {
|
|
53
|
+
const fer = er;
|
|
54
|
+
if (fer?.code && exports.codes.has(fer.code) && retries < max) {
|
|
55
|
+
retries++;
|
|
56
|
+
continue;
|
|
57
|
+
}
|
|
58
|
+
throw er;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
return method;
|
|
63
|
+
};
|
|
64
|
+
exports.retryBusySync = retryBusySync;
|
|
65
|
+
//# sourceMappingURL=retry-busy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry-busy.js","sourceRoot":"","sources":["../../../src/retry-busy.ts"],"names":[],"mappings":";AAAA,qEAAqE;;;AAKxD,QAAA,UAAU,GAAG,GAAG,CAAA;AAChB,QAAA,IAAI,GAAG,GAAG,CAAA;AACV,QAAA,UAAU,GAAG,EAAE,CAAA;AACf,QAAA,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;AAEpD,MAAM,SAAS,GAAG,CAAC,EAAkC,EAAE,EAAE;IAC9D,MAAM,MAAM,GAAG,KAAK,EAClB,IAAY,EACZ,GAAkB,EAClB,OAAO,GAAG,CAAC,EACX,KAAK,GAAG,CAAC,EACT,EAAE;QACF,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,IAAI,kBAAU,CAAA;QACxC,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,IAAI,YAAI,CAAA;QAChC,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,IAAI,kBAAU,CAAA;QACxC,IAAI,OAAO,GAAG,CAAC,CAAA;QACf,OAAO,IAAI,EAAE;YACX,IAAI;gBACF,OAAO,MAAM,EAAE,CAAC,IAAI,CAAC,CAAA;aACtB;YAAC,OAAO,EAAE,EAAE;gBACX,MAAM,GAAG,GAAG,EAAa,CAAA;gBACzB,IAAI,GAAG,EAAE,IAAI,IAAI,aAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;oBACpC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,CAAA;oBACnC,KAAK,GAAG,OAAO,GAAG,KAAK,CAAA;oBACvB,IAAI,KAAK,GAAG,GAAG,EAAE;wBACf,OAAO,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;4BAC9B,UAAU,CAAC,GAAG,EAAE;gCACd,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;4BAClD,CAAC,EAAE,OAAO,CAAC,CAAA;wBACb,CAAC,CAAC,CAAA;qBACH;oBACD,IAAI,OAAO,GAAG,GAAG,EAAE;wBACjB,OAAO,EAAE,CAAA;wBACT,SAAQ;qBACT;iBACF;gBACD,MAAM,EAAE,CAAA;aACT;SACF;IACH,CAAC,CAAA;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AArCY,QAAA,SAAS,aAqCrB;AAED,uCAAuC;AAChC,MAAM,aAAa,GAAG,CAAC,EAAyB,EAAE,EAAE;IACzD,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,GAAkB,EAAE,EAAE;QAClD,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,IAAI,kBAAU,CAAA;QACxC,IAAI,OAAO,GAAG,CAAC,CAAA;QACf,OAAO,IAAI,EAAE;YACX,IAAI;gBACF,OAAO,EAAE,CAAC,IAAI,CAAC,CAAA;aAChB;YAAC,OAAO,EAAE,EAAE;gBACX,MAAM,GAAG,GAAG,EAAa,CAAA;gBACzB,IAAI,GAAG,EAAE,IAAI,IAAI,aAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,OAAO,GAAG,GAAG,EAAE;oBACrD,OAAO,EAAE,CAAA;oBACT,SAAQ;iBACT;gBACD,MAAM,EAAE,CAAA;aACT;SACF;IACH,CAAC,CAAA;IACD,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAlBY,QAAA,aAAa,iBAkBzB"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const rimrafManual: ((path: string, opt: import(".").RimrafOptions) => Promise<any>) | ((path: string, opt: import(".").RimrafOptions, state?: symbol) => Promise<void>);
|
|
2
|
+
export declare const rimrafManualSync: (path: string, opt: import(".").RimrafOptions, state?: symbol) => void;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.rimrafManualSync = exports.rimrafManual = void 0;
|
|
7
|
+
const platform_1 = __importDefault(require("./platform"));
|
|
8
|
+
const rimraf_posix_1 = require("./rimraf-posix");
|
|
9
|
+
const rimraf_windows_1 = require("./rimraf-windows");
|
|
10
|
+
exports.rimrafManual = platform_1.default === 'win32' ? rimraf_windows_1.rimrafWindows : rimraf_posix_1.rimrafPosix;
|
|
11
|
+
exports.rimrafManualSync = platform_1.default === 'win32' ? rimraf_windows_1.rimrafWindowsSync : rimraf_posix_1.rimrafPosixSync;
|
|
12
|
+
//# sourceMappingURL=rimraf-manual.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rimraf-manual.js","sourceRoot":"","sources":["../../../src/rimraf-manual.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAiC;AAEjC,iDAA6D;AAC7D,qDAAmE;AAEtD,QAAA,YAAY,GAAG,kBAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,8BAAa,CAAC,CAAC,CAAC,0BAAW,CAAA;AACjE,QAAA,gBAAgB,GAC3B,kBAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,kCAAiB,CAAC,CAAC,CAAC,8BAAe,CAAA"}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// https://youtu.be/uhRWMGBjlO8?t=537
|
|
3
|
+
//
|
|
4
|
+
// 1. readdir
|
|
5
|
+
// 2. for each entry
|
|
6
|
+
// a. if a non-empty directory, recurse
|
|
7
|
+
// b. if an empty directory, move to random hidden file name in $TEMP
|
|
8
|
+
// c. unlink/rmdir $TEMP
|
|
9
|
+
//
|
|
10
|
+
// This works around the fact that unlink/rmdir is non-atomic and takes
|
|
11
|
+
// a non-deterministic amount of time to complete.
|
|
12
|
+
//
|
|
13
|
+
// However, it is HELLA SLOW, like 2-10x slower than a naive recursive rm.
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.rimrafMoveRemoveSync = exports.rimrafMoveRemove = void 0;
|
|
16
|
+
const path_1 = require("path");
|
|
17
|
+
const default_tmp_1 = require("./default-tmp");
|
|
18
|
+
const ignore_enoent_1 = require("./ignore-enoent");
|
|
19
|
+
const fs_1 = require("./fs");
|
|
20
|
+
const { rename, unlink, rmdir, chmod } = fs_1.promises;
|
|
21
|
+
const readdir_or_error_1 = require("./readdir-or-error");
|
|
22
|
+
// crypto.randomBytes is much slower, and Math.random() is enough here
|
|
23
|
+
const uniqueFilename = (path) => `.${(0, path_1.basename)(path)}.${Math.random()}`;
|
|
24
|
+
const unlinkFixEPERM = async (path) => unlink(path).catch((er) => {
|
|
25
|
+
if (er.code === 'EPERM') {
|
|
26
|
+
return chmod(path, 0o666).then(() => unlink(path), er2 => {
|
|
27
|
+
if (er2.code === 'ENOENT') {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
throw er;
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
else if (er.code === 'ENOENT') {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
throw er;
|
|
37
|
+
});
|
|
38
|
+
const unlinkFixEPERMSync = (path) => {
|
|
39
|
+
try {
|
|
40
|
+
(0, fs_1.unlinkSync)(path);
|
|
41
|
+
}
|
|
42
|
+
catch (er) {
|
|
43
|
+
if (er?.code === 'EPERM') {
|
|
44
|
+
try {
|
|
45
|
+
return (0, fs_1.chmodSync)(path, 0o666);
|
|
46
|
+
}
|
|
47
|
+
catch (er2) {
|
|
48
|
+
if (er2?.code === 'ENOENT') {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
throw er;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
else if (er?.code === 'ENOENT') {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
throw er;
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
const rimrafMoveRemove = async (path, opt) => {
|
|
61
|
+
if (!opt.tmp) {
|
|
62
|
+
return (0, exports.rimrafMoveRemove)(path, { ...opt, tmp: await (0, default_tmp_1.defaultTmp)(path) });
|
|
63
|
+
}
|
|
64
|
+
if (path === opt.tmp && (0, path_1.parse)(path).root !== path) {
|
|
65
|
+
throw new Error('cannot delete temp directory used for deletion');
|
|
66
|
+
}
|
|
67
|
+
const entries = await (0, readdir_or_error_1.readdirOrError)(path);
|
|
68
|
+
if (!Array.isArray(entries)) {
|
|
69
|
+
if (entries.code === 'ENOENT') {
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
if (entries.code !== 'ENOTDIR') {
|
|
73
|
+
throw entries;
|
|
74
|
+
}
|
|
75
|
+
return await (0, ignore_enoent_1.ignoreENOENT)(tmpUnlink(path, opt.tmp, unlinkFixEPERM));
|
|
76
|
+
}
|
|
77
|
+
await Promise.all(entries.map(entry => (0, exports.rimrafMoveRemove)((0, path_1.resolve)(path, entry), opt)));
|
|
78
|
+
// we don't ever ACTUALLY try to unlink /, because that can never work
|
|
79
|
+
// but when preserveRoot is false, we could be operating on it.
|
|
80
|
+
// No need to check if preserveRoot is not false.
|
|
81
|
+
if (opt.preserveRoot === false && path === (0, path_1.parse)(path).root) {
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
return await (0, ignore_enoent_1.ignoreENOENT)(tmpUnlink(path, opt.tmp, rmdir));
|
|
85
|
+
};
|
|
86
|
+
exports.rimrafMoveRemove = rimrafMoveRemove;
|
|
87
|
+
const tmpUnlink = async (path, tmp, rm) => {
|
|
88
|
+
const tmpFile = (0, path_1.resolve)(tmp, uniqueFilename(path));
|
|
89
|
+
await rename(path, tmpFile);
|
|
90
|
+
return await rm(tmpFile);
|
|
91
|
+
};
|
|
92
|
+
const rimrafMoveRemoveSync = (path, opt) => {
|
|
93
|
+
if (!opt.tmp) {
|
|
94
|
+
return (0, exports.rimrafMoveRemoveSync)(path, { ...opt, tmp: (0, default_tmp_1.defaultTmpSync)(path) });
|
|
95
|
+
}
|
|
96
|
+
const tmp = opt.tmp;
|
|
97
|
+
if (path === opt.tmp && (0, path_1.parse)(path).root !== path) {
|
|
98
|
+
throw new Error('cannot delete temp directory used for deletion');
|
|
99
|
+
}
|
|
100
|
+
const entries = (0, readdir_or_error_1.readdirOrErrorSync)(path);
|
|
101
|
+
if (!Array.isArray(entries)) {
|
|
102
|
+
if (entries.code === 'ENOENT') {
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
if (entries.code !== 'ENOTDIR') {
|
|
106
|
+
throw entries;
|
|
107
|
+
}
|
|
108
|
+
return (0, ignore_enoent_1.ignoreENOENTSync)(() => tmpUnlinkSync(path, tmp, unlinkFixEPERMSync));
|
|
109
|
+
}
|
|
110
|
+
for (const entry of entries) {
|
|
111
|
+
(0, exports.rimrafMoveRemoveSync)((0, path_1.resolve)(path, entry), opt);
|
|
112
|
+
}
|
|
113
|
+
if (opt.preserveRoot === false && path === (0, path_1.parse)(path).root) {
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
return (0, ignore_enoent_1.ignoreENOENTSync)(() => tmpUnlinkSync(path, tmp, fs_1.rmdirSync));
|
|
117
|
+
};
|
|
118
|
+
exports.rimrafMoveRemoveSync = rimrafMoveRemoveSync;
|
|
119
|
+
const tmpUnlinkSync = (path, tmp, rmSync) => {
|
|
120
|
+
const tmpFile = (0, path_1.resolve)(tmp, uniqueFilename(path));
|
|
121
|
+
(0, fs_1.renameSync)(path, tmpFile);
|
|
122
|
+
return rmSync(tmpFile);
|
|
123
|
+
};
|
|
124
|
+
//# sourceMappingURL=rimraf-move-remove.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rimraf-move-remove.js","sourceRoot":"","sources":["../../../src/rimraf-move-remove.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.rimrafNativeSync = exports.rimrafNative = void 0;
|
|
4
|
+
const fs_1 = require("./fs");
|
|
5
|
+
const { rm } = fs_1.promises;
|
|
6
|
+
const rimrafNative = (path, opt) => rm(path, {
|
|
7
|
+
...opt,
|
|
8
|
+
force: true,
|
|
9
|
+
recursive: true,
|
|
10
|
+
});
|
|
11
|
+
exports.rimrafNative = rimrafNative;
|
|
12
|
+
const rimrafNativeSync = (path, opt) => (0, fs_1.rmSync)(path, {
|
|
13
|
+
...opt,
|
|
14
|
+
force: true,
|
|
15
|
+
recursive: true,
|
|
16
|
+
});
|
|
17
|
+
exports.rimrafNativeSync = rimrafNativeSync;
|
|
18
|
+
//# sourceMappingURL=rimraf-native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rimraf-native.js","sourceRoot":"","sources":["../../../src/rimraf-native.ts"],"names":[],"mappings":";;;AACA,6BAAuC;AACvC,MAAM,EAAE,EAAE,EAAE,GAAG,aAAQ,CAAA;AAEhB,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,GAAkB,EAAE,EAAE,CAC/D,EAAE,CAAC,IAAI,EAAE;IACP,GAAG,GAAG;IACN,KAAK,EAAE,IAAI;IACX,SAAS,EAAE,IAAI;CAChB,CAAC,CAAA;AALS,QAAA,YAAY,gBAKrB;AAEG,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,GAAkB,EAAE,EAAE,CACnE,IAAA,WAAM,EAAC,IAAI,EAAE;IACX,GAAG,GAAG;IACN,KAAK,EAAE,IAAI;IACX,SAAS,EAAE,IAAI;CAChB,CAAC,CAAA;AALS,QAAA,gBAAgB,oBAKzB"}
|