@gmb/bitmark-parser 7.7.0 → 7.9.0

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 (45) hide show
  1. package/README.md +99 -21
  2. package/config/bitmark.json +532 -209
  3. package/dist/browser/bitmark-parser.min.js +6 -6
  4. package/dist/browser/bitmark-parser.min.js.map +1 -1
  5. package/dist/browser/cjs/index.cjs +533 -275
  6. package/dist/browser/cjs/index.cjs.map +1 -1
  7. package/dist/browser/cjs/index.d.cts +103 -22
  8. package/dist/browser/esm/index.d.ts +103 -22
  9. package/dist/browser/esm/index.js +532 -275
  10. package/dist/browser/esm/index.js.map +1 -1
  11. package/dist/browser/esm/worker-entry.js +494 -264
  12. package/dist/browser/esm/worker-entry.js.map +1 -1
  13. package/dist/browser/wasm/bitmark_browser_full_wasm_bg.wasm +0 -0
  14. package/dist/browser/wasm/bitmark_json_wasm_bg.wasm +0 -0
  15. package/dist/browser/wasm/bitmark_wasm_bg.wasm +0 -0
  16. package/dist/index.cjs +43 -8
  17. package/dist/index.cjs.map +1 -1
  18. package/dist/index.d.cts +92 -20
  19. package/dist/index.d.ts +92 -20
  20. package/dist/index.js +42 -8
  21. package/dist/index.js.map +1 -1
  22. package/dist/legacy.cjs +19 -11
  23. package/dist/legacy.cjs.map +1 -1
  24. package/dist/legacy.d.cts +3 -1
  25. package/dist/legacy.d.ts +3 -1
  26. package/dist/legacy.js +19 -11
  27. package/dist/legacy.js.map +1 -1
  28. package/dist/worker-entry.cjs.map +1 -1
  29. package/package.json +7 -7
  30. package/schema/bitmark.schema.json +1 -1
  31. package/wasm/bitmark_wasm.d.ts +52 -30
  32. package/wasm/bitmark_wasm.js +209 -113
  33. package/wasm/bitmark_wasm_bg.wasm +0 -0
  34. package/wasm/bitmark_wasm_bg.wasm.d.ts +5 -2
  35. package/wasm/package.json +1 -1
  36. package/wasm-bitmark-json/bitmark_json_wasm.d.ts +73 -51
  37. package/wasm-bitmark-json/bitmark_json_wasm.js +257 -161
  38. package/wasm-bitmark-json/bitmark_json_wasm_bg.wasm +0 -0
  39. package/wasm-bitmark-json/bitmark_json_wasm_bg.wasm.d.ts +5 -2
  40. package/wasm-bitmark-json/package.json +1 -1
  41. package/wasm-browser-full/bitmark_browser_full_wasm.d.ts +52 -30
  42. package/wasm-browser-full/bitmark_browser_full_wasm.js +209 -113
  43. package/wasm-browser-full/bitmark_browser_full_wasm_bg.wasm +0 -0
  44. package/wasm-browser-full/bitmark_browser_full_wasm_bg.wasm.d.ts +5 -2
  45. package/wasm-browser-full/package.json +1 -1
@@ -30,8 +30,11 @@ __export(bitmark_wasm_exports, {
30
30
  resolve_patch_document: () => resolve_patch_document,
31
31
  split_bits: () => split_bits,
32
32
  split_json_bits: () => split_json_bits,
33
+ template: () => template,
34
+ template_all: () => template_all,
33
35
  transform: () => transform,
34
- unbreakscape_text: () => unbreakscape_text
36
+ unbreakscape_text: () => unbreakscape_text,
37
+ version: () => version
35
38
  });
36
39
  var wasm;
37
40
  var cachedTextDecoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf-8", { ignoreBOM: true, fatal: true }) : { decode: () => {
@@ -204,6 +207,84 @@ function takeObject(idx) {
204
207
  dropObject(idx);
205
208
  return ret;
206
209
  }
