snice 3.8.0 → 3.9.0

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.
Files changed (33) hide show
  1. package/bin/snice.js +8 -0
  2. package/dist/components/file-gallery/snice-file-gallery.d.ts +87 -0
  3. package/dist/components/file-gallery/snice-file-gallery.js +892 -0
  4. package/dist/components/file-gallery/snice-file-gallery.js.map +1 -0
  5. package/dist/components/file-gallery/snice-file-gallery.types.d.ts +72 -0
  6. package/dist/components/qr-reader/qr-decoder.d.ts +20 -0
  7. package/dist/components/qr-reader/qr-decoder.js +49 -0
  8. package/dist/components/qr-reader/qr-decoder.js.map +1 -0
  9. package/dist/components/qr-reader/qr-worker.d.ts +6 -0
  10. package/dist/components/qr-reader/qr-worker.js +64 -0
  11. package/dist/components/qr-reader/qr-worker.js.map +1 -0
  12. package/dist/components/qr-reader/snice-qr-reader.d.ts +39 -0
  13. package/dist/components/qr-reader/snice-qr-reader.js +436 -0
  14. package/dist/components/qr-reader/snice-qr-reader.js.map +1 -0
  15. package/dist/components/qr-reader/snice-qr-reader.types.d.ts +17 -0
  16. package/dist/components/qr-reader/zxing-reader.mjs +1582 -0
  17. package/dist/components/qr-reader/zxing-share.mjs +305 -0
  18. package/dist/components/qr-reader/zxing_reader.wasm +0 -0
  19. package/dist/components/zxing-reader-B3Rfebg9.js +1771 -0
  20. package/dist/components/zxing-reader-B3Rfebg9.js.map +1 -0
  21. package/dist/index.cjs +1 -1
  22. package/dist/index.esm.js +1 -1
  23. package/dist/index.iife.js +1 -1
  24. package/dist/symbols.cjs +1 -1
  25. package/dist/symbols.esm.js +1 -1
  26. package/dist/transitions.cjs +1 -1
  27. package/dist/transitions.esm.js +1 -1
  28. package/docs/ai/README.md +1 -1
  29. package/docs/ai/components/file-gallery.md +206 -0
  30. package/docs/ai/components/qr-reader.md +80 -0
  31. package/docs/components/file-gallery.md +692 -0
  32. package/docs/components/qr-reader.md +327 -0
  33. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zxing-reader-B3Rfebg9.js","sources":["../../components/qr-reader/zxing-share.mjs","../../components/qr-reader/zxing-reader.mjs"],"sourcesContent":["const m = [\n [\"Aztec\", \"M\"],\n [\"Codabar\", \"L\"],\n [\"Code39\", \"L\"],\n [\"Code93\", \"L\"],\n [\"Code128\", \"L\"],\n [\"DataBar\", \"L\"],\n [\"DataBarExpanded\", \"L\"],\n [\"DataMatrix\", \"M\"],\n [\"EAN-8\", \"L\"],\n [\"EAN-13\", \"L\"],\n [\"ITF\", \"L\"],\n [\"MaxiCode\", \"M\"],\n [\"PDF417\", \"M\"],\n [\"QRCode\", \"M\"],\n [\"UPC-A\", \"L\"],\n [\"UPC-E\", \"L\"],\n [\"MicroQRCode\", \"M\"],\n [\"rMQRCode\", \"M\"],\n [\"DXFilmEdge\", \"L\"],\n [\"DataBarLimited\", \"L\"]\n], O = m.map(([e]) => e), L = O.filter(\n (e, t) => m[t][1] === \"L\"\n), w = O.filter(\n (e, t) => m[t][1] === \"M\"\n);\nfunction l(e) {\n switch (e) {\n case \"Linear-Codes\":\n return L.reduce((t, r) => t | l(r), 0);\n case \"Matrix-Codes\":\n return w.reduce((t, r) => t | l(r), 0);\n case \"Any\":\n return (1 << m.length) - 1;\n case \"None\":\n return 0;\n default:\n return 1 << O.indexOf(e);\n }\n}\nfunction E(e) {\n if (e === 0)\n return \"None\";\n const t = 31 - Math.clz32(e);\n return O[t];\n}\nfunction M(e) {\n return e.reduce((t, r) => t | l(r), 0);\n}\nconst b = [\n \"LocalAverage\",\n \"GlobalHistogram\",\n \"FixedThreshold\",\n \"BoolCast\"\n];\nfunction x(e) {\n return b.indexOf(e);\n}\nconst y = [\n \"Unknown\",\n \"ASCII\",\n \"ISO8859_1\",\n \"ISO8859_2\",\n \"ISO8859_3\",\n \"ISO8859_4\",\n \"ISO8859_5\",\n \"ISO8859_6\",\n \"ISO8859_7\",\n \"ISO8859_8\",\n \"ISO8859_9\",\n \"ISO8859_10\",\n \"ISO8859_11\",\n \"ISO8859_13\",\n \"ISO8859_14\",\n \"ISO8859_15\",\n \"ISO8859_16\",\n \"Cp437\",\n \"Cp1250\",\n \"Cp1251\",\n \"Cp1252\",\n \"Cp1256\",\n \"Shift_JIS\",\n \"Big5\",\n \"GB2312\",\n \"GB18030\",\n \"EUC_JP\",\n \"EUC_KR\",\n \"UTF16BE\",\n /**\n * UnicodeBig [[deprecated]]\n */\n \"UTF16BE\",\n \"UTF8\",\n \"UTF16LE\",\n \"UTF32BE\",\n \"UTF32LE\",\n \"BINARY\"\n];\nfunction B(e) {\n return e === \"UnicodeBig\" ? y.indexOf(\"UTF16BE\") : y.indexOf(e);\n}\nconst F = [\n \"Text\",\n \"Binary\",\n \"Mixed\",\n \"GS1\",\n \"ISO15434\",\n \"UnknownECI\"\n];\nfunction T(e) {\n return F[e];\n}\nconst A = [\"Ignore\", \"Read\", \"Require\"];\nfunction U(e) {\n return A.indexOf(e);\n}\nconst R = [\"Plain\", \"ECI\", \"HRI\", \"Hex\", \"Escaped\"];\nfunction p(e) {\n return R.indexOf(e);\n}\nconst u = {\n formats: [],\n tryHarder: !0,\n tryRotate: !0,\n tryInvert: !0,\n tryDownscale: !0,\n tryDenoise: !1,\n binarizer: \"LocalAverage\",\n isPure: !1,\n downscaleFactor: 3,\n downscaleThreshold: 500,\n minLineCount: 2,\n maxNumberOfSymbols: 255,\n tryCode39ExtendedMode: !0,\n returnErrors: !1,\n eanAddOnSymbol: \"Ignore\",\n textMode: \"HRI\",\n characterSet: \"Unknown\"\n};\nfunction I(e) {\n return {\n ...e,\n formats: M(e.formats),\n binarizer: x(e.binarizer),\n eanAddOnSymbol: U(e.eanAddOnSymbol),\n textMode: p(e.textMode),\n characterSet: B(e.characterSet)\n };\n}\nfunction P(e) {\n return {\n ...e,\n format: E(e.format),\n contentType: T(e.contentType),\n eccLevel: e.ecLevel\n };\n}\nfunction _(e) {\n var t;\n return {\n ...e,\n image: (t = e.image && new Blob([new Uint8Array(e.image)], {\n type: \"image/png\"\n })) != null ? t : null\n };\n}\nconst h = {\n format: \"QRCode\",\n readerInit: !1,\n forceSquareDataMatrix: !1,\n ecLevel: \"\",\n scale: 0,\n sizeHint: 0,\n rotate: 0,\n withHRT: !1,\n withQuietZones: !0,\n options: \"\"\n};\nfunction z(e) {\n return {\n ...e,\n format: l(e.format)\n };\n}\nconst H = \"2.2.2\", N = \"c0a7c6cd2165457c721c58045edd22ffee9624e9\", W = {\n locateFile: (e, t) => {\n const r = e.match(/_(.+?)\\.wasm$/);\n return r ? `https://fastly.jsdelivr.net/npm/zxing-wasm@2.2.2/dist/${r[1]}/${e}` : t + e;\n }\n}, f = /* @__PURE__ */ new WeakMap();\nfunction D(e, t) {\n return Object.is(e, t) || Object.keys(e).length === Object.keys(t).length && Object.keys(e).every(\n (r) => Object.hasOwn(t, r) && e[r] === t[r]\n );\n}\nfunction S(e, {\n overrides: t,\n equalityFn: r = D,\n fireImmediately: d = !1\n} = {}) {\n var a;\n const [o, s] = (a = f.get(e)) != null ? a : [W], n = t != null ? t : o;\n let i;\n if (d) {\n if (s && (i = r(o, n)))\n return s;\n const c = e({\n ...n\n });\n return f.set(e, [n, c]), c;\n }\n (i != null ? i : r(o, n)) || f.set(e, [n]);\n}\nfunction v(e) {\n f.delete(e);\n}\nasync function Z(e, t, r = u) {\n const d = {\n ...u,\n ...r\n }, o = await S(e, {\n fireImmediately: !0\n });\n let s, n;\n if (\"width\" in t && \"height\" in t && \"data\" in t) {\n const {\n data: a,\n data: { byteLength: c },\n width: g,\n height: C\n } = t;\n n = o._malloc(c), o.HEAPU8.set(a, n), s = o.readBarcodesFromPixmap(\n n,\n g,\n C,\n I(d)\n );\n } else {\n let a, c;\n if (\"buffer\" in t)\n [a, c] = [t.byteLength, t];\n else if (\"byteLength\" in t)\n [a, c] = [t.byteLength, new Uint8Array(t)];\n else if (\"size\" in t)\n [a, c] = [t.size, new Uint8Array(await t.arrayBuffer())];\n else\n throw new TypeError(\"Invalid input type\");\n n = o._malloc(a), o.HEAPU8.set(c, n), s = o.readBarcodesFromImage(\n n,\n a,\n I(d)\n );\n }\n o._free(n);\n const i = [];\n for (let a = 0; a < s.size(); ++a)\n i.push(\n P(s.get(a))\n );\n return i;\n}\nasync function X(e, t, r = h) {\n const d = {\n ...h,\n ...r\n }, o = z(\n d\n ), s = await S(e, {\n fireImmediately: !0\n });\n if (typeof t == \"string\")\n return _(\n s.writeBarcodeFromText(t, o)\n );\n const { byteLength: n } = t, i = s._malloc(n);\n s.HEAPU8.set(t, i);\n const a = s.writeBarcodeFromBytes(\n i,\n n,\n o\n );\n return s._free(i), _(a);\n}\nconst j = {\n ...u,\n formats: [...u.formats]\n}, G = { ...h };\nexport {\n N as Z,\n v as a,\n H as b,\n O as c,\n j as d,\n b as e,\n y as f,\n F as g,\n A as h,\n G as i,\n L as l,\n w as m,\n S as p,\n Z as r,\n R as t,\n X as w\n};\n","import { p as pi, a as hi, r as _i } from \"./zxing-share.mjs\";\nimport { Z as Fi, b as ki, c as Ei, e as Si, f as ji, g as Oi, d as Di, h as Wi, l as Mi, m as xi, t as Ii } from \"./zxing-share.mjs\";\nvar Mr = async function(F = {}) {\n var x, gr, l = F, xr, yr, we = new Promise((e, r) => {\n xr = e, yr = r;\n }), Ce = typeof window == \"object\", Pe = typeof Bun < \"u\", Ir = typeof WorkerGlobalScope < \"u\";\n typeof process == \"object\" && (!((gr = process.versions) === null || gr === void 0) && gr.node) && process.type != \"renderer\";\n var Ur = \"./this.program\", Te, mr = \"\";\n function Ae(e) {\n return l.locateFile ? l.locateFile(e, mr) : mr + e;\n }\n var Vr, $r;\n if (Ce || Ir || Pe) {\n try {\n mr = new URL(\".\", Te).href;\n } catch {\n }\n Ir && ($r = (e) => {\n var r = new XMLHttpRequest();\n return r.open(\"GET\", e, !1), r.responseType = \"arraybuffer\", r.send(null), new Uint8Array(r.response);\n }), Vr = async (e) => {\n var r = await fetch(e, {\n credentials: \"same-origin\"\n });\n if (r.ok)\n return r.arrayBuffer();\n throw new Error(r.status + \" : \" + r.url);\n };\n }\n var Hr = console.log.bind(console), Z = console.error.bind(console), Y, nr, Br = !1, I, E, ir, z, L, $, Nr, Zr;\n function zr() {\n var e = nr.buffer;\n I = new Int8Array(e), ir = new Int16Array(e), l.HEAPU8 = E = new Uint8Array(e), z = new Uint16Array(e), L = new Int32Array(e), $ = new Uint32Array(e), Nr = new Float32Array(e), Zr = new Float64Array(e);\n }\n function Re() {\n if (l.preRun)\n for (typeof l.preRun == \"function\" && (l.preRun = [l.preRun]); l.preRun.length; )\n Ve(l.preRun.shift());\n Lr(Xr);\n }\n function Fe() {\n b.ya();\n }\n function ke() {\n if (l.postRun)\n for (typeof l.postRun == \"function\" && (l.postRun = [l.postRun]); l.postRun.length; )\n Ue(l.postRun.shift());\n Lr(Gr);\n }\n var U = 0, K = null;\n function Ee(e) {\n var r;\n U++, (r = l.monitorRunDependencies) === null || r === void 0 || r.call(l, U);\n }\n function Se(e) {\n var r;\n if (U--, (r = l.monitorRunDependencies) === null || r === void 0 || r.call(l, U), U == 0 && K) {\n var t = K;\n K = null, t();\n }\n }\n function br(e) {\n var r;\n (r = l.onAbort) === null || r === void 0 || r.call(l, e), e = \"Aborted(\" + e + \")\", Z(e), Br = !0, e += \". Build with -sASSERTIONS for more info.\";\n var t = new WebAssembly.RuntimeError(e);\n throw yr(t), t;\n }\n var G;\n function je() {\n return Ae(\"zxing_reader.wasm\");\n }\n function Oe(e) {\n if (e == G && Y)\n return new Uint8Array(Y);\n if ($r)\n return $r(e);\n throw \"both async and sync fetching of the wasm failed\";\n }\n async function De(e) {\n if (!Y)\n try {\n var r = await Vr(e);\n return new Uint8Array(r);\n } catch {\n }\n return Oe(e);\n }\n async function We(e, r) {\n try {\n var t = await De(e), n = await WebAssembly.instantiate(t, r);\n return n;\n } catch (i) {\n Z(`failed to asynchronously prepare wasm: ${i}`), br(i);\n }\n }\n async function Me(e, r, t) {\n if (!e && typeof WebAssembly.instantiateStreaming == \"function\")\n try {\n var n = fetch(r, {\n credentials: \"same-origin\"\n }), i = await WebAssembly.instantiateStreaming(n, t);\n return i;\n } catch (a) {\n Z(`wasm streaming compile failed: ${a}`), Z(\"falling back to ArrayBuffer instantiation\");\n }\n return We(r, t);\n }\n function xe() {\n return {\n a: $n\n };\n }\n async function Ie() {\n function e(a, s) {\n return b = a.exports, nr = b.xa, zr(), ie = b.Ba, Se(), b;\n }\n Ee();\n function r(a) {\n return e(a.instance);\n }\n var t = xe();\n if (l.instantiateWasm)\n return new Promise((a, s) => {\n l.instantiateWasm(t, (o, u) => {\n a(e(o));\n });\n });\n G != null || (G = je());\n try {\n var n = await Me(Y, G, t), i = r(n);\n return i;\n } catch (a) {\n return yr(a), Promise.reject(a);\n }\n }\n var Lr = (e) => {\n for (; e.length > 0; )\n e.shift()(l);\n }, Gr = [], Ue = (e) => Gr.push(e), Xr = [], Ve = (e) => Xr.push(e), p = (e) => Pn(e), h = () => Tn(), ar = [], or = 0, He = (e) => {\n var r = new wr(e);\n return r.get_caught() || (r.set_caught(!0), or--), r.set_rethrown(!1), ar.push(r), Rn(e), wn(e);\n }, O = 0, Be = () => {\n d(0, 0);\n var e = ar.pop();\n An(e.excPtr), O = 0;\n };\n class wr {\n constructor(r) {\n this.excPtr = r, this.ptr = r - 24;\n }\n set_type(r) {\n $[this.ptr + 4 >> 2] = r;\n }\n get_type() {\n return $[this.ptr + 4 >> 2];\n }\n set_destructor(r) {\n $[this.ptr + 8 >> 2] = r;\n }\n get_destructor() {\n return $[this.ptr + 8 >> 2];\n }\n set_caught(r) {\n r = r ? 1 : 0, I[this.ptr + 12] = r;\n }\n get_caught() {\n return I[this.ptr + 12] != 0;\n }\n set_rethrown(r) {\n r = r ? 1 : 0, I[this.ptr + 13] = r;\n }\n get_rethrown() {\n return I[this.ptr + 13] != 0;\n }\n init(r, t) {\n this.set_adjusted_ptr(0), this.set_type(r), this.set_destructor(t);\n }\n set_adjusted_ptr(r) {\n $[this.ptr + 16 >> 2] = r;\n }\n get_adjusted_ptr() {\n return $[this.ptr + 16 >> 2];\n }\n }\n var sr = (e) => Cn(e), Cr = (e) => {\n var r = O;\n if (!r)\n return sr(0), 0;\n var t = new wr(r);\n t.set_adjusted_ptr(r);\n var n = t.get_type();\n if (!n)\n return sr(0), r;\n for (var i of e) {\n if (i === 0 || i === n)\n break;\n var a = t.ptr + 16;\n if (Fn(i, n, a))\n return sr(i), r;\n }\n return sr(n), r;\n }, Ne = () => Cr([]), Ze = (e) => Cr([e]), ze = (e, r) => Cr([e, r]), Le = () => {\n var e = ar.pop();\n e || br(\"no exception to throw\");\n var r = e.excPtr;\n throw e.get_rethrown() || (ar.push(e), e.set_rethrown(!0), e.set_caught(!1), or++), O = r, O;\n }, Ge = (e, r, t) => {\n var n = new wr(e);\n throw n.init(r, t), O = e, or++, O;\n }, Xe = () => or, qe = (e) => {\n throw O || (O = e), O;\n }, Ye = () => br(\"\"), ur = {}, Pr = (e) => {\n for (; e.length; ) {\n var r = e.pop(), t = e.pop();\n t(r);\n }\n };\n function J(e) {\n return this.fromWireType($[e >> 2]);\n }\n var X = {}, V = {}, fr = {}, Ke = class extends Error {\n constructor(r) {\n super(r), this.name = \"InternalError\";\n }\n }, lr = (e) => {\n throw new Ke(e);\n }, H = (e, r, t) => {\n e.forEach((o) => fr[o] = r);\n function n(o) {\n var u = t(o);\n u.length !== e.length && lr(\"Mismatched type converter count\");\n for (var f = 0; f < e.length; ++f)\n j(e[f], u[f]);\n }\n var i = new Array(r.length), a = [], s = 0;\n r.forEach((o, u) => {\n V.hasOwnProperty(o) ? i[u] = V[o] : (a.push(o), X.hasOwnProperty(o) || (X[o] = []), X[o].push(() => {\n i[u] = V[o], ++s, s === a.length && n(i);\n }));\n }), a.length === 0 && n(i);\n }, Je = (e) => {\n var r = ur[e];\n delete ur[e];\n var t = r.rawConstructor, n = r.rawDestructor, i = r.fields, a = i.map((s) => s.getterReturnType).concat(i.map((s) => s.setterArgumentType));\n H([e], a, (s) => {\n var o = {};\n return i.forEach((u, f) => {\n var c = u.fieldName, v = s[f], g = s[f].optional, y = u.getter, w = u.getterContext, P = s[f + i.length], C = u.setter, T = u.setterContext;\n o[c] = {\n read: (M) => v.fromWireType(y(w, M)),\n write: (M, R) => {\n var k = [];\n C(T, M, P.toWireType(k, R)), Pr(k);\n },\n optional: g\n };\n }), [{\n name: r.name,\n fromWireType: (u) => {\n var f = {};\n for (var c in o)\n f[c] = o[c].read(u);\n return n(u), f;\n },\n toWireType: (u, f) => {\n for (var c in o)\n if (!(c in f) && !o[c].optional)\n throw new TypeError(`Missing field: \"${c}\"`);\n var v = t();\n for (c in o)\n o[c].write(v, f[c]);\n return u !== null && u.push(n, v), v;\n },\n argPackAdvance: D,\n readValueFromPointer: J,\n destructorFunction: n\n }];\n });\n }, Qe = (e, r, t, n, i) => {\n }, rt = () => {\n for (var e = new Array(256), r = 0; r < 256; ++r)\n e[r] = String.fromCharCode(r);\n qr = e;\n }, qr, A = (e) => {\n for (var r = \"\", t = e; E[t]; )\n r += qr[E[t++]];\n return r;\n }, Q = class extends Error {\n constructor(r) {\n super(r), this.name = \"BindingError\";\n }\n }, m = (e) => {\n throw new Q(e);\n };\n function et(e, r) {\n let t = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};\n var n = r.name;\n if (e || m(`type \"${n}\" must have a positive integer typeid pointer`), V.hasOwnProperty(e)) {\n if (t.ignoreDuplicateRegistrations)\n return;\n m(`Cannot register type '${n}' twice`);\n }\n if (V[e] = r, delete fr[e], X.hasOwnProperty(e)) {\n var i = X[e];\n delete X[e], i.forEach((a) => a());\n }\n }\n function j(e, r) {\n let t = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};\n return et(e, r, t);\n }\n var D = 8, tt = (e, r, t, n) => {\n r = A(r), j(e, {\n name: r,\n fromWireType: function(i) {\n return !!i;\n },\n toWireType: function(i, a) {\n return a ? t : n;\n },\n argPackAdvance: D,\n readValueFromPointer: function(i) {\n return this.fromWireType(E[i]);\n },\n destructorFunction: null\n });\n }, nt = (e) => ({\n count: e.count,\n deleteScheduled: e.deleteScheduled,\n preservePointerOnDelete: e.preservePointerOnDelete,\n ptr: e.ptr,\n ptrType: e.ptrType,\n smartPtr: e.smartPtr,\n smartPtrType: e.smartPtrType\n }), Tr = (e) => {\n function r(t) {\n return t.$$.ptrType.registeredClass.name;\n }\n m(r(e) + \" instance already deleted\");\n }, Ar = !1, Yr = (e) => {\n }, it = (e) => {\n e.smartPtr ? e.smartPtrType.rawDestructor(e.smartPtr) : e.ptrType.registeredClass.rawDestructor(e.ptr);\n }, Kr = (e) => {\n e.count.value -= 1;\n var r = e.count.value === 0;\n r && it(e);\n }, rr = (e) => typeof FinalizationRegistry > \"u\" ? (rr = (r) => r, e) : (Ar = new FinalizationRegistry((r) => {\n Kr(r.$$);\n }), rr = (r) => {\n var t = r.$$, n = !!t.smartPtr;\n if (n) {\n var i = {\n $$: t\n };\n Ar.register(r, i, r);\n }\n return r;\n }, Yr = (r) => Ar.unregister(r), rr(e)), at = () => {\n let e = cr.prototype;\n Object.assign(e, {\n isAliasOf(t) {\n if (!(this instanceof cr) || !(t instanceof cr))\n return !1;\n var n = this.$$.ptrType.registeredClass, i = this.$$.ptr;\n t.$$ = t.$$;\n for (var a = t.$$.ptrType.registeredClass, s = t.$$.ptr; n.baseClass; )\n i = n.upcast(i), n = n.baseClass;\n for (; a.baseClass; )\n s = a.upcast(s), a = a.baseClass;\n return n === a && i === s;\n },\n clone() {\n if (this.$$.ptr || Tr(this), this.$$.preservePointerOnDelete)\n return this.$$.count.value += 1, this;\n var t = rr(Object.create(Object.getPrototypeOf(this), {\n $$: {\n value: nt(this.$$)\n }\n }));\n return t.$$.count.value += 1, t.$$.deleteScheduled = !1, t;\n },\n delete() {\n this.$$.ptr || Tr(this), this.$$.deleteScheduled && !this.$$.preservePointerOnDelete && m(\"Object already scheduled for deletion\"), Yr(this), Kr(this.$$), this.$$.preservePointerOnDelete || (this.$$.smartPtr = void 0, this.$$.ptr = void 0);\n },\n isDeleted() {\n return !this.$$.ptr;\n },\n deleteLater() {\n return this.$$.ptr || Tr(this), this.$$.deleteScheduled && !this.$$.preservePointerOnDelete && m(\"Object already scheduled for deletion\"), this.$$.deleteScheduled = !0, this;\n }\n });\n const r = Symbol.dispose;\n r && (e[r] = e.delete);\n };\n function cr() {\n }\n var Rr = (e, r) => Object.defineProperty(r, \"name\", {\n value: e\n }), Jr = {}, Qr = (e, r, t) => {\n if (e[r].overloadTable === void 0) {\n var n = e[r];\n e[r] = function() {\n for (var i = arguments.length, a = new Array(i), s = 0; s < i; s++)\n a[s] = arguments[s];\n return e[r].overloadTable.hasOwnProperty(a.length) || m(`Function '${t}' called with an invalid number of arguments (${a.length}) - expects one of (${e[r].overloadTable})!`), e[r].overloadTable[a.length].apply(this, a);\n }, e[r].overloadTable = [], e[r].overloadTable[n.argCount] = n;\n }\n }, re = (e, r, t) => {\n l.hasOwnProperty(e) ? ((t === void 0 || l[e].overloadTable !== void 0 && l[e].overloadTable[t] !== void 0) && m(`Cannot register public name '${e}' twice`), Qr(l, e, e), l[e].overloadTable.hasOwnProperty(t) && m(`Cannot register multiple overloads of a function with the same number of arguments (${t})!`), l[e].overloadTable[t] = r) : (l[e] = r, l[e].argCount = t);\n }, ot = 48, st = 57, ut = (e) => {\n e = e.replace(/[^a-zA-Z0-9_]/g, \"$\");\n var r = e.charCodeAt(0);\n return r >= ot && r <= st ? `_${e}` : e;\n };\n function ft(e, r, t, n, i, a, s, o) {\n this.name = e, this.constructor = r, this.instancePrototype = t, this.rawDestructor = n, this.baseClass = i, this.getActualType = a, this.upcast = s, this.downcast = o, this.pureVirtualFunctions = [];\n }\n var Fr = (e, r, t) => {\n for (; r !== t; )\n r.upcast || m(`Expected null or instance of ${t.name}, got an instance of ${r.name}`), e = r.upcast(e), r = r.baseClass;\n return e;\n }, kr = (e) => {\n if (e === null)\n return \"null\";\n var r = typeof e;\n return r === \"object\" || r === \"array\" || r === \"function\" ? e.toString() : \"\" + e;\n };\n function lt(e, r) {\n if (r === null)\n return this.isReference && m(`null is not a valid ${this.name}`), 0;\n r.$$ || m(`Cannot pass \"${kr(r)}\" as a ${this.name}`), r.$$.ptr || m(`Cannot pass deleted object as a pointer of type ${this.name}`);\n var t = r.$$.ptrType.registeredClass, n = Fr(r.$$.ptr, t, this.registeredClass);\n return n;\n }\n function ct(e, r) {\n var t;\n if (r === null)\n return this.isReference && m(`null is not a valid ${this.name}`), this.isSmartPointer ? (t = this.rawConstructor(), e !== null && e.push(this.rawDestructor, t), t) : 0;\n (!r || !r.$$) && m(`Cannot pass \"${kr(r)}\" as a ${this.name}`), r.$$.ptr || m(`Cannot pass deleted object as a pointer of type ${this.name}`), !this.isConst && r.$$.ptrType.isConst && m(`Cannot convert argument of type ${r.$$.smartPtrType ? r.$$.smartPtrType.name : r.$$.ptrType.name} to parameter type ${this.name}`);\n var n = r.$$.ptrType.registeredClass;\n if (t = Fr(r.$$.ptr, n, this.registeredClass), this.isSmartPointer)\n switch (r.$$.smartPtr === void 0 && m(\"Passing raw pointer to smart pointer is illegal\"), this.sharingPolicy) {\n case 0:\n r.$$.smartPtrType === this ? t = r.$$.smartPtr : m(`Cannot convert argument of type ${r.$$.smartPtrType ? r.$$.smartPtrType.name : r.$$.ptrType.name} to parameter type ${this.name}`);\n break;\n case 1:\n t = r.$$.smartPtr;\n break;\n case 2:\n if (r.$$.smartPtrType === this)\n t = r.$$.smartPtr;\n else {\n var i = r.clone();\n t = this.rawShare(t, W.toHandle(() => i.delete())), e !== null && e.push(this.rawDestructor, t);\n }\n break;\n default:\n m(\"Unsupporting sharing policy\");\n }\n return t;\n }\n function vt(e, r) {\n if (r === null)\n return this.isReference && m(`null is not a valid ${this.name}`), 0;\n r.$$ || m(`Cannot pass \"${kr(r)}\" as a ${this.name}`), r.$$.ptr || m(`Cannot pass deleted object as a pointer of type ${this.name}`), r.$$.ptrType.isConst && m(`Cannot convert argument of type ${r.$$.ptrType.name} to parameter type ${this.name}`);\n var t = r.$$.ptrType.registeredClass, n = Fr(r.$$.ptr, t, this.registeredClass);\n return n;\n }\n var ee = (e, r, t) => {\n if (r === t)\n return e;\n if (t.baseClass === void 0)\n return null;\n var n = ee(e, r, t.baseClass);\n return n === null ? null : t.downcast(n);\n }, dt = {}, pt = (e, r) => {\n for (r === void 0 && m(\"ptr should not be undefined\"); e.baseClass; )\n r = e.upcast(r), e = e.baseClass;\n return r;\n }, ht = (e, r) => (r = pt(e, r), dt[r]), vr = (e, r) => {\n (!r.ptrType || !r.ptr) && lr(\"makeClassHandle requires ptr and ptrType\");\n var t = !!r.smartPtrType, n = !!r.smartPtr;\n return t !== n && lr(\"Both smartPtrType and smartPtr must be specified\"), r.count = {\n value: 1\n }, rr(Object.create(e, {\n $$: {\n value: r,\n writable: !0\n }\n }));\n };\n function _t(e) {\n var r = this.getPointee(e);\n if (!r)\n return this.destructor(e), null;\n var t = ht(this.registeredClass, r);\n if (t !== void 0) {\n if (t.$$.count.value === 0)\n return t.$$.ptr = r, t.$$.smartPtr = e, t.clone();\n var n = t.clone();\n return this.destructor(e), n;\n }\n function i() {\n return this.isSmartPointer ? vr(this.registeredClass.instancePrototype, {\n ptrType: this.pointeeType,\n ptr: r,\n smartPtrType: this,\n smartPtr: e\n }) : vr(this.registeredClass.instancePrototype, {\n ptrType: this,\n ptr: e\n });\n }\n var a = this.registeredClass.getActualType(r), s = Jr[a];\n if (!s)\n return i.call(this);\n var o;\n this.isConst ? o = s.constPointerType : o = s.pointerType;\n var u = ee(r, this.registeredClass, o.registeredClass);\n return u === null ? i.call(this) : this.isSmartPointer ? vr(o.registeredClass.instancePrototype, {\n ptrType: o,\n ptr: u,\n smartPtrType: this,\n smartPtr: e\n }) : vr(o.registeredClass.instancePrototype, {\n ptrType: o,\n ptr: u\n });\n }\n var gt = () => {\n Object.assign(dr.prototype, {\n getPointee(e) {\n return this.rawGetPointee && (e = this.rawGetPointee(e)), e;\n },\n destructor(e) {\n var r;\n (r = this.rawDestructor) === null || r === void 0 || r.call(this, e);\n },\n argPackAdvance: D,\n readValueFromPointer: J,\n fromWireType: _t\n });\n };\n function dr(e, r, t, n, i, a, s, o, u, f, c) {\n this.name = e, this.registeredClass = r, this.isReference = t, this.isConst = n, this.isSmartPointer = i, this.pointeeType = a, this.sharingPolicy = s, this.rawGetPointee = o, this.rawConstructor = u, this.rawShare = f, this.rawDestructor = c, !i && r.baseClass === void 0 ? n ? (this.toWireType = lt, this.destructorFunction = null) : (this.toWireType = vt, this.destructorFunction = null) : this.toWireType = ct;\n }\n var te = (e, r, t) => {\n l.hasOwnProperty(e) || lr(\"Replacing nonexistent public symbol\"), l[e].overloadTable !== void 0 && t !== void 0 ? l[e].overloadTable[t] = r : (l[e] = r, l[e].argCount = t);\n }, ne = [], ie, _ = (e) => {\n var r = ne[e];\n return r || (ne[e] = r = ie.get(e)), r;\n }, yt = function(e, r) {\n let t = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : [];\n if (e.includes(\"j\"))\n return dynCallLegacy(e, r, t);\n var n = _(r), i = n(...t);\n function a(s) {\n return s;\n }\n return i;\n }, mt = function(e, r) {\n let t = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : !1;\n return function() {\n for (var n = arguments.length, i = new Array(n), a = 0; a < n; a++)\n i[a] = arguments[a];\n return yt(e, r, i, t);\n };\n }, S = function(e, r) {\n e = A(e);\n function t() {\n if (e.includes(\"j\"))\n return mt(e, r);\n var i = _(r);\n return i;\n }\n var n = t();\n return typeof n != \"function\" && m(`unknown function pointer with signature ${e}: ${r}`), n;\n };\n class $t extends Error {\n }\n var ae = (e) => {\n var r = bn(e), t = A(r);\n return N(r), t;\n }, pr = (e, r) => {\n var t = [], n = {};\n function i(a) {\n if (!n[a] && !V[a]) {\n if (fr[a]) {\n fr[a].forEach(i);\n return;\n }\n t.push(a), n[a] = !0;\n }\n }\n throw r.forEach(i), new $t(`${e}: ` + t.map(ae).join([\", \"]));\n }, bt = (e, r, t, n, i, a, s, o, u, f, c, v, g) => {\n c = A(c), a = S(i, a), o && (o = S(s, o)), f && (f = S(u, f)), g = S(v, g);\n var y = ut(c);\n re(y, function() {\n pr(`Cannot construct ${c} due to unbound types`, [n]);\n }), H([e, r, t], n ? [n] : [], (w) => {\n w = w[0];\n var P, C;\n n ? (P = w.registeredClass, C = P.instancePrototype) : C = cr.prototype;\n var T = Rr(c, function() {\n if (Object.getPrototypeOf(this) !== M)\n throw new Q(`Use 'new' to construct ${c}`);\n if (R.constructor_body === void 0)\n throw new Q(`${c} has no accessible constructor`);\n for (var ye = arguments.length, hr = new Array(ye), _r = 0; _r < ye; _r++)\n hr[_r] = arguments[_r];\n var me = R.constructor_body[hr.length];\n if (me === void 0)\n throw new Q(`Tried to invoke ctor of ${c} with invalid number of parameters (${hr.length}) - expected (${Object.keys(R.constructor_body).toString()}) parameters instead!`);\n return me.apply(this, hr);\n }), M = Object.create(C, {\n constructor: {\n value: T\n }\n });\n T.prototype = M;\n var R = new ft(c, T, M, g, P, a, o, f);\n if (R.baseClass) {\n var k, tr;\n (tr = (k = R.baseClass).__derivedClasses) !== null && tr !== void 0 || (k.__derivedClasses = []), R.baseClass.__derivedClasses.push(R);\n }\n var di = new dr(c, R, !0, !1, !1), _e = new dr(c + \"*\", R, !1, !1, !1), ge = new dr(c + \" const*\", R, !1, !0, !1);\n return Jr[e] = {\n pointerType: _e,\n constPointerType: ge\n }, te(y, T), [di, _e, ge];\n });\n }, Er = (e, r) => {\n for (var t = [], n = 0; n < e; n++)\n t.push($[r + n * 4 >> 2]);\n return t;\n };\n function wt(e) {\n for (var r = 1; r < e.length; ++r)\n if (e[r] !== null && e[r].destructorFunction === void 0)\n return !0;\n return !1;\n }\n function Sr(e, r, t, n, i, a) {\n var s = r.length;\n s < 2 && m(\"argTypes array size mismatch! Must at least get return value and 'this' types!\");\n var o = r[1] !== null && t !== null, u = wt(r), f = r[0].name !== \"void\", c = s - 2, v = new Array(c), g = [], y = [], w = function() {\n y.length = 0;\n var P;\n g.length = o ? 2 : 1, g[0] = i, o && (P = r[1].toWireType(y, this), g[1] = P);\n for (var C = 0; C < c; ++C)\n v[C] = r[C + 2].toWireType(y, C < 0 || arguments.length <= C ? void 0 : arguments[C]), g.push(v[C]);\n var T = n(...g);\n function M(R) {\n if (u)\n Pr(y);\n else\n for (var k = o ? 1 : 2; k < r.length; k++) {\n var tr = k === 1 ? P : v[k - 2];\n r[k].destructorFunction !== null && r[k].destructorFunction(tr);\n }\n if (f)\n return r[0].fromWireType(R);\n }\n return M(T);\n };\n return Rr(e, w);\n }\n var Ct = (e, r, t, n, i, a) => {\n var s = Er(r, t);\n i = S(n, i), H([], [e], (o) => {\n o = o[0];\n var u = `constructor ${o.name}`;\n if (o.registeredClass.constructor_body === void 0 && (o.registeredClass.constructor_body = []), o.registeredClass.constructor_body[r - 1] !== void 0)\n throw new Q(`Cannot register multiple constructors with identical number of parameters (${r - 1}) for class '${o.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);\n return o.registeredClass.constructor_body[r - 1] = () => {\n pr(`Cannot construct ${o.name} due to unbound types`, s);\n }, H([], s, (f) => (f.splice(1, 0, null), o.registeredClass.constructor_body[r - 1] = Sr(u, f, null, i, a), [])), [];\n });\n }, oe = (e) => {\n e = e.trim();\n const r = e.indexOf(\"(\");\n return r === -1 ? e : e.slice(0, r);\n }, Pt = (e, r, t, n, i, a, s, o, u, f) => {\n var c = Er(t, n);\n r = A(r), r = oe(r), a = S(i, a), H([], [e], (v) => {\n v = v[0];\n var g = `${v.name}.${r}`;\n r.startsWith(\"@@\") && (r = Symbol[r.substring(2)]), o && v.registeredClass.pureVirtualFunctions.push(r);\n function y() {\n pr(`Cannot call ${g} due to unbound types`, c);\n }\n var w = v.registeredClass.instancePrototype, P = w[r];\n return P === void 0 || P.overloadTable === void 0 && P.className !== v.name && P.argCount === t - 2 ? (y.argCount = t - 2, y.className = v.name, w[r] = y) : (Qr(w, r, g), w[r].overloadTable[t - 2] = y), H([], c, (C) => {\n var T = Sr(g, C, v, a, s);\n return w[r].overloadTable === void 0 ? (T.argCount = t - 2, w[r] = T) : w[r].overloadTable[t - 2] = T, [];\n }), [];\n });\n }, se = [], B = [0, 1, , 1, null, 1, !0, 1, !1, 1], jr = (e) => {\n e > 9 && --B[e + 1] === 0 && (B[e] = void 0, se.push(e));\n }, W = {\n toValue: (e) => (e || m(`Cannot use deleted val. handle = ${e}`), B[e]),\n toHandle: (e) => {\n switch (e) {\n case void 0:\n return 2;\n case null:\n return 4;\n case !0:\n return 6;\n case !1:\n return 8;\n default: {\n const r = se.pop() || B.length;\n return B[r] = e, B[r + 1] = 1, r;\n }\n }\n }\n }, ue = {\n name: \"emscripten::val\",\n fromWireType: (e) => {\n var r = W.toValue(e);\n return jr(e), r;\n },\n toWireType: (e, r) => W.toHandle(r),\n argPackAdvance: D,\n readValueFromPointer: J,\n destructorFunction: null\n }, Tt = (e) => j(e, ue), At = (e, r) => {\n switch (r) {\n case 4:\n return function(t) {\n return this.fromWireType(Nr[t >> 2]);\n };\n case 8:\n return function(t) {\n return this.fromWireType(Zr[t >> 3]);\n };\n default:\n throw new TypeError(`invalid float width (${r}): ${e}`);\n }\n }, Rt = (e, r, t) => {\n r = A(r), j(e, {\n name: r,\n fromWireType: (n) => n,\n toWireType: (n, i) => i,\n argPackAdvance: D,\n readValueFromPointer: At(r, t),\n destructorFunction: null\n });\n }, Ft = (e, r, t, n, i, a, s, o) => {\n var u = Er(r, t);\n e = A(e), e = oe(e), i = S(n, i), re(e, function() {\n pr(`Cannot call ${e} due to unbound types`, u);\n }, r - 1), H([], u, (f) => {\n var c = [f[0], null].concat(f.slice(1));\n return te(e, Sr(e, c, null, i, a), r - 1), [];\n });\n }, kt = (e, r, t) => {\n switch (r) {\n case 1:\n return t ? (n) => I[n] : (n) => E[n];\n case 2:\n return t ? (n) => ir[n >> 1] : (n) => z[n >> 1];\n case 4:\n return t ? (n) => L[n >> 2] : (n) => $[n >> 2];\n default:\n throw new TypeError(`invalid integer width (${r}): ${e}`);\n }\n }, Et = (e, r, t, n, i) => {\n r = A(r);\n const a = n === 0;\n let s = (u) => u;\n if (a) {\n var o = 32 - 8 * t;\n s = (u) => u << o >>> o, i = s(i);\n }\n j(e, {\n name: r,\n fromWireType: s,\n toWireType: (u, f) => f,\n argPackAdvance: D,\n readValueFromPointer: kt(r, t, n !== 0),\n destructorFunction: null\n });\n }, St = (e, r, t) => {\n var n = [Int8Array, Uint8Array, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array, Float64Array], i = n[r];\n function a(s) {\n var o = $[s >> 2], u = $[s + 4 >> 2];\n return new i(I.buffer, u, o);\n }\n t = A(t), j(e, {\n name: t,\n fromWireType: a,\n argPackAdvance: D,\n readValueFromPointer: a\n }, {\n ignoreDuplicateRegistrations: !0\n });\n }, jt = Object.assign({\n optional: !0\n }, ue), Ot = (e, r) => {\n j(e, jt);\n }, Dt = (e, r, t, n) => {\n if (!(n > 0)) return 0;\n for (var i = t, a = t + n - 1, s = 0; s < e.length; ++s) {\n var o = e.charCodeAt(s);\n if (o >= 55296 && o <= 57343) {\n var u = e.charCodeAt(++s);\n o = 65536 + ((o & 1023) << 10) | u & 1023;\n }\n if (o <= 127) {\n if (t >= a) break;\n r[t++] = o;\n } else if (o <= 2047) {\n if (t + 1 >= a) break;\n r[t++] = 192 | o >> 6, r[t++] = 128 | o & 63;\n } else if (o <= 65535) {\n if (t + 2 >= a) break;\n r[t++] = 224 | o >> 12, r[t++] = 128 | o >> 6 & 63, r[t++] = 128 | o & 63;\n } else {\n if (t + 3 >= a) break;\n r[t++] = 240 | o >> 18, r[t++] = 128 | o >> 12 & 63, r[t++] = 128 | o >> 6 & 63, r[t++] = 128 | o & 63;\n }\n }\n return r[t] = 0, t - i;\n }, q = (e, r, t) => Dt(e, E, r, t), fe = (e) => {\n for (var r = 0, t = 0; t < e.length; ++t) {\n var n = e.charCodeAt(t);\n n <= 127 ? r++ : n <= 2047 ? r += 2 : n >= 55296 && n <= 57343 ? (r += 4, ++t) : r += 3;\n }\n return r;\n }, le = typeof TextDecoder < \"u\" ? new TextDecoder() : void 0, ce = function(e) {\n let r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0, t = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : NaN;\n for (var n = r + t, i = r; e[i] && !(i >= n); ) ++i;\n if (i - r > 16 && e.buffer && le)\n return le.decode(e.subarray(r, i));\n for (var a = \"\"; r < i; ) {\n var s = e[r++];\n if (!(s & 128)) {\n a += String.fromCharCode(s);\n continue;\n }\n var o = e[r++] & 63;\n if ((s & 224) == 192) {\n a += String.fromCharCode((s & 31) << 6 | o);\n continue;\n }\n var u = e[r++] & 63;\n if ((s & 240) == 224 ? s = (s & 15) << 12 | o << 6 | u : s = (s & 7) << 18 | o << 12 | u << 6 | e[r++] & 63, s < 65536)\n a += String.fromCharCode(s);\n else {\n var f = s - 65536;\n a += String.fromCharCode(55296 | f >> 10, 56320 | f & 1023);\n }\n }\n return a;\n }, Wt = (e, r) => e ? ce(E, e, r) : \"\", Mt = (e, r) => {\n r = A(r), j(e, {\n name: r,\n fromWireType(t) {\n for (var n = $[t >> 2], i = t + 4, a, s, o = i, s = 0; s <= n; ++s) {\n var u = i + s;\n if (s == n || E[u] == 0) {\n var f = u - o, c = Wt(o, f);\n a === void 0 ? a = c : (a += \"\\0\", a += c), o = u + 1;\n }\n }\n return N(t), a;\n },\n toWireType(t, n) {\n n instanceof ArrayBuffer && (n = new Uint8Array(n));\n var i, a = typeof n == \"string\";\n a || ArrayBuffer.isView(n) && n.BYTES_PER_ELEMENT == 1 || m(\"Cannot pass non-string to std::string\"), a ? i = fe(n) : i = n.length;\n var s = he(4 + i + 1), o = s + 4;\n return $[s >> 2] = i, a ? q(n, o, i + 1) : E.set(n, o), t !== null && t.push(N, s), s;\n },\n argPackAdvance: D,\n readValueFromPointer: J,\n destructorFunction(t) {\n N(t);\n }\n });\n }, ve = typeof TextDecoder < \"u\" ? new TextDecoder(\"utf-16le\") : void 0, xt = (e, r) => {\n for (var t = e >> 1, n = t + r / 2, i = t; !(i >= n) && z[i]; ) ++i;\n if (i - t > 16 && ve) return ve.decode(z.subarray(t, i));\n for (var a = \"\", s = t; !(s >= n); ++s) {\n var o = z[s];\n if (o == 0) break;\n a += String.fromCharCode(o);\n }\n return a;\n }, It = (e, r, t) => {\n if (t != null || (t = 2147483647), t < 2) return 0;\n t -= 2;\n for (var n = r, i = t < e.length * 2 ? t / 2 : e.length, a = 0; a < i; ++a) {\n var s = e.charCodeAt(a);\n ir[r >> 1] = s, r += 2;\n }\n return ir[r >> 1] = 0, r - n;\n }, Ut = (e) => e.length * 2, Vt = (e, r) => {\n for (var t = 0, n = \"\"; !(t >= r / 4); ) {\n var i = L[e + t * 4 >> 2];\n if (i == 0) break;\n if (++t, i >= 65536) {\n var a = i - 65536;\n n += String.fromCharCode(55296 | a >> 10, 56320 | a & 1023);\n } else\n n += String.fromCharCode(i);\n }\n return n;\n }, Ht = (e, r, t) => {\n if (t != null || (t = 2147483647), t < 4) return 0;\n for (var n = r, i = n + t - 4, a = 0; a < e.length; ++a) {\n var s = e.charCodeAt(a);\n if (s >= 55296 && s <= 57343) {\n var o = e.charCodeAt(++a);\n s = 65536 + ((s & 1023) << 10) | o & 1023;\n }\n if (L[r >> 2] = s, r += 4, r + 4 > i) break;\n }\n return L[r >> 2] = 0, r - n;\n }, Bt = (e) => {\n for (var r = 0, t = 0; t < e.length; ++t) {\n var n = e.charCodeAt(t);\n n >= 55296 && n <= 57343 && ++t, r += 4;\n }\n return r;\n }, Nt = (e, r, t) => {\n t = A(t);\n var n, i, a, s;\n r === 2 ? (n = xt, i = It, s = Ut, a = (o) => z[o >> 1]) : r === 4 && (n = Vt, i = Ht, s = Bt, a = (o) => $[o >> 2]), j(e, {\n name: t,\n fromWireType: (o) => {\n for (var u = $[o >> 2], f, c = o + 4, v = 0; v <= u; ++v) {\n var g = o + 4 + v * r;\n if (v == u || a(g) == 0) {\n var y = g - c, w = n(c, y);\n f === void 0 ? f = w : (f += \"\\0\", f += w), c = g + r;\n }\n }\n return N(o), f;\n },\n toWireType: (o, u) => {\n typeof u != \"string\" && m(`Cannot pass non-string to C++ string type ${t}`);\n var f = s(u), c = he(4 + f + r);\n return $[c >> 2] = f / r, i(u, c + 4, f + r), o !== null && o.push(N, c), c;\n },\n argPackAdvance: D,\n readValueFromPointer: J,\n destructorFunction(o) {\n N(o);\n }\n });\n }, Zt = (e, r, t, n, i, a) => {\n ur[e] = {\n name: A(r),\n rawConstructor: S(t, n),\n rawDestructor: S(i, a),\n fields: []\n };\n }, zt = (e, r, t, n, i, a, s, o, u, f) => {\n ur[e].fields.push({\n fieldName: A(r),\n getterReturnType: t,\n getter: S(n, i),\n getterContext: a,\n setterArgumentType: s,\n setter: S(o, u),\n setterContext: f\n });\n }, Lt = (e, r) => {\n r = A(r), j(e, {\n isVoid: !0,\n name: r,\n argPackAdvance: 0,\n fromWireType: () => {\n },\n toWireType: (t, n) => {\n }\n });\n }, Or = [], Gt = (e, r, t, n) => (e = Or[e], r = W.toValue(r), e(null, r, t, n)), Xt = {}, qt = (e) => {\n var r = Xt[e];\n return r === void 0 ? A(e) : r;\n }, de = () => {\n if (typeof globalThis == \"object\")\n return globalThis;\n function e(r) {\n r.$$$embind_global$$$ = r;\n var t = typeof $$$embind_global$$$ == \"object\" && r.$$$embind_global$$$ == r;\n return t || delete r.$$$embind_global$$$, t;\n }\n if (typeof $$$embind_global$$$ == \"object\" || (typeof global == \"object\" && e(global) ? $$$embind_global$$$ = global : typeof self == \"object\" && e(self) && ($$$embind_global$$$ = self), typeof $$$embind_global$$$ == \"object\"))\n return $$$embind_global$$$;\n throw Error(\"unable to get global object.\");\n }, Yt = (e) => e === 0 ? W.toHandle(de()) : (e = qt(e), W.toHandle(de()[e])), Kt = (e) => {\n var r = Or.length;\n return Or.push(e), r;\n }, pe = (e, r) => {\n var t = V[e];\n return t === void 0 && m(`${r} has unknown type ${ae(e)}`), t;\n }, Jt = (e, r) => {\n for (var t = new Array(e), n = 0; n < e; ++n)\n t[n] = pe($[r + n * 4 >> 2], `parameter ${n}`);\n return t;\n }, Qt = (e, r, t) => {\n var n = [], i = e.toWireType(n, t);\n return n.length && ($[r >> 2] = W.toHandle(n)), i;\n }, rn = Reflect.construct, en = (e, r, t) => {\n var n = Jt(e, r), i = n.shift();\n e--;\n var a = new Array(e), s = (u, f, c, v) => {\n for (var g = 0, y = 0; y < e; ++y)\n a[y] = n[y].readValueFromPointer(v + g), g += n[y].argPackAdvance;\n var w = t === 1 ? rn(f, a) : f.apply(u, a);\n return Qt(i, c, w);\n }, o = `methodCaller<(${n.map((u) => u.name).join(\", \")}) => ${i.name}>`;\n return Kt(Rr(o, s));\n }, tn = (e) => {\n e > 9 && (B[e + 1] += 1);\n }, nn = (e) => {\n var r = W.toValue(e);\n Pr(r), jr(e);\n }, an = (e, r) => {\n e = pe(e, \"_emval_take_value\");\n var t = e.readValueFromPointer(r);\n return W.toHandle(t);\n }, on = (e, r, t, n) => {\n var i = (/* @__PURE__ */ new Date()).getFullYear(), a = new Date(i, 0, 1), s = new Date(i, 6, 1), o = a.getTimezoneOffset(), u = s.getTimezoneOffset(), f = Math.max(o, u);\n $[e >> 2] = f * 60, L[r >> 2] = +(o != u);\n var c = (y) => {\n var w = y >= 0 ? \"-\" : \"+\", P = Math.abs(y), C = String(Math.floor(P / 60)).padStart(2, \"0\"), T = String(P % 60).padStart(2, \"0\");\n return `UTC${w}${C}${T}`;\n }, v = c(o), g = c(u);\n u < o ? (q(v, t, 17), q(g, n, 17)) : (q(v, n, 17), q(g, t, 17));\n }, sn = () => 2147483648, un = (e, r) => Math.ceil(e / r) * r, fn = (e) => {\n var r = nr.buffer, t = (e - r.byteLength + 65535) / 65536 | 0;\n try {\n return nr.grow(t), zr(), 1;\n } catch {\n }\n }, ln = (e) => {\n var r = E.length;\n e >>>= 0;\n var t = sn();\n if (e > t)\n return !1;\n for (var n = 1; n <= 4; n *= 2) {\n var i = r * (1 + 0.2 / n);\n i = Math.min(i, e + 100663296);\n var a = Math.min(t, un(Math.max(e, i), 65536)), s = fn(a);\n if (s)\n return !0;\n }\n return !1;\n }, Dr = {}, cn = () => Ur || \"./this.program\", er = () => {\n if (!er.strings) {\n var e = (typeof navigator == \"object\" && navigator.languages && navigator.languages[0] || \"C\").replace(\"-\", \"_\") + \".UTF-8\", r = {\n USER: \"web_user\",\n LOGNAME: \"web_user\",\n PATH: \"/\",\n PWD: \"/\",\n HOME: \"/home/web_user\",\n LANG: e,\n _: cn()\n };\n for (var t in Dr)\n Dr[t] === void 0 ? delete r[t] : r[t] = Dr[t];\n var n = [];\n for (var t in r)\n n.push(`${t}=${r[t]}`);\n er.strings = n;\n }\n return er.strings;\n }, vn = (e, r) => {\n var t = 0, n = 0;\n for (var i of er()) {\n var a = r + t;\n $[e + n >> 2] = a, t += q(i, a, 1 / 0) + 1, n += 4;\n }\n return 0;\n }, dn = (e, r) => {\n var t = er();\n $[e >> 2] = t.length;\n var n = 0;\n for (var i of t)\n n += fe(i) + 1;\n return $[r >> 2] = n, 0;\n }, pn = (e) => 52;\n function hn(e, r, t, n, i) {\n return 70;\n }\n var _n = [null, [], []], gn = (e, r) => {\n var t = _n[e];\n r === 0 || r === 10 ? ((e === 1 ? Hr : Z)(ce(t)), t.length = 0) : t.push(r);\n }, yn = (e, r, t, n) => {\n for (var i = 0, a = 0; a < t; a++) {\n var s = $[r >> 2], o = $[r + 4 >> 2];\n r += 8;\n for (var u = 0; u < o; u++)\n gn(e, E[s + u]);\n i += o;\n }\n return $[n >> 2] = i, 0;\n }, mn = (e) => e;\n rt(), at(), gt(), l.noExitRuntime && l.noExitRuntime, l.print && (Hr = l.print), l.printErr && (Z = l.printErr), l.wasmBinary && (Y = l.wasmBinary), l.arguments && l.arguments, l.thisProgram && (Ur = l.thisProgram);\n var $n = {\n s: He,\n w: Be,\n a: Ne,\n j: Ze,\n m: ze,\n P: Le,\n p: Ge,\n ga: Xe,\n d: qe,\n ba: Ye,\n ua: Je,\n aa: Qe,\n pa: tt,\n sa: bt,\n ra: Ct,\n H: Pt,\n na: Tt,\n V: Rt,\n W: Ft,\n x: Et,\n t: St,\n ta: Ot,\n oa: Mt,\n Q: Nt,\n I: Zt,\n va: zt,\n qa: Lt,\n da: Gt,\n wa: jr,\n D: Yt,\n ma: en,\n X: tn,\n Y: nn,\n U: an,\n ca: on,\n ha: ln,\n ea: vn,\n fa: dn,\n ia: pn,\n _: hn,\n S: yn,\n K: ri,\n C: ti,\n M: On,\n R: ui,\n q: Yn,\n b: Mn,\n E: Qn,\n ka: ii,\n c: xn,\n ja: ai,\n h: jn,\n i: Hn,\n r: zn,\n O: Jn,\n v: Gn,\n F: qn,\n L: Kn,\n z: ni,\n J: fi,\n $: li,\n Z: ci,\n k: In,\n f: Sn,\n e: Wn,\n g: Dn,\n N: si,\n l: Vn,\n la: ei,\n o: Ln,\n B: Bn,\n u: Xn,\n T: Zn,\n A: oi,\n n: Un,\n G: Nn,\n y: mn\n }, b = await Ie();\n b.ya;\n var bn = b.za, N = l._free = b.Aa, he = l._malloc = b.Ca, wn = b.Da, d = b.Ea, Cn = b.Fa, Pn = b.Ga, Tn = b.Ha, An = b.Ia, Rn = b.Ja, Fn = b.Ka;\n l.dynCall_viijii = b.La;\n var kn = l.dynCall_iiijj = b.Ma;\n l.dynCall_jiji = b.Na;\n var En = l.dynCall_jiiii = b.Oa;\n l.dynCall_iiiiij = b.Pa, l.dynCall_iiiiijj = b.Qa, l.dynCall_iiiiiijj = b.Ra;\n function Sn(e, r) {\n var t = h();\n try {\n _(e)(r);\n } catch (n) {\n if (p(t), n !== n + 0) throw n;\n d(1, 0);\n }\n }\n function jn(e, r, t, n) {\n var i = h();\n try {\n return _(e)(r, t, n);\n } catch (a) {\n if (p(i), a !== a + 0) throw a;\n d(1, 0);\n }\n }\n function On(e, r, t, n, i) {\n var a = h();\n try {\n return _(e)(r, t, n, i);\n } catch (s) {\n if (p(a), s !== s + 0) throw s;\n d(1, 0);\n }\n }\n function Dn(e, r, t, n) {\n var i = h();\n try {\n _(e)(r, t, n);\n } catch (a) {\n if (p(i), a !== a + 0) throw a;\n d(1, 0);\n }\n }\n function Wn(e, r, t) {\n var n = h();\n try {\n _(e)(r, t);\n } catch (i) {\n if (p(n), i !== i + 0) throw i;\n d(1, 0);\n }\n }\n function Mn(e, r) {\n var t = h();\n try {\n return _(e)(r);\n } catch (n) {\n if (p(t), n !== n + 0) throw n;\n d(1, 0);\n }\n }\n function xn(e, r, t) {\n var n = h();\n try {\n return _(e)(r, t);\n } catch (i) {\n if (p(n), i !== i + 0) throw i;\n d(1, 0);\n }\n }\n function In(e) {\n var r = h();\n try {\n _(e)();\n } catch (t) {\n if (p(r), t !== t + 0) throw t;\n d(1, 0);\n }\n }\n function Un(e, r, t, n, i, a, s, o, u, f, c) {\n var v = h();\n try {\n _(e)(r, t, n, i, a, s, o, u, f, c);\n } catch (g) {\n if (p(v), g !== g + 0) throw g;\n d(1, 0);\n }\n }\n function Vn(e, r, t, n, i) {\n var a = h();\n try {\n _(e)(r, t, n, i);\n } catch (s) {\n if (p(a), s !== s + 0) throw s;\n d(1, 0);\n }\n }\n function Hn(e, r, t, n, i) {\n var a = h();\n try {\n return _(e)(r, t, n, i);\n } catch (s) {\n if (p(a), s !== s + 0) throw s;\n d(1, 0);\n }\n }\n function Bn(e, r, t, n, i, a, s) {\n var o = h();\n try {\n _(e)(r, t, n, i, a, s);\n } catch (u) {\n if (p(o), u !== u + 0) throw u;\n d(1, 0);\n }\n }\n function Nn(e, r, t, n, i, a, s, o, u, f, c, v, g, y, w, P) {\n var C = h();\n try {\n _(e)(r, t, n, i, a, s, o, u, f, c, v, g, y, w, P);\n } catch (T) {\n if (p(C), T !== T + 0) throw T;\n d(1, 0);\n }\n }\n function Zn(e, r, t, n, i, a, s, o, u) {\n var f = h();\n try {\n _(e)(r, t, n, i, a, s, o, u);\n } catch (c) {\n if (p(f), c !== c + 0) throw c;\n d(1, 0);\n }\n }\n function zn(e, r, t, n, i, a) {\n var s = h();\n try {\n return _(e)(r, t, n, i, a);\n } catch (o) {\n if (p(s), o !== o + 0) throw o;\n d(1, 0);\n }\n }\n function Ln(e, r, t, n, i, a) {\n var s = h();\n try {\n _(e)(r, t, n, i, a);\n } catch (o) {\n if (p(s), o !== o + 0) throw o;\n d(1, 0);\n }\n }\n function Gn(e, r, t, n, i, a, s) {\n var o = h();\n try {\n return _(e)(r, t, n, i, a, s);\n } catch (u) {\n if (p(o), u !== u + 0) throw u;\n d(1, 0);\n }\n }\n function Xn(e, r, t, n, i, a, s, o) {\n var u = h();\n try {\n _(e)(r, t, n, i, a, s, o);\n } catch (f) {\n if (p(u), f !== f + 0) throw f;\n d(1, 0);\n }\n }\n function qn(e, r, t, n, i, a, s, o) {\n var u = h();\n try {\n return _(e)(r, t, n, i, a, s, o);\n } catch (f) {\n if (p(u), f !== f + 0) throw f;\n d(1, 0);\n }\n }\n function Yn(e) {\n var r = h();\n try {\n return _(e)();\n } catch (t) {\n if (p(r), t !== t + 0) throw t;\n d(1, 0);\n }\n }\n function Kn(e, r, t, n, i, a, s, o, u) {\n var f = h();\n try {\n return _(e)(r, t, n, i, a, s, o, u);\n } catch (c) {\n if (p(f), c !== c + 0) throw c;\n d(1, 0);\n }\n }\n function Jn(e, r, t, n, i, a, s) {\n var o = h();\n try {\n return _(e)(r, t, n, i, a, s);\n } catch (u) {\n if (p(o), u !== u + 0) throw u;\n d(1, 0);\n }\n }\n function Qn(e, r, t, n) {\n var i = h();\n try {\n return _(e)(r, t, n);\n } catch (a) {\n if (p(i), a !== a + 0) throw a;\n d(1, 0);\n }\n }\n function ri(e, r, t, n) {\n var i = h();\n try {\n return _(e)(r, t, n);\n } catch (a) {\n if (p(i), a !== a + 0) throw a;\n d(1, 0);\n }\n }\n function ei(e, r, t, n, i, a, s, o) {\n var u = h();\n try {\n _(e)(r, t, n, i, a, s, o);\n } catch (f) {\n if (p(u), f !== f + 0) throw f;\n d(1, 0);\n }\n }\n function ti(e, r, t, n, i, a) {\n var s = h();\n try {\n return _(e)(r, t, n, i, a);\n } catch (o) {\n if (p(s), o !== o + 0) throw o;\n d(1, 0);\n }\n }\n function ni(e, r, t, n, i, a, s, o, u, f) {\n var c = h();\n try {\n return _(e)(r, t, n, i, a, s, o, u, f);\n } catch (v) {\n if (p(c), v !== v + 0) throw v;\n d(1, 0);\n }\n }\n function ii(e, r, t) {\n var n = h();\n try {\n return _(e)(r, t);\n } catch (i) {\n if (p(n), i !== i + 0) throw i;\n d(1, 0);\n }\n }\n function ai(e, r, t, n, i) {\n var a = h();\n try {\n return _(e)(r, t, n, i);\n } catch (s) {\n if (p(a), s !== s + 0) throw s;\n d(1, 0);\n }\n }\n function oi(e, r, t, n, i, a, s, o, u, f) {\n var c = h();\n try {\n _(e)(r, t, n, i, a, s, o, u, f);\n } catch (v) {\n if (p(c), v !== v + 0) throw v;\n d(1, 0);\n }\n }\n function si(e, r, t, n, i, a, s) {\n var o = h();\n try {\n _(e)(r, t, n, i, a, s);\n } catch (u) {\n if (p(o), u !== u + 0) throw u;\n d(1, 0);\n }\n }\n function ui(e, r, t, n) {\n var i = h();\n try {\n return _(e)(r, t, n);\n } catch (a) {\n if (p(i), a !== a + 0) throw a;\n d(1, 0);\n }\n }\n function fi(e, r, t, n, i, a, s, o, u, f, c, v) {\n var g = h();\n try {\n return _(e)(r, t, n, i, a, s, o, u, f, c, v);\n } catch (y) {\n if (p(g), y !== y + 0) throw y;\n d(1, 0);\n }\n }\n function li(e, r, t, n, i, a, s) {\n var o = h();\n try {\n return kn(e, r, t, n, i, a, s);\n } catch (u) {\n if (p(o), u !== u + 0) throw u;\n d(1, 0);\n }\n }\n function ci(e, r, t, n, i) {\n var a = h();\n try {\n return En(e, r, t, n, i);\n } catch (s) {\n if (p(a), s !== s + 0) throw s;\n d(1, 0);\n }\n }\n function Wr() {\n if (U > 0) {\n K = Wr;\n return;\n }\n if (Re(), U > 0) {\n K = Wr;\n return;\n }\n function e() {\n var r;\n l.calledRun = !0, !Br && (Fe(), xr(l), (r = l.onRuntimeInitialized) === null || r === void 0 || r.call(l), ke());\n }\n l.setStatus ? (l.setStatus(\"Running...\"), setTimeout(() => {\n setTimeout(() => l.setStatus(\"\"), 1), e();\n }, 1)) : e();\n }\n function vi() {\n if (l.preInit)\n for (typeof l.preInit == \"function\" && (l.preInit = [l.preInit]); l.preInit.length > 0; )\n l.preInit.shift()();\n }\n return vi(), Wr(), x = we, x;\n};\nfunction $e(F) {\n return pi(Mr, F);\n}\nfunction $i() {\n return hi(Mr);\n}\nfunction bi(F) {\n return $e({\n overrides: F,\n equalityFn: Object.is,\n fireImmediately: !0\n });\n}\nfunction wi(F) {\n $e({\n overrides: F,\n equalityFn: Object.is,\n fireImmediately: !1\n });\n}\nasync function be(F, x) {\n return _i(Mr, F, x);\n}\nasync function Ci(F, x) {\n return be(F, x);\n}\nasync function Pi(F, x) {\n return be(F, x);\n}\nconst Ti = \"1c961d9d9a1f0001f5d00486bcf8e1b1a91fcf9fe17ebcbd6e2b6efe21e23038\";\nexport {\n Fi as ZXING_CPP_COMMIT,\n Ti as ZXING_WASM_SHA256,\n ki as ZXING_WASM_VERSION,\n Ei as barcodeFormats,\n Si as binarizers,\n ji as characterSets,\n Oi as contentTypes,\n Di as defaultReaderOptions,\n Wi as eanAddOnSymbols,\n bi as getZXingModule,\n Mi as linearBarcodeFormats,\n xi as matrixBarcodeFormats,\n $e as prepareZXingModule,\n $i as purgeZXingModule,\n be as readBarcodes,\n Pi as readBarcodesFromImageData,\n Ci as readBarcodesFromImageFile,\n wi as setZXingModuleOverrides,\n Ii as textModes\n};\n"],"names":["_i"],"mappings":"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;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,EAAE,EAAE,EAAE;AACV,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,CAAC,EAAE,EAAE;AACT,IAAI,EAAE,EAAE,EAAE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"}
