1 | "use strict";
|
2 | function __export(m) {
|
3 | for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
|
4 | }
|
5 | Object.defineProperty(exports, "__esModule", { value: true });
|
6 | __export(require("fs"));
|
7 | const fs = require("fs");
|
8 | const path = require("path");
|
9 | const o777 = parseInt('0777', 8);
|
10 | function mkdirpSync(p, opts = {}, made) {
|
11 | if (!opts.mode)
|
12 | opts.mode = o777 & ~process.umask();
|
13 | p = path.resolve(p);
|
14 | try {
|
15 | fs.mkdirSync(p, opts.mode);
|
16 | made = made || p;
|
17 | }
|
18 | catch (err0) {
|
19 | switch (err0.code) {
|
20 | case 'ENOENT':
|
21 | if (path.dirname(p) === p)
|
22 | throw err0;
|
23 | made = mkdirpSync(path.dirname(p), opts, made);
|
24 | mkdirpSync(p, opts, made);
|
25 | break;
|
26 |
|
27 |
|
28 |
|
29 | default:
|
30 | let stat;
|
31 | try {
|
32 | stat = fs.statSync(p);
|
33 | }
|
34 | catch (err1) {
|
35 | throw err0;
|
36 | }
|
37 | if (!stat.isDirectory())
|
38 | throw err0;
|
39 | break;
|
40 | }
|
41 | }
|
42 | return made;
|
43 | }
|
44 | exports.mkdirpSync = mkdirpSync;
|