@gmb/bitmark-parser 3.0.0-alpha.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/LICENSE +7 -0
- package/README.md +92 -0
- package/dist/browser/bitmark-parser.min.js +2 -0
- package/dist/browser/bitmark-parser.min.js.map +1 -0
- package/dist/browser/bitmark_wasm_bg.wasm +0 -0
- package/dist/browser/cjs/bitmark_wasm_bg.wasm +0 -0
- package/dist/browser/cjs/index.cjs +319 -0
- package/dist/browser/cjs/index.cjs.map +1 -0
- package/dist/browser/cjs/index.d.cts +98 -0
- package/dist/browser/esm/bitmark_wasm_bg.wasm +0 -0
- package/dist/browser/esm/index.d.ts +98 -0
- package/dist/browser/esm/index.js +281 -0
- package/dist/browser/esm/index.js.map +1 -0
- package/dist/cli.js +147 -0
- package/dist/cli.js.map +1 -0
- package/dist/index.cjs +88 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +67 -0
- package/dist/index.d.ts +67 -0
- package/dist/index.js +50 -0
- package/dist/index.js.map +1 -0
- package/package.json +92 -0
- package/wasm/bitmark_wasm.d.ts +59 -0
- package/wasm/bitmark_wasm.js +298 -0
- package/wasm/bitmark_wasm_bg.wasm +0 -0
- package/wasm/bitmark_wasm_bg.wasm.d.ts +13 -0
- package/wasm/package.json +20 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
ISC License
|
|
2
|
+
|
|
3
|
+
Copyright © 2023-26 Get More Brain Ltd
|
|
4
|
+
|
|
5
|
+
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
|
|
6
|
+
|
|
7
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# @gmb/bitmark-parser
|
|
2
|
+
|
|
3
|
+
A high-performance parser for [bitmark](https://docs.bitmark.cloud/) text, powered by WebAssembly. Provides both a programmatic API and a CLI for parsing bitmark markup to JSON.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @gmb/bitmark-parser
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Programmatic API (Node.js)
|
|
12
|
+
|
|
13
|
+
```js
|
|
14
|
+
import { parse, lex } from "@gmb/bitmark-parser";
|
|
15
|
+
|
|
16
|
+
// Parse bitmark to JSON
|
|
17
|
+
const json = parse("[.article]\nHello **bold**");
|
|
18
|
+
console.log(json);
|
|
19
|
+
|
|
20
|
+
// Lex bitmark to token dump
|
|
21
|
+
const tokens = lex("[.article]\nHello **bold**");
|
|
22
|
+
console.log(tokens);
|
|
23
|
+
|
|
24
|
+
// Lex with a specific stage
|
|
25
|
+
const bitmarkTokens = lex(input, "lex-bitmark");
|
|
26
|
+
const textTokens = lex(input, "lex-text");
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
### API
|
|
30
|
+
|
|
31
|
+
#### `parse(input: string): string`
|
|
32
|
+
|
|
33
|
+
Parse bitmark text and return the AST as a JSON string.
|
|
34
|
+
|
|
35
|
+
#### `lex(input: string, stage?: string): string`
|
|
36
|
+
|
|
37
|
+
Lex bitmark text and return one token per line.
|
|
38
|
+
|
|
39
|
+
Stages:
|
|
40
|
+
- `"lex"` — Combined two-level lexer (default)
|
|
41
|
+
- `"lex-bitmark"` — Bitmark structural tokens only
|
|
42
|
+
- `"lex-text"` — Text formatting tokens only
|
|
43
|
+
|
|
44
|
+
#### `generate(json: string): string`
|
|
45
|
+
|
|
46
|
+
Generate bitmark text from JSON. **Not yet implemented** — throws an error.
|
|
47
|
+
|
|
48
|
+
## CLI
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
# Parse a bitmark file to JSON (stdout)
|
|
52
|
+
bitmark-parser parse input.bitmark
|
|
53
|
+
|
|
54
|
+
# Parse to a file
|
|
55
|
+
bitmark-parser parse input.bitmark output.json
|
|
56
|
+
|
|
57
|
+
# Lex instead of parse
|
|
58
|
+
bitmark-parser parse --stage=lex input.bitmark
|
|
59
|
+
|
|
60
|
+
# Available stages: all (default), lex, lex-bitmark, lex-text
|
|
61
|
+
bitmark-parser parse --stage=lex-bitmark input.bitmark
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## Browser Usage
|
|
65
|
+
|
|
66
|
+
The package includes pre-built browser bundles with the WASM module.
|
|
67
|
+
|
|
68
|
+
### CDN (jsdelivr / unpkg)
|
|
69
|
+
|
|
70
|
+
```html
|
|
71
|
+
<script type="module">
|
|
72
|
+
import init, { parse } from "https://cdn.jsdelivr.net/npm/@gmb/bitmark-parser@latest/dist/browser/bitmark-parser.min.js";
|
|
73
|
+
|
|
74
|
+
await init();
|
|
75
|
+
|
|
76
|
+
const json = parse("[.article]\nHello **bold**");
|
|
77
|
+
console.log(json);
|
|
78
|
+
</script>
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
### Bundler (webpack / vite)
|
|
82
|
+
|
|
83
|
+
```js
|
|
84
|
+
import init, { parse, lex } from "@gmb/bitmark-parser/browser";
|
|
85
|
+
|
|
86
|
+
await init();
|
|
87
|
+
const json = parse("[.article]\nHello");
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
## License
|
|
91
|
+
|
|
92
|
+
ISC — © 2023–2026 Get More Brain Ltd.
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var t,d=0,m=null;function k(){return (m===null||m.byteLength===0)&&(m=new Uint8Array(t.memory.buffer)),m}var v=typeof TextEncoder<"u"?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}},O=typeof v.encodeInto=="function"?function(e,n){return v.encodeInto(e,n)}:function(e,n){let r=v.encode(e);return n.set(r),{read:e.length,written:r.length}};function f(e,n,r){if(r===void 0){let i=v.encode(e),c=n(i.length,1)>>>0;return k().subarray(c,c+i.length).set(i),d=i.length,c}let o=e.length,s=n(o,1)>>>0,a=k(),_=0;for(;_<o;_++){let i=e.charCodeAt(_);if(i>127)break;a[s+_]=i;}if(_!==o){_!==0&&(e=e.slice(_)),s=r(s,o,o=_+e.length*3,1)>>>0;let i=k().subarray(s+_,s+o),c=O(e,i);_+=c.written,s=r(s,o,_,1)>>>0;}return d=_,s}var w=null;function p(){return (w===null||w.buffer.detached===true||w.buffer.detached===void 0&&w.buffer!==t.memory.buffer)&&(w=new DataView(t.memory.buffer)),w}var I=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:true,fatal:true}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&I.decode();function u(e,n){return e=e>>>0,I.decode(k().subarray(e,e+n))}function D(e,n){let r,o;try{let _=t.__wbindgen_add_to_stack_pointer(-16),i=f(e,t.__wbindgen_export_0,t.__wbindgen_export_1),c=d,b=f(n,t.__wbindgen_export_0,t.__wbindgen_export_1),g=d;t.convert(_,i,c,b,g);var s=p().getInt32(_+0,!0),a=p().getInt32(_+4,!0);return r=s,o=a,u(s,a)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export_2(r,o,1);}}function R(e,n,r){let o,s;try{let i=t.__wbindgen_add_to_stack_pointer(-16),c=f(e,t.__wbindgen_export_0,t.__wbindgen_export_1),b=d,g=f(n,t.__wbindgen_export_0,t.__wbindgen_export_1),l=d,x=f(r,t.__wbindgen_export_0,t.__wbindgen_export_1),y=d;t.breakscape_text(i,c,b,g,l,x,y);var a=p().getInt32(i+0,!0),_=p().getInt32(i+4,!0);return o=a,s=_,u(a,_)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export_2(o,s,1);}}function j(e,n,r,o,s){let a,_;try{let b=t.__wbindgen_add_to_stack_pointer(-16),g=f(e,t.__wbindgen_export_0,t.__wbindgen_export_1),l=d,x=f(n,t.__wbindgen_export_0,t.__wbindgen_export_1),y=d,W=f(r,t.__wbindgen_export_0,t.__wbindgen_export_1),M=d;t.info(b,g,l,x,y,W,M,o,s);var i=p().getInt32(b+0,!0),c=p().getInt32(b+4,!0);return a=i,_=c,u(i,c)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export_2(a,_,1);}}function U(e,n,r){let o,s;try{let i=t.__wbindgen_add_to_stack_pointer(-16),c=f(e,t.__wbindgen_export_0,t.__wbindgen_export_1),b=d,g=f(n,t.__wbindgen_export_0,t.__wbindgen_export_1),l=d,x=f(r,t.__wbindgen_export_0,t.__wbindgen_export_1),y=d;t.unbreakscape_text(i,c,b,g,l,x,y);var a=p().getInt32(i+0,!0),_=p().getInt32(i+4,!0);return o=a,s=_,u(a,_)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export_2(o,s,1);}}function L(e){let n,r;try{let a=t.__wbindgen_add_to_stack_pointer(-16),_=f(e,t.__wbindgen_export_0,t.__wbindgen_export_1),i=d;t.parse(a,_,i);var o=p().getInt32(a+0,!0),s=p().getInt32(a+4,!0);return n=o,r=s,u(o,s)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export_2(n,r,1);}}function V(e,n){let r,o;try{let _=t.__wbindgen_add_to_stack_pointer(-16),i=f(e,t.__wbindgen_export_0,t.__wbindgen_export_1),c=d,b=f(n,t.__wbindgen_export_0,t.__wbindgen_export_1),g=d;t.lex(_,i,c,b,g);var s=p().getInt32(_+0,!0),a=p().getInt32(_+4,!0);return r=s,o=a,u(s,a)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export_2(r,o,1);}}async function C(e,n){if(typeof Response=="function"&&e instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(e,n)}catch(o){if(e.headers.get("Content-Type")!="application/wasm")console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",o);else throw o}let r=await e.arrayBuffer();return await WebAssembly.instantiate(r,n)}else {let r=await WebAssembly.instantiate(e,n);return r instanceof WebAssembly.Instance?{instance:r,module:e}:r}}function A(){let e={};return e.wbg={},e}function h(e,n){return t=e.exports,T.__wbindgen_wasm_module=n,w=null,m=null,t}function F(e){if(t!==void 0)return t;typeof e<"u"&&(Object.getPrototypeOf(e)===Object.prototype?{module:e}=e:console.warn("using deprecated parameters for `initSync()`; pass a single object instead"));let n=A();e instanceof WebAssembly.Module||(e=new WebAssembly.Module(e));let r=new WebAssembly.Instance(e,n);return h(r,e)}async function T(e){if(t!==void 0)return t;typeof e<"u"&&(Object.getPrototypeOf(e)===Object.prototype?{module_or_path:e}=e:console.warn("using deprecated parameters for the initialization function; pass a single object instead")),typeof e>"u"&&(e=new URL("bitmark_wasm_bg.wasm",import.meta.url));let n=A();(typeof e=="string"||typeof Request=="function"&&e instanceof Request||typeof URL=="function"&&e instanceof URL)&&(e=fetch(e));let{instance:r,module:o}=await C(await e,n);return h(r,o)}var q=T;export{R as breakscapeText,D as convert,j as info,q as init,F as initSync,V as lex,L as parse,U as unbreakscapeText};//# sourceMappingURL=bitmark-parser.min.js.map
|
|
2
|
+
//# sourceMappingURL=bitmark-parser.min.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../wasm-web/bitmark_wasm.js"],"names":["wasm","WASM_VECTOR_LEN","cachedUint8ArrayMemory0","getUint8ArrayMemory0","cachedTextEncoder","encodeString","arg","view","buf","passStringToWasm0","malloc","realloc","ptr","len","mem","offset","code","ret","cachedDataViewMemory0","getDataViewMemory0","cachedTextDecoder","getStringFromWasm0","convert","input","options_json","deferred3_0","deferred3_1","retptr","ptr0","len0","ptr1","len1","r0","r1","breakscape_text","format","location","deferred4_0","deferred4_1","ptr2","len2","info","info_type","bit","pretty","indent","unbreakscape_text","parse","deferred2_0","deferred2_1","lex","stage","__wbg_load","module","imports","e","bytes","instance","__wbg_get_imports","__wbg_finalize_init","__wbg_init","initSync","module_or_path","bitmark_wasm_default"],"mappings":"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","file":"bitmark-parser.min.js","sourcesContent":["let wasm;\n\nlet WASM_VECTOR_LEN = 0;\n\nlet cachedUint8ArrayMemory0 = null;\n\nfunction getUint8ArrayMemory0() {\n if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {\n cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);\n }\n return cachedUint8ArrayMemory0;\n}\n\nconst cachedTextEncoder = (typeof TextEncoder !== 'undefined' ? new TextEncoder('utf-8') : { encode: () => { throw Error('TextEncoder not available') } } );\n\nconst encodeString = (typeof cachedTextEncoder.encodeInto === 'function'\n ? function (arg, view) {\n return cachedTextEncoder.encodeInto(arg, view);\n}\n : function (arg, view) {\n const buf = cachedTextEncoder.encode(arg);\n view.set(buf);\n return {\n read: arg.length,\n written: buf.length\n };\n});\n\nfunction passStringToWasm0(arg, malloc, realloc) {\n\n if (realloc === undefined) {\n const buf = cachedTextEncoder.encode(arg);\n const ptr = malloc(buf.length, 1) >>> 0;\n getUint8ArrayMemory0().subarray(ptr, ptr + buf.length).set(buf);\n WASM_VECTOR_LEN = buf.length;\n return ptr;\n }\n\n let len = arg.length;\n let ptr = malloc(len, 1) >>> 0;\n\n const mem = getUint8ArrayMemory0();\n\n let offset = 0;\n\n for (; offset < len; offset++) {\n const code = arg.charCodeAt(offset);\n if (code > 0x7F) break;\n mem[ptr + offset] = code;\n }\n\n if (offset !== len) {\n if (offset !== 0) {\n arg = arg.slice(offset);\n }\n ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;\n const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);\n const ret = encodeString(arg, view);\n\n offset += ret.written;\n ptr = realloc(ptr, len, offset, 1) >>> 0;\n }\n\n WASM_VECTOR_LEN = offset;\n return ptr;\n}\n\nlet cachedDataViewMemory0 = null;\n\nfunction getDataViewMemory0() {\n if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || (cachedDataViewMemory0.buffer.detached === undefined && cachedDataViewMemory0.buffer !== wasm.memory.buffer)) {\n cachedDataViewMemory0 = new DataView(wasm.memory.buffer);\n }\n return cachedDataViewMemory0;\n}\n\nconst cachedTextDecoder = (typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }) : { decode: () => { throw Error('TextDecoder not available') } } );\n\nif (typeof TextDecoder !== 'undefined') { cachedTextDecoder.decode(); };\n\nfunction getStringFromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));\n}\n/**\n * Auto-detect input format and convert between bitmark and JSON.\n *\n * `options_json` is a JSON string with optional fields:\n * - `\"mode\"`: `\"optimized\"` (default) or `\"full\"`\n * - `\"warnings\"`: `true` or `false` (default)\n * - `\"plainText\"`: `true` or `false` (default)\n * - `\"pretty\"`: `true` or `false` (default)\n * - `\"indent\"`: number (default: 2)\n *\n * Returns JSON if input is bitmark, or an error message if input is JSON\n * (generator not yet implemented).\n * @param {string} input\n * @param {string} options_json\n * @returns {string}\n */\nexport function convert(input, options_json) {\n let deferred3_0;\n let deferred3_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(options_json, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len1 = WASM_VECTOR_LEN;\n wasm.convert(retptr, ptr0, len0, ptr1, len1);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred3_0 = r0;\n deferred3_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred3_0, deferred3_1, 1);\n }\n}\n\n/**\n * Breakscape text (escape bitmark special characters).\n *\n * `format`: `\"bitmark++\"` (default) or `\"plainText\"`\n * `location`: `\"body\"` (default) or `\"tag\"`\n * @param {string} input\n * @param {string} format\n * @param {string} location\n * @returns {string}\n */\nexport function breakscape_text(input, format, location) {\n let deferred4_0;\n let deferred4_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(format, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len1 = WASM_VECTOR_LEN;\n const ptr2 = passStringToWasm0(location, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len2 = WASM_VECTOR_LEN;\n wasm.breakscape_text(retptr, ptr0, len0, ptr1, len1, ptr2, len2);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred4_0 = r0;\n deferred4_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred4_0, deferred4_1, 1);\n }\n}\n\n/**\n * Query information about supported bit types.\n *\n * `info_type`: `\"list\"`, `\"bit\"`, `\"all\"`, or `\"deprecated\"`\n * `format`: `\"text\"` or `\"json\"`\n * `bit`: bit name (required when `info_type` is `\"bit\"`)\n * `pretty`: whether to pretty-print JSON output\n * `indent`: indent size for pretty-printing (default: 2)\n * @param {string} info_type\n * @param {string} format\n * @param {string} bit\n * @param {boolean} pretty\n * @param {number} indent\n * @returns {string}\n */\nexport function info(info_type, format, bit, pretty, indent) {\n let deferred4_0;\n let deferred4_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(info_type, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(format, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len1 = WASM_VECTOR_LEN;\n const ptr2 = passStringToWasm0(bit, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len2 = WASM_VECTOR_LEN;\n wasm.info(retptr, ptr0, len0, ptr1, len1, ptr2, len2, pretty, indent);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred4_0 = r0;\n deferred4_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred4_0, deferred4_1, 1);\n }\n}\n\n/**\n * Unbreakscape text (unescape bitmark special characters).\n *\n * `format`: `\"bitmark++\"` (default) or `\"plainText\"`\n * `location`: `\"body\"` (default) or `\"tag\"`\n * @param {string} input\n * @param {string} format\n * @param {string} location\n * @returns {string}\n */\nexport function unbreakscape_text(input, format, location) {\n let deferred4_0;\n let deferred4_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(format, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len1 = WASM_VECTOR_LEN;\n const ptr2 = passStringToWasm0(location, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len2 = WASM_VECTOR_LEN;\n wasm.unbreakscape_text(retptr, ptr0, len0, ptr1, len1, ptr2, len2);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred4_0 = r0;\n deferred4_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred4_0, deferred4_1, 1);\n }\n}\n\n/**\n * Parse bitmark input text and return the reference JSON format.\n *\n * Uses the full pipeline: parse → validate → serialize with optimized mode.\n * @param {string} input\n * @returns {string}\n */\nexport function parse(input) {\n let deferred2_0;\n let deferred2_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len0 = WASM_VECTOR_LEN;\n wasm.parse(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred2_0 = r0;\n deferred2_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred2_0, deferred2_1, 1);\n }\n}\n\n/**\n * Lex bitmark input text, returning one line per token in the same format as\n * the Rust CLI: `{kind:?} {span:?} \"{text}\"`.\n *\n * `stage` selects the lexer pipeline:\n * - `\"lex\"` — combined (default)\n * - `\"lex-bitmark\"` — bitmark-level only\n * - `\"lex-text\"` — text-level only\n * - `\"lex-json\"` — combined, JSON array output\n * - `\"lex-bitmark-json\"` — bitmark-level, JSON array output\n * - `\"lex-text-json\"` — text-level, JSON array output\n * @param {string} input\n * @param {string} stage\n * @returns {string}\n */\nexport function lex(input, stage) {\n let deferred3_0;\n let deferred3_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(stage, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len1 = WASM_VECTOR_LEN;\n wasm.lex(retptr, ptr0, len0, ptr1, len1);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred3_0 = r0;\n deferred3_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred3_0, deferred3_1, 1);\n }\n}\n\nasync function __wbg_load(module, imports) {\n if (typeof Response === 'function' && module instanceof Response) {\n if (typeof WebAssembly.instantiateStreaming === 'function') {\n try {\n return await WebAssembly.instantiateStreaming(module, imports);\n\n } catch (e) {\n if (module.headers.get('Content-Type') != 'application/wasm') {\n console.warn(\"`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\\n\", e);\n\n } else {\n throw e;\n }\n }\n }\n\n const bytes = await module.arrayBuffer();\n return await WebAssembly.instantiate(bytes, imports);\n\n } else {\n const instance = await WebAssembly.instantiate(module, imports);\n\n if (instance instanceof WebAssembly.Instance) {\n return { instance, module };\n\n } else {\n return instance;\n }\n }\n}\n\nfunction __wbg_get_imports() {\n const imports = {};\n imports.wbg = {};\n\n return imports;\n}\n\nfunction __wbg_init_memory(imports, memory) {\n\n}\n\nfunction __wbg_finalize_init(instance, module) {\n wasm = instance.exports;\n __wbg_init.__wbindgen_wasm_module = module;\n cachedDataViewMemory0 = null;\n cachedUint8ArrayMemory0 = null;\n\n\n\n return wasm;\n}\n\nfunction initSync(module) {\n if (wasm !== undefined) return wasm;\n\n\n if (typeof module !== 'undefined') {\n if (Object.getPrototypeOf(module) === Object.prototype) {\n ({module} = module)\n } else {\n console.warn('using deprecated parameters for `initSync()`; pass a single object instead')\n }\n }\n\n const imports = __wbg_get_imports();\n\n __wbg_init_memory(imports);\n\n if (!(module instanceof WebAssembly.Module)) {\n module = new WebAssembly.Module(module);\n }\n\n const instance = new WebAssembly.Instance(module, imports);\n\n return __wbg_finalize_init(instance, module);\n}\n\nasync function __wbg_init(module_or_path) {\n if (wasm !== undefined) return wasm;\n\n\n if (typeof module_or_path !== 'undefined') {\n if (Object.getPrototypeOf(module_or_path) === Object.prototype) {\n ({module_or_path} = module_or_path)\n } else {\n console.warn('using deprecated parameters for the initialization function; pass a single object instead')\n }\n }\n\n if (typeof module_or_path === 'undefined') {\n module_or_path = new URL('bitmark_wasm_bg.wasm', import.meta.url);\n }\n const imports = __wbg_get_imports();\n\n if (typeof module_or_path === 'string' || (typeof Request === 'function' && module_or_path instanceof Request) || (typeof URL === 'function' && module_or_path instanceof URL)) {\n module_or_path = fetch(module_or_path);\n }\n\n __wbg_init_memory(imports);\n\n const { instance, module } = await __wbg_load(await module_or_path, imports);\n\n return __wbg_finalize_init(instance, module);\n}\n\nexport { initSync };\nexport default __wbg_init;\n"]}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,319 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// src/browser/index.ts
|
|
21
|
+
var index_exports = {};
|
|
22
|
+
__export(index_exports, {
|
|
23
|
+
breakscapeText: () => breakscape_text,
|
|
24
|
+
convert: () => convert,
|
|
25
|
+
info: () => info,
|
|
26
|
+
init: () => bitmark_wasm_default,
|
|
27
|
+
initSync: () => initSync,
|
|
28
|
+
lex: () => lex,
|
|
29
|
+
parse: () => parse,
|
|
30
|
+
unbreakscapeText: () => unbreakscape_text
|
|
31
|
+
});
|
|
32
|
+
module.exports = __toCommonJS(index_exports);
|
|
33
|
+
|
|
34
|
+
// ../../node_modules/tsup/assets/cjs_shims.js
|
|
35
|
+
var getImportMetaUrl = () => typeof document === "undefined" ? new URL(`file:${__filename}`).href : document.currentScript && document.currentScript.tagName.toUpperCase() === "SCRIPT" ? document.currentScript.src : new URL("main.js", document.baseURI).href;
|
|
36
|
+
var importMetaUrl = /* @__PURE__ */ getImportMetaUrl();
|
|
37
|
+
|
|
38
|
+
// wasm-web/bitmark_wasm.js
|
|
39
|
+
var wasm;
|
|
40
|
+
var WASM_VECTOR_LEN = 0;
|
|
41
|
+
var cachedUint8ArrayMemory0 = null;
|
|
42
|
+
function getUint8ArrayMemory0() {
|
|
43
|
+
if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {
|
|
44
|
+
cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);
|
|
45
|
+
}
|
|
46
|
+
return cachedUint8ArrayMemory0;
|
|
47
|
+
}
|
|
48
|
+
var cachedTextEncoder = typeof TextEncoder !== "undefined" ? new TextEncoder("utf-8") : { encode: () => {
|
|
49
|
+
throw Error("TextEncoder not available");
|
|
50
|
+
} };
|
|
51
|
+
var encodeString = typeof cachedTextEncoder.encodeInto === "function" ? function(arg, view) {
|
|
52
|
+
return cachedTextEncoder.encodeInto(arg, view);
|
|
53
|
+
} : function(arg, view) {
|
|
54
|
+
const buf = cachedTextEncoder.encode(arg);
|
|
55
|
+
view.set(buf);
|
|
56
|
+
return {
|
|
57
|
+
read: arg.length,
|
|
58
|
+
written: buf.length
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
function passStringToWasm0(arg, malloc, realloc) {
|
|
62
|
+
if (realloc === void 0) {
|
|
63
|
+
const buf = cachedTextEncoder.encode(arg);
|
|
64
|
+
const ptr2 = malloc(buf.length, 1) >>> 0;
|
|
65
|
+
getUint8ArrayMemory0().subarray(ptr2, ptr2 + buf.length).set(buf);
|
|
66
|
+
WASM_VECTOR_LEN = buf.length;
|
|
67
|
+
return ptr2;
|
|
68
|
+
}
|
|
69
|
+
let len = arg.length;
|
|
70
|
+
let ptr = malloc(len, 1) >>> 0;
|
|
71
|
+
const mem = getUint8ArrayMemory0();
|
|
72
|
+
let offset = 0;
|
|
73
|
+
for (; offset < len; offset++) {
|
|
74
|
+
const code = arg.charCodeAt(offset);
|
|
75
|
+
if (code > 127) break;
|
|
76
|
+
mem[ptr + offset] = code;
|
|
77
|
+
}
|
|
78
|
+
if (offset !== len) {
|
|
79
|
+
if (offset !== 0) {
|
|
80
|
+
arg = arg.slice(offset);
|
|
81
|
+
}
|
|
82
|
+
ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;
|
|
83
|
+
const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);
|
|
84
|
+
const ret = encodeString(arg, view);
|
|
85
|
+
offset += ret.written;
|
|
86
|
+
ptr = realloc(ptr, len, offset, 1) >>> 0;
|
|
87
|
+
}
|
|
88
|
+
WASM_VECTOR_LEN = offset;
|
|
89
|
+
return ptr;
|
|
90
|
+
}
|
|
91
|
+
var cachedDataViewMemory0 = null;
|
|
92
|
+
function getDataViewMemory0() {
|
|
93
|
+
if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || cachedDataViewMemory0.buffer.detached === void 0 && cachedDataViewMemory0.buffer !== wasm.memory.buffer) {
|
|
94
|
+
cachedDataViewMemory0 = new DataView(wasm.memory.buffer);
|
|
95
|
+
}
|
|
96
|
+
return cachedDataViewMemory0;
|
|
97
|
+
}
|
|
98
|
+
var cachedTextDecoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf-8", { ignoreBOM: true, fatal: true }) : { decode: () => {
|
|
99
|
+
throw Error("TextDecoder not available");
|
|
100
|
+
} };
|
|
101
|
+
if (typeof TextDecoder !== "undefined") {
|
|
102
|
+
cachedTextDecoder.decode();
|
|
103
|
+
}
|
|
104
|
+
function getStringFromWasm0(ptr, len) {
|
|
105
|
+
ptr = ptr >>> 0;
|
|
106
|
+
return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));
|
|
107
|
+
}
|
|
108
|
+
function convert(input, options_json) {
|
|
109
|
+
let deferred3_0;
|
|
110
|
+
let deferred3_1;
|
|
111
|
+
try {
|
|
112
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
113
|
+
const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
114
|
+
const len0 = WASM_VECTOR_LEN;
|
|
115
|
+
const ptr1 = passStringToWasm0(options_json, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
116
|
+
const len1 = WASM_VECTOR_LEN;
|
|
117
|
+
wasm.convert(retptr, ptr0, len0, ptr1, len1);
|
|
118
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
119
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
120
|
+
deferred3_0 = r0;
|
|
121
|
+
deferred3_1 = r1;
|
|
122
|
+
return getStringFromWasm0(r0, r1);
|
|
123
|
+
} finally {
|
|
124
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
125
|
+
wasm.__wbindgen_export_2(deferred3_0, deferred3_1, 1);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
function breakscape_text(input, format, location) {
|
|
129
|
+
let deferred4_0;
|
|
130
|
+
let deferred4_1;
|
|
131
|
+
try {
|
|
132
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
133
|
+
const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
134
|
+
const len0 = WASM_VECTOR_LEN;
|
|
135
|
+
const ptr1 = passStringToWasm0(format, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
136
|
+
const len1 = WASM_VECTOR_LEN;
|
|
137
|
+
const ptr2 = passStringToWasm0(location, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
138
|
+
const len2 = WASM_VECTOR_LEN;
|
|
139
|
+
wasm.breakscape_text(retptr, ptr0, len0, ptr1, len1, ptr2, len2);
|
|
140
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
141
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
142
|
+
deferred4_0 = r0;
|
|
143
|
+
deferred4_1 = r1;
|
|
144
|
+
return getStringFromWasm0(r0, r1);
|
|
145
|
+
} finally {
|
|
146
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
147
|
+
wasm.__wbindgen_export_2(deferred4_0, deferred4_1, 1);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
function info(info_type, format, bit, pretty, indent) {
|
|
151
|
+
let deferred4_0;
|
|
152
|
+
let deferred4_1;
|
|
153
|
+
try {
|
|
154
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
155
|
+
const ptr0 = passStringToWasm0(info_type, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
156
|
+
const len0 = WASM_VECTOR_LEN;
|
|
157
|
+
const ptr1 = passStringToWasm0(format, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
158
|
+
const len1 = WASM_VECTOR_LEN;
|
|
159
|
+
const ptr2 = passStringToWasm0(bit, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
160
|
+
const len2 = WASM_VECTOR_LEN;
|
|
161
|
+
wasm.info(retptr, ptr0, len0, ptr1, len1, ptr2, len2, pretty, indent);
|
|
162
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
163
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
164
|
+
deferred4_0 = r0;
|
|
165
|
+
deferred4_1 = r1;
|
|
166
|
+
return getStringFromWasm0(r0, r1);
|
|
167
|
+
} finally {
|
|
168
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
169
|
+
wasm.__wbindgen_export_2(deferred4_0, deferred4_1, 1);
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
function unbreakscape_text(input, format, location) {
|
|
173
|
+
let deferred4_0;
|
|
174
|
+
let deferred4_1;
|
|
175
|
+
try {
|
|
176
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
177
|
+
const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
178
|
+
const len0 = WASM_VECTOR_LEN;
|
|
179
|
+
const ptr1 = passStringToWasm0(format, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
180
|
+
const len1 = WASM_VECTOR_LEN;
|
|
181
|
+
const ptr2 = passStringToWasm0(location, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
182
|
+
const len2 = WASM_VECTOR_LEN;
|
|
183
|
+
wasm.unbreakscape_text(retptr, ptr0, len0, ptr1, len1, ptr2, len2);
|
|
184
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
185
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
186
|
+
deferred4_0 = r0;
|
|
187
|
+
deferred4_1 = r1;
|
|
188
|
+
return getStringFromWasm0(r0, r1);
|
|
189
|
+
} finally {
|
|
190
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
191
|
+
wasm.__wbindgen_export_2(deferred4_0, deferred4_1, 1);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
function parse(input) {
|
|
195
|
+
let deferred2_0;
|
|
196
|
+
let deferred2_1;
|
|
197
|
+
try {
|
|
198
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
199
|
+
const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
200
|
+
const len0 = WASM_VECTOR_LEN;
|
|
201
|
+
wasm.parse(retptr, ptr0, len0);
|
|
202
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
203
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
204
|
+
deferred2_0 = r0;
|
|
205
|
+
deferred2_1 = r1;
|
|
206
|
+
return getStringFromWasm0(r0, r1);
|
|
207
|
+
} finally {
|
|
208
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
209
|
+
wasm.__wbindgen_export_2(deferred2_0, deferred2_1, 1);
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
function lex(input, stage) {
|
|
213
|
+
let deferred3_0;
|
|
214
|
+
let deferred3_1;
|
|
215
|
+
try {
|
|
216
|
+
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
217
|
+
const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
218
|
+
const len0 = WASM_VECTOR_LEN;
|
|
219
|
+
const ptr1 = passStringToWasm0(stage, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
220
|
+
const len1 = WASM_VECTOR_LEN;
|
|
221
|
+
wasm.lex(retptr, ptr0, len0, ptr1, len1);
|
|
222
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
223
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
224
|
+
deferred3_0 = r0;
|
|
225
|
+
deferred3_1 = r1;
|
|
226
|
+
return getStringFromWasm0(r0, r1);
|
|
227
|
+
} finally {
|
|
228
|
+
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
229
|
+
wasm.__wbindgen_export_2(deferred3_0, deferred3_1, 1);
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
async function __wbg_load(module2, imports) {
|
|
233
|
+
if (typeof Response === "function" && module2 instanceof Response) {
|
|
234
|
+
if (typeof WebAssembly.instantiateStreaming === "function") {
|
|
235
|
+
try {
|
|
236
|
+
return await WebAssembly.instantiateStreaming(module2, imports);
|
|
237
|
+
} catch (e) {
|
|
238
|
+
if (module2.headers.get("Content-Type") != "application/wasm") {
|
|
239
|
+
console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n", e);
|
|
240
|
+
} else {
|
|
241
|
+
throw e;
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
const bytes = await module2.arrayBuffer();
|
|
246
|
+
return await WebAssembly.instantiate(bytes, imports);
|
|
247
|
+
} else {
|
|
248
|
+
const instance = await WebAssembly.instantiate(module2, imports);
|
|
249
|
+
if (instance instanceof WebAssembly.Instance) {
|
|
250
|
+
return { instance, module: module2 };
|
|
251
|
+
} else {
|
|
252
|
+
return instance;
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
function __wbg_get_imports() {
|
|
257
|
+
const imports = {};
|
|
258
|
+
imports.wbg = {};
|
|
259
|
+
return imports;
|
|
260
|
+
}
|
|
261
|
+
function __wbg_init_memory(imports, memory) {
|
|
262
|
+
}
|
|
263
|
+
function __wbg_finalize_init(instance, module2) {
|
|
264
|
+
wasm = instance.exports;
|
|
265
|
+
__wbg_init.__wbindgen_wasm_module = module2;
|
|
266
|
+
cachedDataViewMemory0 = null;
|
|
267
|
+
cachedUint8ArrayMemory0 = null;
|
|
268
|
+
return wasm;
|
|
269
|
+
}
|
|
270
|
+
function initSync(module2) {
|
|
271
|
+
if (wasm !== void 0) return wasm;
|
|
272
|
+
if (typeof module2 !== "undefined") {
|
|
273
|
+
if (Object.getPrototypeOf(module2) === Object.prototype) {
|
|
274
|
+
({ module: module2 } = module2);
|
|
275
|
+
} else {
|
|
276
|
+
console.warn("using deprecated parameters for `initSync()`; pass a single object instead");
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
const imports = __wbg_get_imports();
|
|
280
|
+
__wbg_init_memory(imports);
|
|
281
|
+
if (!(module2 instanceof WebAssembly.Module)) {
|
|
282
|
+
module2 = new WebAssembly.Module(module2);
|
|
283
|
+
}
|
|
284
|
+
const instance = new WebAssembly.Instance(module2, imports);
|
|
285
|
+
return __wbg_finalize_init(instance, module2);
|
|
286
|
+
}
|
|
287
|
+
async function __wbg_init(module_or_path) {
|
|
288
|
+
if (wasm !== void 0) return wasm;
|
|
289
|
+
if (typeof module_or_path !== "undefined") {
|
|
290
|
+
if (Object.getPrototypeOf(module_or_path) === Object.prototype) {
|
|
291
|
+
({ module_or_path } = module_or_path);
|
|
292
|
+
} else {
|
|
293
|
+
console.warn("using deprecated parameters for the initialization function; pass a single object instead");
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
if (typeof module_or_path === "undefined") {
|
|
297
|
+
module_or_path = new URL("bitmark_wasm_bg.wasm", importMetaUrl);
|
|
298
|
+
}
|
|
299
|
+
const imports = __wbg_get_imports();
|
|
300
|
+
if (typeof module_or_path === "string" || typeof Request === "function" && module_or_path instanceof Request || typeof URL === "function" && module_or_path instanceof URL) {
|
|
301
|
+
module_or_path = fetch(module_or_path);
|
|
302
|
+
}
|
|
303
|
+
__wbg_init_memory(imports);
|
|
304
|
+
const { instance, module: module2 } = await __wbg_load(await module_or_path, imports);
|
|
305
|
+
return __wbg_finalize_init(instance, module2);
|
|
306
|
+
}
|
|
307
|
+
var bitmark_wasm_default = __wbg_init;
|
|
308
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
309
|
+
0 && (module.exports = {
|
|
310
|
+
breakscapeText,
|
|
311
|
+
convert,
|
|
312
|
+
info,
|
|
313
|
+
init,
|
|
314
|
+
initSync,
|
|
315
|
+
lex,
|
|
316
|
+
parse,
|
|
317
|
+
unbreakscapeText
|
|
318
|
+
});
|
|
319
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/browser/index.ts","../../../../../node_modules/tsup/assets/cjs_shims.js","../../../wasm-web/bitmark_wasm.js"],"sourcesContent":["// This is a browser entry point that wraps the wasm-web bindings.\n// It re-exports all WASM functions so browser consumers can use:\n// import { parse, convert, ... } from '@gmb/bitmark-parser/browser'\n\nexport { convert, breakscape_text as breakscapeText, unbreakscape_text as unbreakscapeText, parse, lex, info } from \"../../wasm-web/bitmark_wasm.js\";\n\nexport { default as init, initSync } from \"../../wasm-web/bitmark_wasm.js\";\n","// Shim globals in cjs bundle\n// There's a weird bug that esbuild will always inject importMetaUrl\n// if we export it as `const importMetaUrl = ... __filename ...`\n// But using a function will not cause this issue\n\nconst getImportMetaUrl = () => \n typeof document === \"undefined\" \n ? new URL(`file:${__filename}`).href \n : (document.currentScript && document.currentScript.tagName.toUpperCase() === 'SCRIPT') \n ? document.currentScript.src \n : new URL(\"main.js\", document.baseURI).href;\n\nexport const importMetaUrl = /* @__PURE__ */ getImportMetaUrl()\n","let wasm;\n\nlet WASM_VECTOR_LEN = 0;\n\nlet cachedUint8ArrayMemory0 = null;\n\nfunction getUint8ArrayMemory0() {\n if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {\n cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);\n }\n return cachedUint8ArrayMemory0;\n}\n\nconst cachedTextEncoder = (typeof TextEncoder !== 'undefined' ? new TextEncoder('utf-8') : { encode: () => { throw Error('TextEncoder not available') } } );\n\nconst encodeString = (typeof cachedTextEncoder.encodeInto === 'function'\n ? function (arg, view) {\n return cachedTextEncoder.encodeInto(arg, view);\n}\n : function (arg, view) {\n const buf = cachedTextEncoder.encode(arg);\n view.set(buf);\n return {\n read: arg.length,\n written: buf.length\n };\n});\n\nfunction passStringToWasm0(arg, malloc, realloc) {\n\n if (realloc === undefined) {\n const buf = cachedTextEncoder.encode(arg);\n const ptr = malloc(buf.length, 1) >>> 0;\n getUint8ArrayMemory0().subarray(ptr, ptr + buf.length).set(buf);\n WASM_VECTOR_LEN = buf.length;\n return ptr;\n }\n\n let len = arg.length;\n let ptr = malloc(len, 1) >>> 0;\n\n const mem = getUint8ArrayMemory0();\n\n let offset = 0;\n\n for (; offset < len; offset++) {\n const code = arg.charCodeAt(offset);\n if (code > 0x7F) break;\n mem[ptr + offset] = code;\n }\n\n if (offset !== len) {\n if (offset !== 0) {\n arg = arg.slice(offset);\n }\n ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;\n const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);\n const ret = encodeString(arg, view);\n\n offset += ret.written;\n ptr = realloc(ptr, len, offset, 1) >>> 0;\n }\n\n WASM_VECTOR_LEN = offset;\n return ptr;\n}\n\nlet cachedDataViewMemory0 = null;\n\nfunction getDataViewMemory0() {\n if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || (cachedDataViewMemory0.buffer.detached === undefined && cachedDataViewMemory0.buffer !== wasm.memory.buffer)) {\n cachedDataViewMemory0 = new DataView(wasm.memory.buffer);\n }\n return cachedDataViewMemory0;\n}\n\nconst cachedTextDecoder = (typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }) : { decode: () => { throw Error('TextDecoder not available') } } );\n\nif (typeof TextDecoder !== 'undefined') { cachedTextDecoder.decode(); };\n\nfunction getStringFromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));\n}\n/**\n * Auto-detect input format and convert between bitmark and JSON.\n *\n * `options_json` is a JSON string with optional fields:\n * - `\"mode\"`: `\"optimized\"` (default) or `\"full\"`\n * - `\"warnings\"`: `true` or `false` (default)\n * - `\"plainText\"`: `true` or `false` (default)\n * - `\"pretty\"`: `true` or `false` (default)\n * - `\"indent\"`: number (default: 2)\n *\n * Returns JSON if input is bitmark, or an error message if input is JSON\n * (generator not yet implemented).\n * @param {string} input\n * @param {string} options_json\n * @returns {string}\n */\nexport function convert(input, options_json) {\n let deferred3_0;\n let deferred3_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(options_json, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len1 = WASM_VECTOR_LEN;\n wasm.convert(retptr, ptr0, len0, ptr1, len1);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred3_0 = r0;\n deferred3_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred3_0, deferred3_1, 1);\n }\n}\n\n/**\n * Breakscape text (escape bitmark special characters).\n *\n * `format`: `\"bitmark++\"` (default) or `\"plainText\"`\n * `location`: `\"body\"` (default) or `\"tag\"`\n * @param {string} input\n * @param {string} format\n * @param {string} location\n * @returns {string}\n */\nexport function breakscape_text(input, format, location) {\n let deferred4_0;\n let deferred4_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(format, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len1 = WASM_VECTOR_LEN;\n const ptr2 = passStringToWasm0(location, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len2 = WASM_VECTOR_LEN;\n wasm.breakscape_text(retptr, ptr0, len0, ptr1, len1, ptr2, len2);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred4_0 = r0;\n deferred4_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred4_0, deferred4_1, 1);\n }\n}\n\n/**\n * Query information about supported bit types.\n *\n * `info_type`: `\"list\"`, `\"bit\"`, `\"all\"`, or `\"deprecated\"`\n * `format`: `\"text\"` or `\"json\"`\n * `bit`: bit name (required when `info_type` is `\"bit\"`)\n * `pretty`: whether to pretty-print JSON output\n * `indent`: indent size for pretty-printing (default: 2)\n * @param {string} info_type\n * @param {string} format\n * @param {string} bit\n * @param {boolean} pretty\n * @param {number} indent\n * @returns {string}\n */\nexport function info(info_type, format, bit, pretty, indent) {\n let deferred4_0;\n let deferred4_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(info_type, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(format, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len1 = WASM_VECTOR_LEN;\n const ptr2 = passStringToWasm0(bit, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len2 = WASM_VECTOR_LEN;\n wasm.info(retptr, ptr0, len0, ptr1, len1, ptr2, len2, pretty, indent);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred4_0 = r0;\n deferred4_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred4_0, deferred4_1, 1);\n }\n}\n\n/**\n * Unbreakscape text (unescape bitmark special characters).\n *\n * `format`: `\"bitmark++\"` (default) or `\"plainText\"`\n * `location`: `\"body\"` (default) or `\"tag\"`\n * @param {string} input\n * @param {string} format\n * @param {string} location\n * @returns {string}\n */\nexport function unbreakscape_text(input, format, location) {\n let deferred4_0;\n let deferred4_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(format, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len1 = WASM_VECTOR_LEN;\n const ptr2 = passStringToWasm0(location, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len2 = WASM_VECTOR_LEN;\n wasm.unbreakscape_text(retptr, ptr0, len0, ptr1, len1, ptr2, len2);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred4_0 = r0;\n deferred4_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred4_0, deferred4_1, 1);\n }\n}\n\n/**\n * Parse bitmark input text and return the reference JSON format.\n *\n * Uses the full pipeline: parse → validate → serialize with optimized mode.\n * @param {string} input\n * @returns {string}\n */\nexport function parse(input) {\n let deferred2_0;\n let deferred2_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len0 = WASM_VECTOR_LEN;\n wasm.parse(retptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred2_0 = r0;\n deferred2_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred2_0, deferred2_1, 1);\n }\n}\n\n/**\n * Lex bitmark input text, returning one line per token in the same format as\n * the Rust CLI: `{kind:?} {span:?} \"{text}\"`.\n *\n * `stage` selects the lexer pipeline:\n * - `\"lex\"` — combined (default)\n * - `\"lex-bitmark\"` — bitmark-level only\n * - `\"lex-text\"` — text-level only\n * - `\"lex-json\"` — combined, JSON array output\n * - `\"lex-bitmark-json\"` — bitmark-level, JSON array output\n * - `\"lex-text-json\"` — text-level, JSON array output\n * @param {string} input\n * @param {string} stage\n * @returns {string}\n */\nexport function lex(input, stage) {\n let deferred3_0;\n let deferred3_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(stage, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len1 = WASM_VECTOR_LEN;\n wasm.lex(retptr, ptr0, len0, ptr1, len1);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred3_0 = r0;\n deferred3_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export_2(deferred3_0, deferred3_1, 1);\n }\n}\n\nasync function __wbg_load(module, imports) {\n if (typeof Response === 'function' && module instanceof Response) {\n if (typeof WebAssembly.instantiateStreaming === 'function') {\n try {\n return await WebAssembly.instantiateStreaming(module, imports);\n\n } catch (e) {\n if (module.headers.get('Content-Type') != 'application/wasm') {\n console.warn(\"`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\\n\", e);\n\n } else {\n throw e;\n }\n }\n }\n\n const bytes = await module.arrayBuffer();\n return await WebAssembly.instantiate(bytes, imports);\n\n } else {\n const instance = await WebAssembly.instantiate(module, imports);\n\n if (instance instanceof WebAssembly.Instance) {\n return { instance, module };\n\n } else {\n return instance;\n }\n }\n}\n\nfunction __wbg_get_imports() {\n const imports = {};\n imports.wbg = {};\n\n return imports;\n}\n\nfunction __wbg_init_memory(imports, memory) {\n\n}\n\nfunction __wbg_finalize_init(instance, module) {\n wasm = instance.exports;\n __wbg_init.__wbindgen_wasm_module = module;\n cachedDataViewMemory0 = null;\n cachedUint8ArrayMemory0 = null;\n\n\n\n return wasm;\n}\n\nfunction initSync(module) {\n if (wasm !== undefined) return wasm;\n\n\n if (typeof module !== 'undefined') {\n if (Object.getPrototypeOf(module) === Object.prototype) {\n ({module} = module)\n } else {\n console.warn('using deprecated parameters for `initSync()`; pass a single object instead')\n }\n }\n\n const imports = __wbg_get_imports();\n\n __wbg_init_memory(imports);\n\n if (!(module instanceof WebAssembly.Module)) {\n module = new WebAssembly.Module(module);\n }\n\n const instance = new WebAssembly.Instance(module, imports);\n\n return __wbg_finalize_init(instance, module);\n}\n\nasync function __wbg_init(module_or_path) {\n if (wasm !== undefined) return wasm;\n\n\n if (typeof module_or_path !== 'undefined') {\n if (Object.getPrototypeOf(module_or_path) === Object.prototype) {\n ({module_or_path} = module_or_path)\n } else {\n console.warn('using deprecated parameters for the initialization function; pass a single object instead')\n }\n }\n\n if (typeof module_or_path === 'undefined') {\n module_or_path = new URL('bitmark_wasm_bg.wasm', import.meta.url);\n }\n const imports = __wbg_get_imports();\n\n if (typeof module_or_path === 'string' || (typeof Request === 'function' && module_or_path instanceof Request) || (typeof URL === 'function' && module_or_path instanceof URL)) {\n module_or_path = fetch(module_or_path);\n }\n\n __wbg_init_memory(imports);\n\n const { instance, module } = await __wbg_load(await module_or_path, imports);\n\n return __wbg_finalize_init(instance, module);\n}\n\nexport { initSync };\nexport default __wbg_init;\n"],"mappings":"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","names":["ptr","module"]}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* Auto-detect input format and convert between bitmark and JSON.
|
|
5
|
+
*
|
|
6
|
+
* `options_json` is a JSON string with optional fields:
|
|
7
|
+
* - `"mode"`: `"optimized"` (default) or `"full"`
|
|
8
|
+
* - `"warnings"`: `true` or `false` (default)
|
|
9
|
+
* - `"plainText"`: `true` or `false` (default)
|
|
10
|
+
* - `"pretty"`: `true` or `false` (default)
|
|
11
|
+
* - `"indent"`: number (default: 2)
|
|
12
|
+
*
|
|
13
|
+
* Returns JSON if input is bitmark, or an error message if input is JSON
|
|
14
|
+
* (generator not yet implemented).
|
|
15
|
+
*/
|
|
16
|
+
declare function convert(input: string, options_json: string): string;
|
|
17
|
+
/**
|
|
18
|
+
* Breakscape text (escape bitmark special characters).
|
|
19
|
+
*
|
|
20
|
+
* `format`: `"bitmark++"` (default) or `"plainText"`
|
|
21
|
+
* `location`: `"body"` (default) or `"tag"`
|
|
22
|
+
*/
|
|
23
|
+
declare function breakscape_text(input: string, format: string, location: string): string;
|
|
24
|
+
/**
|
|
25
|
+
* Query information about supported bit types.
|
|
26
|
+
*
|
|
27
|
+
* `info_type`: `"list"`, `"bit"`, `"all"`, or `"deprecated"`
|
|
28
|
+
* `format`: `"text"` or `"json"`
|
|
29
|
+
* `bit`: bit name (required when `info_type` is `"bit"`)
|
|
30
|
+
* `pretty`: whether to pretty-print JSON output
|
|
31
|
+
* `indent`: indent size for pretty-printing (default: 2)
|
|
32
|
+
*/
|
|
33
|
+
declare function info(info_type: string, format: string, bit: string, pretty: boolean, indent: number): string;
|
|
34
|
+
/**
|
|
35
|
+
* Unbreakscape text (unescape bitmark special characters).
|
|
36
|
+
*
|
|
37
|
+
* `format`: `"bitmark++"` (default) or `"plainText"`
|
|
38
|
+
* `location`: `"body"` (default) or `"tag"`
|
|
39
|
+
*/
|
|
40
|
+
declare function unbreakscape_text(input: string, format: string, location: string): string;
|
|
41
|
+
/**
|
|
42
|
+
* Parse bitmark input text and return the reference JSON format.
|
|
43
|
+
*
|
|
44
|
+
* Uses the full pipeline: parse → validate → serialize with optimized mode.
|
|
45
|
+
*/
|
|
46
|
+
declare function parse(input: string): string;
|
|
47
|
+
/**
|
|
48
|
+
* Lex bitmark input text, returning one line per token in the same format as
|
|
49
|
+
* the Rust CLI: `{kind:?} {span:?} "{text}"`.
|
|
50
|
+
*
|
|
51
|
+
* `stage` selects the lexer pipeline:
|
|
52
|
+
* - `"lex"` — combined (default)
|
|
53
|
+
* - `"lex-bitmark"` — bitmark-level only
|
|
54
|
+
* - `"lex-text"` — text-level only
|
|
55
|
+
* - `"lex-json"` — combined, JSON array output
|
|
56
|
+
* - `"lex-bitmark-json"` — bitmark-level, JSON array output
|
|
57
|
+
* - `"lex-text-json"` — text-level, JSON array output
|
|
58
|
+
*/
|
|
59
|
+
declare function lex(input: string, stage: string): string;
|
|
60
|
+
|
|
61
|
+
type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
|
|
62
|
+
|
|
63
|
+
interface InitOutput {
|
|
64
|
+
readonly memory: WebAssembly.Memory;
|
|
65
|
+
readonly breakscape_text: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => void;
|
|
66
|
+
readonly convert: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
67
|
+
readonly info: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => void;
|
|
68
|
+
readonly lex: (a: number, b: number, c: number, d: number, e: number) => void;
|
|
69
|
+
readonly parse: (a: number, b: number, c: number) => void;
|
|
70
|
+
readonly unbreakscape_text: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => void;
|
|
71
|
+
readonly __wbindgen_add_to_stack_pointer: (a: number) => number;
|
|
72
|
+
readonly __wbindgen_export_0: (a: number, b: number) => number;
|
|
73
|
+
readonly __wbindgen_export_1: (a: number, b: number, c: number, d: number) => number;
|
|
74
|
+
readonly __wbindgen_export_2: (a: number, b: number, c: number) => void;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
type SyncInitInput = BufferSource | WebAssembly.Module;
|
|
78
|
+
/**
|
|
79
|
+
* Instantiates the given `module`, which can either be bytes or
|
|
80
|
+
* a precompiled `WebAssembly.Module`.
|
|
81
|
+
*
|
|
82
|
+
* @param {{ module: SyncInitInput }} module - Passing `SyncInitInput` directly is deprecated.
|
|
83
|
+
*
|
|
84
|
+
* @returns {InitOutput}
|
|
85
|
+
*/
|
|
86
|
+
declare function initSync(module: { module: SyncInitInput } | SyncInitInput): InitOutput;
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* If `module_or_path` is {RequestInfo} or {URL}, makes a request and
|
|
90
|
+
* for everything else, calls `WebAssembly.instantiate` directly.
|
|
91
|
+
*
|
|
92
|
+
* @param {{ module_or_path: InitInput | Promise<InitInput> }} module_or_path - Passing `InitInput` directly is deprecated.
|
|
93
|
+
*
|
|
94
|
+
* @returns {Promise<InitOutput>}
|
|
95
|
+
*/
|
|
96
|
+
declare function __wbg_init (module_or_path?: { module_or_path: InitInput | Promise<InitInput> } | InitInput | Promise<InitInput>): Promise<InitOutput>;
|
|
97
|
+
|
|
98
|
+
export { breakscape_text as breakscapeText, convert, info, __wbg_init as init, initSync, lex, parse, unbreakscape_text as unbreakscapeText };
|
|
Binary file
|