barcode-detector-polyfill
Version:
Polyfill for BarcodeDetector API
1 lines • 31.1 kB
JavaScript
!function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define("BarcodeDetector",[],r):"object"==typeof exports?exports.BarcodeDetector=r():e.BarcodeDetector=r()}(this,function(){return function(e){function r(a){if(t[a])return t[a].exports;var n=t[a]={i:a,l:!1,exports:{}};return e[a].call(n.exports,n,n.exports,r),n.l=!0,n.exports}var t={};return r.m=e,r.c=t,r.i=function(e){return e},r.d=function(e,t,a){r.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:a})},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},r.p="",r(r.s=1)}([function(e,r,t){e.exports=function(){return t(2)('!function(e){function r(a){if(t[a])return t[a].exports;var n=t[a]={i:a,l:!1,exports:{}};return e[a].call(n.exports,n,n.exports,r),n.l=!0,n.exports}var t={};r.m=e,r.c=t,r.i=function(e){return e},r.d=function(e,t,a){r.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:a})},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},r.p="",r(r.s=0)}([function(e,r,t){"use strict";function a(e,r,t,a){var n,h,i=[];switch(a){case 90:for(n=0;n<4*r;n+=4)for(h=4*r*(t-1);h>=0;h-=4*r)i.push(e[n+h]),i.push(e[n+h+1]),i.push(e[n+h+2]),i.push(e[n+h+3]);break;case-90:for(n=4*r-4;n>=0;n-=4)for(h=0;h<e.length;h+=4*r)i.push(e[n+h]),i.push(e[n+h+1]),i.push(e[n+h+2]),i.push(e[n+h+3]);break;case 180:for(h=4*r*(t-1);h>=0;h-=4*r)for(n=4*r-4;n>=0;n-=4)i.push(e[n+h]),i.push(e[n+h+1]),i.push(e[n+h+2]),i.push(e[n+h+3])}return new Uint8ClampedArray(i)}function n(e,r,t){var a,n,h,i,o=[],l=[];for(n=0;n<r;n++)for(o.push([]),l.push(0),h=0;h<(t+1)*r;h+=r)o[o.length-1].push(e[n+h]),l[l.length-1]=l[l.length-1]+e[n+h];var c=[];for(h=0;h<e.length;h+=r){for(n=0;n<r;n++){var u=0,f=0;for(i=n;i>=0&&(u+=l[i],++f!==t+1);i--);var s=0;for(i=n+1;i<r&&(u+=l[i],f++,++s!==t);i++);f*=o[0].length,u/=f,c.push(u)}if(h-t*r>=0)for(i=0;i<o.length;i++)a=o[i].shift(),l[i]=l[i]-a;if(h+(t+1)*r<e.length)for(i=0;i<o.length;i++)a=e[i+h+(t+1)*r],o[i].push(a),l[i]=l[i]+a}return c}function h(e,r,t){var a,n,h=[];for(n=0;n<e.length;n+=8*r)for(a=0;a<4*r;a+=8){var i=(e[n+a]+e[n+a+4]+e[n+4*r+a]+e[n+4*r+a+4])/4;h.push(i);var o=(e[n+a+1]+e[n+a+4+1]+e[n+4*r+a+1]+e[n+4*r+a+4+1])/4;h.push(o);var l=(e[n+a+2]+e[n+a+4+2]+e[n+4*r+a+2]+e[n+4*r+a+4+2])/4;h.push(l),h.push(255)}return new Uint8ClampedArray(h)}function o(e,r){var t,a,n,h=[],i=Number.MIN_VALUE,o=Number.MAX_VALUE;for(a=0;a<e.length;a+=4*r)for(t=0;t<4*r;t+=4){var l=0,c=0;for(n=1;n<2;n++)t+4*n<4*r&&(l+=Math.abs(e[a+t]-e[a+t+4*n])),a+4*r*n<e.length&&(c+=c+Math.abs(e[a+t]-e[a+t+4*r*n]));var u=l-c;i=u>i?u:i,o=u<o?u:o,h.push(u)}if(o<0){for(n=0;n<h.length;n++)h[n]=h[n]-o;o=0}return h}function l(e){var r;for(r=0;r<e.length;r+=4){var t=0,a=255;t=e[r]>t?e[r]:t,t=e[r+1]>t?e[r+1]:t,t=e[r+2]>t?e[r+2]:t,a=e[r]<a?e[r]:a,a=e[r+1]<a?e[r+1]:a,a=e[r+2]<a?e[r+2]:a,e[r]=e[r+1]=e[r+2]=(t+a)/2}}function c(e,r){var t,a=0;for(t=1;t<e.length;++t)a+=t*e[t];var n,h,i=0,o=0,l=0,c=0,u=0,f=0,s=0;for(t=0;t<e.length;++t)if(0!==(o+=e[t])){if(0===(l=r-o))break;i+=t*e[t],n=i/o,h=(a-i)/l,u=o*l*Math.pow(n-h,2),u>=c&&(f=t,u>c&&(s=t),c=u)}return(f+s)/2}function u(){U.data=new Uint8ClampedArray(U.width*U.height*4);var e,r,t;for(t=0;t<U.height;t++)for(r=0;r<U.width;r++)e=4*t*U.width,U.data[e+4*r]=U.table[r][t][0],U.data[e+4*r+1]=U.table[r][t][1],U.data[e+4*r+2]=U.table[r][t][2],U.data[e+4*r+3]=U.table[r][t][3]}function f(){U.table=[];var e,r,t=[];for(e=0;e<4*U.width;e+=4){for(t=[],r=e;r<U.data.length;r+=4*U.width)t.push([U.data[r],U.data[r+1],U.data[r+2],U.data[r+3]]);U.table.push(t)}}function s(){D.table=[];var e,r,t=[];for(e=0;e<4*D.width;e+=4){for(t=[],r=e;r<D.data.length;r+=4*D.width)t.push([D.data[r],D.data[r+1],D.data[r+2],D.data[r+3]]);D.table.push(t)}}function v(e,r){var t,a,n,h=[];for(t=0;t<U.width;t++){for(h=[],a=0;a<U.height;a++)for(n=0;n<e;n++)h.push(U.table[t][a]);U.table[t]=h.slice()}for(h=U.table.slice(),t=0;t<U.width;t++)for(n=0;n<r;n++)U.table[t*r+n]=h[t].slice();U.width=U.table.length,U.height=U.table[0].length,u()}function d(e){var r,t,a,n=[],h=0,i=0,o=0;for(r=0;r<U.height-e;r+=e)for(t=0;t<U.width;t++){for(h=0,i=0,o=0,a=r;a<r+e;a++)h+=U.table[t][a][0],i+=U.table[t][a][1],o+=U.table[t][a][2];n.push(h/e),n.push(i/e),n.push(o/e),n.push(255)}return new Uint8ClampedArray(n)}function g(e,r){return e[0][0]<=r[0][1]&&r[0][0]<=e[0][1]&&e[1][0]<=r[1][1]&&r[1][0]<=e[1][1]}function C(e,r,t){var a,n,h,i=e,o=[];do{var l=r%U.width,c=(r-l)/U.width,u=0,f=U.height,s=0,v=U.width-1;for(n=c;n<U.height-1;n++)if(0===U.table[l][n+1][0]){f=n;break}for(n=c;n>0;n--)if(0===U.table[l][n-1][0]){u=n;break}for(a=l;a<U.width-1;a++)if(0===U.table[a+1][c][0]){v=a;break}for(a=l;a>0;a--)if(0===U.table[a-1][c][0]){s=a;break}for(n=u*U.width;n<=f*U.width;n+=U.width)for(a=s;a<=v;a++)t[n+a]=0;var d=[[s,v],[u,f]];for(h=0;h<o.length;h++)if(g(d,o[h])){if(o[h][0][1]-o[h][0][0]>d[0][1]-d[0][0]){o[h][0][0]=o[h][0][0]<d[0][0]?o[h][0][0]:d[0][0],o[h][0][1]=o[h][0][1]>d[0][1]?o[h][0][1]:d[0][1],d=[];break}o[h][0][0]=o[h][0][0]<d[0][0]?o[h][0][0]:d[0][0],o[h][0][1]=o[h][0][1]>d[0][1]?o[h][0][1]:d[0][1],o[h][1][0]=d[1][0],o[h][1][1]=d[1][1],d=[];break}d.length>0&&o.push(d),e=0,r=0;for(h=0;h<t.length;h++)t[h]>e&&(e=t[h],r=h)}while(e>.7*i);return o}function A(){l(U.data);var e=o(U.data,U.width);e=n(e,U.width,15);var r,t,a,h=e[0];for(r=1;r<e.length;r++)h=h>e[r]?e[r]:h;var i=0,s=0,v=0;for(r=0;r<e.length;r++)e[r]=Math.round(e[r]-h),v+=e[r],i<e[r]&&(i=e[r],s=r);if((v/=e.length)<15){for(e=n(e,U.width,8),h=e[0],r=1;r<e.length;r++)h=h>e[r]?e[r]:h;for(i=0,s=0,r=0;r<e.length;r++)e[r]=Math.round(e[r]-h),i<e[r]&&(i=e[r],s=r)}var d=[];for(r=0;r<=i;r++)d[r]=0;for(r=0;r<e.length;r++)d[e[r]]=d[e[r]]+1;var g=c(d,e.length);for(r=0;r<e.length;r++)e[r]<g?U.data[4*r]=U.data[4*r+1]=U.data[4*r+2]=0:U.data[4*r]=U.data[4*r+1]=U.data[4*r+2]=255;f();var A=C(i,s,e),p=[];for(r=0;r<A.length;r++)p.push({x:A[r][0][0],y:A[r][1][0],width:A[r][0][1]-A[r][0][0],height:A[r][1][1]-A[r][1][0]});for(p.length>0&&postMessage({result:p,success:"localization"}),V=p,H=[],r=0;r<A.length;r++){var B=[];for(t=2*A[r][0][0];t<2*A[r][0][1];t++){var b=[];for(a=2*A[r][1][0];a<2*A[r][1][1];a++)b.push([D.table[t][a][0],D.table[t][a][1],D.table[t][a][2],255]);B.push(b)}B.length<1||(U.table=B,U.width=B.length,U.height=B[0].length,u(),H.push({table:B,data:new Uint8ClampedArray(U.data),width:U.width,height:U.height}))}}function p(){A();var e,r,t,a,n,h,i,o,l,u=[];for(o=0;o<H.length;o++){U=H[o];var f,s=d(30),g=0,C="",p={},b=[],w=!1;do{for(r=s.subarray(g,g+4*U.width),t=[],l=0;l<256;l++)t[l]=0;for(l=0;l<r.length;l+=4)a=Math.round((r[l]+r[l+1]+r[l+2])/3),t[a]=t[a]+1;n=c(t,r.length/4),h=n<41?1:n-40,i=n>214?254:n+40,f=B(r,h,i),w=O(f),w.string?(C=w.format,e=w,w=w.string,"EAN-13"===C&&(void 0===p[w]?(p[w]={count:1,correction:e.correction},b.push(w)):(p[w].count=p[w].count+1,p[w].correction=p[w].correction+e.correction),w=!1)):w=!1,g+=4*U.width}while(!w&&g<s.length);if(w&&"EAN-13"!==C&&u.push({Format:C,Value:w}),"EAN-13"===C&&(w=!1),!w){v(4,2),g=0,s=d(20);do{for(r=s.subarray(g,g+4*U.width),t=[],l=0;l<256;l++)t[l]=0;for(l=0;l<r.length;l+=4)a=Math.round((r[l]+r[l+1]+r[l+2])/3),t[a]=t[a]+1;n=c(t,r.length/4),h=n<40?0:n-40,i=n>215?255:n+40,f=B(r,h,i),w=O(f),w.string?(C=w.format,e=w,w=w.string,"EAN-13"===C&&(void 0===p[w]?(p[w]={count:1,correction:e.correction},b.push(w)):(p[w].count=p[w].count+1,p[w].correction=p[w].correction+e.correction),w=!1)):w=!1,g+=4*U.width}while(!w&&g<s.length);if("EAN-13"===C){var L={};for(var N in p){p[N].correction=p[N].correction/p[N].count;var G=p[N].correction;G-=p[N].count,G+=b.indexOf(N),L[N]=G}var j=Number.POSITIVE_INFINITY,k="";for(var F in L)L[F]<j&&(j=L[F],k=N);w=j<11&&k}w&&u.push({Format:C,Value:w,bBox:V[o]})}if(u.length>0&&!R)break}return u}function B(e,r,t){var a,n,h,i=0,o=new Uint8ClampedArray(U.width*(t-r+1)*4);for(n=0;n<o.length;n++)o[n]=255;for(n=0;n<4*U.width;n+=4)for(a=t,i=(e[n]+e[n+1]+e[n+2])/3,n<4*U.width-4&&(i+=(e[n+4]+e[n+5]+e[n+6])/3,i/=2),h=n;h<o.length;h+=4*U.width)i<a&&(o[h]=o[h+1]=o[h+2]=0),a--;return o}function b(e,r){if(r){if(5!==e.length)return!1}else if(3!==e.length)return!1;var t,a=0;for(t=0;t<e.length;t++)a+=e[t];for(a/=e.length,t=0;t<e.length;t++)if(e[t]/a<.5||e[t]/a>1.5)return!1;return!0}function w(e,r){if(e.length<5||e.length>6)return!1;var t,a=0,n=[0,0];for(t=0;t<e.length;t++)e[t]>a&&(a=e[t],n[0]=t);for(a=0,t=0;t<e.length;t++)t!==n[0]&&e[t]>a&&(a=e[t],n[1]=t);return n[0]+n[1]===2}function L(e,r){var t,a=0;for(t=0;t<e.length;t++)a+=e[t];if(a/=4,r){if(4!==e.length)return!1;for(t=0;t<e.length;t++)if(e[t]/a<.5||e[t]/a>1.5)return!1;return!0}if(3!==e.length)return!1;var n,h=0;for(t=0;t<e.length;t++)e[t]>h&&(h=e[t],n=t);if(0!==n)return!1;if(e[0]/a<1.5||e[0]/a>2.5)return!1;for(t=1;t<e.length;t++)if(e[t]/a<.5||e[t]/a>1.5)return!1;return!0}function N(e,r){var t,a,n,h=[],i=[],o=0;if("Code128"===r||"Code93"===r){for(a=6,t=e[0],"Code128"===r&&(t/=2),n=0;n<e.length;n++)if(e[n]>6*t){e.splice(n,e.length);break}do{7===e.length&&"Code128"===r?h.push(e.splice(0,e.length)):h.push(e.splice(0,a)),"Code93"===r&&e.length<6&&e.splice(0,a)}while(e.length>0)}if("Code39"===r){for(a=9,t=e[0],n=0;n<e.length;n++)if(e[n]>5*t){e.splice(n,e.length);break}do{h.push(e.splice(0,a)),e.splice(0,1)}while(e.length>0)}if("EAN-13"===r){a=4,t=e[0];var l=0;for(n=0;n<e.length;n++)if(e[n]>6*t){e.splice(n,e.length);break}b(e.splice(0,3),!1)&&l++,o=0;do{h.push(e.splice(0,a)),6===++o&&b(e.splice(0,5),!0)&&l++}while(h.length<12&&e.length>0);if(b(e.splice(0,3),!1)&&l++,l<2)return[]}if("2Of5"===r){for(a=5,t=e[0]/2,n=0;n<e.length;n++)if(e[n]>5*t){e.splice(n,e.length);break}var c=e.splice(0,6);h.push(c);do{for(i=[],n=0;n<a;n++)i.push(e.splice(0,1)[0]);h.push(i),5===e.length&&h.push(e.splice(0,5))}while(e.length>0)}if("Inter2Of5"===r){for(a=5,t=e[0],n=0;n<e.length;n++)if(e[n]>5*t){e.splice(n,e.length);break}h.push(e.splice(0,4));var u=[];do{for(i=[],u=[],n=0;n<a;n++)i.push(e.splice(0,1)[0]),u.push(e.splice(0,1)[0]);h.push(i),h.push(u),3===e.length&&h.push(e.splice(0,3))}while(e.length>0)}if("Codabar"===r){for(a=7,t=e[0],n=0;n<e.length;n++)if(e[n]>5*t){e.splice(n,e.length);break}do{h.push(e.splice(0,a)),e.splice(0,1)}while(e.length>0)}return h}function O(e,r){var t,a,n,h,i,o=[],l=[],c=255,u=0;for(n=0;n<e.length-4*U.width;n+=4*U.width){var f=e.subarray(n,n+4*U.width);for(o=[],h=0;255===f[h];)h+=4;for(;h<f.length;){for(u=0,c=f[h];f[h]===c&&h<f.length;)u++,h+=4;o.push(u)}o.length>2&&o[0]<=o[1]/10&&o.splice(0,2);var s=o.slice(),v=!1;for(h=0;h<P.length;h++){o=s.slice();var d,g;if(o=N(o,P[h]),"2Of5"!==P[h]&&"Inter2Of5"!==P[h]||(d=o.splice(0,1)[0],g=o.splice(o.length-1,1)[0]),l=G(o,P[h]),"EAN-13"===P[h]?(o=l.data,i=l.correction):o=l,void 0!==o){if(o.length>4||"Code39"===P[h]&&o.length>2)if("Code128"===P[h])j(o)&&(o=_(o),v=!0);else if("Code93"===P[h])E(o)&&(o=M(o),v=!0);else if("Code39"===P[h])S(o)&&(o=I(o),v=!0);else if("EAN-13"===P[h])(a=m(o))&&13===a.length&&(o=a,v=!0);else if("2Of5"===P[h]||"Inter2Of5"===P[h]){if("2Of5"===P[h]){if(void 0!==d&&!w(d,!0))continue;if(void 0!==g&&!w(g,!1))continue}if("Inter2Of5"===P[h]){if(void 0!==d&&!L(d,!0))continue;if(void 0!==g&&!L(g,!1))continue}a=k(o),a&&(o=a,v=!0)}else"Codabar"===P[h]&&(a=F(o))&&(o=a,v=!0);if(v){t=P[h],"Inter2Of5"===t&&(t="Interleaved 2 of 5"),"2Of5"===t&&(t="Standard 2 of 5");break}}}if(v)break}return"Code128"===t?"string"==typeof o.string?o:{string:!1}:"string"==typeof o?"EAN-13"===t?{string:o,format:t,correction:i}:{string:o,format:t}:{string:!1}}function G(e,r){var t,a,n,h,i,o,l,c,u,f,s,v,d,g=0,C=[];for(r=T.indexOf(r),0===r?(a=11,t=6,n=4):1===r?(a=9,t=6,n=4):2===r?(a=12,t=9):3===r?(a=7,t=4,n=4):6===r&&(t=7),h=0;h<e.length;h++){var A=e[h],p=0,B=0,b=[];if(6!==r)if(4!==r&&5!==r){for(;B<t;)p+=A[B],B++;if(2!==r)if(3!==r){for(B=0;B<t;)b.push(A[B]/p*a),B++;for(B=0;B<t;)b[B]=b[B]>n?n:b[B],b[B]=b[B]<1?1:b[B],b[B]=Math.round(b[B]),B++;if(3===r){var w=0;for(i=0;i<b.length;i++)w+=b[i];if(w>7){d=0;var L=0;for(i=0;i<b.length;i++)b[i]>d&&(d=b[i],L=i);b[L]=d-(w-7)}}if(3===r)for(i=0;i<b.length;i++)g+=Math.abs(b[i]-A[i]/p*a);C.push(b)}else{for(d=[[0,0],[0,0],[0,0]],o=0;o<A.length;o++)A[o]>d[0][0]&&(d[0][0]=A[o],s=d[0][1],d[0][1]=o,o=s),A[o]>d[1][0]&&o!==d[0][1]&&(d[1][0]=A[o],s=d[1][1],d[1][1]=o,o=s),A[o]>d[2][0]&&o!==d[0][1]&&o!==d[1][1]&&(d[2][0]=A[o],d[2][1]=o);if(d[0][0]/d[1][0]>=3){for(f=0,o=0;o<A.length;o++)o!==d[0][1]&&(f+=A[o]);for(f/=3,o=0;o<A.length;o++)if(o!==d[0][1]&&(A[o]/f<.02||A[o]/f>3))return{data:[],correction:0};if(d[0][0]/f<2.2||d[0][0]/f>6)return{data:[],correction:0};for(o=0;o<A.length;o++)o===d[0][1]?b.push(4):b.push(1);C.push(b)}else if(d[0][0]/d[2][0]>2){if(u=d[0][0]+d[1][0],u/=5,d[0][0]/(3*u)<.02||d[0][0]/(3*u)>3)return{data:[],correction:0};if(d[1][0]/(2*u)<.02||d[1][0]/(2*u)>3)return{data:[],correction:0};for(f=0,o=0;o<A.length;o++)o!==d[0][1]&&o!==d[1][1]&&(f+=A[o]);for(f/=2,o=0;o<A.length;o++)if(o!==d[0][1]&&o!==d[1][1]&&(A[o]/f<.02||A[o]/f>3))return{data:[],correction:0};for(o=0;o<A.length;o++)o===d[0][1]?b.push(3):o===d[1][1]?b.push(2):b.push(1);C.push(b)}else{if(d[0][1]%2==d[1][1]%2&&d[0][1]%2==d[2][1]%2){var N=d[0][1]%2;for(d[2]=[0,0],o=0;o<A.length;o++)o%2!==N&&A[o]>d[2][0]&&(d[2][0]=A[o],d[2][1]=o)}for(u=d[0][0]+d[1][0]+d[2][0],u/=3,o=0;o<d.length;o++)if(d[o][0]/u<.02||d[o][0]/u>3)return{data:[],correction:0};var O=0;for(o=0;o<A.length;o++)o!==d[0][1]&&o!==d[1][1]&&o!==d[2][1]&&(O=A[o]);if(u/O<.02||u/O>3)return{data:[],correction:0};for(o=0;o<A.length;o++)o===d[0][1]||o===d[1][1]||o===d[2][1]?b.push(2):b.push(1);C.push(b)}for(o=0;o<b.length;o++)g+=Math.abs(b[o]-A[o]/p*a)}else{for(l=[[0,0],[0,0]],c=[0,0],o=0;o<A.length;o++)o%2==0?(A[o]>l[0][0]&&(l[0][0]=A[o],s=l[0][1],l[0][1]=o,o=s),A[o]>l[1][0]&&o!==l[0][1]&&(l[1][0]=A[o],l[1][1]=o)):A[o]>c[0]&&(c[0]=A[o],c[1]=o);if(c[0]/l[0][0]>1.5&&c[0]/l[1][0]>1.5)for(l=[[0,0],[0,0]],o=0;o<A.length;o++)o%2!=0&&(A[o]>l[0][0]&&o!==c[1]&&(l[0][0]=A[o],s=l[0][1],l[0][1]=o,o=s),A[o]>l[1][0]&&o!==l[0][1]&&o!==c[1]&&(l[1][0]=A[o],l[1][1]=o));if(u=l[0][0]+l[1][0]+c[0],u/=3,l[0][0]/u>1.6||l[0][0]/u<.4)return[];if(l[1][0]/u>1.6||l[1][0]/u<.4)return[];if(c[0]/u>1.6||c[0]/u<.4)return[];for(f=0,i=0;i<A.length;i++)i!==l[0][1]&&i!==l[1][1]&&i!==c[1]&&(f+=A[i]);for(f/=6,i=0;i<A.length;i++)if(i!==l[0][1]&&i!==l[1][1]&&i!==c[1]&&(A[i]/f>1.6||A[i]/f<.4))return[];for(o=0;o<A.length;o++)o===l[0][1]||o===l[1][1]||o===c[1]?b.push(2):b.push(1);C.push(b)}}else{for(d=[[0,0],[0,0]],i=0;i<A.length;i++){if(!isFinite(A[i]))return[];A[i]>d[0][0]&&(d[0][0]=A[i],s=d[0][1],d[0][1]=i,i=s-1),A[i]>d[1][0]&&i!==d[0][1]&&(d[1][0]=A[i],d[1][1]=i)}if(x){if(u=d[0][0]+d[1][0],u/=2,d[0][0]/u>1.3||d[0][0]/u<.7)return[];if(d[1][0]/u>1.3||d[1][0]/u<.7)return[];for(f=0,i=0;i<A.length;i++)i!==d[0][1]&&i!==d[1][1]&&(f+=A[i]);for(f/=3,i=0;i<A.length;i++)if(i!==d[0][1]&&i!==d[1][1]&&(A[i]/f>1.3||A[i]/f<.7))return[]}for(i=0;i<A.length;i++)i!==d[0][1]&&i!==d[1][1]?b.push(0):b.push(1);C.push(b)}else{if(7!==A.length)return[];if(0===h||h===e.length-1){for(c=[[0,0],[0,0]],l=[0,0],i=0;i<A.length;i++)if(i%2==0)A[i]>l[0]&&(l[0]=A[i],l[1]=i);else{if(A[i]>c[0][0]){c[0][0]=A[i],s=c[0][1],c[0][1]=i,i=s-1;continue}A[i]>c[1][0]&&i!==c[0][1]&&(c[1][0]=A[i],c[1][1]=i)}if(y){for(u=c[0][0]+c[1][0]+l[0],u/=3,v=[c[0][0],c[1][0],l[0]],i=0;i<v.length;i++)if(v[i]/u>1.5||v[i]/u<.5)return[];for(f=0,i=0;i<A.length;i++)i!==l[1]&&i!==c[0][1]&&i!==c[1][1]&&(f+=A[i]);for(f/=4,i=0;i<A.length;i++)if(i!==l[1]&&i!==c[0][1]&&i!==c[1][1]&&(A[i]/f>1.5||A[i]/f<.5))return[]}for(i=0;i<A.length;i++)i===l[1]||i===c[0][1]||i===c[1][1]?b.push(1):b.push(0)}else{for(l=[0,0],c=[0,0],i=0;i<A.length;i++)i%2==0?A[i]>l[0]&&(l[0]=A[i],l[1]=i):A[i]>c[0]&&(c[0]=A[i],c[1]=i);if(l[0]/c[0]>1.55){var G=l;for(l=[G,[0,0],[0,0]],i=0;i<A.length;i++)if(i%2==0){if(A[i]>l[1][0]&&i!==l[0][1]){l[1][0]=A[i],s=l[1][1],l[1][1]=i,i=s-1;continue}A[i]>l[2][0]&&i!==l[0][1]&&i!==l[1][1]&&(l[2][0]=A[i],l[2][1]=i)}if(y){for(u=l[0][0]+l[1][0]+l[2][0],u/=3,i=0;i<l.length;i++)if(l[i][0]/u>1.5||l[i][0]/u<.5)return[];for(f=0,i=0;i<A.length;i++)i!==l[0][1]&&i!==l[1][1]&&i!==l[2][1]&&(f+=A[i]);for(f/=4,i=0;i<A.length;i++)if(i!==l[0][1]&&i!==l[1][1]&&i!==l[2][1]&&(A[i]/f>1.5||A[i]/f<.5))return[]}for(i=0;i<A.length;i++)i===l[0][1]||i===l[1][1]||i===l[2][1]?b.push(1):b.push(0)}else{if(y){if(u=l[0]+c[0],u/=2,l[0]/u>1.5||l[0]/u<.5)return[];if(c[0]/u>1.5||c[0]/u<.5)return[];for(f=0,i=0;i<A.length;i++)i!==l[1]&&i!==c[1]&&(f+=A[i]);for(f/=5,i=0;i<A.length;i++)if(i!==l[1]&&i!==c[1]&&(A[i]/f>1.5||A[i]/f<.5))return[]}for(i=0;i<A.length;i++)i===l[1]||i===c[1]?b.push(1):b.push(0)}}C.push(b)}}return 3===r?{data:C,correction:g}:C}function j(e){var r,t=e[e.length-2].join("");if(-1===(t=$.value.indexOf(t)))return!1;var a=$.value.indexOf(e[0].join(""));if(-1===a)return!1;var n=$[e[0].join("")];if(void 0===n)return!1;if("A"!==n&&"B"!==n&&"C"!==n)return!1;for(r=1;r<e.length-2;r++)if(a+=$.value.indexOf(e[r].join(""))*r,-1===$.value.indexOf(e[r].join("")))return!1;return a%103===t}function k(e){var r,t="";for(r=0;r<e.length;r++){if(-1===K.indexOf(e[r].join("")))return!1;t+=K.indexOf(e[r].join(""))}return t}function F(e){var r,t="",a=e[0].join(""),n=e[e.length-1].join("");if("A"!==Q[a]&&"B"!==Q[a]&&"C"!==Q[a]&&"D"!==Q[a])return!1;if("A"!==Q[n]&&"B"!==Q[n]&&"C"!==Q[n]&&"D"!==Q[n])return!1;for(r=1;r<e.length-1;r++){if(void 0===Q[e[r].join("")])return!1;t+=Q[e[r].join("")]}return t}function m(e){if(12!==e.length)return!1;var r,t=e.slice(0,6),a=!1,n=e.slice(6,e.length);for(r=0;r<t.length;r++)if(t[r]=t[r].join(""),4!==t[r].length){a=!0;break}if(a)return!1;for(r=0;r<n.length;r++)if(n[r]=n[r].join(""),4!==n[r].length){a=!0;break}if(a)return!1;var h=[];for(r=0;r<t.length;r++)if(void 0!==Y.L[t[r]])h.push("L");else{if(void 0===Y.G[t[r]]){a=!0;break}h.push("G")}if(a)return!1;var i=[];if(void 0===Y.formats[h.join("")])return!1;for(i.push(Y.formats[h.join("")]),r=0;r<t.length;r++){if(void 0===Y[h[r]][t[r]]){a=!0;break}i.push(Y[h[r]][t[r]])}if(a)return!1;for(r=0;r<n.length;r++){if(void 0===Y.R[n[r]]){a=!0;break}i.push(Y.R[n[r]])}if(a)return!1;var o=3,l=0;for(r=i.length-2;r>=0;r--)l+=i[r]*o,o=3===o?1:3;return l=(10-l%10)%10,i[i.length-1]===l&&i.join("")}function E(e){var r=e[e.length-3].join(""),t=e[e.length-2].join(""),a=!0;if(void 0===W[r])return!1;if(void 0===W[t])return!1;var n,h=W[r].value,i=1,o=0;for(n=e.length-4;n>0&&(a=void 0!==W[e[n].join("")]&&a);n--)o+=W[e[n].join("")].value*i,++i>20&&(i=1);var l=o%47,c=l===h;if(!c)return!1;if(!a)return!1;for(o=l,i=2,h=W[t].value,n=e.length-4;n>0&&(a=void 0!==W[e[n].join("")]&&a);n--)o+=W[e[n].join("")].value*i,++i>15&&(i=1);return o%47===h&&c}function S(e){var r=!0;if(void 0===X[e[0].join("")])return!1;if("*"!==X[e[0].join("")].character)return!1;if(void 0===X[e[e.length-1].join("")])return!1;if("*"!==X[e[e.length-1].join("")].character)return!1;for(i=1;i<e.length-1;i++)if(void 0===X[e[i].join("")]){r=!1;break}return r}function I(e){var r="",t=!1,a="",n="";for(i=1;i<e.length-1;i++)a=X[e[i].join("")].character,("$"===a||"/"===a||"+"===a||"%"===a)&&i+1<e.length-1?(t=!0,n=a):t?(void 0===J[n+a]||(r+=J[n+a]),t=!1):r+=a;return r}function M(e){var r="",t=!1,a="",n="";for(i=1;i<e.length-3;i++)a=W[e[i].join("")].character,"($)"!==a&&"(/)"!==a&&"(+)"!==a&&"(%)"!==a?t?(void 0===J[n+a]||(r+=J[n+a]),t=!1):r+=a:(t=!0,n=a[1]);return r}function _(e){var r,t,a=$[e[0].join("")],n="Code128",h="";for(t=1;t<e.length-2;t++)switch(r=$[e[t].join("")][a]){case"FNC1":1===t&&(n="GS1-128");break;case"FNC2":case"FNC3":case"FNC4":break;case"SHIFT_B":t++,h+=$[e[t].join("")].B;break;case"SHIFT_A":t++,h+=$[e[t].join("")].A;break;case"Code_A":a="A";break;case"Code_B":a="B";break;case"Code_C":a="C";break;default:h+=r}return{string:h,format:n}}var T=["Code128","Code93","Code39","EAN-13","2Of5","Inter2Of5","Codabar"],y=!0,x=!0,U=void 0,D=void 0,H=void 0,P=void 0,R=void 0,V=void 0,K=["00110","10001","01001","11000","00101","10100","01100","00011","10010","01010"],$={212222:{A:" ",B:" ",C:"00"},222122:{A:"!",B:"!",C:"01"},222221:{A:\'"\',B:\'"\',C:"02"},121223:{A:"#",B:"#",C:"03"},121322:{A:"$",B:"$",C:"04"},131222:{A:"%",B:"%",C:"05"},122213:{A:"&",B:"&",C:"06"},122312:{A:"\'",B:"\'",C:"07"},132212:{A:"(",B:"(",C:"08"},221213:{A:")",B:")",C:"09"},221312:{A:"*",B:"*",C:"10"},231212:{A:"+",B:"+",C:"11"},112232:{A:",",B:",",C:"12"},122132:{A:"-",B:"-",C:"13"},122231:{A:".",B:".",C:"14"},113222:{A:"/",B:"/",C:"15"},123122:{A:"0",B:"0",C:"16"},123221:{A:"1",B:"1",C:"17"},223211:{A:"2",B:"2",C:"18"},221132:{A:"3",B:"3",C:"19"},221231:{A:"4",B:"4",C:"20"},213212:{A:"5",B:"5",C:"21"},223112:{A:"6",B:"6",C:"22"},312131:{A:"7",B:"7",C:"23"},311222:{A:"8",B:"8",C:"24"},321122:{A:"9",B:"9",C:"25"},321221:{A:":",B:":",C:"26"},312212:{A:";",B:";",C:"27"},322112:{A:"<",B:"<",C:"28"},322211:{A:"=",B:"=",C:"29"},212123:{A:">",B:">",C:"30"},212321:{A:"?",B:"?",C:"31"},232121:{A:"@",B:"@",C:"32"},111323:{A:"A",B:"A",C:"33"},131123:{A:"B",B:"B",C:"34"},131321:{A:"C",B:"C",C:"35"},112313:{A:"D",B:"D",C:"36"},132113:{A:"E",B:"E",C:"37"},132311:{A:"F",B:"F",C:"38"},211313:{A:"G",B:"G",C:"39"},231113:{A:"H",B:"H",C:"40"},231311:{A:"I",B:"I",C:"41"},112133:{A:"J",B:"J",C:"42"},112331:{A:"K",B:"K",C:"43"},132131:{A:"L",B:"L",C:"44"},113123:{A:"M",B:"M",C:"45"},113321:{A:"N",B:"N",C:"46"},133121:{A:"O",B:"O",C:"47"},313121:{A:"P",B:"P",C:"48"},211331:{A:"Q",B:"Q",C:"49"},231131:{A:"R",B:"R",C:"50"},213113:{A:"S",B:"S",C:"51"},213311:{A:"T",B:"T",C:"52"},213131:{A:"U",B:"U",C:"53"},311123:{A:"V",B:"V",C:"54"},311321:{A:"W",B:"W",C:"55"},331121:{A:"X",B:"X",C:"56"},312113:{A:"Y",B:"Y",C:"57"},312311:{A:"Z",B:"Z",C:"58"},332111:{A:"[",B:"[",C:"59"},314111:{A:"\\\\",B:"\\\\",C:"60"},221411:{A:"]",B:"]",C:"61"},431111:{A:"^",B:"^",C:"62"},111224:{A:"_",B:"_",C:"63"},111422:{A:"NUL",B:"`",C:"64"},121124:{A:"SOH",B:"a",C:"65"},121421:{A:"STX",B:"b",C:"66"},141122:{A:"ETX",B:"c",C:"67"},141221:{A:"EOT",B:"d",C:"68"},112214:{A:"ENQ",B:"e",C:"69"},112412:{A:"ACK",B:"f",C:"70"},122114:{A:"BEL",B:"g",C:"71"},122411:{A:"BS",B:"h",C:"72"},142112:{A:"HT",B:"i",C:"73"},142211:{A:"LF",B:"j",C:"74"},241211:{A:"VT",B:"k",C:"75"},221114:{A:"FF",B:"l",C:"76"},413111:{A:"CR",B:"m",C:"77"},241112:{A:"SO",B:"n",C:"78"},134111:{A:"SI",B:"o",C:"79"},111242:{A:"DLE",B:"p",C:"80"},121142:{A:"DC1",B:"q",C:"81"},121241:{A:"DC2",B:"r",C:"82"},114212:{A:"DC3",B:"s",C:"83"},124112:{A:"DC4",B:"t",C:"84"},124211:{A:"NAK",B:"u",C:"85"},411212:{A:"SYN",B:"v",C:"86"},421112:{A:"ETB",B:"w",C:"87"},421211:{A:"CAN",B:"x",C:"88"},212141:{A:"EM",B:"y",C:"89"},214121:{A:"SUB",B:"z",C:"90"},412121:{A:"ESC",B:"{",C:"91"},111143:{A:"FS",B:"|",C:"92"},111341:{A:"GS",B:"}",C:"93"},131141:{A:"RS",B:"~",C:"94"},114113:{A:"US",B:"DEL",C:"95"},114311:{A:"FNC3",B:"FNC3",C:"96"},411113:{A:"FNC2",B:"FNC2",C:"97"},411311:{A:"SHIFT_B",B:"SHIFT_A",C:"98"},113141:{A:"Code_C",B:"Code_C",C:"99"},114131:{A:"Code_B",B:"FNC4",C:"Code_B"},311141:{A:"FNC4",B:"Code_A",C:"Code_A"},411131:{A:"FNC1",B:"FNC1",C:"FNC1"},211412:"A",211214:"B",211232:"C",233111:{A:"STOP",B:"STOP",C:"STOP"},value:["212222","222122","222221","121223","121322","131222","122213","122312","132212","221213","221312","231212","112232","122132","122231","113222","123122","123221","223211","221132","221231","213212","223112","312131","311222","321122","321221","312212","322112","322211","212123","212321","232121","111323","131123","131321","112313","132113","132311","211313","231113","231311","112133","112331","132131","113123","113321","133121","313121","211331","231131","213113","213311","213131","311123","311321","331121","312113","312311","332111","314111","221411","431111","111224","111422","121124","121421","141122","141221","112214","112412","122114","122411","142112","142211","241211","221114","413111","241112","134111","111242","121142","121241","114212","124112","124211","411212","421112","421211","212141","214121","412121","111143","111341","131141","114113","114311","411113","411311","113141","114131","311141","411131","211412","211214","211232","233111"]},W={131112:{value:0,character:"0"},111213:{value:1,character:"1"},111312:{value:2,character:"2"},111411:{value:3,character:"3"},121113:{value:4,character:"4"},121212:{value:5,character:"5"},121311:{value:6,character:"6"},111114:{value:7,character:"7"},131211:{value:8,character:"8"},141111:{value:9,character:"9"},211113:{value:10,character:"A"},211212:{value:11,character:"B"},211311:{value:12,character:"C"},221112:{value:13,character:"D"},221211:{value:14,character:"E"},231111:{value:15,character:"F"},112113:{value:16,character:"G"},112212:{value:17,character:"H"},112311:{value:18,character:"I"},122112:{value:19,character:"J"},132111:{value:20,character:"K"},111123:{value:21,character:"L"},111222:{value:22,character:"M"},111321:{value:23,character:"N"},121122:{value:24,character:"O"},131121:{value:25,character:"P"},212112:{value:26,character:"Q"},212211:{value:27,character:"R"},211122:{value:28,character:"S"},211221:{value:29,character:"T"},221121:{value:30,character:"U"},222111:{value:31,character:"V"},112122:{value:32,character:"W"},112221:{value:33,character:"X"},122121:{value:34,character:"Y"},123111:{value:35,character:"Z"},121131:{value:36,character:"-"},311112:{value:37,character:"."},311211:{value:38,character:" "},321111:{value:39,character:"$"},112131:{value:40,character:"/"},113121:{value:41,character:"+"},211131:{value:42,character:"%"},121221:{value:43,character:"($)"},312111:{value:44,character:"(%)"},311121:{value:45,character:"(/)"},122211:{value:46,character:"(+)"},111141:{value:-1,character:"*"}},X={111221211:{value:0,character:"0"},211211112:{value:1,character:"1"},112211112:{value:2,character:"2"},212211111:{value:3,character:"3"},111221112:{value:4,character:"4"},211221111:{value:5,character:"5"},112221111:{value:6,character:"6"},111211212:{value:7,character:"7"},211211211:{value:8,character:"8"},112211211:{value:9,character:"9"},211112112:{value:10,character:"A"},112112112:{value:11,character:"B"},212112111:{value:12,character:"C"},111122112:{value:13,character:"D"},211122111:{value:14,character:"E"},112122111:{value:15,character:"F"},111112212:{value:16,character:"G"},211112211:{value:17,character:"H"},112112211:{value:18,character:"I"},111122211:{value:19,character:"J"},211111122:{value:20,character:"K"},112111122:{value:21,character:"L"},212111121:{value:22,character:"M"},111121122:{value:23,character:"N"},211121121:{value:24,character:"O"},112121121:{value:25,character:"P"},111111222:{value:26,character:"Q"},211111221:{value:27,character:"R"},112111221:{value:28,character:"S"},111121221:{value:29,character:"T"},221111112:{value:30,character:"U"},122111112:{value:31,character:"V"},222111111:{value:32,character:"W"},121121112:{value:33,character:"X"},221121111:{value:34,character:"Y"},122121111:{value:35,character:"Z"},121111212:{value:36,character:"-"},221111211:{value:37,character:"."},122111211:{value:38,character:" "},121212111:{value:39,character:"$"},121211121:{value:40,character:"/"},121112121:{value:41,character:"+"},111212121:{value:42,character:"%"},121121211:{value:-1,character:"*"}},J={"/A":"!","/B":\'"\',"/C":"#","/D":"$","/E":"%","/F":"&","/G":"\'","/H":"(","/I":")","/J":"*","/K":"+","/L":",","/O":"/","/Z":":","%F":";","%G":"<","%H":"=","%I":">","%J":"?","%K":"[","%L":"\\\\","%M":"]","%N":"^","%O":"_","+A":"a","+B":"b","+C":"c","+D":"d","+E":"e","+F":"f","+G":"g","+H":"h","+I":"i","+J":"j","+K":"k","+L":"l","+M":"m","+N":"n","+O":"o","+P":"p","+Q":"q","+R":"r","+S":"s","+T":"t","+U":"u","+V":"v","+W":"w","+X":"x","+Y":"y","+Z":"z","%P":"{","%Q":"|","%R":"|","%S":"~"},Q={"0000011":"0","0000110":"1","0001001":"2",1100000:"3","0010010":"4",1000010:"5","0100001":"6","0100100":"7","0110000":"8",1001000:"9","0001100":"-","0011000":"$",1000101:":",1010001:"/",1010100:".","0011111":"+","0011010":"A","0001011":"B","0101001":"C","0001110":"D"},Y={L:{3211:0,2221:1,2122:2,1411:3,1132:4,1231:5,1114:6,1312:7,1213:8,3112:9},G:{1123:0,1222:1,2212:2,1141:3,2311:4,1321:5,4111:6,2131:7,3121:8,2113:9},R:{3211:0,2221:1,2122:2,1411:3,1132:4,1231:5,1114:6,1312:7,1213:8,3112:9},formats:{LLLLLL:0,LLGLGG:1,LLGGLG:2,LLGGGL:3,LGLLGG:4,LGGLLG:5,LGGGLL:6,LGLGLG:7,LGLGGL:8,LGGLGL:9}};self.onmessage=function(e){var r,t;switch(D={data:new Uint8ClampedArray(e.data.scan),width:e.data.scanWidth,height:e.data.scanHeight},e.data.rotation){case 8:D.data=a(D.data,D.width,D.height,-90),r=e.data.scanWidth,D.width=D.height,D.height=r;break;case 6:D.data=a(D.data,D.width,D.height,90),r=e.data.scanWidth,D.width=D.height,D.height=r;break;case 3:D.data=a(D.data,D.width,D.height,180)}U={data:h(D.data,D.width,D.height),width:D.width/2,height:D.height/2},e.data.postOrientation&&postMessage({result:U,success:"orientationData"}),P=[];var n=["Code128","Code93","Code39","EAN-13","2Of5","Inter2Of5","Codabar"];for(R=!0,void 0!==e.data.multiple&&(R=e.data.multiple),void 0!==e.data.decodeFormats&&(n=e.data.decodeFormats),t=0;t<n.length;t++)P.push(n[t]);V=[],f(),s();var i=p();i.length>0?postMessage({id:e.data.id,result:i,success:!0}):postMessage({id:e.data.id,result:i,success:!1})}}]);',t.p+"e4449361aebfbac52e5b.worker.js")}},function(e,r,t){"use strict";function a(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(r,"__esModule",{value:!0});var n=function(){function e(e,r){for(var t=0;t<r.length;t++){var a=r[t];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}return function(r,t,a){return t&&e(r.prototype,t),a&&e(r,a),r}}(),i=t(0),o=new i,h=["Code128","Code93","Code39","EAN-13","2Of5","Inter2Of5","Codabar"],l=0,c={},u={},f=function(e){if("localization"!==e.data.success&&"orientationData"!==e.data.success){var r=e.data.id,t=c[r];if(void 0!==t){t(e.data.result.map(function(e){return{boundingBox:e.bBox,cornerPoints:[{x:e.bBox.x,y:e.bBox.y},{x:e.bBox.x+e.bBox.width,y:e.bBox.y},{x:e.bBox.x+e.bBox.width,y:e.bBox.y+e.bBox.height},{x:e.bBox.x,y:e.bBox.y+e.bBox.height}],rawValue:e.Value}}))}delete c[r],delete u[r]}},d=void 0,s=void 0,v=function(){function e(){a(this,e),o.onmessage=f,d=document.createElement("canvas"),d.width=640,d.height=480,s=d.getContext("2d")}return n(e,[{key:"detect",value:function(e){return new Promise(function(r,t){var a=l++;c[a]=r,u[a]=t,s.drawImage(e,0,0,d.width,d.height);var n={scan:s.getImageData(0,0,d.width,d.height).data,scanWidth:d.width,scanHeight:d.height,multiple:!0,decodeFormats:h,cmd:"normal",rotation:1,postOrientation:!1,id:a};o.postMessage(n),n=null})}}]),e}();r.default=v,e.exports=r.default},function(e,r){var t=window.URL||window.webkitURL;e.exports=function(e,r){try{try{var a;try{var n=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder;a=new n,a.append(e),a=a.getBlob()}catch(r){a=new Blob([e])}return new Worker(t.createObjectURL(a))}catch(r){return new Worker("data:application/javascript,"+encodeURIComponent(e))}}catch(e){if(!r)throw Error("Inline worker is not supported");return new Worker(r)}}}])});