@minigraf/browser 1.2.0 → 1.2.2
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/README.md +58 -0
- package/minigraf_wasm.d.ts +3 -3
- package/minigraf_wasm.js +11 -14
- package/minigraf_wasm_bg.wasm +0 -0
- package/package.json +2 -1
package/README.md
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# minigraf (WebAssembly)
|
|
2
|
+
|
|
3
|
+
WebAssembly builds of [Minigraf](https://github.com/project-minigraf/minigraf) — zero-config,
|
|
4
|
+
single-file, embedded bi-temporal graph database with Datalog queries.
|
|
5
|
+
|
|
6
|
+
Two packages are published from this repo:
|
|
7
|
+
|
|
8
|
+
| Package | Target | Install |
|
|
9
|
+
|---------|--------|---------|
|
|
10
|
+
| [`@minigraf/browser`](https://www.npmjs.com/package/@minigraf/browser) | Browser (wasm-bindgen) | `npm install @minigraf/browser` |
|
|
11
|
+
| [`@minigraf/wasi`](https://www.npmjs.com/package/@minigraf/wasi) | Node.js / WASI runtimes | `npm install @minigraf/wasi` |
|
|
12
|
+
|
|
13
|
+
## Browser (`@minigraf/browser`)
|
|
14
|
+
|
|
15
|
+
```js
|
|
16
|
+
import init, { MiniGrafDb } from '@minigraf/browser'
|
|
17
|
+
|
|
18
|
+
await init()
|
|
19
|
+
|
|
20
|
+
const db = MiniGrafDb.inMemory()
|
|
21
|
+
db.execute('(transact [[:alice :name "Alice"]])')
|
|
22
|
+
|
|
23
|
+
const result = JSON.parse(db.execute('(query [:find ?n :where [?e :name ?n]])'))
|
|
24
|
+
console.log(result.results[0][0]) // "Alice"
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## WASI (`@minigraf/wasi`)
|
|
28
|
+
|
|
29
|
+
```js
|
|
30
|
+
import { instantiateMinigrafWasiWith } from '@minigraf/wasi'
|
|
31
|
+
import { WASI } from 'node:wasi'
|
|
32
|
+
|
|
33
|
+
const wasi = new WASI({ version: 'preview1' })
|
|
34
|
+
const instance = await instantiateMinigrafWasiWith(wasi)
|
|
35
|
+
// Use the WebAssembly instance exports
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Building from source
|
|
39
|
+
|
|
40
|
+
Requires Rust stable toolchain and `wasm-pack`.
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
# Browser target
|
|
44
|
+
wasm-pack build --target web --features browser
|
|
45
|
+
|
|
46
|
+
# WASI target
|
|
47
|
+
cargo build --target wasm32-wasip1 --release
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Cascade release
|
|
51
|
+
|
|
52
|
+
This repo receives a `core-release` repository_dispatch from the minigraf monorepo
|
|
53
|
+
cascade whenever a new version of the `minigraf` core crate is published. The release
|
|
54
|
+
workflow pins the new version, commits, tags, and publishes both npm packages.
|
|
55
|
+
|
|
56
|
+
## License
|
|
57
|
+
|
|
58
|
+
MIT OR Apache-2.0
|
package/minigraf_wasm.d.ts
CHANGED
|
@@ -74,9 +74,9 @@ export interface InitOutput {
|
|
|
74
74
|
readonly browserdb_importGraph: (a: number, b: any) => any;
|
|
75
75
|
readonly browserdb_open: (a: number, b: number) => any;
|
|
76
76
|
readonly browserdb_openInMemory: () => [number, number, number];
|
|
77
|
-
readonly
|
|
78
|
-
readonly
|
|
79
|
-
readonly
|
|
77
|
+
readonly wasm_bindgen_f555086a82b9a402___convert__closures_____invoke___wasm_bindgen_f555086a82b9a402___JsValue__core_9b3796e30d99ddb7___result__Result_____wasm_bindgen_f555086a82b9a402___JsError___true_: (a: number, b: number, c: any) => [number, number];
|
|
78
|
+
readonly wasm_bindgen_f555086a82b9a402___convert__closures_____invoke___js_sys_963196ae605fade1___Function_fn_wasm_bindgen_f555086a82b9a402___JsValue_____wasm_bindgen_f555086a82b9a402___sys__Undefined___js_sys_963196ae605fade1___Function_fn_wasm_bindgen_f555086a82b9a402___JsValue_____wasm_bindgen_f555086a82b9a402___sys__Undefined_______true_: (a: number, b: number, c: any, d: any) => void;
|
|
79
|
+
readonly wasm_bindgen_f555086a82b9a402___convert__closures_____invoke___web_sys_ea77209a17a338ff___features__gen_Event__Event______true_: (a: number, b: number, c: any) => void;
|
|
80
80
|
readonly __wbindgen_malloc: (a: number, b: number) => number;
|
|
81
81
|
readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
|
|
82
82
|
readonly __wbindgen_exn_store: (a: number) => void;
|
package/minigraf_wasm.js
CHANGED
|
@@ -170,9 +170,6 @@ function __wbg_get_imports() {
|
|
|
170
170
|
const ret = arg0.getAll();
|
|
171
171
|
return ret;
|
|
172
172
|
}, arguments); },
|
|
173
|
-
__wbg_getRandomValues_bf16787eede473f5: function() { return handleError(function (arg0, arg1) {
|
|
174
|
-
globalThis.crypto.getRandomValues(getArrayU8FromWasm0(arg0, arg1));
|
|
175
|
-
}, arguments); },
|
|
176
173
|
__wbg_get_507a50627bffa49b: function(arg0, arg1) {
|
|
177
174
|
const ret = arg0[arg1 >>> 0];
|
|
178
175
|
return ret;
|
|
@@ -240,7 +237,7 @@ function __wbg_get_imports() {
|
|
|
240
237
|
const a = state0.a;
|
|
241
238
|
state0.a = 0;
|
|
242
239
|
try {
|
|
243
|
-
return
|
|
240
|
+
return wasm_bindgen_f555086a82b9a402___convert__closures_____invoke___js_sys_963196ae605fade1___Function_fn_wasm_bindgen_f555086a82b9a402___JsValue_____wasm_bindgen_f555086a82b9a402___sys__Undefined___js_sys_963196ae605fade1___Function_fn_wasm_bindgen_f555086a82b9a402___JsValue_____wasm_bindgen_f555086a82b9a402___sys__Undefined_______true_(a, state0.b, arg0, arg1);
|
|
244
241
|
} finally {
|
|
245
242
|
state0.a = a;
|
|
246
243
|
}
|
|
@@ -262,7 +259,7 @@ function __wbg_get_imports() {
|
|
|
262
259
|
const a = state0.a;
|
|
263
260
|
state0.a = 0;
|
|
264
261
|
try {
|
|
265
|
-
return
|
|
262
|
+
return wasm_bindgen_f555086a82b9a402___convert__closures_____invoke___js_sys_963196ae605fade1___Function_fn_wasm_bindgen_f555086a82b9a402___JsValue_____wasm_bindgen_f555086a82b9a402___sys__Undefined___js_sys_963196ae605fade1___Function_fn_wasm_bindgen_f555086a82b9a402___JsValue_____wasm_bindgen_f555086a82b9a402___sys__Undefined_______true_(a, state0.b, arg0, arg1);
|
|
266
263
|
} finally {
|
|
267
264
|
state0.a = a;
|
|
268
265
|
}
|
|
@@ -360,12 +357,12 @@ function __wbg_get_imports() {
|
|
|
360
357
|
}, arguments); },
|
|
361
358
|
__wbindgen_cast_0000000000000001: function(arg0, arg1) {
|
|
362
359
|
// Cast intrinsic for `Closure(Closure { owned: true, function: Function { arguments: [Externref], shim_idx: 70, ret: Result(Unit), inner_ret: Some(Result(Unit)) }, mutable: true }) -> Externref`.
|
|
363
|
-
const ret = makeMutClosure(arg0, arg1,
|
|
360
|
+
const ret = makeMutClosure(arg0, arg1, wasm_bindgen_f555086a82b9a402___convert__closures_____invoke___wasm_bindgen_f555086a82b9a402___JsValue__core_9b3796e30d99ddb7___result__Result_____wasm_bindgen_f555086a82b9a402___JsError___true_);
|
|
364
361
|
return ret;
|
|
365
362
|
},
|
|
366
363
|
__wbindgen_cast_0000000000000002: function(arg0, arg1) {
|
|
367
|
-
// Cast intrinsic for `Closure(Closure { owned: true, function: Function { arguments: [NamedExternref("Event")], shim_idx:
|
|
368
|
-
const ret = makeMutClosure(arg0, arg1,
|
|
364
|
+
// Cast intrinsic for `Closure(Closure { owned: true, function: Function { arguments: [NamedExternref("Event")], shim_idx: 332, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
|
|
365
|
+
const ret = makeMutClosure(arg0, arg1, wasm_bindgen_f555086a82b9a402___convert__closures_____invoke___web_sys_ea77209a17a338ff___features__gen_Event__Event______true_);
|
|
369
366
|
return ret;
|
|
370
367
|
},
|
|
371
368
|
__wbindgen_cast_0000000000000003: function(arg0) {
|
|
@@ -394,19 +391,19 @@ function __wbg_get_imports() {
|
|
|
394
391
|
};
|
|
395
392
|
}
|
|
396
393
|
|
|
397
|
-
function
|
|
398
|
-
wasm.
|
|
394
|
+
function wasm_bindgen_f555086a82b9a402___convert__closures_____invoke___web_sys_ea77209a17a338ff___features__gen_Event__Event______true_(arg0, arg1, arg2) {
|
|
395
|
+
wasm.wasm_bindgen_f555086a82b9a402___convert__closures_____invoke___web_sys_ea77209a17a338ff___features__gen_Event__Event______true_(arg0, arg1, arg2);
|
|
399
396
|
}
|
|
400
397
|
|
|
401
|
-
function
|
|
402
|
-
const ret = wasm.
|
|
398
|
+
function wasm_bindgen_f555086a82b9a402___convert__closures_____invoke___wasm_bindgen_f555086a82b9a402___JsValue__core_9b3796e30d99ddb7___result__Result_____wasm_bindgen_f555086a82b9a402___JsError___true_(arg0, arg1, arg2) {
|
|
399
|
+
const ret = wasm.wasm_bindgen_f555086a82b9a402___convert__closures_____invoke___wasm_bindgen_f555086a82b9a402___JsValue__core_9b3796e30d99ddb7___result__Result_____wasm_bindgen_f555086a82b9a402___JsError___true_(arg0, arg1, arg2);
|
|
403
400
|
if (ret[1]) {
|
|
404
401
|
throw takeFromExternrefTable0(ret[0]);
|
|
405
402
|
}
|
|
406
403
|
}
|
|
407
404
|
|
|
408
|
-
function
|
|
409
|
-
wasm.
|
|
405
|
+
function wasm_bindgen_f555086a82b9a402___convert__closures_____invoke___js_sys_963196ae605fade1___Function_fn_wasm_bindgen_f555086a82b9a402___JsValue_____wasm_bindgen_f555086a82b9a402___sys__Undefined___js_sys_963196ae605fade1___Function_fn_wasm_bindgen_f555086a82b9a402___JsValue_____wasm_bindgen_f555086a82b9a402___sys__Undefined_______true_(arg0, arg1, arg2, arg3) {
|
|
406
|
+
wasm.wasm_bindgen_f555086a82b9a402___convert__closures_____invoke___js_sys_963196ae605fade1___Function_fn_wasm_bindgen_f555086a82b9a402___JsValue_____wasm_bindgen_f555086a82b9a402___sys__Undefined___js_sys_963196ae605fade1___Function_fn_wasm_bindgen_f555086a82b9a402___JsValue_____wasm_bindgen_f555086a82b9a402___sys__Undefined_______true_(arg0, arg1, arg2, arg3);
|
|
410
407
|
}
|
|
411
408
|
|
|
412
409
|
|
package/minigraf_wasm_bg.wasm
CHANGED
|
Binary file
|
package/package.json
CHANGED
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"name": "@minigraf/browser",
|
|
3
3
|
"type": "module",
|
|
4
4
|
"description": "wasm-pack build shim for Minigraf browser and WASI targets",
|
|
5
|
-
"version": "1.2.
|
|
5
|
+
"version": "1.2.2",
|
|
6
|
+
"license": "MIT OR Apache-2.0",
|
|
6
7
|
"repository": {
|
|
7
8
|
"type": "git",
|
|
8
9
|
"url": "https://github.com/project-minigraf/minigraf-wasm"
|