@grida/canvas-wasm 0.0.62 → 0.0.64

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.
Binary file
package/dist/index.d.mts CHANGED
@@ -266,6 +266,13 @@ declare class FontsAPI {
266
266
  parseFont(fontData: ArrayBuffer | Uint8Array, faceId: string, userFontStyleItalic?: boolean): Promise<fonts.types.FaceRecord>;
267
267
  }
268
268
 
269
+ interface CreateImageResourceResult {
270
+ hash: string;
271
+ url: string;
272
+ width: number;
273
+ height: number;
274
+ type: string;
275
+ }
269
276
  declare class Scene {
270
277
  private appptr;
271
278
  private module;
@@ -306,7 +313,12 @@ declare class Scene {
306
313
  * @param data - Raw font file bytes (e.g. TTF/OTF).
307
314
  */
308
315
  addFont(family: string, data: Uint8Array): void;
309
- addImage(data: Uint8Array): string;
316
+ addImage(data: Uint8Array): CreateImageResourceResult | false;
317
+ getImageBytes(ref: string): Uint8Array | null;
318
+ getImageSize(ref: string): {
319
+ width: number;
320
+ height: number;
321
+ } | null;
310
322
  hasMissingFonts(): boolean;
311
323
  listMissingFonts(): types.FontKey[];
312
324
  listAvailableFonts(): types.FontKey[];
package/dist/index.d.ts CHANGED
@@ -266,6 +266,13 @@ declare class FontsAPI {
266
266
  parseFont(fontData: ArrayBuffer | Uint8Array, faceId: string, userFontStyleItalic?: boolean): Promise<fonts.types.FaceRecord>;
267
267
  }
268
268
 
269
+ interface CreateImageResourceResult {
270
+ hash: string;
271
+ url: string;
272
+ width: number;
273
+ height: number;
274
+ type: string;
275
+ }
269
276
  declare class Scene {
270
277
  private appptr;
271
278
  private module;
@@ -306,7 +313,12 @@ declare class Scene {
306
313
  * @param data - Raw font file bytes (e.g. TTF/OTF).
307
314
  */
308
315
  addFont(family: string, data: Uint8Array): void;
309
- addImage(data: Uint8Array): string;
316
+ addImage(data: Uint8Array): CreateImageResourceResult | false;
317
+ getImageBytes(ref: string): Uint8Array | null;
318
+ getImageSize(ref: string): {
319
+ width: number;
320
+ height: number;
321
+ } | null;
310
322
  hasMissingFonts(): boolean;
311
323
  listMissingFonts(): types.FontKey[];
312
324
  listAvailableFonts(): types.FontKey[];
package/dist/index.js CHANGED
@@ -117,7 +117,7 @@ var require_grida_canvas_wasm = __commonJS({
117
117
  runtimeInitialized = true;
118
118
  if (!Module["noFSInit"] && !FS.initialized) FS.init();
119
119
  TTY.init();
120
- wasmExports["lg"]();
120
+ wasmExports["ng"]();
121
121
  FS.ignorePermissions = false;
122
122
  }
123
123
  function preMain() {
@@ -216,9 +216,9 @@ var require_grida_canvas_wasm = __commonJS({
216
216
  async function createWasm() {
217
217
  function receiveInstance(instance, module3) {
218
218
  wasmExports = instance.exports;
219
- wasmMemory = wasmExports["kg"];
219
+ wasmMemory = wasmExports["mg"];
220
220
  updateMemoryViews();
221
- wasmTable = wasmExports["mg"];
221
+ wasmTable = wasmExports["og"];
222
222
  removeRunDependency("wasm-instantiate");
223
223
  return wasmExports;
224
224
  }
@@ -4995,59 +4995,61 @@ var require_grida_canvas_wasm = __commonJS({
4995
4995
  Module["stringToUTF8"] = stringToUTF8;
4996
4996
  Module["lengthBytesUTF8"] = lengthBytesUTF8;
4997
4997
  Module["GL"] = GL;
4998
- var wasmImports = { w: ___cxa_begin_catch, A: ___cxa_end_catch, a: ___cxa_find_matching_catch_2, n: ___cxa_find_matching_catch_3, K: ___cxa_find_matching_catch_4, ba: ___cxa_rethrow, x: ___cxa_throw, eb: ___cxa_uncaught_exceptions, d: ___resumeException, da: ___syscall_fcntl64, sb: ___syscall_fstat64, ob: ___syscall_getcwd, vb: ___syscall_ioctl, pb: ___syscall_lstat64, qb: ___syscall_newfstatat, ca: ___syscall_openat, rb: ___syscall_stat64, yb: __abort_js, gb: __emscripten_throw_longjmp, lb: __gmtime_js, jb: __mmap_js, kb: __munmap_js, zb: __tzset_js, xb: _clock_time_get, wb: _emscripten_date_now, Q: _emscripten_get_now, Gf: _emscripten_glActiveTexture, Hf: _emscripten_glAttachShader, je: _emscripten_glBeginQuery, ce: _emscripten_glBeginQueryEXT, Ic: _emscripten_glBeginTransformFeedback, If: _emscripten_glBindAttribLocation, Jf: _emscripten_glBindBuffer, Fc: _emscripten_glBindBufferBase, Gc: _emscripten_glBindBufferRange, He: _emscripten_glBindFramebuffer, Ie: _emscripten_glBindRenderbuffer, pe: _emscripten_glBindSampler, Kf: _emscripten_glBindTexture, Ub: _emscripten_glBindTransformFeedback, bf: _emscripten_glBindVertexArray, ef: _emscripten_glBindVertexArrayOES, Lf: _emscripten_glBlendColor, Mf: _emscripten_glBlendEquation, Md: _emscripten_glBlendEquationSeparate, Nf: _emscripten_glBlendFunc, Ld: _emscripten_glBlendFuncSeparate, Be: _emscripten_glBlitFramebuffer, Of: _emscripten_glBufferData, Pf: _emscripten_glBufferSubData, Je: _emscripten_glCheckFramebufferStatus, Qf: _emscripten_glClear, ic: _emscripten_glClearBufferfi, jc: _emscripten_glClearBufferfv, lc: _emscripten_glClearBufferiv, kc: _emscripten_glClearBufferuiv, Rf: _emscripten_glClearColor, Kd: _emscripten_glClearDepthf, Sf: _emscripten_glClearStencil, ye: _emscripten_glClientWaitSync, bd: _emscripten_glClipControlEXT, Tf: _emscripten_glColorMask, Uf: _emscripten_glCompileShader, Vf: _emscripten_glCompressedTexImage2D, Uc: _emscripten_glCompressedTexImage3D, Wf: _emscripten_glCompressedTexSubImage2D, Tc: _emscripten_glCompressedTexSubImage3D, Ae: _emscripten_glCopyBufferSubData, Jd: _emscripten_glCopyTexImage2D, Xf: _emscripten_glCopyTexSubImage2D, Vc: _emscripten_glCopyTexSubImage3D, Yf: _emscripten_glCreateProgram, Zf: _emscripten_glCreateShader, _f: _emscripten_glCullFace, $f: _emscripten_glDeleteBuffers, Ke: _emscripten_glDeleteFramebuffers, ag: _emscripten_glDeleteProgram, ke: _emscripten_glDeleteQueries, de: _emscripten_glDeleteQueriesEXT, Le: _emscripten_glDeleteRenderbuffers, qe: _emscripten_glDeleteSamplers, bg: _emscripten_glDeleteShader, ze: _emscripten_glDeleteSync, cg: _emscripten_glDeleteTextures, Tb: _emscripten_glDeleteTransformFeedbacks, cf: _emscripten_glDeleteVertexArrays, ff: _emscripten_glDeleteVertexArraysOES, Id: _emscripten_glDepthFunc, dg: _emscripten_glDepthMask, Hd: _emscripten_glDepthRangef, Gd: _emscripten_glDetachShader, eg: _emscripten_glDisable, fg: _emscripten_glDisableVertexAttribArray, gg: _emscripten_glDrawArrays, $e: _emscripten_glDrawArraysInstanced, Pd: _emscripten_glDrawArraysInstancedANGLE, Fb: _emscripten_glDrawArraysInstancedARB, Ye: _emscripten_glDrawArraysInstancedBaseInstanceWEBGL, _c: _emscripten_glDrawArraysInstancedEXT, Gb: _emscripten_glDrawArraysInstancedNV, We: _emscripten_glDrawBuffers, Yc: _emscripten_glDrawBuffersEXT, Qd: _emscripten_glDrawBuffersWEBGL, hg: _emscripten_glDrawElements, af: _emscripten_glDrawElementsInstanced, Od: _emscripten_glDrawElementsInstancedANGLE, Db: _emscripten_glDrawElementsInstancedARB, Ze: _emscripten_glDrawElementsInstancedBaseVertexBaseInstanceWEBGL, Eb: _emscripten_glDrawElementsInstancedEXT, Zc: _emscripten_glDrawElementsInstancedNV, Qe: _emscripten_glDrawRangeElements, ig: _emscripten_glEnable, jg: _emscripten_glEnableVertexAttribArray, le: _emscripten_glEndQuery, ee: _emscripten_glEndQueryEXT, Hc: _emscripten_glEndTransformFeedback, ve: _emscripten_glFenceSync, ha: _emscripten_glFinish, ia: _emscripten_glFlush, Me: _emscripten_glFramebufferRenderbuffer, Ne: _emscripten_glFramebufferTexture2D, Lc: _emscripten_glFramebufferTextureLayer, ja: _emscripten_glFrontFace, ka: _emscripten_glGenBuffers, Oe: _emscripten_glGenFramebuffers, me: _emscripten_glGenQueries, fe: _emscripten_glGenQueriesEXT, Pe: _emscripten_glGenRenderbuffers, re: _emscripten_glGenSamplers, la: _emscripten_glGenTextures, Sb: _emscripten_glGenTransformFeedbacks, _e: _emscripten_glGenVertexArrays, gf: _emscripten_glGenVertexArraysOES, De: _emscripten_glGenerateMipmap, Fd: _emscripten_glGetActiveAttrib, Ed: _emscripten_glGetActiveUniform, dc: _emscripten_glGetActiveUniformBlockName, ec: _emscripten_glGetActiveUniformBlockiv, gc: _emscripten_glGetActiveUniformsiv, Dd: _emscripten_glGetAttachedShaders, Cd: _emscripten_glGetAttribLocation, Bd: _emscripten_glGetBooleanv, _b: _emscripten_glGetBufferParameteri64v, ma: _emscripten_glGetBufferParameteriv, na: _emscripten_glGetError, oa: _emscripten_glGetFloatv, vc: _emscripten_glGetFragDataLocation, Ee: _emscripten_glGetFramebufferAttachmentParameteriv, $b: _emscripten_glGetInteger64i_v, bc: _emscripten_glGetInteger64v, Jc: _emscripten_glGetIntegeri_v, pa: _emscripten_glGetIntegerv, Jb: _emscripten_glGetInternalformativ, Ob: _emscripten_glGetProgramBinary, qa: _emscripten_glGetProgramInfoLog, ra: _emscripten_glGetProgramiv, $d: _emscripten_glGetQueryObjecti64vEXT, Sd: _emscripten_glGetQueryObjectivEXT, ae: _emscripten_glGetQueryObjectui64vEXT, ne: _emscripten_glGetQueryObjectuiv, he: _emscripten_glGetQueryObjectuivEXT, oe: _emscripten_glGetQueryiv, ie: _emscripten_glGetQueryivEXT, Fe: _emscripten_glGetRenderbufferParameteriv, Vb: _emscripten_glGetSamplerParameterfv, Wb: _emscripten_glGetSamplerParameteriv, sa: _emscripten_glGetShaderInfoLog, Yd: _emscripten_glGetShaderPrecisionFormat, Ad: _emscripten_glGetShaderSource, ta: _emscripten_glGetShaderiv, ua: _emscripten_glGetString, df: _emscripten_glGetStringi, ac: _emscripten_glGetSynciv, zd: _emscripten_glGetTexParameterfv, yd: _emscripten_glGetTexParameteriv, Dc: _emscripten_glGetTransformFeedbackVarying, fc: _emscripten_glGetUniformBlockIndex, hc: _emscripten_glGetUniformIndices, va: _emscripten_glGetUniformLocation, xd: _emscripten_glGetUniformfv, wd: _emscripten_glGetUniformiv, wc: _emscripten_glGetUniformuiv, Cc: _emscripten_glGetVertexAttribIiv, Bc: _emscripten_glGetVertexAttribIuiv, td: _emscripten_glGetVertexAttribPointerv, vd: _emscripten_glGetVertexAttribfv, ud: _emscripten_glGetVertexAttribiv, sd: _emscripten_glHint, Zd: _emscripten_glInvalidateFramebuffer, _d: _emscripten_glInvalidateSubFramebuffer, rd: _emscripten_glIsBuffer, qd: _emscripten_glIsEnabled, pd: _emscripten_glIsFramebuffer, od: _emscripten_glIsProgram, Sc: _emscripten_glIsQuery, Td: _emscripten_glIsQueryEXT, nd: _emscripten_glIsRenderbuffer, Zb: _emscripten_glIsSampler, md: _emscripten_glIsShader, we: _emscripten_glIsSync, wa: _emscripten_glIsTexture, Rb: _emscripten_glIsTransformFeedback, Kc: _emscripten_glIsVertexArray, Rd: _emscripten_glIsVertexArrayOES, xa: _emscripten_glLineWidth, ya: _emscripten_glLinkProgram, Ue: _emscripten_glMultiDrawArraysInstancedBaseInstanceWEBGL, Ve: _emscripten_glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL, Qb: _emscripten_glPauseTransformFeedback, za: _emscripten_glPixelStorei, ad: _emscripten_glPolygonModeWEBGL, ld: _emscripten_glPolygonOffset, cd: _emscripten_glPolygonOffsetClampEXT, Mb: _emscripten_glProgramBinary, Lb: _emscripten_glProgramParameteri, be: _emscripten_glQueryCounterEXT, Xe: _emscripten_glReadBuffer, Aa: _emscripten_glReadPixels, kd: _emscripten_glReleaseShaderCompiler, Ge: _emscripten_glRenderbufferStorage, Ce: _emscripten_glRenderbufferStorageMultisample, Pb: _emscripten_glResumeTransformFeedback, jd: _emscripten_glSampleCoverage, se: _emscripten_glSamplerParameterf, Xb: _emscripten_glSamplerParameterfv, te: _emscripten_glSamplerParameteri, ue: _emscripten_glSamplerParameteriv, Ba: _emscripten_glScissor, id: _emscripten_glShaderBinary, Ca: _emscripten_glShaderSource, Da: _emscripten_glStencilFunc, Ea: _emscripten_glStencilFuncSeparate, Fa: _emscripten_glStencilMask, Ga: _emscripten_glStencilMaskSeparate, Ha: _emscripten_glStencilOp, Ia: _emscripten_glStencilOpSeparate, Ja: _emscripten_glTexImage2D, Xc: _emscripten_glTexImage3D, Ka: _emscripten_glTexParameterf, La: _emscripten_glTexParameterfv, Ma: _emscripten_glTexParameteri, Na: _emscripten_glTexParameteriv, Re: _emscripten_glTexStorage2D, Kb: _emscripten_glTexStorage3D, Oa: _emscripten_glTexSubImage2D, Wc: _emscripten_glTexSubImage3D, Ec: _emscripten_glTransformFeedbackVaryings, Pa: _emscripten_glUniform1f, Qa: _emscripten_glUniform1fv, Cf: _emscripten_glUniform1i, Df: _emscripten_glUniform1iv, uc: _emscripten_glUniform1ui, pc: _emscripten_glUniform1uiv, Ef: _emscripten_glUniform2f, Ff: _emscripten_glUniform2fv, Bf: _emscripten_glUniform2i, Af: _emscripten_glUniform2iv, tc: _emscripten_glUniform2ui, oc: _emscripten_glUniform2uiv, zf: _emscripten_glUniform3f, yf: _emscripten_glUniform3fv, xf: _emscripten_glUniform3i, wf: _emscripten_glUniform3iv, sc: _emscripten_glUniform3ui, nc: _emscripten_glUniform3uiv, vf: _emscripten_glUniform4f, uf: _emscripten_glUniform4fv, hf: _emscripten_glUniform4i, jf: _emscripten_glUniform4iv, qc: _emscripten_glUniform4ui, mc: _emscripten_glUniform4uiv, cc: _emscripten_glUniformBlockBinding, kf: _emscripten_glUniformMatrix2fv, Rc: _emscripten_glUniformMatrix2x3fv, Pc: _emscripten_glUniformMatrix2x4fv, lf: _emscripten_glUniformMatrix3fv, Qc: _emscripten_glUniformMatrix3x2fv, Nc: _emscripten_glUniformMatrix3x4fv, mf: _emscripten_glUniformMatrix4fv, Oc: _emscripten_glUniformMatrix4x2fv, Mc: _emscripten_glUniformMatrix4x3fv, nf: _emscripten_glUseProgram, hd: _emscripten_glValidateProgram, of: _emscripten_glVertexAttrib1f, gd: _emscripten_glVertexAttrib1fv, fd: _emscripten_glVertexAttrib2f, pf: _emscripten_glVertexAttrib2fv, ed: _emscripten_glVertexAttrib3f, qf: _emscripten_glVertexAttrib3fv, dd: _emscripten_glVertexAttrib4f, rf: _emscripten_glVertexAttrib4fv, Se: _emscripten_glVertexAttribDivisor, Nd: _emscripten_glVertexAttribDivisorANGLE, Hb: _emscripten_glVertexAttribDivisorARB, $c: _emscripten_glVertexAttribDivisorEXT, Ib: _emscripten_glVertexAttribDivisorNV, Ac: _emscripten_glVertexAttribI4i, yc: _emscripten_glVertexAttribI4iv, zc: _emscripten_glVertexAttribI4ui, xc: _emscripten_glVertexAttribI4uiv, Te: _emscripten_glVertexAttribIPointer, sf: _emscripten_glVertexAttribPointer, tf: _emscripten_glViewport, xe: _emscripten_glWaitSync, Za: _emscripten_request_animation_frame_loop, hb: _emscripten_resize_heap, Ab: _environ_get, Bb: _environ_sizes_get, Ta: _exit, R: _fd_close, ib: _fd_pread, tb: _fd_read, mb: _fd_seek, L: _fd_write, Ra: _glGetIntegerv, T: _glGetString, Sa: _glGetStringi, Wd: invoke_dd, Vd: invoke_ddd, Xd: invoke_dddd, $: invoke_diii, Ud: invoke_fff, W: invoke_fi, ub: invoke_fif, aa: invoke_fiii, Cb: invoke_fiiiif, p: invoke_i, Va: invoke_if, Ya: invoke_iffiiiiiiii, f: invoke_ii, y: invoke_iif, fa: invoke_iifffi, g: invoke_iii, Xa: invoke_iiif, h: invoke_iiii, k: invoke_iiiii, db: invoke_iiiiid, O: invoke_iiiiii, s: invoke_iiiiiii, G: invoke_iiiiiiii, U: invoke_iiiiiiiiii, X: invoke_iiiiiiiiiiifiii, I: invoke_iiiiiiiiiiii, fb: invoke_j, cb: invoke_ji, l: invoke_jii, J: invoke_jiiii, o: invoke_v, b: invoke_vi, ga: invoke_vid, E: invoke_vif, D: invoke_viff, C: invoke_vifff, t: invoke_vifffff, rc: invoke_viffi, V: invoke_vifi, c: invoke_vii, F: invoke_viif, _: invoke_viiff, M: invoke_viifff, $a: invoke_viiffiii, r: invoke_viifii, e: invoke_viii, u: invoke_viiif, ea: invoke_viiifi, v: invoke_viiifif, i: invoke_viiii, Wa: invoke_viiiif, j: invoke_viiiii, Nb: invoke_viiiiiffiifff, Yb: invoke_viiiiiffiifi, m: invoke_viiiiii, Y: invoke_viiiiiiff, q: invoke_viiiiiii, z: invoke_viiiiiiii, Ua: invoke_viiiiiiiii, ge: invoke_viiiiiiiiifii, B: invoke_viiiiiiiiii, _a: invoke_viiiiiiiiiii, H: invoke_viiiiiiiiiiiiiii, Z: invoke_viij, S: invoke_viiji, bb: invoke_viji, ab: invoke_vijii, N: invoke_vijjjj, P: _llvm_eh_typeid_for, nb: _random_get };
4998
+ var wasmImports = { w: ___cxa_begin_catch, A: ___cxa_end_catch, a: ___cxa_find_matching_catch_2, n: ___cxa_find_matching_catch_3, K: ___cxa_find_matching_catch_4, X: ___cxa_rethrow, x: ___cxa_throw, gb: ___cxa_uncaught_exceptions, d: ___resumeException, Z: ___syscall_fcntl64, ub: ___syscall_fstat64, qb: ___syscall_getcwd, wb: ___syscall_ioctl, rb: ___syscall_lstat64, sb: ___syscall_newfstatat, Y: ___syscall_openat, tb: ___syscall_stat64, Ab: __abort_js, ib: __emscripten_throw_longjmp, nb: __gmtime_js, lb: __mmap_js, mb: __munmap_js, Bb: __tzset_js, zb: _clock_time_get, yb: _emscripten_date_now, P: _emscripten_get_now, Gf: _emscripten_glActiveTexture, Hf: _emscripten_glAttachShader, je: _emscripten_glBeginQuery, de: _emscripten_glBeginQueryEXT, Ic: _emscripten_glBeginTransformFeedback, If: _emscripten_glBindAttribLocation, Jf: _emscripten_glBindBuffer, Fc: _emscripten_glBindBufferBase, Gc: _emscripten_glBindBufferRange, He: _emscripten_glBindFramebuffer, Ie: _emscripten_glBindRenderbuffer, pe: _emscripten_glBindSampler, Kf: _emscripten_glBindTexture, Ub: _emscripten_glBindTransformFeedback, bf: _emscripten_glBindVertexArray, ef: _emscripten_glBindVertexArrayOES, Lf: _emscripten_glBlendColor, Mf: _emscripten_glBlendEquation, Md: _emscripten_glBlendEquationSeparate, Nf: _emscripten_glBlendFunc, Ld: _emscripten_glBlendFuncSeparate, Be: _emscripten_glBlitFramebuffer, Of: _emscripten_glBufferData, Pf: _emscripten_glBufferSubData, Je: _emscripten_glCheckFramebufferStatus, Qf: _emscripten_glClear, hc: _emscripten_glClearBufferfi, ic: _emscripten_glClearBufferfv, kc: _emscripten_glClearBufferiv, jc: _emscripten_glClearBufferuiv, Rf: _emscripten_glClearColor, Kd: _emscripten_glClearDepthf, Sf: _emscripten_glClearStencil, ye: _emscripten_glClientWaitSync, bd: _emscripten_glClipControlEXT, Tf: _emscripten_glColorMask, Uf: _emscripten_glCompileShader, Vf: _emscripten_glCompressedTexImage2D, Uc: _emscripten_glCompressedTexImage3D, Wf: _emscripten_glCompressedTexSubImage2D, Tc: _emscripten_glCompressedTexSubImage3D, Ae: _emscripten_glCopyBufferSubData, Jd: _emscripten_glCopyTexImage2D, Xf: _emscripten_glCopyTexSubImage2D, Vc: _emscripten_glCopyTexSubImage3D, Yf: _emscripten_glCreateProgram, Zf: _emscripten_glCreateShader, _f: _emscripten_glCullFace, $f: _emscripten_glDeleteBuffers, Ke: _emscripten_glDeleteFramebuffers, ag: _emscripten_glDeleteProgram, ke: _emscripten_glDeleteQueries, ee: _emscripten_glDeleteQueriesEXT, Le: _emscripten_glDeleteRenderbuffers, qe: _emscripten_glDeleteSamplers, bg: _emscripten_glDeleteShader, ze: _emscripten_glDeleteSync, cg: _emscripten_glDeleteTextures, Tb: _emscripten_glDeleteTransformFeedbacks, cf: _emscripten_glDeleteVertexArrays, ff: _emscripten_glDeleteVertexArraysOES, Id: _emscripten_glDepthFunc, dg: _emscripten_glDepthMask, Hd: _emscripten_glDepthRangef, Gd: _emscripten_glDetachShader, eg: _emscripten_glDisable, fg: _emscripten_glDisableVertexAttribArray, gg: _emscripten_glDrawArrays, $e: _emscripten_glDrawArraysInstanced, Pd: _emscripten_glDrawArraysInstancedANGLE, Gb: _emscripten_glDrawArraysInstancedARB, Ye: _emscripten_glDrawArraysInstancedBaseInstanceWEBGL, _c: _emscripten_glDrawArraysInstancedEXT, Hb: _emscripten_glDrawArraysInstancedNV, We: _emscripten_glDrawBuffers, Yc: _emscripten_glDrawBuffersEXT, Qd: _emscripten_glDrawBuffersWEBGL, hg: _emscripten_glDrawElements, af: _emscripten_glDrawElementsInstanced, Od: _emscripten_glDrawElementsInstancedANGLE, Eb: _emscripten_glDrawElementsInstancedARB, Ze: _emscripten_glDrawElementsInstancedBaseVertexBaseInstanceWEBGL, Fb: _emscripten_glDrawElementsInstancedEXT, Zc: _emscripten_glDrawElementsInstancedNV, Qe: _emscripten_glDrawRangeElements, ig: _emscripten_glEnable, jg: _emscripten_glEnableVertexAttribArray, le: _emscripten_glEndQuery, fe: _emscripten_glEndQueryEXT, Hc: _emscripten_glEndTransformFeedback, ve: _emscripten_glFenceSync, kg: _emscripten_glFinish, lg: _emscripten_glFlush, Me: _emscripten_glFramebufferRenderbuffer, Ne: _emscripten_glFramebufferTexture2D, Lc: _emscripten_glFramebufferTextureLayer, ga: _emscripten_glFrontFace, ha: _emscripten_glGenBuffers, Oe: _emscripten_glGenFramebuffers, me: _emscripten_glGenQueries, ge: _emscripten_glGenQueriesEXT, Pe: _emscripten_glGenRenderbuffers, re: _emscripten_glGenSamplers, ia: _emscripten_glGenTextures, Sb: _emscripten_glGenTransformFeedbacks, _e: _emscripten_glGenVertexArrays, gf: _emscripten_glGenVertexArraysOES, De: _emscripten_glGenerateMipmap, Fd: _emscripten_glGetActiveAttrib, Ed: _emscripten_glGetActiveUniform, cc: _emscripten_glGetActiveUniformBlockName, dc: _emscripten_glGetActiveUniformBlockiv, fc: _emscripten_glGetActiveUniformsiv, Dd: _emscripten_glGetAttachedShaders, Cd: _emscripten_glGetAttribLocation, Bd: _emscripten_glGetBooleanv, Zb: _emscripten_glGetBufferParameteri64v, ja: _emscripten_glGetBufferParameteriv, ka: _emscripten_glGetError, la: _emscripten_glGetFloatv, uc: _emscripten_glGetFragDataLocation, Ee: _emscripten_glGetFramebufferAttachmentParameteriv, _b: _emscripten_glGetInteger64i_v, ac: _emscripten_glGetInteger64v, Jc: _emscripten_glGetIntegeri_v, ma: _emscripten_glGetIntegerv, Kb: _emscripten_glGetInternalformativ, Ob: _emscripten_glGetProgramBinary, na: _emscripten_glGetProgramInfoLog, oa: _emscripten_glGetProgramiv, ae: _emscripten_glGetQueryObjecti64vEXT, Sd: _emscripten_glGetQueryObjectivEXT, be: _emscripten_glGetQueryObjectui64vEXT, ne: _emscripten_glGetQueryObjectuiv, he: _emscripten_glGetQueryObjectuivEXT, oe: _emscripten_glGetQueryiv, ie: _emscripten_glGetQueryivEXT, Fe: _emscripten_glGetRenderbufferParameteriv, Vb: _emscripten_glGetSamplerParameterfv, Wb: _emscripten_glGetSamplerParameteriv, pa: _emscripten_glGetShaderInfoLog, Yd: _emscripten_glGetShaderPrecisionFormat, Ad: _emscripten_glGetShaderSource, qa: _emscripten_glGetShaderiv, ra: _emscripten_glGetString, df: _emscripten_glGetStringi, $b: _emscripten_glGetSynciv, zd: _emscripten_glGetTexParameterfv, yd: _emscripten_glGetTexParameteriv, Cc: _emscripten_glGetTransformFeedbackVarying, ec: _emscripten_glGetUniformBlockIndex, gc: _emscripten_glGetUniformIndices, sa: _emscripten_glGetUniformLocation, xd: _emscripten_glGetUniformfv, wd: _emscripten_glGetUniformiv, vc: _emscripten_glGetUniformuiv, Bc: _emscripten_glGetVertexAttribIiv, Ac: _emscripten_glGetVertexAttribIuiv, td: _emscripten_glGetVertexAttribPointerv, vd: _emscripten_glGetVertexAttribfv, ud: _emscripten_glGetVertexAttribiv, sd: _emscripten_glHint, Zd: _emscripten_glInvalidateFramebuffer, $d: _emscripten_glInvalidateSubFramebuffer, rd: _emscripten_glIsBuffer, qd: _emscripten_glIsEnabled, pd: _emscripten_glIsFramebuffer, od: _emscripten_glIsProgram, Sc: _emscripten_glIsQuery, Td: _emscripten_glIsQueryEXT, nd: _emscripten_glIsRenderbuffer, Yb: _emscripten_glIsSampler, md: _emscripten_glIsShader, we: _emscripten_glIsSync, ta: _emscripten_glIsTexture, Rb: _emscripten_glIsTransformFeedback, Kc: _emscripten_glIsVertexArray, Rd: _emscripten_glIsVertexArrayOES, ua: _emscripten_glLineWidth, va: _emscripten_glLinkProgram, Ue: _emscripten_glMultiDrawArraysInstancedBaseInstanceWEBGL, Ve: _emscripten_glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL, Qb: _emscripten_glPauseTransformFeedback, wa: _emscripten_glPixelStorei, ad: _emscripten_glPolygonModeWEBGL, ld: _emscripten_glPolygonOffset, cd: _emscripten_glPolygonOffsetClampEXT, Nb: _emscripten_glProgramBinary, Mb: _emscripten_glProgramParameteri, ce: _emscripten_glQueryCounterEXT, Xe: _emscripten_glReadBuffer, xa: _emscripten_glReadPixels, kd: _emscripten_glReleaseShaderCompiler, Ge: _emscripten_glRenderbufferStorage, Ce: _emscripten_glRenderbufferStorageMultisample, Pb: _emscripten_glResumeTransformFeedback, jd: _emscripten_glSampleCoverage, se: _emscripten_glSamplerParameterf, Xb: _emscripten_glSamplerParameterfv, te: _emscripten_glSamplerParameteri, ue: _emscripten_glSamplerParameteriv, ya: _emscripten_glScissor, id: _emscripten_glShaderBinary, za: _emscripten_glShaderSource, Aa: _emscripten_glStencilFunc, Ba: _emscripten_glStencilFuncSeparate, Ca: _emscripten_glStencilMask, Da: _emscripten_glStencilMaskSeparate, Ea: _emscripten_glStencilOp, Fa: _emscripten_glStencilOpSeparate, Ga: _emscripten_glTexImage2D, Xc: _emscripten_glTexImage3D, Ha: _emscripten_glTexParameterf, Ia: _emscripten_glTexParameterfv, Ja: _emscripten_glTexParameteri, Ka: _emscripten_glTexParameteriv, Re: _emscripten_glTexStorage2D, Lb: _emscripten_glTexStorage3D, La: _emscripten_glTexSubImage2D, Wc: _emscripten_glTexSubImage3D, Ec: _emscripten_glTransformFeedbackVaryings, Ma: _emscripten_glUniform1f, Na: _emscripten_glUniform1fv, Cf: _emscripten_glUniform1i, Df: _emscripten_glUniform1iv, tc: _emscripten_glUniform1ui, oc: _emscripten_glUniform1uiv, Ef: _emscripten_glUniform2f, Ff: _emscripten_glUniform2fv, Bf: _emscripten_glUniform2i, Af: _emscripten_glUniform2iv, rc: _emscripten_glUniform2ui, nc: _emscripten_glUniform2uiv, zf: _emscripten_glUniform3f, yf: _emscripten_glUniform3fv, xf: _emscripten_glUniform3i, wf: _emscripten_glUniform3iv, qc: _emscripten_glUniform3ui, mc: _emscripten_glUniform3uiv, vf: _emscripten_glUniform4f, uf: _emscripten_glUniform4fv, hf: _emscripten_glUniform4i, jf: _emscripten_glUniform4iv, pc: _emscripten_glUniform4ui, lc: _emscripten_glUniform4uiv, bc: _emscripten_glUniformBlockBinding, kf: _emscripten_glUniformMatrix2fv, Rc: _emscripten_glUniformMatrix2x3fv, Pc: _emscripten_glUniformMatrix2x4fv, lf: _emscripten_glUniformMatrix3fv, Qc: _emscripten_glUniformMatrix3x2fv, Nc: _emscripten_glUniformMatrix3x4fv, mf: _emscripten_glUniformMatrix4fv, Oc: _emscripten_glUniformMatrix4x2fv, Mc: _emscripten_glUniformMatrix4x3fv, nf: _emscripten_glUseProgram, hd: _emscripten_glValidateProgram, of: _emscripten_glVertexAttrib1f, gd: _emscripten_glVertexAttrib1fv, fd: _emscripten_glVertexAttrib2f, pf: _emscripten_glVertexAttrib2fv, ed: _emscripten_glVertexAttrib3f, qf: _emscripten_glVertexAttrib3fv, dd: _emscripten_glVertexAttrib4f, rf: _emscripten_glVertexAttrib4fv, Se: _emscripten_glVertexAttribDivisor, Nd: _emscripten_glVertexAttribDivisorANGLE, Ib: _emscripten_glVertexAttribDivisorARB, $c: _emscripten_glVertexAttribDivisorEXT, Jb: _emscripten_glVertexAttribDivisorNV, zc: _emscripten_glVertexAttribI4i, xc: _emscripten_glVertexAttribI4iv, yc: _emscripten_glVertexAttribI4ui, wc: _emscripten_glVertexAttribI4uiv, Te: _emscripten_glVertexAttribIPointer, sf: _emscripten_glVertexAttribPointer, tf: _emscripten_glViewport, xe: _emscripten_glWaitSync, Ya: _emscripten_request_animation_frame_loop, jb: _emscripten_resize_heap, Cb: _environ_get, Db: _environ_sizes_get, Qa: _exit, Q: _fd_close, kb: _fd_pread, vb: _fd_read, ob: _fd_seek, L: _fd_write, Oa: _glGetIntegerv, S: _glGetString, Pa: _glGetStringi, Wd: invoke_dd, Vd: invoke_ddd, Xd: invoke_dddd, V: invoke_diii, Ud: invoke_fff, _a: invoke_fi, Ta: invoke_fif, W: invoke_fiii, Ua: invoke_fiiiif, p: invoke_i, xb: invoke_if, Sa: invoke_iffiiiiiiii, f: invoke_ii, y: invoke_iif, aa: invoke_iifffi, g: invoke_iii, Xa: invoke_iiif, h: invoke_iiii, k: invoke_iiiii, fb: invoke_iiiiid, N: invoke_iiiiii, s: invoke_iiiiiii, G: invoke_iiiiiiii, T: invoke_iiiiiiiiii, ca: invoke_iiiiiiiiiiifiii, I: invoke_iiiiiiiiiiii, hb: invoke_j, db: invoke_ji, l: invoke_jii, J: invoke_jiiii, o: invoke_v, b: invoke_vi, fa: invoke_vid, E: invoke_vif, D: invoke_viff, C: invoke_vifff, t: invoke_vifffff, sc: invoke_viffi, ba: invoke_vifi, c: invoke_vii, F: invoke_viif, _: invoke_viiff, $: invoke_viifff, $a: invoke_viiffiii, r: invoke_viifii, e: invoke_viii, u: invoke_viiif, da: invoke_viiifffi, ea: invoke_viiifi, v: invoke_viiifif, i: invoke_viiii, eb: invoke_viiiif, j: invoke_viiiii, Wa: invoke_viiiiiffiiifffi, Va: invoke_viiiiiffiiifii, m: invoke_viiiiii, U: invoke_viiiiiiff, q: invoke_viiiiiii, z: invoke_viiiiiiii, Ra: invoke_viiiiiiiii, _d: invoke_viiiiiiiiifii, B: invoke_viiiiiiiiii, Za: invoke_viiiiiiiiiii, H: invoke_viiiiiiiiiiiiiii, ab: invoke_viiij, Dc: invoke_viij, R: invoke_viiji, cb: invoke_viji, bb: invoke_vijii, M: invoke_vijjjj, O: _llvm_eh_typeid_for, pb: _random_get };
4999
4999
  var wasmExports = await createWasm();
5000
- var ___wasm_call_ctors = wasmExports["lg"];
5001
- var _grida_fonts_analyze_family = Module["_grida_fonts_analyze_family"] = wasmExports["ng"];
5002
- var _grida_fonts_parse_font = Module["_grida_fonts_parse_font"] = wasmExports["og"];
5003
- var _grida_fonts_free = Module["_grida_fonts_free"] = wasmExports["pg"];
5004
- var _allocate = Module["_allocate"] = wasmExports["qg"];
5005
- var _deallocate = Module["_deallocate"] = wasmExports["rg"];
5006
- var _main = Module["_main"] = wasmExports["sg"];
5007
- var _init = Module["_init"] = wasmExports["tg"];
5008
- var _tick = Module["_tick"] = wasmExports["ug"];
5009
- var _resize_surface = Module["_resize_surface"] = wasmExports["vg"];
5010
- var _redraw = Module["_redraw"] = wasmExports["wg"];
5011
- var _load_scene_json = Module["_load_scene_json"] = wasmExports["xg"];
5012
- var _pointer_move = Module["_pointer_move"] = wasmExports["yg"];
5013
- var _command = Module["_command"] = wasmExports["zg"];
5014
- var _set_main_camera_transform = Module["_set_main_camera_transform"] = wasmExports["Ag"];
5015
- var _add_image = Module["_add_image"] = wasmExports["Bg"];
5016
- var _add_font = Module["_add_font"] = wasmExports["Cg"];
5017
- var _has_missing_fonts = Module["_has_missing_fonts"] = wasmExports["Dg"];
5018
- var _list_missing_fonts = Module["_list_missing_fonts"] = wasmExports["Eg"];
5019
- var _list_available_fonts = Module["_list_available_fonts"] = wasmExports["Fg"];
5020
- var _set_default_fallback_fonts = Module["_set_default_fallback_fonts"] = wasmExports["Gg"];
5021
- var _get_default_fallback_fonts = Module["_get_default_fallback_fonts"] = wasmExports["Hg"];
5022
- var _get_node_id_from_point = Module["_get_node_id_from_point"] = wasmExports["Ig"];
5023
- var _get_node_ids_from_point = Module["_get_node_ids_from_point"] = wasmExports["Jg"];
5024
- var _get_node_ids_from_envelope = Module["_get_node_ids_from_envelope"] = wasmExports["Kg"];
5025
- var _get_node_absolute_bounding_box = Module["_get_node_absolute_bounding_box"] = wasmExports["Lg"];
5026
- var _export_node_as = Module["_export_node_as"] = wasmExports["Mg"];
5027
- var _to_vector_network = Module["_to_vector_network"] = wasmExports["Ng"];
5028
- var _set_debug = Module["_set_debug"] = wasmExports["Og"];
5029
- var _toggle_debug = Module["_toggle_debug"] = wasmExports["Pg"];
5030
- var _set_verbose = Module["_set_verbose"] = wasmExports["Qg"];
5031
- var _devtools_rendering_set_show_ruler = Module["_devtools_rendering_set_show_ruler"] = wasmExports["Rg"];
5032
- var _devtools_rendering_set_show_tiles = Module["_devtools_rendering_set_show_tiles"] = wasmExports["Sg"];
5033
- var _runtime_renderer_set_cache_tile = Module["_runtime_renderer_set_cache_tile"] = wasmExports["Tg"];
5034
- var _devtools_rendering_set_show_fps_meter = Module["_devtools_rendering_set_show_fps_meter"] = wasmExports["Ug"];
5035
- var _devtools_rendering_set_show_stats = Module["_devtools_rendering_set_show_stats"] = wasmExports["Vg"];
5036
- var _devtools_rendering_set_show_hit_testing = Module["_devtools_rendering_set_show_hit_testing"] = wasmExports["Wg"];
5037
- var _highlight_strokes = Module["_highlight_strokes"] = wasmExports["Xg"];
5038
- var _load_dummy_scene = Module["_load_dummy_scene"] = wasmExports["Yg"];
5039
- var _load_benchmark_scene = Module["_load_benchmark_scene"] = wasmExports["Zg"];
5040
- var _malloc = wasmExports["_g"];
5041
- var _emscripten_builtin_memalign = wasmExports["$g"];
5042
- var _setThrew = wasmExports["ah"];
5043
- var __emscripten_tempret_set = wasmExports["bh"];
5044
- var __emscripten_stack_restore = wasmExports["ch"];
5045
- var __emscripten_stack_alloc = wasmExports["dh"];
5046
- var _emscripten_stack_get_current = wasmExports["eh"];
5047
- var ___cxa_decrement_exception_refcount = wasmExports["fh"];
5048
- var ___cxa_increment_exception_refcount = wasmExports["gh"];
5049
- var ___cxa_can_catch = wasmExports["hh"];
5050
- var ___cxa_get_exception_ptr = wasmExports["ih"];
5000
+ var ___wasm_call_ctors = wasmExports["ng"];
5001
+ var _init = Module["_init"] = wasmExports["pg"];
5002
+ var _tick = Module["_tick"] = wasmExports["qg"];
5003
+ var _resize_surface = Module["_resize_surface"] = wasmExports["rg"];
5004
+ var _redraw = Module["_redraw"] = wasmExports["sg"];
5005
+ var _load_scene_json = Module["_load_scene_json"] = wasmExports["tg"];
5006
+ var _pointer_move = Module["_pointer_move"] = wasmExports["ug"];
5007
+ var _command = Module["_command"] = wasmExports["vg"];
5008
+ var _set_main_camera_transform = Module["_set_main_camera_transform"] = wasmExports["wg"];
5009
+ var _add_image = Module["_add_image"] = wasmExports["xg"];
5010
+ var _get_image_bytes = Module["_get_image_bytes"] = wasmExports["yg"];
5011
+ var _get_image_size = Module["_get_image_size"] = wasmExports["zg"];
5012
+ var _add_font = Module["_add_font"] = wasmExports["Ag"];
5013
+ var _has_missing_fonts = Module["_has_missing_fonts"] = wasmExports["Bg"];
5014
+ var _list_missing_fonts = Module["_list_missing_fonts"] = wasmExports["Cg"];
5015
+ var _list_available_fonts = Module["_list_available_fonts"] = wasmExports["Dg"];
5016
+ var _set_default_fallback_fonts = Module["_set_default_fallback_fonts"] = wasmExports["Eg"];
5017
+ var _get_default_fallback_fonts = Module["_get_default_fallback_fonts"] = wasmExports["Fg"];
5018
+ var _get_node_id_from_point = Module["_get_node_id_from_point"] = wasmExports["Gg"];
5019
+ var _get_node_ids_from_point = Module["_get_node_ids_from_point"] = wasmExports["Hg"];
5020
+ var _get_node_ids_from_envelope = Module["_get_node_ids_from_envelope"] = wasmExports["Ig"];
5021
+ var _get_node_absolute_bounding_box = Module["_get_node_absolute_bounding_box"] = wasmExports["Jg"];
5022
+ var _export_node_as = Module["_export_node_as"] = wasmExports["Kg"];
5023
+ var _to_vector_network = Module["_to_vector_network"] = wasmExports["Lg"];
5024
+ var _set_debug = Module["_set_debug"] = wasmExports["Mg"];
5025
+ var _toggle_debug = Module["_toggle_debug"] = wasmExports["Ng"];
5026
+ var _set_verbose = Module["_set_verbose"] = wasmExports["Og"];
5027
+ var _devtools_rendering_set_show_ruler = Module["_devtools_rendering_set_show_ruler"] = wasmExports["Pg"];
5028
+ var _devtools_rendering_set_show_tiles = Module["_devtools_rendering_set_show_tiles"] = wasmExports["Qg"];
5029
+ var _runtime_renderer_set_cache_tile = Module["_runtime_renderer_set_cache_tile"] = wasmExports["Rg"];
5030
+ var _devtools_rendering_set_show_fps_meter = Module["_devtools_rendering_set_show_fps_meter"] = wasmExports["Sg"];
5031
+ var _devtools_rendering_set_show_stats = Module["_devtools_rendering_set_show_stats"] = wasmExports["Tg"];
5032
+ var _devtools_rendering_set_show_hit_testing = Module["_devtools_rendering_set_show_hit_testing"] = wasmExports["Ug"];
5033
+ var _highlight_strokes = Module["_highlight_strokes"] = wasmExports["Vg"];
5034
+ var _load_dummy_scene = Module["_load_dummy_scene"] = wasmExports["Wg"];
5035
+ var _load_benchmark_scene = Module["_load_benchmark_scene"] = wasmExports["Xg"];
5036
+ var _grida_fonts_analyze_family = Module["_grida_fonts_analyze_family"] = wasmExports["Yg"];
5037
+ var _grida_fonts_parse_font = Module["_grida_fonts_parse_font"] = wasmExports["Zg"];
5038
+ var _grida_fonts_free = Module["_grida_fonts_free"] = wasmExports["_g"];
5039
+ var _allocate = Module["_allocate"] = wasmExports["$g"];
5040
+ var _deallocate = Module["_deallocate"] = wasmExports["ah"];
5041
+ var _main = Module["_main"] = wasmExports["bh"];
5042
+ var _malloc = wasmExports["ch"];
5043
+ var _emscripten_builtin_memalign = wasmExports["dh"];
5044
+ var _setThrew = wasmExports["eh"];
5045
+ var __emscripten_tempret_set = wasmExports["fh"];
5046
+ var __emscripten_stack_restore = wasmExports["gh"];
5047
+ var __emscripten_stack_alloc = wasmExports["hh"];
5048
+ var _emscripten_stack_get_current = wasmExports["ih"];
5049
+ var ___cxa_decrement_exception_refcount = wasmExports["jh"];
5050
+ var ___cxa_increment_exception_refcount = wasmExports["kh"];
5051
+ var ___cxa_can_catch = wasmExports["lh"];
5052
+ var ___cxa_get_exception_ptr = wasmExports["mh"];
5051
5053
  function invoke_viiiiii(index, a1, a2, a3, a4, a5, a6) {
5052
5054
  var sp = stackSave();
5053
5055
  try {
@@ -5128,40 +5130,40 @@ var require_grida_canvas_wasm = __commonJS({
5128
5130
  _setThrew(1, 0);
5129
5131
  }
5130
5132
  }
5131
- function invoke_iiiii(index, a1, a2, a3, a4) {
5133
+ function invoke_vid(index, a1, a2) {
5132
5134
  var sp = stackSave();
5133
5135
  try {
5134
- return getWasmTableEntry(index)(a1, a2, a3, a4);
5136
+ getWasmTableEntry(index)(a1, a2);
5135
5137
  } catch (e) {
5136
5138
  stackRestore(sp);
5137
5139
  if (e !== e + 0) throw e;
5138
5140
  _setThrew(1, 0);
5139
5141
  }
5140
5142
  }
5141
- function invoke_viiiii(index, a1, a2, a3, a4, a5) {
5143
+ function invoke_viff(index, a1, a2, a3) {
5142
5144
  var sp = stackSave();
5143
5145
  try {
5144
- getWasmTableEntry(index)(a1, a2, a3, a4, a5);
5146
+ getWasmTableEntry(index)(a1, a2, a3);
5145
5147
  } catch (e) {
5146
5148
  stackRestore(sp);
5147
5149
  if (e !== e + 0) throw e;
5148
5150
  _setThrew(1, 0);
5149
5151
  }
5150
5152
  }
5151
- function invoke_vid(index, a1, a2) {
5153
+ function invoke_iiiii(index, a1, a2, a3, a4) {
5152
5154
  var sp = stackSave();
5153
5155
  try {
5154
- getWasmTableEntry(index)(a1, a2);
5156
+ return getWasmTableEntry(index)(a1, a2, a3, a4);
5155
5157
  } catch (e) {
5156
5158
  stackRestore(sp);
5157
5159
  if (e !== e + 0) throw e;
5158
5160
  _setThrew(1, 0);
5159
5161
  }
5160
5162
  }
5161
- function invoke_viff(index, a1, a2, a3) {
5163
+ function invoke_viiiii(index, a1, a2, a3, a4, a5) {
5162
5164
  var sp = stackSave();
5163
5165
  try {
5164
- getWasmTableEntry(index)(a1, a2, a3);
5166
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5);
5165
5167
  } catch (e) {
5166
5168
  stackRestore(sp);
5167
5169
  if (e !== e + 0) throw e;
@@ -5219,40 +5221,40 @@ var require_grida_canvas_wasm = __commonJS({
5219
5221
  _setThrew(1, 0);
5220
5222
  }
5221
5223
  }
5222
- function invoke_iif(index, a1, a2) {
5224
+ function invoke_i(index) {
5223
5225
  var sp = stackSave();
5224
5226
  try {
5225
- return getWasmTableEntry(index)(a1, a2);
5227
+ return getWasmTableEntry(index)();
5226
5228
  } catch (e) {
5227
5229
  stackRestore(sp);
5228
5230
  if (e !== e + 0) throw e;
5229
5231
  _setThrew(1, 0);
5230
5232
  }
5231
5233
  }
5232
- function invoke_viiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
5234
+ function invoke_iif(index, a1, a2) {
5233
5235
  var sp = stackSave();
5234
5236
  try {
5235
- getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8);
5237
+ return getWasmTableEntry(index)(a1, a2);
5236
5238
  } catch (e) {
5237
5239
  stackRestore(sp);
5238
5240
  if (e !== e + 0) throw e;
5239
5241
  _setThrew(1, 0);
5240
5242
  }
5241
5243
  }
5242
- function invoke_viiiiiiiiifii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) {
5244
+ function invoke_viiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
5243
5245
  var sp = stackSave();
5244
5246
  try {
5245
- getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12);
5247
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8);
5246
5248
  } catch (e) {
5247
5249
  stackRestore(sp);
5248
5250
  if (e !== e + 0) throw e;
5249
5251
  _setThrew(1, 0);
5250
5252
  }
5251
5253
  }
5252
- function invoke_iifffi(index, a1, a2, a3, a4, a5) {
5254
+ function invoke_viiiiiiiiifii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) {
5253
5255
  var sp = stackSave();
5254
5256
  try {
5255
- return getWasmTableEntry(index)(a1, a2, a3, a4, a5);
5257
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12);
5256
5258
  } catch (e) {
5257
5259
  stackRestore(sp);
5258
5260
  if (e !== e + 0) throw e;
@@ -5289,50 +5291,50 @@ var require_grida_canvas_wasm = __commonJS({
5289
5291
  _setThrew(1, 0);
5290
5292
  }
5291
5293
  }
5292
- function invoke_i(index) {
5294
+ function invoke_viiifffi(index, a1, a2, a3, a4, a5, a6, a7) {
5293
5295
  var sp = stackSave();
5294
5296
  try {
5295
- return getWasmTableEntry(index)();
5297
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7);
5296
5298
  } catch (e) {
5297
5299
  stackRestore(sp);
5298
5300
  if (e !== e + 0) throw e;
5299
5301
  _setThrew(1, 0);
5300
5302
  }
5301
5303
  }
5302
- function invoke_viiji(index, a1, a2, a3, a4) {
5304
+ function invoke_iiiiiiiiiiifiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) {
5303
5305
  var sp = stackSave();
5304
5306
  try {
5305
- getWasmTableEntry(index)(a1, a2, a3, a4);
5307
+ return getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14);
5306
5308
  } catch (e) {
5307
5309
  stackRestore(sp);
5308
5310
  if (e !== e + 0) throw e;
5309
5311
  _setThrew(1, 0);
5310
5312
  }
5311
5313
  }
5312
- function invoke_vifff(index, a1, a2, a3, a4) {
5314
+ function invoke_vifi(index, a1, a2, a3) {
5313
5315
  var sp = stackSave();
5314
5316
  try {
5315
- getWasmTableEntry(index)(a1, a2, a3, a4);
5317
+ getWasmTableEntry(index)(a1, a2, a3);
5316
5318
  } catch (e) {
5317
5319
  stackRestore(sp);
5318
5320
  if (e !== e + 0) throw e;
5319
5321
  _setThrew(1, 0);
5320
5322
  }
5321
5323
  }
5322
- function invoke_vifffff(index, a1, a2, a3, a4, a5, a6) {
5324
+ function invoke_iifffi(index, a1, a2, a3, a4, a5) {
5323
5325
  var sp = stackSave();
5324
5326
  try {
5325
- getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6);
5327
+ return getWasmTableEntry(index)(a1, a2, a3, a4, a5);
5326
5328
  } catch (e) {
5327
5329
  stackRestore(sp);
5328
5330
  if (e !== e + 0) throw e;
5329
5331
  _setThrew(1, 0);
5330
5332
  }
5331
5333
  }
5332
- function invoke_viiifif(index, a1, a2, a3, a4, a5, a6) {
5334
+ function invoke_viij(index, a1, a2, a3) {
5333
5335
  var sp = stackSave();
5334
5336
  try {
5335
- getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6);
5337
+ getWasmTableEntry(index)(a1, a2, a3);
5336
5338
  } catch (e) {
5337
5339
  stackRestore(sp);
5338
5340
  if (e !== e + 0) throw e;
@@ -5359,40 +5361,40 @@ var require_grida_canvas_wasm = __commonJS({
5359
5361
  _setThrew(1, 0);
5360
5362
  }
5361
5363
  }
5362
- function invoke_viiiiiffiifi(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
5364
+ function invoke_vifff(index, a1, a2, a3, a4) {
5363
5365
  var sp = stackSave();
5364
5366
  try {
5365
- getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
5367
+ getWasmTableEntry(index)(a1, a2, a3, a4);
5366
5368
  } catch (e) {
5367
5369
  stackRestore(sp);
5368
5370
  if (e !== e + 0) throw e;
5369
5371
  _setThrew(1, 0);
5370
5372
  }
5371
5373
  }
5372
- function invoke_viiiiiffiifff(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) {
5374
+ function invoke_viiff(index, a1, a2, a3, a4) {
5373
5375
  var sp = stackSave();
5374
5376
  try {
5375
- getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12);
5377
+ getWasmTableEntry(index)(a1, a2, a3, a4);
5376
5378
  } catch (e) {
5377
5379
  stackRestore(sp);
5378
5380
  if (e !== e + 0) throw e;
5379
5381
  _setThrew(1, 0);
5380
5382
  }
5381
5383
  }
5382
- function invoke_fiiiif(index, a1, a2, a3, a4, a5) {
5384
+ function invoke_viiji(index, a1, a2, a3, a4) {
5383
5385
  var sp = stackSave();
5384
5386
  try {
5385
- return getWasmTableEntry(index)(a1, a2, a3, a4, a5);
5387
+ getWasmTableEntry(index)(a1, a2, a3, a4);
5386
5388
  } catch (e) {
5387
5389
  stackRestore(sp);
5388
5390
  if (e !== e + 0) throw e;
5389
5391
  _setThrew(1, 0);
5390
5392
  }
5391
5393
  }
5392
- function invoke_fif(index, a1, a2) {
5394
+ function invoke_if(index, a1) {
5393
5395
  var sp = stackSave();
5394
5396
  try {
5395
- return getWasmTableEntry(index)(a1, a2);
5397
+ return getWasmTableEntry(index)(a1);
5396
5398
  } catch (e) {
5397
5399
  stackRestore(sp);
5398
5400
  if (e !== e + 0) throw e;
@@ -5409,10 +5411,10 @@ var require_grida_canvas_wasm = __commonJS({
5409
5411
  _setThrew(1, 0);
5410
5412
  }
5411
5413
  }
5412
- function invoke_viiff(index, a1, a2, a3, a4) {
5414
+ function invoke_viiiif(index, a1, a2, a3, a4, a5) {
5413
5415
  var sp = stackSave();
5414
5416
  try {
5415
- getWasmTableEntry(index)(a1, a2, a3, a4);
5417
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5);
5416
5418
  } catch (e) {
5417
5419
  stackRestore(sp);
5418
5420
  if (e !== e + 0) throw e;
@@ -5450,10 +5452,10 @@ var require_grida_canvas_wasm = __commonJS({
5450
5452
  _setThrew(1, 0);
5451
5453
  }
5452
5454
  }
5453
- function invoke_viij(index, a1, a2, a3) {
5455
+ function invoke_viiij(index, a1, a2, a3, a4) {
5454
5456
  var sp = stackSave();
5455
5457
  try {
5456
- getWasmTableEntry(index)(a1, a2, a3);
5458
+ getWasmTableEntry(index)(a1, a2, a3, a4);
5457
5459
  } catch (e) {
5458
5460
  stackRestore(sp);
5459
5461
  if (e !== e + 0) throw e;
@@ -5480,80 +5482,100 @@ var require_grida_canvas_wasm = __commonJS({
5480
5482
  _setThrew(1, 0);
5481
5483
  }
5482
5484
  }
5483
- function invoke_iiiiiiiiiiifiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) {
5485
+ function invoke_fi(index, a1) {
5484
5486
  var sp = stackSave();
5485
5487
  try {
5486
- return getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14);
5488
+ return getWasmTableEntry(index)(a1);
5487
5489
  } catch (e) {
5488
5490
  stackRestore(sp);
5489
5491
  if (e !== e + 0) throw e;
5490
5492
  _setThrew(1, 0);
5491
5493
  }
5492
5494
  }
5493
- function invoke_fi(index, a1) {
5495
+ function invoke_viiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
5494
5496
  var sp = stackSave();
5495
5497
  try {
5496
- return getWasmTableEntry(index)(a1);
5498
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
5497
5499
  } catch (e) {
5498
5500
  stackRestore(sp);
5499
5501
  if (e !== e + 0) throw e;
5500
5502
  _setThrew(1, 0);
5501
5503
  }
5502
5504
  }
5503
- function invoke_viiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
5505
+ function invoke_iiif(index, a1, a2, a3) {
5504
5506
  var sp = stackSave();
5505
5507
  try {
5506
- getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
5508
+ return getWasmTableEntry(index)(a1, a2, a3);
5507
5509
  } catch (e) {
5508
5510
  stackRestore(sp);
5509
5511
  if (e !== e + 0) throw e;
5510
5512
  _setThrew(1, 0);
5511
5513
  }
5512
5514
  }
5513
- function invoke_iffiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
5515
+ function invoke_vifffff(index, a1, a2, a3, a4, a5, a6) {
5514
5516
  var sp = stackSave();
5515
5517
  try {
5516
- return getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
5518
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6);
5517
5519
  } catch (e) {
5518
5520
  stackRestore(sp);
5519
5521
  if (e !== e + 0) throw e;
5520
5522
  _setThrew(1, 0);
5521
5523
  }
5522
5524
  }
5523
- function invoke_iiif(index, a1, a2, a3) {
5525
+ function invoke_viiifif(index, a1, a2, a3, a4, a5, a6) {
5524
5526
  var sp = stackSave();
5525
5527
  try {
5526
- return getWasmTableEntry(index)(a1, a2, a3);
5528
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6);
5527
5529
  } catch (e) {
5528
5530
  stackRestore(sp);
5529
5531
  if (e !== e + 0) throw e;
5530
5532
  _setThrew(1, 0);
5531
5533
  }
5532
5534
  }
5533
- function invoke_viiiif(index, a1, a2, a3, a4, a5) {
5535
+ function invoke_viiiiiffiiifffi(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) {
5534
5536
  var sp = stackSave();
5535
5537
  try {
5536
- getWasmTableEntry(index)(a1, a2, a3, a4, a5);
5538
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14);
5537
5539
  } catch (e) {
5538
5540
  stackRestore(sp);
5539
5541
  if (e !== e + 0) throw e;
5540
5542
  _setThrew(1, 0);
5541
5543
  }
5542
5544
  }
5543
- function invoke_vifi(index, a1, a2, a3) {
5545
+ function invoke_viiiiiffiiifii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) {
5544
5546
  var sp = stackSave();
5545
5547
  try {
5546
- getWasmTableEntry(index)(a1, a2, a3);
5548
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13);
5547
5549
  } catch (e) {
5548
5550
  stackRestore(sp);
5549
5551
  if (e !== e + 0) throw e;
5550
5552
  _setThrew(1, 0);
5551
5553
  }
5552
5554
  }
5553
- function invoke_if(index, a1) {
5555
+ function invoke_fiiiif(index, a1, a2, a3, a4, a5) {
5554
5556
  var sp = stackSave();
5555
5557
  try {
5556
- return getWasmTableEntry(index)(a1);
5558
+ return getWasmTableEntry(index)(a1, a2, a3, a4, a5);
5559
+ } catch (e) {
5560
+ stackRestore(sp);
5561
+ if (e !== e + 0) throw e;
5562
+ _setThrew(1, 0);
5563
+ }
5564
+ }
5565
+ function invoke_fif(index, a1, a2) {
5566
+ var sp = stackSave();
5567
+ try {
5568
+ return getWasmTableEntry(index)(a1, a2);
5569
+ } catch (e) {
5570
+ stackRestore(sp);
5571
+ if (e !== e + 0) throw e;
5572
+ _setThrew(1, 0);
5573
+ }
5574
+ }
5575
+ function invoke_iffiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
5576
+ var sp = stackSave();
5577
+ try {
5578
+ return getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
5557
5579
  } catch (e) {
5558
5580
  stackRestore(sp);
5559
5581
  if (e !== e + 0) throw e;
@@ -5815,7 +5837,7 @@ module.exports = __toCommonJS(index_exports);
5815
5837
  var import_grida_canvas_wasm = __toESM(require_grida_canvas_wasm());
5816
5838
 
5817
5839
  // package.json
5818
- var version = "0.0.62";
5840
+ var version = "0.0.64";
5819
5841
 
5820
5842
  // lib/modules/fonts.ts
5821
5843
  var FontsAPI = class {
@@ -6066,10 +6088,39 @@ var Scene = class {
6066
6088
  this.module.HEAPU8.set(data, ptr);
6067
6089
  const out = this.module._add_image(this.appptr, ptr, len);
6068
6090
  this.module._deallocate(ptr, len);
6069
- const hash = this.module.UTF8ToString(out);
6070
- const hlen = this.module.lengthBytesUTF8(hash) + 1;
6091
+ if (out === 0) return false;
6092
+ const txt = this.module.UTF8ToString(out);
6093
+ const hlen = this.module.lengthBytesUTF8(txt) + 1;
6071
6094
  this._free_string(out, hlen);
6072
- return hash;
6095
+ try {
6096
+ return JSON.parse(txt);
6097
+ } catch {
6098
+ return false;
6099
+ }
6100
+ }
6101
+ getImageBytes(ref) {
6102
+ const [ptr, len] = this._alloc_string(ref);
6103
+ const outptr = this.module._get_image_bytes(this.appptr, ptr, len - 1);
6104
+ this._free_string(ptr, len);
6105
+ if (outptr === 0) return null;
6106
+ const lengthBytes = this.module.HEAPU8.slice(outptr, outptr + 4);
6107
+ const dataLength = new Uint32Array(
6108
+ lengthBytes.buffer,
6109
+ lengthBytes.byteOffset,
6110
+ 1
6111
+ )[0];
6112
+ const data = this.module.HEAPU8.slice(outptr + 4, outptr + 4 + dataLength);
6113
+ this.module._deallocate(outptr, 4 + dataLength);
6114
+ return new Uint8Array(data);
6115
+ }
6116
+ getImageSize(ref) {
6117
+ const [ptr, len] = this._alloc_string(ref);
6118
+ const outptr = this.module._get_image_size(this.appptr, ptr, len - 1);
6119
+ this._free_string(ptr, len);
6120
+ if (outptr === 0) return null;
6121
+ const view = this.module.HEAPU32.slice(outptr >> 2, (outptr >> 2) + 2);
6122
+ this.module._deallocate(outptr, 4 * 2);
6123
+ return { width: view[0], height: view[1] };
6073
6124
  }
6074
6125
  hasMissingFonts() {
6075
6126
  return this.module._has_missing_fonts(this.appptr);