@sketch-hq/sketch-web-renderer 3.2.1 → 3.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/dist/index.js +1 -1
- package/dist/module-debug.wasm +0 -0
- package/dist/module-release.wasm +0 -0
- package/dist/static/js/web-renderer-8addc65e32c7f00a9bf5.chunk.js +1 -0
- package/dist/static/js/web-renderer-8cbabe889ae0a40da834.chunk.js +1 -0
- package/dist/static/js/web-renderer-dcd9a388dd98f28adced.chunk.js +1 -0
- package/dist/ts/Manager.d.ts +21 -11
- package/dist/ts/Manager.d.ts.map +1 -1
- package/dist/ts/SketchWeb.d.ts +25 -15
- package/dist/ts/SketchWeb.d.ts.map +1 -1
- package/dist/ts/react/SketchWebProvider.d.ts.map +1 -1
- package/dist/ts/react/contexts.d.ts +5 -1
- package/dist/ts/react/contexts.d.ts.map +1 -1
- package/dist/ts/react/hooks/actions.d.ts +4 -1
- package/dist/ts/react/hooks/actions.d.ts.map +1 -1
- package/dist/ts/react/hooks/state.d.ts +1 -1
- package/dist/ts/react/hooks/state.d.ts.map +1 -1
- package/dist/ts/react/hooks/useEvent.d.ts +1 -1
- package/dist/ts/react/hooks/useEvent.d.ts.map +1 -1
- package/dist/ts/react/reducer.d.ts.map +1 -1
- package/dist/ts/react/types.d.ts +4 -15
- package/dist/ts/react/types.d.ts.map +1 -1
- package/dist/ts/types/CSSCursor.d.ts +12 -0
- package/dist/ts/types/CSSCursor.d.ts.map +1 -0
- package/dist/ts/types/Events.d.ts +8 -4
- package/dist/ts/types/Events.d.ts.map +1 -1
- package/dist/ts/types/JSBridge.d.ts +8 -0
- package/dist/ts/types/JSBridge.d.ts.map +1 -1
- package/dist/ts/types/PointerInfo.d.ts +11 -0
- package/dist/ts/types/PointerInfo.d.ts.map +1 -0
- package/dist/ts/types/WASM.d.ts +74 -38
- package/dist/ts/types/WASM.d.ts.map +1 -1
- package/dist/ts/utils/GestureManager/GestureManager.d.ts +23 -43
- package/dist/ts/utils/GestureManager/GestureManager.d.ts.map +1 -1
- package/dist/ts/utils/misc.d.ts +0 -1
- package/dist/ts/utils/misc.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/static/js/web-renderer-17fd55cdb979ed59dbc9.chunk.js +0 -1
- package/dist/static/js/web-renderer-b584c7152f956c9cbea5.chunk.js +0 -1
- package/dist/static/js/web-renderer-bc8f1d99872a3ed28cf9.chunk.js +0 -1
- package/dist/ts/utils/CameraMoveTracker/CameraMoveTracker.d.ts +0 -48
- package/dist/ts/utils/CameraMoveTracker/CameraMoveTracker.d.ts.map +0 -1
- package/dist/ts/utils/CameraMoveTracker/CameraMoveTracker.test.d.ts +0 -2
- package/dist/ts/utils/CameraMoveTracker/CameraMoveTracker.test.d.ts.map +0 -1
- package/dist/ts/utils/CameraMoveTracker/index.d.ts +0 -2
- package/dist/ts/utils/CameraMoveTracker/index.d.ts.map +0 -1
- package/dist/ts/utils/GestureManager/GestureManager.test.d.ts +0 -2
- package/dist/ts/utils/GestureManager/GestureManager.test.d.ts.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(self,(function(){return(()=>{"use strict";var e,t,n={},r={};function o(e){var t=r[e];if(void 0!==t)return t.exports;var i=r[e]={exports:{}};return n[e](i,i.exports,o),i.exports}o.m=n,t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,o.t=function(n,r){if(1&r&&(n=this(n)),8&r)return n;if("object"==typeof n&&n){if(4&r&&n.__esModule)return n;if(16&r&&"function"==typeof n.then)return n}var i=Object.create(null);o.r(i);var a={};e=e||[null,t({}),t([]),t(t)];for(var s=2&r&&n;"object"==typeof s&&!~e.indexOf(s);s=t(s))Object.getOwnPropertyNames(s).forEach((e=>a[e]=()=>n[e]));return a.default=()=>n,o.d(i,a),i},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.f={},o.e=e=>Promise.all(Object.keys(o.f).reduce(((t,n)=>(o.f[n](e,t),t)),[])),o.u=e=>"static/js/web-renderer-"+{610:"dcd9a388dd98f28adced",706:"8addc65e32c7f00a9bf5"}[e]+".chunk.js",o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.p="/",(()=>{var e={667:1};o.f.i=(t,n)=>{e[t]||importScripts(o.p+o.u(t))};var t=self.webpackChunk_sketch_hq_sketch_web_renderer=self.webpackChunk_sketch_hq_sketch_web_renderer||[],n=t.push.bind(t);t.push=t=>{var[r,i,a]=t;for(var s in i)o.o(i,s)&&(o.m[s]=i[s]);for(a&&a(o);r.length;)e[r.pop()]=1;n(t)}})();const i={delayedDraw:!0,offscreenCanvas:!1,useDirtyRectsRendering:!0,safariWebGL2:!1,pageBoundariesLimit:!1};var a=/(iPhone|Macintosh|iPad)(.*)(Version)\/(0|[1-9]\d*)\.(0|[1-9]\d*)\.?(0|[1-9]\d*)?/;function s(e){for(var t=e.size(),n=[],r=0;r<t;++r){var o=e.get(r);n.push(o)}return n}var c=function(){function e(){this.listeners={}}return e.prototype.on=function(e,t){var n,r;this.listeners[e]=null!==(n=this.listeners[e])&&void 0!==n?n:new Set,null===(r=this.listeners[e])||void 0===r||r.add(t)},e.prototype.off=function(e,t){var n;null===(n=this.listeners[e])||void 0===n||n.delete(t)},e.prototype.emit=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var r=this.listeners[e];(null==r?void 0:r.size)&&r.forEach((function(e){Promise.resolve().then((function(){e.apply(void 0,t)}))}))},e}(),u=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var r=Array(e),o=0;for(t=0;t<n;t++)for(var i=arguments[t],a=0,s=i.length;a<s;a++,o++)r[o]=i[a];return r};const l=new(function(){function e(){this.active=!0}return e.prototype.debug=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];this.active&&console.debug.apply(console,u(["[SketchWeb] [Debug]"],e))},e.prototype.warning=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];this.active&&console.warn.apply(console,u(["[SketchWeb] [Warn]"],e))},e.prototype.error=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];console.error.apply(console,u(["[SketchWeb] [Error]"],e))},e}());var h,d,f=function(){function e(e){this.label=e,this.startTime=performance.now(),this.startTimestamp=Date.now(),l.debug("[Performance] Start: "+this.label)}return e.prototype.measure=function(){return{duration:performance.now()-this.startTime,end:Date.now(),start:this.startTimestamp,id:this.label}},e.prototype.printMeasurement=function(){var e=this.measure().duration;if(e<1e3){var t=e.toFixed(2);l.debug("[Performance] End: "+this.label+" -> "+t+" ms")}else{var n=(e/1e3).toFixed(2);l.debug("[Performance] End: "+this.label+" -> "+n+" s")}},e}(),p=(h=function(e,t){return(h=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)},function(e,t){function n(){this.constructor=e}h(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),m=function(e){function t(n,r,o){var i=this.constructor,a=e.call(this,"("+n+") "+r)||this;return a.code=n,a.cause=o,a.name=t.name,Object.setPrototypeOf(a,i.prototype),a}return p(t,e),t}(Error);function g(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{c(r.next(e))}catch(e){i(e)}}function s(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}c((r=r.apply(e,t||[])).next())}))}!function(e){e.debug="debug",e.release="release"}(d||(d={}));const v=["geforce 320m","geforce 8600","geforce 8600m gt","geforce 8800 gs","geforce 8800 gt","geforce 9400","geforce 9400m g","geforce 9400m","geforce 9600m gt","geforce 9600m","geforce fx go5200","geforce gt 120","geforce gt 130","geforce gt 330m","geforce gtx 285","google swiftshader","intel g41","intel g45","intel gma 4500mhd","intel gma x3100","intel hd 3000","intel q45","legacy","mali-2","mali-3","mali-4","quadro fx 1500","quadro fx 4","quadro fx 5","radeon hd 2400","radeon hd 2600","radeon hd 4670","radeon hd 4850","radeon hd 4870","radeon hd 5670","radeon hd 5750","radeon hd 6290","radeon hd 6300","radeon hd 6310","radeon hd 6320","radeon hd 6490m","radeon hd 6630m","radeon hd 6750m","radeon hd 6770m","radeon hd 6970m","sgx 543","sgx543"];function b(e){return e.toLowerCase().replace(/^angle ?\((.+)\)*$/,"$1").replace(/\s(\d{1,2}gb|direct3d.+$)|\(r\)| \([^)]+\)$/g,"")}const y="undefined"==typeof window,w=(()=>{if(y)return;const{userAgent:e,platform:t,maxTouchPoints:n}=window.navigator,r=/(iphone|ipod|ipad)/i.test(e),o="iPad"===t||"MacIntel"===t&&n>0&&!window.MSStream;return{isIpad:o,isMobile:/android/i.test(e)||r||o,isSafari12:/Version\/12.+Safari/.test(e)}})(),W=[],P=[];function E(e,t){if(e===t)return 0;const n=e;e.length>t.length&&(e=t,t=n);let r=e.length,o=t.length;for(;r>0&&e.charCodeAt(~-r)===t.charCodeAt(~-o);)r--,o--;let i,a=0;for(;a<r&&e.charCodeAt(a)===t.charCodeAt(a);)a++;if(r-=a,o-=a,0===r)return o;let s,c,u=0,l=0,h=0;for(;l<r;)P[l]=e.charCodeAt(a+l),W[l]=++l;for(;h<o;)for(i=t.charCodeAt(a+h),s=h++,u=h,l=0;l<r;l++)c=i===P[l]?s:s+1,s=W[l],u=W[l]=s>u?c>u?u+1:c:c>s?s+1:c;return u}function C(e){return null!=e}class S extends Error{constructor(e){super(e),Object.setPrototypeOf(this,new.target.prototype)}}const x=({mobileTiers:e=[0,15,30,60],desktopTiers:t=[0,15,30,60],override:n={},glContext:r,failIfMajorPerformanceCaveat:o=!1,benchmarksURL:i="https://unpkg.com/detect-gpu@4.0.37/dist/benchmarks"}={})=>g(void 0,void 0,void 0,(function*(){const a={};if(y)return{tier:0,type:"SSR"};const{isIpad:s=!!(null==w?void 0:w.isIpad),isMobile:c=!!(null==w?void 0:w.isMobile),screenSize:u=window.screen,loadBenchmarks:l=(e=>g(void 0,void 0,void 0,(function*(){const t=yield fetch(`${i}/${e}`).then((e=>e.json()));if(parseInt(t.shift().split(".")[0],10)<4)throw new S("Detect GPU benchmark data is out of date. Please update to version 4x");return t})))}=n;let{renderer:h}=n;const d=(e,t,n,r,o)=>({device:o,fps:r,gpu:n,isMobile:c,tier:e,type:t});let f,p="";if(h)h=b(h),f=[h];else{const e=r||function(e,t=!1){const n={alpha:!1,antialias:!1,depth:!1,failIfMajorPerformanceCaveat:t,powerPreference:"high-performance",stencil:!1};e&&delete n.powerPreference;const r=window.document.createElement("canvas"),o=r.getContext("webgl",n)||r.getContext("experimental-webgl",n);return null!=o?o:void 0}(null==w?void 0:w.isSafari12,o);if(!e)return d(0,"WEBGL_UNSUPPORTED");const t=e.getExtension("WEBGL_debug_renderer_info");if(t&&(h=e.getParameter(t.UNMASKED_RENDERER_WEBGL)),!h)return d(1,"FALLBACK");p=h,h=b(h),f=function(e,t,n){return"apple gpu"===t?function(e,t,n){if(!n)return[t];const r=function(e){const t=e.createShader(35633),n=e.createShader(35632),r=e.createProgram();if(!(n&&t&&r))return;e.shaderSource(t,"\n precision highp float;\n attribute vec3 aPosition;\n varying float vvv;\n void main() {\n vvv = 0.31622776601683794;\n gl_Position = vec4(aPosition, 1.0);\n }\n "),e.shaderSource(n,"\n precision highp float;\n varying float vvv;\n void main() {\n vec4 enc = vec4(1.0, 255.0, 65025.0, 16581375.0) * vvv;\n enc = fract(enc);\n enc -= enc.yzww * vec4(1.0 / 255.0, 1.0 / 255.0, 1.0 / 255.0, 0.0);\n gl_FragColor = enc;\n }\n "),e.compileShader(t),e.compileShader(n),e.attachShader(r,t),e.attachShader(r,n),e.linkProgram(r),e.detachShader(r,t),e.detachShader(r,n),e.deleteShader(t),e.deleteShader(n),e.useProgram(r);const o=e.createBuffer();e.bindBuffer(34962,o),e.bufferData(34962,new Float32Array([-1,-1,0,3,-1,0,-1,3,0]),35044);const i=e.getAttribLocation(r,"aPosition");e.vertexAttribPointer(i,3,5126,!1,0,0),e.enableVertexAttribArray(i),e.clearColor(1,1,1,1),e.clear(16384),e.viewport(0,0,1,1),e.drawArrays(4,0,3);const a=new Uint8Array(4);return e.readPixels(0,0,1,1,6408,5121,a),e.deleteProgram(r),e.deleteBuffer(o),a.join("")}(e),o="801621810",i="8016218135",a="80162181161",s=(null==w?void 0:w.isIpad)?[["a7",a,12],["a8",i,15],["a8x",i,15],["a9",i,15],["a9x",i,15],["a10",i,15],["a10x",i,15],["a12",o,15],["a12x",o,15],["a12z",o,15],["a14",o,15],["m1",o,15]]:[["a7",a,12],["a8",i,12],["a9",i,15],["a10",i,15],["a11",o,15],["a12",o,15],["a13",o,15],["a14",o,15]];let c;return"80162181255"===r?c=s.filter((([,,e])=>e>=14)):(c=s.filter((([,e])=>e===r)),c.length||(c=s)),c.map((([e])=>`apple ${e} gpu`))}(e,t,n):[t]}(e,h,c)}const m=(yield Promise.all(f.map((function(e){var t;return g(this,void 0,void 0,(function*(){const n=(e=>{const t=c?["adreno","apple","mali-t","mali","nvidia","powervr"]:["intel","apple","amd","radeon","nvidia","geforce"];for(const n of t)if(e.includes(n))return n})(e);if(!n)return;const r=`${c?"m":"d"}-${n}${s?"-ipad":""}.json`,o=a[r]=null!==(t=a[r])&&void 0!==t?t:l(r);let i;try{i=yield o}catch(n){if(n instanceof S)throw n;return}const h=function(e){var t;const n=(e=e.replace(/\([^)]+\)/,"")).match(/\d+/)||e.match(/(\W|^)([A-Za-z]{1,3})(\W|$)/g);return null!==(t=null==n?void 0:n.join("").replace(/\W|amd/g,""))&&void 0!==t?t:""}(e);let d=i.filter((([,e])=>e===h));d.length||(d=i.filter((([t])=>t.includes(e))));const f=d.length;if(0===f)return;let p,[m,,,g]=f>1?d.map((t=>[t,E(e,t[0])])).sort((([,e],[,t])=>e-t))[0][0]:d[0],v=Number.MAX_VALUE;const{devicePixelRatio:b}=window,y=u.width*b*u.height*b;for(const e of g){const[t,n]=e,r=t*n,o=Math.abs(y-r);o<v&&(v=o,p=e)}if(!p)return;const[,,w,W]=p;return[v,w,m,W]}))})))).filter(C).sort((([e=Number.MAX_VALUE,t],[n=Number.MAX_VALUE,r])=>e===n?t-r:e-n));if(!m.length){const e=v.find((e=>h.includes(e)));return e?d(0,"BLOCKLISTED",e):d(1,"FALLBACK",`${h} (${p})`)}const[,W,P,x]=m[0];if(-1===W)return d(0,"BLOCKLISTED",P,W,x);const k=c?e:t;let L=0;for(let e=0;e<k.length;e++)W>=k[e]&&(L=e);return d(L,"BENCHMARK",P,W,x)}));var k=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),L=function(){return(L=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},M=function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{c(r.next(e))}catch(e){i(e)}}function s(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}c((r=r.apply(e,t||[])).next())}))},R=function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!((o=(o=a.trys).length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],r=0}finally{n=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}},A=(globalThis.indexedDB,function(e){function t(t){var n=t.canvas,r=t.locateFile,o=t.filePath,s=t.imagesURLFormat,c=t.imagesURLMap,u=t.backgroundColor,h=void 0===u?{r:1,g:1,b:1,a:1}:u,p=t.size,m=t.pixelRatio,g=t.mode,v=t.showTilesBorders,b=void 0!==v&&v,y=t.minimumZoomLevel,w=t.maximumZoomLevel,W=t.preserveDrawingBuffer,P=void 0!==W&&W,E=t.panBoundariesPadding,C=void 0===E?40:E,S=t.featureFlags,x=void 0===S?{}:S,k=e.call(this)||this;return k.status={type:"INIT"},k.handleWebGLContextLost=function(){k.setStatus({type:"WEBGL_CONTEXT_LOST"})},k.canvas=n,k.locateFile=r,k.filePath=o,k.imagesURLFormat=s,k.imagesURLMap=c,k.backgroundColor=h,k.size=p,k.pixelRatio=m,k.mode=g,k.showTilesBorders=b,k.currentWebGLVersion=function(e){if(void 0===e&&(e=window.navigator.userAgent),e.includes("Chrome/")||e.includes("Chromium/")||e.includes("Opera/")||e.includes("Firefox/"))return null;var t=e.match(a);if(!t)return null;var n=t[1];return"Macintosh"!==n&&"iPad"!==n&&"iPhone"!==n?null:{hardware:n,version:{major:parseInt(t[4])||0,minor:parseInt(t[5])||0,patch:parseInt(t[6])||0}}}()&&!i.safariWebGL2?1:"undefined"!=typeof WebGL2RenderingContext?2:1,k.zoomLevels={min:y,max:w},k.preserveDrawingBuffer=P,k.panBoundariesPadding=C,k.featureFlags=L(L({},i),x),l.active=g===d.debug,k.traceFirstPaint=new f("FirstPaint"),k}return k(t,e),t.prototype.collectAndEmitDeviceInfo=function(){return M(this,void 0,void 0,(function(){var e;return R(this,(function(t){switch(t.label){case 0:return[4,x()];case 1:return e=t.sent(),this.deviceInfo=L(L({},e),{hardwareConcurrency:navigator.hardwareConcurrency}),this.emit("deviceInfo",this.deviceInfo),[2]}}))}))},t.prototype.init=function(){return M(this,void 0,void 0,(function(){var e;return R(this,(function(t){switch(t.label){case 0:this.setStatus({type:"INIT"}),this.collectAndEmitDeviceInfo(),t.label=1;case 1:return t.trys.push([1,5,,6]),[4,this.initSketchWebWasm()];case 2:return t.sent(),[4,this.setFile(this.filePath)];case 3:return t.sent(),[4,this.preloadImages()];case 4:return t.sent(),[3,6];case 5:return e=t.sent(),[2,this.fail(e instanceof m?e:new m("ERROR","Unexpected exception initializing the web renderer",e))];case 6:return this.mode===d.debug&&(window.sketchWeb=this.sketchWebWasm,globalThis.PRFindCriteria=this.wasmModule.PRFindCriteria,globalThis.PRTimingFunction=this.wasmModule.PRTimingFunction),[2]}}))}))},t.prototype.preloadImages=function(){var e=this;return new Promise((function(t){var n;null===(n=e.sketchWebWasm)||void 0===n||n.preloadImages((function(){t()}))}))},t.prototype.startRendering=function(){this.traceInitialRender=new f("InitialRender"),this.setStatus({type:"DRAWING_FILE"}),this.sketchWebWasm.startRenderLoop()},t.prototype.createJSBridge=function(){var e=this;return{logDebug:function(e){l.debug("[C++] "+e)},logWarning:function(e){l.warning("[C++] "+e)},logError:function(e){l.error("[C++] "+e)},emitMetric:function(t,n,r,o){e.emit("metric",{id:t,start:n,end:r,duration:o})},resolveImageUrl:function(t){return e.imagesURLFormat?e.imagesURLFormat.replace(":imageId",t):e.imagesURLMap&&e.imagesURLMap[t]?e.imagesURLMap[t]:(l.warning("Not able to resolve the url for the image with UUID: "+t),"")},onDrawComplete:this.handleDrawComplete.bind(this),onAllImagesReady:function(){e.emit("allImagesReady")},onCameraMoveStart:function(){e.emit("cameraMoveStart")},onCameraMoveEnd:function(){e.emit("cameraMoveEnd")},onCameraZoomStart:function(){e.emit("cameraZoomStart")},onCameraZoomEnd:function(){e.emit("cameraZoomEnd")},onCameraZoomChange:function(t){e.emit("cameraZoomChange",t)},onCameraPanChange:function(){var t=e.getPan();e.emit("cameraPanChange",t.x,t.y)},onCursorChange:function(t){var n=e.prCursorTypeToCSSCursorMap[t.value];n?e.emit("cursorChange",n):l.warning("Unknown cursor type "+t.value)}}},t.prototype.downloadImages=function(){var e=this;return new Promise((function(t){var n,r=new f("ImagesDownload");null===(n=e.sketchWebWasm)||void 0===n||n.downloadImages((function(){r.printMeasurement(),e.emit("metric",r.measure()),l.debug("Images downloaded"),t()}))}))},t.prototype.initSketchWebWasm=function(){return M(this,void 0,void 0,(function(){var e,t,n,r,i,a,s,c,u=this;return R(this,(function(h){switch(h.label){case 0:return e=new f("WasmModuleDownload"),this.mode!==d.debug?[3,2]:[4,o.e(706).then(o.t.bind(o,706,23))];case 1:return t=h.sent(),[3,4];case 2:return[4,o.e(610).then(o.t.bind(o,610,23))];case 3:t=h.sent(),h.label=4;case 4:n=t.default,h.label=5;case 5:return h.trys.push([5,7,,8]),r=this,[4,n({FeatureFlags:this.featureFlags,currentWebGLVersion:this.currentWebGLVersion,locateFile:function(e){return u.locateFile.replace("{file}",e)},bridge:this.createJSBridge()})];case 6:return r.wasmModule=h.sent(),[3,8];case 7:throw i=h.sent(),new m("WASM_ERROR","An error occurred while trying to create the wasm module.",i);case 8:if(this.pointerTypeToWASMMap={unset:this.wasmModule.PRUserPointerType.Unset,mouse:this.wasmModule.PRUserPointerType.Mouse,touch:this.wasmModule.PRUserPointerType.Touch},this.prCursorTypeToCSSCursorMap=((c={})[this.wasmModule.PRCursorType.Auto.value]="auto",c[this.wasmModule.PRCursorType.Default.value]="default",c[this.wasmModule.PRCursorType.Pointer.value]="pointer",c[this.wasmModule.PRCursorType.Grab.value]="grab",c[this.wasmModule.PRCursorType.Grabbing.value]="grabbing",c),e.printMeasurement(),this.emit("metric",e.measure()),a={majorVersion:this.currentWebGLVersion,antialias:!1,alpha:!1,stencil:!1,depth:!1,powerPreference:"high-performance",preserveDrawingBuffer:this.preserveDrawingBuffer},l.debug("Using WebGL "+a.majorVersion),!(s=this.wasmModule.GL.createContext(this.canvas,a)))throw new m("WEBGL_ERROR","Unable to create WebGL context. WebGL might be unsupported, disabled, or this device is not able to run WebGL correctly.");this.webglCtxHandle=s;try{this.sketchWebWasm=this.wasmModule.SketchWeb.MakeGL(this.webglCtxHandle,this.canvas.width,this.size.height,this.pixelRatio,{showTilesBorders:this.showTilesBorders})}catch(e){throw new m("WASM_ERROR","An error occurred while trying to create the SketchWebWasm object.",e)}return this.userEventsCollectorWasm=this.sketchWebWasm.getUserEventsCollector(),this.sketchWebWasm.setBackgroundColor(this.backgroundColor.r,this.backgroundColor.g,this.backgroundColor.b,this.backgroundColor.a),this.sketchWebWasm.setZoomLevels(this.zoomLevels.min,this.zoomLevels.max),this.sketchWebWasm.setPanBoundariesPadding(this.panBoundariesPadding),this.canvas.addEventListener("webglcontextlost",this.handleWebGLContextLost),[2]}}))}))},t.prototype.setIsCameraLocked=function(e){var t;null===(t=this.sketchWebWasm)||void 0===t||t.setIsCameraLocked(e)},t.prototype.setBackgroundColor=function(e){var t;e.r===this.backgroundColor.r&&e.g===this.backgroundColor.g&&e.b===this.backgroundColor.b&&e.a===this.backgroundColor.a||(null===(t=this.sketchWebWasm)||void 0===t||t.setBackgroundColor(e.r,e.g,e.b,e.a),this.backgroundColor=e)},t.prototype.generateDocumentPNG=function(){return M(this,void 0,void 0,(function(){return R(this,(function(e){switch(e.label){case 0:return[4,this.downloadImages()];case 1:return e.sent(),[2,this.sketchWebWasm.generateDocumentPNG()]}}))}))},t.prototype.handleDrawComplete=function(){"DRAWING_FILE"===this.status.type&&(this.traceInitialRender.printMeasurement(),this.emit("metric",this.traceInitialRender.measure()),this.traceFirstPaint.printMeasurement(),this.emit("metric",this.traceFirstPaint.measure()),this.setStatus({type:"READY"}),this.downloadImages())},t.prototype.looseWebGLContext=function(){var e=this.wasmModule.GL.getContext(this.webglCtxHandle);if(e){var t=e.GLctx.getExtension("WEBGL_lose_context");t?t.loseContext():console.warn("Unable to retrieve WEBGL_lose_context extension")}else console.warn("Unable to loose context. WebGL rendering context not found")},t.prototype.scaleDocumentToFit=function(){var e;null===(e=this.sketchWebWasm)||void 0===e||e.scaleDocumentToFit()},t.prototype.setFile=function(e){return M(this,void 0,void 0,(function(){var t=this;return R(this,(function(n){return this.setStatus({type:"LOADING_FILE"}),[2,new Promise((function(n,r){t.sketchWebWasm.setFile(e,(function(e,r,o,i){if(void 0===i&&(i=[]),i.length){l.debug("Parser warnings: "+i);var a=i.map((function(e){return{key:e}}));t.emit("warnings",a)}t.setStatus({type:"FILE_READY"}),t.emit("fileReady",t.getDocument(),e,r,o),n()}),(function(){return r(new m("FILE_ERROR","Error encountered while fetching and parsing the file"))}))}))]}))}))},t.prototype.fail=function(e){this.setStatus({type:"FAILURE",code:e.code,message:e.toString()+(e.cause?"\nWrapped Error: "+e.cause.toString():"")}),l.error(e),e.cause&&l.error(e.cause)},t.prototype.setSize=function(e,t,n){var r;this.size.width=e*n,this.size.height=t*n,this.canvas.width=e*n,this.canvas.height=t*n,null===(r=this.sketchWebWasm)||void 0===r||r.resize(e,t,n)},t.prototype.setStatus=function(e){"FAILURE"!==this.status.type&&(l.debug("Status transition "+this.status.type+" => "+e.type+"}"),this.status=e,this.emit("status",e))},t.prototype.getDocument=function(){if(!this.sketchWebWasm)return null;if(!this.cachedDocumentInfo||this.cachedDocumentInfo.filePath!==this.filePath){var e=this.sketchWebWasm.getPRFile();this.cachedDocumentInfo={filePath:this.filePath,document:L(L({},e),{artboards:s(e.artboards)})}}return this.cachedDocumentInfo.document},t.prototype.getArtboardAtPosition=function(e,t){if(this.sketchWebWasm){var n=this.getDocument();if(n){for(var r=this.sketchWebWasm.getPan(),o=this.sketchWebWasm.getZoom(),i=(e-r.x)/o,a=(t-r.y)/o,s=0,c=n.artboards;s<c.length;s++){var u=c[s],l=u.bounds.x+u.bounds.width,h=u.bounds.y+u.bounds.height;if(i>=u.bounds.x&&a>=u.bounds.y&&i<=l&&a<=h)return u.objectId}return null}}},t.prototype.getPanAtPosition=function(e,t){if(this.sketchWebWasm){var n=this.getPan(),r=Math.max(this.getZoom(),Number.EPSILON),o=e/r,i=t/r;return{x:n.x-o,y:n.y-i}}},t.prototype.getStatus=function(){return this.status},t.prototype.setZoom=function(e,t){var n;null===(n=this.sketchWebWasm)||void 0===n||n.setZoom(e,t.x,t.y)},t.prototype.getPan=function(){if(this.sketchWebWasm){var e=this.getDocument();if(e){var t=e.bounds,n=this.sketchWebWasm.getPan(),r=this.sketchWebWasm.getZoom();return{x:n.x/r+t.x,y:n.y/r+t.y}}}},t.prototype.getZoom=function(){var e;return null===(e=this.sketchWebWasm)||void 0===e?void 0:e.getZoom()},t.prototype.handlePinchToZoomEvent=function(e,t){var n;null===(n=this.userEventsCollectorWasm)||void 0===n||n.dispatchPinchToZoomEvent(e,t.x,t.y)},t.prototype.pointerInfoToWASM=function(e){var t,n;return this.pointerTypeToWASMMap||l.warning("An user event was triggered, but the WASM module is not available."),L(L({},e),{type:null!==(n=null===(t=this.pointerTypeToWASMMap)||void 0===t?void 0:t[e.type])&&void 0!==n?n:this.wasmModule.PRUserPointerType.Unset})},t.prototype.setPan=function(e,t,n){if(void 0===n&&(n=!1),this.sketchWebWasm){var r=e,o=t,i=this.getDocument().bounds,a=this.sketchWebWasm.getZoom();if(n){var s=Math.max(2*a*this.pixelRatio,Number.EPSILON);r+=this.size.width/s,o+=this.size.height/s}var c=(r-i.x)*a,u=(o-i.y)*a;this.sketchWebWasm.setPan(c,u)}},t.prototype.handleWheelEvent=function(e,t){var n;null===(n=this.userEventsCollectorWasm)||void 0===n||n.dispatchWheelEvent(e.x,e.y,this.pointerInfoToWASM(t))},t.prototype.handlePointerDownEvent=function(e){var t;null===(t=this.userEventsCollectorWasm)||void 0===t||t.dispatchPointerDownEvent(this.pointerInfoToWASM(e))},t.prototype.handlePointerMoveEvent=function(e){var t;null===(t=this.userEventsCollectorWasm)||void 0===t||t.dispatchPointerMoveEvent(this.pointerInfoToWASM(e))},t.prototype.setGlobalPointerPosition=function(e){var t;null===(t=this.userEventsCollectorWasm)||void 0===t||t.dispatchGlobalPointerMoveEvent(this.pointerInfoToWASM(e))},t.prototype.handlePointerUpEvent=function(e){var t;null===(t=this.userEventsCollectorWasm)||void 0===t||t.dispatchPointerUpEvent(this.pointerInfoToWASM(e))},t.prototype.dispose=function(){var e,t;try{null===(e=this.sketchWebWasm)||void 0===e||e.stopRenderLoop(),null===(t=this.sketchWebWasm)||void 0===t||t.delete(),this.looseWebGLContext(),this.userEventsCollectorWasm=null,this.sketchWebWasm=null,this.wasmModule=null}catch(e){this.fail(new m("ERROR","Unexpected exception while disposing the SketchWebWasm object",e))}},t}(c));const I=Symbol("Comlink.proxy"),T=Symbol("Comlink.endpoint"),_=Symbol("Comlink.releaseProxy"),O=Symbol("Comlink.thrown"),D=e=>"object"==typeof e&&null!==e||"function"==typeof e,j=new Map([["proxy",{canHandle:e=>D(e)&&e[I],serialize(e){const{port1:t,port2:n}=new MessageChannel;return F(e,t),[n,[n]]},deserialize:e=>(e.start(),B(e,[],undefined))}],["throw",{canHandle:e=>D(e)&&O in e,serialize({value:e}){let t;return t=e instanceof Error?{isError:!0,value:{message:e.message,name:e.name,stack:e.stack}}:{isError:!1,value:e},[t,[]]},deserialize(e){if(e.isError)throw Object.assign(new Error(e.value.message),e.value);throw e.value}}]]);function F(e,t=self){t.addEventListener("message",(function n(r){if(!r||!r.data)return;const{id:o,type:i,path:a}=Object.assign({path:[]},r.data),s=(r.data.argumentList||[]).map($);let c;try{const t=a.slice(0,-1).reduce(((e,t)=>e[t]),e),n=a.reduce(((e,t)=>e[t]),e);switch(i){case"GET":c=n;break;case"SET":t[a.slice(-1)[0]]=$(r.data.value),c=!0;break;case"APPLY":c=n.apply(t,s);break;case"CONSTRUCT":c=function(e){return Object.assign(e,{[I]:!0})}(new n(...s));break;case"ENDPOINT":{const{port1:t,port2:n}=new MessageChannel;F(e,n),c=function(e,t){return z.set(e,t),e}(t,[t])}break;case"RELEASE":c=void 0;break;default:return}}catch(e){c={value:e,[O]:0}}Promise.resolve(c).catch((e=>({value:e,[O]:0}))).then((e=>{const[r,a]=Z(e);t.postMessage(Object.assign(Object.assign({},r),{id:o}),a),"RELEASE"===i&&(t.removeEventListener("message",n),G(t))}))})),t.start&&t.start()}function G(e){(function(e){return"MessagePort"===e.constructor.name})(e)&&e.close()}function U(e){if(e)throw new Error("Proxy has been released and is not useable")}function B(e,t=[],n=function(){}){let r=!1;const o=new Proxy(n,{get(n,i){if(U(r),i===_)return()=>V(e,{type:"RELEASE",path:t.map((e=>e.toString()))}).then((()=>{G(e),r=!0}));if("then"===i){if(0===t.length)return{then:()=>o};const n=V(e,{type:"GET",path:t.map((e=>e.toString()))}).then($);return n.then.bind(n)}return B(e,[...t,i])},set(n,o,i){U(r);const[a,s]=Z(i);return V(e,{type:"SET",path:[...t,o].map((e=>e.toString())),value:a},s).then($)},apply(n,o,i){U(r);const a=t[t.length-1];if(a===T)return V(e,{type:"ENDPOINT"}).then($);if("bind"===a)return B(e,t.slice(0,-1));const[s,c]=N(i);return V(e,{type:"APPLY",path:t.map((e=>e.toString())),argumentList:s},c).then($)},construct(n,o){U(r);const[i,a]=N(o);return V(e,{type:"CONSTRUCT",path:t.map((e=>e.toString())),argumentList:i},a).then($)}});return o}function N(e){const t=e.map(Z);return[t.map((e=>e[0])),(n=t.map((e=>e[1])),Array.prototype.concat.apply([],n))];var n}const z=new WeakMap;function Z(e){for(const[t,n]of j)if(n.canHandle(e)){const[r,o]=n.serialize(e);return[{type:"HANDLER",name:t,value:r},o]}return[{type:"RAW",value:e},z.get(e)||[]]}function $(e){switch(e.type){case"HANDLER":return j.get(e.name).deserialize(e.value);case"RAW":return e.value}}function V(e,t,n){return new Promise((r=>{const o=new Array(4).fill(0).map((()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16))).join("-");e.addEventListener("message",(function t(n){n.data&&n.data.id&&n.data.id===o&&(e.removeEventListener("message",t),r(n.data))})),e.start&&e.start(),e.postMessage(Object.assign({id:o},t),n)}))}return F(A),{}})()}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_sketch_hq_sketch_web_renderer=self.webpackChunk_sketch_hq_sketch_web_renderer||[]).push([[610],{610:e=>{var r,t=(r="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0,function(e){var t,n,a=void 0!==(e=e||{})?e:{};a.ready=new Promise((function(e,r){t=e,n=r}));var o=Object.assign({},a),i=[],u="./this.program",s=(e,r)=>{throw r},c="";"undefined"!=typeof document&&document.currentScript&&(c=document.currentScript.src),r&&(c=r),c=0!==c.indexOf("blob:")?c.substr(0,c.replace(/[?#].*/,"").lastIndexOf("/")+1):"";var f=a.print||console.log.bind(console),l=a.printErr||console.warn.bind(console);Object.assign(a,o),o=null,a.arguments&&(i=a.arguments),a.thisProgram&&(u=a.thisProgram),a.quit&&(s=a.quit);var d,v,m=0;a.wasmBinary&&(d=a.wasmBinary),a.noExitRuntime,"object"!=typeof WebAssembly&&X("no native wasm support detected");var p,y=!1,h="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function g(e,r,t){for(var n=r+t,a=r;e[a]&&!(a>=n);)++a;if(a-r>16&&e.buffer&&h)return h.decode(e.subarray(r,a));for(var o="";r<a;){var i=e[r++];if(128&i){var u=63&e[r++];if(192!=(224&i)){var s=63&e[r++];if((i=224==(240&i)?(15&i)<<12|u<<6|s:(7&i)<<18|u<<12|s<<6|63&e[r++])<65536)o+=String.fromCharCode(i);else{var c=i-65536;o+=String.fromCharCode(55296|c>>10,56320|1023&c)}}else o+=String.fromCharCode((31&i)<<6|u)}else o+=String.fromCharCode(i)}return o}function b(e,r){return e?g(E,e,r):""}function w(e,r,t,n){if(!(n>0))return 0;for(var a=t,o=t+n-1,i=0;i<e.length;++i){var u=e.charCodeAt(i);if(u>=55296&&u<=57343&&(u=65536+((1023&u)<<10)|1023&e.charCodeAt(++i)),u<=127){if(t>=o)break;r[t++]=u}else if(u<=2047){if(t+1>=o)break;r[t++]=192|u>>6,r[t++]=128|63&u}else if(u<=65535){if(t+2>=o)break;r[t++]=224|u>>12,r[t++]=128|u>>6&63,r[t++]=128|63&u}else{if(t+3>=o)break;r[t++]=240|u>>18,r[t++]=128|u>>12&63,r[t++]=128|u>>6&63,r[t++]=128|63&u}}return r[t]=0,t-a}function x(e,r,t){return w(e,E,r,t)}function C(e){for(var r=0,t=0;t<e.length;++t){var n=e.charCodeAt(t);n>=55296&&n<=57343&&(n=65536+((1023&n)<<10)|1023&e.charCodeAt(++t)),n<=127?++r:r+=n<=2047?2:n<=65535?3:4}return r}var _,T,E,P,A,S,$,I,k,F="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0;function j(e,r){for(var t=e,n=t>>1,a=n+r/2;!(n>=a)&&A[n];)++n;if((t=n<<1)-e>32&&F)return F.decode(E.subarray(e,t));for(var o="",i=0;!(i>=r/2);++i){var u=P[e+2*i>>1];if(0==u)break;o+=String.fromCharCode(u)}return o}function D(e,r,t){if(void 0===t&&(t=2147483647),t<2)return 0;for(var n=r,a=(t-=2)<2*e.length?t/2:e.length,o=0;o<a;++o){var i=e.charCodeAt(o);P[r>>1]=i,r+=2}return P[r>>1]=0,r-n}function L(e){return 2*e.length}function B(e,r){for(var t=0,n="";!(t>=r/4);){var a=S[e+4*t>>2];if(0==a)break;if(++t,a>=65536){var o=a-65536;n+=String.fromCharCode(55296|o>>10,56320|1023&o)}else n+=String.fromCharCode(a)}return n}function O(e,r,t){if(void 0===t&&(t=2147483647),t<4)return 0;for(var n=r,a=n+t-4,o=0;o<e.length;++o){var i=e.charCodeAt(o);if(i>=55296&&i<=57343&&(i=65536+((1023&i)<<10)|1023&e.charCodeAt(++o)),S[r>>2]=i,(r+=4)+4>a)break}return S[r>>2]=0,r-n}function W(e){for(var r=0,t=0;t<e.length;++t){var n=e.charCodeAt(t);n>=55296&&n<=57343&&++t,r+=4}return r}function M(e){_=e,a.HEAP8=T=new Int8Array(e),a.HEAP16=P=new Int16Array(e),a.HEAP32=S=new Int32Array(e),a.HEAPU8=E=new Uint8Array(e),a.HEAPU16=A=new Uint16Array(e),a.HEAPU32=$=new Uint32Array(e),a.HEAPF32=I=new Float32Array(e),a.HEAPF64=k=new Float64Array(e)}a.INITIAL_MEMORY;var R,U,V,N=[],G=[],H=[],Y=0,z=null,q=null;function J(e){Y++,a.monitorRunDependencies&&a.monitorRunDependencies(Y)}function K(e){if(Y--,a.monitorRunDependencies&&a.monitorRunDependencies(Y),0==Y&&(null!==z&&(clearInterval(z),z=null),q)){var r=q;q=null,r()}}function X(e){a.onAbort&&a.onAbort(e),l(e="Aborted("+e+")"),y=!0,p=1,e+=". Build with -sASSERTIONS for more info.";var r=new WebAssembly.RuntimeError(e);throw n(r),r}function Q(e){return e.startsWith("data:application/octet-stream;base64,")}function Z(e){try{if(e==U&&d)return new Uint8Array(d);throw"both async and sync fetching of the wasm failed"}catch(e){X(e)}}function ee(e){for(;e.length>0;){var r=e.shift();if("function"!=typeof r){var t=r.func;"number"==typeof t?void 0===r.arg?re(t)():re(t)(r.arg):t(void 0===r.arg?null:r.arg)}else r(a)}}function re(e){return R.get(e)}Q(U="module-release.wasm")||(V=U,U=a.locateFile?a.locateFile(V,c):c+V);var te={};function ne(e){for(;e.length;){var r=e.pop();e.pop()(r)}}function ae(e){return this.fromWireType($[e>>2])}var oe={},ie={},ue={};function se(e){if(void 0===e)return"_unknown";var r=(e=e.replace(/[^a-zA-Z0-9_]/g,"$")).charCodeAt(0);return r>=48&&r<=57?"_"+e:e}function ce(e,r){return e=se(e),new Function("body","return function "+e+'() {\n "use strict"; return body.apply(this, arguments);\n};\n')(r)}function fe(e,r){var t=ce(r,(function(e){this.name=r,this.message=e;var t=new Error(e).stack;void 0!==t&&(this.stack=this.toString()+"\n"+t.replace(/^Error(:[^\n]*)?\n/,""))}));return t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message},t}var le=void 0;function de(e){throw new le(e)}function ve(e,r,t){function n(r){var n=t(r);n.length!==e.length&&de("Mismatched type converter count");for(var a=0;a<e.length;++a)be(e[a],n[a])}e.forEach((function(e){ue[e]=r}));var a=new Array(r.length),o=[],i=0;r.forEach(((e,r)=>{ie.hasOwnProperty(e)?a[r]=ie[e]:(o.push(e),oe.hasOwnProperty(e)||(oe[e]=[]),oe[e].push((()=>{a[r]=ie[e],++i===o.length&&n(a)})))})),0===o.length&&n(a)}function me(e){switch(e){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+e)}}var pe=void 0;function ye(e){for(var r="",t=e;E[t];)r+=pe[E[t++]];return r}var he=void 0;function ge(e){throw new he(e)}function be(e,r,t={}){if(!("argPackAdvance"in r))throw new TypeError("registerType registeredInstance requires argPackAdvance");var n=r.name;if(e||ge('type "'+n+'" must have a positive integer typeid pointer'),ie.hasOwnProperty(e)){if(t.ignoreDuplicateRegistrations)return;ge("Cannot register type '"+n+"' twice")}if(ie[e]=r,delete ue[e],oe.hasOwnProperty(e)){var a=oe[e];delete oe[e],a.forEach((e=>e()))}}function we(e){ge(e.$$.ptrType.registeredClass.name+" instance already deleted")}var xe=!1;function Ce(e){}function _e(e){e.count.value-=1,0===e.count.value&&function(e){e.smartPtr?e.smartPtrType.rawDestructor(e.smartPtr):e.ptrType.registeredClass.rawDestructor(e.ptr)}(e)}function Te(e,r,t){if(r===t)return e;if(void 0===t.baseClass)return null;var n=Te(e,r,t.baseClass);return null===n?null:t.downcast(n)}var Ee={};var Pe=[];function Ae(){for(;Pe.length;){var e=Pe.pop();e.$$.deleteScheduled=!1,e.delete()}}var Se=void 0;var $e={};function Ie(e,r){return r.ptrType&&r.ptr||de("makeClassHandle requires ptr and ptrType"),!!r.smartPtrType!=!!r.smartPtr&&de("Both smartPtrType and smartPtr must be specified"),r.count={value:1},ke(Object.create(e,{$$:{value:r}}))}function ke(e){return"undefined"==typeof FinalizationRegistry?(ke=e=>e,e):(xe=new FinalizationRegistry((e=>{_e(e.$$)})),Ce=e=>xe.unregister(e),(ke=e=>{var r=e.$$;if(r.smartPtr){var t={$$:r};xe.register(e,t,e)}return e})(e))}function Fe(){}function je(e,r,t){if(void 0===e[r].overloadTable){var n=e[r];e[r]=function(){return e[r].overloadTable.hasOwnProperty(arguments.length)||ge("Function '"+t+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+e[r].overloadTable+")!"),e[r].overloadTable[arguments.length].apply(this,arguments)},e[r].overloadTable=[],e[r].overloadTable[n.argCount]=n}}function De(e,r,t){a.hasOwnProperty(e)?((void 0===t||void 0!==a[e].overloadTable&&void 0!==a[e].overloadTable[t])&&ge("Cannot register public name '"+e+"' twice"),je(a,e,e),a.hasOwnProperty(t)&&ge("Cannot register multiple overloads of a function with the same number of arguments ("+t+")!"),a[e].overloadTable[t]=r):(a[e]=r,void 0!==t&&(a[e].numArguments=t))}function Le(e,r,t,n,a,o,i,u){this.name=e,this.constructor=r,this.instancePrototype=t,this.rawDestructor=n,this.baseClass=a,this.getActualType=o,this.upcast=i,this.downcast=u,this.pureVirtualFunctions=[]}function Be(e,r,t){for(;r!==t;)r.upcast||ge("Expected null or instance of "+t.name+", got an instance of "+r.name),e=r.upcast(e),r=r.baseClass;return e}function Oe(e,r){if(null===r)return this.isReference&&ge("null is not a valid "+this.name),0;r.$$||ge('Cannot pass "'+rr(r)+'" as a '+this.name),r.$$.ptr||ge("Cannot pass deleted object as a pointer of type "+this.name);var t=r.$$.ptrType.registeredClass;return Be(r.$$.ptr,t,this.registeredClass)}function We(e,r){var t;if(null===r)return this.isReference&&ge("null is not a valid "+this.name),this.isSmartPointer?(t=this.rawConstructor(),null!==e&&e.push(this.rawDestructor,t),t):0;r.$$||ge('Cannot pass "'+rr(r)+'" as a '+this.name),r.$$.ptr||ge("Cannot pass deleted object as a pointer of type "+this.name),!this.isConst&&r.$$.ptrType.isConst&&ge("Cannot convert argument of type "+(r.$$.smartPtrType?r.$$.smartPtrType.name:r.$$.ptrType.name)+" to parameter type "+this.name);var n=r.$$.ptrType.registeredClass;if(t=Be(r.$$.ptr,n,this.registeredClass),this.isSmartPointer)switch(void 0===r.$$.smartPtr&&ge("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:r.$$.smartPtrType===this?t=r.$$.smartPtr:ge("Cannot convert argument of type "+(r.$$.smartPtrType?r.$$.smartPtrType.name:r.$$.ptrType.name)+" to parameter type "+this.name);break;case 1:t=r.$$.smartPtr;break;case 2:if(r.$$.smartPtrType===this)t=r.$$.smartPtr;else{var a=r.clone();t=this.rawShare(t,Qe.toHandle((function(){a.delete()}))),null!==e&&e.push(this.rawDestructor,t)}break;default:ge("Unsupporting sharing policy")}return t}function Me(e,r){if(null===r)return this.isReference&&ge("null is not a valid "+this.name),0;r.$$||ge('Cannot pass "'+rr(r)+'" as a '+this.name),r.$$.ptr||ge("Cannot pass deleted object as a pointer of type "+this.name),r.$$.ptrType.isConst&&ge("Cannot convert argument of type "+r.$$.ptrType.name+" to parameter type "+this.name);var t=r.$$.ptrType.registeredClass;return Be(r.$$.ptr,t,this.registeredClass)}function Re(e,r,t,n,a,o,i,u,s,c,f){this.name=e,this.registeredClass=r,this.isReference=t,this.isConst=n,this.isSmartPointer=a,this.pointeeType=o,this.sharingPolicy=i,this.rawGetPointee=u,this.rawConstructor=s,this.rawShare=c,this.rawDestructor=f,a||void 0!==r.baseClass?this.toWireType=We:n?(this.toWireType=Oe,this.destructorFunction=null):(this.toWireType=Me,this.destructorFunction=null)}function Ue(e,r,t){return e.includes("j")?function(e,r,t){var n=a["dynCall_"+e];return t&&t.length?n.apply(null,[r].concat(t)):n.call(null,r)}(e,r,t):re(r).apply(null,t)}function Ve(e,r){var t,n,a,o=(e=ye(e)).includes("j")?(t=e,n=r,a=[],function(){return a.length=0,Object.assign(a,arguments),Ue(t,n,a)}):re(r);return"function"!=typeof o&&ge("unknown function pointer with signature "+e+": "+r),o}var Ne=void 0;function Ge(e){var r=Gr(e),t=ye(r);return Nr(r),t}function He(e,r){var t=[],n={};throw r.forEach((function e(r){n[r]||ie[r]||(ue[r]?ue[r].forEach(e):(t.push(r),n[r]=!0))})),new Ne(e+": "+t.map(Ge).join([", "]))}function Ye(e,r){if(!(e instanceof Function))throw new TypeError("new_ called with constructor type "+typeof e+" which is not a function");var t=ce(e.name||"unknownFunctionName",(function(){}));t.prototype=e.prototype;var n=new t,a=e.apply(n,r);return a instanceof Object?a:n}function ze(e,r,t,n,a){var o=r.length;o<2&&ge("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var i=null!==r[1]&&null!==t,u=!1,s=1;s<r.length;++s)if(null!==r[s]&&void 0===r[s].destructorFunction){u=!0;break}var c="void"!==r[0].name,f="",l="";for(s=0;s<o-2;++s)f+=(0!==s?", ":"")+"arg"+s,l+=(0!==s?", ":"")+"arg"+s+"Wired";var d="return function "+se(e)+"("+f+") {\nif (arguments.length !== "+(o-2)+") {\nthrowBindingError('function "+e+" called with ' + arguments.length + ' arguments, expected "+(o-2)+" args!');\n}\n";u&&(d+="var destructors = [];\n");var v=u?"destructors":"null",m=["throwBindingError","invoker","fn","runDestructors","retType","classParam"],p=[ge,n,a,ne,r[0],r[1]];for(i&&(d+="var thisWired = classParam.toWireType("+v+", this);\n"),s=0;s<o-2;++s)d+="var arg"+s+"Wired = argType"+s+".toWireType("+v+", arg"+s+"); // "+r[s+2].name+"\n",m.push("argType"+s),p.push(r[s+2]);if(i&&(l="thisWired"+(l.length>0?", ":"")+l),d+=(c?"var rv = ":"")+"invoker(fn"+(l.length>0?", ":"")+l+");\n",u)d+="runDestructors(destructors);\n";else for(s=i?1:2;s<r.length;++s){var y=1===s?"thisWired":"arg"+(s-2)+"Wired";null!==r[s].destructorFunction&&(d+=y+"_dtor("+y+"); // "+r[s].name+"\n",m.push(y+"_dtor"),p.push(r[s].destructorFunction))}return c&&(d+="var ret = retType.fromWireType(rv);\nreturn ret;\n"),d+="}\n",m.push(d),Ye(Function,m).apply(null,p)}function qe(e,r){for(var t=[],n=0;n<e;n++)t.push(S[(r>>2)+n]);return t}var Je=[],Ke=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function Xe(e){e>4&&0==--Ke[e].refcount&&(Ke[e]=void 0,Je.push(e))}var Qe={toValue:e=>(e||ge("Cannot use deleted val. handle = "+e),Ke[e].value),toHandle:e=>{switch(e){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:var r=Je.length?Je.pop():Ke.length;return Ke[r]={refcount:1,value:e},r}}};function Ze(e,r,t){switch(r){case 0:return function(e){var r=t?T:E;return this.fromWireType(r[e])};case 1:return function(e){var r=t?P:A;return this.fromWireType(r[e>>1])};case 2:return function(e){var r=t?S:$;return this.fromWireType(r[e>>2])};default:throw new TypeError("Unknown integer type: "+e)}}function er(e,r){var t=ie[e];return void 0===t&&ge(r+" has unknown type "+Ge(e)),t}function rr(e){if(null===e)return"null";var r=typeof e;return"object"===r||"array"===r||"function"===r?e.toString():""+e}function tr(e,r){switch(r){case 2:return function(e){return this.fromWireType(I[e>>2])};case 3:return function(e){return this.fromWireType(k[e>>3])};default:throw new TypeError("Unknown float type: "+e)}}function nr(e,r,t){switch(r){case 0:return t?function(e){return T[e]}:function(e){return E[e]};case 1:return t?function(e){return P[e>>1]}:function(e){return A[e>>1]};case 2:return t?function(e){return S[e>>2]}:function(e){return $[e>>2]};default:throw new TypeError("Unknown integer type: "+e)}}function ar(e,r){for(var t=new Array(e),n=0;n<e;++n)t[n]=er(S[(r>>2)+n],"parameter "+n);return t}var or={};function ir(e){var r=or[e];return void 0===r?ye(e):r}var ur=[];function sr(){return"object"==typeof globalThis?globalThis:Function("return this")()}var cr,fr=[];cr=()=>performance.now();var lr={counter:1,buffers:[],programs:[],framebuffers:[],renderbuffers:[],textures:[],shaders:[],vaos:[],contexts:[],offscreenCanvases:{},queries:[],samplers:[],transformFeedbacks:[],syncs:[],stringCache:{},stringiCache:{},unpackAlignment:4,recordError:function(e){lr.lastError||(lr.lastError=e)},getNewId:function(e){for(var r=lr.counter++,t=e.length;t<r;t++)e[t]=null;return r},getSource:function(e,r,t,n){for(var a="",o=0;o<r;++o){var i=n?S[n+4*o>>2]:-1;a+=b(S[t+4*o>>2],i<0?void 0:i)}return a},createContext:function(e,r){e.getContextSafariWebGL2Fixed||(e.getContextSafariWebGL2Fixed=e.getContext,e.getContext=function(r,t){var n=e.getContextSafariWebGL2Fixed(r,t);return"webgl"==r==n instanceof WebGLRenderingContext?n:null});var t=r.majorVersion>1?e.getContext("webgl2",r):e.getContext("webgl",r);return t?lr.registerContext(t,r):0},registerContext:function(e,r){var t=lr.getNewId(lr.contexts),n={handle:t,attributes:r,version:r.majorVersion,GLctx:e};return e.canvas&&(e.canvas.GLctxObject=n),lr.contexts[t]=n,(void 0===r.enableExtensionsByDefault||r.enableExtensionsByDefault)&&lr.initExtensions(n),t},makeContextCurrent:function(e){return lr.currentContext=lr.contexts[e],a.ctx=Dr=lr.currentContext&&lr.currentContext.GLctx,!(e&&!Dr)},getContext:function(e){return lr.contexts[e]},deleteContext:function(e){lr.currentContext===lr.contexts[e]&&(lr.currentContext=null),"object"==typeof JSEvents&&JSEvents.removeAllHandlersOnTarget(lr.contexts[e].GLctx.canvas),lr.contexts[e]&&lr.contexts[e].GLctx.canvas&&(lr.contexts[e].GLctx.canvas.GLctxObject=void 0),lr.contexts[e]=null},initExtensions:function(e){if(e||(e=lr.currentContext),!e.initExtensionsDone){e.initExtensionsDone=!0;var r,t=e.GLctx;!function(e){var r=e.getExtension("ANGLE_instanced_arrays");r&&(e.vertexAttribDivisor=function(e,t){r.vertexAttribDivisorANGLE(e,t)},e.drawArraysInstanced=function(e,t,n,a){r.drawArraysInstancedANGLE(e,t,n,a)},e.drawElementsInstanced=function(e,t,n,a,o){r.drawElementsInstancedANGLE(e,t,n,a,o)})}(t),function(e){var r=e.getExtension("OES_vertex_array_object");r&&(e.createVertexArray=function(){return r.createVertexArrayOES()},e.deleteVertexArray=function(e){r.deleteVertexArrayOES(e)},e.bindVertexArray=function(e){r.bindVertexArrayOES(e)},e.isVertexArray=function(e){return r.isVertexArrayOES(e)})}(t),function(e){var r=e.getExtension("WEBGL_draw_buffers");r&&(e.drawBuffers=function(e,t){r.drawBuffersWEBGL(e,t)})}(t),(r=t).dibvbi=r.getExtension("WEBGL_draw_instanced_base_vertex_base_instance"),function(e){e.mdibvbi=e.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance")}(t),e.version>=2&&(t.disjointTimerQueryExt=t.getExtension("EXT_disjoint_timer_query_webgl2")),(e.version<2||!t.disjointTimerQueryExt)&&(t.disjointTimerQueryExt=t.getExtension("EXT_disjoint_timer_query")),function(e){e.multiDrawWebgl=e.getExtension("WEBGL_multi_draw")}(t),(t.getSupportedExtensions()||[]).forEach((function(e){e.includes("lose_context")||e.includes("debug")||t.getExtension(e)}))}}};function dr(e,r){return(e>>>0)+4294967296*r}var vr=[];function mr(e,r,t,n){for(var a=0;a<e;a++){var o=Dr[t](),i=o&&lr.getNewId(n);o?(o.name=i,n[i]=o):lr.recordError(1282),S[r+4*a>>2]=i}}function pr(e,r,t){if(r){var n,a,o=void 0;switch(e){case 36346:o=1;break;case 36344:return void(0!=t&&1!=t&&lr.recordError(1280));case 34814:case 36345:o=0;break;case 34466:var i=Dr.getParameter(34467);o=i?i.length:0;break;case 33309:if(lr.currentContext.version<2)return void lr.recordError(1282);o=2*(Dr.getSupportedExtensions()||[]).length;break;case 33307:case 33308:if(lr.currentContext.version<2)return void lr.recordError(1280);o=33307==e?3:0}if(void 0===o){var u=Dr.getParameter(e);switch(typeof u){case"number":o=u;break;case"boolean":o=u?1:0;break;case"string":return void lr.recordError(1280);case"object":if(null===u)switch(e){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 36662:case 36663:case 35053:case 35055:case 36010:case 35097:case 35869:case 32874:case 36389:case 35983:case 35368:case 34068:o=0;break;default:return void lr.recordError(1280)}else{if(u instanceof Float32Array||u instanceof Uint32Array||u instanceof Int32Array||u instanceof Array){for(var s=0;s<u.length;++s)switch(t){case 0:S[r+4*s>>2]=u[s];break;case 2:I[r+4*s>>2]=u[s];break;case 4:T[r+s>>0]=u[s]?1:0}return}try{o=0|u.name}catch(r){return lr.recordError(1280),void l("GL_INVALID_ENUM in glGet"+t+"v: Unknown object returned from WebGL getParameter("+e+")! (error: "+r+")")}}break;default:return lr.recordError(1280),void l("GL_INVALID_ENUM in glGet"+t+"v: Native code calling glGet"+t+"v("+e+") and it returns "+u+" of type "+typeof u+"!")}}switch(t){case 1:a=o,$[(n=r)>>2]=a,$[n+4>>2]=(a-$[n>>2])/4294967296;break;case 0:S[r>>2]=o;break;case 2:I[r>>2]=o;break;case 4:T[r>>0]=o?1:0}}else lr.recordError(1281)}function yr(e){var r=C(e)+1,t=Vr(r);return x(e,t,r),t}function hr(e){return"]"==e.slice(-1)&&e.lastIndexOf("[")}function gr(e){return 0==(e-=5120)?T:1==e?E:2==e?P:4==e?S:6==e?I:5==e||28922==e||28520==e||30779==e||30782==e?$:A}function br(e){return 31-Math.clz32(e.BYTES_PER_ELEMENT)}function wr(e,r,t,n,a,o){var i=gr(e),u=br(i),s=1<<u,c=function(e,r,t,n){var a;return r*(e*t+(a=n)-1&-a)}(t,n,function(e){return{5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[e-6402]||1}(r)*s,lr.unpackAlignment);return i.subarray(a>>u,a+c>>u)}function xr(e){var r=Dr.currentProgram;if(r){var t=r.uniformLocsById[e];return"number"==typeof t&&(r.uniformLocsById[e]=t=Dr.getUniformLocation(r,r.uniformArrayNamesById[e]+(t>0?"["+t+"]":""))),t}lr.recordError(1282)}var Cr=[],_r=[];function Tr(e){try{return v.grow(e-_.byteLength+65535>>>16),M(v.buffer),1}catch(e){}}var Er={xhrs:[],setu64:function(e,r){$[e>>2]=r,$[e+4>>2]=r/4294967296|0},openDatabase:function(e,r,t,n){try{var a=indexedDB.open(e,r)}catch(e){return n(e)}a.onupgradeneeded=e=>{var r=e.target.result;r.objectStoreNames.contains("FILES")&&r.deleteObjectStore("FILES"),r.createObjectStore("FILES")},a.onsuccess=e=>t(e.target.result),a.onerror=e=>n(e)},staticInit:function(){Er.openDatabase("emscripten_filesystem",1,(e=>{Er.dbInstance=e,K()}),(()=>{Er.dbInstance=!1,K()})),"undefined"!=typeof ENVIRONMENT_IS_FETCH_WORKER&&ENVIRONMENT_IS_FETCH_WORKER||J()}};function Pr(e,r,t,n,a){var o=$[e+8>>2];if(o){var i=b(o),u=e+112,s=b(u);s||(s="GET"),$[e+4>>2];var c=$[u+52>>2],f=$[u+56>>2],l=!!$[u+60>>2],d=($[u+64>>2],$[u+68>>2]),v=$[u+72>>2],m=$[u+76>>2],p=$[u+80>>2],y=$[u+84>>2],h=$[u+88>>2],g=!!(1&c),w=!!(2&c),C=!!(64&c),_=d?b(d):void 0,T=v?b(v):void 0,P=new XMLHttpRequest;if(P.withCredentials=l,P.open(s,i,!C,_,T),C||(P.timeout=f),P.url_=i,P.responseType="arraybuffer",p){var S=b(p);P.overrideMimeType(S)}if(m)for(;;){var I=$[m>>2];if(!I)break;var k=$[m+4>>2];if(!k)break;m+=8;var F=b(I),j=b(k);P.setRequestHeader(F,j)}Er.xhrs.push(P);var D=Er.xhrs.length;$[e+0>>2]=D;var L=y&&h?E.slice(y,y+h):null;P.onload=n=>{B(g&&!w);var a=P.response?P.response.byteLength:0;Er.setu64(e+24,0),a&&Er.setu64(e+32,a),A[e+40>>1]=P.readyState,A[e+42>>1]=P.status,P.statusText&&x(P.statusText,e+44,64),P.status>=200&&P.status<300?r&&r(e,P,n):t&&t(e,P,n)},P.onerror=r=>{B(g);var n=P.status;Er.setu64(e+24,0),Er.setu64(e+32,P.response?P.response.byteLength:0),A[e+40>>1]=P.readyState,A[e+42>>1]=n,t&&t(e,P,r)},P.ontimeout=r=>{t&&t(e,P,r)},P.onprogress=r=>{var t=g&&w&&P.response?P.response.byteLength:0,a=0;g&&w&&(a=Vr(t),E.set(new Uint8Array(P.response),a)),$[e+12>>2]=a,Er.setu64(e+16,t),Er.setu64(e+24,r.loaded-t),Er.setu64(e+32,r.total),A[e+40>>1]=P.readyState,P.readyState>=3&&0===P.status&&r.loaded>0&&(P.status=200),A[e+42>>1]=P.status,P.statusText&&x(P.statusText,e+44,64),n&&n(e,P,r),a&&Nr(a)},P.onreadystatechange=r=>{A[e+40>>1]=P.readyState,P.readyState>=2&&(A[e+42>>1]=P.status),a&&a(e,P,r)};try{P.send(L)}catch(r){t&&t(e,P,r)}}else t(e,0,"no url specified!");function B(r){var t=0,n=0;r&&(n=P.response?P.response.byteLength:0,t=Vr(n),E.set(new Uint8Array(P.response),t)),$[e+12>>2]=t,Er.setu64(e+16,n)}}function Ar(e,r){if(!y)if(r)e();else try{e()}catch(e){!function(e){if(e instanceof qr||"unwind"==e)return p;s(1,e)}(e)}}function Sr(e,r,t,n,a){if(e){var o=$[r+112+64>>2];o||(o=$[r+8>>2]);var i=b(o);try{var u=e.transaction(["FILES"],"readwrite").objectStore("FILES").put(t,i);u.onsuccess=e=>{A[r+40>>1]=4,A[r+42>>1]=200,x("OK",r+44,64),n(r,0,i)},u.onerror=e=>{A[r+40>>1]=4,A[r+42>>1]=413,x("Payload Too Large",r+44,64),a(r,0,e)}}catch(e){a(r,0,e)}}else a(r,0,"IndexedDB not available!")}var $r={};function Ir(){if(!Ir.strings){var e={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:u||"./this.program"};for(var r in $r)void 0===$r[r]?delete e[r]:e[r]=$r[r];var t=[];for(var r in e)t.push(r+"="+e[r]);Ir.strings=t}return Ir.strings}var kr=[null,[],[]];function Fr(e,r){var t=kr[e];0===r||10===r?((1===e?f:l)(g(t,0)),t.length=0):t.push(r)}function jr(e){return e%4==0&&(e%100!=0||e%400==0)}var Dr,Lr=[31,29,31,30,31,30,31,31,30,31,30,31],Br=[31,28,31,30,31,30,31,31,30,31,30,31];le=a.InternalError=fe(Error,"InternalError"),function(){for(var e=new Array(256),r=0;r<256;++r)e[r]=String.fromCharCode(r);pe=e}(),he=a.BindingError=fe(Error,"BindingError"),Fe.prototype.isAliasOf=function(e){if(!(this instanceof Fe))return!1;if(!(e instanceof Fe))return!1;for(var r=this.$$.ptrType.registeredClass,t=this.$$.ptr,n=e.$$.ptrType.registeredClass,a=e.$$.ptr;r.baseClass;)t=r.upcast(t),r=r.baseClass;for(;n.baseClass;)a=n.upcast(a),n=n.baseClass;return r===n&&t===a},Fe.prototype.clone=function(){if(this.$$.ptr||we(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var e,r=ke(Object.create(Object.getPrototypeOf(this),{$$:{value:(e=this.$$,{count:e.count,deleteScheduled:e.deleteScheduled,preservePointerOnDelete:e.preservePointerOnDelete,ptr:e.ptr,ptrType:e.ptrType,smartPtr:e.smartPtr,smartPtrType:e.smartPtrType})}}));return r.$$.count.value+=1,r.$$.deleteScheduled=!1,r},Fe.prototype.delete=function(){this.$$.ptr||we(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&ge("Object already scheduled for deletion"),Ce(this),_e(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)},Fe.prototype.isDeleted=function(){return!this.$$.ptr},Fe.prototype.deleteLater=function(){return this.$$.ptr||we(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&ge("Object already scheduled for deletion"),Pe.push(this),1===Pe.length&&Se&&Se(Ae),this.$$.deleteScheduled=!0,this},a.getInheritedInstanceCount=function(){return Object.keys($e).length},a.getLiveInheritedInstances=function(){var e=[];for(var r in $e)$e.hasOwnProperty(r)&&e.push($e[r]);return e},a.flushPendingDeletes=Ae,a.setDelayFunction=function(e){Se=e,Pe.length&&Se&&Se(Ae)},Re.prototype.getPointee=function(e){return this.rawGetPointee&&(e=this.rawGetPointee(e)),e},Re.prototype.destructor=function(e){this.rawDestructor&&this.rawDestructor(e)},Re.prototype.argPackAdvance=8,Re.prototype.readValueFromPointer=ae,Re.prototype.deleteObject=function(e){null!==e&&e.delete()},Re.prototype.fromWireType=function(e){var r=this.getPointee(e);if(!r)return this.destructor(e),null;var t=function(e,r){return r=function(e,r){for(void 0===r&&ge("ptr should not be undefined");e.baseClass;)r=e.upcast(r),e=e.baseClass;return r}(e,r),$e[r]}(this.registeredClass,r);if(void 0!==t){if(0===t.$$.count.value)return t.$$.ptr=r,t.$$.smartPtr=e,t.clone();var n=t.clone();return this.destructor(e),n}function a(){return this.isSmartPointer?Ie(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:r,smartPtrType:this,smartPtr:e}):Ie(this.registeredClass.instancePrototype,{ptrType:this,ptr:e})}var o,i=this.registeredClass.getActualType(r),u=Ee[i];if(!u)return a.call(this);o=this.isConst?u.constPointerType:u.pointerType;var s=Te(r,this.registeredClass,o.registeredClass);return null===s?a.call(this):this.isSmartPointer?Ie(o.registeredClass.instancePrototype,{ptrType:o,ptr:s,smartPtrType:this,smartPtr:e}):Ie(o.registeredClass.instancePrototype,{ptrType:o,ptr:s})},Ne=a.UnboundTypeError=fe(Error,"UnboundTypeError"),a.count_emval_handles=function(){for(var e=0,r=5;r<Ke.length;++r)void 0!==Ke[r]&&++e;return e},a.get_first_emval=function(){for(var e=5;e<Ke.length;++e)if(void 0!==Ke[e])return Ke[e];return null};for(var Or=0;Or<32;++Or)vr.push(new Array(Or));var Wr=new Float32Array(288);for(Or=0;Or<288;++Or)Cr[Or]=Wr.subarray(0,Or+1);var Mr=new Int32Array(288);for(Or=0;Or<288;++Or)_r[Or]=Mr.subarray(0,Or+1);Er.staticInit();var Rr,Ur={c:function(e,r,t,n){X("Assertion failed: "+b(e)+", at: "+[r?b(r):"unknown filename",t,n?b(n):"unknown function"])},o:function(e){var r=te[e];delete te[e];var t=r.rawConstructor,n=r.rawDestructor,a=r.fields;ve([e],a.map((e=>e.getterReturnType)).concat(a.map((e=>e.setterArgumentType))),(e=>{var o={};return a.forEach(((r,t)=>{var n=r.fieldName,i=e[t],u=r.getter,s=r.getterContext,c=e[t+a.length],f=r.setter,l=r.setterContext;o[n]={read:e=>i.fromWireType(u(s,e)),write:(e,r)=>{var t=[];f(l,e,c.toWireType(t,r)),ne(t)}}})),[{name:r.name,fromWireType:function(e){var r={};for(var t in o)r[t]=o[t].read(e);return n(e),r},toWireType:function(e,r){for(var a in o)if(!(a in r))throw new TypeError('Missing field: "'+a+'"');var i=t();for(a in o)o[a].write(i,r[a]);return null!==e&&e.push(n,i),i},argPackAdvance:8,readValueFromPointer:ae,destructorFunction:n}]}))},eb:function(e,r,t,n,a){},rb:function(e,r,t,n,a){var o=me(t);be(e,{name:r=ye(r),fromWireType:function(e){return!!e},toWireType:function(e,r){return r?n:a},argPackAdvance:8,readValueFromPointer:function(e){var n;if(1===t)n=T;else if(2===t)n=P;else{if(4!==t)throw new TypeError("Unknown boolean type size: "+r);n=S}return this.fromWireType(n[e>>o])},destructorFunction:null})},v:function(e,r,t,n,o,i,u,s,c,f,l,d,v){l=ye(l),i=Ve(o,i),s&&(s=Ve(u,s)),f&&(f=Ve(c,f)),v=Ve(d,v);var m=se(l);De(m,(function(){He("Cannot construct "+l+" due to unbound types",[n])})),ve([e,r,t],n?[n]:[],(function(r){var t,o;r=r[0],o=n?(t=r.registeredClass).instancePrototype:Fe.prototype;var u=ce(m,(function(){if(Object.getPrototypeOf(this)!==c)throw new he("Use 'new' to construct "+l);if(void 0===d.constructor_body)throw new he(l+" has no accessible constructor");var e=d.constructor_body[arguments.length];if(void 0===e)throw new he("Tried to invoke ctor of "+l+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(d.constructor_body).toString()+") parameters instead!");return e.apply(this,arguments)})),c=Object.create(o,{constructor:{value:u}});u.prototype=c;var d=new Le(l,u,c,v,t,i,s,f),p=new Re(l,d,!0,!1,!1),y=new Re(l+"*",d,!1,!1,!1),h=new Re(l+" const*",d,!1,!0,!1);return Ee[e]={pointerType:y,constPointerType:h},function(e,r,t){a.hasOwnProperty(e)||de("Replacing nonexistant public symbol"),a[e].overloadTable,a[e]=r,a[e].argCount=t}(m,u),[p,y,h]}))},ob:function(e,r,t,n,a,o,i){var u=qe(t,n);r=ye(r),o=Ve(a,o),ve([],[e],(function(e){var n=(e=e[0]).name+"."+r;function a(){He("Cannot call "+n+" due to unbound types",u)}r.startsWith("@@")&&(r=Symbol[r.substring(2)]);var s=e.registeredClass.constructor;return void 0===s[r]?(a.argCount=t-1,s[r]=a):(je(s,r,n),s[r].overloadTable[t-1]=a),ve([],u,(function(e){var a=[e[0],null].concat(e.slice(1)),u=ze(n,a,null,o,i);return void 0===s[r].overloadTable?(u.argCount=t-1,s[r]=u):s[r].overloadTable[t-1]=u,[]})),[]}))},U:function(e,r,t,n,a,o){r>0||X(undefined);var i=qe(r,t);a=Ve(n,a),ve([],[e],(function(e){var t="constructor "+(e=e[0]).name;if(void 0===e.registeredClass.constructor_body&&(e.registeredClass.constructor_body=[]),void 0!==e.registeredClass.constructor_body[r-1])throw new he("Cannot register multiple constructors with identical number of parameters ("+(r-1)+") for class '"+e.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!");return e.registeredClass.constructor_body[r-1]=()=>{He("Cannot construct "+e.name+" due to unbound types",i)},ve([],i,(function(n){return n.splice(1,0,null),e.registeredClass.constructor_body[r-1]=ze(t,n,null,a,o),[]})),[]}))},e:function(e,r,t,n,a,o,i,u){var s=qe(t,n);r=ye(r),o=Ve(a,o),ve([],[e],(function(e){var n=(e=e[0]).name+"."+r;function a(){He("Cannot call "+n+" due to unbound types",s)}r.startsWith("@@")&&(r=Symbol[r.substring(2)]),u&&e.registeredClass.pureVirtualFunctions.push(r);var c=e.registeredClass.instancePrototype,f=c[r];return void 0===f||void 0===f.overloadTable&&f.className!==e.name&&f.argCount===t-2?(a.argCount=t-2,a.className=e.name,c[r]=a):(je(c,r,n),c[r].overloadTable[t-2]=a),ve([],s,(function(a){var u=ze(n,a,e,o,i);return void 0===c[r].overloadTable?(u.argCount=t-2,c[r]=u):c[r].overloadTable[t-2]=u,[]})),[]}))},qb:function(e,r){be(e,{name:r=ye(r),fromWireType:function(e){var r=Qe.toValue(e);return Xe(e),r},toWireType:function(e,r){return Qe.toHandle(r)},argPackAdvance:8,readValueFromPointer:ae,destructorFunction:null})},t:function(e,r,t,n){var a=me(t);function o(){}r=ye(r),o.values={},be(e,{name:r,constructor:o,fromWireType:function(e){return this.constructor.values[e]},toWireType:function(e,r){return r.value},argPackAdvance:8,readValueFromPointer:Ze(r,a,n),destructorFunction:null}),De(r,o)},s:function(e,r,t){var n=er(e,"enum");r=ye(r);var a=n.constructor,o=Object.create(n.constructor.prototype,{value:{value:t},constructor:{value:ce(n.name+"_"+r,(function(){}))}});a.values[t]=o,a[r]=o},F:function(e,r,t){var n=me(t);be(e,{name:r=ye(r),fromWireType:function(e){return e},toWireType:function(e,r){return r},argPackAdvance:8,readValueFromPointer:tr(r,n),destructorFunction:null})},j:function(e,r,t,n,a){r=ye(r),-1===a&&(a=4294967295);var o=me(t),i=e=>e;if(0===n){var u=32-8*t;i=e=>e<<u>>>u}var s=r.includes("unsigned");be(e,{name:r,fromWireType:i,toWireType:s?function(e,r){return this.name,r>>>0}:function(e,r){return this.name,r},argPackAdvance:8,readValueFromPointer:nr(r,o,0!==n),destructorFunction:null})},h:function(e,r,t){var n=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][r];function a(e){var r=$,t=r[e>>=2],a=r[e+1];return new n(_,a,t)}be(e,{name:t=ye(t),fromWireType:a,argPackAdvance:8,readValueFromPointer:a},{ignoreDuplicateRegistrations:!0})},Wc:function(e,r,t,n,a,o,i,u,s,c,f,l){t=ye(t),o=Ve(a,o),u=Ve(i,u),c=Ve(s,c),l=Ve(f,l),ve([e],[r],(function(e){return e=e[0],[new Re(t,e.registeredClass,!1,!1,!0,e,n,o,u,c,l)]}))},E:function(e,r){var t="std::string"===(r=ye(r));be(e,{name:r,fromWireType:function(e){var r,n=$[e>>2];if(t)for(var a=e+4,o=0;o<=n;++o){var i=e+4+o;if(o==n||0==E[i]){var u=b(a,i-a);void 0===r?r=u:(r+=String.fromCharCode(0),r+=u),a=i+1}}else{var s=new Array(n);for(o=0;o<n;++o)s[o]=String.fromCharCode(E[e+4+o]);r=s.join("")}return Nr(e),r},toWireType:function(e,r){r instanceof ArrayBuffer&&(r=new Uint8Array(r));var n="string"==typeof r;n||r instanceof Uint8Array||r instanceof Uint8ClampedArray||r instanceof Int8Array||ge("Cannot pass non-string to std::string");var a=(t&&n?()=>C(r):()=>r.length)(),o=Vr(4+a+1);if($[o>>2]=a,t&&n)x(r,o+4,a+1);else if(n)for(var i=0;i<a;++i){var u=r.charCodeAt(i);u>255&&(Nr(o),ge("String has UTF-16 code units that do not fit in 8 bits")),E[o+4+i]=u}else for(i=0;i<a;++i)E[o+4+i]=r[i];return null!==e&&e.push(Nr,o),o},argPackAdvance:8,readValueFromPointer:ae,destructorFunction:function(e){Nr(e)}})},x:function(e,r,t){var n,a,o,i,u;t=ye(t),2===r?(n=j,a=D,i=L,o=()=>A,u=1):4===r&&(n=B,a=O,i=W,o=()=>$,u=2),be(e,{name:t,fromWireType:function(e){for(var t,a=$[e>>2],i=o(),s=e+4,c=0;c<=a;++c){var f=e+4+c*r;if(c==a||0==i[f>>u]){var l=n(s,f-s);void 0===t?t=l:(t+=String.fromCharCode(0),t+=l),s=f+r}}return Nr(e),t},toWireType:function(e,n){"string"!=typeof n&&ge("Cannot pass non-string to C++ string type "+t);var o=i(n),s=Vr(4+o+r);return $[s>>2]=o>>u,a(n,s+4,o+r),null!==e&&e.push(Nr,s),s},argPackAdvance:8,readValueFromPointer:ae,destructorFunction:function(e){Nr(e)}})},p:function(e,r,t,n,a,o){te[e]={name:ye(r),rawConstructor:Ve(t,n),rawDestructor:Ve(a,o),fields:[]}},m:function(e,r,t,n,a,o,i,u,s,c){te[e].fields.push({fieldName:ye(r),getterReturnType:t,getter:Ve(n,a),getterContext:o,setterArgumentType:i,setter:Ve(u,s),setterContext:c})},sb:function(e,r){be(e,{isVoid:!0,name:r=ye(r),argPackAdvance:0,fromWireType:function(){},toWireType:function(e,r){}})},mb:function(){return Date.now()},tb:function(e){delete Er.xhrs[e-1]},lb:function(){return!0},gb:function(){throw 1/0},B:function(e,r,t){e=Qe.toValue(e),r=er(r,"emval::as");var n=[],a=Qe.toHandle(n);return S[t>>2]=a,r.toWireType(n,e)},hc:function(e,r,t,n){e=Qe.toValue(e);for(var a=ar(r,t),o=new Array(r),i=0;i<r;++i){var u=a[i];o[i]=u.readValueFromPointer(n),n+=u.argPackAdvance}var s=e.apply(void 0,o);return Qe.toHandle(s)},w:function(e,r,t,n,a){return(e=ur[e])(r=Qe.toValue(r),t=ir(t),function(e){var r=[];return S[e>>2]=Qe.toHandle(r),r}(n),a)},q:function(e,r,t,n){(e=ur[e])(r=Qe.toValue(r),t=ir(t),null,n)},I:Xe,ab:function(e){return 0===e?Qe.toHandle(sr()):(e=ir(e),Qe.toHandle(sr()[e]))},l:function(e,r){var t=ar(e,r),n=t[0],a=n.name+"_$"+t.slice(1).map((function(e){return e.name})).join("_")+"$",o=fr[a];if(void 0!==o)return o;for(var i=["retType"],u=[n],s="",c=0;c<e-1;++c)s+=(0!==c?", ":"")+"arg"+c,i.push("argType"+c),u.push(t[1+c]);var f,l,d="return function "+se("methodCaller_"+a)+"(handle, name, destructors, args) {\n",v=0;for(c=0;c<e-1;++c)d+=" var arg"+c+" = argType"+c+".readValueFromPointer(args"+(v?"+"+v:"")+");\n",v+=t[c+1].argPackAdvance;for(d+=" var rv = handle[name]("+s+");\n",c=0;c<e-1;++c)t[c+1].deleteObject&&(d+=" argType"+c+".deleteObject(arg"+c+");\n");return n.isVoid||(d+=" return retType.toWireType(destructors, rv);\n"),d+="};\n",i.push(d),f=Ye(Function,i).apply(null,u),l=ur.length,ur.push(f),o=l,fr[a]=o,o},Yb:function(e){return e=ir(e),Qe.toHandle(a[e])},C:function(e,r){return e=Qe.toValue(e),r=Qe.toValue(r),Qe.toHandle(e[r])},J:function(e){e>4&&(Ke[e].refcount+=1)},bb:function(){return Qe.toHandle([])},$a:function(e){return Qe.toHandle(ir(e))},cb:function(e){ne(Qe.toValue(e)),Xe(e)},y:function(e,r){var t=(e=er(e,"_emval_take_value")).readValueFromPointer(r);return Qe.toHandle(t)},a:function(){X("")},nb:function(e){cancelAnimationFrame(e)},kb:cr,Rc:function(e){Dr.activeTexture(e)},Sc:function(e,r){Dr.attachShader(lr.programs[e],lr.shaders[r])},Tc:function(e,r,t){Dr.bindAttribLocation(lr.programs[e],r,b(t))},Uc:function(e,r){35051==e?Dr.currentPixelPackBufferBinding=r:35052==e&&(Dr.currentPixelUnpackBufferBinding=r),Dr.bindBuffer(e,lr.buffers[r])},Sb:function(e,r){Dr.bindFramebuffer(e,lr.framebuffers[r])},Tb:function(e,r){Dr.bindRenderbuffer(e,lr.renderbuffers[r])},Db:function(e,r){Dr.bindSampler(e,lr.samplers[r])},Vc:function(e,r){Dr.bindTexture(e,lr.textures[r])},nc:function(e){Dr.bindVertexArray(lr.vaos[e])},rc:function(e){Dr.bindVertexArray(lr.vaos[e])},K:function(e,r,t,n){Dr.blendColor(e,r,t,n)},L:function(e){Dr.blendEquation(e)},M:function(e,r){Dr.blendFunc(e,r)},Lb:function(e,r,t,n,a,o,i,u,s,c){Dr.blitFramebuffer(e,r,t,n,a,o,i,u,s,c)},N:function(e,r,t,n){lr.currentContext.version>=2?t&&r?Dr.bufferData(e,E,n,t,r):Dr.bufferData(e,r,n):Dr.bufferData(e,t?E.subarray(t,t+r):r,n)},O:function(e,r,t,n){lr.currentContext.version>=2?t&&Dr.bufferSubData(e,r,E,n,t):Dr.bufferSubData(e,r,E.subarray(n,n+t))},Ub:function(e){return Dr.checkFramebufferStatus(e)},P:function(e){Dr.clear(e)},Q:function(e,r,t,n){Dr.clearColor(e,r,t,n)},R:function(e){Dr.clearStencil(e)},Ua:function(e,r,t,n){return Dr.clientWaitSync(lr.syncs[e],r,dr(t,n))},S:function(e,r,t,n){Dr.colorMask(!!e,!!r,!!t,!!n)},T:function(e){Dr.compileShader(lr.shaders[e])},V:function(e,r,t,n,a,o,i,u){lr.currentContext.version>=2?Dr.currentPixelUnpackBufferBinding||!i?Dr.compressedTexImage2D(e,r,t,n,a,o,i,u):Dr.compressedTexImage2D(e,r,t,n,a,o,E,u,i):Dr.compressedTexImage2D(e,r,t,n,a,o,u?E.subarray(u,u+i):null)},W:function(e,r,t,n,a,o,i,u,s){lr.currentContext.version>=2?Dr.currentPixelUnpackBufferBinding||!u?Dr.compressedTexSubImage2D(e,r,t,n,a,o,i,u,s):Dr.compressedTexSubImage2D(e,r,t,n,a,o,i,E,s,u):Dr.compressedTexSubImage2D(e,r,t,n,a,o,i,s?E.subarray(s,s+u):null)},X:function(e,r,t,n,a,o,i,u){Dr.copyTexSubImage2D(e,r,t,n,a,o,i,u)},Y:function(){var e=lr.getNewId(lr.programs),r=Dr.createProgram();return r.name=e,r.maxUniformLength=r.maxAttributeLength=r.maxUniformBlockNameLength=0,r.uniformIdCounter=1,lr.programs[e]=r,e},Z:function(e){var r=lr.getNewId(lr.shaders);return lr.shaders[r]=Dr.createShader(e),r},_:function(e){Dr.cullFace(e)},$:function(e,r){for(var t=0;t<e;t++){var n=S[r+4*t>>2],a=lr.buffers[n];a&&(Dr.deleteBuffer(a),a.name=0,lr.buffers[n]=null,n==Dr.currentPixelPackBufferBinding&&(Dr.currentPixelPackBufferBinding=0),n==Dr.currentPixelUnpackBufferBinding&&(Dr.currentPixelUnpackBufferBinding=0))}},Vb:function(e,r){for(var t=0;t<e;++t){var n=S[r+4*t>>2],a=lr.framebuffers[n];a&&(Dr.deleteFramebuffer(a),a.name=0,lr.framebuffers[n]=null)}},aa:function(e){if(e){var r=lr.programs[e];r?(Dr.deleteProgram(r),r.name=0,lr.programs[e]=null):lr.recordError(1281)}},Wb:function(e,r){for(var t=0;t<e;t++){var n=S[r+4*t>>2],a=lr.renderbuffers[n];a&&(Dr.deleteRenderbuffer(a),a.name=0,lr.renderbuffers[n]=null)}},Eb:function(e,r){for(var t=0;t<e;t++){var n=S[r+4*t>>2],a=lr.samplers[n];a&&(Dr.deleteSampler(a),a.name=0,lr.samplers[n]=null)}},ba:function(e){if(e){var r=lr.shaders[e];r?(Dr.deleteShader(r),lr.shaders[e]=null):lr.recordError(1281)}},Nb:function(e){if(e){var r=lr.syncs[e];r?(Dr.deleteSync(r),r.name=0,lr.syncs[e]=null):lr.recordError(1281)}},ca:function(e,r){for(var t=0;t<e;t++){var n=S[r+4*t>>2],a=lr.textures[n];a&&(Dr.deleteTexture(a),a.name=0,lr.textures[n]=null)}},oc:function(e,r){for(var t=0;t<e;t++){var n=S[r+4*t>>2];Dr.deleteVertexArray(lr.vaos[n]),lr.vaos[n]=null}},sc:function(e,r){for(var t=0;t<e;t++){var n=S[r+4*t>>2];Dr.deleteVertexArray(lr.vaos[n]),lr.vaos[n]=null}},da:function(e){Dr.depthMask(!!e)},ea:function(e){Dr.disable(e)},fa:function(e){Dr.disableVertexAttribArray(e)},ga:function(e,r,t){Dr.drawArrays(e,r,t)},mc:function(e,r,t,n){Dr.drawArraysInstanced(e,r,t,n)},jc:function(e,r,t,n,a){Dr.dibvbi.drawArraysInstancedBaseInstanceWEBGL(e,r,t,n,a)},gc:function(e,r){for(var t=vr[e],n=0;n<e;n++)t[n]=S[r+4*n>>2];Dr.drawBuffers(t)},ha:function(e,r,t,n){Dr.drawElements(e,r,t,n)},lc:function(e,r,t,n,a){Dr.drawElementsInstanced(e,r,t,n,a)},kc:function(e,r,t,n,a,o,i){Dr.dibvbi.drawElementsInstancedBaseVertexBaseInstanceWEBGL(e,r,t,n,a,o,i)},ac:function(e,r,t,n,a,o){!function(e,r,t,n){Dr.drawElements(e,r,t,n)}(e,n,a,o)},ia:function(e){Dr.enable(e)},ja:function(e){Dr.enableVertexAttribArray(e)},Jb:function(e,r){var t=Dr.fenceSync(e,r);if(t){var n=lr.getNewId(lr.syncs);return t.name=n,lr.syncs[n]=t,n}return 0},ka:function(){Dr.finish()},la:function(){Dr.flush()},Xb:function(e,r,t,n){Dr.framebufferRenderbuffer(e,r,t,lr.renderbuffers[n])},Zb:function(e,r,t,n,a){Dr.framebufferTexture2D(e,r,t,lr.textures[n],a)},ma:function(e){Dr.frontFace(e)},na:function(e,r){mr(e,r,"createBuffer",lr.buffers)},_b:function(e,r){mr(e,r,"createFramebuffer",lr.framebuffers)},$b:function(e,r){mr(e,r,"createRenderbuffer",lr.renderbuffers)},Fb:function(e,r){mr(e,r,"createSampler",lr.samplers)},oa:function(e,r){mr(e,r,"createTexture",lr.textures)},pc:function(e,r){mr(e,r,"createVertexArray",lr.vaos)},qc:function(e,r){mr(e,r,"createVertexArray",lr.vaos)},Ob:function(e){Dr.generateMipmap(e)},pa:function(e,r,t){t?S[t>>2]=Dr.getBufferParameter(e,r):lr.recordError(1281)},qa:function(){var e=Dr.getError()||lr.lastError;return lr.lastError=0,e},ra:function(e,r){pr(e,r,2)},Pb:function(e,r,t,n){var a=Dr.getFramebufferAttachmentParameter(e,r,t);(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)&&(a=0|a.name),S[n>>2]=a},Sa:function(e,r){pr(e,r,0)},sa:function(e,r,t,n){var a=Dr.getProgramInfoLog(lr.programs[e]);null===a&&(a="(unknown error)");var o=r>0&&n?x(a,n,r):0;t&&(S[t>>2]=o)},ta:function(e,r,t){if(t)if(e>=lr.counter)lr.recordError(1281);else if(e=lr.programs[e],35716==r){var n=Dr.getProgramInfoLog(e);null===n&&(n="(unknown error)"),S[t>>2]=n.length+1}else if(35719==r){if(!e.maxUniformLength)for(var a=0;a<Dr.getProgramParameter(e,35718);++a)e.maxUniformLength=Math.max(e.maxUniformLength,Dr.getActiveUniform(e,a).name.length+1);S[t>>2]=e.maxUniformLength}else if(35722==r){if(!e.maxAttributeLength)for(a=0;a<Dr.getProgramParameter(e,35721);++a)e.maxAttributeLength=Math.max(e.maxAttributeLength,Dr.getActiveAttrib(e,a).name.length+1);S[t>>2]=e.maxAttributeLength}else if(35381==r){if(!e.maxUniformBlockNameLength)for(a=0;a<Dr.getProgramParameter(e,35382);++a)e.maxUniformBlockNameLength=Math.max(e.maxUniformBlockNameLength,Dr.getActiveUniformBlockName(e,a).length+1);S[t>>2]=e.maxUniformBlockNameLength}else S[t>>2]=Dr.getProgramParameter(e,r);else lr.recordError(1281)},Qb:function(e,r,t){t?S[t>>2]=Dr.getRenderbufferParameter(e,r):lr.recordError(1281)},ua:function(e,r,t,n){var a=Dr.getShaderInfoLog(lr.shaders[e]);null===a&&(a="(unknown error)");var o=r>0&&n?x(a,n,r):0;t&&(S[t>>2]=o)},Ab:function(e,r,t,n){var a=Dr.getShaderPrecisionFormat(e,r);S[t>>2]=a.rangeMin,S[t+4>>2]=a.rangeMax,S[n>>2]=a.precision},va:function(e,r,t){if(t)if(35716==r){var n=Dr.getShaderInfoLog(lr.shaders[e]);null===n&&(n="(unknown error)");var a=n?n.length+1:0;S[t>>2]=a}else if(35720==r){var o=Dr.getShaderSource(lr.shaders[e]),i=o?o.length+1:0;S[t>>2]=i}else S[t>>2]=Dr.getShaderParameter(lr.shaders[e],r);else lr.recordError(1281)},z:function(e){var r=lr.stringCache[e];if(!r){switch(e){case 7939:var t=Dr.getSupportedExtensions()||[];r=yr((t=t.concat(t.map((function(e){return"GL_"+e})))).join(" "));break;case 7936:case 7937:case 37445:case 37446:var n=Dr.getParameter(e);n||lr.recordError(1280),r=n&&yr(n);break;case 7938:var a=Dr.getParameter(7938);r=yr(a=lr.currentContext.version>=2?"OpenGL ES 3.0 ("+a+")":"OpenGL ES 2.0 ("+a+")");break;case 35724:var o=Dr.getParameter(35724),i=o.match(/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/);null!==i&&(3==i[1].length&&(i[1]=i[1]+"0"),o="OpenGL ES GLSL ES "+i[1]+" ("+o+")"),r=yr(o);break;default:lr.recordError(1280)}lr.stringCache[e]=r}return r},Ta:function(e,r){if(lr.currentContext.version<2)return lr.recordError(1282),0;var t=lr.stringiCache[e];if(t)return r<0||r>=t.length?(lr.recordError(1281),0):t[r];switch(e){case 7939:var n=Dr.getSupportedExtensions()||[];return n=(n=n.concat(n.map((function(e){return"GL_"+e})))).map((function(e){return yr(e)})),t=lr.stringiCache[e]=n,r<0||r>=t.length?(lr.recordError(1281),0):t[r];default:return lr.recordError(1280),0}},wa:function(e,r){if(r=b(r),e=lr.programs[e]){!function(e){var r,t,n=e.uniformLocsById,a=e.uniformSizeAndIdsByName;if(!n)for(e.uniformLocsById=n={},e.uniformArrayNamesById={},r=0;r<Dr.getProgramParameter(e,35718);++r){var o=Dr.getActiveUniform(e,r),i=o.name,u=o.size,s=hr(i),c=s>0?i.slice(0,s):i,f=e.uniformIdCounter;for(e.uniformIdCounter+=u,a[c]=[u,f],t=0;t<u;++t)n[f]=t,e.uniformArrayNamesById[f++]=c}}(e);var t=e.uniformLocsById,n=0,a=r,o=hr(r);o>0&&(u=r.slice(o+1),n=parseInt(u)>>>0,a=r.slice(0,o));var i=e.uniformSizeAndIdsByName[a];if(i&&n<i[0]&&(t[n+=i[1]]=t[n]||Dr.getUniformLocation(e,r)))return n}else lr.recordError(1281);var u;return-1},Bb:function(e,r,t){for(var n=vr[r],a=0;a<r;a++)n[a]=S[t+4*a>>2];Dr.invalidateFramebuffer(e,n)},Cb:function(e,r,t,n,a,o,i){for(var u=vr[r],s=0;s<r;s++)u[s]=S[t+4*s>>2];Dr.invalidateSubFramebuffer(e,u,n,a,o,i)},Kb:function(e){return Dr.isSync(lr.syncs[e])},xa:function(e){var r=lr.textures[e];return r?Dr.isTexture(r):0},ya:function(e){Dr.lineWidth(e)},za:function(e){e=lr.programs[e],Dr.linkProgram(e),e.uniformLocsById=0,e.uniformSizeAndIdsByName={}},ec:function(e,r,t,n,a,o){Dr.mdibvbi.multiDrawArraysInstancedBaseInstanceWEBGL(e,S,r>>2,S,t>>2,S,n>>2,$,a>>2,o)},fc:function(e,r,t,n,a,o,i,u){Dr.mdibvbi.multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(e,S,r>>2,t,S,n>>2,S,a>>2,S,o>>2,$,i>>2,u)},Aa:function(e,r){3317==e&&(lr.unpackAlignment=r),Dr.pixelStorei(e,r)},ic:function(e){Dr.readBuffer(e)},Ba:function(e,r,t,n,a,o,i){if(lr.currentContext.version>=2)if(Dr.currentPixelPackBufferBinding)Dr.readPixels(e,r,t,n,a,o,i);else{var u=gr(o);Dr.readPixels(e,r,t,n,a,o,u,i>>br(u))}else{var s=wr(o,a,t,n,i);s?Dr.readPixels(e,r,t,n,a,o,s):lr.recordError(1280)}},Rb:function(e,r,t,n){Dr.renderbufferStorage(e,r,t,n)},Mb:function(e,r,t,n,a){Dr.renderbufferStorageMultisample(e,r,t,n,a)},Gb:function(e,r,t){Dr.samplerParameterf(lr.samplers[e],r,t)},Hb:function(e,r,t){Dr.samplerParameteri(lr.samplers[e],r,t)},Ib:function(e,r,t){var n=S[t>>2];Dr.samplerParameteri(lr.samplers[e],r,n)},Ca:function(e,r,t,n){Dr.scissor(e,r,t,n)},Da:function(e,r,t,n){var a=lr.getSource(e,r,t,n);Dr.shaderSource(lr.shaders[e],a)},Ea:function(e,r,t){Dr.stencilFunc(e,r,t)},Fa:function(e,r,t,n){Dr.stencilFuncSeparate(e,r,t,n)},Ga:function(e){Dr.stencilMask(e)},Ha:function(e,r){Dr.stencilMaskSeparate(e,r)},Ia:function(e,r,t){Dr.stencilOp(e,r,t)},Ja:function(e,r,t,n){Dr.stencilOpSeparate(e,r,t,n)},Ka:function(e,r,t,n,a,o,i,u,s){if(lr.currentContext.version>=2)if(Dr.currentPixelUnpackBufferBinding)Dr.texImage2D(e,r,t,n,a,o,i,u,s);else if(s){var c=gr(u);Dr.texImage2D(e,r,t,n,a,o,i,u,c,s>>br(c))}else Dr.texImage2D(e,r,t,n,a,o,i,u,null);else Dr.texImage2D(e,r,t,n,a,o,i,u,s?wr(u,i,n,a,s):null)},La:function(e,r,t){Dr.texParameterf(e,r,t)},Ma:function(e,r,t){var n=I[t>>2];Dr.texParameterf(e,r,n)},Na:function(e,r,t){Dr.texParameteri(e,r,t)},Oa:function(e,r,t){var n=S[t>>2];Dr.texParameteri(e,r,n)},bc:function(e,r,t,n,a){Dr.texStorage2D(e,r,t,n,a)},Pa:function(e,r,t,n,a,o,i,u,s){if(lr.currentContext.version>=2)if(Dr.currentPixelUnpackBufferBinding)Dr.texSubImage2D(e,r,t,n,a,o,i,u,s);else if(s){var c=gr(u);Dr.texSubImage2D(e,r,t,n,a,o,i,u,c,s>>br(c))}else Dr.texSubImage2D(e,r,t,n,a,o,i,u,null);else{var f=null;s&&(f=wr(u,i,a,o,s)),Dr.texSubImage2D(e,r,t,n,a,o,i,u,f)}},Qa:function(e,r){Dr.uniform1f(xr(e),r)},Ra:function(e,r,t){if(lr.currentContext.version>=2)r&&Dr.uniform1fv(xr(e),I,t>>2,r);else{if(r<=288)for(var n=Cr[r-1],a=0;a<r;++a)n[a]=I[t+4*a>>2];else n=I.subarray(t>>2,t+4*r>>2);Dr.uniform1fv(xr(e),n)}},Nc:function(e,r){Dr.uniform1i(xr(e),r)},Oc:function(e,r,t){if(lr.currentContext.version>=2)r&&Dr.uniform1iv(xr(e),S,t>>2,r);else{if(r<=288)for(var n=_r[r-1],a=0;a<r;++a)n[a]=S[t+4*a>>2];else n=S.subarray(t>>2,t+4*r>>2);Dr.uniform1iv(xr(e),n)}},Pc:function(e,r,t){Dr.uniform2f(xr(e),r,t)},Qc:function(e,r,t){if(lr.currentContext.version>=2)r&&Dr.uniform2fv(xr(e),I,t>>2,2*r);else{if(r<=144)for(var n=Cr[2*r-1],a=0;a<2*r;a+=2)n[a]=I[t+4*a>>2],n[a+1]=I[t+(4*a+4)>>2];else n=I.subarray(t>>2,t+8*r>>2);Dr.uniform2fv(xr(e),n)}},Mc:function(e,r,t){Dr.uniform2i(xr(e),r,t)},Lc:function(e,r,t){if(lr.currentContext.version>=2)r&&Dr.uniform2iv(xr(e),S,t>>2,2*r);else{if(r<=144)for(var n=_r[2*r-1],a=0;a<2*r;a+=2)n[a]=S[t+4*a>>2],n[a+1]=S[t+(4*a+4)>>2];else n=S.subarray(t>>2,t+8*r>>2);Dr.uniform2iv(xr(e),n)}},Kc:function(e,r,t,n){Dr.uniform3f(xr(e),r,t,n)},Jc:function(e,r,t){if(lr.currentContext.version>=2)r&&Dr.uniform3fv(xr(e),I,t>>2,3*r);else{if(r<=96)for(var n=Cr[3*r-1],a=0;a<3*r;a+=3)n[a]=I[t+4*a>>2],n[a+1]=I[t+(4*a+4)>>2],n[a+2]=I[t+(4*a+8)>>2];else n=I.subarray(t>>2,t+12*r>>2);Dr.uniform3fv(xr(e),n)}},Ic:function(e,r,t,n){Dr.uniform3i(xr(e),r,t,n)},Hc:function(e,r,t){if(lr.currentContext.version>=2)r&&Dr.uniform3iv(xr(e),S,t>>2,3*r);else{if(r<=96)for(var n=_r[3*r-1],a=0;a<3*r;a+=3)n[a]=S[t+4*a>>2],n[a+1]=S[t+(4*a+4)>>2],n[a+2]=S[t+(4*a+8)>>2];else n=S.subarray(t>>2,t+12*r>>2);Dr.uniform3iv(xr(e),n)}},Gc:function(e,r,t,n,a){Dr.uniform4f(xr(e),r,t,n,a)},Fc:function(e,r,t){if(lr.currentContext.version>=2)r&&Dr.uniform4fv(xr(e),I,t>>2,4*r);else{if(r<=72){var n=Cr[4*r-1],a=I;t>>=2;for(var o=0;o<4*r;o+=4){var i=t+o;n[o]=a[i],n[o+1]=a[i+1],n[o+2]=a[i+2],n[o+3]=a[i+3]}}else n=I.subarray(t>>2,t+16*r>>2);Dr.uniform4fv(xr(e),n)}},tc:function(e,r,t,n,a){Dr.uniform4i(xr(e),r,t,n,a)},uc:function(e,r,t){if(lr.currentContext.version>=2)r&&Dr.uniform4iv(xr(e),S,t>>2,4*r);else{if(r<=72)for(var n=_r[4*r-1],a=0;a<4*r;a+=4)n[a]=S[t+4*a>>2],n[a+1]=S[t+(4*a+4)>>2],n[a+2]=S[t+(4*a+8)>>2],n[a+3]=S[t+(4*a+12)>>2];else n=S.subarray(t>>2,t+16*r>>2);Dr.uniform4iv(xr(e),n)}},vc:function(e,r,t,n){if(lr.currentContext.version>=2)r&&Dr.uniformMatrix2fv(xr(e),!!t,I,n>>2,4*r);else{if(r<=72)for(var a=Cr[4*r-1],o=0;o<4*r;o+=4)a[o]=I[n+4*o>>2],a[o+1]=I[n+(4*o+4)>>2],a[o+2]=I[n+(4*o+8)>>2],a[o+3]=I[n+(4*o+12)>>2];else a=I.subarray(n>>2,n+16*r>>2);Dr.uniformMatrix2fv(xr(e),!!t,a)}},wc:function(e,r,t,n){if(lr.currentContext.version>=2)r&&Dr.uniformMatrix3fv(xr(e),!!t,I,n>>2,9*r);else{if(r<=32)for(var a=Cr[9*r-1],o=0;o<9*r;o+=9)a[o]=I[n+4*o>>2],a[o+1]=I[n+(4*o+4)>>2],a[o+2]=I[n+(4*o+8)>>2],a[o+3]=I[n+(4*o+12)>>2],a[o+4]=I[n+(4*o+16)>>2],a[o+5]=I[n+(4*o+20)>>2],a[o+6]=I[n+(4*o+24)>>2],a[o+7]=I[n+(4*o+28)>>2],a[o+8]=I[n+(4*o+32)>>2];else a=I.subarray(n>>2,n+36*r>>2);Dr.uniformMatrix3fv(xr(e),!!t,a)}},xc:function(e,r,t,n){if(lr.currentContext.version>=2)r&&Dr.uniformMatrix4fv(xr(e),!!t,I,n>>2,16*r);else{if(r<=18){var a=Cr[16*r-1],o=I;n>>=2;for(var i=0;i<16*r;i+=16){var u=n+i;a[i]=o[u],a[i+1]=o[u+1],a[i+2]=o[u+2],a[i+3]=o[u+3],a[i+4]=o[u+4],a[i+5]=o[u+5],a[i+6]=o[u+6],a[i+7]=o[u+7],a[i+8]=o[u+8],a[i+9]=o[u+9],a[i+10]=o[u+10],a[i+11]=o[u+11],a[i+12]=o[u+12],a[i+13]=o[u+13],a[i+14]=o[u+14],a[i+15]=o[u+15]}}else a=I.subarray(n>>2,n+64*r>>2);Dr.uniformMatrix4fv(xr(e),!!t,a)}},yc:function(e){e=lr.programs[e],Dr.useProgram(e),Dr.currentProgram=e},zc:function(e,r){Dr.vertexAttrib1f(e,r)},Ac:function(e,r){Dr.vertexAttrib2f(e,I[r>>2],I[r+4>>2])},Bc:function(e,r){Dr.vertexAttrib3f(e,I[r>>2],I[r+4>>2],I[r+8>>2])},Cc:function(e,r){Dr.vertexAttrib4f(e,I[r>>2],I[r+4>>2],I[r+8>>2],I[r+12>>2])},cc:function(e,r){Dr.vertexAttribDivisor(e,r)},dc:function(e,r,t,n,a){Dr.vertexAttribIPointer(e,r,t,n,a)},Dc:function(e,r,t,n,a,o){Dr.vertexAttribPointer(e,r,t,!!n,a,o)},Ec:function(e,r,t,n){Dr.viewport(e,r,t,n)},Va:function(e,r,t,n){Dr.waitSync(lr.syncs[e],r,dr(t,n))},vb:function(){return!0},G:function(e,r){return requestAnimationFrame((function(t){re(e)(t,r)}))},hb:function(e){var r,t=E.length,n=2147483648;if((e>>>=0)>n)return!1;for(var a=1;a<=4;a*=2){var o=t*(1+.2/a);if(o=Math.min(o,e+100663296),Tr(Math.min(n,(r=Math.max(e,o))+(65536-r%65536)%65536)))return!0}return!1},ub:function(e,r,t,n,a){var o=e+112,i=b(o),u=$[o+36>>2],s=$[o+40>>2],c=$[o+44>>2],f=$[o+48>>2],l=$[o+52>>2],d=!!(4&l),v=!!(32&l),m=!!(16&l),p=!!(64&l),y=(e,t,n)=>{Ar((()=>{u?re(u)(e):r&&r(e)}),p)},h=(e,r,t)=>{Ar((()=>{c?re(c)(e):n&&n(e)}),p)},g=(e,r,n)=>{Ar((()=>{s?re(s)(e):t&&t(e)}),p)},w=(e,r,t)=>{Ar((()=>{f?re(f)(e):a&&a(e)}),p)},C=(e,t,n)=>{Sr(Er.dbInstance,e,t.response,((e,t,n)=>{Ar((()=>{u?re(u)(e):r&&r(e)}),p)}),((e,t,n)=>{Ar((()=>{u?re(u)(e):r&&r(e)}),p)}))};if("EM_IDB_STORE"===i){var _=$[o+84>>2];Sr(Er.dbInstance,e,E.slice(_,_+$[o+88>>2]),y,g)}else if("EM_IDB_DELETE"===i)!function(e,r,t,n){if(e){var a=$[r+112+64>>2];a||(a=$[r+8>>2]);var o=b(a);try{var i=e.transaction(["FILES"],"readwrite").objectStore("FILES").delete(o);i.onsuccess=e=>{var n=e.target.result;$[r+12>>2]=0,Er.setu64(r+16,0),Er.setu64(r+24,0),Er.setu64(r+32,0),A[r+40>>1]=4,A[r+42>>1]=200,x("OK",r+44,64),t(r,0,n)},i.onerror=e=>{A[r+40>>1]=4,A[r+42>>1]=404,x("Not Found",r+44,64),n(r,0,e)}}catch(e){n(r,0,e)}}else n(r,0,"IndexedDB not available!")}(Er.dbInstance,e,y,g);else if(m){if(v)return 0;Pr(e,d?C:y,g,h,w)}else!function(e,r,t,n){if(e){var a=$[r+112+64>>2];a||(a=$[r+8>>2]);var o=b(a);try{var i=e.transaction(["FILES"],"readonly").objectStore("FILES").get(o);i.onsuccess=e=>{if(e.target.result){var a=e.target.result,o=a.byteLength||a.length,i=Vr(o);E.set(new Uint8Array(a),i),$[r+12>>2]=i,Er.setu64(r+16,o),Er.setu64(r+24,0),Er.setu64(r+32,o),A[r+40>>1]=4,A[r+42>>1]=200,x("OK",r+44,64),t(r,0,a)}else A[r+40>>1]=4,A[r+42>>1]=404,x("Not Found",r+44,64),n(r,0,"no data")},i.onerror=e=>{A[r+40>>1]=4,A[r+42>>1]=404,x("Not Found",r+44,64),n(r,0,e)}}catch(e){n(r,0,e)}}else n(r,0,"IndexedDB not available!")}(Er.dbInstance,e,y,v?g:d?(e,r,t)=>{Pr(e,C,g,h,w)}:(e,r,t)=>{Pr(e,y,g,h,w)});return e},_a:function(e){return lr.makeContextCurrent(e)?0:-5},ib:function(e,r){var t=0;return Ir().forEach((function(n,a){var o=r+t;S[e+4*a>>2]=o,function(e,r,t){for(var n=0;n<e.length;++n)T[r++>>0]=e.charCodeAt(n);T[r>>0]=0}(n,o),t+=n.length+1})),0},jb:function(e,r){var t=Ir();S[e>>2]=t.length;var n=0;return t.forEach((function(e){n+=e.length+1})),S[r>>2]=n,0},pb:function(e){return 52},db:function(e,r,t,n,a){return 70},D:function(e,r,t,n){for(var a=0,o=0;o<t;o++){var i=$[r>>2],u=$[r+4>>2];r+=8;for(var s=0;s<u;s++)Fr(e,E[i+s]);a+=u}return S[n>>2]=a,0},b:function(){return m},Za:function(e,r){Dr.bindFramebuffer(e,lr.framebuffers[r])},Wa:function(e){Dr.clear(e)},Ya:function(e,r,t,n){Dr.clearColor(e,r,t,n)},Xa:function(e){Dr.clearStencil(e)},A:function(e,r){pr(e,r,0)},f:function(e,r){var t=Yr();try{return re(e)(r)}catch(e){if(zr(t),e!==e+0)throw e;Hr(1,0)}},r:function(e,r,t){var n=Yr();try{return re(e)(r,t)}catch(e){if(zr(n),e!==e+0)throw e;Hr(1,0)}},g:function(e,r,t,n){var a=Yr();try{return re(e)(r,t,n)}catch(e){if(zr(a),e!==e+0)throw e;Hr(1,0)}},H:function(e,r,t,n,a){var o=Yr();try{return re(e)(r,t,n,a)}catch(e){if(zr(o),e!==e+0)throw e;Hr(1,0)}},xb:function(e){var r=Yr();try{re(e)()}catch(e){if(zr(r),e!==e+0)throw e;Hr(1,0)}},u:function(e,r){var t=Yr();try{re(e)(r)}catch(e){if(zr(t),e!==e+0)throw e;Hr(1,0)}},n:function(e,r,t){var n=Yr();try{re(e)(r,t)}catch(e){if(zr(n),e!==e+0)throw e;Hr(1,0)}},k:function(e,r,t,n){var a=Yr();try{re(e)(r,t,n)}catch(e){if(zr(a),e!==e+0)throw e;Hr(1,0)}},i:function(e,r,t,n,a){var o=Yr();try{re(e)(r,t,n,a)}catch(e){if(zr(o),e!==e+0)throw e;Hr(1,0)}},zb:function(e,r,t,n,a,o){var i=Yr();try{re(e)(r,t,n,a,o)}catch(e){if(zr(i),e!==e+0)throw e;Hr(1,0)}},wb:function(e,r,t,n,a,o,i){var u=Yr();try{re(e)(r,t,n,a,o,i)}catch(e){if(zr(u),e!==e+0)throw e;Hr(1,0)}},yb:function(e,r,t,n,a,o,i,u,s,c){var f=Yr();try{re(e)(r,t,n,a,o,i,u,s,c)}catch(e){if(zr(f),e!==e+0)throw e;Hr(1,0)}},d:function(e){m=e},fb:function(e,r,t,n){return function(e,r,t,n){var a=S[n+40>>2],o={tm_sec:S[n>>2],tm_min:S[n+4>>2],tm_hour:S[n+8>>2],tm_mday:S[n+12>>2],tm_mon:S[n+16>>2],tm_year:S[n+20>>2],tm_wday:S[n+24>>2],tm_yday:S[n+28>>2],tm_isdst:S[n+32>>2],tm_gmtoff:S[n+36>>2],tm_zone:a?b(a):""},i=b(t),u={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var s in u)i=i.replace(new RegExp(s,"g"),u[s]);var c=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],f=["January","February","March","April","May","June","July","August","September","October","November","December"];function l(e,r,t){for(var n="number"==typeof e?e.toString():e||"";n.length<r;)n=t[0]+n;return n}function d(e,r){return l(e,r,"0")}function v(e,r){function t(e){return e<0?-1:e>0?1:0}var n;return 0===(n=t(e.getFullYear()-r.getFullYear()))&&0===(n=t(e.getMonth()-r.getMonth()))&&(n=t(e.getDate()-r.getDate())),n}function m(e){switch(e.getDay()){case 0:return new Date(e.getFullYear()-1,11,29);case 1:return e;case 2:return new Date(e.getFullYear(),0,3);case 3:return new Date(e.getFullYear(),0,2);case 4:return new Date(e.getFullYear(),0,1);case 5:return new Date(e.getFullYear()-1,11,31);case 6:return new Date(e.getFullYear()-1,11,30)}}function p(e){var r=function(e,r){for(var t=new Date(e.getTime());r>0;){var n=jr(t.getFullYear()),a=t.getMonth(),o=(n?Lr:Br)[a];if(!(r>o-t.getDate()))return t.setDate(t.getDate()+r),t;r-=o-t.getDate()+1,t.setDate(1),a<11?t.setMonth(a+1):(t.setMonth(0),t.setFullYear(t.getFullYear()+1))}return t}(new Date(e.tm_year+1900,0,1),e.tm_yday),t=new Date(r.getFullYear(),0,4),n=new Date(r.getFullYear()+1,0,4),a=m(t),o=m(n);return v(a,r)<=0?v(o,r)<=0?r.getFullYear()+1:r.getFullYear():r.getFullYear()-1}var y={"%a":function(e){return c[e.tm_wday].substring(0,3)},"%A":function(e){return c[e.tm_wday]},"%b":function(e){return f[e.tm_mon].substring(0,3)},"%B":function(e){return f[e.tm_mon]},"%C":function(e){return d((e.tm_year+1900)/100|0,2)},"%d":function(e){return d(e.tm_mday,2)},"%e":function(e){return l(e.tm_mday,2," ")},"%g":function(e){return p(e).toString().substring(2)},"%G":function(e){return p(e)},"%H":function(e){return d(e.tm_hour,2)},"%I":function(e){var r=e.tm_hour;return 0==r?r=12:r>12&&(r-=12),d(r,2)},"%j":function(e){return d(e.tm_mday+function(e,r){for(var t=0,n=0;n<=r;t+=e[n++]);return t}(jr(e.tm_year+1900)?Lr:Br,e.tm_mon-1),3)},"%m":function(e){return d(e.tm_mon+1,2)},"%M":function(e){return d(e.tm_min,2)},"%n":function(){return"\n"},"%p":function(e){return e.tm_hour>=0&&e.tm_hour<12?"AM":"PM"},"%S":function(e){return d(e.tm_sec,2)},"%t":function(){return"\t"},"%u":function(e){return e.tm_wday||7},"%U":function(e){var r=e.tm_yday+7-e.tm_wday;return d(Math.floor(r/7),2)},"%V":function(e){var r=Math.floor((e.tm_yday+7-(e.tm_wday+6)%7)/7);if((e.tm_wday+371-e.tm_yday-2)%7<=2&&r++,r){if(53==r){var t=(e.tm_wday+371-e.tm_yday)%7;4==t||3==t&&jr(e.tm_year)||(r=1)}}else{r=52;var n=(e.tm_wday+7-e.tm_yday-1)%7;(4==n||5==n&&jr(e.tm_year%400-1))&&r++}return d(r,2)},"%w":function(e){return e.tm_wday},"%W":function(e){var r=e.tm_yday+7-(e.tm_wday+6)%7;return d(Math.floor(r/7),2)},"%y":function(e){return(e.tm_year+1900).toString().substring(2)},"%Y":function(e){return e.tm_year+1900},"%z":function(e){var r=e.tm_gmtoff,t=r>=0;return r=(r=Math.abs(r)/60)/60*100+r%60,(t?"+":"-")+String("0000"+r).slice(-4)},"%Z":function(e){return e.tm_zone},"%%":function(){return"%"}};for(var s in i=i.replace(/%%/g,"\0\0"),y)i.includes(s)&&(i=i.replace(new RegExp(s,"g"),y[s](o)));var h,g,x,_=(g=C(h=i=i.replace(/\0\0/g,"%"))+1,w(h,x=new Array(g),0,x.length),x);return _.length>r?0:(function(e,r){T.set(e,r)}(_,e),_.length-1)}(e,r,t,n)}},Vr=(function(){var e={a:Ur};function r(e,r){var t,n=e.exports;a.asm=n,M((v=a.asm.Xc).buffer),R=a.asm._c,t=a.asm.Yc,G.unshift(t),K()}function t(e){r(e.instance)}function o(r){return(d||"function"!=typeof fetch?Promise.resolve().then((function(){return Z(U)})):fetch(U,{credentials:"same-origin"}).then((function(e){if(!e.ok)throw"failed to load wasm binary file at '"+U+"'";return e.arrayBuffer()})).catch((function(){return Z(U)}))).then((function(r){return WebAssembly.instantiate(r,e)})).then((function(e){return e})).then(r,(function(e){l("failed to asynchronously prepare wasm: "+e),X(e)}))}if(J(),a.instantiateWasm)try{return a.instantiateWasm(e,r)}catch(e){return l("Module.instantiateWasm callback failed with error: "+e),!1}(d||"function"!=typeof WebAssembly.instantiateStreaming||Q(U)||"function"!=typeof fetch?o(t):fetch(U,{credentials:"same-origin"}).then((function(r){return WebAssembly.instantiateStreaming(r,e).then(t,(function(e){return l("wasm streaming compile failed: "+e),l("falling back to ArrayBuffer instantiation"),o(t)}))}))).catch(n)}(),a.___wasm_call_ctors=function(){return(a.___wasm_call_ctors=a.asm.Yc).apply(null,arguments)},a._malloc=function(){return(Vr=a._malloc=a.asm.Zc).apply(null,arguments)}),Nr=a._free=function(){return(Nr=a._free=a.asm.$c).apply(null,arguments)},Gr=a.___getTypeName=function(){return(Gr=a.___getTypeName=a.asm.ad).apply(null,arguments)},Hr=(a.___embind_register_native_and_builtin_types=function(){return(a.___embind_register_native_and_builtin_types=a.asm.bd).apply(null,arguments)},a._setThrew=function(){return(Hr=a._setThrew=a.asm.cd).apply(null,arguments)}),Yr=a.stackSave=function(){return(Yr=a.stackSave=a.asm.dd).apply(null,arguments)},zr=a.stackRestore=function(){return(zr=a.stackRestore=a.asm.ed).apply(null,arguments)};function qr(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}function Jr(e){function r(){Rr||(Rr=!0,a.calledRun=!0,y||(ee(G),t(a),a.onRuntimeInitialized&&a.onRuntimeInitialized(),function(){if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)e=a.postRun.shift(),H.unshift(e);var e;ee(H)}()))}e=e||i,Y>0||(function(){if(a.preRun)for("function"==typeof a.preRun&&(a.preRun=[a.preRun]);a.preRun.length;)e=a.preRun.shift(),N.unshift(e);var e;ee(N)}(),Y>0||(a.setStatus?(a.setStatus("Running..."),setTimeout((function(){setTimeout((function(){a.setStatus("")}),1),r()}),1)):r()))}if(a.dynCall_viji=function(){return(a.dynCall_viji=a.asm.fd).apply(null,arguments)},a.dynCall_vijiii=function(){return(a.dynCall_vijiii=a.asm.gd).apply(null,arguments)},a.dynCall_viiiiij=function(){return(a.dynCall_viiiiij=a.asm.hd).apply(null,arguments)},a.dynCall_jii=function(){return(a.dynCall_jii=a.asm.id).apply(null,arguments)},a.dynCall_vij=function(){return(a.dynCall_vij=a.asm.jd).apply(null,arguments)},a.dynCall_iiij=function(){return(a.dynCall_iiij=a.asm.kd).apply(null,arguments)},a.dynCall_iiiij=function(){return(a.dynCall_iiiij=a.asm.ld).apply(null,arguments)},a.dynCall_viij=function(){return(a.dynCall_viij=a.asm.md).apply(null,arguments)},a.dynCall_viiij=function(){return(a.dynCall_viiij=a.asm.nd).apply(null,arguments)},a.dynCall_ji=function(){return(a.dynCall_ji=a.asm.od).apply(null,arguments)},a.dynCall_iij=function(){return(a.dynCall_iij=a.asm.pd).apply(null,arguments)},a.dynCall_jiiiiii=function(){return(a.dynCall_jiiiiii=a.asm.qd).apply(null,arguments)},a.dynCall_jiiiiji=function(){return(a.dynCall_jiiiiji=a.asm.rd).apply(null,arguments)},a.dynCall_iijj=function(){return(a.dynCall_iijj=a.asm.sd).apply(null,arguments)},a.dynCall_jiji=function(){return(a.dynCall_jiji=a.asm.td).apply(null,arguments)},a.dynCall_viijii=function(){return(a.dynCall_viijii=a.asm.ud).apply(null,arguments)},a.dynCall_iiiiij=function(){return(a.dynCall_iiiiij=a.asm.vd).apply(null,arguments)},a.dynCall_iiiiijj=function(){return(a.dynCall_iiiiijj=a.asm.wd).apply(null,arguments)},a.dynCall_iiiiiijj=function(){return(a.dynCall_iiiiiijj=a.asm.xd).apply(null,arguments)},a.GL=lr,q=function e(){Rr||Jr(),Rr||(q=e)},a.run=Jr,a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);a.preInit.length>0;)a.preInit.pop()();return Jr(),e.ready});e.exports=t}}]);
|
package/dist/ts/Manager.d.ts
CHANGED
|
@@ -47,15 +47,12 @@ export declare class Manager extends EventEmitter<ManagerEvents> {
|
|
|
47
47
|
isRunningInsideWorker(): boolean;
|
|
48
48
|
looseWebGLContext(): void;
|
|
49
49
|
private addListeners;
|
|
50
|
-
private
|
|
51
|
-
private
|
|
52
|
-
private
|
|
53
|
-
private
|
|
54
|
-
private
|
|
55
|
-
private
|
|
56
|
-
private handleZoomChange;
|
|
57
|
-
private emitPanEvent;
|
|
58
|
-
private emitZoomEvent;
|
|
50
|
+
private handlePointerDownEvent;
|
|
51
|
+
private handlePointerMoveEvent;
|
|
52
|
+
private handleGlobalPointerMoveEvent;
|
|
53
|
+
private handlePointerUpEvent;
|
|
54
|
+
private handleWheelEvent;
|
|
55
|
+
private handlePinchToZoomEvent;
|
|
59
56
|
private getDevicePixelRatio;
|
|
60
57
|
private setCanvasSize;
|
|
61
58
|
private handleCanvasResizeObserver;
|
|
@@ -67,7 +64,13 @@ export declare class Manager extends EventEmitter<ManagerEvents> {
|
|
|
67
64
|
generateDocumentPNG(): Promise<Uint8Array | undefined>;
|
|
68
65
|
getDocument(): import("..").SketchWebDocument | Promise<null> | Promise<import("..").SketchWebDocument> | null | undefined;
|
|
69
66
|
getArtboardAtPosition(x: number, y: number): Promise<string | null>;
|
|
70
|
-
getPanAtPosition(x: number, y: number):
|
|
67
|
+
getPanAtPosition(x: number, y: number): Promise<undefined> | {
|
|
68
|
+
x: number;
|
|
69
|
+
y: number;
|
|
70
|
+
} | Promise<{
|
|
71
|
+
x: number;
|
|
72
|
+
y: number;
|
|
73
|
+
}> | undefined;
|
|
71
74
|
setPan(x: number, y: number, centerPointInViewport?: boolean): Promise<void>;
|
|
72
75
|
setZoom(zoom: number, center?: {
|
|
73
76
|
x: number;
|
|
@@ -75,7 +78,14 @@ export declare class Manager extends EventEmitter<ManagerEvents> {
|
|
|
75
78
|
}): Promise<void>;
|
|
76
79
|
private getCanvasCenterPoint;
|
|
77
80
|
getZoom(): number | Promise<undefined> | Promise<number> | undefined;
|
|
78
|
-
getPan():
|
|
81
|
+
getPan(): Promise<undefined> | {
|
|
82
|
+
x: number;
|
|
83
|
+
y: number;
|
|
84
|
+
} | Promise<{
|
|
85
|
+
x: number;
|
|
86
|
+
y: number;
|
|
87
|
+
}> | undefined;
|
|
88
|
+
setIsCameraLocked(isLocked: boolean): void;
|
|
79
89
|
dispose(): Promise<void>;
|
|
80
90
|
}
|
|
81
91
|
export {};
|
package/dist/ts/Manager.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Manager.d.ts","sourceRoot":"","sources":["../../src/ts/Manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AACvD,OAAO,EAAa,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAEhD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAGnD,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAEhE,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAEzD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"Manager.d.ts","sourceRoot":"","sources":["../../src/ts/Manager.ts"],"names":[],"mappings":"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"}
|
package/dist/ts/SketchWeb.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ import { SketchWebMode } from './types/Mode';
|
|
|
5
5
|
import { SketchWebDocument } from './types/WASM';
|
|
6
6
|
import { SketchWebEvents } from './types/Events';
|
|
7
7
|
import { ColorRGBA } from './types/Color';
|
|
8
|
+
import { PointerInfo } from './types/PointerInfo';
|
|
8
9
|
export interface SketchWebSettings {
|
|
9
10
|
canvas: HTMLCanvasElement | OffscreenCanvas;
|
|
10
11
|
locateFile: string;
|
|
@@ -54,7 +55,9 @@ export declare class SketchWeb extends EventEmitter<SketchWebEvents> {
|
|
|
54
55
|
featureFlags: typeof FeatureFlags;
|
|
55
56
|
private wasmModule?;
|
|
56
57
|
private sketchWebWasm?;
|
|
57
|
-
private
|
|
58
|
+
private userEventsCollectorWasm?;
|
|
59
|
+
private pointerTypeToWASMMap;
|
|
60
|
+
private prCursorTypeToCSSCursorMap;
|
|
58
61
|
private deviceInfo;
|
|
59
62
|
/**
|
|
60
63
|
* Renderer using a WebGL surface
|
|
@@ -72,6 +75,7 @@ export declare class SketchWeb extends EventEmitter<SketchWebEvents> {
|
|
|
72
75
|
private createJSBridge;
|
|
73
76
|
downloadImages(): Promise<void>;
|
|
74
77
|
private initSketchWebWasm;
|
|
78
|
+
setIsCameraLocked(isLocked: boolean): void;
|
|
75
79
|
setBackgroundColor(color: ColorRGBA): void;
|
|
76
80
|
generateDocumentPNG(): Promise<Uint8Array>;
|
|
77
81
|
private handleWebGLContextLost;
|
|
@@ -87,11 +91,7 @@ export declare class SketchWeb extends EventEmitter<SketchWebEvents> {
|
|
|
87
91
|
scaleDocumentToFit(): void;
|
|
88
92
|
/** Load the presentation file at the given URL into the renderer */
|
|
89
93
|
private setFile;
|
|
90
|
-
private delayedDraw;
|
|
91
|
-
private debouncedFullDraw;
|
|
92
|
-
private draw;
|
|
93
94
|
private fail;
|
|
94
|
-
setPixelRatio(ratio: number): void;
|
|
95
95
|
setSize(width: number, height: number, pixelRatio: number): void;
|
|
96
96
|
private setStatus;
|
|
97
97
|
/**
|
|
@@ -104,30 +104,40 @@ export declare class SketchWeb extends EventEmitter<SketchWebEvents> {
|
|
|
104
104
|
* element origin in the browser, or null if there is no Artboard at that
|
|
105
105
|
* position.
|
|
106
106
|
*/
|
|
107
|
-
getArtboardAtPosition(x: number, y: number): string | undefined;
|
|
107
|
+
getArtboardAtPosition(x: number, y: number): string | null | undefined;
|
|
108
108
|
/**
|
|
109
109
|
* Get the current pan value for a given point relative to the viewport
|
|
110
110
|
* Use case: when the user clicks on the canvas, we want to know what's
|
|
111
111
|
* the corresponding pan value at a given mouse position, so that we can restore the pan value later
|
|
112
112
|
*/
|
|
113
|
-
getPanAtPosition(x: number, y: number):
|
|
113
|
+
getPanAtPosition(x: number, y: number): {
|
|
114
|
+
x: number;
|
|
115
|
+
y: number;
|
|
116
|
+
} | undefined;
|
|
114
117
|
getStatus(): SketchWebStatus;
|
|
115
118
|
setZoom(delta: number, center: {
|
|
116
119
|
x: number;
|
|
117
120
|
y: number;
|
|
118
121
|
}): void;
|
|
119
|
-
|
|
122
|
+
getPan(): {
|
|
123
|
+
x: number;
|
|
124
|
+
y: number;
|
|
125
|
+
} | undefined;
|
|
126
|
+
getZoom(): number | undefined;
|
|
127
|
+
handlePinchToZoomEvent(scaleDelta: number, center: {
|
|
120
128
|
x: number;
|
|
121
129
|
y: number;
|
|
122
130
|
}): void;
|
|
123
|
-
private
|
|
124
|
-
private notifyZoomDidEndDebounced;
|
|
131
|
+
private pointerInfoToWASM;
|
|
125
132
|
setPan(x: number, y: number, centerPointInViewport?: boolean): void;
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
133
|
+
handleWheelEvent(delta: {
|
|
134
|
+
x: number;
|
|
135
|
+
y: number;
|
|
136
|
+
}, pointerInfo: PointerInfo): void;
|
|
137
|
+
handlePointerDownEvent(pointerInfo: PointerInfo): void;
|
|
138
|
+
handlePointerMoveEvent(pointerInfo: PointerInfo): void;
|
|
139
|
+
setGlobalPointerPosition(pointerInfo: PointerInfo): void;
|
|
140
|
+
handlePointerUpEvent(pointerInfo: PointerInfo): void;
|
|
131
141
|
dispose(): void;
|
|
132
142
|
}
|
|
133
143
|
//# sourceMappingURL=SketchWeb.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SketchWeb.d.ts","sourceRoot":"","sources":["../../src/ts/SketchWeb.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SketchWeb.d.ts","sourceRoot":"","sources":["../../src/ts/SketchWeb.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SketchWebProvider.d.ts","sourceRoot":"","sources":["../../../src/ts/react/SketchWebProvider.tsx"],"names":[],"mappings":"AACA,OAAc,EAAE,EAAE,EAA4C,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"SketchWebProvider.d.ts","sourceRoot":"","sources":["../../../src/ts/react/SketchWebProvider.tsx"],"names":[],"mappings":"AACA,OAAc,EAAE,EAAE,EAA4C,MAAM,OAAO,CAAA;AAkB3E;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,iBAAiB,EAAE,EAkM/B,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { SketchWebDocument } from '../types/WASM';
|
|
2
|
+
import { CSSCursor } from '../types/CSSCursor';
|
|
2
3
|
/**
|
|
3
4
|
* Context for the renderer `status` value.
|
|
4
5
|
*/
|
|
@@ -19,6 +20,9 @@ export declare const StatusContext: import("react").Context<{
|
|
|
19
20
|
} | {
|
|
20
21
|
type: "WEBGL_CONTEXT_LOST";
|
|
21
22
|
} | {
|
|
23
|
+
/**
|
|
24
|
+
* Document context
|
|
25
|
+
*/
|
|
22
26
|
type: "DISPOSED";
|
|
23
27
|
} | null | undefined>;
|
|
24
28
|
/**
|
|
@@ -47,5 +51,5 @@ export declare const PanContext: import("react").Context<{
|
|
|
47
51
|
/**
|
|
48
52
|
* Context for the renderer `cursor` value.
|
|
49
53
|
*/
|
|
50
|
-
export declare const CursorContext: import("react").Context<
|
|
54
|
+
export declare const CursorContext: import("react").Context<CSSCursor>;
|
|
51
55
|
//# sourceMappingURL=contexts.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contexts.d.ts","sourceRoot":"","sources":["../../../src/ts/react/contexts.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"contexts.d.ts","sourceRoot":"","sources":["../../../src/ts/react/contexts.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAE9C;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;IAI1B;;OAEG;;qBAJF,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,+DAEhB,CAAA;AAEZ;;GAEG;AACH,eAAO,MAAM,WAAW,oDAAsD,CAAA;AAE9E;;GAEG;AACH,eAAO,MAAM,oBAAoB,qDAEhC,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,qDAE7B,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,UAAU;OAChB,MAAM;OAAK,MAAM;qBACZ,CAAA;AAEZ;;GAEG;AACH,eAAO,MAAM,aAAa,oCAA2C,CAAA"}
|
|
@@ -44,7 +44,10 @@ export declare const useGetArtboardAtPosititon: () => (x: number, y: number) =>
|
|
|
44
44
|
* Returns a function that can be used to find out the equivalent pan position
|
|
45
45
|
* at specific mouse coordinates relative to the canvas origin.
|
|
46
46
|
*/
|
|
47
|
-
export declare const useGetPanAtPosition: () => (x: number, y: number) => Promise<
|
|
47
|
+
export declare const useGetPanAtPosition: () => (x: number, y: number) => Promise<{
|
|
48
|
+
x: number;
|
|
49
|
+
y: number;
|
|
50
|
+
} | null>;
|
|
48
51
|
/**
|
|
49
52
|
* Disable user interaction like panning and zooming. This is useful when
|
|
50
53
|
* showing the context menu and we don't want users to mess with its position
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../../src/ts/react/hooks/actions.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,eAAO,MAAM,UAAU,eAIZ,MAAM,SAMhB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../../src/ts/react/hooks/actions.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,eAAO,MAAM,UAAU,eAIZ,MAAM,SAMhB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,kBAkB5B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,kBAS5B,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,SAAS;OAIf,MAAM;OACN,MAAM;;UAWZ,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY,kBAOxB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,kBAOhC,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,sBAAsB,6CAOlC,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,yBAAyB,YAIxB,MAAM,KAAK,MAAM,2BAO9B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,YAIlB,MAAM,KAAK,MAAM;;;SAO9B,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,aAAa,iBAIb,OAAO,SAOnB,CAAA"}
|
|
@@ -38,7 +38,7 @@ export declare const usePan: () => {
|
|
|
38
38
|
/**
|
|
39
39
|
* Access the renderer `cursor` value.
|
|
40
40
|
*/
|
|
41
|
-
export declare const useCursor: () => "
|
|
41
|
+
export declare const useCursor: () => import("../../types/CSSCursor").CSSCursor;
|
|
42
42
|
/**
|
|
43
43
|
* Access the renderer `isCameraMoving` value.
|
|
44
44
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../../src/ts/react/hooks/state.ts"],"names":[],"mappings":"AAWA;;GAEG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;QAQrB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,WAAW,mDAQvB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,OAAO,qBAQnB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,MAAM;;;QAQlB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../../src/ts/react/hooks/state.ts"],"names":[],"mappings":"AAWA;;GAEG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;QAQrB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,WAAW,mDAQvB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,OAAO,qBAQnB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,MAAM;;;QAQlB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,SAAS,iDAQrB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,kCAQ9B,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,kCAQ7B,CAAA"}
|
|
@@ -4,5 +4,5 @@ import { ManagerEvents } from '../../types/Events';
|
|
|
4
4
|
* references from useCallback to this hook to avoid calling `on`/`off` every
|
|
5
5
|
* render.
|
|
6
6
|
*/
|
|
7
|
-
export declare const useEvent: <K extends "status" | "warnings" | "metric" | "allImagesReady" | "fileReady" | "deviceInfo" | "
|
|
7
|
+
export declare const useEvent: <K extends "status" | "warnings" | "metric" | "allImagesReady" | "fileReady" | "deviceInfo" | "cameraMoveStart" | "cameraMoveEnd" | "cameraZoomStart" | "cameraZoomEnd" | "cameraZoomChange" | "cameraPanChange" | "cursorChange">(event: K, callback: ManagerEvents[K]) => void;
|
|
8
8
|
//# sourceMappingURL=useEvent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useEvent.d.ts","sourceRoot":"","sources":["../../../../src/ts/react/hooks/useEvent.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD;;;;GAIG;AACH,eAAO,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"useEvent.d.ts","sourceRoot":"","sources":["../../../../src/ts/react/hooks/useEvent.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD;;;;GAIG;AACH,eAAO,MAAM,QAAQ,kRAapB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reducer.d.ts","sourceRoot":"","sources":["../../../src/ts/react/reducer.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"reducer.d.ts","sourceRoot":"","sources":["../../../src/ts/react/reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAGrD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,OAAO,UACX,YAAY,UACX,aAAa,KACpB,YAgEF,CAAA"}
|
package/dist/ts/react/types.d.ts
CHANGED
|
@@ -1,16 +1,7 @@
|
|
|
1
1
|
import { ManagerSettings } from '../Manager';
|
|
2
2
|
import { SketchWebStatus } from '../types/Status';
|
|
3
3
|
import { SketchWebDocument } from '../types/WASM';
|
|
4
|
-
|
|
5
|
-
* Possible CSS pointer property values that can be applied to the renderer
|
|
6
|
-
* canvas element.
|
|
7
|
-
*/
|
|
8
|
-
export declare enum CanvasCursor {
|
|
9
|
-
Draggable = "grab",
|
|
10
|
-
Dragging = "grabbing",
|
|
11
|
-
Hover = "pointer",
|
|
12
|
-
Default = "auto"
|
|
13
|
-
}
|
|
4
|
+
import { CSSCursor } from '../types/CSSCursor';
|
|
14
5
|
/**
|
|
15
6
|
* State definition for the source of truth state reducer.
|
|
16
7
|
*/
|
|
@@ -23,8 +14,7 @@ export declare type ReducerState = {
|
|
|
23
14
|
} | null;
|
|
24
15
|
isCameraMoving: boolean;
|
|
25
16
|
isCameraZooming: boolean;
|
|
26
|
-
cursor:
|
|
27
|
-
isMouseDown: boolean;
|
|
17
|
+
cursor: CSSCursor;
|
|
28
18
|
document: SketchWebDocument | null;
|
|
29
19
|
};
|
|
30
20
|
/**
|
|
@@ -64,9 +54,8 @@ export declare type ReducerAction = {
|
|
|
64
54
|
} | {
|
|
65
55
|
type: 'on-camera-zoom-end';
|
|
66
56
|
} | {
|
|
67
|
-
type: 'on-
|
|
68
|
-
|
|
69
|
-
type: 'on-mouse-up';
|
|
57
|
+
type: 'on-cursor-change';
|
|
58
|
+
cursor: CSSCursor;
|
|
70
59
|
};
|
|
71
60
|
/**
|
|
72
61
|
* All Manager static settings, with the "reactive" filePath property omitted.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ts/react/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ts/react/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAE9C;;GAEG;AACH,oBAAY,YAAY,GAAG;IACzB,MAAM,EAAE,eAAe,GAAG,IAAI,CAAA;IAC9B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,GAAG,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;IACpC,cAAc,EAAE,OAAO,CAAA;IACvB,eAAe,EAAE,OAAO,CAAA;IACxB,MAAM,EAAE,SAAS,CAAA;IACjB,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAA;CACnC,CAAA;AAED;;GAEG;AACH,oBAAY,aAAa,GACrB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,GAAG,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;CAAE,GACxD;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAAA;CAAE,GACrD;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,QAAQ,EAAE,iBAAiB,CAAA;CAAE,GACtD;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IACE,IAAI,EAAE,WAAW,CAAA;IACjB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,MAAM,EAAE,eAAe,GAAG,IAAI,CAAA;IAC9B,GAAG,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;CACrC,GACD;IAAE,IAAI,EAAE,sBAAsB,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,oBAAoB,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,sBAAsB,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,oBAAoB,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAE,CAAA;AAEnD;;GAEG;AACH,oBAAY,sBAAsB,GAAG,IAAI,CACvC,eAAe,EACf,UAAU,GAAG,QAAQ,GAAG,WAAW,CACpC,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Possible CSS pointer property values that can be applied to the renderer
|
|
3
|
+
* canvas element.
|
|
4
|
+
*/
|
|
5
|
+
export declare const enum CSSCursor {
|
|
6
|
+
Auto = "auto",
|
|
7
|
+
Default = "default",
|
|
8
|
+
Pointer = "pointer",
|
|
9
|
+
Grab = "grab",
|
|
10
|
+
Grabbing = "grabbing"
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=CSSCursor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CSSCursor.d.ts","sourceRoot":"","sources":["../../../src/ts/types/CSSCursor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,0BAAkB,SAAS;IACzB,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,QAAQ,aAAa;CACtB"}
|
|
@@ -3,6 +3,7 @@ import { Metric } from './Metric';
|
|
|
3
3
|
import { SketchWebWarning } from './Warning';
|
|
4
4
|
import { SketchWebDocument } from './WASM';
|
|
5
5
|
import { DeviceInfo } from './DeviceInfo';
|
|
6
|
+
import { CSSCursor } from './CSSCursor';
|
|
6
7
|
export interface SketchWebEvents {
|
|
7
8
|
status: (status: SketchWebStatus) => void;
|
|
8
9
|
warnings: (warnings: SketchWebWarning[]) => void;
|
|
@@ -10,11 +11,14 @@ export interface SketchWebEvents {
|
|
|
10
11
|
allImagesReady: () => void;
|
|
11
12
|
fileReady: (document: SketchWebDocument, fileIdentifierAndVersion: string, weightInBytes: number, imagesCount: number) => void;
|
|
12
13
|
deviceInfo: (deviceInfo: DeviceInfo) => void;
|
|
14
|
+
cameraMoveStart: () => void;
|
|
15
|
+
cameraMoveEnd: () => void;
|
|
16
|
+
cameraZoomStart: () => void;
|
|
17
|
+
cameraZoomEnd: () => void;
|
|
18
|
+
cameraZoomChange: (zoom: number) => void;
|
|
19
|
+
cameraPanChange: (x: number, y: number) => void;
|
|
20
|
+
cursorChange: (cursor: CSSCursor) => void;
|
|
13
21
|
}
|
|
14
22
|
export interface ManagerEvents extends SketchWebEvents {
|
|
15
|
-
pan: (x: number, y: number) => void;
|
|
16
|
-
zoom: (zoom: number) => void;
|
|
17
|
-
zoomStart: () => void;
|
|
18
|
-
zoomEnd: () => void;
|
|
19
23
|
}
|
|
20
24
|
//# sourceMappingURL=Events.d.ts.map
|