@gmb/bitmark-parser 6.11.0 → 6.11.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/README.md +97 -5
  2. package/dist/browser/bitmark-parser.min.js +4 -4
  3. package/dist/browser/bitmark-parser.min.js.map +1 -1
  4. package/dist/browser/cjs/index.cjs +186 -24
  5. package/dist/browser/cjs/index.cjs.map +1 -1
  6. package/dist/browser/cjs/index.d.cts +146 -7
  7. package/dist/browser/esm/index.d.ts +146 -7
  8. package/dist/browser/esm/index.js +184 -24
  9. package/dist/browser/esm/index.js.map +1 -1
  10. package/dist/browser/esm/worker-entry.js +113 -0
  11. package/dist/browser/esm/worker-entry.js.map +1 -1
  12. package/dist/browser/wasm/bitmark_browser_full_wasm_bg.wasm +0 -0
  13. package/dist/browser/wasm/bitmark_json_wasm_bg.wasm +0 -0
  14. package/dist/browser/wasm/bitmark_wasm_bg.wasm +0 -0
  15. package/dist/index.cjs +73 -24
  16. package/dist/index.cjs.map +1 -1
  17. package/dist/index.d.cts +146 -7
  18. package/dist/index.d.ts +146 -7
  19. package/dist/index.js +71 -24
  20. package/dist/index.js.map +1 -1
  21. package/dist/legacy.cjs +1 -1
  22. package/dist/legacy.cjs.map +1 -1
  23. package/dist/legacy.js +1 -1
  24. package/dist/legacy.js.map +1 -1
  25. package/dist/worker-entry.cjs.map +1 -1
  26. package/package.json +7 -7
  27. package/schema/bitmark.schema.json +1 -1
  28. package/wasm/bitmark_wasm.d.ts +23 -0
  29. package/wasm/bitmark_wasm.js +80 -0
  30. package/wasm/bitmark_wasm_bg.wasm +0 -0
  31. package/wasm/bitmark_wasm_bg.wasm.d.ts +2 -0
  32. package/wasm/package.json +1 -1
  33. package/wasm-bitmark-json/bitmark_json_wasm.d.ts +9 -0
  34. package/wasm-bitmark-json/bitmark_json_wasm.js +32 -0
  35. package/wasm-bitmark-json/bitmark_json_wasm_bg.wasm +0 -0
  36. package/wasm-bitmark-json/bitmark_json_wasm_bg.wasm.d.ts +1 -0
  37. package/wasm-bitmark-json/package.json +1 -1
  38. package/wasm-browser-full/bitmark_browser_full_wasm.d.ts +23 -0
  39. package/wasm-browser-full/bitmark_browser_full_wasm.js +80 -0
  40. package/wasm-browser-full/bitmark_browser_full_wasm_bg.wasm +0 -0
  41. package/wasm-browser-full/bitmark_browser_full_wasm_bg.wasm.d.ts +2 -0
  42. package/wasm-browser-full/package.json +1 -1
package/README.md CHANGED
@@ -62,9 +62,9 @@ runtime — the API surface never changes:
62
62
 
63
63
  | Feature | Contents | Size (approx.) |
64
64
  | --- | --- | --- |
65
- | `full` (Node default) | everything: rich `info` metadata + built-in translations | ~1003 KB (~390 KB gzip) |
66
- | `browser-full` (browser default) | the same conversions, without either | ~857 KB (~341 KB gzip) |
67
- | `bitmark-json` | bitmark ↔ JSON only: `convert`/`canonicalize`/`transform` (formats `auto`/`bitmark`/`json`, plus the `text` output), `info`, breakscape, text fragments | ~667 KB (~262 KB gzip) |
65
+ | `full` (Node default) | everything: rich `info` metadata + built-in translations + the semantic `diff` | ~1082 KB (~423 KB gzip) |
66
+ | `browser-full` (browser default) | the same conversions and `diff`, without either | ~935 KB (~374 KB gzip) |
67
+ | `bitmark-json` | bitmark ↔ JSON only: `convert`/`canonicalize`/`transform` (formats `auto`/`bitmark`/`json`, plus the `text` output), `info`, breakscape, text fragments — no `diff` | ~705 KB (~277 KB gzip) |
68
68
 
69
69
  Not in `bitmark-json`: the markup formats (`html`, `xml`, `xml-niso-iec`, …)
