vinext 0.0.30 → 0.0.31

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 (435) hide show
  1. package/README.md +12 -6
  2. package/dist/build/prerender.d.ts +188 -0
  3. package/dist/build/prerender.js +675 -0
  4. package/dist/build/prerender.js.map +1 -0
  5. package/dist/build/report.d.ts +45 -46
  6. package/dist/build/report.js +247 -276
  7. package/dist/build/report.js.map +1 -1
  8. package/dist/build/run-prerender.d.ts +62 -0
  9. package/dist/build/run-prerender.js +183 -0
  10. package/dist/build/run-prerender.js.map +1 -0
  11. package/dist/build/server-manifest.d.ts +19 -0
  12. package/dist/build/server-manifest.js +29 -0
  13. package/dist/build/server-manifest.js.map +1 -0
  14. package/dist/build/static-export.d.ts +51 -66
  15. package/dist/build/static-export.js +51 -545
  16. package/dist/build/static-export.js.map +1 -1
  17. package/dist/check.d.ts +26 -24
  18. package/dist/check.js +591 -571
  19. package/dist/check.js.map +1 -1
  20. package/dist/cli.d.ts +1 -15
  21. package/dist/cli.js +430 -491
  22. package/dist/cli.js.map +1 -1
  23. package/dist/client/entry.d.ts +1 -2
  24. package/dist/client/entry.js +49 -62
  25. package/dist/client/entry.js.map +1 -1
  26. package/dist/client/validate-module-path.d.ts +4 -1
  27. package/dist/client/validate-module-path.js +23 -28
  28. package/dist/client/validate-module-path.js.map +1 -1
  29. package/dist/client/vinext-next-data.d.ts +15 -20
  30. package/dist/client/vinext-next-data.js +0 -1
  31. package/dist/cloudflare/index.d.ts +3 -8
  32. package/dist/cloudflare/index.js +3 -8
  33. package/dist/cloudflare/kv-cache-handler.d.ts +95 -105
  34. package/dist/cloudflare/kv-cache-handler.js +354 -380
  35. package/dist/cloudflare/kv-cache-handler.js.map +1 -1
  36. package/dist/cloudflare/tpr.d.ts +36 -34
  37. package/dist/cloudflare/tpr.js +460 -603
  38. package/dist/cloudflare/tpr.js.map +1 -1
  39. package/dist/config/config-matchers.d.ts +31 -40
  40. package/dist/config/config-matchers.js +727 -936
  41. package/dist/config/config-matchers.js.map +1 -1
  42. package/dist/config/dotenv.d.ts +18 -11
  43. package/dist/config/dotenv.js +79 -84
  44. package/dist/config/dotenv.js.map +1 -1
  45. package/dist/config/next-config.d.ts +156 -146
  46. package/dist/config/next-config.js +374 -464
  47. package/dist/config/next-config.js.map +1 -1
  48. package/dist/deploy.d.ts +87 -96
  49. package/dist/deploy.js +490 -628
  50. package/dist/deploy.js.map +1 -1
  51. package/dist/entries/app-browser-entry.d.ts +4 -1
  52. package/dist/entries/app-browser-entry.js +12 -8
  53. package/dist/entries/app-browser-entry.js.map +1 -1
  54. package/dist/entries/app-rsc-entry.d.ts +33 -20
  55. package/dist/entries/app-rsc-entry.js +442 -211
  56. package/dist/entries/app-rsc-entry.js.map +1 -1
  57. package/dist/entries/app-ssr-entry.d.ts +9 -1
  58. package/dist/entries/app-ssr-entry.js +61 -28
  59. package/dist/entries/app-ssr-entry.js.map +1 -1
  60. package/dist/entries/pages-client-entry.d.ts +6 -2
  61. package/dist/entries/pages-client-entry.js +30 -33
  62. package/dist/entries/pages-client-entry.js.map +1 -1
  63. package/dist/entries/pages-entry-helpers.d.ts +5 -1
  64. package/dist/entries/pages-entry-helpers.js +17 -14
  65. package/dist/entries/pages-entry-helpers.js.map +1 -1
  66. package/dist/entries/pages-server-entry.d.ts +6 -2
  67. package/dist/entries/pages-server-entry.js +84 -113
  68. package/dist/entries/pages-server-entry.js.map +1 -1
  69. package/dist/index.d.ts +82 -62
  70. package/dist/index.js +2172 -3133
  71. package/dist/index.js.map +1 -1
  72. package/dist/init.d.ts +40 -37
  73. package/dist/init.js +201 -258
  74. package/dist/init.js.map +1 -1
  75. package/dist/plugins/async-hooks-stub.d.ts +7 -3
  76. package/dist/plugins/async-hooks-stub.js +39 -42
  77. package/dist/plugins/async-hooks-stub.js.map +1 -1
  78. package/dist/plugins/client-reference-dedup.d.ts +7 -3
  79. package/dist/plugins/client-reference-dedup.js +63 -88
  80. package/dist/plugins/client-reference-dedup.js.map +1 -1
  81. package/dist/routing/app-router.d.ts +100 -96
  82. package/dist/routing/app-router.js +560 -670
  83. package/dist/routing/app-router.js.map +1 -1
  84. package/dist/routing/file-matcher.d.ts +18 -15
  85. package/dist/routing/file-matcher.js +65 -65
  86. package/dist/routing/file-matcher.js.map +1 -1
  87. package/dist/routing/pages-router.d.ts +23 -24
  88. package/dist/routing/pages-router.js +147 -172
  89. package/dist/routing/pages-router.js.map +1 -1
  90. package/dist/routing/route-trie.d.ts +23 -20
  91. package/dist/routing/route-trie.js +131 -151
  92. package/dist/routing/route-trie.js.map +1 -1
  93. package/dist/routing/route-validation.d.ts +5 -2
  94. package/dist/routing/route-validation.js +98 -130
  95. package/dist/routing/route-validation.js.map +1 -1
  96. package/dist/routing/utils.d.ts +10 -7
  97. package/dist/routing/utils.js +75 -111
  98. package/dist/routing/utils.js.map +1 -1
  99. package/dist/server/api-handler.d.ts +8 -13
  100. package/dist/server/api-handler.js +161 -193
  101. package/dist/server/api-handler.js.map +1 -1
  102. package/dist/server/app-router-entry.d.ts +6 -16
  103. package/dist/server/app-router-entry.js +26 -54
  104. package/dist/server/app-router-entry.js.map +1 -1
  105. package/dist/server/dev-module-runner.d.ts +11 -64
  106. package/dist/server/dev-module-runner.js +89 -101
  107. package/dist/server/dev-module-runner.js.map +1 -1
  108. package/dist/server/dev-origin-check.d.ts +12 -10
  109. package/dist/server/dev-origin-check.js +98 -108
  110. package/dist/server/dev-origin-check.js.map +1 -1
  111. package/dist/server/dev-server.d.ts +17 -14
  112. package/dist/server/dev-server.js +542 -869
  113. package/dist/server/dev-server.js.map +1 -1
  114. package/dist/server/html.d.ts +4 -1
  115. package/dist/server/html.js +25 -26
  116. package/dist/server/html.js.map +1 -1
  117. package/dist/server/image-optimization.d.ts +31 -28
  118. package/dist/server/image-optimization.js +181 -210
  119. package/dist/server/image-optimization.js.map +1 -1
  120. package/dist/server/instrumentation.d.ts +25 -22
  121. package/dist/server/instrumentation.js +110 -122
  122. package/dist/server/instrumentation.js.map +1 -1
  123. package/dist/server/isr-cache.d.ts +16 -26
  124. package/dist/server/isr-cache.js +106 -128
  125. package/dist/server/isr-cache.js.map +1 -1
  126. package/dist/server/metadata-routes.d.ts +85 -88
  127. package/dist/server/metadata-routes.js +270 -317
  128. package/dist/server/metadata-routes.js.map +1 -1
  129. package/dist/server/middleware-codegen.d.ts +7 -4
  130. package/dist/server/middleware-codegen.js +61 -61
  131. package/dist/server/middleware-codegen.js.map +1 -1
  132. package/dist/server/middleware-request-headers.d.ts +8 -6
  133. package/dist/server/middleware-request-headers.js +47 -65
  134. package/dist/server/middleware-request-headers.js.map +1 -1
  135. package/dist/server/middleware.d.ts +31 -47
  136. package/dist/server/middleware.js +273 -404
  137. package/dist/server/middleware.js.map +1 -1
  138. package/dist/server/normalize-path.d.ts +4 -1
  139. package/dist/server/normalize-path.js +33 -47
  140. package/dist/server/normalize-path.js.map +1 -1
  141. package/dist/server/pages-i18n.d.ts +38 -30
  142. package/dist/server/pages-i18n.js +112 -139
  143. package/dist/server/pages-i18n.js.map +1 -1
  144. package/dist/server/prod-server.d.ts +19 -31
  145. package/dist/server/prod-server.js +714 -945
  146. package/dist/server/prod-server.js.map +1 -1
  147. package/dist/server/request-log.d.ts +18 -12
  148. package/dist/server/request-log.js +45 -52
  149. package/dist/server/request-log.js.map +1 -1
  150. package/dist/server/request-pipeline.d.ts +9 -17
  151. package/dist/server/request-pipeline.js +133 -184
  152. package/dist/server/request-pipeline.js.map +1 -1
  153. package/dist/server/worker-utils.d.ts +4 -1
  154. package/dist/server/worker-utils.js +31 -37
  155. package/dist/server/worker-utils.js.map +1 -1
  156. package/dist/shims/amp.d.ts +5 -2
  157. package/dist/shims/amp.js +19 -15
  158. package/dist/shims/amp.js.map +1 -1
  159. package/dist/shims/app.d.ts +8 -10
  160. package/dist/shims/app.js +0 -1
  161. package/dist/shims/cache-runtime.d.ts +20 -45
  162. package/dist/shims/cache-runtime.js +271 -422
  163. package/dist/shims/cache-runtime.js.map +1 -1
  164. package/dist/shims/cache.d.ts +130 -121
  165. package/dist/shims/cache.js +339 -427
  166. package/dist/shims/cache.js.map +1 -1
  167. package/dist/shims/client-only.d.ts +1 -18
  168. package/dist/shims/client-only.js +0 -17
  169. package/dist/shims/compat-router.d.ts +4 -1
  170. package/dist/shims/compat-router.js +23 -19
  171. package/dist/shims/compat-router.js.map +1 -1
  172. package/dist/shims/config.d.ts +7 -5
  173. package/dist/shims/config.js +16 -23
  174. package/dist/shims/config.js.map +1 -1
  175. package/dist/shims/constants.d.ts +119 -118
  176. package/dist/shims/constants.js +159 -164
  177. package/dist/shims/constants.js.map +1 -1
  178. package/dist/shims/document.d.ts +20 -16
  179. package/dist/shims/document.js +41 -22
  180. package/dist/shims/document.js.map +1 -1
  181. package/dist/shims/dynamic.d.ts +13 -22
  182. package/dist/shims/dynamic.js +122 -136
  183. package/dist/shims/dynamic.js.map +1 -1
  184. package/dist/shims/error-boundary.d.ts +22 -15
  185. package/dist/shims/error-boundary.js +81 -79
  186. package/dist/shims/error-boundary.js.map +1 -1
  187. package/dist/shims/error.d.ts +11 -12
  188. package/dist/shims/error.js +35 -39
  189. package/dist/shims/error.js.map +1 -1
  190. package/dist/shims/fetch-cache.d.ts +16 -14
  191. package/dist/shims/fetch-cache.js +437 -645
  192. package/dist/shims/fetch-cache.js.map +1 -1
  193. package/dist/shims/font-google-base.d.ts +28 -26
  194. package/dist/shims/font-google-base.js +238 -325
  195. package/dist/shims/font-google-base.js.map +1 -1
  196. package/dist/shims/font-google.d.ts +3 -3
  197. package/dist/shims/font-google.generated.d.ts +1928 -1924
  198. package/dist/shims/font-google.generated.js +1928 -2133
  199. package/dist/shims/font-google.generated.js.map +1 -1
  200. package/dist/shims/font-google.js +3 -3
  201. package/dist/shims/font-local.d.ts +28 -26
  202. package/dist/shims/font-local.js +204 -260
  203. package/dist/shims/font-local.js.map +1 -1
  204. package/dist/shims/form.d.ts +13 -27
  205. package/dist/shims/form.js +128 -180
  206. package/dist/shims/form.js.map +1 -1
  207. package/dist/shims/head-state.d.ts +8 -13
  208. package/dist/shims/head-state.js +25 -42
  209. package/dist/shims/head-state.js.map +1 -1
  210. package/dist/shims/head.d.ts +16 -20
  211. package/dist/shims/head.js +172 -250
  212. package/dist/shims/head.js.map +1 -1
  213. package/dist/shims/headers.d.ts +84 -78
  214. package/dist/shims/headers.js +447 -575
  215. package/dist/shims/headers.js.map +1 -1
  216. package/dist/shims/i18n-context.d.ts +16 -20
  217. package/dist/shims/i18n-context.js +35 -48
  218. package/dist/shims/i18n-context.js.map +1 -1
  219. package/dist/shims/i18n-state.d.ts +8 -14
  220. package/dist/shims/i18n-state.js +34 -42
  221. package/dist/shims/i18n-state.js.map +1 -1
  222. package/dist/shims/image-config.d.ts +11 -8
  223. package/dist/shims/image-config.js +50 -83
  224. package/dist/shims/image-config.js.map +1 -1
  225. package/dist/shims/image.d.ts +37 -46
  226. package/dist/shims/image.js +283 -308
  227. package/dist/shims/image.js.map +1 -1
  228. package/dist/shims/internal/api-utils.d.ts +7 -4
  229. package/dist/shims/internal/api-utils.js +0 -6
  230. package/dist/shims/internal/app-router-context.d.ts +22 -17
  231. package/dist/shims/internal/app-router-context.js +17 -13
  232. package/dist/shims/internal/app-router-context.js.map +1 -1
  233. package/dist/shims/internal/cookies.d.ts +2 -9
  234. package/dist/shims/internal/cookies.js +2 -9
  235. package/dist/shims/internal/parse-cookie-header.d.ts +4 -1
  236. package/dist/shims/internal/parse-cookie-header.js +29 -29
  237. package/dist/shims/internal/parse-cookie-header.js.map +1 -1
  238. package/dist/shims/internal/router-context.d.ts +6 -1
  239. package/dist/shims/internal/router-context.js +11 -7
  240. package/dist/shims/internal/router-context.js.map +1 -1
  241. package/dist/shims/internal/utils.d.ts +40 -37
  242. package/dist/shims/internal/utils.js +24 -30
  243. package/dist/shims/internal/utils.js.map +1 -1
  244. package/dist/shims/internal/work-unit-async-storage.d.ts +6 -10
  245. package/dist/shims/internal/work-unit-async-storage.js +14 -11
  246. package/dist/shims/internal/work-unit-async-storage.js.map +1 -1
  247. package/dist/shims/layout-segment-context.d.ts +11 -14
  248. package/dist/shims/layout-segment-context.js +24 -23
  249. package/dist/shims/layout-segment-context.js.map +1 -1
  250. package/dist/shims/legacy-image.d.ts +39 -46
  251. package/dist/shims/legacy-image.js +47 -42
  252. package/dist/shims/legacy-image.js.map +1 -1
  253. package/dist/shims/link.d.ts +32 -36
  254. package/dist/shims/link.js +255 -391
  255. package/dist/shims/link.js.map +1 -1
  256. package/dist/shims/metadata.d.ts +210 -202
  257. package/dist/shims/metadata.js +545 -546
  258. package/dist/shims/metadata.js.map +1 -1
  259. package/dist/shims/navigation-state.d.ts +10 -18
  260. package/dist/shims/navigation-state.js +66 -74
  261. package/dist/shims/navigation-state.js.map +1 -1
  262. package/dist/shims/navigation.d.ts +59 -63
  263. package/dist/shims/navigation.js +505 -704
  264. package/dist/shims/navigation.js.map +1 -1
  265. package/dist/shims/og.d.ts +2 -20
  266. package/dist/shims/og.js +2 -19
  267. package/dist/shims/readonly-url-search-params.d.ts +8 -5
  268. package/dist/shims/readonly-url-search-params.js +26 -22
  269. package/dist/shims/readonly-url-search-params.js.map +1 -1
  270. package/dist/shims/request-context.d.ts +8 -5
  271. package/dist/shims/request-context.js +50 -60
  272. package/dist/shims/request-context.js.map +1 -1
  273. package/dist/shims/request-state-types.d.ts +11 -11
  274. package/dist/shims/request-state-types.js +0 -1
  275. package/dist/shims/router-state.d.ts +13 -10
  276. package/dist/shims/router-state.js +34 -43
  277. package/dist/shims/router-state.js.map +1 -1
  278. package/dist/shims/router.d.ts +81 -85
  279. package/dist/shims/router.js +506 -628
  280. package/dist/shims/router.js.map +1 -1
  281. package/dist/shims/script.d.ts +39 -48
  282. package/dist/shims/script.js +107 -160
  283. package/dist/shims/script.js.map +1 -1
  284. package/dist/shims/server-only.d.ts +1 -19
  285. package/dist/shims/server-only.js +0 -18
  286. package/dist/shims/server.d.ts +175 -164
  287. package/dist/shims/server.js +462 -478
  288. package/dist/shims/server.js.map +1 -1
  289. package/dist/shims/unified-request-context.d.ts +20 -20
  290. package/dist/shims/unified-request-context.js +81 -99
  291. package/dist/shims/unified-request-context.js.map +1 -1
  292. package/dist/shims/url-safety.d.ts +4 -1
  293. package/dist/shims/url-safety.js +15 -11
  294. package/dist/shims/url-safety.js.map +1 -1
  295. package/dist/shims/url-utils.d.ts +8 -5
  296. package/dist/shims/url-utils.js +62 -93
  297. package/dist/shims/url-utils.js.map +1 -1
  298. package/dist/shims/web-vitals.d.ts +10 -8
  299. package/dist/shims/web-vitals.js +9 -15
  300. package/dist/shims/web-vitals.js.map +1 -1
  301. package/dist/utils/base-path.d.ts +5 -2
  302. package/dist/utils/base-path.js +21 -19
  303. package/dist/utils/base-path.js.map +1 -1
  304. package/dist/utils/domain-locale.d.ts +17 -9
  305. package/dist/utils/domain-locale.js +36 -56
  306. package/dist/utils/domain-locale.js.map +1 -1
  307. package/dist/utils/hash.d.ts +4 -1
  308. package/dist/utils/hash.js +19 -17
  309. package/dist/utils/hash.js.map +1 -1
  310. package/dist/utils/manifest-paths.d.ts +6 -3
  311. package/dist/utils/manifest-paths.js +15 -16
  312. package/dist/utils/manifest-paths.js.map +1 -1
  313. package/dist/utils/project.d.ts +13 -11
  314. package/dist/utils/project.js +169 -216
  315. package/dist/utils/project.js.map +1 -1
  316. package/dist/utils/query.d.ts +8 -6
  317. package/dist/utils/query.js +57 -67
  318. package/dist/utils/query.js.map +1 -1
  319. package/package.json +10 -9
  320. package/dist/build/report.d.ts.map +0 -1
  321. package/dist/build/static-export.d.ts.map +0 -1
  322. package/dist/check.d.ts.map +0 -1
  323. package/dist/cli.d.ts.map +0 -1
  324. package/dist/client/entry.d.ts.map +0 -1
  325. package/dist/client/validate-module-path.d.ts.map +0 -1
  326. package/dist/client/vinext-next-data.d.ts.map +0 -1
  327. package/dist/client/vinext-next-data.js.map +0 -1
  328. package/dist/cloudflare/index.d.ts.map +0 -1
  329. package/dist/cloudflare/index.js.map +0 -1
  330. package/dist/cloudflare/kv-cache-handler.d.ts.map +0 -1
  331. package/dist/cloudflare/tpr.d.ts.map +0 -1
  332. package/dist/config/config-matchers.d.ts.map +0 -1
  333. package/dist/config/dotenv.d.ts.map +0 -1
  334. package/dist/config/next-config.d.ts.map +0 -1
  335. package/dist/deploy.d.ts.map +0 -1
  336. package/dist/entries/app-browser-entry.d.ts.map +0 -1
  337. package/dist/entries/app-rsc-entry.d.ts.map +0 -1
  338. package/dist/entries/app-ssr-entry.d.ts.map +0 -1
  339. package/dist/entries/pages-client-entry.d.ts.map +0 -1
  340. package/dist/entries/pages-entry-helpers.d.ts.map +0 -1
  341. package/dist/entries/pages-server-entry.d.ts.map +0 -1
  342. package/dist/index.d.ts.map +0 -1
  343. package/dist/init.d.ts.map +0 -1
  344. package/dist/plugins/async-hooks-stub.d.ts.map +0 -1
  345. package/dist/plugins/client-reference-dedup.d.ts.map +0 -1
  346. package/dist/routing/app-router.d.ts.map +0 -1
  347. package/dist/routing/file-matcher.d.ts.map +0 -1
  348. package/dist/routing/pages-router.d.ts.map +0 -1
  349. package/dist/routing/route-trie.d.ts.map +0 -1
  350. package/dist/routing/route-validation.d.ts.map +0 -1
  351. package/dist/routing/utils.d.ts.map +0 -1
  352. package/dist/server/api-handler.d.ts.map +0 -1
  353. package/dist/server/app-router-entry.d.ts.map +0 -1
  354. package/dist/server/dev-module-runner.d.ts.map +0 -1
  355. package/dist/server/dev-origin-check.d.ts.map +0 -1
  356. package/dist/server/dev-server.d.ts.map +0 -1
  357. package/dist/server/html.d.ts.map +0 -1
  358. package/dist/server/image-optimization.d.ts.map +0 -1
  359. package/dist/server/instrumentation.d.ts.map +0 -1
  360. package/dist/server/isr-cache.d.ts.map +0 -1
  361. package/dist/server/metadata-routes.d.ts.map +0 -1
  362. package/dist/server/middleware-codegen.d.ts.map +0 -1
  363. package/dist/server/middleware-request-headers.d.ts.map +0 -1
  364. package/dist/server/middleware.d.ts.map +0 -1
  365. package/dist/server/normalize-path.d.ts.map +0 -1
  366. package/dist/server/pages-i18n.d.ts.map +0 -1
  367. package/dist/server/prod-server.d.ts.map +0 -1
  368. package/dist/server/request-log.d.ts.map +0 -1
  369. package/dist/server/request-pipeline.d.ts.map +0 -1
  370. package/dist/server/worker-utils.d.ts.map +0 -1
  371. package/dist/shims/amp.d.ts.map +0 -1
  372. package/dist/shims/app.d.ts.map +0 -1
  373. package/dist/shims/app.js.map +0 -1
  374. package/dist/shims/cache-runtime.d.ts.map +0 -1
  375. package/dist/shims/cache.d.ts.map +0 -1
  376. package/dist/shims/client-only.d.ts.map +0 -1
  377. package/dist/shims/client-only.js.map +0 -1
  378. package/dist/shims/compat-router.d.ts.map +0 -1
  379. package/dist/shims/config.d.ts.map +0 -1
  380. package/dist/shims/constants.d.ts.map +0 -1
  381. package/dist/shims/document.d.ts.map +0 -1
  382. package/dist/shims/dynamic.d.ts.map +0 -1
  383. package/dist/shims/error-boundary.d.ts.map +0 -1
  384. package/dist/shims/error.d.ts.map +0 -1
  385. package/dist/shims/fetch-cache.d.ts.map +0 -1
  386. package/dist/shims/font-google-base.d.ts.map +0 -1
  387. package/dist/shims/font-google.d.ts.map +0 -1
  388. package/dist/shims/font-google.generated.d.ts.map +0 -1
  389. package/dist/shims/font-google.js.map +0 -1
  390. package/dist/shims/font-local.d.ts.map +0 -1
  391. package/dist/shims/form.d.ts.map +0 -1
  392. package/dist/shims/head-state.d.ts.map +0 -1
  393. package/dist/shims/head.d.ts.map +0 -1
  394. package/dist/shims/headers.d.ts.map +0 -1
  395. package/dist/shims/i18n-context.d.ts.map +0 -1
  396. package/dist/shims/i18n-state.d.ts.map +0 -1
  397. package/dist/shims/image-config.d.ts.map +0 -1
  398. package/dist/shims/image.d.ts.map +0 -1
  399. package/dist/shims/internal/api-utils.d.ts.map +0 -1
  400. package/dist/shims/internal/api-utils.js.map +0 -1
  401. package/dist/shims/internal/app-router-context.d.ts.map +0 -1
  402. package/dist/shims/internal/cookies.d.ts.map +0 -1
  403. package/dist/shims/internal/cookies.js.map +0 -1
  404. package/dist/shims/internal/parse-cookie-header.d.ts.map +0 -1
  405. package/dist/shims/internal/router-context.d.ts.map +0 -1
  406. package/dist/shims/internal/utils.d.ts.map +0 -1
  407. package/dist/shims/internal/work-unit-async-storage.d.ts.map +0 -1
  408. package/dist/shims/layout-segment-context.d.ts.map +0 -1
  409. package/dist/shims/legacy-image.d.ts.map +0 -1
  410. package/dist/shims/link.d.ts.map +0 -1
  411. package/dist/shims/metadata.d.ts.map +0 -1
  412. package/dist/shims/navigation-state.d.ts.map +0 -1
  413. package/dist/shims/navigation.d.ts.map +0 -1
  414. package/dist/shims/og.d.ts.map +0 -1
  415. package/dist/shims/og.js.map +0 -1
  416. package/dist/shims/readonly-url-search-params.d.ts.map +0 -1
  417. package/dist/shims/request-context.d.ts.map +0 -1
  418. package/dist/shims/request-state-types.d.ts.map +0 -1
  419. package/dist/shims/request-state-types.js.map +0 -1
  420. package/dist/shims/router-state.d.ts.map +0 -1
  421. package/dist/shims/router.d.ts.map +0 -1
  422. package/dist/shims/script.d.ts.map +0 -1
  423. package/dist/shims/server-only.d.ts.map +0 -1
  424. package/dist/shims/server-only.js.map +0 -1
  425. package/dist/shims/server.d.ts.map +0 -1
  426. package/dist/shims/unified-request-context.d.ts.map +0 -1
  427. package/dist/shims/url-safety.d.ts.map +0 -1
  428. package/dist/shims/url-utils.d.ts.map +0 -1
  429. package/dist/shims/web-vitals.d.ts.map +0 -1
  430. package/dist/utils/base-path.d.ts.map +0 -1
  431. package/dist/utils/domain-locale.d.ts.map +0 -1
  432. package/dist/utils/hash.d.ts.map +0 -1
  433. package/dist/utils/manifest-paths.d.ts.map +0 -1
  434. package/dist/utils/project.d.ts.map +0 -1
  435. package/dist/utils/query.d.ts.map +0 -1
