quick-admin-vue3-core
Version:
以快(计算机执行效率、开发效率)为核心的后台管理系统开发模板
1,526 lines (1,525 loc) • 36.8 kB
JavaScript
import { defineComponent as Dt, ref as W, onMounted as Ut, resolveComponent as kt, createElementBlock as Z, openBlock as X, unref as gt, createElementVNode as vt, createVNode as Ft, toDisplayString as zt, withCtx as Vt, createTextVNode as Ht } from "vue";
import { b as Kt } from "./platform-DsTwHxm6.js";
var V = {}, Jt = function() {
return typeof Promise == "function" && Promise.prototype && Promise.prototype.then;
}, yt = {}, N = {};
let at;
const Ot = [
0,
// Not used
26,
44,
70,
100,
134,
172,
196,
242,
292,
346,
404,
466,
532,
581,
655,
733,
815,
901,
991,
1085,
1156,
1258,
1364,
1474,
1588,
1706,
1828,
1921,
2051,
2185,
2323,
2465,
2611,
2761,
2876,
3034,
3196,
3362,
3532,
3706
];
N.getSymbolSize = function(t) {
if (!t) throw new Error('"version" cannot be null or undefined');
if (t < 1 || t > 40) throw new Error('"version" should be in range from 1 to 40');
return t * 4 + 17;
};
N.getSymbolTotalCodewords = function(t) {
return Ot[t];
};
N.getBCHDigit = function(e) {
let t = 0;
for (; e !== 0; )
t++, e >>>= 1;
return t;
};
N.setToSJISFunction = function(t) {
if (typeof t != "function")
throw new Error('"toSJISFunc" is not a valid function.');
at = t;
};
N.isKanjiModeEnabled = function() {
return typeof at < "u";
};
N.toSJIS = function(t) {
return at(t);
};
var $ = {};
(function(e) {
e.L = { bit: 1 }, e.M = { bit: 0 }, e.Q = { bit: 3 }, e.H = { bit: 2 };
function t(i) {
if (typeof i != "string")
throw new Error("Param is not a string");
switch (i.toLowerCase()) {
case "l":
case "low":
return e.L;
case "m":
case "medium":
return e.M;
case "q":
case "quartile":
return e.Q;
case "h":
case "high":
return e.H;
default:
throw new Error("Unknown EC Level: " + i);
}
}
e.isValid = function(o) {
return o && typeof o.bit < "u" && o.bit >= 0 && o.bit < 4;
}, e.from = function(o, n) {
if (e.isValid(o))
return o;
try {
return t(o);
} catch {
return n;
}
};
})($);
function Ct() {
this.buffer = [], this.length = 0;
}
Ct.prototype = {
get: function(e) {
const t = Math.floor(e / 8);
return (this.buffer[t] >>> 7 - e % 8 & 1) === 1;
},
put: function(e, t) {
for (let i = 0; i < t; i++)
this.putBit((e >>> t - i - 1 & 1) === 1);
},
getLengthInBits: function() {
return this.length;
},
putBit: function(e) {
const t = Math.floor(this.length / 8);
this.buffer.length <= t && this.buffer.push(0), e && (this.buffer[t] |= 128 >>> this.length % 8), this.length++;
}
};
var Yt = Ct;
function H(e) {
if (!e || e < 1)
throw new Error("BitMatrix size must be defined and greater than 0");
this.size = e, this.data = new Uint8Array(e * e), this.reservedBit = new Uint8Array(e * e);
}
H.prototype.set = function(e, t, i, o) {
const n = e * this.size + t;
this.data[n] = i, o && (this.reservedBit[n] = !0);
};
H.prototype.get = function(e, t) {
return this.data[e * this.size + t];
};
H.prototype.xor = function(e, t, i) {
this.data[e * this.size + t] ^= i;
};
H.prototype.isReserved = function(e, t) {
return this.reservedBit[e * this.size + t];
};
var $t = H, Et = {};
(function(e) {
const t = N.getSymbolSize;
e.getRowColCoords = function(o) {
if (o === 1) return [];
const n = Math.floor(o / 7) + 2, r = t(o), s = r === 145 ? 26 : Math.ceil((r - 13) / (2 * n - 2)) * 2, a = [r - 7];
for (let u = 1; u < n - 1; u++)
a[u] = a[u - 1] - s;
return a.push(6), a.reverse();
}, e.getPositions = function(o) {
const n = [], r = e.getRowColCoords(o), s = r.length;
for (let a = 0; a < s; a++)
for (let u = 0; u < s; u++)
a === 0 && u === 0 || // top-left
a === 0 && u === s - 1 || // bottom-left
a === s - 1 && u === 0 || n.push([r[a], r[u]]);
return n;
};
})(Et);
var pt = {};
const jt = N.getSymbolSize, ht = 7;
pt.getPositions = function(t) {
const i = jt(t);
return [
// top-left
[0, 0],
// top-right
[i - ht, 0],
// bottom-left
[0, i - ht]
];
};
var Bt = {};
(function(e) {
e.Patterns = {
PATTERN000: 0,
PATTERN001: 1,
PATTERN010: 2,
PATTERN011: 3,
PATTERN100: 4,
PATTERN101: 5,
PATTERN110: 6,
PATTERN111: 7
};
const t = {
N1: 3,
N2: 3,
N3: 40,
N4: 10
};
e.isValid = function(n) {
return n != null && n !== "" && !isNaN(n) && n >= 0 && n <= 7;
}, e.from = function(n) {
return e.isValid(n) ? parseInt(n, 10) : void 0;
}, e.getPenaltyN1 = function(n) {
const r = n.size;
let s = 0, a = 0, u = 0, c = null, l = null;
for (let p = 0; p < r; p++) {
a = u = 0, c = l = null;
for (let d = 0; d < r; d++) {
let f = n.get(p, d);
f === c ? a++ : (a >= 5 && (s += t.N1 + (a - 5)), c = f, a = 1), f = n.get(d, p), f === l ? u++ : (u >= 5 && (s += t.N1 + (u - 5)), l = f, u = 1);
}
a >= 5 && (s += t.N1 + (a - 5)), u >= 5 && (s += t.N1 + (u - 5));
}
return s;
}, e.getPenaltyN2 = function(n) {
const r = n.size;
let s = 0;
for (let a = 0; a < r - 1; a++)
for (let u = 0; u < r - 1; u++) {
const c = n.get(a, u) + n.get(a, u + 1) + n.get(a + 1, u) + n.get(a + 1, u + 1);
(c === 4 || c === 0) && s++;
}
return s * t.N2;
}, e.getPenaltyN3 = function(n) {
const r = n.size;
let s = 0, a = 0, u = 0;
for (let c = 0; c < r; c++) {
a = u = 0;
for (let l = 0; l < r; l++)
a = a << 1 & 2047 | n.get(c, l), l >= 10 && (a === 1488 || a === 93) && s++, u = u << 1 & 2047 | n.get(l, c), l >= 10 && (u === 1488 || u === 93) && s++;
}
return s * t.N3;
}, e.getPenaltyN4 = function(n) {
let r = 0;
const s = n.data.length;
for (let u = 0; u < s; u++) r += n.data[u];
return Math.abs(Math.ceil(r * 100 / s / 5) - 10) * t.N4;
};
function i(o, n, r) {
switch (o) {
case e.Patterns.PATTERN000:
return (n + r) % 2 === 0;
case e.Patterns.PATTERN001:
return n % 2 === 0;
case e.Patterns.PATTERN010:
return r % 3 === 0;
case e.Patterns.PATTERN011:
return (n + r) % 3 === 0;
case e.Patterns.PATTERN100:
return (Math.floor(n / 2) + Math.floor(r / 3)) % 2 === 0;
case e.Patterns.PATTERN101:
return n * r % 2 + n * r % 3 === 0;
case e.Patterns.PATTERN110:
return (n * r % 2 + n * r % 3) % 2 === 0;
case e.Patterns.PATTERN111:
return (n * r % 3 + (n + r) % 2) % 2 === 0;
default:
throw new Error("bad maskPattern:" + o);
}
}
e.applyMask = function(n, r) {
const s = r.size;
for (let a = 0; a < s; a++)
for (let u = 0; u < s; u++)
r.isReserved(u, a) || r.xor(u, a, i(n, u, a));
}, e.getBestMask = function(n, r) {
const s = Object.keys(e.Patterns).length;
let a = 0, u = 1 / 0;
for (let c = 0; c < s; c++) {
r(c), e.applyMask(c, n);
const l = e.getPenaltyN1(n) + e.getPenaltyN2(n) + e.getPenaltyN3(n) + e.getPenaltyN4(n);
e.applyMask(c, n), l < u && (u = l, a = c);
}
return a;
};
})(Bt);
var j = {};
const R = $, K = [
// L M Q H
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
2,
2,
1,
2,
2,
4,
1,
2,
4,
4,
2,
4,
4,
4,
2,
4,
6,
5,
2,
4,
6,
6,
2,
5,
8,
8,
4,
5,
8,
8,
4,
5,
8,
11,
4,
8,
10,
11,
4,
9,
12,
16,
4,
9,
16,
16,
6,
10,
12,
18,
6,
10,
17,
16,
6,
11,
16,
19,
6,
13,
18,
21,
7,
14,
21,
25,
8,
16,
20,
25,
8,
17,
23,
25,
9,
17,
23,
34,
9,
18,
25,
30,
10,
20,
27,
32,
12,
21,
29,
35,
12,
23,
34,
37,
12,
25,
34,
40,
13,
26,
35,
42,
14,
28,
38,
45,
15,
29,
40,
48,
16,
31,
43,
51,
17,
33,
45,
54,
18,
35,
48,
57,
19,
37,
51,
60,
19,
38,
53,
63,
20,
40,
56,
66,
21,
43,
59,
70,
22,
45,
62,
74,
24,
47,
65,
77,
25,
49,
68,
81
], J = [
// L M Q H
7,
10,
13,
17,
10,
16,
22,
28,
15,
26,
36,
44,
20,
36,
52,
64,
26,
48,
72,
88,
36,
64,
96,
112,
40,
72,
108,
130,
48,
88,
132,
156,
60,
110,
160,
192,
72,
130,
192,
224,
80,
150,
224,
264,
96,
176,
260,
308,
104,
198,
288,
352,
120,
216,
320,
384,
132,
240,
360,
432,
144,
280,
408,
480,
168,
308,
448,
532,
180,
338,
504,
588,
196,
364,
546,
650,
224,
416,
600,
700,
224,
442,
644,
750,
252,
476,
690,
816,
270,
504,
750,
900,
300,
560,
810,
960,
312,
588,
870,
1050,
336,
644,
952,
1110,
360,
700,
1020,
1200,
390,
728,
1050,
1260,
420,
784,
1140,
1350,
450,
812,
1200,
1440,
480,
868,
1290,
1530,
510,
924,
1350,
1620,
540,
980,
1440,
1710,
570,
1036,
1530,
1800,
570,
1064,
1590,
1890,
600,
1120,
1680,
1980,
630,
1204,
1770,
2100,
660,
1260,
1860,
2220,
720,
1316,
1950,
2310,
750,
1372,
2040,
2430
];
j.getBlocksCount = function(t, i) {
switch (i) {
case R.L:
return K[(t - 1) * 4 + 0];
case R.M:
return K[(t - 1) * 4 + 1];
case R.Q:
return K[(t - 1) * 4 + 2];
case R.H:
return K[(t - 1) * 4 + 3];
default:
return;
}
};
j.getTotalCodewordsCount = function(t, i) {
switch (i) {
case R.L:
return J[(t - 1) * 4 + 0];
case R.M:
return J[(t - 1) * 4 + 1];
case R.Q:
return J[(t - 1) * 4 + 2];
case R.H:
return J[(t - 1) * 4 + 3];
default:
return;
}
};
var At = {}, Q = {};
const F = new Uint8Array(512), O = new Uint8Array(256);
(function() {
let t = 1;
for (let i = 0; i < 255; i++)
F[i] = t, O[t] = i, t <<= 1, t & 256 && (t ^= 285);
for (let i = 255; i < 512; i++)
F[i] = F[i - 255];
})();
Q.log = function(t) {
if (t < 1) throw new Error("log(" + t + ")");
return O[t];
};
Q.exp = function(t) {
return F[t];
};
Q.mul = function(t, i) {
return t === 0 || i === 0 ? 0 : F[O[t] + O[i]];
};
(function(e) {
const t = Q;
e.mul = function(o, n) {
const r = new Uint8Array(o.length + n.length - 1);
for (let s = 0; s < o.length; s++)
for (let a = 0; a < n.length; a++)
r[s + a] ^= t.mul(o[s], n[a]);
return r;
}, e.mod = function(o, n) {
let r = new Uint8Array(o);
for (; r.length - n.length >= 0; ) {
const s = r[0];
for (let u = 0; u < n.length; u++)
r[u] ^= t.mul(n[u], s);
let a = 0;
for (; a < r.length && r[a] === 0; ) a++;
r = r.slice(a);
}
return r;
}, e.generateECPolynomial = function(o) {
let n = new Uint8Array([1]);
for (let r = 0; r < o; r++)
n = e.mul(n, new Uint8Array([1, t.exp(r)]));
return n;
};
})(At);
const Tt = At;
function ct(e) {
this.genPoly = void 0, this.degree = e, this.degree && this.initialize(this.degree);
}
ct.prototype.initialize = function(t) {
this.degree = t, this.genPoly = Tt.generateECPolynomial(this.degree);
};
ct.prototype.encode = function(t) {
if (!this.genPoly)
throw new Error("Encoder not initialized");
const i = new Uint8Array(t.length + this.degree);
i.set(t);
const o = Tt.mod(i, this.genPoly), n = this.degree - o.length;
if (n > 0) {
const r = new Uint8Array(this.degree);
return r.set(o, n), r;
}
return o;
};
var Qt = ct, Nt = {}, L = {}, lt = {};
lt.isValid = function(t) {
return !isNaN(t) && t >= 1 && t <= 40;
};
var b = {};
const It = "[0-9]+", Gt = "[A-Z $%*+\\-./:]+";
let z = "(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";
z = z.replace(/u/g, "\\u");
const qt = "(?:(?![A-Z0-9 $%*+\\-./:]|" + z + `)(?:.|[\r
]))+`;
b.KANJI = new RegExp(z, "g");
b.BYTE_KANJI = new RegExp("[^A-Z0-9 $%*+\\-./:]+", "g");
b.BYTE = new RegExp(qt, "g");
b.NUMERIC = new RegExp(It, "g");
b.ALPHANUMERIC = new RegExp(Gt, "g");
const Wt = new RegExp("^" + z + "$"), Zt = new RegExp("^" + It + "$"), Xt = new RegExp("^[A-Z0-9 $%*+\\-./:]+$");
b.testKanji = function(t) {
return Wt.test(t);
};
b.testNumeric = function(t) {
return Zt.test(t);
};
b.testAlphanumeric = function(t) {
return Xt.test(t);
};
(function(e) {
const t = lt, i = b;
e.NUMERIC = {
id: "Numeric",
bit: 1,
ccBits: [10, 12, 14]
}, e.ALPHANUMERIC = {
id: "Alphanumeric",
bit: 2,
ccBits: [9, 11, 13]
}, e.BYTE = {
id: "Byte",
bit: 4,
ccBits: [8, 16, 16]
}, e.KANJI = {
id: "Kanji",
bit: 8,
ccBits: [8, 10, 12]
}, e.MIXED = {
bit: -1
}, e.getCharCountIndicator = function(r, s) {
if (!r.ccBits) throw new Error("Invalid mode: " + r);
if (!t.isValid(s))
throw new Error("Invalid version: " + s);
return s >= 1 && s < 10 ? r.ccBits[0] : s < 27 ? r.ccBits[1] : r.ccBits[2];
}, e.getBestModeForData = function(r) {
return i.testNumeric(r) ? e.NUMERIC : i.testAlphanumeric(r) ? e.ALPHANUMERIC : i.testKanji(r) ? e.KANJI : e.BYTE;
}, e.toString = function(r) {
if (r && r.id) return r.id;
throw new Error("Invalid mode");
}, e.isValid = function(r) {
return r && r.bit && r.ccBits;
};
function o(n) {
if (typeof n != "string")
throw new Error("Param is not a string");
switch (n.toLowerCase()) {
case "numeric":
return e.NUMERIC;
case "alphanumeric":
return e.ALPHANUMERIC;
case "kanji":
return e.KANJI;
case "byte":
return e.BYTE;
default:
throw new Error("Unknown mode: " + n);
}
}
e.from = function(r, s) {
if (e.isValid(r))
return r;
try {
return o(r);
} catch {
return s;
}
};
})(L);
(function(e) {
const t = N, i = j, o = $, n = L, r = lt, s = 7973, a = t.getBCHDigit(s);
function u(d, f, m) {
for (let y = 1; y <= 40; y++)
if (f <= e.getCapacity(y, m, d))
return y;
}
function c(d, f) {
return n.getCharCountIndicator(d, f) + 4;
}
function l(d, f) {
let m = 0;
return d.forEach(function(y) {
const T = c(y.mode, f);
m += T + y.getBitsLength();
}), m;
}
function p(d, f) {
for (let m = 1; m <= 40; m++)
if (l(d, m) <= e.getCapacity(m, f, n.MIXED))
return m;
}
e.from = function(f, m) {
return r.isValid(f) ? parseInt(f, 10) : m;
}, e.getCapacity = function(f, m, y) {
if (!r.isValid(f))
throw new Error("Invalid QR Code version");
typeof y > "u" && (y = n.BYTE);
const T = t.getSymbolTotalCodewords(f), w = i.getTotalCodewordsCount(f, m), C = (T - w) * 8;
if (y === n.MIXED) return C;
const h = C - c(y, f);
switch (y) {
case n.NUMERIC:
return Math.floor(h / 10 * 3);
case n.ALPHANUMERIC:
return Math.floor(h / 11 * 2);
case n.KANJI:
return Math.floor(h / 13);
case n.BYTE:
default:
return Math.floor(h / 8);
}
}, e.getBestVersionForData = function(f, m) {
let y;
const T = o.from(m, o.M);
if (Array.isArray(f)) {
if (f.length > 1)
return p(f, T);
if (f.length === 0)
return 1;
y = f[0];
} else
y = f;
return u(y.mode, y.getLength(), T);
}, e.getEncodedBits = function(f) {
if (!r.isValid(f) || f < 7)
throw new Error("Invalid QR Code version");
let m = f << 12;
for (; t.getBCHDigit(m) - a >= 0; )
m ^= s << t.getBCHDigit(m) - a;
return f << 12 | m;
};
})(Nt);
var Mt = {};
const rt = N, bt = 1335, xt = 21522, wt = rt.getBCHDigit(bt);
Mt.getEncodedBits = function(t, i) {
const o = t.bit << 3 | i;
let n = o << 10;
for (; rt.getBCHDigit(n) - wt >= 0; )
n ^= bt << rt.getBCHDigit(n) - wt;
return (o << 10 | n) ^ xt;
};
var St = {};
const te = L;
function _(e) {
this.mode = te.NUMERIC, this.data = e.toString();
}
_.getBitsLength = function(t) {
return 10 * Math.floor(t / 3) + (t % 3 ? t % 3 * 3 + 1 : 0);
};
_.prototype.getLength = function() {
return this.data.length;
};
_.prototype.getBitsLength = function() {
return _.getBitsLength(this.data.length);
};
_.prototype.write = function(t) {
let i, o, n;
for (i = 0; i + 3 <= this.data.length; i += 3)
o = this.data.substr(i, 3), n = parseInt(o, 10), t.put(n, 10);
const r = this.data.length - i;
r > 0 && (o = this.data.substr(i), n = parseInt(o, 10), t.put(n, r * 3 + 1));
};
var ee = _;
const ne = L, x = [
"0",
"1",
"2",
"3",
"4",
"5",
"6",
"7",
"8",
"9",
"A",
"B",
"C",
"D",
"E",
"F",
"G",
"H",
"I",
"J",
"K",
"L",
"M",
"N",
"O",
"P",
"Q",
"R",
"S",
"T",
"U",
"V",
"W",
"X",
"Y",
"Z",
" ",
"$",
"%",
"*",
"+",
"-",
".",
"/",
":"
];
function D(e) {
this.mode = ne.ALPHANUMERIC, this.data = e;
}
D.getBitsLength = function(t) {
return 11 * Math.floor(t / 2) + 6 * (t % 2);
};
D.prototype.getLength = function() {
return this.data.length;
};
D.prototype.getBitsLength = function() {
return D.getBitsLength(this.data.length);
};
D.prototype.write = function(t) {
let i;
for (i = 0; i + 2 <= this.data.length; i += 2) {
let o = x.indexOf(this.data[i]) * 45;
o += x.indexOf(this.data[i + 1]), t.put(o, 11);
}
this.data.length % 2 && t.put(x.indexOf(this.data[i]), 6);
};
var oe = D;
const re = L;
function U(e) {
this.mode = re.BYTE, typeof e == "string" ? this.data = new TextEncoder().encode(e) : this.data = new Uint8Array(e);
}
U.getBitsLength = function(t) {
return t * 8;
};
U.prototype.getLength = function() {
return this.data.length;
};
U.prototype.getBitsLength = function() {
return U.getBitsLength(this.data.length);
};
U.prototype.write = function(e) {
for (let t = 0, i = this.data.length; t < i; t++)
e.put(this.data[t], 8);
};
var ie = U;
const se = L, ue = N;
function k(e) {
this.mode = se.KANJI, this.data = e;
}
k.getBitsLength = function(t) {
return t * 13;
};
k.prototype.getLength = function() {
return this.data.length;
};
k.prototype.getBitsLength = function() {
return k.getBitsLength(this.data.length);
};
k.prototype.write = function(e) {
let t;
for (t = 0; t < this.data.length; t++) {
let i = ue.toSJIS(this.data[t]);
if (i >= 33088 && i <= 40956)
i -= 33088;
else if (i >= 57408 && i <= 60351)
i -= 49472;
else
throw new Error(
"Invalid SJIS character: " + this.data[t] + `
Make sure your charset is UTF-8`
);
i = (i >>> 8 & 255) * 192 + (i & 255), e.put(i, 13);
}
};
var ae = k, Pt = { exports: {} };
(function(e) {
var t = {
single_source_shortest_paths: function(i, o, n) {
var r = {}, s = {};
s[o] = 0;
var a = t.PriorityQueue.make();
a.push(o, 0);
for (var u, c, l, p, d, f, m, y, T; !a.empty(); ) {
u = a.pop(), c = u.value, p = u.cost, d = i[c] || {};
for (l in d)
d.hasOwnProperty(l) && (f = d[l], m = p + f, y = s[l], T = typeof s[l] > "u", (T || y > m) && (s[l] = m, a.push(l, m), r[l] = c));
}
if (typeof n < "u" && typeof s[n] > "u") {
var w = ["Could not find a path from ", o, " to ", n, "."].join("");
throw new Error(w);
}
return r;
},
extract_shortest_path_from_predecessor_list: function(i, o) {
for (var n = [], r = o; r; )
n.push(r), i[r], r = i[r];
return n.reverse(), n;
},
find_path: function(i, o, n) {
var r = t.single_source_shortest_paths(i, o, n);
return t.extract_shortest_path_from_predecessor_list(
r,
n
);
},
/**
* A very naive priority queue implementation.
*/
PriorityQueue: {
make: function(i) {
var o = t.PriorityQueue, n = {}, r;
i = i || {};
for (r in o)
o.hasOwnProperty(r) && (n[r] = o[r]);
return n.queue = [], n.sorter = i.sorter || o.default_sorter, n;
},
default_sorter: function(i, o) {
return i.cost - o.cost;
},
/**
* Add a new item to the queue and ensure the highest priority element
* is at the front of the queue.
*/
push: function(i, o) {
var n = { value: i, cost: o };
this.queue.push(n), this.queue.sort(this.sorter);
},
/**
* Return the highest priority element in the queue.
*/
pop: function() {
return this.queue.shift();
},
empty: function() {
return this.queue.length === 0;
}
}
};
e.exports = t;
})(Pt);
var ce = Pt.exports;
(function(e) {
const t = L, i = ee, o = oe, n = ie, r = ae, s = b, a = N, u = ce;
function c(w) {
return unescape(encodeURIComponent(w)).length;
}
function l(w, C, h) {
const g = [];
let E;
for (; (E = w.exec(h)) !== null; )
g.push({
data: E[0],
index: E.index,
mode: C,
length: E[0].length
});
return g;
}
function p(w) {
const C = l(s.NUMERIC, t.NUMERIC, w), h = l(s.ALPHANUMERIC, t.ALPHANUMERIC, w);
let g, E;
return a.isKanjiModeEnabled() ? (g = l(s.BYTE, t.BYTE, w), E = l(s.KANJI, t.KANJI, w)) : (g = l(s.BYTE_KANJI, t.BYTE, w), E = []), C.concat(h, g, E).sort(function(A, I) {
return A.index - I.index;
}).map(function(A) {
return {
data: A.data,
mode: A.mode,
length: A.length
};
});
}
function d(w, C) {
switch (C) {
case t.NUMERIC:
return i.getBitsLength(w);
case t.ALPHANUMERIC:
return o.getBitsLength(w);
case t.KANJI:
return r.getBitsLength(w);
case t.BYTE:
return n.getBitsLength(w);
}
}
function f(w) {
return w.reduce(function(C, h) {
const g = C.length - 1 >= 0 ? C[C.length - 1] : null;
return g && g.mode === h.mode ? (C[C.length - 1].data += h.data, C) : (C.push(h), C);
}, []);
}
function m(w) {
const C = [];
for (let h = 0; h < w.length; h++) {
const g = w[h];
switch (g.mode) {
case t.NUMERIC:
C.push([
g,
{ data: g.data, mode: t.ALPHANUMERIC, length: g.length },
{ data: g.data, mode: t.BYTE, length: g.length }
]);
break;
case t.ALPHANUMERIC:
C.push([
g,
{ data: g.data, mode: t.BYTE, length: g.length }
]);
break;
case t.KANJI:
C.push([
g,
{ data: g.data, mode: t.BYTE, length: c(g.data) }
]);
break;
case t.BYTE:
C.push([
{ data: g.data, mode: t.BYTE, length: c(g.data) }
]);
}
}
return C;
}
function y(w, C) {
const h = {}, g = { start: {} };
let E = ["start"];
for (let B = 0; B < w.length; B++) {
const A = w[B], I = [];
for (let P = 0; P < A.length; P++) {
const M = A[P], v = "" + B + P;
I.push(v), h[v] = { node: M, lastCount: 0 }, g[v] = {};
for (let q = 0; q < E.length; q++) {
const S = E[q];
h[S] && h[S].node.mode === M.mode ? (g[S][v] = d(h[S].lastCount + M.length, M.mode) - d(h[S].lastCount, M.mode), h[S].lastCount += M.length) : (h[S] && (h[S].lastCount = M.length), g[S][v] = d(M.length, M.mode) + 4 + t.getCharCountIndicator(M.mode, C));
}
}
E = I;
}
for (let B = 0; B < E.length; B++)
g[E[B]].end = 0;
return { map: g, table: h };
}
function T(w, C) {
let h;
const g = t.getBestModeForData(w);
if (h = t.from(C, g), h !== t.BYTE && h.bit < g.bit)
throw new Error('"' + w + '" cannot be encoded with mode ' + t.toString(h) + `.
Suggested mode is: ` + t.toString(g));
switch (h === t.KANJI && !a.isKanjiModeEnabled() && (h = t.BYTE), h) {
case t.NUMERIC:
return new i(w);
case t.ALPHANUMERIC:
return new o(w);
case t.KANJI:
return new r(w);
case t.BYTE:
return new n(w);
}
}
e.fromArray = function(C) {
return C.reduce(function(h, g) {
return typeof g == "string" ? h.push(T(g, null)) : g.data && h.push(T(g.data, g.mode)), h;
}, []);
}, e.fromString = function(C, h) {
const g = p(C, a.isKanjiModeEnabled()), E = m(g), B = y(E, h), A = u.find_path(B.map, "start", "end"), I = [];
for (let P = 1; P < A.length - 1; P++)
I.push(B.table[A[P]].node);
return e.fromArray(f(I));
}, e.rawSplit = function(C) {
return e.fromArray(
p(C, a.isKanjiModeEnabled())
);
};
})(St);
const G = N, tt = $, le = Yt, fe = $t, de = Et, ge = pt, it = Bt, st = j, he = Qt, Y = Nt, we = Mt, me = L, et = St;
function ye(e, t) {
const i = e.size, o = ge.getPositions(t);
for (let n = 0; n < o.length; n++) {
const r = o[n][0], s = o[n][1];
for (let a = -1; a <= 7; a++)
if (!(r + a <= -1 || i <= r + a))
for (let u = -1; u <= 7; u++)
s + u <= -1 || i <= s + u || (a >= 0 && a <= 6 && (u === 0 || u === 6) || u >= 0 && u <= 6 && (a === 0 || a === 6) || a >= 2 && a <= 4 && u >= 2 && u <= 4 ? e.set(r + a, s + u, !0, !0) : e.set(r + a, s + u, !1, !0));
}
}
function Ce(e) {
const t = e.size;
for (let i = 8; i < t - 8; i++) {
const o = i % 2 === 0;
e.set(i, 6, o, !0), e.set(6, i, o, !0);
}
}
function Ee(e, t) {
const i = de.getPositions(t);
for (let o = 0; o < i.length; o++) {
const n = i[o][0], r = i[o][1];
for (let s = -2; s <= 2; s++)
for (let a = -2; a <= 2; a++)
s === -2 || s === 2 || a === -2 || a === 2 || s === 0 && a === 0 ? e.set(n + s, r + a, !0, !0) : e.set(n + s, r + a, !1, !0);
}
}
function pe(e, t) {
const i = e.size, o = Y.getEncodedBits(t);
let n, r, s;
for (let a = 0; a < 18; a++)
n = Math.floor(a / 3), r = a % 3 + i - 8 - 3, s = (o >> a & 1) === 1, e.set(n, r, s, !0), e.set(r, n, s, !0);
}
function nt(e, t, i) {
const o = e.size, n = we.getEncodedBits(t, i);
let r, s;
for (r = 0; r < 15; r++)
s = (n >> r & 1) === 1, r < 6 ? e.set(r, 8, s, !0) : r < 8 ? e.set(r + 1, 8, s, !0) : e.set(o - 15 + r, 8, s, !0), r < 8 ? e.set(8, o - r - 1, s, !0) : r < 9 ? e.set(8, 15 - r - 1 + 1, s, !0) : e.set(8, 15 - r - 1, s, !0);
e.set(o - 8, 8, 1, !0);
}
function Be(e, t) {
const i = e.size;
let o = -1, n = i - 1, r = 7, s = 0;
for (let a = i - 1; a > 0; a -= 2)
for (a === 6 && a--; ; ) {
for (let u = 0; u < 2; u++)
if (!e.isReserved(n, a - u)) {
let c = !1;
s < t.length && (c = (t[s] >>> r & 1) === 1), e.set(n, a - u, c), r--, r === -1 && (s++, r = 7);
}
if (n += o, n < 0 || i <= n) {
n -= o, o = -o;
break;
}
}
}
function Ae(e, t, i) {
const o = new le();
i.forEach(function(u) {
o.put(u.mode.bit, 4), o.put(u.getLength(), me.getCharCountIndicator(u.mode, e)), u.write(o);
});
const n = G.getSymbolTotalCodewords(e), r = st.getTotalCodewordsCount(e, t), s = (n - r) * 8;
for (o.getLengthInBits() + 4 <= s && o.put(0, 4); o.getLengthInBits() % 8 !== 0; )
o.putBit(0);
const a = (s - o.getLengthInBits()) / 8;
for (let u = 0; u < a; u++)
o.put(u % 2 ? 17 : 236, 8);
return Te(o, e, t);
}
function Te(e, t, i) {
const o = G.getSymbolTotalCodewords(t), n = st.getTotalCodewordsCount(t, i), r = o - n, s = st.getBlocksCount(t, i), a = o % s, u = s - a, c = Math.floor(o / s), l = Math.floor(r / s), p = l + 1, d = c - l, f = new he(d);
let m = 0;
const y = new Array(s), T = new Array(s);
let w = 0;
const C = new Uint8Array(e.buffer);
for (let A = 0; A < s; A++) {
const I = A < u ? l : p;
y[A] = C.slice(m, m + I), T[A] = f.encode(y[A]), m += I, w = Math.max(w, I);
}
const h = new Uint8Array(o);
let g = 0, E, B;
for (E = 0; E < w; E++)
for (B = 0; B < s; B++)
E < y[B].length && (h[g++] = y[B][E]);
for (E = 0; E < d; E++)
for (B = 0; B < s; B++)
h[g++] = T[B][E];
return h;
}
function Ne(e, t, i, o) {
let n;
if (Array.isArray(e))
n = et.fromArray(e);
else if (typeof e == "string") {
let c = t;
if (!c) {
const l = et.rawSplit(e);
c = Y.getBestVersionForData(l, i);
}
n = et.fromString(e, c || 40);
} else
throw new Error("Invalid data");
const r = Y.getBestVersionForData(n, i);
if (!r)
throw new Error("The amount of data is too big to be stored in a QR Code");
if (!t)
t = r;
else if (t < r)
throw new Error(
`
The chosen QR Code version cannot contain this amount of data.
Minimum version required to store current data is: ` + r + `.
`
);
const s = Ae(t, i, n), a = G.getSymbolSize(t), u = new fe(a);
return ye(u, t), Ce(u), Ee(u, t), nt(u, i, 0), t >= 7 && pe(u, t), Be(u, s), isNaN(o) && (o = it.getBestMask(
u,
nt.bind(null, u, i)
)), it.applyMask(o, u), nt(u, i, o), {
modules: u,
version: t,
errorCorrectionLevel: i,
maskPattern: o,
segments: n
};
}
yt.create = function(t, i) {
if (typeof t > "u" || t === "")
throw new Error("No input text");
let o = tt.M, n, r;
return typeof i < "u" && (o = tt.from(i.errorCorrectionLevel, tt.M), n = Y.from(i.version), r = it.from(i.maskPattern), i.toSJISFunc && G.setToSJISFunction(i.toSJISFunc)), Ne(t, n, o, r);
};
var Rt = {}, ft = {};
(function(e) {
function t(i) {
if (typeof i == "number" && (i = i.toString()), typeof i != "string")
throw new Error("Color should be defined as hex string");
let o = i.slice().replace("#", "").split("");
if (o.length < 3 || o.length === 5 || o.length > 8)
throw new Error("Invalid hex color: " + i);
(o.length === 3 || o.length === 4) && (o = Array.prototype.concat.apply([], o.map(function(r) {
return [r, r];
}))), o.length === 6 && o.push("F", "F");
const n = parseInt(o.join(""), 16);
return {
r: n >> 24 & 255,
g: n >> 16 & 255,
b: n >> 8 & 255,
a: n & 255,
hex: "#" + o.slice(0, 6).join("")
};
}
e.getOptions = function(o) {
o || (o = {}), o.color || (o.color = {});
const n = typeof o.margin > "u" || o.margin === null || o.margin < 0 ? 4 : o.margin, r = o.width && o.width >= 21 ? o.width : void 0, s = o.scale || 4;
return {
width: r,
scale: r ? 4 : s,
margin: n,
color: {
dark: t(o.color.dark || "#000000ff"),
light: t(o.color.light || "#ffffffff")
},
type: o.type,
rendererOpts: o.rendererOpts || {}
};
}, e.getScale = function(o, n) {
return n.width && n.width >= o + n.margin * 2 ? n.width / (o + n.margin * 2) : n.scale;
}, e.getImageWidth = function(o, n) {
const r = e.getScale(o, n);
return Math.floor((o + n.margin * 2) * r);
}, e.qrToImageData = function(o, n, r) {
const s = n.modules.size, a = n.modules.data, u = e.getScale(s, r), c = Math.floor((s + r.margin * 2) * u), l = r.margin * u, p = [r.color.light, r.color.dark];
for (let d = 0; d < c; d++)
for (let f = 0; f < c; f++) {
let m = (d * c + f) * 4, y = r.color.light;
if (d >= l && f >= l && d < c - l && f < c - l) {
const T = Math.floor((d - l) / u), w = Math.floor((f - l) / u);
y = p[a[T * s + w] ? 1 : 0];
}
o[m++] = y.r, o[m++] = y.g, o[m++] = y.b, o[m] = y.a;
}
};
})(ft);
(function(e) {
const t = ft;
function i(n, r, s) {
n.clearRect(0, 0, r.width, r.height), r.style || (r.style = {}), r.height = s, r.width = s, r.style.height = s + "px", r.style.width = s + "px";
}
function o() {
try {
return document.createElement("canvas");
} catch {
throw new Error("You need to specify a canvas element");
}
}
e.render = function(r, s, a) {
let u = a, c = s;
typeof u > "u" && (!s || !s.getContext) && (u = s, s = void 0), s || (c = o()), u = t.getOptions(u);
const l = t.getImageWidth(r.modules.size, u), p = c.getContext("2d"), d = p.createImageData(l, l);
return t.qrToImageData(d.data, r, u), i(p, c, l), p.putImageData(d, 0, 0), c;
}, e.renderToDataURL = function(r, s, a) {
let u = a;
typeof u > "u" && (!s || !s.getContext) && (u = s, s = void 0), u || (u = {});
const c = e.render(r, s, u), l = u.type || "image/png", p = u.rendererOpts || {};
return c.toDataURL(l, p.quality);
};
})(Rt);
var Lt = {};
const Ie = ft;
function mt(e, t) {
const i = e.a / 255, o = t + '="' + e.hex + '"';
return i < 1 ? o + " " + t + '-opacity="' + i.toFixed(2).slice(1) + '"' : o;
}
function ot(e, t, i) {
let o = e + t;
return typeof i < "u" && (o += " " + i), o;
}
function Me(e, t, i) {
let o = "", n = 0, r = !1, s = 0;
for (let a = 0; a < e.length; a++) {
const u = Math.floor(a % t), c = Math.floor(a / t);
!u && !r && (r = !0), e[a] ? (s++, a > 0 && u > 0 && e[a - 1] || (o += r ? ot("M", u + i, 0.5 + c + i) : ot("m", n, 0), n = 0, r = !1), u + 1 < t && e[a + 1] || (o += ot("h", s), s = 0)) : n++;
}
return o;
}
Lt.render = function(t, i, o) {
const n = Ie.getOptions(i), r = t.modules.size, s = t.modules.data, a = r + n.margin * 2, u = n.color.light.a ? "<path " + mt(n.color.light, "fill") + ' d="M0 0h' + a + "v" + a + 'H0z"/>' : "", c = "<path " + mt(n.color.dark, "stroke") + ' d="' + Me(s, r, n.margin) + '"/>', l = 'viewBox="0 0 ' + a + " " + a + '"', d = '<svg xmlns="http://www.w3.org/2000/svg" ' + (n.width ? 'width="' + n.width + '" height="' + n.width + '" ' : "") + l + ' shape-rendering="crispEdges">' + u + c + `</svg>
`;
return typeof o == "function" && o(null, d), d;
};
const be = Jt, ut = yt, _t = Rt, Se = Lt;
function dt(e, t, i, o, n) {
const r = [].slice.call(arguments, 1), s = r.length, a = typeof r[s - 1] == "function";
if (!a && !be())
throw new Error("Callback required as last argument");
if (a) {
if (s < 2)
throw new Error("Too few arguments provided");
s === 2 ? (n = i, i = t, t = o = void 0) : s === 3 && (t.getContext && typeof n > "u" ? (n = o, o = void 0) : (n = o, o = i, i = t, t = void 0));
} else {
if (s < 1)
throw new Error("Too few arguments provided");
return s === 1 ? (i = t, t = o = void 0) : s === 2 && !t.getContext && (o = i, i = t, t = void 0), new Promise(function(u, c) {
try {
const l = ut.create(i, o);
u(e(l, t, o));
} catch (l) {
c(l);
}
});
}
try {
const u = ut.create(i, o);
n(null, e(u, t, o));
} catch (u) {
n(u);
}
}
V.create = ut.create;
V.toCanvas = dt.bind(null, _t.render);
V.toDataURL = dt.bind(null, _t.renderToDataURL);
V.toString = dt.bind(null, function(e, t, i) {
return Se.render(e, i);
});
const Pe = {
key: 0,
class: "f-c-c-c"
}, Re = { class: "tips" }, De = /* @__PURE__ */ Dt({
__name: "BaseQrcode",
props: {
value: { default: "" },
size: {},
level: { default: "M" },
darkColor: { default: "#000" },
lightColor: {},
quality: {}
},
setup(e) {
let t = "";
const i = e, o = W(null), n = W(null), r = W(""), s = (a = i.value) => {
if (!a) return r.value = "缺少text属性";
if (t === a) return Kt("二维码已生成,无需再次生成", "warning");
const { size: u, level: c, darkColor: l, lightColor: p } = i;
V.toCanvas(o.value, a, {
errorCorrectionLevel: c,
margin: 0,
// 二维码内边距,默认为4。单位px
height: u,
// 二维码高度
width: u,
// 二维码宽度
scal: 177,
color: {
dark: l,
// 二维码背景颜色
light: p
// 二维码前景颜色
},
rendererOpts: {
quality: 0.9
}
}).then((d) => {
n.value.append(d), t = a;
}).catch((d) => {
console.error(d), r.value = "生成二维码失败,请点击重试";
});
};
return Ut(() => {
s(i.value);
}), (a, u) => {
const c = kt("el-button");
return X(), Z("div", {
class: "basic-qrcode f-c-c",
ref_key: "basicQrcodeRef",
ref: n
}, [
gt(r) ? (X(), Z("div", Pe, [
vt("span", Re, zt(gt(r)), 1),
Ft(c, {
onClick: u[0] || (u[0] = (l) => s(a.value))
}, {
default: Vt(() => u[1] || (u[1] = [
Ht("重试")
])),
_: 1
})
])) : (X(), Z("canvas", {
key: 1,
ref_key: "canvasRef",
ref: o
}, null, 512))
], 512);
};
}
});
export {
De as default
};