UNPKG

lakutata

Version:

An IoC-based universal application framework.

2,127 lines (1,883 loc) 143 kB
"use strict"; Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" }); const t = require("../../../vendor/Package.5.cjs"); require("../../../vendor/Package.8.cjs"); const e = require("os"); const r = require("path"); const n = require("../../../vendor/Package.9.cjs"); require("../../../vendor/Package.10.cjs"); const s = require("util"); const i = require("stream"); const o = require("fs"); const a = require("events"); const u = require("./Utils.cjs"); require("./FunctionTokenizer.cjs"); require("../../../vendor/Package.2.cjs"); require("../../../vendor/Package.1.cjs"); require("../base/internal/DataValidator.cjs"); require("../../../vendor/Package.4.cjs"); require("node:util/types"); require("../validation/VLD.cjs"); require("../../../vendor/Package.11.cjs"); require("url"); require("../../exceptions/dto/InvalidValueException.cjs"); require("../base/abstracts/Exception.cjs"); require("../base/internal/BasicInfo.cjs"); require("../helpers/As.cjs"); require("../../../vendor/Package.6.cjs"); require("../../../vendor/Package.7.cjs"); require("../base/internal/ThrowWarning.cjs"); require("../helpers/Templating.cjs"); require("../base/internal/CamelCase.cjs"); require("../helpers/NoCase.cjs"); require("../helpers/IsHtml.cjs"); require("../helpers/IsXML.cjs"); require("../../constants/DTOMetadataKey.cjs"); require("../helpers/ObjectConstructor.cjs"); require("../helpers/ObjectParentConstructors.cjs"); require("../helpers/ObjectParentConstructor.cjs"); require("../helpers/ObjectPrototype.cjs"); const c = t => t && t.__esModule ? t : { default: t }; function l(t) { if (t && t.__esModule) return t; const e = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } }); if (t) { for (const r in t) { if (r !== "default") { const n = Object.getOwnPropertyDescriptor(t, r); Object.defineProperty(e, r, n.get ? n : { enumerable: true, get: () => t[r] }); } } } e.default = t; return Object.freeze(e); } const f = c(e); const p = l(r); const h = c(s); const d = c(i); const _ = c(o); const g = c(a); var y = {}; var v = {}; var m = {}; "use strict"; Object.defineProperty(m, "__esModule", { value: true }); var S = m.splitWhen = A = m.flatten = void 0; function E(t) { return t.reduce(((t, e) => [].concat(t, e)), []); } var A = m.flatten = E; function b(t, e) { const r = [ [] ]; let n = 0; for (const s of t) { if (e(s)) { n++; r[n] = []; } else { r[n].push(s); } } return r; } S = m.splitWhen = b; var R = {}; "use strict"; Object.defineProperty(R, "__esModule", { value: true }); var P = R.isEnoentCodeError = void 0; function x(t) { return t.code === "ENOENT"; } P = R.isEnoentCodeError = x; var C = {}; "use strict"; Object.defineProperty(C, "__esModule", { value: true }); var w = C.createDirentFromStats = void 0; let T = class DirentFromStats { constructor(t, e) { this.name = t; this.isBlockDevice = e.isBlockDevice.bind(e); this.isCharacterDevice = e.isCharacterDevice.bind(e); this.isDirectory = e.isDirectory.bind(e); this.isFIFO = e.isFIFO.bind(e); this.isFile = e.isFile.bind(e); this.isSocket = e.isSocket.bind(e); this.isSymbolicLink = e.isSymbolicLink.bind(e); } }; function O(t, e) { return new T(t, e); } w = C.createDirentFromStats = O; var k = {}; "use strict"; Object.defineProperty(k, "__esModule", { value: true }); var L = k.convertPosixPathToPattern = tt = k.convertWindowsPathToPattern = z = k.convertPathToPattern = Z = k.escapePosixPath = X = k.escapeWindowsPath = V = k.escape = K = k.removeLeadingDotSegment = U = k.makeAbsolute = q = k.unixify = void 0; const H = f.default; const D = p.default; const F = H.platform() === "win32"; const M = 2; const $ = /(\\?)([()*?[\]{|}]|^!|[!+@](?=\()|\\(?![!()*+?@[\]{|}]))/g; const j = /(\\?)([()[\]{}]|^!|[!+@](?=\())/g; const I = /^\\\\([.?])/; const N = /\\(?![!()+@[\]{}])/g; function B(t) { return t.replace(/\\/g, "/"); } var q = k.unixify = B; function G(t, e) { return D.resolve(t, e); } var U = k.makeAbsolute = G; function W(t) { if (t.charAt(0) === ".") { const e = t.charAt(1); if (e === "/" || e === "\\") { return t.slice(M); } } return t; } var K = k.removeLeadingDotSegment = W; var V = k.escape = F ? Q : Y; function Q(t) { return t.replace(j, "\\$2"); } var X = k.escapeWindowsPath = Q; function Y(t) { return t.replace($, "\\$2"); } var Z = k.escapePosixPath = Y; var z = k.convertPathToPattern = F ? J : et; function J(t) { return Q(t).replace(I, "//$1").replace(N, "/"); } var tt = k.convertWindowsPathToPattern = J; function et(t) { return Y(t); } L = k.convertPosixPathToPattern = et; var rt = {}; "use strict"; var nt = n.isGlob; var st = p.default.posix.dirname; var it = f.default.platform() === "win32"; var ot = "/"; var at = /\\/g; var ut = /[\{\[].*[\}\]]$/; var ct = /(^|[^\\])([\{\[]|\([^\)]+$)/; var lt = /\\([\!\*\?\|\[\]\(\)\{\}])/g; var ft = function t(e, r) { var n = Object.assign({ flipBackslashes: true }, r); if (n.flipBackslashes && it && e.indexOf(ot) < 0) { e = e.replace(at, ot); } if (ut.test(e)) { e += ot; } e += "a"; do { e = st(e); } while (nt(e) || ct.test(e)); return e.replace(lt, "$1"); }; const pt = t.getDefaultExportFromCjs(ft); var ht = {}; (function(t) { "use strict"; t.isInteger = t => { if (typeof t === "number") { return Number.isInteger(t); } if (typeof t === "string" && t.trim() !== "") { return Number.isInteger(Number(t)); } return false; }; t.find = (t, e) => t.nodes.find((t => t.type === e)); t.exceedsLimit = (e, r, n = 1, s) => { if (s === false) return false; if (!t.isInteger(e) || !t.isInteger(r)) return false; return (Number(r) - Number(e)) / Number(n) >= s; }; t.escapeNode = (t, e = 0, r) => { const n = t.nodes[e]; if (!n) return; if (r && n.type === r || n.type === "open" || n.type === "close") { if (n.escaped !== true) { n.value = "\\" + n.value; n.escaped = true; } } }; t.encloseBrace = t => { if (t.type !== "brace") return false; if (t.commas >> 0 + t.ranges >> 0 === 0) { t.invalid = true; return true; } return false; }; t.isInvalidBrace = t => { if (t.type !== "brace") return false; if (t.invalid === true || t.dollar) return true; if (t.commas >> 0 + t.ranges >> 0 === 0) { t.invalid = true; return true; } if (t.open !== true || t.close !== true) { t.invalid = true; return true; } return false; }; t.isOpenOrClose = t => { if (t.type === "open" || t.type === "close") { return true; } return t.open === true || t.close === true; }; t.reduce = t => t.reduce(((t, e) => { if (e.type === "text") t.push(e.value); if (e.type === "range") e.type = "text"; return t; }), []); t.flatten = (...t) => { const e = []; const r = t => { for (let n = 0; n < t.length; n++) { const s = t[n]; if (Array.isArray(s)) { r(s); continue; } if (s !== undefined) { e.push(s); } } return e; }; r(t); return e; }; })(ht); const dt = t.getDefaultExportFromCjs(ht); "use strict"; const _t = ht; var gt = (t, e = {}) => { const r = (t, n = {}) => { const s = e.escapeInvalid && _t.isInvalidBrace(n); const i = t.invalid === true && e.escapeInvalid === true; let o = ""; if (t.value) { if ((s || i) && _t.isOpenOrClose(t)) { return "\\" + t.value; } return t.value; } if (t.value) { return t.value; } if (t.nodes) { for (const e of t.nodes) { o += r(e); } } return o; }; return r(t); }; const yt = t.getDefaultExportFromCjs(gt); "use strict"; var vt = function(t) { if (typeof t === "number") { return t - t === 0; } if (typeof t === "string" && t.trim() !== "") { return Number.isFinite ? Number.isFinite(+t) : isFinite(+t); } return false; }; const mt = t.getDefaultExportFromCjs(vt); "use strict"; const St = vt; const Et = (t, e, r) => { if (St(t) === false) { throw new TypeError("toRegexRange: expected the first argument to be a number"); } if (e === void 0 || t === e) { return String(t); } if (St(e) === false) { throw new TypeError("toRegexRange: expected the second argument to be a number."); } let n = { relaxZeros: true, ...r }; if (typeof n.strictZeros === "boolean") { n.relaxZeros = n.strictZeros === false; } let s = String(n.relaxZeros); let i = String(n.shorthand); let o = String(n.capture); let a = String(n.wrap); let u = t + ":" + e + "=" + s + i + o + a; if (Et.cache.hasOwnProperty(u)) { return Et.cache[u].result; } let c = Math.min(t, e); let l = Math.max(t, e); if (Math.abs(c - l) === 1) { let r = t + "|" + e; if (n.capture) { return `(${r})`; } if (n.wrap === false) { return r; } return `(?:${r})`; } let f = Dt(t) || Dt(e); let p = { min: t, max: e, a: c, b: l }; let h = []; let d = []; if (f) { p.isPadded = f; p.maxLen = String(p.max).length; } if (c < 0) { let t = l < 0 ? Math.abs(l) : 1; d = Pt(t, Math.abs(c), p, n); c = p.a = 0; } if (l >= 0) { h = Pt(c, l, p, n); } p.negatives = d; p.positives = h; p.result = At(d, h, n); if (n.capture === true) { p.result = `(${p.result})`; } else if (n.wrap !== false && h.length + d.length > 1) { p.result = `(?:${p.result})`; } Et.cache[u] = p; return p.result; }; function At(t, e, r) { let n = xt(t, e, "-", false, r) || []; let s = xt(e, t, "", false, r) || []; let i = xt(t, e, "-?", true, r) || []; let o = n.concat(i).concat(s); return o.join("|"); } function bt(t, e) { let r = 1; let n = 1; let s = Ot(t, r); let i = new Set([ e ]); while (t <= s && s <= e) { i.add(s); r += 1; s = Ot(t, r); } s = kt(e + 1, n) - 1; while (t < s && s <= e) { i.add(s); n += 1; s = kt(e + 1, n) - 1; } i = [ ...i ]; i.sort(wt); return i; } function Rt(t, e, r) { if (t === e) { return { pattern: t, count: [], digits: 0 }; } let n = Ct(t, e); let s = n.length; let i = ""; let o = 0; for (let t = 0; t < s; t++) { let [e, s] = n[t]; if (e === s) { i += e; } else if (e !== "0" || s !== "9") { i += Ht(e, s, r); } else { o++; } } if (o) { i += r.shorthand === true ? "\\d" : "[0-9]"; } return { pattern: i, count: [ o ], digits: s }; } function Pt(t, e, r, n) { let s = bt(t, e); let i = []; let o = t; let a; for (let t = 0; t < s.length; t++) { let e = s[t]; let u = Rt(String(o), String(e), n); let c = ""; if (!r.isPadded && a && a.pattern === u.pattern) { if (a.count.length > 1) { a.count.pop(); } a.count.push(u.count[0]); a.string = a.pattern + Lt(a.count); o = e + 1; continue; } if (r.isPadded) { c = Ft(e, r, n); } u.string = c + u.pattern + Lt(u.count); i.push(u); o = e + 1; a = u; } return i; } function xt(t, e, r, n, s) { let i = []; for (let s of t) { let {string: t} = s; if (!n && !Tt(e, "string", t)) { i.push(r + t); } if (n && Tt(e, "string", t)) { i.push(r + t); } } return i; } function Ct(t, e) { let r = []; for (let n = 0; n < t.length; n++) r.push([ t[n], e[n] ]); return r; } function wt(t, e) { return t > e ? 1 : e > t ? -1 : 0; } function Tt(t, e, r) { return t.some((t => t[e] === r)); } function Ot(t, e) { return Number(String(t).slice(0, -e) + "9".repeat(e)); } function kt(t, e) { return t - t % Math.pow(10, e); } function Lt(t) { let [e = 0, r = ""] = t; if (r || e > 1) { return `{${e + (r ? "," + r : "")}}`; } return ""; } function Ht(t, e, r) { return `[${t}${e - t === 1 ? "" : "-"}${e}]`; } function Dt(t) { return /^-?(0+)\d/.test(t); } function Ft(t, e, r) { if (!e.isPadded) { return t; } let n = Math.abs(e.maxLen - String(t).length); let s = r.relaxZeros !== false; switch (n) { case 0: return ""; case 1: return s ? "0?" : "0"; case 2: return s ? "0{0,2}" : "00"; default: { return s ? `0{0,${n}}` : `0{${n}}`; } } } Et.cache = {}; Et.clearCache = () => Et.cache = {}; var Mt = Et; const $t = t.getDefaultExportFromCjs(Mt); "use strict"; const jt = h.default; const It = Mt; const Nt = t => t !== null && typeof t === "object" && !Array.isArray(t); const Bt = t => e => t === true ? Number(e) : String(e); const qt = t => typeof t === "number" || typeof t === "string" && t !== ""; const Gt = t => Number.isInteger(+t); const Ut = t => { let e = `${t}`; let r = -1; if (e[0] === "-") e = e.slice(1); if (e === "0") return false; while (e[++r] === "0") ; return r > 0; }; const Wt = (t, e, r) => { if (typeof t === "string" || typeof e === "string") { return true; } return r.stringify === true; }; const Kt = (t, e, r) => { if (e > 0) { let r = t[0] === "-" ? "-" : ""; if (r) t = t.slice(1); t = r + t.padStart(r ? e - 1 : e, "0"); } if (r === false) { return String(t); } return t; }; const Vt = (t, e) => { let r = t[0] === "-" ? "-" : ""; if (r) { t = t.slice(1); e--; } while (t.length < e) t = "0" + t; return r ? "-" + t : t; }; const Qt = (t, e, r) => { t.negatives.sort(((t, e) => t < e ? -1 : t > e ? 1 : 0)); t.positives.sort(((t, e) => t < e ? -1 : t > e ? 1 : 0)); let n = e.capture ? "" : "?:"; let s = ""; let i = ""; let o; if (t.positives.length) { s = t.positives.map((t => Vt(String(t), r))).join("|"); } if (t.negatives.length) { i = `-(${n}${t.negatives.map((t => Vt(String(t), r))).join("|")})`; } if (s && i) { o = `${s}|${i}`; } else { o = s || i; } if (e.wrap) { return `(${n}${o})`; } return o; }; const Xt = (t, e, r, n) => { if (r) { return It(t, e, { wrap: false, ...n }); } let s = String.fromCharCode(t); if (t === e) return s; let i = String.fromCharCode(e); return `[${s}-${i}]`; }; const Yt = (t, e, r) => { if (Array.isArray(t)) { let e = r.wrap === true; let n = r.capture ? "" : "?:"; return e ? `(${n}${t.join("|")})` : t.join("|"); } return It(t, e, r); }; const Zt = (...t) => new RangeError("Invalid range arguments: " + jt.inspect(...t)); const zt = (t, e, r) => { if (r.strictRanges === true) throw Zt([ t, e ]); return []; }; const Jt = (t, e) => { if (e.strictRanges === true) { throw new TypeError(`Expected step "${t}" to be a number`); } return []; }; const te = (t, e, r = 1, n = {}) => { let s = Number(t); let i = Number(e); if (!Number.isInteger(s) || !Number.isInteger(i)) { if (n.strictRanges === true) throw Zt([ t, e ]); return []; } if (s === 0) s = 0; if (i === 0) i = 0; let o = s > i; let a = String(t); let u = String(e); let c = String(r); r = Math.max(Math.abs(r), 1); let l = Ut(a) || Ut(u) || Ut(c); let f = l ? Math.max(a.length, u.length, c.length) : 0; let p = l === false && Wt(t, e, n) === false; let h = n.transform || Bt(p); if (n.toRegex && r === 1) { return Xt(Vt(t, f), Vt(e, f), true, n); } let d = { negatives: [], positives: [] }; let _ = t => d[t < 0 ? "negatives" : "positives"].push(Math.abs(t)); let g = []; let y = 0; while (o ? s >= i : s <= i) { if (n.toRegex === true && r > 1) { _(s); } else { g.push(Kt(h(s, y), f, p)); } s = o ? s - r : s + r; y++; } if (n.toRegex === true) { return r > 1 ? Qt(d, n, f) : Yt(g, null, { wrap: false, ...n }); } return g; }; const ee = (t, e, r = 1, n = {}) => { if (!Gt(t) && t.length > 1 || !Gt(e) && e.length > 1) { return zt(t, e, n); } let s = n.transform || (t => String.fromCharCode(t)); let i = `${t}`.charCodeAt(0); let o = `${e}`.charCodeAt(0); let a = i > o; let u = Math.min(i, o); let c = Math.max(i, o); if (n.toRegex && r === 1) { return Xt(u, c, false, n); } let l = []; let f = 0; while (a ? i >= o : i <= o) { l.push(s(i, f)); i = a ? i - r : i + r; f++; } if (n.toRegex === true) { return Yt(l, null, { wrap: false, options: n }); } return l; }; const re = (t, e, r, n = {}) => { if (e == null && qt(t)) { return [ t ]; } if (!qt(t) || !qt(e)) { return zt(t, e, n); } if (typeof r === "function") { return re(t, e, 1, { transform: r }); } if (Nt(r)) { return re(t, e, 0, r); } let s = { ...n }; if (s.capture === true) s.wrap = true; r = r || s.step || 1; if (!Gt(r)) { if (r != null && !Nt(r)) return Jt(r, s); return re(t, e, 1, r); } if (Gt(t) && Gt(e)) { return te(t, e, r, s); } return ee(t, e, Math.max(Math.abs(r), 1), s); }; var ne = re; const se = t.getDefaultExportFromCjs(ne); "use strict"; const ie = ne; const oe = ht; const ae = (t, e = {}) => { const r = (t, n = {}) => { const s = oe.isInvalidBrace(n); const i = t.invalid === true && e.escapeInvalid === true; const o = s === true || i === true; const a = e.escapeInvalid === true ? "\\" : ""; let u = ""; if (t.isOpen === true) { return a + t.value; } if (t.isClose === true) { console.log("node.isClose", a, t.value); return a + t.value; } if (t.type === "open") { return o ? a + t.value : "("; } if (t.type === "close") { return o ? a + t.value : ")"; } if (t.type === "comma") { return t.prev.type === "comma" ? "" : o ? t.value : "|"; } if (t.value) { return t.value; } if (t.nodes && t.ranges > 0) { const r = oe.reduce(t.nodes); const n = ie(...r, { ...e, wrap: false, toRegex: true, strictZeros: true }); if (n.length !== 0) { return r.length > 1 && n.length > 1 ? `(${n})` : n; } } if (t.nodes) { for (const e of t.nodes) { u += r(e, t); } } return u; }; return r(t); }; var ue = ae; const ce = t.getDefaultExportFromCjs(ue); "use strict"; const le = ne; const fe = gt; const pe = ht; const he = (t = "", e = "", r = false) => { const n = []; t = [].concat(t); e = [].concat(e); if (!e.length) return t; if (!t.length) { return r ? pe.flatten(e).map((t => `{${t}}`)) : e; } for (const s of t) { if (Array.isArray(s)) { for (const t of s) { n.push(he(t, e, r)); } } else { for (let t of e) { if (r === true && typeof t === "string") t = `{${t}}`; n.push(Array.isArray(t) ? he(s, t, r) : s + t); } } } return pe.flatten(n); }; const de = (t, e = {}) => { const r = e.rangeLimit === undefined ? 1e3 : e.rangeLimit; const n = (t, s = {}) => { t.queue = []; let i = s; let o = s.queue; while (i.type !== "brace" && i.type !== "root" && i.parent) { i = i.parent; o = i.queue; } if (t.invalid || t.dollar) { o.push(he(o.pop(), fe(t, e))); return; } if (t.type === "brace" && t.invalid !== true && t.nodes.length === 2) { o.push(he(o.pop(), [ "{}" ])); return; } if (t.nodes && t.ranges > 0) { const n = pe.reduce(t.nodes); if (pe.exceedsLimit(...n, e.step, r)) { throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit."); } let s = le(...n, e); if (s.length === 0) { s = fe(t, e); } o.push(he(o.pop(), s)); t.nodes = []; return; } const a = pe.encloseBrace(t); let u = t.queue; let c = t; while (c.type !== "brace" && c.type !== "root" && c.parent) { c = c.parent; u = c.queue; } for (let e = 0; e < t.nodes.length; e++) { const r = t.nodes[e]; if (r.type === "comma" && t.type === "brace") { if (e === 1) u.push(""); u.push(""); continue; } if (r.type === "close") { o.push(he(o.pop(), u, a)); continue; } if (r.value && r.type !== "open") { u.push(he(u.pop(), r.value)); continue; } if (r.nodes) { n(r, t); } } return u; }; return pe.flatten(n(t)); }; var _e = de; const ge = t.getDefaultExportFromCjs(_e); "use strict"; var ye = { MAX_LENGTH: 1e4, CHAR_0: "0", CHAR_9: "9", CHAR_UPPERCASE_A: "A", CHAR_LOWERCASE_A: "a", CHAR_UPPERCASE_Z: "Z", CHAR_LOWERCASE_Z: "z", CHAR_LEFT_PARENTHESES: "(", CHAR_RIGHT_PARENTHESES: ")", CHAR_ASTERISK: "*", CHAR_AMPERSAND: "&", CHAR_AT: "@", CHAR_BACKSLASH: "\\", CHAR_BACKTICK: "`", CHAR_CARRIAGE_RETURN: "\r", CHAR_CIRCUMFLEX_ACCENT: "^", CHAR_COLON: ":", CHAR_COMMA: ",", CHAR_DOLLAR: "$", CHAR_DOT: ".", CHAR_DOUBLE_QUOTE: '"', CHAR_EQUAL: "=", CHAR_EXCLAMATION_MARK: "!", CHAR_FORM_FEED: "\f", CHAR_FORWARD_SLASH: "/", CHAR_HASH: "#", CHAR_HYPHEN_MINUS: "-", CHAR_LEFT_ANGLE_BRACKET: "<", CHAR_LEFT_CURLY_BRACE: "{", CHAR_LEFT_SQUARE_BRACKET: "[", CHAR_LINE_FEED: "\n", CHAR_NO_BREAK_SPACE: " ", CHAR_PERCENT: "%", CHAR_PLUS: "+", CHAR_QUESTION_MARK: "?", CHAR_RIGHT_ANGLE_BRACKET: ">", CHAR_RIGHT_CURLY_BRACE: "}", CHAR_RIGHT_SQUARE_BRACKET: "]", CHAR_SEMICOLON: ";", CHAR_SINGLE_QUOTE: "'", CHAR_SPACE: " ", CHAR_TAB: "\t", CHAR_UNDERSCORE: "_", CHAR_VERTICAL_LINE: "|", CHAR_ZERO_WIDTH_NOBREAK_SPACE: "\ufeff" }; const ve = t.getDefaultExportFromCjs(ye); "use strict"; const me = gt; const {MAX_LENGTH: Se, CHAR_BACKSLASH: Ee, CHAR_BACKTICK: Ae, CHAR_COMMA: be, CHAR_DOT: Re, CHAR_LEFT_PARENTHESES: Pe, CHAR_RIGHT_PARENTHESES: xe, CHAR_LEFT_CURLY_BRACE: Ce, CHAR_RIGHT_CURLY_BRACE: we, CHAR_LEFT_SQUARE_BRACKET: Te, CHAR_RIGHT_SQUARE_BRACKET: Oe, CHAR_DOUBLE_QUOTE: ke, CHAR_SINGLE_QUOTE: Le, CHAR_NO_BREAK_SPACE: He, CHAR_ZERO_WIDTH_NOBREAK_SPACE: De} = ye; const Fe = (t, e = {}) => { if (typeof t !== "string") { throw new TypeError("Expected a string"); } const r = e || {}; const n = typeof r.maxLength === "number" ? Math.min(Se, r.maxLength) : Se; if (t.length > n) { throw new SyntaxError(`Input length (${t.length}), exceeds max characters (${n})`); } const s = { type: "root", input: t, nodes: [] }; const i = [ s ]; let o = s; let a = s; let u = 0; const c = t.length; let l = 0; let f = 0; let p; const h = () => t[l++]; const d = t => { if (t.type === "text" && a.type === "dot") { a.type = "text"; } if (a && a.type === "text" && t.type === "text") { a.value += t.value; return; } o.nodes.push(t); t.parent = o; t.prev = a; a = t; return t; }; d({ type: "bos" }); while (l < c) { o = i[i.length - 1]; p = h(); if (p === De || p === He) { continue; } if (p === Ee) { d({ type: "text", value: (e.keepEscaping ? p : "") + h() }); continue; } if (p === Oe) { d({ type: "text", value: "\\" + p }); continue; } if (p === Te) { u++; let t; while (l < c && (t = h())) { p += t; if (t === Te) { u++; continue; } if (t === Ee) { p += h(); continue; } if (t === Oe) { u--; if (u === 0) { break; } } } d({ type: "text", value: p }); continue; } if (p === Pe) { o = d({ type: "paren", nodes: [] }); i.push(o); d({ type: "text", value: p }); continue; } if (p === xe) { if (o.type !== "paren") { d({ type: "text", value: p }); continue; } o = i.pop(); d({ type: "text", value: p }); o = i[i.length - 1]; continue; } if (p === ke || p === Le || p === Ae) { const t = p; let r; if (e.keepQuotes !== true) { p = ""; } while (l < c && (r = h())) { if (r === Ee) { p += r + h(); continue; } if (r === t) { if (e.keepQuotes === true) p += r; break; } p += r; } d({ type: "text", value: p }); continue; } if (p === Ce) { f++; const t = a.value && a.value.slice(-1) === "$" || o.dollar === true; const e = { type: "brace", open: true, close: false, dollar: t, depth: f, commas: 0, ranges: 0, nodes: [] }; o = d(e); i.push(o); d({ type: "open", value: p }); continue; } if (p === we) { if (o.type !== "brace") { d({ type: "text", value: p }); continue; } const t = "close"; o = i.pop(); o.close = true; d({ type: t, value: p }); f--; o = i[i.length - 1]; continue; } if (p === be && f > 0) { if (o.ranges > 0) { o.ranges = 0; const t = o.nodes.shift(); o.nodes = [ t, { type: "text", value: me(o) } ]; } d({ type: "comma", value: p }); o.commas++; continue; } if (p === Re && f > 0 && o.commas === 0) { const t = o.nodes; if (f === 0 || t.length === 0) { d({ type: "text", value: p }); continue; } if (a.type === "dot") { o.range = []; a.value += p; a.type = "range"; if (o.nodes.length !== 3 && o.nodes.length !== 5) { o.invalid = true; o.ranges = 0; a.type = "text"; continue; } o.ranges++; o.args = []; continue; } if (a.type === "range") { t.pop(); const e = t[t.length - 1]; e.value += a.value + p; a = e; o.ranges--; continue; } d({ type: "dot", value: p }); continue; } d({ type: "text", value: p }); } do { o = i.pop(); if (o.type !== "root") { o.nodes.forEach((t => { if (!t.nodes) { if (t.type === "open") t.isOpen = true; if (t.type === "close") t.isClose = true; if (!t.nodes) t.type = "text"; t.invalid = true; } })); const t = i[i.length - 1]; const e = t.nodes.indexOf(o); t.nodes.splice(e, 1, ...o.nodes); } } while (i.length > 0); d({ type: "eos" }); return s; }; var Me = Fe; const $e = t.getDefaultExportFromCjs(Me); "use strict"; const je = gt; const Ie = ue; const Ne = _e; const Be = Me; const qe = (t, e = {}) => { let r = []; if (Array.isArray(t)) { for (const n of t) { const t = qe.create(n, e); if (Array.isArray(t)) { r.push(...t); } else { r.push(t); } } } else { r = [].concat(qe.create(t, e)); } if (e && e.expand === true && e.nodupes === true) { r = [ ...new Set(r) ]; } return r; }; qe.parse = (t, e = {}) => Be(t, e); qe.stringify = (t, e = {}) => { if (typeof t === "string") { return je(qe.parse(t, e), e); } return je(t, e); }; qe.compile = (t, e = {}) => { if (typeof t === "string") { t = qe.parse(t, e); } return Ie(t, e); }; qe.expand = (t, e = {}) => { if (typeof t === "string") { t = qe.parse(t, e); } let r = Ne(t, e); if (e.noempty === true) { r = r.filter(Boolean); } if (e.nodupes === true) { r = [ ...new Set(r) ]; } return r; }; qe.create = (t, e = {}) => { if (t === "" || t.length < 3) { return [ t ]; } return e.expand !== true ? qe.compile(t, e) : qe.expand(t, e); }; var Ge = qe; const Ue = t.getDefaultExportFromCjs(Ge); var We = {}; "use strict"; const Ke = p.default; const Ve = "\\\\/"; const Qe = `[^${Ve}]`; const Xe = "\\."; const Ye = "\\+"; const Ze = "\\?"; const ze = "\\/"; const Je = "(?=.)"; const tr = "[^/]"; const er = `(?:${ze}|$)`; const rr = `(?:^|${ze})`; const nr = `${Xe}{1,2}${er}`; const sr = `(?!${Xe})`; const ir = `(?!${rr}${nr})`; const or = `(?!${Xe}{0,1}${er})`; const ar = `(?!${nr})`; const ur = `[^.${ze}]`; const cr = `${tr}*?`; const lr = { DOT_LITERAL: Xe, PLUS_LITERAL: Ye, QMARK_LITERAL: Ze, SLASH_LITERAL: ze, ONE_CHAR: Je, QMARK: tr, END_ANCHOR: er, DOTS_SLASH: nr, NO_DOT: sr, NO_DOTS: ir, NO_DOT_SLASH: or, NO_DOTS_SLASH: ar, QMARK_NO_DOT: ur, STAR: cr, START_ANCHOR: rr }; const fr = { ...lr, SLASH_LITERAL: `[${Ve}]`, QMARK: Qe, STAR: `${Qe}*?`, DOTS_SLASH: `${Xe}{1,2}(?:[${Ve}]|$)`, NO_DOT: `(?!${Xe})`, NO_DOTS: `(?!(?:^|[${Ve}])${Xe}{1,2}(?:[${Ve}]|$))`, NO_DOT_SLASH: `(?!${Xe}{0,1}(?:[${Ve}]|$))`, NO_DOTS_SLASH: `(?!${Xe}{1,2}(?:[${Ve}]|$))`, QMARK_NO_DOT: `[^.${Ve}]`, START_ANCHOR: `(?:^|[${Ve}])`, END_ANCHOR: `(?:[${Ve}]|$)` }; const pr = { alnum: "a-zA-Z0-9", alpha: "a-zA-Z", ascii: "\\x00-\\x7F", blank: " \\t", cntrl: "\\x00-\\x1F\\x7F", digit: "0-9", graph: "\\x21-\\x7E", lower: "a-z", print: "\\x20-\\x7E ", punct: "\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~", space: " \\t\\r\\n\\v\\f", upper: "A-Z", word: "A-Za-z0-9_", xdigit: "A-Fa-f0-9" }; var hr = { MAX_LENGTH: 1024 * 64, POSIX_REGEX_SOURCE: pr, REGEX_BACKSLASH: /\\(?![*+?^${}(|)[\]])/g, REGEX_NON_SPECIAL_CHARS: /^[^@![\].,$*+?^{}()|\\/]+/, REGEX_SPECIAL_CHARS: /[-*+?.^${}(|)[\]]/, REGEX_SPECIAL_CHARS_BACKREF: /(\\?)((\W)(\3*))/g, REGEX_SPECIAL_CHARS_GLOBAL: /([-*+?.^${}(|)[\]])/g, REGEX_REMOVE_BACKSLASH: /(?:\[.*?[^\\]\]|\\(?=.))/g, REPLACEMENTS: { "***": "*", "**/**": "**", "**/**/**": "**" }, CHAR_0: 48, CHAR_9: 57, CHAR_UPPERCASE_A: 65, CHAR_LOWERCASE_A: 97, CHAR_UPPERCASE_Z: 90, CHAR_LOWERCASE_Z: 122, CHAR_LEFT_PARENTHESES: 40, CHAR_RIGHT_PARENTHESES: 41, CHAR_ASTERISK: 42, CHAR_AMPERSAND: 38, CHAR_AT: 64, CHAR_BACKWARD_SLASH: 92, CHAR_CARRIAGE_RETURN: 13, CHAR_CIRCUMFLEX_ACCENT: 94, CHAR_COLON: 58, CHAR_COMMA: 44, CHAR_DOT: 46, CHAR_DOUBLE_QUOTE: 34, CHAR_EQUAL: 61, CHAR_EXCLAMATION_MARK: 33, CHAR_FORM_FEED: 12, CHAR_FORWARD_SLASH: 47, CHAR_GRAVE_ACCENT: 96, CHAR_HASH: 35, CHAR_HYPHEN_MINUS: 45, CHAR_LEFT_ANGLE_BRACKET: 60, CHAR_LEFT_CURLY_BRACE: 123, CHAR_LEFT_SQUARE_BRACKET: 91, CHAR_LINE_FEED: 10, CHAR_NO_BREAK_SPACE: 160, CHAR_PERCENT: 37, CHAR_PLUS: 43, CHAR_QUESTION_MARK: 63, CHAR_RIGHT_ANGLE_BRACKET: 62, CHAR_RIGHT_CURLY_BRACE: 125, CHAR_RIGHT_SQUARE_BRACKET: 93, CHAR_SEMICOLON: 59, CHAR_SINGLE_QUOTE: 39, CHAR_SPACE: 32, CHAR_TAB: 9, CHAR_UNDERSCORE: 95, CHAR_VERTICAL_LINE: 124, CHAR_ZERO_WIDTH_NOBREAK_SPACE: 65279, SEP: Ke.sep, extglobChars(t) { return { "!": { type: "negate", open: "(?:(?!(?:", close: `))${t.STAR})` }, "?": { type: "qmark", open: "(?:", close: ")?" }, "+": { type: "plus", open: "(?:", close: ")+" }, "*": { type: "star", open: "(?:", close: ")*" }, "@": { type: "at", open: "(?:", close: ")" } }; }, globChars(t) { return t === true ? fr : lr; } }; const dr = t.getDefaultExportFromCjs(hr); (function(t) { "use strict"; const e = p.default; const r = process.platform === "win32"; const {REGEX_BACKSLASH: n, REGEX_REMOVE_BACKSLASH: s, REGEX_SPECIAL_CHARS: i, REGEX_SPECIAL_CHARS_GLOBAL: o} = hr; t.isObject = t => t !== null && typeof t === "object" && !Array.isArray(t); t.hasRegexChars = t => i.test(t); t.isRegexChar = e => e.length === 1 && t.hasRegexChars(e); t.escapeRegex = t => t.replace(o, "\\$1"); t.toPosixSlashes = t => t.replace(n, "/"); t.removeBackslashes = t => t.replace(s, (t => t === "\\" ? "" : t)); t.supportsLookbehinds = () => { const t = process.version.slice(1).split(".").map(Number); if (t.length === 3 && t[0] >= 9 || t[0] === 8 && t[1] >= 10) { return true; } return false; }; t.isWindows = t => { if (t && typeof t.windows === "boolean") { return t.windows; } return r === true || e.sep === "\\"; }; t.escapeLast = (e, r, n) => { const s = e.lastIndexOf(r, n); if (s === -1) return e; if (e[s - 1] === "\\") return t.escapeLast(e, r, s - 1); return `${e.slice(0, s)}\\${e.slice(s)}`; }; t.removePrefix = (t, e = {}) => { let r = t; if (r.startsWith("./")) { r = r.slice(2); e.prefix = "./"; } return r; }; t.wrapOutput = (t, e = {}, r = {}) => { const n = r.contains ? "" : "^"; const s = r.contains ? "" : "$"; let i = `${n}(?:${t})${s}`; if (e.negated === true) { i = `(?:^(?!${i}).*$)`; } return i; }; })(We); const _r = t.getDefaultExportFromCjs(We); "use strict"; const gr = We; const {CHAR_ASTERISK: yr, CHAR_AT: vr, CHAR_BACKWARD_SLASH: mr, CHAR_COMMA: Sr, CHAR_DOT: Er, CHAR_EXCLAMATION_MARK: Ar, CHAR_FORWARD_SLASH: br, CHAR_LEFT_CURLY_BRACE: Rr, CHAR_LEFT_PARENTHESES: Pr, CHAR_LEFT_SQUARE_BRACKET: xr, CHAR_PLUS: Cr, CHAR_QUESTION_MARK: wr, CHAR_RIGHT_CURLY_BRACE: Tr, CHAR_RIGHT_PARENTHESES: Or, CHAR_RIGHT_SQUARE_BRACKET: kr} = hr; const Lr = t => t === br || t === mr; const Hr = t => { if (t.isPrefix !== true) { t.depth = t.isGlobstar ? Infinity : 1; } }; const Dr = (t, e) => { const r = e || {}; const n = t.length - 1; const s = r.parts === true || r.scanToEnd === true; const i = []; const o = []; const a = []; let u = t; let c = -1; let l = 0; let f = 0; let p = false; let h = false; let d = false; let _ = false; let g = false; let y = false; let v = false; let m = false; let S = false; let E = false; let A = 0; let b; let R; let P = { value: "", depth: 0, isGlob: false }; const x = () => c >= n; const C = () => u.charCodeAt(c + 1); const w = () => { b = R; return u.charCodeAt(++c); }; while (c < n) { R = w(); let t; if (R === mr) { v = P.backslashes = true; R = w(); if (R === Rr) { y = true; } continue; } if (y === true || R === Rr) { A++; while (x() !== true && (R = w())) { if (R === mr) { v = P.backslashes = true; w(); continue; } if (R === Rr) { A++; continue; } if (y !== true && R === Er && (R = w()) === Er) { p = P.isBrace = true; d = P.isGlob = true; E = true; if (s === true) { continue; } break; } if (y !== true && R === Sr) { p = P.isBrace = true; d = P.isGlob = true; E = true; if (s === true) { continue; } break; } if (R === Tr) { A--; if (A === 0) { y = false; p = P.isBrace = true; E = true; break; } } } if (s === true) { continue; } break; } if (R === br) { i.push(c); o.push(P); P = { value: "", depth: 0, isGlob: false }; if (E === true) continue; if (b === Er && c === l + 1) { l += 2; continue; } f = c + 1; continue; } if (r.noext !== true) { const t = R === Cr || R === vr || R === yr || R === wr || R === Ar; if (t === true && C() === Pr) { d = P.isGlob = true; _ = P.isExtglob = true; E = true; if (R === Ar && c === l) { S = true; } if (s === true) { while (x() !== true && (R = w())) { if (R === mr) { v = P.backslashes = true; R = w(); continue; } if (R === Or) { d = P.isGlob = true; E = true; break; } } continue; } break; } } if (R === yr) { if (b === yr) g = P.isGlobstar = true; d = P.isGlob = true; E = true; if (s === true) { continue; } break; } if (R === wr) { d = P.isGlob = true; E = true; if (s === true) { continue; } break; } if (R === xr) { while (x() !== true && (t = w())) { if (t === mr) { v = P.backslashes = true; w(); continue; } if (t === kr) { h = P.isBracket = true; d = P.isGlob = true; E = true; break; } } if (s === true) { continue; } break; } if (r.nonegate !== true && R === Ar && c === l) { m = P.negated = true; l++; continue; } if (r.noparen !== true && R === Pr) { d = P.isGlob = true; if (s === true) { while (x() !== true && (R = w())) { if (R === Pr) { v = P.backslashes = true; R = w(); continue; } if (R === Or) { E = true; break; } } continue; } break; } if (d === true) { E = true; if (s === true) { continue; } break; } } if (r.noext === true) { _ = false; d = false; } let T = u; let O = ""; let k = ""; if (l > 0) { O = u.slice(0, l); u = u.slice(l); f -= l; } if (T && d === true && f > 0) { T = u.slice(0, f); k = u.slice(f); } else if (d === true) { T = ""; k = u; } else { T = u; } if (T && T !== "" && T !== "/" && T !== u) { if (Lr(T.charCodeAt(T.length - 1))) { T = T.slice(0, -1); } } if (r.unescape === true) { if (k) k = gr.removeBackslashes(k); if (T && v === true) { T = gr.removeBackslashes(T); } } const L = { prefix: O, input: t, start: l, base: T, glob: k, isBrace: p, isBracket: h, isGlob: d, isExtglob: _, isGlobstar: g, negated: m, negatedExtglob: S }; if (r.tokens === true) { L.maxDepth = 0; if (!Lr(R)) { o.push(P); } L.tokens = o; } if (r.parts === true || r.tokens === true) { let e; for (let n = 0; n < i.length; n++) { const s = e ? e + 1 : l; const u = i[n]; const c = t.slice(s, u); if (r.tokens) { if (n === 0 && l !== 0) { o[n].isPrefix = true; o[n].value = O; } else { o[n].value = c; } Hr(o[n]); L.maxDepth += o[n].depth; } if (n !== 0 || c !== "") { a.push(c); } e = u; } if (e && e + 1 < t.length) { const n = t.slice(e + 1); a.push(n); if (r.tokens) { o[o.length - 1].value = n; Hr(o[o.length - 1]); L.maxDepth += o[o.length - 1].depth; } } L.slashes = i; L.parts = a; } return L; }; var Fr = Dr; const Mr = t.getDefaultExportFromCjs(Fr); "use strict"; const $r = hr; const jr = We; const {MAX_LENGTH: Ir, POSIX_REGEX_SOURCE: Nr, REGEX_NON_SPECIAL_CHARS: Br, REGEX_SPECIAL_CHARS_BACKREF: qr, REPLACEMENTS: Gr} = $r; const Ur = (t, e) => { if (typeof e.expandRange === "function") { return e.expandRange(...t, e); } t.sort(); const r = `[${t.join("-")}]`; try { new RegExp(r); } catch (e) { return t.map((t => jr.escapeRegex(t))).join(".."); } return r; }; const Wr = (t, e) => `Missing ${t}: "${e}" - use "\\\\${e}" to match literal characters`; const Kr = (t, e) => { if (typeof t !== "string") { throw new TypeError("Expected a string"); } t = Gr[t] || t; const r = { ...e }; const n = typeof r.maxLength === "number" ? Math.min(Ir, r.maxLength) : Ir; let s = t.length; if (s > n) { throw new SyntaxError(`Input length: ${s}, exceeds maximum allowed length: ${n}`); } const i = { type: "bos", value: "", output: r.prepend || "" }; const o = [ i ]; const a = r.capture ? "" : "?:"; const u = jr.isWindows(e); const c = $r.globChars(u); const l = $r.extglobChars(c); const {DOT_LITERAL: f, PLUS_LITERAL: p, SLASH_LITERAL: h, ONE_CHAR: d, DOTS_SLASH: _, NO_DOT: g, NO_DOT_SLASH: y, NO_DOTS_SLASH: v, QMARK: m, QMARK_NO_DOT: S, STAR: E, START_ANCHOR: A} = c; const b = t => `(${a}(?:(?!${A}${t.dot ? _ : f}).)*?)`; const R = r.dot ? "" : g; const P = r.dot ? m : S; let x = r.bash === true ? b(r) : E; if (r.capture) { x = `(${x})`; } if (typeof r.noext === "boolean") { r.noextglob = r.noext; } const C = { input: t, index: -1, start: 0, dot: r.dot === true, consumed: "", output: "", prefix: "", backtrack: false, negated: false, brackets: 0, braces: 0, parens: 0, quotes: 0, globstar: false, tokens: o }; t = jr.removePrefix(t, C); s = t.length; const w = []; const T = []; const O = []; let k = i; let L; const H = () => C.index === s - 1; const D = C.peek = (e = 1) => t[C.index + e]; const F = C.advance = () => t[++C.index] || ""; const M = () => t.slice(C.index + 1); const $ = (t = "", e = 0) => { C.consumed += t; C.index += e; }; const j = t => { C.output += t.output != null ? t.output : t.value; $(t.value); }; const I = () => { let t = 1; while (D() === "!" && (D(2) !== "(" || D(3) === "?")) { F(); C.start++; t++; } if (t % 2 === 0) { return false; } C.negated = true; C.start++; return true; }; const N = t => { C[t]++; O.push(t); }; const B = t => { C[t]--; O.pop(); }; const q = t => { if (k.type === "globstar") { const e = C.braces > 0 && (t.type === "comma" || t.type === "brace"); const r = t.extglob === true || w.length && (t.type === "pipe" || t.type === "paren"); if (t.type !== "slash" && t.type !== "paren" && !e && !r) { C.output = C.output.slice(0, -k.output.length); k.type = "star"; k.value = "*"; k.output = x; C.output += k.output; }