@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.
@@ -391,8 +391,9 @@ export class WasmConversionOptions {
391
391
  * @param {boolean | null} [infer_dimensions]
392
392
  * @param {string[] | null} [exclude_selectors]
393
393
  * @param {number | null} [max_depth]
394
+ * @param {WasmVisitorHandle | null} [visitor]
394
395
  */
395
- 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) {
396
+ 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) {
396
397
  var ptr0 = isLikeNone(bullets) ? 0 : passStringToWasm0(bullets, wasm.__wbindgen_export, wasm.__wbindgen_export2);
397
398
  var len0 = WASM_VECTOR_LEN;
398
399
  var ptr1 = isLikeNone(strong_em_symbol) ? 0 : passStringToWasm0(strong_em_symbol, wasm.__wbindgen_export, wasm.__wbindgen_export2);
@@ -418,7 +419,12 @@ export class WasmConversionOptions {
418
419
  var len9 = WASM_VECTOR_LEN;
419
420
  var ptr10 = isLikeNone(exclude_selectors) ? 0 : passArrayJsValueToWasm0(exclude_selectors, wasm.__wbindgen_export);
420
421
  var len10 = WASM_VECTOR_LEN;
421
- 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);
422
+ let ptr11 = 0;
423
+ if (!isLikeNone(visitor)) {
424
+ _assertClass(visitor, WasmVisitorHandle);
425
+ ptr11 = visitor.__destroy_into_raw();
426
+ }
427
+ 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);
422
428
  this.__wbg_ptr = ret;
423
429
  WasmConversionOptionsFinalization.register(this, this.__wbg_ptr, this);
424
430
  return this;
@@ -704,6 +710,17 @@ export class WasmConversionOptions {
704
710
  const len0 = WASM_VECTOR_LEN;
705
711
  wasm.wasmconversionoptions_set_supSymbol(this.__wbg_ptr, ptr0, len0);
706
712
  }
713
+ /**
714
+ * @param {WasmVisitorHandle | null} [value]
715
+ */
716
+ set visitor(value) {
717
+ let ptr0 = 0;
718
+ if (!isLikeNone(value)) {
719
+ _assertClass(value, WasmVisitorHandle);
720
+ ptr0 = value.__destroy_into_raw();
721
+ }
722
+ wasm.wasmconversionoptions_set_visitor(this.__wbg_ptr, ptr0);
723
+ }
707
724
  /**
708
725
  * @param {WasmWhitespaceMode} value
709
726
  */
@@ -809,6 +826,13 @@ export class WasmConversionOptions {
809
826
  wasm.__wbindgen_export4(deferred1_0, deferred1_1, 1);
810
827
  }
811
828
  }
829
+ /**
830
+ * @returns {WasmVisitorHandle | undefined}
831
+ */
832
+ get visitor() {
833
+ const ret = wasm.wasmconversionoptions_visitor(this.__wbg_ptr);
834
+ return ret === 0 ? undefined : WasmVisitorHandle.__wrap(ret);
835
+ }
812
836
  /**
813
837
  * @returns {WasmWhitespaceMode}
814
838
  */
@@ -918,6 +942,20 @@ export class WasmConversionOptionsBuilder {
918
942
  const ret = wasm.wasmconversionoptionsbuilder_stripTags(this.__wbg_ptr, ptr0, len0);
919
943
  return WasmConversionOptionsBuilder.__wrap(ret);
920
944
  }
945
+ /**
946
+ * Set the visitor used during conversion.
947
+ * @param {WasmVisitorHandle | null} [visitor]
948
+ * @returns {WasmConversionOptionsBuilder}
949
+ */
950
+ visitor(visitor) {
951
+ let ptr0 = 0;
952
+ if (!isLikeNone(visitor)) {
953
+ _assertClass(visitor, WasmVisitorHandle);
954
+ ptr0 = visitor.__destroy_into_raw();
955
+ }
956
+ const ret = wasm.wasmconversionoptionsbuilder_visitor(this.__wbg_ptr, ptr0);
957
+ return WasmConversionOptionsBuilder.__wrap(ret);
958
+ }
921
959
  }
922
960
  if (Symbol.dispose) WasmConversionOptionsBuilder.prototype[Symbol.dispose] = WasmConversionOptionsBuilder.prototype.free;
923
961
 
