@gmb/bitmark-parser 3.0.1-alpha.5 → 3.0.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 +23 -21
- package/dist/browser/bitmark-parser.min.js +1 -1
- package/dist/browser/bitmark-parser.min.js.map +1 -1
- 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 +31 -31
- package/dist/browser/cjs/index.cjs.map +1 -1
- package/dist/browser/cjs/index.d.cts +9 -10
- package/dist/browser/esm/bitmark_wasm_bg.wasm +0 -0
- package/dist/browser/esm/index.d.ts +9 -10
- package/dist/browser/esm/index.js +31 -31
- package/dist/browser/esm/index.js.map +1 -1
- package/dist/cli.js +6 -3
- package/dist/cli.js.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +9 -10
- package/dist/index.d.ts +9 -10
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/wasm/bitmark_wasm.d.ts +20 -24
- package/wasm/bitmark_wasm.js +58 -62
- package/wasm/bitmark_wasm_bg.wasm +0 -0
- package/wasm/package.json +1 -1
package/README.md
CHANGED
|
@@ -14,29 +14,27 @@ npm install @gmb/bitmark-parser
|
|
|
14
14
|
import { convert, parse, lex, breakscapeText, unbreakscapeText, info, version } from "@gmb/bitmark-parser";
|
|
15
15
|
|
|
16
16
|
// Convert bitmark to JSON (auto-detects input format)
|
|
17
|
-
const json = convert("[.article]\nHello **bold**");
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
console.log(bitmark);
|
|
17
|
+
const json = convert("[.article]\nHello **bold**", { warnings: true });
|
|
18
|
+
const parsedJson = JSON.parse(json);
|
|
19
|
+
console.log(parsedJson[0].bit.type);
|
|
20
|
+
console.log(parsedJson[0].parser.warnings);
|
|
21
|
+
console.log(parsedJson[0].bitmark);
|
|
23
22
|
|
|
24
23
|
// Parse bitmark to JSON (same as convert for bitmark input)
|
|
25
|
-
const parsed = parse("[.article]\nHello **bold**");
|
|
24
|
+
const parsed = parse("[.article]\nHello **bold**", { mode: "full" });
|
|
26
25
|
|
|
27
26
|
// Lex bitmark to token dump
|
|
28
27
|
const tokens = lex("[.article]\nHello **bold**");
|
|
29
28
|
|
|
30
29
|
// Lex with a specific stage
|
|
31
|
-
const
|
|
32
|
-
const textTokens = lex(input, "lex-text");
|
|
30
|
+
const tokenJson = lex("[.article]\nHello **bold**", { stage: "lex-json" });
|
|
33
31
|
|
|
34
32
|
// Breakscape / unbreakscape text
|
|
35
33
|
const escaped = breakscapeText("[!example]", "bitmark++", "body");
|
|
36
34
|
const unescaped = unbreakscapeText(escaped, "bitmark++", "body");
|
|
37
35
|
|
|
38
36
|
// Query supported bit types
|
|
39
|
-
const bitInfo = info("list", "text");
|
|
37
|
+
const bitInfo = info({ infoType: "list", format: "text" });
|
|
40
38
|
|
|
41
39
|
// Get library version
|
|
42
40
|
console.log(version());
|
|
@@ -44,7 +42,7 @@ console.log(version());
|
|
|
44
42
|
|
|
45
43
|
### API
|
|
46
44
|
|
|
47
|
-
#### `convert(input: string,
|
|
45
|
+
#### `convert(input: string, options?: ConvertOptions): string`
|
|
48
46
|
|
|
49
47
|
Auto-detect input format and convert between bitmark and JSON.
|
|
50
48
|
|
|
@@ -55,34 +53,38 @@ Options (passed as a JSON string):
|
|
|
55
53
|
- `pretty` — prettify JSON output (default: `false`)
|
|
56
54
|
- `indent` — indent size for pretty JSON (default: `2`)
|
|
57
55
|
|
|
58
|
-
|
|
56
|
+
For bitmark input, output is a JSON array of entries with:
|
|
57
|
+
- `bit` — serialized bit payload
|
|
58
|
+
- `parser` — parser metadata and `warnings`
|
|
59
|
+
- `bitmark` — source bitmark text
|
|
60
|
+
|
|
61
|
+
#### `parse(input: string, options?: ParseOptions): string`
|
|
59
62
|
|
|
60
|
-
Parse bitmark text and return
|
|
63
|
+
Parse bitmark text and return structured JSON entries (`bit`, `parser`, `bitmark`).
|
|
61
64
|
|
|
62
65
|
#### `lex(input: string, stage?: string): string`
|
|
63
66
|
|
|
64
67
|
Lex bitmark text and return one token per line.
|
|
65
68
|
|
|
66
69
|
Stages:
|
|
67
|
-
- `"lex"` —
|
|
68
|
-
- `"lex-
|
|
69
|
-
- `"lex-text"` — Text formatting tokens only
|
|
70
|
+
- `"lex"` — Unified lexer token stream (default)
|
|
71
|
+
- `"lex-json"` — Unified lexer token stream as JSON
|
|
70
72
|
|
|
71
|
-
#### `breakscapeText(input: string,
|
|
73
|
+
#### `breakscapeText(input: string, options?: BreakscapeOptions): string`
|
|
72
74
|
|
|
73
75
|
Breakscape text (escape bitmark special characters).
|
|
74
76
|
|
|
75
77
|
- `format` — `"bitmark++"` (default) or `"plainText"`
|
|
76
78
|
- `location` — `"body"` (default) or `"tag"`
|
|
77
79
|
|
|
78
|
-
#### `unbreakscapeText(input: string,
|
|
80
|
+
#### `unbreakscapeText(input: string, options?: BreakscapeOptions): string`
|
|
79
81
|
|
|
80
82
|
Unbreakscape text (unescape bitmark special characters).
|
|
81
83
|
|
|
82
84
|
- `format` — `"bitmark++"` (default) or `"plainText"`
|
|
83
85
|
- `location` — `"body"` (default) or `"tag"`
|
|
84
86
|
|
|
85
|
-
#### `info(
|
|
87
|
+
#### `info(options?: InfoOptions): string`
|
|
86
88
|
|
|
87
89
|
Query information about supported bit types.
|
|
88
90
|
|
|
@@ -123,8 +125,8 @@ bitmark-parser-wasm parse input.bitmark --mode full
|
|
|
123
125
|
# Lex instead of parse
|
|
124
126
|
bitmark-parser-wasm parse --stage=lex input.bitmark
|
|
125
127
|
|
|
126
|
-
# Available stages: all (default), lex
|
|
127
|
-
bitmark-parser-wasm parse --stage=lex
|
|
128
|
+
# Available stages: all (default), lex
|
|
129
|
+
bitmark-parser-wasm parse --stage=lex input.bitmark
|
|
128
130
|
|
|
129
131
|
# Breakscape / unbreakscape text
|
|
130
132
|
bitmark-parser-wasm breakscape input.txt
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var t,p=0,m=null;function k(){return (m===null||m.byteLength===0)&&(m=new Uint8Array(t.memory.buffer)),m}var O=typeof TextEncoder<"u"?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}},F=typeof O.encodeInto=="function"?function(e,n){return O.encodeInto(e,n)}:function(e,n){let r=O.encode(e);return n.set(r),{read:e.length,written:r.length}};function f(e,n,r){if(r===void 0){let _=O.encode(e),c=n(_.length,1)>>>0;return k().subarray(c,c+_.length).set(_),p=_.length,c}let o=e.length,s=n(o,1)>>>0,a=k(),i=0;for(;i<o;i++){let _=e.charCodeAt(i);if(_>127)break;a[s+i]=_;}if(i!==o){i!==0&&(e=e.slice(i)),s=r(s,o,o=i+e.length*3,1)>>>0;let _=k().subarray(s+i,s+o),c=F(e,_);i+=c.written,s=r(s,o,i,1)>>>0;}return p=i,s}var x=null;function g(){return (x===null||x.buffer.detached===true||x.buffer.detached===void 0&&x.buffer!==t.memory.buffer)&&(x=new DataView(t.memory.buffer)),x}var T=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:true,fatal:true}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&T.decode();function y(e,n){return e=e>>>0,T.decode(k().subarray(e,e+n))}function h(e,n
|
|
1
|
+
var t,p=0,m=null;function k(){return (m===null||m.byteLength===0)&&(m=new Uint8Array(t.memory.buffer)),m}var O=typeof TextEncoder<"u"?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}},F=typeof O.encodeInto=="function"?function(e,n){return O.encodeInto(e,n)}:function(e,n){let r=O.encode(e);return n.set(r),{read:e.length,written:r.length}};function f(e,n,r){if(r===void 0){let _=O.encode(e),c=n(_.length,1)>>>0;return k().subarray(c,c+_.length).set(_),p=_.length,c}let o=e.length,s=n(o,1)>>>0,a=k(),i=0;for(;i<o;i++){let _=e.charCodeAt(i);if(_>127)break;a[s+i]=_;}if(i!==o){i!==0&&(e=e.slice(i)),s=r(s,o,o=i+e.length*3,1)>>>0;let _=k().subarray(s+i,s+o),c=F(e,_);i+=c.written,s=r(s,o,i,1)>>>0;}return p=i,s}var x=null;function g(){return (x===null||x.buffer.detached===true||x.buffer.detached===void 0&&x.buffer!==t.memory.buffer)&&(x=new DataView(t.memory.buffer)),x}var T=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:true,fatal:true}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&T.decode();function y(e,n){return e=e>>>0,T.decode(k().subarray(e,e+n))}function h(e,n){let r,o;try{let i=t.__wbindgen_add_to_stack_pointer(-16),_=f(e,t.__wbindgen_export_0,t.__wbindgen_export_1),c=p,d=f(n,t.__wbindgen_export_0,t.__wbindgen_export_1),b=p;t.lex(i,_,c,d,b);var s=g().getInt32(i+0,!0),a=g().getInt32(i+4,!0);return r=s,o=a,y(s,a)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export_2(r,o,1);}}function W(e,n,r){let o,s;try{let _=t.__wbindgen_add_to_stack_pointer(-16),c=f(e,t.__wbindgen_export_0,t.__wbindgen_export_1),d=p,b=f(n,t.__wbindgen_export_0,t.__wbindgen_export_1),u=p,w=f(r,t.__wbindgen_export_0,t.__wbindgen_export_1),l=p;t.breakscape_text(_,c,d,b,u,w,l);var a=g().getInt32(_+0,!0),i=g().getInt32(_+4,!0);return o=a,s=i,y(a,i)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export_2(o,s,1);}}function M(e,n,r,o,s,a){let i,_;try{let b=t.__wbindgen_add_to_stack_pointer(-16),u=f(e,t.__wbindgen_export_0,t.__wbindgen_export_1),w=p,l=f(n,t.__wbindgen_export_0,t.__wbindgen_export_1),v=p;t.convert(b,u,w,l,v,r,o,s,a);var c=g().getInt32(b+0,!0),d=g().getInt32(b+4,!0);return i=c,_=d,y(c,d)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export_2(i,_,1);}}function S(e,n,r,o,s){let a,i;try{let d=t.__wbindgen_add_to_stack_pointer(-16),b=f(e,t.__wbindgen_export_0,t.__wbindgen_export_1),u=p,w=f(n,t.__wbindgen_export_0,t.__wbindgen_export_1),l=p,v=f(r,t.__wbindgen_export_0,t.__wbindgen_export_1),B=p;t.info(d,b,u,w,l,v,B,o,s);var _=g().getInt32(d+0,!0),c=g().getInt32(d+4,!0);return a=_,i=c,y(_,c)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export_2(a,i,1);}}function E(e,n,r){let o,s;try{let _=t.__wbindgen_add_to_stack_pointer(-16),c=f(e,t.__wbindgen_export_0,t.__wbindgen_export_1),d=p,b=f(n,t.__wbindgen_export_0,t.__wbindgen_export_1),u=p,w=f(r,t.__wbindgen_export_0,t.__wbindgen_export_1),l=p;t.unbreakscape_text(_,c,d,b,u,w,l);var a=g().getInt32(_+0,!0),i=g().getInt32(_+4,!0);return o=a,s=i,y(a,i)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export_2(o,s,1);}}function L(e,n){let r,o;try{let i=t.__wbindgen_add_to_stack_pointer(-16),_=f(e,t.__wbindgen_export_0,t.__wbindgen_export_1),c=p,d=f(n,t.__wbindgen_export_0,t.__wbindgen_export_1),b=p;t.parse(i,_,c,d,b);var s=g().getInt32(i+0,!0),a=g().getInt32(i+4,!0);return r=s,o=a,y(s,a)}finally{t.__wbindgen_add_to_stack_pointer(16),t.__wbindgen_export_2(r,o,1);}}async function P(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 C(){let e={};return e.wbg={},e}function j(e,n){return t=e.exports,D.__wbindgen_wasm_module=n,x=null,m=null,t}function U(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=C();e instanceof WebAssembly.Module||(e=new WebAssembly.Module(e));let r=new WebAssembly.Instance(e,n);return j(r,e)}async function D(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=C();(typeof e=="string"||typeof Request=="function"&&e instanceof Request||typeof URL=="function"&&e instanceof URL)&&(e=fetch(e));let{instance:r,module:o}=await P(await e,n);return j(r,o)}var z=D;var R={version:"3.0.2"};function H(){return R.version}function J(e,n={}){return h(e,n.stage??"lex")}function Q(e,n={}){return L(e,n.mode??"optimized")}function X(e,n={}){return M(e,n.mode??"optimized",n.warnings??false,n.plainText??false,n.pretty??false,n.indent??2)}function Y(e,n={}){let r=n.format??"bitmark++",o=n.location??"body";return W(e,r,o)}function Z(e,n={}){let r=n.format??"bitmark++",o=n.location??"body";return E(e,r,o)}function $(e={}){let n=e.infoType??"list",r=e.format??"text",o=e.bit??"",s=e.pretty??false,a=e.indent??2;return S(n,r,o,s,a)}export{Y as breakscapeText,X as convert,$ as info,z as init,U as initSync,J as lex,Q as parse,Z as unbreakscapeText,H as version};//# sourceMappingURL=bitmark-parser.min.js.map
|
|
2
2
|
//# sourceMappingURL=bitmark-parser.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../wasm-web/bitmark_wasm.js","../../src/generated/package_info.ts","../../src/browser/index.ts"],"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","breakscape_text","input","format","location","deferred4_0","deferred4_1","retptr","ptr0","len0","ptr1","len1","ptr2","len2","r0","r1","unbreakscape_text","parse","mode","deferred3_0","deferred3_1","convert","warnings","plain_text","pretty","indent","info","info_type","bit","lex","stage","__wbg_load","module","imports","e","bytes","instance","__wbg_get_imports","__wbg_finalize_init","__wbg_init","initSync","module_or_path","bitmark_wasm_default","PACKAGE_INFO","version","options","breakscapeText","unbreakscapeText","infoType"],"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 * 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 * 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.\n *\n * `mode`: `\"optimized\"` (default) or `\"full\"`\n * @param {string} input\n * @param {string} mode\n * @returns {string}\n */\nexport function parse(input, mode) {\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(mode, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len1 = WASM_VECTOR_LEN;\n wasm.parse(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 * Auto-detect input format and convert between bitmark and JSON.\n *\n * `mode`: `\"optimized\"` (default) or `\"full\"`\n * `warnings`: whether to include validation warnings (default: false)\n * `plain_text`: output text as plain text — debug mode (default: false)\n * `pretty`: prettify JSON output (default: false)\n * `indent`: indent size for pretty-printing (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} mode\n * @param {boolean} warnings\n * @param {boolean} plain_text\n * @param {boolean} pretty\n * @param {number} indent\n * @returns {string}\n */\nexport function convert(input, mode, warnings, plain_text, pretty, indent) {\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(mode, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len1 = WASM_VECTOR_LEN;\n wasm.convert(retptr, ptr0, len0, ptr1, len1, warnings, plain_text, pretty, indent);\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 * 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 * 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","// This file is automatically generated. DO NOT EDIT.\n\n/* eslint-disable */\n\nexport const PACKAGE_INFO = {\n \"name\": \"@gmb/bitmark-parser\",\n \"version\": \"3.0.1-alpha.5\",\n \"author\": \"Get More Brain Ltd <info@getmorebrain.com>\",\n \"license\": \"ISC\",\n \"description\": \"A parser for bitmark text, powered by WebAssembly.\"\n};\n","// 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\nimport * as wasm from \"../../wasm-web/bitmark_wasm.js\";\nimport { PACKAGE_INFO } from \"../generated/package_info.js\";\n\nexport { default as init, initSync } from \"../../wasm-web/bitmark_wasm.js\";\n\nexport type { LexOptions, LexStage, ParseOptions, ConvertOptions, OutputMode, BreakscapeOptions, TextFormat, TextLocation, InfoOptions, InfoType, InfoFormat } from \"../types.js\";\nimport type { LexOptions, ParseOptions, ConvertOptions, BreakscapeOptions, InfoOptions } from \"../types.js\";\n\n/**\n * Get the version of the @gmb/bitmark-parser library.\n *\n * @returns Version string (e.g. \"3.0.0\").\n */\nexport function version(): string {\n return PACKAGE_INFO.version;\n}\n\n/**\n * Lex bitmark input text, returning one line per token.\n *\n * @param input - The bitmark source text.\n * @param options - Lex options (e.g. `{ stage: \"lex-bitmark\" }`).\n * @returns Token dump string (one token per line).\n */\nexport function lex(input: string, options: LexOptions = {}): string {\n return wasm.lex(input, options.stage ?? \"lex\");\n}\n\n/**\n * Parse bitmark input text and return the reference JSON format.\n *\n * @param input - The bitmark source text.\n * @param options - Parse options (e.g. `{ mode: \"full\" }`).\n * @returns JSON string of the parsed bitmark document.\n */\nexport function parse(input: string, options: ParseOptions = {}): string {\n return wasm.parse(input, options.mode ?? \"optimized\");\n}\n\n/**\n * Auto-detect input format and convert between bitmark and JSON.\n *\n * @param input - Bitmark or JSON input text.\n * @param options - Convert options (e.g. `{ mode: \"full\", warnings: true }`).\n * @returns Converted output string.\n */\nexport function convert(input: string, options: ConvertOptions = {}): string {\n return wasm.convert(input, options.mode ?? \"optimized\", options.warnings ?? false, options.plainText ?? false, options.pretty ?? false, options.indent ?? 2);\n}\n\n/**\n * Breakscape text (escape bitmark special characters).\n *\n * @param input - The text to breakscape.\n * @param options - Breakscape options (e.g. `{ format: \"plainText\", location: \"tag\" }`).\n * @returns Breakscaped text.\n */\nexport function breakscapeText(input: string, options: BreakscapeOptions = {}): string {\n const format = options.format ?? \"bitmark++\";\n const location = options.location ?? \"body\";\n return wasm.breakscape_text(input, format, location);\n}\n\n/**\n * Unbreakscape text (unescape bitmark special characters).\n *\n * @param input - The text to unbreakscape.\n * @param options - Unbreakscape options (e.g. `{ format: \"plainText\", location: \"tag\" }`).\n * @returns Unbreakscaped text.\n */\nexport function unbreakscapeText(input: string, options: BreakscapeOptions = {}): string {\n const format = options.format ?? \"bitmark++\";\n const location = options.location ?? \"body\";\n return wasm.unbreakscape_text(input, format, location);\n}\n\n/**\n * Query information about supported bit types.\n *\n * @param options - Info options (e.g. `{ infoType: \"bit\", format: \"json\", bit: \"cloze\" }`).\n * @returns Information string.\n */\nexport function info(options: InfoOptions = {}): string {\n const infoType = options.infoType ?? \"list\";\n const format = options.format ?? \"text\";\n const bit = options.bit ?? \"\";\n const pretty = options.pretty ?? false;\n const indent = options.indent ?? 2;\n return wasm.info(infoType, format, bit, pretty, indent);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../wasm-web/bitmark_wasm.js","../../src/generated/package_info.ts","../../src/browser/index.ts"],"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","lex","input","stage","deferred3_0","deferred3_1","retptr","ptr0","len0","ptr1","len1","r0","r1","breakscape_text","format","location","deferred4_0","deferred4_1","ptr2","len2","convert","mode","warnings","plain_text","pretty","indent","info","info_type","bit","unbreakscape_text","parse","__wbg_load","module","imports","e","bytes","instance","__wbg_get_imports","__wbg_finalize_init","__wbg_init","initSync","module_or_path","bitmark_wasm_default","PACKAGE_INFO","version","options","breakscapeText","unbreakscapeText","infoType"],"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 * 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-json\"` — combined, 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\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 * Auto-detect input format and convert between bitmark and JSON.\n *\n * `mode`: `\"optimized\"` (default) or `\"full\"`\n * `warnings`: whether to include validation warnings (default: false)\n * `plain_text`: output text as plain text — debug mode (default: false)\n * `pretty`: prettify JSON output (default: false)\n * `indent`: indent size for pretty-printing (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} mode\n * @param {boolean} warnings\n * @param {boolean} plain_text\n * @param {boolean} pretty\n * @param {number} indent\n * @returns {string}\n */\nexport function convert(input, mode, warnings, plain_text, pretty, indent) {\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(mode, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len1 = WASM_VECTOR_LEN;\n wasm.convert(retptr, ptr0, len0, ptr1, len1, warnings, plain_text, pretty, indent);\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 * 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.\n *\n * `mode`: `\"optimized\"` (default) or `\"full\"`\n * @param {string} input\n * @param {string} mode\n * @returns {string}\n */\nexport function parse(input, mode) {\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(mode, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len1 = WASM_VECTOR_LEN;\n wasm.parse(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","// This file is automatically generated. DO NOT EDIT.\n\n/* eslint-disable */\n\nexport const PACKAGE_INFO = {\n \"name\": \"@gmb/bitmark-parser\",\n \"version\": \"3.0.2\",\n \"author\": \"Get More Brain Ltd <info@getmorebrain.com>\",\n \"license\": \"ISC\",\n \"description\": \"A parser for bitmark text, powered by WebAssembly.\"\n};\n","// 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\nimport * as wasm from \"../../wasm-web/bitmark_wasm.js\";\nimport { PACKAGE_INFO } from \"../generated/package_info.js\";\n\nexport { default as init, initSync } from \"../../wasm-web/bitmark_wasm.js\";\n\nexport type { LexOptions, LexStage, ParseOptions, ConvertOptions, OutputMode, BreakscapeOptions, TextFormat, TextLocation, InfoOptions, InfoType, InfoFormat } from \"../types.js\";\nimport type { LexOptions, ParseOptions, ConvertOptions, BreakscapeOptions, InfoOptions } from \"../types.js\";\n\n/**\n * Get the version of the @gmb/bitmark-parser library.\n *\n * @returns Version string (e.g. \"3.0.0\").\n */\nexport function version(): string {\n return PACKAGE_INFO.version;\n}\n\n/**\n * Lex bitmark input text, returning one line per token.\n *\n * @param input - The bitmark source text.\n * @param options - Lex options (e.g. `{ stage: \"lex\" }`).\n * @returns Token dump string (one token per line).\n */\nexport function lex(input: string, options: LexOptions = {}): string {\n return wasm.lex(input, options.stage ?? \"lex\");\n}\n\n/**\n * Parse bitmark input text and return structured JSON entries.\n *\n * Each entry contains `bit`, `parser`, and `bitmark` fields.\n *\n * @param input - The bitmark source text.\n * @param options - Parse options (e.g. `{ mode: \"full\" }`).\n * @returns JSON string array of structured parsed entries.\n */\nexport function parse(input: string, options: ParseOptions = {}): string {\n return wasm.parse(input, options.mode ?? \"optimized\");\n}\n\n/**\n * Auto-detect input format and convert between bitmark and JSON.\n *\n * @param input - Bitmark or JSON input text.\n * @param options - Convert options (e.g. `{ mode: \"full\", warnings: true }`).\n * @returns Converted output string. For bitmark input, this is a JSON string\n * array of structured parsed entries (`bit`, `parser`, `bitmark`).\n */\nexport function convert(input: string, options: ConvertOptions = {}): string {\n return wasm.convert(input, options.mode ?? \"optimized\", options.warnings ?? false, options.plainText ?? false, options.pretty ?? false, options.indent ?? 2);\n}\n\n/**\n * Breakscape text (escape bitmark special characters).\n *\n * @param input - The text to breakscape.\n * @param options - Breakscape options (e.g. `{ format: \"plainText\", location: \"tag\" }`).\n * @returns Breakscaped text.\n */\nexport function breakscapeText(input: string, options: BreakscapeOptions = {}): string {\n const format = options.format ?? \"bitmark++\";\n const location = options.location ?? \"body\";\n return wasm.breakscape_text(input, format, location);\n}\n\n/**\n * Unbreakscape text (unescape bitmark special characters).\n *\n * @param input - The text to unbreakscape.\n * @param options - Unbreakscape options (e.g. `{ format: \"plainText\", location: \"tag\" }`).\n * @returns Unbreakscaped text.\n */\nexport function unbreakscapeText(input: string, options: BreakscapeOptions = {}): string {\n const format = options.format ?? \"bitmark++\";\n const location = options.location ?? \"body\";\n return wasm.unbreakscape_text(input, format, location);\n}\n\n/**\n * Query information about supported bit types.\n *\n * @param options - Info options (e.g. `{ infoType: \"bit\", format: \"json\", bit: \"cloze\" }`).\n * @returns Information string.\n */\nexport function info(options: InfoOptions = {}): string {\n const infoType = options.infoType ?? \"list\";\n const format = options.format ?? \"text\";\n const bit = options.bit ?? \"\";\n const pretty = options.pretty ?? false;\n const indent = options.indent ?? 2;\n return wasm.info(infoType, format, bit, pretty, indent);\n}\n"]}
|
|
Binary file
|
|
Binary file
|
|
@@ -106,29 +106,27 @@ function getStringFromWasm0(ptr, len) {
|
|
|
106
106
|
ptr = ptr >>> 0;
|
|
107
107
|
return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));
|
|
108
108
|
}
|
|
109
|
-
function
|
|
110
|
-
let
|
|
111
|
-
let
|
|
109
|
+
function lex(input, stage) {
|
|
110
|
+
let deferred3_0;
|
|
111
|
+
let deferred3_1;
|
|
112
112
|
try {
|
|
113
113
|
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
114
114
|
const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
115
115
|
const len0 = WASM_VECTOR_LEN;
|
|
116
|
-
const ptr1 = passStringToWasm0(
|
|
116
|
+
const ptr1 = passStringToWasm0(stage, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
117
117
|
const len1 = WASM_VECTOR_LEN;
|
|
118
|
-
|
|
119
|
-
const len2 = WASM_VECTOR_LEN;
|
|
120
|
-
wasm.breakscape_text(retptr, ptr0, len0, ptr1, len1, ptr2, len2);
|
|
118
|
+
wasm.lex(retptr, ptr0, len0, ptr1, len1);
|
|
121
119
|
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
122
120
|
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
123
|
-
|
|
124
|
-
|
|
121
|
+
deferred3_0 = r0;
|
|
122
|
+
deferred3_1 = r1;
|
|
125
123
|
return getStringFromWasm0(r0, r1);
|
|
126
124
|
} finally {
|
|
127
125
|
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
128
|
-
wasm.__wbindgen_export_2(
|
|
126
|
+
wasm.__wbindgen_export_2(deferred3_0, deferred3_1, 1);
|
|
129
127
|
}
|
|
130
128
|
}
|
|
131
|
-
function
|
|
129
|
+
function breakscape_text(input, format, location) {
|
|
132
130
|
let deferred4_0;
|
|
133
131
|
let deferred4_1;
|
|
134
132
|
try {
|
|
@@ -139,7 +137,7 @@ function unbreakscape_text(input, format, location) {
|
|
|
139
137
|
const len1 = WASM_VECTOR_LEN;
|
|
140
138
|
const ptr2 = passStringToWasm0(location, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
141
139
|
const len2 = WASM_VECTOR_LEN;
|
|
142
|
-
wasm.
|
|
140
|
+
wasm.breakscape_text(retptr, ptr0, len0, ptr1, len1, ptr2, len2);
|
|
143
141
|
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
144
142
|
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
145
143
|
deferred4_0 = r0;
|
|
@@ -150,7 +148,7 @@ function unbreakscape_text(input, format, location) {
|
|
|
150
148
|
wasm.__wbindgen_export_2(deferred4_0, deferred4_1, 1);
|
|
151
149
|
}
|
|
152
150
|
}
|
|
153
|
-
function
|
|
151
|
+
function convert(input, mode, warnings, plain_text, pretty, indent) {
|
|
154
152
|
let deferred3_0;
|
|
155
153
|
let deferred3_1;
|
|
156
154
|
try {
|
|
@@ -159,7 +157,7 @@ function parse(input, mode) {
|
|
|
159
157
|
const len0 = WASM_VECTOR_LEN;
|
|
160
158
|
const ptr1 = passStringToWasm0(mode, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
161
159
|
const len1 = WASM_VECTOR_LEN;
|
|
162
|
-
wasm.
|
|
160
|
+
wasm.convert(retptr, ptr0, len0, ptr1, len1, warnings, plain_text, pretty, indent);
|
|
163
161
|
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
164
162
|
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
165
163
|
deferred3_0 = r0;
|
|
@@ -170,38 +168,40 @@ function parse(input, mode) {
|
|
|
170
168
|
wasm.__wbindgen_export_2(deferred3_0, deferred3_1, 1);
|
|
171
169
|
}
|
|
172
170
|
}
|
|
173
|
-
function
|
|
174
|
-
let
|
|
175
|
-
let
|
|
171
|
+
function info(info_type, format, bit, pretty, indent) {
|
|
172
|
+
let deferred4_0;
|
|
173
|
+
let deferred4_1;
|
|
176
174
|
try {
|
|
177
175
|
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
178
|
-
const ptr0 = passStringToWasm0(
|
|
176
|
+
const ptr0 = passStringToWasm0(info_type, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
179
177
|
const len0 = WASM_VECTOR_LEN;
|
|
180
|
-
const ptr1 = passStringToWasm0(
|
|
178
|
+
const ptr1 = passStringToWasm0(format, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
181
179
|
const len1 = WASM_VECTOR_LEN;
|
|
182
|
-
|
|
180
|
+
const ptr2 = passStringToWasm0(bit, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
181
|
+
const len2 = WASM_VECTOR_LEN;
|
|
182
|
+
wasm.info(retptr, ptr0, len0, ptr1, len1, ptr2, len2, pretty, indent);
|
|
183
183
|
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
184
184
|
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
185
|
-
|
|
186
|
-
|
|
185
|
+
deferred4_0 = r0;
|
|
186
|
+
deferred4_1 = r1;
|
|
187
187
|
return getStringFromWasm0(r0, r1);
|
|
188
188
|
} finally {
|
|
189
189
|
wasm.__wbindgen_add_to_stack_pointer(16);
|
|
190
|
-
wasm.__wbindgen_export_2(
|
|
190
|
+
wasm.__wbindgen_export_2(deferred4_0, deferred4_1, 1);
|
|
191
191
|
}
|
|
192
192
|
}
|
|
193
|
-
function
|
|
193
|
+
function unbreakscape_text(input, format, location) {
|
|
194
194
|
let deferred4_0;
|
|
195
195
|
let deferred4_1;
|
|
196
196
|
try {
|
|
197
197
|
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
198
|
-
const ptr0 = passStringToWasm0(
|
|
198
|
+
const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
199
199
|
const len0 = WASM_VECTOR_LEN;
|
|
200
200
|
const ptr1 = passStringToWasm0(format, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
201
201
|
const len1 = WASM_VECTOR_LEN;
|
|
202
|
-
const ptr2 = passStringToWasm0(
|
|
202
|
+
const ptr2 = passStringToWasm0(location, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
203
203
|
const len2 = WASM_VECTOR_LEN;
|
|
204
|
-
wasm.
|
|
204
|
+
wasm.unbreakscape_text(retptr, ptr0, len0, ptr1, len1, ptr2, len2);
|
|
205
205
|
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
206
206
|
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
207
207
|
deferred4_0 = r0;
|
|
@@ -212,16 +212,16 @@ function info(info_type, format, bit, pretty, indent) {
|
|
|
212
212
|
wasm.__wbindgen_export_2(deferred4_0, deferred4_1, 1);
|
|
213
213
|
}
|
|
214
214
|
}
|
|
215
|
-
function
|
|
215
|
+
function parse(input, mode) {
|
|
216
216
|
let deferred3_0;
|
|
217
217
|
let deferred3_1;
|
|
218
218
|
try {
|
|
219
219
|
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
220
220
|
const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
221
221
|
const len0 = WASM_VECTOR_LEN;
|
|
222
|
-
const ptr1 = passStringToWasm0(
|
|
222
|
+
const ptr1 = passStringToWasm0(mode, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
|
|
223
223
|
const len1 = WASM_VECTOR_LEN;
|
|
224
|
-
wasm.
|
|
224
|
+
wasm.parse(retptr, ptr0, len0, ptr1, len1);
|
|
225
225
|
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
226
226
|
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
227
227
|
deferred3_0 = r0;
|
|
@@ -312,7 +312,7 @@ var bitmark_wasm_default = __wbg_init;
|
|
|
312
312
|
// src/generated/package_info.ts
|
|
313
313
|
var PACKAGE_INFO = {
|
|
314
314
|
"name": "@gmb/bitmark-parser",
|
|
315
|
-
"version": "3.0.
|
|
315
|
+
"version": "3.0.2",
|
|
316
316
|
"author": "Get More Brain Ltd <info@getmorebrain.com>",
|
|
317
317
|
"license": "ISC",
|
|
318
318
|
"description": "A parser for bitmark text, powered by WebAssembly."
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/browser/index.ts","../../../../../node_modules/tsup/assets/cjs_shims.js","../../../wasm-web/bitmark_wasm.js","../../../src/generated/package_info.ts"],"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\nimport * as wasm from \"../../wasm-web/bitmark_wasm.js\";\nimport { PACKAGE_INFO } from \"../generated/package_info.js\";\n\nexport { default as init, initSync } from \"../../wasm-web/bitmark_wasm.js\";\n\nexport type { LexOptions, LexStage, ParseOptions, ConvertOptions, OutputMode, BreakscapeOptions, TextFormat, TextLocation, InfoOptions, InfoType, InfoFormat } from \"../types.js\";\nimport type { LexOptions, ParseOptions, ConvertOptions, BreakscapeOptions, InfoOptions } from \"../types.js\";\n\n/**\n * Get the version of the @gmb/bitmark-parser library.\n *\n * @returns Version string (e.g. \"3.0.0\").\n */\nexport function version(): string {\n return PACKAGE_INFO.version;\n}\n\n/**\n * Lex bitmark input text, returning one line per token.\n *\n * @param input - The bitmark source text.\n * @param options - Lex options (e.g. `{ stage: \"lex-bitmark\" }`).\n * @returns Token dump string (one token per line).\n */\nexport function lex(input: string, options: LexOptions = {}): string {\n return wasm.lex(input, options.stage ?? \"lex\");\n}\n\n/**\n * Parse bitmark input text and return the reference JSON format.\n *\n * @param input - The bitmark source text.\n * @param options - Parse options (e.g. `{ mode: \"full\" }`).\n * @returns JSON string of the parsed bitmark document.\n */\nexport function parse(input: string, options: ParseOptions = {}): string {\n return wasm.parse(input, options.mode ?? \"optimized\");\n}\n\n/**\n * Auto-detect input format and convert between bitmark and JSON.\n *\n * @param input - Bitmark or JSON input text.\n * @param options - Convert options (e.g. `{ mode: \"full\", warnings: true }`).\n * @returns Converted output string.\n */\nexport function convert(input: string, options: ConvertOptions = {}): string {\n return wasm.convert(input, options.mode ?? \"optimized\", options.warnings ?? false, options.plainText ?? false, options.pretty ?? false, options.indent ?? 2);\n}\n\n/**\n * Breakscape text (escape bitmark special characters).\n *\n * @param input - The text to breakscape.\n * @param options - Breakscape options (e.g. `{ format: \"plainText\", location: \"tag\" }`).\n * @returns Breakscaped text.\n */\nexport function breakscapeText(input: string, options: BreakscapeOptions = {}): string {\n const format = options.format ?? \"bitmark++\";\n const location = options.location ?? \"body\";\n return wasm.breakscape_text(input, format, location);\n}\n\n/**\n * Unbreakscape text (unescape bitmark special characters).\n *\n * @param input - The text to unbreakscape.\n * @param options - Unbreakscape options (e.g. `{ format: \"plainText\", location: \"tag\" }`).\n * @returns Unbreakscaped text.\n */\nexport function unbreakscapeText(input: string, options: BreakscapeOptions = {}): string {\n const format = options.format ?? \"bitmark++\";\n const location = options.location ?? \"body\";\n return wasm.unbreakscape_text(input, format, location);\n}\n\n/**\n * Query information about supported bit types.\n *\n * @param options - Info options (e.g. `{ infoType: \"bit\", format: \"json\", bit: \"cloze\" }`).\n * @returns Information string.\n */\nexport function info(options: InfoOptions = {}): string {\n const infoType = options.infoType ?? \"list\";\n const format = options.format ?? \"text\";\n const bit = options.bit ?? \"\";\n const pretty = options.pretty ?? false;\n const indent = options.indent ?? 2;\n return wasm.info(infoType, format, bit, pretty, indent);\n}\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 * 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 * 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.\n *\n * `mode`: `\"optimized\"` (default) or `\"full\"`\n * @param {string} input\n * @param {string} mode\n * @returns {string}\n */\nexport function parse(input, mode) {\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(mode, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len1 = WASM_VECTOR_LEN;\n wasm.parse(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 * Auto-detect input format and convert between bitmark and JSON.\n *\n * `mode`: `\"optimized\"` (default) or `\"full\"`\n * `warnings`: whether to include validation warnings (default: false)\n * `plain_text`: output text as plain text — debug mode (default: false)\n * `pretty`: prettify JSON output (default: false)\n * `indent`: indent size for pretty-printing (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} mode\n * @param {boolean} warnings\n * @param {boolean} plain_text\n * @param {boolean} pretty\n * @param {number} indent\n * @returns {string}\n */\nexport function convert(input, mode, warnings, plain_text, pretty, indent) {\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(mode, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len1 = WASM_VECTOR_LEN;\n wasm.convert(retptr, ptr0, len0, ptr1, len1, warnings, plain_text, pretty, indent);\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 * 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 * 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","// This file is automatically generated. DO NOT EDIT.\n\n/* eslint-disable */\n\nexport const PACKAGE_INFO = {\n \"name\": \"@gmb/bitmark-parser\",\n \"version\": \"3.0.1-alpha.5\",\n \"author\": \"Get More Brain Ltd <info@getmorebrain.com>\",\n \"license\": \"ISC\",\n \"description\": \"A parser for bitmark text, powered by WebAssembly.\"\n};\n"],"mappings":"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","names":["convert","info","lex","parse","ptr","module","lex","parse","convert","info"]}
|
|
1
|
+
{"version":3,"sources":["../../../src/browser/index.ts","../../../../../node_modules/tsup/assets/cjs_shims.js","../../../wasm-web/bitmark_wasm.js","../../../src/generated/package_info.ts"],"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\nimport * as wasm from \"../../wasm-web/bitmark_wasm.js\";\nimport { PACKAGE_INFO } from \"../generated/package_info.js\";\n\nexport { default as init, initSync } from \"../../wasm-web/bitmark_wasm.js\";\n\nexport type { LexOptions, LexStage, ParseOptions, ConvertOptions, OutputMode, BreakscapeOptions, TextFormat, TextLocation, InfoOptions, InfoType, InfoFormat } from \"../types.js\";\nimport type { LexOptions, ParseOptions, ConvertOptions, BreakscapeOptions, InfoOptions } from \"../types.js\";\n\n/**\n * Get the version of the @gmb/bitmark-parser library.\n *\n * @returns Version string (e.g. \"3.0.0\").\n */\nexport function version(): string {\n return PACKAGE_INFO.version;\n}\n\n/**\n * Lex bitmark input text, returning one line per token.\n *\n * @param input - The bitmark source text.\n * @param options - Lex options (e.g. `{ stage: \"lex\" }`).\n * @returns Token dump string (one token per line).\n */\nexport function lex(input: string, options: LexOptions = {}): string {\n return wasm.lex(input, options.stage ?? \"lex\");\n}\n\n/**\n * Parse bitmark input text and return structured JSON entries.\n *\n * Each entry contains `bit`, `parser`, and `bitmark` fields.\n *\n * @param input - The bitmark source text.\n * @param options - Parse options (e.g. `{ mode: \"full\" }`).\n * @returns JSON string array of structured parsed entries.\n */\nexport function parse(input: string, options: ParseOptions = {}): string {\n return wasm.parse(input, options.mode ?? \"optimized\");\n}\n\n/**\n * Auto-detect input format and convert between bitmark and JSON.\n *\n * @param input - Bitmark or JSON input text.\n * @param options - Convert options (e.g. `{ mode: \"full\", warnings: true }`).\n * @returns Converted output string. For bitmark input, this is a JSON string\n * array of structured parsed entries (`bit`, `parser`, `bitmark`).\n */\nexport function convert(input: string, options: ConvertOptions = {}): string {\n return wasm.convert(input, options.mode ?? \"optimized\", options.warnings ?? false, options.plainText ?? false, options.pretty ?? false, options.indent ?? 2);\n}\n\n/**\n * Breakscape text (escape bitmark special characters).\n *\n * @param input - The text to breakscape.\n * @param options - Breakscape options (e.g. `{ format: \"plainText\", location: \"tag\" }`).\n * @returns Breakscaped text.\n */\nexport function breakscapeText(input: string, options: BreakscapeOptions = {}): string {\n const format = options.format ?? \"bitmark++\";\n const location = options.location ?? \"body\";\n return wasm.breakscape_text(input, format, location);\n}\n\n/**\n * Unbreakscape text (unescape bitmark special characters).\n *\n * @param input - The text to unbreakscape.\n * @param options - Unbreakscape options (e.g. `{ format: \"plainText\", location: \"tag\" }`).\n * @returns Unbreakscaped text.\n */\nexport function unbreakscapeText(input: string, options: BreakscapeOptions = {}): string {\n const format = options.format ?? \"bitmark++\";\n const location = options.location ?? \"body\";\n return wasm.unbreakscape_text(input, format, location);\n}\n\n/**\n * Query information about supported bit types.\n *\n * @param options - Info options (e.g. `{ infoType: \"bit\", format: \"json\", bit: \"cloze\" }`).\n * @returns Information string.\n */\nexport function info(options: InfoOptions = {}): string {\n const infoType = options.infoType ?? \"list\";\n const format = options.format ?? \"text\";\n const bit = options.bit ?? \"\";\n const pretty = options.pretty ?? false;\n const indent = options.indent ?? 2;\n return wasm.info(infoType, format, bit, pretty, indent);\n}\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 * 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-json\"` — combined, 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\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 * Auto-detect input format and convert between bitmark and JSON.\n *\n * `mode`: `\"optimized\"` (default) or `\"full\"`\n * `warnings`: whether to include validation warnings (default: false)\n * `plain_text`: output text as plain text — debug mode (default: false)\n * `pretty`: prettify JSON output (default: false)\n * `indent`: indent size for pretty-printing (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} mode\n * @param {boolean} warnings\n * @param {boolean} plain_text\n * @param {boolean} pretty\n * @param {number} indent\n * @returns {string}\n */\nexport function convert(input, mode, warnings, plain_text, pretty, indent) {\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(mode, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len1 = WASM_VECTOR_LEN;\n wasm.convert(retptr, ptr0, len0, ptr1, len1, warnings, plain_text, pretty, indent);\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 * 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.\n *\n * `mode`: `\"optimized\"` (default) or `\"full\"`\n * @param {string} input\n * @param {string} mode\n * @returns {string}\n */\nexport function parse(input, mode) {\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(mode, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);\n const len1 = WASM_VECTOR_LEN;\n wasm.parse(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","// This file is automatically generated. DO NOT EDIT.\n\n/* eslint-disable */\n\nexport const PACKAGE_INFO = {\n \"name\": \"@gmb/bitmark-parser\",\n \"version\": \"3.0.2\",\n \"author\": \"Get More Brain Ltd <info@getmorebrain.com>\",\n \"license\": \"ISC\",\n \"description\": \"A parser for bitmark text, powered by WebAssembly.\"\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA,iBAAAA;AAAA,EAAA,YAAAC;AAAA,EAAA;AAAA;AAAA,aAAAC;AAAA,EAAA,aAAAC;AAAA,EAAA;AAAA;AAAA;AAAA;;;ACKA,IAAM,mBAAmB,MACvB,OAAO,aAAa,cAChB,IAAI,IAAI,QAAQ,UAAU,EAAE,EAAE,OAC7B,SAAS,iBAAiB,SAAS,cAAc,QAAQ,YAAY,MAAM,WAC1E,SAAS,cAAc,MACvB,IAAI,IAAI,WAAW,SAAS,OAAO,EAAE;AAEtC,IAAM,gBAAgC,iCAAiB;;;ACZ9D,IAAI;AAEJ,IAAI,kBAAkB;AAEtB,IAAI,0BAA0B;AAE9B,SAAS,uBAAuB;AAC5B,MAAI,4BAA4B,QAAQ,wBAAwB,eAAe,GAAG;AAC9E,8BAA0B,IAAI,WAAW,KAAK,OAAO,MAAM;AAAA,EAC/D;AACA,SAAO;AACX;AAEA,IAAM,oBAAqB,OAAO,gBAAgB,cAAc,IAAI,YAAY,OAAO,IAAI,EAAE,QAAQ,MAAM;AAAE,QAAM,MAAM,2BAA2B;AAAE,EAAE;AAExJ,IAAM,eAAgB,OAAO,kBAAkB,eAAe,aACxD,SAAU,KAAK,MAAM;AACvB,SAAO,kBAAkB,WAAW,KAAK,IAAI;AACjD,IACM,SAAU,KAAK,MAAM;AACvB,QAAM,MAAM,kBAAkB,OAAO,GAAG;AACxC,OAAK,IAAI,GAAG;AACZ,SAAO;AAAA,IACH,MAAM,IAAI;AAAA,IACV,SAAS,IAAI;AAAA,EACjB;AACJ;AAEA,SAAS,kBAAkB,KAAK,QAAQ,SAAS;AAE7C,MAAI,YAAY,QAAW;AACvB,UAAM,MAAM,kBAAkB,OAAO,GAAG;AACxC,UAAMC,OAAM,OAAO,IAAI,QAAQ,CAAC,MAAM;AACtC,yBAAqB,EAAE,SAASA,MAAKA,OAAM,IAAI,MAAM,EAAE,IAAI,GAAG;AAC9D,sBAAkB,IAAI;AACtB,WAAOA;AAAA,EACX;AAEA,MAAI,MAAM,IAAI;AACd,MAAI,MAAM,OAAO,KAAK,CAAC,MAAM;AAE7B,QAAM,MAAM,qBAAqB;AAEjC,MAAI,SAAS;AAEb,SAAO,SAAS,KAAK,UAAU;AAC3B,UAAM,OAAO,IAAI,WAAW,MAAM;AAClC,QAAI,OAAO,IAAM;AACjB,QAAI,MAAM,MAAM,IAAI;AAAA,EACxB;AAEA,MAAI,WAAW,KAAK;AAChB,QAAI,WAAW,GAAG;AACd,YAAM,IAAI,MAAM,MAAM;AAAA,IAC1B;AACA,UAAM,QAAQ,KAAK,KAAK,MAAM,SAAS,IAAI,SAAS,GAAG,CAAC,MAAM;AAC9D,UAAM,OAAO,qBAAqB,EAAE,SAAS,MAAM,QAAQ,MAAM,GAAG;AACpE,UAAM,MAAM,aAAa,KAAK,IAAI;AAElC,cAAU,IAAI;AACd,UAAM,QAAQ,KAAK,KAAK,QAAQ,CAAC,MAAM;AAAA,EAC3C;AAEA,oBAAkB;AAClB,SAAO;AACX;AAEA,IAAI,wBAAwB;AAE5B,SAAS,qBAAqB;AAC1B,MAAI,0BAA0B,QAAQ,sBAAsB,OAAO,aAAa,QAAS,sBAAsB,OAAO,aAAa,UAAa,sBAAsB,WAAW,KAAK,OAAO,QAAS;AAClM,4BAAwB,IAAI,SAAS,KAAK,OAAO,MAAM;AAAA,EAC3D;AACA,SAAO;AACX;AAEA,IAAM,oBAAqB,OAAO,gBAAgB,cAAc,IAAI,YAAY,SAAS,EAAE,WAAW,MAAM,OAAO,KAAK,CAAC,IAAI,EAAE,QAAQ,MAAM;AAAE,QAAM,MAAM,2BAA2B;AAAE,EAAE;AAE1L,IAAI,OAAO,gBAAgB,aAAa;AAAE,oBAAkB,OAAO;AAAG;AAEtE,SAAS,mBAAmB,KAAK,KAAK;AAClC,QAAM,QAAQ;AACd,SAAO,kBAAkB,OAAO,qBAAqB,EAAE,SAAS,KAAK,MAAM,GAAG,CAAC;AACnF;AAYO,SAAS,IAAI,OAAO,OAAO;AAC9B,MAAI;AACJ,MAAI;AACJ,MAAI;AACA,UAAM,SAAS,KAAK,gCAAgC,GAAG;AACvD,UAAM,OAAO,kBAAkB,OAAO,KAAK,qBAAqB,KAAK,mBAAmB;AACxF,UAAM,OAAO;AACb,UAAM,OAAO,kBAAkB,OAAO,KAAK,qBAAqB,KAAK,mBAAmB;AACxF,UAAM,OAAO;AACb,SAAK,IAAI,QAAQ,MAAM,MAAM,MAAM,IAAI;AACvC,QAAI,KAAK,mBAAmB,EAAE,SAAS,SAAS,IAAI,GAAG,IAAI;AAC3D,QAAI,KAAK,mBAAmB,EAAE,SAAS,SAAS,IAAI,GAAG,IAAI;AAC3D,kBAAc;AACd,kBAAc;AACd,WAAO,mBAAmB,IAAI,EAAE;AAAA,EACpC,UAAE;AACE,SAAK,gCAAgC,EAAE;AACvC,SAAK,oBAAoB,aAAa,aAAa,CAAC;AAAA,EACxD;AACJ;AAYO,SAAS,gBAAgB,OAAO,QAAQ,UAAU;AACrD,MAAI;AACJ,MAAI;AACJ,MAAI;AACA,UAAM,SAAS,KAAK,gCAAgC,GAAG;AACvD,UAAM,OAAO,kBAAkB,OAAO,KAAK,qBAAqB,KAAK,mBAAmB;AACxF,UAAM,OAAO;AACb,UAAM,OAAO,kBAAkB,QAAQ,KAAK,qBAAqB,KAAK,mBAAmB;AACzF,UAAM,OAAO;AACb,UAAM,OAAO,kBAAkB,UAAU,KAAK,qBAAqB,KAAK,mBAAmB;AAC3F,UAAM,OAAO;AACb,SAAK,gBAAgB,QAAQ,MAAM,MAAM,MAAM,MAAM,MAAM,IAAI;AAC/D,QAAI,KAAK,mBAAmB,EAAE,SAAS,SAAS,IAAI,GAAG,IAAI;AAC3D,QAAI,KAAK,mBAAmB,EAAE,SAAS,SAAS,IAAI,GAAG,IAAI;AAC3D,kBAAc;AACd,kBAAc;AACd,WAAO,mBAAmB,IAAI,EAAE;AAAA,EACpC,UAAE;AACE,SAAK,gCAAgC,EAAE;AACvC,SAAK,oBAAoB,aAAa,aAAa,CAAC;AAAA,EACxD;AACJ;AAqBO,SAAS,QAAQ,OAAO,MAAM,UAAU,YAAY,QAAQ,QAAQ;AACvE,MAAI;AACJ,MAAI;AACJ,MAAI;AACA,UAAM,SAAS,KAAK,gCAAgC,GAAG;AACvD,UAAM,OAAO,kBAAkB,OAAO,KAAK,qBAAqB,KAAK,mBAAmB;AACxF,UAAM,OAAO;AACb,UAAM,OAAO,kBAAkB,MAAM,KAAK,qBAAqB,KAAK,mBAAmB;AACvF,UAAM,OAAO;AACb,SAAK,QAAQ,QAAQ,MAAM,MAAM,MAAM,MAAM,UAAU,YAAY,QAAQ,MAAM;AACjF,QAAI,KAAK,mBAAmB,EAAE,SAAS,SAAS,IAAI,GAAG,IAAI;AAC3D,QAAI,KAAK,mBAAmB,EAAE,SAAS,SAAS,IAAI,GAAG,IAAI;AAC3D,kBAAc;AACd,kBAAc;AACd,WAAO,mBAAmB,IAAI,EAAE;AAAA,EACpC,UAAE;AACE,SAAK,gCAAgC,EAAE;AACvC,SAAK,oBAAoB,aAAa,aAAa,CAAC;AAAA,EACxD;AACJ;AAiBO,SAAS,KAAK,WAAW,QAAQ,KAAK,QAAQ,QAAQ;AACzD,MAAI;AACJ,MAAI;AACJ,MAAI;AACA,UAAM,SAAS,KAAK,gCAAgC,GAAG;AACvD,UAAM,OAAO,kBAAkB,WAAW,KAAK,qBAAqB,KAAK,mBAAmB;AAC5F,UAAM,OAAO;AACb,UAAM,OAAO,kBAAkB,QAAQ,KAAK,qBAAqB,KAAK,mBAAmB;AACzF,UAAM,OAAO;AACb,UAAM,OAAO,kBAAkB,KAAK,KAAK,qBAAqB,KAAK,mBAAmB;AACtF,UAAM,OAAO;AACb,SAAK,KAAK,QAAQ,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,QAAQ,MAAM;AACpE,QAAI,KAAK,mBAAmB,EAAE,SAAS,SAAS,IAAI,GAAG,IAAI;AAC3D,QAAI,KAAK,mBAAmB,EAAE,SAAS,SAAS,IAAI,GAAG,IAAI;AAC3D,kBAAc;AACd,kBAAc;AACd,WAAO,mBAAmB,IAAI,EAAE;AAAA,EACpC,UAAE;AACE,SAAK,gCAAgC,EAAE;AACvC,SAAK,oBAAoB,aAAa,aAAa,CAAC;AAAA,EACxD;AACJ;AAYO,SAAS,kBAAkB,OAAO,QAAQ,UAAU;AACvD,MAAI;AACJ,MAAI;AACJ,MAAI;AACA,UAAM,SAAS,KAAK,gCAAgC,GAAG;AACvD,UAAM,OAAO,kBAAkB,OAAO,KAAK,qBAAqB,KAAK,mBAAmB;AACxF,UAAM,OAAO;AACb,UAAM,OAAO,kBAAkB,QAAQ,KAAK,qBAAqB,KAAK,mBAAmB;AACzF,UAAM,OAAO;AACb,UAAM,OAAO,kBAAkB,UAAU,KAAK,qBAAqB,KAAK,mBAAmB;AAC3F,UAAM,OAAO;AACb,SAAK,kBAAkB,QAAQ,MAAM,MAAM,MAAM,MAAM,MAAM,IAAI;AACjE,QAAI,KAAK,mBAAmB,EAAE,SAAS,SAAS,IAAI,GAAG,IAAI;AAC3D,QAAI,KAAK,mBAAmB,EAAE,SAAS,SAAS,IAAI,GAAG,IAAI;AAC3D,kBAAc;AACd,kBAAc;AACd,WAAO,mBAAmB,IAAI,EAAE;AAAA,EACpC,UAAE;AACE,SAAK,gCAAgC,EAAE;AACvC,SAAK,oBAAoB,aAAa,aAAa,CAAC;AAAA,EACxD;AACJ;AAYO,SAAS,MAAM,OAAO,MAAM;AAC/B,MAAI;AACJ,MAAI;AACJ,MAAI;AACA,UAAM,SAAS,KAAK,gCAAgC,GAAG;AACvD,UAAM,OAAO,kBAAkB,OAAO,KAAK,qBAAqB,KAAK,mBAAmB;AACxF,UAAM,OAAO;AACb,UAAM,OAAO,kBAAkB,MAAM,KAAK,qBAAqB,KAAK,mBAAmB;AACvF,UAAM,OAAO;AACb,SAAK,MAAM,QAAQ,MAAM,MAAM,MAAM,IAAI;AACzC,QAAI,KAAK,mBAAmB,EAAE,SAAS,SAAS,IAAI,GAAG,IAAI;AAC3D,QAAI,KAAK,mBAAmB,EAAE,SAAS,SAAS,IAAI,GAAG,IAAI;AAC3D,kBAAc;AACd,kBAAc;AACd,WAAO,mBAAmB,IAAI,EAAE;AAAA,EACpC,UAAE;AACE,SAAK,gCAAgC,EAAE;AACvC,SAAK,oBAAoB,aAAa,aAAa,CAAC;AAAA,EACxD;AACJ;AAEA,eAAe,WAAWC,SAAQ,SAAS;AACvC,MAAI,OAAO,aAAa,cAAcA,mBAAkB,UAAU;AAC9D,QAAI,OAAO,YAAY,yBAAyB,YAAY;AACxD,UAAI;AACA,eAAO,MAAM,YAAY,qBAAqBA,SAAQ,OAAO;AAAA,MAEjE,SAAS,GAAG;AACR,YAAIA,QAAO,QAAQ,IAAI,cAAc,KAAK,oBAAoB;AAC1D,kBAAQ,KAAK,qMAAqM,CAAC;AAAA,QAEvN,OAAO;AACH,gBAAM;AAAA,QACV;AAAA,MACJ;AAAA,IACJ;AAEA,UAAM,QAAQ,MAAMA,QAAO,YAAY;AACvC,WAAO,MAAM,YAAY,YAAY,OAAO,OAAO;AAAA,EAEvD,OAAO;AACH,UAAM,WAAW,MAAM,YAAY,YAAYA,SAAQ,OAAO;AAE9D,QAAI,oBAAoB,YAAY,UAAU;AAC1C,aAAO,EAAE,UAAU,QAAAA,QAAO;AAAA,IAE9B,OAAO;AACH,aAAO;AAAA,IACX;AAAA,EACJ;AACJ;AAEA,SAAS,oBAAoB;AACzB,QAAM,UAAU,CAAC;AACjB,UAAQ,MAAM,CAAC;AAEf,SAAO;AACX;AAEA,SAAS,kBAAkB,SAAS,QAAQ;AAE5C;AAEA,SAAS,oBAAoB,UAAUA,SAAQ;AAC3C,SAAO,SAAS;AAChB,aAAW,yBAAyBA;AACpC,0BAAwB;AACxB,4BAA0B;AAI1B,SAAO;AACX;AAEA,SAAS,SAASA,SAAQ;AACtB,MAAI,SAAS,OAAW,QAAO;AAG/B,MAAI,OAAOA,YAAW,aAAa;AAC/B,QAAI,OAAO,eAAeA,OAAM,MAAM,OAAO,WAAW;AACpD,OAAC,EAAC,QAAAA,QAAM,IAAIA;AAAA,IAChB,OAAO;AACH,cAAQ,KAAK,4EAA4E;AAAA,IAC7F;AAAA,EACJ;AAEA,QAAM,UAAU,kBAAkB;AAElC,oBAAkB,OAAO;AAEzB,MAAI,EAAEA,mBAAkB,YAAY,SAAS;AACzC,IAAAA,UAAS,IAAI,YAAY,OAAOA,OAAM;AAAA,EAC1C;AAEA,QAAM,WAAW,IAAI,YAAY,SAASA,SAAQ,OAAO;AAEzD,SAAO,oBAAoB,UAAUA,OAAM;AAC/C;AAEA,eAAe,WAAW,gBAAgB;AACtC,MAAI,SAAS,OAAW,QAAO;AAG/B,MAAI,OAAO,mBAAmB,aAAa;AACvC,QAAI,OAAO,eAAe,cAAc,MAAM,OAAO,WAAW;AAC5D,OAAC,EAAC,eAAc,IAAI;AAAA,IACxB,OAAO;AACH,cAAQ,KAAK,2FAA2F;AAAA,IAC5G;AAAA,EACJ;AAEA,MAAI,OAAO,mBAAmB,aAAa;AACvC,qBAAiB,IAAI,IAAI,wBAAwB,aAAe;AAAA,EACpE;AACA,QAAM,UAAU,kBAAkB;AAElC,MAAI,OAAO,mBAAmB,YAAa,OAAO,YAAY,cAAc,0BAA0B,WAAa,OAAO,QAAQ,cAAc,0BAA0B,KAAM;AAC5K,qBAAiB,MAAM,cAAc;AAAA,EACzC;AAEA,oBAAkB,OAAO;AAEzB,QAAM,EAAE,UAAU,QAAAA,QAAO,IAAI,MAAM,WAAW,MAAM,gBAAgB,OAAO;AAE3E,SAAO,oBAAoB,UAAUA,OAAM;AAC/C;AAGA,IAAO,uBAAQ;;;AC1YR,IAAM,eAAe;AAAA,EAC1B,QAAQ;AAAA,EACR,WAAW;AAAA,EACX,UAAU;AAAA,EACV,WAAW;AAAA,EACX,eAAe;AACjB;;;AHOO,SAAS,UAAkB;AAChC,SAAO,aAAa;AACtB;AASO,SAASC,KAAI,OAAe,UAAsB,CAAC,GAAW;AACnE,SAAY,IAAI,OAAO,QAAQ,SAAS,KAAK;AAC/C;AAWO,SAASC,OAAM,OAAe,UAAwB,CAAC,GAAW;AACvE,SAAY,MAAM,OAAO,QAAQ,QAAQ,WAAW;AACtD;AAUO,SAASC,SAAQ,OAAe,UAA0B,CAAC,GAAW;AAC3E,SAAY,QAAQ,OAAO,QAAQ,QAAQ,aAAa,QAAQ,YAAY,OAAO,QAAQ,aAAa,OAAO,QAAQ,UAAU,OAAO,QAAQ,UAAU,CAAC;AAC7J;AASO,SAAS,eAAe,OAAe,UAA6B,CAAC,GAAW;AACrF,QAAM,SAAS,QAAQ,UAAU;AACjC,QAAM,WAAW,QAAQ,YAAY;AACrC,SAAY,gBAAgB,OAAO,QAAQ,QAAQ;AACrD;AASO,SAAS,iBAAiB,OAAe,UAA6B,CAAC,GAAW;AACvF,QAAM,SAAS,QAAQ,UAAU;AACjC,QAAM,WAAW,QAAQ,YAAY;AACrC,SAAY,kBAAkB,OAAO,QAAQ,QAAQ;AACvD;AAQO,SAASC,MAAK,UAAuB,CAAC,GAAW;AACtD,QAAM,WAAW,QAAQ,YAAY;AACrC,QAAM,SAAS,QAAQ,UAAU;AACjC,QAAM,MAAM,QAAQ,OAAO;AAC3B,QAAM,SAAS,QAAQ,UAAU;AACjC,QAAM,SAAS,QAAQ,UAAU;AACjC,SAAY,KAAK,UAAU,QAAQ,KAAK,QAAQ,MAAM;AACxD;","names":["convert","info","lex","parse","ptr","module","lex","parse","convert","info"]}
|