@grida/canvas-wasm 0.0.11 → 0.0.13

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
@@ -51,7 +51,11 @@ declare namespace createGridaCanvas {
51
51
  // ====================================================================================================
52
52
  // INITIALIZATION
53
53
  // ====================================================================================================
54
- _init(width: number, height: number): GridaCanvasWebGlApplicationPtr;
54
+ _init(
55
+ width: number,
56
+ height: number,
57
+ cfg_font_fallback: boolean
58
+ ): GridaCanvasWebGlApplicationPtr;
55
59
 
56
60
  // ====================================================================================================
57
61
  // APPLICATION METHODS
@@ -154,21 +158,20 @@ declare namespace createGridaCanvas {
154
158
 
155
159
  type GridaCanvasWebGlApplicationPtr = number;
156
160
 
157
- interface GridaCanvasInitOptions {
158
- /**
159
- * This callback will be invoked when the loader needs to fetch a file (e.g.
160
- * the blob of WASM code). The correct url prefix should be applied.
161
- * @param file - the name of the file that is about to be loaded.
162
- *
163
- * @example
164
- * ```ts
165
- * locateFile: (file) => `https://unpkg.com/@grida/canvas-wasm@$latest/bin/${file}`,
166
- * locateFile: (file) => `custom-binary-path/${file}`,
167
- * ```
168
- */
169
- locateFile(file: string): string;
161
+ interface GridaCanvasModuleInitOptions {
162
+ /**
163
+ * This callback will be invoked when the loader needs to fetch a file (e.g.
164
+ * the blob of WASM code). The correct url prefix should be applied.
165
+ * @param file - the name of the file that is about to be loaded.
166
+ *
167
+ * @example
168
+ * ```ts
169
+ * locateFile: (file) => `https://unpkg.com/@grida/canvas-wasm@$latest/bin/${file}`,
170
+ * locateFile: (file) => `custom-binary-path/${file}`,
171
+ * ```
172
+ */
173
+ locateFile(file: string, version: string): string;
170
174
  }
171
-
172
175
  type Transform2D = [[number, number, number], [number, number, number]];
173
176
  type Rectangle = {
174
177
  x: number;
@@ -191,11 +194,18 @@ type ExportAsImage = {
191
194
  format: "PNG" | "JPEG" | "WEBP" | "BMP";
192
195
  constraints: ExportConstraints;
193
196
  };
194
- declare function init(opts?: GridaCanvasInitOptions): Promise<ApplicationFactory>;
197
+ declare function init(opts?: GridaCanvasModuleInitOptions): Promise<ApplicationFactory>;
198
+ interface CreateWebGLCanvasSurfaceOptions {
199
+ /**
200
+ * when true, built-in fonts will be used for text rendering, even if the font family and style does not match.
201
+ * @default true
202
+ */
203
+ fontFallback?: boolean;
204
+ }
195
205
  declare class ApplicationFactory {
196
206
  private readonly module;
197
207
  constructor(module: createGridaCanvas.GridaCanvasWasmBindings);
198
- createWebGLCanvasSurface(canvas: HTMLCanvasElement): Grida2D;
208
+ createWebGLCanvasSurface(canvas: HTMLCanvasElement, options?: CreateWebGLCanvasSurfaceOptions): Grida2D;
199
209
  createWebGLCanvasSurfaceById(htmlcanvasid: string): Grida2D;
200
210
  }
201
211
  declare class Grida2D {
@@ -273,4 +283,4 @@ declare class Grida2D {
273
283
  devtools_rendering_set_show_ruler(show: boolean): void;
274
284
  }
275
285
 
276
- export { Grida2D, init as default };
286
+ export { Grida2D, type GridaCanvasModuleInitOptions, init as default };
package/dist/index.d.ts CHANGED
@@ -51,7 +51,11 @@ declare namespace createGridaCanvas {
51
51
  // ====================================================================================================
52
52
  // INITIALIZATION
53
53
  // ====================================================================================================
54
- _init(width: number, height: number): GridaCanvasWebGlApplicationPtr;
54
+ _init(
55
+ width: number,
56
+ height: number,
57
+ cfg_font_fallback: boolean
58
+ ): GridaCanvasWebGlApplicationPtr;
55
59
 
56
60
  // ====================================================================================================
57
61
  // APPLICATION METHODS
@@ -154,21 +158,20 @@ declare namespace createGridaCanvas {
154
158
 
155
159
  type GridaCanvasWebGlApplicationPtr = number;
156
160
 
157
- interface GridaCanvasInitOptions {
158
- /**
159
- * This callback will be invoked when the loader needs to fetch a file (e.g.
160
- * the blob of WASM code). The correct url prefix should be applied.
161
- * @param file - the name of the file that is about to be loaded.
162
- *
163
- * @example
164
- * ```ts
165
- * locateFile: (file) => `https://unpkg.com/@grida/canvas-wasm@$latest/bin/${file}`,
166
- * locateFile: (file) => `custom-binary-path/${file}`,
167
- * ```
168
- */
169
- locateFile(file: string): string;
161
+ interface GridaCanvasModuleInitOptions {
162
+ /**
163
+ * This callback will be invoked when the loader needs to fetch a file (e.g.
164
+ * the blob of WASM code). The correct url prefix should be applied.
165
+ * @param file - the name of the file that is about to be loaded.
166
+ *
167
+ * @example
168
+ * ```ts
169
+ * locateFile: (file) => `https://unpkg.com/@grida/canvas-wasm@$latest/bin/${file}`,
170
+ * locateFile: (file) => `custom-binary-path/${file}`,
171
+ * ```
172
+ */
173
+ locateFile(file: string, version: string): string;
170
174
  }
171
-
172
175
  type Transform2D = [[number, number, number], [number, number, number]];
173
176
  type Rectangle = {
174
177
  x: number;
@@ -191,11 +194,18 @@ type ExportAsImage = {
191
194
  format: "PNG" | "JPEG" | "WEBP" | "BMP";
192
195
  constraints: ExportConstraints;
193
196
  };
194
- declare function init(opts?: GridaCanvasInitOptions): Promise<ApplicationFactory>;
197
+ declare function init(opts?: GridaCanvasModuleInitOptions): Promise<ApplicationFactory>;
198
+ interface CreateWebGLCanvasSurfaceOptions {
199
+ /**
200
+ * when true, built-in fonts will be used for text rendering, even if the font family and style does not match.
201
+ * @default true
202
+ */
203
+ fontFallback?: boolean;
204
+ }
195
205
  declare class ApplicationFactory {
196
206
  private readonly module;
197
207
  constructor(module: createGridaCanvas.GridaCanvasWasmBindings);
198
- createWebGLCanvasSurface(canvas: HTMLCanvasElement): Grida2D;
208
+ createWebGLCanvasSurface(canvas: HTMLCanvasElement, options?: CreateWebGLCanvasSurfaceOptions): Grida2D;
199
209
  createWebGLCanvasSurfaceById(htmlcanvasid: string): Grida2D;
200
210
  }
201
211
  declare class Grida2D {
@@ -273,4 +283,4 @@ declare class Grida2D {
273
283
  devtools_rendering_set_show_ruler(show: boolean): void;
274
284
  }
275
285
 
276
- export { Grida2D, init as default };
286
+ export { Grida2D, type GridaCanvasModuleInitOptions, init as default };
package/dist/index.js CHANGED
@@ -269,10 +269,10 @@ var require_grida_canvas_wasm = __commonJS({
269
269
  var info = getWasmImports();
270
270
  function receiveInstance(instance, module3) {
271
271
  wasmExports = instance.exports;
272
- wasmMemory = wasmExports["Pf"];
272
+ wasmMemory = wasmExports["Sf"];
273
273
  updateMemoryViews();
274
- wasmTable = wasmExports["Rf"];
275
- addOnInit(wasmExports["Qf"]);
274
+ wasmTable = wasmExports["Uf"];
275
+ addOnInit(wasmExports["Tf"]);
276
276
  removeRunDependency("wasm-instantiate");
277
277
  return wasmExports;
278
278
  }
@@ -5104,62 +5104,54 @@ var require_grida_canvas_wasm = __commonJS({
5104
5104
  for (var i = 0; i < 288; ++i) {
5105
5105
  miniTempWebGLIntBuffers[i] = miniTempWebGLIntBuffersStorage.subarray(0, i);
5106
5106
  }
5107
- var wasmImports = { u: ___cxa_begin_catch, x: ___cxa_end_catch, a: ___cxa_find_matching_catch_2, j: ___cxa_find_matching_catch_3, y: ___cxa_find_matching_catch_4, N: ___cxa_rethrow, t: ___cxa_throw, kb: ___cxa_uncaught_exceptions, d: ___resumeException, P: ___syscall_fcntl64, tb: ___syscall_fstat64, ob: ___syscall_getcwd, vb: ___syscall_ioctl, pb: ___syscall_lstat64, rb: ___syscall_newfstatat, O: ___syscall_openat, sb: ___syscall_stat64, Ab: __abort_js, wb: __emscripten_get_now_is_monotonic, zb: __emscripten_memcpy_js, lb: __emscripten_throw_longjmp, db: __gmtime_js, bb: __mmap_js, cb: __munmap_js, nb: __tzset_js, yb: _emscripten_date_now, z: _emscripten_get_now, Af: _emscripten_glActiveTexture, Bf: _emscripten_glAttachShader, ce: _emscripten_glBeginQuery, Yd: _emscripten_glBeginQueryEXT, Ic: _emscripten_glBeginTransformFeedback, Cf: _emscripten_glBindAttribLocation, Df: _emscripten_glBindBuffer, Fc: _emscripten_glBindBufferBase, Gc: _emscripten_glBindBufferRange, Ae: _emscripten_glBindFramebuffer, Be: _emscripten_glBindRenderbuffer, ie: _emscripten_glBindSampler, Ef: _emscripten_glBindTexture, Tb: _emscripten_glBindTransformFeedback, We: _emscripten_glBindVertexArray, Ze: _emscripten_glBindVertexArrayOES, Ff: _emscripten_glBlendColor, Gf: _emscripten_glBlendEquation, Kd: _emscripten_glBlendEquationSeparate, Hf: _emscripten_glBlendFunc, Jd: _emscripten_glBlendFuncSeparate, ue: _emscripten_glBlitFramebuffer, If: _emscripten_glBufferData, Jf: _emscripten_glBufferSubData, Ce: _emscripten_glCheckFramebufferStatus, Kf: _emscripten_glClear, hc: _emscripten_glClearBufferfi, ic: _emscripten_glClearBufferfv, lc: _emscripten_glClearBufferiv, jc: _emscripten_glClearBufferuiv, Lf: _emscripten_glClearColor, Id: _emscripten_glClearDepthf, Mf: _emscripten_glClearStencil, re: _emscripten_glClientWaitSync, Nf: _emscripten_glColorMask, X: _emscripten_glCompileShader, Y: _emscripten_glCompressedTexImage2D, Uc: _emscripten_glCompressedTexImage3D, Z: _emscripten_glCompressedTexSubImage2D, Tc: _emscripten_glCompressedTexSubImage3D, te: _emscripten_glCopyBufferSubData, Hd: _emscripten_glCopyTexImage2D, _: _emscripten_glCopyTexSubImage2D, Vc: _emscripten_glCopyTexSubImage3D, $: _emscripten_glCreateProgram, aa: _emscripten_glCreateShader, ba: _emscripten_glCullFace, ca: _emscripten_glDeleteBuffers, De: _emscripten_glDeleteFramebuffers, da: _emscripten_glDeleteProgram, de: _emscripten_glDeleteQueries, Zd: _emscripten_glDeleteQueriesEXT, Ee: _emscripten_glDeleteRenderbuffers, je: _emscripten_glDeleteSamplers, ea: _emscripten_glDeleteShader, se: _emscripten_glDeleteSync, fa: _emscripten_glDeleteTextures, Sb: _emscripten_glDeleteTransformFeedbacks, Xe: _emscripten_glDeleteVertexArrays, $e: _emscripten_glDeleteVertexArraysOES, Gd: _emscripten_glDepthFunc, ga: _emscripten_glDepthMask, Fd: _emscripten_glDepthRangef, Ed: _emscripten_glDetachShader, ha: _emscripten_glDisable, ia: _emscripten_glDisableVertexAttribArray, ja: _emscripten_glDrawArrays, Ue: _emscripten_glDrawArraysInstanced, Nd: _emscripten_glDrawArraysInstancedANGLE, Fb: _emscripten_glDrawArraysInstancedARB, Re: _emscripten_glDrawArraysInstancedBaseInstanceWEBGL, $c: _emscripten_glDrawArraysInstancedEXT, Gb: _emscripten_glDrawArraysInstancedNV, Pe: _emscripten_glDrawBuffers, Yc: _emscripten_glDrawBuffersEXT, Od: _emscripten_glDrawBuffersWEBGL, ka: _emscripten_glDrawElements, Ve: _emscripten_glDrawElementsInstanced, Md: _emscripten_glDrawElementsInstancedANGLE, Db: _emscripten_glDrawElementsInstancedARB, Se: _emscripten_glDrawElementsInstancedBaseVertexBaseInstanceWEBGL, Eb: _emscripten_glDrawElementsInstancedEXT, Zc: _emscripten_glDrawElementsInstancedNV, Je: _emscripten_glDrawRangeElements, la: _emscripten_glEnable, ma: _emscripten_glEnableVertexAttribArray, ee: _emscripten_glEndQuery, _d: _emscripten_glEndQueryEXT, Hc: _emscripten_glEndTransformFeedback, oe: _emscripten_glFenceSync, na: _emscripten_glFinish, oa: _emscripten_glFlush, Fe: _emscripten_glFramebufferRenderbuffer, Ge: _emscripten_glFramebufferTexture2D, Lc: _emscripten_glFramebufferTextureLayer, pa: _emscripten_glFrontFace, qa: _emscripten_glGenBuffers, He: _emscripten_glGenFramebuffers, fe: _emscripten_glGenQueries, $d: _emscripten_glGenQueriesEXT, Ie: _emscripten_glGenRenderbuffers, ke: _emscripten_glGenSamplers, ra: _emscripten_glGenTextures, Rb: _emscripten_glGenTransformFeedbacks, Te: _emscripten_glGenVertexArrays, af: _emscripten_glGenVertexArraysOES, we: _emscripten_glGenerateMipmap, Dd: _emscripten_glGetActiveAttrib, Cd: _emscripten_glGetActiveUniform, cc: _emscripten_glGetActiveUniformBlockName, dc: _emscripten_glGetActiveUniformBlockiv, fc: _emscripten_glGetActiveUniformsiv, Bd: _emscripten_glGetAttachedShaders, Ad: _emscripten_glGetAttribLocation, zd: _emscripten_glGetBooleanv, Yb: _emscripten_glGetBufferParameteri64v, sa: _emscripten_glGetBufferParameteriv, ta: _emscripten_glGetError, ua: _emscripten_glGetFloatv, uc: _emscripten_glGetFragDataLocation, xe: _emscripten_glGetFramebufferAttachmentParameteriv, Zb: _emscripten_glGetInteger64i_v, ac: _emscripten_glGetInteger64v, Jc: _emscripten_glGetIntegeri_v, va: _emscripten_glGetIntegerv, Jb: _emscripten_glGetInternalformativ, Nb: _emscripten_glGetProgramBinary, wa: _emscripten_glGetProgramInfoLog, xa: _emscripten_glGetProgramiv, Vd: _emscripten_glGetQueryObjecti64vEXT, Qd: _emscripten_glGetQueryObjectivEXT, Wd: _emscripten_glGetQueryObjectui64vEXT, ge: _emscripten_glGetQueryObjectuiv, ae: _emscripten_glGetQueryObjectuivEXT, he: _emscripten_glGetQueryiv, be: _emscripten_glGetQueryivEXT, ye: _emscripten_glGetRenderbufferParameteriv, Ub: _emscripten_glGetSamplerParameterfv, Vb: _emscripten_glGetSamplerParameteriv, ya: _emscripten_glGetShaderInfoLog, Sd: _emscripten_glGetShaderPrecisionFormat, yd: _emscripten_glGetShaderSource, za: _emscripten_glGetShaderiv, Aa: _emscripten_glGetString, Ye: _emscripten_glGetStringi, _b: _emscripten_glGetSynciv, xd: _emscripten_glGetTexParameterfv, wd: _emscripten_glGetTexParameteriv, Dc: _emscripten_glGetTransformFeedbackVarying, ec: _emscripten_glGetUniformBlockIndex, gc: _emscripten_glGetUniformIndices, Ba: _emscripten_glGetUniformLocation, vd: _emscripten_glGetUniformfv, ud: _emscripten_glGetUniformiv, wc: _emscripten_glGetUniformuiv, Cc: _emscripten_glGetVertexAttribIiv, Bc: _emscripten_glGetVertexAttribIuiv, rd: _emscripten_glGetVertexAttribPointerv, td: _emscripten_glGetVertexAttribfv, sd: _emscripten_glGetVertexAttribiv, qd: _emscripten_glHint, Td: _emscripten_glInvalidateFramebuffer, Ud: _emscripten_glInvalidateSubFramebuffer, pd: _emscripten_glIsBuffer, od: _emscripten_glIsEnabled, nd: _emscripten_glIsFramebuffer, md: _emscripten_glIsProgram, Sc: _emscripten_glIsQuery, Rd: _emscripten_glIsQueryEXT, ld: _emscripten_glIsRenderbuffer, Xb: _emscripten_glIsSampler, kd: _emscripten_glIsShader, pe: _emscripten_glIsSync, Ca: _emscripten_glIsTexture, Qb: _emscripten_glIsTransformFeedback, Kc: _emscripten_glIsVertexArray, Pd: _emscripten_glIsVertexArrayOES, Da: _emscripten_glLineWidth, Ea: _emscripten_glLinkProgram, Ne: _emscripten_glMultiDrawArraysInstancedBaseInstanceWEBGL, Oe: _emscripten_glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL, Pb: _emscripten_glPauseTransformFeedback, Fa: _emscripten_glPixelStorei, jd: _emscripten_glPolygonOffset, Mb: _emscripten_glProgramBinary, Lb: _emscripten_glProgramParameteri, Xd: _emscripten_glQueryCounterEXT, Qe: _emscripten_glReadBuffer, Ga: _emscripten_glReadPixels, id: _emscripten_glReleaseShaderCompiler, ze: _emscripten_glRenderbufferStorage, ve: _emscripten_glRenderbufferStorageMultisample, Ob: _emscripten_glResumeTransformFeedback, hd: _emscripten_glSampleCoverage, le: _emscripten_glSamplerParameterf, Wb: _emscripten_glSamplerParameterfv, me: _emscripten_glSamplerParameteri, ne: _emscripten_glSamplerParameteriv, Ha: _emscripten_glScissor, gd: _emscripten_glShaderBinary, Ia: _emscripten_glShaderSource, Ja: _emscripten_glStencilFunc, Ka: _emscripten_glStencilFuncSeparate, La: _emscripten_glStencilMask, Ma: _emscripten_glStencilMaskSeparate, Na: _emscripten_glStencilOp, Oa: _emscripten_glStencilOpSeparate, Pa: _emscripten_glTexImage2D, Xc: _emscripten_glTexImage3D, Qa: _emscripten_glTexParameterf, Ra: _emscripten_glTexParameterfv, Sa: _emscripten_glTexParameteri, Ta: _emscripten_glTexParameteriv, Ke: _emscripten_glTexStorage2D, Kb: _emscripten_glTexStorage3D, Ua: _emscripten_glTexSubImage2D, Wc: _emscripten_glTexSubImage3D, Ec: _emscripten_glTransformFeedbackVaryings, Va: _emscripten_glUniform1f, Wa: _emscripten_glUniform1fv, wf: _emscripten_glUniform1i, xf: _emscripten_glUniform1iv, tc: _emscripten_glUniform1ui, pc: _emscripten_glUniform1uiv, yf: _emscripten_glUniform2f, zf: _emscripten_glUniform2fv, vf: _emscripten_glUniform2i, uf: _emscripten_glUniform2iv, sc: _emscripten_glUniform2ui, oc: _emscripten_glUniform2uiv, tf: _emscripten_glUniform3f, sf: _emscripten_glUniform3fv, rf: _emscripten_glUniform3i, qf: _emscripten_glUniform3iv, rc: _emscripten_glUniform3ui, nc: _emscripten_glUniform3uiv, pf: _emscripten_glUniform4f, of: _emscripten_glUniform4fv, bf: _emscripten_glUniform4i, cf: _emscripten_glUniform4iv, qc: _emscripten_glUniform4ui, mc: _emscripten_glUniform4uiv, bc: _emscripten_glUniformBlockBinding, df: _emscripten_glUniformMatrix2fv, Rc: _emscripten_glUniformMatrix2x3fv, Pc: _emscripten_glUniformMatrix2x4fv, ef: _emscripten_glUniformMatrix3fv, Qc: _emscripten_glUniformMatrix3x2fv, Nc: _emscripten_glUniformMatrix3x4fv, ff: _emscripten_glUniformMatrix4fv, Oc: _emscripten_glUniformMatrix4x2fv, Mc: _emscripten_glUniformMatrix4x3fv, gf: _emscripten_glUseProgram, fd: _emscripten_glValidateProgram, hf: _emscripten_glVertexAttrib1f, ed: _emscripten_glVertexAttrib1fv, dd: _emscripten_glVertexAttrib2f, jf: _emscripten_glVertexAttrib2fv, cd: _emscripten_glVertexAttrib3f, kf: _emscripten_glVertexAttrib3fv, bd: _emscripten_glVertexAttrib4f, lf: _emscripten_glVertexAttrib4fv, Le: _emscripten_glVertexAttribDivisor, Ld: _emscripten_glVertexAttribDivisorANGLE, Hb: _emscripten_glVertexAttribDivisorARB, ad: _emscripten_glVertexAttribDivisorEXT, Ib: _emscripten_glVertexAttribDivisorNV, Ac: _emscripten_glVertexAttribI4i, yc: _emscripten_glVertexAttribI4iv, zc: _emscripten_glVertexAttribI4ui, xc: _emscripten_glVertexAttribI4uiv, Me: _emscripten_glVertexAttribIPointer, mf: _emscripten_glVertexAttribPointer, nf: _emscripten_glViewport, qe: _emscripten_glWaitSync, vc: _emscripten_request_animation_frame_loop, mb: _emscripten_resize_heap, Bb: _environ_get, Cb: _environ_sizes_get, Za: _exit, G: _fd_close, ab: _fd_pread, ub: _fd_read, eb: _fd_seek, E: _fd_write, K: _getentropy, Xa: _glGetIntegerv, I: _glGetString, Ya: _glGetStringi, L: invoke_diii, kc: invoke_fi, M: invoke_fiii, o: invoke_i, e: invoke_ii, v: invoke_iif, g: invoke_iii, ib: invoke_iiif, f: invoke_iiii, R: invoke_iiiiff, l: invoke_iiiii, jb: invoke_iiiiid, F: invoke_iiiiii, q: invoke_iiiiiii, A: invoke_iiiiiiii, J: invoke_iiiiiiiiii, xb: invoke_iiiiiiiiiii, D: invoke_iiiiiiiiiiii, $a: invoke_j, gb: invoke_jii, _a: invoke_jiiii, k: invoke_v, b: invoke_vi, W: invoke_vid, H: invoke_vif, _e: invoke_viff, s: invoke_vifff, c: invoke_vii, T: invoke_viiff, $b: invoke_viifff, Q: invoke_viiffff, _c: invoke_viiffiii, p: invoke_viifii, h: invoke_viii, V: invoke_viiif, U: invoke_viiifi, i: invoke_viiii, n: invoke_viiiii, m: invoke_viiiiii, S: invoke_viiiiiiff, r: invoke_viiiiiii, Of: invoke_viiiiiiii, qb: invoke_viiiiiiiii, w: invoke_viiiiiiiiii, C: invoke_viiiiiiiiiiiiiii, fb: invoke_viiji, B: _llvm_eh_typeid_for, hb: _strftime_l };
5107
+ var wasmImports = { u: ___cxa_begin_catch, x: ___cxa_end_catch, a: ___cxa_find_matching_catch_2, k: ___cxa_find_matching_catch_3, A: ___cxa_find_matching_catch_4, Q: ___cxa_rethrow, t: ___cxa_throw, lb: ___cxa_uncaught_exceptions, d: ___resumeException, S: ___syscall_fcntl64, ub: ___syscall_fstat64, qb: ___syscall_getcwd, wb: ___syscall_ioctl, rb: ___syscall_lstat64, sb: ___syscall_newfstatat, R: ___syscall_openat, tb: ___syscall_stat64, Ab: __abort_js, xb: __emscripten_get_now_is_monotonic, zb: __emscripten_memcpy_js, nb: __emscripten_throw_longjmp, fb: __gmtime_js, db: __mmap_js, eb: __munmap_js, pb: __tzset_js, yb: _emscripten_date_now, z: _emscripten_get_now, Af: _emscripten_glActiveTexture, Bf: _emscripten_glAttachShader, ce: _emscripten_glBeginQuery, Yd: _emscripten_glBeginQueryEXT, Hc: _emscripten_glBeginTransformFeedback, Cf: _emscripten_glBindAttribLocation, Df: _emscripten_glBindBuffer, Ec: _emscripten_glBindBufferBase, Fc: _emscripten_glBindBufferRange, Ae: _emscripten_glBindFramebuffer, Be: _emscripten_glBindRenderbuffer, ie: _emscripten_glBindSampler, Ef: _emscripten_glBindTexture, Ub: _emscripten_glBindTransformFeedback, We: _emscripten_glBindVertexArray, Ze: _emscripten_glBindVertexArrayOES, Ff: _emscripten_glBlendColor, Gf: _emscripten_glBlendEquation, Kd: _emscripten_glBlendEquationSeparate, Hf: _emscripten_glBlendFunc, Jd: _emscripten_glBlendFuncSeparate, ue: _emscripten_glBlitFramebuffer, If: _emscripten_glBufferData, Jf: _emscripten_glBufferSubData, Ce: _emscripten_glCheckFramebufferStatus, Kf: _emscripten_glClear, ic: _emscripten_glClearBufferfi, jc: _emscripten_glClearBufferfv, lc: _emscripten_glClearBufferiv, kc: _emscripten_glClearBufferuiv, Lf: _emscripten_glClearColor, Id: _emscripten_glClearDepthf, Mf: _emscripten_glClearStencil, re: _emscripten_glClientWaitSync, Nf: _emscripten_glColorMask, Of: _emscripten_glCompileShader, Pf: _emscripten_glCompressedTexImage2D, Uc: _emscripten_glCompressedTexImage3D, Qf: _emscripten_glCompressedTexSubImage2D, Tc: _emscripten_glCompressedTexSubImage3D, te: _emscripten_glCopyBufferSubData, Hd: _emscripten_glCopyTexImage2D, Z: _emscripten_glCopyTexSubImage2D, Vc: _emscripten_glCopyTexSubImage3D, _: _emscripten_glCreateProgram, $: _emscripten_glCreateShader, aa: _emscripten_glCullFace, ba: _emscripten_glDeleteBuffers, De: _emscripten_glDeleteFramebuffers, ca: _emscripten_glDeleteProgram, de: _emscripten_glDeleteQueries, Zd: _emscripten_glDeleteQueriesEXT, Ee: _emscripten_glDeleteRenderbuffers, je: _emscripten_glDeleteSamplers, da: _emscripten_glDeleteShader, se: _emscripten_glDeleteSync, ea: _emscripten_glDeleteTextures, Tb: _emscripten_glDeleteTransformFeedbacks, Xe: _emscripten_glDeleteVertexArrays, _e: _emscripten_glDeleteVertexArraysOES, Gd: _emscripten_glDepthFunc, fa: _emscripten_glDepthMask, Fd: _emscripten_glDepthRangef, Ed: _emscripten_glDetachShader, ga: _emscripten_glDisable, ha: _emscripten_glDisableVertexAttribArray, ia: _emscripten_glDrawArrays, Ue: _emscripten_glDrawArraysInstanced, Nd: _emscripten_glDrawArraysInstancedANGLE, Fb: _emscripten_glDrawArraysInstancedARB, Re: _emscripten_glDrawArraysInstancedBaseInstanceWEBGL, _c: _emscripten_glDrawArraysInstancedEXT, Gb: _emscripten_glDrawArraysInstancedNV, Pe: _emscripten_glDrawBuffers, Yc: _emscripten_glDrawBuffersEXT, Od: _emscripten_glDrawBuffersWEBGL, ja: _emscripten_glDrawElements, Ve: _emscripten_glDrawElementsInstanced, Md: _emscripten_glDrawElementsInstancedANGLE, Db: _emscripten_glDrawElementsInstancedARB, Se: _emscripten_glDrawElementsInstancedBaseVertexBaseInstanceWEBGL, Eb: _emscripten_glDrawElementsInstancedEXT, Zc: _emscripten_glDrawElementsInstancedNV, Je: _emscripten_glDrawRangeElements, ka: _emscripten_glEnable, la: _emscripten_glEnableVertexAttribArray, ee: _emscripten_glEndQuery, _d: _emscripten_glEndQueryEXT, Gc: _emscripten_glEndTransformFeedback, oe: _emscripten_glFenceSync, ma: _emscripten_glFinish, na: _emscripten_glFlush, Fe: _emscripten_glFramebufferRenderbuffer, Ge: _emscripten_glFramebufferTexture2D, Lc: _emscripten_glFramebufferTextureLayer, oa: _emscripten_glFrontFace, pa: _emscripten_glGenBuffers, He: _emscripten_glGenFramebuffers, fe: _emscripten_glGenQueries, $d: _emscripten_glGenQueriesEXT, Ie: _emscripten_glGenRenderbuffers, ke: _emscripten_glGenSamplers, qa: _emscripten_glGenTextures, Sb: _emscripten_glGenTransformFeedbacks, Te: _emscripten_glGenVertexArrays, $e: _emscripten_glGenVertexArraysOES, we: _emscripten_glGenerateMipmap, Dd: _emscripten_glGetActiveAttrib, Cd: _emscripten_glGetActiveUniform, dc: _emscripten_glGetActiveUniformBlockName, ec: _emscripten_glGetActiveUniformBlockiv, gc: _emscripten_glGetActiveUniformsiv, Bd: _emscripten_glGetAttachedShaders, Ad: _emscripten_glGetAttribLocation, zd: _emscripten_glGetBooleanv, _b: _emscripten_glGetBufferParameteri64v, ra: _emscripten_glGetBufferParameteriv, sa: _emscripten_glGetError, ta: _emscripten_glGetFloatv, uc: _emscripten_glGetFragDataLocation, xe: _emscripten_glGetFramebufferAttachmentParameteriv, $b: _emscripten_glGetInteger64i_v, bc: _emscripten_glGetInteger64v, Jc: _emscripten_glGetIntegeri_v, ua: _emscripten_glGetIntegerv, Jb: _emscripten_glGetInternalformativ, Ob: _emscripten_glGetProgramBinary, va: _emscripten_glGetProgramInfoLog, wa: _emscripten_glGetProgramiv, Vd: _emscripten_glGetQueryObjecti64vEXT, Qd: _emscripten_glGetQueryObjectivEXT, Wd: _emscripten_glGetQueryObjectui64vEXT, ge: _emscripten_glGetQueryObjectuiv, ae: _emscripten_glGetQueryObjectuivEXT, he: _emscripten_glGetQueryiv, be: _emscripten_glGetQueryivEXT, ye: _emscripten_glGetRenderbufferParameteriv, Wb: _emscripten_glGetSamplerParameterfv, Xb: _emscripten_glGetSamplerParameteriv, xa: _emscripten_glGetShaderInfoLog, Sd: _emscripten_glGetShaderPrecisionFormat, yd: _emscripten_glGetShaderSource, ya: _emscripten_glGetShaderiv, za: _emscripten_glGetString, Ye: _emscripten_glGetStringi, ac: _emscripten_glGetSynciv, xd: _emscripten_glGetTexParameterfv, wd: _emscripten_glGetTexParameteriv, Cc: _emscripten_glGetTransformFeedbackVarying, fc: _emscripten_glGetUniformBlockIndex, hc: _emscripten_glGetUniformIndices, Aa: _emscripten_glGetUniformLocation, vd: _emscripten_glGetUniformfv, ud: _emscripten_glGetUniformiv, vc: _emscripten_glGetUniformuiv, Bc: _emscripten_glGetVertexAttribIiv, Ac: _emscripten_glGetVertexAttribIuiv, rd: _emscripten_glGetVertexAttribPointerv, td: _emscripten_glGetVertexAttribfv, sd: _emscripten_glGetVertexAttribiv, qd: _emscripten_glHint, Td: _emscripten_glInvalidateFramebuffer, Ud: _emscripten_glInvalidateSubFramebuffer, pd: _emscripten_glIsBuffer, od: _emscripten_glIsEnabled, nd: _emscripten_glIsFramebuffer, md: _emscripten_glIsProgram, Sc: _emscripten_glIsQuery, Rd: _emscripten_glIsQueryEXT, kd: _emscripten_glIsRenderbuffer, Zb: _emscripten_glIsSampler, jd: _emscripten_glIsShader, pe: _emscripten_glIsSync, Ba: _emscripten_glIsTexture, Rb: _emscripten_glIsTransformFeedback, Kc: _emscripten_glIsVertexArray, Pd: _emscripten_glIsVertexArrayOES, Ca: _emscripten_glLineWidth, Da: _emscripten_glLinkProgram, Ne: _emscripten_glMultiDrawArraysInstancedBaseInstanceWEBGL, Oe: _emscripten_glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL, Qb: _emscripten_glPauseTransformFeedback, Ea: _emscripten_glPixelStorei, id: _emscripten_glPolygonOffset, Nb: _emscripten_glProgramBinary, Mb: _emscripten_glProgramParameteri, Xd: _emscripten_glQueryCounterEXT, Qe: _emscripten_glReadBuffer, Fa: _emscripten_glReadPixels, hd: _emscripten_glReleaseShaderCompiler, ze: _emscripten_glRenderbufferStorage, ve: _emscripten_glRenderbufferStorageMultisample, Pb: _emscripten_glResumeTransformFeedback, gd: _emscripten_glSampleCoverage, le: _emscripten_glSamplerParameterf, Yb: _emscripten_glSamplerParameterfv, me: _emscripten_glSamplerParameteri, ne: _emscripten_glSamplerParameteriv, Ga: _emscripten_glScissor, fd: _emscripten_glShaderBinary, Ha: _emscripten_glShaderSource, Ia: _emscripten_glStencilFunc, Ja: _emscripten_glStencilFuncSeparate, Ka: _emscripten_glStencilMask, La: _emscripten_glStencilMaskSeparate, Ma: _emscripten_glStencilOp, Na: _emscripten_glStencilOpSeparate, Oa: _emscripten_glTexImage2D, Xc: _emscripten_glTexImage3D, Pa: _emscripten_glTexParameterf, Qa: _emscripten_glTexParameterfv, Ra: _emscripten_glTexParameteri, Sa: _emscripten_glTexParameteriv, Ke: _emscripten_glTexStorage2D, Lb: _emscripten_glTexStorage3D, Ta: _emscripten_glTexSubImage2D, Wc: _emscripten_glTexSubImage3D, Dc: _emscripten_glTransformFeedbackVaryings, Ua: _emscripten_glUniform1f, Va: _emscripten_glUniform1fv, wf: _emscripten_glUniform1i, xf: _emscripten_glUniform1iv, tc: _emscripten_glUniform1ui, pc: _emscripten_glUniform1uiv, yf: _emscripten_glUniform2f, zf: _emscripten_glUniform2fv, vf: _emscripten_glUniform2i, uf: _emscripten_glUniform2iv, sc: _emscripten_glUniform2ui, oc: _emscripten_glUniform2uiv, tf: _emscripten_glUniform3f, sf: _emscripten_glUniform3fv, rf: _emscripten_glUniform3i, qf: _emscripten_glUniform3iv, rc: _emscripten_glUniform3ui, nc: _emscripten_glUniform3uiv, pf: _emscripten_glUniform4f, of: _emscripten_glUniform4fv, af: _emscripten_glUniform4i, cf: _emscripten_glUniform4iv, qc: _emscripten_glUniform4ui, mc: _emscripten_glUniform4uiv, cc: _emscripten_glUniformBlockBinding, df: _emscripten_glUniformMatrix2fv, Rc: _emscripten_glUniformMatrix2x3fv, Pc: _emscripten_glUniformMatrix2x4fv, ef: _emscripten_glUniformMatrix3fv, Qc: _emscripten_glUniformMatrix3x2fv, Nc: _emscripten_glUniformMatrix3x4fv, ff: _emscripten_glUniformMatrix4fv, Oc: _emscripten_glUniformMatrix4x2fv, Mc: _emscripten_glUniformMatrix4x3fv, gf: _emscripten_glUseProgram, ed: _emscripten_glValidateProgram, hf: _emscripten_glVertexAttrib1f, dd: _emscripten_glVertexAttrib1fv, cd: _emscripten_glVertexAttrib2f, jf: _emscripten_glVertexAttrib2fv, bd: _emscripten_glVertexAttrib3f, kf: _emscripten_glVertexAttrib3fv, ad: _emscripten_glVertexAttrib4f, lf: _emscripten_glVertexAttrib4fv, Le: _emscripten_glVertexAttribDivisor, Ld: _emscripten_glVertexAttribDivisorANGLE, Hb: _emscripten_glVertexAttribDivisorARB, $c: _emscripten_glVertexAttribDivisorEXT, Ib: _emscripten_glVertexAttribDivisorNV, zc: _emscripten_glVertexAttribI4i, xc: _emscripten_glVertexAttribI4iv, yc: _emscripten_glVertexAttribI4ui, wc: _emscripten_glVertexAttribI4uiv, Me: _emscripten_glVertexAttribIPointer, mf: _emscripten_glVertexAttribPointer, nf: _emscripten_glViewport, qe: _emscripten_glWaitSync, Za: _emscripten_request_animation_frame_loop, ob: _emscripten_resize_heap, Bb: _environ_get, Cb: _environ_sizes_get, Ya: _exit, H: _fd_close, cb: _fd_pread, vb: _fd_read, gb: _fd_seek, F: _fd_write, L: _getentropy, Wa: _glGetIntegerv, J: _glGetString, Xa: _glGetStringi, O: invoke_diii, $a: invoke_fi, P: invoke_fiii, o: invoke_i, e: invoke_ii, v: invoke_iif, f: invoke_iii, ld: invoke_iiif, g: invoke_iiii, U: invoke_iiiiff, j: invoke_iiiii, kb: invoke_iiiiid, G: invoke_iiiiii, r: invoke_iiiiiii, B: invoke_iiiiiiii, K: invoke_iiiiiiiiii, Vb: invoke_iiiiiiiiiii, D: invoke_iiiiiiiiiiii, bb: invoke_j, ib: invoke_jii, ab: invoke_jiiii, l: invoke_v, b: invoke_vi, Y: invoke_vid, I: invoke_vif, bf: invoke_viff, q: invoke_vifff, M: invoke_viffffffffffffffffffff, c: invoke_vii, X: invoke_viiff, Ic: invoke_viifff, T: invoke_viiffff, mb: invoke_viiffiii, s: invoke_viifii, h: invoke_viii, W: invoke_viiif, V: invoke_viiifi, i: invoke_viiii, w: invoke_viiiifif, n: invoke_viiiii, m: invoke_viiiiii, N: invoke_viiiiiiff, p: invoke_viiiiiii, Rf: invoke_viiiiiiii, Kb: invoke_viiiiiiiii, y: invoke_viiiiiiiiii, _a: invoke_viiiiiiiiiii, C: invoke_viiiiiiiiiiiiiii, hb: invoke_viiji, E: _llvm_eh_typeid_for, jb: _strftime_l };
5108
5108
  var wasmExports = createWasm();
5109
- var ___wasm_call_ctors = () => (___wasm_call_ctors = wasmExports["Qf"])();
5110
- var _allocate = Module["_allocate"] = (a0) => (_allocate = Module["_allocate"] = wasmExports["Sf"])(a0);
5111
- var _deallocate = Module["_deallocate"] = (a0, a1) => (_deallocate = Module["_deallocate"] = wasmExports["Tf"])(a0, a1);
5112
- var _init = Module["_init"] = (a0, a1) => (_init = Module["_init"] = wasmExports["Uf"])(a0, a1);
5113
- var _tick = Module["_tick"] = (a0, a1) => (_tick = Module["_tick"] = wasmExports["Vf"])(a0, a1);
5114
- var _resize_surface = Module["_resize_surface"] = (a0, a1, a2) => (_resize_surface = Module["_resize_surface"] = wasmExports["Wf"])(a0, a1, a2);
5115
- var _redraw = Module["_redraw"] = (a0) => (_redraw = Module["_redraw"] = wasmExports["Xf"])(a0);
5116
- var _load_scene_json = Module["_load_scene_json"] = (a0, a1, a2) => (_load_scene_json = Module["_load_scene_json"] = wasmExports["Yf"])(a0, a1, a2);
5117
- var _load_dummy_scene = Module["_load_dummy_scene"] = (a0) => (_load_dummy_scene = Module["_load_dummy_scene"] = wasmExports["Zf"])(a0);
5118
- var _load_benchmark_scene = Module["_load_benchmark_scene"] = (a0, a1, a2) => (_load_benchmark_scene = Module["_load_benchmark_scene"] = wasmExports["_f"])(a0, a1, a2);
5119
- var _pointer_move = Module["_pointer_move"] = (a0, a1, a2) => (_pointer_move = Module["_pointer_move"] = wasmExports["$f"])(a0, a1, a2);
5120
- var _command = Module["_command"] = (a0, a1, a2, a3) => (_command = Module["_command"] = wasmExports["ag"])(a0, a1, a2, a3);
5121
- var _set_main_camera_transform = Module["_set_main_camera_transform"] = (a0, a1, a2, a3, a4, a5, a6) => (_set_main_camera_transform = Module["_set_main_camera_transform"] = wasmExports["bg"])(a0, a1, a2, a3, a4, a5, a6);
5122
- var _get_node_id_from_point = Module["_get_node_id_from_point"] = (a0, a1, a2) => (_get_node_id_from_point = Module["_get_node_id_from_point"] = wasmExports["cg"])(a0, a1, a2);
5123
- var _get_node_ids_from_point = Module["_get_node_ids_from_point"] = (a0, a1, a2) => (_get_node_ids_from_point = Module["_get_node_ids_from_point"] = wasmExports["dg"])(a0, a1, a2);
5124
- var _get_node_ids_from_envelope = Module["_get_node_ids_from_envelope"] = (a0, a1, a2, a3, a4) => (_get_node_ids_from_envelope = Module["_get_node_ids_from_envelope"] = wasmExports["eg"])(a0, a1, a2, a3, a4);
5125
- var _get_node_absolute_bounding_box = Module["_get_node_absolute_bounding_box"] = (a0, a1, a2) => (_get_node_absolute_bounding_box = Module["_get_node_absolute_bounding_box"] = wasmExports["fg"])(a0, a1, a2);
5126
- var _export_node_as = Module["_export_node_as"] = (a0, a1, a2, a3, a4) => (_export_node_as = Module["_export_node_as"] = wasmExports["gg"])(a0, a1, a2, a3, a4);
5127
- var _set_debug = Module["_set_debug"] = (a0, a1) => (_set_debug = Module["_set_debug"] = wasmExports["hg"])(a0, a1);
5128
- var _toggle_debug = Module["_toggle_debug"] = (a0) => (_toggle_debug = Module["_toggle_debug"] = wasmExports["ig"])(a0);
5129
- var _set_verbose = Module["_set_verbose"] = (a0, a1) => (_set_verbose = Module["_set_verbose"] = wasmExports["jg"])(a0, a1);
5130
- var _devtools_rendering_set_show_ruler = Module["_devtools_rendering_set_show_ruler"] = (a0, a1) => (_devtools_rendering_set_show_ruler = Module["_devtools_rendering_set_show_ruler"] = wasmExports["kg"])(a0, a1);
5131
- var _devtools_rendering_set_show_tiles = Module["_devtools_rendering_set_show_tiles"] = (a0, a1) => (_devtools_rendering_set_show_tiles = Module["_devtools_rendering_set_show_tiles"] = wasmExports["lg"])(a0, a1);
5132
- var _devtools_rendering_set_show_fps_meter = Module["_devtools_rendering_set_show_fps_meter"] = (a0, a1) => (_devtools_rendering_set_show_fps_meter = Module["_devtools_rendering_set_show_fps_meter"] = wasmExports["mg"])(a0, a1);
5133
- var _devtools_rendering_set_show_stats = Module["_devtools_rendering_set_show_stats"] = (a0, a1) => (_devtools_rendering_set_show_stats = Module["_devtools_rendering_set_show_stats"] = wasmExports["ng"])(a0, a1);
5134
- var _devtools_rendering_set_show_hit_testing = Module["_devtools_rendering_set_show_hit_testing"] = (a0, a1) => (_devtools_rendering_set_show_hit_testing = Module["_devtools_rendering_set_show_hit_testing"] = wasmExports["og"])(a0, a1);
5135
- var _main = Module["_main"] = (a0, a1) => (_main = Module["_main"] = wasmExports["pg"])(a0, a1);
5136
- var ___wbindgen_malloc = Module["___wbindgen_malloc"] = (a0, a1) => (___wbindgen_malloc = Module["___wbindgen_malloc"] = wasmExports["qg"])(a0, a1);
5137
- var ___wbindgen_realloc = Module["___wbindgen_realloc"] = (a0, a1, a2, a3) => (___wbindgen_realloc = Module["___wbindgen_realloc"] = wasmExports["rg"])(a0, a1, a2, a3);
5138
- var ___wbindgen_free = Module["___wbindgen_free"] = (a0, a1, a2) => (___wbindgen_free = Module["___wbindgen_free"] = wasmExports["sg"])(a0, a1, a2);
5139
- var ___wbindgen_exn_store = Module["___wbindgen_exn_store"] = (a0) => (___wbindgen_exn_store = Module["___wbindgen_exn_store"] = wasmExports["tg"])(a0);
5140
- var ___externref_table_alloc = Module["___externref_table_alloc"] = () => (___externref_table_alloc = Module["___externref_table_alloc"] = wasmExports["ug"])();
5141
- var ___externref_table_dealloc = Module["___externref_table_dealloc"] = (a0) => (___externref_table_dealloc = Module["___externref_table_dealloc"] = wasmExports["vg"])(a0);
5142
- var ___externref_drop_slice = Module["___externref_drop_slice"] = (a0, a1) => (___externref_drop_slice = Module["___externref_drop_slice"] = wasmExports["wg"])(a0, a1);
5143
- var ___externref_heap_live_count = Module["___externref_heap_live_count"] = () => (___externref_heap_live_count = Module["___externref_heap_live_count"] = wasmExports["xg"])();
5144
- var _malloc = (a0) => (_malloc = wasmExports["yg"])(a0);
5109
+ var ___wasm_call_ctors = () => (___wasm_call_ctors = wasmExports["Tf"])();
5110
+ var _allocate = Module["_allocate"] = (a0) => (_allocate = Module["_allocate"] = wasmExports["Vf"])(a0);
5111
+ var _deallocate = Module["_deallocate"] = (a0, a1) => (_deallocate = Module["_deallocate"] = wasmExports["Wf"])(a0, a1);
5112
+ var _init = Module["_init"] = (a0, a1, a2) => (_init = Module["_init"] = wasmExports["Xf"])(a0, a1, a2);
5113
+ var _tick = Module["_tick"] = (a0, a1) => (_tick = Module["_tick"] = wasmExports["Yf"])(a0, a1);
5114
+ var _resize_surface = Module["_resize_surface"] = (a0, a1, a2) => (_resize_surface = Module["_resize_surface"] = wasmExports["Zf"])(a0, a1, a2);
5115
+ var _redraw = Module["_redraw"] = (a0) => (_redraw = Module["_redraw"] = wasmExports["_f"])(a0);
5116
+ var _load_scene_json = Module["_load_scene_json"] = (a0, a1, a2) => (_load_scene_json = Module["_load_scene_json"] = wasmExports["$f"])(a0, a1, a2);
5117
+ var _load_dummy_scene = Module["_load_dummy_scene"] = (a0) => (_load_dummy_scene = Module["_load_dummy_scene"] = wasmExports["ag"])(a0);
5118
+ var _load_benchmark_scene = Module["_load_benchmark_scene"] = (a0, a1, a2) => (_load_benchmark_scene = Module["_load_benchmark_scene"] = wasmExports["bg"])(a0, a1, a2);
5119
+ var _pointer_move = Module["_pointer_move"] = (a0, a1, a2) => (_pointer_move = Module["_pointer_move"] = wasmExports["cg"])(a0, a1, a2);
5120
+ var _command = Module["_command"] = (a0, a1, a2, a3) => (_command = Module["_command"] = wasmExports["dg"])(a0, a1, a2, a3);
5121
+ var _set_main_camera_transform = Module["_set_main_camera_transform"] = (a0, a1, a2, a3, a4, a5, a6) => (_set_main_camera_transform = Module["_set_main_camera_transform"] = wasmExports["eg"])(a0, a1, a2, a3, a4, a5, a6);
5122
+ var _get_node_id_from_point = Module["_get_node_id_from_point"] = (a0, a1, a2) => (_get_node_id_from_point = Module["_get_node_id_from_point"] = wasmExports["fg"])(a0, a1, a2);
5123
+ var _get_node_ids_from_point = Module["_get_node_ids_from_point"] = (a0, a1, a2) => (_get_node_ids_from_point = Module["_get_node_ids_from_point"] = wasmExports["gg"])(a0, a1, a2);
5124
+ var _get_node_ids_from_envelope = Module["_get_node_ids_from_envelope"] = (a0, a1, a2, a3, a4) => (_get_node_ids_from_envelope = Module["_get_node_ids_from_envelope"] = wasmExports["hg"])(a0, a1, a2, a3, a4);
5125
+ var _get_node_absolute_bounding_box = Module["_get_node_absolute_bounding_box"] = (a0, a1, a2) => (_get_node_absolute_bounding_box = Module["_get_node_absolute_bounding_box"] = wasmExports["ig"])(a0, a1, a2);
5126
+ var _export_node_as = Module["_export_node_as"] = (a0, a1, a2, a3, a4) => (_export_node_as = Module["_export_node_as"] = wasmExports["jg"])(a0, a1, a2, a3, a4);
5127
+ var _set_debug = Module["_set_debug"] = (a0, a1) => (_set_debug = Module["_set_debug"] = wasmExports["kg"])(a0, a1);
5128
+ var _toggle_debug = Module["_toggle_debug"] = (a0) => (_toggle_debug = Module["_toggle_debug"] = wasmExports["lg"])(a0);
5129
+ var _set_verbose = Module["_set_verbose"] = (a0, a1) => (_set_verbose = Module["_set_verbose"] = wasmExports["mg"])(a0, a1);
5130
+ var _devtools_rendering_set_show_ruler = Module["_devtools_rendering_set_show_ruler"] = (a0, a1) => (_devtools_rendering_set_show_ruler = Module["_devtools_rendering_set_show_ruler"] = wasmExports["ng"])(a0, a1);
5131
+ var _devtools_rendering_set_show_tiles = Module["_devtools_rendering_set_show_tiles"] = (a0, a1) => (_devtools_rendering_set_show_tiles = Module["_devtools_rendering_set_show_tiles"] = wasmExports["og"])(a0, a1);
5132
+ var _devtools_rendering_set_show_fps_meter = Module["_devtools_rendering_set_show_fps_meter"] = (a0, a1) => (_devtools_rendering_set_show_fps_meter = Module["_devtools_rendering_set_show_fps_meter"] = wasmExports["pg"])(a0, a1);
5133
+ var _devtools_rendering_set_show_stats = Module["_devtools_rendering_set_show_stats"] = (a0, a1) => (_devtools_rendering_set_show_stats = Module["_devtools_rendering_set_show_stats"] = wasmExports["qg"])(a0, a1);
5134
+ var _devtools_rendering_set_show_hit_testing = Module["_devtools_rendering_set_show_hit_testing"] = (a0, a1) => (_devtools_rendering_set_show_hit_testing = Module["_devtools_rendering_set_show_hit_testing"] = wasmExports["rg"])(a0, a1);
5135
+ var _main = Module["_main"] = (a0, a1) => (_main = Module["_main"] = wasmExports["sg"])(a0, a1);
5136
+ var _malloc = (a0) => (_malloc = wasmExports["tg"])(a0);
5145
5137
  var _htonl = (a0) => (_htonl = wasmExports["htonl"])(a0);
5146
5138
  var _htons = (a0) => (_htons = wasmExports["htons"])(a0);
5147
- var _emscripten_builtin_memalign = (a0, a1) => (_emscripten_builtin_memalign = wasmExports["zg"])(a0, a1);
5139
+ var _emscripten_builtin_memalign = (a0, a1) => (_emscripten_builtin_memalign = wasmExports["ug"])(a0, a1);
5148
5140
  var _ntohs = (a0) => (_ntohs = wasmExports["ntohs"])(a0);
5149
- var _setThrew = (a0, a1) => (_setThrew = wasmExports["Ag"])(a0, a1);
5150
- var __emscripten_tempret_set = (a0) => (__emscripten_tempret_set = wasmExports["Bg"])(a0);
5151
- var __emscripten_stack_restore = (a0) => (__emscripten_stack_restore = wasmExports["Cg"])(a0);
5152
- var __emscripten_stack_alloc = (a0) => (__emscripten_stack_alloc = wasmExports["Dg"])(a0);
5153
- var _emscripten_stack_get_current = () => (_emscripten_stack_get_current = wasmExports["Eg"])();
5141
+ var _setThrew = (a0, a1) => (_setThrew = wasmExports["vg"])(a0, a1);
5142
+ var __emscripten_tempret_set = (a0) => (__emscripten_tempret_set = wasmExports["wg"])(a0);
5143
+ var __emscripten_stack_restore = (a0) => (__emscripten_stack_restore = wasmExports["xg"])(a0);
5144
+ var __emscripten_stack_alloc = (a0) => (__emscripten_stack_alloc = wasmExports["yg"])(a0);
5145
+ var _emscripten_stack_get_current = () => (_emscripten_stack_get_current = wasmExports["zg"])();
5154
5146
  var ___cxa_free_exception = (a0) => (___cxa_free_exception = wasmExports["__cxa_free_exception"])(a0);
5155
- var ___cxa_decrement_exception_refcount = (a0) => (___cxa_decrement_exception_refcount = wasmExports["Fg"])(a0);
5156
- var ___cxa_increment_exception_refcount = (a0) => (___cxa_increment_exception_refcount = wasmExports["Gg"])(a0);
5157
- var ___cxa_can_catch = (a0, a1, a2) => (___cxa_can_catch = wasmExports["Hg"])(a0, a1, a2);
5158
- var ___cxa_is_pointer_type = (a0) => (___cxa_is_pointer_type = wasmExports["Ig"])(a0);
5159
- var dynCall_jii = Module["dynCall_jii"] = (a0, a1, a2) => (dynCall_jii = Module["dynCall_jii"] = wasmExports["Jg"])(a0, a1, a2);
5160
- var dynCall_viiji = Module["dynCall_viiji"] = (a0, a1, a2, a3, a4, a5) => (dynCall_viiji = Module["dynCall_viiji"] = wasmExports["Kg"])(a0, a1, a2, a3, a4, a5);
5161
- var dynCall_j = Module["dynCall_j"] = (a0) => (dynCall_j = Module["dynCall_j"] = wasmExports["Lg"])(a0);
5162
- var dynCall_jiiii = Module["dynCall_jiiii"] = (a0, a1, a2, a3, a4) => (dynCall_jiiii = Module["dynCall_jiiii"] = wasmExports["Mg"])(a0, a1, a2, a3, a4);
5147
+ var ___cxa_decrement_exception_refcount = (a0) => (___cxa_decrement_exception_refcount = wasmExports["Ag"])(a0);
5148
+ var ___cxa_increment_exception_refcount = (a0) => (___cxa_increment_exception_refcount = wasmExports["Bg"])(a0);
5149
+ var ___cxa_can_catch = (a0, a1, a2) => (___cxa_can_catch = wasmExports["Cg"])(a0, a1, a2);
5150
+ var ___cxa_is_pointer_type = (a0) => (___cxa_is_pointer_type = wasmExports["Dg"])(a0);
5151
+ var dynCall_jii = Module["dynCall_jii"] = (a0, a1, a2) => (dynCall_jii = Module["dynCall_jii"] = wasmExports["Eg"])(a0, a1, a2);
5152
+ var dynCall_viiji = Module["dynCall_viiji"] = (a0, a1, a2, a3, a4, a5) => (dynCall_viiji = Module["dynCall_viiji"] = wasmExports["Fg"])(a0, a1, a2, a3, a4, a5);
5153
+ var dynCall_j = Module["dynCall_j"] = (a0) => (dynCall_j = Module["dynCall_j"] = wasmExports["Gg"])(a0);
5154
+ var dynCall_jiiii = Module["dynCall_jiiii"] = (a0, a1, a2, a3, a4) => (dynCall_jiiii = Module["dynCall_jiiii"] = wasmExports["Hg"])(a0, a1, a2, a3, a4);
5163
5155
  function invoke_iiii(index, a1, a2, a3) {
5164
5156
  var sp = stackSave();
5165
5157
  try {
@@ -5310,57 +5302,57 @@ var require_grida_canvas_wasm = __commonJS({
5310
5302
  _setThrew(1, 0);
5311
5303
  }
5312
5304
  }
5313
- function invoke_viiif(index, a1, a2, a3, a4) {
5305
+ function invoke_iiiiii(index, a1, a2, a3, a4, a5) {
5314
5306
  var sp = stackSave();
5315
5307
  try {
5316
- getWasmTableEntry(index)(a1, a2, a3, a4);
5308
+ return getWasmTableEntry(index)(a1, a2, a3, a4, a5);
5317
5309
  } catch (e) {
5318
5310
  stackRestore(sp);
5319
5311
  if (e !== e + 0) throw e;
5320
5312
  _setThrew(1, 0);
5321
5313
  }
5322
5314
  }
5323
- function invoke_i(index) {
5315
+ function invoke_vifff(index, a1, a2, a3, a4) {
5324
5316
  var sp = stackSave();
5325
5317
  try {
5326
- return getWasmTableEntry(index)();
5318
+ getWasmTableEntry(index)(a1, a2, a3, a4);
5327
5319
  } catch (e) {
5328
5320
  stackRestore(sp);
5329
5321
  if (e !== e + 0) throw e;
5330
5322
  _setThrew(1, 0);
5331
5323
  }
5332
5324
  }
5333
- function invoke_vif(index, a1, a2) {
5325
+ function invoke_viiiiiii(index, a1, a2, a3, a4, a5, a6, a7) {
5334
5326
  var sp = stackSave();
5335
5327
  try {
5336
- getWasmTableEntry(index)(a1, a2);
5328
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7);
5337
5329
  } catch (e) {
5338
5330
  stackRestore(sp);
5339
5331
  if (e !== e + 0) throw e;
5340
5332
  _setThrew(1, 0);
5341
5333
  }
5342
5334
  }
5343
- function invoke_viiifi(index, a1, a2, a3, a4, a5) {
5335
+ function invoke_viiff(index, a1, a2, a3, a4) {
5344
5336
  var sp = stackSave();
5345
5337
  try {
5346
- getWasmTableEntry(index)(a1, a2, a3, a4, a5);
5338
+ getWasmTableEntry(index)(a1, a2, a3, a4);
5347
5339
  } catch (e) {
5348
5340
  stackRestore(sp);
5349
5341
  if (e !== e + 0) throw e;
5350
5342
  _setThrew(1, 0);
5351
5343
  }
5352
5344
  }
5353
- function invoke_iiiiii(index, a1, a2, a3, a4, a5) {
5345
+ function invoke_viiiifif(index, a1, a2, a3, a4, a5, a6, a7) {
5354
5346
  var sp = stackSave();
5355
5347
  try {
5356
- return getWasmTableEntry(index)(a1, a2, a3, a4, a5);
5348
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7);
5357
5349
  } catch (e) {
5358
5350
  stackRestore(sp);
5359
5351
  if (e !== e + 0) throw e;
5360
5352
  _setThrew(1, 0);
5361
5353
  }
5362
5354
  }
5363
- function invoke_vifff(index, a1, a2, a3, a4) {
5355
+ function invoke_viiif(index, a1, a2, a3, a4) {
5364
5356
  var sp = stackSave();
5365
5357
  try {
5366
5358
  getWasmTableEntry(index)(a1, a2, a3, a4);
@@ -5370,10 +5362,30 @@ var require_grida_canvas_wasm = __commonJS({
5370
5362
  _setThrew(1, 0);
5371
5363
  }
5372
5364
  }
5373
- function invoke_viiff(index, a1, a2, a3, a4) {
5365
+ function invoke_i(index) {
5374
5366
  var sp = stackSave();
5375
5367
  try {
5376
- getWasmTableEntry(index)(a1, a2, a3, a4);
5368
+ return getWasmTableEntry(index)();
5369
+ } catch (e) {
5370
+ stackRestore(sp);
5371
+ if (e !== e + 0) throw e;
5372
+ _setThrew(1, 0);
5373
+ }
5374
+ }
5375
+ function invoke_iiif(index, a1, a2, a3) {
5376
+ var sp = stackSave();
5377
+ try {
5378
+ return getWasmTableEntry(index)(a1, a2, a3);
5379
+ } catch (e) {
5380
+ stackRestore(sp);
5381
+ if (e !== e + 0) throw e;
5382
+ _setThrew(1, 0);
5383
+ }
5384
+ }
5385
+ function invoke_viiifi(index, a1, a2, a3, a4, a5) {
5386
+ var sp = stackSave();
5387
+ try {
5388
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5);
5377
5389
  } catch (e) {
5378
5390
  stackRestore(sp);
5379
5391
  if (e !== e + 0) throw e;
@@ -5390,100 +5402,110 @@ var require_grida_canvas_wasm = __commonJS({
5390
5402
  _setThrew(1, 0);
5391
5403
  }
5392
5404
  }
5393
- function invoke_viiffiii(index, a1, a2, a3, a4, a5, a6, a7) {
5405
+ function invoke_viifff(index, a1, a2, a3, a4, a5) {
5394
5406
  var sp = stackSave();
5395
5407
  try {
5396
- getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7);
5408
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5);
5397
5409
  } catch (e) {
5398
5410
  stackRestore(sp);
5399
5411
  if (e !== e + 0) throw e;
5400
5412
  _setThrew(1, 0);
5401
5413
  }
5402
5414
  }
5403
- function invoke_viiiiiiff(index, a1, a2, a3, a4, a5, a6, a7, a8) {
5415
+ function invoke_vif(index, a1, a2) {
5404
5416
  var sp = stackSave();
5405
5417
  try {
5406
- getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8);
5418
+ getWasmTableEntry(index)(a1, a2);
5407
5419
  } catch (e) {
5408
5420
  stackRestore(sp);
5409
5421
  if (e !== e + 0) throw e;
5410
5422
  _setThrew(1, 0);
5411
5423
  }
5412
5424
  }
5413
- function invoke_viiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
5425
+ function invoke_iiiiff(index, a1, a2, a3, a4, a5) {
5414
5426
  var sp = stackSave();
5415
5427
  try {
5416
- getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
5428
+ return getWasmTableEntry(index)(a1, a2, a3, a4, a5);
5417
5429
  } catch (e) {
5418
5430
  stackRestore(sp);
5419
5431
  if (e !== e + 0) throw e;
5420
5432
  _setThrew(1, 0);
5421
5433
  }
5422
5434
  }
5423
- function invoke_fi(index, a1) {
5435
+ function invoke_viiffff(index, a1, a2, a3, a4, a5, a6) {
5424
5436
  var sp = stackSave();
5425
5437
  try {
5426
- return getWasmTableEntry(index)(a1);
5438
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6);
5427
5439
  } catch (e) {
5428
5440
  stackRestore(sp);
5429
5441
  if (e !== e + 0) throw e;
5430
5442
  _setThrew(1, 0);
5431
5443
  }
5432
5444
  }
5433
- function invoke_viifff(index, a1, a2, a3, a4, a5) {
5445
+ function invoke_iiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
5434
5446
  var sp = stackSave();
5435
5447
  try {
5436
- getWasmTableEntry(index)(a1, a2, a3, a4, a5);
5448
+ return getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
5437
5449
  } catch (e) {
5438
5450
  stackRestore(sp);
5439
5451
  if (e !== e + 0) throw e;
5440
5452
  _setThrew(1, 0);
5441
5453
  }
5442
5454
  }
5443
- function invoke_iiiiff(index, a1, a2, a3, a4, a5) {
5455
+ function invoke_viiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
5444
5456
  var sp = stackSave();
5445
5457
  try {
5446
- return getWasmTableEntry(index)(a1, a2, a3, a4, a5);
5458
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9);
5447
5459
  } catch (e) {
5448
5460
  stackRestore(sp);
5449
5461
  if (e !== e + 0) throw e;
5450
5462
  _setThrew(1, 0);
5451
5463
  }
5452
5464
  }
5453
- function invoke_viiffff(index, a1, a2, a3, a4, a5, a6) {
5465
+ function invoke_viiffiii(index, a1, a2, a3, a4, a5, a6, a7) {
5454
5466
  var sp = stackSave();
5455
5467
  try {
5456
- getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6);
5468
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7);
5457
5469
  } catch (e) {
5458
5470
  stackRestore(sp);
5459
5471
  if (e !== e + 0) throw e;
5460
5472
  _setThrew(1, 0);
5461
5473
  }
5462
5474
  }
5463
- function invoke_iiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
5475
+ function invoke_viiiiiiff(index, a1, a2, a3, a4, a5, a6, a7, a8) {
5464
5476
  var sp = stackSave();
5465
5477
  try {
5466
- return getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
5478
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8);
5467
5479
  } catch (e) {
5468
5480
  stackRestore(sp);
5469
5481
  if (e !== e + 0) throw e;
5470
5482
  _setThrew(1, 0);
5471
5483
  }
5472
5484
  }
5473
- function invoke_viiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
5485
+ function invoke_fi(index, a1) {
5474
5486
  var sp = stackSave();
5475
5487
  try {
5476
- getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9);
5488
+ return getWasmTableEntry(index)(a1);
5477
5489
  } catch (e) {
5478
5490
  stackRestore(sp);
5479
5491
  if (e !== e + 0) throw e;
5480
5492
  _setThrew(1, 0);
5481
5493
  }
5482
5494
  }
5483
- function invoke_iiif(index, a1, a2, a3) {
5495
+ function invoke_viiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
5484
5496
  var sp = stackSave();
5485
5497
  try {
5486
- return getWasmTableEntry(index)(a1, a2, a3);
5498
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
5499
+ } catch (e) {
5500
+ stackRestore(sp);
5501
+ if (e !== e + 0) throw e;
5502
+ _setThrew(1, 0);
5503
+ }
5504
+ }
5505
+ function invoke_viffffffffffffffffffff(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21) {
5506
+ var sp = stackSave();
5507
+ try {
5508
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21);
5487
5509
  } catch (e) {
5488
5510
  stackRestore(sp);
5489
5511
  if (e !== e + 0) throw e;
@@ -5550,20 +5572,20 @@ var require_grida_canvas_wasm = __commonJS({
5550
5572
  _setThrew(1, 0);
5551
5573
  }
5552
5574
  }
5553
- function invoke_viiiiiii(index, a1, a2, a3, a4, a5, a6, a7) {
5575
+ function invoke_iiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
5554
5576
  var sp = stackSave();
5555
5577
  try {
5556
- getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7);
5578
+ return getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
5557
5579
  } catch (e) {
5558
5580
  stackRestore(sp);
5559
5581
  if (e !== e + 0) throw e;
5560
5582
  _setThrew(1, 0);
5561
5583
  }
5562
5584
  }
5563
- function invoke_iiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
5585
+ function invoke_viiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
5564
5586
  var sp = stackSave();
5565
5587
  try {
5566
- return getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
5588
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
5567
5589
  } catch (e) {
5568
5590
  stackRestore(sp);
5569
5591
  if (e !== e + 0) throw e;
@@ -5708,8 +5730,15 @@ __export(index_exports, {
5708
5730
  });
5709
5731
  module.exports = __toCommonJS(index_exports);
5710
5732
  var import_grida_canvas_wasm = __toESM(require_grida_canvas_wasm());
5733
+
5734
+ // package.json
5735
+ var version = "0.0.13";
5736
+
5737
+ // lib/index.ts
5711
5738
  async function init(opts) {
5712
- const bindings = await (0, import_grida_canvas_wasm.default)({ locateFile: opts == null ? void 0 : opts.locateFile });
5739
+ const bindings = await (0, import_grida_canvas_wasm.default)({
5740
+ locateFile: (opts == null ? void 0 : opts.locateFile) ? (file, __scriptDirectory) => opts == null ? void 0 : opts.locateFile(file, version) : void 0
5741
+ });
5713
5742
  return new ApplicationFactory(
5714
5743
  bindings
5715
5744
  );
@@ -5719,7 +5748,7 @@ var ApplicationFactory = class {
5719
5748
  constructor(module2) {
5720
5749
  this.module = module2;
5721
5750
  }
5722
- createWebGLCanvasSurface(canvas) {
5751
+ createWebGLCanvasSurface(canvas, options = { fontFallback: true }) {
5723
5752
  const context = canvas.getContext("webgl2", {
5724
5753
  antialias: true,
5725
5754
  depth: true,
@@ -5733,7 +5762,11 @@ var ApplicationFactory = class {
5733
5762
  majorVersion: 2
5734
5763
  });
5735
5764
  this.module.GL.makeContextCurrent(handle);
5736
- const ptr = this.module._init(canvas.width, canvas.height);
5765
+ const ptr = this.module._init(
5766
+ canvas.width,
5767
+ canvas.height,
5768
+ options.fontFallback
5769
+ );
5737
5770
  const _ = new Grida2D(this.module, ptr);
5738
5771
  _.resize(canvas.width, canvas.height);
5739
5772
  return _;