@kreuzberg/html-to-markdown-wasm 2.25.1 → 2.26.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/README.md CHANGED
@@ -18,7 +18,7 @@
18
18
  <img src="https://img.shields.io/maven-central/v/dev.kreuzberg/html-to-markdown?label=Java&color=007ec6" alt="Java">
19
19
  </a>
20
20
  <a href="https://pkg.go.dev/github.com/kreuzberg-dev/html-to-markdown/packages/go/v2/htmltomarkdown">
21
- <img src="https://img.shields.io/badge/Go-v2.24.1-007ec6" alt="Go">
21
+ <img src="https://img.shields.io/badge/Go-v2.26.0-007ec6" alt="Go">
22
22
  </a>
23
23
  <a href="https://www.nuget.org/packages/KreuzbergDev.HtmlToMarkdown/">
24
24
  <img src="https://img.shields.io/nuget/v/KreuzbergDev.HtmlToMarkdown?label=C%23&color=007ec6" alt="C#">
@@ -32,16 +32,21 @@
32
32
  <a href="https://hex.pm/packages/html_to_markdown">
33
33
  <img src="https://img.shields.io/hexpm/v/html_to_markdown?label=Elixir&color=007ec6" alt="Elixir">
34
34
  </a>
35
-
36
- <!-- Project Info -->
35
+ <a href="https://kreuzberg-dev.r-universe.dev/htmltomarkdown">
36
+ <img src="https://img.shields.io/badge/R-htmltomarkdown-007ec6" alt="R">
37
+ </a>
38
+ <a href="https://github.com/kreuzberg-dev/html-to-markdown/releases">
39
+ <img src="https://img.shields.io/badge/C-FFI-007ec6" alt="C">
40
+ </a>
41
+ <a href="https://docs.html-to-markdown.kreuzberg.dev">
42
+ <img src="https://img.shields.io/badge/Docs-kreuzberg.dev-007ec6" alt="Documentation">
43
+ </a>
37
44
  <a href="https://github.com/kreuzberg-dev/html-to-markdown/blob/main/LICENSE">
38
45
  <img src="https://img.shields.io/badge/License-MIT-blue.svg" alt="License">
39
46
  </a>
40
47
  </div>
41
48
 
42
-
43
- <img width="3384" height="573" alt="Linkedin- Banner" src="https://github.com/user-attachments/assets/478a83da-237b-446b-b3a8-e564c13e00a8" />
44
-
49
+ <img width="3384" height="573" alt="Banner" src="https://github.com/user-attachments/assets/478a83da-237b-446b-b3a8-e564c13e00a8" />
45
50
 
46
51
  <div align="center" style="margin-top: 20px;">
47
52
  <a href="https://discord.gg/pXxagNK2zN">
@@ -49,178 +54,49 @@
49
54
  </a>
50
55
  </div>
51
56
 