@@ -1235,8 +1273,9 @@ export class WasmConversionOptionsUpdate {
1235
1273
  * @param {boolean | null} [infer_dimensions]
1236
1274
  * @param {number | null} [max_depth]
1237
1275
  * @param {string[] | null} [exclude_selectors]
1276
+ * @param {WasmVisitorHandle | null} [visitor]
1238
1277
  */
1239
- 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) {
1278
+ 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) {
1240
1279
  var ptr0 = isLikeNone(bullets) ? 0 : passStringToWasm0(bullets, wasm.__wbindgen_export, wasm.__wbindgen_export2);
1241
1280
  var len0 = WASM_VECTOR_LEN;
1242
1281
  var ptr1 = isLikeNone(strong_em_symbol) ? 0 : passStringToWasm0(strong_em_symbol, wasm.__wbindgen_export, wasm.__wbindgen_export2);
@@ -1262,7 +1301,12 @@ export class WasmConversionOptionsUpdate {
1262
1301
  var len9 = WASM_VECTOR_LEN;
1263
1302
  var ptr10 = isLikeNone(exclude_selectors) ? 0 : passArrayJsValueToWasm0(exclude_selectors, wasm.__wbindgen_export);
1264
1303
  var len10 = WASM_VECTOR_LEN;
1265
- 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);
1304
+ let ptr11 = 0;
1305
+ if (!isLikeNone(visitor)) {
1306
+ _assertClass(visitor, WasmVisitorHandle);
1307
+ ptr11 = visitor.__destroy_into_raw();
1308
+ }
1309
+ 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);
1266
1310
  this.__wbg_ptr = ret;
1267
1311
  WasmConversionOptionsUpdateFinalization.register(this, this.__wbg_ptr, this);
1268
1312
  return this;
@@ -1554,6 +1598,17 @@ export class WasmConversionOptionsUpdate {
1554
1598
  var len0 = WASM_VECTOR_LEN;
1555
1599
  wasm.wasmconversionoptionsupdate_set_supSymbol(this.__wbg_ptr, ptr0, len0);
1556
1600
  }
1601
+ /**
1602
+ * @param {WasmVisitorHandle | null} [value]
1603
+ */
1604
+ set visitor(value) {
1605
+ let ptr0 = 0;
1606
+ if (!isLikeNone(value)) {
1607
+ _assertClass(value, WasmVisitorHandle);
1608
+ ptr0 = value.__destroy_into_raw();
1609
+ }
1610
+ wasm.wasmconversionoptionsupdate_set_visitor(this.__wbg_ptr, ptr0);
1611
+ }
1557
1612
  /**
1558
1613
  * @param {WasmWhitespaceMode | null} [value]
1559
1614
  */
@@ -1662,6 +1717,13 @@ export class WasmConversionOptionsUpdate {
1662
1717
  wasm.__wbindgen_add_to_stack_pointer(16);
1663
1718
  }
1664
1719
  }
1720
+ /**
1721
+ * @returns {WasmVisitorHandle | undefined}
1722
+ */
1723
+ get visitor() {
1724
+ const ret = wasm.wasmconversionoptionsupdate_visitor(this.__wbg_ptr);
1725
+ return ret === 0 ? undefined : WasmVisitorHandle.__wrap(ret);
1726
+ }
1665
1727
  /**
1666
1728
  * @returns {WasmWhitespaceMode | undefined}
1667
1729
  */
@@ -1895,7 +1957,6 @@ if (Symbol.dispose) WasmConversionResult.prototype[Symbol.dispose] = WasmConvers
1895
1957
  * # Examples
1896
1958
  *
1897
1959
  * ```
1898
- * # use html_to_markdown_rs::metadata::DocumentMetadata;
1899
1960
  * let doc = DocumentMetadata {
1900
1961
  * title: Some("My Article".to_string()),
1901
1962
  * description: Some("A great article about Rust".to_string()),
@@ -2035,7 +2096,7 @@ export class WasmDocumentMetadata {
2035
2096
  }
2036
2097
  }
2037
2098
  /**
2038
- * @returns {WasmConversionResult}
2099
+ * @returns {any}
2039
2100
  */
2040
2101
  get metaTags() {
2041
2102
  const ret = wasm.wasmdocumentmetadata_metaTags(this.__wbg_ptr);
@@ -2075,7 +2136,7 @@ export class WasmDocumentMetadata {
2075
2136
  return this;
2076
2137
  }
2077
2138
  /**
2078
- * @returns {WasmConversionResult}
2139
+ * @returns {any}
2079
2140
  */
2080
2141
  get openGraph() {
2081
2142
  const ret = wasm.wasmdocumentmetadata_openGraph(this.__wbg_ptr);
@@ -2188,7 +2249,7 @@ export class WasmDocumentMetadata {
2188
2249
  }
2189
2250
  }
2190
2251
  /**
2191
- * @returns {WasmConversionResult}
2252
+ * @returns {any}
2192
2253
  */
2193
2254
  get twitterCard() {
2194
2255
  const ret = wasm.wasmdocumentmetadata_twitterCard(this.__wbg_ptr);
@@ -2596,7 +2657,6 @@ if (Symbol.dispose) WasmGridCell.prototype[Symbol.dispose] = WasmGridCell.protot
2596
2657
  * # Examples
2597
2658
  *
2598
2659
  * ```
