nuxt-ai-ready 2.5.3 → 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.
Files changed (286) hide show
  1. package/README.md +13 -12
  2. package/dist/chunks/agent-skills.mjs +35 -12
  3. package/dist/chunks/prerender.mjs +35 -24
  4. package/dist/cli.mjs +5 -2
  5. package/dist/module.d.mts +4 -0
  6. package/dist/module.json +2 -2
  7. package/dist/module.mjs +8 -4
  8. package/dist/runtime/app/index.d.ts +3 -0
  9. package/dist/runtime/app/index.js +2 -0
  10. package/dist/runtime/cache-control.d.ts +2 -0
  11. package/dist/runtime/cache-control.js +11 -0
  12. package/dist/runtime/llms-txt-utils.js +1 -1
  13. package/dist/runtime/server/db/context.d.ts +13 -0
  14. package/dist/runtime/server/db/drizzle/client.d.ts +6 -7
  15. package/dist/runtime/server/db/drizzle/client.js +13 -2
  16. package/dist/runtime/server/db/drizzle/providers/bun.d.ts +2 -2
  17. package/dist/runtime/server/db/drizzle/providers/bun.js +2 -2
  18. package/dist/runtime/server/db/drizzle/providers/d1.d.ts +2 -2
  19. package/dist/runtime/server/db/drizzle/providers/d1.js +3 -2
  20. package/dist/runtime/server/db/drizzle/providers/libsql.d.ts +2 -2
  21. package/dist/runtime/server/db/drizzle/providers/libsql.js +2 -2
  22. package/dist/runtime/server/db/drizzle/providers/neon.d.ts +2 -2
  23. package/dist/runtime/server/db/drizzle/providers/neon.js +2 -2
  24. package/dist/runtime/server/db/drizzle/providers/node-sqlite.d.ts +2 -2
  25. package/dist/runtime/server/db/drizzle/providers/node-sqlite.js +2 -2
  26. package/dist/runtime/server/db/drizzle/providers/postgres.d.ts +2 -2
  27. package/dist/runtime/server/db/drizzle/providers/postgres.js +2 -2
  28. package/dist/runtime/server/db/drizzle/queries.d.ts +27 -27
  29. package/dist/runtime/server/db/drizzle/queries.js +6 -5
  30. package/dist/runtime/server/db/drizzle/raw.d.ts +2 -6
  31. package/dist/runtime/server/db/index.d.ts +1 -1
  32. package/dist/runtime/server/db/index.js +1 -1
  33. package/dist/runtime/server/db/queries.d.ts +36 -36
  34. package/dist/runtime/server/db/queries.js +8 -9
  35. package/dist/runtime/server/db/seed.d.ts +2 -2
  36. package/dist/runtime/server/db/seed.js +4 -3
  37. package/dist/runtime/server/db/shared.d.ts +8 -0
  38. package/dist/runtime/server/db/shared.js +8 -2
  39. package/dist/runtime/server/index.d.ts +2 -0
  40. package/dist/runtime/server/index.js +17 -0
  41. package/dist/runtime/server/mcp/tools/get-page-markdown.js +1 -1
  42. package/dist/runtime/server/mcp/tools/list-pages.js +1 -1
  43. package/dist/runtime/server/mcp/tools/search-pages.js +1 -1
  44. package/dist/runtime/server/middleware/markdown.prerender.js +1 -1
  45. package/dist/runtime/server/plugins/db-lifecycle-nitro3.d.ts +2 -0
  46. package/dist/runtime/server/plugins/db-lifecycle-nitro3.js +16 -0
  47. package/dist/runtime/server/plugins/html-capture.prerender.js +6 -4
  48. package/dist/runtime/server/plugins/link-header-nitro3.d.ts +2 -0
  49. package/dist/runtime/server/plugins/link-header-nitro3.js +20 -0
  50. package/dist/runtime/server/plugins/link-header.d.ts +6 -0
  51. package/dist/runtime/server/plugins/link-header.js +7 -11
  52. package/dist/runtime/server/plugins/markdown-negotiation.js +8 -1
  53. package/dist/runtime/server/plugins/sitemap-seeder.js +3 -3
  54. package/dist/runtime/server/routes/agent-skills-artifact.d.ts +1 -1
  55. package/dist/runtime/server/routes/agent-skills-artifact.js +10 -10
  56. package/dist/runtime/server/routes/agent-skills-index.d.ts +1 -1
  57. package/dist/runtime/server/routes/agent-skills-index.js +7 -6
  58. package/dist/runtime/server/routes/ai-catalog.d.ts +2 -1
  59. package/dist/runtime/server/routes/ai-catalog.js +7 -8
  60. package/dist/runtime/server/routes/api-catalog.d.ts +3 -1
  61. package/dist/runtime/server/routes/api-catalog.js +12 -12
  62. package/dist/runtime/server/routes/llms-full.txt.get.js +1 -1
  63. package/dist/runtime/server/routes/mcp-server-card.d.ts +1 -1
  64. package/dist/runtime/server/routes/mcp-server-card.js +7 -8
  65. package/dist/runtime/server/utils/checkStale.d.ts +2 -2
  66. package/dist/runtime/server/utils/cloudflare-prerendered.d.ts +3 -0
  67. package/dist/runtime/server/utils/cloudflare-prerendered.js +23 -0
  68. package/dist/runtime/server/utils/cloudflare.d.ts +5 -5
  69. package/dist/runtime/server/utils/cloudflare.js +31 -7
  70. package/dist/runtime/server/utils/content-negotiation.d.ts +5 -3
  71. package/dist/runtime/server/utils/content-negotiation.js +8 -7
  72. package/dist/runtime/server/utils/context.d.ts +3 -3
  73. package/dist/runtime/server/utils/context.js +1 -1
  74. package/dist/runtime/server/utils/discovery-response.d.ts +2 -0
  75. package/dist/runtime/server/utils/link-header.d.ts +5 -3
  76. package/dist/runtime/server/utils/link-header.js +26 -2
  77. package/dist/runtime/server/utils/markdown-request.d.ts +4 -3
  78. package/dist/runtime/server/utils/markdown-request.js +15 -13
  79. package/dist/runtime/server/utils/negotiation-decision.d.ts +4 -0
  80. package/dist/runtime/server/utils/negotiation-decision.js +6 -5
  81. package/dist/runtime/server/utils/negotiation-response.js +47 -22
  82. package/dist/runtime/server/utils/prerender-html.d.ts +2 -1
  83. package/dist/runtime/server/utils/prerender-html.js +3 -1
  84. package/dist/runtime/types.d.ts +15 -7
  85. package/dist/shared/nuxt-ai-ready.B3hAuOLQ.mjs +29 -0
  86. package/dist/shared/{nuxt-ai-ready.CLSWou20.mjs → nuxt-ai-ready.C34F0LJo.mjs} +560 -219
  87. package/package.json +85 -20
  88. package/skills/nuxt-ai-ready/SKILL.md +26 -12
  89. package/skills/nuxt-ai-ready/references/runtime-indexing.md +7 -6
  90. package/dist/runtime/server/db/drizzle/providers/sqlite.d.ts +0 -8
  91. package/dist/runtime/server/db/drizzle/providers/sqlite.js +0 -15
  92. package/node_modules/@mdream/js/LICENSE.md +0 -9
  93. package/node_modules/@mdream/js/README.md +0 -792
  94. package/node_modules/@mdream/js/bin/mdream.mjs +0 -2
  95. package/node_modules/@mdream/js/dist/_chunks/const.mjs +0 -134
  96. package/node_modules/@mdream/js/dist/_chunks/index.d.mts +0 -9
  97. package/node_modules/@mdream/js/dist/_chunks/markdown-processor.mjs +0 -1968
  98. package/node_modules/@mdream/js/dist/_chunks/minimal.d.mts +0 -6
  99. package/node_modules/@mdream/js/dist/_chunks/parse.mjs +0 -2756
  100. package/node_modules/@mdream/js/dist/_chunks/plugins.mjs +0 -725
  101. package/node_modules/@mdream/js/dist/_chunks/resolve-plugins.mjs +0 -44
  102. package/node_modules/@mdream/js/dist/_chunks/stream.mjs +0 -37
  103. package/node_modules/@mdream/js/dist/_chunks/types.d.mts +0 -473
  104. package/node_modules/@mdream/js/dist/cli.d.mts +0 -1
  105. package/node_modules/@mdream/js/dist/cli.mjs +0 -32
  106. package/node_modules/@mdream/js/dist/core.d.mts +0 -15
  107. package/node_modules/@mdream/js/dist/core.mjs +0 -28
  108. package/node_modules/@mdream/js/dist/index.d.mts +0 -4
  109. package/node_modules/@mdream/js/dist/index.mjs +0 -58
  110. package/node_modules/@mdream/js/dist/llms-txt.d.mts +0 -86
  111. package/node_modules/@mdream/js/dist/llms-txt.mjs +0 -308
  112. package/node_modules/@mdream/js/dist/negotiate.d.mts +0 -35
  113. package/node_modules/@mdream/js/dist/negotiate.mjs +0 -121
  114. package/node_modules/@mdream/js/dist/parse.d.mts +0 -90
  115. package/node_modules/@mdream/js/dist/parse.mjs +0 -2
  116. package/node_modules/@mdream/js/dist/plugins.d.mts +0 -85
  117. package/node_modules/@mdream/js/dist/plugins.mjs +0 -2
  118. package/node_modules/@mdream/js/dist/preset/minimal.d.mts +0 -2
  119. package/node_modules/@mdream/js/dist/preset/minimal.mjs +0 -33
  120. package/node_modules/@mdream/js/dist/splitter.d.mts +0 -18
  121. package/node_modules/@mdream/js/dist/splitter.mjs +0 -194
  122. package/node_modules/@mdream/js/package.json +0 -103
  123. package/node_modules/cac/LICENSE +0 -21
  124. package/node_modules/cac/README.md +0 -492
  125. package/node_modules/cac/dist/index.d.ts +0 -196
  126. package/node_modules/cac/dist/index.js +0 -638
  127. package/node_modules/cac/package.json +0 -72
  128. package/node_modules/mdream/LICENSE.md +0 -9
  129. package/node_modules/mdream/README.md +0 -1091
  130. package/node_modules/mdream/bin/mdream.mjs +0 -46
  131. package/node_modules/mdream/dist/browser.d.mts +0 -105
  132. package/node_modules/mdream/dist/browser.mjs +0 -262
  133. package/node_modules/mdream/dist/edge.d.mts +0 -100
  134. package/node_modules/mdream/dist/edge.mjs +0 -250
  135. package/node_modules/mdream/dist/iife.js +0 -605
  136. package/node_modules/mdream/dist/index.d.mts +0 -89
  137. package/node_modules/mdream/dist/index.mjs +0 -184
  138. package/node_modules/mdream/dist/wasm.d.mts +0 -100
  139. package/node_modules/mdream/dist/wasm.mjs +0 -140
  140. package/node_modules/mdream/dist/worker.d.mts +0 -101
  141. package/node_modules/mdream/dist/worker.mjs +0 -217
  142. package/node_modules/mdream/napi/index.d.mts +0 -127
  143. package/node_modules/mdream/napi/index.d.ts +0 -127
  144. package/node_modules/mdream/napi/index.mjs +0 -725
  145. package/node_modules/mdream/napi/rust.android-arm-eabi.node +0 -0
  146. package/node_modules/mdream/napi/rust.android-arm64.node +0 -0
  147. package/node_modules/mdream/napi/rust.darwin-arm64.node +0 -0
  148. package/node_modules/mdream/napi/rust.darwin-x64.node +0 -0
  149. package/node_modules/mdream/napi/rust.freebsd-x64.node +0 -0
  150. package/node_modules/mdream/napi/rust.linux-arm-gnueabihf.node +0 -0
  151. package/node_modules/mdream/napi/rust.linux-arm64-gnu.node +0 -0
  152. package/node_modules/mdream/napi/rust.linux-arm64-musl.node +0 -0
  153. package/node_modules/mdream/napi/rust.linux-x64-gnu.node +0 -0
  154. package/node_modules/mdream/napi/rust.linux-x64-musl.node +0 -0
  155. package/node_modules/mdream/napi/rust.wasi.cjs +0 -2144
  156. package/node_modules/mdream/napi/rust.wasm32-wasi.wasm +0 -0
  157. package/node_modules/mdream/napi/rust.win32-arm64-msvc.node +0 -0
  158. package/node_modules/mdream/napi/rust.win32-x64-msvc.node +0 -0
  159. package/node_modules/mdream/node_modules/@emnapi/core/LICENSE +0 -21
  160. package/node_modules/mdream/node_modules/@emnapi/core/README.md +0 -1
  161. package/node_modules/mdream/node_modules/@emnapi/core/dist/emnapi-core.d.ts +0 -392
  162. package/node_modules/mdream/node_modules/@emnapi/core/dist/emnapi-core.full.d.ts +0 -392
  163. package/node_modules/mdream/node_modules/@emnapi/core/dist/emnapi-core.full.js +0 -8351
  164. package/node_modules/mdream/node_modules/@emnapi/core/dist/emnapi-core.js +0 -7268
  165. package/node_modules/mdream/node_modules/@emnapi/core/dist/plugins/async-work.d.ts +0 -5
  166. package/node_modules/mdream/node_modules/@emnapi/core/dist/plugins/async-work.js +0 -843
  167. package/node_modules/mdream/node_modules/@emnapi/core/dist/plugins/index.d.ts +0 -4
  168. package/node_modules/mdream/node_modules/@emnapi/core/dist/plugins/index.js +0 -3
  169. package/node_modules/mdream/node_modules/@emnapi/core/dist/plugins/threadsafe-function.d.ts +0 -5
  170. package/node_modules/mdream/node_modules/@emnapi/core/dist/plugins/threadsafe-function.js +0 -1010
  171. package/node_modules/mdream/node_modules/@emnapi/core/dist/plugins/v8.d.ts +0 -5
  172. package/node_modules/mdream/node_modules/@emnapi/core/dist/plugins/v8.js +0 -1446
  173. package/node_modules/mdream/node_modules/@emnapi/core/node_modules/@emnapi/wasi-threads/LICENSE +0 -21
  174. package/node_modules/mdream/node_modules/@emnapi/core/node_modules/@emnapi/wasi-threads/README.md +0 -203
  175. package/node_modules/mdream/node_modules/@emnapi/core/node_modules/@emnapi/wasi-threads/dist/wasi-threads.d.ts +0 -236
  176. package/node_modules/mdream/node_modules/@emnapi/core/node_modules/@emnapi/wasi-threads/dist/wasi-threads.js +0 -1086
  177. package/node_modules/mdream/node_modules/@emnapi/core/node_modules/@emnapi/wasi-threads/package.json +0 -35
  178. package/node_modules/mdream/node_modules/@emnapi/core/node_modules/@emnapi/wasi-threads/rollup.config.js +0 -6
  179. package/node_modules/mdream/node_modules/@emnapi/core/package.json +0 -39
  180. package/node_modules/mdream/node_modules/@emnapi/core/rollup.config.js +0 -60
  181. package/node_modules/mdream/node_modules/@emnapi/runtime/LICENSE +0 -21
  182. package/node_modules/mdream/node_modules/@emnapi/runtime/README.md +0 -1
  183. package/node_modules/mdream/node_modules/@emnapi/runtime/dist/emnapi.d.ts +0 -833
  184. package/node_modules/mdream/node_modules/@emnapi/runtime/dist/emnapi.js +0 -2306
  185. package/node_modules/mdream/node_modules/@emnapi/runtime/dist/emnapi.js.map +0 -1
  186. package/node_modules/mdream/node_modules/@emnapi/runtime/index.cjs +0 -63
  187. package/node_modules/mdream/node_modules/@emnapi/runtime/package.json +0 -39
  188. package/node_modules/mdream/node_modules/@emnapi/runtime/rollup.config.js +0 -25
  189. package/node_modules/mdream/node_modules/@emnapi/wasi-threads/LICENSE +0 -21
  190. package/node_modules/mdream/node_modules/@emnapi/wasi-threads/README.md +0 -203
  191. package/node_modules/mdream/node_modules/@emnapi/wasi-threads/dist/wasi-threads.d.ts +0 -240
  192. package/node_modules/mdream/node_modules/@emnapi/wasi-threads/dist/wasi-threads.js +0 -1118
  193. package/node_modules/mdream/node_modules/@emnapi/wasi-threads/package.json +0 -35
  194. package/node_modules/mdream/node_modules/@emnapi/wasi-threads/rollup.config.js +0 -6
  195. package/node_modules/mdream/node_modules/@napi-rs/wasm-runtime/dist/emnapi-plugins.cjs +0 -1472
  196. package/node_modules/mdream/node_modules/@napi-rs/wasm-runtime/dist/emnapi-plugins.js +0 -1470
  197. package/node_modules/mdream/node_modules/@napi-rs/wasm-runtime/dist/fs-proxy.cjs +0 -237
  198. package/node_modules/mdream/node_modules/@napi-rs/wasm-runtime/dist/fs.js +0 -17578
  199. package/node_modules/mdream/node_modules/@napi-rs/wasm-runtime/fs-proxy.js +0 -317
  200. package/node_modules/mdream/node_modules/@napi-rs/wasm-runtime/package.json +0 -67
  201. package/node_modules/mdream/node_modules/@napi-rs/wasm-runtime/runtime.cjs +0 -39
  202. package/node_modules/mdream/node_modules/@napi-rs/wasm-runtime/runtime.js +0 -36
  203. package/node_modules/mdream/node_modules/@tybys/wasm-util/LICENSE +0 -21
  204. package/node_modules/mdream/node_modules/@tybys/wasm-util/README.md +0 -193
  205. package/node_modules/mdream/node_modules/@tybys/wasm-util/dist/tsdoc-metadata.json +0 -11
  206. package/node_modules/mdream/node_modules/@tybys/wasm-util/dist/wasm-util.d.ts +0 -423
  207. package/node_modules/mdream/node_modules/@tybys/wasm-util/dist/wasm-util.esm-bundler.js +0 -2932
  208. package/node_modules/mdream/node_modules/@tybys/wasm-util/dist/wasm-util.esm.js +0 -2932
  209. package/node_modules/mdream/node_modules/@tybys/wasm-util/dist/wasm-util.esm.min.js +0 -1
  210. package/node_modules/mdream/node_modules/@tybys/wasm-util/dist/wasm-util.js +0 -2954
  211. package/node_modules/mdream/node_modules/@tybys/wasm-util/dist/wasm-util.min.js +0 -1
  212. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/asyncify.js +0 -158
  213. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/index.js +0 -13
  214. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/jspi.js +0 -46
  215. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/load.js +0 -97
  216. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/memory.js +0 -35
  217. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/wasi/error.js +0 -103
  218. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/wasi/fd.js +0 -268
  219. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/wasi/fs.js +0 -3
  220. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/wasi/index.js +0 -192
  221. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/wasi/path.js +0 -316
  222. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/wasi/preview1.js +0 -1599
  223. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/wasi/rights.js +0 -141
  224. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/wasi/types.js +0 -220
  225. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/wasi/util.js +0 -128
  226. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/cjs/webassembly.js +0 -13
  227. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/asyncify.mjs +0 -153
  228. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/index.mjs +0 -9
  229. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/jspi.mjs +0 -39
  230. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/load.mjs +0 -89
  231. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/memory.mjs +0 -28
  232. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/wasi/error.mjs +0 -97
  233. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/wasi/fd.mjs +0 -256
  234. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/wasi/fs.mjs +0 -1
  235. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/wasi/index.mjs +0 -186
  236. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/wasi/path.mjs +0 -310
  237. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/wasi/preview1.mjs +0 -1593
  238. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/wasi/rights.mjs +0 -135
  239. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/wasi/types.mjs +0 -216
  240. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/wasi/util.mjs +0 -113
  241. package/node_modules/mdream/node_modules/@tybys/wasm-util/lib/mjs/webassembly.mjs +0 -9
  242. package/node_modules/mdream/node_modules/@tybys/wasm-util/package.json +0 -58
  243. package/node_modules/mdream/node_modules/tslib/CopyrightNotice.txt +0 -15
  244. package/node_modules/mdream/node_modules/tslib/LICENSE.txt +0 -12
  245. package/node_modules/mdream/node_modules/tslib/README.md +0 -164
  246. package/node_modules/mdream/node_modules/tslib/SECURITY.md +0 -41
  247. package/node_modules/mdream/node_modules/tslib/modules/index.d.ts +0 -38
  248. package/node_modules/mdream/node_modules/tslib/modules/index.js +0 -70
  249. package/node_modules/mdream/node_modules/tslib/modules/package.json +0 -3
  250. package/node_modules/mdream/node_modules/tslib/package.json +0 -47
  251. package/node_modules/mdream/node_modules/tslib/tslib.d.ts +0 -460
  252. package/node_modules/mdream/node_modules/tslib/tslib.es6.html +0 -1
  253. package/node_modules/mdream/node_modules/tslib/tslib.es6.js +0 -402
  254. package/node_modules/mdream/node_modules/tslib/tslib.es6.mjs +0 -401
  255. package/node_modules/mdream/node_modules/tslib/tslib.html +0 -1
  256. package/node_modules/mdream/node_modules/tslib/tslib.js +0 -484
  257. package/node_modules/mdream/package.json +0 -110
  258. package/node_modules/mdream/skills/mdream/SKILL.md +0 -124
  259. package/node_modules/mdream/skills/mdream/references/runtimes.md +0 -49
  260. package/node_modules/mdream/wasm/mdream_edge.d.ts +0 -90
  261. package/node_modules/mdream/wasm/mdream_edge.js +0 -517
  262. package/node_modules/mdream/wasm/mdream_edge_bg.wasm +0 -0
  263. package/node_modules/mdream/wasm/mdream_edge_bg.wasm.d.ts +0 -20
  264. package/node_modules/mdream/wasm/package.json +0 -17
  265. package/node_modules/mdream/wasm-bundler/mdream_edge.d.ts +0 -45
  266. package/node_modules/mdream/wasm-bundler/mdream_edge.js +0 -13
  267. package/node_modules/mdream/wasm-bundler/mdream_edge_bg.js +0 -413
  268. package/node_modules/mdream/wasm-bundler/mdream_edge_bg.wasm +0 -0
  269. package/node_modules/mdream/wasm-bundler/mdream_edge_bg.wasm.d.ts +0 -20
  270. package/node_modules/mdream/wasm-bundler/package.json +0 -19
  271. package/node_modules/pathe/LICENSE +0 -70
  272. package/node_modules/pathe/README.md +0 -73
  273. package/node_modules/pathe/dist/index.cjs +0 -39
  274. package/node_modules/pathe/dist/index.d.cts +0 -47
  275. package/node_modules/pathe/dist/index.d.mts +0 -47
  276. package/node_modules/pathe/dist/index.d.ts +0 -47
  277. package/node_modules/pathe/dist/index.mjs +0 -19
  278. package/node_modules/pathe/dist/shared/pathe.BSlhyZSM.cjs +0 -266
  279. package/node_modules/pathe/dist/shared/pathe.M-eThtNZ.mjs +0 -249
  280. package/node_modules/pathe/dist/utils.cjs +0 -82
  281. package/node_modules/pathe/dist/utils.d.cts +0 -32
  282. package/node_modules/pathe/dist/utils.d.mts +0 -32
  283. package/node_modules/pathe/dist/utils.d.ts +0 -32
  284. package/node_modules/pathe/dist/utils.mjs +0 -77
  285. package/node_modules/pathe/package.json +0 -61
  286. package/node_modules/pathe/utils.d.ts +0 -1
