vinext 0.1.7 → 0.2.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 (279) hide show
  1. package/README.md +51 -30
  2. package/dist/build/inject-pregenerated-paths.d.ts +4 -0
  3. package/dist/build/inject-pregenerated-paths.js +18 -0
  4. package/dist/build/layout-classification.js +1 -1
  5. package/dist/build/nitro-route-rules.js +1 -1
  6. package/dist/build/pages-client-assets-module.d.ts +11 -0
  7. package/dist/build/pages-client-assets-module.js +27 -0
  8. package/dist/build/prerender.d.ts +2 -1
  9. package/dist/build/prerender.js +13 -6
  10. package/dist/build/report.d.ts +13 -2
  11. package/dist/build/report.js +99 -2
  12. package/dist/build/run-prerender.d.ts +7 -0
  13. package/dist/build/run-prerender.js +10 -1
  14. package/dist/build/standalone.js +2 -0
  15. package/dist/cache/cache-adapters-virtual.js +3 -3
  16. package/dist/check.d.ts +18 -0
  17. package/dist/check.js +77 -19
  18. package/dist/cli-args.d.ts +1 -2
  19. package/dist/cli-args.js +1 -1
  20. package/dist/cli-dev-config.d.ts +12 -0
  21. package/dist/cli-dev-config.js +23 -0
  22. package/dist/cli.js +113 -97
  23. package/dist/{server → client}/dev-error-overlay-store.d.ts +1 -1
  24. package/dist/{server → client}/dev-error-overlay-store.js +1 -1
  25. package/dist/{server → client}/dev-error-overlay.d.ts +1 -1
  26. package/dist/{server → client}/dev-error-overlay.js +2 -2
  27. package/dist/client/navigation-runtime.d.ts +2 -0
  28. package/dist/client/navigation-runtime.js +3 -1
  29. package/dist/client/window-next.d.ts +2 -1
  30. package/dist/cloudflare/index.d.ts +2 -2
  31. package/dist/cloudflare/index.js +2 -2
  32. package/dist/config/config-matchers.js +14 -10
  33. package/dist/config/next-config.d.ts +6 -3
  34. package/dist/config/next-config.js +47 -1
  35. package/dist/config/prerender.d.ts +34 -0
  36. package/dist/config/prerender.js +55 -0
  37. package/dist/config/server-external-packages.d.ts +4 -0
  38. package/dist/config/server-external-packages.js +91 -0
  39. package/dist/entries/app-rsc-entry.d.ts +2 -1
  40. package/dist/entries/app-rsc-entry.js +89 -15
  41. package/dist/entries/app-rsc-manifest.js +10 -0
  42. package/dist/entries/pages-client-entry.d.ts +3 -0
  43. package/dist/entries/pages-client-entry.js +16 -1
  44. package/dist/entries/pages-server-entry.js +6 -2
  45. package/dist/image/image-adapters-virtual.d.ts +59 -0
  46. package/dist/image/image-adapters-virtual.js +59 -0
  47. package/dist/index.d.ts +33 -0
  48. package/dist/index.js +211 -118
  49. package/dist/init-cloudflare.d.ts +43 -0
  50. package/dist/init-cloudflare.js +839 -0
  51. package/dist/init-platform.d.ts +40 -0
  52. package/dist/init-platform.js +195 -0
  53. package/dist/init.d.ts +16 -38
  54. package/dist/init.js +208 -97
  55. package/dist/node_modules/.pnpm/am-i-vibing@0.5.0/node_modules/am-i-vibing/dist/detector-1yx2Hoe0.js +294 -0
  56. package/dist/node_modules/.pnpm/process-ancestry@0.1.0/node_modules/process-ancestry/dist/index.js +94 -0
  57. package/dist/{cloudflare → packages/cloudflare}/src/cache/cdn-adapter.runtime.js +1 -1
  58. package/dist/{cloudflare → packages/cloudflare}/src/cache/kv-data-adapter.runtime.d.ts +2 -2
  59. package/dist/{cloudflare → packages/cloudflare}/src/cache/kv-data-adapter.runtime.js +1 -1
  60. package/dist/packages/cloudflare/src/deploy-config.js +150 -0
  61. package/dist/packages/cloudflare/src/deploy-help.js +55 -0
  62. package/dist/packages/cloudflare/src/deploy.js +276 -0
  63. package/dist/{cloudflare → packages/cloudflare/src}/tpr.d.ts +4 -41
  64. package/dist/{cloudflare → packages/cloudflare/src}/tpr.js +18 -15
  65. package/dist/plugins/ast-scope.d.ts +16 -0
  66. package/dist/plugins/ast-scope.js +62 -0
  67. package/dist/plugins/ast-utils.d.ts +27 -1
  68. package/dist/plugins/ast-utils.js +32 -1
  69. package/dist/plugins/css-module-imports.d.ts +14 -0
  70. package/dist/plugins/css-module-imports.js +59 -0
  71. package/dist/plugins/extensionless-dynamic-import.js +2 -2
  72. package/dist/plugins/ignore-dynamic-requests.d.ts +11 -0
  73. package/dist/plugins/ignore-dynamic-requests.js +530 -0
  74. package/dist/plugins/middleware-server-only.d.ts +8 -6
  75. package/dist/plugins/middleware-server-only.js +8 -7
  76. package/dist/plugins/optimize-imports.js +1 -1
  77. package/dist/plugins/typeof-window.d.ts +1 -1
  78. package/dist/plugins/typeof-window.js +28 -56
  79. package/dist/routing/app-route-graph.d.ts +29 -4
  80. package/dist/routing/app-route-graph.js +182 -40
  81. package/dist/routing/app-router.d.ts +5 -0
  82. package/dist/routing/app-router.js +5 -0
  83. package/dist/routing/file-matcher.d.ts +8 -0
  84. package/dist/routing/file-matcher.js +10 -1
  85. package/dist/routing/pages-router.js +2 -2
  86. package/dist/server/api-handler.js +9 -14
  87. package/dist/server/app-browser-action-result.d.ts +4 -1
  88. package/dist/server/app-browser-action-result.js +8 -1
  89. package/dist/server/app-browser-entry.js +194 -190
  90. package/dist/server/app-browser-history-controller.d.ts +2 -1
  91. package/dist/server/app-browser-history-controller.js +6 -2
  92. package/dist/server/app-browser-interception-context.d.ts +1 -0
  93. package/dist/server/app-browser-interception-context.js +4 -2
  94. package/dist/server/app-browser-navigation-controller.d.ts +2 -0
  95. package/dist/server/app-browser-navigation-controller.js +60 -31
  96. package/dist/server/app-browser-server-action-client.d.ts +32 -0
  97. package/dist/server/app-browser-server-action-client.js +127 -0
  98. package/dist/server/app-browser-state.d.ts +11 -1
  99. package/dist/server/app-browser-state.js +25 -8
  100. package/dist/server/app-browser-visible-commit.d.ts +6 -1
  101. package/dist/server/app-browser-visible-commit.js +43 -25
  102. package/dist/server/app-elements-wire.d.ts +9 -2
  103. package/dist/server/app-elements-wire.js +8 -1
  104. package/dist/server/app-elements.d.ts +2 -2
  105. package/dist/server/app-elements.js +4 -3
  106. package/dist/server/app-fallback-renderer.d.ts +5 -2
  107. package/dist/server/app-fallback-renderer.js +15 -7
  108. package/dist/server/app-hydration-cache-publication.d.ts +11 -0
  109. package/dist/server/app-hydration-cache-publication.js +43 -0
  110. package/dist/server/app-middleware.d.ts +4 -3
  111. package/dist/server/app-middleware.js +8 -3
  112. package/dist/server/app-optimistic-routing.js +11 -4
  113. package/dist/server/app-page-boundary-render.d.ts +3 -0
  114. package/dist/server/app-page-boundary-render.js +14 -3
  115. package/dist/server/app-page-cache-finalizer.d.ts +1 -0
  116. package/dist/server/app-page-cache-finalizer.js +10 -3
  117. package/dist/server/app-page-cache-render.d.ts +1 -0
  118. package/dist/server/app-page-cache-render.js +8 -4
  119. package/dist/server/app-page-cache.d.ts +1 -0
  120. package/dist/server/app-page-cache.js +5 -2
  121. package/dist/server/app-page-dispatch.d.ts +33 -4
  122. package/dist/server/app-page-dispatch.js +63 -90
  123. package/dist/server/app-page-element-builder.d.ts +9 -2
  124. package/dist/server/app-page-element-builder.js +114 -23
  125. package/dist/server/app-page-head.d.ts +16 -1
  126. package/dist/server/app-page-head.js +44 -22
  127. package/dist/server/app-page-params.d.ts +2 -1
  128. package/dist/server/app-page-params.js +8 -1
  129. package/dist/server/app-page-ppr-runtime.d.ts +7 -0
  130. package/dist/server/app-page-ppr-runtime.js +70 -0
  131. package/dist/server/app-page-probe.d.ts +1 -0
  132. package/dist/server/app-page-probe.js +6 -1
  133. package/dist/server/app-page-render-identity.d.ts +1 -0
  134. package/dist/server/app-page-render-identity.js +1 -1
  135. package/dist/server/app-page-render.d.ts +4 -1
  136. package/dist/server/app-page-render.js +26 -3
  137. package/dist/server/app-page-request.d.ts +22 -1
  138. package/dist/server/app-page-request.js +92 -15
  139. package/dist/server/app-page-route-wiring.d.ts +14 -2
  140. package/dist/server/app-page-route-wiring.js +61 -25
  141. package/dist/server/app-page-search-params-observation.d.ts +4 -2
  142. package/dist/server/app-page-search-params-observation.js +11 -7
  143. package/dist/server/app-page-segment-state.d.ts +2 -1
  144. package/dist/server/app-page-segment-state.js +3 -1
  145. package/dist/server/app-page-stream.d.ts +5 -0
  146. package/dist/server/app-page-stream.js +3 -1
  147. package/dist/server/app-ppr-fallback-shell-render.d.ts +4 -3
  148. package/dist/server/app-route-handler-dispatch.js +1 -0
  149. package/dist/server/app-route-handler-execution.js +7 -2
  150. package/dist/server/app-route-handler-response.js +1 -0
  151. package/dist/server/app-route-handler-runtime.js +1 -1
  152. package/dist/server/app-route-module-loader.d.ts +2 -0
  153. package/dist/server/app-route-module-loader.js +1 -0
  154. package/dist/server/app-router-entry.js +16 -8
  155. package/dist/server/app-rsc-errors.js +7 -1
  156. package/dist/server/app-rsc-handler.d.ts +3 -1
  157. package/dist/server/app-rsc-handler.js +67 -39
  158. package/dist/server/app-rsc-request-normalization.d.ts +3 -2
  159. package/dist/server/app-rsc-request-normalization.js +6 -3
  160. package/dist/server/app-rsc-route-matching.d.ts +7 -0
  161. package/dist/server/app-rsc-route-matching.js +36 -3
  162. package/dist/server/app-segment-config.d.ts +12 -0
  163. package/dist/server/app-segment-config.js +91 -5
  164. package/dist/server/app-server-action-execution.d.ts +5 -0
  165. package/dist/server/app-server-action-execution.js +94 -33
  166. package/dist/server/app-ssr-entry.d.ts +3 -0
  167. package/dist/server/app-ssr-entry.js +19 -8
  168. package/dist/server/app-ssr-stream.d.ts +7 -3
  169. package/dist/server/app-ssr-stream.js +10 -6
  170. package/dist/server/app-static-generation.d.ts +1 -0
  171. package/dist/server/app-static-generation.js +1 -0
  172. package/dist/server/app-visited-response-cache.d.ts +6 -0
  173. package/dist/server/app-visited-response-cache.js +3 -1
  174. package/dist/server/client-trace-metadata.js +26 -0
  175. package/dist/server/default-global-not-found-module.d.ts +14 -0
  176. package/dist/server/default-global-not-found-module.js +14 -0
  177. package/dist/server/dev-route-files.js +4 -0
  178. package/dist/server/dev-server.js +19 -18
  179. package/dist/server/dev-stack-sourcemap.d.ts +1 -1
  180. package/dist/server/dev-stack-sourcemap.js +1 -1
  181. package/dist/server/fetch-handler.d.ts +2 -0
  182. package/dist/server/fetch-handler.js +18 -0
  183. package/dist/server/headers.d.ts +5 -15
  184. package/dist/server/headers.js +4 -15
  185. package/dist/server/image-optimization.d.ts +51 -1
  186. package/dist/server/image-optimization.js +52 -2
  187. package/dist/server/implicit-tags.js +1 -1
  188. package/dist/server/isr-cache.d.ts +1 -1
  189. package/dist/server/isr-cache.js +2 -2
  190. package/dist/server/metadata-routes.d.ts +3 -1
  191. package/dist/server/metadata-routes.js +12 -2
  192. package/dist/server/middleware-runtime.js +6 -1
  193. package/dist/server/navigation-planner.d.ts +1 -0
  194. package/dist/server/navigation-planner.js +14 -3
  195. package/dist/server/pages-api-route.js +2 -2
  196. package/dist/server/pages-asset-tags.d.ts +4 -6
  197. package/dist/server/pages-asset-tags.js +12 -12
  198. package/dist/server/pages-client-assets.d.ts +12 -0
  199. package/dist/server/pages-client-assets.js +10 -0
  200. package/dist/server/pages-node-compat.d.ts +8 -1
  201. package/dist/server/pages-node-compat.js +32 -4
  202. package/dist/server/pages-page-data.d.ts +24 -1
  203. package/dist/server/pages-page-data.js +45 -24
  204. package/dist/server/pages-page-handler.d.ts +2 -1
  205. package/dist/server/pages-page-handler.js +19 -12
  206. package/dist/server/pages-page-response.d.ts +7 -0
  207. package/dist/server/pages-page-response.js +4 -1
  208. package/dist/server/pages-request-pipeline.d.ts +2 -0
  209. package/dist/server/pages-request-pipeline.js +25 -1
  210. package/dist/server/pages-router-entry.d.ts +30 -0
  211. package/dist/server/pages-router-entry.js +108 -0
  212. package/dist/server/prerender-manifest.d.ts +3 -1
  213. package/dist/server/prerender-route-params.js +1 -1
  214. package/dist/server/prod-server.d.ts +1 -1
  215. package/dist/server/prod-server.js +48 -26
  216. package/dist/server/request-pipeline.js +1 -0
  217. package/dist/server/seed-cache.js +4 -4
  218. package/dist/server/worker-utils.d.ts +2 -1
  219. package/dist/server/worker-utils.js +7 -1
  220. package/dist/shims/app-router-scroll-state.d.ts +1 -0
  221. package/dist/shims/app-router-scroll-state.js +1 -0
  222. package/dist/shims/app-router-scroll.js +2 -1
  223. package/dist/shims/cache.js +19 -15
  224. package/dist/shims/cdn-cache.js +1 -1
  225. package/dist/shims/dynamic-preload-chunks.js +2 -1
  226. package/dist/shims/error-boundary.d.ts +19 -1
  227. package/dist/shims/error-boundary.js +11 -1
  228. package/dist/shims/form.d.ts +3 -1
  229. package/dist/shims/form.js +37 -43
  230. package/dist/shims/headers.d.ts +9 -1
  231. package/dist/shims/headers.js +31 -6
  232. package/dist/shims/image.js +75 -14
  233. package/dist/shims/internal/app-route-detection.d.ts +2 -17
  234. package/dist/shims/internal/app-route-detection.js +4 -17
  235. package/dist/shims/internal/hybrid-client-route-owner-direct.d.ts +23 -0
  236. package/dist/shims/internal/hybrid-client-route-owner-direct.js +51 -0
  237. package/dist/shims/internal/hybrid-client-route-owner.d.ts +2 -15
  238. package/dist/shims/internal/hybrid-client-route-owner.js +9 -60
  239. package/dist/shims/internal/pages-data-fetch-dedup.d.ts +9 -5
  240. package/dist/shims/internal/pages-data-fetch-dedup.js +73 -14
  241. package/dist/shims/internal/pages-data-target.d.ts +10 -9
  242. package/dist/shims/internal/pages-data-target.js +91 -12
  243. package/dist/shims/internal/pages-router-components.d.ts +7 -0
  244. package/dist/shims/internal/pages-router-components.js +13 -0
  245. package/dist/shims/layout-segment-context.d.ts +4 -1
  246. package/dist/shims/layout-segment-context.js +18 -4
  247. package/dist/shims/link.js +70 -37
  248. package/dist/shims/metadata.d.ts +3 -2
  249. package/dist/shims/metadata.js +8 -4
  250. package/dist/shims/navigation.d.ts +5 -1
  251. package/dist/shims/navigation.js +45 -10
  252. package/dist/shims/navigation.react-server.js +1 -1
  253. package/dist/shims/root-params.d.ts +15 -1
  254. package/dist/shims/root-params.js +21 -1
  255. package/dist/shims/router.d.ts +5 -7
  256. package/dist/shims/router.js +374 -94
  257. package/dist/shims/server.js +3 -2
  258. package/dist/shims/slot.js +3 -6
  259. package/dist/typegen.js +6 -5
  260. package/dist/utils/client-runtime-metadata.d.ts +2 -18
  261. package/dist/utils/client-runtime-metadata.js +31 -22
  262. package/dist/utils/dev-stack-sourcemap-endpoint.d.ts +4 -0
  263. package/dist/{server → utils}/dev-stack-sourcemap-endpoint.js +1 -1
  264. package/dist/utils/domain-locale.d.ts +6 -3
  265. package/dist/{server → utils}/middleware-request-headers.d.ts +1 -1
  266. package/dist/{server → utils}/middleware-request-headers.js +2 -2
  267. package/dist/utils/path.d.ts +2 -1
  268. package/dist/utils/path.js +1 -1
  269. package/dist/utils/project.d.ts +52 -2
  270. package/dist/utils/project.js +230 -5
  271. package/dist/utils/protocol-headers.d.ts +17 -0
  272. package/dist/utils/protocol-headers.js +17 -0
  273. package/dist/utils/react-version.d.ts +4 -0
  274. package/dist/utils/react-version.js +44 -0
  275. package/package.json +53 -4
  276. package/dist/deploy.d.ts +0 -190
  277. package/dist/deploy.js +0 -1033
  278. package/dist/server/dev-stack-sourcemap-endpoint.d.ts +0 -4
  279. /package/dist/{cloudflare → packages/cloudflare}/src/utils/cache-control-metadata.js +0 -0