70
70
  as input or output (they return an `error: … not supported in this build`
@@ -192,7 +192,90 @@ Re-emit input in its own format in canonical form — the single same-format sur
192
192
 
193
193
  #### transform(input: string, options?: TransformOptions): string
194
194
 
195
- Apply path patches to each bit (per-bit transform pipeline; build patches with `patchEntry`). `transformParallel` is the worker-thread variant returning a `Promise<string>`.
195
+ Apply a patch document to a document, bit by bit, and re-emit it.
196
+ `transformParallel` is the worker-thread variant returning a `Promise<string>`.
197
+
198
+ - `patch` — a `PatchDocument`, or the shorthand: a bare array of entries
199
+ applied to every bit (build entries with `patchEntry`). Either form may be
200
+ a JSON string
201
+ - `preHook` / `postHook` — per-bit hooks; the pre-hook may return patches, an
202
+ output-format override or `drop`. Hooks see the original bits, in order,
203
+ before the document reshapes anything; a hook's patches apply after the
204
+ document's
205
+ - `inputFormat`, `outputFormat`, `mode`, `pretty`, `indent`,
206
+ `spacesAroundValues` — as for `convert`
207
+
208
+ A patch document addresses bits by their position (or id) in the input
209
+ **before** any entry is applied, so it reads like a diff:
210
+
211
+ ```json
212
+ {
213
+ "version": 1,
214
+ "entries": [
215
+ { "select": { "index": 3, "id": "mc-014" }, "patch": [{ "path": "title", "op": "set", "value": "New" }] },
216
+ { "select": { "index": 9 }, "remove": true },
217
+ { "insert": { "after": 4 }, "bit": { "type": "article", "body": "Inserted" } },
218
+ { "select": { "index": 7 }, "move": { "after": 12 } },
219
+ { "select": "all", "patch": [{ "lang": "de" }] }
220
+ ]
221
+ }
222
+ ```
223
+
224
+ `after` names an anchor — an input bit that is neither removed nor moved,
225
+ or `-1` for the document start. `diff` produces such a document from two
226
+ versions of a file (below).
227
+
228
+ #### diff(a: string, b: string, options?: DiffOptions): string
229
+
230
+ Semantic diff of two documents. Both sides are re-canonicalized and
231
+ compared as bit JSON, so tag order, spacing, breakscaping and omitted
232
+ defaults are not differences; every real change is rendered as the
233
+ canonical bitmark an author would type. The inputs may be bitmark or JSON,
234
+ and need not share a format.
235
+
236
+ ```
237
+ @@ bit 1 -> 2 (id mc-014) [.multiple-choice] changed
238
+ instruction[0]
239
+ -[!Pick one]
240
+ +[!Pick exactly one]
241
+ quizzes[0]
242
+ ====
243
+ [-Bonn]
244
+ -[-Berlin]
245
+ +[+Berlin]
246
+ @@ bit 4 (id hero) [.image] removed
247
+ -[.image]
248
+ -[@id:hero]
249
+ -[&image:https://example.com/hero.png]
250
+ ```
251
+
252
+ Bits are paired by `id`, then by `sourceBB` on the same `sourceRL`, then by
253
+ exact content, then by text similarity; a bit whose position changed among
254
+ the kept ones is reported `moved`. Empty output means the documents are
255
+ semantically equal.
256
+
257
+ - `outputFormat` — `"bitmark"` (default; the text above), `"json"` (one
258
+ object per aligned bit, see `diffBits`), or `"patch"` (a patch document
259
+ that turns `a` into `b` — feed it to `transform`)
260
+ - `inputFormat` — applies to both sides (default: `"auto"`, sniffed per side)
261
+ - `context` — unchanged lines kept around each change (default: `3`)
262
+ - `locate` — add source line numbers to bit positions (bitmark inputs; default: `false`)
263
+ - `similarity` — pairing threshold for bits with no id, box or exact match, `0..1` (default: `0.6`; `1` disables)
264
+ - `bboxTolerance` — pixels per coordinate for the `sourceBB` stage (default: `8`)
265
+ - `spacesAroundValues` — in the rendered bitmark lines (default: `0`)
266
+
267
+ The text layout and the JSON shape are stable contracts. An unknown
268
+ property is shown as a JSON line, since the generator cannot render it, and
269
+ cannot be re-applied. Not available on the `bitmark-json` variant
270
+ (`UnsupportedFeatureError`).
271
+
272
+ #### diffBits(a: string, b: string, options?: DiffOptions): BitDiff[]
273
+
274
+ The typed form of `diff`: one `BitDiff` per aligned bit, unchanged ones
275
+ included so the alignment is complete — `status`
276
+ (`unchanged | changed | moved | removed | added`), the `a`/`b` positions,
277
+ `ops` (a patch turning the A bit into the B bit) and `revert`, the parser
278
+ issue codes gained or lost, and the rendered `hunks`.
196
279
 
197
280
  #### countBits(input: string): number / splitBits(input: string): BitSlice[]
198
281
 
@@ -548,9 +631,18 @@ bitmark convert standard.xml --input-format xml-niso-iec --output-format bitmark
548
631
  bitmark canonicalize input.bitmark
549
632
  bitmark canonicalize input.json --mode full
550
633
 
551
- # Apply path patches to each bit
634
+ # Apply a patch document (per-bit patches by index/id, remove, insert, move;
635
+ # a bare array of entries still patches every bit)
552
636
  bitmark transform input.json --patch patches.json # alias: patch
553
637
 
638
+ # Semantic diff of two documents, rendered as bitmark
639
+ bitmark diff old.bitmark new.bitmark # unified-style text
640
+ bitmark diff old.bitmark new.bitmark --stat --exit-code # counts; exit 1 when they differ
641
+ bitmark diff old.bitmark new.json --output-format json # per-bit ops, revert, hunks
642
+ bitmark diff old.bitmark new.bitmark --output-format patch > d.patch
643
+ bitmark transform old.bitmark --patch d.patch --output-format bitmark # reproduces new
644
+ # --context N, --locate, --similarity F, --bbox-tolerance N, --color auto|always|never
645
+
554
646
  # Dump the lexer token stream
555
647
  bitmark lex input.bitmark
556
648
 
@@ -1,5 +1,5 @@
1
- var Ye=Object.defineProperty;var zt=(e,t,r)=>t in e?Ye(e,t,{enumerable:true,configurable:true,writable:true,value:r}):e[t]=r;var _e=(e,t)=>{for(var r in t)Ye(e,r,{get:t[r],enumerable:true});};var C=(e,t,r)=>zt(e,typeof t!="symbol"?t+"":t,r);var Ae={};_e(Ae,{breakscape_text:()=>qt,canonicalize:()=>nn,convert:()=>tn,convert_text:()=>Qt,count_bits:()=>rn,default:()=>Se,info:()=>Xt,initSync:()=>Be,is_bitmark:()=>sn,lex:()=>Kt,prettify:()=>pn,register:()=>en,split_bits:()=>on,split_json_bits:()=>an,transform:()=>Zt,unbreakscape_text:()=>Yt});var p,k=0,ie=null;function de(){return (ie===null||ie.byteLength===0)&&(ie=new Uint8Array(p.memory.buffer)),ie}var le=typeof TextEncoder<"u"?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}},$t=typeof le.encodeInto=="function"?function(e,t){return le.encodeInto(e,t)}:function(e,t){let r=le.encode(e);return t.set(r),{read:e.length,written:r.length}};function T(e,t,r){if(r===void 0){let a=le.encode(e),u=t(a.length,1)>>>0;return de().subarray(u,u+a.length).set(a),k=a.length,u}let n=e.length,o=t(n,1)>>>0,s=de(),i=0;for(;i<n;i++){let a=e.charCodeAt(i);if(a>127)break;s[o+i]=a;}if(i!==n){i!==0&&(e=e.slice(i)),o=r(o,n,n=i+e.length*3,1)>>>0;let a=de().subarray(o+i,o+n),u=$t(e,a);i+=u.written,o=r(o,n,i,1)>>>0;}return k=i,o}var q=null;function R(){return (q===null||q.buffer.detached===true||q.buffer.detached===void 0&&q.buffer!==p.memory.buffer)&&(q=new DataView(p.memory.buffer)),q}var Xe=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:true,fatal:true}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&Xe.decode();function U(e,t){return e=e>>>0,Xe.decode(de().subarray(e,e+t))}function Kt(e,t){let r,n;try{let i=p.__wbindgen_add_to_stack_pointer(-16),a=T(e,p.__wbindgen_export_0,p.__wbindgen_export_1),u=k,d=T(t,p.__wbindgen_export_0,p.__wbindgen_export_1),l=k;p.lex(i,a,u,d,l);var o=R().getInt32(i+0,!0),s=R().getInt32(i+4,!0);return r=o,n=s,U(o,s)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(r,n,1);}}function qt(e,t,r){let n,o;try{let a=p.__wbindgen_add_to_stack_pointer(-16),u=T(e,p.__wbindgen_export_0,p.__wbindgen_export_1),d=k,l=T(t,p.__wbindgen_export_0,p.__wbindgen_export_1),g=k,f=T(r,p.__wbindgen_export_0,p.__wbindgen_export_1),m=k;p.breakscape_text(a,u,d,l,g,f,m);var s=R().getInt32(a+0,!0),i=R().getInt32(a+4,!0);return n=s,o=i,U(s,i)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(n,o,1);}}function Yt(e,t,r){let n,o;try{let a=p.__wbindgen_add_to_stack_pointer(-16),u=T(e,p.__wbindgen_export_0,p.__wbindgen_export_1),d=k,l=T(t,p.__wbindgen_export_0,p.__wbindgen_export_1),g=k,f=T(r,p.__wbindgen_export_0,p.__wbindgen_export_1),m=k;p.unbreakscape_text(a,u,d,l,g,f,m);var s=R().getInt32(a+0,!0),i=R().getInt32(a+4,!0);return n=s,o=i,U(s,i)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(n,o,1);}}function Xt(e,t,r,n,o,s,i,a,u){let d,l;try{let m=p.__wbindgen_add_to_stack_pointer(-16),w=T(e,p.__wbindgen_export_0,p.__wbindgen_export_1),y=k,b=T(t,p.__wbindgen_export_0,p.__wbindgen_export_1),x=k,O=T(r,p.__wbindgen_export_0,p.__wbindgen_export_1),B=k,A=T(u,p.__wbindgen_export_0,p.__wbindgen_export_1),M=k;p.info(m,w,y,b,x,O,B,n,o,s,i,a,A,M);var g=R().getInt32(m+0,!0),f=R().getInt32(m+4,!0);return d=g,l=f,U(g,f)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(d,l,1);}}function Qt(e,t,r,n){let o,s;try{let u=p.__wbindgen_add_to_stack_pointer(-16),d=T(e,p.__wbindgen_export_0,p.__wbindgen_export_1),l=k,g=T(t,p.__wbindgen_export_0,p.__wbindgen_export_1),f=k,m=T(r,p.__wbindgen_export_0,p.__wbindgen_export_1),w=k,y=T(n,p.__wbindgen_export_0,p.__wbindgen_export_1),b=k;p.convert_text(u,d,l,g,f,m,w,y,b);var i=R().getInt32(u+0,!0),a=R().getInt32(u+4,!0);return o=i,s=a,U(i,a)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(o,s,1);}}function Zt(e,t,r,n,o,s,i,a){let u,d;try{let f=p.__wbindgen_add_to_stack_pointer(-16),m=T(e,p.__wbindgen_export_0,p.__wbindgen_export_1),w=k,y=T(t,p.__wbindgen_export_0,p.__wbindgen_export_1),b=k,x=T(r,p.__wbindgen_export_0,p.__wbindgen_export_1),O=k,B=T(n,p.__wbindgen_export_0,p.__wbindgen_export_1),A=k,M=T(o,p.__wbindgen_export_0,p.__wbindgen_export_1),oe=k;p.transform(f,m,w,y,b,x,O,B,A,M,oe,s,i,a);var l=R().getInt32(f+0,!0),g=R().getInt32(f+4,!0);return u=l,d=g,U(l,g)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(u,d,1);}}function en(e,t){let r,n;try{let i=p.__wbindgen_add_to_stack_pointer(-16),a=T(e,p.__wbindgen_export_0,p.__wbindgen_export_1),u=k,d=T(t,p.__wbindgen_export_0,p.__wbindgen_export_1),l=k;p.register(i,a,u,d,l);var o=R().getInt32(i+0,!0),s=R().getInt32(i+4,!0);return r=o,n=s,U(o,s)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(r,n,1);}}function tn(e,t,r,n,o,s,i,a,u){let d,l;try{let m=p.__wbindgen_add_to_stack_pointer(-16),w=T(e,p.__wbindgen_export_0,p.__wbindgen_export_1),y=k,b=T(t,p.__wbindgen_export_0,p.__wbindgen_export_1),x=k,O=T(r,p.__wbindgen_export_0,p.__wbindgen_export_1),B=k,A=T(n,p.__wbindgen_export_0,p.__wbindgen_export_1),M=k;p.convert(m,w,y,b,x,O,B,A,M,o,s,i,a,u);var g=R().getInt32(m+0,!0),f=R().getInt32(m+4,!0);return d=g,l=f,U(g,f)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(d,l,1);}}function nn(e,t,r,n,o,s){let i,a;try{let l=p.__wbindgen_add_to_stack_pointer(-16),g=T(e,p.__wbindgen_export_0,p.__wbindgen_export_1),f=k,m=T(t,p.__wbindgen_export_0,p.__wbindgen_export_1),w=k,y=T(r,p.__wbindgen_export_0,p.__wbindgen_export_1),b=k;p.canonicalize(l,g,f,m,w,y,b,n,o,s);var u=R().getInt32(l+0,!0),d=R().getInt32(l+4,!0);return i=u,a=d,U(u,d)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(i,a,1);}}function rn(e){let t,r;try{let s=p.__wbindgen_add_to_stack_pointer(-16),i=T(e,p.__wbindgen_export_0,p.__wbindgen_export_1),a=k;p.count_bits(s,i,a);var n=R().getInt32(s+0,!0),o=R().getInt32(s+4,!0);return t=n,r=o,U(n,o)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(t,r,1);}}function on(e){let t,r;try{let s=p.__wbindgen_add_to_stack_pointer(-16),i=T(e,p.__wbindgen_export_0,p.__wbindgen_export_1),a=k;p.split_bits(s,i,a);var n=R().getInt32(s+0,!0),o=R().getInt32(s+4,!0);return t=n,r=o,U(n,o)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(t,r,1);}}function sn(e){let t=T(e,p.__wbindgen_export_0,p.__wbindgen_export_1),r=k;return p.is_bitmark(t,r)!==0}function an(e){let t,r;try{let s=p.__wbindgen_add_to_stack_pointer(-16),i=T(e,p.__wbindgen_export_0,p.__wbindgen_export_1),a=k;p.split_json_bits(s,i,a);var n=R().getInt32(s+0,!0),o=R().getInt32(s+4,!0);return t=n,r=o,U(n,o)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(t,r,1);}}function pn(e,t){let r,n;try{let i=p.__wbindgen_add_to_stack_pointer(-16),a=T(e,p.__wbindgen_export_0,p.__wbindgen_export_1),u=k;p.prettify(i,a,u,t);var o=R().getInt32(i+0,!0),s=R().getInt32(i+4,!0);return r=o,n=s,U(o,s)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(r,n,1);}}async function cn(e,t){if(typeof Response=="function"&&e instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(e,t)}catch(n){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",n);else throw n}let r=await e.arrayBuffer();return await WebAssembly.instantiate(r,t)}else {let r=await WebAssembly.instantiate(e,t);return r instanceof WebAssembly.Instance?{instance:r,module:e}:r}}function Qe(){let e={};return e.wbg={},e}function Ze(e,t){return p=e.exports,et.__wbindgen_wasm_module=t,q=null,ie=null,p}function Be(e){if(p!==void 0)return p;typeof e<"u"&&(Object.getPrototypeOf(e)===Object.prototype?{module:e}=e:console.warn("using deprecated parameters for `initSync()`; pass a single object instead"));let t=Qe();e instanceof WebAssembly.Module||(e=new WebAssembly.Module(e));let r=new WebAssembly.Instance(e,t);return Ze(r,e)}async function et(e){if(p!==void 0)return p;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 t=Qe();(typeof e=="string"||typeof Request=="function"&&e instanceof Request||typeof URL=="function"&&e instanceof URL)&&(e=fetch(e));let{instance:r,module:n}=await cn(await e,t);return Ze(r,n)}var Se=et;var Le={};_e(Le,{breakscape_text:()=>dn,canonicalize:()=>xn,convert:()=>yn,convert_text:()=>fn,count_bits:()=>wn,default:()=>je,info:()=>gn,initSync:()=>Pe,is_bitmark:()=>hn,lex:()=>_n,prettify:()=>Tn,register:()=>bn,split_bits:()=>kn,split_json_bits:()=>On,transform:()=>mn,unbreakscape_text:()=>ln});var c,h=0,se=null;function ge(){return (se===null||se.byteLength===0)&&(se=new Uint8Array(c.memory.buffer)),se}var fe=typeof TextEncoder<"u"?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}},un=typeof fe.encodeInto=="function"?function(e,t){return fe.encodeInto(e,t)}:function(e,t){let r=fe.encode(e);return t.set(r),{read:e.length,written:r.length}};function v(e,t,r){if(r===void 0){let a=fe.encode(e),u=t(a.length,1)>>>0;return ge().subarray(u,u+a.length).set(a),h=a.length,u}let n=e.length,o=t(n,1)>>>0,s=ge(),i=0;for(;i<n;i++){let a=e.charCodeAt(i);if(a>127)break;s[o+i]=a;}if(i!==n){i!==0&&(e=e.slice(i)),o=r(o,n,n=i+e.length*3,1)>>>0;let a=ge().subarray(o+i,o+n),u=un(e,a);i+=u.written,o=r(o,n,i,1)>>>0;}return h=i,o}var Y=null;function E(){return (Y===null||Y.buffer.detached===true||Y.buffer.detached===void 0&&Y.buffer!==c.memory.buffer)&&(Y=new DataView(c.memory.buffer)),Y}var tt=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:true,fatal:true}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&tt.decode();function D(e,t){return e=e>>>0,tt.decode(ge().subarray(e,e+t))}function _n(e,t){let r,n;try{let i=c.__wbindgen_add_to_stack_pointer(-16),a=v(e,c.__wbindgen_export_0,c.__wbindgen_export_1),u=h,d=v(t,c.__wbindgen_export_0,c.__wbindgen_export_1),l=h;c.lex(i,a,u,d,l);var o=E().getInt32(i+0,!0),s=E().getInt32(i+4,!0);return r=o,n=s,D(o,s)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(r,n,1);}}function dn(e,t,r){let n,o;try{let a=c.__wbindgen_add_to_stack_pointer(-16),u=v(e,c.__wbindgen_export_0,c.__wbindgen_export_1),d=h,l=v(t,c.__wbindgen_export_0,c.__wbindgen_export_1),g=h,f=v(r,c.__wbindgen_export_0,c.__wbindgen_export_1),m=h;c.breakscape_text(a,u,d,l,g,f,m);var s=E().getInt32(a+0,!0),i=E().getInt32(a+4,!0);return n=s,o=i,D(s,i)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(n,o,1);}}function ln(e,t,r){let n,o;try{let a=c.__wbindgen_add_to_stack_pointer(-16),u=v(e,c.__wbindgen_export_0,c.__wbindgen_export_1),d=h,l=v(t,c.__wbindgen_export_0,c.__wbindgen_export_1),g=h,f=v(r,c.__wbindgen_export_0,c.__wbindgen_export_1),m=h;c.unbreakscape_text(a,u,d,l,g,f,m);var s=E().getInt32(a+0,!0),i=E().getInt32(a+4,!0);return n=s,o=i,D(s,i)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(n,o,1);}}function gn(e,t,r,n,o,s,i,a,u){let d,l;try{let m=c.__wbindgen_add_to_stack_pointer(-16),w=v(e,c.__wbindgen_export_0,c.__wbindgen_export_1),y=h,b=v(t,c.__wbindgen_export_0,c.__wbindgen_export_1),x=h,O=v(r,c.__wbindgen_export_0,c.__wbindgen_export_1),B=h,A=v(u,c.__wbindgen_export_0,c.__wbindgen_export_1),M=h;c.info(m,w,y,b,x,O,B,n,o,s,i,a,A,M);var g=E().getInt32(m+0,!0),f=E().getInt32(m+4,!0);return d=g,l=f,D(g,f)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(d,l,1);}}function fn(e,t,r,n){let o,s;try{let u=c.__wbindgen_add_to_stack_pointer(-16),d=v(e,c.__wbindgen_export_0,c.__wbindgen_export_1),l=h,g=v(t,c.__wbindgen_export_0,c.__wbindgen_export_1),f=h,m=v(r,c.__wbindgen_export_0,c.__wbindgen_export_1),w=h,y=v(n,c.__wbindgen_export_0,c.__wbindgen_export_1),b=h;c.convert_text(u,d,l,g,f,m,w,y,b);var i=E().getInt32(u+0,!0),a=E().getInt32(u+4,!0);return o=i,s=a,D(i,a)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(o,s,1);}}function mn(e,t,r,n,o,s,i,a){let u,d;try{let f=c.__wbindgen_add_to_stack_pointer(-16),m=v(e,c.__wbindgen_export_0,c.__wbindgen_export_1),w=h,y=v(t,c.__wbindgen_export_0,c.__wbindgen_export_1),b=h,x=v(r,c.__wbindgen_export_0,c.__wbindgen_export_1),O=h,B=v(n,c.__wbindgen_export_0,c.__wbindgen_export_1),A=h,M=v(o,c.__wbindgen_export_0,c.__wbindgen_export_1),oe=h;c.transform(f,m,w,y,b,x,O,B,A,M,oe,s,i,a);var l=E().getInt32(f+0,!0),g=E().getInt32(f+4,!0);return u=l,d=g,D(l,g)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(u,d,1);}}function bn(e,t){let r,n;try{let i=c.__wbindgen_add_to_stack_pointer(-16),a=v(e,c.__wbindgen_export_0,c.__wbindgen_export_1),u=h,d=v(t,c.__wbindgen_export_0,c.__wbindgen_export_1),l=h;c.register(i,a,u,d,l);var o=E().getInt32(i+0,!0),s=E().getInt32(i+4,!0);return r=o,n=s,D(o,s)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(r,n,1);}}function yn(e,t,r,n,o,s,i,a,u){let d,l;try{let m=c.__wbindgen_add_to_stack_pointer(-16),w=v(e,c.__wbindgen_export_0,c.__wbindgen_export_1),y=h,b=v(t,c.__wbindgen_export_0,c.__wbindgen_export_1),x=h,O=v(r,c.__wbindgen_export_0,c.__wbindgen_export_1),B=h,A=v(n,c.__wbindgen_export_0,c.__wbindgen_export_1),M=h;c.convert(m,w,y,b,x,O,B,A,M,o,s,i,a,u);var g=E().getInt32(m+0,!0),f=E().getInt32(m+4,!0);return d=g,l=f,D(g,f)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(d,l,1);}}function xn(e,t,r,n,o,s){let i,a;try{let l=c.__wbindgen_add_to_stack_pointer(-16),g=v(e,c.__wbindgen_export_0,c.__wbindgen_export_1),f=h,m=v(t,c.__wbindgen_export_0,c.__wbindgen_export_1),w=h,y=v(r,c.__wbindgen_export_0,c.__wbindgen_export_1),b=h;c.canonicalize(l,g,f,m,w,y,b,n,o,s);var u=E().getInt32(l+0,!0),d=E().getInt32(l+4,!0);return i=u,a=d,D(u,d)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(i,a,1);}}function wn(e){let t,r;try{let s=c.__wbindgen_add_to_stack_pointer(-16),i=v(e,c.__wbindgen_export_0,c.__wbindgen_export_1),a=h;c.count_bits(s,i,a);var n=E().getInt32(s+0,!0),o=E().getInt32(s+4,!0);return t=n,r=o,D(n,o)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(t,r,1);}}function kn(e){let t,r;try{let s=c.__wbindgen_add_to_stack_pointer(-16),i=v(e,c.__wbindgen_export_0,c.__wbindgen_export_1),a=h;c.split_bits(s,i,a);var n=E().getInt32(s+0,!0),o=E().getInt32(s+4,!0);return t=n,r=o,D(n,o)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(t,r,1);}}function hn(e){let t=v(e,c.__wbindgen_export_0,c.__wbindgen_export_1),r=h;return c.is_bitmark(t,r)!==0}function On(e){let t,r;try{let s=c.__wbindgen_add_to_stack_pointer(-16),i=v(e,c.__wbindgen_export_0,c.__wbindgen_export_1),a=h;c.split_json_bits(s,i,a);var n=E().getInt32(s+0,!0),o=E().getInt32(s+4,!0);return t=n,r=o,D(n,o)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(t,r,1);}}function Tn(e,t){let r,n;try{let i=c.__wbindgen_add_to_stack_pointer(-16),a=v(e,c.__wbindgen_export_0,c.__wbindgen_export_1),u=h;c.prettify(i,a,u,t);var o=E().getInt32(i+0,!0),s=E().getInt32(i+4,!0);return r=o,n=s,D(o,s)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(r,n,1);}}async function vn(e,t){if(typeof Response=="function"&&e instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(e,t)}catch(n){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",n);else throw n}let r=await e.arrayBuffer();return await WebAssembly.instantiate(r,t)}else {let r=await WebAssembly.instantiate(e,t);return r instanceof WebAssembly.Instance?{instance:r,module:e}:r}}function nt(){let e={};return e.wbg={},e}function rt(e,t){return c=e.exports,ot.__wbindgen_wasm_module=t,Y=null,se=null,c}function Pe(e){if(c!==void 0)return c;typeof e<"u"&&(Object.getPrototypeOf(e)===Object.prototype?{module:e}=e:console.warn("using deprecated parameters for `initSync()`; pass a single object instead"));let t=nt();e instanceof WebAssembly.Module||(e=new WebAssembly.Module(e));let r=new WebAssembly.Instance(e,t);return rt(r,e)}async function ot(e){if(c!==void 0)return c;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_browser_full_wasm_bg.wasm",import.meta.url));let t=nt();(typeof e=="string"||typeof Request=="function"&&e instanceof Request||typeof URL=="function"&&e instanceof URL)&&(e=fetch(e));let{instance:r,module:n}=await vn(await e,t);return rt(r,n)}var je=ot;var Je={};_e(Je,{breakscape_text:()=>In,canonicalize:()=>Pn,convert:()=>An,convert_text:()=>Mn,count_bits:()=>jn,default:()=>Ce,info:()=>En,initSync:()=>We,is_bitmark:()=>Wn,prettify:()=>Jn,register:()=>Bn,split_bits:()=>Ln,split_json_bits:()=>Cn,transform:()=>Sn,unbreakscape_text:()=>Rn});var _,F=0,ae=null;function me(){return (ae===null||ae.byteLength===0)&&(ae=new Uint8Array(_.memory.buffer)),ae}var be=typeof TextEncoder<"u"?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}},Fn=typeof be.encodeInto=="function"?function(e,t){return be.encodeInto(e,t)}:function(e,t){let r=be.encode(e);return t.set(r),{read:e.length,written:r.length}};function I(e,t,r){if(r===void 0){let a=be.encode(e),u=t(a.length,1)>>>0;return me().subarray(u,u+a.length).set(a),F=a.length,u}let n=e.length,o=t(n,1)>>>0,s=me(),i=0;for(;i<n;i++){let a=e.charCodeAt(i);if(a>127)break;s[o+i]=a;}if(i!==n){i!==0&&(e=e.slice(i)),o=r(o,n,n=i+e.length*3,1)>>>0;let a=me().subarray(o+i,o+n),u=Fn(e,a);i+=u.written,o=r(o,n,i,1)>>>0;}return F=i,o}var X=null;function S(){return (X===null||X.buffer.detached===true||X.buffer.detached===void 0&&X.buffer!==_.memory.buffer)&&(X=new DataView(_.memory.buffer)),X}var it=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:true,fatal:true}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&it.decode();function H(e,t){return e=e>>>0,it.decode(me().subarray(e,e+t))}function In(e,t,r){let n,o;try{let a=_.__wbindgen_add_to_stack_pointer(-16),u=I(e,_.__wbindgen_export_0,_.__wbindgen_export_1),d=F,l=I(t,_.__wbindgen_export_0,_.__wbindgen_export_1),g=F,f=I(r,_.__wbindgen_export_0,_.__wbindgen_export_1),m=F;_.breakscape_text(a,u,d,l,g,f,m);var s=S().getInt32(a+0,!0),i=S().getInt32(a+4,!0);return n=s,o=i,H(s,i)}finally{_.__wbindgen_add_to_stack_pointer(16),_.__wbindgen_export_2(n,o,1);}}function Rn(e,t,r){let n,o;try{let a=_.__wbindgen_add_to_stack_pointer(-16),u=I(e,_.__wbindgen_export_0,_.__wbindgen_export_1),d=F,l=I(t,_.__wbindgen_export_0,_.__wbindgen_export_1),g=F,f=I(r,_.__wbindgen_export_0,_.__wbindgen_export_1),m=F;_.unbreakscape_text(a,u,d,l,g,f,m);var s=S().getInt32(a+0,!0),i=S().getInt32(a+4,!0);return n=s,o=i,H(s,i)}finally{_.__wbindgen_add_to_stack_pointer(16),_.__wbindgen_export_2(n,o,1);}}function En(e,t,r,n,o,s,i,a,u){let d,l;try{let m=_.__wbindgen_add_to_stack_pointer(-16),w=I(e,_.__wbindgen_export_0,_.__wbindgen_export_1),y=F,b=I(t,_.__wbindgen_export_0,_.__wbindgen_export_1),x=F,O=I(r,_.__wbindgen_export_0,_.__wbindgen_export_1),B=F,A=I(u,_.__wbindgen_export_0,_.__wbindgen_export_1),M=F;_.info(m,w,y,b,x,O,B,n,o,s,i,a,A,M);var g=S().getInt32(m+0,!0),f=S().getInt32(m+4,!0);return d=g,l=f,H(g,f)}finally{_.__wbindgen_add_to_stack_pointer(16),_.__wbindgen_export_2(d,l,1);}}function Bn(e,t){let r,n;try{let i=_.__wbindgen_add_to_stack_pointer(-16),a=I(e,_.__wbindgen_export_0,_.__wbindgen_export_1),u=F,d=I(t,_.__wbindgen_export_0,_.__wbindgen_export_1),l=F;_.register(i,a,u,d,l);var o=S().getInt32(i+0,!0),s=S().getInt32(i+4,!0);return r=o,n=s,H(o,s)}finally{_.__wbindgen_add_to_stack_pointer(16),_.__wbindgen_export_2(r,n,1);}}function Sn(e,t,r,n,o,s,i,a){let u,d;try{let f=_.__wbindgen_add_to_stack_pointer(-16),m=I(e,_.__wbindgen_export_0,_.__wbindgen_export_1),w=F,y=I(t,_.__wbindgen_export_0,_.__wbindgen_export_1),b=F,x=I(r,_.__wbindgen_export_0,_.__wbindgen_export_1),O=F,B=I(n,_.__wbindgen_export_0,_.__wbindgen_export_1),A=F,M=I(o,_.__wbindgen_export_0,_.__wbindgen_export_1),oe=F;_.transform(f,m,w,y,b,x,O,B,A,M,oe,s,i,a);var l=S().getInt32(f+0,!0),g=S().getInt32(f+4,!0);return u=l,d=g,H(l,g)}finally{_.__wbindgen_add_to_stack_pointer(16),_.__wbindgen_export_2(u,d,1);}}function An(e,t,r,n,o,s,i,a,u){let d,l;try{let m=_.__wbindgen_add_to_stack_pointer(-16),w=I(e,_.__wbindgen_export_0,_.__wbindgen_export_1),y=F,b=I(t,_.__wbindgen_export_0,_.__wbindgen_export_1),x=F,O=I(r,_.__wbindgen_export_0,_.__wbindgen_export_1),B=F,A=I(n,_.__wbindgen_export_0,_.__wbindgen_export_1),M=F;_.convert(m,w,y,b,x,O,B,A,M,o,s,i,a,u);var g=S().getInt32(m+0,!0),f=S().getInt32(m+4,!0);return d=g,l=f,H(g,f)}finally{_.__wbindgen_add_to_stack_pointer(16),_.__wbindgen_export_2(d,l,1);}}function Pn(e,t,r,n,o,s){let i,a;try{let l=_.__wbindgen_add_to_stack_pointer(-16),g=I(e,_.__wbindgen_export_0,_.__wbindgen_export_1),f=F,m=I(t,_.__wbindgen_export_0,_.__wbindgen_export_1),w=F,y=I(r,_.__wbindgen_export_0,_.__wbindgen_export_1),b=F;_.canonicalize(l,g,f,m,w,y,b,n,o,s);var u=S().getInt32(l+0,!0),d=S().getInt32(l+4,!0);return i=u,a=d,H(u,d)}finally{_.__wbindgen_add_to_stack_pointer(16),_.__wbindgen_export_2(i,a,1);}}function jn(e){let t,r;try{let s=_.__wbindgen_add_to_stack_pointer(-16),i=I(e,_.__wbindgen_export_0,_.__wbindgen_export_1),a=F;_.count_bits(s,i,a);var n=S().getInt32(s+0,!0),o=S().getInt32(s+4,!0);return t=n,r=o,H(n,o)}finally{_.__wbindgen_add_to_stack_pointer(16),_.__wbindgen_export_2(t,r,1);}}function Ln(e){let t,r;try{let s=_.__wbindgen_add_to_stack_pointer(-16),i=I(e,_.__wbindgen_export_0,_.__wbindgen_export_1),a=F;_.split_bits(s,i,a);var n=S().getInt32(s+0,!0),o=S().getInt32(s+4,!0);return t=n,r=o,H(n,o)}finally{_.__wbindgen_add_to_stack_pointer(16),_.__wbindgen_export_2(t,r,1);}}function Wn(e){let t=I(e,_.__wbindgen_export_0,_.__wbindgen_export_1),r=F;return _.is_bitmark(t,r)!==0}function Cn(e){let t,r;try{let s=_.__wbindgen_add_to_stack_pointer(-16),i=I(e,_.__wbindgen_export_0,_.__wbindgen_export_1),a=F;_.split_json_bits(s,i,a);var n=S().getInt32(s+0,!0),o=S().getInt32(s+4,!0);return t=n,r=o,H(n,o)}finally{_.__wbindgen_add_to_stack_pointer(16),_.__wbindgen_export_2(t,r,1);}}function Jn(e,t){let r,n;try{let i=_.__wbindgen_add_to_stack_pointer(-16),a=I(e,_.__wbindgen_export_0,_.__wbindgen_export_1),u=F;_.prettify(i,a,u,t);var o=S().getInt32(i+0,!0),s=S().getInt32(i+4,!0);return r=o,n=s,H(o,s)}finally{_.__wbindgen_add_to_stack_pointer(16),_.__wbindgen_export_2(r,n,1);}}function Mn(e,t,r,n){let o,s;try{let u=_.__wbindgen_add_to_stack_pointer(-16),d=I(e,_.__wbindgen_export_0,_.__wbindgen_export_1),l=F,g=I(t,_.__wbindgen_export_0,_.__wbindgen_export_1),f=F,m=I(r,_.__wbindgen_export_0,_.__wbindgen_export_1),w=F,y=I(n,_.__wbindgen_export_0,_.__wbindgen_export_1),b=F;_.convert_text(u,d,l,g,f,m,w,y,b);var i=S().getInt32(u+0,!0),a=S().getInt32(u+4,!0);return o=i,s=a,H(i,a)}finally{_.__wbindgen_add_to_stack_pointer(16),_.__wbindgen_export_2(o,s,1);}}async function Vn(e,t){if(typeof Response=="function"&&e instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(e,t)}catch(n){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",n);else throw n}let r=await e.arrayBuffer();return await WebAssembly.instantiate(r,t)}else {let r=await WebAssembly.instantiate(e,t);return r instanceof WebAssembly.Instance?{instance:r,module:e}:r}}function st(){let e={};return e.wbg={},e}function at(e,t){return _=e.exports,pt.__wbindgen_wasm_module=t,X=null,ae=null,_}function We(e){if(_!==void 0)return _;typeof e<"u"&&(Object.getPrototypeOf(e)===Object.prototype?{module:e}=e:console.warn("using deprecated parameters for `initSync()`; pass a single object instead"));let t=st();e instanceof WebAssembly.Module||(e=new WebAssembly.Module(e));let r=new WebAssembly.Instance(e,t);return at(r,e)}async function pt(e){if(_!==void 0)return _;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_json_wasm_bg.wasm",import.meta.url));let t=st();(typeof e=="string"||typeof Request=="function"&&e instanceof Request||typeof URL=="function"&&e instanceof URL)&&(e=fetch(e));let{instance:r,module:n}=await Vn(await e,t);return at(r,n)}var Ce=pt;var pe={version:"6.11.0"};var Me="browser-full",xe=class extends Error{constructor(){super("wasm not initialised: call init() (or init({ feature: \u2026 })) first"),this.name="NotInitializedError";}},Z=class extends Error{constructor(t){super(t),this.name="RegisterError";}},ce=class extends Error{constructor(t,r){super(`${t} is not available in the loaded wasm module${r?` (feature: "${r}")`:""}; init({ feature: "full" }) to load it`),this.name="UnsupportedFeatureError";}},ye,ut,ct,_t=new Map;function V(){if(!ye&&ct&&ct(),!ye)throw new xe;return ye}function Ve(e,t){for(let[r,n]of _t){let o=t.register(r,n);if(o)throw new Z(o.replace(/^error:\s*/,""))}ye=t,ut=e;}function dt(e,t){_t.set(e,t);}function ee(){return ut}function te(e){return e.startsWith("error:")}function we(e){let t=e instanceof Error?e.message:String(e);return t.startsWith("error:")?t:`error: ${t}`}function Nn(e){let t=e.trim();return t.startsWith("[")&&t.endsWith("]")?t.slice(1,-1):e}function Un(e){if(e===void 0)return [];if(typeof e=="string"){let t=e.trim();return t===""?[]:JSON.parse(t)}return e}function Dn(e,t,r){if(r){let s=e.split_bits(t);if(te(s))throw new Error(s);let i=JSON.parse(s);return i.map(a=>({view:{format:"bitmark",index:a.index,total:i.length,source:a.source},source:a.source}))}let n=e.split_json_bits(t);if(te(n))throw new Error(n);let o=JSON.parse(n);return o.map((s,i)=>({view:{format:"json",index:i,total:o.length,bit:s.bit??{}},source:JSON.stringify([s])}))}function Ne(e,t,r){let n=r.mode??"optimized",o=r.outputFormat??"json",s=r.spacesAroundValues??1,i=r.indent??2,a=r.pretty??false,u=r.inputFormat??"auto",d=u==="bitmark"||u!=="json"&&e.is_bitmark(t),l=d?"bitmark":"json",g=Un(r.patch),f=Dn(e,t,d),m=f.length,w=[],y=[];for(let b=0;b<m;b++){let{view:x,source:O}=f[b];x.index=b,x.total=m;let B=r.preHook?r.preHook(x)||{}:{};if(B.drop)continue;let A=B.patches?[...g,...B.patches]:g;w.push({index:b,source:O,inputFormat:l,outputFormat:B.outputFormat??o,mode:n,patchJson:JSON.stringify(A),spacesAroundValues:s}),y.push(x);}return {jobs:w,views:y,output:o,pretty:a,indent:i}}function Gn(e,t){let r=e.transform(t.source,t.inputFormat,t.outputFormat,t.mode,t.patchJson,false,2,t.spacesAroundValues);return te(r)?r:t.outputFormat==="json"?Nn(r):r}function Ue(e,t,r,n,o){if(r==="bitmark"||r==="text")return t.join(`
2
- `);let s=`[${t.join(",")}]`;return n?e.prettify(s,o):s}function lt(e,t,r){let n;try{n=Ne(e,t,r);}catch(s){return we(s)}let o=[];for(let s=0;s<n.jobs.length;s++){let i=Gn(e,n.jobs[s]);if(te(i))return i;r.postHook?.(n.views[s],i),o.push(i);}return Ue(e,o,n.output,n.pretty,n.indent)}async function gt(e,t,r,n){let o;try{o=Ne(e,t,r);}catch(i){return we(i)}let s;try{s=await n(o.jobs,r.workers??4);}catch(i){return we(i)}for(let i=0;i<s.length;i++){if(te(s[i]))return s[i];r.postHook?.(o.views[i],s[i]);}return Ue(e,s,o.output,o.pretty,o.indent)}var De;function ft(e){De=e;}function L(){if(!De)throw new Error("legacy API not initialised: the WASM module has not been provided (browser consumers must call init() first)");return De()}function mt(e,t,r){if(e.length===0)return Promise.resolve([]);let n=Math.max(1,Math.min(t,e.length)),o=new URL("./worker-entry.js",import.meta.url);return new Promise((s,i)=>{let a=new Array(e.length),u=0,d=0,l=false,g=[],f=()=>{for(let y of g)y.terminate();},m=y=>{l||(l=true,f(),i(y));},w=y=>{if(l||u>=e.length)return;let b=u++;y.postMessage({id:b,job:e[b],feature:r});};for(let y=0;y<n;y++){let b=new Worker(o,{type:"module"});g.push(b),b.onmessage=x=>{let O=x.data;if(!l){if(!O.ok){m(new Error(O.error??"worker job failed"));return}if(a[O.id]=O.element,d++,d===e.length){l=true,f(),s(a);return}w(b);}},b.onerror=x=>m(new Error(x.message||"worker error"));}for(let y of g)w(y);})}var Dt={};_e(Dt,{Ast:()=>Et,BitType:()=>vt,BitmarkFileGenerator:()=>At,BitmarkGenerator:()=>Bt,BitmarkParser:()=>Jt,BitmarkParserGenerator:()=>Ie,BitmarkParserType:()=>tr,BitmarkStringGenerator:()=>St,BitmarkVersion:()=>Zn,BodyTextFormat:()=>or,BoundingBoxIndex:()=>Rt,Builder:()=>Fe,CardSetVersion:()=>er,FileWriter:()=>Nt,HtmlTableGenerator:()=>Wt,HtmlTableParser:()=>Ct,InfoFormat:()=>rr,InfoType:()=>nr,Input:()=>Yn,InputFormat:()=>Qn,JsonFileGenerator:()=>Lt,JsonGenerator:()=>Pt,JsonParser:()=>Mt,JsonStringGenerator:()=>jt,LegacyUnsupportedError:()=>ne,NodeType:()=>It,Output:()=>Xn,ResourceBuilder:()=>Re,StreamWriter:()=>Ut,StringWriter:()=>Vt,TextLocation:()=>ir,TextMarkType:()=>Ot,TextNodeType:()=>Tt,bitmarkTextParse:()=>kt,isPseudoAst:()=>yt});var ne=class extends Error{constructor(t){super(t),this.name="LegacyUnsupportedError";}};function $(e,t){throw new ne(`'${e}' is not supported by the @gmb/bitmark-parser legacy API`+(t?`: ${t}`:""))}function z(e,t){throw new ne(`Option '${e}' is not supported by the @gmb/bitmark-parser legacy API`+(t?`: ${t}`:""))}var Ge="bitmark v2 output is not supported (this parser is bitmark v3 only)";function He(e){e.bitmarkVersion===2&&z("bitmarkVersion: 2",Ge);}function he(e){e.explicitTextFormat&&z("bitmarkOptions.explicitTextFormat"),e.cardSetVersion===1&&z("bitmarkOptions.cardSetVersion: 1",Ge),e.debugGenerationInline&&z("bitmarkOptions.debugGenerationInline"),e.noBreakscaping&&z("bitmarkOptions.noBreakscaping");}function Oe(e){e.textAsPlainText&&z("jsonOptions.textAsPlainText",Ge),e.debugGenerationInline&&z("jsonOptions.debugGenerationInline");}function Q(e){return e===true?{pretty:true,indent:2}:typeof e=="number"&&e>0?{pretty:true,indent:e}:{pretty:false,indent:2}}function Te(e){return e===void 0||e===true?1:e===false?0:Math.max(0,Math.min(10,e))}function ve(e){switch(e){case "text":case "latex":case "json":case "xml":return "plainText";default:return "bitmark++"}}var bt=Symbol.for("@gmb/bitmark-parser/legacy-pseudo-ast");function re(e){let t={bits:e};return Object.defineProperty(t,bt,{value:true,enumerable:false}),t}function yt(e){return e!==null&&typeof e=="object"&&(bt in e||Array.isArray(e.bits))}var xt={"extractor-image":{key:"images",resourceType:"image"},"extractor-image-collapsible":{key:"images",resourceType:"image"},"images-logo-grave":{key:"logos",resourceType:"image"},"prototype-images":{key:"images",resourceType:"image"}};var ze=Symbol.for("@gmb/bitmark-parser/legacy-built-bit-parser"),zn={bitType:"type",textFormat:"format",flashcards:"cards",markConfig:"marks"},$n={"bitmark--":"bitmark++","bitmark+":"bitmark++"},Kn={bitmark:"bitmark++",text:"text",json:"json",latex:"latex",xml:"xml"},qn=["title","subtitle","item","lead","pageNumber","marginNumber","hint","instruction","caption"],Fe=class{buildBitmark(t){let r=re(t.bits??[]);return t.errors!==void 0&&(r.errors=t.errors),r}buildBit(t,r){let n=L(),o={...t},s=o.bitType,i=this.getBitConfig(s),a={};a.type=s,o.isCommented&&(a.type="_comment",a.originalType=s),delete o.bitType,delete o.isCommented;let u=o.textFormat;u!==void 0?(a.format=$n[u]??u,delete o.textFormat):a.format=Kn[i.bodyFormat??""]??"bitmark++",delete o.resourceType;let d=o.body;d!=null&&typeof d=="object"&&"body"in d&&(a.body=d.body,delete o.body),o.example!==void 0?(a.isExample=true,a.example=o.example,delete o.example,delete o.__isDefaultExample):o.__isDefaultExample&&(a.isExample=true,delete o.__isDefaultExample);let l=o.resources;if(l!==void 0&&s!==void 0){let b=Array.isArray(l)?l:[l],x=xt[s];x?a[x.key]=b.filter(O=>O!==null&&typeof O=="object"&&O.type===x.resourceType):b.length>=1&&(a.resource=b[0]),delete o.resources;}let g=o.parser;delete o.parser;let f=o.extraProperties;delete o.extraProperties;for(let[b,x]of Object.entries(o))x!==void 0&&(a[zn[b]??b]=x);if(f)for(let[b,x]of Object.entries(f))b in a||(a[b]=x);this.parseStringTexts(a);let m=n.convert(JSON.stringify([{bit:a}]),"json","json","optimized",false,2,1,false,false);if(m.startsWith("error:"))throw new Error(m.slice(6).trim());let y=JSON.parse(m)[0]?.bit??a;for(let[b,x]of Object.entries(a))b in y||x===false||x===""||x===null||Array.isArray(x)&&x.length===0||(y[b]=x);return g!==void 0&&Object.defineProperty(y,ze,{value:g,enumerable:false}),y}buildHighlight(t,r){if(!r)return;let n={...r},o=n.attrs;return o&&Object.assign(n,o),{type:"highlight",texts:Array.isArray(n.texts)?n.texts.filter(a=>a!=null).map(a=>({text:a.text??"",isCorrect:a.isCorrect??false,isHighlighted:a.isHighlighted??false,...wt(a,["text","isCorrect","isHighlighted"])})):[],prefix:n.prefix??"",postfix:n.postfix??"",...wt(n,["type","texts","prefix","postfix","attrs"]),attrs:{}}}parseStringTexts(t){let r=L(),n=(i,a)=>{if(i==="")return i;let u=r.convert_text(i,"textToAst","bitmark++",a);try{return JSON.parse(u)}catch{return i}},o=t.format,s=o===void 0||o==="bitmark++"||o==="bitmark+";if(typeof t.body=="string")if(o==="json")try{t.body=JSON.parse(t.body);}catch{t.body=null;}else s&&(t.body=n(t.body,"body"));for(let i of qn){let a=t[i];typeof a=="string"&&(t[i]=n(a,"tag"));}}getBitConfig(t){let r=L();if(t!==void 0)try{let n=JSON.parse(r.info("bit","json",t,!1,2,!1,!1,!0,""));if(n.error===void 0)return {bodyFormat:n.body?.format}}catch{}throw new Error(`No config found for bit: ${t}`)}};function wt(e,t){let r={};for(let[n,o]of Object.entries(e))o!==void 0&&!t.includes(n)&&(r[n]=o);return r}var Ie=class{version(){return pe.version}convert(t,r){let n=Object.assign({},r),o=Object.assign({},n.jsonOptions),s=Object.assign({},n.bitmarkOptions);He(n),he(s),Oe(o),this.checkBrowserFileWrite(n.outputFile);let i=L(),{source:a,isBitmark:u}=this.resolveInput(t,n.inputFormat),d=n.outputFormat??(u?"json":"bitmark"),l=d==="ast"?"json":d,{pretty:g,indent:f}=Q(o.prettify),m=l==="bitmark"?Q(s.prettifyJson):{pretty:g,indent:f},w=Te(s.spacesAroundValues),y=!o.excludeUnknownProperties,b=i.convert(a,u?"bitmark":"json",l,"optimized",m.pretty,m.indent,w,y,false);if(this.throwOnError(b),d==="bitmark"||d==="text")return this.deliver(b,n.outputFile,n.fileOptions);if(d==="json")return n.outputFile?this.deliver(b,n.outputFile,n.fileOptions):g||o.stringify?b:JSON.parse(b);let x=re(JSON.parse(b));return n.outputFile?this.deliver(JSON.stringify(x),n.outputFile,n.fileOptions):x}upgrade(t,r){let n=Object.assign({},r),o=Object.assign({},n.jsonOptions),s=Object.assign({},n.bitmarkOptions);He(n),he(s),Oe(o),this.checkBrowserFileWrite(n.outputFile);let i=L(),{source:a,isBitmark:u}=this.resolveInput(t,n.inputFormat),{pretty:d,indent:l}=Q(u?s.prettifyJson:o.prettify),g=Te(s.spacesAroundValues),f=i.canonicalize(a,u?"bitmark":"json","optimized",d,l,g);return this.throwOnError(f),u?this.deliver(f,n.outputFile,n.fileOptions):n.outputFile?this.deliver(f,n.outputFile,n.fileOptions):d||o.stringify?f:JSON.parse(f)}info(t){let r=Object.assign({},t),n=L(),o=r.type??"list",s=r.outputFormat??"text",{pretty:i,indent:a}=Q(r.prettify),u=s==="pojo"?"json":s,d=n.info(o,u,r.bit??"",i,a,false,false,true,"");return this.throwOnError(d),s==="pojo"?JSON.parse(d):d}generateConfig(t){$("BitmarkParserGenerator.generateConfig","bpg-internal development tool");}convertHtmlTable(t,r){let n=Object.assign({},r),o=Object.assign({},n.jsonOptions),s=Object.assign({},n.bitmarkOptions);he(s),Oe(o),n.keepUnknownTags&&z("keepUnknownTags"),n.noBreakscaping&&z("noBreakscaping"),this.checkBrowserFileWrite(n.outputFile);let i=L(),a=typeof t=="string"?this.maybeReadFile(t,void 0):"";if(!(n.inputFormat==="html"||n.inputFormat===void 0&&typeof t=="string"&&/<table[\s>]/iu.test(a))){let{source:O,isBitmark:B}=this.resolveInput(t,void 0),A=i.convert(O,B?"bitmark":"json","html","optimized",false,2,1,false,false);return this.throwOnError(A),this.deliver($e(A).join(`
3
- `),n.outputFile,n.fileOptions)}let d=n.tableFormat==="table"?"table":"table-extended",l=$e(a).map(O=>`<bitmark-bit data-type="${d}" data-format="bitmark++">${O}</bitmark-bit>`).join(""),g=n.outputFormat??"bitmark",{pretty:f,indent:m}=Q(o.prettify),w=Te(s.spacesAroundValues);if(g==="html"){let O=i.convert(l,"html","html","optimized",false,2,1,false,false);return this.throwOnError(O),this.deliver($e(O).join(`
4
- `),n.outputFile,n.fileOptions)}let y=g==="ast"?"json":g,b=i.convert(l,"html",y,"optimized",f,m,w,false,false);if(this.throwOnError(b),g==="bitmark"||g==="text")return this.deliver(b,n.outputFile,n.fileOptions);if(g==="json")return n.outputFile?this.deliver(b,n.outputFile,n.fileOptions):f||o.stringify?b:JSON.parse(b);let x=re(JSON.parse(b));return n.outputFile?this.deliver(JSON.stringify(x),n.outputFile,n.fileOptions):x}createAst(t,r){let n=Object.assign({},r),o=L(),{source:s,isBitmark:i}=this.resolveInput(t,n.inputFormat),a=o.convert(s,i?"bitmark":"json","json","optimized",false,2,1,true,false);return this.throwOnError(a),re(JSON.parse(a))}breakscapeText(t,r){if(!t)return t;let n=Object.assign({},r);this.checkBrowserFileWrite(n.outputFile);let o=L(),s=this.maybeReadFile(t,n.inputFormat),i=o.breakscape_text(s,ve(n.textFormat),n.textLocation??"body");return this.deliver(i,n.outputFile,n.fileOptions)}unbreakscapeText(t,r){if(!t)return t;let n=Object.assign({},r);this.checkBrowserFileWrite(n.outputFile);let o=L(),s=this.maybeReadFile(t,n.inputFormat),i=o.unbreakscape_text(s,ve(n.textFormat),n.textLocation??"body");return this.deliver(i,n.outputFile,n.fileOptions)}convertText(t,r){let n=Object.assign({},r),o=Object.assign({},n.jsonOptions);this.checkBrowserFileWrite(n.outputFile);let s=L(),i=n.textFormat===void 0||ve(n.textFormat)==="bitmark++",a=n.textLocation??"body",u,d;if(typeof t=="string"?(u=this.maybeReadFile(t,n.inputFormat),d=this.parseTextAstString(u)):(u=JSON.stringify(t),d=Array.isArray(t)?t:void 0),d!==void 0){let w=i?s.convert_text(JSON.stringify(d),"astToText","bitmark++",a):s.convert_text(JSON.stringify(d),"astToPlainText","plainText",a);return this.throwOnError(w),this.deliver(w,n.outputFile,n.fileOptions)}let l=s.convert_text(u,"textToAst",i?"bitmark++":"plainText","body");this.throwOnError(l);let{pretty:g,indent:f}=Q(o.prettify),m=g?s.prettify(l,f):l;return n.outputFile?this.deliver(m,n.outputFile,n.fileOptions):g?m:JSON.parse(l)}textAstToPlainText(t,r){let o=L().convert_text(typeof t=="string"?t:JSON.stringify(t),"astToPlainText","bitmark++","body");return this.throwOnError(o),o}extractPlainText(t,r){let n=r?.inputFormat,o=L();if(n==="plainText")return typeof t=="string"?String(t):"";if(n==="bitmarkText"){let u=o.convert_text(String(t),"textToAst","bitmark++","body"),d=o.convert_text(u,"astToPlainText","bitmark++","body");return this.throwOnError(d),d}if(typeof t=="string"&&this.parseTextAstString(t)===void 0&&!o.is_bitmark(t)&&!(()=>{try{return JSON.parse(t),!0}catch{return false}})())return this.extractPlainText(t,{inputFormat:"bitmarkText"});let{source:s,isBitmark:i}=this.resolveInput(t,void 0),a=o.convert(s,i?"bitmark":"json","text","optimized",false,2,1,false,false);return this.throwOnError(a),a}parseTextAstString(t){let r=t.trim();if(r.startsWith("["))try{let n=JSON.parse(r);if(Array.isArray(n)&&n.every(o=>o!==null&&typeof o=="object"&&"type"in o))return n}catch{}}resolveInput(t,r){if(typeof t!="string"){let s=this.jsonEntries(t);return {source:JSON.stringify(s?s.map(i=>this.toWrapperEntry(i)):t),isBitmark:false}}let n=this.maybeReadFile(t,r);if(L().is_bitmark(n))return {source:n,isBitmark:true};try{let s=JSON.parse(n),i=this.jsonEntries(s);if(i)return {source:JSON.stringify(i.map(a=>this.toWrapperEntry(a))),isBitmark:!1}}catch{return {source:n,isBitmark:true}}return {source:n,isBitmark:false}}jsonEntries(t){if(Array.isArray(t))return t;if(t!==null&&typeof t=="object"){let r=t;if(Array.isArray(r.bits))return r.bits;if("bit"in r)return [r];if(typeof r.type=="string")return [{bit:r}]}}toWrapperEntry(t){if(t!==null&&typeof t=="object"&&"bit"in t)return t;let r={bit:t},n=t?.[ze];return n!==void 0&&(r.parser=n),r}maybeReadFile(t,r){if(r==="string")return t;return t;}checkBrowserFileWrite(t){if(t&&true)throw new Error("Cannot write to file in browser environment")}deliver(t,r,n){if(!r)return t;throw new Error("Cannot write to file in browser environment");}throwOnError(t){if(t.startsWith("error:"))throw new Error(t.slice(6).trim())}};function $e(e){let t=[],r=e.toLowerCase(),n=0;for(;;){let o=r.indexOf("<table",n);if(o===-1)break;let s=0,i=o,a=-1;for(;i<e.length;){let u=r.indexOf("<table",i),d=r.indexOf("</table",i);if(d===-1)break;if(u!==-1&&u<d)s++,i=u+6;else {s--;let l=r.indexOf(">",d);if(i=l===-1?e.length:l+1,s===0){a=i;break}}}if(a===-1)break;t.push(e.slice(o,a)),n=a;}return t}function kt(e){let t=L().convert_text(e,"textToAst","bitmark++","body");if(t.startsWith("error:"))throw new Error(t.slice(6).trim());return JSON.parse(t)}var J={imageResource:{type:"image",key:"image",valueField:"src"},imageLinkResource:{type:"image-link",key:"imageLink",valueField:"url"},audioResource:{type:"audio",key:"audio",valueField:"src"},audioEmbedResource:{type:"audio-embed",key:"audioEmbed",valueField:"src"},audioLinkResource:{type:"audio-link",key:"audioLink",valueField:"url"},videoResource:{type:"video",key:"video",valueField:"src"},videoEmbedResource:{type:"video-embed",key:"videoEmbed",valueField:"url"},videoLinkResource:{type:"video-link",key:"videoLink",valueField:"url"},stillImageFilmEmbedResource:{type:"still-image-film-embed",key:"stillImageFilmEmbed",valueField:"url"},stillImageFilmLinkResource:{type:"still-image-film-link",key:"stillImageFilmLink",valueField:"url"},articleResource:{type:"article",key:"article",valueField:"body"},documentResource:{type:"document",key:"document",valueField:"url"},documentEmbedResource:{type:"document-embed",key:"documentEmbed",valueField:"url"},documentLinkResource:{type:"document-link",key:"documentLink",valueField:"url"},documentDownloadResource:{type:"document-download",key:"documentDownload",valueField:"url"},appLinkResource:{type:"app-link",key:"appLink",valueField:"url"},websiteLinkResource:{type:"website-link",key:"websiteLink",valueField:"url"}};function W(e){return (t,r,n)=>{if(!r)return;let{value:o,...s}=r,i={[e.valueField]:o??""};for(let[a,u]of Object.entries(s))u!==void 0&&(i[a]=u);return {type:e.type,[e.key]:i}}}var ht=Object.fromEntries(Object.values(J).map(e=>[e.type,e])),Re=class{constructor(){C(this,"imageResource",W(J.imageResource));C(this,"imageLinkResource",W(J.imageLinkResource));C(this,"audioResource",W(J.audioResource));C(this,"audioEmbedResource",W(J.audioEmbedResource));C(this,"audioLinkResource",W(J.audioLinkResource));C(this,"videoResource",W(J.videoResource));C(this,"videoEmbedResource",W(J.videoEmbedResource));C(this,"videoLinkResource",W(J.videoLinkResource));C(this,"stillImageFilmEmbedResource",W(J.stillImageFilmEmbedResource));C(this,"stillImageFilmLinkResource",W(J.stillImageFilmLinkResource));C(this,"articleResource",W(J.articleResource));C(this,"documentResource",W(J.documentResource));C(this,"documentEmbedResource",W(J.documentEmbedResource));C(this,"documentLinkResource",W(J.documentLinkResource));C(this,"documentDownloadResource",W(J.documentDownloadResource));C(this,"appLinkResource",W(J.appLinkResource));C(this,"websiteLinkResource",W(J.websiteLinkResource));}resourceFromResourceJson(t,r){if(!r)return;let n=!Array.isArray(r),o=n?[r]:r,s=[];for(let i of o){let a=ht[i.type];if(!a)continue;let u=i[a.key]??{},{[a.valueField]:d,...l}=u,g=W(a)(void 0,{value:d,...l});g&&s.push(g);}if(s.length!==0)return n?s[0]:s}resourceFromResourceDataJson(t,r,n){if(!n)return;let o=ht[r];if(!o)return;let s=typeof n=="string"?n:void 0,i=typeof n=="object"?n:{},{url:a,src:u,body:d,...l}=i,g=a??u??d??s;return W(o)(t,{value:g,...l})}};var Yn={string:"string",file:"file"},Xn={bitmark:"bitmark",json:"json",ast:"ast",text:"text"},Qn={bitmark:"bitmark",bitmarkText:"bitmarkText",plainText:"plainText",html:"html"},Zn={v2:2,v3:3},er={v1:1,v2:2},tr={peggy:"peggy"},nr={list:"list",deprecated:"deprecated",all:"all",bit:"bit"},rr={text:"text",json:"json",pojo:"pojo"},or={plainText:"text",latex:"latex",json:"json",xml:"xml",bitmarkPlusPlus:"bitmark++"},ir={tag:"tag",body:"body"};var Ot={bold:"bold",light:"light",italic:"italic",highlight:"highlight",highlightOrange:"highlightOrange",highlightYellow:"highlightYellow",highlightGreen:"highlightGreen",highlightBlue:"highlightBlue",highlightPurple:"highlightPurple",highlightPink:"highlightPink",highlightBrown:"highlightBrown",highlightBlack:"highlightBlack",highlightWhite:"highlightWhite",highlightGray:"highlightGray",strike:"strike",subscript:"subscript",superscript:"superscript",ins:"ins",del:"del",underline:"underline",doubleUnderline:"doubleUnderline",circle:"circle",languageEmRed:"languageEmRed",languageEmOrange:"languageEmOrange",languageEmYellow:"languageEmYellow",languageEmGreen:"languageEmGreen",languageEmBlue:"languageEmBlue",languageEmPurple:"languageEmPurple",languageEmPink:"languageEmPink",languageEmBrown:"languageEmBrown",languageEmBlack:"languageEmBlack",languageEmWhite:"languageEmWhite",languageEmGray:"languageEmGray",languageEm:"languageEm",userUnderline:"userUnderline",userDoubleUnderline:"userDoubleUnderline",userStrike:"userStrike",userCircle:"userCircle",userHighlight:"userHighlight",notranslate:"notranslate",link:"link",ref:"ref",xref:"xref",extref:"extref",footnote:"footnote",footnoteStar:"footnote*",symbol:"symbol",var:"var",code:"code",timer:"timer",duration:"duration",color:"color",colorPicker:"colorPicker",comment:"comment"},Tt={text:"text",hardBreak:"hardBreak",paragraph:"paragraph",heading:"heading",section:"section",noBulletList:"noBulletList",bulletList:"bulletList",orderedList:"orderedList",orderedListRoman:"orderedListRoman",orderedListRomanLower:"orderedListRomanLower",letteredList:"letteredList",letteredListLower:"letteredListLower",taskList:"taskList",listItem:"listItem",taskItem:"taskItem",image:"image",imageInline:"imageInline",codeBlock:"codeBlock",latex:"latex",gap:"gap",select:"select",highlight:"highlight",mark:"mark"};function sr(e){return e.replace(/-([a-z0-9])/gu,(t,r)=>r.toUpperCase())}var Ke;function ue(){if(!Ke){let e=L(),t=JSON.parse(e.info("all","json","",false,2,true,false,false,"")),r={_standard:"_standard"};for(let{name:n}of t)r[sr(n)]=n;Ke=r;}return Ke}var vt=new Proxy({},{get:(e,t)=>typeof t=="string"?ue()[t]:void 0,has:(e,t)=>typeof t=="string"&&t in ue(),ownKeys:()=>Reflect.ownKeys(ue()),getOwnPropertyDescriptor:(e,t)=>typeof t=="string"&&t in ue()?{value:ue()[t],enumerable:true,configurable:true,writable:false}:void 0});function Ft(e,t){return new Proxy({},{get:(r,n)=>n===Symbol.toPrimitive||n==="toString"||n===Symbol.toStringTag?()=>`[unsupported ${e}]`:$(e,t),has:()=>$(e,t),ownKeys:()=>$(e,t)})}var It=Ft("NodeType","it names bpg's internal AST nodes; the legacy AST is bit JSON (see createAst)"),Rt=Ft("BoundingBoxIndex","bpg-internal bounding-box utility");function N(e,t){return class{constructor(){$(e,t);}}}var ar="the legacy AST is bit JSON, not bpg's internal node model; walking it with bpg NodeType names would silently misbehave",G="internal class of bpg's TS implementation",Et=N("Ast",ar),Bt=N("BitmarkGenerator",G),St=N("BitmarkStringGenerator",G),At=N("BitmarkFileGenerator",G),Pt=N("JsonGenerator",G),jt=N("JsonStringGenerator",G),Lt=N("JsonFileGenerator",G),Wt=N("HtmlTableGenerator",G),Ct=N("HtmlTableParser",G),Jt=N("BitmarkParser",G),Mt=N("JsonParser",G),Vt=N("StringWriter",G),Nt=N("FileWriter",G),Ut=N("StreamWriter",G);function pr(e,t,r){return r===void 0?{path:e,op:t}:{path:e,op:t,value:r}}var cr="all";function ur(e,t={}){let r=V();if(typeof r.lex!="function")throw new ce("lex",ee());return r.lex(e,t.stage??"lex")}function _r(e,t={}){let r=V().convert(e,"bitmark","json",t.mode??"optimized",false,2,1,t.includeUnknownProperties??false,false);if(r.startsWith("error:"))throw new Error(r.slice(6).trim());return JSON.parse(r)}function dr(e,t={}){let r=e.map(o=>o!==null&&typeof o=="object"&&"bit"in o&&typeof o.bit=="object"?o:{bit:o}),n=V().convert(JSON.stringify(r),"json","bitmark",t.mode??"optimized",false,2,1,false,false);if(n.startsWith("error:"))throw new Error(n.slice(6).trim());return n}function lr(e,t={}){return V().convert(e,t.inputFormat??"auto",t.outputFormat??"auto",t.mode??"optimized",t.pretty??false,t.indent??2,t.spacesAroundValues??1,t.includeUnknownProperties??false,t.mappingReport??false)}function gr(e,t={}){return V().canonicalize(e,t.inputFormat??"auto",t.mode??"optimized",t.pretty??false,t.indent??2,t.spacesAroundValues??1)}function fr(e){let t=V().count_bits(e);if(t.startsWith("error:"))throw new Error(t);return Number.parseInt(t,10)}function mr(e){return JSON.parse(V().split_bits(e))}function br(e,t={}){let r=V();if(t.preHook||t.postHook)return lt(r,e,t);let n=t.patch===void 0?"":typeof t.patch=="string"?t.patch:JSON.stringify(t.patch);return r.transform(e,t.inputFormat??"auto",t.outputFormat??"json",t.mode??"optimized",n,t.pretty??false,t.indent??2,t.spacesAroundValues??1)}function yr(e,t={}){let r=t.format??"bitmark++",n=t.location??"body";return V().breakscape_text(e,r,n)}function xr(e,t={}){let r=t.format??"bitmark++",n=t.location??"body";return V().unbreakscape_text(e,r,n)}function wr(e={}){let t=e.infoType??"list",r=e.format??"text",n=e.bit??"",o=e.pretty??false,s=e.indent??2,i=e.includeDeprecated??false,a=e.onlyDeprecated??false,u=e.full??false,d=typeof e.language=="string"?e.language:e.language?.join(",")??"";return V().info(t,r,n,o,s,i,a,u,d)}function kr(e){let t=V().register(e.type,e.data);if(t)throw new Z(t.replace(/^error:\s*/,""));dt(e.type,e.data);}var hr="./wasm/",Ht={full:{init:Se,initSync:Be,ns:Ae,wasmFile:"bitmark_wasm_bg.wasm"},"browser-full":{init:je,initSync:Pe,ns:Le,wasmFile:"bitmark_browser_full_wasm_bg.wasm"},"bitmark-json":{init:Ce,initSync:We,ns:Je,wasmFile:"bitmark_json_wasm_bg.wasm"}};ft(()=>V());function qe(e){return e===void 0?Me:"full"}function Or(e){if(e!==null&&typeof e=="object"&&!(e instanceof URL)&&("feature"in e||"module_or_path"in e)){let r=e;return {feature:r.feature??qe(r.module_or_path),module_or_path:r.module_or_path}}let t=e??void 0;return {feature:qe(t),module_or_path:t}}var Gt=0,Ee,K;async function zo(e){let{feature:t,module_or_path:r}=Or(e);if(r===void 0){if(!K&&ee()===t)return Ee;if(K?.feature===t)return K.promise}let n=++Gt,o=Ht[t],s=r??new URL(`${hr}${o.wasmFile}?v=${pe.version}`,import.meta.url),i=(async()=>{try{let a=await o.init(s);n===Gt&&(Ve(t,o.ns),Ee=a);}finally{K?.seq===n&&(K=void 0);}for(;K;)await K.promise.catch(()=>{});return Ee})();return K={feature:t,seq:n,promise:i},i}function $o(e,t={}){let r=t.feature??qe(e),n=Ht[r],o=n.initSync(e);return Ve(r,n.ns),Ee=o,o}function Ko(){return pe.version}function qo(e,t={}){let r=V(),n=ee()??Me;return gt(r,e,t,(o,s)=>mt(o,s,n))}export{cr as ALL_LANGUAGES,xe as NotInitializedError,Z as RegisterError,ce as UnsupportedFeatureError,_r as bitmarkToObjects,yr as breakscapeText,gr as canonicalize,lr as convert,fr as countBits,wr as info,zo as init,$o as initSync,Dt as legacy,ur as lex,dr as objectsToBitmark,pr as patchEntry,kr as register,mr as splitBits,br as transform,qo as transformParallel,xr as unbreakscapeText,ee as variant,Ko as version};//# sourceMappingURL=bitmark-parser.min.js.map
1
+ var Yt=Object.defineProperty;var $e=(t,e,r)=>e in t?Yt(t,e,{enumerable:true,configurable:true,writable:true,value:r}):t[e]=r;var ut=(t,e)=>{for(var r in e)Yt(t,r,{get:e[r],enumerable:true});};var J=(t,e,r)=>$e(t,typeof e!="symbol"?e+"":e,r);var At={};ut(At,{breakscape_text:()=>Ye,canonicalize:()=>sn,convert:()=>on,convert_text:()=>Ze,count_bits:()=>an,default:()=>St,diff:()=>nn,info:()=>Qe,initSync:()=>Bt,is_bitmark:()=>cn,lex:()=>qe,prettify:()=>un,register:()=>rn,resolve_patch_document:()=>en,split_bits:()=>pn,split_json_bits:()=>_n,transform:()=>tn,unbreakscape_text:()=>Xe});var p,h=0,st=null;function dt(){return (st===null||st.byteLength===0)&&(st=new Uint8Array(p.memory.buffer)),st}var lt=typeof TextEncoder<"u"?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}},Ke=typeof lt.encodeInto=="function"?function(t,e){return lt.encodeInto(t,e)}:function(t,e){let r=lt.encode(t);return e.set(r),{read:t.length,written:r.length}};function v(t,e,r){if(r===void 0){let a=lt.encode(t),_=e(a.length,1)>>>0;return dt().subarray(_,_+a.length).set(a),h=a.length,_}let n=t.length,o=e(n,1)>>>0,s=dt(),i=0;for(;i<n;i++){let a=t.charCodeAt(i);if(a>127)break;s[o+i]=a;}if(i!==n){i!==0&&(t=t.slice(i)),o=r(o,n,n=i+t.length*3,1)>>>0;let a=dt().subarray(o+i,o+n),_=Ke(t,a);i+=_.written,o=r(o,n,i,1)>>>0;}return h=i,o}var q=null;function B(){return (q===null||q.buffer.detached===true||q.buffer.detached===void 0&&q.buffer!==p.memory.buffer)&&(q=new DataView(p.memory.buffer)),q}var Xt=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:true,fatal:true}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&Xt.decode();function N(t,e){return t=t>>>0,Xt.decode(dt().subarray(t,t+e))}function qe(t,e){let r,n;try{let i=p.__wbindgen_add_to_stack_pointer(-16),a=v(t,p.__wbindgen_export_0,p.__wbindgen_export_1),_=h,d=v(e,p.__wbindgen_export_0,p.__wbindgen_export_1),l=h;p.lex(i,a,_,d,l);var o=B().getInt32(i+0,!0),s=B().getInt32(i+4,!0);return r=o,n=s,N(o,s)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(r,n,1);}}function Ye(t,e,r){let n,o;try{let a=p.__wbindgen_add_to_stack_pointer(-16),_=v(t,p.__wbindgen_export_0,p.__wbindgen_export_1),d=h,l=v(e,p.__wbindgen_export_0,p.__wbindgen_export_1),f=h,g=v(r,p.__wbindgen_export_0,p.__wbindgen_export_1),b=h;p.breakscape_text(a,_,d,l,f,g,b);var s=B().getInt32(a+0,!0),i=B().getInt32(a+4,!0);return n=s,o=i,N(s,i)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(n,o,1);}}function Xe(t,e,r){let n,o;try{let a=p.__wbindgen_add_to_stack_pointer(-16),_=v(t,p.__wbindgen_export_0,p.__wbindgen_export_1),d=h,l=v(e,p.__wbindgen_export_0,p.__wbindgen_export_1),f=h,g=v(r,p.__wbindgen_export_0,p.__wbindgen_export_1),b=h;p.unbreakscape_text(a,_,d,l,f,g,b);var s=B().getInt32(a+0,!0),i=B().getInt32(a+4,!0);return n=s,o=i,N(s,i)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(n,o,1);}}function Qe(t,e,r,n,o,s,i,a,_){let d,l;try{let b=p.__wbindgen_add_to_stack_pointer(-16),k=v(t,p.__wbindgen_export_0,p.__wbindgen_export_1),x=h,m=v(e,p.__wbindgen_export_0,p.__wbindgen_export_1),w=h,y=v(r,p.__wbindgen_export_0,p.__wbindgen_export_1),I=h,E=v(_,p.__wbindgen_export_0,p.__wbindgen_export_1),L=h;p.info(b,k,x,m,w,y,I,n,o,s,i,a,E,L);var f=B().getInt32(b+0,!0),g=B().getInt32(b+4,!0);return d=f,l=g,N(f,g)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(d,l,1);}}function Ze(t,e,r,n){let o,s;try{let _=p.__wbindgen_add_to_stack_pointer(-16),d=v(t,p.__wbindgen_export_0,p.__wbindgen_export_1),l=h,f=v(e,p.__wbindgen_export_0,p.__wbindgen_export_1),g=h,b=v(r,p.__wbindgen_export_0,p.__wbindgen_export_1),k=h,x=v(n,p.__wbindgen_export_0,p.__wbindgen_export_1),m=h;p.convert_text(_,d,l,f,g,b,k,x,m);var i=B().getInt32(_+0,!0),a=B().getInt32(_+4,!0);return o=i,s=a,N(i,a)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(o,s,1);}}function tn(t,e,r,n,o,s,i,a){let _,d;try{let g=p.__wbindgen_add_to_stack_pointer(-16),b=v(t,p.__wbindgen_export_0,p.__wbindgen_export_1),k=h,x=v(e,p.__wbindgen_export_0,p.__wbindgen_export_1),m=h,w=v(r,p.__wbindgen_export_0,p.__wbindgen_export_1),y=h,I=v(n,p.__wbindgen_export_0,p.__wbindgen_export_1),E=h,L=v(o,p.__wbindgen_export_0,p.__wbindgen_export_1),it=h;p.transform(g,b,k,x,m,w,y,I,E,L,it,s,i,a);var l=B().getInt32(g+0,!0),f=B().getInt32(g+4,!0);return _=l,d=f,N(l,f)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(_,d,1);}}function en(t,e){let r,n;try{let i=p.__wbindgen_add_to_stack_pointer(-16),a=v(t,p.__wbindgen_export_0,p.__wbindgen_export_1),_=h,d=v(e,p.__wbindgen_export_0,p.__wbindgen_export_1),l=h;p.resolve_patch_document(i,a,_,d,l);var o=B().getInt32(i+0,!0),s=B().getInt32(i+4,!0);return r=o,n=s,N(o,s)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(r,n,1);}}function nn(t,e,r,n,o,s,i,a,_){let d,l;try{let b=p.__wbindgen_add_to_stack_pointer(-16),k=v(t,p.__wbindgen_export_0,p.__wbindgen_export_1),x=h,m=v(e,p.__wbindgen_export_0,p.__wbindgen_export_1),w=h,y=v(r,p.__wbindgen_export_0,p.__wbindgen_export_1),I=h,E=v(n,p.__wbindgen_export_0,p.__wbindgen_export_1),L=h;p.diff(b,k,x,m,w,y,I,E,L,o,s,i,a,_);var f=B().getInt32(b+0,!0),g=B().getInt32(b+4,!0);return d=f,l=g,N(f,g)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(d,l,1);}}function rn(t,e){let r,n;try{let i=p.__wbindgen_add_to_stack_pointer(-16),a=v(t,p.__wbindgen_export_0,p.__wbindgen_export_1),_=h,d=v(e,p.__wbindgen_export_0,p.__wbindgen_export_1),l=h;p.register(i,a,_,d,l);var o=B().getInt32(i+0,!0),s=B().getInt32(i+4,!0);return r=o,n=s,N(o,s)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(r,n,1);}}function on(t,e,r,n,o,s,i,a,_){let d,l;try{let b=p.__wbindgen_add_to_stack_pointer(-16),k=v(t,p.__wbindgen_export_0,p.__wbindgen_export_1),x=h,m=v(e,p.__wbindgen_export_0,p.__wbindgen_export_1),w=h,y=v(r,p.__wbindgen_export_0,p.__wbindgen_export_1),I=h,E=v(n,p.__wbindgen_export_0,p.__wbindgen_export_1),L=h;p.convert(b,k,x,m,w,y,I,E,L,o,s,i,a,_);var f=B().getInt32(b+0,!0),g=B().getInt32(b+4,!0);return d=f,l=g,N(f,g)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(d,l,1);}}function sn(t,e,r,n,o,s){let i,a;try{let l=p.__wbindgen_add_to_stack_pointer(-16),f=v(t,p.__wbindgen_export_0,p.__wbindgen_export_1),g=h,b=v(e,p.__wbindgen_export_0,p.__wbindgen_export_1),k=h,x=v(r,p.__wbindgen_export_0,p.__wbindgen_export_1),m=h;p.canonicalize(l,f,g,b,k,x,m,n,o,s);var _=B().getInt32(l+0,!0),d=B().getInt32(l+4,!0);return i=_,a=d,N(_,d)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(i,a,1);}}function an(t){let e,r;try{let s=p.__wbindgen_add_to_stack_pointer(-16),i=v(t,p.__wbindgen_export_0,p.__wbindgen_export_1),a=h;p.count_bits(s,i,a);var n=B().getInt32(s+0,!0),o=B().getInt32(s+4,!0);return e=n,r=o,N(n,o)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(e,r,1);}}function pn(t){let e,r;try{let s=p.__wbindgen_add_to_stack_pointer(-16),i=v(t,p.__wbindgen_export_0,p.__wbindgen_export_1),a=h;p.split_bits(s,i,a);var n=B().getInt32(s+0,!0),o=B().getInt32(s+4,!0);return e=n,r=o,N(n,o)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(e,r,1);}}function cn(t){let e=v(t,p.__wbindgen_export_0,p.__wbindgen_export_1),r=h;return p.is_bitmark(e,r)!==0}function _n(t){let e,r;try{let s=p.__wbindgen_add_to_stack_pointer(-16),i=v(t,p.__wbindgen_export_0,p.__wbindgen_export_1),a=h;p.split_json_bits(s,i,a);var n=B().getInt32(s+0,!0),o=B().getInt32(s+4,!0);return e=n,r=o,N(n,o)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(e,r,1);}}function un(t,e){let r,n;try{let i=p.__wbindgen_add_to_stack_pointer(-16),a=v(t,p.__wbindgen_export_0,p.__wbindgen_export_1),_=h;p.prettify(i,a,_,e);var o=B().getInt32(i+0,!0),s=B().getInt32(i+4,!0);return r=o,n=s,N(o,s)}finally{p.__wbindgen_add_to_stack_pointer(16),p.__wbindgen_export_2(r,n,1);}}async function dn(t,e){if(typeof Response=="function"&&t instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(t,e)}catch(n){if(t.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",n);else throw n}let r=await t.arrayBuffer();return await WebAssembly.instantiate(r,e)}else {let r=await WebAssembly.instantiate(t,e);return r instanceof WebAssembly.Instance?{instance:r,module:t}:r}}function Qt(){let t={};return t.wbg={},t}function Zt(t,e){return p=t.exports,te.__wbindgen_wasm_module=e,q=null,st=null,p}function Bt(t){if(p!==void 0)return p;typeof t<"u"&&(Object.getPrototypeOf(t)===Object.prototype?{module:t}=t:console.warn("using deprecated parameters for `initSync()`; pass a single object instead"));let e=Qt();t instanceof WebAssembly.Module||(t=new WebAssembly.Module(t));let r=new WebAssembly.Instance(t,e);return Zt(r,t)}async function te(t){if(p!==void 0)return p;typeof t<"u"&&(Object.getPrototypeOf(t)===Object.prototype?{module_or_path:t}=t:console.warn("using deprecated parameters for the initialization function; pass a single object instead")),typeof t>"u"&&(t=new URL("bitmark_wasm_bg.wasm",import.meta.url));let e=Qt();(typeof t=="string"||typeof Request=="function"&&t instanceof Request||typeof URL=="function"&&t instanceof URL)&&(t=fetch(t));let{instance:r,module:n}=await dn(await t,e);return Zt(r,n)}var St=te;var Lt={};ut(Lt,{breakscape_text:()=>gn,canonicalize:()=>vn,convert:()=>On,convert_text:()=>xn,count_bits:()=>Tn,default:()=>jt,diff:()=>kn,info:()=>mn,initSync:()=>Pt,is_bitmark:()=>In,lex:()=>fn,prettify:()=>En,register:()=>hn,resolve_patch_document:()=>wn,split_bits:()=>Fn,split_json_bits:()=>Rn,transform:()=>yn,unbreakscape_text:()=>bn});var c,O=0,at=null;function ft(){return (at===null||at.byteLength===0)&&(at=new Uint8Array(c.memory.buffer)),at}var gt=typeof TextEncoder<"u"?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}},ln=typeof gt.encodeInto=="function"?function(t,e){return gt.encodeInto(t,e)}:function(t,e){let r=gt.encode(t);return e.set(r),{read:t.length,written:r.length}};function T(t,e,r){if(r===void 0){let a=gt.encode(t),_=e(a.length,1)>>>0;return ft().subarray(_,_+a.length).set(a),O=a.length,_}let n=t.length,o=e(n,1)>>>0,s=ft(),i=0;for(;i<n;i++){let a=t.charCodeAt(i);if(a>127)break;s[o+i]=a;}if(i!==n){i!==0&&(t=t.slice(i)),o=r(o,n,n=i+t.length*3,1)>>>0;let a=ft().subarray(o+i,o+n),_=ln(t,a);i+=_.written,o=r(o,n,i,1)>>>0;}return O=i,o}var Y=null;function S(){return (Y===null||Y.buffer.detached===true||Y.buffer.detached===void 0&&Y.buffer!==c.memory.buffer)&&(Y=new DataView(c.memory.buffer)),Y}var ee=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:true,fatal:true}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&ee.decode();function V(t,e){return t=t>>>0,ee.decode(ft().subarray(t,t+e))}function fn(t,e){let r,n;try{let i=c.__wbindgen_add_to_stack_pointer(-16),a=T(t,c.__wbindgen_export_0,c.__wbindgen_export_1),_=O,d=T(e,c.__wbindgen_export_0,c.__wbindgen_export_1),l=O;c.lex(i,a,_,d,l);var o=S().getInt32(i+0,!0),s=S().getInt32(i+4,!0);return r=o,n=s,V(o,s)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(r,n,1);}}function gn(t,e,r){let n,o;try{let a=c.__wbindgen_add_to_stack_pointer(-16),_=T(t,c.__wbindgen_export_0,c.__wbindgen_export_1),d=O,l=T(e,c.__wbindgen_export_0,c.__wbindgen_export_1),f=O,g=T(r,c.__wbindgen_export_0,c.__wbindgen_export_1),b=O;c.breakscape_text(a,_,d,l,f,g,b);var s=S().getInt32(a+0,!0),i=S().getInt32(a+4,!0);return n=s,o=i,V(s,i)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(n,o,1);}}function bn(t,e,r){let n,o;try{let a=c.__wbindgen_add_to_stack_pointer(-16),_=T(t,c.__wbindgen_export_0,c.__wbindgen_export_1),d=O,l=T(e,c.__wbindgen_export_0,c.__wbindgen_export_1),f=O,g=T(r,c.__wbindgen_export_0,c.__wbindgen_export_1),b=O;c.unbreakscape_text(a,_,d,l,f,g,b);var s=S().getInt32(a+0,!0),i=S().getInt32(a+4,!0);return n=s,o=i,V(s,i)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(n,o,1);}}function mn(t,e,r,n,o,s,i,a,_){let d,l;try{let b=c.__wbindgen_add_to_stack_pointer(-16),k=T(t,c.__wbindgen_export_0,c.__wbindgen_export_1),x=O,m=T(e,c.__wbindgen_export_0,c.__wbindgen_export_1),w=O,y=T(r,c.__wbindgen_export_0,c.__wbindgen_export_1),I=O,E=T(_,c.__wbindgen_export_0,c.__wbindgen_export_1),L=O;c.info(b,k,x,m,w,y,I,n,o,s,i,a,E,L);var f=S().getInt32(b+0,!0),g=S().getInt32(b+4,!0);return d=f,l=g,V(f,g)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(d,l,1);}}function xn(t,e,r,n){let o,s;try{let _=c.__wbindgen_add_to_stack_pointer(-16),d=T(t,c.__wbindgen_export_0,c.__wbindgen_export_1),l=O,f=T(e,c.__wbindgen_export_0,c.__wbindgen_export_1),g=O,b=T(r,c.__wbindgen_export_0,c.__wbindgen_export_1),k=O,x=T(n,c.__wbindgen_export_0,c.__wbindgen_export_1),m=O;c.convert_text(_,d,l,f,g,b,k,x,m);var i=S().getInt32(_+0,!0),a=S().getInt32(_+4,!0);return o=i,s=a,V(i,a)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(o,s,1);}}function yn(t,e,r,n,o,s,i,a){let _,d;try{let g=c.__wbindgen_add_to_stack_pointer(-16),b=T(t,c.__wbindgen_export_0,c.__wbindgen_export_1),k=O,x=T(e,c.__wbindgen_export_0,c.__wbindgen_export_1),m=O,w=T(r,c.__wbindgen_export_0,c.__wbindgen_export_1),y=O,I=T(n,c.__wbindgen_export_0,c.__wbindgen_export_1),E=O,L=T(o,c.__wbindgen_export_0,c.__wbindgen_export_1),it=O;c.transform(g,b,k,x,m,w,y,I,E,L,it,s,i,a);var l=S().getInt32(g+0,!0),f=S().getInt32(g+4,!0);return _=l,d=f,V(l,f)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(_,d,1);}}function wn(t,e){let r,n;try{let i=c.__wbindgen_add_to_stack_pointer(-16),a=T(t,c.__wbindgen_export_0,c.__wbindgen_export_1),_=O,d=T(e,c.__wbindgen_export_0,c.__wbindgen_export_1),l=O;c.resolve_patch_document(i,a,_,d,l);var o=S().getInt32(i+0,!0),s=S().getInt32(i+4,!0);return r=o,n=s,V(o,s)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(r,n,1);}}function kn(t,e,r,n,o,s,i,a,_){let d,l;try{let b=c.__wbindgen_add_to_stack_pointer(-16),k=T(t,c.__wbindgen_export_0,c.__wbindgen_export_1),x=O,m=T(e,c.__wbindgen_export_0,c.__wbindgen_export_1),w=O,y=T(r,c.__wbindgen_export_0,c.__wbindgen_export_1),I=O,E=T(n,c.__wbindgen_export_0,c.__wbindgen_export_1),L=O;c.diff(b,k,x,m,w,y,I,E,L,o,s,i,a,_);var f=S().getInt32(b+0,!0),g=S().getInt32(b+4,!0);return d=f,l=g,V(f,g)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(d,l,1);}}function hn(t,e){let r,n;try{let i=c.__wbindgen_add_to_stack_pointer(-16),a=T(t,c.__wbindgen_export_0,c.__wbindgen_export_1),_=O,d=T(e,c.__wbindgen_export_0,c.__wbindgen_export_1),l=O;c.register(i,a,_,d,l);var o=S().getInt32(i+0,!0),s=S().getInt32(i+4,!0);return r=o,n=s,V(o,s)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(r,n,1);}}function On(t,e,r,n,o,s,i,a,_){let d,l;try{let b=c.__wbindgen_add_to_stack_pointer(-16),k=T(t,c.__wbindgen_export_0,c.__wbindgen_export_1),x=O,m=T(e,c.__wbindgen_export_0,c.__wbindgen_export_1),w=O,y=T(r,c.__wbindgen_export_0,c.__wbindgen_export_1),I=O,E=T(n,c.__wbindgen_export_0,c.__wbindgen_export_1),L=O;c.convert(b,k,x,m,w,y,I,E,L,o,s,i,a,_);var f=S().getInt32(b+0,!0),g=S().getInt32(b+4,!0);return d=f,l=g,V(f,g)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(d,l,1);}}function vn(t,e,r,n,o,s){let i,a;try{let l=c.__wbindgen_add_to_stack_pointer(-16),f=T(t,c.__wbindgen_export_0,c.__wbindgen_export_1),g=O,b=T(e,c.__wbindgen_export_0,c.__wbindgen_export_1),k=O,x=T(r,c.__wbindgen_export_0,c.__wbindgen_export_1),m=O;c.canonicalize(l,f,g,b,k,x,m,n,o,s);var _=S().getInt32(l+0,!0),d=S().getInt32(l+4,!0);return i=_,a=d,V(_,d)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(i,a,1);}}function Tn(t){let e,r;try{let s=c.__wbindgen_add_to_stack_pointer(-16),i=T(t,c.__wbindgen_export_0,c.__wbindgen_export_1),a=O;c.count_bits(s,i,a);var n=S().getInt32(s+0,!0),o=S().getInt32(s+4,!0);return e=n,r=o,V(n,o)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(e,r,1);}}function Fn(t){let e,r;try{let s=c.__wbindgen_add_to_stack_pointer(-16),i=T(t,c.__wbindgen_export_0,c.__wbindgen_export_1),a=O;c.split_bits(s,i,a);var n=S().getInt32(s+0,!0),o=S().getInt32(s+4,!0);return e=n,r=o,V(n,o)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(e,r,1);}}function In(t){let e=T(t,c.__wbindgen_export_0,c.__wbindgen_export_1),r=O;return c.is_bitmark(e,r)!==0}function Rn(t){let e,r;try{let s=c.__wbindgen_add_to_stack_pointer(-16),i=T(t,c.__wbindgen_export_0,c.__wbindgen_export_1),a=O;c.split_json_bits(s,i,a);var n=S().getInt32(s+0,!0),o=S().getInt32(s+4,!0);return e=n,r=o,V(n,o)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(e,r,1);}}function En(t,e){let r,n;try{let i=c.__wbindgen_add_to_stack_pointer(-16),a=T(t,c.__wbindgen_export_0,c.__wbindgen_export_1),_=O;c.prettify(i,a,_,e);var o=S().getInt32(i+0,!0),s=S().getInt32(i+4,!0);return r=o,n=s,V(o,s)}finally{c.__wbindgen_add_to_stack_pointer(16),c.__wbindgen_export_2(r,n,1);}}async function Bn(t,e){if(typeof Response=="function"&&t instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(t,e)}catch(n){if(t.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",n);else throw n}let r=await t.arrayBuffer();return await WebAssembly.instantiate(r,e)}else {let r=await WebAssembly.instantiate(t,e);return r instanceof WebAssembly.Instance?{instance:r,module:t}:r}}function ne(){let t={};return t.wbg={},t}function re(t,e){return c=t.exports,oe.__wbindgen_wasm_module=e,Y=null,at=null,c}function Pt(t){if(c!==void 0)return c;typeof t<"u"&&(Object.getPrototypeOf(t)===Object.prototype?{module:t}=t:console.warn("using deprecated parameters for `initSync()`; pass a single object instead"));let e=ne();t instanceof WebAssembly.Module||(t=new WebAssembly.Module(t));let r=new WebAssembly.Instance(t,e);return re(r,t)}async function oe(t){if(c!==void 0)return c;typeof t<"u"&&(Object.getPrototypeOf(t)===Object.prototype?{module_or_path:t}=t:console.warn("using deprecated parameters for the initialization function; pass a single object instead")),typeof t>"u"&&(t=new URL("bitmark_browser_full_wasm_bg.wasm",import.meta.url));let e=ne();(typeof t=="string"||typeof Request=="function"&&t instanceof Request||typeof URL=="function"&&t instanceof URL)&&(t=fetch(t));let{instance:r,module:n}=await Bn(await t,e);return re(r,n)}var jt=oe;var Jt={};ut(Jt,{breakscape_text:()=>An,canonicalize:()=>Mn,convert:()=>Jn,convert_text:()=>Hn,count_bits:()=>Dn,default:()=>Ct,info:()=>jn,initSync:()=>Wt,is_bitmark:()=>Vn,prettify:()=>Gn,register:()=>Ln,resolve_patch_document:()=>Cn,split_bits:()=>Nn,split_json_bits:()=>Un,transform:()=>Wn,unbreakscape_text:()=>Pn});var u,F=0,pt=null;function bt(){return (pt===null||pt.byteLength===0)&&(pt=new Uint8Array(u.memory.buffer)),pt}var mt=typeof TextEncoder<"u"?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}},Sn=typeof mt.encodeInto=="function"?function(t,e){return mt.encodeInto(t,e)}:function(t,e){let r=mt.encode(t);return e.set(r),{read:t.length,written:r.length}};function R(t,e,r){if(r===void 0){let a=mt.encode(t),_=e(a.length,1)>>>0;return bt().subarray(_,_+a.length).set(a),F=a.length,_}let n=t.length,o=e(n,1)>>>0,s=bt(),i=0;for(;i<n;i++){let a=t.charCodeAt(i);if(a>127)break;s[o+i]=a;}if(i!==n){i!==0&&(t=t.slice(i)),o=r(o,n,n=i+t.length*3,1)>>>0;let a=bt().subarray(o+i,o+n),_=Sn(t,a);i+=_.written,o=r(o,n,i,1)>>>0;}return F=i,o}var X=null;function A(){return (X===null||X.buffer.detached===true||X.buffer.detached===void 0&&X.buffer!==u.memory.buffer)&&(X=new DataView(u.memory.buffer)),X}var ie=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:true,fatal:true}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&ie.decode();function G(t,e){return t=t>>>0,ie.decode(bt().subarray(t,t+e))}function An(t,e,r){let n,o;try{let a=u.__wbindgen_add_to_stack_pointer(-16),_=R(t,u.__wbindgen_export_0,u.__wbindgen_export_1),d=F,l=R(e,u.__wbindgen_export_0,u.__wbindgen_export_1),f=F,g=R(r,u.__wbindgen_export_0,u.__wbindgen_export_1),b=F;u.breakscape_text(a,_,d,l,f,g,b);var s=A().getInt32(a+0,!0),i=A().getInt32(a+4,!0);return n=s,o=i,G(s,i)}finally{u.__wbindgen_add_to_stack_pointer(16),u.__wbindgen_export_2(n,o,1);}}function Pn(t,e,r){let n,o;try{let a=u.__wbindgen_add_to_stack_pointer(-16),_=R(t,u.__wbindgen_export_0,u.__wbindgen_export_1),d=F,l=R(e,u.__wbindgen_export_0,u.__wbindgen_export_1),f=F,g=R(r,u.__wbindgen_export_0,u.__wbindgen_export_1),b=F;u.unbreakscape_text(a,_,d,l,f,g,b);var s=A().getInt32(a+0,!0),i=A().getInt32(a+4,!0);return n=s,o=i,G(s,i)}finally{u.__wbindgen_add_to_stack_pointer(16),u.__wbindgen_export_2(n,o,1);}}function jn(t,e,r,n,o,s,i,a,_){let d,l;try{let b=u.__wbindgen_add_to_stack_pointer(-16),k=R(t,u.__wbindgen_export_0,u.__wbindgen_export_1),x=F,m=R(e,u.__wbindgen_export_0,u.__wbindgen_export_1),w=F,y=R(r,u.__wbindgen_export_0,u.__wbindgen_export_1),I=F,E=R(_,u.__wbindgen_export_0,u.__wbindgen_export_1),L=F;u.info(b,k,x,m,w,y,I,n,o,s,i,a,E,L);var f=A().getInt32(b+0,!0),g=A().getInt32(b+4,!0);return d=f,l=g,G(f,g)}finally{u.__wbindgen_add_to_stack_pointer(16),u.__wbindgen_export_2(d,l,1);}}function Ln(t,e){let r,n;try{let i=u.__wbindgen_add_to_stack_pointer(-16),a=R(t,u.__wbindgen_export_0,u.__wbindgen_export_1),_=F,d=R(e,u.__wbindgen_export_0,u.__wbindgen_export_1),l=F;u.register(i,a,_,d,l);var o=A().getInt32(i+0,!0),s=A().getInt32(i+4,!0);return r=o,n=s,G(o,s)}finally{u.__wbindgen_add_to_stack_pointer(16),u.__wbindgen_export_2(r,n,1);}}function Wn(t,e,r,n,o,s,i,a){let _,d;try{let g=u.__wbindgen_add_to_stack_pointer(-16),b=R(t,u.__wbindgen_export_0,u.__wbindgen_export_1),k=F,x=R(e,u.__wbindgen_export_0,u.__wbindgen_export_1),m=F,w=R(r,u.__wbindgen_export_0,u.__wbindgen_export_1),y=F,I=R(n,u.__wbindgen_export_0,u.__wbindgen_export_1),E=F,L=R(o,u.__wbindgen_export_0,u.__wbindgen_export_1),it=F;u.transform(g,b,k,x,m,w,y,I,E,L,it,s,i,a);var l=A().getInt32(g+0,!0),f=A().getInt32(g+4,!0);return _=l,d=f,G(l,f)}finally{u.__wbindgen_add_to_stack_pointer(16),u.__wbindgen_export_2(_,d,1);}}function Cn(t,e){let r,n;try{let i=u.__wbindgen_add_to_stack_pointer(-16),a=R(t,u.__wbindgen_export_0,u.__wbindgen_export_1),_=F,d=R(e,u.__wbindgen_export_0,u.__wbindgen_export_1),l=F;u.resolve_patch_document(i,a,_,d,l);var o=A().getInt32(i+0,!0),s=A().getInt32(i+4,!0);return r=o,n=s,G(o,s)}finally{u.__wbindgen_add_to_stack_pointer(16),u.__wbindgen_export_2(r,n,1);}}function Jn(t,e,r,n,o,s,i,a,_){let d,l;try{let b=u.__wbindgen_add_to_stack_pointer(-16),k=R(t,u.__wbindgen_export_0,u.__wbindgen_export_1),x=F,m=R(e,u.__wbindgen_export_0,u.__wbindgen_export_1),w=F,y=R(r,u.__wbindgen_export_0,u.__wbindgen_export_1),I=F,E=R(n,u.__wbindgen_export_0,u.__wbindgen_export_1),L=F;u.convert(b,k,x,m,w,y,I,E,L,o,s,i,a,_);var f=A().getInt32(b+0,!0),g=A().getInt32(b+4,!0);return d=f,l=g,G(f,g)}finally{u.__wbindgen_add_to_stack_pointer(16),u.__wbindgen_export_2(d,l,1);}}function Mn(t,e,r,n,o,s){let i,a;try{let l=u.__wbindgen_add_to_stack_pointer(-16),f=R(t,u.__wbindgen_export_0,u.__wbindgen_export_1),g=F,b=R(e,u.__wbindgen_export_0,u.__wbindgen_export_1),k=F,x=R(r,u.__wbindgen_export_0,u.__wbindgen_export_1),m=F;u.canonicalize(l,f,g,b,k,x,m,n,o,s);var _=A().getInt32(l+0,!0),d=A().getInt32(l+4,!0);return i=_,a=d,G(_,d)}finally{u.__wbindgen_add_to_stack_pointer(16),u.__wbindgen_export_2(i,a,1);}}function Dn(t){let e,r;try{let s=u.__wbindgen_add_to_stack_pointer(-16),i=R(t,u.__wbindgen_export_0,u.__wbindgen_export_1),a=F;u.count_bits(s,i,a);var n=A().getInt32(s+0,!0),o=A().getInt32(s+4,!0);return e=n,r=o,G(n,o)}finally{u.__wbindgen_add_to_stack_pointer(16),u.__wbindgen_export_2(e,r,1);}}function Nn(t){let e,r;try{let s=u.__wbindgen_add_to_stack_pointer(-16),i=R(t,u.__wbindgen_export_0,u.__wbindgen_export_1),a=F;u.split_bits(s,i,a);var n=A().getInt32(s+0,!0),o=A().getInt32(s+4,!0);return e=n,r=o,G(n,o)}finally{u.__wbindgen_add_to_stack_pointer(16),u.__wbindgen_export_2(e,r,1);}}function Vn(t){let e=R(t,u.__wbindgen_export_0,u.__wbindgen_export_1),r=F;return u.is_bitmark(e,r)!==0}function Un(t){let e,r;try{let s=u.__wbindgen_add_to_stack_pointer(-16),i=R(t,u.__wbindgen_export_0,u.__wbindgen_export_1),a=F;u.split_json_bits(s,i,a);var n=A().getInt32(s+0,!0),o=A().getInt32(s+4,!0);return e=n,r=o,G(n,o)}finally{u.__wbindgen_add_to_stack_pointer(16),u.__wbindgen_export_2(e,r,1);}}function Gn(t,e){let r,n;try{let i=u.__wbindgen_add_to_stack_pointer(-16),a=R(t,u.__wbindgen_export_0,u.__wbindgen_export_1),_=F;u.prettify(i,a,_,e);var o=A().getInt32(i+0,!0),s=A().getInt32(i+4,!0);return r=o,n=s,G(o,s)}finally{u.__wbindgen_add_to_stack_pointer(16),u.__wbindgen_export_2(r,n,1);}}function Hn(t,e,r,n){let o,s;try{let _=u.__wbindgen_add_to_stack_pointer(-16),d=R(t,u.__wbindgen_export_0,u.__wbindgen_export_1),l=F,f=R(e,u.__wbindgen_export_0,u.__wbindgen_export_1),g=F,b=R(r,u.__wbindgen_export_0,u.__wbindgen_export_1),k=F,x=R(n,u.__wbindgen_export_0,u.__wbindgen_export_1),m=F;u.convert_text(_,d,l,f,g,b,k,x,m);var i=A().getInt32(_+0,!0),a=A().getInt32(_+4,!0);return o=i,s=a,G(i,a)}finally{u.__wbindgen_add_to_stack_pointer(16),u.__wbindgen_export_2(o,s,1);}}async function zn(t,e){if(typeof Response=="function"&&t instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(t,e)}catch(n){if(t.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",n);else throw n}let r=await t.arrayBuffer();return await WebAssembly.instantiate(r,e)}else {let r=await WebAssembly.instantiate(t,e);return r instanceof WebAssembly.Instance?{instance:r,module:t}:r}}function se(){let t={};return t.wbg={},t}function ae(t,e){return u=t.exports,pe.__wbindgen_wasm_module=e,X=null,pt=null,u}function Wt(t){if(u!==void 0)return u;typeof t<"u"&&(Object.getPrototypeOf(t)===Object.prototype?{module:t}=t:console.warn("using deprecated parameters for `initSync()`; pass a single object instead"));let e=se();t instanceof WebAssembly.Module||(t=new WebAssembly.Module(t));let r=new WebAssembly.Instance(t,e);return ae(r,t)}async function pe(t){if(u!==void 0)return u;typeof t<"u"&&(Object.getPrototypeOf(t)===Object.prototype?{module_or_path:t}=t:console.warn("using deprecated parameters for the initialization function; pass a single object instead")),typeof t>"u"&&(t=new URL("bitmark_json_wasm_bg.wasm",import.meta.url));let e=se();(typeof t=="string"||typeof Request=="function"&&t instanceof Request||typeof URL=="function"&&t instanceof URL)&&(t=fetch(t));let{instance:r,module:n}=await zn(await t,e);return ae(r,n)}var Ct=pe;var ct={version:"6.11.1"};var Mt="browser-full",yt=class extends Error{constructor(){super("wasm not initialised: call init() (or init({ feature: \u2026 })) first"),this.name="NotInitializedError";}},et=class extends Error{constructor(e){super(e),this.name="RegisterError";}},nt=class extends Error{constructor(e,r){super(`${e} is not available in the loaded wasm module${r?` (feature: "${r}")`:""}; init({ feature: "full" }) to load it`),this.name="UnsupportedFeatureError";}},xt,_e,ce,ue=new Map;function D(){if(!xt&&ce&&ce(),!xt)throw new yt;return xt}function Dt(t,e){for(let[r,n]of ue){let o=e.register(r,n);if(o)throw new et(o.replace(/^error:\s*/,""))}xt=e,_e=t;}function de(t,e){ue.set(t,e);}function Q(){return _e}function Z(t){return t.startsWith("error:")}function wt(t){let e=t instanceof Error?t.message:String(t);return e.startsWith("error:")?e:`error: ${e}`}function $n(t){let e=t.trim();return e.startsWith("[")&&e.endsWith("]")?e.slice(1,-1):t}function Kn(t){return t===void 0?"":typeof t=="string"?t.trim():JSON.stringify(t)}function qn(t,e,r){if(r){let s=t.split_bits(e);if(Z(s))throw new Error(s);let i=JSON.parse(s);return i.map(a=>({view:{format:"bitmark",index:a.index,total:i.length,source:a.source},source:a.source}))}let n=t.split_json_bits(e);if(Z(n))throw new Error(n);let o=JSON.parse(n);return o.map((s,i)=>({view:{format:"json",index:i,total:o.length,bit:s.bit??{}},source:JSON.stringify([s])}))}function Nt(t,e,r){let n=r.mode??"optimized",o=r.outputFormat??"json",s=r.spacesAroundValues??1,i=r.indent??2,a=r.pretty??false,_=r.inputFormat??"auto",d=_==="bitmark"||_!=="json"&&t.is_bitmark(e),l=d?"bitmark":"json",f=qn(t,e,d),g=f.length,b=[];for(let y=0;y<g;y++){let{view:I}=f[y];I.index=y,I.total=g;let E=r.preHook?r.preHook(I)||{}:{};b.push(E.drop?null:{patches:E.patches??[],outputFormat:E.outputFormat??o});}let k=Kn(r.patch),x;if(k==="")x=f.map((y,I)=>({source:I,bit:null,patch:[]}));else {let y=t.resolve_patch_document(e,k);if(Z(y))throw new Error(y);x=JSON.parse(y);}let m=[],w=[];for(let y of x)if(y.source!==null){let I=b[y.source];if(!I)continue;m.push({index:y.source,source:f[y.source].source,inputFormat:l,outputFormat:I.outputFormat,mode:n,patchJson:JSON.stringify([...y.patch,...I.patches]),spacesAroundValues:s}),w.push(f[y.source].view);}else {let I=y.bit??{},E=m.length;m.push({index:E,source:JSON.stringify([{bit:I}]),inputFormat:"json",outputFormat:o,mode:n,patchJson:JSON.stringify(y.patch),spacesAroundValues:s}),w.push({format:"json",index:E,total:g,bit:I});}return {jobs:m,views:w,output:o,pretty:a,indent:i}}function Yn(t,e){let r=t.transform(e.source,e.inputFormat,e.outputFormat,e.mode,e.patchJson,false,2,e.spacesAroundValues);return Z(r)?r:e.outputFormat==="json"?$n(r):r}function Vt(t,e,r,n,o){if(r==="bitmark"||r==="text")return e.join(`
2
+ `);let s=`[${e.join(",")}]`;return n?t.prettify(s,o):s}function le(t,e,r){let n;try{n=Nt(t,e,r);}catch(s){return wt(s)}let o=[];for(let s=0;s<n.jobs.length;s++){let i=Yn(t,n.jobs[s]);if(Z(i))return i;r.postHook?.(n.views[s],i),o.push(i);}return Vt(t,o,n.output,n.pretty,n.indent)}async function fe(t,e,r,n){let o;try{o=Nt(t,e,r);}catch(i){return wt(i)}let s;try{s=await n(o.jobs,r.workers??4);}catch(i){return wt(i)}for(let i=0;i<s.length;i++){if(Z(s[i]))return s[i];r.postHook?.(o.views[i],s[i]);}return Vt(t,s,o.output,o.pretty,o.indent)}var Ut;function ge(t){Ut=t;}function W(){if(!Ut)throw new Error("legacy API not initialised: the WASM module has not been provided (browser consumers must call init() first)");return Ut()}function be(t,e,r){if(t.length===0)return Promise.resolve([]);let n=Math.max(1,Math.min(e,t.length)),o=new URL("./worker-entry.js",import.meta.url);return new Promise((s,i)=>{let a=new Array(t.length),_=0,d=0,l=false,f=[],g=()=>{for(let x of f)x.terminate();},b=x=>{l||(l=true,g(),i(x));},k=x=>{if(l||_>=t.length)return;let m=_++;x.postMessage({id:m,job:t[m],feature:r});};for(let x=0;x<n;x++){let m=new Worker(o,{type:"module"});f.push(m),m.onmessage=w=>{let y=w.data;if(!l){if(!y.ok){b(new Error(y.error??"worker job failed"));return}if(a[y.id]=y.element,d++,d===t.length){l=true,g(),s(a);return}k(m);}},m.onerror=w=>b(new Error(w.message||"worker error"));}for(let x of f)k(x);})}var Ue={};ut(Ue,{Ast:()=>Ee,BitType:()=>Te,BitmarkFileGenerator:()=>Ae,BitmarkGenerator:()=>Be,BitmarkParser:()=>Je,BitmarkParserGenerator:()=>It,BitmarkParserType:()=>ar,BitmarkStringGenerator:()=>Se,BitmarkVersion:()=>ir,BodyTextFormat:()=>_r,BoundingBoxIndex:()=>Re,Builder:()=>Ft,CardSetVersion:()=>sr,FileWriter:()=>Ne,HtmlTableGenerator:()=>We,HtmlTableParser:()=>Ce,InfoFormat:()=>cr,InfoType:()=>pr,Input:()=>nr,InputFormat:()=>or,JsonFileGenerator:()=>Le,JsonGenerator:()=>Pe,JsonParser:()=>Me,JsonStringGenerator:()=>je,LegacyUnsupportedError:()=>rt,NodeType:()=>Ie,Output:()=>rr,ResourceBuilder:()=>Rt,StreamWriter:()=>Ve,StringWriter:()=>De,TextLocation:()=>ur,TextMarkType:()=>Oe,TextNodeType:()=>ve,bitmarkTextParse:()=>ke,isPseudoAst:()=>xe});var rt=class extends Error{constructor(e){super(e),this.name="LegacyUnsupportedError";}};function $(t,e){throw new rt(`'${t}' is not supported by the @gmb/bitmark-parser legacy API`+(e?`: ${e}`:""))}function z(t,e){throw new rt(`Option '${t}' is not supported by the @gmb/bitmark-parser legacy API`+(e?`: ${e}`:""))}var Gt="bitmark v2 output is not supported (this parser is bitmark v3 only)";function Ht(t){t.bitmarkVersion===2&&z("bitmarkVersion: 2",Gt);}function ht(t){t.explicitTextFormat&&z("bitmarkOptions.explicitTextFormat"),t.cardSetVersion===1&&z("bitmarkOptions.cardSetVersion: 1",Gt),t.debugGenerationInline&&z("bitmarkOptions.debugGenerationInline"),t.noBreakscaping&&z("bitmarkOptions.noBreakscaping");}function Ot(t){t.textAsPlainText&&z("jsonOptions.textAsPlainText",Gt),t.debugGenerationInline&&z("jsonOptions.debugGenerationInline");}function tt(t){return t===true?{pretty:true,indent:2}:typeof t=="number"&&t>0?{pretty:true,indent:t}:{pretty:false,indent:2}}function vt(t){return t===void 0||t===true?1:t===false?0:Math.max(0,Math.min(10,t))}function Tt(t){switch(t){case "text":case "latex":case "json":case "xml":return "plainText";default:return "bitmark++"}}var me=Symbol.for("@gmb/bitmark-parser/legacy-pseudo-ast");function ot(t){let e={bits:t};return Object.defineProperty(e,me,{value:true,enumerable:false}),e}function xe(t){return t!==null&&typeof t=="object"&&(me in t||Array.isArray(t.bits))}var ye={"extractor-image":{key:"images",resourceType:"image"},"extractor-image-collapsible":{key:"images",resourceType:"image"},"images-logo-grave":{key:"logos",resourceType:"image"},"prototype-images":{key:"images",resourceType:"image"}};var zt=Symbol.for("@gmb/bitmark-parser/legacy-built-bit-parser"),Qn={bitType:"type",textFormat:"format",flashcards:"cards",markConfig:"marks"},Zn={"bitmark--":"bitmark++","bitmark+":"bitmark++"},tr={bitmark:"bitmark++",text:"text",json:"json",latex:"latex",xml:"xml"},er=["title","subtitle","item","lead","pageNumber","marginNumber","hint","instruction","caption"],Ft=class{buildBitmark(e){let r=ot(e.bits??[]);return e.errors!==void 0&&(r.errors=e.errors),r}buildBit(e,r){let n=W(),o={...e},s=o.bitType,i=this.getBitConfig(s),a={};a.type=s,o.isCommented&&(a.type="_comment",a.originalType=s),delete o.bitType,delete o.isCommented;let _=o.textFormat;_!==void 0?(a.format=Zn[_]??_,delete o.textFormat):a.format=tr[i.bodyFormat??""]??"bitmark++",delete o.resourceType;let d=o.body;d!=null&&typeof d=="object"&&"body"in d&&(a.body=d.body,delete o.body),o.example!==void 0?(a.isExample=true,a.example=o.example,delete o.example,delete o.__isDefaultExample):o.__isDefaultExample&&(a.isExample=true,delete o.__isDefaultExample);let l=o.resources;if(l!==void 0&&s!==void 0){let m=Array.isArray(l)?l:[l],w=ye[s];w?a[w.key]=m.filter(y=>y!==null&&typeof y=="object"&&y.type===w.resourceType):m.length>=1&&(a.resource=m[0]),delete o.resources;}let f=o.parser;delete o.parser;let g=o.extraProperties;delete o.extraProperties;for(let[m,w]of Object.entries(o))w!==void 0&&(a[Qn[m]??m]=w);if(g)for(let[m,w]of Object.entries(g))m in a||(a[m]=w);this.parseStringTexts(a);let b=n.convert(JSON.stringify([{bit:a}]),"json","json","optimized",false,2,1,false,false);if(b.startsWith("error:"))throw new Error(b.slice(6).trim());let x=JSON.parse(b)[0]?.bit??a;for(let[m,w]of Object.entries(a))m in x||w===false||w===""||w===null||Array.isArray(w)&&w.length===0||(x[m]=w);return f!==void 0&&Object.defineProperty(x,zt,{value:f,enumerable:false}),x}buildHighlight(e,r){if(!r)return;let n={...r},o=n.attrs;return o&&Object.assign(n,o),{type:"highlight",texts:Array.isArray(n.texts)?n.texts.filter(a=>a!=null).map(a=>({text:a.text??"",isCorrect:a.isCorrect??false,isHighlighted:a.isHighlighted??false,...we(a,["text","isCorrect","isHighlighted"])})):[],prefix:n.prefix??"",postfix:n.postfix??"",...we(n,["type","texts","prefix","postfix","attrs"]),attrs:{}}}parseStringTexts(e){let r=W(),n=(i,a)=>{if(i==="")return i;let _=r.convert_text(i,"textToAst","bitmark++",a);try{return JSON.parse(_)}catch{return i}},o=e.format,s=o===void 0||o==="bitmark++"||o==="bitmark+";if(typeof e.body=="string")if(o==="json")try{e.body=JSON.parse(e.body);}catch{e.body=null;}else s&&(e.body=n(e.body,"body"));for(let i of er){let a=e[i];typeof a=="string"&&(e[i]=n(a,"tag"));}}getBitConfig(e){let r=W();if(e!==void 0)try{let n=JSON.parse(r.info("bit","json",e,!1,2,!1,!1,!0,""));if(n.error===void 0)return {bodyFormat:n.body?.format}}catch{}throw new Error(`No config found for bit: ${e}`)}};function we(t,e){let r={};for(let[n,o]of Object.entries(t))o!==void 0&&!e.includes(n)&&(r[n]=o);return r}var It=class{version(){return ct.version}convert(e,r){let n=Object.assign({},r),o=Object.assign({},n.jsonOptions),s=Object.assign({},n.bitmarkOptions);Ht(n),ht(s),Ot(o),this.checkBrowserFileWrite(n.outputFile);let i=W(),{source:a,isBitmark:_}=this.resolveInput(e,n.inputFormat),d=n.outputFormat??(_?"json":"bitmark"),l=d==="ast"?"json":d,{pretty:f,indent:g}=tt(o.prettify),b=l==="bitmark"?tt(s.prettifyJson):{pretty:f,indent:g},k=vt(s.spacesAroundValues),x=!o.excludeUnknownProperties,m=i.convert(a,_?"bitmark":"json",l,"optimized",b.pretty,b.indent,k,x,false);if(this.throwOnError(m),d==="bitmark"||d==="text")return this.deliver(m,n.outputFile,n.fileOptions);if(d==="json")return n.outputFile?this.deliver(m,n.outputFile,n.fileOptions):f||o.stringify?m:JSON.parse(m);let w=ot(JSON.parse(m));return n.outputFile?this.deliver(JSON.stringify(w),n.outputFile,n.fileOptions):w}upgrade(e,r){let n=Object.assign({},r),o=Object.assign({},n.jsonOptions),s=Object.assign({},n.bitmarkOptions);Ht(n),ht(s),Ot(o),this.checkBrowserFileWrite(n.outputFile);let i=W(),{source:a,isBitmark:_}=this.resolveInput(e,n.inputFormat),{pretty:d,indent:l}=tt(_?s.prettifyJson:o.prettify),f=vt(s.spacesAroundValues),g=i.canonicalize(a,_?"bitmark":"json","optimized",d,l,f);return this.throwOnError(g),_?this.deliver(g,n.outputFile,n.fileOptions):n.outputFile?this.deliver(g,n.outputFile,n.fileOptions):d||o.stringify?g:JSON.parse(g)}info(e){let r=Object.assign({},e),n=W(),o=r.type??"list",s=r.outputFormat??"text",{pretty:i,indent:a}=tt(r.prettify),_=s==="pojo"?"json":s,d=n.info(o,_,r.bit??"",i,a,false,false,true,"");return this.throwOnError(d),s==="pojo"?JSON.parse(d):d}generateConfig(e){$("BitmarkParserGenerator.generateConfig","bpg-internal development tool");}convertHtmlTable(e,r){let n=Object.assign({},r),o=Object.assign({},n.jsonOptions),s=Object.assign({},n.bitmarkOptions);ht(s),Ot(o),n.keepUnknownTags&&z("keepUnknownTags"),n.noBreakscaping&&z("noBreakscaping"),this.checkBrowserFileWrite(n.outputFile);let i=W(),a=typeof e=="string"?this.maybeReadFile(e,void 0):"";if(!(n.inputFormat==="html"||n.inputFormat===void 0&&typeof e=="string"&&/<table[\s>]/iu.test(a))){let{source:y,isBitmark:I}=this.resolveInput(e,void 0),E=i.convert(y,I?"bitmark":"json","html","optimized",false,2,1,false,false);return this.throwOnError(E),this.deliver($t(E).join(`
3
+ `),n.outputFile,n.fileOptions)}let d=n.tableFormat==="table"?"table":"table-extended",l=$t(a).map(y=>`<bitmark-bit data-type="${d}" data-format="bitmark++">${y}</bitmark-bit>`).join(""),f=n.outputFormat??"bitmark",{pretty:g,indent:b}=tt(o.prettify),k=vt(s.spacesAroundValues);if(f==="html"){let y=i.convert(l,"html","html","optimized",false,2,1,false,false);return this.throwOnError(y),this.deliver($t(y).join(`
4
+ `),n.outputFile,n.fileOptions)}let x=f==="ast"?"json":f,m=i.convert(l,"html",x,"optimized",g,b,k,false,false);if(this.throwOnError(m),f==="bitmark"||f==="text")return this.deliver(m,n.outputFile,n.fileOptions);if(f==="json")return n.outputFile?this.deliver(m,n.outputFile,n.fileOptions):g||o.stringify?m:JSON.parse(m);let w=ot(JSON.parse(m));return n.outputFile?this.deliver(JSON.stringify(w),n.outputFile,n.fileOptions):w}createAst(e,r){let n=Object.assign({},r),o=W(),{source:s,isBitmark:i}=this.resolveInput(e,n.inputFormat),a=o.convert(s,i?"bitmark":"json","json","optimized",false,2,1,true,false);return this.throwOnError(a),ot(JSON.parse(a))}breakscapeText(e,r){if(!e)return e;let n=Object.assign({},r);this.checkBrowserFileWrite(n.outputFile);let o=W(),s=this.maybeReadFile(e,n.inputFormat),i=o.breakscape_text(s,Tt(n.textFormat),n.textLocation??"body");return this.deliver(i,n.outputFile,n.fileOptions)}unbreakscapeText(e,r){if(!e)return e;let n=Object.assign({},r);this.checkBrowserFileWrite(n.outputFile);let o=W(),s=this.maybeReadFile(e,n.inputFormat),i=o.unbreakscape_text(s,Tt(n.textFormat),n.textLocation??"body");return this.deliver(i,n.outputFile,n.fileOptions)}convertText(e,r){let n=Object.assign({},r),o=Object.assign({},n.jsonOptions);this.checkBrowserFileWrite(n.outputFile);let s=W(),i=n.textFormat===void 0||Tt(n.textFormat)==="bitmark++",a=n.textLocation??"body",_,d;if(typeof e=="string"?(_=this.maybeReadFile(e,n.inputFormat),d=this.parseTextAstString(_)):(_=JSON.stringify(e),d=Array.isArray(e)?e:void 0),d!==void 0){let k=i?s.convert_text(JSON.stringify(d),"astToText","bitmark++",a):s.convert_text(JSON.stringify(d),"astToPlainText","plainText",a);return this.throwOnError(k),this.deliver(k,n.outputFile,n.fileOptions)}let l=s.convert_text(_,"textToAst",i?"bitmark++":"plainText","body");this.throwOnError(l);let{pretty:f,indent:g}=tt(o.prettify),b=f?s.prettify(l,g):l;return n.outputFile?this.deliver(b,n.outputFile,n.fileOptions):f?b:JSON.parse(l)}textAstToPlainText(e,r){let o=W().convert_text(typeof e=="string"?e:JSON.stringify(e),"astToPlainText","bitmark++","body");return this.throwOnError(o),o}extractPlainText(e,r){let n=r?.inputFormat,o=W();if(n==="plainText")return typeof e=="string"?String(e):"";if(n==="bitmarkText"){let _=o.convert_text(String(e),"textToAst","bitmark++","body"),d=o.convert_text(_,"astToPlainText","bitmark++","body");return this.throwOnError(d),d}if(typeof e=="string"&&this.parseTextAstString(e)===void 0&&!o.is_bitmark(e)&&!(()=>{try{return JSON.parse(e),!0}catch{return false}})())return this.extractPlainText(e,{inputFormat:"bitmarkText"});let{source:s,isBitmark:i}=this.resolveInput(e,void 0),a=o.convert(s,i?"bitmark":"json","text","optimized",false,2,1,false,false);return this.throwOnError(a),a}parseTextAstString(e){let r=e.trim();if(r.startsWith("["))try{let n=JSON.parse(r);if(Array.isArray(n)&&n.every(o=>o!==null&&typeof o=="object"&&"type"in o))return n}catch{}}resolveInput(e,r){if(typeof e!="string"){let s=this.jsonEntries(e);return {source:JSON.stringify(s?s.map(i=>this.toWrapperEntry(i)):e),isBitmark:false}}let n=this.maybeReadFile(e,r);if(W().is_bitmark(n))return {source:n,isBitmark:true};try{let s=JSON.parse(n),i=this.jsonEntries(s);if(i)return {source:JSON.stringify(i.map(a=>this.toWrapperEntry(a))),isBitmark:!1}}catch{return {source:n,isBitmark:true}}return {source:n,isBitmark:false}}jsonEntries(e){if(Array.isArray(e))return e;if(e!==null&&typeof e=="object"){let r=e;if(Array.isArray(r.bits))return r.bits;if("bit"in r)return [r];if(typeof r.type=="string")return [{bit:r}]}}toWrapperEntry(e){if(e!==null&&typeof e=="object"&&"bit"in e)return e;let r={bit:e},n=e?.[zt];return n!==void 0&&(r.parser=n),r}maybeReadFile(e,r){if(r==="string")return e;return e;}checkBrowserFileWrite(e){if(e&&true)throw new Error("Cannot write to file in browser environment")}deliver(e,r,n){if(!r)return e;throw new Error("Cannot write to file in browser environment");}throwOnError(e){if(e.startsWith("error:"))throw new Error(e.slice(6).trim())}};function $t(t){let e=[],r=t.toLowerCase(),n=0;for(;;){let o=r.indexOf("<table",n);if(o===-1)break;let s=0,i=o,a=-1;for(;i<t.length;){let _=r.indexOf("<table",i),d=r.indexOf("</table",i);if(d===-1)break;if(_!==-1&&_<d)s++,i=_+6;else {s--;let l=r.indexOf(">",d);if(i=l===-1?t.length:l+1,s===0){a=i;break}}}if(a===-1)break;e.push(t.slice(o,a)),n=a;}return e}function ke(t){let e=W().convert_text(t,"textToAst","bitmark++","body");if(e.startsWith("error:"))throw new Error(e.slice(6).trim());return JSON.parse(e)}var M={imageResource:{type:"image",key:"image",valueField:"src"},imageLinkResource:{type:"image-link",key:"imageLink",valueField:"url"},audioResource:{type:"audio",key:"audio",valueField:"src"},audioEmbedResource:{type:"audio-embed",key:"audioEmbed",valueField:"src"},audioLinkResource:{type:"audio-link",key:"audioLink",valueField:"url"},videoResource:{type:"video",key:"video",valueField:"src"},videoEmbedResource:{type:"video-embed",key:"videoEmbed",valueField:"url"},videoLinkResource:{type:"video-link",key:"videoLink",valueField:"url"},stillImageFilmEmbedResource:{type:"still-image-film-embed",key:"stillImageFilmEmbed",valueField:"url"},stillImageFilmLinkResource:{type:"still-image-film-link",key:"stillImageFilmLink",valueField:"url"},articleResource:{type:"article",key:"article",valueField:"body"},documentResource:{type:"document",key:"document",valueField:"url"},documentEmbedResource:{type:"document-embed",key:"documentEmbed",valueField:"url"},documentLinkResource:{type:"document-link",key:"documentLink",valueField:"url"},documentDownloadResource:{type:"document-download",key:"documentDownload",valueField:"url"},appLinkResource:{type:"app-link",key:"appLink",valueField:"url"},websiteLinkResource:{type:"website-link",key:"websiteLink",valueField:"url"}};function C(t){return (e,r,n)=>{if(!r)return;let{value:o,...s}=r,i={[t.valueField]:o??""};for(let[a,_]of Object.entries(s))_!==void 0&&(i[a]=_);return {type:t.type,[t.key]:i}}}var he=Object.fromEntries(Object.values(M).map(t=>[t.type,t])),Rt=class{constructor(){J(this,"imageResource",C(M.imageResource));J(this,"imageLinkResource",C(M.imageLinkResource));J(this,"audioResource",C(M.audioResource));J(this,"audioEmbedResource",C(M.audioEmbedResource));J(this,"audioLinkResource",C(M.audioLinkResource));J(this,"videoResource",C(M.videoResource));J(this,"videoEmbedResource",C(M.videoEmbedResource));J(this,"videoLinkResource",C(M.videoLinkResource));J(this,"stillImageFilmEmbedResource",C(M.stillImageFilmEmbedResource));J(this,"stillImageFilmLinkResource",C(M.stillImageFilmLinkResource));J(this,"articleResource",C(M.articleResource));J(this,"documentResource",C(M.documentResource));J(this,"documentEmbedResource",C(M.documentEmbedResource));J(this,"documentLinkResource",C(M.documentLinkResource));J(this,"documentDownloadResource",C(M.documentDownloadResource));J(this,"appLinkResource",C(M.appLinkResource));J(this,"websiteLinkResource",C(M.websiteLinkResource));}resourceFromResourceJson(e,r){if(!r)return;let n=!Array.isArray(r),o=n?[r]:r,s=[];for(let i of o){let a=he[i.type];if(!a)continue;let _=i[a.key]??{},{[a.valueField]:d,...l}=_,f=C(a)(void 0,{value:d,...l});f&&s.push(f);}if(s.length!==0)return n?s[0]:s}resourceFromResourceDataJson(e,r,n){if(!n)return;let o=he[r];if(!o)return;let s=typeof n=="string"?n:void 0,i=typeof n=="object"?n:{},{url:a,src:_,body:d,...l}=i,f=a??_??d??s;return C(o)(e,{value:f,...l})}};var nr={string:"string",file:"file"},rr={bitmark:"bitmark",json:"json",ast:"ast",text:"text"},or={bitmark:"bitmark",bitmarkText:"bitmarkText",plainText:"plainText",html:"html"},ir={v2:2,v3:3},sr={v1:1,v2:2},ar={peggy:"peggy"},pr={list:"list",deprecated:"deprecated",all:"all",bit:"bit"},cr={text:"text",json:"json",pojo:"pojo"},_r={plainText:"text",latex:"latex",json:"json",xml:"xml",bitmarkPlusPlus:"bitmark++"},ur={tag:"tag",body:"body"};var Oe={bold:"bold",light:"light",italic:"italic",highlight:"highlight",highlightOrange:"highlightOrange",highlightYellow:"highlightYellow",highlightGreen:"highlightGreen",highlightBlue:"highlightBlue",highlightPurple:"highlightPurple",highlightPink:"highlightPink",highlightBrown:"highlightBrown",highlightBlack:"highlightBlack",highlightWhite:"highlightWhite",highlightGray:"highlightGray",strike:"strike",subscript:"subscript",superscript:"superscript",ins:"ins",del:"del",underline:"underline",doubleUnderline:"doubleUnderline",circle:"circle",languageEmRed:"languageEmRed",languageEmOrange:"languageEmOrange",languageEmYellow:"languageEmYellow",languageEmGreen:"languageEmGreen",languageEmBlue:"languageEmBlue",languageEmPurple:"languageEmPurple",languageEmPink:"languageEmPink",languageEmBrown:"languageEmBrown",languageEmBlack:"languageEmBlack",languageEmWhite:"languageEmWhite",languageEmGray:"languageEmGray",languageEm:"languageEm",userUnderline:"userUnderline",userDoubleUnderline:"userDoubleUnderline",userStrike:"userStrike",userCircle:"userCircle",userHighlight:"userHighlight",notranslate:"notranslate",link:"link",ref:"ref",xref:"xref",extref:"extref",footnote:"footnote",footnoteStar:"footnote*",symbol:"symbol",var:"var",code:"code",timer:"timer",duration:"duration",color:"color",colorPicker:"colorPicker",comment:"comment"},ve={text:"text",hardBreak:"hardBreak",paragraph:"paragraph",heading:"heading",section:"section",noBulletList:"noBulletList",bulletList:"bulletList",orderedList:"orderedList",orderedListRoman:"orderedListRoman",orderedListRomanLower:"orderedListRomanLower",letteredList:"letteredList",letteredListLower:"letteredListLower",taskList:"taskList",listItem:"listItem",taskItem:"taskItem",image:"image",imageInline:"imageInline",codeBlock:"codeBlock",latex:"latex",gap:"gap",select:"select",highlight:"highlight",mark:"mark"};function dr(t){return t.replace(/-([a-z0-9])/gu,(e,r)=>r.toUpperCase())}var Kt;function _t(){if(!Kt){let t=W(),e=JSON.parse(t.info("all","json","",false,2,true,false,false,"")),r={_standard:"_standard"};for(let{name:n}of e)r[dr(n)]=n;Kt=r;}return Kt}var Te=new Proxy({},{get:(t,e)=>typeof e=="string"?_t()[e]:void 0,has:(t,e)=>typeof e=="string"&&e in _t(),ownKeys:()=>Reflect.ownKeys(_t()),getOwnPropertyDescriptor:(t,e)=>typeof e=="string"&&e in _t()?{value:_t()[e],enumerable:true,configurable:true,writable:false}:void 0});function Fe(t,e){return new Proxy({},{get:(r,n)=>n===Symbol.toPrimitive||n==="toString"||n===Symbol.toStringTag?()=>`[unsupported ${t}]`:$(t,e),has:()=>$(t,e),ownKeys:()=>$(t,e)})}var Ie=Fe("NodeType","it names bpg's internal AST nodes; the legacy AST is bit JSON (see createAst)"),Re=Fe("BoundingBoxIndex","bpg-internal bounding-box utility");function U(t,e){return class{constructor(){$(t,e);}}}var lr="the legacy AST is bit JSON, not bpg's internal node model; walking it with bpg NodeType names would silently misbehave",H="internal class of bpg's TS implementation",Ee=U("Ast",lr),Be=U("BitmarkGenerator",H),Se=U("BitmarkStringGenerator",H),Ae=U("BitmarkFileGenerator",H),Pe=U("JsonGenerator",H),je=U("JsonStringGenerator",H),Le=U("JsonFileGenerator",H),We=U("HtmlTableGenerator",H),Ce=U("HtmlTableParser",H),Je=U("BitmarkParser",H),Me=U("JsonParser",H),De=U("StringWriter",H),Ne=U("FileWriter",H),Ve=U("StreamWriter",H);function fr(t,e,r){return r===void 0?{path:t,op:e}:{path:t,op:e,value:r}}var gr="all";function br(t,e={}){let r=D();if(typeof r.lex!="function")throw new nt("lex",Q());return r.lex(t,e.stage??"lex")}function mr(t,e={}){let r=D().convert(t,"bitmark","json",e.mode??"optimized",false,2,1,e.includeUnknownProperties??false,false);if(r.startsWith("error:"))throw new Error(r.slice(6).trim());return JSON.parse(r)}function xr(t,e={}){let r=t.map(o=>o!==null&&typeof o=="object"&&"bit"in o&&typeof o.bit=="object"?o:{bit:o}),n=D().convert(JSON.stringify(r),"json","bitmark",e.mode??"optimized",false,2,1,false,false);if(n.startsWith("error:"))throw new Error(n.slice(6).trim());return n}function yr(t,e={}){return D().convert(t,e.inputFormat??"auto",e.outputFormat??"auto",e.mode??"optimized",e.pretty??false,e.indent??2,e.spacesAroundValues??1,e.includeUnknownProperties??false,e.mappingReport??false)}function wr(t,e={}){return D().canonicalize(t,e.inputFormat??"auto",e.mode??"optimized",e.pretty??false,e.indent??2,e.spacesAroundValues??1)}function kr(t){let e=D().count_bits(t);if(e.startsWith("error:"))throw new Error(e);return Number.parseInt(e,10)}function hr(t){return JSON.parse(D().split_bits(t))}function Or(t,e={}){let r=D();if(e.preHook||e.postHook)return le(r,t,e);let n=e.patch===void 0?"":typeof e.patch=="string"?e.patch:JSON.stringify(e.patch);return r.transform(t,e.inputFormat??"auto",e.outputFormat??"json",e.mode??"optimized",n,e.pretty??false,e.indent??2,e.spacesAroundValues??1)}function Ge(t,e,r={}){let n=D();if(typeof n.diff!="function")throw new nt("diff",Q());let o=n.diff(t,e,r.inputFormat??"auto",r.outputFormat??"bitmark",r.context??3,r.locate??false,r.similarity??.6,r.bboxTolerance??8,r.spacesAroundValues??0);if(o.startsWith("error:"))throw new Error(o.slice(6).trim());return o}function vr(t,e,r={}){return JSON.parse(Ge(t,e,{...r,outputFormat:"json"}))}function Tr(t,e={}){let r=e.format??"bitmark++",n=e.location??"body";return D().breakscape_text(t,r,n)}function Fr(t,e={}){let r=e.format??"bitmark++",n=e.location??"body";return D().unbreakscape_text(t,r,n)}function Ir(t={}){let e=t.infoType??"list",r=t.format??"text",n=t.bit??"",o=t.pretty??false,s=t.indent??2,i=t.includeDeprecated??false,a=t.onlyDeprecated??false,_=t.full??false,d=typeof t.language=="string"?t.language:t.language?.join(",")??"";return D().info(e,r,n,o,s,i,a,_,d)}function Rr(t){let e=D().register(t.type,t.data);if(e)throw new et(e.replace(/^error:\s*/,""));de(t.type,t.data);}var Er="./wasm/",ze={full:{init:St,initSync:Bt,ns:At,wasmFile:"bitmark_wasm_bg.wasm"},"browser-full":{init:jt,initSync:Pt,ns:Lt,wasmFile:"bitmark_browser_full_wasm_bg.wasm"},"bitmark-json":{init:Ct,initSync:Wt,ns:Jt,wasmFile:"bitmark_json_wasm_bg.wasm"}};ge(()=>D());function qt(t){return t===void 0?Mt:"full"}function Br(t){if(t!==null&&typeof t=="object"&&!(t instanceof URL)&&("feature"in t||"module_or_path"in t)){let r=t;return {feature:r.feature??qt(r.module_or_path),module_or_path:r.module_or_path}}let e=t??void 0;return {feature:qt(e),module_or_path:e}}var He=0,Et,K;async function Zo(t){let{feature:e,module_or_path:r}=Br(t);if(r===void 0){if(!K&&Q()===e)return Et;if(K?.feature===e)return K.promise}let n=++He,o=ze[e],s=r??new URL(`${Er}${o.wasmFile}?v=${ct.version}`,import.meta.url),i=(async()=>{try{let a=await o.init(s);n===He&&(Dt(e,o.ns),Et=a);}finally{K?.seq===n&&(K=void 0);}for(;K;)await K.promise.catch(()=>{});return Et})();return K={feature:e,seq:n,promise:i},i}function ti(t,e={}){let r=e.feature??qt(t),n=ze[r],o=n.initSync(t);return Dt(r,n.ns),Et=o,o}function ei(){return ct.version}function ni(t,e={}){let r=D(),n=Q()??Mt;return fe(r,t,e,(o,s)=>be(o,s,n))}export{gr as ALL_LANGUAGES,yt as NotInitializedError,et as RegisterError,nt as UnsupportedFeatureError,mr as bitmarkToObjects,Tr as breakscapeText,wr as canonicalize,yr as convert,kr as countBits,Ge as diff,vr as diffBits,Ir as info,Zo as init,ti as initSync,Ue as legacy,br as lex,xr as objectsToBitmark,fr as patchEntry,Rr as register,hr as splitBits,Or as transform,ni as transformParallel,Fr as unbreakscapeText,Q as variant,ei as version};//# sourceMappingURL=bitmark-parser.min.js.map
5
5
  //# sourceMappingURL=bitmark-parser.min.js.map