nuxt-ai-ready 2.5.2 → 3.0.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.
- package/README.md +13 -12
- package/dist/chunks/agent-skills.mjs +35 -12
- package/dist/chunks/prerender.mjs +35 -24
- package/dist/cli.mjs +5 -2
- package/dist/module.d.mts +4 -0
- package/dist/module.json +2 -2
- package/dist/module.mjs +8 -4
- package/dist/runtime/app/index.d.ts +3 -0
- package/dist/runtime/app/index.js +2 -0
- package/dist/runtime/cache-control.d.ts +2 -0
- package/dist/runtime/cache-control.js +11 -0
- package/dist/runtime/llms-txt-utils.js +1 -1
- package/dist/runtime/server/db/context.d.ts +13 -0
- package/dist/runtime/server/db/drizzle/client.d.ts +6 -7
- package/dist/runtime/server/db/drizzle/client.js +13 -2
- package/dist/runtime/server/db/drizzle/providers/bun.d.ts +2 -2
- package/dist/runtime/server/db/drizzle/providers/bun.js +2 -2
- package/dist/runtime/server/db/drizzle/providers/d1.d.ts +2 -2
- package/dist/runtime/server/db/drizzle/providers/d1.js +3 -2
- package/dist/runtime/server/db/drizzle/providers/libsql.d.ts +2 -2
- package/dist/runtime/server/db/drizzle/providers/libsql.js +2 -2
- package/dist/runtime/server/db/drizzle/providers/neon.d.ts +2 -2
- package/dist/runtime/server/db/drizzle/providers/neon.js +2 -2
- package/dist/runtime/server/db/drizzle/providers/node-sqlite.d.ts +2 -2
- package/dist/runtime/server/db/drizzle/providers/node-sqlite.js +2 -2
- package/dist/runtime/server/db/drizzle/providers/postgres.d.ts +2 -2
- package/dist/runtime/server/db/drizzle/providers/postgres.js +2 -2
- package/dist/runtime/server/db/drizzle/queries.d.ts +27 -27
- package/dist/runtime/server/db/drizzle/queries.js +6 -5
- package/dist/runtime/server/db/drizzle/raw.d.ts +2 -6
- package/dist/runtime/server/db/index.d.ts +1 -1
- package/dist/runtime/server/db/index.js +1 -1
- package/dist/runtime/server/db/queries.d.ts +36 -36
- package/dist/runtime/server/db/queries.js +8 -9
- package/dist/runtime/server/db/seed.d.ts +2 -2
- package/dist/runtime/server/db/seed.js +4 -3
- package/dist/runtime/server/db/shared.d.ts +8 -0
- package/dist/runtime/server/db/shared.js +8 -2
- package/dist/runtime/server/index.d.ts +2 -0
- package/dist/runtime/server/index.js +17 -0
- package/dist/runtime/server/mcp/tools/get-page-markdown.js +1 -1
- package/dist/runtime/server/mcp/tools/list-pages.js +1 -1
- package/dist/runtime/server/mcp/tools/search-pages.js +1 -1
- package/dist/runtime/server/middleware/markdown.js +3 -3
- package/dist/runtime/server/middleware/markdown.prerender.js +1 -1
- package/dist/runtime/server/plugins/db-lifecycle-nitro3.d.ts +2 -0
- package/dist/runtime/server/plugins/db-lifecycle-nitro3.js +16 -0
- package/dist/runtime/server/plugins/html-capture.prerender.js +6 -4
- package/dist/runtime/server/plugins/link-header-nitro3.d.ts +2 -0
- package/dist/runtime/server/plugins/link-header-nitro3.js +20 -0
- package/dist/runtime/server/plugins/link-header.d.ts +6 -0
- package/dist/runtime/server/plugins/link-header.js +7 -11
- package/dist/runtime/server/plugins/markdown-negotiation.js +8 -1
- package/dist/runtime/server/plugins/sitemap-seeder.js +3 -3
- package/dist/runtime/server/routes/agent-skills-artifact.d.ts +1 -1
- package/dist/runtime/server/routes/agent-skills-artifact.js +10 -10
- package/dist/runtime/server/routes/agent-skills-index.d.ts +1 -1
- package/dist/runtime/server/routes/agent-skills-index.js +7 -6
- package/dist/runtime/server/routes/ai-catalog.d.ts +2 -1
- package/dist/runtime/server/routes/ai-catalog.js +7 -8
- package/dist/runtime/server/routes/api-catalog.d.ts +3 -1
- package/dist/runtime/server/routes/api-catalog.js +12 -12
- package/dist/runtime/server/routes/llms-full.txt.get.js +1 -1
- package/dist/runtime/server/routes/mcp-server-card.d.ts +1 -1
- package/dist/runtime/server/routes/mcp-server-card.js +7 -8
- package/dist/runtime/server/utils/checkStale.d.ts +2 -2
- package/dist/runtime/server/utils/cloudflare-prerendered.d.ts +3 -0
- package/dist/runtime/server/utils/cloudflare-prerendered.js +23 -0
- package/dist/runtime/server/utils/cloudflare.d.ts +5 -5
- package/dist/runtime/server/utils/cloudflare.js +31 -7
- package/dist/runtime/server/utils/content-negotiation.d.ts +5 -3
- package/dist/runtime/server/utils/content-negotiation.js +8 -7
- package/dist/runtime/server/utils/context.d.ts +3 -3
- package/dist/runtime/server/utils/context.js +1 -1
- package/dist/runtime/server/utils/discovery-response.d.ts +2 -0
- package/dist/runtime/server/utils/link-header.d.ts +5 -3
- package/dist/runtime/server/utils/link-header.js +26 -2
- package/dist/runtime/server/utils/markdown-request.d.ts +4 -3
- package/dist/runtime/server/utils/markdown-request.js +15 -13
- package/dist/runtime/server/utils/negotiation-decision.d.ts +4 -0
- package/dist/runtime/server/utils/negotiation-decision.js +6 -5
- package/dist/runtime/server/utils/negotiation-response.d.ts +1 -1
- package/dist/runtime/server/utils/negotiation-response.js +63 -23
- package/dist/runtime/server/utils/prerender-html.d.ts +2 -1
- package/dist/runtime/server/utils/prerender-html.js +3 -1
- package/dist/runtime/types.d.ts +15 -7
- package/dist/shared/nuxt-ai-ready.B3hAuOLQ.mjs +29 -0
- package/dist/shared/{nuxt-ai-ready.CLSWou20.mjs → nuxt-ai-ready.C34F0LJo.mjs} +560 -219
- package/package.json +85 -20
- package/skills/nuxt-ai-ready/SKILL.md +26 -12
- package/skills/nuxt-ai-ready/references/runtime-indexing.md +7 -6
- package/dist/runtime/server/db/drizzle/providers/sqlite.d.ts +0 -8
- package/dist/runtime/server/db/drizzle/providers/sqlite.js +0 -15
- package/node_modules/@mdream/js/LICENSE.md +0 -9
- package/node_modules/@mdream/js/README.md +0 -792
- package/node_modules/@mdream/js/bin/mdream.mjs +0 -2
- package/node_modules/@mdream/js/dist/_chunks/const.mjs +0 -134
- package/node_modules/@mdream/js/dist/_chunks/index.d.mts +0 -9
- package/node_modules/@mdream/js/dist/_chunks/markdown-processor.mjs +0 -1968
- package/node_modules/@mdream/js/dist/_chunks/minimal.d.mts +0 -6
- package/node_modules/@mdream/js/dist/_chunks/parse.mjs +0 -2756
- package/node_modules/@mdream/js/dist/_chunks/plugins.mjs +0 -725
- package/node_modules/@mdream/js/dist/_chunks/resolve-plugins.mjs +0 -44
- package/node_modules/@mdream/js/dist/_chunks/stream.mjs +0 -37
- package/node_modules/@mdream/js/dist/_chunks/types.d.mts +0 -473
- package/node_modules/@mdream/js/dist/cli.d.mts +0 -1
- package/node_modules/@mdream/js/dist/cli.mjs +0 -32
- package/node_modules/@mdream/js/dist/core.d.mts +0 -15
- package/node_modules/@mdream/js/dist/core.mjs +0 -28
- package/node_modules/@mdream/js/dist/index.d.mts +0 -4
- package/node_modules/@mdream/js/dist/index.mjs +0 -58
- package/node_modules/@mdream/js/dist/llms-txt.d.mts +0 -86
- package/node_modules/@mdream/js/dist/llms-txt.mjs +0 -308
- package/node_modules/@mdream/js/dist/negotiate.d.mts +0 -35
- package/node_modules/@mdream/js/dist/negotiate.mjs +0 -121
- package/node_modules/@mdream/js/dist/parse.d.mts +0 -90
- package/node_modules/@mdream/js/dist/parse.mjs +0 -2
- package/node_modules/@mdream/js/dist/plugins.d.mts +0 -85
- package/node_modules/@mdream/js/dist/plugins.mjs +0 -2
- package/node_modules/@mdream/js/dist/preset/minimal.d.mts +0 -2
- package/node_modules/@mdream/js/dist/preset/minimal.mjs +0 -33
- package/node_modules/@mdream/js/dist/splitter.d.mts +0 -18
- package/node_modules/@mdream/js/dist/splitter.mjs +0 -194
- package/node_modules/@mdream/js/package.json +0 -103
- package/node_modules/cac/LICENSE +0 -21
- package/node_modules/cac/README.md +0 -492
- package/node_modules/cac/dist/index.d.ts +0 -196
- package/node_modules/cac/dist/index.js +0 -638
- package/node_modules/cac/package.json +0 -72
- package/node_modules/mdream/LICENSE.md +0 -9
- package/node_modules/mdream/README.md +0 -1091
- package/node_modules/mdream/bin/mdream.mjs +0 -46
- package/node_modules/mdream/dist/browser.d.mts +0 -105
- package/node_modules/mdream/dist/browser.mjs +0 -262
- package/node_modules/mdream/dist/edge.d.mts +0 -100
- package/node_modules/mdream/dist/edge.mjs +0 -250
- package/node_modules/mdream/dist/iife.js +0 -605
- package/node_modules/mdream/dist/index.d.mts +0 -89
- package/node_modules/mdream/dist/index.mjs +0 -184
- package/node_modules/mdream/dist/wasm.d.mts +0 -100
- package/node_modules/mdream/dist/wasm.mjs +0 -140
- package/node_modules/mdream/dist/worker.d.mts +0 -101
- package/node_modules/mdream/dist/worker.mjs +0 -217
- package/node_modules/mdream/napi/index.d.mts +0 -127
- package/node_modules/mdream/napi/index.d.ts +0 -127
- package/node_modules/mdream/napi/index.mjs +0 -725
- package/node_modules/mdream/napi/rust.android-arm-eabi.node +0 -0
- package/node_modules/mdream/napi/rust.android-arm64.node +0 -0
- package/node_modules/mdream/napi/rust.darwin-arm64.node +0 -0
- package/node_modules/mdream/napi/rust.darwin-x64.node +0 -0
- package/node_modules/mdream/napi/rust.freebsd-x64.node +0 -0
- package/node_modules/mdream/napi/rust.linux-arm-gnueabihf.node +0 -0
- package/node_modules/mdream/napi/rust.linux-arm64-gnu.node +0 -0
- package/node_modules/mdream/napi/rust.linux-arm64-musl.node +0 -0
- package/node_modules/mdream/napi/rust.linux-x64-gnu.node +0 -0
- package/node_modules/mdream/napi/rust.linux-x64-musl.node +0 -0
- package/node_modules/mdream/napi/rust.wasi.cjs +0 -2144
- package/node_modules/mdream/napi/rust.wasm32-wasi.wasm +0 -0
- package/node_modules/mdream/napi/rust.win32-arm64-msvc.node +0 -0
- package/node_modules/mdream/napi/rust.win32-x64-msvc.node +0 -0
- package/node_modules/mdream/node_modules/@emnapi/core/LICENSE +0 -21
- package/node_modules/mdream/node_modules/@emnapi/core/README.md +0 -1
- package/node_modules/mdream/node_modules/@emnapi/core/dist/emnapi-core.d.ts +0 -392
- package/node_modules/mdream/node_modules/@emnapi/core/dist/emnapi-core.full.d.ts +0 -392
- package/node_modules/mdream/node_modules/@emnapi/core/dist/emnapi-core.full.js +0 -8351
- package/node_modules/mdream/node_modules/@emnapi/core/dist/emnapi-core.js +0 -7268
- package/node_modules/mdream/node_modules/@emnapi/core/dist/plugins/async-work.d.ts +0 -5
- package/node_modules/mdream/node_modules/@emnapi/core/dist/plugins/async-work.js +0 -843
- package/node_modules/mdream/node_modules/@emnapi/core/dist/plugins/index.d.ts +0 -4
- package/node_modules/mdream/node_modules/@emnapi/core/dist/plugins/index.js +0 -3
- package/node_modules/mdream/node_modules/@emnapi/core/dist/plugins/threadsafe-function.d.ts +0 -5
- package/node_modules/mdream/node_modules/@emnapi/core/dist/plugins/threadsafe-function.js +0 -1010
- package/node_modules/mdream/node_modules/@emnapi/core/dist/plugins/v8.d.ts +0 -5
- package/node_modules/mdream/node_modules/@emnapi/core/dist/plugins/v8.js +0 -1446
- package/node_modules/mdream/node_modules/@emnapi/core/package.json +0 -39
- package/node_modules/mdream/node_modules/@emnapi/core/rollup.config.js +0 -60
- package/node_modules/mdream/node_modules/@emnapi/runtime/LICENSE +0 -21
- package/node_modules/mdream/node_modules/@emnapi/runtime/README.md +0 -1
- package/node_modules/mdream/node_modules/@emnapi/runtime/dist/emnapi.d.ts +0 -833
- package/node_modules/mdream/node_modules/@emnapi/runtime/dist/emnapi.js +0 -2306
- package/node_modules/mdream/node_modules/@emnapi/runtime/dist/emnapi.js.map +0 -1
- package/node_modules/mdream/node_modules/@emnapi/runtime/index.cjs +0 -63
- package/node_modules/mdream/node_modules/@emnapi/runtime/package.json +0 -39
- package/node_modules/mdream/node_modules/@emnapi/runtime/rollup.config.js +0 -25
- package/node_modules/mdream/node_modules/@emnapi/wasi-threads/LICENSE +0 -21
- package/node_modules/mdream/node_modules/@emnapi/wasi-threads/README.md +0 -203
- package/node_modules/mdream/node_modules/@emnapi/wasi-threads/dist/wasi-threads.d.ts +0 -236
- package/node_modules/mdream/node_modules/@emnapi/wasi-threads/dist/wasi-threads.js +0 -1086
- package/node_modules/mdream/node_modules/@emnapi/wasi-threads/package.json +0 -35
- package/node_modules/mdream/node_modules/@emnapi/wasi-threads/rollup.config.js +0 -6
- package/node_modules/mdream/node_modules/@napi-rs/wasm-runtime/dist/emnapi-plugins.cjs +0 -1472
- package/node_modules/mdream/node_modules/@napi-rs/wasm-runtime/dist/emnapi-plugins.js +0 -1470
- package/node_modules/mdream/node_modules/@napi-rs/wasm-runtime/dist/fs-proxy.cjs +0 -237
- package/node_modules/mdream/node_modules/@napi-rs/wasm-runtime/dist/fs.js +0 -18260
- package/node_modules/mdream/node_modules/@napi-rs/wasm-runtime/fs-proxy.js +0 -317
- package/node_modules/mdream/node_modules/@napi-rs/wasm-runtime/package.json +0 -67
- package/node_modules/mdream/node_modules/@napi-rs/wasm-runtime/runtime.cjs +0 -39
- package/node_modules/mdream/node_modules/@napi-rs/wasm-runtime/runtime.js +0 -36
- package/node_modules/mdream/node_modules/@tybys/wasm-util/LICENSE +0 -21
- package/node_modules/mdream/node_modules/@tybys/wasm-util/README.md +0 -193
- package/node_modules/mdream/node_modules/@tybys/wasm-util/dist/tsdoc-metadata.json +0 -11
- package/node_modules/mdream/node_modules/@tybys/wasm-util/dist/wasm-util.d.ts +0 -423
- package/node_modules/mdream/node_modules/@tybys/wasm-util/dist/wasm-util.esm-bundler.js +0 -2932
- package/node_modules/mdream/node_modules/@tybys/wasm-util/dist/wasm-util.esm.js +0 -2932
- package/node_modules/mdream/node_modules/@tybys/wasm-util/dist/wasm-util.esm.min.js +0 -1
- package/node_modules/mdream/node_modules/@tybys/wasm-util/dist/wasm-util.js +0 -2954
- package/node_modules/mdream/node_modules/@tybys/wasm-util/dist/wasm-util.min.js +0 -1
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/asyncify.js +0 -158
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/index.js +0 -13
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/jspi.js +0 -46
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/load.js +0 -97
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/memory.js +0 -35
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/wasi/error.js +0 -103
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/wasi/fd.js +0 -268
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/wasi/fs.js +0 -3
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/wasi/index.js +0 -192
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/wasi/path.js +0 -316
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/wasi/preview1.js +0 -1599
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/wasi/rights.js +0 -141
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/wasi/types.js +0 -220
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/wasi/util.js +0 -128
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/webassembly.js +0 -13
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/asyncify.mjs +0 -153
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/index.mjs +0 -9
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/jspi.mjs +0 -39
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/load.mjs +0 -89
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/memory.mjs +0 -28
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/wasi/error.mjs +0 -97
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/wasi/fd.mjs +0 -256
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/wasi/fs.mjs +0 -1
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/wasi/index.mjs +0 -186
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/wasi/path.mjs +0 -310
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/wasi/preview1.mjs +0 -1593
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/wasi/rights.mjs +0 -135
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/wasi/types.mjs +0 -216
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/wasi/util.mjs +0 -113
- package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/webassembly.mjs +0 -9
- package/node_modules/mdream/node_modules/@tybys/wasm-util/package.json +0 -58
- package/node_modules/mdream/node_modules/tslib/CopyrightNotice.txt +0 -15
- package/node_modules/mdream/node_modules/tslib/LICENSE.txt +0 -12
- package/node_modules/mdream/node_modules/tslib/README.md +0 -164
- package/node_modules/mdream/node_modules/tslib/SECURITY.md +0 -41
- package/node_modules/mdream/node_modules/tslib/modules/index.d.ts +0 -38
- package/node_modules/mdream/node_modules/tslib/modules/index.js +0 -70
- package/node_modules/mdream/node_modules/tslib/modules/package.json +0 -3
- package/node_modules/mdream/node_modules/tslib/package.json +0 -47
- package/node_modules/mdream/node_modules/tslib/tslib.d.ts +0 -460
- package/node_modules/mdream/node_modules/tslib/tslib.es6.html +0 -1
- package/node_modules/mdream/node_modules/tslib/tslib.es6.js +0 -402
- package/node_modules/mdream/node_modules/tslib/tslib.es6.mjs +0 -401
- package/node_modules/mdream/node_modules/tslib/tslib.html +0 -1
- package/node_modules/mdream/node_modules/tslib/tslib.js +0 -484
- package/node_modules/mdream/package.json +0 -110
- package/node_modules/mdream/skills/mdream/SKILL.md +0 -124
- package/node_modules/mdream/skills/mdream/references/runtimes.md +0 -49
- package/node_modules/mdream/wasm/mdream_edge.d.ts +0 -90
- package/node_modules/mdream/wasm/mdream_edge.js +0 -517
- package/node_modules/mdream/wasm/mdream_edge_bg.wasm +0 -0
- package/node_modules/mdream/wasm/mdream_edge_bg.wasm.d.ts +0 -20
- package/node_modules/mdream/wasm/package.json +0 -17
- package/node_modules/mdream/wasm-bundler/mdream_edge.d.ts +0 -45
- package/node_modules/mdream/wasm-bundler/mdream_edge.js +0 -13
- package/node_modules/mdream/wasm-bundler/mdream_edge_bg.js +0 -413
- package/node_modules/mdream/wasm-bundler/mdream_edge_bg.wasm +0 -0
- package/node_modules/mdream/wasm-bundler/mdream_edge_bg.wasm.d.ts +0 -20
- package/node_modules/mdream/wasm-bundler/package.json +0 -19
- package/node_modules/pathe/LICENSE +0 -70
- package/node_modules/pathe/README.md +0 -73
- package/node_modules/pathe/dist/index.cjs +0 -39
- package/node_modules/pathe/dist/index.d.cts +0 -47
- package/node_modules/pathe/dist/index.d.mts +0 -47
- package/node_modules/pathe/dist/index.d.ts +0 -47
- package/node_modules/pathe/dist/index.mjs +0 -19
- package/node_modules/pathe/dist/shared/pathe.BSlhyZSM.cjs +0 -266
- package/node_modules/pathe/dist/shared/pathe.M-eThtNZ.mjs +0 -249
- package/node_modules/pathe/dist/utils.cjs +0 -82
- package/node_modules/pathe/dist/utils.d.cts +0 -32
- package/node_modules/pathe/dist/utils.d.mts +0 -32
- package/node_modules/pathe/dist/utils.d.ts +0 -32
- package/node_modules/pathe/dist/utils.mjs +0 -77
- package/node_modules/pathe/package.json +0 -61
- package/node_modules/pathe/utils.d.ts +0 -1
|
@@ -1,250 +0,0 @@
|
|
|
1
|
-
import { MarkdownStream as MarkdownStream$1, __mdreamTakePanicMessage, htmlToMarkdownResult } from "../wasm-bundler/mdream_edge.js";
|
|
2
|
-
const MINIMAL_FILTER_EXCLUDE = [
|
|
3
|
-
"form",
|
|
4
|
-
"fieldset",
|
|
5
|
-
"object",
|
|
6
|
-
"embed",
|
|
7
|
-
"footer",
|
|
8
|
-
"aside",
|
|
9
|
-
"iframe",
|
|
10
|
-
"input",
|
|
11
|
-
"textarea",
|
|
12
|
-
"select",
|
|
13
|
-
"button",
|
|
14
|
-
"nav"
|
|
15
|
-
];
|
|
16
|
-
const CLEAN_ALL = {
|
|
17
|
-
urls: true,
|
|
18
|
-
fragments: true,
|
|
19
|
-
emptyLinks: true,
|
|
20
|
-
redundantLinks: true,
|
|
21
|
-
selfLinkHeadings: true,
|
|
22
|
-
emptyImages: true,
|
|
23
|
-
emptyLinkText: true
|
|
24
|
-
};
|
|
25
|
-
function resolveCleanConfig(options, minimal) {
|
|
26
|
-
const cleanUrls = options.cleanUrls === true;
|
|
27
|
-
let cleanOpt = options.clean;
|
|
28
|
-
if (cleanOpt === void 0) {
|
|
29
|
-
if (!minimal) return { cleanUrls };
|
|
30
|
-
cleanOpt = true;
|
|
31
|
-
}
|
|
32
|
-
if (!cleanOpt) return { cleanUrls };
|
|
33
|
-
const resolved = cleanOpt === true ? CLEAN_ALL : cleanOpt;
|
|
34
|
-
return {
|
|
35
|
-
cleanUrls: cleanUrls || resolved.urls === true,
|
|
36
|
-
clean: resolved
|
|
37
|
-
};
|
|
38
|
-
}
|
|
39
|
-
function resolveFrontmatter(opt) {
|
|
40
|
-
if (typeof opt === "function") return {
|
|
41
|
-
config: {},
|
|
42
|
-
callback: opt
|
|
43
|
-
};
|
|
44
|
-
if (opt && typeof opt === "object") {
|
|
45
|
-
const { onExtract, ...config } = opt;
|
|
46
|
-
return {
|
|
47
|
-
config,
|
|
48
|
-
callback: onExtract
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
return { config: {} };
|
|
52
|
-
}
|
|
53
|
-
function resolveOptions(options) {
|
|
54
|
-
if (Array.isArray(options.plugins)) throw new TypeError("Custom hook plugins require @mdream/js. Pass declarative config (e.g. { frontmatter: true }) to the Rust engine, or import { htmlToMarkdown } from '@mdream/js' for hook-based plugins. See https://mdream.dev/v1-migration#custom-plugins");
|
|
55
|
-
const minimal = options.minimal === true;
|
|
56
|
-
const plugins = options.plugins ? { ...options.plugins } : {};
|
|
57
|
-
let frontmatterCallback;
|
|
58
|
-
const frontmatterDisabled = options.frontmatter === false;
|
|
59
|
-
if (minimal ? !frontmatterDisabled : !!options.frontmatter) {
|
|
60
|
-
const fm = resolveFrontmatter(options.frontmatter);
|
|
61
|
-
plugins.frontmatter = fm.config;
|
|
62
|
-
frontmatterCallback = fm.callback;
|
|
63
|
-
} else if (frontmatterDisabled) delete plugins.frontmatter;
|
|
64
|
-
const isolateMainDisabled = options.isolateMain === false;
|
|
65
|
-
if (minimal ? !isolateMainDisabled : options.isolateMain) plugins.isolateMain = true;
|
|
66
|
-
else if (isolateMainDisabled) delete plugins.isolateMain;
|
|
67
|
-
const tailwindDisabled = options.tailwind === false;
|
|
68
|
-
if (minimal ? !tailwindDisabled : options.tailwind) plugins.tailwind = true;
|
|
69
|
-
else if (tailwindDisabled) delete plugins.tailwind;
|
|
70
|
-
if (options.filter === false) delete plugins.filter;
|
|
71
|
-
else if (minimal) plugins.filter = {
|
|
72
|
-
...options.filter,
|
|
73
|
-
exclude: [...MINIMAL_FILTER_EXCLUDE, ...options.filter?.exclude ?? []]
|
|
74
|
-
};
|
|
75
|
-
else if (options.filter) plugins.filter = options.filter;
|
|
76
|
-
const extraction = options.extraction;
|
|
77
|
-
let extractionHandlers;
|
|
78
|
-
if (extraction) {
|
|
79
|
-
plugins.extraction = { selectors: Object.keys(extraction) };
|
|
80
|
-
extractionHandlers = extraction;
|
|
81
|
-
}
|
|
82
|
-
const tagOverrides = options.tagOverrides;
|
|
83
|
-
if (tagOverrides) {
|
|
84
|
-
const overrides = {};
|
|
85
|
-
for (const tag in tagOverrides) {
|
|
86
|
-
const value = tagOverrides[tag];
|
|
87
|
-
if (value) overrides[tag] = typeof value === "string" ? { alias: value } : value;
|
|
88
|
-
}
|
|
89
|
-
plugins.tagOverrides = overrides;
|
|
90
|
-
}
|
|
91
|
-
const { cleanUrls, clean } = resolveCleanConfig(options, minimal);
|
|
92
|
-
return {
|
|
93
|
-
napiOpts: {
|
|
94
|
-
origin: options.origin,
|
|
95
|
-
cleanUrls,
|
|
96
|
-
clean,
|
|
97
|
-
plugins,
|
|
98
|
-
wrapWidth: options.wrapWidth,
|
|
99
|
-
format: options.format
|
|
100
|
-
},
|
|
101
|
-
extractionHandlers,
|
|
102
|
-
frontmatterCallback
|
|
103
|
-
};
|
|
104
|
-
}
|
|
105
|
-
function deliverPluginData(data, { frontmatterCallback, extractionHandlers }) {
|
|
106
|
-
if (data.frontmatter && frontmatterCallback) frontmatterCallback(data.frontmatter);
|
|
107
|
-
if (data.extracted?.length && extractionHandlers) for (const element of data.extracted) extractionHandlers[element.selector]?.(element);
|
|
108
|
-
}
|
|
109
|
-
function hasCallbacks({ frontmatterCallback, extractionHandlers }) {
|
|
110
|
-
return !!frontmatterCallback || !!extractionHandlers;
|
|
111
|
-
}
|
|
112
|
-
function convertResult(convert, html, options = {}) {
|
|
113
|
-
const resolved = resolveOptions(options);
|
|
114
|
-
const result = convert(html, resolved.napiOpts);
|
|
115
|
-
deliverPluginData(result, resolved);
|
|
116
|
-
return result;
|
|
117
|
-
}
|
|
118
|
-
async function* pumpStream(stream, htmlStream, callbacks, { decodeInJs = false, mapError = (error) => error } = {}) {
|
|
119
|
-
const reader = htmlStream.getReader();
|
|
120
|
-
const decoder = decodeInJs ? new TextDecoder() : void 0;
|
|
121
|
-
try {
|
|
122
|
-
while (true) {
|
|
123
|
-
const { done, value } = await reader.read();
|
|
124
|
-
if (done) break;
|
|
125
|
-
let processed;
|
|
126
|
-
if (typeof value === "string") processed = stream.processChunk(decoder ? decoder.decode() + value : value);
|
|
127
|
-
else processed = decoder ? stream.processChunk(decoder.decode(value, { stream: true })) : stream.processChunkBytes(value);
|
|
128
|
-
if (processed) yield processed;
|
|
129
|
-
}
|
|
130
|
-
const decoderTail = decoder?.decode();
|
|
131
|
-
if (decoderTail) {
|
|
132
|
-
const processed = stream.processChunk(decoderTail);
|
|
133
|
-
if (processed) yield processed;
|
|
134
|
-
}
|
|
135
|
-
const final_ = stream.finish();
|
|
136
|
-
if (hasCallbacks(callbacks)) deliverPluginData(stream.takeData(), callbacks);
|
|
137
|
-
if (final_) yield final_;
|
|
138
|
-
} catch (error) {
|
|
139
|
-
throw mapError(error);
|
|
140
|
-
} finally {
|
|
141
|
-
reader.releaseLock();
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
function createSurrogateCarry() {
|
|
145
|
-
let held = "";
|
|
146
|
-
return {
|
|
147
|
-
take(chunk) {
|
|
148
|
-
if (held) {
|
|
149
|
-
chunk = held + chunk;
|
|
150
|
-
held = "";
|
|
151
|
-
}
|
|
152
|
-
const last = chunk.charCodeAt(chunk.length - 1);
|
|
153
|
-
if (last >= 55296 && last <= 56319) {
|
|
154
|
-
held = chunk.slice(-1);
|
|
155
|
-
return chunk.slice(0, -1);
|
|
156
|
-
}
|
|
157
|
-
return chunk;
|
|
158
|
-
},
|
|
159
|
-
flush() {
|
|
160
|
-
const value = held;
|
|
161
|
-
held = "";
|
|
162
|
-
return value;
|
|
163
|
-
}
|
|
164
|
-
};
|
|
165
|
-
}
|
|
166
|
-
function wasmPanicError(error, takeMessage) {
|
|
167
|
-
if (!(error instanceof WebAssembly.RuntimeError)) return error;
|
|
168
|
-
let message;
|
|
169
|
-
try {
|
|
170
|
-
message = takeMessage();
|
|
171
|
-
} catch {
|
|
172
|
-
return error;
|
|
173
|
-
}
|
|
174
|
-
if (!message) return error;
|
|
175
|
-
return new Error(`mdream WASM panic, please report this at https://github.com/harlan-zw/mdream/issues\n${message}`, { cause: error });
|
|
176
|
-
}
|
|
177
|
-
function convert(html, napiOpts) {
|
|
178
|
-
try {
|
|
179
|
-
return htmlToMarkdownResult(html, napiOpts);
|
|
180
|
-
} catch (error) {
|
|
181
|
-
throw wasmPanicError(error, __mdreamTakePanicMessage);
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
function htmlToMarkdown(html, options = {}) {
|
|
185
|
-
return convertResult(convert, html, options).markdown || "";
|
|
186
|
-
}
|
|
187
|
-
var MarkdownStream = class {
|
|
188
|
-
_inner;
|
|
189
|
-
_carry = createSurrogateCarry();
|
|
190
|
-
_callbacks;
|
|
191
|
-
constructor(options = {}) {
|
|
192
|
-
const resolved = resolveOptions(options);
|
|
193
|
-
this._callbacks = resolved;
|
|
194
|
-
try {
|
|
195
|
-
this._inner = new MarkdownStream$1(resolved.napiOpts);
|
|
196
|
-
} catch (error) {
|
|
197
|
-
throw wasmPanicError(error, __mdreamTakePanicMessage);
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
processChunk(chunk) {
|
|
201
|
-
try {
|
|
202
|
-
return this._inner.processChunk(this._carry.take(chunk));
|
|
203
|
-
} catch (error) {
|
|
204
|
-
throw wasmPanicError(error, __mdreamTakePanicMessage);
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
processChunkBytes(chunk) {
|
|
208
|
-
try {
|
|
209
|
-
const held = this._carry.flush();
|
|
210
|
-
return held ? this._inner.processChunk(held) + this._inner.processChunkBytes(chunk) : this._inner.processChunkBytes(chunk);
|
|
211
|
-
} catch (error) {
|
|
212
|
-
throw wasmPanicError(error, __mdreamTakePanicMessage);
|
|
213
|
-
}
|
|
214
|
-
}
|
|
215
|
-
finish() {
|
|
216
|
-
let markdown;
|
|
217
|
-
try {
|
|
218
|
-
const held = this._carry.flush();
|
|
219
|
-
markdown = held ? this._inner.processChunk(held) + this._inner.finish() : this._inner.finish();
|
|
220
|
-
} catch (error) {
|
|
221
|
-
throw wasmPanicError(error, __mdreamTakePanicMessage);
|
|
222
|
-
}
|
|
223
|
-
if (this._callbacks.frontmatterCallback || this._callbacks.extractionHandlers) deliverPluginData(this._inner.takeData(), this._callbacks);
|
|
224
|
-
return markdown;
|
|
225
|
-
}
|
|
226
|
-
};
|
|
227
|
-
async function* streamHtmlToMarkdown(htmlStream, options = {}) {
|
|
228
|
-
if (!htmlStream) throw new Error("Invalid HTML stream provided");
|
|
229
|
-
const resolved = resolveOptions(options);
|
|
230
|
-
const carry = createSurrogateCarry();
|
|
231
|
-
let stream;
|
|
232
|
-
try {
|
|
233
|
-
stream = new MarkdownStream$1(resolved.napiOpts);
|
|
234
|
-
} catch (error) {
|
|
235
|
-
throw wasmPanicError(error, __mdreamTakePanicMessage);
|
|
236
|
-
}
|
|
237
|
-
yield* pumpStream({
|
|
238
|
-
processChunk: (chunk) => stream.processChunk(carry.take(chunk)),
|
|
239
|
-
processChunkBytes: (chunk) => {
|
|
240
|
-
const held = carry.flush();
|
|
241
|
-
return held ? stream.processChunk(held) + stream.processChunkBytes(chunk) : stream.processChunkBytes(chunk);
|
|
242
|
-
},
|
|
243
|
-
finish: () => {
|
|
244
|
-
const held = carry.flush();
|
|
245
|
-
return held ? stream.processChunk(held) + stream.finish() : stream.finish();
|
|
246
|
-
},
|
|
247
|
-
takeData: () => stream.takeData()
|
|
248
|
-
}, htmlStream, resolved, { mapError: (error) => wasmPanicError(error, __mdreamTakePanicMessage) });
|
|
249
|
-
}
|
|
250
|
-
export { MarkdownStream, htmlToMarkdown, streamHtmlToMarkdown };
|