nitro 2.2.27 → 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 (306) hide show
  1. package/LICENSE +2 -2
  2. package/README.md +11 -259
  3. package/dist/_chunks/app.mjs +19797 -0
  4. package/dist/_chunks/build.mjs +84 -0
  5. package/dist/_chunks/build2.mjs +318 -0
  6. package/dist/_chunks/build3.mjs +6452 -0
  7. package/dist/_chunks/detect-acorn.mjs +503 -0
  8. package/dist/_chunks/index.mjs +22242 -0
  9. package/dist/_chunks/index2.mjs +297 -0
  10. package/dist/_chunks/index3.mjs +1058 -0
  11. package/dist/_chunks/index4.mjs +1206 -0
  12. package/dist/_chunks/info.mjs +11157 -0
  13. package/dist/_chunks/json5.mjs +68 -0
  14. package/dist/_chunks/jsonc.mjs +51 -0
  15. package/dist/_chunks/pathe.M-eThtNZ.mjs +204 -0
  16. package/dist/_chunks/plugin.mjs +960 -0
  17. package/dist/_chunks/server.mjs +254 -0
  18. package/dist/_chunks/snapshot.mjs +284 -0
  19. package/dist/_chunks/toml.mjs +259 -0
  20. package/dist/_chunks/yaml.mjs +86 -0
  21. package/dist/cli/build.mjs +54 -0
  22. package/dist/cli/common.mjs +13 -0
  23. package/dist/cli/dev.mjs +95 -0
  24. package/dist/cli/index.d.mts +1 -0
  25. package/dist/cli/index.mjs +477 -0
  26. package/dist/cli/index2.mjs +17 -0
  27. package/dist/cli/list.mjs +34 -0
  28. package/dist/cli/prepare.mjs +24 -0
  29. package/dist/cli/run.mjs +60 -0
  30. package/dist/index.d.mts +52 -0
  31. package/dist/index.mjs +55 -0
  32. package/dist/node_modules/@poppinss/colors/build/index.js +169 -0
  33. package/dist/node_modules/@poppinss/colors/package.json +116 -0
  34. package/dist/node_modules/@poppinss/dumper/build/chunk-26HALFTP.js +602 -0
  35. package/dist/node_modules/@poppinss/dumper/build/formatters/console/main.js +441 -0
  36. package/dist/node_modules/@poppinss/dumper/build/formatters/html/main.js +717 -0
  37. package/dist/node_modules/@poppinss/dumper/package.json +122 -0
  38. package/dist/node_modules/@poppinss/exception/build/index.js +63 -0
  39. package/dist/node_modules/@poppinss/exception/package.json +106 -0
  40. package/dist/node_modules/@sindresorhus/is/distribution/index.js +1313 -0
  41. package/dist/node_modules/@sindresorhus/is/distribution/utilities.js +3 -0
  42. package/dist/node_modules/@sindresorhus/is/package.json +81 -0
  43. package/dist/node_modules/@speed-highlight/core/dist/index.js +4 -0
  44. package/dist/node_modules/@speed-highlight/core/dist/terminal.js +2 -0
  45. package/dist/node_modules/@speed-highlight/core/package.json +90 -0
  46. package/dist/node_modules/cookie/dist/index.js +239 -0
  47. package/dist/node_modules/cookie/package.json +42 -0
  48. package/dist/node_modules/croner/dist/croner.js +1 -0
  49. package/dist/node_modules/croner/package.json +63 -0
  50. package/dist/node_modules/defu/dist/defu.mjs +69 -0
  51. package/dist/node_modules/defu/package.json +43 -0
  52. package/dist/node_modules/destr/dist/index.mjs +72 -0
  53. package/dist/node_modules/destr/package.json +47 -0
  54. package/dist/node_modules/error-stack-parser-es/dist/index.mjs +38 -0
  55. package/dist/node_modules/error-stack-parser-es/dist/lite.mjs +167 -0
  56. package/dist/node_modules/error-stack-parser-es/package.json +83 -0
  57. package/dist/node_modules/get-port-please/dist/index.mjs +430 -0
  58. package/dist/node_modules/get-port-please/package.json +39 -0
  59. package/dist/node_modules/hookable/dist/index.mjs +290 -0
  60. package/dist/node_modules/hookable/package.json +49 -0
  61. package/dist/node_modules/kleur/index.js +110 -0
  62. package/dist/node_modules/kleur/index.mjs +110 -0
  63. package/dist/node_modules/kleur/package.json +51 -0
  64. package/dist/node_modules/klona/dist/index.mjs +81 -0
  65. package/dist/node_modules/klona/full/index.mjs +53 -0
  66. package/dist/node_modules/klona/package.json +74 -0
  67. package/dist/node_modules/scule/dist/index.mjs +80 -0
  68. package/dist/node_modules/scule/package.json +43 -0
  69. package/dist/node_modules/source-map/lib/array-set.js +100 -0
  70. package/dist/node_modules/source-map/lib/base64-vlq.js +94 -0
  71. package/dist/node_modules/source-map/lib/base64.js +19 -0
  72. package/dist/node_modules/source-map/lib/binary-search.js +113 -0
  73. package/dist/node_modules/source-map/lib/mapping-list.js +83 -0
  74. package/dist/node_modules/source-map/lib/mappings.wasm +0 -0
  75. package/dist/node_modules/source-map/lib/read-wasm.js +27 -0
  76. package/dist/node_modules/source-map/lib/source-map-consumer.js +1081 -0
  77. package/dist/node_modules/source-map/lib/source-map-generator.js +439 -0
  78. package/dist/node_modules/source-map/lib/source-node.js +430 -0
  79. package/dist/node_modules/source-map/lib/url.js +13 -0
  80. package/dist/node_modules/source-map/lib/util.js +444 -0
  81. package/dist/node_modules/source-map/lib/wasm.js +138 -0
  82. package/dist/node_modules/source-map/package.json +79 -0
  83. package/dist/node_modules/source-map/source-map.js +10 -0
  84. package/dist/node_modules/std-env/dist/index.mjs +1 -0
  85. package/dist/node_modules/std-env/package.json +46 -0
  86. package/dist/node_modules/supports-color/index.js +202 -0
  87. package/dist/node_modules/supports-color/package.json +64 -0
  88. package/dist/node_modules/ufo/dist/index.mjs +638 -0
  89. package/dist/node_modules/ufo/package.json +47 -0
  90. package/dist/node_modules/unctx/dist/index.mjs +131 -0
  91. package/dist/node_modules/unctx/package.json +67 -0
  92. package/dist/node_modules/youch/build/chunk-4L7RY2JA.js +42 -0
  93. package/dist/node_modules/youch/build/chunk-4XB2BYKC.js +85 -0
  94. package/dist/node_modules/youch/build/chunk-4YEN7HVQ.js +61 -0
  95. package/dist/node_modules/youch/build/chunk-EUJBVOYB.js +83 -0
  96. package/dist/node_modules/youch/build/chunk-HFSXRSKS.js +85 -0
  97. package/dist/node_modules/youch/build/chunk-JAN2TFI2.js +222 -0
  98. package/dist/node_modules/youch/build/chunk-OSUFJZHZ.js +6 -0
  99. package/dist/node_modules/youch/build/chunk-PINJDICN.js +72 -0
  100. package/dist/node_modules/youch/build/chunk-PUHGL6HA.js +41 -0
  101. package/dist/node_modules/youch/build/chunk-VE4LENUR.js +45 -0
  102. package/dist/node_modules/youch/build/index.js +352 -0
  103. package/dist/node_modules/youch/build/public/error_cause/style.css +5 -0
  104. package/dist/node_modules/youch/build/public/error_info/script.js +13 -0
  105. package/dist/node_modules/youch/build/public/error_info/style.css +144 -0
  106. package/dist/node_modules/youch/build/public/error_stack/script.js +74 -0
  107. package/dist/node_modules/youch/build/public/error_stack/style.css +220 -0
  108. package/dist/node_modules/youch/build/public/error_stack_source/style.css +123 -0
  109. package/dist/node_modules/youch/build/public/header/script.js +16 -0
  110. package/dist/node_modules/youch/build/public/header/style.css +56 -0
  111. package/dist/node_modules/youch/build/public/layout/script.js +20 -0
  112. package/dist/node_modules/youch/build/public/layout/style.css +431 -0
  113. package/dist/node_modules/youch/package.json +133 -0
  114. package/dist/node_modules/youch-core/build/index.js +316 -0
  115. package/dist/node_modules/youch-core/package.json +124 -0
  116. package/dist/presets/_nitro/runtime/nitro-dev.d.mts +1 -0
  117. package/dist/presets/_nitro/runtime/nitro-dev.mjs +62 -0
  118. package/dist/presets/_nitro/runtime/nitro-prerenderer.d.mts +3 -0
  119. package/dist/presets/_nitro/runtime/nitro-prerenderer.mjs +18 -0
  120. package/dist/presets/_nitro/runtime/service-worker.d.mts +1 -0
  121. package/dist/presets/_nitro/runtime/service-worker.mjs +21 -0
  122. package/dist/presets/aws-amplify/runtime/aws-amplify.d.mts +1 -0
  123. package/dist/presets/aws-amplify/runtime/aws-amplify.mjs +13 -0
  124. package/dist/presets/aws-lambda/runtime/_utils.d.mts +18 -0
  125. package/dist/presets/aws-lambda/runtime/_utils.mjs +102 -0
  126. package/dist/presets/aws-lambda/runtime/aws-lambda-streaming.d.mts +3 -0
  127. package/dist/presets/aws-lambda/runtime/aws-lambda-streaming.mjs +33 -0
  128. package/dist/presets/aws-lambda/runtime/aws-lambda.d.mts +3 -0
  129. package/dist/presets/aws-lambda/runtime/aws-lambda.mjs +13 -0
  130. package/dist/presets/azure/runtime/_utils.d.mts +2 -0
  131. package/dist/presets/azure/runtime/_utils.mjs +50 -0
  132. package/dist/presets/azure/runtime/azure-swa.d.mts +5 -0
  133. package/dist/presets/azure/runtime/azure-swa.mjs +28 -0
  134. package/dist/presets/bun/runtime/bun.d.mts +1 -0
  135. package/dist/presets/bun/runtime/bun.mjs +27 -0
  136. package/dist/presets/cloudflare/runtime/_module-handler.d.mts +13 -0
  137. package/dist/presets/cloudflare/runtime/_module-handler.mjs +93 -0
  138. package/dist/presets/cloudflare/runtime/cloudflare-durable.d.mts +19 -0
  139. package/dist/presets/cloudflare/runtime/cloudflare-durable.mjs +74 -0
  140. package/dist/presets/cloudflare/runtime/cloudflare-module.d.mts +9 -0
  141. package/dist/presets/cloudflare/runtime/cloudflare-module.mjs +20 -0
  142. package/dist/presets/cloudflare/runtime/cloudflare-pages.d.mts +20 -0
  143. package/dist/presets/cloudflare/runtime/cloudflare-pages.mjs +47 -0
  144. package/dist/presets/cloudflare/runtime/plugin.dev.d.mts +3 -0
  145. package/dist/presets/cloudflare/runtime/plugin.dev.mjs +89 -0
  146. package/dist/presets/deno/runtime/deno-deploy.d.mts +1 -0
  147. package/dist/presets/deno/runtime/deno-deploy.mjs +17 -0
  148. package/dist/presets/deno/runtime/deno-server.d.mts +6 -0
  149. package/dist/presets/deno/runtime/deno-server.mjs +59 -0
  150. package/dist/presets/netlify/runtime/netlify-edge.d.mts +3 -0
  151. package/dist/presets/netlify/runtime/netlify-edge.mjs +17 -0
  152. package/dist/presets/netlify/runtime/netlify.d.mts +3 -0
  153. package/dist/presets/netlify/runtime/netlify.mjs +24 -0
  154. package/dist/presets/node/runtime/node-cluster.d.mts +1 -0
  155. package/dist/presets/node/runtime/node-cluster.mjs +58 -0
  156. package/dist/presets/node/runtime/node-middleware.d.mts +4 -0
  157. package/dist/presets/node/runtime/node-middleware.mjs +14 -0
  158. package/dist/presets/node/runtime/node-server.d.mts +3 -0
  159. package/dist/presets/node/runtime/node-server.mjs +44 -0
  160. package/dist/presets/standard/runtime/server.d.mts +5 -0
  161. package/dist/presets/standard/runtime/server.mjs +6 -0
  162. package/dist/presets/stormkit/runtime/stormkit.d.mts +21 -0
  163. package/dist/presets/stormkit/runtime/stormkit.mjs +28 -0
  164. package/dist/presets/vercel/runtime/vercel.d.mts +8 -0
  165. package/dist/presets/vercel/runtime/vercel.mjs +17 -0
  166. package/dist/presets/winterjs/runtime/winterjs.d.mts +1 -0
  167. package/dist/presets/winterjs/runtime/winterjs.mjs +87 -0
  168. package/dist/presets/zeabur/runtime/zeabur.d.mts +3 -0
  169. package/dist/presets/zeabur/runtime/zeabur.mjs +4 -0
  170. package/dist/presets.mjs +2460 -0
  171. package/dist/runtime/index.d.mts +11 -0
  172. package/dist/runtime/index.mjs +17 -0
  173. package/dist/runtime/internal/app.d.mts +2 -0
  174. package/dist/runtime/internal/app.mjs +153 -0
  175. package/dist/runtime/internal/cache.d.mts +7 -0
  176. package/dist/runtime/internal/cache.mjs +236 -0
  177. package/dist/runtime/internal/context.d.mts +12 -0
  178. package/dist/runtime/internal/context.mjs +17 -0
  179. package/dist/runtime/internal/database.d.mts +2 -0
  180. package/dist/runtime/internal/database.mjs +14 -0
  181. package/dist/runtime/internal/debug.d.mts +2 -0
  182. package/dist/runtime/internal/debug.mjs +5 -0
  183. package/dist/runtime/internal/empty.d.mts +0 -0
  184. package/dist/runtime/internal/empty.mjs +0 -0
  185. package/dist/runtime/internal/error/dev.d.mts +9 -0
  186. package/dist/runtime/internal/error/dev.mjs +122 -0
  187. package/dist/runtime/internal/error/prod.d.mts +8 -0
  188. package/dist/runtime/internal/error/prod.mjs +62 -0
  189. package/dist/runtime/internal/error/utils.d.mts +8 -0
  190. package/dist/runtime/internal/error/utils.mjs +3 -0
  191. package/dist/runtime/internal/index.d.mts +3 -0
  192. package/dist/runtime/internal/index.mjs +3 -0
  193. package/dist/runtime/internal/lib/http-graceful-shutdown.d.mts +16 -0
  194. package/dist/runtime/internal/lib/http-graceful-shutdown.mjs +213 -0
  195. package/dist/runtime/internal/meta.d.mts +2 -0
  196. package/dist/runtime/internal/meta.mjs +3 -0
  197. package/dist/runtime/internal/plugin.d.mts +3 -0
  198. package/dist/runtime/internal/plugin.mjs +4 -0
  199. package/dist/runtime/internal/renderer.d.mts +3 -0
  200. package/dist/runtime/internal/renderer.mjs +36 -0
  201. package/dist/runtime/internal/route-rules.d.mts +8 -0
  202. package/dist/runtime/internal/route-rules.mjs +62 -0
  203. package/dist/runtime/internal/routes/dev-tasks.d.mts +3 -0
  204. package/dist/runtime/internal/routes/dev-tasks.mjs +23 -0
  205. package/dist/runtime/internal/routes/openapi.d.mts +3 -0
  206. package/dist/runtime/internal/routes/openapi.mjs +100 -0
  207. package/dist/runtime/internal/routes/renderer-template.d.mts +2 -0
  208. package/dist/runtime/internal/routes/renderer-template.dev.d.mts +3 -0
  209. package/dist/runtime/internal/routes/renderer-template.dev.mjs +21 -0
  210. package/dist/runtime/internal/routes/renderer-template.mjs +4 -0
  211. package/dist/runtime/internal/routes/scalar.d.mts +3 -0
  212. package/dist/runtime/internal/routes/scalar.mjs +194 -0
  213. package/dist/runtime/internal/routes/swagger.d.mts +3 -0
  214. package/dist/runtime/internal/routes/swagger.mjs +44 -0
  215. package/dist/runtime/internal/runtime-config.d.mts +9 -0
  216. package/dist/runtime/internal/runtime-config.mjs +49 -0
  217. package/dist/runtime/internal/shutdown.d.mts +9 -0
  218. package/dist/runtime/internal/shutdown.mjs +34 -0
  219. package/dist/runtime/internal/static.d.mts +3 -0
  220. package/dist/runtime/internal/static.mjs +77 -0
  221. package/dist/runtime/internal/storage.d.mts +2 -0
  222. package/dist/runtime/internal/storage.mjs +6 -0
  223. package/dist/runtime/internal/task.d.mts +17 -0
  224. package/dist/runtime/internal/task.mjs +73 -0
  225. package/dist/runtime/internal/utils.d.mts +1 -0
  226. package/dist/runtime/internal/utils.mjs +15 -0
  227. package/dist/runtime/internal/vite/dev-entry.d.mts +1 -0
  228. package/dist/runtime/internal/vite/dev-entry.mjs +6 -0
  229. package/dist/runtime/internal/vite/dev-worker.d.mts +1 -0
  230. package/dist/runtime/internal/vite/dev-worker.mjs +362 -0
  231. package/dist/runtime/internal/vite/prod-setup.d.mts +4 -0
  232. package/dist/runtime/internal/vite/prod-setup.mjs +55 -0
  233. package/dist/runtime/internal/vite/ssr-renderer.d.mts +4 -0
  234. package/dist/runtime/internal/vite/ssr-renderer.mjs +4 -0
  235. package/dist/types/index.d.mts +2810 -0
  236. package/dist/types/index.mjs +1 -0
  237. package/dist/vite.d.mts +59 -0
  238. package/dist/vite.mjs +68 -0
  239. package/lib/config.d.mts +9 -0
  240. package/lib/config.mjs +5 -0
  241. package/lib/deps/h3.d.mts +1 -0
  242. package/lib/deps/h3.mjs +1 -0
  243. package/lib/deps/ofetch.mjs +1 -0
  244. package/lib/deps/ofetch.mts +1 -0
  245. package/lib/meta.d.mts +5 -0
  246. package/lib/meta.mjs +21 -0
  247. package/lib/runtime-meta.d.mts +5 -0
  248. package/lib/runtime-meta.mjs +38 -0
  249. package/package.json +170 -38
  250. package/.editorconfig +0 -12
  251. package/.eslintrc.js +0 -34
  252. package/.travis.yml +0 -7
  253. package/Dockerfile +0 -12
  254. package/Makefile +0 -37
  255. package/bin/nitro +0 -55
  256. package/lib/auto-require.js +0 -44
  257. package/lib/class-file.js +0 -105
  258. package/lib/class-files.js +0 -212
  259. package/lib/color.js +0 -89
  260. package/lib/cwd.js +0 -27
  261. package/lib/dir-expand.js +0 -80
  262. package/lib/dir.js +0 -130
  263. package/lib/file.js +0 -80
  264. package/lib/join-paths.js +0 -60
  265. package/lib/livereload/livereload.js +0 -55
  266. package/lib/livereload.js +0 -86
  267. package/lib/nitro.js +0 -161
  268. package/lib/package.js +0 -211
  269. package/lib/presets/autoprefixer.js +0 -11
  270. package/lib/presets/babel.js +0 -33
  271. package/lib/presets/browserify.js +0 -106
  272. package/lib/presets/coffee-script.js +0 -29
  273. package/lib/presets/cssnano.js +0 -11
  274. package/lib/presets/eslint.js +0 -67
  275. package/lib/presets/jshint.js +0 -51
  276. package/lib/presets/less.js +0 -45
  277. package/lib/presets/log.js +0 -11
  278. package/lib/presets/ng-annotate.js +0 -34
  279. package/lib/presets/noop.js +0 -7
  280. package/lib/presets/postcss/auto-postcss.js +0 -46
  281. package/lib/presets/postcss/autoprefixer-options.js +0 -9
  282. package/lib/presets/postcss.js +0 -40
  283. package/lib/presets/rollup.js +0 -56
  284. package/lib/presets/sass.js +0 -64
  285. package/lib/presets/sitemap.js +0 -101
  286. package/lib/presets/sitemap.xml +0 -12
  287. package/lib/presets/svg-symbols.js +0 -22
  288. package/lib/presets/svgo.js +0 -21
  289. package/lib/presets/uglify.js +0 -72
  290. package/lib/presets/webpack.js +0 -66
  291. package/lib/processors.js +0 -84
  292. package/lib/promisify.js +0 -16
  293. package/lib/server.js +0 -224
  294. package/lib/tasks.js +0 -114
  295. package/lib/watch.js +0 -81
  296. package/test.js +0 -59
  297. package/tests/cwd-tests.js +0 -25
  298. package/tests/dir-tests.js +0 -80
  299. package/tests/dummy/dummy.coffee +0 -7
  300. package/tests/dummy/dummy.js +0 -8
  301. package/tests/dummy/dummy.less +0 -6
  302. package/tests/dummy/dummy.sass +0 -5
  303. package/tests/file-tests.js +0 -17
  304. package/tests/join-paths-tests.js +0 -86
  305. package/tests/tasks-tests.js +0 -65
  306. package/wercker.yml +0 -25