package/dist/index.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * snice v3.7.0
2
+ * snice v3.8.0
3
3
  * Imperative TypeScript framework for building vanilla web components with decorators, differential rendering, routing, and controllers. No virtual DOM, no build complexity.
4
4
  * (c) 2024
5
5
  * Released under the MIT License.
package/dist/index.esm.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * snice v3.7.0
2
+ * snice v3.8.0
3
3
  * Imperative TypeScript framework for building vanilla web components with decorators, differential rendering, routing, and controllers. No virtual DOM, no build complexity.
4
4
  * (c) 2024
5
5
  * Released under the MIT License.
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * snice v3.7.0
2
+ * snice v3.8.0
3
3
  * Imperative TypeScript framework for building vanilla web components with decorators, differential rendering, routing, and controllers. No virtual DOM, no build complexity.
4
4
  * (c) 2024
5
5
  * Released under the MIT License.
package/dist/symbols.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * snice v3.7.0
2
+ * snice v3.8.0
3
3
  * Imperative TypeScript framework for building vanilla web components with decorators, differential rendering, routing, and controllers. No virtual DOM, no build complexity.
4
4
  * (c) 2024
5
5
  * Released under the MIT License.
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * snice v3.7.0
2
+ * snice v3.8.0
3
3
  * Imperative TypeScript framework for building vanilla web components with decorators, differential rendering, routing, and controllers. No virtual DOM, no build complexity.