@@ -0,0 +1,44 @@
1
+ import { createRequire } from "node:module";
2
+ import fs from "node:fs";
3
+ import path from "node:path";
4
+ //#region src/utils/react-version.ts
5
+ function getDependencyUpgradeDeps(root, recommendations) {
6
+ const req = createRequire(path.join(root, "package.json"));
7
+ for (const [dependency, recommendation] of Object.entries(recommendations)) try {
8
+ const version = findPackageVersion(req.resolve(dependency), dependency);
9
+ if (version && isVersionBelow(version, recommendation.minimumVersion)) return recommendation.upgrades;
10
+ } catch {
11
+ continue;
12
+ }
13
+ return [];
14
+ }
15
+ function getReactUpgradeDeps(root) {
16
+ return getDependencyUpgradeDeps(root, { react: {
17
+ minimumVersion: [
18
+ 19,
19
+ 2,
20
+ 6
21
+ ],
22
+ upgrades: ["react@latest", "react-dom@latest"]
23
+ } });
24
+ }
25
+ function isVersionBelow(version, minimum) {
26
+ const current = version.split(".").map((part) => parseInt(part, 10));
27
+ for (let index = 0; index < minimum.length; index++) if ((current[index] ?? 0) !== minimum[index]) return (current[index] ?? 0) < minimum[index];
28
+ return false;
29
+ }
30
+ /** Walk up from a resolved module entry to find its package version. */
31
+ function findPackageVersion(resolvedEntry, packageName) {
32
+ let dir = path.dirname(resolvedEntry);
33
+ while (dir !== path.dirname(dir)) {
34
+ const candidate = path.join(dir, "package.json");
35
+ try {
36
+ const pkg = JSON.parse(fs.readFileSync(candidate, "utf-8"));
37
+ if (pkg.name === packageName) return pkg.version ?? null;
38
+ } catch {}
39
+ dir = path.dirname(dir);
40
+ }
41
+ return null;
42
+ }
43
+ //#endregion
44
+ export { getReactUpgradeDeps };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vinext",
3
- "version": "0.1.7",
3
+ "version": "0.2.0",
4
4
  "description": "Run Next.js apps on Vite. Drop-in replacement for the next CLI.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -53,10 +53,50 @@
