This commit is contained in:
parent
55470c090d
commit
6947a1adba
1260 changed files with 111297 additions and 0 deletions
55
@capacitor/cli/node_modules/rimraf/dist/mjs/default-tmp.js
generated
vendored
Normal file
55
@capacitor/cli/node_modules/rimraf/dist/mjs/default-tmp.js
generated
vendored
Normal file
|
@ -0,0 +1,55 @@
|
|||
// The default temporary folder location for use in the windows algorithm.
|
||||
// It's TEMPting to use dirname(path), since that's guaranteed to be on the
|
||||
// same device. However, this means that:
|
||||
// rimraf(path).then(() => rimraf(dirname(path)))
|
||||
// will often fail with EBUSY, because the parent dir contains
|
||||
// marked-for-deletion directory entries (which do not show up in readdir).
|
||||
// The approach here is to use os.tmpdir() if it's on the same drive letter,
|
||||
// or resolve(path, '\\temp') if it exists, or the root of the drive if not.
|
||||
// On Posix (not that you'd be likely to use the windows algorithm there),
|
||||
// it uses os.tmpdir() always.
|
||||
import { tmpdir } from 'os';
|
||||
import { parse, resolve } from 'path';
|
||||
import { promises, statSync } from './fs.js';
|
||||
import platform from './platform.js';
|
||||
const { stat } = promises;
|
||||
const isDirSync = (path) => {
|
||||
try {
|
||||
return statSync(path).isDirectory();
|
||||
}
|
||||
catch (er) {
|
||||
return false;
|
||||
}
|
||||
};
|
||||
const isDir = (path) => stat(path).then(st => st.isDirectory(), () => false);
|
||||
const win32DefaultTmp = async (path) => {
|
||||
const { root } = parse(path);
|
||||
const tmp = tmpdir();
|
||||
const { root: tmpRoot } = parse(tmp);
|
||||
if (root.toLowerCase() === tmpRoot.toLowerCase()) {
|
||||
return tmp;
|
||||
}
|
||||
const driveTmp = resolve(root, '/temp');
|
||||
if (await isDir(driveTmp)) {
|
||||
return driveTmp;
|
||||
}
|
||||
return root;
|
||||
};
|
||||
const win32DefaultTmpSync = (path) => {
|
||||
const { root } = parse(path);
|
||||
const tmp = tmpdir();
|
||||
const { root: tmpRoot } = parse(tmp);
|
||||
if (root.toLowerCase() === tmpRoot.toLowerCase()) {
|
||||
return tmp;
|
||||
}
|
||||
const driveTmp = resolve(root, '/temp');
|
||||
if (isDirSync(driveTmp)) {
|
||||
return driveTmp;
|
||||
}
|
||||
return root;
|
||||
};
|
||||
const posixDefaultTmp = async () => tmpdir();
|
||||
const posixDefaultTmpSync = () => tmpdir();
|
||||
export const defaultTmp = platform === 'win32' ? win32DefaultTmp : posixDefaultTmp;
|
||||
export const defaultTmpSync = platform === 'win32' ? win32DefaultTmpSync : posixDefaultTmpSync;
|
||||
//# sourceMappingURL=default-tmp.js.map
|
Loading…
Add table
Add a link
Reference in a new issue