@kreuzberg/html-to-markdown-wasm 3.4.0-rc.8 → 3.4.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.
@@ -1,7 +1,3 @@
1
-
2
- /**
3
- * @typedef {import("./html_to_markdown_wasm").WasmConversionOptions} WasmConversionOptions
4
- */
5
1
  /* @ts-self-types="./html_to_markdown_wasm.d.ts" */
6
2
 
7
3
  /**
@@ -399,8 +395,9 @@ class WasmConversionOptions {
399
395
  * @param {boolean | null} [infer_dimensions]
400
396
  * @param {string[] | null} [exclude_selectors]
401
397
  * @param {number | null} [max_depth]
398
+ * @param {WasmVisitorHandle | null} [visitor]
402
399
  */
403
- constructor(heading_style, list_indent_type, list_indent_width, bullets, strong_em_symbol, escape_asterisks, escape_underscores, escape_misc, escape_ascii, code_language, autolinks, default_title, br_in_tables, highlight_style, extract_metadata, whitespace_mode, strip_newlines, wrap, wrap_width, convert_as_inline, sub_symbol, sup_symbol, newline_style, code_block_style, keep_inline_images_in, preprocessing, encoding, debug, strip_tags, preserve_tags, skip_images, link_style, output_format, include_document_structure, extract_images, max_image_size, capture_svg, infer_dimensions, exclude_selectors, max_depth) {
400
+ constructor(heading_style, list_indent_type, list_indent_width, bullets, strong_em_symbol, escape_asterisks, escape_underscores, escape_misc, escape_ascii, code_language, autolinks, default_title, br_in_tables, highlight_style, extract_metadata, whitespace_mode, strip_newlines, wrap, wrap_width, convert_as_inline, sub_symbol, sup_symbol, newline_style, code_block_style, keep_inline_images_in, preprocessing, encoding, debug, strip_tags, preserve_tags, skip_images, link_style, output_format, include_document_structure, extract_images, max_image_size, capture_svg, infer_dimensions, exclude_selectors, max_depth, visitor) {
404
401
  var ptr0 = isLikeNone(bullets) ? 0 : passStringToWasm0(bullets, wasm.__wbindgen_export, wasm.__wbindgen_export2);
405
402
  var len0 = WASM_VECTOR_LEN;
406
403
  var ptr1 = isLikeNone(strong_em_symbol) ? 0 : passStringToWasm0(strong_em_symbol, wasm.__wbindgen_export, wasm.__wbindgen_export2);
@@ -426,7 +423,12 @@ class WasmConversionOptions {
426
423
  var len9 = WASM_VECTOR_LEN;
427
424
  var ptr10 = isLikeNone(exclude_selectors) ? 0 : passArrayJsValueToWasm0(exclude_selectors, wasm.__wbindgen_export);
428
425
  var len10 = WASM_VECTOR_LEN;
429
- const ret = wasm.wasmconversionoptions_new(isLikeNone(heading_style) ? 3 : heading_style, isLikeNone(list_indent_type) ? 2 : list_indent_type, isLikeNone(list_indent_width) ? Number.MAX_SAFE_INTEGER : (list_indent_width) >>> 0, ptr0, len0, ptr1, len1, isLikeNone(escape_asterisks) ? 0xFFFFFF : escape_asterisks ? 1 : 0, isLikeNone(escape_underscores) ? 0xFFFFFF : escape_underscores ? 1 : 0, isLikeNone(escape_misc) ? 0xFFFFFF : escape_misc ? 1 : 0, isLikeNone(escape_ascii) ? 0xFFFFFF : escape_ascii ? 1 : 0, ptr2, len2, isLikeNone(autolinks) ? 0xFFFFFF : autolinks ? 1 : 0, isLikeNone(default_title) ? 0xFFFFFF : default_title ? 1 : 0, isLikeNone(br_in_tables) ? 0xFFFFFF : br_in_tables ? 1 : 0, isLikeNone(highlight_style) ? 4 : highlight_style, isLikeNone(extract_metadata) ? 0xFFFFFF : extract_metadata ? 1 : 0, isLikeNone(whitespace_mode) ? 2 : whitespace_mode, isLikeNone(strip_newlines) ? 0xFFFFFF : strip_newlines ? 1 : 0, isLikeNone(wrap) ? 0xFFFFFF : wrap ? 1 : 0, isLikeNone(wrap_width) ? Number.MAX_SAFE_INTEGER : (wrap_width) >>> 0, isLikeNone(convert_as_inline) ? 0xFFFFFF : convert_as_inline ? 1 : 0, ptr3, len3, ptr4, len4, isLikeNone(newline_style) ? 2 : newline_style, isLikeNone(code_block_style) ? 3 : code_block_style, ptr5, len5, ptr6, ptr7, len7, isLikeNone(debug) ? 0xFFFFFF : debug ? 1 : 0, ptr8, len8, ptr9, len9, isLikeNone(skip_images) ? 0xFFFFFF : skip_images ? 1 : 0, isLikeNone(link_style) ? 2 : link_style, isLikeNone(output_format) ? 3 : output_format, isLikeNone(include_document_structure) ? 0xFFFFFF : include_document_structure ? 1 : 0, isLikeNone(extract_images) ? 0xFFFFFF : extract_images ? 1 : 0, !isLikeNone(max_image_size), isLikeNone(max_image_size) ? BigInt(0) : max_image_size, isLikeNone(capture_svg) ? 0xFFFFFF : capture_svg ? 1 : 0, isLikeNone(infer_dimensions) ? 0xFFFFFF : infer_dimensions ? 1 : 0, ptr10, len10, isLikeNone(max_depth) ? Number.MAX_SAFE_INTEGER : (max_depth) >>> 0);
426
+ let ptr11 = 0;
427
+ if (!isLikeNone(visitor)) {
428
+ _assertClass(visitor, WasmVisitorHandle);
429
+ ptr11 = visitor.__destroy_into_raw();
430
+ }
431
+ const ret = wasm.wasmconversionoptions_new(isLikeNone(heading_style) ? 3 : heading_style, isLikeNone(list_indent_type) ? 2 : list_indent_type, isLikeNone(list_indent_width) ? Number.MAX_SAFE_INTEGER : (list_indent_width) >>> 0, ptr0, len0, ptr1, len1, isLikeNone(escape_asterisks) ? 0xFFFFFF : escape_asterisks ? 1 : 0, isLikeNone(escape_underscores) ? 0xFFFFFF : escape_underscores ? 1 : 0, isLikeNone(escape_misc) ? 0xFFFFFF : escape_misc ? 1 : 0, isLikeNone(escape_ascii) ? 0xFFFFFF : escape_ascii ? 1 : 0, ptr2, len2, isLikeNone(autolinks) ? 0xFFFFFF : autolinks ? 1 : 0, isLikeNone(default_title) ? 0xFFFFFF : default_title ? 1 : 0, isLikeNone(br_in_tables) ? 0xFFFFFF : br_in_tables ? 1 : 0, isLikeNone(highlight_style) ? 4 : highlight_style, isLikeNone(extract_metadata) ? 0xFFFFFF : extract_metadata ? 1 : 0, isLikeNone(whitespace_mode) ? 2 : whitespace_mode, isLikeNone(strip_newlines) ? 0xFFFFFF : strip_newlines ? 1 : 0, isLikeNone(wrap) ? 0xFFFFFF : wrap ? 1 : 0, isLikeNone(wrap_width) ? Number.MAX_SAFE_INTEGER : (wrap_width) >>> 0, isLikeNone(convert_as_inline) ? 0xFFFFFF : convert_as_inline ? 1 : 0, ptr3, len3, ptr4, len4, isLikeNone(newline_style) ? 2 : newline_style, isLikeNone(code_block_style) ? 3 : code_block_style, ptr5, len5, ptr6, ptr7, len7, isLikeNone(debug) ? 0xFFFFFF : debug ? 1 : 0, ptr8, len8, ptr9, len9, isLikeNone(skip_images) ? 0xFFFFFF : skip_images ? 1 : 0, isLikeNone(link_style) ? 2 : link_style, isLikeNone(output_format) ? 3 : output_format, isLikeNone(include_document_structure) ? 0xFFFFFF : include_document_structure ? 1 : 0, isLikeNone(extract_images) ? 0xFFFFFF : extract_images ? 1 : 0, !isLikeNone(max_image_size), isLikeNone(max_image_size) ? BigInt(0) : max_image_size, isLikeNone(capture_svg) ? 0xFFFFFF : capture_svg ? 1 : 0, isLikeNone(infer_dimensions) ? 0xFFFFFF : infer_dimensions ? 1 : 0, ptr10, len10, isLikeNone(max_depth) ? Number.MAX_SAFE_INTEGER : (max_depth) >>> 0, ptr11);
430
432
  this.__wbg_ptr = ret;
431
433
  WasmConversionOptionsFinalization.register(this, this.__wbg_ptr, this);
432
434
  return this;
@@ -712,6 +714,17 @@ class WasmConversionOptions {
712
714
  const len0 = WASM_VECTOR_LEN;
713
715
  wasm.wasmconversionoptions_set_supSymbol(this.__wbg_ptr, ptr0, len0);
714
716
  }
717
+ /**
718
+ * @param {WasmVisitorHandle | null} [value]
719
+ */
720
+ set visitor(value) {
721
+ let ptr0 = 0;
722
+ if (!isLikeNone(value)) {
723
+ _assertClass(value, WasmVisitorHandle);
724
+ ptr0 = value.__destroy_into_raw();
725
+ }
726
+ wasm.wasmconversionoptions_set_visitor(this.__wbg_ptr, ptr0);
727
+ }
715
728
  /**
716
729
  * @param {WasmWhitespaceMode} value
717
730
  */
@@ -817,6 +830,13 @@ class WasmConversionOptions {
817
830
  wasm.__wbindgen_export4(deferred1_0, deferred1_1, 1);
818
831
  }
819
832
  }
833
+ /**
834
+ * @returns {WasmVisitorHandle | undefined}
835
+ */
836
+ get visitor() {
837
+ const ret = wasm.wasmconversionoptions_visitor(this.__wbg_ptr);
838
+ return ret === 0 ? undefined : WasmVisitorHandle.__wrap(ret);
839
+ }
820
840
  /**
821
841
  * @returns {WasmWhitespaceMode}
822
842
  */
@@ -927,6 +947,20 @@ class WasmConversionOptionsBuilder {
927
947
  const ret = wasm.wasmconversionoptionsbuilder_stripTags(this.__wbg_ptr, ptr0, len0);
928
948
  return WasmConversionOptionsBuilder.__wrap(ret);
929
949
  }
950
+ /**
951
+ * Set the visitor used during conversion.
952
+ * @param {WasmVisitorHandle | null} [visitor]
953
+ * @returns {WasmConversionOptionsBuilder}
954
+ */
955
+ visitor(visitor) {
956
+ let ptr0 = 0;
957
+ if (!isLikeNone(visitor)) {
958
+ _assertClass(visitor, WasmVisitorHandle);
959
+ ptr0 = visitor.__destroy_into_raw();
960
+ }
961
+ const ret = wasm.wasmconversionoptionsbuilder_visitor(this.__wbg_ptr, ptr0);
962
+ return WasmConversionOptionsBuilder.__wrap(ret);
963
+ }
930
964
  }
931
965
  if (Symbol.dispose) WasmConversionOptionsBuilder.prototype[Symbol.dispose] = WasmConversionOptionsBuilder.prototype.free;
932
966
  exports.WasmConversionOptionsBuilder = WasmConversionOptionsBuilder;
@@ -1245,8 +1279,9 @@ class WasmConversionOptionsUpdate {
1245
1279
  * @param {boolean | null} [infer_dimensions]
1246
1280
  * @param {number | null} [max_depth]
1247
1281
  * @param {string[] | null} [exclude_selectors]
1282
+ * @param {WasmVisitorHandle | null} [visitor]
1248
1283
  */
1249
- constructor(heading_style, list_indent_type, list_indent_width, bullets, strong_em_symbol, escape_asterisks, escape_underscores, escape_misc, escape_ascii, code_language, autolinks, default_title, br_in_tables, highlight_style, extract_metadata, whitespace_mode, strip_newlines, wrap, wrap_width, convert_as_inline, sub_symbol, sup_symbol, newline_style, code_block_style, keep_inline_images_in, preprocessing, encoding, debug, strip_tags, preserve_tags, skip_images, link_style, output_format, include_document_structure, extract_images, max_image_size, capture_svg, infer_dimensions, max_depth, exclude_selectors) {
1284
+ constructor(heading_style, list_indent_type, list_indent_width, bullets, strong_em_symbol, escape_asterisks, escape_underscores, escape_misc, escape_ascii, code_language, autolinks, default_title, br_in_tables, highlight_style, extract_metadata, whitespace_mode, strip_newlines, wrap, wrap_width, convert_as_inline, sub_symbol, sup_symbol, newline_style, code_block_style, keep_inline_images_in, preprocessing, encoding, debug, strip_tags, preserve_tags, skip_images, link_style, output_format, include_document_structure, extract_images, max_image_size, capture_svg, infer_dimensions, max_depth, exclude_selectors, visitor) {
1250
1285
  var ptr0 = isLikeNone(bullets) ? 0 : passStringToWasm0(bullets, wasm.__wbindgen_export, wasm.__wbindgen_export2);
1251
1286
  var len0 = WASM_VECTOR_LEN;
1252
1287
  var ptr1 = isLikeNone(strong_em_symbol) ? 0 : passStringToWasm0(strong_em_symbol, wasm.__wbindgen_export, wasm.__wbindgen_export2);
@@ -1272,7 +1307,12 @@ class WasmConversionOptionsUpdate {
1272
1307
  var len9 = WASM_VECTOR_LEN;
1273
1308
  var ptr10 = isLikeNone(exclude_selectors) ? 0 : passArrayJsValueToWasm0(exclude_selectors, wasm.__wbindgen_export);
1274
1309
  var len10 = WASM_VECTOR_LEN;
1275
- const ret = wasm.wasmconversionoptionsupdate_new(isLikeNone(heading_style) ? 3 : heading_style, isLikeNone(list_indent_type) ? 2 : list_indent_type, isLikeNone(list_indent_width) ? Number.MAX_SAFE_INTEGER : (list_indent_width) >>> 0, ptr0, len0, ptr1, len1, isLikeNone(escape_asterisks) ? 0xFFFFFF : escape_asterisks ? 1 : 0, isLikeNone(escape_underscores) ? 0xFFFFFF : escape_underscores ? 1 : 0, isLikeNone(escape_misc) ? 0xFFFFFF : escape_misc ? 1 : 0, isLikeNone(escape_ascii) ? 0xFFFFFF : escape_ascii ? 1 : 0, ptr2, len2, isLikeNone(autolinks) ? 0xFFFFFF : autolinks ? 1 : 0, isLikeNone(default_title) ? 0xFFFFFF : default_title ? 1 : 0, isLikeNone(br_in_tables) ? 0xFFFFFF : br_in_tables ? 1 : 0, isLikeNone(highlight_style) ? 4 : highlight_style, isLikeNone(extract_metadata) ? 0xFFFFFF : extract_metadata ? 1 : 0, isLikeNone(whitespace_mode) ? 2 : whitespace_mode, isLikeNone(strip_newlines) ? 0xFFFFFF : strip_newlines ? 1 : 0, isLikeNone(wrap) ? 0xFFFFFF : wrap ? 1 : 0, isLikeNone(wrap_width) ? Number.MAX_SAFE_INTEGER : (wrap_width) >>> 0, isLikeNone(convert_as_inline) ? 0xFFFFFF : convert_as_inline ? 1 : 0, ptr3, len3, ptr4, len4, isLikeNone(newline_style) ? 2 : newline_style, isLikeNone(code_block_style) ? 3 : code_block_style, ptr5, len5, ptr6, ptr7, len7, isLikeNone(debug) ? 0xFFFFFF : debug ? 1 : 0, ptr8, len8, ptr9, len9, isLikeNone(skip_images) ? 0xFFFFFF : skip_images ? 1 : 0, isLikeNone(link_style) ? 2 : link_style, isLikeNone(output_format) ? 3 : output_format, isLikeNone(include_document_structure) ? 0xFFFFFF : include_document_structure ? 1 : 0, isLikeNone(extract_images) ? 0xFFFFFF : extract_images ? 1 : 0, !isLikeNone(max_image_size), isLikeNone(max_image_size) ? BigInt(0) : max_image_size, isLikeNone(capture_svg) ? 0xFFFFFF : capture_svg ? 1 : 0, isLikeNone(infer_dimensions) ? 0xFFFFFF : infer_dimensions ? 1 : 0, isLikeNone(max_depth) ? Number.MAX_SAFE_INTEGER : (max_depth) >>> 0, ptr10, len10);
1310
+ let ptr11 = 0;
1311
+ if (!isLikeNone(visitor)) {
1312
+ _assertClass(visitor, WasmVisitorHandle);
1313
+ ptr11 = visitor.__destroy_into_raw();
1314
+ }
1315
+ const ret = wasm.wasmconversionoptionsupdate_new(isLikeNone(heading_style) ? 3 : heading_style, isLikeNone(list_indent_type) ? 2 : list_indent_type, isLikeNone(list_indent_width) ? Number.MAX_SAFE_INTEGER : (list_indent_width) >>> 0, ptr0, len0, ptr1, len1, isLikeNone(escape_asterisks) ? 0xFFFFFF : escape_asterisks ? 1 : 0, isLikeNone(escape_underscores) ? 0xFFFFFF : escape_underscores ? 1 : 0, isLikeNone(escape_misc) ? 0xFFFFFF : escape_misc ? 1 : 0, isLikeNone(escape_ascii) ? 0xFFFFFF : escape_ascii ? 1 : 0, ptr2, len2, isLikeNone(autolinks) ? 0xFFFFFF : autolinks ? 1 : 0, isLikeNone(default_title) ? 0xFFFFFF : default_title ? 1 : 0, isLikeNone(br_in_tables) ? 0xFFFFFF : br_in_tables ? 1 : 0, isLikeNone(highlight_style) ? 4 : highlight_style, isLikeNone(extract_metadata) ? 0xFFFFFF : extract_metadata ? 1 : 0, isLikeNone(whitespace_mode) ? 2 : whitespace_mode, isLikeNone(strip_newlines) ? 0xFFFFFF : strip_newlines ? 1 : 0, isLikeNone(wrap) ? 0xFFFFFF : wrap ? 1 : 0, isLikeNone(wrap_width) ? Number.MAX_SAFE_INTEGER : (wrap_width) >>> 0, isLikeNone(convert_as_inline) ? 0xFFFFFF : convert_as_inline ? 1 : 0, ptr3, len3, ptr4, len4, isLikeNone(newline_style) ? 2 : newline_style, isLikeNone(code_block_style) ? 3 : code_block_style, ptr5, len5, ptr6, ptr7, len7, isLikeNone(debug) ? 0xFFFFFF : debug ? 1 : 0, ptr8, len8, ptr9, len9, isLikeNone(skip_images) ? 0xFFFFFF : skip_images ? 1 : 0, isLikeNone(link_style) ? 2 : link_style, isLikeNone(output_format) ? 3 : output_format, isLikeNone(include_document_structure) ? 0xFFFFFF : include_document_structure ? 1 : 0, isLikeNone(extract_images) ? 0xFFFFFF : extract_images ? 1 : 0, !isLikeNone(max_image_size), isLikeNone(max_image_size) ? BigInt(0) : max_image_size, isLikeNone(capture_svg) ? 0xFFFFFF : capture_svg ? 1 : 0, isLikeNone(infer_dimensions) ? 0xFFFFFF : infer_dimensions ? 1 : 0, isLikeNone(max_depth) ? Number.MAX_SAFE_INTEGER : (max_depth) >>> 0, ptr10, len10, ptr11);
1276
1316
  this.__wbg_ptr = ret;
1277
1317
  WasmConversionOptionsUpdateFinalization.register(this, this.__wbg_ptr, this);
1278
1318
  return this;
@@ -1564,6 +1604,17 @@ class WasmConversionOptionsUpdate {
1564
1604
  var len0 = WASM_VECTOR_LEN;
1565
1605
  wasm.wasmconversionoptionsupdate_set_supSymbol(this.__wbg_ptr, ptr0, len0);
1566
1606
  }
1607
+ /**
1608
+ * @param {WasmVisitorHandle | null} [value]
1609
+ */
1610
+ set visitor(value) {
1611
+ let ptr0 = 0;
1612
+ if (!isLikeNone(value)) {
1613
+ _assertClass(value, WasmVisitorHandle);
1614
+ ptr0 = value.__destroy_into_raw();
1615
+ }
1616
+ wasm.wasmconversionoptionsupdate_set_visitor(this.__wbg_ptr, ptr0);
1617
+ }
1567
1618
  /**
1568
1619
  * @param {WasmWhitespaceMode | null} [value]
1569
1620
  */
@@ -1672,6 +1723,13 @@ class WasmConversionOptionsUpdate {
1672
1723
  wasm.__wbindgen_add_to_stack_pointer(16);
1673
1724
  }
1674
1725
  }
1726
+ /**
1727
+ * @returns {WasmVisitorHandle | undefined}
1728
+ */
1729
+ get visitor() {
1730
+ const ret = wasm.wasmconversionoptionsupdate_visitor(this.__wbg_ptr);
1731
+ return ret === 0 ? undefined : WasmVisitorHandle.__wrap(ret);
1732
+ }
1675
1733
  /**
1676
1734
  * @returns {WasmWhitespaceMode | undefined}
1677
1735
  */
@@ -1907,7 +1965,6 @@ exports.WasmConversionResult = WasmConversionResult;
1907
1965
  * # Examples
1908
1966
  *
1909
1967
  * ```
1910
- * # use html_to_markdown_rs::metadata::DocumentMetadata;
1911
1968
  * let doc = DocumentMetadata {
1912
1969
  * title: Some("My Article".to_string()),
1913
1970
  * description: Some("A great article about Rust".to_string()),
@@ -2047,7 +2104,7 @@ class WasmDocumentMetadata {
2047
2104
  }
2048
2105
  }
2049
2106
  /**
2050
- * @returns {WasmConversionResult}
2107
+ * @returns {any}
2051
2108
  */
2052
2109
  get metaTags() {
2053
2110
  const ret = wasm.wasmdocumentmetadata_metaTags(this.__wbg_ptr);
@@ -2087,7 +2144,7 @@ class WasmDocumentMetadata {
2087
2144
  return this;
2088
2145
  }
2089
2146
  /**
2090
- * @returns {WasmConversionResult}
2147
+ * @returns {any}
2091
2148
  */
2092
2149
  get openGraph() {
2093
2150
  const ret = wasm.wasmdocumentmetadata_openGraph(this.__wbg_ptr);
@@ -2200,7 +2257,7 @@ class WasmDocumentMetadata {
2200
2257
  }
2201
2258
  }
2202
2259
  /**
2203
- * @returns {WasmConversionResult}
2260
+ * @returns {any}
2204
2261
  */
2205
2262
  get twitterCard() {
2206
2263
  const ret = wasm.wasmdocumentmetadata_twitterCard(this.__wbg_ptr);
@@ -2612,7 +2669,6 @@ exports.WasmGridCell = WasmGridCell;
2612
2669
  * # Examples
2613
2670
  *
2614
2671
  * ```
2615
- * # use html_to_markdown_rs::metadata::HeaderMetadata;
2616
2672
  * let header = HeaderMetadata {
2617
2673
  * level: 1,
2618
2674
  * text: "Main Title".to_string(),
@@ -2691,7 +2747,6 @@ class WasmHeaderMetadata {
2691
2747
  * # Examples
2692
2748
  *
2693
2749
  * ```
2694
- * # use html_to_markdown_rs::metadata::HeaderMetadata;
2695
2750
  * let valid = HeaderMetadata {
2696
2751
  * level: 3,
2697
2752
  * text: "Title".to_string(),
@@ -2833,7 +2888,6 @@ exports.WasmHighlightStyle = WasmHighlightStyle;
2833
2888
  * # Examples
2834
2889
  *
2835
2890
  * ```
2836
- * # use html_to_markdown_rs::metadata::HtmlMetadata;
2837
2891
  * let metadata = HtmlMetadata {
2838
2892
  * document: Default::default(),
2839
2893
  * headers: Vec::new(),
@@ -3012,7 +3066,6 @@ exports.WasmHtmlMetadata = WasmHtmlMetadata;
3012
3066
  * # Examples
3013
3067
  *
3014
3068
  * ```
3015
- * # use html_to_markdown_rs::metadata::{ImageMetadata, ImageType};
3016
3069
  * let img = ImageMetadata {
3017
3070
  * src: "https://example.com/image.jpg".to_string(),
3018
3071
  * alt: Some("An example image".to_string()),
@@ -3068,7 +3121,7 @@ class WasmImageMetadata {
3068
3121
  }
3069
3122
  }
3070
3123
  /**
3071
- * @returns {WasmConversionResult}
3124
+ * @returns {any}
3072
3125
  */
3073
3126
  get attributes() {
3074
3127
  const ret = wasm.wasmimagemetadata_attributes(this.__wbg_ptr);
@@ -3230,7 +3283,6 @@ exports.WasmImageType = WasmImageType;
3230
3283
  * # Examples
3231
3284
  *
3232
3285
  * ```
3233
- * # use html_to_markdown_rs::metadata::{LinkMetadata, LinkType};
3234
3286
  * let link = LinkMetadata {
3235
3287
  * href: "https://example.com".to_string(),
3236
3288
  * text: "Example".to_string(),
@@ -3268,7 +3320,7 @@ class WasmLinkMetadata {
3268
3320
  wasm.__wbg_wasmlinkmetadata_free(ptr, 0);
3269
3321
  }
3270
3322
  /**
3271
- * @returns {WasmConversionResult}
3323
+ * @returns {any}
3272
3324
  */
3273
3325
  get attributes() {
3274
3326
  const ret = wasm.wasmlinkmetadata_attributes(this.__wbg_ptr);
@@ -3288,7 +3340,6 @@ class WasmLinkMetadata {
3288
3340
  * # Examples
3289
3341
  *
3290
3342
  * ```
3291
- * # use html_to_markdown_rs::metadata::{LinkMetadata, LinkType};
3292
3343
  * assert_eq!(LinkMetadata::classify_link("#section"), LinkType::Anchor);
3293
3344
  * assert_eq!(LinkMetadata::classify_link("mailto:test@example.com"), LinkType::Email);
3294
3345
  * assert_eq!(LinkMetadata::classify_link("tel:+1234567890"), LinkType::Phone);
@@ -3547,7 +3598,7 @@ class WasmNodeContext {
3547
3598
  wasm.__wbg_wasmnodecontext_free(ptr, 0);
3548
3599
  }
3549
3600
  /**
3550
- * @returns {WasmConversionResult}
3601
+ * @returns {any}
3551
3602
  */
3552
3603
  get attributes() {
3553
3604
  const ret = wasm.wasmnodecontext_attributes(this.__wbg_ptr);
@@ -4139,7 +4190,6 @@ exports.WasmProcessingWarning = WasmProcessingWarning;
4139
4190
  * # Examples
4140
4191
  *
4141
4192
  * ```
4142
- * # use html_to_markdown_rs::metadata::{StructuredData, StructuredDataType};
4143
4193
  * let schema = StructuredData {
4144
4194
  * data_type: StructuredDataType::JsonLd,
4145
4195
  * raw_json: r#"{"@context":"https://schema.org","@type":"Article"}"#.to_string(),
@@ -4556,6 +4606,41 @@ const WasmVisitResult = Object.freeze({
4556
4606
  });
4557
4607
  exports.WasmVisitResult = WasmVisitResult;
4558
4608
 
4609
+ /**
4610
+ * Type alias for a visitor handle (Rc-wrapped `RefCell` for interior mutability).
4611
+ *
4612
+ * This allows visitors to be passed around and shared while still being mutable.
4613
+ */
4614
+ class WasmVisitorHandle {
4615
+ static __wrap(ptr) {
4616
+ const obj = Object.create(WasmVisitorHandle.prototype);
4617
+ obj.__wbg_ptr = ptr;
4618
+ WasmVisitorHandleFinalization.register(obj, obj.__wbg_ptr, obj);
4619
+ return obj;
4620
+ }
4621
+ __destroy_into_raw() {
4622
+ const ptr = this.__wbg_ptr;
4623
+ this.__wbg_ptr = 0;
4624
+ WasmVisitorHandleFinalization.unregister(this);
4625
+ return ptr;
4626
+ }
4627
+ free() {
4628
+ const ptr = this.__destroy_into_raw();
4629
+ wasm.__wbg_wasmvisitorhandle_free(ptr, 0);
4630
+ }
4631
+ /**
4632
+ * @param {any} visitor
4633
+ */
4634
+ constructor(visitor) {
4635
+ const ret = wasm.wasmvisitorhandle_new(addHeapObject(visitor));
4636
+ this.__wbg_ptr = ret;
4637
+ WasmVisitorHandleFinalization.register(this, this.__wbg_ptr, this);
4638
+ return this;
4639
+ }
4640
+ }
4641
+ if (Symbol.dispose) WasmVisitorHandle.prototype[Symbol.dispose] = WasmVisitorHandle.prototype.free;
4642
+ exports.WasmVisitorHandle = WasmVisitorHandle;
4643
+
4559
4644
  /**
4560
4645
  * Categories of processing warnings.
4561
4646
  * @enum {0 | 1 | 2 | 3 | 4 | 5}
@@ -4583,12 +4668,32 @@ const WasmWhitespaceMode = Object.freeze({
4583
4668
  exports.WasmWhitespaceMode = WasmWhitespaceMode;
4584
4669
 
4585
4670
  /**
4671
+ * Convert HTML to Markdown, returning a [`ConversionResult`] with content, metadata, images,
4672
+ * and warnings.
4673
+ *
4674
+ * # Arguments
4675
+ *
4676
+ * * `html` — the HTML string to convert.
4677
+ * * `options` — optional conversion options. Defaults to [`ConversionOptions::default`].
4678
+ *
4679
+ * # Example
4680
+ *
4681
+ * ```
4682
+ * use html_to_markdown_rs::convert;
4683
+ *
4684
+ * let html = "<h1>Hello World</h1>";
4685
+ * let result = convert(html, None).unwrap();
4686
+ * assert!(result.content.as_deref().unwrap_or("").contains("Hello World"));
4687
+ * ```
4688
+ *
4689
+ * # Errors
4690
+ *
4691
+ * Returns an error if HTML parsing fails or if the input contains invalid UTF-8.
4586
4692
  * @param {string} html
4587
4693
  * @param {WasmConversionOptions | null} [options]
4588
- * @param {any | null} [visitor]
4589
4694
  * @returns {WasmConversionResult}
4590
4695
  */
4591
- function convert(html, options, visitor) {
4696
+ function convert(html, options) {
4592
4697
  try {
4593
4698
  const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
4594
4699
  const ptr0 = passStringToWasm0(html, wasm.__wbindgen_export, wasm.__wbindgen_export2);
@@ -4598,7 +4703,7 @@ function convert(html, options, visitor) {
4598
4703
  _assertClass(options, WasmConversionOptions);
4599
4704
  ptr1 = options.__destroy_into_raw();
4600
4705
  }
4601
- wasm.convert(retptr, ptr0, len0, ptr1, isLikeNone(visitor) ? 0 : addHeapObject(visitor));
4706
+ wasm.convert(retptr, ptr0, len0, ptr1);
4602
4707
  var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
4603
4708
  var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
4604
4709
  var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
@@ -4614,23 +4719,20 @@ exports.convert = convert;
4614
4719
  function __wbg_get_imports() {
4615
4720
  const import0 = {
4616
4721
  __proto__: null,
4617
- __wbg_Error_3639a60ed15f87e7: function(arg0, arg1) {
4618
- const ret = Error(getStringFromWasm0(arg0, arg1));
4619
- return addHeapObject(ret);
4620
- },
4621
- __wbg___wbindgen_is_function_2f0fd7ceb86e64c5: function(arg0) {
4722
+ __wbg___wbindgen_is_function_5cd60d5cf78b4eef: function(arg0) {
4622
4723
  const ret = typeof(getObject(arg0)) === 'function';
4623
4724
  return ret;
4624
4725
  },
4625
- __wbg___wbindgen_is_string_eddc07a3efad52e6: function(arg0) {
4626
- const ret = typeof(getObject(arg0)) === 'string';
4726
+ __wbg___wbindgen_is_object_b4593df85baada48: function(arg0) {
4727
+ const val = getObject(arg0);
4728
+ const ret = typeof(val) === 'object' && val !== null;
4627
4729
  return ret;
4628
4730
  },
4629
- __wbg___wbindgen_is_undefined_244a92c34d3b6ec0: function(arg0) {
4731
+ __wbg___wbindgen_is_undefined_35bb9f4c7fd651d5: function(arg0) {
4630
4732
  const ret = getObject(arg0) === undefined;
4631
4733
  return ret;
4632
4734
  },
4633
- __wbg___wbindgen_string_get_965592073e5d848c: function(arg0, arg1) {
4735
+ __wbg___wbindgen_string_get_d109740c0d18f4d7: function(arg0, arg1) {
4634
4736
  const obj = getObject(arg1);
4635
4737
  const ret = typeof(obj) === 'string' ? obj : undefined;
4636
4738
  var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);
@@ -4638,48 +4740,41 @@ function __wbg_get_imports() {
4638
4740
  getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
4639
4741
  getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
4640
4742
  },
4641
- __wbg___wbindgen_throw_9c75d47bf9e7731e: function(arg0, arg1) {
4743
+ __wbg___wbindgen_throw_9c31b086c2b26051: function(arg0, arg1) {
4642
4744
  throw new Error(getStringFromWasm0(arg0, arg1));
4643
4745
  },
4644
- __wbg_apply_0f21c8b7ff1b23f8: function() { return handleError(function (arg0, arg1, arg2) {
4746
+ __wbg_apply_b593fcd87094fd23: function() { return handleError(function (arg0, arg1, arg2) {
4645
4747
  const ret = getObject(arg0).apply(getObject(arg1), getObject(arg2));
4646
4748
  return addHeapObject(ret);
4647
4749
  }, arguments); },
4648
- __wbg_get_41476db20fef99a8: function() { return handleError(function (arg0, arg1) {
4750
+ __wbg_get_dcf82ab8aad1a593: function() { return handleError(function (arg0, arg1) {
4649
4751
  const ret = Reflect.get(getObject(arg0), getObject(arg1));
4650
4752
  return addHeapObject(ret);
4651
4753
  }, arguments); },
4652
- __wbg_has_3a6f31f647e0ba22: function() { return handleError(function (arg0, arg1) {
4754
+ __wbg_has_ef192b1f278770eb: function() { return handleError(function (arg0, arg1) {
4653
4755
  const ret = Reflect.has(getObject(arg0), getObject(arg1));
4654
4756
  return ret;
4655
4757
  }, arguments); },
4656
- __wbg_new_2fad8ca02fd00684: function() {
4758
+ __wbg_new_02d162bc6cf02f60: function() {
4657
4759
  const ret = new Object();
4658
4760
  return addHeapObject(ret);
4659
4761
  },
4660
- __wbg_new_3baa8d9866155c79: function() {
4762
+ __wbg_new_310879b66b6e95e1: function() {
4661
4763
  const ret = new Array();
4662
4764
  return addHeapObject(ret);
4663
4765
  },
4664
- __wbg_new_46ae4e4ff2a07a64: function() {
4665
- const ret = new Map();
4766
+ __wbg_parse_2c1cad6215e84999: function() { return handleError(function (arg0, arg1) {
4767
+ const ret = JSON.parse(getStringFromWasm0(arg0, arg1));
4666
4768
  return addHeapObject(ret);
4667
- },
4668
- __wbg_push_60a5366c0bb22a7d: function(arg0, arg1) {
4769
+ }, arguments); },
4770
+ __wbg_push_b77c476b01548d0a: function(arg0, arg1) {
4669
4771
  const ret = getObject(arg0).push(getObject(arg1));
4670
4772
  return ret;
4671
4773
  },
4672
- __wbg_set_5337f8ac82364a3f: function() { return handleError(function (arg0, arg1, arg2) {
4774
+ __wbg_set_a0e911be3da02782: function() { return handleError(function (arg0, arg1, arg2) {
4673
4775
  const ret = Reflect.set(getObject(arg0), getObject(arg1), getObject(arg2));
4674
4776
  return ret;
4675
4777
  }, arguments); },
4676
- __wbg_set_6be42768c690e380: function(arg0, arg1, arg2) {
4677
- getObject(arg0)[takeObject(arg1)] = takeObject(arg2);
4678
- },
4679
- __wbg_set_82f7a370f604db70: function(arg0, arg1, arg2) {
4680
- const ret = getObject(arg0).set(getObject(arg1), getObject(arg2));
4681
- return addHeapObject(ret);
4682
- },
4683
4778
  __wbg_wasmdocumentnode_new: function(arg0) {
4684
4779
  const ret = WasmDocumentNode.__wrap(arg0);
4685
4780
  return addHeapObject(ret);
@@ -4836,6 +4931,9 @@ const WasmTableGridFinalization = (typeof FinalizationRegistry === 'undefined')
4836
4931
  const WasmTextAnnotationFinalization = (typeof FinalizationRegistry === 'undefined')
4837
4932
  ? { register: () => {}, unregister: () => {} }
4838
4933
  : new FinalizationRegistry(ptr => wasm.__wbg_wasmtextannotation_free(ptr, 1));
4934
+ const WasmVisitorHandleFinalization = (typeof FinalizationRegistry === 'undefined')
4935
+ ? { register: () => {}, unregister: () => {} }
4936
+ : new FinalizationRegistry(ptr => wasm.__wbg_wasmvisitorhandle_free(ptr, 1));
4839
4937
 
4840
4938
  function addHeapObject(obj) {
4841
4939
  if (heap_next === heap.length) heap.push(heap.length + 1);
@@ -20,7 +20,8 @@ export const __wbg_wasmstructureddata_free: (a: number, b: number) => void;
20
20
  export const __wbg_wasmtabledata_free: (a: number, b: number) => void;
21
21
  export const __wbg_wasmtablegrid_free: (a: number, b: number) => void;
22
22
  export const __wbg_wasmtextannotation_free: (a: number, b: number) => void;
23
- export const convert: (a: number, b: number, c: number, d: number, e: number) => void;
23
+ export const __wbg_wasmvisitorhandle_free: (a: number, b: number) => void;
24
+ export const convert: (a: number, b: number, c: number, d: number) => void;
24
25
  export const wasmconversionoptions_applyUpdate: (a: number, b: number) => void;
25
26
  export const wasmconversionoptions_autolinks: (a: number) => number;
26
27
  export const wasmconversionoptions_brInTables: (a: number) => number;
@@ -53,7 +54,7 @@ export const wasmconversionoptions_listIndentType: (a: number) => number;
53
54
  export const wasmconversionoptions_listIndentWidth: (a: number) => number;
54
55
  export const wasmconversionoptions_maxDepth: (a: number) => number;
55
56
  export const wasmconversionoptions_maxImageSize: (a: number) => bigint;
56
- export const wasmconversionoptions_new: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number, m: number, n: number, o: number, p: number, q: number, r: number, s: number, t: number, u: number, v: number, w: number, x: number, y: number, z: number, a1: number, b1: number, c1: number, d1: number, e1: number, f1: number, g1: number, h1: number, i1: number, j1: number, k1: number, l1: number, m1: number, n1: number, o1: number, p1: number, q1: number, r1: number, s1: number, t1: bigint, u1: number, v1: number, w1: number, x1: number, y1: number) => number;
57
+ export const wasmconversionoptions_new: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number, m: number, n: number, o: number, p: number, q: number, r: number, s: number, t: number, u: number, v: number, w: number, x: number, y: number, z: number, a1: number, b1: number, c1: number, d1: number, e1: number, f1: number, g1: number, h1: number, i1: number, j1: number, k1: number, l1: number, m1: number, n1: number, o1: number, p1: number, q1: number, r1: number, s1: number, t1: bigint, u1: number, v1: number, w1: number, x1: number, y1: number, z1: number) => number;
57
58
  export const wasmconversionoptions_newlineStyle: (a: number) => number;
58
59
  export const wasmconversionoptions_outputFormat: (a: number) => number;
59
60
  export const wasmconversionoptions_preprocessing: (a: number) => number;
@@ -95,6 +96,7 @@ export const wasmconversionoptions_set_stripTags: (a: number, b: number, c: numb
95
96
  export const wasmconversionoptions_set_strongEmSymbol: (a: number, b: number, c: number) => void;
96
97
  export const wasmconversionoptions_set_subSymbol: (a: number, b: number, c: number) => void;
97
98
  export const wasmconversionoptions_set_supSymbol: (a: number, b: number, c: number) => void;
99
+ export const wasmconversionoptions_set_visitor: (a: number, b: number) => void;
98
100
  export const wasmconversionoptions_set_whitespaceMode: (a: number, b: number) => void;
99
101
  export const wasmconversionoptions_set_wrap: (a: number, b: number) => void;
100
102
  export const wasmconversionoptions_set_wrapWidth: (a: number, b: number) => void;
@@ -104,6 +106,7 @@ export const wasmconversionoptions_stripTags: (a: number, b: number) => void;
104
106
  export const wasmconversionoptions_strongEmSymbol: (a: number, b: number) => void;
105
107
  export const wasmconversionoptions_subSymbol: (a: number, b: number) => void;
106
108
  export const wasmconversionoptions_supSymbol: (a: number, b: number) => void;
109
+ export const wasmconversionoptions_visitor: (a: number) => number;
107
110
  export const wasmconversionoptions_whitespaceMode: (a: number) => number;
108
111
  export const wasmconversionoptions_wrap: (a: number) => number;
109
112
  export const wasmconversionoptions_wrapWidth: (a: number) => number;
@@ -113,6 +116,7 @@ export const wasmconversionoptionsbuilder_keepInlineImagesIn: (a: number, b: num
113
116
  export const wasmconversionoptionsbuilder_preprocessing: (a: number, b: number) => number;
114
117
  export const wasmconversionoptionsbuilder_preserveTags: (a: number, b: number, c: number) => number;
115
118
  export const wasmconversionoptionsbuilder_stripTags: (a: number, b: number, c: number) => number;
119
+ export const wasmconversionoptionsbuilder_visitor: (a: number, b: number) => number;
116
120
  export const wasmconversionoptionsupdate_autolinks: (a: number) => number;
117
121
  export const wasmconversionoptionsupdate_brInTables: (a: number) => number;
118
122
  export const wasmconversionoptionsupdate_bullets: (a: number, b: number) => void;
@@ -140,7 +144,7 @@ export const wasmconversionoptionsupdate_listIndentType: (a: number) => number;
140
144
  export const wasmconversionoptionsupdate_listIndentWidth: (a: number) => number;
141
145
  export const wasmconversionoptionsupdate_maxDepth: (a: number) => number;
142
146
  export const wasmconversionoptionsupdate_maxImageSize: (a: number, b: number) => void;
143
- export const wasmconversionoptionsupdate_new: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number, m: number, n: number, o: number, p: number, q: number, r: number, s: number, t: number, u: number, v: number, w: number, x: number, y: number, z: number, a1: number, b1: number, c1: number, d1: number, e1: number, f1: number, g1: number, h1: number, i1: number, j1: number, k1: number, l1: number, m1: number, n1: number, o1: number, p1: number, q1: number, r1: number, s1: number, t1: bigint, u1: number, v1: number, w1: number, x1: number, y1: number) => number;
147
+ export const wasmconversionoptionsupdate_new: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number, m: number, n: number, o: number, p: number, q: number, r: number, s: number, t: number, u: number, v: number, w: number, x: number, y: number, z: number, a1: number, b1: number, c1: number, d1: number, e1: number, f1: number, g1: number, h1: number, i1: number, j1: number, k1: number, l1: number, m1: number, n1: number, o1: number, p1: number, q1: number, r1: number, s1: number, t1: bigint, u1: number, v1: number, w1: number, x1: number, y1: number, z1: number) => number;
144
148
  export const wasmconversionoptionsupdate_newlineStyle: (a: number) => number;
145
149
  export const wasmconversionoptionsupdate_outputFormat: (a: number) => number;
146
150
  export const wasmconversionoptionsupdate_preprocessing: (a: number) => number;
@@ -182,6 +186,7 @@ export const wasmconversionoptionsupdate_set_stripTags: (a: number, b: number, c
182
186
  export const wasmconversionoptionsupdate_set_strongEmSymbol: (a: number, b: number, c: number) => void;
183
187
  export const wasmconversionoptionsupdate_set_subSymbol: (a: number, b: number, c: number) => void;
184
188
  export const wasmconversionoptionsupdate_set_supSymbol: (a: number, b: number, c: number) => void;
189
+ export const wasmconversionoptionsupdate_set_visitor: (a: number, b: number) => void;
185
190
  export const wasmconversionoptionsupdate_set_whitespaceMode: (a: number, b: number) => void;
186
191
  export const wasmconversionoptionsupdate_set_wrap: (a: number, b: number) => void;
187
192
  export const wasmconversionoptionsupdate_set_wrapWidth: (a: number, b: number) => void;
@@ -191,6 +196,7 @@ export const wasmconversionoptionsupdate_stripTags: (a: number, b: number) => vo
191
196
  export const wasmconversionoptionsupdate_strongEmSymbol: (a: number, b: number) => void;
192
197
  export const wasmconversionoptionsupdate_subSymbol: (a: number, b: number) => void;
193
198
  export const wasmconversionoptionsupdate_supSymbol: (a: number, b: number) => void;
199
+ export const wasmconversionoptionsupdate_visitor: (a: number) => number;
194
200
  export const wasmconversionoptionsupdate_whitespaceMode: (a: number) => number;
195
201
  export const wasmconversionoptionsupdate_wrap: (a: number) => number;
196
202
  export const wasmconversionoptionsupdate_wrapWidth: (a: number) => number;
@@ -370,6 +376,7 @@ export const wasmtextannotation_set_end: (a: number, b: number) => void;
370
376
  export const wasmtextannotation_set_kind: (a: number, b: number) => void;
371
377
  export const wasmtextannotation_set_start: (a: number, b: number) => void;
372
378
  export const wasmtextannotation_start: (a: number) => number;
379
+ export const wasmvisitorhandle_new: (a: number) => number;
373
380
  export const wasmpreprocessingoptions_fromUpdate: (a: number) => number;
374
381
  export const wasmheadermetadata_set_depth: (a: number, b: number) => void;
375
382
  export const wasmnodecontext_set_depth: (a: number, b: number) => void;
@@ -1,16 +1,16 @@
1
1
  {
2
2
  "name": "html-to-markdown-wasm",
3
3
  "description": "High-performance HTML to Markdown converter",
4
- "version": "3.4.0-rc.8",
4
+ "version": "3.4.0",
5
5
  "license": "MIT",
6
6
  "repository": {
7
7
  "type": "git",
8
8
  "url": "https://github.com/kreuzberg-dev/html-to-markdown"
9
9
  },
10
10
  "files": [
11
- "*.wasm",
12
- "*.js",
13
- "*.d.ts"
11
+ "html_to_markdown_wasm_bg.wasm",
12
+ "html_to_markdown_wasm.js",
13
+ "html_to_markdown_wasm.d.ts"
14
14
  ],
15
15
  "main": "html_to_markdown_wasm.js",
16
16
  "types": "html_to_markdown_wasm.d.ts",
@@ -19,4 +19,4 @@
19
19
  "markdown",
20
20
  "converter"
21
21
  ]
22
- }
22
+ }