@authhero/saml 0.5.0 → 0.5.2
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/dist/core.cjs +4 -4
- package/dist/core.mjs +300 -263
- package/dist/saml.cjs +4 -4
- package/dist/saml.mjs +385 -348
- package/dist/tsconfig.types.tsbuildinfo +1 -1
- package/package.json +2 -2
package/dist/saml.mjs
CHANGED
|
@@ -1459,37 +1459,37 @@ function S(...e) {
|
|
|
1459
1459
|
}
|
|
1460
1460
|
return t;
|
|
1461
1461
|
}
|
|
1462
|
-
var C = "external", w = "base",
|
|
1463
|
-
function
|
|
1464
|
-
return !e || e === C ? new Set([C]) : e ===
|
|
1462
|
+
var C = "external", w = "base", T = "all";
|
|
1463
|
+
function Oe(e) {
|
|
1464
|
+
return !e || e === C ? new Set([C]) : e === T ? new Set([T]) : e === w ? new Set([w]) : Array.isArray(e) ? new Set(e) : new Set([C]);
|
|
1465
1465
|
}
|
|
1466
|
-
var
|
|
1466
|
+
var E = Object.freeze({
|
|
1467
1467
|
allow: 0,
|
|
1468
1468
|
leave: 1,
|
|
1469
1469
|
remove: 2,
|
|
1470
1470
|
throw: 3
|
|
1471
|
-
}),
|
|
1471
|
+
}), ke = new Set([
|
|
1472
1472
|
9,
|
|
1473
1473
|
10,
|
|
1474
1474
|
13
|
|
1475
1475
|
]);
|
|
1476
|
-
function
|
|
1476
|
+
function Ae(e) {
|
|
1477
1477
|
if (!e) return {
|
|
1478
1478
|
xmlVersion: 1,
|
|
1479
|
-
onLevel:
|
|
1480
|
-
nullLevel:
|
|
1479
|
+
onLevel: E.allow,
|
|
1480
|
+
nullLevel: E.remove
|
|
1481
1481
|
};
|
|
1482
|
-
let t = e.xmlVersion === 1.1 ? 1.1 : 1, n =
|
|
1482
|
+
let t = e.xmlVersion === 1.1 ? 1.1 : 1, n = E[e.onNCR] ?? E.allow, r = E[e.nullNCR] ?? E.remove;
|
|
1483
1483
|
return {
|
|
1484
1484
|
xmlVersion: t,
|
|
1485
1485
|
onLevel: n,
|
|
1486
|
-
nullLevel: Math.max(r,
|
|
1486
|
+
nullLevel: Math.max(r, E.remove)
|
|
1487
1487
|
};
|
|
1488
1488
|
}
|
|
1489
|
-
var
|
|
1489
|
+
var je = class {
|
|
1490
1490
|
constructor(e = {}) {
|
|
1491
|
-
this._limit = e.limit || {}, this._maxTotalExpansions = this._limit.maxTotalExpansions || 0, this._maxExpandedLength = this._limit.maxExpandedLength || 0, this._postCheck = typeof e.postCheck == "function" ? e.postCheck : (e) => e, this._limitTiers =
|
|
1492
|
-
let t =
|
|
1491
|
+
this._limit = e.limit || {}, this._maxTotalExpansions = this._limit.maxTotalExpansions || 0, this._maxExpandedLength = this._limit.maxExpandedLength || 0, this._postCheck = typeof e.postCheck == "function" ? e.postCheck : (e) => e, this._limitTiers = Oe(this._limit.applyLimitsTo ?? C), this._numericAllowed = e.numericAllowed ?? !0, this._baseMap = S(we, e.namedEntities || null), this._externalMap = Object.create(null), this._inputMap = Object.create(null), this._totalExpansions = 0, this._expandedLength = 0, this._removeSet = new Set(e.remove && Array.isArray(e.remove) ? e.remove : []), this._leaveSet = new Set(e.leave && Array.isArray(e.leave) ? e.leave : []);
|
|
1492
|
+
let t = Ae(e.ncr);
|
|
1493
1493
|
this._ncrXmlVersion = t.xmlVersion, this._ncrOnLevel = t.onLevel, this._ncrNullLevel = t.nullLevel, this._onExternalEntity = typeof e.onExternalEntity == "function" ? e.onExternalEntity : null, this._onInputEntity = typeof e.onInputEntity == "function" ? e.onInputEntity : null;
|
|
1494
1494
|
}
|
|
1495
1495
|
_applyRegistrationHook(e, t, n, r) {
|
|
@@ -1579,7 +1579,7 @@ var Me = class {
|
|
|
1579
1579
|
return this._postCheck(l, t);
|
|
1580
1580
|
}
|
|
1581
1581
|
_tierCounts(e) {
|
|
1582
|
-
return this._limitTiers.has(
|
|
1582
|
+
return this._limitTiers.has(T) ? !0 : this._limitTiers.has(e);
|
|
1583
1583
|
}
|
|
1584
1584
|
_resolveName(e) {
|
|
1585
1585
|
if (e in this._inputMap) return {
|
|
@@ -1596,14 +1596,14 @@ var Me = class {
|
|
|
1596
1596
|
};
|
|
1597
1597
|
}
|
|
1598
1598
|
_classifyNCR(e) {
|
|
1599
|
-
return e === 0 ? this._ncrNullLevel : e >= 55296 && e <= 57343 || this._ncrXmlVersion === 1 && e >= 1 && e <= 31 && !
|
|
1599
|
+
return e === 0 ? this._ncrNullLevel : e >= 55296 && e <= 57343 || this._ncrXmlVersion === 1 && e >= 1 && e <= 31 && !ke.has(e) ? E.remove : -1;
|
|
1600
1600
|
}
|
|
1601
1601
|
_applyNCRAction(e, t, n) {
|
|
1602
1602
|
switch (e) {
|
|
1603
|
-
case
|
|
1604
|
-
case
|
|
1605
|
-
case
|
|
1606
|
-
case
|
|
1603
|
+
case E.allow: return String.fromCodePoint(n);
|
|
1604
|
+
case E.remove: return "";
|
|
1605
|
+
case E.leave: return;
|
|
1606
|
+
case E.throw: throw Error(`[EntityDecoder] Prohibited numeric character reference &${t}; (U+${n.toString(16).toUpperCase().padStart(4, "0")})`);
|
|
1607
1607
|
default: return String.fromCodePoint(n);
|
|
1608
1608
|
}
|
|
1609
1609
|
}
|
|
@@ -1611,11 +1611,11 @@ var Me = class {
|
|
|
1611
1611
|
let t = e.charCodeAt(1), n;
|
|
1612
1612
|
if (n = t === 120 || t === 88 ? parseInt(e.slice(2), 16) : parseInt(e.slice(1), 10), Number.isNaN(n) || n < 0 || n > 1114111) return;
|
|
1613
1613
|
let r = this._classifyNCR(n);
|
|
1614
|
-
if (!this._numericAllowed && r <
|
|
1614
|
+
if (!this._numericAllowed && r < E.remove) return;
|
|
1615
1615
|
let i = r === -1 ? this._ncrOnLevel : Math.max(this._ncrOnLevel, r);
|
|
1616
1616
|
return this._applyNCRAction(i, e, n);
|
|
1617
1617
|
}
|
|
1618
|
-
},
|
|
1618
|
+
}, Me = (e) => p.includes(e) ? "__" + e : e, Ne = {
|
|
1619
1619
|
preserveOrder: !1,
|
|
1620
1620
|
attributeNamePrefix: "@_",
|
|
1621
1621
|
attributesGroupName: !1,
|
|
@@ -1658,14 +1658,14 @@ var Me = class {
|
|
|
1658
1658
|
maxNestedTags: 100,
|
|
1659
1659
|
strictReservedNames: !0,
|
|
1660
1660
|
jPath: !0,
|
|
1661
|
-
onDangerousProperty:
|
|
1661
|
+
onDangerousProperty: Me
|
|
1662
1662
|
};
|
|
1663
|
-
function
|
|
1663
|
+
function Pe(e, t) {
|
|
1664
1664
|
if (typeof e != "string") return;
|
|
1665
1665
|
let n = e.toLowerCase();
|
|
1666
1666
|
if (p.some((e) => n === e.toLowerCase()) || m.some((e) => n === e.toLowerCase())) throw Error(`[SECURITY] Invalid ${t}: "${e}" is a reserved JavaScript keyword that could cause prototype pollution`);
|
|
1667
1667
|
}
|
|
1668
|
-
function
|
|
1668
|
+
function Fe(e, t) {
|
|
1669
1669
|
return typeof e == "boolean" ? {
|
|
1670
1670
|
enabled: e,
|
|
1671
1671
|
maxEntitySize: 1e4,
|
|
@@ -1686,10 +1686,10 @@ function Ie(e, t) {
|
|
|
1686
1686
|
allowedTags: e.allowedTags ?? null,
|
|
1687
1687
|
tagFilter: e.tagFilter ?? null,
|
|
1688
1688
|
appliesTo: e.appliesTo ?? "all"
|
|
1689
|
-
} :
|
|
1689
|
+
} : Fe(!0);
|
|
1690
1690
|
}
|
|
1691
|
-
var
|
|
1692
|
-
let t = Object.assign({},
|
|
1691
|
+
var Ie = function(e) {
|
|
1692
|
+
let t = Object.assign({}, Ne, e), n = [
|
|
1693
1693
|
{
|
|
1694
1694
|
value: t.attributeNamePrefix,
|
|
1695
1695
|
name: "attributeNamePrefix"
|
|
@@ -1711,9 +1711,9 @@ var Le = function(e) {
|
|
|
1711
1711
|
name: "commentPropName"
|
|
1712
1712
|
}
|
|
1713
1713
|
];
|
|
1714
|
-
for (let { value: e, name: t } of n) e &&
|
|
1715
|
-
return t.onDangerousProperty === null && (t.onDangerousProperty =
|
|
1716
|
-
},
|
|
1714
|
+
for (let { value: e, name: t } of n) e && Pe(e, t);
|
|
1715
|
+
return t.onDangerousProperty === null && (t.onDangerousProperty = Me), t.processEntities = Fe(t.processEntities, t.htmlEntities), t.unpairedTagsSet = new Set(t.unpairedTags), t.stopNodes && Array.isArray(t.stopNodes) && (t.stopNodes = t.stopNodes.map((e) => typeof e == "string" && e.startsWith("*.") ? ".." + e.substring(2) : e)), t;
|
|
1716
|
+
}, Le = typeof Symbol == "function" ? Symbol("XML Node Metadata") : "@@xmlMetadata", D = class {
|
|
1717
1717
|
constructor(e) {
|
|
1718
1718
|
this.tagname = e, this.child = [], this[":@"] = Object.create(null);
|
|
1719
1719
|
}
|
|
@@ -1724,12 +1724,12 @@ var Le = function(e) {
|
|
|
1724
1724
|
e.tagname === "__proto__" && (e.tagname = "#__proto__"), e[":@"] && Object.keys(e[":@"]).length > 0 ? this.child.push({
|
|
1725
1725
|
[e.tagname]: e.child,
|
|
1726
1726
|
":@": e[":@"]
|
|
1727
|
-
}) : this.child.push({ [e.tagname]: e.child }), t !== void 0 && (this.child[this.child.length - 1][
|
|
1727
|
+
}) : this.child.push({ [e.tagname]: e.child }), t !== void 0 && (this.child[this.child.length - 1][Le] = { startIndex: t });
|
|
1728
1728
|
}
|
|
1729
1729
|
static getMetaDataSymbol() {
|
|
1730
|
-
return
|
|
1730
|
+
return Le;
|
|
1731
1731
|
}
|
|
1732
|
-
},
|
|
1732
|
+
}, Re = ":A-Za-z_À-ÖØ-öø-˿Ͱ-ͽͿ-҆҈--⁰-Ⰰ-、-豈-﷏ﷰ-�", ze = ":A-Za-z_À-ÖØ-öø-˿Ͱ-ͽͿ-҆҈--⁰-Ⰰ-、-豈-﷏ﷰ-�\\-\\.\\d·̀-ͯ‿-⁀", Be = ":A-Za-z_À-˿Ͱ-ͽͿ-҆҈--⁰-Ⰰ-、-豈-﷏ﷰ-�𐀀-", Ve = ":A-Za-z_À-˿Ͱ-ͽͿ-҆҈--⁰-Ⰰ-、-豈-﷏ﷰ-�𐀀-\\-\\.\\d·̀-ͯ҇‿-⁀", O = (e, t, n = "") => {
|
|
1733
1733
|
let r = `[${e.replace(":", "")}][${t.replace(":", "")}]*`;
|
|
1734
1734
|
return {
|
|
1735
1735
|
name: RegExp(`^[${e}][${t}]*$`, n),
|
|
@@ -1738,15 +1738,15 @@ var Le = function(e) {
|
|
|
1738
1738
|
nmToken: RegExp(`^[${t}]+$`, n),
|
|
1739
1739
|
nmTokens: RegExp(`^[${t}]+(?:\\s+[${t}]+)*$`, n)
|
|
1740
1740
|
};
|
|
1741
|
-
},
|
|
1741
|
+
}, He = O(Re, ze), Ue = O(Be, Ve, "u"), We = O(":A-Za-z_", ":A-Za-z_\\-\\.\\d"), Ge = (e = "1.0", t = !1) => t ? We : e === "1.1" ? Ue : He, Ke = (e, { xmlVersion: t = "1.0", asciiOnly: n = !1 } = {}) => Ge(t, n).qName.test(e), qe = [
|
|
1742
1742
|
"name",
|
|
1743
1743
|
"ncName",
|
|
1744
1744
|
"qName",
|
|
1745
1745
|
"nmToken",
|
|
1746
1746
|
"nmTokens"
|
|
1747
|
-
],
|
|
1748
|
-
if (!
|
|
1749
|
-
let i =
|
|
1747
|
+
], Je = (e, { xmlVersion: t = "1.0", asciiOnly: n = !1, maxCacheSize: r = 2048 } = {}) => {
|
|
1748
|
+
if (!qe.includes(e)) throw TypeError(`Unknown production "${e}". Must be one of: ${qe.join(", ")}`);
|
|
1749
|
+
let i = Ge(t, n)[e], a = /* @__PURE__ */ new Map(), o = (e) => {
|
|
1750
1750
|
let t = a.get(e);
|
|
1751
1751
|
if (t !== void 0) return t;
|
|
1752
1752
|
let n = i.test(e);
|
|
@@ -1755,7 +1755,7 @@ var Le = function(e) {
|
|
|
1755
1755
|
return o.reset = () => {
|
|
1756
1756
|
a = /* @__PURE__ */ new Map();
|
|
1757
1757
|
}, o;
|
|
1758
|
-
},
|
|
1758
|
+
}, Ye = class {
|
|
1759
1759
|
constructor(e, t) {
|
|
1760
1760
|
this.suppressValidationErr = !e, this.options = e, this.xmlVersion = t || 1;
|
|
1761
1761
|
}
|
|
@@ -1768,23 +1768,23 @@ var Le = function(e) {
|
|
|
1768
1768
|
t += 9;
|
|
1769
1769
|
let i = 1, a = !1, o = !1, s = "";
|
|
1770
1770
|
for (; t < e.length; t++) if (e[t] === "<" && !o) {
|
|
1771
|
-
if (a &&
|
|
1771
|
+
if (a && A(e, "!ENTITY", t)) {
|
|
1772
1772
|
t += 7;
|
|
1773
1773
|
let i, a;
|
|
1774
1774
|
if ([i, a, t] = this.readEntityExp(e, t + 1, this.suppressValidationErr), a.indexOf("&") === -1) {
|
|
1775
1775
|
if (this.options.enabled !== !1 && this.options.maxEntityCount != null && r >= this.options.maxEntityCount) throw Error(`Entity count (${r + 1}) exceeds maximum allowed (${this.options.maxEntityCount})`);
|
|
1776
1776
|
n[i] = a, r++;
|
|
1777
1777
|
}
|
|
1778
|
-
} else if (a &&
|
|
1778
|
+
} else if (a && A(e, "!ELEMENT", t)) {
|
|
1779
1779
|
t += 8;
|
|
1780
1780
|
let { index: n } = this.readElementExp(e, t + 1);
|
|
1781
1781
|
t = n;
|
|
1782
|
-
} else if (a &&
|
|
1783
|
-
else if (a &&
|
|
1782
|
+
} else if (a && A(e, "!ATTLIST", t)) t += 8;
|
|
1783
|
+
else if (a && A(e, "!NOTATION", t)) {
|
|
1784
1784
|
t += 9;
|
|
1785
1785
|
let { index: n } = this.readNotationExp(e, t + 1, this.suppressValidationErr);
|
|
1786
1786
|
t = n;
|
|
1787
|
-
} else if (
|
|
1787
|
+
} else if (A(e, "!--", t)) o = !0;
|
|
1788
1788
|
else throw Error("Invalid DOCTYPE");
|
|
1789
1789
|
i++, s = "";
|
|
1790
1790
|
} else if (e[t] === ">") {
|
|
@@ -1798,11 +1798,11 @@ var Le = function(e) {
|
|
|
1798
1798
|
};
|
|
1799
1799
|
}
|
|
1800
1800
|
readEntityExp(e, t) {
|
|
1801
|
-
t =
|
|
1801
|
+
t = k(e, t);
|
|
1802
1802
|
let n = t;
|
|
1803
1803
|
for (; t < e.length && !/\s/.test(e[t]) && e[t] !== "\"" && e[t] !== "'";) t++;
|
|
1804
1804
|
let r = e.substring(n, t);
|
|
1805
|
-
if (
|
|
1805
|
+
if (j(r, { xmlVersion: this.xmlVersion }), t = k(e, t), !this.suppressValidationErr) {
|
|
1806
1806
|
if (e.substring(t, t + 6).toUpperCase() === "SYSTEM") throw Error("External entities are not supported");
|
|
1807
1807
|
if (e[t] === "%") throw Error("Parameter entities are not supported");
|
|
1808
1808
|
}
|
|
@@ -1815,16 +1815,16 @@ var Le = function(e) {
|
|
|
1815
1815
|
];
|
|
1816
1816
|
}
|
|
1817
1817
|
readNotationExp(e, t) {
|
|
1818
|
-
t =
|
|
1818
|
+
t = k(e, t);
|
|
1819
1819
|
let n = t;
|
|
1820
1820
|
for (; t < e.length && !/\s/.test(e[t]);) t++;
|
|
1821
1821
|
let r = e.substring(n, t);
|
|
1822
|
-
!this.suppressValidationErr &&
|
|
1822
|
+
!this.suppressValidationErr && j(r, { xmlVersion: this.xmlVersion }), t = k(e, t);
|
|
1823
1823
|
let i = e.substring(t, t + 6).toUpperCase();
|
|
1824
1824
|
if (!this.suppressValidationErr && i !== "SYSTEM" && i !== "PUBLIC") throw Error(`Expected SYSTEM or PUBLIC, found "${i}"`);
|
|
1825
|
-
t += i.length, t =
|
|
1825
|
+
t += i.length, t = k(e, t);
|
|
1826
1826
|
let a = null, o = null;
|
|
1827
|
-
if (i === "PUBLIC") [t, a] = this.readIdentifierVal(e, t, "publicIdentifier"), t =
|
|
1827
|
+
if (i === "PUBLIC") [t, a] = this.readIdentifierVal(e, t, "publicIdentifier"), t = k(e, t), (e[t] === "\"" || e[t] === "'") && ([t, o] = this.readIdentifierVal(e, t, "systemIdentifier"));
|
|
1828
1828
|
else if (i === "SYSTEM" && ([t, o] = this.readIdentifierVal(e, t, "systemIdentifier"), !this.suppressValidationErr && !o)) throw Error("Missing mandatory system identifier for SYSTEM notation");
|
|
1829
1829
|
return {
|
|
1830
1830
|
notationName: r,
|
|
@@ -1843,15 +1843,15 @@ var Le = function(e) {
|
|
|
1843
1843
|
return t++, [t, r];
|
|
1844
1844
|
}
|
|
1845
1845
|
readElementExp(e, t) {
|
|
1846
|
-
t =
|
|
1846
|
+
t = k(e, t);
|
|
1847
1847
|
let n = t;
|
|
1848
1848
|
for (; t < e.length && !/\s/.test(e[t]);) t++;
|
|
1849
1849
|
let r = e.substring(n, t);
|
|
1850
|
-
if (!this.suppressValidationErr && !
|
|
1851
|
-
t =
|
|
1850
|
+
if (!this.suppressValidationErr && !Ke(r, { xmlVersion: this.xmlVersion })) throw Error(`Invalid element name: "${r}"`);
|
|
1851
|
+
t = k(e, t);
|
|
1852
1852
|
let i = "";
|
|
1853
|
-
if (e[t] === "E" &&
|
|
1854
|
-
else if (e[t] === "A" &&
|
|
1853
|
+
if (e[t] === "E" && A(e, "MPTY", t)) t += 4;
|
|
1854
|
+
else if (e[t] === "A" && A(e, "NY", t)) t += 2;
|
|
1855
1855
|
else if (e[t] === "(") {
|
|
1856
1856
|
t++;
|
|
1857
1857
|
let n = t;
|
|
@@ -1865,25 +1865,25 @@ var Le = function(e) {
|
|
|
1865
1865
|
};
|
|
1866
1866
|
}
|
|
1867
1867
|
readAttlistExp(e, t) {
|
|
1868
|
-
t =
|
|
1868
|
+
t = k(e, t);
|
|
1869
1869
|
let n = t;
|
|
1870
1870
|
for (; t < e.length && !/\s/.test(e[t]);) t++;
|
|
1871
1871
|
let r = e.substring(n, t);
|
|
1872
|
-
for (
|
|
1872
|
+
for (j(r, { xmlVersion: this.xmlVersion }), t = k(e, t), n = t; t < e.length && !/\s/.test(e[t]);) t++;
|
|
1873
1873
|
let i = e.substring(n, t);
|
|
1874
|
-
if (!
|
|
1875
|
-
t =
|
|
1874
|
+
if (!j(i, { xmlVersion: this.xmlVersion })) throw Error(`Invalid attribute name: "${i}"`);
|
|
1875
|
+
t = k(e, t);
|
|
1876
1876
|
let a = "";
|
|
1877
1877
|
if (e.substring(t, t + 8).toUpperCase() === "NOTATION") {
|
|
1878
|
-
if (a = "NOTATION", t += 8, t =
|
|
1878
|
+
if (a = "NOTATION", t += 8, t = k(e, t), e[t] !== "(") throw Error(`Expected '(', found "${e[t]}"`);
|
|
1879
1879
|
t++;
|
|
1880
1880
|
let n = [];
|
|
1881
1881
|
for (; t < e.length && e[t] !== ")";) {
|
|
1882
1882
|
let r = t;
|
|
1883
1883
|
for (; t < e.length && e[t] !== "|" && e[t] !== ")";) t++;
|
|
1884
1884
|
let i = e.substring(r, t);
|
|
1885
|
-
if (i = i.trim(), !
|
|
1886
|
-
n.push(i), e[t] === "|" && (t++, t =
|
|
1885
|
+
if (i = i.trim(), !j(i, { xmlVersion: this.xmlVersion })) throw Error(`Invalid notation name: "${i}"`);
|
|
1886
|
+
n.push(i), e[t] === "|" && (t++, t = k(e, t));
|
|
1887
1887
|
}
|
|
1888
1888
|
if (e[t] !== ")") throw Error("Unterminated list of notations");
|
|
1889
1889
|
t++, a += " (" + n.join("|") + ")";
|
|
@@ -1901,7 +1901,7 @@ var Le = function(e) {
|
|
|
1901
1901
|
"NMTOKENS"
|
|
1902
1902
|
].includes(a.toUpperCase())) throw Error(`Invalid attribute type: "${a}"`);
|
|
1903
1903
|
}
|
|
1904
|
-
t =
|
|
1904
|
+
t = k(e, t);
|
|
1905
1905
|
let o = "";
|
|
1906
1906
|
return e.substring(t, t + 8).toUpperCase() === "#REQUIRED" ? (o = "#REQUIRED", t += 8) : e.substring(t, t + 7).toUpperCase() === "#IMPLIED" ? (o = "#IMPLIED", t += 7) : [t, o] = this.readIdentifierVal(e, t, "ATTLIST"), {
|
|
1907
1907
|
elementName: r,
|
|
@@ -1911,21 +1911,21 @@ var Le = function(e) {
|
|
|
1911
1911
|
index: t
|
|
1912
1912
|
};
|
|
1913
1913
|
}
|
|
1914
|
-
},
|
|
1914
|
+
}, k = (e, t) => {
|
|
1915
1915
|
for (; t < e.length && /\s/.test(e[t]);) t++;
|
|
1916
1916
|
return t;
|
|
1917
1917
|
};
|
|
1918
|
-
function
|
|
1918
|
+
function A(e, t, n) {
|
|
1919
1919
|
for (let r = 0; r < t.length; r++) if (t[r] !== e[n + r + 1]) return !1;
|
|
1920
1920
|
return !0;
|
|
1921
1921
|
}
|
|
1922
|
-
function
|
|
1923
|
-
if (
|
|
1922
|
+
function j(e, t) {
|
|
1923
|
+
if (Ke(e, { xmlVersion: t })) return e;
|
|
1924
1924
|
throw Error(`Invalid entity name ${e}`);
|
|
1925
1925
|
}
|
|
1926
1926
|
//#endregion
|
|
1927
1927
|
//#region ../../node_modules/.pnpm/anynum@1.0.1/node_modules/anynum/digitTable.js
|
|
1928
|
-
var
|
|
1928
|
+
var Xe = [
|
|
1929
1929
|
48,
|
|
1930
1930
|
1632,
|
|
1931
1931
|
1776,
|
|
@@ -1987,28 +1987,28 @@ var Ze = [
|
|
|
1987
1987
|
124144,
|
|
1988
1988
|
125264,
|
|
1989
1989
|
130032
|
|
1990
|
-
],
|
|
1991
|
-
for (let e of
|
|
1990
|
+
], M = /* @__PURE__ */ new Map(), Ze = 65535, Qe = 1632, N = new Uint8Array(63904).fill(255);
|
|
1991
|
+
for (let e of Xe) for (let t = 0; t < 10; t++) {
|
|
1992
1992
|
let n = e + t;
|
|
1993
|
-
n <=
|
|
1993
|
+
n <= Ze ? N[n - Qe] = t : M.set(n, t);
|
|
1994
1994
|
}
|
|
1995
1995
|
//#endregion
|
|
1996
1996
|
//#region ../../node_modules/.pnpm/anynum@1.0.1/node_modules/anynum/anynum.js
|
|
1997
|
-
var
|
|
1997
|
+
var $e = 48, et = 57, tt = 45, P = new Set([
|
|
1998
1998
|
8722,
|
|
1999
1999
|
65293,
|
|
2000
2000
|
65123
|
|
2001
2001
|
]);
|
|
2002
|
-
function
|
|
2002
|
+
function nt(e) {
|
|
2003
2003
|
if (typeof e != "string") return e;
|
|
2004
2004
|
let t = e.length;
|
|
2005
2005
|
if (t === 0) return e;
|
|
2006
2006
|
let n = -1;
|
|
2007
2007
|
for (let r = 0; r < t; r++) {
|
|
2008
2008
|
let i = e.charCodeAt(r);
|
|
2009
|
-
if (!(i >=
|
|
2009
|
+
if (!(i >= $e && i <= et || i === tt)) {
|
|
2010
2010
|
if (i < 1632) {
|
|
2011
|
-
if (
|
|
2011
|
+
if (P.has(i)) {
|
|
2012
2012
|
n = r;
|
|
2013
2013
|
break;
|
|
2014
2014
|
}
|
|
@@ -2019,7 +2019,7 @@ function it(e) {
|
|
|
2019
2019
|
let t = e.charCodeAt(r + 1);
|
|
2020
2020
|
if (t >= 56320 && t <= 57343) {
|
|
2021
2021
|
let e = 65536 + (i - 55296 << 10) + (t - 56320);
|
|
2022
|
-
if (
|
|
2022
|
+
if (M.has(e)) {
|
|
2023
2023
|
n = r;
|
|
2024
2024
|
break;
|
|
2025
2025
|
}
|
|
@@ -2027,7 +2027,7 @@ function it(e) {
|
|
|
2027
2027
|
}
|
|
2028
2028
|
continue;
|
|
2029
2029
|
}
|
|
2030
|
-
if (
|
|
2030
|
+
if (N[i - 1632] !== 255 || P.has(i)) {
|
|
2031
2031
|
n = r;
|
|
2032
2032
|
break;
|
|
2033
2033
|
}
|
|
@@ -2038,19 +2038,19 @@ function it(e) {
|
|
|
2038
2038
|
n > 0 && r.push(e.slice(0, n));
|
|
2039
2039
|
for (let i = n; i < t; i++) {
|
|
2040
2040
|
let n = e.charCodeAt(i);
|
|
2041
|
-
if (n >=
|
|
2041
|
+
if (n >= $e && n <= et || n === tt) {
|
|
2042
2042
|
r.push(e[i]);
|
|
2043
2043
|
continue;
|
|
2044
2044
|
}
|
|
2045
2045
|
if (n < 1632) {
|
|
2046
|
-
r.push(
|
|
2046
|
+
r.push(P.has(n) ? "-" : e[i]);
|
|
2047
2047
|
continue;
|
|
2048
2048
|
}
|
|
2049
2049
|
if (n >= 55296 && n <= 56319) {
|
|
2050
2050
|
if (i + 1 < t) {
|
|
2051
2051
|
let t = e.charCodeAt(i + 1);
|
|
2052
2052
|
if (t >= 56320 && t <= 57343) {
|
|
2053
|
-
let e = 65536 + (n - 55296 << 10) + (t - 56320), a =
|
|
2053
|
+
let e = 65536 + (n - 55296 << 10) + (t - 56320), a = M.get(e);
|
|
2054
2054
|
if (a !== void 0) {
|
|
2055
2055
|
r.push(String.fromCharCode(a + 48)), i++;
|
|
2056
2056
|
continue;
|
|
@@ -2060,18 +2060,18 @@ function it(e) {
|
|
|
2060
2060
|
r.push(e[i]);
|
|
2061
2061
|
continue;
|
|
2062
2062
|
}
|
|
2063
|
-
if (
|
|
2063
|
+
if (P.has(n)) {
|
|
2064
2064
|
r.push("-");
|
|
2065
2065
|
continue;
|
|
2066
2066
|
}
|
|
2067
|
-
let a =
|
|
2067
|
+
let a = N[n - Qe];
|
|
2068
2068
|
r.push(a === 255 ? e[i] : String.fromCharCode(a + 48));
|
|
2069
2069
|
}
|
|
2070
2070
|
return r.join("");
|
|
2071
2071
|
}
|
|
2072
2072
|
//#endregion
|
|
2073
2073
|
//#region ../../node_modules/.pnpm/strnum@2.4.1/node_modules/strnum/strnum.js
|
|
2074
|
-
var
|
|
2074
|
+
var rt = /^[-+]?0x[a-fA-F0-9]+$/, it = /^0b[01]+$/, at = /^0o[0-7]+$/, ot = /^([\-\+])?(0*)([0-9]*(\.[0-9]*)?)$/, st = {
|
|
2075
2075
|
hex: !0,
|
|
2076
2076
|
binary: !1,
|
|
2077
2077
|
octal: !1,
|
|
@@ -2081,20 +2081,20 @@ var at = /^[-+]?0x[a-fA-F0-9]+$/, ot = /^0b[01]+$/, st = /^0o[0-7]+$/, ct = /^([
|
|
|
2081
2081
|
infinity: "original",
|
|
2082
2082
|
unicode: !1
|
|
2083
2083
|
};
|
|
2084
|
-
function
|
|
2085
|
-
if (t = Object.assign({},
|
|
2084
|
+
function ct(e, t = {}) {
|
|
2085
|
+
if (t = Object.assign({}, st, t), !e || typeof e != "string") return e;
|
|
2086
2086
|
let n = e.trim();
|
|
2087
2087
|
if (n.length === 0 || t.skipLike !== void 0 && t.skipLike.test(n)) return e;
|
|
2088
|
-
if (n === "0" || t.unicode && (n =
|
|
2089
|
-
if (t.hex &&
|
|
2090
|
-
if (t.binary &&
|
|
2091
|
-
if (t.octal &&
|
|
2092
|
-
if (!isFinite(n)) return
|
|
2093
|
-
if (n.includes("e") || n.includes("E")) return
|
|
2088
|
+
if (n === "0" || t.unicode && (n = nt(n), n === "0")) return 0;
|
|
2089
|
+
if (t.hex && rt.test(n)) return F(n, 16);
|
|
2090
|
+
if (t.binary && it.test(n)) return F(n, 2);
|
|
2091
|
+
if (t.octal && at.test(n)) return F(n, 8);
|
|
2092
|
+
if (!isFinite(n)) return ft(e, Number(n), t);
|
|
2093
|
+
if (n.includes("e") || n.includes("E")) return ut(e, n, t);
|
|
2094
2094
|
{
|
|
2095
|
-
let r =
|
|
2095
|
+
let r = ot.exec(n);
|
|
2096
2096
|
if (r) {
|
|
2097
|
-
let i = r[1] || "", a = r[2], o =
|
|
2097
|
+
let i = r[1] || "", a = r[2], o = dt(r[3]), s = i ? e[a.length + 1] === "." : e[a.length] === ".";
|
|
2098
2098
|
if (!t.leadingZeros && (a.length > 1 || a.length === 1 && !s)) return e;
|
|
2099
2099
|
{
|
|
2100
2100
|
let r = Number(n), s = String(r);
|
|
@@ -2107,26 +2107,26 @@ function ut(e, t = {}) {
|
|
|
2107
2107
|
} else return e;
|
|
2108
2108
|
}
|
|
2109
2109
|
}
|
|
2110
|
-
var
|
|
2111
|
-
function
|
|
2110
|
+
var lt = /^([-+])?(0*)(\d*(\.\d*)?[eE][-\+]?\d+)$/;
|
|
2111
|
+
function ut(e, t, n) {
|
|
2112
2112
|
if (!n.eNotation) return e;
|
|
2113
|
-
let r = t.match(
|
|
2113
|
+
let r = t.match(lt);
|
|
2114
2114
|
if (r) {
|
|
2115
2115
|
let i = r[1] || "", a = r[3].indexOf("e") === -1 ? "E" : "e", o = r[2], s = i ? e[o.length + 1] === a : e[o.length] === a;
|
|
2116
2116
|
return o.length > 1 && s ? e : o.length === 1 && (r[3].startsWith(`.${a}`) || r[3][0] === a) ? Number(t) : o.length > 0 ? n.leadingZeros && !s ? (t = (r[1] || "") + r[3], Number(t)) : e : Number(t);
|
|
2117
2117
|
} else return e;
|
|
2118
2118
|
}
|
|
2119
|
-
function
|
|
2119
|
+
function dt(e) {
|
|
2120
2120
|
return e && e.indexOf(".") !== -1 ? (e = e.replace(/0+$/, ""), e === "." ? e = "0" : e[0] === "." ? e = "0" + e : e[e.length - 1] === "." && (e = e.substring(0, e.length - 1)), e) : e;
|
|
2121
2121
|
}
|
|
2122
|
-
function
|
|
2122
|
+
function F(e, t) {
|
|
2123
2123
|
let n = e.trim();
|
|
2124
2124
|
if ((t === 2 || t === 8) && (e = n.substring(2)), parseInt) return parseInt(e, t);
|
|
2125
2125
|
if (Number.parseInt) return Number.parseInt(e, t);
|
|
2126
2126
|
if (window && window.parseInt) return window.parseInt(e, t);
|
|
2127
2127
|
throw Error("parseInt, Number.parseInt, window.parseInt are not supported");
|
|
2128
2128
|
}
|
|
2129
|
-
function
|
|
2129
|
+
function ft(e, t, n) {
|
|
2130
2130
|
let r = t === Infinity;
|
|
2131
2131
|
switch (n.infinity.toLowerCase()) {
|
|
2132
2132
|
case "null": return null;
|
|
@@ -2137,14 +2137,14 @@ function mt(e, t, n) {
|
|
|
2137
2137
|
}
|
|
2138
2138
|
//#endregion
|
|
2139
2139
|
//#region ../../node_modules/.pnpm/fast-xml-parser@5.10.0/node_modules/fast-xml-parser/src/ignoreAttributes.js
|
|
2140
|
-
function
|
|
2140
|
+
function pt(e) {
|
|
2141
2141
|
return typeof e == "function" ? e : Array.isArray(e) ? (t) => {
|
|
2142
2142
|
for (let n of e) if (typeof n == "string" && t === n || n instanceof RegExp && n.test(t)) return !0;
|
|
2143
2143
|
} : () => !1;
|
|
2144
2144
|
}
|
|
2145
2145
|
//#endregion
|
|
2146
2146
|
//#region ../../node_modules/.pnpm/path-expression-matcher@1.6.2/node_modules/path-expression-matcher/src/Expression.js
|
|
2147
|
-
var
|
|
2147
|
+
var I = class {
|
|
2148
2148
|
constructor(e, t = {}, n) {
|
|
2149
2149
|
this.pattern = e, this.separator = t.separator || ".", this.segments = this._parse(e), this.data = n, this._hasDeepWildcard = this.segments.some((e) => e.type === "deep-wildcard"), this._hasAttributeCondition = this.segments.some((e) => e.attrName !== void 0), this._hasPositionSelector = this.segments.some((e) => e.position !== void 0);
|
|
2150
2150
|
}
|
|
@@ -2200,7 +2200,7 @@ var P = class {
|
|
|
2200
2200
|
toString() {
|
|
2201
2201
|
return this.pattern;
|
|
2202
2202
|
}
|
|
2203
|
-
},
|
|
2203
|
+
}, mt = class {
|
|
2204
2204
|
constructor() {
|
|
2205
2205
|
this._byDepthAndTag = /* @__PURE__ */ new Map(), this._wildcardByDepth = /* @__PURE__ */ new Map(), this._deepWildcards = [], this._deepByTerminalTag = /* @__PURE__ */ new Map(), this._patterns = /* @__PURE__ */ new Set(), this._sealed = !1;
|
|
2206
2206
|
}
|
|
@@ -2258,7 +2258,7 @@ var P = class {
|
|
|
2258
2258
|
for (let t = 0; t < this._deepWildcards.length; t++) if (e.matches(this._deepWildcards[t])) return this._deepWildcards[t];
|
|
2259
2259
|
return null;
|
|
2260
2260
|
}
|
|
2261
|
-
},
|
|
2261
|
+
}, ht = class {
|
|
2262
2262
|
constructor(e) {
|
|
2263
2263
|
this._matcher = e;
|
|
2264
2264
|
}
|
|
@@ -2315,9 +2315,9 @@ var P = class {
|
|
|
2315
2315
|
matchesAny(e) {
|
|
2316
2316
|
return e.matchesAny(this._matcher);
|
|
2317
2317
|
}
|
|
2318
|
-
},
|
|
2318
|
+
}, L = class {
|
|
2319
2319
|
constructor(e = {}) {
|
|
2320
|
-
this.separator = e.separator || ".", this.path = [], this.siblingStacks = [], this._pathStringCache = null, this._view = new
|
|
2320
|
+
this.separator = e.separator || ".", this.path = [], this.siblingStacks = [], this._pathStringCache = null, this._view = new ht(this), this._keptAttrs = [];
|
|
2321
2321
|
}
|
|
2322
2322
|
push(e, t = null, n = null, r = null) {
|
|
2323
2323
|
this._pathStringCache = null, this.path.length > 0 && (this.path[this.path.length - 1].values = void 0);
|
|
@@ -2468,7 +2468,7 @@ var P = class {
|
|
|
2468
2468
|
readOnly() {
|
|
2469
2469
|
return this._view;
|
|
2470
2470
|
}
|
|
2471
|
-
},
|
|
2471
|
+
}, R = [
|
|
2472
2472
|
{
|
|
2473
2473
|
id: "html-script-open",
|
|
2474
2474
|
description: "<script opening tag",
|
|
@@ -2554,7 +2554,7 @@ var P = class {
|
|
|
2554
2554
|
description: "<form tag — can be used for phishing / credential harvesting injection",
|
|
2555
2555
|
pattern: /<form[\s>/]/i
|
|
2556
2556
|
}
|
|
2557
|
-
],
|
|
2557
|
+
], z = [
|
|
2558
2558
|
{
|
|
2559
2559
|
id: "xml-cdata-injection",
|
|
2560
2560
|
description: "CDATA section injection: <![CDATA[ breaks out of text node context",
|
|
@@ -2615,7 +2615,7 @@ var P = class {
|
|
|
2615
2615
|
description: "?> closes an enclosing processing instruction",
|
|
2616
2616
|
pattern: /\?>/
|
|
2617
2617
|
}
|
|
2618
|
-
],
|
|
2618
|
+
], gt = [
|
|
2619
2619
|
{
|
|
2620
2620
|
id: "svg-script-element",
|
|
2621
2621
|
description: "<script element inside SVG executes JavaScript",
|
|
@@ -2681,7 +2681,7 @@ var P = class {
|
|
|
2681
2681
|
description: "style= attribute containing javascript: (e.g. background:url(javascript:...))",
|
|
2682
2682
|
pattern: /style\s*=[\s\S]{0,60}javascript\s*:/i
|
|
2683
2683
|
}
|
|
2684
|
-
],
|
|
2684
|
+
], B = [
|
|
2685
2685
|
{
|
|
2686
2686
|
id: "sql-block-comment-open",
|
|
2687
2687
|
description: "SQL block comment open: /* ... */ — unusual in legitimate user text",
|
|
@@ -2757,7 +2757,7 @@ var P = class {
|
|
|
2757
2757
|
description: "INFORMATION_SCHEMA — reconnaissance query for table/column enumeration",
|
|
2758
2758
|
pattern: /\bINFORMATION_SCHEMA\b/i
|
|
2759
2759
|
}
|
|
2760
|
-
],
|
|
2760
|
+
], _t = [
|
|
2761
2761
|
{
|
|
2762
2762
|
id: "shell-path-traversal-unix",
|
|
2763
2763
|
description: "Unix path traversal: ../ — climbing the directory tree",
|
|
@@ -2848,7 +2848,7 @@ var P = class {
|
|
|
2848
2848
|
description: "curl/wget with URL or flags — can exfiltrate data or download payloads",
|
|
2849
2849
|
pattern: /\b(?:curl|wget)\s+(?:https?:\/\/|ftp:\/\/|-)/i
|
|
2850
2850
|
}
|
|
2851
|
-
],
|
|
2851
|
+
], vt = [
|
|
2852
2852
|
{
|
|
2853
2853
|
id: "redos-nested-quantifier-plus",
|
|
2854
2854
|
description: "Nested + quantifier inside a group with outer quantifier: (a+)+, (.+b)*, etc.",
|
|
@@ -2889,71 +2889,71 @@ var P = class {
|
|
|
2889
2889
|
description: "Long alternation with many similar branches — polynomial backtracking risk",
|
|
2890
2890
|
pattern: /\([^)]{0,200}(?:\|[^|)]{0,50}){9,}\)/
|
|
2891
2891
|
}
|
|
2892
|
-
],
|
|
2892
|
+
], V = "[\"'\\s]*:", yt = [
|
|
2893
2893
|
{
|
|
2894
2894
|
id: "nosql-where-operator",
|
|
2895
2895
|
description: "$where — executes arbitrary JavaScript server-side in MongoDB",
|
|
2896
|
-
pattern: RegExp(`\\$where${
|
|
2896
|
+
pattern: RegExp(`\\$where${V}`, "i")
|
|
2897
2897
|
},
|
|
2898
2898
|
{
|
|
2899
2899
|
id: "nosql-ne-operator",
|
|
2900
2900
|
description: "$ne — \"not equal\" operator used to bypass equality checks",
|
|
2901
|
-
pattern: RegExp(`\\$ne${
|
|
2901
|
+
pattern: RegExp(`\\$ne${V}`, "i")
|
|
2902
2902
|
},
|
|
2903
2903
|
{
|
|
2904
2904
|
id: "nosql-gt-operator",
|
|
2905
2905
|
description: "$gt — \"greater than\" used to bypass password/value checks",
|
|
2906
|
-
pattern: RegExp(`\\$gte?${
|
|
2906
|
+
pattern: RegExp(`\\$gte?${V}`, "i")
|
|
2907
2907
|
},
|
|
2908
2908
|
{
|
|
2909
2909
|
id: "nosql-lt-operator",
|
|
2910
2910
|
description: "$lt / $lte — \"less than\" bypass variants",
|
|
2911
|
-
pattern: RegExp(`\\$lte?${
|
|
2911
|
+
pattern: RegExp(`\\$lte?${V}`, "i")
|
|
2912
2912
|
},
|
|
2913
2913
|
{
|
|
2914
2914
|
id: "nosql-regex-operator",
|
|
2915
2915
|
description: "$regex — can be used to extract data character by character (blind injection)",
|
|
2916
|
-
pattern: RegExp(`\\$regex${
|
|
2916
|
+
pattern: RegExp(`\\$regex${V}`, "i")
|
|
2917
2917
|
},
|
|
2918
2918
|
{
|
|
2919
2919
|
id: "nosql-or-operator",
|
|
2920
2920
|
description: "$or — logical OR; used to create always-true conditions",
|
|
2921
|
-
pattern: RegExp(`\\$or${
|
|
2921
|
+
pattern: RegExp(`\\$or${V}\\s*\\[`, "i")
|
|
2922
2922
|
},
|
|
2923
2923
|
{
|
|
2924
2924
|
id: "nosql-and-operator",
|
|
2925
2925
|
description: "$and — logical AND operator injection",
|
|
2926
|
-
pattern: RegExp(`\\$and${
|
|
2926
|
+
pattern: RegExp(`\\$and${V}\\s*\\[`, "i")
|
|
2927
2927
|
},
|
|
2928
2928
|
{
|
|
2929
2929
|
id: "nosql-nor-operator",
|
|
2930
2930
|
description: "$nor — logical NOR operator injection",
|
|
2931
|
-
pattern: RegExp(`\\$nor${
|
|
2931
|
+
pattern: RegExp(`\\$nor${V}\\s*\\[`, "i")
|
|
2932
2932
|
},
|
|
2933
2933
|
{
|
|
2934
2934
|
id: "nosql-exists-operator",
|
|
2935
2935
|
description: "$exists — can enumerate fields to determine schema",
|
|
2936
|
-
pattern: RegExp(`\\$exists${
|
|
2936
|
+
pattern: RegExp(`\\$exists${V}`, "i")
|
|
2937
2937
|
},
|
|
2938
2938
|
{
|
|
2939
2939
|
id: "nosql-in-operator",
|
|
2940
2940
|
description: "$in — matches any value in a list; can enumerate values",
|
|
2941
|
-
pattern: RegExp(`\\$in${
|
|
2941
|
+
pattern: RegExp(`\\$in${V}\\s*\\[`, "i")
|
|
2942
2942
|
},
|
|
2943
2943
|
{
|
|
2944
2944
|
id: "nosql-expr-operator",
|
|
2945
2945
|
description: "$expr — allows aggregation expressions in queries (MongoDB 3.6+)",
|
|
2946
|
-
pattern: RegExp(`\\$expr${
|
|
2946
|
+
pattern: RegExp(`\\$expr${V}`, "i")
|
|
2947
2947
|
},
|
|
2948
2948
|
{
|
|
2949
2949
|
id: "nosql-function-operator",
|
|
2950
2950
|
description: "$function — executes arbitrary JavaScript in MongoDB 4.4+",
|
|
2951
|
-
pattern: RegExp(`\\$function${
|
|
2951
|
+
pattern: RegExp(`\\$function${V}`, "i")
|
|
2952
2952
|
},
|
|
2953
2953
|
{
|
|
2954
2954
|
id: "nosql-accumulator-operator",
|
|
2955
2955
|
description: "$accumulator — custom aggregation with arbitrary JS execution",
|
|
2956
|
-
pattern: RegExp(`\\$accumulator${
|
|
2956
|
+
pattern: RegExp(`\\$accumulator${V}`, "i")
|
|
2957
2957
|
},
|
|
2958
2958
|
{
|
|
2959
2959
|
id: "nosql-proto-pollution",
|
|
@@ -2970,7 +2970,7 @@ var P = class {
|
|
|
2970
2970
|
description: "[\"__proto__\"] — bracket-notation prototype pollution",
|
|
2971
2971
|
pattern: /\[["']__proto__["']\]/
|
|
2972
2972
|
}
|
|
2973
|
-
],
|
|
2973
|
+
], bt = [
|
|
2974
2974
|
{
|
|
2975
2975
|
id: "log-crlf-injection",
|
|
2976
2976
|
description: "CRLF injection: literal \\r or \\n embeds fake log lines",
|
|
@@ -3031,7 +3031,7 @@ var P = class {
|
|
|
3031
3031
|
description: "ANSI escape sequence: ESC[ — can manipulate terminal output when logs are tailed",
|
|
3032
3032
|
pattern: /\x1b\[/
|
|
3033
3033
|
}
|
|
3034
|
-
],
|
|
3034
|
+
], xt = [
|
|
3035
3035
|
{
|
|
3036
3036
|
id: "sql-line-comment",
|
|
3037
3037
|
description: "SQL line comment: -- followed by whitespace or end of string",
|
|
@@ -3047,22 +3047,22 @@ var P = class {
|
|
|
3047
3047
|
description: "Hex-encoded string injection: 0x41414141 style (MySQL)",
|
|
3048
3048
|
pattern: /\b0x[0-9a-f]{4,}/i
|
|
3049
3049
|
}
|
|
3050
|
-
],
|
|
3051
|
-
|
|
3052
|
-
HTML:
|
|
3053
|
-
XML:
|
|
3054
|
-
SVG:
|
|
3055
|
-
SQL:
|
|
3056
|
-
"SQL-STRICT":
|
|
3057
|
-
SHELL:
|
|
3058
|
-
REDOS:
|
|
3059
|
-
NOSQL:
|
|
3060
|
-
LOG:
|
|
3050
|
+
], St = [...B, ...xt];
|
|
3051
|
+
R.label = "HTML", z.label = "XML", gt.label = "SVG", B.label = "SQL", St.label = "SQL-STRICT", _t.label = "SHELL", vt.label = "REDOS", yt.label = "NOSQL", bt.label = "LOG", Object.freeze({
|
|
3052
|
+
HTML: R,
|
|
3053
|
+
XML: z,
|
|
3054
|
+
SVG: gt,
|
|
3055
|
+
SQL: B,
|
|
3056
|
+
"SQL-STRICT": St,
|
|
3057
|
+
SHELL: _t,
|
|
3058
|
+
REDOS: vt,
|
|
3059
|
+
NOSQL: yt,
|
|
3060
|
+
LOG: bt
|
|
3061
3061
|
});
|
|
3062
|
-
function
|
|
3062
|
+
function Ct(e) {
|
|
3063
3063
|
if (typeof e != "string") throw TypeError(`is-unsafe: first argument must be a string, got ${typeof e}`);
|
|
3064
3064
|
}
|
|
3065
|
-
function
|
|
3065
|
+
function wt(e) {
|
|
3066
3066
|
if (!(e instanceof RegExp)) {
|
|
3067
3067
|
if (Array.isArray(e)) {
|
|
3068
3068
|
if (e.length === 0) throw TypeError("is-unsafe: context must not be an empty array");
|
|
@@ -3074,7 +3074,7 @@ function kt(e) {
|
|
|
3074
3074
|
throw TypeError(`is-unsafe: second argument must be a PatternList (e.g. HTML), an array of PatternLists (e.g. [HTML, XML]), or a RegExp. Got: ${typeof e}`);
|
|
3075
3075
|
}
|
|
3076
3076
|
}
|
|
3077
|
-
function
|
|
3077
|
+
function Tt(e) {
|
|
3078
3078
|
return e instanceof RegExp ? {
|
|
3079
3079
|
lists: null,
|
|
3080
3080
|
regex: e
|
|
@@ -3086,7 +3086,7 @@ function At(e) {
|
|
|
3086
3086
|
regex: null
|
|
3087
3087
|
};
|
|
3088
3088
|
}
|
|
3089
|
-
function
|
|
3089
|
+
function Et(e, t) {
|
|
3090
3090
|
let n = t.label ?? "CUSTOM";
|
|
3091
3091
|
for (let r of t) if (r.pattern.test(e)) return {
|
|
3092
3092
|
context: n,
|
|
@@ -3096,16 +3096,16 @@ function jt(e, t) {
|
|
|
3096
3096
|
};
|
|
3097
3097
|
return null;
|
|
3098
3098
|
}
|
|
3099
|
-
function
|
|
3100
|
-
|
|
3101
|
-
let { lists: n, regex: r } =
|
|
3099
|
+
function Dt(e, t) {
|
|
3100
|
+
Ct(e), wt(t);
|
|
3101
|
+
let { lists: n, regex: r } = Tt(t);
|
|
3102
3102
|
if (r) return r.test(e);
|
|
3103
|
-
for (let t of n) if (
|
|
3103
|
+
for (let t of n) if (Et(e, t) !== null) return !0;
|
|
3104
3104
|
return !1;
|
|
3105
3105
|
}
|
|
3106
3106
|
//#endregion
|
|
3107
3107
|
//#region ../../node_modules/.pnpm/fast-xml-parser@5.10.0/node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js
|
|
3108
|
-
function
|
|
3108
|
+
function Ot(e, t) {
|
|
3109
3109
|
if (!e) return {};
|
|
3110
3110
|
let n = t.attributesGroupName ? e[t.attributesGroupName] : e;
|
|
3111
3111
|
if (!n) return {};
|
|
@@ -3116,7 +3116,7 @@ function Nt(e, t) {
|
|
|
3116
3116
|
} else r[e] = n[e];
|
|
3117
3117
|
return r;
|
|
3118
3118
|
}
|
|
3119
|
-
function
|
|
3119
|
+
function kt(e) {
|
|
3120
3120
|
if (!e || typeof e != "string") return;
|
|
3121
3121
|
let t = e.indexOf(":");
|
|
3122
3122
|
if (t !== -1 && t > 0) {
|
|
@@ -3124,14 +3124,14 @@ function Pt(e) {
|
|
|
3124
3124
|
if (n !== "xmlns") return n;
|
|
3125
3125
|
}
|
|
3126
3126
|
}
|
|
3127
|
-
var
|
|
3127
|
+
var At = class {
|
|
3128
3128
|
constructor(e, t) {
|
|
3129
|
-
this.options = e, this.currentNode = null, this.tagsNodeStack = [], this.parseXml =
|
|
3129
|
+
this.options = e, this.currentNode = null, this.tagsNodeStack = [], this.parseXml = Ft, this.parseTextData = jt, this.resolveNameSpace = Mt, this.buildAttributesMap = Pt, this.isItStopNode = zt, this.replaceEntitiesValue = Lt, this.readStopNodeData = Ut, this.saveTextToParentTag = Rt, this.addChild = It, this.ignoreAttributesFn = pt(this.options.ignoreAttributes), this.entityExpansionCount = 0, this.currentExpandedLength = 0;
|
|
3130
3130
|
let n = { ...we };
|
|
3131
3131
|
this.options.entityDecoder ? this.entityDecoder = this.options.entityDecoder : (typeof this.options.htmlEntities == "object" ? n = this.options.htmlEntities : this.options.htmlEntities === !0 && (n = {
|
|
3132
3132
|
...Te,
|
|
3133
3133
|
...xe
|
|
3134
|
-
}), this.entityDecoder = new
|
|
3134
|
+
}), this.entityDecoder = new je({
|
|
3135
3135
|
namedEntities: {
|
|
3136
3136
|
...n,
|
|
3137
3137
|
...t
|
|
@@ -3142,27 +3142,27 @@ var Ft = class {
|
|
|
3142
3142
|
maxExpandedLength: this.options.processEntities.maxExpandedLength,
|
|
3143
3143
|
applyLimitsTo: this.options.processEntities.appliesTo
|
|
3144
3144
|
},
|
|
3145
|
-
onInputEntity: (e, t) =>
|
|
3146
|
-
})), this.matcher = new
|
|
3145
|
+
onInputEntity: (e, t) => Dt(t, [R, z]) ? x.BLOCK : x.ALLOW
|
|
3146
|
+
})), this.matcher = new L(), this.readonlyMatcher = this.matcher.readOnly(), this.isCurrentNodeStopNode = !1, this.stopNodeExpressionsSet = new mt();
|
|
3147
3147
|
let r = this.options.stopNodes;
|
|
3148
3148
|
if (r && r.length > 0) {
|
|
3149
3149
|
for (let e = 0; e < r.length; e++) {
|
|
3150
3150
|
let t = r[e];
|
|
3151
|
-
typeof t == "string" ? this.stopNodeExpressionsSet.add(new
|
|
3151
|
+
typeof t == "string" ? this.stopNodeExpressionsSet.add(new I(t)) : t instanceof I && this.stopNodeExpressionsSet.add(t);
|
|
3152
3152
|
}
|
|
3153
3153
|
this.stopNodeExpressionsSet.seal();
|
|
3154
3154
|
}
|
|
3155
3155
|
}
|
|
3156
3156
|
};
|
|
3157
|
-
function
|
|
3157
|
+
function jt(e, t, n, r, i, a, o) {
|
|
3158
3158
|
let s = this.options;
|
|
3159
3159
|
if (e !== void 0 && (s.trimValues && !r && (e = e.trim()), e.length > 0)) {
|
|
3160
3160
|
o || (e = this.replaceEntitiesValue(e, t, n));
|
|
3161
3161
|
let r = s.jPath ? n.toString() : n, c = s.tagValueProcessor(t, e, r, i, a);
|
|
3162
|
-
return c == null ? e : typeof c != typeof e || c !== e ? c : s.trimValues || e.trim() === e ?
|
|
3162
|
+
return c == null ? e : typeof c != typeof e || c !== e ? c : s.trimValues || e.trim() === e ? Wt(e, s.parseTagValue, s.numberParseOptions) : e;
|
|
3163
3163
|
}
|
|
3164
3164
|
}
|
|
3165
|
-
function
|
|
3165
|
+
function Mt(e) {
|
|
3166
3166
|
if (this.options.removeNSPrefix) {
|
|
3167
3167
|
let t = e.split(":"), n = e.charAt(0) === "/" ? "/" : "";
|
|
3168
3168
|
if (t[0] === "xmlns") return "";
|
|
@@ -3170,11 +3170,11 @@ function Lt(e) {
|
|
|
3170
3170
|
}
|
|
3171
3171
|
return e;
|
|
3172
3172
|
}
|
|
3173
|
-
var
|
|
3174
|
-
function
|
|
3173
|
+
var Nt = /* @__PURE__ */ RegExp("([^\\s=]+)\\s*(=\\s*(['\"])([\\s\\S]*?)\\3)?", "gm");
|
|
3174
|
+
function Pt(e, t, n, r = !1) {
|
|
3175
3175
|
let i = this.options;
|
|
3176
3176
|
if (r === !0 || i.ignoreAttributes !== !0 && typeof e == "string") {
|
|
3177
|
-
let r = u(e,
|
|
3177
|
+
let r = u(e, Nt), a = r.length, o = {}, s = Array(a), c = !1, l = {};
|
|
3178
3178
|
for (let e = 0; e < a; e++) {
|
|
3179
3179
|
let t = this.resolveNameSpace(r[e][1]), a = r[e][4];
|
|
3180
3180
|
if (t.length && a !== void 0) {
|
|
@@ -3188,9 +3188,9 @@ function zt(e, t, n, r = !1) {
|
|
|
3188
3188
|
let t = this.resolveNameSpace(r[e][1]);
|
|
3189
3189
|
if (this.ignoreAttributesFn(t, d)) continue;
|
|
3190
3190
|
let n = i.attributeNamePrefix + t;
|
|
3191
|
-
if (t.length) if (i.transformAttributeName && (n = i.transformAttributeName(n)), n =
|
|
3191
|
+
if (t.length) if (i.transformAttributeName && (n = i.transformAttributeName(n)), n = Kt(n, i), r[e][4] !== void 0) {
|
|
3192
3192
|
let r = s[e], a = i.attributeValueProcessor(t, r, d);
|
|
3193
|
-
a == null ? o[n] = r : typeof a != typeof r || a !== r ? o[n] = a : o[n] =
|
|
3193
|
+
a == null ? o[n] = r : typeof a != typeof r || a !== r ? o[n] = a : o[n] = Wt(r, i.parseAttributeValue, i.numberParseOptions), f = !0;
|
|
3194
3194
|
} else i.allowBooleanAttributes && (o[n] = !0, f = !0);
|
|
3195
3195
|
}
|
|
3196
3196
|
if (!f) return;
|
|
@@ -3201,25 +3201,25 @@ function zt(e, t, n, r = !1) {
|
|
|
3201
3201
|
return o;
|
|
3202
3202
|
}
|
|
3203
3203
|
}
|
|
3204
|
-
var
|
|
3204
|
+
var Ft = function(e) {
|
|
3205
3205
|
e = e.replace(/\r\n?/g, "\n");
|
|
3206
|
-
let t = new
|
|
3206
|
+
let t = new D("!xml"), n = t, r = "";
|
|
3207
3207
|
this.matcher.reset(), this.entityDecoder.reset(), this.entityExpansionCount = 0, this.currentExpandedLength = 0;
|
|
3208
|
-
let i = this.options, a = new
|
|
3208
|
+
let i = this.options, a = new Ye(i.processEntities), o = e.length;
|
|
3209
3209
|
for (let s = 0; s < o; s++) if (e[s] === "<") {
|
|
3210
3210
|
let c = e.charCodeAt(s + 1);
|
|
3211
3211
|
if (c === 47) {
|
|
3212
|
-
let t =
|
|
3212
|
+
let t = H(e, ">", s, "Closing Tag is not closed."), a = e.substring(s + 2, t).trim();
|
|
3213
3213
|
if (i.removeNSPrefix) {
|
|
3214
3214
|
let e = a.indexOf(":");
|
|
3215
3215
|
e !== -1 && (a = a.substr(e + 1));
|
|
3216
3216
|
}
|
|
3217
|
-
a =
|
|
3217
|
+
a = Gt(i.transformTagName, a, "", i).tagName, n && (r = this.saveTextToParentTag(r, n, this.readonlyMatcher));
|
|
3218
3218
|
let o = this.matcher.getCurrentTag();
|
|
3219
3219
|
if (a && i.unpairedTagsSet.has(a)) throw Error(`Unpaired tag can not be used as closing tag: </${a}>`);
|
|
3220
3220
|
o && i.unpairedTagsSet.has(o) && (this.matcher.pop(), this.tagsNodeStack.pop()), this.matcher.pop(), this.isCurrentNodeStopNode = !1, n = this.tagsNodeStack.pop(), r = "", s = t;
|
|
3221
3221
|
} else if (c === 63) {
|
|
3222
|
-
let t =
|
|
3222
|
+
let t = Ht(e, s, !1, "?>");
|
|
3223
3223
|
if (!t) throw Error("Pi Tag is not closed.");
|
|
3224
3224
|
r = this.saveTextToParentTag(r, n, this.readonlyMatcher);
|
|
3225
3225
|
let o = this.buildAttributesMap(t.tagExp, this.matcher, t.tagName, !0);
|
|
@@ -3228,12 +3228,12 @@ var Bt = function(e) {
|
|
|
3228
3228
|
this.entityDecoder.setXmlVersion(Number(e) || 1), a.setXmlVersion(Number(e) || 1);
|
|
3229
3229
|
}
|
|
3230
3230
|
if (!(i.ignoreDeclaration && t.tagName === "?xml" || i.ignorePiTags)) {
|
|
3231
|
-
let e = new
|
|
3231
|
+
let e = new D(t.tagName);
|
|
3232
3232
|
e.add(i.textNodeName, ""), t.tagName !== t.tagExp && t.attrExpPresent && i.ignoreAttributes !== !0 && (e[":@"] = o), this.addChild(n, e, this.readonlyMatcher, s);
|
|
3233
3233
|
}
|
|
3234
3234
|
s = t.closeIndex + 1;
|
|
3235
3235
|
} else if (c === 33 && e.charCodeAt(s + 2) === 45 && e.charCodeAt(s + 3) === 45) {
|
|
3236
|
-
let t =
|
|
3236
|
+
let t = H(e, "-->", s + 4, "Comment is not closed.");
|
|
3237
3237
|
if (i.commentPropName) {
|
|
3238
3238
|
let a = e.substring(s + 4, t - 2);
|
|
3239
3239
|
r = this.saveTextToParentTag(r, n, this.readonlyMatcher), n.add(i.commentPropName, [{ [i.textNodeName]: a }]);
|
|
@@ -3243,25 +3243,25 @@ var Bt = function(e) {
|
|
|
3243
3243
|
let t = a.readDocType(e, s);
|
|
3244
3244
|
this.entityDecoder.addInputEntities(t.entities), s = t.i;
|
|
3245
3245
|
} else if (c === 33 && e.charCodeAt(s + 2) === 91) {
|
|
3246
|
-
let t =
|
|
3246
|
+
let t = H(e, "]]>", s, "CDATA is not closed.") - 2, a = e.substring(s + 9, t);
|
|
3247
3247
|
r = this.saveTextToParentTag(r, n, this.readonlyMatcher);
|
|
3248
3248
|
let o = this.parseTextData(a, n.tagname, this.readonlyMatcher, !0, !1, !0, !0);
|
|
3249
3249
|
o ??= "", i.cdataPropName ? n.add(i.cdataPropName, [{ [i.textNodeName]: a }]) : n.add(i.textNodeName, o), s = t + 2;
|
|
3250
3250
|
} else {
|
|
3251
|
-
let a =
|
|
3251
|
+
let a = Ht(e, s, i.removeNSPrefix);
|
|
3252
3252
|
if (!a) {
|
|
3253
3253
|
let t = e.substring(Math.max(0, s - 50), Math.min(o, s + 50));
|
|
3254
3254
|
throw Error(`readTagExp returned undefined at position ${s}. Context: "${t}"`);
|
|
3255
3255
|
}
|
|
3256
3256
|
let c = a.tagName, l = a.rawTagName, u = a.tagExp, d = a.attrExpPresent, f = a.closeIndex;
|
|
3257
|
-
if ({tagName: c, tagExp: u} =
|
|
3257
|
+
if ({tagName: c, tagExp: u} = Gt(i.transformTagName, c, u, i), i.strictReservedNames && (c === i.commentPropName || c === i.cdataPropName || c === i.textNodeName || c === i.attributesGroupName)) throw Error(`Invalid tag name: ${c}`);
|
|
3258
3258
|
n && r && n.tagname !== "!xml" && (r = this.saveTextToParentTag(r, n, this.readonlyMatcher, !1));
|
|
3259
3259
|
let p = n;
|
|
3260
3260
|
p && i.unpairedTagsSet.has(p.tagname) && (n = this.tagsNodeStack.pop(), this.matcher.pop());
|
|
3261
3261
|
let m = !1;
|
|
3262
3262
|
u.length > 0 && u.lastIndexOf("/") === u.length - 1 && (m = !0, c[c.length - 1] === "/" ? (c = c.substr(0, c.length - 1), u = c) : u = u.substr(0, u.length - 1), d = c !== u);
|
|
3263
3263
|
let h = null, g;
|
|
3264
|
-
g =
|
|
3264
|
+
g = kt(l), c !== t.tagname && this.matcher.push(c, {}, g), c !== u && d && (h = this.buildAttributesMap(u, this.matcher, c), h && Ot(h, i)), c !== t.tagname && (this.isCurrentNodeStopNode = this.isItStopNode());
|
|
3265
3265
|
let _ = s;
|
|
3266
3266
|
if (this.isCurrentNodeStopNode) {
|
|
3267
3267
|
let t = "";
|
|
@@ -3272,19 +3272,19 @@ var Bt = function(e) {
|
|
|
3272
3272
|
if (!n) throw Error(`Unexpected end of ${l}`);
|
|
3273
3273
|
s = n.i, t = n.tagContent;
|
|
3274
3274
|
}
|
|
3275
|
-
let r = new
|
|
3275
|
+
let r = new D(c);
|
|
3276
3276
|
h && (r[":@"] = h), r.add(i.textNodeName, t), this.matcher.pop(), this.isCurrentNodeStopNode = !1, this.addChild(n, r, this.readonlyMatcher, _);
|
|
3277
3277
|
} else {
|
|
3278
3278
|
if (m) {
|
|
3279
|
-
({tagName: c, tagExp: u} =
|
|
3280
|
-
let e = new
|
|
3279
|
+
({tagName: c, tagExp: u} = Gt(i.transformTagName, c, u, i));
|
|
3280
|
+
let e = new D(c);
|
|
3281
3281
|
h && (e[":@"] = h), this.addChild(n, e, this.readonlyMatcher, _), this.matcher.pop(), this.isCurrentNodeStopNode = !1;
|
|
3282
3282
|
} else if (i.unpairedTagsSet.has(c)) {
|
|
3283
|
-
let e = new
|
|
3283
|
+
let e = new D(c);
|
|
3284
3284
|
h && (e[":@"] = h), this.addChild(n, e, this.readonlyMatcher, _), this.matcher.pop(), this.isCurrentNodeStopNode = !1, s = a.closeIndex;
|
|
3285
3285
|
continue;
|
|
3286
3286
|
} else {
|
|
3287
|
-
let e = new
|
|
3287
|
+
let e = new D(c);
|
|
3288
3288
|
if (this.tagsNodeStack.length > i.maxNestedTags) throw Error("Maximum nested tags exceeded");
|
|
3289
3289
|
this.tagsNodeStack.push(n), h && (e[":@"] = h), this.addChild(n, e, this.readonlyMatcher, _), n = e;
|
|
3290
3290
|
}
|
|
@@ -3294,12 +3294,12 @@ var Bt = function(e) {
|
|
|
3294
3294
|
} else r += e[s];
|
|
3295
3295
|
return t.child;
|
|
3296
3296
|
};
|
|
3297
|
-
function
|
|
3297
|
+
function It(e, t, n, r) {
|
|
3298
3298
|
this.options.captureMetaData || (r = void 0);
|
|
3299
3299
|
let i = this.options.jPath ? n.toString() : n, a = this.options.updateTag(t.tagname, i, t[":@"]);
|
|
3300
3300
|
a === !1 || (typeof a == "string" && (t.tagname = a), e.addChild(t, r));
|
|
3301
3301
|
}
|
|
3302
|
-
function
|
|
3302
|
+
function Lt(e, t, n) {
|
|
3303
3303
|
let r = this.options.processEntities;
|
|
3304
3304
|
if (!r || !r.enabled) return e;
|
|
3305
3305
|
if (r.allowedTags) {
|
|
@@ -3312,13 +3312,13 @@ function Ht(e, t, n) {
|
|
|
3312
3312
|
}
|
|
3313
3313
|
return this.entityDecoder.decode(e);
|
|
3314
3314
|
}
|
|
3315
|
-
function
|
|
3315
|
+
function Rt(e, t, n, r) {
|
|
3316
3316
|
return e &&= (r === void 0 && (r = t.child.length === 0), e = this.parseTextData(e, t.tagname, n, !1, t[":@"] ? Object.keys(t[":@"]).length !== 0 : !1, r), e !== void 0 && e !== "" && t.add(this.options.textNodeName, e), ""), e;
|
|
3317
3317
|
}
|
|
3318
|
-
function
|
|
3318
|
+
function zt() {
|
|
3319
3319
|
return this.stopNodeExpressionsSet.size === 0 ? !1 : this.matcher.matchesAny(this.stopNodeExpressionsSet);
|
|
3320
3320
|
}
|
|
3321
|
-
function
|
|
3321
|
+
function Bt(e, t, n = ">") {
|
|
3322
3322
|
let r = 0, i = e.length, a = n.charCodeAt(0), o = n.length > 1 ? n.charCodeAt(1) : -1, s = "", c = t;
|
|
3323
3323
|
for (let n = t; n < i; n++) {
|
|
3324
3324
|
let t = e.charCodeAt(n);
|
|
@@ -3336,18 +3336,18 @@ function Gt(e, t, n = ">") {
|
|
|
3336
3336
|
else t === 9 && !r && (s += e.substring(c, n) + " ", c = n + 1);
|
|
3337
3337
|
}
|
|
3338
3338
|
}
|
|
3339
|
-
function
|
|
3339
|
+
function H(e, t, n, r) {
|
|
3340
3340
|
let i = e.indexOf(t, n);
|
|
3341
3341
|
if (i === -1) throw Error(r);
|
|
3342
3342
|
return i + t.length - 1;
|
|
3343
3343
|
}
|
|
3344
|
-
function
|
|
3344
|
+
function Vt(e, t, n, r) {
|
|
3345
3345
|
let i = e.indexOf(t, n);
|
|
3346
3346
|
if (i === -1) throw Error(r);
|
|
3347
3347
|
return i;
|
|
3348
3348
|
}
|
|
3349
|
-
function
|
|
3350
|
-
let i =
|
|
3349
|
+
function Ht(e, t, n, r = ">") {
|
|
3350
|
+
let i = Bt(e, t + 1, r);
|
|
3351
3351
|
if (!i) return;
|
|
3352
3352
|
let a = i.data, o = i.index, s = a.search(/\s/), c = a, l = !0;
|
|
3353
3353
|
s !== -1 && (c = a.substring(0, s), a = a.substring(s + 1).trimStart());
|
|
@@ -3364,51 +3364,51 @@ function qt(e, t, n, r = ">") {
|
|
|
3364
3364
|
rawTagName: u
|
|
3365
3365
|
};
|
|
3366
3366
|
}
|
|
3367
|
-
function
|
|
3367
|
+
function Ut(e, t, n) {
|
|
3368
3368
|
let r = n, i = 1, a = e.length;
|
|
3369
3369
|
for (; n < a; n++) if (e[n] === "<") {
|
|
3370
3370
|
let a = e.charCodeAt(n + 1);
|
|
3371
3371
|
if (a === 47) {
|
|
3372
|
-
let a =
|
|
3372
|
+
let a = Vt(e, ">", n, `${t} is not closed`);
|
|
3373
3373
|
if (e.substring(n + 2, a).trim() === t && (i--, i === 0)) return {
|
|
3374
3374
|
tagContent: e.substring(r, n),
|
|
3375
3375
|
i: a
|
|
3376
3376
|
};
|
|
3377
3377
|
n = a;
|
|
3378
|
-
} else if (a === 63) n =
|
|
3379
|
-
else if (a === 33 && e.charCodeAt(n + 2) === 45 && e.charCodeAt(n + 3) === 45) n =
|
|
3380
|
-
else if (a === 33 && e.charCodeAt(n + 2) === 91) n =
|
|
3378
|
+
} else if (a === 63) n = H(e, "?>", n + 1, "StopNode is not closed.");
|
|
3379
|
+
else if (a === 33 && e.charCodeAt(n + 2) === 45 && e.charCodeAt(n + 3) === 45) n = H(e, "-->", n + 3, "StopNode is not closed.");
|
|
3380
|
+
else if (a === 33 && e.charCodeAt(n + 2) === 91) n = H(e, "]]>", n, "StopNode is not closed.") - 2;
|
|
3381
3381
|
else {
|
|
3382
|
-
let r =
|
|
3382
|
+
let r = Ht(e, n, !1);
|
|
3383
3383
|
r && ((r && r.tagName) === t && r.tagExp[r.tagExp.length - 1] !== "/" && i++, n = r.closeIndex);
|
|
3384
3384
|
}
|
|
3385
3385
|
}
|
|
3386
3386
|
}
|
|
3387
|
-
function
|
|
3387
|
+
function Wt(e, t, n) {
|
|
3388
3388
|
if (t && typeof e == "string") {
|
|
3389
3389
|
let t = e.trim();
|
|
3390
|
-
return t === "true" ? !0 : t === "false" ? !1 :
|
|
3390
|
+
return t === "true" ? !0 : t === "false" ? !1 : ct(e, n);
|
|
3391
3391
|
} else if (f(e)) return e;
|
|
3392
3392
|
else return "";
|
|
3393
3393
|
}
|
|
3394
|
-
function
|
|
3394
|
+
function Gt(e, t, n, r) {
|
|
3395
3395
|
if (e) {
|
|
3396
3396
|
let r = e(t);
|
|
3397
3397
|
n === t && (n = r), t = r;
|
|
3398
3398
|
}
|
|
3399
|
-
return t =
|
|
3399
|
+
return t = Kt(t, r), {
|
|
3400
3400
|
tagName: t,
|
|
3401
3401
|
tagExp: n
|
|
3402
3402
|
};
|
|
3403
3403
|
}
|
|
3404
|
-
function
|
|
3404
|
+
function Kt(e, t) {
|
|
3405
3405
|
if (m.includes(e)) throw Error(`[SECURITY] Invalid name: "${e}" is a reserved JavaScript keyword that could cause prototype pollution`);
|
|
3406
3406
|
return p.includes(e) ? t.onDangerousProperty(e) : e;
|
|
3407
3407
|
}
|
|
3408
3408
|
//#endregion
|
|
3409
3409
|
//#region ../../node_modules/.pnpm/fast-xml-parser@5.10.0/node_modules/fast-xml-parser/src/xmlparser/node2json.js
|
|
3410
|
-
var
|
|
3411
|
-
function
|
|
3410
|
+
var qt = D.getMetaDataSymbol();
|
|
3411
|
+
function Jt(e, t) {
|
|
3412
3412
|
if (!e || typeof e != "object") return {};
|
|
3413
3413
|
if (!t) return e;
|
|
3414
3414
|
let n = {};
|
|
@@ -3418,22 +3418,22 @@ function Qt(e, t) {
|
|
|
3418
3418
|
} else n[r] = e[r];
|
|
3419
3419
|
return n;
|
|
3420
3420
|
}
|
|
3421
|
-
function
|
|
3422
|
-
return
|
|
3421
|
+
function Yt(e, t, n, r) {
|
|
3422
|
+
return Xt(e, t, n, r);
|
|
3423
3423
|
}
|
|
3424
|
-
function
|
|
3424
|
+
function Xt(e, t, n, r) {
|
|
3425
3425
|
let i, a = {};
|
|
3426
3426
|
for (let o = 0; o < e.length; o++) {
|
|
3427
|
-
let s = e[o], c =
|
|
3427
|
+
let s = e[o], c = Zt(s);
|
|
3428
3428
|
if (c !== void 0 && c !== t.textNodeName) {
|
|
3429
|
-
let e =
|
|
3429
|
+
let e = Jt(s[":@"] || {}, t.attributeNamePrefix);
|
|
3430
3430
|
n.push(c, e);
|
|
3431
3431
|
}
|
|
3432
3432
|
if (c === t.textNodeName) i === void 0 ? i = s[c] : i += "" + s[c];
|
|
3433
3433
|
else if (c === void 0) continue;
|
|
3434
3434
|
else if (s[c]) {
|
|
3435
|
-
let e =
|
|
3436
|
-
if (Object.keys(e).length === 0 && t.alwaysCreateTextNode && (e[t.textNodeName] = ""), s[":@"] ?
|
|
3435
|
+
let e = Xt(s[c], t, n, r), i = $t(e, t);
|
|
3436
|
+
if (Object.keys(e).length === 0 && t.alwaysCreateTextNode && (e[t.textNodeName] = ""), s[":@"] ? Qt(e, s[":@"], r, t) : Object.keys(e).length === 1 && e[t.textNodeName] !== void 0 && !t.alwaysCreateTextNode ? e = e[t.textNodeName] : Object.keys(e).length === 0 && (t.alwaysCreateTextNode ? e[t.textNodeName] = "" : e = ""), s[qt] !== void 0 && typeof e == "object" && e && (e[qt] = s[qt]), a[c] !== void 0 && Object.prototype.hasOwnProperty.call(a, c)) Array.isArray(a[c]) || (a[c] = [a[c]]), a[c].push(e);
|
|
3437
3437
|
else {
|
|
3438
3438
|
let n = t.jPath ? r.toString() : r;
|
|
3439
3439
|
t.isArray(c, n, i) ? a[c] = [e] : a[c] = e;
|
|
@@ -3443,14 +3443,14 @@ function en(e, t, n, r) {
|
|
|
3443
3443
|
}
|
|
3444
3444
|
return typeof i == "string" ? i.length > 0 && (a[t.textNodeName] = i) : i !== void 0 && (a[t.textNodeName] = i), a;
|
|
3445
3445
|
}
|
|
3446
|
-
function
|
|
3446
|
+
function Zt(e) {
|
|
3447
3447
|
let t = Object.keys(e);
|
|
3448
3448
|
for (let e = 0; e < t.length; e++) {
|
|
3449
3449
|
let n = t[e];
|
|
3450
3450
|
if (n !== ":@") return n;
|
|
3451
3451
|
}
|
|
3452
3452
|
}
|
|
3453
|
-
function
|
|
3453
|
+
function Qt(e, t, n, r) {
|
|
3454
3454
|
if (t) {
|
|
3455
3455
|
let i = Object.keys(t), a = i.length;
|
|
3456
3456
|
for (let o = 0; o < a; o++) {
|
|
@@ -3459,15 +3459,15 @@ function nn(e, t, n, r) {
|
|
|
3459
3459
|
}
|
|
3460
3460
|
}
|
|
3461
3461
|
}
|
|
3462
|
-
function
|
|
3462
|
+
function $t(e, t) {
|
|
3463
3463
|
let { textNodeName: n } = t, r = Object.keys(e).length;
|
|
3464
3464
|
return !!(r === 0 || r === 1 && (e[n] || typeof e[n] == "boolean" || e[n] === 0));
|
|
3465
3465
|
}
|
|
3466
3466
|
//#endregion
|
|
3467
3467
|
//#region ../../node_modules/.pnpm/fast-xml-parser@5.10.0/node_modules/fast-xml-parser/src/xmlparser/XMLParser.js
|
|
3468
|
-
var
|
|
3468
|
+
var en = class {
|
|
3469
3469
|
constructor(e) {
|
|
3470
|
-
this.externalEntities = {}, this.options =
|
|
3470
|
+
this.externalEntities = {}, this.options = Ie(e);
|
|
3471
3471
|
}
|
|
3472
3472
|
parse(e, t) {
|
|
3473
3473
|
if (typeof e != "string" && e.toString) e = e.toString();
|
|
@@ -3477,8 +3477,8 @@ var an = class {
|
|
|
3477
3477
|
let n = g(e, t);
|
|
3478
3478
|
if (n !== !0) throw Error(`${n.err.msg}:${n.err.line}:${n.err.col}`);
|
|
3479
3479
|
}
|
|
3480
|
-
let n = new
|
|
3481
|
-
return this.options.preserveOrder || r === void 0 ? r :
|
|
3480
|
+
let n = new At(this.options, this.externalEntities), r = n.parseXml(e);
|
|
3481
|
+
return this.options.preserveOrder || r === void 0 ? r : Yt(r, this.options, n.matcher, n.readonlyMatcher);
|
|
3482
3482
|
}
|
|
3483
3483
|
addEntity(e, t) {
|
|
3484
3484
|
if (t.indexOf("&") !== -1) throw Error("Entity value can't have '&'");
|
|
@@ -3487,27 +3487,27 @@ var an = class {
|
|
|
3487
3487
|
this.externalEntities[e] = t;
|
|
3488
3488
|
}
|
|
3489
3489
|
static getMetaDataSymbol() {
|
|
3490
|
-
return
|
|
3490
|
+
return D.getMetaDataSymbol();
|
|
3491
3491
|
}
|
|
3492
3492
|
};
|
|
3493
3493
|
//#endregion
|
|
3494
3494
|
//#region ../../node_modules/.pnpm/fast-xml-builder@1.3.0/node_modules/fast-xml-builder/src/util.js
|
|
3495
|
-
function
|
|
3495
|
+
function tn(e) {
|
|
3496
3496
|
return String(e).replace(/--/g, "- -").replace(/--/g, "- -").replace(/-$/, "- ");
|
|
3497
3497
|
}
|
|
3498
|
-
function
|
|
3498
|
+
function nn(e) {
|
|
3499
3499
|
return String(e).replace(/\]\]>/g, "]]]]><![CDATA[>");
|
|
3500
3500
|
}
|
|
3501
|
-
function
|
|
3501
|
+
function U(e) {
|
|
3502
3502
|
return String(e).replace(/"/g, """).replace(/'/g, "'");
|
|
3503
3503
|
}
|
|
3504
3504
|
//#endregion
|
|
3505
3505
|
//#region ../../node_modules/.pnpm/fast-xml-builder@1.3.0/node_modules/fast-xml-builder/src/orderedJs2Xml.js
|
|
3506
|
-
var
|
|
3507
|
-
function
|
|
3506
|
+
var rn = "\n";
|
|
3507
|
+
function an(e, t) {
|
|
3508
3508
|
if (!Array.isArray(e) || e.length === 0) return "1.0";
|
|
3509
3509
|
let n = e[0];
|
|
3510
|
-
if (
|
|
3510
|
+
if (fn(n) === "?xml") {
|
|
3511
3511
|
let e = n[":@"];
|
|
3512
3512
|
if (e) {
|
|
3513
3513
|
let n = t.attributeNamePrefix + "version";
|
|
@@ -3516,121 +3516,121 @@ function cn(e, t) {
|
|
|
3516
3516
|
}
|
|
3517
3517
|
return "1.0";
|
|
3518
3518
|
}
|
|
3519
|
-
function
|
|
3519
|
+
function on(e, t, n, r, i) {
|
|
3520
3520
|
return !n.sanitizeName || i(e) ? e : n.sanitizeName(e, {
|
|
3521
3521
|
isAttribute: t,
|
|
3522
3522
|
matcher: r.readOnly()
|
|
3523
3523
|
});
|
|
3524
3524
|
}
|
|
3525
|
-
function
|
|
3525
|
+
function sn(e, t) {
|
|
3526
3526
|
let n = "";
|
|
3527
|
-
t.format && (n =
|
|
3527
|
+
t.format && (n = rn);
|
|
3528
3528
|
let r = [];
|
|
3529
3529
|
if (t.stopNodes && Array.isArray(t.stopNodes)) for (let e = 0; e < t.stopNodes.length; e++) {
|
|
3530
3530
|
let n = t.stopNodes[e];
|
|
3531
|
-
typeof n == "string" ? r.push(new
|
|
3531
|
+
typeof n == "string" ? r.push(new I(n)) : n instanceof I && r.push(n);
|
|
3532
3532
|
}
|
|
3533
|
-
let i =
|
|
3534
|
-
return
|
|
3533
|
+
let i = Je("qName", { xmlVersion: an(e, t) }), a = new L();
|
|
3534
|
+
return cn(e, t, n, a, r, i);
|
|
3535
3535
|
}
|
|
3536
|
-
function
|
|
3536
|
+
function cn(e, t, n, r, i, a) {
|
|
3537
3537
|
let o = "", s = !1;
|
|
3538
3538
|
if (t.maxNestedTags && r.getDepth() > t.maxNestedTags) throw Error("Maximum nested tags exceeded");
|
|
3539
3539
|
if (!Array.isArray(e)) {
|
|
3540
3540
|
if (e != null) {
|
|
3541
3541
|
let n = e.toString();
|
|
3542
|
-
return n =
|
|
3542
|
+
return n = hn(n, t), n;
|
|
3543
3543
|
}
|
|
3544
3544
|
return "";
|
|
3545
3545
|
}
|
|
3546
3546
|
for (let c = 0; c < e.length; c++) {
|
|
3547
|
-
let l = e[c], u =
|
|
3547
|
+
let l = e[c], u = fn(l);
|
|
3548
3548
|
if (u === void 0) continue;
|
|
3549
|
-
let d = u === t.textNodeName || u === t.cdataPropName || u === t.commentPropName || u[0] === "?" ? u :
|
|
3549
|
+
let d = u === t.textNodeName || u === t.cdataPropName || u === t.commentPropName || u[0] === "?" ? u : on(u, !1, t, r, a), f = ln(l[":@"], t);
|
|
3550
3550
|
r.push(d, f);
|
|
3551
|
-
let p =
|
|
3551
|
+
let p = mn(r, i);
|
|
3552
3552
|
if (d === t.textNodeName) {
|
|
3553
3553
|
let e = l[u];
|
|
3554
|
-
p || (e = t.tagValueProcessor(d, e), e =
|
|
3554
|
+
p || (e = t.tagValueProcessor(d, e), e = hn(e, t)), s && (o += n), o += e, s = !1, r.pop();
|
|
3555
3555
|
continue;
|
|
3556
3556
|
} else if (d === t.cdataPropName) {
|
|
3557
3557
|
s && (o += n);
|
|
3558
|
-
let e = l[u][0][t.textNodeName], i =
|
|
3558
|
+
let e = l[u][0][t.textNodeName], i = nn(e);
|
|
3559
3559
|
o += `<![CDATA[${i}]]>`, s = !1, r.pop();
|
|
3560
3560
|
continue;
|
|
3561
3561
|
} else if (d === t.commentPropName) {
|
|
3562
|
-
let e = l[u][0][t.textNodeName], i =
|
|
3562
|
+
let e = l[u][0][t.textNodeName], i = tn(e);
|
|
3563
3563
|
o += n + `<!--${i}-->`, s = !0, r.pop();
|
|
3564
3564
|
continue;
|
|
3565
3565
|
} else if (d[0] === "?") {
|
|
3566
|
-
let e =
|
|
3566
|
+
let e = pn(l[":@"], t, p, r, a);
|
|
3567
3567
|
o += (d === "?xml" ? "" : n) + `<${d}${e}?>`, s = !0, r.pop();
|
|
3568
3568
|
continue;
|
|
3569
3569
|
}
|
|
3570
3570
|
let m = n;
|
|
3571
3571
|
m !== "" && (m += t.indentBy);
|
|
3572
|
-
let h = n + `<${d}${
|
|
3573
|
-
g = p ?
|
|
3572
|
+
let h = n + `<${d}${pn(l[":@"], t, p, r, a)}`, g;
|
|
3573
|
+
g = p ? un(l[u], t) : cn(l[u], t, m, r, i, a), t.unpairedTags.indexOf(d) === -1 ? (!g || g.length === 0) && t.suppressEmptyNode ? o += h + "/>" : g && g.endsWith(">") ? o += h + `>${g}${n}</${d}>` : (o += h + ">", g && n !== "" && (g.includes("/>") || g.includes("</")) ? o += n + t.indentBy + g + n : o += g, o += `</${d}>`) : t.suppressUnpairedNode ? o += h + ">" : o += h + "/>", s = !0, r.pop();
|
|
3574
3574
|
}
|
|
3575
3575
|
return o;
|
|
3576
3576
|
}
|
|
3577
|
-
function
|
|
3577
|
+
function ln(e, t) {
|
|
3578
3578
|
if (!e || t.ignoreAttributes) return null;
|
|
3579
3579
|
let n = {}, r = !1;
|
|
3580
3580
|
for (let i in e) {
|
|
3581
3581
|
if (!Object.prototype.hasOwnProperty.call(e, i)) continue;
|
|
3582
3582
|
let a = i.startsWith(t.attributeNamePrefix) ? i.substr(t.attributeNamePrefix.length) : i;
|
|
3583
|
-
n[a] =
|
|
3583
|
+
n[a] = U(e[i]), r = !0;
|
|
3584
3584
|
}
|
|
3585
3585
|
return r ? n : null;
|
|
3586
3586
|
}
|
|
3587
|
-
function
|
|
3587
|
+
function un(e, t) {
|
|
3588
3588
|
if (!Array.isArray(e)) return e == null ? "" : e.toString();
|
|
3589
3589
|
let n = "";
|
|
3590
3590
|
for (let r = 0; r < e.length; r++) {
|
|
3591
|
-
let i = e[r], a =
|
|
3591
|
+
let i = e[r], a = fn(i);
|
|
3592
3592
|
if (a === t.textNodeName) n += i[a];
|
|
3593
3593
|
else if (a === t.cdataPropName) n += i[a][0][t.textNodeName];
|
|
3594
3594
|
else if (a === t.commentPropName) n += i[a][0][t.textNodeName];
|
|
3595
3595
|
else if (a && a[0] === "?") continue;
|
|
3596
3596
|
else if (a) {
|
|
3597
|
-
let e =
|
|
3597
|
+
let e = dn(i[":@"], t), r = un(i[a], t);
|
|
3598
3598
|
!r || r.length === 0 ? n += `<${a}${e}/>` : n += `<${a}${e}>${r}</${a}>`;
|
|
3599
3599
|
}
|
|
3600
3600
|
}
|
|
3601
3601
|
return n;
|
|
3602
3602
|
}
|
|
3603
|
-
function
|
|
3603
|
+
function dn(e, t) {
|
|
3604
3604
|
let n = "";
|
|
3605
3605
|
if (e && !t.ignoreAttributes) for (let r in e) {
|
|
3606
3606
|
if (!Object.prototype.hasOwnProperty.call(e, r)) continue;
|
|
3607
3607
|
let i = e[r];
|
|
3608
|
-
i === !0 && t.suppressBooleanAttributes ? n += ` ${r.substr(t.attributeNamePrefix.length)}` : n += ` ${r.substr(t.attributeNamePrefix.length)}="${
|
|
3608
|
+
i === !0 && t.suppressBooleanAttributes ? n += ` ${r.substr(t.attributeNamePrefix.length)}` : n += ` ${r.substr(t.attributeNamePrefix.length)}="${U(i)}"`;
|
|
3609
3609
|
}
|
|
3610
3610
|
return n;
|
|
3611
3611
|
}
|
|
3612
|
-
function
|
|
3612
|
+
function fn(e) {
|
|
3613
3613
|
let t = Object.keys(e);
|
|
3614
3614
|
for (let n = 0; n < t.length; n++) {
|
|
3615
3615
|
let r = t[n];
|
|
3616
3616
|
if (Object.prototype.hasOwnProperty.call(e, r) && r !== ":@") return r;
|
|
3617
3617
|
}
|
|
3618
3618
|
}
|
|
3619
|
-
function
|
|
3619
|
+
function pn(e, t, n, r, i) {
|
|
3620
3620
|
let a = "";
|
|
3621
3621
|
if (e && !t.ignoreAttributes) for (let o in e) {
|
|
3622
3622
|
if (!Object.prototype.hasOwnProperty.call(e, o)) continue;
|
|
3623
|
-
let s = o.substr(t.attributeNamePrefix.length), c = n ? s :
|
|
3624
|
-
n ? l = e[o] : (l = t.attributeValueProcessor(o, e[o]), l =
|
|
3623
|
+
let s = o.substr(t.attributeNamePrefix.length), c = n ? s : on(s, !0, t, r, i), l;
|
|
3624
|
+
n ? l = e[o] : (l = t.attributeValueProcessor(o, e[o]), l = hn(l, t)), l === !0 && t.suppressBooleanAttributes ? a += ` ${c}` : a += ` ${c}="${U(l)}"`;
|
|
3625
3625
|
}
|
|
3626
3626
|
return a;
|
|
3627
3627
|
}
|
|
3628
|
-
function
|
|
3628
|
+
function mn(e, t) {
|
|
3629
3629
|
if (!t || t.length === 0) return !1;
|
|
3630
3630
|
for (let n = 0; n < t.length; n++) if (e.matches(t[n])) return !0;
|
|
3631
3631
|
return !1;
|
|
3632
3632
|
}
|
|
3633
|
-
function
|
|
3633
|
+
function hn(e, t) {
|
|
3634
3634
|
if (e && e.length > 0 && t.processEntities) for (let n = 0; n < t.entities.length; n++) {
|
|
3635
3635
|
let r = t.entities[n];
|
|
3636
3636
|
e = e.replace(r.regex, r.val);
|
|
@@ -3639,14 +3639,14 @@ function H(e, t) {
|
|
|
3639
3639
|
}
|
|
3640
3640
|
//#endregion
|
|
3641
3641
|
//#region ../../node_modules/.pnpm/fast-xml-builder@1.3.0/node_modules/fast-xml-builder/src/ignoreAttributes.js
|
|
3642
|
-
function
|
|
3642
|
+
function gn(e) {
|
|
3643
3643
|
return typeof e == "function" ? e : Array.isArray(e) ? (t) => {
|
|
3644
3644
|
for (let n of e) if (typeof n == "string" && t === n || n instanceof RegExp && n.test(t)) return !0;
|
|
3645
3645
|
} : () => !1;
|
|
3646
3646
|
}
|
|
3647
3647
|
//#endregion
|
|
3648
3648
|
//#region ../../node_modules/.pnpm/fast-xml-builder@1.3.0/node_modules/fast-xml-builder/src/fxb.js
|
|
3649
|
-
var
|
|
3649
|
+
var _n = {
|
|
3650
3650
|
attributeNamePrefix: "@_",
|
|
3651
3651
|
attributesGroupName: !1,
|
|
3652
3652
|
textNodeName: "#text",
|
|
@@ -3695,18 +3695,18 @@ var vn = {
|
|
|
3695
3695
|
jPath: !0,
|
|
3696
3696
|
sanitizeName: !1
|
|
3697
3697
|
};
|
|
3698
|
-
function
|
|
3699
|
-
if (this.options = Object.assign({},
|
|
3698
|
+
function W(e) {
|
|
3699
|
+
if (this.options = Object.assign({}, _n, e), this.options.stopNodes && Array.isArray(this.options.stopNodes) && (this.options.stopNodes = this.options.stopNodes.map((e) => typeof e == "string" && e.startsWith("*.") ? ".." + e.substring(2) : e)), this.stopNodeExpressions = [], this.options.stopNodes && Array.isArray(this.options.stopNodes)) for (let e = 0; e < this.options.stopNodes.length; e++) {
|
|
3700
3700
|
let t = this.options.stopNodes[e];
|
|
3701
|
-
typeof t == "string" ? this.stopNodeExpressions.push(new
|
|
3701
|
+
typeof t == "string" ? this.stopNodeExpressions.push(new I(t)) : t instanceof I && this.stopNodeExpressions.push(t);
|
|
3702
3702
|
}
|
|
3703
3703
|
this.options.ignoreAttributes === !0 || this.options.attributesGroupName ? this.isAttribute = function() {
|
|
3704
3704
|
return !1;
|
|
3705
|
-
} : (this.ignoreAttributesFn =
|
|
3705
|
+
} : (this.ignoreAttributesFn = gn(this.options.ignoreAttributes), this.attrPrefixLen = this.options.attributeNamePrefix.length, this.isAttribute = Sn), this.processTextOrObjNode = bn, this.options.format ? (this.indentate = xn, this.tagEndChar = ">\n", this.newLine = "\n") : (this.indentate = function() {
|
|
3706
3706
|
return "";
|
|
3707
3707
|
}, this.tagEndChar = ">", this.newLine = "");
|
|
3708
3708
|
}
|
|
3709
|
-
function
|
|
3709
|
+
function vn(e, t) {
|
|
3710
3710
|
let n = e["?xml"];
|
|
3711
3711
|
if (n && typeof n == "object") {
|
|
3712
3712
|
if (t.attributesGroupName && n[t.attributesGroupName]) {
|
|
@@ -3718,33 +3718,33 @@ function yn(e, t) {
|
|
|
3718
3718
|
}
|
|
3719
3719
|
return "1.0";
|
|
3720
3720
|
}
|
|
3721
|
-
function
|
|
3721
|
+
function yn(e, t, n, r, i) {
|
|
3722
3722
|
return !n.sanitizeName || i(e) ? e : n.sanitizeName(e, {
|
|
3723
3723
|
isAttribute: t,
|
|
3724
3724
|
matcher: r.readOnly()
|
|
3725
3725
|
});
|
|
3726
3726
|
}
|
|
3727
|
-
|
|
3728
|
-
if (this.options.preserveOrder) return
|
|
3727
|
+
W.prototype.build = function(e) {
|
|
3728
|
+
if (this.options.preserveOrder) return sn(e, this.options);
|
|
3729
3729
|
{
|
|
3730
3730
|
Array.isArray(e) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1 && (e = { [this.options.arrayNodeName]: e });
|
|
3731
|
-
let t = new
|
|
3731
|
+
let t = new L(), n = Je("qName", { xmlVersion: vn(e, this.options) });
|
|
3732
3732
|
return this.j2x(e, 0, t, n).val;
|
|
3733
3733
|
}
|
|
3734
|
-
},
|
|
3734
|
+
}, W.prototype.j2x = function(e, t, n, r) {
|
|
3735
3735
|
let i = "", a = "";
|
|
3736
3736
|
if (this.options.maxNestedTags && n.getDepth() >= this.options.maxNestedTags) throw Error("Maximum nested tags exceeded");
|
|
3737
3737
|
let o = this.options.jPath ? n.toString() : n, s = this.checkStopNode(n);
|
|
3738
3738
|
for (let c in e) {
|
|
3739
3739
|
if (!Object.prototype.hasOwnProperty.call(e, c)) continue;
|
|
3740
|
-
let l = c === this.options.textNodeName || c === this.options.cdataPropName || c === this.options.commentPropName || this.options.attributesGroupName && c === this.options.attributesGroupName || this.isAttribute(c) || c[0] === "?" ? c :
|
|
3740
|
+
let l = c === this.options.textNodeName || c === this.options.cdataPropName || c === this.options.commentPropName || this.options.attributesGroupName && c === this.options.attributesGroupName || this.isAttribute(c) || c[0] === "?" ? c : yn(c, !1, this.options, n, r);
|
|
3741
3741
|
if (e[c] === void 0) this.isAttribute(c) && (a += "");
|
|
3742
3742
|
else if (e[c] === null) this.isAttribute(c) || l === this.options.cdataPropName || l === this.options.commentPropName ? a += "" : l[0] === "?" ? a += this.indentate(t) + "<" + l + "?" + this.tagEndChar : a += this.indentate(t) + "<" + l + "/" + this.tagEndChar;
|
|
3743
3743
|
else if (e[c] instanceof Date) a += this.buildTextValNode(e[c], l, "", t, n);
|
|
3744
3744
|
else if (typeof e[c] != "object") {
|
|
3745
3745
|
let u = this.isAttribute(c);
|
|
3746
3746
|
if (u && !this.ignoreAttributesFn(u, o)) {
|
|
3747
|
-
let t =
|
|
3747
|
+
let t = yn(u, !0, this.options, n, r);
|
|
3748
3748
|
i += this.buildAttrPairStr(t, "" + e[c], s);
|
|
3749
3749
|
} else if (!u) if (c === this.options.textNodeName) {
|
|
3750
3750
|
let t = this.options.tagValueProcessor(c, "" + e[c]);
|
|
@@ -3783,7 +3783,7 @@ U.prototype.build = function(e) {
|
|
|
3783
3783
|
} else if (this.options.attributesGroupName && c === this.options.attributesGroupName) {
|
|
3784
3784
|
let t = Object.keys(e[c]), a = t.length;
|
|
3785
3785
|
for (let o = 0; o < a; o++) {
|
|
3786
|
-
let a =
|
|
3786
|
+
let a = yn(t[o], !0, this.options, n, r);
|
|
3787
3787
|
i += this.buildAttrPairStr(a, "" + e[c][t[o]], s);
|
|
3788
3788
|
}
|
|
3789
3789
|
} else a += this.processTextOrObjNode(e[c], l, t, n, r);
|
|
@@ -3792,8 +3792,8 @@ U.prototype.build = function(e) {
|
|
|
3792
3792
|
attrStr: i,
|
|
3793
3793
|
val: a
|
|
3794
3794
|
};
|
|
3795
|
-
},
|
|
3796
|
-
return n || (t = this.options.attributeValueProcessor(e, "" + t), t = this.replaceEntitiesValue(t)), this.options.suppressBooleanAttributes && t === "true" ? " " + e : " " + e + "=\"" +
|
|
3795
|
+
}, W.prototype.buildAttrPairStr = function(e, t, n) {
|
|
3796
|
+
return n || (t = this.options.attributeValueProcessor(e, "" + t), t = this.replaceEntitiesValue(t)), this.options.suppressBooleanAttributes && t === "true" ? " " + e : " " + e + "=\"" + U(t) + "\"";
|
|
3797
3797
|
};
|
|
3798
3798
|
function bn(e, t, n, r, i) {
|
|
3799
3799
|
let a = this.extractAttributes(e);
|
|
@@ -3804,7 +3804,7 @@ function bn(e, t, n, r, i) {
|
|
|
3804
3804
|
let o = this.j2x(e, n + 1, r, i);
|
|
3805
3805
|
return r.pop(), t[0] === "?" ? this.buildTextValNode("", t, o.attrStr, n, r) : e[this.options.textNodeName] !== void 0 && Object.keys(e).length === 1 ? this.buildTextValNode(e[this.options.textNodeName], t, o.attrStr, n, r) : this.buildObjectNode(o.val, t, o.attrStr, n);
|
|
3806
3806
|
}
|
|
3807
|
-
|
|
3807
|
+
W.prototype.extractAttributes = function(e) {
|
|
3808
3808
|
if (!e || typeof e != "object") return null;
|
|
3809
3809
|
let t = {}, n = !1;
|
|
3810
3810
|
if (this.options.attributesGroupName && e[this.options.attributesGroupName]) {
|
|
@@ -3812,15 +3812,15 @@ U.prototype.extractAttributes = function(e) {
|
|
|
3812
3812
|
for (let e in r) {
|
|
3813
3813
|
if (!Object.prototype.hasOwnProperty.call(r, e)) continue;
|
|
3814
3814
|
let i = e.startsWith(this.options.attributeNamePrefix) ? e.substring(this.options.attributeNamePrefix.length) : e;
|
|
3815
|
-
t[i] =
|
|
3815
|
+
t[i] = U(r[e]), n = !0;
|
|
3816
3816
|
}
|
|
3817
3817
|
} else for (let r in e) {
|
|
3818
3818
|
if (!Object.prototype.hasOwnProperty.call(e, r)) continue;
|
|
3819
3819
|
let i = this.isAttribute(r);
|
|
3820
|
-
i && (t[i] =
|
|
3820
|
+
i && (t[i] = U(e[r]), n = !0);
|
|
3821
3821
|
}
|
|
3822
3822
|
return n ? t : null;
|
|
3823
|
-
},
|
|
3823
|
+
}, W.prototype.buildRawContent = function(e) {
|
|
3824
3824
|
if (typeof e == "string") return e;
|
|
3825
3825
|
if (typeof e != "object" || !e) return String(e);
|
|
3826
3826
|
if (e[this.options.textNodeName] !== void 0) return e[this.options.textNodeName];
|
|
@@ -3841,7 +3841,7 @@ U.prototype.extractAttributes = function(e) {
|
|
|
3841
3841
|
} else t += `<${n}>${r}</${n}>`;
|
|
3842
3842
|
}
|
|
3843
3843
|
return t;
|
|
3844
|
-
},
|
|
3844
|
+
}, W.prototype.buildAttributesForStopNode = function(e) {
|
|
3845
3845
|
if (!e || typeof e != "object") return "";
|
|
3846
3846
|
let t = "";
|
|
3847
3847
|
if (this.options.attributesGroupName && e[this.options.attributesGroupName]) {
|
|
@@ -3849,44 +3849,44 @@ U.prototype.extractAttributes = function(e) {
|
|
|
3849
3849
|
for (let e in n) {
|
|
3850
3850
|
if (!Object.prototype.hasOwnProperty.call(n, e)) continue;
|
|
3851
3851
|
let r = e.startsWith(this.options.attributeNamePrefix) ? e.substring(this.options.attributeNamePrefix.length) : e, i = n[e];
|
|
3852
|
-
i === !0 && this.options.suppressBooleanAttributes ? t += " " + r : t += " " + r + "=\"" +
|
|
3852
|
+
i === !0 && this.options.suppressBooleanAttributes ? t += " " + r : t += " " + r + "=\"" + U(i) + "\"";
|
|
3853
3853
|
}
|
|
3854
3854
|
} else for (let n in e) {
|
|
3855
3855
|
if (!Object.prototype.hasOwnProperty.call(e, n)) continue;
|
|
3856
3856
|
let r = this.isAttribute(n);
|
|
3857
3857
|
if (r) {
|
|
3858
3858
|
let i = e[n];
|
|
3859
|
-
i === !0 && this.options.suppressBooleanAttributes ? t += " " + r : t += " " + r + "=\"" +
|
|
3859
|
+
i === !0 && this.options.suppressBooleanAttributes ? t += " " + r : t += " " + r + "=\"" + U(i) + "\"";
|
|
3860
3860
|
}
|
|
3861
3861
|
}
|
|
3862
3862
|
return t;
|
|
3863
|
-
},
|
|
3863
|
+
}, W.prototype.buildObjectNode = function(e, t, n, r) {
|
|
3864
3864
|
if (e === "") return t[0] === "?" ? this.indentate(r) + "<" + t + n + "?" + this.tagEndChar : this.indentate(r) + "<" + t + n + this.closeTag(t) + this.tagEndChar;
|
|
3865
3865
|
if (t[0] === "?") return this.indentate(r) + "<" + t + n + "?" + this.tagEndChar;
|
|
3866
3866
|
{
|
|
3867
3867
|
let i = "</" + t + this.tagEndChar, a = "";
|
|
3868
|
-
return t[0] === "?" && (a = "?", i = ""), (n || n === "") && e.indexOf("<") === -1 ? this.indentate(r) + "<" + t + n + a + ">" + e + i : this.options.commentPropName !== !1 && t === this.options.commentPropName && a.length === 0 ? this.indentate(r) + `<!--${
|
|
3868
|
+
return t[0] === "?" && (a = "?", i = ""), (n || n === "") && e.indexOf("<") === -1 ? this.indentate(r) + "<" + t + n + a + ">" + e + i : this.options.commentPropName !== !1 && t === this.options.commentPropName && a.length === 0 ? this.indentate(r) + `<!--${tn(e)}-->` + this.newLine : this.indentate(r) + "<" + t + n + a + this.tagEndChar + e + this.indentate(r) + i;
|
|
3869
3869
|
}
|
|
3870
|
-
},
|
|
3870
|
+
}, W.prototype.closeTag = function(e) {
|
|
3871
3871
|
let t = "";
|
|
3872
3872
|
return this.options.unpairedTags.indexOf(e) === -1 ? t = this.options.suppressEmptyNode ? "/" : `></${e}` : this.options.suppressUnpairedNode || (t = "/"), t;
|
|
3873
|
-
},
|
|
3873
|
+
}, W.prototype.checkStopNode = function(e) {
|
|
3874
3874
|
if (!this.stopNodeExpressions || this.stopNodeExpressions.length === 0) return !1;
|
|
3875
3875
|
for (let t = 0; t < this.stopNodeExpressions.length; t++) if (e.matches(this.stopNodeExpressions[t])) return !0;
|
|
3876
3876
|
return !1;
|
|
3877
|
-
},
|
|
3877
|
+
}, W.prototype.buildTextValNode = function(e, t, n, r, i) {
|
|
3878
3878
|
if (this.options.cdataPropName !== !1 && t === this.options.cdataPropName) {
|
|
3879
|
-
let t =
|
|
3879
|
+
let t = nn(e);
|
|
3880
3880
|
return this.indentate(r) + `<![CDATA[${t}]]>` + this.newLine;
|
|
3881
3881
|
} else if (this.options.commentPropName !== !1 && t === this.options.commentPropName) {
|
|
3882
|
-
let t =
|
|
3882
|
+
let t = tn(e);
|
|
3883
3883
|
return this.indentate(r) + `<!--${t}-->` + this.newLine;
|
|
3884
3884
|
} else if (t[0] === "?") return this.indentate(r) + "<" + t + n + "?" + this.tagEndChar;
|
|
3885
3885
|
else {
|
|
3886
3886
|
let i = this.options.tagValueProcessor(t, e);
|
|
3887
3887
|
return i = this.replaceEntitiesValue(i), i === "" ? this.indentate(r) + "<" + t + n + this.closeTag(t) + this.tagEndChar : this.indentate(r) + "<" + t + n + ">" + i + "</" + t + this.tagEndChar;
|
|
3888
3888
|
}
|
|
3889
|
-
},
|
|
3889
|
+
}, W.prototype.replaceEntitiesValue = function(e) {
|
|
3890
3890
|
if (e && e.length > 0 && this.options.processEntities) for (let t = 0; t < this.options.entities.length; t++) {
|
|
3891
3891
|
let n = this.options.entities[t];
|
|
3892
3892
|
e = e.replace(n.regex, n.val);
|
|
@@ -3901,7 +3901,7 @@ function Sn(e) {
|
|
|
3901
3901
|
}
|
|
3902
3902
|
//#endregion
|
|
3903
3903
|
//#region ../../node_modules/.pnpm/fast-xml-parser@5.10.0/node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js
|
|
3904
|
-
var Cn =
|
|
3904
|
+
var Cn = W, G = e.object({
|
|
3905
3905
|
created_at: e.string(),
|
|
3906
3906
|
updated_at: e.string()
|
|
3907
3907
|
}), wn = e.object({
|
|
@@ -4211,6 +4211,7 @@ Xn.extend({
|
|
|
4211
4211
|
provider: e.string().optional(),
|
|
4212
4212
|
connection: e.string(),
|
|
4213
4213
|
is_social: e.boolean().optional(),
|
|
4214
|
+
blocked: e.boolean().optional(),
|
|
4214
4215
|
registration_completed_at: e.string().optional(),
|
|
4215
4216
|
password: e.object({
|
|
4216
4217
|
hash: e.string(),
|
|
@@ -4729,8 +4730,8 @@ var Or = e.object({
|
|
|
4729
4730
|
strategy: e.string(),
|
|
4730
4731
|
options: e.preprocess((e) => e === null ? {} : Dr(e), Er).default({}),
|
|
4731
4732
|
enabled_clients: e.array(e.string()).default([]).optional(),
|
|
4732
|
-
response_type: e.
|
|
4733
|
-
response_mode: e.
|
|
4733
|
+
response_type: e.nativeEnum(yr).optional(),
|
|
4734
|
+
response_mode: e.nativeEnum(br).optional(),
|
|
4734
4735
|
is_domain_connection: e.boolean().optional(),
|
|
4735
4736
|
show_as_button: e.boolean().optional(),
|
|
4736
4737
|
metadata: e.record(e.string(), e.any()).optional(),
|
|
@@ -4928,7 +4929,9 @@ var Mr = e.object({
|
|
|
4928
4929
|
type: e.literal("EMAIL"),
|
|
4929
4930
|
config: e.object({
|
|
4930
4931
|
placeholder: e.string().optional(),
|
|
4931
|
-
default_value: e.string().optional()
|
|
4932
|
+
default_value: e.string().optional(),
|
|
4933
|
+
last_used: e.boolean().optional(),
|
|
4934
|
+
last_used_label: e.string().optional()
|
|
4932
4935
|
}).optional()
|
|
4933
4936
|
}), $r = Y.extend({
|
|
4934
4937
|
type: e.literal("FILE"),
|
|
@@ -4976,7 +4979,9 @@ var Mr = e.object({
|
|
|
4976
4979
|
strategy: e.string().optional(),
|
|
4977
4980
|
display_name: e.string().optional(),
|
|
4978
4981
|
icon_url: e.string().optional(),
|
|
4979
|
-
href: e.string().optional()
|
|
4982
|
+
href: e.string().optional(),
|
|
4983
|
+
last_used: e.boolean().optional(),
|
|
4984
|
+
last_used_label: e.string().optional()
|
|
4980
4985
|
})).optional()
|
|
4981
4986
|
}).optional()
|
|
4982
4987
|
}), ai = Y.extend({
|
|
@@ -4993,7 +4998,9 @@ var Mr = e.object({
|
|
|
4993
4998
|
placeholder: e.string().optional(),
|
|
4994
4999
|
multiline: e.boolean().optional(),
|
|
4995
5000
|
max_length: e.number().optional(),
|
|
4996
|
-
default_value: e.string().optional()
|
|
5001
|
+
default_value: e.string().optional(),
|
|
5002
|
+
last_used: e.boolean().optional(),
|
|
5003
|
+
last_used_label: e.string().optional()
|
|
4997
5004
|
}).optional()
|
|
4998
5005
|
}), si = Y.extend({
|
|
4999
5006
|
type: e.literal("COUNTRY"),
|
|
@@ -6070,6 +6077,7 @@ e.object({
|
|
|
6070
6077
|
universal_login_experience: e.enum(["new", "classic"]).default("new"),
|
|
6071
6078
|
identifier_first: e.boolean().default(!0),
|
|
6072
6079
|
password_first: e.boolean().default(!1),
|
|
6080
|
+
show_last_used_connection: e.boolean().default(!1),
|
|
6073
6081
|
webauthn_platform_first_factor: e.boolean()
|
|
6074
6082
|
});
|
|
6075
6083
|
var pa = e.object({
|
|
@@ -6096,14 +6104,43 @@ ha.extend({
|
|
|
6096
6104
|
}), ha.partial().omit({
|
|
6097
6105
|
id: !0,
|
|
6098
6106
|
custom_domain_id: !0
|
|
6099
|
-
})
|
|
6107
|
+
});
|
|
6108
|
+
var ga = e.object({
|
|
6109
|
+
scim: e.string(),
|
|
6110
|
+
auth0: e.string()
|
|
6111
|
+
}), _a = e.object({
|
|
6112
|
+
connection_id: e.string(),
|
|
6113
|
+
user_id_attribute: e.string().default("externalId"),
|
|
6114
|
+
mapping: e.array(ga).default([])
|
|
6115
|
+
});
|
|
6116
|
+
e.object({
|
|
6117
|
+
created_at: e.string(),
|
|
6118
|
+
updated_at: e.string()
|
|
6119
|
+
}).extend(_a.shape);
|
|
6120
|
+
var va = e.object({
|
|
6121
|
+
token_id: e.string(),
|
|
6122
|
+
connection_id: e.string(),
|
|
6123
|
+
token_hash: e.string(),
|
|
6124
|
+
scopes: e.array(e.string()).default([]),
|
|
6125
|
+
valid_until: e.string().optional()
|
|
6126
|
+
});
|
|
6127
|
+
e.object({
|
|
6128
|
+
created_at: e.string(),
|
|
6129
|
+
last_used_at: e.string().optional()
|
|
6130
|
+
}).extend(va.shape);
|
|
6131
|
+
var ya = e.object({
|
|
6132
|
+
connection_id: e.string(),
|
|
6133
|
+
external_id: e.string(),
|
|
6134
|
+
user_id: e.string()
|
|
6135
|
+
});
|
|
6136
|
+
e.object({ created_at: e.string() }).extend(ya.shape), e.object({
|
|
6100
6137
|
name: e.string(),
|
|
6101
6138
|
enabled: e.boolean().optional().default(!0),
|
|
6102
6139
|
default_from_address: e.string().optional(),
|
|
6103
6140
|
credentials: e.record(e.string(), e.unknown()),
|
|
6104
6141
|
settings: e.object({}).optional()
|
|
6105
6142
|
});
|
|
6106
|
-
var
|
|
6143
|
+
var ba = e.enum([
|
|
6107
6144
|
"verify_email",
|
|
6108
6145
|
"verify_email_by_code",
|
|
6109
6146
|
"reset_email",
|
|
@@ -6118,7 +6155,7 @@ var ga = e.enum([
|
|
|
6118
6155
|
"user_invitation"
|
|
6119
6156
|
]);
|
|
6120
6157
|
e.object({
|
|
6121
|
-
template:
|
|
6158
|
+
template: ba,
|
|
6122
6159
|
body: e.string(),
|
|
6123
6160
|
from: e.string(),
|
|
6124
6161
|
subject: e.string(),
|
|
@@ -6156,10 +6193,10 @@ e.object({
|
|
|
6156
6193
|
name: e.string(),
|
|
6157
6194
|
options: e.object({})
|
|
6158
6195
|
});
|
|
6159
|
-
var
|
|
6196
|
+
var xa = e.object({
|
|
6160
6197
|
value: e.string(),
|
|
6161
6198
|
description: e.string().optional()
|
|
6162
|
-
}),
|
|
6199
|
+
}), Sa = e.object({
|
|
6163
6200
|
token_dialect: e.enum(["access_token", "access_token_authz"]).optional(),
|
|
6164
6201
|
enforce_policies: e.boolean().optional(),
|
|
6165
6202
|
allow_skipping_userinfo: e.boolean().optional(),
|
|
@@ -6167,11 +6204,11 @@ var _a = e.object({
|
|
|
6167
6204
|
persist_client_authorization: e.boolean().optional(),
|
|
6168
6205
|
enable_introspection_endpoint: e.boolean().optional(),
|
|
6169
6206
|
mtls: e.object({ bound_access_tokens: e.boolean().optional() }).optional()
|
|
6170
|
-
}),
|
|
6207
|
+
}), Ca = e.object({
|
|
6171
6208
|
id: e.string().optional(),
|
|
6172
6209
|
name: e.string(),
|
|
6173
6210
|
identifier: e.string(),
|
|
6174
|
-
scopes: e.array(
|
|
6211
|
+
scopes: e.array(xa).optional(),
|
|
6175
6212
|
signing_alg: e.string().optional(),
|
|
6176
6213
|
signing_secret: e.string().optional(),
|
|
6177
6214
|
token_lifetime: e.number().default(86400),
|
|
@@ -6179,20 +6216,20 @@ var _a = e.object({
|
|
|
6179
6216
|
skip_consent_for_verifiable_first_party_clients: e.boolean().optional(),
|
|
6180
6217
|
allow_offline_access: e.boolean().optional(),
|
|
6181
6218
|
verificationKey: e.string().optional(),
|
|
6182
|
-
options:
|
|
6219
|
+
options: Sa.optional(),
|
|
6183
6220
|
is_system: e.boolean().optional(),
|
|
6184
6221
|
metadata: e.record(e.string(), e.any()).optional()
|
|
6185
6222
|
}).extend({
|
|
6186
6223
|
created_at: e.string().optional(),
|
|
6187
6224
|
updated_at: e.string().optional()
|
|
6188
6225
|
});
|
|
6189
|
-
e.array(
|
|
6190
|
-
var
|
|
6226
|
+
e.array(Ca);
|
|
6227
|
+
var wa = e.object({
|
|
6191
6228
|
role_id: e.string(),
|
|
6192
6229
|
resource_server_identifier: e.string(),
|
|
6193
6230
|
permission_name: e.string()
|
|
6194
6231
|
}).extend({ created_at: e.string() });
|
|
6195
|
-
e.array(
|
|
6232
|
+
e.array(wa), e.object({
|
|
6196
6233
|
user_id: e.string().openapi({ description: "The id of the user that granted the consent" }),
|
|
6197
6234
|
clientID: e.string().openapi({ description: "The id of the client the grant was issued to" }),
|
|
6198
6235
|
audience: e.string().optional().openapi({ description: "The audience the grant applies to" }),
|
|
@@ -6205,7 +6242,7 @@ e.array(ba), e.object({
|
|
|
6205
6242
|
failed_logins: e.array(e.string()).optional(),
|
|
6206
6243
|
last_password_reset: e.string().optional()
|
|
6207
6244
|
});
|
|
6208
|
-
var
|
|
6245
|
+
var Ta = e.object({
|
|
6209
6246
|
user_id: e.string(),
|
|
6210
6247
|
resource_server_identifier: e.string(),
|
|
6211
6248
|
permission_name: e.string(),
|
|
@@ -6214,8 +6251,8 @@ var xa = e.object({
|
|
|
6214
6251
|
tenant_id: e.string(),
|
|
6215
6252
|
created_at: e.string().optional()
|
|
6216
6253
|
});
|
|
6217
|
-
e.array(
|
|
6218
|
-
var
|
|
6254
|
+
e.array(Ta);
|
|
6255
|
+
var Ea = e.object({
|
|
6219
6256
|
user_id: e.string(),
|
|
6220
6257
|
resource_server_identifier: e.string(),
|
|
6221
6258
|
resource_server_name: e.string(),
|
|
@@ -6224,8 +6261,8 @@ var Sa = e.object({
|
|
|
6224
6261
|
created_at: e.string().optional(),
|
|
6225
6262
|
organization_id: e.string().optional()
|
|
6226
6263
|
});
|
|
6227
|
-
e.array(
|
|
6228
|
-
var
|
|
6264
|
+
e.array(Ea);
|
|
6265
|
+
var Da = e.object({
|
|
6229
6266
|
user_id: e.string(),
|
|
6230
6267
|
role_id: e.string(),
|
|
6231
6268
|
organization_id: e.string().optional()
|
|
@@ -6233,8 +6270,8 @@ var Ca = e.object({
|
|
|
6233
6270
|
tenant_id: e.string(),
|
|
6234
6271
|
created_at: e.string().optional()
|
|
6235
6272
|
});
|
|
6236
|
-
e.array(
|
|
6237
|
-
var
|
|
6273
|
+
e.array(Da);
|
|
6274
|
+
var Oa = e.object({
|
|
6238
6275
|
id: e.string().optional().openapi({ description: "The unique identifier of the role. If not provided, one will be generated." }),
|
|
6239
6276
|
name: e.string().min(1).max(50).openapi({ description: "The name of the role. Cannot include '<' or '>'" }),
|
|
6240
6277
|
description: e.string().max(255).optional().openapi({ description: "The description of the role" }),
|
|
@@ -6245,19 +6282,19 @@ var wa = e.object({
|
|
|
6245
6282
|
created_at: e.string().optional(),
|
|
6246
6283
|
updated_at: e.string().optional()
|
|
6247
6284
|
});
|
|
6248
|
-
e.array(
|
|
6249
|
-
var
|
|
6285
|
+
e.array(Oa);
|
|
6286
|
+
var ka = e.object({
|
|
6250
6287
|
logo_url: e.string().optional().openapi({ description: "URL of the organization's logo" }),
|
|
6251
6288
|
colors: e.object({
|
|
6252
6289
|
primary: e.string().optional().openapi({ description: "Primary color in hex format (e.g., #FF0000)" }),
|
|
6253
6290
|
page_background: e.string().optional().openapi({ description: "Page background color in hex format (e.g., #FFFFFF)" })
|
|
6254
6291
|
}).optional()
|
|
6255
|
-
}).optional(),
|
|
6292
|
+
}).optional(), Aa = e.object({
|
|
6256
6293
|
connection_id: e.string().openapi({ description: "ID of the connection" }),
|
|
6257
6294
|
assign_membership_on_login: e.boolean().default(!1).openapi({ description: "Whether to assign membership to the organization on login" }),
|
|
6258
6295
|
show_as_button: e.boolean().default(!0).openapi({ description: "Whether to show this connection as a button in the login screen" }),
|
|
6259
6296
|
is_signup_enabled: e.boolean().default(!0).openapi({ description: "Whether signup is enabled for this connection" })
|
|
6260
|
-
}),
|
|
6297
|
+
}), ja = e.object({ client_credentials: e.object({
|
|
6261
6298
|
enforce: e.boolean().default(!1).openapi({ description: "Whether to enforce token quota limits" }),
|
|
6262
6299
|
per_day: e.number().min(0).default(0).openapi({ description: "Maximum tokens per day (0 = unlimited)" }),
|
|
6263
6300
|
per_hour: e.number().min(0).default(0).openapi({ description: "Maximum tokens per hour (0 = unlimited)" })
|
|
@@ -6266,15 +6303,15 @@ e.object({
|
|
|
6266
6303
|
id: e.string().optional(),
|
|
6267
6304
|
name: e.string().min(1).regex(/^[a-z0-9_-]+$/, { message: "Organization name must be lowercase and can only contain letters, numbers, hyphens, and underscores" }).openapi({ description: "The name of the organization. Must be lowercase and can only contain letters, numbers, hyphens, and underscores." }),
|
|
6268
6305
|
display_name: e.string().optional().openapi({ description: "The display name of the organization" }),
|
|
6269
|
-
branding:
|
|
6306
|
+
branding: ka,
|
|
6270
6307
|
metadata: e.record(e.string(), e.any()).default({}).optional().openapi({ description: "Custom metadata for the organization" }),
|
|
6271
|
-
enabled_connections: e.array(
|
|
6272
|
-
token_quota:
|
|
6308
|
+
enabled_connections: e.array(Aa).default([]).optional().openapi({ description: "List of enabled connections for the organization" }),
|
|
6309
|
+
token_quota: ja
|
|
6273
6310
|
}).extend(G.shape).extend({
|
|
6274
6311
|
id: e.string(),
|
|
6275
6312
|
name: e.string().min(1).openapi({ description: "The name of the organization" })
|
|
6276
6313
|
});
|
|
6277
|
-
var
|
|
6314
|
+
var Ma = e.object({
|
|
6278
6315
|
connection_id: e.string().openapi({ description: "ID of the tenant-level connection to enable for the org." }),
|
|
6279
6316
|
assign_membership_on_login: e.boolean().optional().default(!1),
|
|
6280
6317
|
show_as_button: e.boolean().optional().default(!0),
|
|
@@ -6287,7 +6324,7 @@ var Oa = e.object({
|
|
|
6287
6324
|
created_at: e.string().optional(),
|
|
6288
6325
|
updated_at: e.string().optional()
|
|
6289
6326
|
});
|
|
6290
|
-
e.array(
|
|
6327
|
+
e.array(Ma), e.object({
|
|
6291
6328
|
user_id: e.string().openapi({ description: "ID of the user" }),
|
|
6292
6329
|
organization_id: e.string().openapi({ description: "ID of the organization" })
|
|
6293
6330
|
}).extend(G.shape).extend({ id: e.string() }), e.object({
|
|
@@ -6426,22 +6463,22 @@ e.array(Oa), e.object({
|
|
|
6426
6463
|
"passwordless",
|
|
6427
6464
|
"enterprise"
|
|
6428
6465
|
]);
|
|
6429
|
-
var
|
|
6466
|
+
var Na = e.object({
|
|
6430
6467
|
name: e.string(),
|
|
6431
6468
|
type: e.string()
|
|
6432
|
-
}),
|
|
6469
|
+
}), Pa = e.object({
|
|
6433
6470
|
elapsed: e.number(),
|
|
6434
6471
|
rows_read: e.number().optional(),
|
|
6435
6472
|
bytes_read: e.number().optional()
|
|
6436
6473
|
});
|
|
6437
6474
|
e.object({
|
|
6438
|
-
meta: e.array(
|
|
6475
|
+
meta: e.array(Na),
|
|
6439
6476
|
data: e.array(e.record(e.string(), e.any())),
|
|
6440
6477
|
rows: e.number(),
|
|
6441
6478
|
rows_before_limit_at_least: e.number().optional(),
|
|
6442
|
-
statistics:
|
|
6479
|
+
statistics: Pa.optional()
|
|
6443
6480
|
});
|
|
6444
|
-
var
|
|
6481
|
+
var Fa = e.enum(/* @__PURE__ */ "login.login-id.login-password.signup.signup-id.signup-password.reset-password.consent.mfa.mfa-push.mfa-otp.mfa-voice.mfa-phone.mfa-webauthn.mfa-email.mfa-recovery-code.status.device-flow.email-verification.email-otp-challenge.organizations.invitation.common.passkeys.captcha.custom-form.login-passwordless.mfa-login-options".split(".")), Ia = e.record(e.string(), e.record(e.string(), e.string())).openapi({
|
|
6445
6482
|
type: "object",
|
|
6446
6483
|
additionalProperties: {
|
|
6447
6484
|
type: "object",
|
|
@@ -6449,11 +6486,11 @@ var ja = e.enum(/* @__PURE__ */ "login.login-id.login-password.signup.signup-id.
|
|
|
6449
6486
|
}
|
|
6450
6487
|
});
|
|
6451
6488
|
e.object({
|
|
6452
|
-
prompt:
|
|
6489
|
+
prompt: Fa,
|
|
6453
6490
|
language: e.string(),
|
|
6454
|
-
custom_text:
|
|
6491
|
+
custom_text: Ia
|
|
6455
6492
|
});
|
|
6456
|
-
var
|
|
6493
|
+
var La = e.enum([
|
|
6457
6494
|
"phone",
|
|
6458
6495
|
"totp",
|
|
6459
6496
|
"email",
|
|
@@ -6461,9 +6498,9 @@ var Na = e.enum([
|
|
|
6461
6498
|
"webauthn-roaming",
|
|
6462
6499
|
"webauthn-platform",
|
|
6463
6500
|
"passkey"
|
|
6464
|
-
]),
|
|
6501
|
+
]), Ra = e.object({
|
|
6465
6502
|
user_id: e.string(),
|
|
6466
|
-
type:
|
|
6503
|
+
type: La,
|
|
6467
6504
|
phone_number: e.string().optional(),
|
|
6468
6505
|
totp_secret: e.string().optional(),
|
|
6469
6506
|
credential_id: e.string().optional(),
|
|
@@ -6474,7 +6511,7 @@ var Na = e.enum([
|
|
|
6474
6511
|
friendly_name: e.string().optional(),
|
|
6475
6512
|
confirmed: e.boolean().default(!1)
|
|
6476
6513
|
});
|
|
6477
|
-
function
|
|
6514
|
+
function za(t, n) {
|
|
6478
6515
|
t.type === "phone" && !t.phone_number && n.addIssue({
|
|
6479
6516
|
code: e.ZodIssueCode.custom,
|
|
6480
6517
|
message: "phone_number is required when type is 'phone'",
|
|
@@ -6497,51 +6534,51 @@ function Fa(t, n) {
|
|
|
6497
6534
|
path: ["public_key"]
|
|
6498
6535
|
}));
|
|
6499
6536
|
}
|
|
6500
|
-
|
|
6537
|
+
Ra.superRefine(za), Ra.extend({
|
|
6501
6538
|
id: e.string(),
|
|
6502
6539
|
created_at: e.string(),
|
|
6503
6540
|
updated_at: e.string()
|
|
6504
|
-
}).superRefine(
|
|
6541
|
+
}).superRefine(za), e.object({
|
|
6505
6542
|
id: e.string().optional(),
|
|
6506
6543
|
created_at: e.string().datetime({ offset: !0 }).optional(),
|
|
6507
6544
|
updated_at: e.string().datetime({ offset: !0 }).optional()
|
|
6508
6545
|
});
|
|
6509
|
-
function
|
|
6546
|
+
function Ba(e) {
|
|
6510
6547
|
let t = atob(e), n = new Uint8Array(t.length);
|
|
6511
6548
|
for (let e = 0; e < t.length; e++) n[e] = t.charCodeAt(e);
|
|
6512
6549
|
return n;
|
|
6513
6550
|
}
|
|
6514
6551
|
//#endregion
|
|
6515
6552
|
//#region ../../node_modules/.pnpm/nanoid@5.1.11/node_modules/nanoid/url-alphabet/index.js
|
|
6516
|
-
var
|
|
6553
|
+
var Va = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict", Ha = (e = 21) => {
|
|
6517
6554
|
let t = "", n = crypto.getRandomValues(new Uint8Array(e |= 0));
|
|
6518
|
-
for (; e--;) t +=
|
|
6555
|
+
for (; e--;) t += Va[n[e] & 63];
|
|
6519
6556
|
return t;
|
|
6520
6557
|
};
|
|
6521
6558
|
//#endregion
|
|
6522
6559
|
//#region src/helpers.ts
|
|
6523
|
-
async function
|
|
6560
|
+
async function Ua(e) {
|
|
6524
6561
|
let t = new DecompressionStream("deflate-raw"), n = new Uint8Array(e), r = new Blob([n]).stream().pipeThrough(t);
|
|
6525
6562
|
return new Uint8Array(await new Response(r).arrayBuffer());
|
|
6526
6563
|
}
|
|
6527
|
-
async function
|
|
6528
|
-
let t =
|
|
6564
|
+
async function Wa(e) {
|
|
6565
|
+
let t = Ba(e.replace(/ /g, "+"));
|
|
6529
6566
|
try {
|
|
6530
|
-
let e = await
|
|
6567
|
+
let e = await Ua(t);
|
|
6531
6568
|
return new TextDecoder().decode(e);
|
|
6532
6569
|
} catch (e) {
|
|
6533
6570
|
return console.warn("Decompression failed, assuming data is not compressed:", e), new TextDecoder().decode(t);
|
|
6534
6571
|
}
|
|
6535
6572
|
}
|
|
6536
|
-
async function
|
|
6537
|
-
let t = await
|
|
6573
|
+
async function Ga(e) {
|
|
6574
|
+
let t = await Wa(e), n = new en({
|
|
6538
6575
|
attributeNamePrefix: "@_",
|
|
6539
6576
|
alwaysCreateTextNode: !0,
|
|
6540
6577
|
ignoreAttributes: !1
|
|
6541
6578
|
}).parse(t);
|
|
6542
6579
|
return r.parse(n);
|
|
6543
6580
|
}
|
|
6544
|
-
function
|
|
6581
|
+
function Ka(e) {
|
|
6545
6582
|
let t = e.certificates.map((e) => ({
|
|
6546
6583
|
"@_use": "signing",
|
|
6547
6584
|
KeyInfo: {
|
|
@@ -6615,8 +6652,8 @@ function Ha(e) {
|
|
|
6615
6652
|
attributeNamePrefix: "@_"
|
|
6616
6653
|
}).build(n);
|
|
6617
6654
|
}
|
|
6618
|
-
async function
|
|
6619
|
-
let n = e.notBefore || (/* @__PURE__ */ new Date()).toISOString(), r = e.notAfter || new Date(new Date(n).getTime() + 600 * 1e3).toISOString(), i = e.issueInstant || n, a = e.sessionNotOnOrAfter || r, o = e.responseId || `_${
|
|
6655
|
+
async function qa(e, t) {
|
|
6656
|
+
let n = e.notBefore || (/* @__PURE__ */ new Date()).toISOString(), r = e.notAfter || new Date(new Date(n).getTime() + 600 * 1e3).toISOString(), i = e.issueInstant || n, a = e.sessionNotOnOrAfter || r, o = e.responseId || `_${Ha()}`, s = e.assertionId || `_${Ha()}`, c = [{
|
|
6620
6657
|
"samlp:Response": [
|
|
6621
6658
|
{ "saml:Issuer": [{ "#text": e.issuer }] },
|
|
6622
6659
|
{ "samlp:Status": [{
|
|
@@ -6797,7 +6834,7 @@ async function Ua(e, t) {
|
|
|
6797
6834
|
}
|
|
6798
6835
|
//#endregion
|
|
6799
6836
|
//#region src/signers/local.ts
|
|
6800
|
-
var
|
|
6837
|
+
var Ja = "http://www.w3.org/2001/04/xmldsig-more#rsa-sha256", Ya = "http://www.w3.org/2001/04/xmlenc#sha256", Xa = "http://www.w3.org/2001/10/xml-exc-c14n#", Za = class {
|
|
6801
6838
|
async signSAML(e, t, n) {
|
|
6802
6839
|
try {
|
|
6803
6840
|
let r = await import("xml-crypto"), i = r.SignedXml || r.default?.SignedXml;
|
|
@@ -6806,11 +6843,11 @@ var Wa = "http://www.w3.org/2001/04/xmldsig-more#rsa-sha256", Ga = "http://www.w
|
|
|
6806
6843
|
privateKey: t,
|
|
6807
6844
|
publicCert: n
|
|
6808
6845
|
});
|
|
6809
|
-
a.canonicalizationAlgorithm =
|
|
6846
|
+
a.canonicalizationAlgorithm = Xa, a.addReference({
|
|
6810
6847
|
xpath: "(/*[local-name()='Response']/*[local-name()='Assertion'])[1]",
|
|
6811
|
-
digestAlgorithm:
|
|
6812
|
-
transforms: ["http://www.w3.org/2000/09/xmldsig#enveloped-signature",
|
|
6813
|
-
}), a.signatureAlgorithm =
|
|
6848
|
+
digestAlgorithm: Ya,
|
|
6849
|
+
transforms: ["http://www.w3.org/2000/09/xmldsig#enveloped-signature", Xa]
|
|
6850
|
+
}), a.signatureAlgorithm = Ja;
|
|
6814
6851
|
let o = n.replace(/-----BEGIN CERTIFICATE-----|-----END CERTIFICATE-----/g, "").replace(/\s/g, "");
|
|
6815
6852
|
return a.keyInfoProvider = { getKeyInfo: () => `<X509Data><X509Certificate>${o}</X509Certificate></X509Data>` }, a.computeSignature(e, { location: {
|
|
6816
6853
|
reference: "/*[local-name()='Response']/*[local-name()='Assertion']/*[local-name()='Issuer']",
|
|
@@ -6820,7 +6857,7 @@ var Wa = "http://www.w3.org/2001/04/xmldsig-more#rsa-sha256", Ga = "http://www.w
|
|
|
6820
6857
|
throw Error(`Failed to sign SAML locally. Make sure xml-crypto is installed. Error: ${e}`);
|
|
6821
6858
|
}
|
|
6822
6859
|
}
|
|
6823
|
-
},
|
|
6860
|
+
}, Qa = class {
|
|
6824
6861
|
signUrl;
|
|
6825
6862
|
constructor(e) {
|
|
6826
6863
|
this.signUrl = e;
|
|
@@ -6840,4 +6877,4 @@ var Wa = "http://www.w3.org/2001/04/xmldsig-more#rsa-sha256", Ga = "http://www.w
|
|
|
6840
6877
|
}
|
|
6841
6878
|
};
|
|
6842
6879
|
//#endregion
|
|
6843
|
-
export {
|
|
6880
|
+
export { Qa as HttpSamlSigner, Za as LocalSamlSigner, Ka as createSamlMetadata, qa as createSamlResponse, s as dsSignatureSchema, Wa as inflateDecompress, Ua as inflateRaw, Ga as parseSamlRequestQuery, n as samlIssuerSchema, i as samlMetadataResponseSchema, r as samlRequestSchema, c as samlResponseJsonSchema };
|