@@ -1,91 +1,58 @@
1
+ //#region src/shims/image-config.ts
1
2
  /**
2
- * Image remote pattern validation.
3
- *
4
- * Validates remote image URLs against the `images.remotePatterns` and
5
- * `images.domains` config from next.config.js. This prevents SSRF and
6
- * open-redirect attacks by blocking URLs that don't match any configured
7
- * pattern.
8
- *
9
- * Pattern matching follows Next.js semantics:
10
- * - `*` matches a single segment (subdomain in hostname, path segment in pathname)
11
- * - `**` matches any number of segments
12
- * - protocol, port, and search are matched exactly when specified
13
- */
14
- /**
15
- * Convert a glob pattern (with `*` and `**`) to a RegExp.
16
- *
17
- * For hostnames, segments are separated by `.`:
18
- * - `*` matches a single segment (no dots): [^.]+
19
- * - `**` matches any number of segments: .+
20
- *
21
- * For pathnames, segments are separated by `/`:
22
- * - `*` matches a single segment (no slashes): [^/]+
23
- * - `**` matches any number of segments (including empty): .*
24
- *
25
- * Literal characters are escaped for regex safety.
26
- */
3
+ * Convert a glob pattern (with `*` and `**`) to a RegExp.
4
+ *
5
+ * For hostnames, segments are separated by `.`:
6
+ * - `*` matches a single segment (no dots): [^.]+
7
+ * - `**` matches any number of segments: .+
8
+ *
9
+ * For pathnames, segments are separated by `/`:
10
+ * - `*` matches a single segment (no slashes): [^/]+
11
+ * - `**` matches any number of segments (including empty): .*
12
+ *
13
+ * Literal characters are escaped for regex safety.
14
+ */
27
15
  function globToRegex(pattern, separator) {
28
- // Split by ** first, then handle * within each part
29
- let regexStr = "^";
30
- const doubleStar = separator === "." ? ".+" : ".*";
31
- const singleStar = separator === "." ? "[^.]+" : "[^/]+";
32
- const parts = pattern.split("**");
33
- for (let i = 0; i < parts.length; i++) {
34
- if (i > 0) {
35
- regexStr += doubleStar;
36
- }
37
- // Within each part, split by * and escape the literals
38
- const subParts = parts[i].split("*");
39
- for (let j = 0; j < subParts.length; j++) {
40
- if (j > 0) {
41
- regexStr += singleStar;
42
- }
43
- // Escape regex special chars in the literal portion
44
- regexStr += subParts[j].replace(/[.+?^${}()|[\]\\]/g, "\\$&");
45
- }
46
- }
47
- regexStr += "$";
48
- return new RegExp(regexStr);
16
+ let regexStr = "^";
17
+ const doubleStar = separator === "." ? ".+" : ".*";
18
+ const singleStar = separator === "." ? "[^.]+" : "[^/]+";
19
+ const parts = pattern.split("**");
20
+ for (let i = 0; i < parts.length; i++) {
21
+ if (i > 0) regexStr += doubleStar;
22
+ const subParts = parts[i].split("*");
23
+ for (let j = 0; j < subParts.length; j++) {
24
+ if (j > 0) regexStr += singleStar;
25
+ regexStr += subParts[j].replace(/[.+?^${}()|[\]\\]/g, "\\$&");
26
+ }
27
+ }
28
+ regexStr += "$";
29
+ return new RegExp(regexStr);
49
30
  }
