UNPKG

idmp

Version:

A lightweight TypeScript library for deduplicating and caching async function calls with automatic retries, designed for idempotent network requests in React and Node.js.

1,632 lines (1,630 loc) 59.6 kB
/*! idmp v0.0.0 | (c) github/haozi | MIT */ var Gt = Object.defineProperty; var Xe = Object.getOwnPropertySymbols; var Yt = Object.prototype.hasOwnProperty, Vt = Object.prototype.propertyIsEnumerable; var He = (e, n) => (n = Symbol[e]) ? n : Symbol.for("Symbol." + e); var Ke = (e, n, i) => n in e ? Gt(e, n, { enumerable: !0, configurable: !0, writable: !0, value: i }) : e[n] = i, Y = (e, n) => { for (var i in n || (n = {})) Yt.call(n, i) && Ke(e, i, n[i]); if (Xe) for (var i of Xe(n)) Vt.call(n, i) && Ke(e, i, n[i]); return e; }; var $ = (e, n, i) => new Promise((c, a) => { var u = (y) => { try { h(i.next(y)); } catch (m) { a(m); } }, t = (y) => { try { h(i.throw(y)); } catch (m) { a(m); } }, h = (y) => y.done ? c(y.value) : Promise.resolve(y.value).then(u, t); h((i = i.apply(e, n)).next()); }); var Qe = (e, n, i) => (n = e[He("asyncIterator")]) ? n.call(e) : (e = e[He("iterator")](), n = {}, i = (c, a) => (a = e[c]) && (n[c] = (u) => new Promise((t, h, y) => (u = a.call(e, u), y = u.done, Promise.resolve(u.value).then((m) => t({ value: m, done: y }), h)))), i("next"), i("return"), n); var ie = typeof globalThis != "undefined" ? globalThis : typeof window != "undefined" ? window : typeof global != "undefined" ? global : typeof self != "undefined" ? self : {}; function Mt(e) { return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e; } function Q(e) { if (Object.prototype.hasOwnProperty.call(e, "__esModule")) return e; var n = e.default; if (typeof n == "function") { var i = function c() { var a = !1; try { a = this instanceof c; } catch (u) { } return a ? Reflect.construct(n, arguments, this.constructor) : n.apply(this, arguments); }; i.prototype = n.prototype; } else i = {}; return Object.defineProperty(i, "__esModule", { value: !0 }), Object.keys(e).forEach(function(c) { var a = Object.getOwnPropertyDescriptor(e, c); Object.defineProperty(i, c, a.get ? a : { enumerable: !0, get: function() { return e[c]; } }); }), i; } var me = {}, ae = {}, Ze; function U() { return Ze || (Ze = 1, ae.fromCallback = function(e) { return Object.defineProperty(function(...n) { if (typeof n[n.length - 1] == "function") e.apply(this, n); else return new Promise((i, c) => { n.push((a, u) => a != null ? c(a) : i(u)), e.apply(this, n); }); }, "name", { value: e.name }); }, ae.fromPromise = function(e) { return Object.defineProperty(function(...n) { const i = n[n.length - 1]; if (typeof i != "function") return e.apply(this, n); n.pop(), e.apply(this, n).then((c) => i(null, c), i); }, "name", { value: e.name }); }), ae; } const Xt = new Proxy({}, { get(e, n) { throw new Error(`Module "fs" has been externalized for browser compatibility. Cannot access "fs.${n}" in client code. See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details.`); } }), Ht = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ __proto__: null, default: Xt }, Symbol.toStringTag, { value: "Module" })), jt = /* @__PURE__ */ Q(Ht), Kt = new Proxy({}, { get(e, n) { throw new Error(`Module "constants" has been externalized for browser compatibility. Cannot access "constants.${n}" in client code. See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details.`); } }), Qt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ __proto__: null, default: Kt }, Symbol.toStringTag, { value: "Module" })), Zt = /* @__PURE__ */ Q(Qt); var de, et; function er() { if (et) return de; et = 1; var e = Zt, n = process.cwd, i = null, c = process.env.GRACEFUL_FS_PLATFORM || process.platform; process.cwd = function() { return i || (i = n.call(process)), i; }; try { process.cwd(); } catch (t) { } if (typeof process.chdir == "function") { var a = process.chdir; process.chdir = function(t) { i = null, a.call(process, t); }, Object.setPrototypeOf && Object.setPrototypeOf(process.chdir, a); } de = u; function u(t) { e.hasOwnProperty("O_SYMLINK") && process.version.match(/^v0\.6\.[0-2]|^v0\.5\./) && h(t), t.lutimes || y(t), t.chown = w(t.chown), t.fchown = w(t.fchown), t.lchown = w(t.lchown), t.chmod = m(t.chmod), t.fchmod = m(t.fchmod), t.lchmod = m(t.lchmod), t.chownSync = s(t.chownSync), t.fchownSync = s(t.fchownSync), t.lchownSync = s(t.lchownSync), t.chmodSync = E(t.chmodSync), t.fchmodSync = E(t.fchmodSync), t.lchmodSync = E(t.lchmodSync), t.stat = f(t.stat), t.fstat = f(t.fstat), t.lstat = f(t.lstat), t.statSync = g(t.statSync), t.fstatSync = g(t.fstatSync), t.lstatSync = g(t.lstatSync), t.chmod && !t.lchmod && (t.lchmod = function(r, o, l) { l && process.nextTick(l); }, t.lchmodSync = function() { }), t.chown && !t.lchown && (t.lchown = function(r, o, l, p) { p && process.nextTick(p); }, t.lchownSync = function() { }), c === "win32" && (t.rename = typeof t.rename != "function" ? t.rename : function(r) { function o(l, p, S) { var v = Date.now(), b = 0; r(l, p, function _(k) { if (k && (k.code === "EACCES" || k.code === "EPERM" || k.code === "EBUSY") && Date.now() - v < 6e4) { setTimeout(function() { t.stat(p, function(F, x) { F && F.code === "ENOENT" ? r(l, p, _) : S(k); }); }, b), b < 100 && (b += 10); return; } S && S(k); }); } return Object.setPrototypeOf && Object.setPrototypeOf(o, r), o; }(t.rename)), t.read = typeof t.read != "function" ? t.read : function(r) { function o(l, p, S, v, b, _) { var k; if (_ && typeof _ == "function") { var F = 0; k = function(x, W, z) { if (x && x.code === "EAGAIN" && F < 10) return F++, r.call(t, l, p, S, v, b, k); _.apply(this, arguments); }; } return r.call(t, l, p, S, v, b, k); } return Object.setPrototypeOf && Object.setPrototypeOf(o, r), o; }(t.read), t.readSync = typeof t.readSync != "function" ? t.readSync : /* @__PURE__ */ function(r) { return function(o, l, p, S, v) { for (var b = 0; ; ) try { return r.call(t, o, l, p, S, v); } catch (_) { if (_.code === "EAGAIN" && b < 10) { b++; continue; } throw _; } }; }(t.readSync); function h(r) { r.lchmod = function(o, l, p) { r.open( o, e.O_WRONLY | e.O_SYMLINK, l, function(S, v) { if (S) { p && p(S); return; } r.fchmod(v, l, function(b) { r.close(v, function(_) { p && p(b || _); }); }); } ); }, r.lchmodSync = function(o, l) { var p = r.openSync(o, e.O_WRONLY | e.O_SYMLINK, l), S = !0, v; try { v = r.fchmodSync(p, l), S = !1; } finally { if (S) try { r.closeSync(p); } catch (b) { } else r.closeSync(p); } return v; }; } function y(r) { e.hasOwnProperty("O_SYMLINK") && r.futimes ? (r.lutimes = function(o, l, p, S) { r.open(o, e.O_SYMLINK, function(v, b) { if (v) { S && S(v); return; } r.futimes(b, l, p, function(_) { r.close(b, function(k) { S && S(_ || k); }); }); }); }, r.lutimesSync = function(o, l, p) { var S = r.openSync(o, e.O_SYMLINK), v, b = !0; try { v = r.futimesSync(S, l, p), b = !1; } finally { if (b) try { r.closeSync(S); } catch (_) { } else r.closeSync(S); } return v; }) : r.futimes && (r.lutimes = function(o, l, p, S) { S && process.nextTick(S); }, r.lutimesSync = function() { }); } function m(r) { return r && function(o, l, p) { return r.call(t, o, l, function(S) { d(S) && (S = null), p && p.apply(this, arguments); }); }; } function E(r) { return r && function(o, l) { try { return r.call(t, o, l); } catch (p) { if (!d(p)) throw p; } }; } function w(r) { return r && function(o, l, p, S) { return r.call(t, o, l, p, function(v) { d(v) && (v = null), S && S.apply(this, arguments); }); }; } function s(r) { return r && function(o, l, p) { try { return r.call(t, o, l, p); } catch (S) { if (!d(S)) throw S; } }; } function f(r) { return r && function(o, l, p) { typeof l == "function" && (p = l, l = null); function S(v, b) { b && (b.uid < 0 && (b.uid += 4294967296), b.gid < 0 && (b.gid += 4294967296)), p && p.apply(this, arguments); } return l ? r.call(t, o, l, S) : r.call(t, o, S); }; } function g(r) { return r && function(o, l) { var p = l ? r.call(t, o, l) : r.call(t, o); return p && (p.uid < 0 && (p.uid += 4294967296), p.gid < 0 && (p.gid += 4294967296)), p; }; } function d(r) { if (!r || r.code === "ENOSYS") return !0; var o = !process.getuid || process.getuid() !== 0; return !!(o && (r.code === "EINVAL" || r.code === "EPERM")); } } return de; } const tr = new Proxy({}, { get(e, n) { throw new Error(`Module "stream" has been externalized for browser compatibility. Cannot access "stream.${n}" in client code. See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details.`); } }), rr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ __proto__: null, default: tr }, Symbol.toStringTag, { value: "Module" })), nr = /* @__PURE__ */ Q(rr); var he, tt; function ir() { if (tt) return he; tt = 1; var e = nr.Stream; he = n; function n(i) { return { ReadStream: c, WriteStream: a }; function c(u, t) { if (!(this instanceof c)) return new c(u, t); e.call(this); var h = this; this.path = u, this.fd = null, this.readable = !0, this.paused = !1, this.flags = "r", this.mode = 438, this.bufferSize = 64 * 1024, t = t || {}; for (var y = Object.keys(t), m = 0, E = y.length; m < E; m++) { var w = y[m]; this[w] = t[w]; } if (this.encoding && this.setEncoding(this.encoding), this.start !== void 0) { if (typeof this.start != "number") throw TypeError("start must be a Number"); if (this.end === void 0) this.end = 1 / 0; else if (typeof this.end != "number") throw TypeError("end must be a Number"); if (this.start > this.end) throw new Error("start must be <= end"); this.pos = this.start; } if (this.fd !== null) { process.nextTick(function() { h._read(); }); return; } i.open(this.path, this.flags, this.mode, function(s, f) { if (s) { h.emit("error", s), h.readable = !1; return; } h.fd = f, h.emit("open", f), h._read(); }); } function a(u, t) { if (!(this instanceof a)) return new a(u, t); e.call(this), this.path = u, this.fd = null, this.writable = !0, this.flags = "w", this.encoding = "binary", this.mode = 438, this.bytesWritten = 0, t = t || {}; for (var h = Object.keys(t), y = 0, m = h.length; y < m; y++) { var E = h[y]; this[E] = t[E]; } if (this.start !== void 0) { if (typeof this.start != "number") throw TypeError("start must be a Number"); if (this.start < 0) throw new Error("start must be >= zero"); this.pos = this.start; } this.busy = !1, this._queue = [], this.fd === null && (this._open = i.open, this._queue.push([this._open, this.path, this.flags, this.mode, void 0]), this.flush()); } } return he; } var pe, rt; function or() { if (rt) return pe; rt = 1, pe = n; var e = Object.getPrototypeOf || function(i) { return i.__proto__; }; function n(i) { if (i === null || typeof i != "object") return i; if (i instanceof Object) var c = { __proto__: e(i) }; else var c = /* @__PURE__ */ Object.create(null); return Object.getOwnPropertyNames(i).forEach(function(a) { Object.defineProperty(c, a, Object.getOwnPropertyDescriptor(i, a)); }), c; } return pe; } const ar = new Proxy({}, { get(e, n) { throw new Error(`Module "util" has been externalized for browser compatibility. Cannot access "util.${n}" in client code. See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details.`); } }), cr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ __proto__: null, default: ar }, Symbol.toStringTag, { value: "Module" })), ur = /* @__PURE__ */ Q(cr), sr = new Proxy({}, { get(e, n) { throw new Error(`Module "assert" has been externalized for browser compatibility. Cannot access "assert.${n}" in client code. See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details.`); } }), fr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ __proto__: null, default: sr }, Symbol.toStringTag, { value: "Module" })), lr = /* @__PURE__ */ Q(fr); var ce, nt; function oe() { if (nt) return ce; nt = 1; var e = jt, n = er(), i = ir(), c = or(), a = ur, u, t; typeof Symbol == "function" && typeof Symbol.for == "function" ? (u = Symbol.for("graceful-fs.queue"), t = Symbol.for("graceful-fs.previous")) : (u = "___graceful-fs.queue", t = "___graceful-fs.previous"); function h() { } function y(r, o) { Object.defineProperty(r, u, { get: function() { return o; } }); } var m = h; if (a.debuglog ? m = a.debuglog("gfs4") : /\bgfs4\b/i.test(process.env.NODE_DEBUG || "") && (m = function() { var r = a.format.apply(a, arguments); r = "GFS4: " + r.split(/\n/).join(` GFS4: `), console.error(r); }), !e[u]) { var E = ie[u] || []; y(e, E), e.close = function(r) { function o(l, p) { return r.call(e, l, function(S) { S || g(), typeof p == "function" && p.apply(this, arguments); }); } return Object.defineProperty(o, t, { value: r }), o; }(e.close), e.closeSync = function(r) { function o(l) { r.apply(e, arguments), g(); } return Object.defineProperty(o, t, { value: r }), o; }(e.closeSync), /\bgfs4\b/i.test(process.env.NODE_DEBUG || "") && process.on("exit", function() { m(e[u]), lr.equal(e[u].length, 0); }); } ie[u] || y(ie, e[u]), ce = w(c(e)), process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH && !e.__patched && (ce = w(e), e.__patched = !0); function w(r) { n(r), r.gracefulify = w, r.createReadStream = Jt, r.createWriteStream = Wt; var o = r.readFile; r.readFile = l; function l(P, R, D) { return typeof R == "function" && (D = R, R = null), A(P, R, D); function A(I, j, T, M) { return o(I, j, function(q) { q && (q.code === "EMFILE" || q.code === "ENFILE") ? s([A, [I, j, T], q, M || Date.now(), Date.now()]) : typeof T == "function" && T.apply(this, arguments); }); } } var p = r.writeFile; r.writeFile = S; function S(P, R, D, A) { return typeof D == "function" && (A = D, D = null), I(P, R, D, A); function I(j, T, M, q, B) { return p(j, T, M, function(N) { N && (N.code === "EMFILE" || N.code === "ENFILE") ? s([I, [j, T, M, q], N, B || Date.now(), Date.now()]) : typeof q == "function" && q.apply(this, arguments); }); } } var v = r.appendFile; v && (r.appendFile = b); function b(P, R, D, A) { return typeof D == "function" && (A = D, D = null), I(P, R, D, A); function I(j, T, M, q, B) { return v(j, T, M, function(N) { N && (N.code === "EMFILE" || N.code === "ENFILE") ? s([I, [j, T, M, q], N, B || Date.now(), Date.now()]) : typeof q == "function" && q.apply(this, arguments); }); } } var _ = r.copyFile; _ && (r.copyFile = k); function k(P, R, D, A) { return typeof D == "function" && (A = D, D = 0), I(P, R, D, A); function I(j, T, M, q, B) { return _(j, T, M, function(N) { N && (N.code === "EMFILE" || N.code === "ENFILE") ? s([I, [j, T, M, q], N, B || Date.now(), Date.now()]) : typeof q == "function" && q.apply(this, arguments); }); } } var F = r.readdir; r.readdir = W; var x = /^v[0-5]\./; function W(P, R, D) { typeof R == "function" && (D = R, R = null); var A = x.test(process.version) ? function(T, M, q, B) { return F(T, I( T, M, q, B )); } : function(T, M, q, B) { return F(T, M, I( T, M, q, B )); }; return A(P, R, D); function I(j, T, M, q) { return function(B, N) { B && (B.code === "EMFILE" || B.code === "ENFILE") ? s([ A, [j, T, M], B, q || Date.now(), Date.now() ]) : (N && N.sort && N.sort(), typeof M == "function" && M.call(this, B, N)); }; } } if (process.version.substr(0, 4) === "v0.8") { var z = i(r); J = z.ReadStream, K = z.WriteStream; } var V = r.ReadStream; V && (J.prototype = Object.create(V.prototype), J.prototype.open = ne); var L = r.WriteStream; L && (K.prototype = Object.create(L.prototype), K.prototype.open = Ut), Object.defineProperty(r, "ReadStream", { get: function() { return J; }, set: function(P) { J = P; }, enumerable: !0, configurable: !0 }), Object.defineProperty(r, "WriteStream", { get: function() { return K; }, set: function(P) { K = P; }, enumerable: !0, configurable: !0 }); var O = J; Object.defineProperty(r, "FileReadStream", { get: function() { return O; }, set: function(P) { O = P; }, enumerable: !0, configurable: !0 }); var C = K; Object.defineProperty(r, "FileWriteStream", { get: function() { return C; }, set: function(P) { C = P; }, enumerable: !0, configurable: !0 }); function J(P, R) { return this instanceof J ? (V.apply(this, arguments), this) : J.apply(Object.create(J.prototype), arguments); } function ne() { var P = this; ye(P.path, P.flags, P.mode, function(R, D) { R ? (P.autoClose && P.destroy(), P.emit("error", R)) : (P.fd = D, P.emit("open", D), P.read()); }); } function K(P, R) { return this instanceof K ? (L.apply(this, arguments), this) : K.apply(Object.create(K.prototype), arguments); } function Ut() { var P = this; ye(P.path, P.flags, P.mode, function(R, D) { R ? (P.destroy(), P.emit("error", R)) : (P.fd = D, P.emit("open", D)); }); } function Jt(P, R) { return new r.ReadStream(P, R); } function Wt(P, R) { return new r.WriteStream(P, R); } var zt = r.open; r.open = ye; function ye(P, R, D, A) { return typeof D == "function" && (A = D, D = null), I(P, R, D, A); function I(j, T, M, q, B) { return zt(j, T, M, function(N, Qr) { N && (N.code === "EMFILE" || N.code === "ENFILE") ? s([I, [j, T, M, q], N, B || Date.now(), Date.now()]) : typeof q == "function" && q.apply(this, arguments); }); } } return r; } function s(r) { m("ENQUEUE", r[0].name, r[1]), e[u].push(r), d(); } var f; function g() { for (var r = Date.now(), o = 0; o < e[u].length; ++o) e[u][o].length > 2 && (e[u][o][3] = r, e[u][o][4] = r); d(); } function d() { if (clearTimeout(f), f = void 0, e[u].length !== 0) { var r = e[u].shift(), o = r[0], l = r[1], p = r[2], S = r[3], v = r[4]; if (S === void 0) m("RETRY", o.name, l), o.apply(null, l); else if (Date.now() - S >= 6e4) { m("TIMEOUT", o.name, l); var b = l.pop(); typeof b == "function" && b.call(null, p); } else { var _ = Date.now() - v, k = Math.max(v - S, 1), F = Math.min(k * 1.2, 100); _ >= F ? (m("RETRY", o.name, l), o.apply(null, l.concat([S]))) : e[u].push(r); } f === void 0 && (f = setTimeout(d, 0)); } } return ce; } var it; function G() { return it || (it = 1, function(e) { const n = U().fromCallback, i = oe(), c = [ "access", "appendFile", "chmod", "chown", "close", "copyFile", "cp", "fchmod", "fchown", "fdatasync", "fstat", "fsync", "ftruncate", "futimes", "glob", "lchmod", "lchown", "lutimes", "link", "lstat", "mkdir", "mkdtemp", "open", "opendir", "readdir", "readFile", "readlink", "realpath", "rename", "rm", "rmdir", "stat", "statfs", "symlink", "truncate", "unlink", "utimes", "writeFile" ].filter((a) => typeof i[a] == "function"); Object.assign(e, i), c.forEach((a) => { e[a] = n(i[a]); }), e.exists = function(a, u) { return typeof u == "function" ? i.exists(a, u) : new Promise((t) => i.exists(a, t)); }, e.read = function(a, u, t, h, y, m) { return typeof m == "function" ? i.read(a, u, t, h, y, m) : new Promise((E, w) => { i.read(a, u, t, h, y, (s, f, g) => { if (s) return w(s); E({ bytesRead: f, buffer: g }); }); }); }, e.write = function(a, u, ...t) { return typeof t[t.length - 1] == "function" ? i.write(a, u, ...t) : new Promise((h, y) => { i.write(a, u, ...t, (m, E, w) => { if (m) return y(m); h({ bytesWritten: E, buffer: w }); }); }); }, e.readv = function(a, u, ...t) { return typeof t[t.length - 1] == "function" ? i.readv(a, u, ...t) : new Promise((h, y) => { i.readv(a, u, ...t, (m, E, w) => { if (m) return y(m); h({ bytesRead: E, buffers: w }); }); }); }, e.writev = function(a, u, ...t) { return typeof t[t.length - 1] == "function" ? i.writev(a, u, ...t) : new Promise((h, y) => { i.writev(a, u, ...t, (m, E, w) => { if (m) return y(m); h({ bytesWritten: E, buffers: w }); }); }); }, typeof i.realpath.native == "function" ? e.realpath.native = n(i.realpath.native) : process.emitWarning( "fs.realpath.native is not a function. Is fs being monkey-patched?", "Warning", "fs-extra-WARN0003" ); }(me)), me; } const yr = new Proxy({}, { get(e, n) { throw new Error(`Module "path" has been externalized for browser compatibility. Cannot access "path.${n}" in client code. See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details.`); } }), mr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ __proto__: null, default: yr }, Symbol.toStringTag, { value: "Module" })), X = /* @__PURE__ */ Q(mr); var ue = {}, we = {}, ot; function dr() { if (ot) return we; ot = 1; const e = X; return we.checkPath = function(i) { if (process.platform === "win32" && /[<>:"|?*]/.test(i.replace(e.parse(i).root, ""))) { const a = new Error(`Path contains invalid characters: ${i}`); throw a.code = "EINVAL", a; } }, we; } var at; function hr() { if (at) return ue; at = 1; const e = /* @__PURE__ */ G(), { checkPath: n } = /* @__PURE__ */ dr(), i = (c) => { const a = { mode: 511 }; return typeof c == "number" ? c : Y(Y({}, a), c).mode; }; return ue.makeDir = (c, a) => $(null, null, function* () { return n(c), e.mkdir(c, { mode: i(a), recursive: !0 }); }), ue.makeDirSync = (c, a) => (n(c), e.mkdirSync(c, { mode: i(a), recursive: !0 })), ue; } var ve, ct; function H() { if (ct) return ve; ct = 1; const e = U().fromPromise, { makeDir: n, makeDirSync: i } = /* @__PURE__ */ hr(), c = e(n); return ve = { mkdirs: c, mkdirsSync: i, // alias mkdirp: c, mkdirpSync: i, ensureDir: c, ensureDirSync: i }, ve; } var Se, ut; function Z() { if (ut) return Se; ut = 1; const e = U().fromPromise, n = /* @__PURE__ */ G(); function i(c) { return n.access(c).then(() => !0).catch(() => !1); } return Se = { pathExists: e(i), pathExistsSync: n.existsSync }, Se; } var ge, st; function At() { if (st) return ge; st = 1; const e = /* @__PURE__ */ G(), n = U().fromPromise; function i(a, u, t) { return $(this, null, function* () { const h = yield e.open(a, "r+"); let y = null; try { yield e.futimes(h, u, t); } finally { try { yield e.close(h); } catch (m) { y = m; } } if (y) throw y; }); } function c(a, u, t) { const h = e.openSync(a, "r+"); return e.futimesSync(h, u, t), e.closeSync(h); } return ge = { utimesMillis: n(i), utimesMillisSync: c }, ge; } var _e, ft; function re() { if (ft) return _e; ft = 1; const e = /* @__PURE__ */ G(), n = X, i = U().fromPromise; function c(s, f, g) { const d = g.dereference ? (r) => e.stat(r, { bigint: !0 }) : (r) => e.lstat(r, { bigint: !0 }); return Promise.all([ d(s), d(f).catch((r) => { if (r.code === "ENOENT") return null; throw r; }) ]).then(([r, o]) => ({ srcStat: r, destStat: o })); } function a(s, f, g) { let d; const r = g.dereference ? (l) => e.statSync(l, { bigint: !0 }) : (l) => e.lstatSync(l, { bigint: !0 }), o = r(s); try { d = r(f); } catch (l) { if (l.code === "ENOENT") return { srcStat: o, destStat: null }; throw l; } return { srcStat: o, destStat: d }; } function u(s, f, g, d) { return $(this, null, function* () { const { srcStat: r, destStat: o } = yield c(s, f, d); if (o) { if (m(r, o)) { const l = n.basename(s), p = n.basename(f); if (g === "move" && l !== p && l.toLowerCase() === p.toLowerCase()) return { srcStat: r, destStat: o, isChangingCase: !0 }; throw new Error("Source and destination must not be the same."); } if (r.isDirectory() && !o.isDirectory()) throw new Error(`Cannot overwrite non-directory '${f}' with directory '${s}'.`); if (!r.isDirectory() && o.isDirectory()) throw new Error(`Cannot overwrite directory '${f}' with non-directory '${s}'.`); } if (r.isDirectory() && E(s, f)) throw new Error(w(s, f, g)); return { srcStat: r, destStat: o }; }); } function t(s, f, g, d) { const { srcStat: r, destStat: o } = a(s, f, d); if (o) { if (m(r, o)) { const l = n.basename(s), p = n.basename(f); if (g === "move" && l !== p && l.toLowerCase() === p.toLowerCase()) return { srcStat: r, destStat: o, isChangingCase: !0 }; throw new Error("Source and destination must not be the same."); } if (r.isDirectory() && !o.isDirectory()) throw new Error(`Cannot overwrite non-directory '${f}' with directory '${s}'.`); if (!r.isDirectory() && o.isDirectory()) throw new Error(`Cannot overwrite directory '${f}' with non-directory '${s}'.`); } if (r.isDirectory() && E(s, f)) throw new Error(w(s, f, g)); return { srcStat: r, destStat: o }; } function h(s, f, g, d) { return $(this, null, function* () { const r = n.resolve(n.dirname(s)), o = n.resolve(n.dirname(g)); if (o === r || o === n.parse(o).root) return; let l; try { l = yield e.stat(o, { bigint: !0 }); } catch (p) { if (p.code === "ENOENT") return; throw p; } if (m(f, l)) throw new Error(w(s, g, d)); return h(s, f, o, d); }); } function y(s, f, g, d) { const r = n.resolve(n.dirname(s)), o = n.resolve(n.dirname(g)); if (o === r || o === n.parse(o).root) return; let l; try { l = e.statSync(o, { bigint: !0 }); } catch (p) { if (p.code === "ENOENT") return; throw p; } if (m(f, l)) throw new Error(w(s, g, d)); return y(s, f, o, d); } function m(s, f) { return f.ino && f.dev && f.ino === s.ino && f.dev === s.dev; } function E(s, f) { const g = n.resolve(s).split(n.sep).filter((r) => r), d = n.resolve(f).split(n.sep).filter((r) => r); return g.every((r, o) => d[o] === r); } function w(s, f, g) { return `Cannot ${g} '${s}' to a subdirectory of itself, '${f}'.`; } return _e = { // checkPaths checkPaths: i(u), checkPathsSync: t, // checkParent checkParentPaths: i(h), checkParentPathsSync: y, // Misc isSrcSubdir: E, areIdentical: m }, _e; } var be, lt; function pr() { if (lt) return be; lt = 1; const e = /* @__PURE__ */ G(), n = X, { mkdirs: i } = /* @__PURE__ */ H(), { pathExists: c } = /* @__PURE__ */ Z(), { utimesMillis: a } = /* @__PURE__ */ At(), u = /* @__PURE__ */ re(); function t(l, p) { return $(this, arguments, function* (d, r, o = {}) { typeof o == "function" && (o = { filter: o }), o.clobber = "clobber" in o ? !!o.clobber : !0, o.overwrite = "overwrite" in o ? !!o.overwrite : o.clobber, o.preserveTimestamps && process.arch === "ia32" && process.emitWarning( `Using the preserveTimestamps option in 32-bit node is not recommended; see https://github.com/jprichardson/node-fs-extra/issues/269`, "Warning", "fs-extra-WARN0001" ); const { srcStat: S, destStat: v } = yield u.checkPaths(d, r, "copy", o); if (yield u.checkParentPaths(d, S, r, "copy"), !(yield h(d, r, o))) return; const _ = n.dirname(r); (yield c(_)) || (yield i(_)), yield y(v, d, r, o); }); } function h(d, r, o) { return $(this, null, function* () { return o.filter ? o.filter(d, r) : !0; }); } function y(d, r, o, l) { return $(this, null, function* () { const S = yield (l.dereference ? e.stat : e.lstat)(r); if (S.isDirectory()) return f(S, d, r, o, l); if (S.isFile() || S.isCharacterDevice() || S.isBlockDevice()) return m(S, d, r, o, l); if (S.isSymbolicLink()) return g(d, r, o, l); throw S.isSocket() ? new Error(`Cannot copy a socket file: ${r}`) : S.isFIFO() ? new Error(`Cannot copy a FIFO pipe: ${r}`) : new Error(`Unknown file: ${r}`); }); } function m(d, r, o, l, p) { return $(this, null, function* () { if (!r) return E(d, o, l, p); if (p.overwrite) return yield e.unlink(l), E(d, o, l, p); if (p.errorOnExist) throw new Error(`'${l}' already exists`); }); } function E(d, r, o, l) { return $(this, null, function* () { if (yield e.copyFile(r, o), l.preserveTimestamps) { w(d.mode) && (yield s(o, d.mode)); const p = yield e.stat(r); yield a(o, p.atime, p.mtime); } return e.chmod(o, d.mode); }); } function w(d) { return (d & 128) === 0; } function s(d, r) { return e.chmod(d, r | 128); } function f(d, r, o, l, p) { return $(this, null, function* () { r || (yield e.mkdir(l)); const S = []; try { for (var v = Qe(yield e.opendir(o)), b, _, k; b = !(_ = yield v.next()).done; b = !1) { const F = _.value; const x = n.join(o, F.name), W = n.join(l, F.name); S.push( h(x, W, p).then((z) => { if (z) return u.checkPaths(x, W, "copy", p).then(({ destStat: V }) => y(V, x, W, p)); }) ); } } catch (_) { k = [_]; } finally { try { b && (_ = v.return) && (yield _.call(v)); } finally { if (k) throw k[0]; } } yield Promise.all(S), r || (yield e.chmod(l, d.mode)); }); } function g(d, r, o, l) { return $(this, null, function* () { let p = yield e.readlink(r); if (l.dereference && (p = n.resolve(process.cwd(), p)), !d) return e.symlink(p, o); let S = null; try { S = yield e.readlink(o); } catch (v) { if (v.code === "EINVAL" || v.code === "UNKNOWN") return e.symlink(p, o); throw v; } if (l.dereference && (S = n.resolve(process.cwd(), S)), u.isSrcSubdir(p, S)) throw new Error(`Cannot copy '${p}' to a subdirectory of itself, '${S}'.`); if (u.isSrcSubdir(S, p)) throw new Error(`Cannot overwrite '${S}' with '${p}'.`); return yield e.unlink(o), e.symlink(p, o); }); } return be = t, be; } var Ee, yt; function wr() { if (yt) return Ee; yt = 1; const e = oe(), n = X, i = H().mkdirsSync, c = At().utimesMillisSync, a = /* @__PURE__ */ re(); function u(v, b, _) { typeof _ == "function" && (_ = { filter: _ }), _ = _ || {}, _.clobber = "clobber" in _ ? !!_.clobber : !0, _.overwrite = "overwrite" in _ ? !!_.overwrite : _.clobber, _.preserveTimestamps && process.arch === "ia32" && process.emitWarning( `Using the preserveTimestamps option in 32-bit node is not recommended; see https://github.com/jprichardson/node-fs-extra/issues/269`, "Warning", "fs-extra-WARN0002" ); const { srcStat: k, destStat: F } = a.checkPathsSync(v, b, "copy", _); if (a.checkParentPathsSync(v, k, b, "copy"), _.filter && !_.filter(v, b)) return; const x = n.dirname(b); return e.existsSync(x) || i(x), t(F, v, b, _); } function t(v, b, _, k) { const x = (k.dereference ? e.statSync : e.lstatSync)(b); if (x.isDirectory()) return d(x, v, b, _, k); if (x.isFile() || x.isCharacterDevice() || x.isBlockDevice()) return h(x, v, b, _, k); if (x.isSymbolicLink()) return p(v, b, _, k); throw x.isSocket() ? new Error(`Cannot copy a socket file: ${b}`) : x.isFIFO() ? new Error(`Cannot copy a FIFO pipe: ${b}`) : new Error(`Unknown file: ${b}`); } function h(v, b, _, k, F) { return b ? y(v, _, k, F) : m(v, _, k, F); } function y(v, b, _, k) { if (k.overwrite) return e.unlinkSync(_), m(v, b, _, k); if (k.errorOnExist) throw new Error(`'${_}' already exists`); } function m(v, b, _, k) { return e.copyFileSync(b, _), k.preserveTimestamps && E(v.mode, b, _), f(_, v.mode); } function E(v, b, _) { return w(v) && s(_, v), g(b, _); } function w(v) { return (v & 128) === 0; } function s(v, b) { return f(v, b | 128); } function f(v, b) { return e.chmodSync(v, b); } function g(v, b) { const _ = e.statSync(v); return c(b, _.atime, _.mtime); } function d(v, b, _, k, F) { return b ? o(_, k, F) : r(v.mode, _, k, F); } function r(v, b, _, k) { return e.mkdirSync(_), o(b, _, k), f(_, v); } function o(v, b, _) { const k = e.opendirSync(v); try { let F; for (; (F = k.readSync()) !== null; ) l(F.name, v, b, _); } finally { k.closeSync(); } } function l(v, b, _, k) { const F = n.join(b, v), x = n.join(_, v); if (k.filter && !k.filter(F, x)) return; const { destStat: W } = a.checkPathsSync(F, x, "copy", k); return t(W, F, x, k); } function p(v, b, _, k) { let F = e.readlinkSync(b); if (k.dereference && (F = n.resolve(process.cwd(), F)), v) { let x; try { x = e.readlinkSync(_); } catch (W) { if (W.code === "EINVAL" || W.code === "UNKNOWN") return e.symlinkSync(F, _); throw W; } if (k.dereference && (x = n.resolve(process.cwd(), x)), a.isSrcSubdir(F, x)) throw new Error(`Cannot copy '${F}' to a subdirectory of itself, '${x}'.`); if (a.isSrcSubdir(x, F)) throw new Error(`Cannot overwrite '${x}' with '${F}'.`); return S(F, _); } else return e.symlinkSync(F, _); } function S(v, b) { return e.unlinkSync(b), e.symlinkSync(v, b); } return Ee = u, Ee; } var ke, mt; function ze() { if (mt) return ke; mt = 1; const e = U().fromPromise; return ke = { copy: e(/* @__PURE__ */ pr()), copySync: /* @__PURE__ */ wr() }, ke; } var Fe, dt; function le() { if (dt) return Fe; dt = 1; const e = oe(), n = U().fromCallback; function i(a, u) { e.rm(a, { recursive: !0, force: !0 }, u); } function c(a) { e.rmSync(a, { recursive: !0, force: !0 }); } return Fe = { remove: n(i), removeSync: c }, Fe; } var Pe, ht; function vr() { if (ht) return Pe; ht = 1; const e = U().fromPromise, n = /* @__PURE__ */ G(), i = X, c = /* @__PURE__ */ H(), a = /* @__PURE__ */ le(), u = e(function(y) { return $(this, null, function* () { let m; try { m = yield n.readdir(y); } catch (E) { return c.mkdirs(y); } return Promise.all(m.map((E) => a.remove(i.join(y, E)))); }); }); function t(h) { let y; try { y = n.readdirSync(h); } catch (m) { return c.mkdirsSync(h); } y.forEach((m) => { m = i.join(h, m), a.removeSync(m); }); } return Pe = { emptyDirSync: t, emptydirSync: t, emptyDir: u, emptydir: u }, Pe; } var Oe, pt; function Sr() { if (pt) return Oe; pt = 1; const e = U().fromPromise, n = X, i = /* @__PURE__ */ G(), c = /* @__PURE__ */ H(); function a(t) { return $(this, null, function* () { let h; try { h = yield i.stat(t); } catch (E) { } if (h && h.isFile()) return; const y = n.dirname(t); let m = null; try { m = yield i.stat(y); } catch (E) { if (E.code === "ENOENT") { yield c.mkdirs(y), yield i.writeFile(t, ""); return; } else throw E; } m.isDirectory() ? yield i.writeFile(t, "") : yield i.readdir(y); }); } function u(t) { let h; try { h = i.statSync(t); } catch (m) { } if (h && h.isFile()) return; const y = n.dirname(t); try { i.statSync(y).isDirectory() || i.readdirSync(y); } catch (m) { if (m && m.code === "ENOENT") c.mkdirsSync(y); else throw m; } i.writeFileSync(t, ""); } return Oe = { createFile: e(a), createFileSync: u }, Oe; } var xe, wt; function gr() { if (wt) return xe; wt = 1; const e = U().fromPromise, n = X, i = /* @__PURE__ */ G(), c = /* @__PURE__ */ H(), { pathExists: a } = /* @__PURE__ */ Z(), { areIdentical: u } = /* @__PURE__ */ re(); function t(y, m) { return $(this, null, function* () { let E; try { E = yield i.lstat(m); } catch (g) { } let w; try { w = yield i.lstat(y); } catch (g) { throw g.message = g.message.replace("lstat", "ensureLink"), g; } if (E && u(w, E)) return; const s = n.dirname(m); (yield a(s)) || (yield c.mkdirs(s)), yield i.link(y, m); }); } function h(y, m) { let E; try { E = i.lstatSync(m); } catch (f) { } try { const f = i.lstatSync(y); if (E && u(f, E)) return; } catch (f) { throw f.message = f.message.replace("lstat", "ensureLink"), f; } const w = n.dirname(m); return i.existsSync(w) || c.mkdirsSync(w), i.linkSync(y, m); } return xe = { createLink: e(t), createLinkSync: h }, xe; } var De, vt; function _r() { if (vt) return De; vt = 1; const e = X, n = /* @__PURE__ */ G(), { pathExists: i } = /* @__PURE__ */ Z(), c = U().fromPromise; function a(t, h) { return $(this, null, function* () { if (e.isAbsolute(t)) { try { yield n.lstat(t); } catch (w) { throw w.message = w.message.replace("lstat", "ensureSymlink"), w; } return { toCwd: t, toDst: t }; } const y = e.dirname(h), m = e.join(y, t); if (yield i(m)) return { toCwd: m, toDst: t }; try { yield n.lstat(t); } catch (w) { throw w.message = w.message.replace("lstat", "ensureSymlink"), w; } return { toCwd: t, toDst: e.relative(y, t) }; }); } function u(t, h) { if (e.isAbsolute(t)) { if (!n.existsSync(t)) throw new Error("absolute srcpath does not exist"); return { toCwd: t, toDst: t }; } const y = e.dirname(h), m = e.join(y, t); if (n.existsSync(m)) return { toCwd: m, toDst: t }; if (!n.existsSync(t)) throw new Error("relative srcpath does not exist"); return { toCwd: t, toDst: e.relative(y, t) }; } return De = { symlinkPaths: c(a), symlinkPathsSync: u }, De; } var Re, St; function br() { if (St) return Re; St = 1; const e = /* @__PURE__ */ G(), n = U().fromPromise; function i(a, u) { return $(this, null, function* () { if (u) return u; let t; try { t = yield e.lstat(a); } catch (h) { return "file"; } return t && t.isDirectory() ? "dir" : "file"; }); } function c(a, u) { if (u) return u; let t; try { t = e.lstatSync(a); } catch (h) { return "file"; } return t && t.isDirectory() ? "dir" : "file"; } return Re = { symlinkType: n(i), symlinkTypeSync: c }, Re; } var $e, gt; function Er() { if (gt) return $e; gt = 1; const e = U().fromPromise, n = X, i = /* @__PURE__ */ G(), { mkdirs: c, mkdirsSync: a } = /* @__PURE__ */ H(), { symlinkPaths: u, symlinkPathsSync: t } = /* @__PURE__ */ _r(), { symlinkType: h, symlinkTypeSync: y } = /* @__PURE__ */ br(), { pathExists: m } = /* @__PURE__ */ Z(), { areIdentical: E } = /* @__PURE__ */ re(); function w(f, g, d) { return $(this, null, function* () { let r; try { r = yield i.lstat(g); } catch (S) { } if (r && r.isSymbolicLink()) { const [S, v] = yield Promise.all([ i.stat(f), i.stat(g) ]); if (E(S, v)) return; } const o = yield u(f, g); f = o.toDst; const l = yield h(o.toCwd, d), p = n.dirname(g); return (yield m(p)) || (yield c(p)), i.symlink(f, g, l); }); } function s(f, g, d) { let r; try { r = i.lstatSync(g); } catch (S) { } if (r && r.isSymbolicLink()) { const S = i.statSync(f), v = i.statSync(g); if (E(S, v)) return; } const o = t(f, g); f = o.toDst, d = y(o.toCwd, d); const l = n.dirname(g); return i.existsSync(l) || a(l), i.symlinkSync(f, g, d); } return $e = { createSymlink: e(w), createSymlinkSync: s }, $e; } var qe, _t; function kr() { if (_t) return qe; _t = 1; const { createFile: e, createFileSync: n } = /* @__PURE__ */ Sr(), { createLink: i, createLinkSync: c } = /* @__PURE__ */ gr(), { createSymlink: a, createSymlinkSync: u } = /* @__PURE__ */ Er(); return qe = { // file createFile: e, createFileSync: n, ensureFile: e, ensureFileSync: n, // link createLink: i, createLinkSync: c, ensureLink: i, ensureLinkSync: c, // symlink createSymlink: a, createSymlinkSync: u, ensureSymlink: a, ensureSymlinkSync: u }, qe; } var Ce, bt; function Ge() { if (bt) return Ce; bt = 1; function e(i, { EOL: c = ` `, finalEOL: a = !0, replacer: u = null, spaces: t } = {}) { const h = a ? c : ""; return JSON.stringify(i, u, t).replace(/\n/g, c) + h; } function n(i) { return Buffer.isBuffer(i) && (i = i.toString("utf8")), i.replace(/^\uFEFF/, ""); } return Ce = { stringify: e, stripBom: n }, Ce; } var Ne, Et; function Fr() { if (Et) return Ne; Et = 1; let e; try { e = oe(); } catch (w) { e = jt; } const n = U(), { stringify: i, stripBom: c } = Ge(); function a(f) { return $(this, arguments, function* (w, s = {}) { typeof s == "string" && (s = { encoding: s }); const g = s.fs || e, d = "throws" in s ? s.throws : !0; let r = yield n.fromCallback(g.readFile)(w, s); r = c(r); let o; try { o = JSON.parse(r, s ? s.reviver : null); } catch (l) { if (d) throw l.message = `${w}: ${l.message}`, l; return null; } return o; }); } const u = n.fromPromise(a); function t(w, s = {}) { typeof s == "string" && (s = { encoding: s }); const f = s.fs || e, g = "throws" in s ? s.throws : !0; try { let d = f.readFileSync(w, s); return d = c(d), JSON.parse(d, s.reviver); } catch (d) { if (g) throw d.message = `${w}: ${d.message}`, d; return null; } } function h(g, d) { return $(this, arguments, function* (w, s, f = {}) { const r = f.fs || e, o = i(s, f); yield n.fromCallback(r.writeFile)(w, o, f); }); } const y = n.fromPromise(h); function m(w, s, f = {}) { const g = f.fs || e, d = i(s, f); return g.writeFileSync(w, d, f); } return Ne = { readFile: u, readFileSync: t, writeFile: y, writeFileSync: m }, Ne; } var Te, kt; function Pr() { if (kt) return Te; kt = 1; const e = Fr(); return Te = { // jsonfile exports readJson: e.readFile, readJsonSync: e.readFileSync, writeJson: e.writeFile, writeJsonSync: e.writeFileSync }, Te; } var Le, Ft; function Ye() { if (Ft) return Le; Ft = 1; const e = U().fromPromise, n = /* @__PURE__ */ G(), i = X, c = /* @__PURE__ */ H(), a = Z().pathExists; function u(h, y, m = "utf-8") { return $(this, null, function* () { const E = i.dirname(h); return (yield a(E)) || (yield c.mkdirs(E)), n.writeFile(h, y, m); }); } function t(h, ...y) { const m = i.dirname(h); n.existsSync(m) || c.mkdirsSync(m), n.writeFileSync(h, ...y); } return Le = { outputFile: e(u), outputFileSync: t }, Le; } var Me, Pt; function Or() { if (Pt) return Me; Pt = 1; const { stringify: e } = Ge(), { outputFile: n } = /* @__PURE__ */ Ye(); function i(t, h) { return $(this, arguments, function* (c, a, u = {}) { const y = e(a, u); yield n(c, y, u); }); } return Me = i, Me; } var je, Ot; function xr() { if (Ot) return je; Ot = 1; const { stringify: e } = Ge(), { outputFileSync: n } = /* @__PURE__ */ Ye(); function i(c, a, u) { const t = e(a, u); n(c, t, u); } return je = i, je; } var Ae, xt; function Dr() { if (xt) return Ae; xt = 1; const e = U().fromPromise, n = /* @__PURE__ */ Pr(); return n.outputJson = e(/* @__PURE__ */ Or()), n.outputJsonSync = /* @__PURE__ */ xr(), n.outputJSON = n.outputJson, n.outputJSONSync = n.outputJsonSync, n.writeJSON = n.writeJson, n.writeJSONSync = n.writeJsonSync, n.readJSON = n.readJson, n.readJSONSync = n.readJsonSync, Ae = n, Ae; } var Ie, Dt; function Rr() { if (Dt) return Ie; Dt = 1; const e = /* @__PURE__ */ G(), n = X, { copy: i } = /* @__PURE__ */ ze(), { remove: c } = /* @__PURE__ */ le(), { mkdirp: a } = /* @__PURE__ */ H(), { pathExists: u } = /* @__PURE__ */ Z(), t = /* @__PURE__ */ re(); function h(f, g) { return $(this, arguments, function* (E, w, s = {}) { const d = s.overwrite || s.clobber || !1, { srcStat: r, isChangingCase: o = !1 } = yield t.checkPaths(E, w, "move", s); yield t.checkParentPaths(E, r, w, "move"); const l = n.dirname(w); return n.parse(l).root !== l && (yield a(l)), y(E, w, d, o); }); } function y(E, w, s, f) { return $(this, null, function* () { if (!f) { if (s) yield c(w); else if (yield u(w)) throw new Error("dest already exists."); } try { yield e.rename(E, w); } catch (g) { if (g.code !== "EXDEV") throw g; yield m(E, w, s); } }); } function m(E, w, s) { return $(this, null, function* () { return yield i(E, w, { overwrite: s, errorOnExist: !0, preserveTimestamps: !0 }), c(E); }); } return Ie = h, Ie; } var Be, Rt; function $r() { if (Rt) return Be; Rt = 1; const e = oe(), n = X, i = ze().copySync, c = le().removeSync, a = H().mkdirpSync, u = /* @__PURE__ */ re(); function t(w, s, f) { f = f || {}; const g = f.overwrite || f.clobber || !1, { srcStat: d, isChangingCase: r = !1 } = u.checkPathsSync(w, s, "move", f); return u.checkParentPathsSync(w, d, s, "move"), h(s) || a(n.dirname(s)), y(w, s, g, r); } function h(w) { const s = n.dirname(w); return n.parse(s).root === s; } function y(w, s, f, g) { if (g) return m(w, s, f); if (f) return c(s), m(w, s, f); if (e.existsSync(s)) throw new Error("dest already exists."); return m(w, s, f); } function m(w, s, f) { try { e.renameSyn