@takumi-rs/wasm 0.63.2 → 0.64.0

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,6 +1,6 @@
1
1
  {
2
2
  "name": "@takumi-rs/wasm",
3
- "version": "0.63.2",
3
+ "version": "0.64.0",
4
4
  "keywords": [
5
5
  "image",
6
6
  "rendering",
@@ -26,7 +26,7 @@ export type RenderOptions = {
26
26
  /**
27
27
  * The resources fetched externally. You should collect the fetch tasks first using `extractResourceUrls` and then pass the resources here.
28
28
  */
29
- fetchedResources?: Map<string, ByteBuf>,
29
+ fetchedResources?: ImageSource[],
30
30
  /**
31
31
  * Whether to draw debug borders.
32
32
  */
@@ -52,6 +52,11 @@ export type FontDetails = {
52
52
  style?: "normal" | "italic" | "oblique",
53
53
  };
54
54
 
55
+ export type ImageSource = {
56
+ src: string,
57
+ data: ByteBuf,
58
+ };
59
+
55
60
  export type Font = FontDetails | ByteBuf;
56
61
 
57
62
 
@@ -72,7 +77,7 @@ export class Renderer {
72
77
  */
73
78
  loadFontWithInfo(font: Font): void;
74
79
  constructor();
75
- putPersistentImage(src: string, data: Uint8Array): void;
80
+ putPersistentImage(data: ImageSource): void;
76
81
  render(node: AnyNode, options?: RenderOptions | null): Uint8Array;
77
82
  renderAnimation(frames: AnimationFrameSource[], options: RenderAnimationOptions): Uint8Array;
78
83
  renderAsDataUrl(node: AnyNode, options: RenderOptions): string;
@@ -101,7 +106,7 @@ export interface InitOutput {
101
106
  readonly renderer_loadFont: (a: number, b: number, c: number) => void;
102
107
  readonly renderer_loadFontWithInfo: (a: number, b: number, c: number) => void;
103
108
  readonly renderer_new: () => number;
104
- readonly renderer_putPersistentImage: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
109
+ readonly renderer_putPersistentImage: (a: number, b: number, c: number) => void;
105
110
  readonly renderer_render: (a: number, b: number, c: number, d: number) => void;
106
111
  readonly renderer_renderAnimation: (a: number, b: number, c: number, d: number, e: number) => void;
107
112
  readonly renderer_renderAsDataUrl: (a: number, b: number, c: number, d: number) => void;
@@ -84,17 +84,12 @@ export class Renderer {
84
84
  return this;
85
85
  }
86
86
  /**
87
- * @param {string} src
88
- * @param {Uint8Array} data
87
+ * @param {ImageSource} data
89
88
  */
90
- putPersistentImage(src, data) {
89
+ putPersistentImage(data) {
91
90
  try {
92
91
  const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
93
- const ptr0 = passStringToWasm0(src, wasm.__wbindgen_export, wasm.__wbindgen_export2);
94
- const len0 = WASM_VECTOR_LEN;
95
- const ptr1 = passArray8ToWasm0(data, wasm.__wbindgen_export);
96
- const len1 = WASM_VECTOR_LEN;
97
- wasm.renderer_putPersistentImage(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);
92
+ wasm.renderer_putPersistentImage(retptr, this.__wbg_ptr, addHeapObject(data));
98
93
  var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
99
94
  var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
100
95
  if (r1) {
@@ -591,13 +586,6 @@ function isLikeNone(x) {
591
586
  return x === undefined || x === null;
592
587
  }
593
588
 
594
- function passArray8ToWasm0(arg, malloc) {
595
- const ptr = malloc(arg.length * 1, 1) >>> 0;
596
- getUint8ArrayMemory0().set(arg, ptr / 1);
597
- WASM_VECTOR_LEN = arg.length;
598
- return ptr;
599
- }
600
-
601
589
  function passArrayJsValueToWasm0(array, malloc) {
602
590
  const ptr = malloc(array.length * 4, 4) >>> 0;
603
591
  const mem = getDataViewMemory0();
Binary file
@@ -9,7 +9,7 @@ export const renderer_clearImageStore: (a: number) => void;
9
9
  export const renderer_loadFont: (a: number, b: number, c: number) => void;
10
10
  export const renderer_loadFontWithInfo: (a: number, b: number, c: number) => void;
11
11
  export const renderer_new: () => number;
12
- export const renderer_putPersistentImage: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
12
+ export const renderer_putPersistentImage: (a: number, b: number, c: number) => void;
13
13
  export const renderer_render: (a: number, b: number, c: number, d: number) => void;
14
14
  export const renderer_renderAnimation: (a: number, b: number, c: number, d: number, e: number) => void;
15
15
  export const renderer_renderAsDataUrl: (a: number, b: number, c: number, d: number) => void;