50
31
  /**
51
- * Check whether a URL matches a single remote pattern.
52
- * Follows the same semantics as Next.js's matchRemotePattern().
53
- */
54
- export function matchRemotePattern(pattern, url) {
55
- // Protocol check (strip trailing colon for comparison)
56
- if (pattern.protocol !== undefined) {
57
- if (pattern.protocol.replace(/:$/, "") !== url.protocol.replace(/:$/, "")) {
58
- return false;
59
- }
60
- }
61
- // Port check
62
- if (pattern.port !== undefined) {
63
- if (pattern.port !== url.port) {
64
- return false;
65
- }
66
- }
67
- // Hostname check (required field)
68
- if (!globToRegex(pattern.hostname, ".").test(url.hostname)) {
69
- return false;
70
- }
71
- // Search/query string check
72
- if (pattern.search !== undefined) {
73
- if (pattern.search !== url.search) {
74
- return false;
75
- }
76
- }
77
- // Pathname check — defaults to ** (match everything) if not specified
78
- const pathnamePattern = pattern.pathname ?? "**";
79
- if (!globToRegex(pathnamePattern, "/").test(url.pathname)) {
80
- return false;
81
- }
82
- return true;
32
+ * Check whether a URL matches a single remote pattern.
33
+ * Follows the same semantics as Next.js's matchRemotePattern().
34
+ */
35
+ function matchRemotePattern(pattern, url) {
36
+ if (pattern.protocol !== void 0) {
37
+ if (pattern.protocol.replace(/:$/, "") !== url.protocol.replace(/:$/, "")) return false;
38
+ }
39
+ if (pattern.port !== void 0) {
40
+ if (pattern.port !== url.port) return false;
41
+ }
42
+ if (!globToRegex(pattern.hostname, ".").test(url.hostname)) return false;
43
+ if (pattern.search !== void 0) {
44
+ if (pattern.search !== url.search) return false;
45
+ }
46
+ if (!globToRegex(pattern.pathname ?? "**", "/").test(url.pathname)) return false;
47
+ return true;
83
48
  }
84
49
  /**
85
- * Check whether a URL matches any configured remote pattern or legacy domain.
86
- */
87
- export function hasRemoteMatch(domains, remotePatterns, url) {
88
- return (domains.some((domain) => url.hostname === domain) ||
89
- remotePatterns.some((p) => matchRemotePattern(p, url)));
50
+ * Check whether a URL matches any configured remote pattern or legacy domain.
51
+ */
52
+ function hasRemoteMatch(domains, remotePatterns, url) {
53
+ return domains.some((domain) => url.hostname === domain) || remotePatterns.some((p) => matchRemotePattern(p, url));
90
54
  }
55
+ //#endregion
56
+ export { hasRemoteMatch, matchRemotePattern };
57
+
91
58
  //# sourceMappingURL=image-config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"image-config.js","sourceRoot":"","sources":["../../src/shims/image-config.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Image remote pattern validation.\n *\n * Validates remote image URLs against the `images.remotePatterns` and\n * `images.domains` config from next.config.js. This prevents SSRF and\n * open-redirect attacks by blocking URLs that don't match any configured\n * pattern.\n *\n * Pattern matching follows Next.js semantics:\n * - `*` matches a single segment (subdomain in hostname, path segment in pathname)\n * - `**` matches any number of segments\n * - protocol, port, and search are matched exactly when specified\n */\n\nexport interface RemotePattern {\n protocol?: string;\n hostname: string;\n port?: string;\n pathname?: string;\n search?: string;\n}\n\n/**\n * Convert a glob pattern (with `*` and `**`) to a RegExp.\n *\n * For hostnames, segments are separated by `.`:\n * - `*` matches a single segment (no dots): [^.]+\n * - `**` matches any number of segments: .+\n *\n * For pathnames, segments are separated by `/`:\n * - `*` matches a single segment (no slashes): [^/]+\n * - `**` matches any number of segments (including empty): .*\n *\n * Literal characters are escaped for regex safety.\n */\nfunction globToRegex(pattern: string, separator: \".\" | \"/\"): RegExp {\n // Split by ** first, then handle * within each part\n let regexStr = \"^\";\n const doubleStar = separator === \".\" ? \".+\" : \".*\";\n const singleStar = separator === \".\" ? \"[^.]+\" : \"[^/]+\";\n\n const parts = pattern.split(\"**\");\n for (let i = 0; i < parts.length; i++) {\n if (i > 0) {\n regexStr += doubleStar;\n }\n // Within each part, split by * and escape the literals\n const subParts = parts[i].split(\"*\");\n for (let j = 0; j < subParts.length; j++) {\n if (j > 0) {\n regexStr += singleStar;\n }\n // Escape regex special chars in the literal portion\n regexStr += subParts[j].replace(/[.+?^${}()|[\\]\\\\]/g, \"\\\\$&\");\n }\n }\n regexStr += \"$\";\n return new RegExp(regexStr);\n}\n\n/**\n * Check whether a URL matches a single remote pattern.\n * Follows the same semantics as Next.js's matchRemotePattern().\n */\nexport function matchRemotePattern(pattern: RemotePattern, url: URL): boolean {\n // Protocol check (strip trailing colon for comparison)\n if (pattern.protocol !== undefined) {\n if (pattern.protocol.replace(/:$/, \"\") !== url.protocol.replace(/:$/, \"\")) {\n return false;\n }\n }\n\n // Port check\n if (pattern.port !== undefined) {\n if (pattern.port !== url.port) {\n return false;\n }\n }\n\n // Hostname check (required field)\n if (!globToRegex(pattern.hostname, \".\").test(url.hostname)) {\n return false;\n }\n\n // Search/query string check\n if (pattern.search !== undefined) {\n if (pattern.search !== url.search) {\n return false;\n }\n }\n\n // Pathname check — defaults to ** (match everything) if not specified\n const pathnamePattern = pattern.pathname ?? \"**\";\n if (!globToRegex(pathnamePattern, \"/\").test(url.pathname)) {\n return false;\n }\n\n return true;\n}\n\n/**\n * Check whether a URL matches any configured remote pattern or legacy domain.\n */\nexport function hasRemoteMatch(\n domains: string[],\n remotePatterns: RemotePattern[],\n url: URL,\n): boolean {\n return (\n domains.some((domain) => url.hostname === domain) ||\n remotePatterns.some((p) => matchRemotePattern(p, url))\n );\n}\n"]}
1
+ {"version":3,"file":"image-config.js","names":[],"sources":["../../src/shims/image-config.ts"],"sourcesContent":["/**\n * Image remote pattern validation.\n *\n * Validates remote image URLs against the `images.remotePatterns` and\n * `images.domains` config from next.config.js. This prevents SSRF and\n * open-redirect attacks by blocking URLs that don't match any configured\n * pattern.\n *\n * Pattern matching follows Next.js semantics:\n * - `*` matches a single segment (subdomain in hostname, path segment in pathname)\n * - `**` matches any number of segments\n * - protocol, port, and search are matched exactly when specified\n */\n\nexport interface RemotePattern {\n protocol?: string;\n hostname: string;\n port?: string;\n pathname?: string;\n search?: string;\n}\n\n/**\n * Convert a glob pattern (with `*` and `**`) to a RegExp.\n *\n * For hostnames, segments are separated by `.`:\n * - `*` matches a single segment (no dots): [^.]+\n * - `**` matches any number of segments: .+\n *\n * For pathnames, segments are separated by `/`:\n * - `*` matches a single segment (no slashes): [^/]+\n * - `**` matches any number of segments (including empty): .*\n *\n * Literal characters are escaped for regex safety.\n */\nfunction globToRegex(pattern: string, separator: \".\" | \"/\"): RegExp {\n // Split by ** first, then handle * within each part\n let regexStr = \"^\";\n const doubleStar = separator === \".\" ? \".+\" : \".*\";\n const singleStar = separator === \".\" ? \"[^.]+\" : \"[^/]+\";\n\n const parts = pattern.split(\"**\");\n for (let i = 0; i < parts.length; i++) {\n if (i > 0) {\n regexStr += doubleStar;\n }\n // Within each part, split by * and escape the literals\n const subParts = parts[i].split(\"*\");\n for (let j = 0; j < subParts.length; j++) {\n if (j > 0) {\n regexStr += singleStar;\n }\n // Escape regex special chars in the literal portion\n regexStr += subParts[j].replace(/[.+?^${}()|[\\]\\\\]/g, \"\\\\$&\");\n }\n }\n regexStr += \"$\";\n return new RegExp(regexStr);\n}\n\n/**\n * Check whether a URL matches a single remote pattern.\n * Follows the same semantics as Next.js's matchRemotePattern().\n */\nexport function matchRemotePattern(pattern: RemotePattern, url: URL): boolean {\n // Protocol check (strip trailing colon for comparison)\n if (pattern.protocol !== undefined) {\n if (pattern.protocol.replace(/:$/, \"\") !== url.protocol.replace(/:$/, \"\")) {\n return false;\n }\n }\n\n // Port check\n if (pattern.port !== undefined) {\n if (pattern.port !== url.port) {\n return false;\n }\n }\n\n // Hostname check (required field)\n if (!globToRegex(pattern.hostname, \".\").test(url.hostname)) {\n return false;\n }\n\n // Search/query string check\n if (pattern.search !== undefined) {\n if (pattern.search !== url.search) {\n return false;\n }\n }\n\n // Pathname check — defaults to ** (match everything) if not specified\n const pathnamePattern = pattern.pathname ?? \"**\";\n if (!globToRegex(pathnamePattern, \"/\").test(url.pathname)) {\n return false;\n }\n\n return true;\n}\n\n/**\n * Check whether a URL matches any configured remote pattern or legacy domain.\n */\nexport function hasRemoteMatch(\n domains: string[],\n remotePatterns: RemotePattern[],\n url: URL,\n): boolean {\n return (\n domains.some((domain) => url.hostname === domain) ||\n remotePatterns.some((p) => matchRemotePattern(p, url))\n );\n}\n"],"mappings":";;;;;;;;;;;;;;AAmCA,SAAS,YAAY,SAAiB,WAA8B;CAElE,IAAI,WAAW;CACf,MAAM,aAAa,cAAc,MAAM,OAAO;CAC9C,MAAM,aAAa,cAAc,MAAM,UAAU;CAEjD,MAAM,QAAQ,QAAQ,MAAM,KAAK;AACjC,MAAK,IAAI,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;AACrC,MAAI,IAAI,EACN,aAAY;EAGd,MAAM,WAAW,MAAM,GAAG,MAAM,IAAI;AACpC,OAAK,IAAI,IAAI,GAAG,IAAI,SAAS,QAAQ,KAAK;AACxC,OAAI,IAAI,EACN,aAAY;AAGd,eAAY,SAAS,GAAG,QAAQ,sBAAsB,OAAO;;;AAGjE,aAAY;AACZ,QAAO,IAAI,OAAO,SAAS;;;;;;AAO7B,SAAgB,mBAAmB,SAAwB,KAAmB;AAE5E,KAAI,QAAQ,aAAa,KAAA;MACnB,QAAQ,SAAS,QAAQ,MAAM,GAAG,KAAK,IAAI,SAAS,QAAQ,MAAM,GAAG,CACvE,QAAO;;AAKX,KAAI,QAAQ,SAAS,KAAA;MACf,QAAQ,SAAS,IAAI,KACvB,QAAO;;AAKX,KAAI,CAAC,YAAY,QAAQ,UAAU,IAAI,CAAC,KAAK,IAAI,SAAS,CACxD,QAAO;AAIT,KAAI,QAAQ,WAAW,KAAA;MACjB,QAAQ,WAAW,IAAI,OACzB,QAAO;;AAMX,KAAI,CAAC,YADmB,QAAQ,YAAY,MACV,IAAI,CAAC,KAAK,IAAI,SAAS,CACvD,QAAO;AAGT,QAAO;;;;;AAMT,SAAgB,eACd,SACA,gBACA,KACS;AACT,QACE,QAAQ,MAAM,WAAW,IAAI,aAAa,OAAO,IACjD,eAAe,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC"}
@@ -1,49 +1,39 @@
1
- /**
2
- * next/image shim
3
- *
4
- * Translates Next.js Image props to @unpic/react Image component.
5
- * @unpic/react auto-detects CDN from URL and uses native transforms.
6
- * For local images (relative paths), routes through `/_vinext/image`
7
- * for server-side optimization (resize, format negotiation, quality).
8
- *
9
- * Remote images are validated against `images.remotePatterns` and
10
- * `images.domains` from next.config.js. Unmatched URLs are blocked
11
- * in production and warn in development, matching Next.js behavior.
12
- */
13
1
  import React from "react";
14
- export interface StaticImageData {
15
- src: string;
16
- height: number;
17
- width: number;
18
- blurDataURL?: string;
2
+
3
+ //#region src/shims/image.d.ts
4
+ interface StaticImageData {
5
+ src: string;
6
+ height: number;
7
+ width: number;
8
+ blurDataURL?: string;
19
9
  }
20
10
  interface ImageProps {
21
- src: string | StaticImageData;
22
- alt: string;
23
- width?: number;
24
- height?: number;
25
- fill?: boolean;
26
- priority?: boolean;
11
+ src: string | StaticImageData;
12
+ alt: string;
13
+ width?: number;
14
+ height?: number;
15
+ fill?: boolean;
16
+ priority?: boolean;
17
+ quality?: number;
18
+ placeholder?: "blur" | "empty";
19
+ blurDataURL?: string;
20
+ loader?: (params: {
21
+ src: string;
22
+ width: number;
27
23
  quality?: number;
28
- placeholder?: "blur" | "empty";
29
- blurDataURL?: string;
30
- loader?: (params: {
31
- src: string;
32
- width: number;
33
- quality?: number;
34
- }) => string;
35
- sizes?: string;
36
- className?: string;
37
- style?: React.CSSProperties;
38
- onLoad?: React.ReactEventHandler<HTMLImageElement>;
39
- /** @deprecated Use onLoad instead. Still supported for migration compat. */
40
- onLoadingComplete?: (img: HTMLImageElement) => void;
41
- onError?: React.ReactEventHandler<HTMLImageElement>;
42
- onClick?: React.MouseEventHandler<HTMLImageElement>;
43
- id?: string;
44
- unoptimized?: boolean;
45
- overrideSrc?: string;
46
- loading?: "lazy" | "eager";
24
+ }) => string;
25
+ sizes?: string;
26
+ className?: string;
27
+ style?: React.CSSProperties;
28
+ onLoad?: React.ReactEventHandler<HTMLImageElement>;
29
+ /** @deprecated Use onLoad instead. Still supported for migration compat. */
30
+ onLoadingComplete?: (img: HTMLImageElement) => void;
31
+ onError?: React.ReactEventHandler<HTMLImageElement>;
32
+ onClick?: React.MouseEventHandler<HTMLImageElement>;
33
+ id?: string;
34
+ unoptimized?: boolean;
35
+ overrideSrc?: string;
36
+ loading?: "lazy" | "eager";
47
37
  }
48
38
  /**
49
39
  * Build a `/_vinext/image` optimization URL.
@@ -52,14 +42,15 @@ interface ImageProps {
52
42
  * the Images binding to resize/transcode on the fly. In dev, the Vite dev
53
43
  * server handles it as a passthrough (serves the original file).
54
44
  */
55
- export declare function imageOptimizationUrl(src: string, width: number, quality?: number): string;
45
+ declare function imageOptimizationUrl(src: string, width: number, quality?: number): string;
56
46
  declare const Image: React.ForwardRefExoticComponent<ImageProps & React.RefAttributes<HTMLImageElement>>;
57
47
  /**
58
48
  * getImageProps — for advanced use cases (picture elements, background images).
59
49
  * Returns the props that would be passed to the underlying <img> element.
60
50
  */
61
- export declare function getImageProps(props: ImageProps): {
62
- props: React.ImgHTMLAttributes<HTMLImageElement>;
51
+ declare function getImageProps(props: ImageProps): {
52
+ props: React.ImgHTMLAttributes<HTMLImageElement>;
63
53
  };
64
- export default Image;
54
+ //#endregion
55
+ export { StaticImageData, Image as default, getImageProps, imageOptimizationUrl };
65
56
  //# sourceMappingURL=image.d.ts.map