@thi.ng/wasm-api 1.4.12 → 1.4.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.
- package/CHANGELOG.md +8 -1
- package/api.d.ts +2 -1
- package/bridge.d.ts +5 -5
- package/bridge.js +2 -0
- package/package.json +12 -12
- package/zig/build.zig +2 -3
- package/zig/zig-cache/h/122cde1a061c7a71be08724d5a17d136.txt +0 -0
- package/zig/zig-cache/o/18dd5e8144e2b581dc9a7e11eda813ae/builtin.zig +116 -0
- package/zig/zig-cache/o/59500f8e252305058811ab24cdb88d0e/dependencies.zig +4 -0
- package/zig/zig-cache/z/977ad4fa0b4da4c29a11fae0971a1a48 +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Change Log
|
|
2
2
|
|
|
3
|
-
- **Last updated**: 2023-
|
|
3
|
+
- **Last updated**: 2023-08-04T10:58:19Z
|
|
4
4
|
- **Generator**: [thi.ng/monopub](https://thi.ng/monopub)
|
|
5
5
|
|
|
6
6
|
All notable changes to this project will be documented in this file.
|
|
@@ -9,6 +9,13 @@ See [Conventional Commits](https://conventionalcommits.org/) for commit guidelin
|
|
|
9
9
|
**Note:** Unlisted _patch_ versions only involve non-code or otherwise excluded changes
|
|
10
10
|
and/or version bumps of transitive dependencies.
|
|
11
11
|
|
|
12
|
+
### [1.4.13](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@1.4.13) (2023-08-04)
|
|
13
|
+
|
|
14
|
+
#### ♻️ Refactoring
|
|
15
|
+
|
|
16
|
+
- update INotify impl ([07e884f](https://github.com/thi-ng/umbrella/commit/07e884f))
|
|
17
|
+
- update INotify impls ([cbdc527](https://github.com/thi-ng/umbrella/commit/cbdc527))
|
|
18
|
+
|
|
12
19
|
### [1.4.12](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@1.4.12) (2023-07-14)
|
|
13
20
|
|
|
14
21
|
#### ♻️ Refactoring
|
package/api.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import type { Fn, IDeref, ILength } from "@thi.ng/api";
|
|
1
|
+
import type { EVENT_ALL, Fn, IDeref, ILength } from "@thi.ng/api";
|
|
2
2
|
import type { WasmBridge } from "./bridge.js";
|
|
3
3
|
export declare const EVENT_MEMORY_CHANGED = "memory-changed";
|
|
4
4
|
export declare const EVENT_PANIC = "panic";
|
|
5
|
+
export type BridgeEventType = typeof EVENT_MEMORY_CHANGED | typeof EVENT_PANIC | typeof EVENT_ALL;
|
|
5
6
|
export type BigIntArray = bigint[] | BigInt64Array | BigUint64Array;
|
|
6
7
|
export type ReadonlyWasmString = IDeref<string> & ILength & {
|
|
7
8
|
readonly addr: number;
|
package/bridge.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import type { Event, INotify, IObjectOf, Listener, NumericArray } from "@thi.ng/api";
|
|
3
3
|
import type { ILogger } from "@thi.ng/logger";
|
|
4
|
-
import { type BigIntArray, type CoreAPI, type IWasmAPI, type IWasmMemoryAccess, type MemorySlice, type WasmExports } from "./api.js";
|
|
4
|
+
import { type BigIntArray, type BridgeEventType, type CoreAPI, type IWasmAPI, type IWasmMemoryAccess, type MemorySlice, type WasmExports } from "./api.js";
|
|
5
5
|
export declare const Panic: {
|
|
6
6
|
new (msg?: string | undefined): {
|
|
7
7
|
name: string;
|
|
@@ -38,7 +38,7 @@ export declare const OutOfMemoryError: {
|
|
|
38
38
|
* 64bit integers are handled via JS `BigInt` and hence require the host env to
|
|
39
39
|
* support it. No polyfills are provided.
|
|
40
40
|
*/
|
|
41
|
-
export declare class WasmBridge<T extends WasmExports = WasmExports> implements IWasmMemoryAccess, INotify {
|
|
41
|
+
export declare class WasmBridge<T extends WasmExports = WasmExports> implements IWasmMemoryAccess, INotify<BridgeEventType> {
|
|
42
42
|
logger: ILogger;
|
|
43
43
|
readonly id = "wasmapi";
|
|
44
44
|
i8: Int8Array;
|
|
@@ -177,10 +177,10 @@ export declare class WasmBridge<T extends WasmExports = WasmExports> implements
|
|
|
177
177
|
setString(str: string, addr: number, maxBytes: number, terminate?: boolean): number;
|
|
178
178
|
getElementById(addr: number, len?: number): HTMLElement;
|
|
179
179
|
/** {@inheritDoc @thi.ng/api#INotify.addListener} */
|
|
180
|
-
addListener(id:
|
|
180
|
+
addListener(id: BridgeEventType, fn: Listener<BridgeEventType>, scope?: any): boolean;
|
|
181
181
|
/** {@inheritDoc @thi.ng/api#INotify.removeListener} */
|
|
182
|
-
removeListener(id:
|
|
182
|
+
removeListener(id: BridgeEventType, fn: Listener<BridgeEventType>, scope?: any): boolean;
|
|
183
183
|
/** {@inheritDoc @thi.ng/api#INotify.notify} */
|
|
184
|
-
notify(event: Event): boolean;
|
|
184
|
+
notify(event: Event<BridgeEventType>): boolean;
|
|
185
185
|
}
|
|
186
186
|
//# sourceMappingURL=bridge.d.ts.map
|
package/bridge.js
CHANGED
|
@@ -388,9 +388,11 @@ export let WasmBridge = class WasmBridge {
|
|
|
388
388
|
}
|
|
389
389
|
/** {@inheritDoc @thi.ng/api#INotify.addListener} */
|
|
390
390
|
// @ts-ignore: mixin
|
|
391
|
+
// prettier-ignore
|
|
391
392
|
addListener(id, fn, scope) { }
|
|
392
393
|
/** {@inheritDoc @thi.ng/api#INotify.removeListener} */
|
|
393
394
|
// @ts-ignore: mixin
|
|
395
|
+
// prettier-ignore
|
|
394
396
|
removeListener(id, fn, scope) { }
|
|
395
397
|
/** {@inheritDoc @thi.ng/api#INotify.notify} */
|
|
396
398
|
// @ts-ignore: mixin
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@thi.ng/wasm-api",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.13",
|
|
4
4
|
"description": "Generic, modular, extensible API bridge and infrastructure for hybrid JS & WebAssembly projects",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"module": "./index.js",
|
|
@@ -35,21 +35,21 @@
|
|
|
35
35
|
"test:build-zig": "zig build-lib -O ReleaseSmall -target wasm32-freestanding -dynamic --strip --pkg-begin wasmapi zig/lib.zig --pkg-end test/custom.zig && wasm-dis -o custom.wast custom.wasm && cp custom.wasm test"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@thi.ng/api": "^8.
|
|
39
|
-
"@thi.ng/arrays": "^2.5.
|
|
40
|
-
"@thi.ng/checks": "^3.
|
|
41
|
-
"@thi.ng/errors": "^2.
|
|
42
|
-
"@thi.ng/hex": "^2.3.
|
|
43
|
-
"@thi.ng/idgen": "^2.
|
|
44
|
-
"@thi.ng/logger": "^1.4.
|
|
38
|
+
"@thi.ng/api": "^8.9.0",
|
|
39
|
+
"@thi.ng/arrays": "^2.5.15",
|
|
40
|
+
"@thi.ng/checks": "^3.4.0",
|
|
41
|
+
"@thi.ng/errors": "^2.3.0",
|
|
42
|
+
"@thi.ng/hex": "^2.3.12",
|
|
43
|
+
"@thi.ng/idgen": "^2.2.0",
|
|
44
|
+
"@thi.ng/logger": "^1.4.16"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
|
-
"@microsoft/api-extractor": "^7.
|
|
48
|
-
"@thi.ng/testament": "^0.3.
|
|
47
|
+
"@microsoft/api-extractor": "^7.36.3",
|
|
48
|
+
"@thi.ng/testament": "^0.3.18",
|
|
49
49
|
"rimraf": "^5.0.1",
|
|
50
50
|
"tools": "^0.0.1",
|
|
51
51
|
"typedoc": "^0.24.8",
|
|
52
|
-
"typescript": "^5.1.
|
|
52
|
+
"typescript": "^5.1.6"
|
|
53
53
|
},
|
|
54
54
|
"keywords": [
|
|
55
55
|
"allocator",
|
|
@@ -115,5 +115,5 @@
|
|
|
115
115
|
"status": "alpha",
|
|
116
116
|
"year": 2022
|
|
117
117
|
},
|
|
118
|
-
"gitHead": "
|
|
118
|
+
"gitHead": "9fa3f7f8169efa30e3c71b43c82f77393581c3b5\n"
|
|
119
119
|
}
|
package/zig/build.zig
CHANGED
|
@@ -28,8 +28,8 @@ pub const WasmLibOpts = struct {
|
|
|
28
28
|
initialMemory: ?u64 = null,
|
|
29
29
|
/// Max memory (in bytes, MUST be multiple of 0x10000)
|
|
30
30
|
maxMemory: ?u64 = null,
|
|
31
|
-
|
|
32
|
-
docs: bool = false,
|
|
31
|
+
// If true, build will also generate docs
|
|
32
|
+
// docs: bool = false,
|
|
33
33
|
};
|
|
34
34
|
|
|
35
35
|
/// WASM API sub-module declaration
|
|
@@ -67,7 +67,6 @@ pub fn wasmLib(b: *Build, opts: WasmLibOpts) *Build.Step.Compile {
|
|
|
67
67
|
lib.import_symbols = true;
|
|
68
68
|
lib.initial_memory = opts.initialMemory;
|
|
69
69
|
lib.max_memory = opts.maxMemory;
|
|
70
|
-
if (opts.docs) lib.emit_docs = .emit;
|
|
71
70
|
|
|
72
71
|
// add default dependencies
|
|
73
72
|
lib.addModule(
|
|
File without changes
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
const std = @import("std");
|
|
2
|
+
/// Zig version. When writing code that supports multiple versions of Zig, prefer
|
|
3
|
+
/// feature detection (i.e. with `@hasDecl` or `@hasField`) over version checks.
|
|
4
|
+
pub const zig_version = std.SemanticVersion.parse(zig_version_string) catch unreachable;
|
|
5
|
+
pub const zig_version_string = "0.11.0-dev.4282+0f21d3d4d";
|
|
6
|
+
pub const zig_backend = std.builtin.CompilerBackend.stage2_llvm;
|
|
7
|
+
|
|
8
|
+
pub const output_mode = std.builtin.OutputMode.Exe;
|
|
9
|
+
pub const link_mode = std.builtin.LinkMode.Dynamic;
|
|
10
|
+
pub const is_test = false;
|
|
11
|
+
pub const single_threaded = false;
|
|
12
|
+
pub const abi = std.Target.Abi.none;
|
|
13
|
+
pub const cpu: std.Target.Cpu = .{
|
|
14
|
+
.arch = .aarch64,
|
|
15
|
+
.model = &std.Target.aarch64.cpu.apple_a14,
|
|
16
|
+
.features = std.Target.aarch64.featureSet(&[_]std.Target.aarch64.Feature{
|
|
17
|
+
.aes,
|
|
18
|
+
.aggressive_fma,
|
|
19
|
+
.alternate_sextload_cvt_f32_pattern,
|
|
20
|
+
.altnzcv,
|
|
21
|
+
.am,
|
|
22
|
+
.arith_bcc_fusion,
|
|
23
|
+
.arith_cbz_fusion,
|
|
24
|
+
.ccdp,
|
|
25
|
+
.ccidx,
|
|
26
|
+
.ccpp,
|
|
27
|
+
.complxnum,
|
|
28
|
+
.contextidr_el2,
|
|
29
|
+
.crc,
|
|
30
|
+
.crypto,
|
|
31
|
+
.disable_latency_sched_heuristic,
|
|
32
|
+
.dit,
|
|
33
|
+
.dotprod,
|
|
34
|
+
.el2vmsa,
|
|
35
|
+
.el3,
|
|
36
|
+
.flagm,
|
|
37
|
+
.fp16fml,
|
|
38
|
+
.fp_armv8,
|
|
39
|
+
.fptoint,
|
|
40
|
+
.fullfp16,
|
|
41
|
+
.fuse_address,
|
|
42
|
+
.fuse_adrp_add,
|
|
43
|
+
.fuse_aes,
|
|
44
|
+
.fuse_arith_logic,
|
|
45
|
+
.fuse_crypto_eor,
|
|
46
|
+
.fuse_csel,
|
|
47
|
+
.fuse_literals,
|
|
48
|
+
.jsconv,
|
|
49
|
+
.lor,
|
|
50
|
+
.lse,
|
|
51
|
+
.lse2,
|
|
52
|
+
.mpam,
|
|
53
|
+
.neon,
|
|
54
|
+
.nv,
|
|
55
|
+
.pan,
|
|
56
|
+
.pan_rwv,
|
|
57
|
+
.pauth,
|
|
58
|
+
.perfmon,
|
|
59
|
+
.predres,
|
|
60
|
+
.ras,
|
|
61
|
+
.rcpc,
|
|
62
|
+
.rcpc_immo,
|
|
63
|
+
.rdm,
|
|
64
|
+
.sb,
|
|
65
|
+
.sel2,
|
|
66
|
+
.sha2,
|
|
67
|
+
.sha3,
|
|
68
|
+
.specrestrict,
|
|
69
|
+
.ssbs,
|
|
70
|
+
.tlb_rmi,
|
|
71
|
+
.tracev8_4,
|
|
72
|
+
.uaops,
|
|
73
|
+
.v8_1a,
|
|
74
|
+
.v8_2a,
|
|
75
|
+
.v8_3a,
|
|
76
|
+
.v8_4a,
|
|
77
|
+
.v8a,
|
|
78
|
+
.vh,
|
|
79
|
+
.zcm,
|
|
80
|
+
.zcz,
|
|
81
|
+
.zcz_gp,
|
|
82
|
+
}),
|
|
83
|
+
};
|
|
84
|
+
pub const os = std.Target.Os{
|
|
85
|
+
.tag = .macos,
|
|
86
|
+
.version_range = .{ .semver = .{
|
|
87
|
+
.min = .{
|
|
88
|
+
.major = 13,
|
|
89
|
+
.minor = 3,
|
|
90
|
+
.patch = 1,
|
|
91
|
+
},
|
|
92
|
+
.max = .{
|
|
93
|
+
.major = 13,
|
|
94
|
+
.minor = 3,
|
|
95
|
+
.patch = 1,
|
|
96
|
+
},
|
|
97
|
+
}},
|
|
98
|
+
};
|
|
99
|
+
pub const target = std.Target{
|
|
100
|
+
.cpu = cpu,
|
|
101
|
+
.os = os,
|
|
102
|
+
.abi = abi,
|
|
103
|
+
.ofmt = object_format,
|
|
104
|
+
};
|
|
105
|
+
pub const object_format = std.Target.ObjectFormat.macho;
|
|
106
|
+
pub const mode = std.builtin.Mode.Debug;
|
|
107
|
+
pub const link_libc = true;
|
|
108
|
+
pub const link_libcpp = false;
|
|
109
|
+
pub const have_error_return_tracing = true;
|
|
110
|
+
pub const valgrind_support = false;
|
|
111
|
+
pub const sanitize_thread = false;
|
|
112
|
+
pub const position_independent_code = true;
|
|
113
|
+
pub const position_independent_executable = true;
|
|
114
|
+
pub const strip_debug_info = false;
|
|
115
|
+
pub const code_model = std.builtin.CodeModel.default;
|
|
116
|
+
pub const omit_frame_pointer = false;
|
|
Binary file
|