53
53
  "types": "./dist/server/pages-request-pipeline.d.ts",
54
54
  "import": "./dist/server/pages-request-pipeline.js"
55
55
  },
56
+ "./server/pages-client-assets": {
57
+ "types": "./dist/server/pages-client-assets.d.ts",
58
+ "import": "./dist/server/pages-client-assets.js"
59
+ },
60
+ "./server/fetch-handler": {
61
+ "types": "./dist/server/fetch-handler.d.ts",
62
+ "import": "./dist/server/fetch-handler.js"
63
+ },
56
64
  "./server/app-router-entry": {
57
65
  "types": "./dist/server/app-router-entry.d.ts",
58
66
  "import": "./dist/server/app-router-entry.js"
59
67
  },
68
+ "./server/pages-router-entry": {
69
+ "types": "./dist/server/pages-router-entry.d.ts",
70
+ "import": "./dist/server/pages-router-entry.js"
71
+ },
72
+ "./internal/server/headers": {
73
+ "types": "./dist/server/headers.d.ts",
74
+ "import": "./dist/server/headers.js"
75
+ },
76
+ "./internal/server/isr-cache": {
77
+ "types": "./dist/server/isr-cache.d.ts",
78
+ "import": "./dist/server/isr-cache.js"
79
+ },
80
+ "./internal/server/app-page-cache": {
81
+ "types": "./dist/server/app-page-cache.d.ts",
82
+ "import": "./dist/server/app-page-cache.js"
83
+ },
84
+ "./internal/build/run-prerender": {
85
+ "types": "./dist/build/run-prerender.d.ts",
86
+ "import": "./dist/build/run-prerender.js"
87
+ },
88
+ "./internal/config/dotenv": {
89
+ "types": "./dist/config/dotenv.d.ts",
90
+ "import": "./dist/config/dotenv.js"
91
+ },
92
+ "./internal/config/next-config": {
93
+ "types": "./dist/config/next-config.d.ts",
94
+ "import": "./dist/config/next-config.js"
95
+ },
96
+ "./internal/config/prerender": {
97
+ "types": "./dist/config/prerender.d.ts",
98
+ "import": "./dist/config/prerender.js"
99
+ },
60
100
  "./server/app-rsc-handler": {
61
101
  "types": "./dist/server/app-rsc-handler.d.ts",
62
102
  "import": "./dist/server/app-rsc-handler.js"
@@ -84,6 +124,10 @@
84
124
  "./utils/query": {
85
125
  "types": "./dist/utils/query.d.ts",
86
126
  "import": "./dist/utils/query.js"
127
+ },
128
+ "./internal/utils/project": {
129
+ "types": "./dist/utils/project.d.ts",
130
+ "import": "./dist/utils/project.js"
87
131
  }
88
132
  },