@@ -1,203 +0,0 @@
1
- # @emnapi/wasi-threads
2
-
3
- This package makes [wasi-threads proposal](https://github.com/WebAssembly/wasi-threads) based WASI modules work in Node.js and browser.
4
-
5
- ## Quick Start
6
-
7
- `index.html`
8
-
9
- ```html
10
- <script src="./node_modules/@tybys/wasm-util/dist/wasm-util.js"></script>
11
- <script src="./node_modules/@emnapi/wasi-threads/dist/wasi-threads.js"></script>
12
- <script src="./index.js"></script>
13
- ```
14
-
15
- If your application will block browser main thread (for example `pthread_join`), please run it in worker instead.
16
-
17
- ```html
18
- <script>
19
- // pthread_join (Atomics.wait) cannot be called in browser main thread
20
- new Worker('./index.js')
21
- </script>
22
- ```
23
-
24
- `index.js`
25
-
26
- ```js
27
- const ENVIRONMENT_IS_NODE =
28
- typeof process === 'object' && process !== null &&
29
- typeof process.versions === 'object' && process.versions !== null &&
30
- typeof process.versions.node === 'string';
31
-
32
- (function (main) {
33
- if (ENVIRONMENT_IS_NODE) {
34
- main(require)
35
- } else {
36
- if (typeof importScripts === 'function') {
37
- importScripts('./node_modules/@tybys/wasm-util/dist/wasm-util.js')
38
- importScripts('./node_modules/@emnapi/wasi-threads/dist/wasi-threads.js')
39
- }
40
- const nodeWasi = { WASI: globalThis.wasmUtil.WASI }
41
- const nodeWorkerThreads = {
42
- Worker: globalThis.Worker
43
- }
44
- const _require = function (request) {
45
- if (request === 'node:wasi' || request === 'wasi') return nodeWasi
46
- if (request === 'node:worker_threads' || request === 'worker_threads') return nodeWorkerThreads
47
- if (request === '@emnapi/wasi-threads') return globalThis.wasiThreads
48
- throw new Error('Can not find module: ' + request)
49
- }
50
- main(_require)
51
- }
52
- })(async function (require) {
53
- const { WASI } = require('wasi')
54
- const { Worker } = require('worker_threads')
55
- const { WASIThreads } = require('@emnapi/wasi-threads')
56
-
57
- const wasi = new WASI({
58
- version: 'preview1'
59
- })
60
- const wasiThreads = new WASIThreads({
61
- wasi,
62
-
63
- /**
64
- * avoid Atomics.wait() deadlock during thread creation in browser
65
- * see https://emscripten.org/docs/tools_reference/settings_reference.html#pthread-pool-size
66
- */
67
- reuseWorker: ENVIRONMENT_IS_NODE
68
- ? false
69
- : {
70
- size: 4 /** greater than actual needs (2) */,
71
- strict: true
72
- },
73
-
74
- /**
75
- * Synchronous thread creation
76
- * pthread_create will not return until thread worker actually starts
77
- */
78
- waitThreadStart: typeof window === 'undefined' ? 1000 : false,
79
-
80
- onCreateWorker: () => {
81
- return new Worker('./worker.js', {
82
- execArgv: ['--experimental-wasi-unstable-preview1']
83
- })
84
- }
85
- })
86
- const memory = new WebAssembly.Memory({
87
- initial: 16777216 / 65536,
88
- maximum: 2147483648 / 65536,
89
- shared: true
90
- })
91
- let input
92
- const file = 'path/to/your/wasi-module.wasm'
93
- try {
94
- input = require('fs').readFileSync(require('path').join(__dirname, file))
95
- } catch (err) {
96
- const response = await fetch(file)
97
- input = await response.arrayBuffer()
98
- }
99
- let { module, instance } = await WebAssembly.instantiate(input, {
100
- env: { memory },
101
- wasi_snapshot_preview1: wasi.wasiImport,
102
- ...wasiThreads.getImportObject()
103
- })
104
-
105
- wasiThreads.setup(instance, module, memory)
106
- await wasiThreads.preloadWorkers()
107
-
108
- if (typeof instance.exports._start === 'function') {
109
- return wasi.start(instance)
110
- } else {
111
- wasi.initialize(instance)
112
- // instance.exports.exported_wasm_function()
113
- }
114
- })
115
- ```
116
-
117
- `worker.js`
118
-
119
- ```js
120
- (function (main) {
121
- const ENVIRONMENT_IS_NODE =
122
- typeof process === 'object' && process !== null &&
123
- typeof process.versions === 'object' && process.versions !== null &&
124
- typeof process.versions.node === 'string'
125
-
126
- if (ENVIRONMENT_IS_NODE) {
127
- const _require = function (request) {
128
- return require(request)
129
- }
130
-
131
- const _init = function () {
132
- const nodeWorkerThreads = require('worker_threads')
133
- const parentPort = nodeWorkerThreads.parentPort
134
-
135
- parentPort.on('message', (data) => {
136
- globalThis.onmessage({ data })
137
- })
138
-
139
- Object.assign(globalThis, {
140
- self: globalThis,
141
- require,
142
- Worker: nodeWorkerThreads.Worker,
143
- importScripts: function (f) {
144
- (0, eval)(require('fs').readFileSync(f, 'utf8') + '//# sourceURL=' + f)
145
- },
146
- postMessage: function (msg) {
147
- parentPort.postMessage(msg)
148
- }
149
- })
150
- }
151
-
152
- main(_require, _init)
153
- } else {
154
- importScripts('./node_modules/@tybys/wasm-util/dist/wasm-util.js')
155
- importScripts('./node_modules/@emnapi/wasi-threads/dist/wasi-threads.js')
156
-
157
- const nodeWasi = { WASI: globalThis.wasmUtil.WASI }
158
- const _require = function (request) {
159
- if (request === '@emnapi/wasi-threads') return globalThis.wasiThreads
160
- if (request === 'node:wasi' || request === 'wasi') return nodeWasi
161
- throw new Error('Can not find module: ' + request)
162
- }
163
- const _init = function () {}
164
- main(_require, _init)
165
- }
166
- })(function main (require, init) {
167
- init()
168
-
169
- const { WASI } = require('wasi')
170
- const { ThreadMessageHandler, WASIThreads } = require('@emnapi/wasi-threads')
171
-
172
- const handler = new ThreadMessageHandler({
173
- async onLoad ({ wasmModule, wasmMemory }) {
174
- const wasi = new WASI({
175
- version: 'preview1'
176
- })
177
-
178
- const wasiThreads = new WASIThreads({
179
- wasi,
180
- childThread: true
181
- })
182
-
183
- const originalInstance = await WebAssembly.instantiate(wasmModule, {
184
- env: {
185
- memory: wasmMemory,
186
- },
187
- wasi_snapshot_preview1: wasi.wasiImport,
188
- ...wasiThreads.getImportObject()
189
- })
190
-
191
- // must call `initialize` instead of `start` in child thread
192
- const instance = wasiThreads.initialize(originalInstance, wasmModule, wasmMemory)
193
-
194
- return { module: wasmModule, instance }
195
- }
196
- })
197
-
198
- globalThis.onmessage = function (e) {
199
- handler.handle(e)
200
- // handle other messages
201
- }
202
- })
203
- ```
@@ -1,240 +0,0 @@
1
- import type { Worker as Worker_2 } from 'worker_threads';
2
-
3
- export declare interface BaseOptions {
4
- wasi: WASIInstance;
5
- version?: 'preview1';
6
- wasm64?: boolean;
7
- }
8
-
9
- export declare interface ChildThreadOptions extends BaseOptions {
10
- childThread: true;
11
- postMessage?: (data: any) => void;
12
- }
13
-
14
- export declare interface CleanupThreadPayload {
15
- tid: number;
16
- }
17
-
18
- export declare interface CommandInfo<T extends CommandType> {
19
- type: T;
20
- payload: CommandPayloadMap[T];
21
- }
22
-
23
- export declare interface CommandPayloadMap {
24
- load: LoadPayload;
25
- loaded: LoadedPayload;
26
- start: StartPayload;
27
- 'cleanup-thread': CleanupThreadPayload;
28
- 'terminate-all-threads': TerminateAllThreadsPayload;
29
- 'spawn-thread': SpawnThreadPayload;
30
- 'thread-error': ThreadErrorPayload;
31
- }
32
-
33
- export declare type CommandType = keyof CommandPayloadMap;
34
-
35
- export declare function createInstanceProxy(instance: WebAssembly.Instance, memory?: WebAssembly.Memory | (() => WebAssembly.Memory)): WebAssembly.Instance;
36
-
37
- export declare function isSharedArrayBuffer(value: any): value is SharedArrayBuffer;
38
-
39
- export declare function isTrapError(e: Error): e is WebAssembly.RuntimeError;
40
-
41
- export declare interface LoadedPayload {
42
- }
43
-
44
- export declare interface LoadPayload {
45
- wasmModule: WebAssembly.Module;
46
- wasmMemory: WebAssembly.Memory;
47
- sab?: Int32Array;
48
- }
49
-
50
- export declare interface MainThreadBaseOptions extends BaseOptions {
51
- waitThreadStart?: boolean | number;
52
- }
53
-
54
- export declare type MainThreadOptions = MainThreadOptionsWithThreadManager | MainThreadOptionsCreateThreadManager;
55
-
56
- export declare interface MainThreadOptionsCreateThreadManager extends MainThreadBaseOptions, ThreadManagerOptionsMain {
57
- }
58
-
59
- export declare interface MainThreadOptionsWithThreadManager extends MainThreadBaseOptions {
60
- threadManager?: ThreadManager | (() => ThreadManager);
61
- }
62
-
63
- export declare interface MessageEventData<T extends CommandType> {
64
- __emnapi__: CommandInfo<T>;
65
- }
66
-
67
- export declare interface ReuseWorkerOptions {
68
- size: number;
69
- strict?: boolean;
70
- }
71
-
72
- export declare interface SerializedError {
73
- name: string;
74
- message: string;
75
- stack?: string;
76
- cause?: unknown;
77
- }
78
-
79
- export declare interface SpawnThreadPayload {
80
- startArg: number;
81
- errorOrTid: number;
82
- }
83
-
84
- export declare interface StartPayload {
85
- tid: number;
86
- arg: number;
87
- sab?: Int32Array;
88
- }
89
-
90
- export declare interface StartResult {
91
- exitCode: number;
92
- instance: WebAssembly.Instance;
93
- }
94
-
95
- export declare interface TerminateAllThreadsPayload {
96
- }
97
-
98
- export declare interface ThreadErrorPayload {
99
- error: SerializedError;
100
- phase: ThreadFailurePhase;
101
- tid?: number;
102
- }
103
-
104
- export declare type ThreadFailurePhase = 'load' | 'start' | 'async-work' | 'message' | 'messageerror' | 'exit';
105
-
106
- export declare class ThreadManager {
107
- unusedWorkers: WorkerLike[];
108
- pthreads: Record<number, WorkerLike>;
109
- get nextWorkerID(): number;
110
- wasmModule: WebAssembly.Module | null;
111
- wasmMemory: WebAssembly.Memory | null;
112
- private readonly messageEvents;
113
- private readonly registeredWorkers;
114
- private readonly expectedTerminations;
115
- private readonly loadRejects;
116
- private _fatalError;
117
- private readonly _childThread;
118
- private readonly _onCreateWorker;
119
- private readonly _reuseWorker;
120
- private readonly _beforeLoad?;
121
- readonly printErr: (message: string) => void;
122
- threadSpawn?: ((startArg: number, errorOrTid?: number) => number);
123
- constructor(options: ThreadManagerOptions);
124
- init(): void;
125
- initMainThread(): void;
126
- private preparePool;
127
- shouldPreloadWorkers(): boolean;
128
- loadWasmModuleToAllWorkers(): Promise<WorkerLike[]>;
129
- preloadWorkers(): Promise<WorkerLike[]>;
130
- setup(wasmModule: WebAssembly.Module, wasmMemory: WebAssembly.Memory): void;
131
- private assertRunning;
132
- private fail;
133
- markId(worker: WorkerLike): number;
134
- returnWorkerToPool(worker: WorkerLike): void;
135
- loadWasmModuleToWorker(worker: WorkerLike, sab?: Int32Array): Promise<WorkerLike>;
136
- allocateUnusedWorker(): WorkerLike;
137
- private allocatePoolWorker;
138
- private dropFailedLoad;
139
- getNewWorker(sab?: Int32Array): WorkerLike | undefined;
140
- private allocateAndLoadWorker;
141
- cleanThread(worker: WorkerLike, tid: number, force?: boolean): void;
142
- terminateWorker(worker: WorkerLike): void;
143
- terminateAllThreads(): void;
144
- private shutdownAllWorkers;
145
- addMessageEventListener(worker: WorkerLike, onMessage: (e: WorkerMessageEvent) => void): () => void;
146
- fireMessageEvent(worker: WorkerLike, e: WorkerMessageEvent): void;
147
- }
148
-
149
- export declare type ThreadManagerOptions = ThreadManagerOptionsMain | ThreadManagerOptionsChild;
150
-
151
- export declare interface ThreadManagerOptionsBase {
152
- printErr?: (message: string) => void;
153
- threadSpawn?: (startArg: number, errorOrTid?: number) => number;
154
- }
155
-
156
- export declare interface ThreadManagerOptionsChild extends ThreadManagerOptionsBase {
157
- childThread: true;
158
- }
159
-
160
- export declare interface ThreadManagerOptionsMain extends ThreadManagerOptionsBase {
161
- beforeLoad?: (worker: WorkerLike) => any;
162
- reuseWorker?: boolean | number | ReuseWorkerOptions;
163
- onCreateWorker: WorkerFactory;
164
- childThread?: false;
165
- }
166
-
167
- export declare class ThreadMessageHandler {
168
- protected instance: WebAssembly.Instance | undefined;
169
- private messagesBeforeLoad;
170
- protected postMessage: (message: any) => void;
171
- protected onLoad?: (data: LoadPayload) => WebAssembly.WebAssemblyInstantiatedSource | PromiseLike<WebAssembly.WebAssemblyInstantiatedSource>;
172
- protected onError: (error: Error, type: WorkerMessageType) => void;
173
- constructor(options?: ThreadMessageHandlerOptions);
174
- instantiate(data: LoadPayload): WebAssembly.WebAssemblyInstantiatedSource | PromiseLike<WebAssembly.WebAssemblyInstantiatedSource>;
175
- handle(e: WorkerMessageEvent<MessageEventData<WorkerMessageType>>): void;
176
- private _load;
177
- private _start;
178
- protected _loaded(err: Error | null, source: WebAssembly.WebAssemblyInstantiatedSource | null, payload: LoadPayload): void;
179
- private _failQueuedStarts;
180
- protected handleAfterLoad<E extends WorkerMessageEvent>(e: E, f: (e: E) => void): void;
181
- protected beforeReportError(_error: Error, _type: WorkerMessageType | 'async-worker-init', _tid?: number): void;
182
- protected reportError(value: unknown, type: WorkerMessageType | 'async-worker-init', tid?: number): void;
183
- }
184
-
185
- export declare interface ThreadMessageHandlerOptions {
186
- onLoad?: (data: LoadPayload) => WebAssembly.WebAssemblyInstantiatedSource | PromiseLike<WebAssembly.WebAssemblyInstantiatedSource>;
187
- onError?: (error: Error, type: WorkerMessageType) => void;
188
- postMessage?: (message: any) => void;
189
- }
190
-
191
- export declare interface WASIInstance {
192
- readonly wasiImport?: Record<string, any>;
193
- initialize(instance: object): void;
194
- start(instance: object): number;
195
- getImportObject?(): any;
196
- }
197
-
198
- export declare class WASIThreads {
199
- PThread: ThreadManager | undefined;
200
- private wasmMemory;
201
- private wasmInstance;
202
- private readonly threadSpawn;
203
- readonly childThread: boolean;
204
- private readonly postMessage;
205
- readonly wasi: WASIInstance;
206
- constructor(options: WASIThreadsOptions);
207
- getImportObject(): {
208
- wasi: WASIThreadsImports;
209
- };
210
- setup(wasmInstance: WebAssembly.Instance, wasmModule: WebAssembly.Module, wasmMemory?: WebAssembly.Memory): void;
211
- preloadWorkers(): Promise<WorkerLike[]>;
212
- initialize(instance: WebAssembly.Instance, module: WebAssembly.Module, memory?: WebAssembly.Memory): WebAssembly.Instance;
213
- start(instance: WebAssembly.Instance, module: WebAssembly.Module, memory?: WebAssembly.Memory): StartResult;
214
- terminateAllThreads(): void;
215
- }
216
-
217
- export declare interface WASIThreadsImports {
218
- 'thread-spawn': (startArg: number, errorOrTid?: number) => number;
219
- }
220
-
221
- export declare type WASIThreadsOptions = MainThreadOptions | ChildThreadOptions;
222
-
223
- export declare type WorkerFactory = (ctx: {
224
- type: string;
225
- name: string;
226
- }) => WorkerLike;
227
-
228
- export declare type WorkerLike = (Worker | Worker_2) & {
229
- whenLoaded?: Promise<WorkerLike>;
230
- loaded?: boolean;
231
- __emnapi_tid?: number;
232
- };
233
-
234
- export declare interface WorkerMessageEvent<T = any> {
235
- data: T;
236
- }
237
-
238
- export declare type WorkerMessageType = 'load' | 'start';
239
-
240
- export { }