52
- High-performance HTML Markdown conversion powered by Rust. Shipping as a Rust crate, Python package, PHP extension, Ruby gem, Elixir Rustler NIF, Node.js bindings, WebAssembly, and standalone CLI with identical rendering behavior across all runtimes.
53
-
54
- ## Key Features
55
-
56
- - **Blazing Fast** – Rust-powered core delivers 10-80× faster conversion than pure Python alternatives (150–280 MB/s)
57
- - **Polyglot** – Native bindings for Rust, Python, TypeScript/Node.js, Ruby, PHP, Go, Java, C#, and Elixir
58
- - **Smart Conversion** – Handles complex documents including nested tables, code blocks, task lists, and hOCR OCR output
59
- - **Metadata Extraction** – Extract document metadata (title, description, headers, links, images, structured data) alongside conversion
60
- - **Visitor Pattern** – Custom callbacks for domain-specific dialects, content filtering, URL rewriting, accessibility validation
61
- - **Highly Configurable** – Control heading styles, code block fences, list formatting, whitespace handling, and HTML sanitization
62
- - **Tag Preservation** – Keep specific HTML tags unconverted when markdown isn't expressive enough
63
- - **Secure by Default** – Built-in HTML sanitization prevents malicious content
64
- - **Consistent Output** – Identical markdown rendering across all language bindings
65
-
66
- **[Try the Live Demo →](https://kreuzberg-dev.github.io/html-to-markdown/)**
67
-
68
- ## Installation
69
-
70
- Each language binding provides comprehensive documentation with installation instructions, examples, and best practices. Choose your platform to get started:
71
-
72
- **Scripting Languages:**
73
- - **[Python](./packages/python/README.md)** – PyPI package, metadata extraction, visitor pattern, CLI included
74
- - **[Ruby](./packages/ruby/README.md)** – RubyGems package, RBS type definitions, Steep checking
75
- - **[PHP](./packages/php/README.md)** – Composer package + PIE extension, PHP 8.4+, PHPStan level 9
76
- - **[Elixir](./packages/elixir/README.md)** – Hex package, Rustler NIF bindings, Elixir 1.19+
77
-
78
- **JavaScript/TypeScript:**
79
- - **[Node.js / TypeScript](./packages/typescript/README.md)** – Native NAPI-RS bindings for Node.js/Bun, fastest performance, WebAssembly for browsers/Deno
80
-
81
- **Compiled Languages:**
82
- - **[Go](./packages/go/v2/README.md)** – Go module with FFI bindings, automatic library download
83
- - **[Java](./packages/java/README.md)** – Maven Central, Panama Foreign Function & Memory API, Java 24+
84
- - **[C#](./packages/csharp/README.md)** – NuGet package, .NET 8.0+, P/Invoke FFI bindings
85
-
86
- **Native:**
87
- - **[Rust](./crates/html-to-markdown/README.md)** – Core library, flexible feature flags, zero-copy APIs
88
-
89
- **Command-Line:**
90
- - **[CLI](https://crates.io/crates/html-to-markdown-cli)** – Cross-platform binary via `cargo install html-to-markdown-cli` or Homebrew: `brew install kreuzberg-dev/tap/html-to-markdown`
91
-
92
- <details>
93
- <summary><strong>Metadata Extraction</strong></summary>
94
-
95
- Extract comprehensive metadata during conversion: title, description, headers, links, images, structured data (JSON-LD, Microdata, RDFa). Use cases: SEO extraction, table-of-contents generation, link validation, accessibility auditing, content migration.
96
-
97
- **[Metadata Extraction Guide →](./examples/metadata-extraction/)**
98
-
99
- </details>
100
-
101
- <details>
102
- <summary><strong>Visitor Pattern</strong></summary>
103
-
104
- Customize HTML→Markdown conversion with callbacks for specific elements. Intercept links, images, headings, lists, and more. Use cases: domain-specific Markdown dialects (Obsidian, Notion), content filtering, URL rewriting, accessibility validation, analytics.
105
-
106
- Supported in: Rust, Python (sync & async), TypeScript/Node.js (sync & async), Ruby, and PHP.
107
-
108
- **[Visitor Pattern Guide →](./examples/visitor-pattern/)**
109
-
110
- ### Visitor Support Matrix
57
+ High-performance HTML to Markdown conversion powered by Rust. Ships as native bindings for **Rust, Python, TypeScript/Node.js, Ruby, PHP, Go, Java, C#, Elixir, R, C (FFI), and WebAssembly** with identical rendering across all runtimes.
111
58
 
112
- | Binding | Visitor Support | Async Support | Best For |
113
- |---------|-----------------|---------------|----------|
114
- | **Rust** | ✅ Yes | ✅ Tokio | Core library, performance-critical code |
115
- | **Python** | ✅ Yes | ✅ asyncio | Server-side, bulk processing |
116
- | **TypeScript/Node.js** | ✅ Yes | ✅ Promise-based | Server-side Node.js/Bun, best performance |
117
- | **Ruby** | ✅ Yes | ❌ No | Server-side Ruby on Rails, Sinatra |
118
- | **PHP** | ✅ Yes | ❌ No | Server-side PHP, content management |
119
- | **Go** | ❌ No | — | Basic conversion only |
120
- | **Java** | ❌ No | — | Basic conversion only |
121
- | **C#** | ❌ No | — | Basic conversion only |
122
- | **Elixir** | ❌ No | — | Basic conversion only |
123
- | **WebAssembly** | ❌ No | — | Browser, Edge, Deno (FFI limitations) |
59
+ **[Documentation](https://docs.html-to-markdown.kreuzberg.dev)** | **[Live Demo](https://kreuzberg-dev.github.io/html-to-markdown/)** | **[API Reference](https://docs.html-to-markdown.kreuzberg.dev/reference/api-rust/)**
124
60
 
125
- For WASM users needing visitor functionality, see [WASM Visitor Alternatives](./crates/html-to-markdown-wasm/README.md#visitor-pattern-support) for recommended approaches.
61
+ ## Highlights
126
62
 
127
- </details>
63
+ - **150-280 MB/s** throughput (10-80x faster than pure Python alternatives)
64
+ - **12 language bindings** with consistent output across all runtimes
65
+ - **Metadata extraction** — title, headers, links, images, structured data (JSON-LD, Microdata, RDFa)
66
+ - **Visitor pattern** — custom callbacks for content filtering, URL rewriting, domain-specific dialects
67
+ - **Secure by default** — built-in HTML sanitization via ammonia
128
68
 
129
- <details>
130
- <summary><strong>Performance & Benchmarking</strong></summary>
69
+ ## Quick Start
131
70
 
132
- Rust-powered core delivers 150–280 MB/s throughput (10-80× faster than pure Python alternatives). Includes benchmarking tools, memory profiling, streaming strategies, and optimization tips.
71
+ ```bash
72
+ # Rust
73
+ cargo add html-to-markdown-rs
133
74
 
134
- **[Performance Guide →](./examples/performance/)**
75
+ # Python
76
+ pip install html-to-markdown
135
77
 
136
- </details>
78
+ # TypeScript / Node.js
79
+ npm install @kreuzberg/html-to-markdown-node
137
80
 
138
- <details>
139
- <summary><strong>Tag Preservation</strong></summary>
81
+ # Ruby
82
+ gem install html-to-markdown
140
83
 
141
- Keep specific HTML tags unconverted when Markdown isn't expressive enough. Useful for tables, SVG, custom elements, or when you need mixed HTML/Markdown output.
142
-
143
- See language-specific documentation for `preserveTags` configuration.
144
-
145
- </details>
146
-
147
- <details>
148
- <summary><strong>Skipping Images</strong></summary>
149
-
150
- Skip all images during conversion using the `skip_images` option. Useful for text-only extraction or when you want to filter out visual content.
151
-
152
- **Rust:**
153
- ```rust
154
- use html_to_markdown_rs::{convert, ConversionOptions};
155
-
156
- let options = ConversionOptions {
157
- skip_images: true,
158
- ..Default::default()
159
- };
160
-
161
- let html = r#"<p>Text with <img src="image.jpg" alt="pic"> image</p>"#;
162
- let markdown = convert(html, Some(options))?;
163
- // Output: "Text with image" (image tags are removed)
164
- ```
165
-
166
- **Python:**
167
- ```python
168
- from html_to_markdown import convert, ConversionOptions
169
-
170
- options = ConversionOptions(skip_images=True)
171
- markdown = convert(html, options)
172
- ```
173
-
174
- **TypeScript/Node.js:**
175
- ```typescript
176
- import { convert, ConversionOptions } from '@kreuzberg/html-to-markdown-node';
177
-
178
- const options: ConversionOptions = {
179
- skipImages: true,
180
- };
181
-
182
- const markdown = convert(html, options);
183
- ```
184
-
185
- **Ruby:**
186
- ```ruby
187
- require 'html_to_markdown'
188
-
189
- options = HtmlToMarkdown::ConversionOptions.new(skip_images: true)
190
- markdown = HtmlToMarkdown.convert(html, options)
191
- ```
192
-
193
- **PHP:**
194
- ```php
195
- use Goldziher\HtmlToMarkdown\HtmlToMarkdown;
196
- use Goldziher\HtmlToMarkdown\Options;
197
-
198
- $options = new Options(['skip_images' => true]);
199
- $markdown = HtmlToMarkdown::convert($html, $options);
84
+ # CLI
85
+ cargo install html-to-markdown-cli
86
+ # or
87
+ brew install kreuzberg-dev/tap/html-to-markdown
200
88
  ```
201
89
 
202
- This option is available across all language bindings. When enabled, all `<img>` tags and their associated markdown image syntax are removed from the output.
203
-
204
- </details>
90
+ See the **[Installation Guide](https://docs.html-to-markdown.kreuzberg.dev/getting-started/installation/)** for all languages including PHP, Go, Java, C#, Elixir, R, and WASM.
205
91
 
206
- <details>
207
- <summary><strong>Secure by Default</strong></summary>
92
+ ## Part of the Kreuzberg Ecosystem
208
93
 
209
- Built-in HTML sanitization prevents XSS attacks and malicious content. Powered by ammonia with safe defaults. Configurable via `sanitize` options.
210
-
211
- </details>
94
+ html-to-markdown is developed by [kreuzberg.dev](https://kreuzberg.dev) and powers the HTML conversion pipeline in [Kreuzberg](https://docs.kreuzberg.dev), a document intelligence library for extracting text from PDFs, images, and office documents.
212
95
 
213
96
  ## Contributing
214
97
 
215
- Contributions are welcome! See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines on:
216
-
217
- - Setting up the development environment
218
- - Running tests locally (Rust 95%+ coverage, language bindings 80%+)
219
- - Submitting pull requests
220
- - Reporting issues
221
-
222
- All contributions must follow code quality standards enforced via pre-commit hooks (prek).
98
+ Contributions welcome! See [CONTRIBUTING.md](CONTRIBUTING.md) for setup instructions and guidelines.
223
99
 
224
100
  ## License
225
101
 
226
- MIT License see [LICENSE](LICENSE) for details. You can use html-to-markdown freely in both commercial and closed-source products with no obligations, no viral effects, and no licensing restrictions.
102
+ MIT License see [LICENSE](LICENSE) for details.
@@ -764,83 +764,83 @@ export function createConversionOptionsHandle(options) {
764
764
  export function init() {
765
765
  wasm.init();
766
766
  }
767
- export function __wbg_Error_8c4e43fe74559d73(arg0, arg1) {
767
+ export function __wbg_Error_83742b46f01ce22d(arg0, arg1) {
768
768
  const ret = Error(getStringFromWasm0(arg0, arg1));
769
769
  return addHeapObject(ret);
770
770
  }
771
- export function __wbg_Number_04624de7d0e8332d(arg0) {
771
+ export function __wbg_Number_a5a435bd7bbec835(arg0) {
772
772
  const ret = Number(getObject(arg0));
773
773
  return ret;
774
774
  }
775
- export function __wbg_String_8f0eb39a4a4c2f66(arg0, arg1) {
775
+ export function __wbg_String_8564e559799eccda(arg0, arg1) {
776
776
  const ret = String(getObject(arg1));
777
777
  const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);
778
778
  const len1 = WASM_VECTOR_LEN;
779
779
  getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
780
780
  getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
781
781
  }
782
- export function __wbg___wbindgen_bigint_get_as_i64_8fcf4ce7f1ca72a2(arg0, arg1) {
782
+ export function __wbg___wbindgen_bigint_get_as_i64_447a76b5c6ef7bda(arg0, arg1) {
783
783
  const v = getObject(arg1);
784
784
  const ret = typeof(v) === 'bigint' ? v : undefined;
785
785
  getDataViewMemory0().setBigInt64(arg0 + 8 * 1, isLikeNone(ret) ? BigInt(0) : ret, true);
786
786
  getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone(ret), true);
787
787
  }
788
- export function __wbg___wbindgen_boolean_get_bbbb1c18aa2f5e25(arg0) {
788
+ export function __wbg___wbindgen_boolean_get_c0f3f60bac5a78d1(arg0) {
789
789
  const v = getObject(arg0);
790
790
  const ret = typeof(v) === 'boolean' ? v : undefined;
791
791
  return isLikeNone(ret) ? 0xFFFFFF : ret ? 1 : 0;
792
792
  }
793
- export function __wbg___wbindgen_debug_string_0bc8482c6e3508ae(arg0, arg1) {
793
+ export function __wbg___wbindgen_debug_string_5398f5bb970e0daa(arg0, arg1) {
794
794
  const ret = debugString(getObject(arg1));
795
795
  const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);
796
796
  const len1 = WASM_VECTOR_LEN;
797
797
  getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
798
798
  getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
799
799
  }
800
- export function __wbg___wbindgen_in_47fa6863be6f2f25(arg0, arg1) {
800
+ export function __wbg___wbindgen_in_41dbb8413020e076(arg0, arg1) {
801
801
  const ret = getObject(arg0) in getObject(arg1);
802
802
  return ret;
803
803
  }
804
- export function __wbg___wbindgen_is_bigint_31b12575b56f32fc(arg0) {
804
+ export function __wbg___wbindgen_is_bigint_e2141d4f045b7eda(arg0) {
805
805
  const ret = typeof(getObject(arg0)) === 'bigint';
806
806
  return ret;
807
807
  }
808
- export function __wbg___wbindgen_is_function_0095a73b8b156f76(arg0) {
808
+ export function __wbg___wbindgen_is_function_3c846841762788c1(arg0) {
809
809
  const ret = typeof(getObject(arg0)) === 'function';
810
810
  return ret;
811
811
  }
812
- export function __wbg___wbindgen_is_null_ac34f5003991759a(arg0) {
812
+ export function __wbg___wbindgen_is_null_0b605fc6b167c56f(arg0) {
813
813
  const ret = getObject(arg0) === null;
814
814
  return ret;
815
815
  }
816
- export function __wbg___wbindgen_is_object_5ae8e5880f2c1fbd(arg0) {
816
+ export function __wbg___wbindgen_is_object_781bc9f159099513(arg0) {
817
817
  const val = getObject(arg0);
818
818
  const ret = typeof(val) === 'object' && val !== null;
819
819
  return ret;
820
820
  }
821
- export function __wbg___wbindgen_is_string_cd444516edc5b180(arg0) {
821
+ export function __wbg___wbindgen_is_string_7ef6b97b02428fae(arg0) {
822
822
  const ret = typeof(getObject(arg0)) === 'string';
823
823
  return ret;
824
824
  }
825
- export function __wbg___wbindgen_is_undefined_9e4d92534c42d778(arg0) {
825
+ export function __wbg___wbindgen_is_undefined_52709e72fb9f179c(arg0) {
826
826
  const ret = getObject(arg0) === undefined;
827
827
  return ret;
828
828
  }
829
- export function __wbg___wbindgen_jsval_eq_11888390b0186270(arg0, arg1) {
829
+ export function __wbg___wbindgen_jsval_eq_ee31bfad3e536463(arg0, arg1) {
830
830
  const ret = getObject(arg0) === getObject(arg1);
831
831
  return ret;
832
832
  }
833
- export function __wbg___wbindgen_jsval_loose_eq_9dd77d8cd6671811(arg0, arg1) {
833
+ export function __wbg___wbindgen_jsval_loose_eq_5bcc3bed3c69e72b(arg0, arg1) {
834
834
  const ret = getObject(arg0) == getObject(arg1);
835
835
  return ret;
836
836
  }
837
- export function __wbg___wbindgen_number_get_8ff4255516ccad3e(arg0, arg1) {
837
+ export function __wbg___wbindgen_number_get_34bb9d9dcfa21373(arg0, arg1) {
838
838
  const obj = getObject(arg1);
839
839
  const ret = typeof(obj) === 'number' ? obj : undefined;
840
840
  getDataViewMemory0().setFloat64(arg0 + 8 * 1, isLikeNone(ret) ? 0 : ret, true);
841
841
  getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone(ret), true);
842
842
  }
843
- export function __wbg___wbindgen_string_get_72fb696202c56729(arg0, arg1) {
843
+ export function __wbg___wbindgen_string_get_395e606bd0ee4427(arg0, arg1) {
844
844
  const obj = getObject(arg1);
845
845
  const ret = typeof(obj) === 'string' ? obj : undefined;
846
846
  var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);
@@ -848,22 +848,22 @@ export function __wbg___wbindgen_string_get_72fb696202c56729(arg0, arg1) {
848
848
  getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
849
849
  getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
850
850
  }
851
- export function __wbg___wbindgen_throw_be289d5034ed271b(arg0, arg1) {
851
+ export function __wbg___wbindgen_throw_6ddd609b62940d55(arg0, arg1) {
852
852
  throw new Error(getStringFromWasm0(arg0, arg1));
853
853
  }
854
- export function __wbg_call_389efe28435a9388() { return handleError(function (arg0, arg1) {
854
+ export function __wbg_call_e133b57c9155d22c() { return handleError(function (arg0, arg1) {
855
855
  const ret = getObject(arg0).call(getObject(arg1));
856
856
  return addHeapObject(ret);
857
857
  }, arguments); }
858
- export function __wbg_codePointAt_bf59dbf74d8db275(arg0, arg1) {
858
+ export function __wbg_codePointAt_3925396be3b2c733(arg0, arg1) {
859
859
  const ret = getObject(arg0).codePointAt(arg1 >>> 0);
860
860
  return addHeapObject(ret);
861
861
  }
862
- export function __wbg_done_57b39ecd9addfe81(arg0) {
862
+ export function __wbg_done_08ce71ee07e3bd17(arg0) {
863
863
  const ret = getObject(arg0).done;
864
864
  return ret;
865
865
  }
866
- export function __wbg_error_7534b8e9a36f1ab4(arg0, arg1) {
866
+ export function __wbg_error_a6fa202b58aa1cd3(arg0, arg1) {
867
867
  let deferred0_0;
868
868
  let deferred0_1;
869
869
  try {
@@ -874,19 +874,19 @@ export function __wbg_error_7534b8e9a36f1ab4(arg0, arg1) {
874
874
  wasm.__wbindgen_export4(deferred0_0, deferred0_1, 1);
875
875
  }
876
876
  }
877
- export function __wbg_get_9b94d73e6221f75c(arg0, arg1) {
878
- const ret = getObject(arg0)[arg1 >>> 0];
879
- return addHeapObject(ret);
880
- }
881
- export function __wbg_get_b3ed3ad4be2bc8ac() { return handleError(function (arg0, arg1) {
877
+ export function __wbg_get_326e41e095fb2575() { return handleError(function (arg0, arg1) {
882
878
  const ret = Reflect.get(getObject(arg0), getObject(arg1));
883
879
  return addHeapObject(ret);
884
880
  }, arguments); }
885
- export function __wbg_get_with_ref_key_1dc361bd10053bfe(arg0, arg1) {
881
+ export function __wbg_get_unchecked_329cfe50afab7352(arg0, arg1) {
882
+ const ret = getObject(arg0)[arg1 >>> 0];
883
+ return addHeapObject(ret);
884
+ }
885
+ export function __wbg_get_with_ref_key_6412cf3094599694(arg0, arg1) {
886
886
  const ret = getObject(arg0)[getObject(arg1)];
887
887
  return addHeapObject(ret);
888
888
  }
889
- export function __wbg_instanceof_ArrayBuffer_c367199e2fa2aa04(arg0) {
889
+ export function __wbg_instanceof_ArrayBuffer_101e2bf31071a9f6(arg0) {
890
890
  let result;
891
891
  try {
892
892
  result = getObject(arg0) instanceof ArrayBuffer;
@@ -896,7 +896,7 @@ export function __wbg_instanceof_ArrayBuffer_c367199e2fa2aa04(arg0) {
896
896
  const ret = result;
897
897
  return ret;
898
898
  }
899
- export function __wbg_instanceof_Object_1c6af87502b733ed(arg0) {
899
+ export function __wbg_instanceof_Object_be1962063fcc0c9f(arg0) {
900
900
  let result;
901
901
  try {
902
902
  result = getObject(arg0) instanceof Object;
@@ -906,7 +906,7 @@ export function __wbg_instanceof_Object_1c6af87502b733ed(arg0) {
906
906
  const ret = result;
907
907
  return ret;
908
908
  }
909
- export function __wbg_instanceof_Uint8Array_9b9075935c74707c(arg0) {
909
+ export function __wbg_instanceof_Uint8Array_740438561a5b956d(arg0) {
910
910
  let result;
911
911
  try {
912
912
  result = getObject(arg0) instanceof Uint8Array;
@@ -916,91 +916,91 @@ export function __wbg_instanceof_Uint8Array_9b9075935c74707c(arg0) {
916
916
  const ret = result;
917
917
  return ret;
918
918
  }
919
- export function __wbg_isArray_d314bb98fcf08331(arg0) {
919
+ export function __wbg_isArray_33b91feb269ff46e(arg0) {
920
920
  const ret = Array.isArray(getObject(arg0));
921
921
  return ret;
922
922
  }
923
- export function __wbg_isSafeInteger_bfbc7332a9768d2a(arg0) {
923
+ export function __wbg_isSafeInteger_ecd6a7f9c3e053cd(arg0) {
924
924
  const ret = Number.isSafeInteger(getObject(arg0));
925
925
  return ret;
926
926
  }
927
- export function __wbg_iterator_6ff6560ca1568e55() {
927
+ export function __wbg_iterator_d8f549ec8fb061b1() {
928
928
  const ret = Symbol.iterator;
929
929
  return addHeapObject(ret);
930
930
  }
931
- export function __wbg_keys_b50a709a76add04e(arg0) {
931
+ export function __wbg_keys_ab0d051a1c55236d(arg0) {
932
932
  const ret = Object.keys(getObject(arg0));
933
933
  return addHeapObject(ret);
934
934
  }
935
- export function __wbg_length_32ed9a279acd054c(arg0) {
935
+ export function __wbg_length_15d3fc853a68bbbc(arg0) {
936
936
  const ret = getObject(arg0).length;
937
937
  return ret;
938
938
  }
939
- export function __wbg_length_35a7bace40f36eac(arg0) {
939
+ export function __wbg_length_b3416cf66a5452c8(arg0) {
940
940
  const ret = getObject(arg0).length;
941
941
  return ret;
942
942
  }
943
- export function __wbg_length_68dc7c5cf1b6d349(arg0) {
943
+ export function __wbg_length_ea16607d7b61445b(arg0) {
944
944
  const ret = getObject(arg0).length;
945
945
  return ret;
946
946
  }
947
- export function __wbg_new_361308b2356cecd0() {
948
- const ret = new Object();
947
+ export function __wbg_new_227d7c05414eb861() {
948
+ const ret = new Error();
949
949
  return addHeapObject(ret);
950
950
  }
951
- export function __wbg_new_3eb36ae241fe6f44() {
952
- const ret = new Array();
951
+ export function __wbg_new_49d5571bd3f0c4d4() {
952
+ const ret = new Map();
953
953
  return addHeapObject(ret);
954
954
  }
955
- export function __wbg_new_8a6f238a6ece86ea() {
956
- const ret = new Error();
955
+ export function __wbg_new_5f486cdf45a04d78(arg0) {
956
+ const ret = new Uint8Array(getObject(arg0));
957
957
  return addHeapObject(ret);
958
958
  }
959
- export function __wbg_new_dca287b076112a51() {
960
- const ret = new Map();
959
+ export function __wbg_new_a70fbab9066b301f() {
960
+ const ret = new Array();
961
961
  return addHeapObject(ret);
962
962
  }
963
- export function __wbg_new_dd2b680c8bf6ae29(arg0) {
964
- const ret = new Uint8Array(getObject(arg0));
963
+ export function __wbg_new_ab79df5bd7c26067() {
964
+ const ret = new Object();
965
965
  return addHeapObject(ret);
966
966
  }
967
- export function __wbg_new_from_slice_a3d2629dc1826784(arg0, arg1) {
967
+ export function __wbg_new_from_slice_22da9388ac046e50(arg0, arg1) {
968
968
  const ret = new Uint8Array(getArrayU8FromWasm0(arg0, arg1));
969
969
  return addHeapObject(ret);
970
970
  }
971
- export function __wbg_next_3482f54c49e8af19() { return handleError(function (arg0) {
971
+ export function __wbg_next_11b99ee6237339e3() { return handleError(function (arg0) {
972
972
  const ret = getObject(arg0).next();
973
973
  return addHeapObject(ret);
974
974
  }, arguments); }
975
- export function __wbg_next_418f80d8f5303233(arg0) {
975
+ export function __wbg_next_e01a967809d1aa68(arg0) {
976
976
  const ret = getObject(arg0).next;
977
977
  return addHeapObject(ret);
978
978
  }
979
- export function __wbg_prototypesetcall_bdcdcc5842e4d77d(arg0, arg1, arg2) {
979
+ export function __wbg_prototypesetcall_d62e5099504357e6(arg0, arg1, arg2) {
980
980
  Uint8Array.prototype.set.call(getArrayU8FromWasm0(arg0, arg1), getObject(arg2));
981
981
  }
982
- export function __wbg_set_1eb0999cf5d27fc8(arg0, arg1, arg2) {
983
- const ret = getObject(arg0).set(getObject(arg1), getObject(arg2));
984
- return addHeapObject(ret);
982
+ export function __wbg_set_282384002438957f(arg0, arg1, arg2) {
983
+ getObject(arg0)[arg1 >>> 0] = takeObject(arg2);
985
984
  }
986
- export function __wbg_set_3f1d0b984ed272ed(arg0, arg1, arg2) {
985
+ export function __wbg_set_6be42768c690e380(arg0, arg1, arg2) {
987
986
  getObject(arg0)[takeObject(arg1)] = takeObject(arg2);
988
987
  }
989
- export function __wbg_set_6cb8631f80447a67() { return handleError(function (arg0, arg1, arg2) {
988
+ export function __wbg_set_7eaa4f96924fd6b3() { return handleError(function (arg0, arg1, arg2) {
990
989
  const ret = Reflect.set(getObject(arg0), getObject(arg1), getObject(arg2));
991
990
  return ret;
992
991
  }, arguments); }
993
- export function __wbg_set_f43e577aea94465b(arg0, arg1, arg2) {
994
- getObject(arg0)[arg1 >>> 0] = takeObject(arg2);
992
+ export function __wbg_set_bf7251625df30a02(arg0, arg1, arg2) {
993
+ const ret = getObject(arg0).set(getObject(arg1), getObject(arg2));
994
+ return addHeapObject(ret);
995
995
  }
996
- export function __wbg_stack_0ed75d68575b0f3c(arg0, arg1) {
996
+ export function __wbg_stack_3b0d974bbf31e44f(arg0, arg1) {
997
997
  const ret = getObject(arg1).stack;
998
998
  const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);
999
999
  const len1 = WASM_VECTOR_LEN;
1000
1000
  getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
1001
1001
  getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
1002
1002
  }
1003
- export function __wbg_value_0546255b415e96c1(arg0) {
1003
+ export function __wbg_value_21fc78aab0322612(arg0) {
1004
1004
  const ret = getObject(arg0).value;
1005
1005
  return addHeapObject(ret);
1006
1006
  }
@@ -1134,7 +1134,7 @@ function debugString(val) {
1134
1134
  }
1135
1135
 
1136
1136
  function dropObject(idx) {
1137
- if (idx < 132) return;
1137
+ if (idx < 1028) return;
1138
1138
  heap[idx] = heap_next;
1139
1139
  heap_next = idx;
1140
1140
  }
@@ -1198,7 +1198,7 @@ function handleError(f, args) {
1198
1198
  }
1199
1199
  }
1200
1200
 
1201
- let heap = new Array(128).fill(undefined);
1201
+ let heap = new Array(1024).fill(undefined);
1202
1202
  heap.push(undefined, null, true, false);
1203
1203
 
1204
1204
  let heap_next = heap.length;
Binary file
package/dist/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "Na'aman Hirschfeld <nhirschfeld@gmail.com>"
6
6
  ],
7
7
  "description": "HTML to Markdown conversion for WebAssembly targets",
8
- "version": "2.25.1",
8
+ "version": "2.26.1",
9
9
  "license": "MIT",
10
10
  "repository": {
11
11
  "type": "git",