@gradientedge/cdk-utils 8.16.0 → 8.18.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/app/api-destined-function/layers/nodejs/node_modules/.yarn-integrity +2 -2
- package/app/api-destined-function/layers/nodejs/package.json +1 -1
- package/app/api-destined-function/node_modules/.yarn-integrity +52 -11
- package/app/api-destined-function/node_modules/mkdirp/LICENSE +1 -1
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/package.json +90 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/bin.d.ts +2 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/bin.js +73 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/bin.js.map +1 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/find-made.d.ts +3 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/find-made.js +35 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/find-made.js.map +1 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/index-cjs.d.ts +74 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/index-cjs.js +7 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/index-cjs.js.map +1 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/index.d.ts +30 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/index.js +49 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/index.js.map +1 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/mkdirp-manual.d.ts +5 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/mkdirp-manual.js +79 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/mkdirp-manual.js.map +1 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/mkdirp-native.d.ts +5 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/mkdirp-native.js +50 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/mkdirp-native.js.map +1 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/opts-arg.d.ts +41 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/opts-arg.js +38 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/opts-arg.js.map +1 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/path-arg.d.ts +1 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/path-arg.js +28 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/path-arg.js.map +1 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/use-native.d.ts +5 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/use-native.js +17 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/cjs/src/use-native.js.map +1 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/find-made.d.ts +3 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/find-made.js +30 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/find-made.js.map +1 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/index.d.ts +30 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/index.js +39 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/index.js.map +1 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/mkdirp-manual.d.ts +5 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/mkdirp-manual.js +75 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/mkdirp-manual.js.map +1 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/mkdirp-native.d.ts +5 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/mkdirp-native.js +46 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/mkdirp-native.js.map +1 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/opts-arg.d.ts +41 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/opts-arg.js +34 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/opts-arg.js.map +1 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/package.json +3 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/path-arg.d.ts +1 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/path-arg.js +24 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/path-arg.js.map +1 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/use-native.d.ts +5 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/use-native.js +14 -0
- package/app/api-destined-function/node_modules/mkdirp/dist/mjs/use-native.js.map +1 -0
- package/app/api-destined-function/node_modules/mkdirp/package.json +66 -20
- package/app/api-destined-function/node_modules/mkdirp/readme.markdown +104 -89
- package/app/api-destined-function/package.json +1 -1
- package/package.json +11 -11
- package/app/api-destined-function/node_modules/mkdirp/bin/cmd.js +0 -68
- package/app/api-destined-function/node_modules/mkdirp/index.js +0 -31
- package/app/api-destined-function/node_modules/mkdirp/lib/find-made.js +0 -29
- package/app/api-destined-function/node_modules/mkdirp/lib/mkdirp-manual.js +0 -64
- package/app/api-destined-function/node_modules/mkdirp/lib/mkdirp-native.js +0 -39
- package/app/api-destined-function/node_modules/mkdirp/lib/opts-arg.js +0 -23
- package/app/api-destined-function/node_modules/mkdirp/lib/path-arg.js +0 -29
- package/app/api-destined-function/node_modules/mkdirp/lib/use-native.js +0 -10
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.mkdirpNative = exports.mkdirpNativeSync = void 0;
|
|
4
|
+
const path_1 = require("path");
|
|
5
|
+
const find_made_js_1 = require("./find-made.js");
|
|
6
|
+
const mkdirp_manual_js_1 = require("./mkdirp-manual.js");
|
|
7
|
+
const opts_arg_js_1 = require("./opts-arg.js");
|
|
8
|
+
const mkdirpNativeSync = (path, options) => {
|
|
9
|
+
const opts = (0, opts_arg_js_1.optsArg)(options);
|
|
10
|
+
opts.recursive = true;
|
|
11
|
+
const parent = (0, path_1.dirname)(path);
|
|
12
|
+
if (parent === path) {
|
|
13
|
+
return opts.mkdirSync(path, opts);
|
|
14
|
+
}
|
|
15
|
+
const made = (0, find_made_js_1.findMadeSync)(opts, path);
|
|
16
|
+
try {
|
|
17
|
+
opts.mkdirSync(path, opts);
|
|
18
|
+
return made;
|
|
19
|
+
}
|
|
20
|
+
catch (er) {
|
|
21
|
+
const fer = er;
|
|
22
|
+
if (fer && fer.code === 'ENOENT') {
|
|
23
|
+
return (0, mkdirp_manual_js_1.mkdirpManualSync)(path, opts);
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
throw er;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
exports.mkdirpNativeSync = mkdirpNativeSync;
|
|
31
|
+
exports.mkdirpNative = Object.assign(async (path, options) => {
|
|
32
|
+
const opts = { ...(0, opts_arg_js_1.optsArg)(options), recursive: true };
|
|
33
|
+
const parent = (0, path_1.dirname)(path);
|
|
34
|
+
if (parent === path) {
|
|
35
|
+
return await opts.mkdirAsync(path, opts);
|
|
36
|
+
}
|
|
37
|
+
return (0, find_made_js_1.findMade)(opts, path).then((made) => opts
|
|
38
|
+
.mkdirAsync(path, opts)
|
|
39
|
+
.then(m => made || m)
|
|
40
|
+
.catch(er => {
|
|
41
|
+
const fer = er;
|
|
42
|
+
if (fer && fer.code === 'ENOENT') {
|
|
43
|
+
return (0, mkdirp_manual_js_1.mkdirpManual)(path, opts);
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
throw er;
|
|
47
|
+
}
|
|
48
|
+
}));
|
|
49
|
+
}, { sync: exports.mkdirpNativeSync });
|
|
50
|
+
//# sourceMappingURL=mkdirp-native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mkdirp-native.js","sourceRoot":"","sources":["../../../src/mkdirp-native.ts"],"names":[],"mappings":";;;AAAA,+BAA8B;AAC9B,iDAAuD;AACvD,yDAAmE;AACnE,+CAAsD;AAE/C,MAAM,gBAAgB,GAAG,CAC9B,IAAY,EACZ,OAAuB,EACI,EAAE;IAC7B,MAAM,IAAI,GAAG,IAAA,qBAAO,EAAC,OAAO,CAAC,CAAA;IAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;IACrB,MAAM,MAAM,GAAG,IAAA,cAAO,EAAC,IAAI,CAAC,CAAA;IAC5B,IAAI,MAAM,KAAK,IAAI,EAAE;QACnB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;KAClC;IAED,MAAM,IAAI,GAAG,IAAA,2BAAY,EAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IACrC,IAAI;QACF,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAC1B,OAAO,IAAI,CAAA;KACZ;IAAC,OAAO,EAAE,EAAE;QACX,MAAM,GAAG,GAAG,EAA2B,CAAA;QACvC,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE;YAChC,OAAO,IAAA,mCAAgB,EAAC,IAAI,EAAE,IAAI,CAAC,CAAA;SACpC;aAAM;YACL,MAAM,EAAE,CAAA;SACT;KACF;AACH,CAAC,CAAA;AAvBY,QAAA,gBAAgB,oBAuB5B;AAEY,QAAA,YAAY,GAAG,MAAM,CAAC,MAAM,CACvC,KAAK,EACH,IAAY,EACZ,OAAuB,EACa,EAAE;IACtC,MAAM,IAAI,GAAG,EAAE,GAAG,IAAA,qBAAO,EAAC,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAA;IACrD,MAAM,MAAM,GAAG,IAAA,cAAO,EAAC,IAAI,CAAC,CAAA;IAC5B,IAAI,MAAM,KAAK,IAAI,EAAE;QACnB,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;KACzC;IAED,OAAO,IAAA,uBAAQ,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAyB,EAAE,EAAE,CAC7D,IAAI;SACD,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC;SACtB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC;SACpB,KAAK,CAAC,EAAE,CAAC,EAAE;QACV,MAAM,GAAG,GAAG,EAA2B,CAAA;QACvC,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE;YAChC,OAAO,IAAA,+BAAY,EAAC,IAAI,EAAE,IAAI,CAAC,CAAA;SAChC;aAAM;YACL,MAAM,EAAE,CAAA;SACT;IACH,CAAC,CAAC,CACL,CAAA;AACH,CAAC,EACD,EAAE,IAAI,EAAE,wBAAgB,EAAE,CAC3B,CAAA"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
import { MakeDirectoryOptions, Stats } from 'fs';
|
|
4
|
+
export interface FsProvider {
|
|
5
|
+
stat?: (path: string, callback: (err: NodeJS.ErrnoException | null, stats: Stats) => any) => any;
|
|
6
|
+
mkdir?: (path: string, opts: MakeDirectoryOptions & {
|
|
7
|
+
recursive?: boolean;
|
|
8
|
+
}, callback: (err: NodeJS.ErrnoException | null, made?: string) => any) => any;
|
|
9
|
+
statSync?: (path: string) => Stats;
|
|
10
|
+
mkdirSync?: (path: string, opts: MakeDirectoryOptions & {
|
|
11
|
+
recursive?: boolean;
|
|
12
|
+
}) => string | undefined;
|
|
13
|
+
}
|
|
14
|
+
interface Options extends FsProvider {
|
|
15
|
+
mode?: number | string;
|
|
16
|
+
fs?: FsProvider;
|
|
17
|
+
mkdirAsync?: (path: string, opts: MakeDirectoryOptions & {
|
|
18
|
+
recursive?: boolean;
|
|
19
|
+
}) => Promise<string | undefined>;
|
|
20
|
+
statAsync?: (path: string) => Promise<Stats>;
|
|
21
|
+
}
|
|
22
|
+
export type MkdirpOptions = Options | number | string;
|
|
23
|
+
export interface MkdirpOptionsResolved {
|
|
24
|
+
mode: number;
|
|
25
|
+
fs: FsProvider;
|
|
26
|
+
mkdirAsync: (path: string, opts: MakeDirectoryOptions & {
|
|
27
|
+
recursive?: boolean;
|
|
28
|
+
}) => Promise<string | undefined>;
|
|
29
|
+
statAsync: (path: string) => Promise<Stats>;
|
|
30
|
+
stat: (path: string, callback: (err: NodeJS.ErrnoException | null, stats: Stats) => any) => any;
|
|
31
|
+
mkdir: (path: string, opts: MakeDirectoryOptions & {
|
|
32
|
+
recursive?: boolean;
|
|
33
|
+
}, callback: (err: NodeJS.ErrnoException | null, made?: string) => any) => any;
|
|
34
|
+
statSync: (path: string) => Stats;
|
|
35
|
+
mkdirSync: (path: string, opts: MakeDirectoryOptions & {
|
|
36
|
+
recursive?: boolean;
|
|
37
|
+
}) => string | undefined;
|
|
38
|
+
recursive?: boolean;
|
|
39
|
+
}
|
|
40
|
+
export declare const optsArg: (opts?: MkdirpOptions) => MkdirpOptionsResolved;
|
|
41
|
+
export {};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.optsArg = void 0;
|
|
4
|
+
const fs_1 = require("fs");
|
|
5
|
+
const optsArg = (opts) => {
|
|
6
|
+
if (!opts) {
|
|
7
|
+
opts = { mode: 0o777 };
|
|
8
|
+
}
|
|
9
|
+
else if (typeof opts === 'object') {
|
|
10
|
+
opts = { mode: 0o777, ...opts };
|
|
11
|
+
}
|
|
12
|
+
else if (typeof opts === 'number') {
|
|
13
|
+
opts = { mode: opts };
|
|
14
|
+
}
|
|
15
|
+
else if (typeof opts === 'string') {
|
|
16
|
+
opts = { mode: parseInt(opts, 8) };
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
throw new TypeError('invalid options argument');
|
|
20
|
+
}
|
|
21
|
+
const resolved = opts;
|
|
22
|
+
const optsFs = opts.fs || {};
|
|
23
|
+
opts.mkdir = opts.mkdir || optsFs.mkdir || fs_1.mkdir;
|
|
24
|
+
opts.mkdirAsync = opts.mkdirAsync
|
|
25
|
+
? opts.mkdirAsync
|
|
26
|
+
: async (path, options) => {
|
|
27
|
+
return new Promise((res, rej) => resolved.mkdir(path, options, (er, made) => er ? rej(er) : res(made)));
|
|
28
|
+
};
|
|
29
|
+
opts.stat = opts.stat || optsFs.stat || fs_1.stat;
|
|
30
|
+
opts.statAsync = opts.statAsync
|
|
31
|
+
? opts.statAsync
|
|
32
|
+
: async (path) => new Promise((res, rej) => resolved.stat(path, (err, stats) => (err ? rej(err) : res(stats))));
|
|
33
|
+
opts.statSync = opts.statSync || optsFs.statSync || fs_1.statSync;
|
|
34
|
+
opts.mkdirSync = opts.mkdirSync || optsFs.mkdirSync || fs_1.mkdirSync;
|
|
35
|
+
return resolved;
|
|
36
|
+
};
|
|
37
|
+
exports.optsArg = optsArg;
|
|
38
|
+
//# sourceMappingURL=opts-arg.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"opts-arg.js","sourceRoot":"","sources":["../../../src/opts-arg.ts"],"names":[],"mappings":";;;AAAA,2BAOW;AAwDJ,MAAM,OAAO,GAAG,CAAC,IAAoB,EAAyB,EAAE;IACrE,IAAI,CAAC,IAAI,EAAE;QACT,IAAI,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;KACvB;SAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QACnC,IAAI,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,CAAA;KAChC;SAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QACnC,IAAI,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;KACtB;SAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QACnC,IAAI,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAA;KACnC;SAAM;QACL,MAAM,IAAI,SAAS,CAAC,0BAA0B,CAAC,CAAA;KAChD;IAED,MAAM,QAAQ,GAAG,IAA6B,CAAA;IAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,IAAI,EAAE,CAAA;IAE5B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,IAAI,UAAK,CAAA;IAEhD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU;QAC/B,CAAC,CAAC,IAAI,CAAC,UAAU;QACjB,CAAC,CAAC,KAAK,EACH,IAAY,EACZ,OAAuD,EAC1B,EAAE;YAC/B,OAAO,IAAI,OAAO,CAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAClD,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CACzC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CACzB,CACF,CAAA;QACH,CAAC,CAAA;IAEL,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,IAAI,SAAI,CAAA;IAC5C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS;QAC7B,CAAC,CAAC,IAAI,CAAC,SAAS;QAChB,CAAC,CAAC,KAAK,EAAE,IAAY,EAAE,EAAE,CACrB,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CACvB,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CACnE,CAAA;IAEP,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,aAAQ,CAAA;IAC5D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,IAAI,cAAS,CAAA;IAEhE,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA;AA3CY,QAAA,OAAO,WA2CnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const pathArg: (path: string) => string;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.pathArg = void 0;
|
|
4
|
+
const platform = process.env.__TESTING_MKDIRP_PLATFORM__ || process.platform;
|
|
5
|
+
const path_1 = require("path");
|
|
6
|
+
const pathArg = (path) => {
|
|
7
|
+
if (/\0/.test(path)) {
|
|
8
|
+
// simulate same failure that node raises
|
|
9
|
+
throw Object.assign(new TypeError('path must be a string without null bytes'), {
|
|
10
|
+
path,
|
|
11
|
+
code: 'ERR_INVALID_ARG_VALUE',
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
path = (0, path_1.resolve)(path);
|
|
15
|
+
if (platform === 'win32') {
|
|
16
|
+
const badWinChars = /[*|"<>?:]/;
|
|
17
|
+
const { root } = (0, path_1.parse)(path);
|
|
18
|
+
if (badWinChars.test(path.substring(root.length))) {
|
|
19
|
+
throw Object.assign(new Error('Illegal characters in path.'), {
|
|
20
|
+
path,
|
|
21
|
+
code: 'EINVAL',
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
return path;
|
|
26
|
+
};
|
|
27
|
+
exports.pathArg = pathArg;
|
|
28
|
+
//# sourceMappingURL=path-arg.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path-arg.js","sourceRoot":"","sources":["../../../src/path-arg.ts"],"names":[],"mappings":";;;AAAA,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,OAAO,CAAC,QAAQ,CAAA;AAC5E,+BAAqC;AAC9B,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,EAAE;IACtC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACnB,yCAAyC;QACzC,MAAM,MAAM,CAAC,MAAM,CACjB,IAAI,SAAS,CAAC,0CAA0C,CAAC,EACzD;YACE,IAAI;YACJ,IAAI,EAAE,uBAAuB;SAC9B,CACF,CAAA;KACF;IAED,IAAI,GAAG,IAAA,cAAO,EAAC,IAAI,CAAC,CAAA;IACpB,IAAI,QAAQ,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;AAzBY,QAAA,OAAO,WAyBnB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useNative = exports.useNativeSync = void 0;
|
|
4
|
+
const fs_1 = require("fs");
|
|
5
|
+
const opts_arg_js_1 = require("./opts-arg.js");
|
|
6
|
+
const version = process.env.__TESTING_MKDIRP_NODE_VERSION__ || process.version;
|
|
7
|
+
const versArr = version.replace(/^v/, '').split('.');
|
|
8
|
+
const hasNative = +versArr[0] > 10 || (+versArr[0] === 10 && +versArr[1] >= 12);
|
|
9
|
+
exports.useNativeSync = !hasNative
|
|
10
|
+
? () => false
|
|
11
|
+
: (opts) => (0, opts_arg_js_1.optsArg)(opts).mkdirSync === fs_1.mkdirSync;
|
|
12
|
+
exports.useNative = Object.assign(!hasNative
|
|
13
|
+
? () => false
|
|
14
|
+
: (opts) => (0, opts_arg_js_1.optsArg)(opts).mkdir === fs_1.mkdir, {
|
|
15
|
+
sync: exports.useNativeSync,
|
|
16
|
+
});
|
|
17
|
+
//# sourceMappingURL=use-native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-native.js","sourceRoot":"","sources":["../../../src/use-native.ts"],"names":[],"mappings":";;;AAAA,2BAAqC;AACrC,+CAAsD;AAEtD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,+BAA+B,IAAI,OAAO,CAAC,OAAO,CAAA;AAC9E,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;AACpD,MAAM,SAAS,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;AAElE,QAAA,aAAa,GAAG,CAAC,SAAS;IACrC,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK;IACb,CAAC,CAAC,CAAC,IAAoB,EAAE,EAAE,CAAC,IAAA,qBAAO,EAAC,IAAI,CAAC,CAAC,SAAS,KAAK,cAAS,CAAA;AAEtD,QAAA,SAAS,GAAG,MAAM,CAAC,MAAM,CACpC,CAAC,SAAS;IACR,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK;IACb,CAAC,CAAC,CAAC,IAAoB,EAAE,EAAE,CAAC,IAAA,qBAAO,EAAC,IAAI,CAAC,CAAC,KAAK,KAAK,UAAK,EAC3D;IACE,IAAI,EAAE,qBAAa;CACpB,CACF,CAAA"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { MkdirpOptionsResolved } from './opts-arg.js';
|
|
2
|
+
export declare const findMade: (opts: MkdirpOptionsResolved, parent: string, path?: string) => Promise<undefined | string>;
|
|
3
|
+
export declare const findMadeSync: (opts: MkdirpOptionsResolved, parent: string, path?: string) => undefined | string;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { dirname } from 'path';
|
|
2
|
+
export const findMade = async (opts, parent, path) => {
|
|
3
|
+
// we never want the 'made' return value to be a root directory
|
|
4
|
+
if (path === parent) {
|
|
5
|
+
return;
|
|
6
|
+
}
|
|
7
|
+
return opts.statAsync(parent).then(st => (st.isDirectory() ? path : undefined), // will fail later
|
|
8
|
+
// will fail later
|
|
9
|
+
er => {
|
|
10
|
+
const fer = er;
|
|
11
|
+
return fer && fer.code === 'ENOENT'
|
|
12
|
+
? findMade(opts, dirname(parent), parent)
|
|
13
|
+
: undefined;
|
|
14
|
+
});
|
|
15
|
+
};
|
|
16
|
+
export const findMadeSync = (opts, parent, path) => {
|
|
17
|
+
if (path === parent) {
|
|
18
|
+
return undefined;
|
|
19
|
+
}
|
|
20
|
+
try {
|
|
21
|
+
return opts.statSync(parent).isDirectory() ? path : undefined;
|
|
22
|
+
}
|
|
23
|
+
catch (er) {
|
|
24
|
+
const fer = er;
|
|
25
|
+
return fer && fer.code === 'ENOENT'
|
|
26
|
+
? findMadeSync(opts, dirname(parent), parent)
|
|
27
|
+
: undefined;
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=find-made.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"find-made.js","sourceRoot":"","sources":["../../src/find-made.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAG9B,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAC3B,IAA2B,EAC3B,MAAc,EACd,IAAa,EACgB,EAAE;IAC/B,+DAA+D;IAC/D,IAAI,IAAI,KAAK,MAAM,EAAE;QACnB,OAAM;KACP;IAED,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAChC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,kBAAkB;IAC/D,AAD6C,kBAAkB;IAC/D,EAAE,CAAC,EAAE;QACH,MAAM,GAAG,GAAG,EAA2B,CAAA;QACvC,OAAO,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ;YACjC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;YACzC,CAAC,CAAC,SAAS,CAAA;IACf,CAAC,CACF,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,IAA2B,EAC3B,MAAc,EACd,IAAa,EACO,EAAE;IACtB,IAAI,IAAI,KAAK,MAAM,EAAE;QACnB,OAAO,SAAS,CAAA;KACjB;IAED,IAAI;QACF,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;KAC9D;IAAC,OAAO,EAAE,EAAE;QACX,MAAM,GAAG,GAAG,EAA2B,CAAA;QACvC,OAAO,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ;YACjC,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;YAC7C,CAAC,CAAC,SAAS,CAAA;KACd;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { MkdirpOptions } from './opts-arg.js';
|
|
2
|
+
export { mkdirpManual, mkdirpManualSync } from './mkdirp-manual.js';
|
|
3
|
+
export { mkdirpNative, mkdirpNativeSync } from './mkdirp-native.js';
|
|
4
|
+
export { useNative, useNativeSync } from './use-native.js';
|
|
5
|
+
export declare const mkdirpSync: (path: string, opts?: MkdirpOptions) => string | void;
|
|
6
|
+
export declare const mkdirp: ((path: string, opts?: MkdirpOptions) => Promise<string | void | undefined>) & {
|
|
7
|
+
mkdirpSync: (path: string, opts?: MkdirpOptions) => string | void;
|
|
8
|
+
mkdirpNative: ((path: string, options?: MkdirpOptions | undefined) => Promise<string | void | undefined>) & {
|
|
9
|
+
sync: (path: string, options?: MkdirpOptions | undefined) => string | void | undefined;
|
|
10
|
+
};
|
|
11
|
+
mkdirpNativeSync: (path: string, options?: MkdirpOptions | undefined) => string | void | undefined;
|
|
12
|
+
mkdirpManual: ((path: string, options?: MkdirpOptions | undefined, made?: string | void | undefined) => Promise<string | void | undefined>) & {
|
|
13
|
+
sync: (path: string, options?: MkdirpOptions | undefined, made?: string | void | undefined) => string | void | undefined;
|
|
14
|
+
};
|
|
15
|
+
mkdirpManualSync: (path: string, options?: MkdirpOptions | undefined, made?: string | void | undefined) => string | void | undefined;
|
|
16
|
+
sync: (path: string, opts?: MkdirpOptions) => string | void;
|
|
17
|
+
native: ((path: string, options?: MkdirpOptions | undefined) => Promise<string | void | undefined>) & {
|
|
18
|
+
sync: (path: string, options?: MkdirpOptions | undefined) => string | void | undefined;
|
|
19
|
+
};
|
|
20
|
+
nativeSync: (path: string, options?: MkdirpOptions | undefined) => string | void | undefined;
|
|
21
|
+
manual: ((path: string, options?: MkdirpOptions | undefined, made?: string | void | undefined) => Promise<string | void | undefined>) & {
|
|
22
|
+
sync: (path: string, options?: MkdirpOptions | undefined, made?: string | void | undefined) => string | void | undefined;
|
|
23
|
+
};
|
|
24
|
+
manualSync: (path: string, options?: MkdirpOptions | undefined, made?: string | void | undefined) => string | void | undefined;
|
|
25
|
+
useNative: ((opts?: MkdirpOptions | undefined) => boolean) & {
|
|
26
|
+
sync: (opts?: MkdirpOptions | undefined) => boolean;
|
|
27
|
+
};
|
|
28
|
+
useNativeSync: (opts?: MkdirpOptions | undefined) => boolean;
|
|
29
|
+
};
|
|
30
|
+
export default mkdirp;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { mkdirpManual, mkdirpManualSync } from './mkdirp-manual.js';
|
|
2
|
+
import { mkdirpNative, mkdirpNativeSync } from './mkdirp-native.js';
|
|
3
|
+
import { optsArg } from './opts-arg.js';
|
|
4
|
+
import { pathArg } from './path-arg.js';
|
|
5
|
+
import { useNative, useNativeSync } from './use-native.js';
|
|
6
|
+
/* c8 ignore start */
|
|
7
|
+
export { mkdirpManual, mkdirpManualSync } from './mkdirp-manual.js';
|
|
8
|
+
export { mkdirpNative, mkdirpNativeSync } from './mkdirp-native.js';
|
|
9
|
+
export { useNative, useNativeSync } from './use-native.js';
|
|
10
|
+
/* c8 ignore stop */
|
|
11
|
+
export const mkdirpSync = (path, opts) => {
|
|
12
|
+
path = pathArg(path);
|
|
13
|
+
const resolved = optsArg(opts);
|
|
14
|
+
return useNativeSync(resolved)
|
|
15
|
+
? mkdirpNativeSync(path, resolved)
|
|
16
|
+
: mkdirpManualSync(path, resolved);
|
|
17
|
+
};
|
|
18
|
+
export const mkdirp = Object.assign(async (path, opts) => {
|
|
19
|
+
path = pathArg(path);
|
|
20
|
+
const resolved = optsArg(opts);
|
|
21
|
+
return useNative(resolved)
|
|
22
|
+
? mkdirpNative(path, resolved)
|
|
23
|
+
: mkdirpManual(path, resolved);
|
|
24
|
+
}, {
|
|
25
|
+
mkdirpSync,
|
|
26
|
+
mkdirpNative,
|
|
27
|
+
mkdirpNativeSync,
|
|
28
|
+
mkdirpManual,
|
|
29
|
+
mkdirpManualSync,
|
|
30
|
+
sync: mkdirpSync,
|
|
31
|
+
native: mkdirpNative,
|
|
32
|
+
nativeSync: mkdirpNativeSync,
|
|
33
|
+
manual: mkdirpManual,
|
|
34
|
+
manualSync: mkdirpManualSync,
|
|
35
|
+
useNative,
|
|
36
|
+
useNativeSync,
|
|
37
|
+
});
|
|
38
|
+
export default mkdirp;
|
|
39
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,EAAiB,OAAO,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC1D,qBAAqB;AACrB,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC1D,oBAAoB;AAEpB,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,IAAoB,EAAE,EAAE;IAC/D,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACpB,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9B,OAAO,aAAa,CAAC,QAAQ,CAAC;QAC5B,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC;QAClC,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;AACtC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CACjC,KAAK,EAAE,IAAY,EAAE,IAAoB,EAAE,EAAE;IAC3C,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACpB,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9B,OAAO,SAAS,CAAC,QAAQ,CAAC;QACxB,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC;QAC9B,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;AAClC,CAAC,EACD;IACE,UAAU;IACV,YAAY;IACZ,gBAAgB;IAChB,YAAY;IACZ,gBAAgB;IAEhB,IAAI,EAAE,UAAU;IAChB,MAAM,EAAE,YAAY;IACpB,UAAU,EAAE,gBAAgB;IAC5B,MAAM,EAAE,YAAY;IACpB,UAAU,EAAE,gBAAgB;IAC5B,SAAS;IACT,aAAa;CACd,CACF,CAAA;AAED,eAAe,MAAM,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { MkdirpOptions } from './opts-arg.js';
|
|
2
|
+
export declare const mkdirpManualSync: (path: string, options?: MkdirpOptions, made?: string | undefined | void) => string | undefined | void;
|
|
3
|
+
export declare const mkdirpManual: ((path: string, options?: MkdirpOptions, made?: string | undefined | void) => Promise<string | undefined | void>) & {
|
|
4
|
+
sync: (path: string, options?: MkdirpOptions, made?: string | undefined | void) => string | undefined | void;
|
|
5
|
+
};
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { dirname } from 'path';
|
|
2
|
+
import { optsArg } from './opts-arg.js';
|
|
3
|
+
export const mkdirpManualSync = (path, options, made) => {
|
|
4
|
+
const parent = dirname(path);
|
|
5
|
+
const opts = { ...optsArg(options), recursive: false };
|
|
6
|
+
if (parent === path) {
|
|
7
|
+
try {
|
|
8
|
+
return opts.mkdirSync(path, opts);
|
|
9
|
+
}
|
|
10
|
+
catch (er) {
|
|
11
|
+
// swallowed by recursive implementation on posix systems
|
|
12
|
+
// any other error is a failure
|
|
13
|
+
const fer = er;
|
|
14
|
+
if (fer && fer.code !== 'EISDIR') {
|
|
15
|
+
throw er;
|
|
16
|
+
}
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
try {
|
|
21
|
+
opts.mkdirSync(path, opts);
|
|
22
|
+
return made || path;
|
|
23
|
+
}
|
|
24
|
+
catch (er) {
|
|
25
|
+
const fer = er;
|
|
26
|
+
if (fer && fer.code === 'ENOENT') {
|
|
27
|
+
return mkdirpManualSync(path, opts, mkdirpManualSync(parent, opts, made));
|
|
28
|
+
}
|
|
29
|
+
if (fer && fer.code !== 'EEXIST' && fer && fer.code !== 'EROFS') {
|
|
30
|
+
throw er;
|
|
31
|
+
}
|
|
32
|
+
try {
|
|
33
|
+
if (!opts.statSync(path).isDirectory())
|
|
34
|
+
throw er;
|
|
35
|
+
}
|
|
36
|
+
catch (_) {
|
|
37
|
+
throw er;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
export const mkdirpManual = Object.assign(async (path, options, made) => {
|
|
42
|
+
const opts = optsArg(options);
|
|
43
|
+
opts.recursive = false;
|
|
44
|
+
const parent = dirname(path);
|
|
45
|
+
if (parent === path) {
|
|
46
|
+
return opts.mkdirAsync(path, opts).catch(er => {
|
|
47
|
+
// swallowed by recursive implementation on posix systems
|
|
48
|
+
// any other error is a failure
|
|
49
|
+
const fer = er;
|
|
50
|
+
if (fer && fer.code !== 'EISDIR') {
|
|
51
|
+
throw er;
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
return opts.mkdirAsync(path, opts).then(() => made || path, async (er) => {
|
|
56
|
+
const fer = er;
|
|
57
|
+
if (fer && fer.code === 'ENOENT') {
|
|
58
|
+
return mkdirpManual(parent, opts).then((made) => mkdirpManual(path, opts, made));
|
|
59
|
+
}
|
|
60
|
+
if (fer && fer.code !== 'EEXIST' && fer.code !== 'EROFS') {
|
|
61
|
+
throw er;
|
|
62
|
+
}
|
|
63
|
+
return opts.statAsync(path).then(st => {
|
|
64
|
+
if (st.isDirectory()) {
|
|
65
|
+
return made;
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
throw er;
|
|
69
|
+
}
|
|
70
|
+
}, () => {
|
|
71
|
+
throw er;
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
}, { sync: mkdirpManualSync });
|
|
75
|
+
//# sourceMappingURL=mkdirp-manual.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mkdirp-manual.js","sourceRoot":"","sources":["../../src/mkdirp-manual.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAC9B,OAAO,EAAiB,OAAO,EAAE,MAAM,eAAe,CAAA;AAEtD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,IAAY,EACZ,OAAuB,EACvB,IAAgC,EACL,EAAE;IAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5B,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAA;IAEtD,IAAI,MAAM,KAAK,IAAI,EAAE;QACnB,IAAI;YACF,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;SAClC;QAAC,OAAO,EAAE,EAAE;YACX,yDAAyD;YACzD,+BAA+B;YAC/B,MAAM,GAAG,GAAG,EAA2B,CAAA;YACvC,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAChC,MAAM,EAAE,CAAA;aACT;YACD,OAAM;SACP;KACF;IAED,IAAI;QACF,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAC1B,OAAO,IAAI,IAAI,IAAI,CAAA;KACpB;IAAC,OAAO,EAAE,EAAE;QACX,MAAM,GAAG,GAAG,EAA2B,CAAA;QACvC,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE;YAChC,OAAO,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,gBAAgB,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;SAC1E;QACD,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE;YAC/D,MAAM,EAAE,CAAA;SACT;QACD,IAAI;YACF,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE;gBAAE,MAAM,EAAE,CAAA;SACjD;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,EAAE,CAAA;SACT;KACF;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CACvC,KAAK,EACH,IAAY,EACZ,OAAuB,EACvB,IAAgC,EACI,EAAE;IACtC,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAC7B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;IACtB,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5B,IAAI,MAAM,KAAK,IAAI,EAAE;QACnB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE;YAC5C,yDAAyD;YACzD,+BAA+B;YAC/B,MAAM,GAAG,GAAG,EAA2B,CAAA;YACvC,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAChC,MAAM,EAAE,CAAA;aACT;QACH,CAAC,CAAC,CAAA;KACH;IAED,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,CACrC,GAAG,EAAE,CAAC,IAAI,IAAI,IAAI,EAClB,KAAK,EAAC,EAAE,EAAC,EAAE;QACT,MAAM,GAAG,GAAG,EAA2B,CAAA;QACvC,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE;YAChC,OAAO,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,CACpC,CAAC,IAAgC,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CACrE,CAAA;SACF;QACD,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE;YACxD,MAAM,EAAE,CAAA;SACT;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAC9B,EAAE,CAAC,EAAE;YACH,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE;gBACpB,OAAO,IAAI,CAAA;aACZ;iBAAM;gBACL,MAAM,EAAE,CAAA;aACT;QACH,CAAC,EACD,GAAG,EAAE;YACH,MAAM,EAAE,CAAA;QACV,CAAC,CACF,CAAA;IACH,CAAC,CACF,CAAA;AACH,CAAC,EACD,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAC3B,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { MkdirpOptions } from './opts-arg.js';
|
|
2
|
+
export declare const mkdirpNativeSync: (path: string, options?: MkdirpOptions) => string | void | undefined;
|
|
3
|
+
export declare const mkdirpNative: ((path: string, options?: MkdirpOptions) => Promise<string | void | undefined>) & {
|
|
4
|
+
sync: (path: string, options?: MkdirpOptions) => string | void | undefined;
|
|
5
|
+
};
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { dirname } from 'path';
|
|
2
|
+
import { findMade, findMadeSync } from './find-made.js';
|
|
3
|
+
import { mkdirpManual, mkdirpManualSync } from './mkdirp-manual.js';
|
|
4
|
+
import { optsArg } from './opts-arg.js';
|
|
5
|
+
export const mkdirpNativeSync = (path, options) => {
|
|
6
|
+
const opts = optsArg(options);
|
|
7
|
+
opts.recursive = true;
|
|
8
|
+
const parent = dirname(path);
|
|
9
|
+
if (parent === path) {
|
|
10
|
+
return opts.mkdirSync(path, opts);
|
|
11
|
+
}
|
|
12
|
+
const made = findMadeSync(opts, path);
|
|
13
|
+
try {
|
|
14
|
+
opts.mkdirSync(path, opts);
|
|
15
|
+
return made;
|
|
16
|
+
}
|
|
17
|
+
catch (er) {
|
|
18
|
+
const fer = er;
|
|
19
|
+
if (fer && fer.code === 'ENOENT') {
|
|
20
|
+
return mkdirpManualSync(path, opts);
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
throw er;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
export const mkdirpNative = Object.assign(async (path, options) => {
|
|
28
|
+
const opts = { ...optsArg(options), recursive: true };
|
|
29
|
+
const parent = dirname(path);
|
|
30
|
+
if (parent === path) {
|
|
31
|
+
return await opts.mkdirAsync(path, opts);
|
|
32
|
+
}
|
|
33
|
+
return findMade(opts, path).then((made) => opts
|
|
34
|
+
.mkdirAsync(path, opts)
|
|
35
|
+
.then(m => made || m)
|
|
36
|
+
.catch(er => {
|
|
37
|
+
const fer = er;
|
|
38
|
+
if (fer && fer.code === 'ENOENT') {
|
|
39
|
+
return mkdirpManual(path, opts);
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
throw er;
|
|
43
|
+
}
|
|
44
|
+
}));
|
|
45
|
+
}, { sync: mkdirpNativeSync });
|
|
46
|
+
//# sourceMappingURL=mkdirp-native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mkdirp-native.js","sourceRoot":"","sources":["../../src/mkdirp-native.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAC9B,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,EAAiB,OAAO,EAAE,MAAM,eAAe,CAAA;AAEtD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,IAAY,EACZ,OAAuB,EACI,EAAE;IAC7B,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;IACrB,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5B,IAAI,MAAM,KAAK,IAAI,EAAE;QACnB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;KAClC;IAED,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IACrC,IAAI;QACF,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAC1B,OAAO,IAAI,CAAA;KACZ;IAAC,OAAO,EAAE,EAAE;QACX,MAAM,GAAG,GAAG,EAA2B,CAAA;QACvC,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE;YAChC,OAAO,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;SACpC;aAAM;YACL,MAAM,EAAE,CAAA;SACT;KACF;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CACvC,KAAK,EACH,IAAY,EACZ,OAAuB,EACa,EAAE;IACtC,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAA;IACrD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5B,IAAI,MAAM,KAAK,IAAI,EAAE;QACnB,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;KACzC;IAED,OAAO,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAyB,EAAE,EAAE,CAC7D,IAAI;SACD,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC;SACtB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC;SACpB,KAAK,CAAC,EAAE,CAAC,EAAE;QACV,MAAM,GAAG,GAAG,EAA2B,CAAA;QACvC,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE;YAChC,OAAO,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;SAChC;aAAM;YACL,MAAM,EAAE,CAAA;SACT;IACH,CAAC,CAAC,CACL,CAAA;AACH,CAAC,EACD,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAC3B,CAAA"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
import { MakeDirectoryOptions, Stats } from 'fs';
|
|
4
|
+
export interface FsProvider {
|
|
5
|
+
stat?: (path: string, callback: (err: NodeJS.ErrnoException | null, stats: Stats) => any) => any;
|
|
6
|
+
mkdir?: (path: string, opts: MakeDirectoryOptions & {
|
|
7
|
+
recursive?: boolean;
|
|
8
|
+
}, callback: (err: NodeJS.ErrnoException | null, made?: string) => any) => any;
|
|
9
|
+
statSync?: (path: string) => Stats;
|
|
10
|
+
mkdirSync?: (path: string, opts: MakeDirectoryOptions & {
|
|
11
|
+
recursive?: boolean;
|
|
12
|
+
}) => string | undefined;
|
|
13
|
+
}
|
|
14
|
+
interface Options extends FsProvider {
|
|
15
|
+
mode?: number | string;
|
|
16
|
+
fs?: FsProvider;
|
|
17
|
+
mkdirAsync?: (path: string, opts: MakeDirectoryOptions & {
|
|
18
|
+
recursive?: boolean;
|
|
19
|
+
}) => Promise<string | undefined>;
|
|
20
|
+
statAsync?: (path: string) => Promise<Stats>;
|
|
21
|
+
}
|
|
22
|
+
export type MkdirpOptions = Options | number | string;
|
|
23
|
+
export interface MkdirpOptionsResolved {
|
|
24
|
+
mode: number;
|
|
25
|
+
fs: FsProvider;
|
|
26
|
+
mkdirAsync: (path: string, opts: MakeDirectoryOptions & {
|
|
27
|
+
recursive?: boolean;
|
|
28
|
+
}) => Promise<string | undefined>;
|
|
29
|
+
statAsync: (path: string) => Promise<Stats>;
|
|
30
|
+
stat: (path: string, callback: (err: NodeJS.ErrnoException | null, stats: Stats) => any) => any;
|
|
31
|
+
mkdir: (path: string, opts: MakeDirectoryOptions & {
|
|
32
|
+
recursive?: boolean;
|
|
33
|
+
}, callback: (err: NodeJS.ErrnoException | null, made?: string) => any) => any;
|
|
34
|
+
statSync: (path: string) => Stats;
|
|
35
|
+
mkdirSync: (path: string, opts: MakeDirectoryOptions & {
|
|
36
|
+
recursive?: boolean;
|
|
37
|
+
}) => string | undefined;
|
|
38
|
+
recursive?: boolean;
|
|
39
|
+
}
|
|
40
|
+
export declare const optsArg: (opts?: MkdirpOptions) => MkdirpOptionsResolved;
|
|
41
|
+
export {};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { mkdir, mkdirSync, stat, statSync, } from 'fs';
|
|
2
|
+
export const optsArg = (opts) => {
|
|
3
|
+
if (!opts) {
|
|
4
|
+
opts = { mode: 0o777 };
|
|
5
|
+
}
|
|
6
|
+
else if (typeof opts === 'object') {
|
|
7
|
+
opts = { mode: 0o777, ...opts };
|
|
8
|
+
}
|
|
9
|
+
else if (typeof opts === 'number') {
|
|
10
|
+
opts = { mode: opts };
|
|
11
|
+
}
|
|
12
|
+
else if (typeof opts === 'string') {
|
|
13
|
+
opts = { mode: parseInt(opts, 8) };
|
|
14
|
+
}
|
|
15
|
+
else {
|
|
16
|
+
throw new TypeError('invalid options argument');
|
|
17
|
+
}
|
|
18
|
+
const resolved = opts;
|
|
19
|
+
const optsFs = opts.fs || {};
|
|
20
|
+
opts.mkdir = opts.mkdir || optsFs.mkdir || mkdir;
|
|
21
|
+
opts.mkdirAsync = opts.mkdirAsync
|
|
22
|
+
? opts.mkdirAsync
|
|
23
|
+
: async (path, options) => {
|
|
24
|
+
return new Promise((res, rej) => resolved.mkdir(path, options, (er, made) => er ? rej(er) : res(made)));
|
|
25
|
+
};
|
|
26
|
+
opts.stat = opts.stat || optsFs.stat || stat;
|
|
27
|
+
opts.statAsync = opts.statAsync
|
|
28
|
+
? opts.statAsync
|
|
29
|
+
: async (path) => new Promise((res, rej) => resolved.stat(path, (err, stats) => (err ? rej(err) : res(stats))));
|
|
30
|
+
opts.statSync = opts.statSync || optsFs.statSync || statSync;
|
|
31
|
+
opts.mkdirSync = opts.mkdirSync || optsFs.mkdirSync || mkdirSync;
|
|
32
|
+
return resolved;
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=opts-arg.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"opts-arg.js","sourceRoot":"","sources":["../../src/opts-arg.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,EACL,SAAS,EACT,IAAI,EAEJ,QAAQ,GACT,MAAM,IAAI,CAAA;AAwDX,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,IAAoB,EAAyB,EAAE;IACrE,IAAI,CAAC,IAAI,EAAE;QACT,IAAI,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;KACvB;SAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QACnC,IAAI,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,CAAA;KAChC;SAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QACnC,IAAI,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;KACtB;SAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QACnC,IAAI,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAA;KACnC;SAAM;QACL,MAAM,IAAI,SAAS,CAAC,0BAA0B,CAAC,CAAA;KAChD;IAED,MAAM,QAAQ,GAAG,IAA6B,CAAA;IAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,IAAI,EAAE,CAAA;IAE5B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,IAAI,KAAK,CAAA;IAEhD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU;QAC/B,CAAC,CAAC,IAAI,CAAC,UAAU;QACjB,CAAC,CAAC,KAAK,EACH,IAAY,EACZ,OAAuD,EAC1B,EAAE;YAC/B,OAAO,IAAI,OAAO,CAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAClD,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CACzC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CACzB,CACF,CAAA;QACH,CAAC,CAAA;IAEL,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,IAAI,IAAI,CAAA;IAC5C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS;QAC7B,CAAC,CAAC,IAAI,CAAC,SAAS;QAChB,CAAC,CAAC,KAAK,EAAE,IAAY,EAAE,EAAE,CACrB,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CACvB,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CACnE,CAAA;IAEP,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,QAAQ,CAAA;IAC5D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,IAAI,SAAS,CAAA;IAEhE,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const pathArg: (path: string) => string;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
const platform = process.env.__TESTING_MKDIRP_PLATFORM__ || process.platform;
|
|
2
|
+
import { parse, resolve } from 'path';
|
|
3
|
+
export const pathArg = (path) => {
|
|
4
|
+
if (/\0/.test(path)) {
|
|
5
|
+
// simulate same failure that node raises
|
|
6
|
+
throw Object.assign(new TypeError('path must be a string without null bytes'), {
|
|
7
|
+
path,
|
|
8
|
+
code: 'ERR_INVALID_ARG_VALUE',
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
path = resolve(path);
|
|
12
|
+
if (platform === 'win32') {
|
|
13
|
+
const badWinChars = /[*|"<>?:]/;
|
|
14
|
+
const { root } = parse(path);
|
|
15
|
+
if (badWinChars.test(path.substring(root.length))) {
|
|
16
|
+
throw Object.assign(new Error('Illegal characters in path.'), {
|
|
17
|
+
path,
|
|
18
|
+
code: 'EINVAL',
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
return path;
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=path-arg.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path-arg.js","sourceRoot":"","sources":["../../src/path-arg.ts"],"names":[],"mappings":"AAAA,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,OAAO,CAAC,QAAQ,CAAA;AAC5E,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AACrC,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,EAAE;IACtC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACnB,yCAAyC;QACzC,MAAM,MAAM,CAAC,MAAM,CACjB,IAAI,SAAS,CAAC,0CAA0C,CAAC,EACzD;YACE,IAAI;YACJ,IAAI,EAAE,uBAAuB;SAC9B,CACF,CAAA;KACF;IAED,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACpB,IAAI,QAAQ,KAAK,OAAO,EAAE;QACxB,MAAM,WAAW,GAAG,WAAW,CAAA;QAC/B,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { mkdir, mkdirSync } from 'fs';
|
|
2
|
+
import { optsArg } from './opts-arg.js';
|
|
3
|
+
const version = process.env.__TESTING_MKDIRP_NODE_VERSION__ || process.version;
|
|
4
|
+
const versArr = version.replace(/^v/, '').split('.');
|
|
5
|
+
const hasNative = +versArr[0] > 10 || (+versArr[0] === 10 && +versArr[1] >= 12);
|
|
6
|
+
export const useNativeSync = !hasNative
|
|
7
|
+
? () => false
|
|
8
|
+
: (opts) => optsArg(opts).mkdirSync === mkdirSync;
|
|
9
|
+
export const useNative = Object.assign(!hasNative
|
|
10
|
+
? () => false
|
|
11
|
+
: (opts) => optsArg(opts).mkdir === mkdir, {
|
|
12
|
+
sync: useNativeSync,
|
|
13
|
+
});
|
|
14
|
+
//# sourceMappingURL=use-native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-native.js","sourceRoot":"","sources":["../../src/use-native.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAA;AACrC,OAAO,EAAiB,OAAO,EAAE,MAAM,eAAe,CAAA;AAEtD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,+BAA+B,IAAI,OAAO,CAAC,OAAO,CAAA;AAC9E,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;AACpD,MAAM,SAAS,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;AAE/E,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,SAAS;IACrC,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK;IACb,CAAC,CAAC,CAAC,IAAoB,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,CAAA;AAEnE,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CACpC,CAAC,SAAS;IACR,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK;IACb,CAAC,CAAC,CAAC,IAAoB,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,EAC3D;IACE,IAAI,EAAE,aAAa;CACpB,CACF,CAAA"}
|