Socket
Socket
Sign inDemoInstall

browser-image-manipulation

Package Overview
Dependencies
8
Maintainers
1
Versions
18
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.2.0 to 0.2.1

4

dist/browser-image-manipulation.js

@@ -1,3 +0,3 @@

!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):t["browser-image-manipulation"]=e()}(this,function(){"use strict";function t(){throw new Error("Dynamic requires are not currently supported by rollup-plugin-commonjs")}function e(t,e){return e={exports:{}},t(e,e.exports),e.exports}function n(t){return function(){return new Promise(function(e,n){var r=document.createElement("img"),i=new FileReader;i.onload=function(t){r.src=t.target.result},i.onerror=function(){n(new Error("Image read error"))},r.onload=function(){var n=document.createElement("canvas");n.width=r.width,n.height=r.height,n.getContext("2d").drawImage(r,0,0,n.width,n.height),e({canvas:n,fileName:t.name})},r.onerror=function(){n(new Error("Invalid image"))},i.readAsDataURL(t)})}}function r(t,e){return function(){return Promise.resolve({canvas:t,fileName:e})}}function i(t,e){return function(n){return new Promise(function(r,i){var o=0,a=0,s=n.width;a=(n.height-e)/2,o=(s-t)/2;var u=document.createElement("canvas"),h=u.getContext("2d");u.width=t,u.height=e,h.drawImage(n,o,a,t,e,0,0,t,e),r(u)})}}function o(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},i=Object.assign({pica:{}},r);return function(r){return new Promise(function(o,a){var s=null,u=document.createElement("canvas"),h=0,A=r.width,c=r.height,l=0,f=0;if(n===B)h=A<c?t/A:e/c,l=c*h,f=A*h;else if(n===E){var g=A/t,d=c/e;g>d?(l=Math.round(c/g),f=t):(f=Math.round(A/d),l=e)}else a(new Error("Unknown resize type"));u.width=f,u.height=l,(new _).resize(r,u,i.pica).then(function(t){if(n===B){var e=0,r=0;f<l?(r=(l-f)/2,l=f):(e=(f-l)/2,f=l);var i=document.createElement("canvas"),a=i.getContext("2d");i.width=f,i.height=l,a.drawImage(t,e,r,f,l,0,0,f,l),s=i}else s=t;o(s)})})}}function a(t){return t*(Math.PI/180)}function s(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=e.padding,r=void 0===n?0:n,i=e.bgColor,o=void 0===i?"white":i;return function(e){return new Promise(function(n,i){var s=document.createElement("canvas"),u=0;t<0&&(t=360+t),u=t>=0&&t<=90?90-t:270-t;var h=a(t),A=a(u),c=a(t),l={cosAngle:Math.cos(c),cosCalcAngle:Math.cos(A),sinAngle:Math.sin(c),sinCalcAngle:Math.sin(A)};for(var f in l)l[f]<0&&(l[f]=-1*l[f]);s.width=e.width*l.cosAngle+e.height*l.cosCalcAngle+r,s.height=e.width*l.sinAngle+e.height*l.sinCalcAngle+r;var g=s.getContext("2d");o&&(g.beginPath(),g.rect(0,0,s.width,s.height),g.fillStyle=o,g.fill(),g.save()),g.save(),g.translate(s.width/2,s.height/2),g.rotate(h),g.drawImage(e,-e.width/2,-e.height/2),g.restore(),n(s)})}}function u(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=n.bgColor,i=void 0===r?"white":r;return function(n){return new Promise(function(r,o){var a=document.createElement("canvas");a.width=t,a.height=e;var s=a.getContext("2d"),u=n.width,h=n.height;i&&(s.beginPath(),s.rect(0,0,t,e),s.fillStyle=i,s.fill(),s.save());var A=0,c=0;u<t&&(A=(t-u)/2),h<e&&(c=(e-h)/2),s.drawImage(n,0,0,u,h,A,c,u,h),r(a)})}}function h(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=e.padding,r=void 0===n?4:n,i=e.bgColor,o=void 0===i?"white":i;return function(e){return new Promise(function(n,i){var a=document.createElement("canvas");a.width=t,a.height=t;var s=a.getContext("2d");s.beginPath(),s.rect(0,0,t,t),s.fillStyle=o,s.fill(),s.save();var u=t-r,h=Math.round(u/2);s.beginPath(),s.arc(h+r/2,h+r/2,h-r/2,0,2*Math.PI,!0),s.closePath(),s.clip(),s.drawImage(e,0,0,u,u),s.restore(),n(a)})}}function A(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.rQ,n=void 0===e?.34:e,r=t.gQ,i=void 0===r?.5:r,o=t.bQ,a=void 0===o?.16:o;return function(t){return new Promise(function(e,r){var o=document.createElement("canvas");o.width=t.width,o.height=t.height;var s=o.getContext("2d");s.drawImage(t,0,0);for(var u=s.getImageData(0,0,o.width,o.height),h=u.data,A=0;A<h.length;A+=4){var c=n*h[A]+i*h[A+1]+a*h[A+2];h[A]=c,h[A+1]=c,h[A+2]=c}s.putImageData(u,0,0),e(o)})}}function c(t){return function(e){return new Promise(function(n,r){var i=document.createElement("canvas"),o=i.getContext("2d");i.width=e.width,i.height=e.height;var a=e.width*t,s=e.height*t;l(o),o.drawImage(e,0,0,a,s),l(o),o.drawImage(i,0,0,a,s,0,0,e.width,e.height),n(i)})}}function l(t){t.webkitImageSmoothingEnabled=!1,t.mozImageSmoothingEnabled=!1,t.msImageSmoothingEnabled=!1,t.imageSmoothingEnabled=!1}function f(t){return(f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function g(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function d(t,e,n,r,i){if("string"==typeof t&&(t=document.getElementById(t)),!(t&&"object"===f(t)&&"getContext"in t))throw new TypeError("Expecting canvas with `getContext` method in processCanvasRGB(A) calls!");var o=t.getContext("2d");try{return o.getImageData(e,n,r,i)}catch(t){throw new Error("unable to access image data: "+t)}}function m(t,e,n,r,i,o){if(!(isNaN(o)||o<1)){o|=0;var a=d(t,e,n,r,i);a=v(a,e,n,r,i,o),t.getContext("2d").putImageData(a,e,n)}}function v(t,e,n,r,i,o){var a,s,u,h,A,c,l,f,g,d,m,v,p,w,I,y,b,_,B,E,k,L,M,D,U,G=t.data,R=2*o+1,j=r-1,q=i-1,O=o+1,P=O*(O+1)/2,T=new x,N=T;for(u=1;u<R;u++)N=N.next=new x,u===O&&(U=N);N.next=T;var S=null,F=null;l=c=0;var H=C[o],z=Q[o];for(s=0;s<i;s++){for(y=b=_=B=f=g=d=m=0,v=O*(E=G[c]),p=O*(k=G[c+1]),w=O*(L=G[c+2]),I=O*(M=G[c+3]),f+=P*E,g+=P*k,d+=P*L,m+=P*M,N=T,u=0;u<O;u++)N.r=E,N.g=k,N.b=L,N.a=M,N=N.next;for(u=1;u<O;u++)h=c+((j<u?j:u)<<2),f+=(N.r=E=G[h])*(D=O-u),g+=(N.g=k=G[h+1])*D,d+=(N.b=L=G[h+2])*D,m+=(N.a=M=G[h+3])*D,y+=E,b+=k,_+=L,B+=M,N=N.next;for(S=T,F=U,a=0;a<r;a++)G[c+3]=M=m*H>>z,0!==M?(M=255/M,G[c]=(f*H>>z)*M,G[c+1]=(g*H>>z)*M,G[c+2]=(d*H>>z)*M):G[c]=G[c+1]=G[c+2]=0,f-=v,g-=p,d-=w,m-=I,v-=S.r,p-=S.g,w-=S.b,I-=S.a,h=l+((h=a+o+1)<j?h:j)<<2,y+=S.r=G[h],b+=S.g=G[h+1],_+=S.b=G[h+2],B+=S.a=G[h+3],f+=y,g+=b,d+=_,m+=B,S=S.next,v+=E=F.r,p+=k=F.g,w+=L=F.b,I+=M=F.a,y-=E,b-=k,_-=L,B-=M,F=F.next,c+=4;l+=r}for(a=0;a<r;a++){for(b=_=B=y=g=d=m=f=0,c=a<<2,v=O*(E=G[c]),p=O*(k=G[c+1]),w=O*(L=G[c+2]),I=O*(M=G[c+3]),f+=P*E,g+=P*k,d+=P*L,m+=P*M,N=T,u=0;u<O;u++)N.r=E,N.g=k,N.b=L,N.a=M,N=N.next;for(A=r,u=1;u<=o;u++)c=A+a<<2,f+=(N.r=E=G[c])*(D=O-u),g+=(N.g=k=G[c+1])*D,d+=(N.b=L=G[c+2])*D,m+=(N.a=M=G[c+3])*D,y+=E,b+=k,_+=L,B+=M,N=N.next,u<q&&(A+=r);for(c=a,S=T,F=U,s=0;s<i;s++)h=c<<2,G[h+3]=M=m*H>>z,M>0?(M=255/M,G[h]=(f*H>>z)*M,G[h+1]=(g*H>>z)*M,G[h+2]=(d*H>>z)*M):G[h]=G[h+1]=G[h+2]=0,f-=v,g-=p,d-=w,m-=I,v-=S.r,p-=S.g,w-=S.b,I-=S.a,h=a+((h=s+O)<q?h:q)*r<<2,f+=y+=S.r=G[h],g+=b+=S.g=G[h+1],d+=_+=S.b=G[h+2],m+=B+=S.a=G[h+3],S=S.next,v+=E=F.r,p+=k=F.g,w+=L=F.b,I+=M=F.a,y-=E,b-=k,_-=L,B-=M,F=F.next,c+=r}return t}function p(t){return function(e){return new Promise(function(n,r){var i=document.createElement("canvas");i.width=e.width,i.height=e.height,i.getContext("2d").drawImage(e,0,0),m(i,0,0,e.width,e.height,t),n(i)})}}function w(t,e){var n=t.split("."),r="jpg";return e.indexOf("png")>-1?r="png":e.indexOf("webp")>-1&&(r="webp"),n.pop(),n.push(r),n.join(".")}function I(t,e,n,r){return new Promise(function(i,o){t.toBlob(function(t){var r=new Blob([t],{type:n});r.name=w(e,n),i(r)},n,r)})}function y(t){return Promise.resolve(t)}function b(t,e,n){return new Promise(function(r,i){r(t.toDataURL(e,n))})}var _=(e(function(t){!function(e){function n(t,e,n,r){var o=e&&e.prototype instanceof i?e:i,a=Object.create(o.prototype),s=new f(r||[]);return a._invoke=h(t,n,s),a}function r(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}function i(){}function o(){}function a(){}function s(t){["next","throw","return"].forEach(function(e){t[e]=function(t){return this._invoke(e,t)}})}function u(t){function e(n,i,o,a){var s=r(t[n],t,i);if("throw"!==s.type){var u=s.arg,h=u.value;return h&&"object"==typeof h&&p.call(h,"__await")?Promise.resolve(h.__await).then(function(t){e("next",t,o,a)},function(t){e("throw",t,o,a)}):Promise.resolve(h).then(function(t){u.value=t,o(u)},a)}a(s.arg)}function n(t,n){function r(){return new Promise(function(r,i){e(t,n,r,i)})}return i=i?i.then(r,r):r()}var i;this._invoke=n}function h(t,e,n){var i=B;return function(o,a){if(i===C)throw new Error("Generator is already running");if(i===Q){if("throw"===o)throw a;return d()}for(n.method=o,n.arg=a;;){var s=n.delegate;if(s){var u=A(s,n);if(u){if(u===x)continue;return u}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(i===B)throw i=Q,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);i=C;var h=r(t,e,n);if("normal"===h.type){if(i=n.done?Q:E,h.arg===x)continue;return{value:h.arg,done:n.done}}"throw"===h.type&&(i=Q,n.method="throw",n.arg=h.arg)}}}function A(t,e){var n=t.iterator[e.method];if(n===m){if(e.delegate=null,"throw"===e.method){if(t.iterator.return&&(e.method="return",e.arg=m,A(t,e),"throw"===e.method))return x;e.method="throw",e.arg=new TypeError("The iterator does not provide a 'throw' method")}return x}var i=r(n,t.iterator,e.arg);if("throw"===i.type)return e.method="throw",e.arg=i.arg,e.delegate=null,x;var o=i.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=m),e.delegate=null,x):o:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,x)}function c(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function l(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function f(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(c,this),this.reset(!0)}function g(t){if(t){var e=t[I];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,r=function e(){for(;++n<t.length;)if(p.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=m,e.done=!0,e};return r.next=r}}return{next:d}}function d(){return{value:m,done:!0}}var m,v=Object.prototype,p=v.hasOwnProperty,w="function"==typeof Symbol?Symbol:{},I=w.iterator||"@@iterator",y=w.asyncIterator||"@@asyncIterator",b=w.toStringTag||"@@toStringTag",_=e.regeneratorRuntime;if(_)return void(t.exports=_);_=e.regeneratorRuntime=t.exports,_.wrap=n;var B="suspendedStart",E="suspendedYield",C="executing",Q="completed",x={},k={};k[I]=function(){return this};var L=Object.getPrototypeOf,M=L&&L(L(g([])));M&&M!==v&&p.call(M,I)&&(k=M);var D=a.prototype=i.prototype=Object.create(k);o.prototype=D.constructor=a,a.constructor=o,a[b]=o.displayName="GeneratorFunction",_.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===o||"GeneratorFunction"===(e.displayName||e.name))},_.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,a):(t.__proto__=a,b in t||(t[b]="GeneratorFunction")),t.prototype=Object.create(D),t},_.awrap=function(t){return{__await:t}},s(u.prototype),u.prototype[y]=function(){return this},_.AsyncIterator=u,_.async=function(t,e,r,i){var o=new u(n(t,e,r,i));return _.isGeneratorFunction(e)?o:o.next().then(function(t){return t.done?t.value:o.next()})},s(D),D[b]="Generator",D[I]=function(){return this},D.toString=function(){return"[object Generator]"},_.keys=function(t){var e=[];for(var n in t)e.push(n);return e.reverse(),function n(){for(;e.length;){var r=e.pop();if(r in t)return n.value=r,n.done=!1,n}return n.done=!0,n}},_.values=g,f.prototype={constructor:f,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=m,this.done=!1,this.delegate=null,this.method="next",this.arg=m,this.tryEntries.forEach(l),!t)for(var e in this)"t"===e.charAt(0)&&p.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=m)},stop:function(){this.done=!0;var t=this.tryEntries[0],e=t.completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){function e(e,r){return o.type="throw",o.arg=t,n.next=e,r&&(n.method="next",n.arg=m),!!r}if(this.done)throw t;for(var n=this,r=this.tryEntries.length-1;r>=0;--r){var i=this.tryEntries[r],o=i.completion;if("root"===i.tryLoc)return e("end");if(i.tryLoc<=this.prev){var a=p.call(i,"catchLoc"),s=p.call(i,"finallyLoc");if(a&&s){if(this.prev<i.catchLoc)return e(i.catchLoc,!0);if(this.prev<i.finallyLoc)return e(i.finallyLoc)}else if(a){if(this.prev<i.catchLoc)return e(i.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return e(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&p.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var i=r;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var o=i?i.completion:{};return o.type=t,o.arg=e,i?(this.method="next",this.next=i.finallyLoc,x):this.complete(o)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),x},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),l(n),x}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var i=r.arg;l(n)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:g(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=m),x}}}(function(){return this}()||Function("return this")())}),e(function(e,n){!function(n){e.exports=function(){return function(){function e(n,r,i){function o(s,u){if(!r[s]){if(!n[s]){var h="function"==typeof t&&t;if(!u&&h)return h(s,!0);if(a)return a(s,!0);var A=new Error("Cannot find module '"+s+"'");throw A.code="MODULE_NOT_FOUND",A}var c=r[s]={exports:{}};n[s][0].call(c.exports,function(t){return o(n[s][1][t]||t)},c,c.exports,e,n,r,i)}return r[s].exports}for(var a="function"==typeof t&&t,s=0;s<i.length;s++)o(i[s]);return o}return e}()({1:[function(t,e,n){function r(t){var e=t||[],n={js:e.indexOf("js")>=0,wasm:e.indexOf("wasm")>=0};o.call(this,n),this.features={js:n.js,wasm:n.wasm&&this.has_wasm},this.use(a),this.use(s)}var i=t("inherits"),o=t("multimath"),a=t("multimath/lib/unsharp_mask"),s=t("./mm_resize");i(r,o),r.prototype.resizeAndUnsharp=function(t,e){var n=this.resize(t,e);return t.unsharpAmount&&this.unsharp_mask(n,t.toWidth,t.toHeight,t.unsharpAmount,t.unsharpRadius,t.unsharpThreshold),n},e.exports=r},{"./mm_resize":4,inherits:15,multimath:16,"multimath/lib/unsharp_mask":19}],2:[function(t,e,n){function r(t){return t<0?0:t>255?255:t}function i(t,e,n,i,o,a){var s,u,h,A,c,l,f,g,d,m,v,p=0,w=0;for(d=0;d<i;d++){for(c=0,m=0;m<o;m++){for(l=a[c++],f=a[c++],g=p+4*l|0,s=u=h=A=0;f>0;f--)v=a[c++],A=A+v*t[g+3]|0,h=h+v*t[g+2]|0,u=u+v*t[g+1]|0,s=s+v*t[g]|0,g=g+4|0;e[w+3]=r(A+8192>>14),e[w+2]=r(h+8192>>14),e[w+1]=r(u+8192>>14),e[w]=r(s+8192>>14),w=w+4*i|0}w=4*(d+1)|0,p=(d+1)*n*4|0}}function o(t,e,n,i,o,a){var s,u,h,A,c,l,f,g,d,m,v,p=0,w=0;for(d=0;d<i;d++){for(c=0,m=0;m<o;m++){for(l=a[c++],f=a[c++],g=p+4*l|0,s=u=h=A=0;f>0;f--)v=a[c++],A=A+v*t[g+3]|0,h=h+v*t[g+2]|0,u=u+v*t[g+1]|0,s=s+v*t[g]|0,g=g+4|0;e[w+3]=r(A+8192>>14),e[w+2]=r(h+8192>>14),e[w+1]=r(u+8192>>14),e[w]=r(s+8192>>14),w=w+4*i|0}w=4*(d+1)|0,p=(d+1)*n*4|0}}e.exports={convolveHorizontally:i,convolveVertically:o}},{}],3:[function(t,e,n){e.exports="AGFzbQEAAAABFAJgBn9/f39/fwBgB39/f39/f38AAg8BA2VudgZtZW1vcnkCAAEDAwIAAQQEAXAAAAcZAghjb252b2x2ZQAACmNvbnZvbHZlSFYAAQkBAArmAwLBAwEQfwJAIANFDQAgBEUNACAFQQRqIRVBACEMQQAhDQNAIA0hDkEAIRFBACEHA0AgB0ECaiESAn8gBSAHQQF0IgdqIgZBAmouAQAiEwRAQQAhCEEAIBNrIRQgFSAHaiEPIAAgDCAGLgEAakECdGohEEEAIQlBACEKQQAhCwNAIBAoAgAiB0EYdiAPLgEAIgZsIAtqIQsgB0H/AXEgBmwgCGohCCAHQRB2Qf8BcSAGbCAKaiEKIAdBCHZB/wFxIAZsIAlqIQkgD0ECaiEPIBBBBGohECAUQQFqIhQNAAsgEiATagwBC0EAIQtBACEKQQAhCUEAIQggEgshByABIA5BAnRqIApBgMAAakEOdSIGQf8BIAZB/wFIG0EQdEGAgPwHcUEAIAZBAEobIAtBgMAAakEOdSIGQf8BIAZB/wFIG0EYdEEAIAZBAEobciAJQYDAAGpBDnUiBkH/ASAGQf8BSBtBCHRBgP4DcUEAIAZBAEobciAIQYDAAGpBDnUiBkH/ASAGQf8BSBtB/wFxQQAgBkEAShtyNgIAIA4gA2ohDiARQQFqIhEgBEcNAAsgDCACaiEMIA1BAWoiDSADRw0ACwsLIQACQEEAIAIgAyAEIAUgABAAIAJBACAEIAUgBiABEAALCw=="},{}],4:[function(t,e,n){e.exports={name:"resize",fn:t("./resize"),wasm_fn:t("./resize_wasm"),wasm_src:t("./convolve_wasm_base64")}},{"./convolve_wasm_base64":3,"./resize":5,"./resize_wasm":8}],5:[function(t,e,n){function r(t,e,n){for(var r=3,i=e*n*4|0;r<i;)t[r]=255,r=r+4|0}var i=t("./resize_filter_gen"),o=t("./convolve").convolveHorizontally,a=t("./convolve").convolveVertically;e.exports=function(t){var e=t.src,n=t.width,s=t.height,u=t.toWidth,h=t.toHeight,A=t.scaleX||t.toWidth/t.width,c=t.scaleY||t.toHeight/t.height,l=t.offsetX||0,f=t.offsetY||0,g=t.dest||new Uint8Array(u*h*4),d=void 0===t.quality?3:t.quality,m=t.alpha||!1,v=i(d,n,u,A,l),p=i(d,s,h,c,f),w=new Uint8Array(u*s*4);return o(e,w,n,s,u,v),a(w,g,s,u,h,p),m||r(g,u,h),g}},{"./convolve":2,"./resize_filter_gen":6}],6:[function(t,e,n){function r(t){return Math.round(t*((1<<o)-1))}var i=t("./resize_filter_info"),o=14;e.exports=function(t,e,n,o,a){var s,u,h,A,c,l,f,g,d,m,v,p,w,I,y,b,_,B=i[t].filter,E=1/o,C=Math.min(1,o),Q=i[t].win/C,x=Math.floor(2*(Q+1)),k=new Int16Array((x+2)*n),L=0,M=!k.subarray||!k.set;for(s=0;s<n;s++){for(u=(s+.5)*E+a,h=Math.max(0,Math.floor(u-Q)),A=Math.min(e-1,Math.ceil(u+Q)),c=A-h+1,l=new Float32Array(c),f=new Int16Array(c),g=0,d=h,m=0;d<=A;d++,m++)v=B((d+.5-u)*C),g+=v,l[m]=v;for(p=0,m=0;m<l.length;m++)w=l[m]/g,p+=w,f[m]=r(w);for(f[n>>1]+=r(1-p),I=0;I<f.length&&0===f[I];)I++;if(I<f.length){for(y=f.length-1;y>0&&0===f[y];)y--;if(b=h+I,_=y-I+1,k[L++]=b,k[L++]=_,M)for(m=I;m<=y;m++)k[L++]=f[m];else k.set(f.subarray(I,y+1),L),L+=_}else k[L++]=0,k[L++]=0}return k}},{"./resize_filter_info":7}],7:[function(t,e,n){e.exports=[{win:.5,filter:function(t){return t>=-.5&&t<.5?1:0}},{win:1,filter:function(t){if(t<=-1||t>=1)return 0;if(t>-1.1920929e-7&&t<1.1920929e-7)return 1;var e=t*Math.PI;return Math.sin(e)/e*(.54+.46*Math.cos(e/1))}},{win:2,filter:function(t){if(t<=-2||t>=2)return 0;if(t>-1.1920929e-7&&t<1.1920929e-7)return 1;var e=t*Math.PI;return Math.sin(e)/e*Math.sin(e/2)/(e/2)}},{win:3,filter:function(t){if(t<=-3||t>=3)return 0;if(t>-1.1920929e-7&&t<1.1920929e-7)return 1;var e=t*Math.PI;return Math.sin(e)/e*Math.sin(e/3)/(e/3)}}]},{}],8:[function(t,e,n){function r(t,e,n){for(var r=3,i=e*n*4|0;r<i;)t[r]=255,r=r+4|0}function i(t){return new Uint8Array(t.buffer,0,t.byteLength)}function o(t,e,n){if(s)return void e.set(i(t),n);for(var r=n,o=0;o<t.length;o++){var a=t[o];e[r++]=255&a,e[r++]=a>>8&255}}var a=t("./resize_filter_gen"),s=!0;try{s=1===new Uint32Array(new Uint8Array([1,0,0,0]).buffer)[0]}catch(t){}e.exports=function(t){var e=t.src,n=t.width,i=t.height,s=t.toWidth,u=t.toHeight,h=t.scaleX||t.toWidth/t.width,A=t.scaleY||t.toHeight/t.height,c=t.offsetX||0,l=t.offsetY||0,f=t.dest||new Uint8Array(s*u*4),g=void 0===t.quality?3:t.quality,d=t.alpha||!1,m=a(g,n,s,h,c),v=a(g,i,u,A,l),p=this.__align(0+Math.max(e.byteLength,f.byteLength)),w=this.__align(p+i*s*4),I=this.__align(w+m.byteLength),y=I+v.byteLength,b=this.__instance("resize",y),_=new Uint8Array(this.__memory.buffer),B=new Uint32Array(this.__memory.buffer),E=new Uint32Array(e.buffer);return B.set(E),o(m,_,w),o(v,_,I),(b.exports.convolveHV||b.exports._convolveHV)(w,I,p,n,i,s,u),new Uint32Array(f.buffer).set(new Uint32Array(this.__memory.buffer,0,u*s)),d||r(f,s,u),f}},{"./resize_filter_gen":6}],9:[function(t,e,n){function r(t,e){this.create=t,this.available=[],this.acquired={},this.lastId=1,this.timeoutId=0,this.idle=e||2e3}r.prototype.acquire=function(){var t=this,e=void 0;return 0!==this.available.length?e=this.available.pop():(e=this.create(),e.id=this.lastId++,e.release=function(){return t.release(e)}),this.acquired[e.id]=e,e},r.prototype.release=function(t){var e=this;delete this.acquired[t.id],t.lastUsed=Date.now(),this.available.push(t),0===this.timeoutId&&(this.timeoutId=setTimeout(function(){return e.gc()},100))},r.prototype.gc=function(){var t=this,e=Date.now();this.available=this.available.filter(function(n){return!(e-n.lastUsed>t.idle)||(n.destroy(),!1)}),0!==this.available.length?this.timeoutId=setTimeout(function(){return t.gc()},100):this.timeoutId=0},e.exports=r},{}],10:[function(t,e,n){e.exports=function(t,e,n,r,i,o){var a=n/t,s=r/e,u=(2*o+2+1)/i;if(u>.5)return[[n,r]];var h=Math.ceil(Math.log(Math.min(a,s))/Math.log(u));if(h<=1)return[[n,r]];for(var A=[],c=0;c<h;c++){var l=Math.round(Math.pow(Math.pow(t,h-c-1)*Math.pow(n,c+1),1/h)),f=Math.round(Math.pow(Math.pow(e,h-c-1)*Math.pow(r,c+1),1/h));A.push([l,f])}return A}},{}],11:[function(t,e,n){function r(t){var e=Math.round(t);return Math.abs(t-e)<o?e:Math.floor(t)}function i(t){var e=Math.round(t);return Math.abs(t-e)<o?e:Math.ceil(t)}var o=1e-5;e.exports=function(t){var e=t.toWidth/t.width,n=t.toHeight/t.height,o=r(t.srcTileSize*e)-2*t.destTileBorder,a=r(t.srcTileSize*n)-2*t.destTileBorder;if(o<1||a<1)throw new Error("Internal error in pica: target tile width/height is too small.");var s,u,h,A,c,l,f,g=[];for(A=0;A<t.toHeight;A+=a)for(h=0;h<t.toWidth;h+=o)s=h-t.destTileBorder,s<0&&(s=0),c=h+o+t.destTileBorder-s,s+c>=t.toWidth&&(c=t.toWidth-s),u=A-t.destTileBorder,u<0&&(u=0),l=A+a+t.destTileBorder-u,u+l>=t.toHeight&&(l=t.toHeight-u),f={toX:s,toY:u,toWidth:c,toHeight:l,toInnerX:h,toInnerY:A,toInnerWidth:o,toInnerHeight:a,offsetX:s/e-r(s/e),offsetY:u/n-r(u/n),scaleX:e,scaleY:n,x:r(s/e),y:r(u/n),width:i(c/e),height:i(l/n)},g.push(f);return g}},{}],12:[function(t,e,n){function r(t){return Object.prototype.toString.call(t)}e.exports.isCanvas=function(t){var e=r(t);return"[object HTMLCanvasElement]"===e||"[object Canvas]"===e},e.exports.isImage=function(t){return"[object HTMLImageElement]"===r(t)},e.exports.limiter=function(t){function e(){n<t&&r.length&&(n++,r.shift()())}var n=0,r=[];return function(t){return new Promise(function(i,o){r.push(function(){t().then(function(t){i(t),n--,e()},function(t){o(t),n--,e()})}),e()})}},e.exports.cib_quality_name=function(t){switch(t){case 0:return"pixelated";case 1:return"low";case 2:return"medium"}return"high"},e.exports.cib_support=function(){return Promise.resolve().then(function(){if("undefined"==typeof createImageBitmap||"undefined"==typeof document)return!1;var t=document.createElement("canvas");return t.width=100,t.height=100,createImageBitmap(t,0,0,100,100,{resizeWidth:10,resizeHeight:10,resizeQuality:"high"}).then(function(e){var n=10===e.width;return e.close(),t=null,n})}).catch(function(){return!1})}},{}],13:[function(t,e,n){e.exports=function(){var e=t("./mathlib"),n=void 0;onmessage=function(t){var r=t.data.opts;n||(n=new e(t.data.features));var i=n.resizeAndUnsharp(r);postMessage({result:i},[i.buffer])}}},{"./mathlib":1}],14:[function(t,e,n){function r(t){t<.5&&(t=.5);var e=Math.exp(.527076)/t,n=Math.exp(-e),r=Math.exp(-2*e),i=(1-n)*(1-n)/(1+2*e*n-r);return a=i,s=i*(e-1)*n,u=i*(e+1)*n,h=-i*r,A=2*n,c=-r,l=(a+s)/(1-A-c),f=(u+h)/(1-A-c),new Float32Array([a,s,u,h,A,c,l,f])}function i(t,e,n,r,i,o){var a,s,u,h,A,c,l,f,g,d,m,v,p,w;for(g=0;g<o;g++){for(c=g*i,l=g,f=0,a=t[c],A=a*r[6],h=A,m=r[0],v=r[1],p=r[4],w=r[5],d=0;d<i;d++)s=t[c],u=s*m+a*v+h*p+A*w,A=h,h=u,a=s,n[f]=h,f++,c++;for(c--,f--,l+=o*(i-1),a=t[c],A=a*r[7],h=A,s=a,m=r[2],v=r[3],d=i-1;d>=0;d--)u=s*m+a*v+h*p+A*w,A=h,h=u,a=s,s=t[c],e[l]=n[f]+h,c--,f--,l-=o}}function o(t,e,n,o){if(o){var a=new Uint16Array(t.length),s=new Float32Array(Math.max(e,n)),u=r(o);i(t,a,s,u,e,n,o),i(a,t,s,u,n,e,o)}}var a,s,u,h,A,c,l,f;e.exports=o},{}],15:[function(t,e,n){"function"==typeof Object.create?e.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:e.exports=function(t,e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}},{}],16:[function(t,e,n){function r(t){if(!(this instanceof r))return new r(t);var e=i({},s,t||{});if(this.options=e,this.__cache={},this.has_wasm=a(),this.__init_promise=null,this.__modules=e.modules||{},this.__memory=null,this.__wasm={},this.__isLE=1===new Uint32Array(new Uint8Array([1,0,0,0]).buffer)[0],!this.options.js&&!this.options.wasm)throw new Error('mathlib: at least "js" or "wasm" should be enabled')}var i=t("object-assign"),o=t("./lib/base64decode"),a=t("./lib/wa_detect"),s={js:!0,wasm:!0};r.prototype.use=function(t){return this.__modules[t.name]=t,this.has_wasm&&this.options.wasm&&t.wasm_fn?this[t.name]=t.wasm_fn:this[t.name]=t.fn,this},r.prototype.init=function(){if(this.__init_promise)return this.__init_promise;if(!this.options.js&&this.options.wasm&&!this.has_wasm)return Promise.reject(new Error('mathlib: only "wasm" was enabled, but it\'s not supported'));var t=this;return this.__init_promise=Promise.all(Object.keys(t.__modules).map(function(e){var n=t.__modules[e];return t.has_wasm&&t.options.wasm&&n.wasm_fn?t.__wasm[e]?null:WebAssembly.compile(t.__base64decode(n.wasm_src)).then(function(n){t.__wasm[e]=n}):null})).then(function(){return t}),this.__init_promise},r.prototype.__base64decode=o,r.prototype.__reallocate=function(t){if(!this.__memory)return this.__memory=new WebAssembly.Memory({initial:Math.ceil(t/65536)}),this.__memory;var e=this.__memory.buffer.byteLength;return e<t&&this.__memory.grow(Math.ceil((t-e)/65536)),this.__memory},r.prototype.__instance=function(t,e,n){if(e&&this.__reallocate(e),!this.__wasm[t]){var r=this.__modules[t];this.__wasm[t]=new WebAssembly.Module(this.__base64decode(r.wasm_src))}if(!this.__cache[t]){var o={memoryBase:0,memory:this.__memory,tableBase:0,table:new WebAssembly.Table({initial:0,element:"anyfunc"})};this.__cache[t]=new WebAssembly.Instance(this.__wasm[t],{env:i(o,n||{})})}return this.__cache[t]},r.prototype.__align=function(t,e){e=e||8;var n=t%e;return t+(n?e-n:0)},e.exports=r},{"./lib/base64decode":17,"./lib/wa_detect":23,"object-assign":24}],17:[function(t,e,n){e.exports=function(t){for(var e=t.replace(/[\r\n=]/g,""),n=e.length,r=new Uint8Array(3*n>>2),i=0,o=0,a=0;a<n;a++)a%4==0&&a&&(r[o++]=i>>16&255,r[o++]=i>>8&255,r[o++]=255&i),i=i<<6|"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(e.charAt(a));var s=n%4*6;return 0===s?(r[o++]=i>>16&255,r[o++]=i>>8&255,r[o++]=255&i):18===s?(r[o++]=i>>10&255,r[o++]=i>>2&255):12===s&&(r[o++]=i>>4&255),r}},{}],18:[function(t,e,n){e.exports=function(t,e,n){for(var r,i,o,a,s,u=e*n,h=new Uint16Array(u),A=0;A<u;A++)r=t[4*A],i=t[4*A+1],o=t[4*A+2],s=r>=i&&r>=o?r:i>=o&&i>=r?i:o,a=r<=i&&r<=o?r:i<=o&&i<=r?i:o,h[A]=257*(s+a)>>1;return h}},{}],19:[function(t,e,n){e.exports={name:"unsharp_mask",fn:t("./unsharp_mask"),wasm_fn:t("./unsharp_mask_wasm"),wasm_src:t("./unsharp_mask_wasm_base64")}},{"./unsharp_mask":20,"./unsharp_mask_wasm":21,"./unsharp_mask_wasm_base64":22}],20:[function(t,e,n){var r=t("glur/mono16"),i=t("./hsl_l16");e.exports=function(t,e,n,o,a,s){var u,h,A,c,l,f,g,d,m,v,p,w,I;if(!(0===o||a<.5)){a>2&&(a=2);var y=i(t,e,n),b=new Uint16Array(y);r(b,e,n,a);for(var _=o/100*4096+.5|0,B=257*s|0,E=e*n,C=0;C<E;C++)w=2*(y[C]-b[C]),Math.abs(w)>=B&&(I=4*C,u=t[I],h=t[I+1],A=t[I+2],d=u>=h&&u>=A?u:h>=u&&h>=A?h:A,g=u<=h&&u<=A?u:h<=u&&h<=A?h:A,f=257*(d+g)>>1,g===d?c=l=0:(l=f<=32767?4095*(d-g)/(d+g)|0:4095*(d-g)/(510-d-g)|0,c=u===d?65535*(h-A)/(6*(d-g))|0:h===d?21845+(65535*(A-u)/(6*(d-g))|0):43690+(65535*(u-h)/(6*(d-g))|0)),f+=_*w+2048>>12,f>65535?f=65535:f<0&&(f=0),0===l?u=h=A=f>>8:(v=f<=32767?f*(4096+l)+2048>>12:f+((65535-f)*l+2048>>12),m=2*f-v>>8,v>>=8,p=c+21845&65535,u=p>=43690?m:p>=32767?m+(6*(v-m)*(43690-p)+32768>>16):p>=10922?v:m+(6*(v-m)*p+32768>>16),p=65535&c,h=p>=43690?m:p>=32767?m+(6*(v-m)*(43690-p)+32768>>16):p>=10922?v:m+(6*(v-m)*p+32768>>16),p=c-21845&65535,A=p>=43690?m:p>=32767?m+(6*(v-m)*(43690-p)+32768>>16):p>=10922?v:m+(6*(v-m)*p+32768>>16)),t[I]=u,t[I+1]=h,t[I+2]=A)}}},{"./hsl_l16":18,"glur/mono16":14}],21:[function(t,e,n){e.exports=function(t,e,n,r,i,o){if(!(0===r||i<.5)){i>2&&(i=2);var a=e*n,s=4*a,u=2*a,h=2*a,A=4*Math.max(e,n),c=s,l=c+u,f=l+h,g=f+h,d=g+A,m=this.__instance("unsharp_mask",s+u+2*h+A+32,{exp:Math.exp}),v=new Uint32Array(t.buffer);new Uint32Array(this.__memory.buffer).set(v);var p=m.exports.hsl_l16||m.exports._hsl_l16;p(0,c,e,n),p=m.exports.blurMono16||m.exports._blurMono16,p(c,l,f,g,d,e,n,i),p=m.exports.unsharp||m.exports._unsharp,p(0,0,c,l,e,n,r,o),v.set(new Uint32Array(this.__memory.buffer,0,a))}}},{}],22:[function(t,e,n){e.exports="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"},{}],23:[function(t,e,n){var r;e.exports=function(){if(void 0!==r)return r;if(r=!1,"undefined"==typeof WebAssembly)return r;try{var t=new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,1,127,1,127,3,2,1,0,5,3,1,0,1,7,8,1,4,116,101,115,116,0,0,10,16,1,14,0,32,0,65,1,54,2,0,32,0,40,2,0,11]),e=new WebAssembly.Module(t);return 0!==new WebAssembly.Instance(e,{}).exports.test(4)&&(r=!0),r}catch(t){}return r}},{}],24:[function(t,e,n){function r(t){
if(null===t||void 0===t)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}var i=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de","5"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},n=0;n<10;n++)e["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(e).map(function(t){return e[t]}).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach(function(t){r[t]=t}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(t){return!1}}()?Object.assign:function(t,e){for(var n,s,u=r(t),h=1;h<arguments.length;h++){n=Object(arguments[h]);for(var A in n)o.call(n,A)&&(u[A]=n[A]);if(i){s=i(n);for(var c=0;c<s.length;c++)a.call(n,s[c])&&(u[s[c]]=n[s[c]])}}return u}},{}],25:[function(t,e,n){var r=arguments[3],i=arguments[4],o=arguments[5],a=JSON.stringify;e.exports=function(t,e){function n(t){m[t]=!0;for(var e in i[t][1]){var r=i[t][1][e];m[r]||n(r)}}for(var s,u=Object.keys(o),h=0,A=u.length;h<A;h++){var c=u[h],l=o[c].exports;if(l===t||l&&l.default===t){s=c;break}}if(!s){s=Math.floor(Math.pow(16,8)*Math.random()).toString(16);for(var f={},h=0,A=u.length;h<A;h++){var c=u[h];f[c]=c}i[s]=["function(require,module,exports){"+t+"(self); }",f]}var g=Math.floor(Math.pow(16,8)*Math.random()).toString(16),d={};d[s]=s,i[g]=["function(require,module,exports){var f = require("+a(s)+");(f.default ? f.default : f)(self);}",d];var m={};n(g);var v="("+r+")({"+Object.keys(m).map(function(t){return a(t)+":["+i[t][0]+","+a(i[t][1])+"]"}).join(",")+"},{},["+a(g)+"])",p=window.URL||window.webkitURL||window.mozURL||window.msURL,w=new Blob([v],{type:"text/javascript"});if(e&&e.bare)return w;var I=p.createObjectURL(w),y=new Worker(I);return y.objectURL=I,y}},{}],"/":[function(t,e,n){function r(){return{value:s(c),destroy:function(){if(this.value.terminate(),"undefined"!=typeof window){var t=window.URL||window.webkitURL||window.mozURL||window.msURL;t&&t.revokeObjectURL&&this.value.objectURL&&t.revokeObjectURL(this.value.objectURL)}}}}function i(t){if(!(this instanceof i))return new i(t);this.options=a({},v,t||{});var e="lk_"+this.options.concurrency;this.__limit=g[e]||A.limiter(this.options.concurrency),g[e]||(g[e]=this.__limit),this.features={js:!1,wasm:!1,cib:!1,ww:!1},this.__workersPool=null,this.__requested_features=[],this.__mathlib=null}var o=function(){function t(t,e){var n=[],r=!0,i=!1,o=void 0;try{for(var a,s=t[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){i=!0,o=t}finally{try{!r&&s.return&&s.return()}finally{if(i)throw o}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),a=t("object-assign"),s=t("webworkify"),u=t("./lib/mathlib"),h=t("./lib/pool"),A=t("./lib/utils"),c=t("./lib/worker"),l=t("./lib/stepper"),f=t("./lib/tiler"),g={},d=!1;try{"undefined"!=typeof navigator&&navigator.userAgent&&(d=navigator.userAgent.indexOf("Safari")>=0)}catch(t){}var m=1;"undefined"!=typeof navigator&&(m=Math.min(navigator.hardwareConcurrency||1,4));var v={tile:1024,concurrency:m,features:["js","wasm","ww"],idle:2e3},p={quality:3,alpha:!1,unsharpAmount:0,unsharpRadius:0,unsharpThreshold:0},w=void 0,I=void 0;i.prototype.init=function(){var e=this;if(this.__initPromise)return this.__initPromise;if(!1!==w&&!0!==w&&(w=!1,"undefined"!=typeof ImageData&&"undefined"!=typeof Uint8ClampedArray))try{new ImageData(new Uint8ClampedArray(400),10,10),w=!0}catch(t){}!1!==I&&!0!==I&&(I=!1,"undefined"!=typeof ImageBitmap&&(ImageBitmap.prototype&&ImageBitmap.prototype.close?I=!0:this.debug("ImageBitmap does not support .close(), disabled")));var n=this.options.features.slice();if(n.indexOf("all")>=0&&(n=["cib","wasm","js","ww"]),this.__requested_features=n,this.__mathlib=new u(n),n.indexOf("ww")>=0&&"undefined"!=typeof window&&"Worker"in window)try{t("webworkify")(function(){}).terminate(),this.features.ww=!0;var i="wp_"+JSON.stringify(this.options);g[i]?this.__workersPool=g[i]:(this.__workersPool=new h(r,this.options.idle),g[i]=this.__workersPool)}catch(t){}var o=this.__mathlib.init().then(function(t){a(e.features,t.features)}),s=void 0;return s=I?A.cib_support().then(function(t){if(e.features.cib&&n.indexOf("cib")<0)return void e.debug("createImageBitmap() resize supported, but disabled by config");n.indexOf("cib")>=0&&(e.features.cib=t)}):Promise.resolve(!1),this.__initPromise=Promise.all([o,s]).then(function(){return e}),this.__initPromise},i.prototype.resize=function(t,e,n){var r=this;this.debug("Start resize...");var i=a({},p);isNaN(n)?n&&(i=a(i,n)):i=a(i,{quality:n}),i.toWidth=e.width,i.toHeight=e.height,i.width=t.naturalWidth||t.width,i.height=t.naturalHeight||t.height,i.unsharpRadius>2&&(i.unsharpRadius=2);var s=!1,u=null;i.cancelToken&&(u=i.cancelToken.then(function(t){throw s=!0,t},function(t){throw s=!0,t}));var h=Math.ceil(Math.max(3,2.5*i.unsharpRadius|0));return this.init().then(function(){if(s)return u;if(r.features.cib){var n=e.getContext("2d",{alpha:Boolean(i.alpha)});return r.debug("Resize via createImageBitmap()"),createImageBitmap(t,{resizeWidth:i.toWidth,resizeHeight:i.toHeight,resizeQuality:A.cib_quality_name(i.quality)}).then(function(t){if(s)return u;if(!i.unsharpAmount)return n.drawImage(t,0,0),t.close(),n=null,r.debug("Finished!"),e;r.debug("Unsharp result");var o=document.createElement("canvas");o.width=i.toWidth,o.height=i.toHeight;var a=o.getContext("2d",{alpha:Boolean(i.alpha)});a.drawImage(t,0,0),t.close();var h=a.getImageData(0,0,i.toWidth,i.toHeight);return r.__mathlib.unsharp(h.data,i.toWidth,i.toHeight,i.unsharpAmount,i.unsharpRadius,i.unsharpThreshold),n.putImageData(h,0,0),h=a=o=n=null,r.debug("Finished!"),e})}var c={},g=function(t){return Promise.resolve().then(function(){return r.features.ww?new Promise(function(e,n){var i=r.__workersPool.acquire();u&&u.catch(function(t){return n(t)}),i.value.onmessage=function(t){i.release(),t.data.err?n(t.data.err):e(t.data.result)},i.value.postMessage({opts:t,features:r.__requested_features,preload:{wasm_nodule:r.__mathlib.__}},[t.src.buffer])}):r.__mathlib.resizeAndUnsharp(t,c)})},m=function(t,e,n){var i=void 0,o=void 0,a=void 0,c=function(e){return r.__limit(function(){if(s)return u;var h=void 0;if(A.isCanvas(t))r.debug("Get tile pixel data"),h=i.getImageData(e.x,e.y,e.width,e.height);else{r.debug("Draw tile imageBitmap/image to temporary canvas");var c=document.createElement("canvas");c.width=e.width,c.height=e.height;var l=c.getContext("2d",{alpha:Boolean(n.alpha)});l.globalCompositeOperation="copy",l.drawImage(o||t,e.x,e.y,e.width,e.height,0,0,e.width,e.height),r.debug("Get tile pixel data"),h=l.getImageData(0,0,e.width,e.height),l=c=null}var f={src:h.data,width:e.width,height:e.height,toWidth:e.toWidth,toHeight:e.toHeight,scaleX:e.scaleX,scaleY:e.scaleY,offsetX:e.offsetX,offsetY:e.offsetY,quality:n.quality,alpha:n.alpha,unsharpAmount:n.unsharpAmount,unsharpRadius:n.unsharpRadius,unsharpThreshold:n.unsharpThreshold};return r.debug("Invoke resize math"),Promise.resolve().then(function(){return g(f)}).then(function(t){if(s)return u;h=null;var n=void 0;if(r.debug("Convert raw rgba tile result to ImageData"),w)n=new ImageData(new Uint8ClampedArray(t),e.toWidth,e.toHeight);else if(n=a.createImageData(e.toWidth,e.toHeight),n.data.set)n.data.set(t);else for(var i=n.data.length-1;i>=0;i--)n.data[i]=t[i];return r.debug("Draw tile"),d?a.putImageData(n,e.toX,e.toY,e.toInnerX-e.toX,e.toInnerY-e.toY,e.toInnerWidth+1e-5,e.toInnerHeight+1e-5):a.putImageData(n,e.toX,e.toY,e.toInnerX-e.toX,e.toInnerY-e.toY,e.toInnerWidth,e.toInnerHeight),null})})};return Promise.resolve().then(function(){if(a=e.getContext("2d",{alpha:Boolean(n.alpha)}),A.isCanvas(t))return i=t.getContext("2d",{alpha:Boolean(n.alpha)}),null;if(A.isImage(t))return I?(r.debug("Decode image via createImageBitmap"),createImageBitmap(t).then(function(t){o=t})):null;throw new Error('".from" should be image or canvas')}).then(function(){function t(){o&&(o.close(),o=null)}if(s)return u;r.debug("Calculate tiles");var i=f({width:n.width,height:n.height,srcTileSize:r.options.tile,toWidth:n.toWidth,toHeight:n.toHeight,destTileBorder:h}),a=i.map(function(t){return c(t)});return r.debug("Process tiles"),Promise.all(a).then(function(){return r.debug("Finished!"),t(),e},function(e){throw t(),e})})},v=l(i.width,i.height,i.toWidth,i.toHeight,r.options.tile,h);return function t(e,n,r,i){if(s)return u;var h=e.shift(),A=o(h,2),c=A[0],l=A[1],f=0===e.length;i=a({},i,{toWidth:c,toHeight:l,quality:f?i.quality:Math.min(1,i.quality)});var g=void 0;return f||(g=document.createElement("canvas"),g.width=c,g.height=l),m(n,f?r:g,i).then(function(){return f?r:(i.width=c,i.height=l,t(e,g,r,i))})}(v,t,e,i)})},i.prototype.resizeBuffer=function(t){var e=this,n=a({},p,t);return this.init().then(function(){return e.__mathlib.resizeAndUnsharp(n)})},i.prototype.toBlob=function(t,e,n){return e=e||"image/png",new Promise(function(r){if(t.toBlob)return void t.toBlob(function(t){return r(t)},e,n);for(var i=atob(t.toDataURL(e,n).split(",")[1]),o=i.length,a=new Uint8Array(o),s=0;s<o;s++)a[s]=i.charCodeAt(s);r(new Blob([a],{type:e}))})},i.prototype.debug=function(){},e.exports=i},{"./lib/mathlib":1,"./lib/pool":9,"./lib/stepper":10,"./lib/tiler":11,"./lib/utils":12,"./lib/worker":13,"object-assign":24,webworkify:25}]},{},[])("/")}()}()})),B="square",E="to",C=[512,512,456,512,328,456,335,512,405,328,271,456,388,335,292,512,454,405,364,328,298,271,496,456,420,388,360,335,312,292,273,512,482,454,428,405,383,364,345,328,312,298,284,271,259,496,475,456,437,420,404,388,374,360,347,335,323,312,302,292,282,273,265,512,497,482,468,454,441,428,417,405,394,383,373,364,354,345,337,328,320,312,305,298,291,284,278,271,265,259,507,496,485,475,465,456,446,437,428,420,412,404,396,388,381,374,367,360,354,347,341,335,329,323,318,312,307,302,297,292,287,282,278,273,269,265,261,512,505,497,489,482,475,468,461,454,447,441,435,428,422,417,411,405,399,394,389,383,378,373,368,364,359,354,350,345,341,337,332,328,324,320,316,312,309,305,301,298,294,291,287,284,281,278,274,271,268,265,262,259,257,507,501,496,491,485,480,475,470,465,460,456,451,446,442,437,433,428,424,420,416,412,408,404,400,396,392,388,385,381,377,374,370,367,363,360,357,354,350,347,344,341,338,335,332,329,326,323,320,318,315,312,310,307,304,302,299,297,294,292,289,287,285,282,280,278,275,273,271,269,267,265,263,261,259],Q=[9,11,12,13,13,14,14,15,15,15,15,16,16,16,16,17,17,17,17,17,17,17,18,18,18,18,18,18,18,18,18,19,19,19,19,19,19,19,19,19,19,19,19,19,19,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24],x=function t(){g(this,t),this.r=0,this.g=0,this.b=0,this.a=0,this.next=null},k=function(t){return function(){var e=t.apply(this,arguments);return new Promise(function(t,n){function r(i,o){try{var a=e[i](o),s=a.value}catch(t){return void n(t)}if(!a.done)return Promise.resolve(s).then(function(t){r("next",t)},function(t){r("throw",t)});t(s)}return r("next")})}},L=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},M=function(){function t(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}return function(e,n,r){return n&&t(e.prototype,n),r&&t(e,r),e}}(),D=function(){function t(){L(this,t),this._tasks=[],this._canvas=null,this._loadedCanvas=null,this._lastCanvas=null,this._fileName=null}return M(t,[{key:"loadBlob",value:function(t){return this._addToTask("LOADER",n(t)),this}},{key:"loadCanvas",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"canvas.png";return this._addToTask("LOADER",r(t,e)),this}},{key:"_imageResize",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:200,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this._addToTask("MANIPULATION",o(t,e,n,r)),this}},{key:"toSquare",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:150,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this._imageResize(t,t,B,e)}},{key:"crop",value:function(t,e){return this._addToTask("MANIPULATION",i(t,e)),this}},{key:"resize",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:200,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this._imageResize(t,e,E,n)}},{key:"rotate",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this._addToTask("MANIPULATION",s(t,e)),this}},{key:"toGrayscale",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this._addToTask("FILTER",A(t)),this}},{key:"pixelize",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:.2;return this._addToTask("FILTER",c(t)),this}},{key:"gaussianBlur",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10;return this._addToTask("FILTER",p(t)),this}},{key:"centerInRectangle",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:200,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this._imageResize(t,e,E,n),this._addToTask("MANIPULATION",u(t,e,n)),this}},{key:"toCircle",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:150,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this._imageResize(t,t,B,e),this._addToTask("MANIPULATION",h(t,e)),this}},{key:"_runTasks",value:function(){function t(){return e.apply(this,arguments)}var e=k(regeneratorRuntime.mark(function t(){var e,n;return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:this._canvas=null,e=0;case 2:if(!(e<this._tasks.length)){t.next=19;break}if("LOADER"!==this._tasks[e].type){t.next=11;break}return t.next=6,this._tasks[e].func();case 6:n=t.sent,this._loadedCanvas=n.canvas,n.fileName&&(this._fileName=n.fileName),t.next=16;break;case 11:if(null!==this._canvas||null!==this._loadedCanvas){t.next=13;break}throw new Error("use loadBlob first");case 13:return t.next=15,this._tasks[e].func(this._canvas||this._loadedCanvas);case 15:this._canvas=t.sent;case 16:e++,t.next=2;break;case 19:this._cleanTasks();case 20:case"end":return t.stop()}},t,this)}));return t}()},{key:"_addToTask",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"manipulation",e=arguments[1];this._tasks.push({type:t,func:e})}},{key:"_cleanTasks",value:function(){this._tasks=[],null!==this._canvas&&(this._lastCanvas=this._canvas)}},{key:"getCanvas",value:function(){return this._canvas||this._lastCanvas}},{key:"getFileName",value:function(){return this._fileName}},{key:"setFileName",value:function(t){this._fileName=t}},{key:"saveAsBlob",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"image/jpeg",n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"1.0";return this._runTasks().then(function(){return I(t.getCanvas(),t.getFileName(),e,n)})}},{key:"saveAsCanvas",value:function(){var t=this;return this._runTasks().then(function(){return y(t.getCanvas())})}},{key:"saveAsImage",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"image/jpeg",n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"1.0";return this._runTasks().then(function(){return b(t.getCanvas(),e,n)})}}]),t}();e(function(t){!function(e){var n=e.HTMLCanvasElement&&e.HTMLCanvasElement.prototype,r=e.Blob&&function(){try{return Boolean(new Blob)}catch(t){return!1}}(),i=r&&e.Uint8Array&&function(){try{return 100===new Blob([new Uint8Array(100)]).size}catch(t){return!1}}(),o=e.BlobBuilder||e.WebKitBlobBuilder||e.MozBlobBuilder||e.MSBlobBuilder,a=/^data:((.*?)(;charset=.*?)?)(;base64)?,/,s=(r||o)&&e.atob&&e.ArrayBuffer&&e.Uint8Array&&function(t){var e,n,s,u,h,A,c,l,f;if(!(e=t.match(a)))throw new Error("invalid data URI");for(n=e[2]?e[1]:"text/plain"+(e[3]||";charset=US-ASCII"),s=!!e[4],u=t.slice(e[0].length),h=s?atob(u):decodeURIComponent(u),A=new ArrayBuffer(h.length),c=new Uint8Array(A),l=0;l<h.length;l+=1)c[l]=h.charCodeAt(l);return r?new Blob([i?c:A],{type:n}):(f=new o,f.append(A),f.getBlob(n))};e.HTMLCanvasElement&&!n.toBlob&&(n.mozGetAsFile?n.toBlob=function(t,e,r){var i=this;setTimeout(function(){t(r&&n.toDataURL&&s?s(i.toDataURL(e,r)):i.mozGetAsFile("blob",e))})}:n.toDataURL&&s&&(n.toBlob=function(t,e,n){var r=this;setTimeout(function(){t(s(r.toDataURL(e,n)))})})),t.exports?t.exports=s:e.dataURLtoBlob=s}(window)});return"undefined"!=typeof window&&(window.BrowserImageManipulation=D),D});
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):t["browser-image-manipulation"]=e()}(this,function(){"use strict";function t(){throw new Error("Dynamic requires are not currently supported by rollup-plugin-commonjs")}function e(t,e){return e={exports:{}},t(e,e.exports),e.exports}function n(t){return function(){return new Promise(function(e,n){var r=document.createElement("img"),i=new FileReader;i.onload=function(t){r.src=t.target.result},i.onerror=function(){n(new Error("Image read error"))},r.onload=function(){var n=document.createElement("canvas");n.width=r.width,n.height=r.height,n.getContext("2d").drawImage(r,0,0,n.width,n.height),e({canvas:n,fileName:t.name})},r.onerror=function(){n(new Error("Invalid image"))},i.readAsDataURL(t)})}}function r(t,e){return function(){return Promise.resolve({canvas:t,fileName:e})}}function i(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;return function(i){return new Promise(function(o,a){var s=0,u=0,h=i.width,A=i.height;u=r||(A-e)/2,s=n||(h-t)/2;var c=document.createElement("canvas"),l=c.getContext("2d");c.width=t,c.height=e,l.drawImage(i,s,u,t,e,0,0,t,e),o(c)})}}function o(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},i=Object.assign({pica:{}},r);return function(r){return new Promise(function(o,a){var s=null,u=document.createElement("canvas"),h=0,A=r.width,c=r.height,l=0,f=0;if(n===B)h=A<c?t/A:e/c,l=c*h,f=A*h;else if(n===E){var g=A/t,d=c/e;g>d?(l=Math.round(c/g),f=t):(f=Math.round(A/d),l=e)}else a(new Error("Unknown resize type"));u.width=f,u.height=l,(new _).resize(r,u,i.pica).then(function(t){if(n===B){var e=0,r=0;f<l?(r=(l-f)/2,l=f):(e=(f-l)/2,f=l);var i=document.createElement("canvas"),a=i.getContext("2d");i.width=f,i.height=l,a.drawImage(t,e,r,f,l,0,0,f,l),s=i}else s=t;o(s)})})}}function a(t){return t*(Math.PI/180)}function s(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=e.padding,r=void 0===n?0:n,i=e.bgColor,o=void 0===i?"white":i;return function(e){return new Promise(function(n,i){var s=document.createElement("canvas"),u=0;t<0&&(t=360+t),u=t>=0&&t<=90?90-t:270-t;var h=a(t),A=a(u),c=a(t),l={cosAngle:Math.cos(c),cosCalcAngle:Math.cos(A),sinAngle:Math.sin(c),sinCalcAngle:Math.sin(A)};for(var f in l)l[f]<0&&(l[f]=-1*l[f]);s.width=e.width*l.cosAngle+e.height*l.cosCalcAngle+r,s.height=e.width*l.sinAngle+e.height*l.sinCalcAngle+r;var g=s.getContext("2d");o&&(g.beginPath(),g.rect(0,0,s.width,s.height),g.fillStyle=o,g.fill(),g.save()),g.save(),g.translate(s.width/2,s.height/2),g.rotate(h),g.drawImage(e,-e.width/2,-e.height/2),g.restore(),n(s)})}}function u(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=n.bgColor,i=void 0===r?"white":r;return function(n){return new Promise(function(r,o){var a=document.createElement("canvas");a.width=t,a.height=e;var s=a.getContext("2d"),u=n.width,h=n.height;i&&(s.beginPath(),s.rect(0,0,t,e),s.fillStyle=i,s.fill(),s.save());var A=0,c=0;u<t&&(A=(t-u)/2),h<e&&(c=(e-h)/2),s.drawImage(n,0,0,u,h,A,c,u,h),r(a)})}}function h(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=e.padding,r=void 0===n?4:n,i=e.bgColor,o=void 0===i?"white":i;return function(e){return new Promise(function(n,i){var a=document.createElement("canvas");a.width=t,a.height=t;var s=a.getContext("2d");s.beginPath(),s.rect(0,0,t,t),s.fillStyle=o,s.fill(),s.save();var u=t-r,h=Math.round(u/2);s.beginPath(),s.arc(h+r/2,h+r/2,h-r/2,0,2*Math.PI,!0),s.closePath(),s.clip(),s.drawImage(e,0,0,u,u),s.restore(),n(a)})}}function A(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.rQ,n=void 0===e?.34:e,r=t.gQ,i=void 0===r?.5:r,o=t.bQ,a=void 0===o?.16:o;return function(t){return new Promise(function(e,r){var o=document.createElement("canvas");o.width=t.width,o.height=t.height;var s=o.getContext("2d");s.drawImage(t,0,0);for(var u=s.getImageData(0,0,o.width,o.height),h=u.data,A=0;A<h.length;A+=4){var c=n*h[A]+i*h[A+1]+a*h[A+2];h[A]=c,h[A+1]=c,h[A+2]=c}s.putImageData(u,0,0),e(o)})}}function c(t){return function(e){return new Promise(function(n,r){var i=document.createElement("canvas"),o=i.getContext("2d");i.width=e.width,i.height=e.height;var a=e.width*t,s=e.height*t;l(o),o.drawImage(e,0,0,a,s),l(o),o.drawImage(i,0,0,a,s,0,0,e.width,e.height),n(i)})}}function l(t){t.webkitImageSmoothingEnabled=!1,t.mozImageSmoothingEnabled=!1,t.msImageSmoothingEnabled=!1,t.imageSmoothingEnabled=!1}function f(t){return(f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function g(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function d(t,e,n,r,i){if("string"==typeof t&&(t=document.getElementById(t)),!(t&&"object"===f(t)&&"getContext"in t))throw new TypeError("Expecting canvas with `getContext` method in processCanvasRGB(A) calls!");var o=t.getContext("2d");try{return o.getImageData(e,n,r,i)}catch(t){throw new Error("unable to access image data: "+t)}}function m(t,e,n,r,i,o){if(!(isNaN(o)||o<1)){o|=0;var a=d(t,e,n,r,i);a=v(a,e,n,r,i,o),t.getContext("2d").putImageData(a,e,n)}}function v(t,e,n,r,i,o){var a,s,u,h,A,c,l,f,g,d,m,v,p,w,I,y,b,_,B,E,k,L,M,D,U,G=t.data,R=2*o+1,j=r-1,q=i-1,O=o+1,P=O*(O+1)/2,T=new x,N=T;for(u=1;u<R;u++)N=N.next=new x,u===O&&(U=N);N.next=T;var S=null,F=null;l=c=0;var H=C[o],z=Q[o];for(s=0;s<i;s++){for(y=b=_=B=f=g=d=m=0,v=O*(E=G[c]),p=O*(k=G[c+1]),w=O*(L=G[c+2]),I=O*(M=G[c+3]),f+=P*E,g+=P*k,d+=P*L,m+=P*M,N=T,u=0;u<O;u++)N.r=E,N.g=k,N.b=L,N.a=M,N=N.next;for(u=1;u<O;u++)h=c+((j<u?j:u)<<2),f+=(N.r=E=G[h])*(D=O-u),g+=(N.g=k=G[h+1])*D,d+=(N.b=L=G[h+2])*D,m+=(N.a=M=G[h+3])*D,y+=E,b+=k,_+=L,B+=M,N=N.next;for(S=T,F=U,a=0;a<r;a++)G[c+3]=M=m*H>>z,0!==M?(M=255/M,G[c]=(f*H>>z)*M,G[c+1]=(g*H>>z)*M,G[c+2]=(d*H>>z)*M):G[c]=G[c+1]=G[c+2]=0,f-=v,g-=p,d-=w,m-=I,v-=S.r,p-=S.g,w-=S.b,I-=S.a,h=l+((h=a+o+1)<j?h:j)<<2,y+=S.r=G[h],b+=S.g=G[h+1],_+=S.b=G[h+2],B+=S.a=G[h+3],f+=y,g+=b,d+=_,m+=B,S=S.next,v+=E=F.r,p+=k=F.g,w+=L=F.b,I+=M=F.a,y-=E,b-=k,_-=L,B-=M,F=F.next,c+=4;l+=r}for(a=0;a<r;a++){for(b=_=B=y=g=d=m=f=0,c=a<<2,v=O*(E=G[c]),p=O*(k=G[c+1]),w=O*(L=G[c+2]),I=O*(M=G[c+3]),f+=P*E,g+=P*k,d+=P*L,m+=P*M,N=T,u=0;u<O;u++)N.r=E,N.g=k,N.b=L,N.a=M,N=N.next;for(A=r,u=1;u<=o;u++)c=A+a<<2,f+=(N.r=E=G[c])*(D=O-u),g+=(N.g=k=G[c+1])*D,d+=(N.b=L=G[c+2])*D,m+=(N.a=M=G[c+3])*D,y+=E,b+=k,_+=L,B+=M,N=N.next,u<q&&(A+=r);for(c=a,S=T,F=U,s=0;s<i;s++)h=c<<2,G[h+3]=M=m*H>>z,M>0?(M=255/M,G[h]=(f*H>>z)*M,G[h+1]=(g*H>>z)*M,G[h+2]=(d*H>>z)*M):G[h]=G[h+1]=G[h+2]=0,f-=v,g-=p,d-=w,m-=I,v-=S.r,p-=S.g,w-=S.b,I-=S.a,h=a+((h=s+O)<q?h:q)*r<<2,f+=y+=S.r=G[h],g+=b+=S.g=G[h+1],d+=_+=S.b=G[h+2],m+=B+=S.a=G[h+3],S=S.next,v+=E=F.r,p+=k=F.g,w+=L=F.b,I+=M=F.a,y-=E,b-=k,_-=L,B-=M,F=F.next,c+=r}return t}function p(t){return function(e){return new Promise(function(n,r){var i=document.createElement("canvas");i.width=e.width,i.height=e.height,i.getContext("2d").drawImage(e,0,0),m(i,0,0,e.width,e.height,t),n(i)})}}function w(t,e){var n=t.split("."),r="jpg";return e.indexOf("png")>-1?r="png":e.indexOf("webp")>-1&&(r="webp"),n.pop(),n.push(r),n.join(".")}function I(t,e,n,r){return new Promise(function(i,o){t.toBlob(function(t){var r=new Blob([t],{type:n});r.name=w(e,n),i(r)},n,r)})}function y(t){return Promise.resolve(t)}function b(t,e,n){return new Promise(function(r,i){r(t.toDataURL(e,n))})}var _=(e(function(t){!function(e){function n(t,e,n,r){var o=e&&e.prototype instanceof i?e:i,a=Object.create(o.prototype),s=new f(r||[]);return a._invoke=h(t,n,s),a}function r(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}function i(){}function o(){}function a(){}function s(t){["next","throw","return"].forEach(function(e){t[e]=function(t){return this._invoke(e,t)}})}function u(t){function e(n,i,o,a){var s=r(t[n],t,i);if("throw"!==s.type){var u=s.arg,h=u.value;return h&&"object"==typeof h&&p.call(h,"__await")?Promise.resolve(h.__await).then(function(t){e("next",t,o,a)},function(t){e("throw",t,o,a)}):Promise.resolve(h).then(function(t){u.value=t,o(u)},a)}a(s.arg)}function n(t,n){function r(){return new Promise(function(r,i){e(t,n,r,i)})}return i=i?i.then(r,r):r()}var i;this._invoke=n}function h(t,e,n){var i=B;return function(o,a){if(i===C)throw new Error("Generator is already running");if(i===Q){if("throw"===o)throw a;return d()}for(n.method=o,n.arg=a;;){var s=n.delegate;if(s){var u=A(s,n);if(u){if(u===x)continue;return u}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(i===B)throw i=Q,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);i=C;var h=r(t,e,n);if("normal"===h.type){if(i=n.done?Q:E,h.arg===x)continue;return{value:h.arg,done:n.done}}"throw"===h.type&&(i=Q,n.method="throw",n.arg=h.arg)}}}function A(t,e){var n=t.iterator[e.method];if(n===m){if(e.delegate=null,"throw"===e.method){if(t.iterator.return&&(e.method="return",e.arg=m,A(t,e),"throw"===e.method))return x;e.method="throw",e.arg=new TypeError("The iterator does not provide a 'throw' method")}return x}var i=r(n,t.iterator,e.arg);if("throw"===i.type)return e.method="throw",e.arg=i.arg,e.delegate=null,x;var o=i.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=m),e.delegate=null,x):o:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,x)}function c(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function l(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function f(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(c,this),this.reset(!0)}function g(t){if(t){var e=t[I];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,r=function e(){for(;++n<t.length;)if(p.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=m,e.done=!0,e};return r.next=r}}return{next:d}}function d(){return{value:m,done:!0}}var m,v=Object.prototype,p=v.hasOwnProperty,w="function"==typeof Symbol?Symbol:{},I=w.iterator||"@@iterator",y=w.asyncIterator||"@@asyncIterator",b=w.toStringTag||"@@toStringTag",_=e.regeneratorRuntime;if(_)return void(t.exports=_);_=e.regeneratorRuntime=t.exports,_.wrap=n;var B="suspendedStart",E="suspendedYield",C="executing",Q="completed",x={},k={};k[I]=function(){return this};var L=Object.getPrototypeOf,M=L&&L(L(g([])));M&&M!==v&&p.call(M,I)&&(k=M);var D=a.prototype=i.prototype=Object.create(k);o.prototype=D.constructor=a,a.constructor=o,a[b]=o.displayName="GeneratorFunction",_.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===o||"GeneratorFunction"===(e.displayName||e.name))},_.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,a):(t.__proto__=a,b in t||(t[b]="GeneratorFunction")),t.prototype=Object.create(D),t},_.awrap=function(t){return{__await:t}},s(u.prototype),u.prototype[y]=function(){return this},_.AsyncIterator=u,_.async=function(t,e,r,i){var o=new u(n(t,e,r,i));return _.isGeneratorFunction(e)?o:o.next().then(function(t){return t.done?t.value:o.next()})},s(D),D[b]="Generator",D[I]=function(){return this},D.toString=function(){return"[object Generator]"},_.keys=function(t){var e=[];for(var n in t)e.push(n);return e.reverse(),function n(){for(;e.length;){var r=e.pop();if(r in t)return n.value=r,n.done=!1,n}return n.done=!0,n}},_.values=g,f.prototype={constructor:f,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=m,this.done=!1,this.delegate=null,this.method="next",this.arg=m,this.tryEntries.forEach(l),!t)for(var e in this)"t"===e.charAt(0)&&p.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=m)},stop:function(){this.done=!0;var t=this.tryEntries[0],e=t.completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){function e(e,r){return o.type="throw",o.arg=t,n.next=e,r&&(n.method="next",n.arg=m),!!r}if(this.done)throw t;for(var n=this,r=this.tryEntries.length-1;r>=0;--r){var i=this.tryEntries[r],o=i.completion;if("root"===i.tryLoc)return e("end");if(i.tryLoc<=this.prev){var a=p.call(i,"catchLoc"),s=p.call(i,"finallyLoc");if(a&&s){if(this.prev<i.catchLoc)return e(i.catchLoc,!0);if(this.prev<i.finallyLoc)return e(i.finallyLoc)}else if(a){if(this.prev<i.catchLoc)return e(i.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return e(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&p.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var i=r;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var o=i?i.completion:{};return o.type=t,o.arg=e,i?(this.method="next",this.next=i.finallyLoc,x):this.complete(o)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),x},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),l(n),x}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var i=r.arg;l(n)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:g(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=m),x}}}(function(){return this}()||Function("return this")())}),e(function(e,n){!function(n){e.exports=function(){return function(){function e(n,r,i){function o(s,u){if(!r[s]){if(!n[s]){var h="function"==typeof t&&t;if(!u&&h)return h(s,!0);if(a)return a(s,!0);var A=new Error("Cannot find module '"+s+"'");throw A.code="MODULE_NOT_FOUND",A}var c=r[s]={exports:{}};n[s][0].call(c.exports,function(t){return o(n[s][1][t]||t)},c,c.exports,e,n,r,i)}return r[s].exports}for(var a="function"==typeof t&&t,s=0;s<i.length;s++)o(i[s]);return o}return e}()({1:[function(t,e,n){function r(t){var e=t||[],n={js:e.indexOf("js")>=0,wasm:e.indexOf("wasm")>=0};o.call(this,n),this.features={js:n.js,wasm:n.wasm&&this.has_wasm},this.use(a),this.use(s)}var i=t("inherits"),o=t("multimath"),a=t("multimath/lib/unsharp_mask"),s=t("./mm_resize");i(r,o),r.prototype.resizeAndUnsharp=function(t,e){var n=this.resize(t,e);return t.unsharpAmount&&this.unsharp_mask(n,t.toWidth,t.toHeight,t.unsharpAmount,t.unsharpRadius,t.unsharpThreshold),n},e.exports=r},{"./mm_resize":4,inherits:15,multimath:16,"multimath/lib/unsharp_mask":19}],2:[function(t,e,n){function r(t){return t<0?0:t>255?255:t}function i(t,e,n,i,o,a){var s,u,h,A,c,l,f,g,d,m,v,p=0,w=0;for(d=0;d<i;d++){for(c=0,m=0;m<o;m++){for(l=a[c++],f=a[c++],g=p+4*l|0,s=u=h=A=0;f>0;f--)v=a[c++],A=A+v*t[g+3]|0,h=h+v*t[g+2]|0,u=u+v*t[g+1]|0,s=s+v*t[g]|0,g=g+4|0;e[w+3]=r(A+8192>>14),e[w+2]=r(h+8192>>14),e[w+1]=r(u+8192>>14),e[w]=r(s+8192>>14),w=w+4*i|0}w=4*(d+1)|0,p=(d+1)*n*4|0}}function o(t,e,n,i,o,a){var s,u,h,A,c,l,f,g,d,m,v,p=0,w=0;for(d=0;d<i;d++){for(c=0,m=0;m<o;m++){for(l=a[c++],f=a[c++],g=p+4*l|0,s=u=h=A=0;f>0;f--)v=a[c++],A=A+v*t[g+3]|0,h=h+v*t[g+2]|0,u=u+v*t[g+1]|0,s=s+v*t[g]|0,g=g+4|0;e[w+3]=r(A+8192>>14),e[w+2]=r(h+8192>>14),e[w+1]=r(u+8192>>14),e[w]=r(s+8192>>14),w=w+4*i|0}w=4*(d+1)|0,p=(d+1)*n*4|0}}e.exports={convolveHorizontally:i,convolveVertically:o}},{}],3:[function(t,e,n){e.exports="AGFzbQEAAAABFAJgBn9/f39/fwBgB39/f39/f38AAg8BA2VudgZtZW1vcnkCAAEDAwIAAQQEAXAAAAcZAghjb252b2x2ZQAACmNvbnZvbHZlSFYAAQkBAArmAwLBAwEQfwJAIANFDQAgBEUNACAFQQRqIRVBACEMQQAhDQNAIA0hDkEAIRFBACEHA0AgB0ECaiESAn8gBSAHQQF0IgdqIgZBAmouAQAiEwRAQQAhCEEAIBNrIRQgFSAHaiEPIAAgDCAGLgEAakECdGohEEEAIQlBACEKQQAhCwNAIBAoAgAiB0EYdiAPLgEAIgZsIAtqIQsgB0H/AXEgBmwgCGohCCAHQRB2Qf8BcSAGbCAKaiEKIAdBCHZB/wFxIAZsIAlqIQkgD0ECaiEPIBBBBGohECAUQQFqIhQNAAsgEiATagwBC0EAIQtBACEKQQAhCUEAIQggEgshByABIA5BAnRqIApBgMAAakEOdSIGQf8BIAZB/wFIG0EQdEGAgPwHcUEAIAZBAEobIAtBgMAAakEOdSIGQf8BIAZB/wFIG0EYdEEAIAZBAEobciAJQYDAAGpBDnUiBkH/ASAGQf8BSBtBCHRBgP4DcUEAIAZBAEobciAIQYDAAGpBDnUiBkH/ASAGQf8BSBtB/wFxQQAgBkEAShtyNgIAIA4gA2ohDiARQQFqIhEgBEcNAAsgDCACaiEMIA1BAWoiDSADRw0ACwsLIQACQEEAIAIgAyAEIAUgABAAIAJBACAEIAUgBiABEAALCw=="},{}],4:[function(t,e,n){e.exports={name:"resize",fn:t("./resize"),wasm_fn:t("./resize_wasm"),wasm_src:t("./convolve_wasm_base64")}},{"./convolve_wasm_base64":3,"./resize":5,"./resize_wasm":8}],5:[function(t,e,n){function r(t,e,n){for(var r=3,i=e*n*4|0;r<i;)t[r]=255,r=r+4|0}var i=t("./resize_filter_gen"),o=t("./convolve").convolveHorizontally,a=t("./convolve").convolveVertically;e.exports=function(t){var e=t.src,n=t.width,s=t.height,u=t.toWidth,h=t.toHeight,A=t.scaleX||t.toWidth/t.width,c=t.scaleY||t.toHeight/t.height,l=t.offsetX||0,f=t.offsetY||0,g=t.dest||new Uint8Array(u*h*4),d=void 0===t.quality?3:t.quality,m=t.alpha||!1,v=i(d,n,u,A,l),p=i(d,s,h,c,f),w=new Uint8Array(u*s*4);return o(e,w,n,s,u,v),a(w,g,s,u,h,p),m||r(g,u,h),g}},{"./convolve":2,"./resize_filter_gen":6}],6:[function(t,e,n){function r(t){return Math.round(t*((1<<o)-1))}var i=t("./resize_filter_info"),o=14;e.exports=function(t,e,n,o,a){var s,u,h,A,c,l,f,g,d,m,v,p,w,I,y,b,_,B=i[t].filter,E=1/o,C=Math.min(1,o),Q=i[t].win/C,x=Math.floor(2*(Q+1)),k=new Int16Array((x+2)*n),L=0,M=!k.subarray||!k.set;for(s=0;s<n;s++){for(u=(s+.5)*E+a,h=Math.max(0,Math.floor(u-Q)),A=Math.min(e-1,Math.ceil(u+Q)),c=A-h+1,l=new Float32Array(c),f=new Int16Array(c),g=0,d=h,m=0;d<=A;d++,m++)v=B((d+.5-u)*C),g+=v,l[m]=v;for(p=0,m=0;m<l.length;m++)w=l[m]/g,p+=w,f[m]=r(w);for(f[n>>1]+=r(1-p),I=0;I<f.length&&0===f[I];)I++;if(I<f.length){for(y=f.length-1;y>0&&0===f[y];)y--;if(b=h+I,_=y-I+1,k[L++]=b,k[L++]=_,M)for(m=I;m<=y;m++)k[L++]=f[m];else k.set(f.subarray(I,y+1),L),L+=_}else k[L++]=0,k[L++]=0}return k}},{"./resize_filter_info":7}],7:[function(t,e,n){e.exports=[{win:.5,filter:function(t){return t>=-.5&&t<.5?1:0}},{win:1,filter:function(t){if(t<=-1||t>=1)return 0;if(t>-1.1920929e-7&&t<1.1920929e-7)return 1;var e=t*Math.PI;return Math.sin(e)/e*(.54+.46*Math.cos(e/1))}},{win:2,filter:function(t){if(t<=-2||t>=2)return 0;if(t>-1.1920929e-7&&t<1.1920929e-7)return 1;var e=t*Math.PI;return Math.sin(e)/e*Math.sin(e/2)/(e/2)}},{win:3,filter:function(t){if(t<=-3||t>=3)return 0;if(t>-1.1920929e-7&&t<1.1920929e-7)return 1;var e=t*Math.PI;return Math.sin(e)/e*Math.sin(e/3)/(e/3)}}]},{}],8:[function(t,e,n){function r(t,e,n){for(var r=3,i=e*n*4|0;r<i;)t[r]=255,r=r+4|0}function i(t){return new Uint8Array(t.buffer,0,t.byteLength)}function o(t,e,n){if(s)return void e.set(i(t),n);for(var r=n,o=0;o<t.length;o++){var a=t[o];e[r++]=255&a,e[r++]=a>>8&255}}var a=t("./resize_filter_gen"),s=!0;try{s=1===new Uint32Array(new Uint8Array([1,0,0,0]).buffer)[0]}catch(t){}e.exports=function(t){var e=t.src,n=t.width,i=t.height,s=t.toWidth,u=t.toHeight,h=t.scaleX||t.toWidth/t.width,A=t.scaleY||t.toHeight/t.height,c=t.offsetX||0,l=t.offsetY||0,f=t.dest||new Uint8Array(s*u*4),g=void 0===t.quality?3:t.quality,d=t.alpha||!1,m=a(g,n,s,h,c),v=a(g,i,u,A,l),p=this.__align(0+Math.max(e.byteLength,f.byteLength)),w=this.__align(p+i*s*4),I=this.__align(w+m.byteLength),y=I+v.byteLength,b=this.__instance("resize",y),_=new Uint8Array(this.__memory.buffer),B=new Uint32Array(this.__memory.buffer),E=new Uint32Array(e.buffer);return B.set(E),o(m,_,w),o(v,_,I),(b.exports.convolveHV||b.exports._convolveHV)(w,I,p,n,i,s,u),new Uint32Array(f.buffer).set(new Uint32Array(this.__memory.buffer,0,u*s)),d||r(f,s,u),f}},{"./resize_filter_gen":6}],9:[function(t,e,n){function r(t,e){this.create=t,this.available=[],this.acquired={},this.lastId=1,this.timeoutId=0,this.idle=e||2e3}r.prototype.acquire=function(){var t=this,e=void 0;return 0!==this.available.length?e=this.available.pop():(e=this.create(),e.id=this.lastId++,e.release=function(){return t.release(e)}),this.acquired[e.id]=e,e},r.prototype.release=function(t){var e=this;delete this.acquired[t.id],t.lastUsed=Date.now(),this.available.push(t),0===this.timeoutId&&(this.timeoutId=setTimeout(function(){return e.gc()},100))},r.prototype.gc=function(){var t=this,e=Date.now();this.available=this.available.filter(function(n){return!(e-n.lastUsed>t.idle)||(n.destroy(),!1)}),0!==this.available.length?this.timeoutId=setTimeout(function(){return t.gc()},100):this.timeoutId=0},e.exports=r},{}],10:[function(t,e,n){e.exports=function(t,e,n,r,i,o){var a=n/t,s=r/e,u=(2*o+2+1)/i;if(u>.5)return[[n,r]];var h=Math.ceil(Math.log(Math.min(a,s))/Math.log(u));if(h<=1)return[[n,r]];for(var A=[],c=0;c<h;c++){var l=Math.round(Math.pow(Math.pow(t,h-c-1)*Math.pow(n,c+1),1/h)),f=Math.round(Math.pow(Math.pow(e,h-c-1)*Math.pow(r,c+1),1/h));A.push([l,f])}return A}},{}],11:[function(t,e,n){function r(t){var e=Math.round(t);return Math.abs(t-e)<o?e:Math.floor(t)}function i(t){var e=Math.round(t);return Math.abs(t-e)<o?e:Math.ceil(t)}var o=1e-5;e.exports=function(t){var e=t.toWidth/t.width,n=t.toHeight/t.height,o=r(t.srcTileSize*e)-2*t.destTileBorder,a=r(t.srcTileSize*n)-2*t.destTileBorder;if(o<1||a<1)throw new Error("Internal error in pica: target tile width/height is too small.");var s,u,h,A,c,l,f,g=[];for(A=0;A<t.toHeight;A+=a)for(h=0;h<t.toWidth;h+=o)s=h-t.destTileBorder,s<0&&(s=0),c=h+o+t.destTileBorder-s,s+c>=t.toWidth&&(c=t.toWidth-s),u=A-t.destTileBorder,u<0&&(u=0),l=A+a+t.destTileBorder-u,u+l>=t.toHeight&&(l=t.toHeight-u),f={toX:s,toY:u,toWidth:c,toHeight:l,toInnerX:h,toInnerY:A,toInnerWidth:o,toInnerHeight:a,offsetX:s/e-r(s/e),offsetY:u/n-r(u/n),scaleX:e,scaleY:n,x:r(s/e),y:r(u/n),width:i(c/e),height:i(l/n)},g.push(f);return g}},{}],12:[function(t,e,n){function r(t){return Object.prototype.toString.call(t)}e.exports.isCanvas=function(t){var e=r(t);return"[object HTMLCanvasElement]"===e||"[object Canvas]"===e},e.exports.isImage=function(t){return"[object HTMLImageElement]"===r(t)},e.exports.limiter=function(t){function e(){n<t&&r.length&&(n++,r.shift()())}var n=0,r=[];return function(t){return new Promise(function(i,o){r.push(function(){t().then(function(t){i(t),n--,e()},function(t){o(t),n--,e()})}),e()})}},e.exports.cib_quality_name=function(t){switch(t){case 0:return"pixelated";case 1:return"low";case 2:return"medium"}return"high"},e.exports.cib_support=function(){return Promise.resolve().then(function(){if("undefined"==typeof createImageBitmap||"undefined"==typeof document)return!1;var t=document.createElement("canvas");return t.width=100,t.height=100,createImageBitmap(t,0,0,100,100,{resizeWidth:10,resizeHeight:10,resizeQuality:"high"}).then(function(e){var n=10===e.width;return e.close(),t=null,n})}).catch(function(){return!1})}},{}],13:[function(t,e,n){e.exports=function(){var e=t("./mathlib"),n=void 0;onmessage=function(t){var r=t.data.opts;n||(n=new e(t.data.features));var i=n.resizeAndUnsharp(r);postMessage({result:i},[i.buffer])}}},{"./mathlib":1}],14:[function(t,e,n){function r(t){t<.5&&(t=.5);var e=Math.exp(.527076)/t,n=Math.exp(-e),r=Math.exp(-2*e),i=(1-n)*(1-n)/(1+2*e*n-r);return a=i,s=i*(e-1)*n,u=i*(e+1)*n,h=-i*r,A=2*n,c=-r,l=(a+s)/(1-A-c),f=(u+h)/(1-A-c),new Float32Array([a,s,u,h,A,c,l,f])}function i(t,e,n,r,i,o){var a,s,u,h,A,c,l,f,g,d,m,v,p,w;for(g=0;g<o;g++){for(c=g*i,l=g,f=0,a=t[c],A=a*r[6],h=A,m=r[0],v=r[1],p=r[4],w=r[5],d=0;d<i;d++)s=t[c],u=s*m+a*v+h*p+A*w,A=h,h=u,a=s,n[f]=h,f++,c++;for(c--,f--,l+=o*(i-1),a=t[c],A=a*r[7],h=A,s=a,m=r[2],v=r[3],d=i-1;d>=0;d--)u=s*m+a*v+h*p+A*w,A=h,h=u,a=s,s=t[c],e[l]=n[f]+h,c--,f--,l-=o}}function o(t,e,n,o){if(o){var a=new Uint16Array(t.length),s=new Float32Array(Math.max(e,n)),u=r(o);i(t,a,s,u,e,n,o),i(a,t,s,u,n,e,o)}}var a,s,u,h,A,c,l,f;e.exports=o},{}],15:[function(t,e,n){"function"==typeof Object.create?e.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:e.exports=function(t,e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}},{}],16:[function(t,e,n){function r(t){if(!(this instanceof r))return new r(t);var e=i({},s,t||{});if(this.options=e,this.__cache={},this.has_wasm=a(),this.__init_promise=null,this.__modules=e.modules||{},this.__memory=null,this.__wasm={},this.__isLE=1===new Uint32Array(new Uint8Array([1,0,0,0]).buffer)[0],!this.options.js&&!this.options.wasm)throw new Error('mathlib: at least "js" or "wasm" should be enabled')}var i=t("object-assign"),o=t("./lib/base64decode"),a=t("./lib/wa_detect"),s={js:!0,wasm:!0};r.prototype.use=function(t){return this.__modules[t.name]=t,this.has_wasm&&this.options.wasm&&t.wasm_fn?this[t.name]=t.wasm_fn:this[t.name]=t.fn,this},r.prototype.init=function(){if(this.__init_promise)return this.__init_promise;if(!this.options.js&&this.options.wasm&&!this.has_wasm)return Promise.reject(new Error('mathlib: only "wasm" was enabled, but it\'s not supported'));var t=this;return this.__init_promise=Promise.all(Object.keys(t.__modules).map(function(e){var n=t.__modules[e];return t.has_wasm&&t.options.wasm&&n.wasm_fn?t.__wasm[e]?null:WebAssembly.compile(t.__base64decode(n.wasm_src)).then(function(n){t.__wasm[e]=n}):null})).then(function(){return t}),this.__init_promise},r.prototype.__base64decode=o,r.prototype.__reallocate=function(t){if(!this.__memory)return this.__memory=new WebAssembly.Memory({initial:Math.ceil(t/65536)}),this.__memory;var e=this.__memory.buffer.byteLength;return e<t&&this.__memory.grow(Math.ceil((t-e)/65536)),this.__memory},r.prototype.__instance=function(t,e,n){if(e&&this.__reallocate(e),!this.__wasm[t]){var r=this.__modules[t];this.__wasm[t]=new WebAssembly.Module(this.__base64decode(r.wasm_src))}if(!this.__cache[t]){var o={memoryBase:0,memory:this.__memory,tableBase:0,table:new WebAssembly.Table({initial:0,element:"anyfunc"})};this.__cache[t]=new WebAssembly.Instance(this.__wasm[t],{env:i(o,n||{})})}return this.__cache[t]},r.prototype.__align=function(t,e){e=e||8;var n=t%e;return t+(n?e-n:0)},e.exports=r},{"./lib/base64decode":17,"./lib/wa_detect":23,"object-assign":24}],17:[function(t,e,n){e.exports=function(t){for(var e=t.replace(/[\r\n=]/g,""),n=e.length,r=new Uint8Array(3*n>>2),i=0,o=0,a=0;a<n;a++)a%4==0&&a&&(r[o++]=i>>16&255,r[o++]=i>>8&255,r[o++]=255&i),i=i<<6|"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(e.charAt(a));var s=n%4*6;return 0===s?(r[o++]=i>>16&255,r[o++]=i>>8&255,r[o++]=255&i):18===s?(r[o++]=i>>10&255,r[o++]=i>>2&255):12===s&&(r[o++]=i>>4&255),r}},{}],18:[function(t,e,n){e.exports=function(t,e,n){for(var r,i,o,a,s,u=e*n,h=new Uint16Array(u),A=0;A<u;A++)r=t[4*A],i=t[4*A+1],o=t[4*A+2],s=r>=i&&r>=o?r:i>=o&&i>=r?i:o,a=r<=i&&r<=o?r:i<=o&&i<=r?i:o,h[A]=257*(s+a)>>1;return h}},{}],19:[function(t,e,n){e.exports={name:"unsharp_mask",fn:t("./unsharp_mask"),wasm_fn:t("./unsharp_mask_wasm"),wasm_src:t("./unsharp_mask_wasm_base64")}},{"./unsharp_mask":20,"./unsharp_mask_wasm":21,"./unsharp_mask_wasm_base64":22}],20:[function(t,e,n){var r=t("glur/mono16"),i=t("./hsl_l16");e.exports=function(t,e,n,o,a,s){var u,h,A,c,l,f,g,d,m,v,p,w,I;if(!(0===o||a<.5)){a>2&&(a=2);var y=i(t,e,n),b=new Uint16Array(y);r(b,e,n,a);for(var _=o/100*4096+.5|0,B=257*s|0,E=e*n,C=0;C<E;C++)w=2*(y[C]-b[C]),Math.abs(w)>=B&&(I=4*C,u=t[I],h=t[I+1],A=t[I+2],d=u>=h&&u>=A?u:h>=u&&h>=A?h:A,g=u<=h&&u<=A?u:h<=u&&h<=A?h:A,f=257*(d+g)>>1,g===d?c=l=0:(l=f<=32767?4095*(d-g)/(d+g)|0:4095*(d-g)/(510-d-g)|0,c=u===d?65535*(h-A)/(6*(d-g))|0:h===d?21845+(65535*(A-u)/(6*(d-g))|0):43690+(65535*(u-h)/(6*(d-g))|0)),f+=_*w+2048>>12,f>65535?f=65535:f<0&&(f=0),0===l?u=h=A=f>>8:(v=f<=32767?f*(4096+l)+2048>>12:f+((65535-f)*l+2048>>12),m=2*f-v>>8,v>>=8,p=c+21845&65535,u=p>=43690?m:p>=32767?m+(6*(v-m)*(43690-p)+32768>>16):p>=10922?v:m+(6*(v-m)*p+32768>>16),p=65535&c,h=p>=43690?m:p>=32767?m+(6*(v-m)*(43690-p)+32768>>16):p>=10922?v:m+(6*(v-m)*p+32768>>16),p=c-21845&65535,A=p>=43690?m:p>=32767?m+(6*(v-m)*(43690-p)+32768>>16):p>=10922?v:m+(6*(v-m)*p+32768>>16)),t[I]=u,t[I+1]=h,t[I+2]=A)}}},{"./hsl_l16":18,"glur/mono16":14}],21:[function(t,e,n){e.exports=function(t,e,n,r,i,o){if(!(0===r||i<.5)){i>2&&(i=2);var a=e*n,s=4*a,u=2*a,h=2*a,A=4*Math.max(e,n),c=s,l=c+u,f=l+h,g=f+h,d=g+A,m=this.__instance("unsharp_mask",s+u+2*h+A+32,{exp:Math.exp}),v=new Uint32Array(t.buffer);new Uint32Array(this.__memory.buffer).set(v);var p=m.exports.hsl_l16||m.exports._hsl_l16;p(0,c,e,n),p=m.exports.blurMono16||m.exports._blurMono16,p(c,l,f,g,d,e,n,i),p=m.exports.unsharp||m.exports._unsharp,p(0,0,c,l,e,n,r,o),v.set(new Uint32Array(this.__memory.buffer,0,a))}}},{}],22:[function(t,e,n){e.exports="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"},{}],23:[function(t,e,n){var r;e.exports=function(){if(void 0!==r)return r;if(r=!1,"undefined"==typeof WebAssembly)return r;try{var t=new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,1,127,1,127,3,2,1,0,5,3,1,0,1,7,8,1,4,116,101,115,116,0,0,10,16,1,14,0,32,0,65,1,54,2,0,32,0,40,2,0,11]),e=new WebAssembly.Module(t)
;return 0!==new WebAssembly.Instance(e,{}).exports.test(4)&&(r=!0),r}catch(t){}return r}},{}],24:[function(t,e,n){function r(t){if(null===t||void 0===t)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}var i=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de","5"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},n=0;n<10;n++)e["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(e).map(function(t){return e[t]}).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach(function(t){r[t]=t}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(t){return!1}}()?Object.assign:function(t,e){for(var n,s,u=r(t),h=1;h<arguments.length;h++){n=Object(arguments[h]);for(var A in n)o.call(n,A)&&(u[A]=n[A]);if(i){s=i(n);for(var c=0;c<s.length;c++)a.call(n,s[c])&&(u[s[c]]=n[s[c]])}}return u}},{}],25:[function(t,e,n){var r=arguments[3],i=arguments[4],o=arguments[5],a=JSON.stringify;e.exports=function(t,e){function n(t){m[t]=!0;for(var e in i[t][1]){var r=i[t][1][e];m[r]||n(r)}}for(var s,u=Object.keys(o),h=0,A=u.length;h<A;h++){var c=u[h],l=o[c].exports;if(l===t||l&&l.default===t){s=c;break}}if(!s){s=Math.floor(Math.pow(16,8)*Math.random()).toString(16);for(var f={},h=0,A=u.length;h<A;h++){var c=u[h];f[c]=c}i[s]=["function(require,module,exports){"+t+"(self); }",f]}var g=Math.floor(Math.pow(16,8)*Math.random()).toString(16),d={};d[s]=s,i[g]=["function(require,module,exports){var f = require("+a(s)+");(f.default ? f.default : f)(self);}",d];var m={};n(g);var v="("+r+")({"+Object.keys(m).map(function(t){return a(t)+":["+i[t][0]+","+a(i[t][1])+"]"}).join(",")+"},{},["+a(g)+"])",p=window.URL||window.webkitURL||window.mozURL||window.msURL,w=new Blob([v],{type:"text/javascript"});if(e&&e.bare)return w;var I=p.createObjectURL(w),y=new Worker(I);return y.objectURL=I,y}},{}],"/":[function(t,e,n){function r(){return{value:s(c),destroy:function(){if(this.value.terminate(),"undefined"!=typeof window){var t=window.URL||window.webkitURL||window.mozURL||window.msURL;t&&t.revokeObjectURL&&this.value.objectURL&&t.revokeObjectURL(this.value.objectURL)}}}}function i(t){if(!(this instanceof i))return new i(t);this.options=a({},v,t||{});var e="lk_"+this.options.concurrency;this.__limit=g[e]||A.limiter(this.options.concurrency),g[e]||(g[e]=this.__limit),this.features={js:!1,wasm:!1,cib:!1,ww:!1},this.__workersPool=null,this.__requested_features=[],this.__mathlib=null}var o=function(){function t(t,e){var n=[],r=!0,i=!1,o=void 0;try{for(var a,s=t[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){i=!0,o=t}finally{try{!r&&s.return&&s.return()}finally{if(i)throw o}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),a=t("object-assign"),s=t("webworkify"),u=t("./lib/mathlib"),h=t("./lib/pool"),A=t("./lib/utils"),c=t("./lib/worker"),l=t("./lib/stepper"),f=t("./lib/tiler"),g={},d=!1;try{"undefined"!=typeof navigator&&navigator.userAgent&&(d=navigator.userAgent.indexOf("Safari")>=0)}catch(t){}var m=1;"undefined"!=typeof navigator&&(m=Math.min(navigator.hardwareConcurrency||1,4));var v={tile:1024,concurrency:m,features:["js","wasm","ww"],idle:2e3},p={quality:3,alpha:!1,unsharpAmount:0,unsharpRadius:0,unsharpThreshold:0},w=void 0,I=void 0;i.prototype.init=function(){var e=this;if(this.__initPromise)return this.__initPromise;if(!1!==w&&!0!==w&&(w=!1,"undefined"!=typeof ImageData&&"undefined"!=typeof Uint8ClampedArray))try{new ImageData(new Uint8ClampedArray(400),10,10),w=!0}catch(t){}!1!==I&&!0!==I&&(I=!1,"undefined"!=typeof ImageBitmap&&(ImageBitmap.prototype&&ImageBitmap.prototype.close?I=!0:this.debug("ImageBitmap does not support .close(), disabled")));var n=this.options.features.slice();if(n.indexOf("all")>=0&&(n=["cib","wasm","js","ww"]),this.__requested_features=n,this.__mathlib=new u(n),n.indexOf("ww")>=0&&"undefined"!=typeof window&&"Worker"in window)try{t("webworkify")(function(){}).terminate(),this.features.ww=!0;var i="wp_"+JSON.stringify(this.options);g[i]?this.__workersPool=g[i]:(this.__workersPool=new h(r,this.options.idle),g[i]=this.__workersPool)}catch(t){}var o=this.__mathlib.init().then(function(t){a(e.features,t.features)}),s=void 0;return s=I?A.cib_support().then(function(t){if(e.features.cib&&n.indexOf("cib")<0)return void e.debug("createImageBitmap() resize supported, but disabled by config");n.indexOf("cib")>=0&&(e.features.cib=t)}):Promise.resolve(!1),this.__initPromise=Promise.all([o,s]).then(function(){return e}),this.__initPromise},i.prototype.resize=function(t,e,n){var r=this;this.debug("Start resize...");var i=a({},p);isNaN(n)?n&&(i=a(i,n)):i=a(i,{quality:n}),i.toWidth=e.width,i.toHeight=e.height,i.width=t.naturalWidth||t.width,i.height=t.naturalHeight||t.height,i.unsharpRadius>2&&(i.unsharpRadius=2);var s=!1,u=null;i.cancelToken&&(u=i.cancelToken.then(function(t){throw s=!0,t},function(t){throw s=!0,t}));var h=Math.ceil(Math.max(3,2.5*i.unsharpRadius|0));return this.init().then(function(){if(s)return u;if(r.features.cib){var n=e.getContext("2d",{alpha:Boolean(i.alpha)});return r.debug("Resize via createImageBitmap()"),createImageBitmap(t,{resizeWidth:i.toWidth,resizeHeight:i.toHeight,resizeQuality:A.cib_quality_name(i.quality)}).then(function(t){if(s)return u;if(!i.unsharpAmount)return n.drawImage(t,0,0),t.close(),n=null,r.debug("Finished!"),e;r.debug("Unsharp result");var o=document.createElement("canvas");o.width=i.toWidth,o.height=i.toHeight;var a=o.getContext("2d",{alpha:Boolean(i.alpha)});a.drawImage(t,0,0),t.close();var h=a.getImageData(0,0,i.toWidth,i.toHeight);return r.__mathlib.unsharp(h.data,i.toWidth,i.toHeight,i.unsharpAmount,i.unsharpRadius,i.unsharpThreshold),n.putImageData(h,0,0),h=a=o=n=null,r.debug("Finished!"),e})}var c={},g=function(t){return Promise.resolve().then(function(){return r.features.ww?new Promise(function(e,n){var i=r.__workersPool.acquire();u&&u.catch(function(t){return n(t)}),i.value.onmessage=function(t){i.release(),t.data.err?n(t.data.err):e(t.data.result)},i.value.postMessage({opts:t,features:r.__requested_features,preload:{wasm_nodule:r.__mathlib.__}},[t.src.buffer])}):r.__mathlib.resizeAndUnsharp(t,c)})},m=function(t,e,n){var i=void 0,o=void 0,a=void 0,c=function(e){return r.__limit(function(){if(s)return u;var h=void 0;if(A.isCanvas(t))r.debug("Get tile pixel data"),h=i.getImageData(e.x,e.y,e.width,e.height);else{r.debug("Draw tile imageBitmap/image to temporary canvas");var c=document.createElement("canvas");c.width=e.width,c.height=e.height;var l=c.getContext("2d",{alpha:Boolean(n.alpha)});l.globalCompositeOperation="copy",l.drawImage(o||t,e.x,e.y,e.width,e.height,0,0,e.width,e.height),r.debug("Get tile pixel data"),h=l.getImageData(0,0,e.width,e.height),l=c=null}var f={src:h.data,width:e.width,height:e.height,toWidth:e.toWidth,toHeight:e.toHeight,scaleX:e.scaleX,scaleY:e.scaleY,offsetX:e.offsetX,offsetY:e.offsetY,quality:n.quality,alpha:n.alpha,unsharpAmount:n.unsharpAmount,unsharpRadius:n.unsharpRadius,unsharpThreshold:n.unsharpThreshold};return r.debug("Invoke resize math"),Promise.resolve().then(function(){return g(f)}).then(function(t){if(s)return u;h=null;var n=void 0;if(r.debug("Convert raw rgba tile result to ImageData"),w)n=new ImageData(new Uint8ClampedArray(t),e.toWidth,e.toHeight);else if(n=a.createImageData(e.toWidth,e.toHeight),n.data.set)n.data.set(t);else for(var i=n.data.length-1;i>=0;i--)n.data[i]=t[i];return r.debug("Draw tile"),d?a.putImageData(n,e.toX,e.toY,e.toInnerX-e.toX,e.toInnerY-e.toY,e.toInnerWidth+1e-5,e.toInnerHeight+1e-5):a.putImageData(n,e.toX,e.toY,e.toInnerX-e.toX,e.toInnerY-e.toY,e.toInnerWidth,e.toInnerHeight),null})})};return Promise.resolve().then(function(){if(a=e.getContext("2d",{alpha:Boolean(n.alpha)}),A.isCanvas(t))return i=t.getContext("2d",{alpha:Boolean(n.alpha)}),null;if(A.isImage(t))return I?(r.debug("Decode image via createImageBitmap"),createImageBitmap(t).then(function(t){o=t})):null;throw new Error('".from" should be image or canvas')}).then(function(){function t(){o&&(o.close(),o=null)}if(s)return u;r.debug("Calculate tiles");var i=f({width:n.width,height:n.height,srcTileSize:r.options.tile,toWidth:n.toWidth,toHeight:n.toHeight,destTileBorder:h}),a=i.map(function(t){return c(t)});return r.debug("Process tiles"),Promise.all(a).then(function(){return r.debug("Finished!"),t(),e},function(e){throw t(),e})})},v=l(i.width,i.height,i.toWidth,i.toHeight,r.options.tile,h);return function t(e,n,r,i){if(s)return u;var h=e.shift(),A=o(h,2),c=A[0],l=A[1],f=0===e.length;i=a({},i,{toWidth:c,toHeight:l,quality:f?i.quality:Math.min(1,i.quality)});var g=void 0;return f||(g=document.createElement("canvas"),g.width=c,g.height=l),m(n,f?r:g,i).then(function(){return f?r:(i.width=c,i.height=l,t(e,g,r,i))})}(v,t,e,i)})},i.prototype.resizeBuffer=function(t){var e=this,n=a({},p,t);return this.init().then(function(){return e.__mathlib.resizeAndUnsharp(n)})},i.prototype.toBlob=function(t,e,n){return e=e||"image/png",new Promise(function(r){if(t.toBlob)return void t.toBlob(function(t){return r(t)},e,n);for(var i=atob(t.toDataURL(e,n).split(",")[1]),o=i.length,a=new Uint8Array(o),s=0;s<o;s++)a[s]=i.charCodeAt(s);r(new Blob([a],{type:e}))})},i.prototype.debug=function(){},e.exports=i},{"./lib/mathlib":1,"./lib/pool":9,"./lib/stepper":10,"./lib/tiler":11,"./lib/utils":12,"./lib/worker":13,"object-assign":24,webworkify:25}]},{},[])("/")}()}()})),B="square",E="to",C=[512,512,456,512,328,456,335,512,405,328,271,456,388,335,292,512,454,405,364,328,298,271,496,456,420,388,360,335,312,292,273,512,482,454,428,405,383,364,345,328,312,298,284,271,259,496,475,456,437,420,404,388,374,360,347,335,323,312,302,292,282,273,265,512,497,482,468,454,441,428,417,405,394,383,373,364,354,345,337,328,320,312,305,298,291,284,278,271,265,259,507,496,485,475,465,456,446,437,428,420,412,404,396,388,381,374,367,360,354,347,341,335,329,323,318,312,307,302,297,292,287,282,278,273,269,265,261,512,505,497,489,482,475,468,461,454,447,441,435,428,422,417,411,405,399,394,389,383,378,373,368,364,359,354,350,345,341,337,332,328,324,320,316,312,309,305,301,298,294,291,287,284,281,278,274,271,268,265,262,259,257,507,501,496,491,485,480,475,470,465,460,456,451,446,442,437,433,428,424,420,416,412,408,404,400,396,392,388,385,381,377,374,370,367,363,360,357,354,350,347,344,341,338,335,332,329,326,323,320,318,315,312,310,307,304,302,299,297,294,292,289,287,285,282,280,278,275,273,271,269,267,265,263,261,259],Q=[9,11,12,13,13,14,14,15,15,15,15,16,16,16,16,17,17,17,17,17,17,17,18,18,18,18,18,18,18,18,18,19,19,19,19,19,19,19,19,19,19,19,19,19,19,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24],x=function t(){g(this,t),this.r=0,this.g=0,this.b=0,this.a=0,this.next=null},k=function(t){return function(){var e=t.apply(this,arguments);return new Promise(function(t,n){function r(i,o){try{var a=e[i](o),s=a.value}catch(t){return void n(t)}if(!a.done)return Promise.resolve(s).then(function(t){r("next",t)},function(t){r("throw",t)});t(s)}return r("next")})}},L=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},M=function(){function t(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}return function(e,n,r){return n&&t(e.prototype,n),r&&t(e,r),e}}(),D=function(){function t(){L(this,t),this._tasks=[],this._canvas=null,this._loadedCanvas=null,this._lastCanvas=null,this._fileName=null}return M(t,[{key:"loadBlob",value:function(t){return this._addToTask("LOADER",n(t)),this}},{key:"loadCanvas",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"canvas.png";return this._addToTask("LOADER",r(t,e)),this}},{key:"_imageResize",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:200,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this._addToTask("MANIPULATION",o(t,e,n,r)),this}},{key:"toSquare",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:150,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this._imageResize(t,t,B,e)}},{key:"crop",value:function(t,e,n,r){return this._addToTask("MANIPULATION",i(t,e,n,r)),this}},{key:"resize",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:200,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this._imageResize(t,e,E,n)}},{key:"rotate",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this._addToTask("MANIPULATION",s(t,e)),this}},{key:"toGrayscale",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this._addToTask("FILTER",A(t)),this}},{key:"pixelize",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:.2;return this._addToTask("FILTER",c(t)),this}},{key:"gaussianBlur",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10;return this._addToTask("FILTER",p(t)),this}},{key:"centerInRectangle",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:200,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this._imageResize(t,e,E,n),this._addToTask("MANIPULATION",u(t,e,n)),this}},{key:"toCircle",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:150,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this._imageResize(t,t,B,e),this._addToTask("MANIPULATION",h(t,e)),this}},{key:"_runTasks",value:function(){function t(){return e.apply(this,arguments)}var e=k(regeneratorRuntime.mark(function t(){var e,n;return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:this._canvas=null,e=0;case 2:if(!(e<this._tasks.length)){t.next=19;break}if("LOADER"!==this._tasks[e].type){t.next=11;break}return t.next=6,this._tasks[e].func();case 6:n=t.sent,this._loadedCanvas=n.canvas,n.fileName&&(this._fileName=n.fileName),t.next=16;break;case 11:if(null!==this._canvas||null!==this._loadedCanvas){t.next=13;break}throw new Error("use loadBlob first");case 13:return t.next=15,this._tasks[e].func(this._canvas||this._loadedCanvas);case 15:this._canvas=t.sent;case 16:e++,t.next=2;break;case 19:this._cleanTasks();case 20:case"end":return t.stop()}},t,this)}));return t}()},{key:"_addToTask",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"manipulation",e=arguments[1];this._tasks.push({type:t,func:e})}},{key:"_cleanTasks",value:function(){this._tasks=[],null!==this._canvas&&(this._lastCanvas=this._canvas)}},{key:"getCanvas",value:function(){return this._canvas||this._lastCanvas}},{key:"getFileName",value:function(){return this._fileName}},{key:"setFileName",value:function(t){this._fileName=t}},{key:"saveAsBlob",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"image/jpeg",n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"1.0";return this._runTasks().then(function(){return I(t.getCanvas(),t.getFileName(),e,n)})}},{key:"saveAsCanvas",value:function(){var t=this;return this._runTasks().then(function(){return y(t.getCanvas())})}},{key:"saveAsImage",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"image/jpeg",n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"1.0";return this._runTasks().then(function(){return b(t.getCanvas(),e,n)})}}]),t}();e(function(t){!function(e){var n=e.HTMLCanvasElement&&e.HTMLCanvasElement.prototype,r=e.Blob&&function(){try{return Boolean(new Blob)}catch(t){return!1}}(),i=r&&e.Uint8Array&&function(){try{return 100===new Blob([new Uint8Array(100)]).size}catch(t){return!1}}(),o=e.BlobBuilder||e.WebKitBlobBuilder||e.MozBlobBuilder||e.MSBlobBuilder,a=/^data:((.*?)(;charset=.*?)?)(;base64)?,/,s=(r||o)&&e.atob&&e.ArrayBuffer&&e.Uint8Array&&function(t){var e,n,s,u,h,A,c,l,f;if(!(e=t.match(a)))throw new Error("invalid data URI");for(n=e[2]?e[1]:"text/plain"+(e[3]||";charset=US-ASCII"),s=!!e[4],u=t.slice(e[0].length),h=s?atob(u):decodeURIComponent(u),A=new ArrayBuffer(h.length),c=new Uint8Array(A),l=0;l<h.length;l+=1)c[l]=h.charCodeAt(l);return r?new Blob([i?c:A],{type:n}):(f=new o,f.append(A),f.getBlob(n))};e.HTMLCanvasElement&&!n.toBlob&&(n.mozGetAsFile?n.toBlob=function(t,e,r){var i=this;setTimeout(function(){t(r&&n.toDataURL&&s?s(i.toDataURL(e,r)):i.mozGetAsFile("blob",e))})}:n.toDataURL&&s&&(n.toBlob=function(t,e,n){var r=this;setTimeout(function(){t(s(r.toDataURL(e,n)))})})),t.exports?t.exports=s:e.dataURLtoBlob=s}(window)});return"undefined"!=typeof window&&(window.BrowserImageManipulation=D),D});
//# sourceMappingURL=browser-image-manipulation.js.map
{
"name": "browser-image-manipulation",
"version": "0.2.0",
"version": "0.2.1",
"description": "Convert and manipulate image on JS in browser.",

@@ -5,0 +5,0 @@ "main": "dist/browser-image-manipulation.js",

@@ -71,6 +71,10 @@ import {loadBlob} from './loaders/loadBlob.js'

* @param height {number} - height to crop to.
* @param offsetX{number} - If specified, cropping will start from that offset on X axis,
* otherwise it will crop so result is centered in the source
* @param offsetY{number} - If specified, cropping will start from that offset on Y axis,
* otherwise it will crop so result is centered in the source
* @returns {ImageManipulation}
*/
crop (maxWidth, maxHeight) {
this._addToTask(MANIPULATION, imageCrop(maxWidth, maxHeight))
crop (maxWidth, maxHeight, offsetX, offsetY) {
this._addToTask(MANIPULATION, imageCrop(maxWidth, maxHeight, offsetX, offsetY))
return this

@@ -77,0 +81,0 @@ }

@@ -8,5 +8,9 @@ import Pica from 'pica/dist/pica'

* @param newHeight{number} - new height after crop.
* @param offsetX{number} - If specified, cropping will start from that offset on X axis,
* otherwise it will crop so result is centered in the source
* @param offsetY{number} - If specified, cropping will start from that offset on Y axis,
* otherwise it will crop so result is centered in the source
* @returns {function(*=): Promise<HTMLCanvasElement>}
*/
export function imageCrop(newWidth, newHeight) {
export function imageCrop(newWidth, newHeight, offsetX = 0, offsetY = 0) {
return (canvasImage) => new Promise((resolve, reject) => {

@@ -20,4 +24,4 @@ let dx = 0

sy = (height - newHeight) / 2
sx = (width - newWidth) / 2
sy = offsetY || (height - newHeight) / 2
sx = offsetX || (width - newWidth) / 2

@@ -24,0 +28,0 @@ let cropedCanvas = document.createElement('canvas')

@@ -18,3 +18,3 @@ declare module "browser-image-manipulation"{

setFileName(newFileName: string);
crop(maxWidth: number, maxHeight: number);
crop(maxWidth: number, maxHeight: number, offsetX?: number, offsetY?: number);
}

@@ -21,0 +21,0 @@

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc