From d32e92509cf257abe154656c02e4bf2c0e266e80 Mon Sep 17 00:00:00 2001 From: what Date: Sat, 25 May 2024 22:42:00 +0800 Subject: [PATCH] v0.9.8 --- dist/ff-request.js | 250 ++++++++++++++++++++-------------------- dist/ff-request.umd.cjs | 2 +- package.json | 2 +- 3 files changed, 130 insertions(+), 124 deletions(-) diff --git a/dist/ff-request.js b/dist/ff-request.js index 077eceb..ed47c44 100644 --- a/dist/ff-request.js +++ b/dist/ff-request.js @@ -1,6 +1,6 @@ var oe = Object.defineProperty; -var ie = (t, e, r) => e in t ? oe(t, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) : t[e] = r; -var A = (t, e, r) => (ie(t, typeof e != "symbol" ? e + "" : e, r), r), k = (t, e, r) => { +var ae = (t, e, r) => e in t ? oe(t, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) : t[e] = r; +var A = (t, e, r) => (ae(t, typeof e != "symbol" ? e + "" : e, r), r), k = (t, e, r) => { if (!e.has(t)) throw TypeError("Cannot " + r); }; @@ -8,11 +8,11 @@ var h = (t, e, r) => (k(t, e, "read from private field"), r ? r.call(t) : e.get( if (e.has(t)) throw TypeError("Cannot add the same private member more than once"); e instanceof WeakSet ? e.add(t) : e.set(t, r); -}, m = (t, e, r, n) => (k(t, e, "write to private field"), n ? n.call(t, r) : e.set(t, r), r); +}, M = (t, e, r, n) => (k(t, e, "write to private field"), n ? n.call(t, r) : e.set(t, r), r); function te(t) { return t && t.__esModule && Object.prototype.hasOwnProperty.call(t, "default") ? t.default : t; } -function ae(t) { +function ie(t) { if (t.length >= 255) throw new TypeError("Alphabet too long"); for (var e = new Uint8Array(256), r = 0; r < e.length; r++) @@ -24,53 +24,53 @@ function ae(t) { e[v] = n; } var c = t.length, U = t.charAt(0), B = Math.log(c) / Math.log(256), D = Math.log(256) / Math.log(c); - function q(f) { - if (f instanceof Uint8Array || (ArrayBuffer.isView(f) ? f = new Uint8Array(f.buffer, f.byteOffset, f.byteLength) : Array.isArray(f) && (f = Uint8Array.from(f))), !(f instanceof Uint8Array)) + function q(i) { + if (i instanceof Uint8Array || (ArrayBuffer.isView(i) ? i = new Uint8Array(i.buffer, i.byteOffset, i.byteLength) : Array.isArray(i) && (i = Uint8Array.from(i))), !(i instanceof Uint8Array)) throw new TypeError("Expected Uint8Array"); - if (f.length === 0) + if (i.length === 0) return ""; - for (var o = 0, i = 0, g = 0, a = f.length; g !== a && f[g] === 0; ) - g++, o++; - for (var l = (a - g) * D + 1 >>> 0, d = new Uint8Array(l); g !== a; ) { - for (var T = f[g], E = 0, w = l - 1; (T !== 0 || E < i) && w !== -1; w--, E++) + for (var a = 0, s = 0, g = 0, f = i.length; g !== f && i[g] === 0; ) + g++, a++; + for (var l = (f - g) * D + 1 >>> 0, d = new Uint8Array(l); g !== f; ) { + for (var T = i[g], E = 0, w = l - 1; (T !== 0 || E < s) && w !== -1; w--, E++) T += 256 * d[w] >>> 0, d[w] = T % c >>> 0, T = T / c >>> 0; if (T !== 0) throw new Error("Non-zero carry"); - i = E, g++; + s = E, g++; } - for (var s = l - i; s !== l && d[s] === 0; ) - s++; - for (var y = U.repeat(o); s < l; ++s) - y += t.charAt(d[s]); + for (var o = l - s; o !== l && d[o] === 0; ) + o++; + for (var y = U.repeat(a); o < l; ++o) + y += t.charAt(d[o]); return y; } - function x(f) { - if (typeof f != "string") + function x(i) { + if (typeof i != "string") throw new TypeError("Expected String"); - if (f.length === 0) + if (i.length === 0) return new Uint8Array(); - for (var o = 0, i = 0, g = 0; f[o] === U; ) - i++, o++; - for (var a = (f.length - o) * B + 1 >>> 0, l = new Uint8Array(a); f[o]; ) { - var d = e[f.charCodeAt(o)]; + for (var a = 0, s = 0, g = 0; i[a] === U; ) + s++, a++; + for (var f = (i.length - a) * B + 1 >>> 0, l = new Uint8Array(f); i[a]; ) { + var d = e[i.charCodeAt(a)]; if (d === 255) return; - for (var T = 0, E = a - 1; (d !== 0 || T < g) && E !== -1; E--, T++) + for (var T = 0, E = f - 1; (d !== 0 || T < g) && E !== -1; E--, T++) d += c * l[E] >>> 0, l[E] = d % 256 >>> 0, d = d / 256 >>> 0; if (d !== 0) throw new Error("Non-zero carry"); - g = T, o++; + g = T, a++; } - for (var w = a - g; w !== a && l[w] === 0; ) + for (var w = f - g; w !== f && l[w] === 0; ) w++; - for (var s = new Uint8Array(i + (a - w)), y = i; w !== a; ) - s[y++] = l[w++]; - return s; + for (var o = new Uint8Array(s + (f - w)), y = s; w !== f; ) + o[y++] = l[w++]; + return o; } - function p(f) { - var o = x(f); - if (o) - return o; + function p(i) { + var a = x(i); + if (a) + return a; throw new Error("Non-base" + c + " character"); } return { @@ -79,69 +79,69 @@ function ae(t) { decode: p }; } -var fe = ae; +var fe = ie; const he = /* @__PURE__ */ te(fe); var re = {}; (function(t) { (function(e) { e([], function() { - var r = -1, n = -2, u = -3, v = -4, c = -5, U = function(o, i) { - i = i || {}; - var g = i.verbose || !1; - g && console.log("Normalize the JSON Object"), o = typeof o == "string" ? this.JSON.parse(o) : o, g && console.log("Creating a empty dictionary"); - var a = { + var r = -1, n = -2, u = -3, v = -4, c = -5, U = function(a, s) { + s = s || {}; + var g = s.verbose || !1; + g && console.log("Normalize the JSON Object"), a = typeof a == "string" ? this.JSON.parse(a) : a, g && console.log("Creating a empty dictionary"); + var f = { strings: [], integers: [], floats: [] }; g && console.log("Creating the AST"); - var l = function w(s) { - g && console.log("Calling recursiveAstBuilder with " + this.JSON.stringify(s)); - var y = typeof s; - if (s === null) + var l = function w(o) { + g && console.log("Calling recursiveAstBuilder with " + this.JSON.stringify(o)); + var y = typeof o; + if (o === null) return { type: "null", index: u }; - if (typeof s > "u") + if (typeof o > "u") return { type: "undefined", index: c }; - if (s instanceof Array) { + if (o instanceof Array) { var _ = ["@"]; - for (var O in s) - s.hasOwnProperty(O) && _.push(w(s[O])); + for (var O in o) + o.hasOwnProperty(O) && _.push(w(o[O])); return _; } if (y === "object") { var _ = ["$"]; - for (var R in s) - s.hasOwnProperty(R) && (_.push(w(R)), _.push(w(s[R]))); + for (var R in o) + o.hasOwnProperty(R) && (_.push(w(R)), _.push(w(o[R]))); return _; } - if (s === "") + if (o === "") return { type: "empty", index: v }; if (y === "string") { - var P = f.call(a.strings, s); - return P == -1 && (a.strings.push(D(s)), P = a.strings.length - 1), { + var P = i.call(f.strings, o); + return P == -1 && (f.strings.push(D(o)), P = f.strings.length - 1), { type: "strings", index: P }; } - if (y === "number" && s % 1 === 0) { - var P = f.call(a.integers, s); - return P == -1 && (a.integers.push(x(s)), P = a.integers.length - 1), { + if (y === "number" && o % 1 === 0) { + var P = i.call(f.integers, o); + return P == -1 && (f.integers.push(x(o)), P = f.integers.length - 1), { type: "integers", index: P }; } if (y === "number") { - var P = f.call(a.floats, s); - return P == -1 && (a.floats.push(s), P = a.floats.length - 1), { + var P = i.call(f.floats, o); + return P == -1 && (f.floats.push(o), P = f.floats.length - 1), { type: "floats", index: P }; @@ -149,20 +149,20 @@ var re = {}; if (y === "boolean") return { type: "boolean", - index: s ? r : n + index: o ? r : n }; - throw new Error("Unexpected argument of type " + typeof s); - }(o), d = a.strings.length, T = a.integers.length; - a.floats.length, g && console.log("Parsing the dictionary"); - var E = a.strings.join("|"); - return E += "^" + a.integers.join("|"), E += "^" + a.floats.join("|"), g && console.log("Parsing the structure"), E += "^" + function w(s) { - if (g && console.log("Calling a recursiveParser with " + this.JSON.stringify(s)), s instanceof Array) { - var y = s.shift(); - for (var _ in s) - s.hasOwnProperty(_) && (y += w(s[_]) + "|"); + throw new Error("Unexpected argument of type " + typeof o); + }(a), d = f.strings.length, T = f.integers.length; + f.floats.length, g && console.log("Parsing the dictionary"); + var E = f.strings.join("|"); + return E += "^" + f.integers.join("|"), E += "^" + f.floats.join("|"), g && console.log("Parsing the structure"), E += "^" + function w(o) { + if (g && console.log("Calling a recursiveParser with " + this.JSON.stringify(o)), o instanceof Array) { + var y = o.shift(); + for (var _ in o) + o.hasOwnProperty(_) && (y += w(o[_]) + "|"); return (y[y.length - 1] === "|" ? y.slice(0, -1) : y) + "]"; } - var O = s.type, R = s.index; + var O = o.type, R = o.index; if (O === "strings") return x(R); if (O === "integers") @@ -170,7 +170,7 @@ var re = {}; if (O === "floats") return x(d + T + R); if (O === "boolean") - return s.index; + return o.index; if (O === "null") return u; if (O === "undefined") @@ -178,43 +178,43 @@ var re = {}; if (O === "empty") return v; throw new TypeError("The item is alien!"); - }(l), g && console.log("Ending parser"), i.debug ? { - dictionary: a, + }(l), g && console.log("Ending parser"), s.debug ? { + dictionary: f, ast: l, packed: E } : E; - }, B = function(o, i) { - i = i || {}; - var g = o.split("^"); - i.verbose && console.log("Building dictionary"); - var a = [], l = g[0]; + }, B = function(a, s) { + s = s || {}; + var g = a.split("^"); + s.verbose && console.log("Building dictionary"); + var f = [], l = g[0]; if (l !== "") { - l = l.split("|"), i.verbose && console.log("Parse the strings dictionary"); + l = l.split("|"), s.verbose && console.log("Parse the strings dictionary"); for (var d = 0, T = l.length; d < T; d++) - a.push(q(l[d])); + f.push(q(l[d])); } if (l = g[1], l !== "") { - l = l.split("|"), i.verbose && console.log("Parse the integers dictionary"); + l = l.split("|"), s.verbose && console.log("Parse the integers dictionary"); for (var d = 0, T = l.length; d < T; d++) - a.push(p(l[d])); + f.push(p(l[d])); } if (l = g[2], l !== "") { - l = l.split("|"), i.verbose && console.log("Parse the floats dictionary"); + l = l.split("|"), s.verbose && console.log("Parse the floats dictionary"); for (var d = 0, T = l.length; d < T; d++) - a.push(parseFloat(l[d])); + f.push(parseFloat(l[d])); } - l = null, i.verbose && console.log("Tokenizing the structure"); - for (var E = "", w = [], s = g[3].length, d = 0; d < s; d++) { + l = null, s.verbose && console.log("Tokenizing the structure"); + for (var E = "", w = [], o = g[3].length, d = 0; d < o; d++) { var y = g[3].charAt(d); y === "|" || y === "$" || y === "@" || y === "]" ? (E && (w.push(p(E)), E = ""), y !== "|" && w.push(y)) : E += y; } var _ = w.length, O = 0; - return i.verbose && console.log("Starting recursive parser"), function R() { + return s.verbose && console.log("Starting recursive parser"), function R() { var P = w[O++]; - if (i.verbose && console.log("Reading collection type " + (P === "$" ? "object" : "Array")), P === "@") { + if (s.verbose && console.log("Reading collection type " + (P === "$" ? "object" : "Array")), P === "@") { for (var b = []; O < _; O++) { var N = w[O]; - if (i.verbose && console.log("Read " + N + " symbol"), N === "]") + if (s.verbose && console.log("Read " + N + " symbol"), N === "]") return b; if (N === "@" || N === "$") b.push(R()); @@ -236,17 +236,17 @@ var re = {}; b.push(""); break; default: - b.push(a[N]); + b.push(f[N]); } } - return i.verbose && console.log("Parsed " + this.JSON.stringify(b)), b; + return s.verbose && console.log("Parsed " + this.JSON.stringify(b)), b; } if (P === "$") { for (var b = {}; O < _; O++) { var C = w[O]; if (C === "]") return b; - C === v ? C = "" : C = a[C]; + C === v ? C = "" : C = f[C]; var N = w[++O]; if (N === "@" || N === "$") b[C] = R(); @@ -268,40 +268,40 @@ var re = {}; b[C] = ""; break; default: - b[C] = a[N]; + b[C] = f[N]; } } - return i.verbose && console.log("Parsed " + this.JSON.stringify(b)), b; + return s.verbose && console.log("Parsed " + this.JSON.stringify(b)), b; } throw new TypeError("Bad token " + P + " isn't a type"); }(); - }, D = function(o) { - return typeof o != "string" ? o : o.replace(/[\+ \|\^\%]/g, function(i) { + }, D = function(a) { + return typeof a != "string" ? a : a.replace(/[\+ \|\^\%]/g, function(s) { return { " ": "+", "+": "%2B", "|": "%7C", "^": "%5E", "%": "%25" - }[i]; + }[s]; }); - }, q = function(o) { - return typeof o != "string" ? o : o.replace(/\+|%2B|%7C|%5E|%25/g, function(i) { + }, q = function(a) { + return typeof a != "string" ? a : a.replace(/\+|%2B|%7C|%5E|%25/g, function(s) { return { "+": " ", "%2B": "+", "%7C": "|", "%5E": "^", "%25": "%" - }[i]; + }[s]; }); - }, x = function(o) { - return Number.prototype.toString.call(o, 36).toUpperCase(); - }, p = function(o) { - return parseInt(o, 36); - }, f = Array.prototype.indexOf || function(o, i) { - for (var g = i || 0, a = this.length; g < a; g++) - if (this[g] === o) + }, x = function(a) { + return Number.prototype.toString.call(a, 36).toUpperCase(); + }, p = function(a) { + return parseInt(a, 36); + }, i = Array.prototype.indexOf || function(a, s) { + for (var g = s || 0, f = this.length; g < f; g++) + if (this[g] === a) return g; return -1; }; @@ -343,14 +343,14 @@ class X { value: h(this, I).getPrototypeOf() }) }); - S(this, L, (e) => e === "$toast" ? h(this, K) : e === "msg" ? h(this, H) : e === "then" || e === "resp" ? (m(this, j, !0), m(this, z, e === "resp"), h(this, V)) : e === "catch" ? h(this, Y) : e === "IS_ECHO_MSG" ? h(this, j) : Reflect.get(this, e)); - S(this, H, (e = (n) => n, r = !1) => (h(this, K).call(this), m(this, z, r), Promise.resolve(e == null ? void 0 : e(h(this, I).getPrototypeOf())))); + S(this, L, (e) => e === "$toast" ? h(this, K) : e === "msg" ? h(this, H) : e === "then" || e === "resp" ? (M(this, j, !0), M(this, z, e === "resp"), h(this, V)) : e === "catch" ? h(this, Y) : e === "IS_ECHO_MSG" ? h(this, j) : Reflect.get(this, e)); + S(this, H, (e = (n) => n, r = !1) => (h(this, K).call(this), M(this, z, r), Promise.resolve(e == null ? void 0 : e(h(this, I).getPrototypeOf())))); S(this, K, () => { - h(this, j) && (m(this, j, !1), we.onToast(this.code, this.message)); + h(this, j) && (M(this, j, !1), we.onToast(this.code, this.message)); }); S(this, V, (e) => [0, 1].includes(this.code) ? Promise.resolve(e == null ? void 0 : e(h(this, I).getPrototypeOf())) : Promise.reject(h(this, J))); S(this, Y, (e) => Promise.resolve(e(h(this, J)))); - return this.code = e, this.message = r, this.data = n, this.url = u, this.res = v, m(this, J, new Proxy(this, h(this, I))); + return this.code = e, this.message = r, this.data = n, this.url = u, this.res = v, M(this, J, new Proxy(this, h(this, I))); } } J = new WeakMap(), z = new WeakMap(), j = new WeakMap(), I = new WeakMap(), L = new WeakMap(), H = new WeakMap(), K = new WeakMap(), V = new WeakMap(), Y = new WeakMap(); @@ -401,13 +401,13 @@ const ce = new se.TextEncoder("utf8"), ge = new se.TextDecoder("utf8"), de = (t) e = e * 33 ^ t.charCodeAt(r); return (e >>> 0).toString(16); }, be = (t, e) => t.replace(new RegExp(`^${e}+|${e}+$`, "g"), ""), pe = (t) => ce.encode(t || ""), ve = (t) => ge.decode(new DataView(t), {}); -var F, G, Q, M, $; +var F, G, Q, m, $; class Z { constructor(e, r, n = ({}) => Promise.reject({ code: -1, msg: "请初始化HTTP请求方法主体" })) { S(this, F, void 0); S(this, G, void 0); S(this, Q, void 0); - S(this, M, { + S(this, m, { "#": /* @__PURE__ */ new Map(), // 系统缓存 $: /* @__PURE__ */ new Map() @@ -417,17 +417,23 @@ class Z { A(this, "request", ({ url: e = "/", method: r = "GET", ...n }, u = !1) => { var x; const v = r.toUpperCase(), c = de(JSON.stringify([e, v, n])), U = (x = e == null ? void 0 : e.includes) != null && x.call(e, "/_/") ? "#" : "$", { promise: B, resolve: D, reject: q } = Promise.withResolvers(); - return h(this, M)[U].has(c) ? (console.log("缓存命中", e), D(h(this, M)[U].get(c))) : h(this, $).has(c) ? h(this, $).get(c).push([D, q]) : h(this, $).set(c, [[D, q]]), h(this, $).get(c).length === 1 && h(this, F).call(this, { url: e, method: v, ...n }).then((p) => { + return h(this, m)[U].has(c) ? (console.log("缓存命中", e), D(h(this, m)[U].get(c))) : h(this, $).has(c) ? h(this, $).get(c).push([D, q]) : h(this, $).set(c, [[D, q]]), h(this, $).get(c).length === 1 && h(this, F).call(this, { url: e, method: v, ...n }).then((p) => { if (![0, 1].includes(p.code)) throw W(p.code, p.msg, p.data, e, p == null ? void 0 : p.res); return [p.code, p.msg, p.data, e, p == null ? void 0 : p.res]; - }).then((p) => ((U == "#" || u && v === "GET") && h(this, M)[U].set(c, p), p)).then((p) => h(this, $).get(c).forEach(([f, o]) => f(p))).catch((p) => (h(this, M)[U].delete(c), h(this, $).get(c).forEach(([f, o]) => o(p instanceof X ? p : W(-1, p, null, e))))).finally(() => setTimeout(() => { - h(this, $).delete(c); - })), new Proxy(B, { - get: (p, f) => (...o) => p.then((i) => W(...i)[f](...o)).catch((i) => { - if (!i instanceof X) - throw i; - return typeof i[f] == "function" ? i[f](...o) : i[f]; + }).then((p) => ((U == "#" || u && v === "GET") && h(this, m)[U].set(c, p), p)).then((p) => h(this, $).get(c).forEach((i, a, s) => { + i && i[0](p), delete s[a]; + })).catch((p) => { + h(this, m)[U].delete(c), h(this, $).get(c).forEach((i, a, s) => { + i && i[1](p instanceof X ? p : W(-1, p, null, e)), delete s[a]; + }); + }).finally(() => { + console.log(1111, h(this, $).get(c)); + }), new Proxy(B, { + get: (p, i) => (...a) => p.then((s) => W(...s)[i](...a)).catch((s) => { + if (!s instanceof X) + throw s; + return typeof s[i] == "function" ? s[i](...a) : s[i]; }) }); }); @@ -442,7 +448,7 @@ class Z { A(this, "getAppInfo", () => { }); A(this, "refreshCache", (e = !1) => { - e && h(this, M)["#"].clear(), h(this, M).$.clear(); + e && h(this, m)["#"].clear(), h(this, m).$.clear(); }); A(this, "decode", (e = "", r = {}) => { if (e === void 0 || e === "" || e === null) @@ -458,10 +464,10 @@ class Z { const r = JSON.stringify(e, (n, u) => u === void 0 ? null : u); return h(this, G).encode(pe(ee.pack(r))); }); - m(this, Q, e), m(this, F, n), m(this, G, he(r)); + M(this, Q, e), M(this, F, n), M(this, G, he(r)); } } -F = new WeakMap(), G = new WeakMap(), Q = new WeakMap(), M = new WeakMap(), $ = new WeakMap(); +F = new WeakMap(), G = new WeakMap(), Q = new WeakMap(), m = new WeakMap(), $ = new WeakMap(); const we = Z; Z.onUnhandledRejection = (t) => { var e, r, n, u, v, c; diff --git a/dist/ff-request.umd.cjs b/dist/ff-request.umd.cjs index ff0134b..32f3b25 100644 --- a/dist/ff-request.umd.cjs +++ b/dist/ff-request.umd.cjs @@ -1 +1 @@ -(function(p,w){typeof exports=="object"&&typeof module<"u"?w(exports):typeof define=="function"&&define.amd?define(["exports"],w):(p=typeof globalThis<"u"?globalThis:p||self,w(p["ff-request"]={}))})(this,function(p){"use strict";var ye=Object.defineProperty;var be=(p,w,_)=>w in p?ye(p,w,{enumerable:!0,configurable:!0,writable:!0,value:_}):p[w]=_;var P=(p,w,_)=>(be(p,typeof w!="symbol"?w+"":w,_),_),le=(p,w,_)=>{if(!w.has(p))throw TypeError("Cannot "+_)};var h=(p,w,_)=>(le(p,w,"read from private field"),_?_.call(p):w.get(p)),N=(p,w,_)=>{if(w.has(p))throw TypeError("Cannot add the same private member more than once");w instanceof WeakSet?w.add(p):w.set(p,_)},D=(p,w,_,Y)=>(le(p,w,"write to private field"),Y?Y.call(p,_):w.set(p,_),_);var G,B,J,q,Q,W,L,X,Z,H,K,k,I,R;function w(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function _(t){if(t.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),r=0;r>>0,d=new Uint8Array(u);g!==a;){for(var A=f[g],T=0,b=u-1;(A!==0||T>>0,d[b]=A%c>>>0,A=A/c>>>0;if(A!==0)throw new Error("Non-zero carry");o=T,g++}for(var n=u-o;n!==u&&d[n]===0;)n++;for(var E=$.repeat(s);n>>0,u=new Uint8Array(a);f[s];){var d=e[f.charCodeAt(s)];if(d===255)return;for(var A=0,T=a-1;(d!==0||A>>0,u[T]=d%256>>>0,d=d/256>>>0;if(d!==0)throw new Error("Non-zero carry");g=A,s++}for(var b=a-g;b!==a&&u[b]===0;)b++;for(var n=new Uint8Array(o+(a-b)),E=o;b!==a;)n[E++]=u[b++];return n}function v(f){var s=M(f);if(s)return s;throw new Error("Non-base"+c+" character")}return{encode:F,decodeUnsafe:M,decode:v}}var Y=_;const ce=w(Y);var ne={};(function(t){(function(e){e([],function(){var r=-1,i=-2,l=-3,y=-4,c=-5,$=function(s,o){o=o||{};var g=o.verbose||!1;g&&console.log("Normalize the JSON Object"),s=typeof s=="string"?this.JSON.parse(s):s,g&&console.log("Creating a empty dictionary");var a={strings:[],integers:[],floats:[]};g&&console.log("Creating the AST");var u=function b(n){g&&console.log("Calling recursiveAstBuilder with "+this.JSON.stringify(n));var E=typeof n;if(n===null)return{type:"null",index:l};if(typeof n>"u")return{type:"undefined",index:c};if(n instanceof Array){var U=["@"];for(var S in n)n.hasOwnProperty(S)&&U.push(b(n[S]));return U}if(E==="object"){var U=["$"];for(var j in n)n.hasOwnProperty(j)&&(U.push(b(j)),U.push(b(n[j])));return U}if(n==="")return{type:"empty",index:y};if(E==="string"){var C=f.call(a.strings,n);return C==-1&&(a.strings.push(z(n)),C=a.strings.length-1),{type:"strings",index:C}}if(E==="number"&&n%1===0){var C=f.call(a.integers,n);return C==-1&&(a.integers.push(M(n)),C=a.integers.length-1),{type:"integers",index:C}}if(E==="number"){var C=f.call(a.floats,n);return C==-1&&(a.floats.push(n),C=a.floats.length-1),{type:"floats",index:C}}if(E==="boolean")return{type:"boolean",index:n?r:i};throw new Error("Unexpected argument of type "+typeof n)}(s),d=a.strings.length,A=a.integers.length;a.floats.length,g&&console.log("Parsing the dictionary");var T=a.strings.join("|");return T+="^"+a.integers.join("|"),T+="^"+a.floats.join("|"),g&&console.log("Parsing the structure"),T+="^"+function b(n){if(g&&console.log("Calling a recursiveParser with "+this.JSON.stringify(n)),n instanceof Array){var E=n.shift();for(var U in n)n.hasOwnProperty(U)&&(E+=b(n[U])+"|");return(E[E.length-1]==="|"?E.slice(0,-1):E)+"]"}var S=n.type,j=n.index;if(S==="strings")return M(j);if(S==="integers")return M(d+j);if(S==="floats")return M(d+A+j);if(S==="boolean")return n.index;if(S==="null")return l;if(S==="undefined")return c;if(S==="empty")return y;throw new TypeError("The item is alien!")}(u),g&&console.log("Ending parser"),o.debug?{dictionary:a,ast:u,packed:T}:T},V=function(s,o){o=o||{};var g=s.split("^");o.verbose&&console.log("Building dictionary");var a=[],u=g[0];if(u!==""){u=u.split("|"),o.verbose&&console.log("Parse the strings dictionary");for(var d=0,A=u.length;dh(this,Q).call(this,r),ownKeys:()=>Object.keys(h(this,q).getPrototypeOf()||{}),getPrototypeOf:()=>h(this,B)?this:this.data,getOwnPropertyDescriptor:()=>({configurable:!0,enumerable:!0,writable:!0,value:h(this,q).getPrototypeOf()})});N(this,Q,e=>e==="$toast"?h(this,L):e==="msg"?h(this,W):e==="then"||e==="resp"?(D(this,J,!0),D(this,B,e==="resp"),h(this,X)):e==="catch"?h(this,Z):e==="IS_ECHO_MSG"?h(this,J):Reflect.get(this,e));N(this,W,(e=i=>i,r=!1)=>(h(this,L).call(this),D(this,B,r),Promise.resolve(e==null?void 0:e(h(this,q).getPrototypeOf()))));N(this,L,()=>{h(this,J)&&(D(this,J,!1),ue.onToast(this.code,this.message))});N(this,X,e=>[0,1].includes(this.code)?Promise.resolve(e==null?void 0:e(h(this,q).getPrototypeOf())):Promise.reject(h(this,G)));N(this,Z,e=>Promise.resolve(e(h(this,G))));return this.code=e,this.message=r,this.data=i,this.url=l,this.res=y,D(this,G,new Proxy(this,h(this,q)))}}G=new WeakMap,B=new WeakMap,J=new WeakMap,q=new WeakMap,Q=new WeakMap,W=new WeakMap,L=new WeakMap,X=new WeakMap,Z=new WeakMap;const te=(t,e,r,i="/",l="")=>new ee(t,e,r,i,l);var se=["utf8","utf-8","unicode-1-1-utf-8"];function ge(t){if(se.indexOf(t)<0&&typeof t<"u"&&t!=null)throw new RangeError("Invalid encoding type. Only utf-8 is supported");this.encoding="utf-8",this.encode=function(e){if(typeof e!="string")throw new TypeError("passed argument must be of tye string");var r=unescape(encodeURIComponent(e)),i=new Uint8Array(r.length);const l=r.split("");for(let y=0;y"u")return"";var i=typeof r<"u"&&i in r?r.stream:!1;if(typeof i!="boolean")throw new TypeError("stream option must be boolean");if(ArrayBuffer.isView(e)){var l=new Uint8Array(e.buffer,e.byteOffset,e.byteLength),y=new Array(l.length);for(let c=0;c{let e=5381;for(let r=0;r>>0).toString(16)},we=(t,e)=>t.replace(new RegExp(`^${e}+|${e}+$`,"g"),""),fe=t=>pe.encode(t||""),he=t=>ve.decode(new DataView(t),{});class re{constructor(e,r,i=({})=>Promise.reject({code:-1,msg:"请初始化HTTP请求方法主体"})){N(this,H,void 0);N(this,K,void 0);N(this,k,void 0);N(this,I,{"#":new Map,$:new Map});N(this,R,new Map);P(this,"request",({url:e="/",method:r="GET",...i},l=!1)=>{var M;const y=r.toUpperCase(),c=ae(JSON.stringify([e,y,i])),$=(M=e==null?void 0:e.includes)!=null&&M.call(e,"/_/")?"#":"$",{promise:V,resolve:z,reject:F}=Promise.withResolvers();return h(this,I)[$].has(c)?(console.log("缓存命中",e),z(h(this,I)[$].get(c))):h(this,R).has(c)?h(this,R).get(c).push([z,F]):h(this,R).set(c,[[z,F]]),h(this,R).get(c).length===1&&h(this,H).call(this,{url:e,method:y,...i}).then(v=>{if(![0,1].includes(v.code))throw te(v.code,v.msg,v.data,e,v==null?void 0:v.res);return[v.code,v.msg,v.data,e,v==null?void 0:v.res]}).then(v=>(($=="#"||l&&y==="GET")&&h(this,I)[$].set(c,v),v)).then(v=>h(this,R).get(c).forEach(([f,s])=>f(v))).catch(v=>(h(this,I)[$].delete(c),h(this,R).get(c).forEach(([f,s])=>s(v instanceof ee?v:te(-1,v,null,e))))).finally(()=>setTimeout(()=>{h(this,R).delete(c)})),new Proxy(V,{get:(v,f)=>(...s)=>v.then(o=>te(...o)[f](...s)).catch(o=>{if(!o instanceof ee)throw o;return typeof o[f]=="function"?o[f](...s):o[f]})})});P(this,"get",(e,r={})=>this.request({url:e,method:"GET",params:r}));P(this,"post",(e,r={},i={})=>this.request({url:e,method:"POST",data:r,params:i}));P(this,"put",(e,r={},i={})=>this.request({url:e,method:"PUT",data:r,params:i}));P(this,"del",(e,r={},i={})=>this.request({url:e,method:"DELETE",data:r,params:i}));P(this,"download",(e,r)=>{});P(this,"cache",(e,r={})=>this.request({url:e,method:"GET",params:r},!0));P(this,"list",(e,r={})=>this.get(`/api/${e}/${this.encode(r)}`));P(this,"getAppInfo",()=>{});P(this,"refreshCache",(e=!1)=>{e&&h(this,I)["#"].clear(),h(this,I).$.clear()});P(this,"decode",(e="",r={})=>{if(e===void 0||e===""||e===null)return r;try{const i=h(this,K).decode(e).buffer;return ie.unpack(he(i))}catch{return console.warn("core.decode",e),r}});P(this,"encode",(e={})=>{const r=JSON.stringify(e,(i,l)=>l===void 0?null:l);return h(this,K).encode(fe(ie.pack(r)))});D(this,k,e),D(this,H,i),D(this,K,ce(r))}}H=new WeakMap,K=new WeakMap,k=new WeakMap,I=new WeakMap,R=new WeakMap;const ue=re;re.onUnhandledRejection=t=>{var e,r,i,l,y,c;t!=null&&t.IS_ECHO_MSG?((e=t==null?void 0:t.$toast)==null||e.call(t),(r=t==null?void 0:t.preventDefault)==null||r.call(t)):(i=t.reason)!=null&&i.IS_ECHO_MSG&&((y=(l=t.reason)==null?void 0:l.$toast)==null||y.call(l),(c=t==null?void 0:t.preventDefault)==null||c.call(t))},re.onToast=(t,e)=>[0,1].includes(t)?console.log(e):console.warn(e),p.default=ue,p.signature=ae,p.str2uint8array=fe,p.trim=we,p.uint8array2str=he,Object.defineProperties(p,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}); +(function(p,w){typeof exports=="object"&&typeof module<"u"?w(exports):typeof define=="function"&&define.amd?define(["exports"],w):(p=typeof globalThis<"u"?globalThis:p||self,w(p["ff-request"]={}))})(this,function(p){"use strict";var ye=Object.defineProperty;var be=(p,w,A)=>w in p?ye(p,w,{enumerable:!0,configurable:!0,writable:!0,value:A}):p[w]=A;var _=(p,w,A)=>(be(p,typeof w!="symbol"?w+"":w,A),A),ue=(p,w,A)=>{if(!w.has(p))throw TypeError("Cannot "+A)};var h=(p,w,A)=>(ue(p,w,"read from private field"),A?A.call(p):w.get(p)),N=(p,w,A)=>{if(w.has(p))throw TypeError("Cannot add the same private member more than once");w instanceof WeakSet?w.add(p):w.set(p,A)},D=(p,w,A,Y)=>(ue(p,w,"write to private field"),Y?Y.call(p,A):w.set(p,A),A);var G,B,J,q,Q,W,L,X,Z,H,K,k,I,$;function w(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function A(t){if(t.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),r=0;r>>0,d=new Uint8Array(l);g!==f;){for(var P=a[g],T=0,b=l-1;(P!==0||T>>0,d[b]=P%c>>>0,P=P/c>>>0;if(P!==0)throw new Error("Non-zero carry");n=T,g++}for(var s=l-n;s!==l&&d[s]===0;)s++;for(var E=m.repeat(o);s>>0,l=new Uint8Array(f);a[o];){var d=e[a.charCodeAt(o)];if(d===255)return;for(var P=0,T=f-1;(d!==0||P>>0,l[T]=d%256>>>0,d=d/256>>>0;if(d!==0)throw new Error("Non-zero carry");g=P,o++}for(var b=f-g;b!==f&&l[b]===0;)b++;for(var s=new Uint8Array(n+(f-b)),E=n;b!==f;)s[E++]=l[b++];return s}function v(a){var o=M(a);if(o)return o;throw new Error("Non-base"+c+" character")}return{encode:F,decodeUnsafe:M,decode:v}}var Y=A;const ce=w(Y);var ne={};(function(t){(function(e){e([],function(){var r=-1,i=-2,u=-3,y=-4,c=-5,m=function(o,n){n=n||{};var g=n.verbose||!1;g&&console.log("Normalize the JSON Object"),o=typeof o=="string"?this.JSON.parse(o):o,g&&console.log("Creating a empty dictionary");var f={strings:[],integers:[],floats:[]};g&&console.log("Creating the AST");var l=function b(s){g&&console.log("Calling recursiveAstBuilder with "+this.JSON.stringify(s));var E=typeof s;if(s===null)return{type:"null",index:u};if(typeof s>"u")return{type:"undefined",index:c};if(s instanceof Array){var U=["@"];for(var S in s)s.hasOwnProperty(S)&&U.push(b(s[S]));return U}if(E==="object"){var U=["$"];for(var j in s)s.hasOwnProperty(j)&&(U.push(b(j)),U.push(b(s[j])));return U}if(s==="")return{type:"empty",index:y};if(E==="string"){var C=a.call(f.strings,s);return C==-1&&(f.strings.push(z(s)),C=f.strings.length-1),{type:"strings",index:C}}if(E==="number"&&s%1===0){var C=a.call(f.integers,s);return C==-1&&(f.integers.push(M(s)),C=f.integers.length-1),{type:"integers",index:C}}if(E==="number"){var C=a.call(f.floats,s);return C==-1&&(f.floats.push(s),C=f.floats.length-1),{type:"floats",index:C}}if(E==="boolean")return{type:"boolean",index:s?r:i};throw new Error("Unexpected argument of type "+typeof s)}(o),d=f.strings.length,P=f.integers.length;f.floats.length,g&&console.log("Parsing the dictionary");var T=f.strings.join("|");return T+="^"+f.integers.join("|"),T+="^"+f.floats.join("|"),g&&console.log("Parsing the structure"),T+="^"+function b(s){if(g&&console.log("Calling a recursiveParser with "+this.JSON.stringify(s)),s instanceof Array){var E=s.shift();for(var U in s)s.hasOwnProperty(U)&&(E+=b(s[U])+"|");return(E[E.length-1]==="|"?E.slice(0,-1):E)+"]"}var S=s.type,j=s.index;if(S==="strings")return M(j);if(S==="integers")return M(d+j);if(S==="floats")return M(d+P+j);if(S==="boolean")return s.index;if(S==="null")return u;if(S==="undefined")return c;if(S==="empty")return y;throw new TypeError("The item is alien!")}(l),g&&console.log("Ending parser"),n.debug?{dictionary:f,ast:l,packed:T}:T},V=function(o,n){n=n||{};var g=o.split("^");n.verbose&&console.log("Building dictionary");var f=[],l=g[0];if(l!==""){l=l.split("|"),n.verbose&&console.log("Parse the strings dictionary");for(var d=0,P=l.length;dh(this,Q).call(this,r),ownKeys:()=>Object.keys(h(this,q).getPrototypeOf()||{}),getPrototypeOf:()=>h(this,B)?this:this.data,getOwnPropertyDescriptor:()=>({configurable:!0,enumerable:!0,writable:!0,value:h(this,q).getPrototypeOf()})});N(this,Q,e=>e==="$toast"?h(this,L):e==="msg"?h(this,W):e==="then"||e==="resp"?(D(this,J,!0),D(this,B,e==="resp"),h(this,X)):e==="catch"?h(this,Z):e==="IS_ECHO_MSG"?h(this,J):Reflect.get(this,e));N(this,W,(e=i=>i,r=!1)=>(h(this,L).call(this),D(this,B,r),Promise.resolve(e==null?void 0:e(h(this,q).getPrototypeOf()))));N(this,L,()=>{h(this,J)&&(D(this,J,!1),le.onToast(this.code,this.message))});N(this,X,e=>[0,1].includes(this.code)?Promise.resolve(e==null?void 0:e(h(this,q).getPrototypeOf())):Promise.reject(h(this,G)));N(this,Z,e=>Promise.resolve(e(h(this,G))));return this.code=e,this.message=r,this.data=i,this.url=u,this.res=y,D(this,G,new Proxy(this,h(this,q)))}}G=new WeakMap,B=new WeakMap,J=new WeakMap,q=new WeakMap,Q=new WeakMap,W=new WeakMap,L=new WeakMap,X=new WeakMap,Z=new WeakMap;const te=(t,e,r,i="/",u="")=>new ee(t,e,r,i,u);var ie=["utf8","utf-8","unicode-1-1-utf-8"];function ge(t){if(ie.indexOf(t)<0&&typeof t<"u"&&t!=null)throw new RangeError("Invalid encoding type. Only utf-8 is supported");this.encoding="utf-8",this.encode=function(e){if(typeof e!="string")throw new TypeError("passed argument must be of tye string");var r=unescape(encodeURIComponent(e)),i=new Uint8Array(r.length);const u=r.split("");for(let y=0;y"u")return"";var i=typeof r<"u"&&i in r?r.stream:!1;if(typeof i!="boolean")throw new TypeError("stream option must be boolean");if(ArrayBuffer.isView(e)){var u=new Uint8Array(e.buffer,e.byteOffset,e.byteLength),y=new Array(u.length);for(let c=0;c{let e=5381;for(let r=0;r>>0).toString(16)},we=(t,e)=>t.replace(new RegExp(`^${e}+|${e}+$`,"g"),""),fe=t=>pe.encode(t||""),he=t=>ve.decode(new DataView(t),{});class re{constructor(e,r,i=({})=>Promise.reject({code:-1,msg:"请初始化HTTP请求方法主体"})){N(this,H,void 0);N(this,K,void 0);N(this,k,void 0);N(this,I,{"#":new Map,$:new Map});N(this,$,new Map);_(this,"request",({url:e="/",method:r="GET",...i},u=!1)=>{var M;const y=r.toUpperCase(),c=ae(JSON.stringify([e,y,i])),m=(M=e==null?void 0:e.includes)!=null&&M.call(e,"/_/")?"#":"$",{promise:V,resolve:z,reject:F}=Promise.withResolvers();return h(this,I)[m].has(c)?(console.log("缓存命中",e),z(h(this,I)[m].get(c))):h(this,$).has(c)?h(this,$).get(c).push([z,F]):h(this,$).set(c,[[z,F]]),h(this,$).get(c).length===1&&h(this,H).call(this,{url:e,method:y,...i}).then(v=>{if(![0,1].includes(v.code))throw te(v.code,v.msg,v.data,e,v==null?void 0:v.res);return[v.code,v.msg,v.data,e,v==null?void 0:v.res]}).then(v=>((m=="#"||u&&y==="GET")&&h(this,I)[m].set(c,v),v)).then(v=>h(this,$).get(c).forEach((a,o,n)=>{a&&a[0](v),delete n[o]})).catch(v=>{h(this,I)[m].delete(c),h(this,$).get(c).forEach((a,o,n)=>{a&&a[1](v instanceof ee?v:te(-1,v,null,e)),delete n[o]})}).finally(()=>{console.log(1111,h(this,$).get(c))}),new Proxy(V,{get:(v,a)=>(...o)=>v.then(n=>te(...n)[a](...o)).catch(n=>{if(!n instanceof ee)throw n;return typeof n[a]=="function"?n[a](...o):n[a]})})});_(this,"get",(e,r={})=>this.request({url:e,method:"GET",params:r}));_(this,"post",(e,r={},i={})=>this.request({url:e,method:"POST",data:r,params:i}));_(this,"put",(e,r={},i={})=>this.request({url:e,method:"PUT",data:r,params:i}));_(this,"del",(e,r={},i={})=>this.request({url:e,method:"DELETE",data:r,params:i}));_(this,"download",(e,r)=>{});_(this,"cache",(e,r={})=>this.request({url:e,method:"GET",params:r},!0));_(this,"list",(e,r={})=>this.get(`/api/${e}/${this.encode(r)}`));_(this,"getAppInfo",()=>{});_(this,"refreshCache",(e=!1)=>{e&&h(this,I)["#"].clear(),h(this,I).$.clear()});_(this,"decode",(e="",r={})=>{if(e===void 0||e===""||e===null)return r;try{const i=h(this,K).decode(e).buffer;return se.unpack(he(i))}catch{return console.warn("core.decode",e),r}});_(this,"encode",(e={})=>{const r=JSON.stringify(e,(i,u)=>u===void 0?null:u);return h(this,K).encode(fe(se.pack(r)))});D(this,k,e),D(this,H,i),D(this,K,ce(r))}}H=new WeakMap,K=new WeakMap,k=new WeakMap,I=new WeakMap,$=new WeakMap;const le=re;re.onUnhandledRejection=t=>{var e,r,i,u,y,c;t!=null&&t.IS_ECHO_MSG?((e=t==null?void 0:t.$toast)==null||e.call(t),(r=t==null?void 0:t.preventDefault)==null||r.call(t)):(i=t.reason)!=null&&i.IS_ECHO_MSG&&((y=(u=t.reason)==null?void 0:u.$toast)==null||y.call(u),(c=t==null?void 0:t.preventDefault)==null||c.call(t))},re.onToast=(t,e)=>[0,1].includes(t)?console.log(e):console.warn(e),p.default=le,p.signature=ae,p.str2uint8array=fe,p.trim=we,p.uint8array2str=he,Object.defineProperties(p,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}); diff --git a/package.json b/package.json index 5f0a7cf..2ba8800 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "ff-request", "private": true, - "version": "0.9.7", + "version": "0.9.8", "type": "module", "files": [ "dist"