210
+ function split_json_bits(input) {
211
+ let deferred3_0;
212
+ let deferred3_1;
213
+ try {
214
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
215
+ const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
216
+ const len0 = WASM_VECTOR_LEN;
217
+ wasm.split_json_bits(retptr, ptr0, len0);
218
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
219
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
220
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
221
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
222
+ var ptr2 = r0;
223
+ var len2 = r1;
224
+ if (r3) {
225
+ ptr2 = 0;
226
+ len2 = 0;
227
+ throw takeObject(r2);
228
+ }
229
+ deferred3_0 = ptr2;
230
+ deferred3_1 = len2;
231
+ return getStringFromWasm0(ptr2, len2);
232
+ } finally {
233
+ wasm.__wbindgen_add_to_stack_pointer(16);
234
+ wasm.__wbindgen_export_2(deferred3_0, deferred3_1, 1);
235
+ }
236
+ }
237
+ function prettify(json, indent) {
238
+ let deferred2_0;
239
+ let deferred2_1;
240
+ try {
241
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
242
+ const ptr0 = passStringToWasm0(json, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
243
+ const len0 = WASM_VECTOR_LEN;
244
+ wasm.prettify(retptr, ptr0, len0, indent);
245
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
246
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
247
+ deferred2_0 = r0;
248
+ deferred2_1 = r1;
249
+ return getStringFromWasm0(r0, r1);
250
+ } finally {
251
+ wasm.__wbindgen_add_to_stack_pointer(16);
252
+ wasm.__wbindgen_export_2(deferred2_0, deferred2_1, 1);
253
+ }
254
+ }
255
+ function convert_text(input, direction, format, location) {
256
+ let deferred6_0;
257
+ let deferred6_1;
258
+ try {
259
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
260
+ const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
261
+ const len0 = WASM_VECTOR_LEN;
262
+ const ptr1 = passStringToWasm0(direction, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
263
+ const len1 = WASM_VECTOR_LEN;
264
+ const ptr2 = passStringToWasm0(format, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
265
+ const len2 = WASM_VECTOR_LEN;
266
+ const ptr3 = passStringToWasm0(location, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
267
+ const len3 = WASM_VECTOR_LEN;
268
+ wasm.convert_text(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3);
269
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
270
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
271
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
272
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
273
+ var ptr5 = r0;
274
+ var len5 = r1;
275
+ if (r3) {
276
+ ptr5 = 0;
277
+ len5 = 0;
278
+ throw takeObject(r2);
279
+ }
280
+ deferred6_0 = ptr5;
281
+ deferred6_1 = len5;
282
+ return getStringFromWasm0(ptr5, len5);
283
+ } finally {
284
+ wasm.__wbindgen_add_to_stack_pointer(16);
285
+ wasm.__wbindgen_export_2(deferred6_0, deferred6_1, 1);
286
+ }
287
+ }
207
288
  function transform(input, input_format_sel, output_format_sel, mode, patch_json, pretty, indent, spaces_around_values) {
208
289
  let deferred7_0;
209
290
  let deferred7_1;
@@ -303,7 +384,7 @@ function diff(a, b, input_format_sel, output_format_sel, context, locate, simila
303
384
  wasm.__wbindgen_export_2(deferred6_0, deferred6_1, 1);
304
385
  }
305
386
  }
306
- function complete(input, line, character, position_encoding, include_deprecated, trigger_character) {
387
+ function complete(input, line, character, position_encoding, include_deprecated, trigger_character, bit_template) {
307
388
  let deferred5_0;
308
389
  let deferred5_1;
309
390
  try {
@@ -314,7 +395,7 @@ function complete(input, line, character, position_encoding, include_deprecated,
314
395
  const len1 = WASM_VECTOR_LEN;
315
396
  const ptr2 = passStringToWasm0(trigger_character, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
316
397
  const len2 = WASM_VECTOR_LEN;
317
- wasm.complete(retptr, ptr0, len0, line, character, ptr1, len1, include_deprecated, ptr2, len2);
398
+ wasm.complete(retptr, ptr0, len0, line, character, ptr1, len1, include_deprecated, ptr2, len2, bit_template);
318
399
  var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
319
400
  var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
320
401
  var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
@@ -334,7 +415,7 @@ function complete(input, line, character, position_encoding, include_deprecated,
334
415
  wasm.__wbindgen_export_2(deferred5_0, deferred5_1, 1);
335
416
  }
336
417
  }
337
- function resolve(input, line, character, position_encoding, include_deprecated, label, kind) {
418
+ function resolve(input, line, character, position_encoding, include_deprecated, bit_template, label, kind) {
338
419
  let deferred5_0;
339
420
  let deferred5_1;
340
421
  try {
@@ -345,7 +426,7 @@ function resolve(input, line, character, position_encoding, include_deprecated,
345
426
  const len1 = WASM_VECTOR_LEN;
346
427
  const ptr2 = passStringToWasm0(label, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
347
428
  const len2 = WASM_VECTOR_LEN;
348
- wasm.resolve(retptr, ptr0, len0, line, character, ptr1, len1, include_deprecated, ptr2, len2, kind);
429
+ wasm.resolve(retptr, ptr0, len0, line, character, ptr1, len1, include_deprecated, bit_template, ptr2, len2, kind);
349
430
  var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
350
431
  var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
351
432
  var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
@@ -394,6 +475,51 @@ function hover(input, line, character, position_encoding) {
394
475
  wasm.__wbindgen_export_2(deferred4_0, deferred4_1, 1);
395
476
  }
396
477
  }
478
+ function template(bit, format, full, include_deprecated, pretty, indent) {
479
+ let deferred4_0;
480
+ let deferred4_1;
481
+ try {
482
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
483
+ const ptr0 = passStringToWasm0(bit, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
484
+ const len0 = WASM_VECTOR_LEN;
485
+ const ptr1 = passStringToWasm0(format, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
486
+ const len1 = WASM_VECTOR_LEN;
487
+ wasm.template(retptr, ptr0, len0, ptr1, len1, full, include_deprecated, pretty, indent);
488
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
489
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
490
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
491
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
492
+ var ptr3 = r0;
493
+ var len3 = r1;
494
+ if (r3) {
495
+ ptr3 = 0;
496
+ len3 = 0;
497
+ throw takeObject(r2);
498
+ }
499
+ deferred4_0 = ptr3;
500
+ deferred4_1 = len3;
501
+ return getStringFromWasm0(ptr3, len3);
502
+ } finally {
503
+ wasm.__wbindgen_add_to_stack_pointer(16);
504
+ wasm.__wbindgen_export_2(deferred4_0, deferred4_1, 1);
505
+ }
506
+ }
507
+ function template_all(include_deprecated, pretty, indent) {
508
+ let deferred1_0;
509
+ let deferred1_1;
510
+ try {
511
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
512
+ wasm.template_all(retptr, include_deprecated, pretty, indent);
513
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
514
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
515
+ deferred1_0 = r0;
516
+ deferred1_1 = r1;
517
+ return getStringFromWasm0(r0, r1);
518
+ } finally {
519
+ wasm.__wbindgen_add_to_stack_pointer(16);
520
+ wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);
521
+ }
522
+ }
397
523
  function register(data_type, data) {
398
524
  try {
399
525
  const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
@@ -489,89 +615,27 @@ function split_bits(input, position_encoding) {
489
615
  wasm.__wbindgen_export_2(deferred3_0, deferred3_1, 1);
490
616
  }
491
617
  }
492
- function is_bitmark(input) {
493
- const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
494
- const len0 = WASM_VECTOR_LEN;
495
- const ret = wasm.is_bitmark(ptr0, len0);
496
- return ret !== 0;
497
- }
498
- function split_json_bits(input) {
499
- let deferred3_0;
500
- let deferred3_1;
501
- try {
502
- const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
503
- const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
504
- const len0 = WASM_VECTOR_LEN;
505
- wasm.split_json_bits(retptr, ptr0, len0);
506
- var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
507
- var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
508
- var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
509
- var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
510
- var ptr2 = r0;
511
- var len2 = r1;
512
- if (r3) {
513
- ptr2 = 0;
514
- len2 = 0;
515
- throw takeObject(r2);
516
- }
517
- deferred3_0 = ptr2;
518
- deferred3_1 = len2;
519
- return getStringFromWasm0(ptr2, len2);
520
- } finally {
521
- wasm.__wbindgen_add_to_stack_pointer(16);
522
- wasm.__wbindgen_export_2(deferred3_0, deferred3_1, 1);
523
- }
524
- }
525
- function prettify(json, indent) {
526
- let deferred2_0;
527
- let deferred2_1;
618
+ function version() {
619
+ let deferred1_0;
620
+ let deferred1_1;
528
621
  try {
529
622
  const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
530
- const ptr0 = passStringToWasm0(json, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
531
- const len0 = WASM_VECTOR_LEN;
532
- wasm.prettify(retptr, ptr0, len0, indent);
623
+ wasm.version(retptr);
533
624
  var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
534
625
  var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
535
- deferred2_0 = r0;
536
- deferred2_1 = r1;
626
+ deferred1_0 = r0;
627
+ deferred1_1 = r1;
537
628
  return getStringFromWasm0(r0, r1);
538
629
  } finally {
539
630
  wasm.__wbindgen_add_to_stack_pointer(16);
540
- wasm.__wbindgen_export_2(deferred2_0, deferred2_1, 1);
631
+ wasm.__wbindgen_export_2(deferred1_0, deferred1_1, 1);
541
632
  }
542
633
  }
543
- function convert_text(input, direction, format, location) {
544
- let deferred6_0;
545
- let deferred6_1;
546
- try {
547
- const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
548
- const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
549
- const len0 = WASM_VECTOR_LEN;
550
- const ptr1 = passStringToWasm0(direction, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
551
- const len1 = WASM_VECTOR_LEN;
552
- const ptr2 = passStringToWasm0(format, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
553
- const len2 = WASM_VECTOR_LEN;
554
- const ptr3 = passStringToWasm0(location, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
555
- const len3 = WASM_VECTOR_LEN;
556
- wasm.convert_text(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3);
557
- var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
558
- var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
559
- var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
560
- var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
561
- var ptr5 = r0;
562
- var len5 = r1;
563
- if (r3) {
564
- ptr5 = 0;
565
- len5 = 0;
566
- throw takeObject(r2);
567
- }
568
- deferred6_0 = ptr5;
569
- deferred6_1 = len5;
570
- return getStringFromWasm0(ptr5, len5);
571
- } finally {
572
- wasm.__wbindgen_add_to_stack_pointer(16);
573
- wasm.__wbindgen_export_2(deferred6_0, deferred6_1, 1);
574
- }
634
+ function is_bitmark(input) {
635
+ const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1);
636
+ const len0 = WASM_VECTOR_LEN;
637
+ const ret = wasm.is_bitmark(ptr0, len0);
638
+ return ret !== 0;
575
639
  }
576
640
  function convert(input, input_format_sel, output_format_sel, mode, pretty, indent, spaces_around_values, include_unknown_properties, mapping_report, position_encoding, tokens_layout) {
577
641
  let deferred8_0;
@@ -691,8 +755,8 @@ var ConvertDetails = class _ConvertDetails {
691
755
  }
692
756
  }
693
757
  /**
694
- * The bit spans, flat `[index, start, end, …]`; `undefined` when not
695
- * asked for.
758
+ * The bit spans, flat `[index, inputStart, inputEnd, outputStart,
759
+ * outputEnd, …]` (PLAN-223 F5); `undefined` when not asked for.
696
760
  * @returns {Uint32Array | undefined}
697
761
  */
698
762
  bit_spans() {
@@ -842,8 +906,11 @@ __export(bitmark_browser_full_wasm_exports, {
842
906
  resolve_patch_document: () => resolve_patch_document2,
843
907
  split_bits: () => split_bits2,
844
908
  split_json_bits: () => split_json_bits2,
909
+ template: () => template2,
910
+ template_all: () => template_all2,
845
911
  transform: () => transform2,
846
- unbreakscape_text: () => unbreakscape_text2
912
+ unbreakscape_text: () => unbreakscape_text2,
913
+ version: () => version2
847
914
  });
848
915
  var wasm2;
849
916
  var cachedTextDecoder2 = typeof TextDecoder !== "undefined" ? new TextDecoder("utf-8", { ignoreBOM: true, fatal: true }) : { decode: () => {
@@ -1016,6 +1083,84 @@ function takeObject2(idx) {
1016
1083
  dropObject2(idx);
1017
1084
  return ret;
1018
1085
  }
1086
+ function split_json_bits2(input) {
1087
+ let deferred3_0;
1088
+ let deferred3_1;
1089
+ try {
1090
+ const retptr = wasm2.__wbindgen_add_to_stack_pointer(-16);
1091
+ const ptr0 = passStringToWasm02(input, wasm2.__wbindgen_export_0, wasm2.__wbindgen_export_1);
1092
+ const len0 = WASM_VECTOR_LEN2;
1093
+ wasm2.split_json_bits(retptr, ptr0, len0);
1094
+ var r0 = getDataViewMemory02().getInt32(retptr + 4 * 0, true);
1095
+ var r1 = getDataViewMemory02().getInt32(retptr + 4 * 1, true);
1096
+ var r2 = getDataViewMemory02().getInt32(retptr + 4 * 2, true);
1097
+ var r3 = getDataViewMemory02().getInt32(retptr + 4 * 3, true);
1098
+ var ptr2 = r0;
1099
+ var len2 = r1;
1100
+ if (r3) {
1101
+ ptr2 = 0;
1102
+ len2 = 0;
1103
+ throw takeObject2(r2);
1104
+ }
1105
+ deferred3_0 = ptr2;
1106
+ deferred3_1 = len2;
1107
+ return getStringFromWasm02(ptr2, len2);
1108
+ } finally {
1109
+ wasm2.__wbindgen_add_to_stack_pointer(16);
1110
+ wasm2.__wbindgen_export_2(deferred3_0, deferred3_1, 1);
1111
+ }
1112
+ }
1113
+ function prettify2(json, indent) {
1114
+ let deferred2_0;
1115
+ let deferred2_1;
1116
+ try {
1117
+ const retptr = wasm2.__wbindgen_add_to_stack_pointer(-16);
1118
+ const ptr0 = passStringToWasm02(json, wasm2.__wbindgen_export_0, wasm2.__wbindgen_export_1);
1119
+ const len0 = WASM_VECTOR_LEN2;
1120
+ wasm2.prettify(retptr, ptr0, len0, indent);
1121
+ var r0 = getDataViewMemory02().getInt32(retptr + 4 * 0, true);
1122
+ var r1 = getDataViewMemory02().getInt32(retptr + 4 * 1, true);
1123
+ deferred2_0 = r0;
1124
+ deferred2_1 = r1;
1125
+ return getStringFromWasm02(r0, r1);
1126
+ } finally {
1127
+ wasm2.__wbindgen_add_to_stack_pointer(16);
1128
+ wasm2.__wbindgen_export_2(deferred2_0, deferred2_1, 1);
1129
+ }
1130
+ }
1131
+ function convert_text2(input, direction, format, location) {
1132
+ let deferred6_0;
1133
+ let deferred6_1;
1134
+ try {
1135
+ const retptr = wasm2.__wbindgen_add_to_stack_pointer(-16);
1136
+ const ptr0 = passStringToWasm02(input, wasm2.__wbindgen_export_0, wasm2.__wbindgen_export_1);
1137
+ const len0 = WASM_VECTOR_LEN2;
1138
+ const ptr1 = passStringToWasm02(direction, wasm2.__wbindgen_export_0, wasm2.__wbindgen_export_1);
1139
+ const len1 = WASM_VECTOR_LEN2;
1140
+ const ptr2 = passStringToWasm02(format, wasm2.__wbindgen_export_0, wasm2.__wbindgen_export_1);
1141
+ const len2 = WASM_VECTOR_LEN2;
1142
+ const ptr3 = passStringToWasm02(location, wasm2.__wbindgen_export_0, wasm2.__wbindgen_export_1);
1143
+ const len3 = WASM_VECTOR_LEN2;
1144
+ wasm2.convert_text(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3);
1145
+ var r0 = getDataViewMemory02().getInt32(retptr + 4 * 0, true);
1146
+ var r1 = getDataViewMemory02().getInt32(retptr + 4 * 1, true);
1147
+ var r2 = getDataViewMemory02().getInt32(retptr + 4 * 2, true);
1148
+ var r3 = getDataViewMemory02().getInt32(retptr + 4 * 3, true);
1149
+ var ptr5 = r0;
1150
+ var len5 = r1;
1151
+ if (r3) {
1152
+ ptr5 = 0;
1153
+ len5 = 0;
1154
+ throw takeObject2(r2);
1155
+ }
1156
+ deferred6_0 = ptr5;
1157
+ deferred6_1 = len5;
1158
+ return getStringFromWasm02(ptr5, len5);
1159
+ } finally {
1160
+ wasm2.__wbindgen_add_to_stack_pointer(16);
1161
+ wasm2.__wbindgen_export_2(deferred6_0, deferred6_1, 1);
1162
+ }
1163
+ }
1019
1164
  function transform2(input, input_format_sel, output_format_sel, mode, patch_json, pretty, indent, spaces_around_values) {
1020
1165
  let deferred7_0;
1021
1166
  let deferred7_1;
@@ -1115,7 +1260,7 @@ function diff2(a, b, input_format_sel, output_format_sel, context, locate, simil
1115
1260
  wasm2.__wbindgen_export_2(deferred6_0, deferred6_1, 1);
1116
1261
  }
1117
1262
  }
1118
- function complete2(input, line, character, position_encoding, include_deprecated, trigger_character) {
1263
+ function complete2(input, line, character, position_encoding, include_deprecated, trigger_character, bit_template) {
1119
1264
  let deferred5_0;
1120
1265
  let deferred5_1;
1121
1266
  try {
@@ -1126,7 +1271,7 @@ function complete2(input, line, character, position_encoding, include_deprecated
1126
1271
  const len1 = WASM_VECTOR_LEN2;
1127
1272
  const ptr2 = passStringToWasm02(trigger_character, wasm2.__wbindgen_export_0, wasm2.__wbindgen_export_1);
1128
1273
  const len2 = WASM_VECTOR_LEN2;
1129
- wasm2.complete(retptr, ptr0, len0, line, character, ptr1, len1, include_deprecated, ptr2, len2);
1274
+ wasm2.complete(retptr, ptr0, len0, line, character, ptr1, len1, include_deprecated, ptr2, len2, bit_template);
1130
1275
  var r0 = getDataViewMemory02().getInt32(retptr + 4 * 0, true);
1131
1276
  var r1 = getDataViewMemory02().getInt32(retptr + 4 * 1, true);
1132
1277
  var r2 = getDataViewMemory02().getInt32(retptr + 4 * 2, true);
@@ -1146,7 +1291,7 @@ function complete2(input, line, character, position_encoding, include_deprecated
1146
1291
  wasm2.__wbindgen_export_2(deferred5_0, deferred5_1, 1);
1147
1292
  }
1148
1293
  }
1149
- function resolve2(input, line, character, position_encoding, include_deprecated, label, kind) {
1294
+ function resolve2(input, line, character, position_encoding, include_deprecated, bit_template, label, kind) {
1150
1295
  let deferred5_0;
1151
1296
  let deferred5_1;
1152
1297
  try {
@@ -1157,7 +1302,7 @@ function resolve2(input, line, character, position_encoding, include_deprecated,
1157
1302
  const len1 = WASM_VECTOR_LEN2;
1158
1303
  const ptr2 = passStringToWasm02(label, wasm2.__wbindgen_export_0, wasm2.__wbindgen_export_1);
1159
1304
  const len2 = WASM_VECTOR_LEN2;
1160
- wasm2.resolve(retptr, ptr0, len0, line, character, ptr1, len1, include_deprecated, ptr2, len2, kind);
1305
+ wasm2.resolve(retptr, ptr0, len0, line, character, ptr1, len1, include_deprecated, bit_template, ptr2, len2, kind);
1161
1306
  var r0 = getDataViewMemory02().getInt32(retptr + 4 * 0, true);
1162
1307
  var r1 = getDataViewMemory02().getInt32(retptr + 4 * 1, true);
1163
1308
  var r2 = getDataViewMemory02().getInt32(retptr + 4 * 2, true);
@@ -1206,6 +1351,51 @@ function hover2(input, line, character, position_encoding) {
1206
1351
  wasm2.__wbindgen_export_2(deferred4_0, deferred4_1, 1);
1207
1352
  }
1208
1353
  }
1354
+ function template2(bit, format, full, include_deprecated, pretty, indent) {
1355
+ let deferred4_0;
1356
+ let deferred4_1;
1357
+ try {
1358
+ const retptr = wasm2.__wbindgen_add_to_stack_pointer(-16);
1359
+ const ptr0 = passStringToWasm02(bit, wasm2.__wbindgen_export_0, wasm2.__wbindgen_export_1);
1360
+ const len0 = WASM_VECTOR_LEN2;
1361
+ const ptr1 = passStringToWasm02(format, wasm2.__wbindgen_export_0, wasm2.__wbindgen_export_1);
1362
+ const len1 = WASM_VECTOR_LEN2;
1363
+ wasm2.template(retptr, ptr0, len0, ptr1, len1, full, include_deprecated, pretty, indent);
1364
+ var r0 = getDataViewMemory02().getInt32(retptr + 4 * 0, true);
1365
+ var r1 = getDataViewMemory02().getInt32(retptr + 4 * 1, true);
1366
+ var r2 = getDataViewMemory02().getInt32(retptr + 4 * 2, true);
1367
+ var r3 = getDataViewMemory02().getInt32(retptr + 4 * 3, true);
1368
+ var ptr3 = r0;
1369
+ var len3 = r1;
1370
+ if (r3) {
1371
+ ptr3 = 0;
1372
+ len3 = 0;
1373
+ throw takeObject2(r2);
1374
+ }
1375
+ deferred4_0 = ptr3;
1376
+ deferred4_1 = len3;
1377
+ return getStringFromWasm02(ptr3, len3);
1378
+ } finally {
1379
+ wasm2.__wbindgen_add_to_stack_pointer(16);
1380
+ wasm2.__wbindgen_export_2(deferred4_0, deferred4_1, 1);
1381
+ }
1382
+ }
1383
+ function template_all2(include_deprecated, pretty, indent) {
1384
+ let deferred1_0;
1385
+ let deferred1_1;
1386
+ try {
1387
+ const retptr = wasm2.__wbindgen_add_to_stack_pointer(-16);
1388
+ wasm2.template_all(retptr, include_deprecated, pretty, indent);
1389
+ var r0 = getDataViewMemory02().getInt32(retptr + 4 * 0, true);
1390
+ var r1 = getDataViewMemory02().getInt32(retptr + 4 * 1, true);
1391
+ deferred1_0 = r0;
1392
+ deferred1_1 = r1;
1393
+ return getStringFromWasm02(r0, r1);
1394
+ } finally {
1395
+ wasm2.__wbindgen_add_to_stack_pointer(16);
1396
+ wasm2.__wbindgen_export_2(deferred1_0, deferred1_1, 1);
1397
+ }
1398
+ }
1209
1399
  function register2(data_type, data) {
1210
1400
  try {
1211
1401
  const retptr = wasm2.__wbindgen_add_to_stack_pointer(-16);
@@ -1301,90 +1491,28 @@ function split_bits2(input, position_encoding) {
1301
1491
  wasm2.__wbindgen_export_2(deferred3_0, deferred3_1, 1);
1302
1492
  }
1303
1493
  }
1304
- function is_bitmark2(input) {
1305
- const ptr0 = passStringToWasm02(input, wasm2.__wbindgen_export_0, wasm2.__wbindgen_export_1);
1306
- const len0 = WASM_VECTOR_LEN2;
1307
- const ret = wasm2.is_bitmark(ptr0, len0);
1308
- return ret !== 0;
1309
- }
1310
- function split_json_bits2(input) {
1311
- let deferred3_0;
1312
- let deferred3_1;
1494
+ function version2() {
1495
+ let deferred1_0;
1496
+ let deferred1_1;
1313
1497
  try {
1314
1498
  const retptr = wasm2.__wbindgen_add_to_stack_pointer(-16);
1315
- const ptr0 = passStringToWasm02(input, wasm2.__wbindgen_export_0, wasm2.__wbindgen_export_1);
1316
- const len0 = WASM_VECTOR_LEN2;
1317
- wasm2.split_json_bits(retptr, ptr0, len0);
1499
+ wasm2.version(retptr);
1318
1500
  var r0 = getDataViewMemory02().getInt32(retptr + 4 * 0, true);
1319
1501
  var r1 = getDataViewMemory02().getInt32(retptr + 4 * 1, true);
1320
- var r2 = getDataViewMemory02().getInt32(retptr + 4 * 2, true);
1321
- var r3 = getDataViewMemory02().getInt32(retptr + 4 * 3, true);
1322
- var ptr2 = r0;
1323
- var len2 = r1;
1324
- if (r3) {
1325
- ptr2 = 0;
1326
- len2 = 0;
1327
- throw takeObject2(r2);
1328
- }
1329
- deferred3_0 = ptr2;
1330
- deferred3_1 = len2;
1331
- return getStringFromWasm02(ptr2, len2);
1332
- } finally {
1333
- wasm2.__wbindgen_add_to_stack_pointer(16);
1334
- wasm2.__wbindgen_export_2(deferred3_0, deferred3_1, 1);
1335
- }
1336
- }
1337
- function prettify2(json, indent) {
1338
- let deferred2_0;
1339
- let deferred2_1;
1340
- try {
1341
- const retptr = wasm2.__wbindgen_add_to_stack_pointer(-16);
1342
- const ptr0 = passStringToWasm02(json, wasm2.__wbindgen_export_0, wasm2.__wbindgen_export_1);
1343
- const len0 = WASM_VECTOR_LEN2;
1344
- wasm2.prettify(retptr, ptr0, len0, indent);
1345
- var r0 = getDataViewMemory02().getInt32(retptr + 4 * 0, true);
1346
- var r1 = getDataViewMemory02().getInt32(retptr + 4 * 1, true);
1347
- deferred2_0 = r0;
1348
- deferred2_1 = r1;
1349
- return getStringFromWasm02(r0, r1);
1350
- } finally {
1351
- wasm2.__wbindgen_add_to_stack_pointer(16);
1352
- wasm2.__wbindgen_export_2(deferred2_0, deferred2_1, 1);
1353
- }
1354
- }
1355
- function convert_text2(input, direction, format, location) {
1356
- let deferred6_0;
1357
- let deferred6_1;
1358
- try {
1359
- const retptr = wasm2.__wbindgen_add_to_stack_pointer(-16);
1360
- const ptr0 = passStringToWasm02(input, wasm2.__wbindgen_export_0, wasm2.__wbindgen_export_1);
1361
- const len0 = WASM_VECTOR_LEN2;
1362
- const ptr1 = passStringToWasm02(direction, wasm2.__wbindgen_export_0, wasm2.__wbindgen_export_1);
1363
- const len1 = WASM_VECTOR_LEN2;
1364
- const ptr2 = passStringToWasm02(format, wasm2.__wbindgen_export_0, wasm2.__wbindgen_export_1);
1365
- const len2 = WASM_VECTOR_LEN2;
1366
- const ptr3 = passStringToWasm02(location, wasm2.__wbindgen_export_0, wasm2.__wbindgen_export_1);
1367
- const len3 = WASM_VECTOR_LEN2;
1368
- wasm2.convert_text(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3);
1369
- var r0 = getDataViewMemory02().getInt32(retptr + 4 * 0, true);
1370
- var r1 = getDataViewMemory02().getInt32(retptr + 4 * 1, true);
1371
- var r2 = getDataViewMemory02().getInt32(retptr + 4 * 2, true);
1372
- var r3 = getDataViewMemory02().getInt32(retptr + 4 * 3, true);
1373
- var ptr5 = r0;
1374
- var len5 = r1;
1375
- if (r3) {
1376
- ptr5 = 0;
1377
- len5 = 0;
1378
- throw takeObject2(r2);
1379
- }
1380
- deferred6_0 = ptr5;
1381
- deferred6_1 = len5;
1382
- return getStringFromWasm02(ptr5, len5);
1502
+ deferred1_0 = r0;
1503
+ deferred1_1 = r1;
1504
+ return getStringFromWasm02(r0, r1);
1383
1505
  } finally {
1384
1506
  wasm2.__wbindgen_add_to_stack_pointer(16);
1385
- wasm2.__wbindgen_export_2(deferred6_0, deferred6_1, 1);
1507
+ wasm2.__wbindgen_export_2(deferred1_0, deferred1_1, 1);
1386
1508
  }
1387
1509
  }
1510
+ function is_bitmark2(input) {
1511
+ const ptr0 = passStringToWasm02(input, wasm2.__wbindgen_export_0, wasm2.__wbindgen_export_1);
1512
+ const len0 = WASM_VECTOR_LEN2;
1513
+ const ret = wasm2.is_bitmark(ptr0, len0);
1514
+ return ret !== 0;
1515
+ }
1388
1516
  function convert2(input, input_format_sel, output_format_sel, mode, pretty, indent, spaces_around_values, include_unknown_properties, mapping_report, position_encoding, tokens_layout) {
1389
1517
  let deferred8_0;
1390
1518
  let deferred8_1;
@@ -1503,8 +1631,8 @@ var ConvertDetails2 = class _ConvertDetails {
1503
1631
  }
1504
1632
  }
1505
1633
  /**
1506
- * The bit spans, flat `[index, start, end, …]`; `undefined` when not
1507
- * asked for.
1634
+ * The bit spans, flat `[index, inputStart, inputEnd, outputStart,
1635
+ * outputEnd, …]` (PLAN-223 F5); `undefined` when not asked for.
1508
1636
  * @returns {Uint32Array | undefined}
1509
1637
  */
1510
1638
  bit_spans() {
@@ -1652,8 +1780,11 @@ __export(bitmark_json_wasm_exports, {
1652
1780
  resolve_patch_document: () => resolve_patch_document3,
1653
1781
  split_bits: () => split_bits3,
1654
1782
  split_json_bits: () => split_json_bits3,
1783
+ template: () => template3,
1784
+ template_all: () => template_all3,
1655
1785
  transform: () => transform3,
1656
- unbreakscape_text: () => unbreakscape_text3
1786
+ unbreakscape_text: () => unbreakscape_text3,
1787
+ version: () => version3
1657
1788
  });
1658
1789
  var wasm3;
1659
1790
  var cachedTextDecoder3 = typeof TextDecoder !== "undefined" ? new TextDecoder("utf-8", { ignoreBOM: true, fatal: true }) : { decode: () => {
@@ -1822,21 +1953,119 @@ function takeObject3(idx) {
1822
1953
  dropObject3(idx);
1823
1954
  return ret;
1824
1955
  }
1825
- function register3(data_type, data) {
1956
+ function template3(bit, format, full, include_deprecated, pretty, indent) {
1957
+ let deferred4_0;
1958
+ let deferred4_1;
1826
1959
  try {
1827
1960
  const retptr = wasm3.__wbindgen_add_to_stack_pointer(-16);
1828
- const ptr0 = passStringToWasm03(data_type, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
1961
+ const ptr0 = passStringToWasm03(bit, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
1829
1962
  const len0 = WASM_VECTOR_LEN3;
1830
- const ptr1 = passStringToWasm03(data, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
1963
+ const ptr1 = passStringToWasm03(format, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
1831
1964
  const len1 = WASM_VECTOR_LEN3;
1832
- wasm3.register(retptr, ptr0, len0, ptr1, len1);
1965
+ wasm3.template(retptr, ptr0, len0, ptr1, len1, full, include_deprecated, pretty, indent);
1833
1966
  var r0 = getDataViewMemory03().getInt32(retptr + 4 * 0, true);
1834
1967
  var r1 = getDataViewMemory03().getInt32(retptr + 4 * 1, true);
1835
- if (r1) {
1836
- throw takeObject3(r0);
1968
+ var r2 = getDataViewMemory03().getInt32(retptr + 4 * 2, true);
1969
+ var r3 = getDataViewMemory03().getInt32(retptr + 4 * 3, true);
1970
+ var ptr3 = r0;
1971
+ var len3 = r1;
1972
+ if (r3) {
1973
+ ptr3 = 0;
1974
+ len3 = 0;
1975
+ throw takeObject3(r2);
1976
+ }
1977
+ deferred4_0 = ptr3;
1978
+ deferred4_1 = len3;
1979
+ return getStringFromWasm03(ptr3, len3);
1980
+ } finally {
1981
+ wasm3.__wbindgen_add_to_stack_pointer(16);
1982
+ wasm3.__wbindgen_export_2(deferred4_0, deferred4_1, 1);
1983
+ }
1984
+ }
1985
+ function prettify3(json, indent) {
1986
+ let deferred2_0;
1987
+ let deferred2_1;
1988
+ try {
1989
+ const retptr = wasm3.__wbindgen_add_to_stack_pointer(-16);
1990
+ const ptr0 = passStringToWasm03(json, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
1991
+ const len0 = WASM_VECTOR_LEN3;
1992
+ wasm3.prettify(retptr, ptr0, len0, indent);
1993
+ var r0 = getDataViewMemory03().getInt32(retptr + 4 * 0, true);
1994
+ var r1 = getDataViewMemory03().getInt32(retptr + 4 * 1, true);
1995
+ deferred2_0 = r0;
1996
+ deferred2_1 = r1;
1997
+ return getStringFromWasm03(r0, r1);
1998
+ } finally {
1999
+ wasm3.__wbindgen_add_to_stack_pointer(16);
2000
+ wasm3.__wbindgen_export_2(deferred2_0, deferred2_1, 1);
2001
+ }
2002
+ }
2003
+ function convert_text3(input, direction, format, location) {
2004
+ let deferred6_0;
2005
+ let deferred6_1;
2006
+ try {
2007
+ const retptr = wasm3.__wbindgen_add_to_stack_pointer(-16);
2008
+ const ptr0 = passStringToWasm03(input, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2009
+ const len0 = WASM_VECTOR_LEN3;
2010
+ const ptr1 = passStringToWasm03(direction, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2011
+ const len1 = WASM_VECTOR_LEN3;
2012
+ const ptr2 = passStringToWasm03(format, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2013
+ const len2 = WASM_VECTOR_LEN3;
2014
+ const ptr3 = passStringToWasm03(location, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2015
+ const len3 = WASM_VECTOR_LEN3;
2016
+ wasm3.convert_text(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3);
2017
+ var r0 = getDataViewMemory03().getInt32(retptr + 4 * 0, true);
2018
+ var r1 = getDataViewMemory03().getInt32(retptr + 4 * 1, true);
2019
+ var r2 = getDataViewMemory03().getInt32(retptr + 4 * 2, true);
2020
+ var r3 = getDataViewMemory03().getInt32(retptr + 4 * 3, true);
2021
+ var ptr5 = r0;
2022
+ var len5 = r1;
2023
+ if (r3) {
2024
+ ptr5 = 0;
2025
+ len5 = 0;
2026
+ throw takeObject3(r2);
2027
+ }
2028
+ deferred6_0 = ptr5;
2029
+ deferred6_1 = len5;
2030
+ return getStringFromWasm03(ptr5, len5);
2031
+ } finally {
2032
+ wasm3.__wbindgen_add_to_stack_pointer(16);
2033
+ wasm3.__wbindgen_export_2(deferred6_0, deferred6_1, 1);
2034
+ }
2035
+ }
2036
+ function transform3(input, input_format_sel, output_format_sel, mode, patch_json, pretty, indent, spaces_around_values) {
2037
+ let deferred7_0;
2038
+ let deferred7_1;
2039
+ try {
2040
+ const retptr = wasm3.__wbindgen_add_to_stack_pointer(-16);
2041
+ const ptr0 = passStringToWasm03(input, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2042
+ const len0 = WASM_VECTOR_LEN3;
2043
+ const ptr1 = passStringToWasm03(input_format_sel, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2044
+ const len1 = WASM_VECTOR_LEN3;
2045
+ const ptr2 = passStringToWasm03(output_format_sel, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2046
+ const len2 = WASM_VECTOR_LEN3;
2047
+ const ptr3 = passStringToWasm03(mode, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2048
+ const len3 = WASM_VECTOR_LEN3;
2049
+ const ptr4 = passStringToWasm03(patch_json, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2050
+ const len4 = WASM_VECTOR_LEN3;
2051
+ wasm3.transform(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, ptr4, len4, pretty, indent, spaces_around_values);
2052
+ var r0 = getDataViewMemory03().getInt32(retptr + 4 * 0, true);
2053
+ var r1 = getDataViewMemory03().getInt32(retptr + 4 * 1, true);
2054
+ var r2 = getDataViewMemory03().getInt32(retptr + 4 * 2, true);
2055
+ var r3 = getDataViewMemory03().getInt32(retptr + 4 * 3, true);
2056
+ var ptr6 = r0;
2057
+ var len6 = r1;
2058
+ if (r3) {
2059
+ ptr6 = 0;
2060
+ len6 = 0;
2061
+ throw takeObject3(r2);
1837
2062
  }
2063
+ deferred7_0 = ptr6;
2064
+ deferred7_1 = len6;
2065
+ return getStringFromWasm03(ptr6, len6);
1838
2066
  } finally {
1839
2067
  wasm3.__wbindgen_add_to_stack_pointer(16);
2068
+ wasm3.__wbindgen_export_2(deferred7_0, deferred7_1, 1);
1840
2069
  }
1841
2070
  }
1842
2071
  function resolve_patch_document3(input, input_format_sel, patch_json) {
@@ -1870,7 +2099,7 @@ function resolve_patch_document3(input, input_format_sel, patch_json) {
1870
2099
  wasm3.__wbindgen_export_2(deferred5_0, deferred5_1, 1);
1871
2100
  }
1872
2101
  }
1873
- function complete3(input, line, character, position_encoding, include_deprecated, trigger_character) {
2102
+ function complete3(input, line, character, position_encoding, include_deprecated, trigger_character, bit_template) {
1874
2103
  let deferred5_0;
1875
2104
  let deferred5_1;
1876
2105
  try {
@@ -1881,7 +2110,7 @@ function complete3(input, line, character, position_encoding, include_deprecated
1881
2110
  const len1 = WASM_VECTOR_LEN3;
1882
2111
  const ptr2 = passStringToWasm03(trigger_character, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
1883
2112
  const len2 = WASM_VECTOR_LEN3;
1884
- wasm3.complete(retptr, ptr0, len0, line, character, ptr1, len1, include_deprecated, ptr2, len2);
2113
+ wasm3.complete(retptr, ptr0, len0, line, character, ptr1, len1, include_deprecated, ptr2, len2, bit_template);
1885
2114
  var r0 = getDataViewMemory03().getInt32(retptr + 4 * 0, true);
1886
2115
  var r1 = getDataViewMemory03().getInt32(retptr + 4 * 1, true);
1887
2116
  var r2 = getDataViewMemory03().getInt32(retptr + 4 * 2, true);
@@ -1901,7 +2130,7 @@ function complete3(input, line, character, position_encoding, include_deprecated
1901
2130
  wasm3.__wbindgen_export_2(deferred5_0, deferred5_1, 1);
1902
2131
  }
1903
2132
  }
1904
- function resolve3(input, line, character, position_encoding, include_deprecated, label, kind) {
2133
+ function resolve3(input, line, character, position_encoding, include_deprecated, bit_template, label, kind) {
1905
2134
  let deferred5_0;
1906
2135
  let deferred5_1;
1907
2136
  try {
@@ -1912,7 +2141,7 @@ function resolve3(input, line, character, position_encoding, include_deprecated,
1912
2141
  const len1 = WASM_VECTOR_LEN3;
1913
2142
  const ptr2 = passStringToWasm03(label, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
1914
2143
  const len2 = WASM_VECTOR_LEN3;
1915
- wasm3.resolve(retptr, ptr0, len0, line, character, ptr1, len1, include_deprecated, ptr2, len2, kind);
2144
+ wasm3.resolve(retptr, ptr0, len0, line, character, ptr1, len1, include_deprecated, bit_template, ptr2, len2, kind);
1916
2145
  var r0 = getDataViewMemory03().getInt32(retptr + 4 * 0, true);
1917
2146
  var r1 = getDataViewMemory03().getInt32(retptr + 4 * 1, true);
1918
2147
  var r2 = getDataViewMemory03().getInt32(retptr + 4 * 2, true);
@@ -1961,6 +2190,39 @@ function hover3(input, line, character, position_encoding) {
1961
2190
  wasm3.__wbindgen_export_2(deferred4_0, deferred4_1, 1);
1962
2191
  }
1963
2192
  }
2193
+ function template_all3(include_deprecated, pretty, indent) {
2194
+ let deferred1_0;
2195
+ let deferred1_1;
2196
+ try {
2197
+ const retptr = wasm3.__wbindgen_add_to_stack_pointer(-16);
2198
+ wasm3.template_all(retptr, include_deprecated, pretty, indent);
2199
+ var r0 = getDataViewMemory03().getInt32(retptr + 4 * 0, true);
2200
+ var r1 = getDataViewMemory03().getInt32(retptr + 4 * 1, true);
2201
+ deferred1_0 = r0;
2202
+ deferred1_1 = r1;
2203
+ return getStringFromWasm03(r0, r1);
2204
+ } finally {
2205
+ wasm3.__wbindgen_add_to_stack_pointer(16);
2206
+ wasm3.__wbindgen_export_2(deferred1_0, deferred1_1, 1);
2207
+ }
2208
+ }
2209
+ function register3(data_type, data) {
2210
+ try {
2211
+ const retptr = wasm3.__wbindgen_add_to_stack_pointer(-16);
2212
+ const ptr0 = passStringToWasm03(data_type, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2213
+ const len0 = WASM_VECTOR_LEN3;
2214
+ const ptr1 = passStringToWasm03(data, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2215
+ const len1 = WASM_VECTOR_LEN3;
2216
+ wasm3.register(retptr, ptr0, len0, ptr1, len1);
2217
+ var r0 = getDataViewMemory03().getInt32(retptr + 4 * 0, true);
2218
+ var r1 = getDataViewMemory03().getInt32(retptr + 4 * 1, true);
2219
+ if (r1) {
2220
+ throw takeObject3(r0);
2221
+ }
2222
+ } finally {
2223
+ wasm3.__wbindgen_add_to_stack_pointer(16);
2224
+ }
2225
+ }
1964
2226
  function canonicalize3(input, input_format_sel, mode, pretty, indent, spaces_around_values) {
1965
2227
  let deferred5_0;
1966
2228
  let deferred5_1;
@@ -2039,6 +2301,22 @@ function split_bits3(input, position_encoding) {
2039
2301
  wasm3.__wbindgen_export_2(deferred3_0, deferred3_1, 1);
2040
2302
  }
2041
2303
  }
2304
+ function version3() {
2305
+ let deferred1_0;
2306
+ let deferred1_1;
2307
+ try {
2308
+ const retptr = wasm3.__wbindgen_add_to_stack_pointer(-16);
2309
+ wasm3.version(retptr);
2310
+ var r0 = getDataViewMemory03().getInt32(retptr + 4 * 0, true);
2311
+ var r1 = getDataViewMemory03().getInt32(retptr + 4 * 1, true);
2312
+ deferred1_0 = r0;
2313
+ deferred1_1 = r1;
2314
+ return getStringFromWasm03(r0, r1);
2315
+ } finally {
2316
+ wasm3.__wbindgen_add_to_stack_pointer(16);
2317
+ wasm3.__wbindgen_export_2(deferred1_0, deferred1_1, 1);
2318
+ }
2319
+ }
2042
2320
  function is_bitmark3(input) {
2043
2321
  const ptr0 = passStringToWasm03(input, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2044
2322
  const len0 = WASM_VECTOR_LEN3;
@@ -2072,92 +2350,6 @@ function split_json_bits3(input) {
2072
2350
  wasm3.__wbindgen_export_2(deferred3_0, deferred3_1, 1);
2073
2351
  }
2074
2352
  }
2075
- function prettify3(json, indent) {
2076
- let deferred2_0;
2077
- let deferred2_1;
2078
- try {
2079
- const retptr = wasm3.__wbindgen_add_to_stack_pointer(-16);
2080
- const ptr0 = passStringToWasm03(json, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2081
- const len0 = WASM_VECTOR_LEN3;
2082
- wasm3.prettify(retptr, ptr0, len0, indent);
2083
- var r0 = getDataViewMemory03().getInt32(retptr + 4 * 0, true);
2084
- var r1 = getDataViewMemory03().getInt32(retptr + 4 * 1, true);
2085
- deferred2_0 = r0;
2086
- deferred2_1 = r1;
2087
- return getStringFromWasm03(r0, r1);
2088
- } finally {
2089
- wasm3.__wbindgen_add_to_stack_pointer(16);
2090
- wasm3.__wbindgen_export_2(deferred2_0, deferred2_1, 1);
2091
- }
2092
- }
2093
- function convert_text3(input, direction, format, location) {
2094
- let deferred6_0;
2095
- let deferred6_1;
2096
- try {
2097
- const retptr = wasm3.__wbindgen_add_to_stack_pointer(-16);
2098
- const ptr0 = passStringToWasm03(input, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2099
- const len0 = WASM_VECTOR_LEN3;
2100
- const ptr1 = passStringToWasm03(direction, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2101
- const len1 = WASM_VECTOR_LEN3;
2102
- const ptr2 = passStringToWasm03(format, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2103
- const len2 = WASM_VECTOR_LEN3;
2104
- const ptr3 = passStringToWasm03(location, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2105
- const len3 = WASM_VECTOR_LEN3;
2106
- wasm3.convert_text(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3);
2107
- var r0 = getDataViewMemory03().getInt32(retptr + 4 * 0, true);
2108
- var r1 = getDataViewMemory03().getInt32(retptr + 4 * 1, true);
2109
- var r2 = getDataViewMemory03().getInt32(retptr + 4 * 2, true);
2110
- var r3 = getDataViewMemory03().getInt32(retptr + 4 * 3, true);
2111
- var ptr5 = r0;
2112
- var len5 = r1;
2113
- if (r3) {
2114
- ptr5 = 0;
2115
- len5 = 0;
2116
- throw takeObject3(r2);
2117
- }
2118
- deferred6_0 = ptr5;
2119
- deferred6_1 = len5;
2120
- return getStringFromWasm03(ptr5, len5);
2121
- } finally {
2122
- wasm3.__wbindgen_add_to_stack_pointer(16);
2123
- wasm3.__wbindgen_export_2(deferred6_0, deferred6_1, 1);
2124
- }
2125
- }
2126
- function transform3(input, input_format_sel, output_format_sel, mode, patch_json, pretty, indent, spaces_around_values) {
2127
- let deferred7_0;
2128
- let deferred7_1;
2129
- try {
2130
- const retptr = wasm3.__wbindgen_add_to_stack_pointer(-16);
2131
- const ptr0 = passStringToWasm03(input, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2132
- const len0 = WASM_VECTOR_LEN3;
2133
- const ptr1 = passStringToWasm03(input_format_sel, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2134
- const len1 = WASM_VECTOR_LEN3;
2135
- const ptr2 = passStringToWasm03(output_format_sel, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2136
- const len2 = WASM_VECTOR_LEN3;
2137
- const ptr3 = passStringToWasm03(mode, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2138
- const len3 = WASM_VECTOR_LEN3;
2139
- const ptr4 = passStringToWasm03(patch_json, wasm3.__wbindgen_export_0, wasm3.__wbindgen_export_1);
2140
- const len4 = WASM_VECTOR_LEN3;
2141
- wasm3.transform(retptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, ptr4, len4, pretty, indent, spaces_around_values);
2142
- var r0 = getDataViewMemory03().getInt32(retptr + 4 * 0, true);
2143
- var r1 = getDataViewMemory03().getInt32(retptr + 4 * 1, true);
2144
- var r2 = getDataViewMemory03().getInt32(retptr + 4 * 2, true);
2145
- var r3 = getDataViewMemory03().getInt32(retptr + 4 * 3, true);
2146
- var ptr6 = r0;
2147
- var len6 = r1;
2148
- if (r3) {
2149
- ptr6 = 0;
2150
- len6 = 0;
2151
- throw takeObject3(r2);
2152
- }
2153
- deferred7_0 = ptr6;
2154
- deferred7_1 = len6;
2155
- return getStringFromWasm03(ptr6, len6);
2156
- } finally {
2157
- wasm3.__wbindgen_add_to_stack_pointer(16);
2158
- wasm3.__wbindgen_export_2(deferred7_0, deferred7_1, 1);
2159
- }
2160
- }
2161
2353
  function convert3(input, input_format_sel, output_format_sel, mode, pretty, indent, spaces_around_values, include_unknown_properties, mapping_report, position_encoding, tokens_layout) {
2162
2354
  let deferred8_0;
2163
2355
  let deferred8_1;
@@ -2276,8 +2468,8 @@ var ConvertDetails3 = class _ConvertDetails {
2276
2468
  }
2277
2469
  }
2278
2470
  /**
2279
- * The bit spans, flat `[index, start, end, …]`; `undefined` when not
2280
- * asked for.
2471
+ * The bit spans, flat `[index, inputStart, inputEnd, outputStart,
2472
+ * outputEnd, …]` (PLAN-223 F5); `undefined` when not asked for.
2281
2473
  * @returns {Uint32Array | undefined}
2282
2474
  */
2283
2475
  bit_spans() {
@@ -2406,7 +2598,7 @@ var bitmark_json_wasm_default = __wbg_init3;
2406
2598
  // src/generated/package_info.ts
2407
2599
  var PACKAGE_INFO = {
2408
2600
  "name": "@gmb/bitmark-parser",
2409
- "version": "7.7.0",
2601
+ "version": "7.9.0",
2410
2602
  "author": "Get More Brain Ltd <info@getmorebrain.com>",
2411
2603
  "license": "ISC",
2412
2604
  "description": "A parser for bitmark text, powered by WebAssembly."
@@ -2472,6 +2664,9 @@ function rememberRegistration(type, data) {
2472
2664
  function variant() {
2473
2665
  return activeFeature;
2474
2666
  }
2667
+ function engineVersion(fallback) {
2668
+ return active ? active.version() : fallback;
2669
+ }
2475
2670
 
2476
2671
  // src/core/hooked-transform.ts
2477
2672
  function stripArray(doc) {
@@ -2680,9 +2875,38 @@ function runJobsWithPool(jobs, workers, spawn) {
2680
2875
  });
2681
2876
  }
2682
2877
 
2878
+ // src/browser/wasm-version.ts
2879
+ function pinPackageUrl(url, name, version5) {
2880
+ const marker = `/${name}@`;
2881
+ const at = url.pathname.indexOf(marker);
2882
+ if (at === -1) return url;
2883
+ const from = at + marker.length;
2884
+ const to = url.pathname.indexOf("/", from);
2885
+ if (to === -1) return url;
2886
+ const pinned = new URL(url.href);
2887
+ pinned.pathname = url.pathname.slice(0, from) + version5 + url.pathname.slice(to);
2888
+ return pinned;
2889
+ }
2890
+ function ownUrl(path, base) {
2891
+ return pinPackageUrl(new URL(path, base), PACKAGE_INFO.name, PACKAGE_INFO.version);
2892
+ }
2893
+ function assertWasmVersion(ns) {
2894
+ let wasm4;
2895
+ try {
2896
+ wasm4 = ns.version?.();
2897
+ } catch {
2898
+ wasm4 = void 0;
2899
+ }
2900
+ if (wasm4 !== PACKAGE_INFO.version) {
2901
+ throw new Error(
2902
+ `version-mismatch: the bitmark-parser wasm is ${wasm4 ?? "an older release"}, but this script is ${PACKAGE_INFO.version}; load both from the same version`
2903
+ );
2904
+ }
2905
+ }
2906
+
2683
2907
  // src/browser/pool.ts
2684
2908
  function runJobsParallel(jobs, workers, feature) {
2685
- const workerUrl = new URL("./worker-entry.js", import.meta.url);
2909
+ const workerUrl = ownUrl("./worker-entry.js", import.meta.url);
2686
2910
  return runJobsWithPool(jobs, workers, (onResult, onError) => {
2687
2911
  const w = new Worker(workerUrl, { type: "module" });
2688
2912
  w.onmessage = (ev) => onResult(ev.data);
@@ -3039,10 +3263,12 @@ var BitmarkParserGenerator = class {
3039
3263
  /**
3040
3264
  * Get the version of the library.
3041
3265
  *
3042
- * Reports the @gmb/bitmark-parser version (not a bpg version string).
3266
+ * Reports the @gmb/bitmark-parser version (not a bpg version string): the
3267
+ * one the loaded wasm reports, else the package's own (PLAN-224). Never
3268
+ * throws.
3043
3269
  */
3044
3270
  version() {
3045
- return PACKAGE_INFO.version;
3271
+ return engineVersion(PACKAGE_INFO.version);
3046
3272
  }
3047
3273
  /**
3048
3274
  * Convert bitmark from bitmark to JSON, or JSON to bitmark (bpg-compatible).
@@ -3845,9 +4071,15 @@ function convertWithDetails(input, options = {}) {
3845
4071
  const result = { output: details.take_data() };
3846
4072
  const flat = details.bit_spans();
3847
4073
  if (flat !== void 0) {
3848
- const spans = new Array(flat.length / 3);
3849
- for (let i = 0, j = 0; j < flat.length; i++, j += 3) {
3850
- spans[i] = { index: flat[j], start: flat[j + 1], end: flat[j + 2] };
4074
+ const spans = new Array(flat.length / 5);
4075
+ for (let i = 0, j = 0; j < flat.length; i++, j += 5) {
4076
+ spans[i] = {
4077
+ index: flat[j],
4078
+ inputStart: flat[j + 1],
4079
+ inputEnd: flat[j + 2],
4080
+ outputStart: flat[j + 3],
4081
+ outputEnd: flat[j + 4]
4082
+ };
3851
4083
  }
3852
4084
  result.bitSpans = {
3853
4085
  positionEncoding: details.bit_spans_encoding(),
@@ -3888,7 +4120,8 @@ function complete4(input, position, options = {}) {
3888
4120
  position.character,
3889
4121
  options.positionEncoding ?? "",
3890
4122
  options.includeDeprecated ?? false,
3891
- options.triggerCharacter ?? ""
4123
+ options.triggerCharacter ?? "",
4124
+ options.bitTemplate ?? false
3892
4125
  )
3893
4126
  );
3894
4127
  }
@@ -3902,6 +4135,7 @@ function resolve4(input, position, item, options = {}) {
3902
4135
  position.character,
3903
4136
  options.positionEncoding ?? "",
3904
4137
  options.includeDeprecated ?? false,
4138
+ options.bitTemplate ?? false,
3905
4139
  item.label,
3906
4140
  item.kind
3907
4141
  )
@@ -4009,6 +4243,26 @@ function info4(options = {}) {
4009
4243
  language
4010
4244
  );
4011
4245
  }
4246
+ function template4(options) {
4247
+ const format = options.format ?? "text";
4248
+ const pretty = options.pretty ?? false;
4249
+ const indent = options.indent ?? 2;
4250
+ const includeDeprecated = options.includeDeprecated ?? false;
4251
+ const wasm4 = getActive();
4252
+ if (typeof wasm4.template !== "function" || typeof wasm4.template_all !== "function") {
4253
+ throw new UnsupportedFeatureError("template", variant());
4254
+ }
4255
+ if (options.all) {
4256
+ if (format === "snippet") {
4257
+ throw new Error("template({ all: true }) renders every bit as JSON; there is no snippet form");
4258
+ }
4259
+ return wasm4.template_all(includeDeprecated, pretty, indent);
4260
+ }
4261
+ if (!options.bit) {
4262
+ throw new Error("template() needs a bit name, or all: true");
4263
+ }
4264
+ return wasm4.template(options.bit, format, options.full ?? false, includeDeprecated, pretty, indent);
4265
+ }
4012
4266
  function register4(options) {
4013
4267
  try {
4014
4268
  getActive().register(options.type, options.data);
@@ -4071,10 +4325,11 @@ async function init(options) {
4071
4325
  }
4072
4326
  const mySeq = ++initSeq;
4073
4327
  const v = VARIANTS[feature];
4074
- const source = module_or_path ?? new URL(`${WASM_BASE}${v.wasmFile}?v=${PACKAGE_INFO.version}`, import.meta.url);
4328
+ const source = module_or_path ?? ownUrl(`${WASM_BASE}${v.wasmFile}?v=${PACKAGE_INFO.version}`, import.meta.url);
4075
4329
  const promise = (async () => {
4076
4330
  try {
4077
4331
  const out = await v.init({ module_or_path: source });
4332
+ assertWasmVersion(v.ns);
4078
4333
  if (mySeq === initSeq) {
4079
4334
  setActive(feature, v.ns);
4080
4335
  activeOut = out;
@@ -4093,14 +4348,15 @@ function initSync4(module, options = {}) {
4093
4348
  const feature = options.feature ?? defaultFeatureFor(module);
4094
4349
  const v = VARIANTS[feature];
4095
4350
  const out = v.initSync({ module });
4351
+ assertWasmVersion(v.ns);
4096
4352
  ++initSeq;
4097
4353
  inflight = void 0;
4098
4354
  setActive(feature, v.ns);
4099
4355
  activeOut = out;
4100
4356
  return out;
4101
4357
  }
4102
- function version() {
4103
- return PACKAGE_INFO.version;
4358
+ function version4() {
4359
+ return engineVersion(PACKAGE_INFO.version);
4104
4360
  }
4105
4361
  function transformParallel(input, options = {}) {
4106
4362
  const wasm4 = getActive();
@@ -4142,10 +4398,11 @@ export {
4142
4398
  resolve4 as resolve,
4143
4399
  semanticTokens,
4144
4400
  splitBits,
4401
+ template4 as template,
4145
4402
  transform4 as transform,
4146
4403
  transformParallel,
4147
4404
  unbreakscapeText,
4148
4405
  variant,
4149
- version
4406
+ version4 as version
4150
4407
  };
4151
4408
  //# sourceMappingURL=index.js.map