89
133
  "dependencies": {
@@ -93,7 +137,6 @@
93
137
  "ipaddr.js": "^2.1.0",
94
138
  "magic-string": "^0.30.21",
95
139
  "vite-plugin-commonjs": "^0.10.4",
96
- "vite-tsconfig-paths": "^6.1.1",
97
140
  "web-vitals": "^4.2.4"
98
141
  },
99
142
  "devDependencies": {
@@ -102,10 +145,12 @@
102
145
  "@types/react-dom": "^19.2.3",
103
146
  "@vitejs/plugin-react": "^6.0.1",
104
147
  "@vitejs/plugin-rsc": "^0.5.27",
148
+ "am-i-vibing": "^0.5.0",
105
149
  "react-server-dom-webpack": "^19.2.7",
106
150
  "vite": "npm:@voidzero-dev/vite-plus-core@0.2.1",
107
151
  "vite-plus": "0.2.1",
108
- "@vinext/cloudflare": "0.1.2"
152
+ "vite-tsconfig-paths": "^6.1.1",
153
+ "@vinext/cloudflare": "0.2.0"
109
154
  },
110
155
  "peerDependencies": {
111
156
  "@mdx-js/rollup": "^3.0.0",
@@ -114,7 +159,8 @@
114
159
  "react": "^19.2.6",
115
160
  "react-dom": "^19.2.6",
116
161
  "react-server-dom-webpack": "^19.2.6",
117
- "vite": "^7.0.0 || ^8.0.0"
162
+ "vite": "^7.0.0 || ^8.0.0",
163
+ "vite-tsconfig-paths": "^6.1.1"
118
164
  },