2599
- * # use html_to_markdown_rs::metadata::HeaderMetadata;
2600
2660
  * let header = HeaderMetadata {
2601
2661
  * level: 1,
2602
2662
  * text: "Main Title".to_string(),
@@ -2675,7 +2735,6 @@ export class WasmHeaderMetadata {
2675
2735
  * # Examples
2676
2736
  *
2677
2737
  * ```
2678
- * # use html_to_markdown_rs::metadata::HeaderMetadata;
2679
2738
  * let valid = HeaderMetadata {
2680
2739
  * level: 3,
2681
2740
  * text: "Title".to_string(),
@@ -2814,7 +2873,6 @@ export const WasmHighlightStyle = Object.freeze({
2814
2873
  * # Examples
2815
2874
  *
2816
2875
  * ```
2817
- * # use html_to_markdown_rs::metadata::HtmlMetadata;
2818
2876
  * let metadata = HtmlMetadata {
2819
2877
  * document: Default::default(),
2820
2878
  * headers: Vec::new(),
@@ -2992,7 +3050,6 @@ if (Symbol.dispose) WasmHtmlMetadata.prototype[Symbol.dispose] = WasmHtmlMetadat
2992
3050
  * # Examples
2993
3051
  *
2994
3052
  * ```
2995
- * # use html_to_markdown_rs::metadata::{ImageMetadata, ImageType};
2996
3053
  * let img = ImageMetadata {
2997
3054
  * src: "https://example.com/image.jpg".to_string(),
2998
3055
  * alt: Some("An example image".to_string()),
@@ -3048,7 +3105,7 @@ export class WasmImageMetadata {
3048
3105
  }
3049
3106
  }
3050
3107
  /**
3051
- * @returns {WasmConversionResult}
3108
+ * @returns {any}
3052
3109
  */
3053
3110
  get attributes() {
3054
3111
  const ret = wasm.wasmimagemetadata_attributes(this.__wbg_ptr);
@@ -3208,7 +3265,6 @@ export const WasmImageType = Object.freeze({
3208
3265
  * # Examples
3209
3266
  *
3210
3267
  * ```
3211
- * # use html_to_markdown_rs::metadata::{LinkMetadata, LinkType};
3212
3268
  * let link = LinkMetadata {
3213
3269
  * href: "https://example.com".to_string(),
3214
3270
  * text: "Example".to_string(),
@@ -3246,7 +3302,7 @@ export class WasmLinkMetadata {
3246
3302
  wasm.__wbg_wasmlinkmetadata_free(ptr, 0);
3247
3303
  }
3248
3304
  /**
3249
- * @returns {WasmConversionResult}
3305
+ * @returns {any}
3250
3306
  */
3251
3307
  get attributes() {
3252
3308
  const ret = wasm.wasmlinkmetadata_attributes(this.__wbg_ptr);
@@ -3266,7 +3322,6 @@ export class WasmLinkMetadata {
3266
3322
  * # Examples
3267
3323
  *
3268
3324
  * ```
3269
- * # use html_to_markdown_rs::metadata::{LinkMetadata, LinkType};
3270
3325
  * assert_eq!(LinkMetadata::classify_link("#section"), LinkType::Anchor);
3271
3326
  * assert_eq!(LinkMetadata::classify_link("mailto:test@example.com"), LinkType::Email);
3272
3327
  * assert_eq!(LinkMetadata::classify_link("tel:+1234567890"), LinkType::Phone);
@@ -3519,7 +3574,7 @@ export class WasmNodeContext {
3519
3574
  wasm.__wbg_wasmnodecontext_free(ptr, 0);
3520
3575
  }
3521
3576
  /**
3522
- * @returns {WasmConversionResult}
3577
+ * @returns {any}
3523
3578
  */
3524
3579
  get attributes() {
3525
3580
  const ret = wasm.wasmnodecontext_attributes(this.__wbg_ptr);
@@ -4104,7 +4159,6 @@ if (Symbol.dispose) WasmProcessingWarning.prototype[Symbol.dispose] = WasmProces
4104
4159
  * # Examples
4105
4160
  *
4106
4161
  * ```
4107
- * # use html_to_markdown_rs::metadata::{StructuredData, StructuredDataType};
4108
4162
  * let schema = StructuredData {
4109
4163
  * data_type: StructuredDataType::JsonLd,
4110
4164
  * raw_json: r#"{"@context":"https://schema.org","@type":"Article"}"#.to_string(),
@@ -4514,6 +4568,40 @@ export const WasmVisitResult = Object.freeze({
4514
4568
  Error: 4, "4": "Error",
4515
4569
  });
4516
4570
 
4571
+ /**
4572
+ * Type alias for a visitor handle (Rc-wrapped `RefCell` for interior mutability).
4573
+ *
4574
+ * This allows visitors to be passed around and shared while still being mutable.
4575
+ */
4576
+ export class WasmVisitorHandle {
4577
+ static __wrap(ptr) {
4578
+ const obj = Object.create(WasmVisitorHandle.prototype);
4579
+ obj.__wbg_ptr = ptr;
4580
+ WasmVisitorHandleFinalization.register(obj, obj.__wbg_ptr, obj);
4581
+ return obj;
4582
+ }
4583
+ __destroy_into_raw() {
4584
+ const ptr = this.__wbg_ptr;
4585
+ this.__wbg_ptr = 0;
4586
+ WasmVisitorHandleFinalization.unregister(this);
4587
+ return ptr;
4588
+ }
4589
+ free() {
4590
+ const ptr = this.__destroy_into_raw();
4591
+ wasm.__wbg_wasmvisitorhandle_free(ptr, 0);
4592
+ }
4593
+ /**
4594
+ * @param {any} visitor
4595
+ */
4596
+ constructor(visitor) {
4597
+ const ret = wasm.wasmvisitorhandle_new(addHeapObject(visitor));
4598
+ this.__wbg_ptr = ret;
4599
+ WasmVisitorHandleFinalization.register(this, this.__wbg_ptr, this);
4600
+ return this;
4601
+ }
4602
+ }
4603
+ if (Symbol.dispose) WasmVisitorHandle.prototype[Symbol.dispose] = WasmVisitorHandle.prototype.free;
4604
+
4517
4605
  /**
4518
4606
  * Categories of processing warnings.
4519
4607
  * @enum {0 | 1 | 2 | 3 | 4 | 5}
@@ -4539,12 +4627,32 @@ export const WasmWhitespaceMode = Object.freeze({
4539
4627
  });
4540
4628
 
4541
4629
  /**
4630
+ * Convert HTML to Markdown, returning a [`ConversionResult`] with content, metadata, images,
4631
+ * and warnings.
4632
+ *
4633
+ * # Arguments
4634
+ *
4635
+ * * `html` — the HTML string to convert.
4636
+ * * `options` — optional conversion options. Defaults to [`ConversionOptions::default`].
4637
+ *
4638
+ * # Example
4639
+ *
4640
+ * ```
4641
+ * use html_to_markdown_rs::convert;
4642
+ *
4643
+ * let html = "<h1>Hello World</h1>";
4644
+ * let result = convert(html, None).unwrap();
4645
+ * assert!(result.content.as_deref().unwrap_or("").contains("Hello World"));
4646
+ * ```
4647
+ *
4648
+ * # Errors
4649
+ *
4650
+ * Returns an error if HTML parsing fails or if the input contains invalid UTF-8.
4542
4651
  * @param {string} html
4543
4652
  * @param {WasmConversionOptions | null} [options]
4544
- * @param {any | null} [visitor]
4545
4653
  * @returns {WasmConversionResult}
4546
4654
  */
4547
- export function convert(html, options, visitor) {
4655
+ export function convert(html, options) {
4548
4656
  try {
4549
4657
  const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
4550
4658
  const ptr0 = passStringToWasm0(html, wasm.__wbindgen_export, wasm.__wbindgen_export2);
@@ -4554,7 +4662,7 @@ export function convert(html, options, visitor) {
4554
4662
  _assertClass(options, WasmConversionOptions);
4555
4663
  ptr1 = options.__destroy_into_raw();
4556
4664
  }
4557
- wasm.convert(retptr, ptr0, len0, ptr1, isLikeNone(visitor) ? 0 : addHeapObject(visitor));
4665
+ wasm.convert(retptr, ptr0, len0, ptr1);
4558
4666
  var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
4559
4667
  var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
4560
4668
  var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
@@ -4566,23 +4674,20 @@ export function convert(html, options, visitor) {
4566
4674
  wasm.__wbindgen_add_to_stack_pointer(16);
4567
4675
  }
4568
4676
  }
4569
- export function __wbg_Error_3639a60ed15f87e7(arg0, arg1) {
4570
- const ret = Error(getStringFromWasm0(arg0, arg1));
4571
- return addHeapObject(ret);
4572
- }
4573
- export function __wbg___wbindgen_is_function_2f0fd7ceb86e64c5(arg0) {
4677
+ export function __wbg___wbindgen_is_function_5cd60d5cf78b4eef(arg0) {
4574
4678
  const ret = typeof(getObject(arg0)) === 'function';
4575
4679
  return ret;
4576
4680
  }
4577
- export function __wbg___wbindgen_is_string_eddc07a3efad52e6(arg0) {
4578
- const ret = typeof(getObject(arg0)) === 'string';
4681
+ export function __wbg___wbindgen_is_object_b4593df85baada48(arg0) {
4682
+ const val = getObject(arg0);
4683
+ const ret = typeof(val) === 'object' && val !== null;
4579
4684
  return ret;
4580
4685
  }
4581
- export function __wbg___wbindgen_is_undefined_244a92c34d3b6ec0(arg0) {
4686
+ export function __wbg___wbindgen_is_undefined_35bb9f4c7fd651d5(arg0) {
4582
4687
  const ret = getObject(arg0) === undefined;
4583
4688
  return ret;
4584
4689
  }
4585
- export function __wbg___wbindgen_string_get_965592073e5d848c(arg0, arg1) {
4690
+ export function __wbg___wbindgen_string_get_d109740c0d18f4d7(arg0, arg1) {
4586
4691
  const obj = getObject(arg1);
4587
4692
  const ret = typeof(obj) === 'string' ? obj : undefined;
4588
4693
  var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);
@@ -4590,48 +4695,41 @@ export function __wbg___wbindgen_string_get_965592073e5d848c(arg0, arg1) {
4590
4695
  getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
4591
4696
  getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
4592
4697
  }
4593
- export function __wbg___wbindgen_throw_9c75d47bf9e7731e(arg0, arg1) {
4698
+ export function __wbg___wbindgen_throw_9c31b086c2b26051(arg0, arg1) {
4594
4699
  throw new Error(getStringFromWasm0(arg0, arg1));
4595
4700
  }
4596
- export function __wbg_apply_0f21c8b7ff1b23f8() { return handleError(function (arg0, arg1, arg2) {
4701
+ export function __wbg_apply_b593fcd87094fd23() { return handleError(function (arg0, arg1, arg2) {
4597
4702
  const ret = getObject(arg0).apply(getObject(arg1), getObject(arg2));
4598
4703
  return addHeapObject(ret);
4599
4704
  }, arguments); }
4600
- export function __wbg_get_41476db20fef99a8() { return handleError(function (arg0, arg1) {
4705
+ export function __wbg_get_dcf82ab8aad1a593() { return handleError(function (arg0, arg1) {
4601
4706
  const ret = Reflect.get(getObject(arg0), getObject(arg1));
4602
4707
  return addHeapObject(ret);
4603
4708
  }, arguments); }
4604
- export function __wbg_has_3a6f31f647e0ba22() { return handleError(function (arg0, arg1) {
4709
+ export function __wbg_has_ef192b1f278770eb() { return handleError(function (arg0, arg1) {
4605
4710
  const ret = Reflect.has(getObject(arg0), getObject(arg1));
4606
4711
  return ret;
4607
4712
  }, arguments); }
4608
- export function __wbg_new_2fad8ca02fd00684() {
4713
+ export function __wbg_new_02d162bc6cf02f60() {
4609
4714
  const ret = new Object();
4610
4715
  return addHeapObject(ret);
4611
4716
  }
4612
- export function __wbg_new_3baa8d9866155c79() {
4717
+ export function __wbg_new_310879b66b6e95e1() {
4613
4718
  const ret = new Array();
4614
4719
  return addHeapObject(ret);
4615
4720
  }
4616
- export function __wbg_new_46ae4e4ff2a07a64() {
4617
- const ret = new Map();
4721
+ export function __wbg_parse_2c1cad6215e84999() { return handleError(function (arg0, arg1) {
4722
+ const ret = JSON.parse(getStringFromWasm0(arg0, arg1));
4618
4723
  return addHeapObject(ret);
4619
- }
4620
- export function __wbg_push_60a5366c0bb22a7d(arg0, arg1) {
4724
+ }, arguments); }
4725
+ export function __wbg_push_b77c476b01548d0a(arg0, arg1) {
4621
4726
  const ret = getObject(arg0).push(getObject(arg1));
4622
4727
  return ret;
4623
4728
  }
4624
- export function __wbg_set_5337f8ac82364a3f() { return handleError(function (arg0, arg1, arg2) {
4729
+ export function __wbg_set_a0e911be3da02782() { return handleError(function (arg0, arg1, arg2) {
4625
4730
  const ret = Reflect.set(getObject(arg0), getObject(arg1), getObject(arg2));
4626
4731
  return ret;
4627
4732
  }, arguments); }
4628
- export function __wbg_set_6be42768c690e380(arg0, arg1, arg2) {
4629
- getObject(arg0)[takeObject(arg1)] = takeObject(arg2);
4630
- }
4631
- export function __wbg_set_82f7a370f604db70(arg0, arg1, arg2) {
4632
- const ret = getObject(arg0).set(getObject(arg1), getObject(arg2));
4633
- return addHeapObject(ret);
4634
- }
4635
4733
  export function __wbg_wasmdocumentnode_new(arg0) {
4636
4734
  const ret = WasmDocumentNode.__wrap(arg0);
4637
4735
  return addHeapObject(ret);
@@ -4781,6 +4879,9 @@ const WasmTableGridFinalization = (typeof FinalizationRegistry === 'undefined')
4781
4879
  const WasmTextAnnotationFinalization = (typeof FinalizationRegistry === 'undefined')
4782
4880
  ? { register: () => {}, unregister: () => {} }
4783
4881
  : new FinalizationRegistry(ptr => wasm.__wbg_wasmtextannotation_free(ptr, 1));
4882
+ const WasmVisitorHandleFinalization = (typeof FinalizationRegistry === 'undefined')
4883
+ ? { register: () => {}, unregister: () => {} }
4884
+ : new FinalizationRegistry(ptr => wasm.__wbg_wasmvisitorhandle_free(ptr, 1));
4784
4885
 
4785
4886
  function addHeapObject(obj) {
4786
4887
  if (heap_next === heap.length) heap.push(heap.length + 1);
@@ -4956,10 +5057,6 @@ let WASM_VECTOR_LEN = 0;
4956
5057
 
4957
5058
 
4958
5059
  let wasm;
4959
- /**
4960
- * @typedef {import("./html_to_markdown_wasm").WasmConversionOptions} WasmConversionOptions
4961
- */
4962
-
4963
5060
  export function __wbg_set_wasm(val) {
4964
5061
  wasm = val;
4965
5062
  }
@@ -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;
@@ -2,16 +2,17 @@
2
2
  "name": "html-to-markdown-wasm",
3
3
  "type": "module",
4
4
  "description": "High-performance HTML to Markdown converter",
5
- "version": "3.4.0-rc.8",
5
+ "version": "3.4.0",
6
6
  "license": "MIT",
7
7
  "repository": {
8
8
  "type": "git",
9
9
  "url": "https://github.com/kreuzberg-dev/html-to-markdown"
10
10
  },
11
11
  "files": [
12
- "*.wasm",
13
- "*.js",
14
- "*.d.ts"
12
+ "html_to_markdown_wasm_bg.wasm",
13
+ "html_to_markdown_wasm.js",
14
+ "html_to_markdown_wasm_bg.js",
15
+ "html_to_markdown_wasm.d.ts"
15
16
  ],
16
17
  "main": "html_to_markdown_wasm.js",
17
18
  "types": "html_to_markdown_wasm.d.ts",
@@ -24,4 +25,4 @@
24
25
  "markdown",
25
26
  "converter"
26
27
  ]
27
- }
28
+ }