to-canvas
Version:
Convert Almost Anything to an HTML Canvas.
1 lines • 19.5 kB
JavaScript
(()=>{var t={642:t=>{t.exports=function(t){const i=t=>Array.isArray(t)||t instanceof Int8Array||t instanceof Uint8Array||t instanceof Uint8ClampedArray||t instanceof Int16Array||t instanceof Uint16Array||t instanceof Int32Array||t instanceof Uint32Array||t instanceof Float32Array||t instanceof Float64Array||t instanceof BigInt64Array||t instanceof BigUint64Array;let s=0,n=t;for(;i(n);)s++,n=n[0];return s}},94:(t,i,s)=>{const n=s(642);t.exports=function({bands:t,data:i,height:s,width:e}){const h=n(i);if(1===h)return{layout:"[row,column,band]",bands:t||(s&&e?i.length/(s*e):void 0),height:s||(t&&e?i.length/(t*e):void 0),width:e||(t&&s?i.length/(t*s):void 0)};if(2===h){if(!s||!e)return i.length<i[0].length?{bands:i.length,layout:"[band][row,column]",height:s||(e?i[0].length/e:void 0),width:e||(s?i[0].length/s:void 0)}:{bands:i[0].length,layout:"[row,column][band]",height:s||(e?i.length/e:void 0),width:e||(s?i.length/s:void 0)};if(i[0].length===s*e)return{layout:"[band][row,column]",bands:i.length,height:s,width:e};if(i.length===s*e)return{layout:"[row,column][band]",bands:i[0].length,height:s,width:e}}else if(3===h){const t=i.length,n=i[0].length,h=i[0][0].length;if(s&&e){if(t===s&&n===e)return{layout:"[row][column][band]",bands:h,height:s,width:e};if(n===s&&h===e)return{layout:"[band][row][column]",bands:t,height:s,width:e}}else{if(t<n&&t<h)return{layout:"[band][row][column]",bands:t,height:n,width:h};if(h<t&&h<n)return{layout:"[row][column][band]",bands:h,height:t,width:n}}}}},876:t=>{function i(t){try{t[Symbol.iterator]=function(){return this}}catch(t){}}function s(t){t["@@iterator"]=function(){return this}}function n(t){const n={next:t};return i(n),s(n),n}function e(t){try{return t.constructor.name.endsWith("Array")}catch{return!1}}function h(t){try{return"function"==typeof t.next}catch{return!1}}function a(t){try{return"@@iterator"in t}catch{return!1}}function o(t){try{return Symbol.iterator in t.constructor.prototype}catch{return!1}}function r(t){try{return Symbol.iterator in t&&"function"==typeof t.next&&!1===t.propertyIsEnumerable("next")}catch{return!1}}function d(t){const i=t["@@iterator"];return h(i)?i:"function"==typeof i?i():void 0}function v(t){let i=0,s=t.length;return n((()=>i++<s?{value:t[i],done:!1}:{done:!0}))}function u(t){if(r(t))return t;if(o(t))return t[Symbol.iterator]();if(h(t))return n(t.next);if(a(t))return d(t);if("string"==typeof t||e(t))return v(t);throw"[iter-fun] unable to determine iterator"}t.exports={addSymbolIterator:i,addSymbolIteratorFallback:s,isIterator:r,isArray:e,hasNext:h,hasSymbolIterator:o,hasIterator:a,getIterator:d,createIterator:v,getOrCreateIterator:u,wrapNextFunction:n,zip:function(t){return t=t.map(u),n((function(){const i=t.map((t=>t.next()));return i.every((({done:t})=>t))?{done:!0}:{done:!1,value:i.map((({value:t})=>t))}}))}}},998:(t,i,s)=>{const n=s(94),e=s(883);t.exports=function(t,i={}){let s,h,a,o,r;a=t.data?t.data:t.pixels?t.pixels:t,t.height?s=t.height:a.height?s=a.height:i.height&&(s=i.height),t.width?h=t.width:a.width?h=a.width:i.width&&(h=i.width),t.layout?r=t.layout:i.layout&&(r=i.layout);const d=n({data:a,height:s,width:h});if(o||(o=d.bands),s||(s=d.height),h||(h=d.width),r||(r=d.layout),!s+!h+!o>=2)throw new Error("[to-image-data] unable to determine image layout without more information. please pass in an object with a height and/or width property");const v=new Uint8ClampedArray(4*s*h).fill(255),u=e.prepareSelect({data:a,layout:r,sizes:{band:o,row:s,column:h}}),c=e.prepareUpdate({data:v,layout:"[row,column,band]",sizes:{band:4,row:s,column:h}});for(let t=0;t<o;t++)for(let i=0;i<s;i++)for(let s=0;s<h;s++){const n={band:t,row:i,column:s},{value:e}=u({point:n});c({point:n,value:e})}let l;if("undefined"!=typeof ImageData)try{l=new ImageData(v,h,s)}catch(t){}return l||(l={data:v,width:h,height:s}),l}},890:t=>{t.exports={1:function({point:t}){const i=this.data,s=t[this.d0v0];return{parent:i,index:s,value:i[s]}},2:function({point:t}){const i=this.data,s=this.m0v0*t[this.d0v0]+this.m0v1*t[this.d0v1];return{parent:i,index:s,value:i[s]}},3:function({point:t}){const i=this.data,s=this.m0v0*t[this.d0v0]+this.m0v1*t[this.d0v1]+this.m0v2*t[this.d0v2];return{parent:i,index:s,value:i[s]}},4:function({point:t}){const i=this.data,s=this.m0v0*t[this.d0v0]+this.m0v1*t[this.d0v1]+this.m0v2*t[this.d0v2]+this.m0v3*t[this.d0v3];return{parent:i,index:s,value:i[s]}},5:function({point:t}){const i=this.data,s=this.m0v0*t[this.d0v0]+this.m0v1*t[this.d0v1]+this.m0v2*t[this.d0v2]+this.m0v3*t[this.d0v3]+this.m0v4*t[this.d0v4];return{parent:i,index:s,value:i[s]}},"1,1":function({point:t}){const i=this.data[t[this.d0v0]],s=t[this.d1v0];return{parent:i,index:s,value:i[s]}},"1,2":function({point:t}){const i=this.data[t[this.d0v0]],s=this.m1v0*t[this.d1v0]+this.m1v1*t[this.d1v1];return{parent:i,index:s,value:i[s]}},"1,3":function({point:t}){const i=this.data[t[this.d0v0]],s=this.m1v0*t[this.d1v0]+this.m1v1*t[this.d1v1]+this.m1v2*t[this.d1v2];return{parent:i,index:s,value:i[s]}},"1,4":function({point:t}){const i=this.data[t[this.d0v0]],s=this.m1v0*t[this.d1v0]+this.m1v1*t[this.d1v1]+this.m1v2*t[this.d1v2]+this.m1v3*t[this.d1v3];return{parent:i,index:s,value:i[s]}},"1,5":function({point:t}){const i=this.data[t[this.d0v0]],s=this.m1v0*t[this.d1v0]+this.m1v1*t[this.d1v1]+this.m1v2*t[this.d1v2]+this.m1v3*t[this.d1v3]+this.m1v4*t[this.d1v4];return{parent:i,index:s,value:i[s]}},"1,1,1":function({point:t}){const i=this.data[t[this.d0v0]][t[this.d1v0]],s=t[this.d2v0];return{parent:i,index:s,value:i[s]}},"1,1,2":function({point:t}){const i=this.data[t[this.d0v0]][t[this.d1v0]],s=this.m2v0*t[this.d2v0]+this.m2v1*t[this.d2v1];return{parent:i,index:s,value:i[s]}},"1,1,3":function({point:t}){const i=this.data[t[this.d0v0]][t[this.d1v0]],s=this.m2v0*t[this.d2v0]+this.m2v1*t[this.d2v1]+this.m2v2*t[this.d2v2];return{parent:i,index:s,value:i[s]}},"1,1,4":function({point:t}){const i=this.data[t[this.d0v0]][t[this.d1v0]],s=this.m2v0*t[this.d2v0]+this.m2v1*t[this.d2v1]+this.m2v2*t[this.d2v2]+this.m2v3*t[this.d2v3];return{parent:i,index:s,value:i[s]}},"1,1,5":function({point:t}){const i=this.data[t[this.d0v0]][t[this.d1v0]],s=this.m2v0*t[this.d2v0]+this.m2v1*t[this.d2v1]+this.m2v2*t[this.d2v2]+this.m2v3*t[this.d2v3]+this.m2v4*t[this.d2v4];return{parent:i,index:s,value:i[s]}},"1,1,1,1":function({point:t}){const i=this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]],s=t[this.d3v0];return{parent:i,index:s,value:i[s]}},"1,1,1,2":function({point:t}){const i=this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]],s=this.m3v0*t[this.d3v0]+this.m3v1*t[this.d3v1];return{parent:i,index:s,value:i[s]}},"1,1,1,3":function({point:t}){const i=this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]],s=this.m3v0*t[this.d3v0]+this.m3v1*t[this.d3v1]+this.m3v2*t[this.d3v2];return{parent:i,index:s,value:i[s]}},"1,1,1,4":function({point:t}){const i=this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]],s=this.m3v0*t[this.d3v0]+this.m3v1*t[this.d3v1]+this.m3v2*t[this.d3v2]+this.m3v3*t[this.d3v3];return{parent:i,index:s,value:i[s]}},"1,1,1,5":function({point:t}){const i=this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]],s=this.m3v0*t[this.d3v0]+this.m3v1*t[this.d3v1]+this.m3v2*t[this.d3v2]+this.m3v3*t[this.d3v3]+this.m3v4*t[this.d3v4];return{parent:i,index:s,value:i[s]}},"1,1,1,1,1":function({point:t}){const i=this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]][t[this.d3v0]],s=t[this.d4v0];return{parent:i,index:s,value:i[s]}},"1,1,1,1,2":function({point:t}){const i=this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]][t[this.d3v0]],s=this.m4v0*t[this.d4v0]+this.m4v1*t[this.d4v1];return{parent:i,index:s,value:i[s]}},"1,1,1,1,3":function({point:t}){const i=this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]][t[this.d3v0]],s=this.m4v0*t[this.d4v0]+this.m4v1*t[this.d4v1]+this.m4v2*t[this.d4v2];return{parent:i,index:s,value:i[s]}},"1,1,1,1,4":function({point:t}){const i=this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]][t[this.d3v0]],s=this.m4v0*t[this.d4v0]+this.m4v1*t[this.d4v1]+this.m4v2*t[this.d4v2]+this.m4v3*t[this.d4v3];return{parent:i,index:s,value:i[s]}},"1,1,1,1,5":function({point:t}){const i=this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]][t[this.d3v0]],s=this.m4v0*t[this.d4v0]+this.m4v1*t[this.d4v1]+this.m4v2*t[this.d4v2]+this.m4v3*t[this.d4v3]+this.m4v4*t[this.d4v4];return{parent:i,index:s,value:i[s]}}}},588:t=>{t.exports={1:function({point:t,value:i}){this.data[t[this.d0v0]]=i},2:function({point:t,value:i}){this.data[this.m0v0*t[this.d0v0]+this.m0v1*t[this.d0v1]]=i},3:function({point:t,value:i}){this.data[this.m0v0*t[this.d0v0]+this.m0v1*t[this.d0v1]+this.m0v2*t[this.d0v2]]=i},4:function({point:t,value:i}){this.data[this.m0v0*t[this.d0v0]+this.m0v1*t[this.d0v1]+this.m0v2*t[this.d0v2]+this.m0v3*t[this.d0v3]]=i},5:function({point:t,value:i}){this.data[this.m0v0*t[this.d0v0]+this.m0v1*t[this.d0v1]+this.m0v2*t[this.d0v2]+this.m0v3*t[this.d0v3]+this.m0v4*t[this.d0v4]]=i},"1,1":function({point:t,value:i}){this.data[t[this.d0v0]][t[this.d1v0]]=i},"1,2":function({point:t,value:i}){this.data[t[this.d0v0]][this.m1v0*t[this.d1v0]+this.m1v1*t[this.d1v1]]=i},"1,3":function({point:t,value:i}){this.data[t[this.d0v0]][this.m1v0*t[this.d1v0]+this.m1v1*t[this.d1v1]+this.m1v2*t[this.d1v2]]=i},"1,4":function({point:t,value:i}){this.data[t[this.d0v0]][this.m1v0*t[this.d1v0]+this.m1v1*t[this.d1v1]+this.m1v2*t[this.d1v2]+this.m1v3*t[this.d1v3]]=i},"1,5":function({point:t,value:i}){this.data[t[this.d0v0]][this.m1v0*t[this.d1v0]+this.m1v1*t[this.d1v1]+this.m1v2*t[this.d1v2]+this.m1v3*t[this.d1v3]+this.m1v4*t[this.d1v4]]=i},"1,1,1":function({point:t,value:i}){this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]]=i},"1,1,2":function({point:t,value:i}){this.data[t[this.d0v0]][t[this.d1v0]][this.m2v0*t[this.d2v0]+this.m2v1*t[this.d2v1]]=i},"1,1,3":function({point:t,value:i}){this.data[t[this.d0v0]][t[this.d1v0]][this.m2v0*t[this.d2v0]+this.m2v1*t[this.d2v1]+this.m2v2*t[this.d2v2]]=i},"1,1,4":function({point:t,value:i}){this.data[t[this.d0v0]][t[this.d1v0]][this.m2v0*t[this.d2v0]+this.m2v1*t[this.d2v1]+this.m2v2*t[this.d2v2]+this.m2v3*t[this.d2v3]]=i},"1,1,5":function({point:t,value:i}){this.data[t[this.d0v0]][t[this.d1v0]][this.m2v0*t[this.d2v0]+this.m2v1*t[this.d2v1]+this.m2v2*t[this.d2v2]+this.m2v3*t[this.d2v3]+this.m2v4*t[this.d2v4]]=i},"1,1,1,1":function({point:t,value:i}){this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]][t[this.d3v0]]=i},"1,1,1,2":function({point:t,value:i}){this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]][this.m3v0*t[this.d3v0]+this.m3v1*t[this.d3v1]]=i},"1,1,1,3":function({point:t,value:i}){this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]][this.m3v0*t[this.d3v0]+this.m3v1*t[this.d3v1]+this.m3v2*t[this.d3v2]]=i},"1,1,1,4":function({point:t,value:i}){this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]][this.m3v0*t[this.d3v0]+this.m3v1*t[this.d3v1]+this.m3v2*t[this.d3v2]+this.m3v3*t[this.d3v3]]=i},"1,1,1,5":function({point:t,value:i}){this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]][this.m3v0*t[this.d3v0]+this.m3v1*t[this.d3v1]+this.m3v2*t[this.d3v2]+this.m3v3*t[this.d3v3]+this.m3v4*t[this.d3v4]]=i},"1,1,1,1,1":function({point:t,value:i}){this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]][t[this.d3v0]][t[this.d4v0]]=i},"1,1,1,1,2":function({point:t,value:i}){this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]][t[this.d3v0]][this.m4v0*t[this.d4v0]+this.m4v1*t[this.d4v1]]=i},"1,1,1,1,3":function({point:t,value:i}){this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]][t[this.d3v0]][this.m4v0*t[this.d4v0]+this.m4v1*t[this.d4v1]+this.m4v2*t[this.d4v2]]=i},"1,1,1,1,4":function({point:t,value:i}){this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]][t[this.d3v0]][this.m4v0*t[this.d4v0]+this.m4v1*t[this.d4v1]+this.m4v2*t[this.d4v2]+this.m4v3*t[this.d4v3]]=i},"1,1,1,1,5":function({point:t,value:i}){this.data[t[this.d0v0]][t[this.d1v0]][t[this.d2v0]][t[this.d3v0]][this.m4v0*t[this.d4v0]+this.m4v1*t[this.d4v1]+this.m4v2*t[this.d4v2]+this.m4v3*t[this.d4v3]+this.m4v4*t[this.d4v4]]=i}}},883:(t,i,s)=>{const n={},{wrapNextFunction:e}=s(876),h=s(890),a=s(588),o=t=>t.match(/\[[^\]]+\]/g),r=t=>t.startsWith("[")&&t.endsWith("]")?t.substring(1,t.length-1):t,d=t=>t.startsWith("(")&&t.endsWith(")")?t.substring(1,t.length-1):t,v=t=>t.match(/(\(.*?\)|[^\(,\s]+)(?=\s*,|\s*$)/g),u=t=>{t=r(t),t=d(t);const i=v(t);return 1===i.length?{type:"Vector",dim:i[0]}:{type:"Matrix",parts:i.map(u)}};function c(t){const i=t.match(/[^ A-Za-z,\[\]]/g);if(i)throw new Error("The following invalid characters were used: "+i.map((t=>`"${t}"`)).join(", "));return!0}function l(t,{useLayoutCache:i=!0}={useLayoutCache:!0}){if(i&&t in n)return n[t];c(t);const s=o(t).map(u),e={type:"Layout",summary:s.map((t=>"Matrix"===t.type?t.parts.length:1)),dims:s};return i&&(n[t]=e),e}function m({useLayoutCache:t=!0,data:i,layout:s,sizes:n={}}){"string"==typeof s&&(s=l(s,{useLayoutCache:t}));const{dims:e}=s,h=e.length,o=p({useLayoutCache:t,layout:s,sizes:n}),r=h-1,d=s.summary.toString();if(d in a){const t={data:i};return s.dims.map(((i,s)=>{"Vector"===i.type?t[`d${s}v0`]=i.dim:"Matrix"===i.type&&i.parts.forEach(((i,n)=>{t[`d${s}v${n}`]=i.dim,t[`m${s}v${n}`]=o[i.dim]}))})),a[d].bind(t)}return({point:t,value:s})=>{let n=i;for(let i=0;i<h;i++){const h=i===r,a=e[i];let d;d="Vector"===a.type?t[a.dim]:a.parts.reduce(((i,{dim:s})=>i+o[s]*t[s]),0),h?n[d]=s:n=n[d]}}}function f({rect:t={}}){if(t)for(let i in t){const s=t[i];if(2!==s.length)throw new Error("[xdim] uh oh. invalid hyper-rectangle");const[n,e]=s;if(n>e)throw new Error(`[xdim] uh oh. invalid range for "${i}". Start of ${n} can't be greater than end of ${e}.`);if(n<0)throw new Error(`[xdim] uh oh. invalid hyper-rectangle with start ${n}`)}}function p({useLayoutCache:t=!0,layout:i,sizes:s}){"string"==typeof i&&(i=l(i,{useLayoutCache:t}));const{dims:n}=i,e=n.length;let h={};for(let t=0;t<e;t++){const i=n[t];if("Vector"===i.type)h[i.dim]=1;else{const{parts:t}=i;let n=1;for(let i=t.length-1;i>=0;i--){const{dim:e}=t[i];h[e]=n,n*=s[t[i].dim]}}}return h}function y({useLayoutCache:t=!0,data:i,layout:s,point:n,sizes:e={}}){let h,a;"string"==typeof s&&(s=l(s,{useLayoutCache:t}));let o=i;const{dims:r}=s,d=r.length;for(let t=0;t<d;t++){const i=r[t];if("Vector"===i.type){const t=n[i.dim];h=o,a=t,o=o[t]}else{const{parts:t}=i;let s=0,r=1;for(let i=t.length-1;i>=0;i--){const h=t[i];if("Vector"===h.type){const{dim:t}=h;if(s+=r*n[t],i>0){if(!(t in e))throw new Error(`you cannot calculate the location without knowing the size of the "${t}" dimension.`);r*=e[t]}}}h=o,a=s,o=o[s]}}return{index:a,value:o,parent:h}}function g({arr:t,fill:i,lens:s}){if(0===s.length)return t;const n=s[0];if(0===s.length)for(let s=0;s<t.length;s++)t[s]=new Array(n).fill(i);else for(let e=0;e<t.length;e++){const h=new Array(n).fill(i);t[e]=h,g({arr:h,lens:s.slice(1)})}return t}function w({fill:t,shape:i}){const s=i[0];return g({arr:new Array(s).fill(t),fill:t,lens:i.slice(1)})}function x({fill:t,layout:i,useLayoutCache:s=!0,sizes:n}){"string"==typeof i&&(i=l(i,{useLayoutCache:s}));const e=i.dims.map((t=>"Vector"===t.type?n[t.dim]:"Matrix"===t.type?t.parts.reduce(((t,i)=>{if(console.log("part.dim:",i.dim),!(i.dim in n))throw new Error(`[xdim] could not find "${i.dim}" in sizes: { ${Object.keys(n).join(", ")} }`);return t*n[i.dim]}),1):void 0));return{data:w({fill:t,shape:e}),shape:e}}function b({start:t=0,end:i=100}){let s=t-1;return i+=1,e((function(){return s++,s===i?{done:!0}:{done:!1,value:s}}))}function C({order:t,sizes:i,rect:s={}}){const n=Array.isArray(t)?t:Object.keys(i).sort(((t,s)=>i[t]-i[s])),h=new Array(n.length),a={};for(let t=0;t<n.length-1;t++){const e=n[t],[o,r]=s[e]||[0,i[e]-1];h[t]=b({start:o+1,end:r}),a[e]=o}const o=n[n.length-1],[r,d]=s[o]||[0,i[o]-1];return h[h.length-1]=b({start:r,end:d}),a[o]=r-1,e((function(){for(let t=h.length-1;t>=0;t--){const{value:e,done:o}=h[t].next();if(!o){for(let e=t+1;e<h.length;e++){const t=n[e],[o,r]=s[t]||[0,i[t]-1];h[e]=b({start:o+1,end:r}),a[t]=o}return a[n[t]]=e,{value:a,done:!1}}if(0===t)return{done:!0}}}))}t.exports={checkValidity:c,createMatrix:w,iterClip:function({data:t,layout:i,order:s,rect:n={},sizes:h={},useLayoutCache:a=!0}){if(!t)throw new Error("[xdim] must specify data");if(!i)throw new Error("[xdim] must specify layout");const o=C({order:s,sizes:h,rect:n});return e((function(){const{value:s,done:n}=o.next();if(n)return{done:!0};{const{value:n}=y({data:t,layout:i,point:s,sizes:h,useLayoutCache:a});return{done:!1,value:n}}}))},iterRange:b,iterPoints:C,matchSequences:v,parse:l,parseDimensions:function(t){const i={},s=/[A-Za-z]+/g;let n;for(;null!==(n=s.exec(t));){const[t]=n;i[t]={name:t}}return i},parseSequences:u,parseVectors:o,prepareData:x,prepareSelect:function({useLayoutCache:t=!0,data:i,layout:s,sizes:n={}}){"string"==typeof s&&(s=l(s,{useLayoutCache:t}));const{dims:e}=s,a=e.length,o=p({useLayoutCache:t,layout:s,sizes:n}),r=a-1,d=s.summary.toString();if(d in h){const t={data:i};return s.dims.map(((i,s)=>{"Vector"===i.type?t[`d${s}v0`]=i.dim:"Matrix"===i.type&&i.parts.forEach(((i,n)=>{t[`d${s}v${n}`]=i.dim,t[`m${s}v${n}`]=o[i.dim]}))})),h[d].bind(t)}return({point:t})=>{let s=i;for(let i=0;i<a;i++){const n=i===r,h=e[i];let a;if(a="Vector"===h.type?t[h.dim]:h.parts.reduce(((i,{dim:s})=>i+o[s]*t[s]),0),n)return{index:a,parent:s,value:s[a]};s=s[a]}}},prepareUpdate:m,removeBraces:r,removeParentheses:d,select:y,transform:function({data:t,fill:i,from:s,to:n,sizes:e,useLayoutCache:h=!0}){"string"==typeof s&&(s=l(s,{useLayoutCache:h})),"string"==typeof n&&(n=l(n,{useLayoutCache:h}));const{data:a}=x({fill:i,layout:n,sizes:e}),o=m({useLayoutCache:h,data:a,layout:n,sizes:e}),r=C({sizes:e});for(point of r){const{value:i}=y({data:t,layout:s,point,sizes:e});o({point,value:i})}return{data:a}},update:function({useLayoutCache:t=!0,data:i,layout:s,point:n,sizes:e={},value:h}){"string"==typeof s&&(s=l(s,{useLayoutCache:t}));const{dims:a}=s;for(let t=0;t<a.length;t++){const s=t===a.length-1,o=a[t];let r;if("Vector"===o.type)r=n[o.dim];else{const{parts:t}=o;r=0;let i=1;for(let s=t.length-1;s>=0;s--){const h=t[s],{dim:a}=h;if(r+=i*n[a],s>0){if(!(a in e))throw new Error(`you cannot calculate the location without knowing the size of the "${a}" dimension.`);i*=e[a]}}}s?i[r]=h:i=i[r]}},clip:function({useLayoutCache:t=!0,data:i,layout:s,rect:n,sizes:e={},flat:h=!1,validate:a=!0}){a&&f({rect:n}),"string"==typeof s&&(s=l(s,{useLayoutCache:t}));let o=[i];if(s.dims.forEach((t=>{let i=[];o.forEach((s=>{if("Vector"===t.type){const[e,h]=n[t.dim];i=i.concat(s.slice(e,h+1))}else{const{parts:h}=t;let a=[0],o=1;for(let t=h.length-1;t>=0;t--){const i=h[t],{dim:s}=i,[r,d]=n[s],v=[];for(let t=r;t<=d;t++)a.forEach((i=>{v.push(i+o*t)}));a=v,o*=e[s]}a.forEach((t=>{i.push(s[t])}))}})),o=i})),h)return{data:o};const r=Object.fromEntries(Object.entries(n).map((([t,[i,s]])=>[t,s-i+1]))),{data:d}=x({layout:s,sizes:r}),v=s.dims.length,u=(t,i)=>{if(i===v)for(let i=0;i<t.length;i++)t[i]=o.shift();else t.forEach((t=>u(t,i+1)))};return u(d,1),{data:d}},validateRect:f}},227:(t,i,s)=>{var n;const e=s(998);async function h(t){return function(t){const i=document.createElement("CANVAS");return i.height=t.height,i.width=t.width,i.getContext("2d").putImageData(t,0,0),i}(e(t))}t.exports=h,t.exports.default=h,void 0===(n=function(){return h}.call(i,s,i,t))||(t.exports=n),"object"==typeof window&&(window.toCanvas=h),"object"==typeof self&&(self.toCanvas=h)}},i={};!function s(n){var e=i[n];if(void 0!==e)return e.exports;var h=i[n]={exports:{}};return t[n](h,h.exports,s),h.exports}(227)})();