export const createWorker=()=>new Worker(URL.createObjectURL(new Blob([`var aa=typeof Object.defineProperties=="function"?Object.defineProperty:function(a,b,c){if(a==Array.prototype||a==Object.prototype)return a;a[b]=c.value;return a};function ba(a){a=["object"==typeof globalThis&&globalThis,a,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var b=0;b{b in a?ea(a,b,{enumerable:!0,configurable:!0,writable:!0,value:c}):a[b]=c},la=a=>{var b={},c;for(c in a||(a={}))ia.call(a,c)&&B(b,c,a[c]);if(x)for(c of x(a))ka.call(a,c)&&B(b,c,a[c]);return b},ma=(a,b)=>fa(a,ha(b));function C(a,b){return new D(new Uint8ClampedArray(a*b),a)} function E(a,b,c,d,e){for(let f=c;f=this.width||b<0||b>=this.height?!1:!!this.data[b*this.width+a]}set(a,b,c){this.data[b*this.width+a]=c?1:0}},F=class{constructor(a,b,c){this.width=a;a*=b;if(c&&c.length!==a)throw Error("Wrong buffer size");this.data=c||new Uint8ClampedArray(a)}get(a,b){return this.data[b*this.width+a]}set(a,b,c){this.data[b*this.width+a]=c}};function G(a){return 8*(a.bytes.length-a.byteOffset)-a.V} function H(a,b){if(b<1||b>32||b>G(a))throw Error("Cannot read "+b.toString()+" bits");var c=0;if(a.V>0){c=8-a.V;var d=b>8-d<>c;b-=d;a.V+=d;a.V===8&&(a.V=0,a.byteOffset++)}if(b>0){for(;b>=8;)c=c<<8|a.bytes[a.byteOffset]&255,a.byteOffset++,b-=8;b>0&&(d=8-b,c=c<>d<>d,a.V+=b)}return c}var na=class{constructor(a){this.V=this.byteOffset=0;this.bytes=a}},I="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:".split(""); function oa(a,b){const c=[];let d="";b=H(a,[8,16,16][b]);for(let e=0;e\`%\${("0"+e.toString(16)).substr(-2)}\`).join(""))}catch(e){}return{bytes:c,text:d}} function pa(a,b){a=new na(a);const c=b<=9?0:b<=26?1:2;for(b={text:"",bytes:[],T:[],version:b};G(a)>=4;){var d=H(a,4);if(d===0)return b;if(d===7)H(a,1)===0?b.T.push({type:"eci",ga:H(a,7)}):H(a,1)===0?b.T.push({type:"eci",ga:H(a,14)}):H(a,1)===0?b.T.push({type:"eci",ga:H(a,21)}):b.T.push({type:"eci",ga:-1});else if(d===1){var e=[];d="";for(var f=H(a,[10,12,14][c]);f>=3;){var h=H(a,10);if(h>=1E3)throw Error("Invalid numeric value above 999");var g=Math.floor(h/100),k=Math.floor(h/10)%10;h%=10;e.push(48+ g,48+k,48+h);d+=g.toString()+k.toString()+h.toString();f-=3}if(f===2){g=H(a,7);if(g>=100)throw Error("Invalid numeric value above 99");f=Math.floor(g/10);g%=10;e.push(48+f,48+g);d+=f.toString()+g.toString()}else if(f===1){f=H(a,4);if(f>=10)throw Error("Invalid numeric value above 9");e.push(48+f);d+=f.toString()}b.text+=d;b.bytes.push(...e);b.T.push({type:"numeric",text:d})}else if(d===2){e=[];d="";for(f=H(a,[9,11,13][c]);f>=2;)k=H(a,11),g=Math.floor(k/45),k%=45,e.push(I[g].charCodeAt(0),I[k].charCodeAt(0)), d+=I[g]+I[k],f-=2;f===1&&(f=H(a,6),e.push(I[f].charCodeAt(0)),d+=I[f]);b.text+=d;b.bytes.push(...e);b.T.push({type:"alphanumeric",text:d})}else if(d===4)d=oa(a,c),b.text+=d.text,b.bytes.push(...d.bytes),b.T.push({type:"byte",bytes:d.bytes,text:d.text});else if(d===8){d=[];e=H(a,[8,10,12][c]);for(f=0;f>8,g&255);e=(new TextDecoder("shift-jis")).decode(Uint8Array.from(d));b.text+=e;b.bytes.push(...d);b.T.push({type:"kanji", bytes:d,text:e})}else d===3&&b.T.push({type:"structuredappend",ya:H(a,4),Ca:H(a,4),za:H(a,8)})}if(G(a)===0||H(a,G(a))===0)return b}function J(a){return a.D.length-1}function K(a,b){return a.D[a.D.length-1-b]}function L(a,b){if(a.D[0]===0)return b;if(b.D[0]===0)return a;let c=a.D;b=b.D;c.length>b.length&&([c,b]=[b,c]);const d=new Uint8ClampedArray(b.length),e=b.length-c.length;for(var f=0;f{c^=e}),c;c=a.D[0];for(let e=1;e1&&b[0]===0){let d=1;for(;d=this.size&&(a=(a^this.ta)&this.size-1);for(a=0;a=d/2;){var h=b;const p=c;b=e;c=f;if(b.D[0]===0)return null;e=h;f=a.Y;for(h=a.inverse(K(b,J(b)));J(e)>=J(b)&&e.D[0]!==0;){var g=J(e)-J(b),k=a.multiply(K(e,J(e)),h);f=L(f,P(a,g,k));a:{var l=b;if(g<0)throw Error("Invalid degree less than 0");if(k===0){k=l.U.Y;break a}var m=l.D.length;g=new Uint8ClampedArray(m+g);for(var n=0;n=J(b))return null}d=K(f,0);if(d===0)return null;a=a.inverse(d);return[f.multiply(a),e.multiply(a)]} function sa(a,b){const c=new Uint8ClampedArray(a.length);c.set(a);a=new qa;var d=new M(a,c),e=new Uint8ClampedArray(b),f=!1;for(var h=0;h(a.y+a.x)%2===0,a=>a.y%2===0,a=>a.x%3===0,a=>(a.y+a.x)%3===0,a=>(Math.floor(a.y/2)+Math.floor(a.x/3))%2===0,a=>a.x*a.y%2+a.x*a.y%3===0,a=>(a.y*a.x%2+a.y*a.x%3)%2===0,a=>((a.y+a.x)%2+a.y*a.x%3)%2===0]; function wa(a,b,c){c=va[c.A];const d=a.height;var e=17+4*b.m;const f=C(e,e);E(f,0,0,9,9);E(f,e-8,0,8,9);E(f,0,e-8,9,8);for(var h of b.o)for(var g of b.o)h===6&&g===6||h===6&&g===e-7||h===e-7&&g===6||E(f,h-2,g-2,5,5);E(f,6,9,1,e-17);E(f,9,6,e-17,1);b.m>6&&(E(f,e-11,0,3,6),E(f,0,e-11,6,3));b=[];g=h=0;e=!0;for(let k=d-1;k>0;k-=2){k===6&&k--;for(let l=0;l=0;d--)for(var e=b-9;e>=b-11;e--)c=R(a.get(e,d),c);d=0;for(e=5;e>=0;e--)for(let h=b-9;h>=b-11;h--)d=R(a.get(e,h),d);a=Infinity;let f;for(const h of ta){if(h.l===c||h.l===d)return h;b=Q(c,h.l);b=0;c--)c!==6&&(b=R(a.get(8,c),b));var d=a.height;c=0;for(var e=d-1;e>=d-7;e--)c=R(a.get(8,e),c);for(e=d-8;e{for(let k=0;k1)for(h=d.i[0].h,b=d.i[1].h,c=0;c0;)for(const g of e)g.aa.push(a.shift());return e} function Aa(a){const b=xa(a);if(!b)return null;var c=ya(a);if(!c)return null;a=wa(a,b,c);var d=za(a,b,c.B);if(!d)return null;c=d.reduce((e,f)=>e+f.ha,0);c=new Uint8ClampedArray(c);a=0;for(const e of d){d=sa(e.aa,e.aa.length-e.ha);if(!d)return null;for(let f=0;f{const g=c.L*f+c.O*h+c.S;return{x:(c.J*f+c.M*h+c.P)/g,y:(c.K*f+c.N*h+c.R)/g}};for(let f=0;fMath.sqrt(z(b.x-a.x,2)+z(b.y-a.y,2));function T(a){return a.reduce((b,c)=>b+c)} function Fa(a,b,c){const d=S(a,b),e=S(b,c),f=S(a,c);let h,g,k;e>=d&&e>=f?[h,g,k]=[b,a,c]:f>=e&&f>=d?[h,g,k]=[a,b,c]:[h,g,k]=[a,c,b];(k.x-g.x)*(h.y-g.y)-(k.y-g.y)*(h.x-g.x)<0&&([h,k]=[k,h]);return{$:h,da:g,ea:k}}function Ga(a,b,c,d){d=(T(U(a,c,d,5))/7+T(U(a,b,d,5))/7+T(U(c,a,d,5))/7+T(U(b,a,d,5))/7)/4;if(d<1)throw Error("Invalid module size");a=Math.floor((Math.round(S(a,b)/d)+Math.round(S(a,c)/d))/2)+7;switch(a%4){case 0:a++;break;case 2:a--}return{F:a,ra:d}} function Ha(a,b,c,d){const e=[{x:Math.floor(a.x),y:Math.floor(a.y)}];var f=Math.abs(b.y-a.y)>Math.abs(b.x-a.x);if(f){var h=Math.floor(a.y);var g=Math.floor(a.x);a=Math.floor(b.y);b=Math.floor(b.x)}else h=Math.floor(a.x),g=Math.floor(a.y),a=Math.floor(b.x),b=Math.floor(b.y);const k=Math.abs(a-h),l=Math.abs(b-g);let m=Math.floor(-k/2);const n=h0){if(r=== b)break;r+=p;m-=k}}c=[];for(f=0;f{d+=z(a[f]-e*c,2)});return{X:c,error:d}} function Ia(a,b,c){try{const d=U(a,{x:-1,y:a.y},c,b.length),e=U(a,{x:a.x,y:-1},c,b.length),f=U(a,{x:Math.max(0,a.x-a.y)-1,y:Math.max(0,a.y-a.x)-1},c,b.length),h=U(a,{x:Math.min(c.width,a.x+a.y)+1,y:Math.min(c.height,a.y+a.x)+1},c,b.length),g=V(d,b),k=V(e,b),l=V(f,b),m=V(h,b),n=(g.X+k.X+l.X+m.X)/4;return Math.sqrt(g.error*g.error+k.error*k.error+l.error*l.error+m.error*m.error)+(z(g.X-n,2)+z(k.X-n,2)+z(l.X-n,2)+z(m.X-n,2))/n}catch(d){return Infinity}} function W(a,b){for(var c=Math.round(b.x);a.get(c,Math.round(b.y));)c--;for(var d=Math.round(b.x);a.get(d,Math.round(b.y));)d++;c=(c+d)/2;for(d=Math.round(b.y);a.get(Math.round(c),d);)d--;for(b=Math.round(b.y);a.get(Math.round(c),b);)b++;return{x:c,y:(d+b)/2}} function Ja(a){var b=[],c=[];const d=[];var e=[];for(let r=0;r<=a.height;r++){var f=0,h=!1;let q=[0,0,0,0,0];for(let u=-1;u<=a.width;u++){var g=a.get(u,r);if(g===h)f++;else{q=[q[1],q[2],q[3],q[4],f];f=1;h=g;var k=T(q)/7;k=Math.abs(q[0]-k)y>=v.bottom.H&&y<=v.bottom.G|| A>=v.bottom.H&&y<=v.bottom.G||y<=v.bottom.H&&A>=v.bottom.G&&q[2]/(v.bottom.G-v.bottom.H)<1.5&&q[2]/(v.bottom.G-v.bottom.H)>.5);l.length>0?l[0].bottom=k:c.push({top:k,bottom:k})}if(g){const A=u-q[4],y=A-q[3];g={H:y,y:r,G:A};k=e.filter(v=>y>=v.bottom.H&&y<=v.bottom.G||A>=v.bottom.H&&y<=v.bottom.G||y<=v.bottom.H&&A>=v.bottom.G&&q[2]/(v.bottom.G-v.bottom.H)<1.5&&q[2]/(v.bottom.G-v.bottom.H)>.5);k.length>0?k[0].bottom=g:e.push({top:g,bottom:g})}}}b.push(...c.filter(u=>u.bottom.y!==r&&u.bottom.y-u.top.y>= 2));c=c.filter(u=>u.bottom.y===r);d.push(...e.filter(u=>u.bottom.y!==r));e=e.filter(u=>u.bottom.y===r)}b.push(...c.filter(r=>r.bottom.y-r.top.y>=2));d.push(...e);c=[];for(var m of b){if(m.bottom.y-m.top.y<2)continue;b=(m.top.H+m.top.G+m.bottom.H+m.bottom.G)/4;e=(m.top.y+m.bottom.y+1)/2;if(!a.get(Math.round(b),Math.round(e)))continue;f=[m.top.G-m.top.H,m.bottom.G-m.bottom.H,m.bottom.y-m.top.y+1];f=T(f)/f.length;h=Ia({x:Math.round(b),y:Math.round(e)},[1,1,3,1,1],a);c.push({I:h,x:b,y:e,size:f})}if(c.length< 3)return null;c.sort((r,q)=>r.I-q.I);m=[];for(b=0;br.I-q.I);m.push({points:[e,f[0],f[1]],I:e.I+f[0].I+f[1].I})}m.sort((r,q)=>r.I-q.I);const {ea:p,da:t,$:w}=Fa(...m[0].points);m=Ka(a,d,p,t,w);n=[];m&&n.push({W:{x:m.W.x,y:m.W.y},$:{x:w.x,y:w.y},F:m.F,da:{x:t.x,y:t.y},ea:{x:p.x,y:p.y}});m=W(a,p);b=W(a,t);c=W(a,w);(a=Ka(a,d,m,b,c))&&n.push({W:{x:a.W.x,y:a.W.y},$:{x:c.x,y:c.y}, da:{x:b.x,y:b.y},ea:{x:m.x,y:m.y},F:a.F});return n.length===0?null:n} function Ka(a,b,c,d,e){let f;try{({F:f,ra:h}=Ga(d,c,e,a))}catch(l){return null}var h=(S(d,e)+S(d,c))/2/h;const g=1-3/h,k={x:d.x+g*(c.x-d.x+e.x-d.x),y:d.y+g*(c.y-d.y+e.y-d.y)};b=b.map(l=>{const m=(l.top.H+l.top.G+l.bottom.H+l.bottom.G)/4;l=(l.top.y+l.bottom.y+1)/2;if(a.get(Math.floor(m),Math.floor(l))){var n=Ia({x:Math.floor(m),y:Math.floor(l)},[1,1,1],a)+S({x:m,y:l},k);return{x:m,y:l,I:n}}}).filter(l=>!!l).sort((l,m)=>l.I-m.I);return{W:h>=15&&b.length?b[0]:k,F:f}} function La(a){var b=Ja(a);if(!b)return null;for(const e of b){b=Ea(a,e);a:{var c=b.matrix;if(c==null){c=null;break a}var d=Aa(c);if(d)c=d;else{for(d=0;d{a[c]=b[c]})} function X(a,b,c,d={}){const e=Object.create(null);Na(e,Ma);Na(e,d);d=e.Z==="onlyInvert"||e.Z==="invertFirst";var f=e.Z==="attemptBoth"||d,h=e.la,g=e.pa,k=b*c;if(a.length!==k*4)throw Error("Malformed data passed to binarizer.");var l=0;if(g){var m=new Uint8ClampedArray(a.buffer,l,k);l+=k}m=new F(b,c,m);if(h.ia)for(var n=0;n>8)}else for(n=0;n0&&t>0&&(q=(w.get(t,p-1)+2*w.get(t-1,p)+w.get(t-1,p-1))/4,rg?g:c;g=b;k=n-3;g=g<2?2:g>k?k:g;k=0;for(l=-2;l<=2;l++)for(r=-2;r<=2;r++)k+=w.get(c+l,g+r);c=k/25;for(g=0;g<8;g++)for(k=0;k<8;k++)l=a*8+g,r=b*8+k,q=m.get(l,r),p.set(l,r,q<=c),f&&t.set(l,r,!(q<=c))}const {ja:A,qa:y}=f?{ja:p,qa:t}:{ja:p};(f=La(d?y:A))||e.Z!=="attemptBoth"&&e.Z!=="invertFirst"||(f=La(d?A:y));return f}X.default=X;var Y="dontInvert",Z={red:77,green:150,blue:29,ia:!0}; self.onmessage=a=>{var b=a.data.id;const c=a.data.data;switch(a.data.type){case "decode":a=X(c.data,c.width,c.height,{Z:Y,la:Z});b={id:b,type:"qrResult"};a?(b.data=a.data,b.binaryData=Uint8Array.from(a.ma),b.cornerPoints=[a.location.ua,a.location.va,a.location.oa,a.location.na]):b.data=null;self.postMessage(b);break;case "grayscaleWeights":Z.red=c.red;Z.green=c.green;Z.blue=c.blue;Z.ia=c.useIntegerApproximation;break;case "inversionMode":switch(c){case "original":Y="dontInvert";break;case "invert":Y= "onlyInvert";break;case "both":Y="attemptBoth";break;default:throw Error("Invalid inversion mode");}break;case "close":self.close()}}; `]),{type:"application/javascript"}))