@takumi-rs/wasm 0.15.1 → 0.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@takumi-rs/wasm",
3
3
  "type": "module",
4
- "version": "0.15.1",
4
+ "version": "0.16.1",
5
5
  "files": [
6
6
  "takumi_wasm_bg.wasm",
7
7
  "takumi_wasm.js",
package/takumi_wasm.d.ts CHANGED
@@ -91,8 +91,8 @@ export interface InitOutput {
91
91
  readonly renderer_loadFont: (a: number, b: number, c: number) => void;
92
92
  readonly renderer_putPersistentImage: (a: number, b: number, c: number, d: number, e: number) => void;
93
93
  readonly renderer_clearImageStore: (a: number) => void;
94
- readonly renderer_render: (a: number, b: any, c: number, d: number, e: number, f: number) => [number, number];
95
- readonly renderer_renderAsDataUrl: (a: number, b: any, c: number, d: number, e: number, f: number) => [number, number];
94
+ readonly renderer_render: (a: number, b: any, c: number, d: number, e: number, f: number) => [number, number, number, number];
95
+ readonly renderer_renderAsDataUrl: (a: number, b: any, c: number, d: number, e: number, f: number) => [number, number, number, number];
96
96
  readonly __wbg_viewport_free: (a: number, b: number) => void;
97
97
  readonly __wbg_get_viewport_width: (a: number) => number;
98
98
  readonly __wbg_set_viewport_width: (a: number, b: number) => void;
@@ -107,6 +107,7 @@ export interface InitOutput {
107
107
  readonly __wbindgen_export_2: WebAssembly.Table;
108
108
  readonly __wbindgen_malloc: (a: number, b: number) => number;
109
109
  readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
110
+ readonly __externref_table_dealloc: (a: number) => void;
110
111
  readonly __wbindgen_free: (a: number, b: number, c: number) => void;
111
112
  readonly __wbindgen_start: () => void;
112
113
  }
package/takumi_wasm.js CHANGED
@@ -174,6 +174,12 @@ function passArray8ToWasm0(arg, malloc) {
174
174
  return ptr;
175
175
  }
176
176
 
177
+ function takeFromExternrefTable0(idx) {
178
+ const value = wasm.__wbindgen_export_2.get(idx);
179
+ wasm.__externref_table_dealloc(idx);
180
+ return value;
181
+ }
182
+
177
183
  function getArrayU8FromWasm0(ptr, len) {
178
184
  ptr = ptr >>> 0;
179
185
  return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);
@@ -277,6 +283,9 @@ export class Renderer {
277
283
  */
278
284
  render(node, width, height, format, quality) {
279
285
  const ret = wasm.renderer_render(this.__wbg_ptr, node, width, height, isLikeNone(format) ? 3 : format, isLikeNone(quality) ? 0xFFFFFF : quality);
286
+ if (ret[3]) {
287
+ throw takeFromExternrefTable0(ret[2]);
288
+ }
280
289
  var v1 = getArrayU8FromWasm0(ret[0], ret[1]).slice();
281
290
  wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
282
291
  return v1;
@@ -290,15 +299,21 @@ export class Renderer {
290
299
  * @returns {string}
291
300
  */
292
301
  renderAsDataUrl(node, width, height, format, quality) {
293
- let deferred1_0;
294
- let deferred1_1;
302
+ let deferred2_0;
303
+ let deferred2_1;
295
304
  try {
296
305
  const ret = wasm.renderer_renderAsDataUrl(this.__wbg_ptr, node, width, height, isLikeNone(format) ? 3 : format, isLikeNone(quality) ? 0xFFFFFF : quality);
297
- deferred1_0 = ret[0];
298
- deferred1_1 = ret[1];
299
- return getStringFromWasm0(ret[0], ret[1]);
306
+ var ptr1 = ret[0];
307
+ var len1 = ret[1];
308
+ if (ret[3]) {
309
+ ptr1 = 0; len1 = 0;
310
+ throw takeFromExternrefTable0(ret[2]);
311
+ }
312
+ deferred2_0 = ptr1;
313
+ deferred2_1 = len1;
314
+ return getStringFromWasm0(ptr1, len1);
300
315
  } finally {
301
- wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
316
+ wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
302
317
  }
303
318
  }
304
319
  }
Binary file