119
165
  "peerDependenciesMeta": {
120
166
  "@mdx-js/rollup": {
@@ -125,6 +171,9 @@
125
171
  },
126
172
  "react-server-dom-webpack": {
127
173
  "optional": true
174
+ },
175
+ "vite-tsconfig-paths": {
176
+ "optional": true
128
177
  }
129
178
  },
130
179
  "engines": {
package/dist/deploy.d.ts DELETED
@@ -1,190 +0,0 @@
1
- import { ensureESModule as ensureESModule$1, renameCJSConfigs as renameCJSConfigs$1 } from "./utils/project.js";
2
- import { execFileSync } from "node:child_process";
3
-
4
- //#region src/deploy.d.ts
5
- type DeployOptions = {
6
- /** Project root directory */root: string; /** Deploy to preview environment (default: production) */
7
- preview?: boolean; /** Wrangler environment name from wrangler.jsonc env.<name> */
8
- env?: string; /** Custom project name for the Worker */
9
- name?: string; /** Skip the build step (assume already built) */
10
- skipBuild?: boolean; /** Dry run — generate config files but don't build or deploy */
11
- dryRun?: boolean; /** Pre-render all discovered routes into the dist output after building */
12
- prerenderAll?: boolean; /** Maximum number of routes to prerender in parallel */
13
- prerenderConcurrency?: number; /** Enable experimental TPR (Traffic-aware Pre-Rendering) */
14
- experimentalTPR?: boolean; /** TPR: traffic coverage percentage target (0–100, default: 90) */
15
- tprCoverage?: number; /** TPR: hard cap on number of pages to pre-render (default: 1000) */
16
- tprLimit?: number; /** TPR: analytics lookback window in hours (default: 24) */
17
- tprWindow?: number;
18
- };
19
- declare function parseDeployArgs(args: string[]): {
20
- help: boolean;
21
- preview: boolean;
22
- env: string | undefined;
23
- name: string | undefined;
24
- skipBuild: boolean;
25
- dryRun: boolean;
26
- prerenderAll: boolean;
27
- prerenderConcurrency: number | undefined;
28
- experimentalTPR: boolean;
29
- tprCoverage: number | undefined;
30
- tprLimit: number | undefined;
31
- tprWindow: number | undefined;
32
- };
33
- type ProjectInfo = {
34
- root: string;
35
- isAppRouter: boolean;
36
- isPagesRouter: boolean;
37
- hasViteConfig: boolean;
38
- hasWranglerConfig: boolean;
39
- hasWorkerEntry: boolean;
40
- hasCloudflarePlugin: boolean;
41
- hasRscPlugin: boolean;
42
- hasWrangler: boolean;
43
- projectName: string; /** Pages that use `revalidate` (ISR) */
44
- hasISR: boolean; /** package.json has "type": "module" */
45
- hasTypeModule: boolean; /** .mdx files detected in app/ or pages/ */
46
- hasMDX: boolean; /** CodeHike is a dependency */
47
- hasCodeHike: boolean; /** Native Node modules that need stubbing for Workers */
48
- nativeModulesToStub: string[];
49
- };
50
- /** Check whether a wrangler config file exists in the given directory. */
51
- declare function hasWranglerConfig(root: string): boolean;
52
- /**
53
- * Build the error message thrown when cloudflare() is missing from the Vite config.
54
- * Shared between the build-time guard (index.ts configResolved) and the
55
- * deploy-time guard (deploy.ts deploy()).
56
- */
57
- declare function formatMissingCloudflarePluginError(options: {
58
- isAppRouter: boolean;
59
- configFile?: string;
60
- }): string;
61
- declare function detectProject(root: string): ProjectInfo;
62
- /** @see {@link _ensureESModule} */
63
- declare const ensureESModule: typeof ensureESModule$1;
64
- /** @see {@link _renameCJSConfigs} */
65
- declare const renameCJSConfigs: typeof renameCJSConfigs$1;
66
- /** Generate wrangler.jsonc content */
67
- declare function generateWranglerConfig(info: ProjectInfo): string;
68
- /** Generate worker/index.ts for App Router */
69
- declare function generateAppRouterWorkerEntry(): string;
70
- /** Generate worker/index.ts for Pages Router */
71
- declare function generatePagesRouterWorkerEntry(): string;
72
- /** Generate vite.config.ts for App Router */
73
- declare function generateAppRouterViteConfig(info?: ProjectInfo): string;
74
- /** Generate vite.config.ts for Pages Router */
75
- declare function generatePagesRouterViteConfig(info?: ProjectInfo): string;
76
- type MissingDep = {
77
- name: string;
78
- version: string;
79
- };
80
- /**
81
- * Check if a package is resolvable from a given root directory using
82
- * Node's module resolution (createRequire). Handles hoisting, pnpm
83
- * symlinks, monorepos, and Yarn PnP correctly.
84
- */
85
- declare function isPackageResolvable(root: string, packageName: string): boolean;
86
- declare function getMissingDeps(info: ProjectInfo, /** Override for testing — defaults to `isPackageResolvable` */
87
-
88
- _isResolvable?: (root: string, pkg: string) => boolean): MissingDep[];
89
- type GeneratedFile = {
90
- path: string;
91
- content: string;
92
- description: string;
93
- };
94
- /**
95
- * Check whether an existing vite.config file already imports and uses the
96
- * Cloudflare Vite plugin. This is a heuristic text scan — it doesn't execute
97
- * the config — so it may produce false negatives for unusual configurations.
98
- *
99
- * Returns true if `@cloudflare/vite-plugin` appears to be configured, false
100
- * if it is missing (meaning the build will fail with "could not resolve
101
- * virtual:vinext-rsc-entry").
102
- */
103
- declare function viteConfigHasCloudflarePlugin(root: string): boolean;
104
- /**
105
- * Detect whether the Vite config assigns a CDN or data cache adapter — i.e. the
106
- * `cdn` or `data` field of the `vinext({ cache })` option is given a value.
107
- * This is a source-level check on those exact object fields, not a fuzzy scan
108
- * for adapter names. Mirrors {@link viteConfigHasCloudflarePlugin}'s leniency:
109
- * an unreadable or absent config is treated as configured so a deploy is never
110
- * blocked on a false negative.
111
- */
112
- declare function viteConfigHasCacheAdapter(root: string): boolean;
113
- /**
114
- * Detect whether an existing user-authored Worker entry wires up a cache
115
- * backend imperatively via one of the `setCacheHandler` / `setDataCacheHandler`
116
- * / `setCdnCacheAdapter` setters. These setters are deprecated in favour of the
117
- * declarative `vinext({ cache })` option, but older apps that scaffolded a KV
118
- * cache handler into their Worker entry must keep working — so a deploy should
119
- * not be blocked when the Worker entry already configures a backend.
120
- *
121
- * This is a heuristic text scan (it doesn't execute the entry), mirroring
122
- * {@link viteConfigHasCacheAdapter}'s leniency: an unreadable Worker entry is
123
- * treated as configured so a deploy is never blocked on a false negative. A
124
- * missing Worker entry returns false (nothing to inspect — defer to other
125
- * checks).
126
- */
127
- declare function workerEntryHasCacheHandler(root: string): boolean;
128
- /**
129
- * Build the error thrown when an ISR/cached app is deployed without a cache
130
- * adapter configured in the Vite config. Production deployments need a
131
- * persistent cache backend; vinext no longer scaffolds one into the Worker
132
- * entry, so it must be declared via `vinext({ cache })`.
133
- */
134
- declare function formatMissingCacheAdapterError(options: {
135
- configFile?: string;
136
- }): string;
137
- declare function getFilesToGenerate(info: ProjectInfo): GeneratedFile[];
138
- /**
139
- * Run a function with `process.env.CLOUDFLARE_ENV` set to the given value,
140
- * restoring the previous state (whether set or absent) after the function
141
- * resolves or throws.
142
- *
143
- * The `@cloudflare/vite-plugin` reads `CLOUDFLARE_ENV` from `process.env` to
144
- * drive the multi-environment merge applied to the emitted `wrangler.json`.
145
- * Without this propagation the `--env <name>` CLI flag is silently ignored at
146
- * build time and the top-level config is emitted regardless. See issue #1210.
147
- *
148
- * Passing `undefined` is a no-op; the callback runs with `process.env` untouched.
149
- */
150
- declare function withCloudflareEnv<T>(env: string | undefined, fn: () => Promise<T>): Promise<T>;
151
- type WranglerDeployArgs = {
152
- args: string[];
153
- env: string | undefined;
154
- };
155
- declare function validateWranglerEnvName(env: string): string;
156
- declare function buildWranglerDeployArgs(options: Pick<DeployOptions, "preview" | "env">): WranglerDeployArgs;
157
- /**
158
- * Resolve Wrangler's JavaScript CLI entrypoint in node_modules.
159
- *
160
- * Invoking the JavaScript file through `process.execPath` avoids the `.cmd`
161
- * shim and command shell that package managers create on Windows.
162
- */
163
- declare function resolveWranglerBin(root: string, resolvePackageJson?: (root: string) => string | null): string;
164
- declare function buildNodeCliInvocation(scriptPath: string, args: string[], nodeExecutable?: string): {
165
- file: string;
166
- args: string[];
167
- };
168
- declare function buildWranglerInvocation(root: string, options: Pick<DeployOptions, "preview" | "env">, nodeExecutable?: string): {
169
- file: string;
170
- args: string[];
171
- env: string | undefined;
172
- };
173
- declare function runWranglerDeploy(root: string, options: Pick<DeployOptions, "preview" | "env">, execute?: typeof execFileSync): string;
174
- /**
175
- * Read the prerender manifest and inject pregenerated concrete paths into the
176
- * App Router Worker bundle so the PPR fallback-shell guard is populated at
177
- * module init time without calling `seedMemoryCacheFromPrerender`.
178
- *
179
- * The paths are injected as `globalThis.__VINEXT_PREGENERATED_CONCRETE_PATHS`
180
- * wrapped in replaceable marker comments, and consumed by
181
- * `initPregeneratedPathsFromGlobals` in the generated RSC entry.
182
- *
183
- * Idempotent: repeated calls strip the previous injection before writing the
184
- * new one. If the manifest is missing, corrupt, or empty, any prior injection
185
- * is stripped and nothing new is written — failing closed to empty.
186
- */
187
- declare function injectPregeneratedConcretePaths(root: string): void;
188
- declare function deploy(options: DeployOptions): Promise<void>;
189
- //#endregion
190
- export { buildNodeCliInvocation, buildWranglerDeployArgs, buildWranglerInvocation, deploy, detectProject, ensureESModule, formatMissingCacheAdapterError, formatMissingCloudflarePluginError, generateAppRouterViteConfig, generateAppRouterWorkerEntry, generatePagesRouterViteConfig, generatePagesRouterWorkerEntry, generateWranglerConfig, getFilesToGenerate, getMissingDeps, hasWranglerConfig, injectPregeneratedConcretePaths, isPackageResolvable, parseDeployArgs, renameCJSConfigs, resolveWranglerBin, runWranglerDeploy, validateWranglerEnvName, viteConfigHasCacheAdapter, viteConfigHasCloudflarePlugin, withCloudflareEnv, workerEntryHasCacheHandler };