4
4
  * (c) 2024
5
5
  * Released under the MIT License.
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * snice v3.7.0
2
+ * snice v3.8.0
3
3
  * Imperative TypeScript framework for building vanilla web components with decorators, differential rendering, routing, and controllers. No virtual DOM, no build complexity.
4
4
  * (c) 2024
5
5
  * Released under the MIT License.
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * snice v3.7.0
2
+ * snice v3.8.0
3
3
  * Imperative TypeScript framework for building vanilla web components with decorators, differential rendering, routing, and controllers. No virtual DOM, no build complexity.
4
4
  * (c) 2024
5
5
  * Released under the MIT License.
package/docs/ai/README.md CHANGED
@@ -21,6 +21,6 @@ Read these instead of `/docs/*.md` for faster context loading.
21
21
  **IMPORTANT:** Do NOT read all component docs. Only read a component's doc when you need to use or reference it.
22
22
 
23
23
  **Implemented Components:**
24
- - accordion, accordion-item, alert, avatar, badge, banner, breadcrumbs, button, card, checkbox, chip, color-display, color-picker, date-picker, divider, drawer, empty-state, file-upload, image, input, login, modal, nav, progress, radio, select, skeleton, slider, spinner, switch, table, tabs, tab, textarea, timeline, tooltip
24
+ - accordion, accordion-item, alert, avatar, badge, banner, breadcrumbs, button, card, checkbox, chip, color-display, color-picker, date-picker, divider, drawer, empty-state, file-gallery, file-upload, image, input, login, modal, nav, progress, qr-code, qr-reader, radio, select, skeleton, slider, spinner, switch, table, tabs, tab, textarea, timeline, tooltip
25
25
 