@@ -0,0 +1 @@
1
+
@@ -0,0 +1,59 @@
1
+ import { PluginOption } from 'vite';
2
+ import { NitroConfig, Nitro } from 'nitro/types';
3
+
4
+ declare module "vite" {
5
+ interface UserConfig {
6
+ /**
7
+ * Nitro Vite Plugin options.
8
+ */
9
+ nitro?: NitroConfig;
10
+ }
11
+ }
12
+ interface NitroPluginConfig {
13
+ /** Custom Nitro config */
14
+ config?: NitroConfig;
15
+ /**
16
+ * Fetchable service environments automatically created by the plugin.
17
+ *
18
+ * **Note:** You can use top level `environments` with same keys to extend environment configurations.
19
+ */
20
+ services?: Record<string, ServiceConfig>;
21
+ /**
22
+ * @internal Pre-initialized Nitro instance.
23
+ */
24
+ _nitro?: Nitro;
25
+ experimental?: {
26
+ /**
27
+ * @experimental Use the virtual filesystem for intermediate environment build output files.
28
+ * @note This is unsafe if plugins rely on temporary files on the filesystem.
29
+ */
30
+ virtualBundle?: boolean;
31
+ };
32
+ }
33
+ interface ServiceConfig {
34
+ /**
35
+ * Path to the service entrypoint file.
36
+ *
37
+ * Services should export a web standard fetch handler function.
38
+ *
39
+ * Example:
40
+ * ```ts
41
+ * export default async (req: Request) => {
42
+ * return Response.json({ message: "Hello from service!" });
43
+ * };
44
+ * ```
45
+ */
46
+ entry: string;
47
+ /**
48
+ * Service route.
49
+ *
50
+ * - If `route` is not set, services are only accessible via `fetch("<url>", { viteEnv: "<name>" })`.
51
+ * - `ssr` service is special and defaults to `"/**"` route, meaning it will handle all requests.
52
+ */
53
+ route?: string;
54
+ }
55
+
56
+ declare function nitro(pluginConfig?: NitroPluginConfig): PluginOption;
57
+
58
+ export { nitro };
59
+ export type { NitroPluginConfig, ServiceConfig };
package/dist/vite.mjs ADDED
@@ -0,0 +1,68 @@
1
+ export { n as nitro } from './_chunks/plugin.mjs';
2
+ import './_chunks/index.mjs';
3
+ import 'consola';
4
+ import 'hookable';
5
+ import 'nitro/runtime/meta';
6
+ import 'node:fs';
7
+ import 'node:fs/promises';
8
+ import 'node:url';
9
+ import 'node:os';
10
+ import 'node:path';
11
+ import 'node:assert';
12
+ import 'node:process';
13
+ import 'node:v8';
14
+ import 'node:util';
15
+ import 'jiti';
16
+ import 'destr';
17
+ import 'defu';
18
+ import './_chunks/pathe.M-eThtNZ.mjs';
19
+ import 'fs';
20
+ import 'path';
21
+ import 'os';
22
+ import 'crypto';
23
+ import './_chunks/app.mjs';
24
+ import 'node:worker_threads';
25
+ import 'std-env';
26
+ import 'fs/promises';
27
+ import 'events';
28
+ import 'node:stream';
29
+ import 'h3';
30
+ import 'url';
31
+ import 'tty';
32
+ import 'util';
33
+ import 'stream';
34
+ import 'ufo';
35
+ import 'node:http';
36
+ import 'node:https';
37
+ import 'node:events';
38
+ import 'undici';
39
+ import 'youch-core';
40
+ import 'youch';
41
+ import 'source-map';
42
+ import 'srvx';
43
+ import 'klona/full';
44
+ import 'node:module';
45
+ import 'ofetch';
46
+ import 'klona';
47
+ import 'unstorage';
48
+ import 'ohash';
49
+ import 'scule';
50
+ import 'module';
51
+ import 'consola/utils';
52
+ import 'node:zlib';
53
+ import 'nitro/meta';
54
+ import 'srvx/node';
55
+ import './_chunks/index2.mjs';
56
+ import './_chunks/info.mjs';
57
+ import 'unenv';
58
+ import 'node:buffer';
59
+ import 'node:querystring';
60
+ import 'constants';
61
+ import 'node:crypto';
62
+ import 'db0';
63
+ import 'esbuild';
64
+ import 'nf3';
65
+ import 'rendu';
66
+ import 'vite';
67
+ import 'get-port-please';
68
+ import 'node:child_process';
@@ -0,0 +1,9 @@
1
+ import { NitroConfig } from "nitro/types";
2
+
3
+ export { NitroConfig } from "nitro/types";
4
+
5
+ declare function defineNitroConfig(
6
+ config: Omit<NitroConfig, "rootDir">
7
+ ): Omit<NitroConfig, "rootDir">;
8
+
9
+ export { defineNitroConfig };
package/lib/config.mjs ADDED
@@ -0,0 +1,5 @@
1
+ function defineNitroConfig(config) {
2
+ return config;
3
+ }
4
+
5
+ export { defineNitroConfig };
@@ -0,0 +1 @@
1
+ export * from "h3";
@@ -0,0 +1 @@
1
+ export * from "h3";
@@ -0,0 +1 @@
1
+ export { $fetch } from "ofetch";
@@ -0,0 +1 @@
1
+ export { $fetch } from "ofetch";
package/lib/meta.d.mts ADDED
@@ -0,0 +1,5 @@
1
+ import type { CompatibilityUpdate } from "compatx";
2
+
3
+ export const version: string;
4
+
5
+ export const compatibilityChanges: CompatibilityUpdate[];
package/lib/meta.mjs ADDED
@@ -0,0 +1,21 @@
1
+ import packageJson from "../package.json" with { type: "json" };
2
+
3
+ export const version = packageJson.version;
4
+
5
+ export const compatibilityChanges = [
6
+ {
7
+ from: "2024-05-07",
8
+ platform: "netlify",
9
+ description: "Netlify functions v2",
10
+ },
11
+ {
12
+ from: "2024-09-19",
13
+ platform: "cloudflare",
14
+ description: "Static assets support for cloudflare-module preset",
15
+ },
16
+ {
17
+ from: "2025-01-30",
18
+ platform: "deno",
19
+ description: "Deno v2 Node.js compatibility",
20
+ },
21
+ ];
@@ -0,0 +1,5 @@
1
+ export declare const pkgDir: string;
2
+ export declare const runtimeDir: string;
3
+ export declare const presetsDir: string;
4
+ export declare const subpaths: string[];
5
+ export declare const runtimeDependencies: string[];
@@ -0,0 +1,38 @@
1
+ import { fileURLToPath } from "node:url";
2
+
3
+ export const pkgDir = fileURLToPath(new URL("..", import.meta.url));
4
+
5
+ export const runtimeDir = fileURLToPath(
6
+ new URL("../dist/runtime/", import.meta.url)
7
+ );
8
+
9
+ export const presetsDir = fileURLToPath(
10
+ new URL("../dist/presets/", import.meta.url)
11
+ );
12
+
13
+ export const runtimeDependencies = [
14
+ "h3",
15
+ "cookie-es",
16
+ "defu",
17
+ "destr",
18
+ "hookable",
19
+ "iron-webcrypto",
20
+ "klona",
21
+ "node-mock-http",
22
+ "ofetch",
23
+ "ohash",
24
+ "pathe",
25
+ "rou3",
26
+ "srvx",
27
+ "scule",
28
+ "ufo",
29
+ "db0",
30
+ "std-env",
31
+ "uncrypto",
32
+ "unctx",
33
+ "unenv",
34
+ "unstorage",
35
+ "crossws",
36
+ "croner",
37
+ "rendu",
38
+ ];
package/package.json CHANGED
@@ -1,48 +1,180 @@
1
1
  {
2
2
  "name": "nitro",
3
- "version": "2.2.27",
4
- "description": "node file and shell utils",
5
- "main": "lib/nitro.js",
3
+ "version": "3.0.0",
4
+ "description": "Build and Deploy Universal JavaScript Servers",
5
+ "homepage": "https://nitro.build",
6
+ "repository": "nitrojs/nitro",
7
+ "license": "MIT",
8
+ "type": "module",
9
+ "exports": {
10
+ "./package.json": "./package.json",
11
+ ".": "./dist/index.mjs",
12
+ "./config": "./lib/config.mjs",
13
+ "./types": "./dist/types/index.d.mts",
14
+ "./meta": "./lib/meta.mjs",
15
+ "./runtime": "./dist/runtime/index.mjs",
16
+ "./runtime/internal": "./dist/runtime/internal/index.mjs",
17
+ "./runtime/meta": "./lib/runtime-meta.mjs",
18
+ "./vite": "./dist/vite.mjs",
19
+ "./h3": "./lib/deps/h3.mjs",
20
+ "./deps/h3": "./lib/deps/h3.mjs",
21
+ "./deps/ofetch": "./lib/deps/ofetch.mjs"
22
+ },
6
23
  "bin": {
7
- "nitro": "./bin/nitro"
24
+ "nitro": "./dist/cli/index.mjs",
25
+ "nitropack": "./dist/cli/index.mjs"
8
26
  },
9
- "scripts": {
10
- "test": "make install && make test"
11
- },
12
- "repository": {
13
- "type": "git",
14
- "url": "git+ssh://git@github.com/nitrojs/nitro.git"
15
- },
16
- "keywords": [
17
- "node",
18
- "files",
19
- "shell",
20
- "batch",
21
- "processor"
27
+ "files": [
28
+ "dist",
29
+ "lib"
22
30
  ],
23
- "author": "Jesús Germade <jesus@germade.es>",
24
- "license": "MIT",
25
- "bugs": {
26
- "url": "https://github.com/nitrojs/nitro/issues"
27
- },
28
- "homepage": "https://github.com/nitrojs/nitro#readme",
29
- "directories": {
30
- "lib": "./lib"
31
+ "resolutions": {
32
+ "nitro": "link:.",
33
+ "undici": "^7.11.0"
31
34
  },
32
35
  "dependencies": {
33
- "chokidar": "3.0.0",
34
- "deasync": "0.1.15",
35
- "js-yaml": "3.13.1",
36
- "mime": "2.4.3",
37
- "minimatch": "3.0.4",
38
- "mkdirp": "0.5.1",
39
- "nitro-tools": "0.2.4",
40
- "open": "6.3.0",
41
- "parole": "1.1.30",
42
- "trisquel": "1.1.5",
43
- "ws": "7.0.0"
36
+ "consola": "^3.4.2",
37
+ "cookie-es": "^2.0.0",
38
+ "crossws": "^0.4.1",
39
+ "db0": "^0.3.4",
40
+ "esbuild": "^0.25.10",
41
+ "fetchdts": "^0.1.7",
42
+ "h3": "2.0.1-rc.2",
43
+ "jiti": "^2.6.1",
44
+ "nf3": "^0.1.1",
45
+ "ofetch": "^1.4.1",
46
+ "ohash": "^2.0.11",
47
+ "rendu": "^0.0.6",
48
+ "rollup": "^4.52.4",
49
+ "srvx": "^0.8.15",
50
+ "undici": "^7.16.0",
51
+ "unenv": "2.0.0-rc.21",
52
+ "unstorage": "2.0.0-alpha.3"
44
53
  },
45
54
  "devDependencies": {
46
- "mocha": "6.1.4"
55
+ "@azure/functions": "^3.5.1",
56
+ "@azure/static-web-apps-cli": "^2.0.7",
57
+ "@cloudflare/workers-types": "^4.20251008.0",
58
+ "@deno/types": "^0.0.1",
59
+ "@netlify/edge-functions": "^2.18.2",
60
+ "@netlify/functions": "^4.2.7",
61
+ "@rollup/plugin-alias": "^5.1.1",
62
+ "@rollup/plugin-commonjs": "^28.0.6",
63
+ "@rollup/plugin-inject": "^5.0.5",
64
+ "@rollup/plugin-json": "^6.1.0",
65
+ "@rollup/plugin-node-resolve": "^16.0.2",
66
+ "@rollup/plugin-replace": "^6.0.2",
67
+ "@rollup/plugin-terser": "^0.4.4",
68
+ "@scalar/api-reference": "^1.37.0",
69
+ "@types/archiver": "^6.0.3",
70
+ "@types/aws-lambda": "^8.10.155",
71
+ "@types/estree": "^1.0.8",
72
+ "@types/etag": "^1.8.4",
73
+ "@types/fs-extra": "^11.0.4",
74
+ "@types/http-proxy": "^1.17.16",
75
+ "@types/node": "^24.7.0",
76
+ "@types/node-fetch": "^2.6.13",
77
+ "@types/semver": "^7.7.1",
78
+ "@types/serve-static": "^1.15.9",
79
+ "@types/xml2js": "^0.4.14",
80
+ "@vitest/coverage-v8": "^3.2.4",
81
+ "automd": "^0.4.2",
82
+ "c12": "^3.3.0",
83
+ "changelogen": "^0.6.2",
84
+ "chokidar": "^4.0.3",
85
+ "citty": "^0.1.6",
86
+ "compatx": "^0.2.0",
87
+ "confbox": "^0.2.2",
88
+ "croner": "^9.1.0",
89
+ "defu": "^6.1.4",
90
+ "destr": "^2.0.5",
91
+ "dot-prop": "^10.1.0",
92
+ "edge-runtime": "^4.0.1",
93
+ "escape-string-regexp": "^5.0.0",
94
+ "eslint": "^9.37.0",
95
+ "eslint-config-unjs": "^0.5.0",
96
+ "etag": "^1.8.1",
97
+ "execa": "^9.6.0",
98
+ "expect-type": "^1.2.2",
99
+ "exsolve": "^1.0.7",
100
+ "fs-extra": "^11.3.2",
101
+ "get-port-please": "^3.2.0",
102
+ "gzip-size": "^7.0.0",
103
+ "hookable": "^5.5.3",
104
+ "httpxy": "^0.1.7",
105
+ "klona": "^2.0.6",
106
+ "knitwork": "^1.2.0",
107
+ "magic-string": "^0.30.19",
108
+ "magicast": "^0.3.5",
109
+ "mime": "^4.1.0",
110
+ "miniflare": "^4.20251004.0",
111
+ "mlly": "^1.8.0",
112
+ "pathe": "^2.0.3",
113
+ "perfect-debounce": "^2.0.0",
114
+ "pkg-types": "^2.3.0",
115
+ "prettier": "^3.6.2",
116
+ "pretty-bytes": "^7.1.0",
117
+ "react": "^19.2.0",
118
+ "rolldown": "1.0.0-beta.42",
119
+ "rou3": "^0.7.7",
120
+ "scule": "^1.3.0",
121
+ "semver": "^7.7.3",
122
+ "serve-placeholder": "^2.0.2",
123
+ "serve-static": "^2.2.0",
124
+ "source-map": "^0.7.6",
125
+ "std-env": "^3.9.0",
126
+ "tinyglobby": "^0.2.15",
127
+ "typescript": "^5.9.3",
128
+ "ufo": "^1.6.1",
129
+ "ultrahtml": "^1.6.0",
130
+ "unbuild": "^3.6.1",
131
+ "uncrypto": "^0.1.3",
132
+ "unctx": "^2.4.1",
133
+ "unimport": "^5.4.1",
134
+ "unplugin-utils": "^0.3.1",
135
+ "untyped": "^2.0.0",
136
+ "unwasm": "^0.3.11",
137
+ "vitest": "^3.2.4",
138
+ "wrangler": "^4.42.1",
139
+ "xml2js": "^0.6.2",
140
+ "youch": "4.1.0-beta.11",
141
+ "youch-core": "^0.3.3"
142
+ },
143
+ "peerDependencies": {
144
+ "rolldown": "*",
145
+ "vite": "^7",
146
+ "xml2js": "^0.6.2"
147
+ },
148
+ "peerDependenciesMeta": {
149
+ "rolldown": {
150
+ "optional": true
151
+ },
152
+ "vite": {
153
+ "optional": true
154
+ },
155
+ "xml2js": {
156
+ "optional": true
157
+ }
158
+ },
159
+ "engines": {
160
+ "node": "^20.19.0 || >=22.12.0"
161
+ },
162
+ "scripts": {
163
+ "build": "pnpm gen-presets && unbuild",
164
+ "dev": "pnpm -C playground dev",
165
+ "dev:build": "pnpm -C playground build",
166
+ "dev:start": "node playground/.output/server/index.mjs",
167
+ "gen-node-compat": "node scripts/gen-node-compat.ts",
168
+ "gen-presets": "pnpm jiti scripts/gen-presets.ts",
169
+ "lint": "eslint --cache . && prettier -c .",
170
+ "lint:fix": "automd && eslint --cache --fix . && prettier -w .",
171
+ "nitro": "jiti ./src/cli/index.ts",
172
+ "release": "pnpm test && pnpm build && changelogen --release && pnpm publish && git push --follow-tags",
173
+ "stub": "unbuild --stub",
174
+ "test": "pnpm lint && pnpm vitest run",
175
+ "test:fixture:types": "pnpm stub && jiti ./test/scripts/gen-fixture-types.ts && cd test/fixture && tsc --noEmit",
176
+ "test:rolldown": "NITRO_BUILDER=rolldown pnpm vitest",
177
+ "test:rollup": "NITRO_BUILDER=rollup pnpm vitest",
178
+ "test:types": "tsc --noEmit && pnpm test:fixture:types"
47
179
  }
48
- }
180
+ }
package/.editorconfig DELETED
@@ -1,12 +0,0 @@
1
- root = true
2
-
3
- [*]
4
- indent_style = space
5
- indent_size = 2
6
- charset = utf-8
7
- trim_trailing_whitespace = false
8
- insert_final_newline = true
9
-
10
- [Makefile]
11
- indent_style = tab
12
- indent_size = 4
package/.eslintrc.js DELETED
@@ -1,34 +0,0 @@
1
- module.exports = {
2
- "env": {
3
- "node": true,
4
- "es6": true
5
- },
6
- "globals": {
7
- "module": true,
8
- "define": true,
9
- "angular": true
10
- },
11
- "extends": "eslint:recommended",
12
- "rules": {
13
- "no-console": 0,
14
- "linebreak-style": [
15
- "error",
16
- "unix"
17
- ],
18
- "quotes": [
19
- "error",
20
- "single"
21
- ],
22
- "semi": [
23
- "error",
24
- "always"
25
- ],
26
- "no-unused-vars": [
27
- "error",
28
- {
29
- "args": "after-used",
30
- "argsIgnorePattern": "^_\\w+"
31
- }
32
- ]
33
- }
34
- };
package/.travis.yml DELETED
@@ -1,7 +0,0 @@
1
- language: node_js
2
- node_js:
3
- - "6"
4
- before_script:
5
- - export CHROME_BIN=chromium-browser
6
- - export DISPLAY=:99.0
7
- - sh -e /etc/init.d/xvfb start
package/Dockerfile DELETED
@@ -1,12 +0,0 @@
1
- FROM nitrojs/node-karma AS builder
2
-
3
- ADD ["package.json", "./"]
4
- RUN npm install
5
-
6
- ADD . ./
7
-
8
- # Installing all dependencies
9
- RUN npm install
10
-
11
- # Running tests
12
- RUN make test
package/Makefile DELETED
@@ -1,37 +0,0 @@
1
- # --- nitro-js
2
-
3
- npmdir = $(shell npm bin)
4
- whoami = $(shell whoami)
5
-
6
- git_branch := $(shell git rev-parse --abbrev-ref HEAD)
7
-
8
- # TASKS
9
-
10
- install:
11
- npm install
12
-
13
- test:
14
- @$(npmdir)/mocha tests
15
-
16
- npm.publish:
17
- git pull --tags
18
- npm version patch
19
- git push origin $(git_branch)
20
- git push --tags
21
- npm publish
22
- @echo "published ${PKG_VERSION}"s
23
-
24
- github.release: export PKG_NAME=$(shell node -e "console.log(require('./package.json').name);")
25
- github.release: export PKG_VERSION=$(shell node -e "console.log('v'+require('./package.json').version);")
26
- github.release: export RELEASE_URL=$(shell curl -s -X POST -H "Content-Type: application/json" -H "Authorization: Bearer ${GITHUB_TOKEN}" \
27
- -d '{"tag_name": "${PKG_VERSION}", "target_commitish": "$(git_branch)", "name": "${PKG_VERSION}", "body": "", "draft": false, "prerelease": false}' \
28
- -w '%{url_effective}' "https://api.github.com/repos/nitrojs/${PKG_NAME}/releases" )
29
- github.release:
30
- @echo ${RELEASE_URL}
31
- @true
32
-
33
- release: install test npm.publish github.release
34
-
35
- # DEFAULT TASKS
36
-
37
- .DEFAULT_GOAL := test
package/bin/nitro DELETED
@@ -1,55 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- 'use strict';
4
-
5
- process.title = 'nitro';
6
-
7
- var nitro = require('../lib/nitro'),
8
- color = require('../lib/color'),
9
- args = [].slice.call(process.argv, 2);
10
- // Parole = require('parole');
11
-
12
- if( args.length < 1 ) {
13
- console.error('needs at least 1 argument');
14
- process.exit(2);
15
- }
16
-
17
- // console.log('arguments', args );
18
-
19
- function runNextArgument( result ) {
20
- if( result && typeof result.then === 'function' ) {
21
- result.then(function () {
22
- runNextArgument(runArgument());
23
- });
24
- } else runNextArgument(runArgument());
25
- }
26
-
27
- function runArgument () {
28
- var cmd = args.shift();
29
-
30
- if( !cmd ) process.exit(0);
31
-
32
- switch( cmd ) {
33
- case 'import':
34
- return nitro.import(args.shift());
35
- case '-r':
36
- case 'run':
37
- return nitro.run(args.shift() || []);
38
- case '-p':
39
- case 'process':
40
- var presetName = args.shift(),
41
- src = args.shift(),
42
- dest = args.shift(),
43
- startTime = Date.now(),
44
- result = nitro.dir(src).load('{,**/}*.*').process(presetName).write(dest);
45
- console.log('\n' + color.green(presetName) + ' ' + src + ' ' + color.cyan(dest) + ' ' + color.yellow( ( Date.now() - startTime ) + 'ms' ) + '\n' );
46
- return result;
47
- default:
48
- console.error(color.yellow('\ncommand ') + cmd + color.red(' not defined\n') );
49
- process.exit(2);
50
- }
51
- }
52
-
53
- runNextArgument( runArgument() );
54
-
55
- // if( args === 'tasks' ) nitro.import(args[3]);
@@ -1,44 +0,0 @@
1
-
2
- var dir = require('./dir'),
3
- file = require('./file'),
4
- color = require('./color'),
5
- joinPaths = require('./join-paths'),
6
- deasync = require('deasync'),
7
- execSH = require('child_process').execSync || deasync( require('child_process').exec );
8
-
9
- module.exports = function requireLibs (requirements) {
10
- if( typeof requirements === 'string' ) {
11
- requireLibs([requirements]);
12
- return require(requirements.split('@')[0]);
13
- }
14
-
15
- var versions = require('../package').autoRequire || {};
16
-
17
- requirements.forEach(function (libName) {
18
- var version = versions[libName],
19
- dirpath = joinPaths.root('node_modules', libName),
20
- startTime;
21
- if( /@/.test(libName) ) {
22
- libName = libName.split('@');
23
- version = libName[1];
24
- libName = libName[0];
25
- }
26
- if( !dir.exists( dirpath ) ) {
27
- console.log(color.magenta('installing'), color.yellow(libName) + color.cyan( version ? ( '@' + version ) : '' ), 'on-demand' );
28
- startTime = Date.now();
29
- execSH('npm install ' + libName + ( version ? ( '@' + version ) : '' ) );
30
- if( file.exists( [dirpath, 'package.json'] ) ) {
31
- console.log(color.green('\ninstalled ') + color.yellow(libName) + (version ? color.cyan('@' + file.readJSON( [dirpath, 'package.json'] ).version ) : '') + ' ' + ( Date.now() - startTime ) + 'ms\n' );
32
- }
33
- } else if( version && file.exists( [ dirpath, 'package.json' ] ) ) {
34
- if( file.readJSON( [dirpath, 'package.json'] ).version >= version.replace(/\.x/g, '') ) return;
35
-
36
- console.log(color.magenta('updating'), color.yellow(libName) + color.cyan('@' + version), 'on-demand' );
37
- startTime = Date.now();
38
- execSH('npm install ' + libName + '@' + version );
39
- if( file.exists( [dirpath, 'package.json'] ) ) {
40
- console.log(color.green('\nupdated ') + color.yellow(libName) + color.cyan('@' + file.readJSON( [dirpath, 'package.json'] ).version ) + ' ' + ( Date.now() - startTime ) + 'ms\n' );
41
- }
42
- }
43
- });
44
- };