26
26
  **To use a component:** Read `docs/ai/components/{component-name}.md` only when needed.
@@ -0,0 +1,206 @@
1
+ # snice-file-gallery
2
+
3
+ File upload gallery with drag-and-drop, preview, pausable/resumable uploads.
4
+
5
+ ## Properties
6
+
7
+ ```typescript
8
+ accept: string = '';
9
+ multiple: boolean = true;
10
+ disabled: boolean = false;
11
+ maxSize: number = -1; // bytes, -1 = no limit
12
+ maxFiles: number = -1; // -1 = no limit
13
+ view: 'grid'|'list' = 'grid';
14
+ showProgress: boolean = true;
15
+ allowPause: boolean = true;
16
+ allowDelete: boolean = true;
17
+ autoUpload: boolean = true;
18
+ showAddButton: boolean = false; // show add button tile instead of drop zone
19
+ hideAddButton: boolean = false; // hide default add button (show only custom actions)
20
+ files: GalleryFile[]; // read-only
21
+ ```
22
+
23
+ ## Getters
24
+
25
+ - `files: GalleryFile[]` - Get all files
26
+ - `customActions: CustomAction[]` - Get all custom actions
27
+ - `getFile(fileId): GalleryFile | undefined` - Get specific file
28
+ - `getCustomAction(actionId): CustomAction | undefined` - Get specific action
29
+ - `isPending(fileId): boolean` - Check if pending
30
+ - `isUploading(fileId): boolean` - Check if uploading
31
+ - `isPaused(fileId): boolean` - Check if paused
32
+ - `isCompleted(fileId): boolean` - Check if completed
33
+ - `hasError(fileId): boolean` - Check if has error
34
+ - `canAddFiles(): boolean` - Check if can add more files
35
+
36
+ ## File Management
37
+
38
+ - `addFiles(files: FileList | File[])` - Add files to gallery
39
+ - `addFileWithPreview(file: File, previewDataUrl: string)` - Add file with preview
40
+ - `removeFile(fileId: string)` - Remove file
41
+ - `clear()` - Remove all files
42
+ - `clearCompleted()` - Remove completed files
43
+ - `clearErrors()` - Remove files with errors
44
+
45
+ ## Upload Control
46
+
47
+ - `pauseUpload(fileId: string)` - Pause upload
48
+ - `resumeUpload(fileId: string)` - Resume upload
49
+ - `retryUpload(fileId: string)` - Retry failed upload
50
+ - `cancelUpload(fileId: string)` - Cancel and remove upload
51
+ - `pauseAll()` - Pause all uploading files
52
+ - `resumeAll()` - Resume all paused files
53
+ - `retryAll()` - Retry all errored files
54
+ - `cancelAll()` - Cancel all active uploads
55
+
56
+ ## Custom Actions
57
+
58
+ - `addCustomAction(icon: string, text: string): string` - Add custom action, returns actionId
59
+ - `removeCustomAction(actionId: string)` - Remove action
60
+ - `clearCustomActions()` - Remove all actions
61
+
62
+ ## Utility
63
+
64
+ - `openFilePicker()` - Open file picker dialog
65
+ - `setFileBadge(fileId: string, badge: string, position?: 'top-left'|'top-right'|'bottom-left'|'bottom-right')` - Add badge overlay to file preview (supports HTML)
66
+ - `removeFileBadge(fileId: string)` - Remove badge from file
67
+
68
+ ## Events
69
+
70
+ - `files-change` - {files: GalleryFile[]}
71
+ - `upload-progress` - {file: GalleryFile, progress: number}
72
+ - `upload-complete` - {file: GalleryFile, url?: string}
73
+ - `upload-error` - {file: GalleryFile, error: string}
74
+ - `custom-action-click` - {actionId: string}
75
+ - `error` - {message: string}
76
+
77
+ ## Types
78
+
79
+ ```typescript
80
+ interface GalleryFile {
81
+ id: string;
82
+ file: File;
83
+ preview?: string;
84
+ uploadProgress: number;
85
+ uploadStatus: 'pending'|'uploading'|'paused'|'completed'|'error';
86
+ error?: string;
87
+ badge?: string; // HTML content for badge overlay
88
+ badgePosition?: 'top-left'|'top-right'|'bottom-left'|'bottom-right';
89
+ }
90
+
91
+ interface UploadRequest {
92
+ file: File;
93
+ fileId: string;
94
+ onProgress?: (progress: number) => void;
95
+ signal?: AbortSignal;
96
+ }
97
+
98
+ interface UploadResponse {
99
+ success: boolean;
100
+ fileId: string;
101
+ url?: string;
102
+ error?: string;
103
+ }
104
+ ```
105
+
106
+ ## Upload Handler
107
+
108
+ Uses `@request/@respond` pattern. Handler required:
109
+
110
+ ```typescript
111
+ import { respond } from 'snice';
112
+
113
+ class UploadController {
114
+ @respond('file-gallery-upload')
115
+ async handleUpload(request: UploadRequest): Promise<UploadResponse> {
116
+ const { file, fileId, onProgress, signal } = request;
117
+
118
+ // Implement upload logic
119
+ // Use onProgress(0-1) for progress tracking
120
+ // Check signal.aborted for cancellation
121
+
122
+ return {
123
+ success: true,
124
+ fileId,
125
+ url: 'https://example.com/file.jpg'
126
+ };
127
+ }
128
+ }
129
+
130
+ const controller = new UploadController();
131
+ controller.attach?.(document.body);
132
+ ```
133
+
134
+ ## Usage
135
+
136
+ ```html
137
+ <!-- Basic -->
138
+ <snice-file-gallery></snice-file-gallery>
139
+
140
+ <!-- Images only -->
141
+ <snice-file-gallery accept="image/*"></snice-file-gallery>
142
+
143
+ <!-- Manual upload -->
144
+ <snice-file-gallery auto-upload="false"></snice-file-gallery>
145
+
146
+ <!-- Limits -->
147
+ <snice-file-gallery max-files="3" max-size="2097152"></snice-file-gallery>
148
+
149
+ <!-- List view -->
150
+ <snice-file-gallery view="list"></snice-file-gallery>
151
+
152
+ <!-- Custom options -->
153
+ <snice-file-gallery
154
+ accept=".pdf,.doc,.docx"
155
+ allow-pause="false"
156
+ ></snice-file-gallery>
157
+
158
+ <!-- Add button mode -->
159
+ <snice-file-gallery
160
+ show-add-button="true"
161
+ max-files="6"
162
+ ></snice-file-gallery>
163
+
164
+ <!-- Custom actions -->
165
+ <snice-file-gallery id="gallery"></snice-file-gallery>
166
+ <script>
167
+ const gallery = document.querySelector('#gallery');
168
+
169
+ // Add custom action
170
+ const icon = '<svg viewBox="0 0 24 24" fill="none" stroke="currentColor">...</svg>';
171
+ const actionId = gallery.addCustomAction(icon, 'Camera');
172
+
173
+ // Handle custom action
174
+ gallery.addEventListener('@snice/custom-action-click', (e) => {
175
+ if (e.detail.actionId === actionId) {
176
+ // Handle camera action
177
+ const file = capturePhoto(); // your implementation
178
+ gallery.addFileWithPreview(file, previewUrl);
179
+ }
180
+ });
181
+
182
+ // Other events
183
+ gallery.addEventListener('@snice/files-change', (e) => {
184
+ console.log('Files:', e.detail.files);
185
+ });
186
+ gallery.addEventListener('@snice/upload-complete', (e) => {
187
+ console.log('Complete:', e.detail.url);
188
+ });
189
+
190
+ // Add custom badge (e.g., user avatar)
191
+ const avatarHTML = `<div style="width:40px;height:40px;border-radius:50%;background:#3b82f6;color:white;display:flex;align-items:center;justify-content:center;font-weight:bold;border:2px solid white;box-shadow:0 2px 4px rgba(0,0,0,0.2)">JD</div>`;
192
+ gallery.setFileBadge(fileId, avatarHTML, 'top-right');
193
+ </script>
194
+ ```
195
+
196
+ ## Features
197
+
198
+ - Drag-and-drop with visual feedback
199
+ - Image preview thumbnails
200
+ - Pausable/resumable uploads via AbortController
201
+ - Real-time progress tracking
202
+ - Grid/list view toggle
203
+ - File validation (size, type)
204
+ - Auto or manual upload modes
205
+ - @request/@respond upload pattern
206
+ - Accessible