vinext 0.0.26 → 0.0.28

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 (227) hide show
  1. package/README.md +89 -85
  2. package/dist/build/static-export.d.ts +1 -1
  3. package/dist/build/static-export.d.ts.map +1 -1
  4. package/dist/build/static-export.js +5 -9
  5. package/dist/build/static-export.js.map +1 -1
  6. package/dist/check.d.ts.map +1 -1
  7. package/dist/check.js +152 -48
  8. package/dist/check.js.map +1 -1
  9. package/dist/cli.js +10 -11
  10. package/dist/cli.js.map +1 -1
  11. package/dist/cloudflare/kv-cache-handler.d.ts +43 -1
  12. package/dist/cloudflare/kv-cache-handler.d.ts.map +1 -1
  13. package/dist/cloudflare/kv-cache-handler.js +135 -44
  14. package/dist/cloudflare/kv-cache-handler.js.map +1 -1
  15. package/dist/cloudflare/tpr.d.ts.map +1 -1
  16. package/dist/cloudflare/tpr.js +15 -4
  17. package/dist/cloudflare/tpr.js.map +1 -1
  18. package/dist/config/config-matchers.d.ts +28 -0
  19. package/dist/config/config-matchers.d.ts.map +1 -1
  20. package/dist/config/config-matchers.js +353 -79
  21. package/dist/config/config-matchers.js.map +1 -1
  22. package/dist/config/dotenv.d.ts.map +1 -1
  23. package/dist/config/dotenv.js +1 -6
  24. package/dist/config/dotenv.js.map +1 -1
  25. package/dist/config/next-config.d.ts +7 -0
  26. package/dist/config/next-config.d.ts.map +1 -1
  27. package/dist/config/next-config.js +44 -19
  28. package/dist/config/next-config.js.map +1 -1
  29. package/dist/deploy.d.ts +1 -1
  30. package/dist/deploy.d.ts.map +1 -1
  31. package/dist/deploy.js +81 -48
  32. package/dist/deploy.js.map +1 -1
  33. package/dist/entries/app-rsc-entry.d.ts +3 -1
  34. package/dist/entries/app-rsc-entry.d.ts.map +1 -1
  35. package/dist/entries/app-rsc-entry.js +584 -113
  36. package/dist/entries/app-rsc-entry.js.map +1 -1
  37. package/dist/entries/pages-client-entry.d.ts.map +1 -1
  38. package/dist/entries/pages-client-entry.js +5 -3
  39. package/dist/entries/pages-client-entry.js.map +1 -1
  40. package/dist/entries/pages-server-entry.d.ts.map +1 -1
  41. package/dist/entries/pages-server-entry.js +100 -32
  42. package/dist/entries/pages-server-entry.js.map +1 -1
  43. package/dist/index.d.ts +24 -8
  44. package/dist/index.d.ts.map +1 -1
  45. package/dist/index.js +327 -154
  46. package/dist/index.js.map +1 -1
  47. package/dist/init.d.ts.map +1 -1
  48. package/dist/init.js +6 -5
  49. package/dist/init.js.map +1 -1
  50. package/dist/plugins/client-reference-dedup.d.ts +19 -0
  51. package/dist/plugins/client-reference-dedup.d.ts.map +1 -0
  52. package/dist/plugins/client-reference-dedup.js +96 -0
  53. package/dist/plugins/client-reference-dedup.js.map +1 -0
  54. package/dist/routing/app-router.d.ts +2 -0
  55. package/dist/routing/app-router.d.ts.map +1 -1
  56. package/dist/routing/app-router.js +70 -107
  57. package/dist/routing/app-router.js.map +1 -1
  58. package/dist/routing/file-matcher.d.ts.map +1 -1
  59. package/dist/routing/file-matcher.js.map +1 -1
  60. package/dist/routing/pages-router.d.ts +3 -1
  61. package/dist/routing/pages-router.d.ts.map +1 -1
  62. package/dist/routing/pages-router.js +33 -18
  63. package/dist/routing/pages-router.js.map +1 -1
  64. package/dist/routing/route-validation.d.ts +8 -0
  65. package/dist/routing/route-validation.d.ts.map +1 -0
  66. package/dist/routing/route-validation.js +124 -0
  67. package/dist/routing/route-validation.js.map +1 -0
  68. package/dist/routing/utils.d.ts.map +1 -1
  69. package/dist/routing/utils.js.map +1 -1
  70. package/dist/server/api-handler.d.ts.map +1 -1
  71. package/dist/server/api-handler.js +31 -9
  72. package/dist/server/api-handler.js.map +1 -1
  73. package/dist/server/app-router-entry.d.ts +3 -2
  74. package/dist/server/app-router-entry.d.ts.map +1 -1
  75. package/dist/server/app-router-entry.js +8 -4
  76. package/dist/server/app-router-entry.js.map +1 -1
  77. package/dist/server/dev-module-runner.d.ts.map +1 -1
  78. package/dist/server/dev-module-runner.js +1 -1
  79. package/dist/server/dev-module-runner.js.map +1 -1
  80. package/dist/server/dev-origin-check.d.ts.map +1 -1
  81. package/dist/server/dev-origin-check.js.map +1 -1
  82. package/dist/server/dev-server.d.ts.map +1 -1
  83. package/dist/server/dev-server.js +39 -21
  84. package/dist/server/dev-server.js.map +1 -1
  85. package/dist/server/image-optimization.d.ts.map +1 -1
  86. package/dist/server/image-optimization.js.map +1 -1
  87. package/dist/server/instrumentation.js +1 -1
  88. package/dist/server/instrumentation.js.map +1 -1
  89. package/dist/server/isr-cache.d.ts +5 -1
  90. package/dist/server/isr-cache.d.ts.map +1 -1
  91. package/dist/server/isr-cache.js +13 -3
  92. package/dist/server/isr-cache.js.map +1 -1
  93. package/dist/server/metadata-routes.d.ts +8 -2
  94. package/dist/server/metadata-routes.d.ts.map +1 -1
  95. package/dist/server/metadata-routes.js +78 -45
  96. package/dist/server/metadata-routes.js.map +1 -1
  97. package/dist/server/middleware-codegen.d.ts +1 -1
  98. package/dist/server/middleware-codegen.d.ts.map +1 -1
  99. package/dist/server/middleware-codegen.js +177 -22
  100. package/dist/server/middleware-codegen.js.map +1 -1
  101. package/dist/server/middleware-request-headers.d.ts +9 -0
  102. package/dist/server/middleware-request-headers.d.ts.map +1 -0
  103. package/dist/server/middleware-request-headers.js +77 -0
  104. package/dist/server/middleware-request-headers.js.map +1 -0
  105. package/dist/server/middleware.d.ts +9 -8
  106. package/dist/server/middleware.d.ts.map +1 -1
  107. package/dist/server/middleware.js +112 -32
  108. package/dist/server/middleware.js.map +1 -1
  109. package/dist/server/normalize-path.js.map +1 -1
  110. package/dist/server/prod-server.d.ts +1 -1
  111. package/dist/server/prod-server.d.ts.map +1 -1
  112. package/dist/server/prod-server.js +127 -82
  113. package/dist/server/prod-server.js.map +1 -1
  114. package/dist/server/request-pipeline.d.ts +2 -1
  115. package/dist/server/request-pipeline.d.ts.map +1 -1
  116. package/dist/server/request-pipeline.js +5 -7
  117. package/dist/server/request-pipeline.js.map +1 -1
  118. package/dist/shims/cache-runtime.d.ts.map +1 -1
  119. package/dist/shims/cache-runtime.js +21 -16
  120. package/dist/shims/cache-runtime.js.map +1 -1
  121. package/dist/shims/cache.d.ts +2 -0
  122. package/dist/shims/cache.d.ts.map +1 -1
  123. package/dist/shims/cache.js +38 -25
  124. package/dist/shims/cache.js.map +1 -1
  125. package/dist/shims/constants.d.ts.map +1 -1
  126. package/dist/shims/constants.js +1 -6
  127. package/dist/shims/constants.js.map +1 -1
  128. package/dist/shims/dynamic.d.ts.map +1 -1
  129. package/dist/shims/dynamic.js +1 -1
  130. package/dist/shims/dynamic.js.map +1 -1
  131. package/dist/shims/error-boundary.d.ts.map +1 -1
  132. package/dist/shims/error-boundary.js +2 -3
  133. package/dist/shims/error-boundary.js.map +1 -1
  134. package/dist/shims/error.d.ts.map +1 -1
  135. package/dist/shims/error.js +1 -3
  136. package/dist/shims/error.js.map +1 -1
  137. package/dist/shims/fetch-cache.d.ts.map +1 -1
  138. package/dist/shims/fetch-cache.js +57 -30
  139. package/dist/shims/fetch-cache.js.map +1 -1
  140. package/dist/shims/font-google-base.d.ts.map +1 -1
  141. package/dist/shims/font-google-base.js +16 -4
  142. package/dist/shims/font-google-base.js.map +1 -1
  143. package/dist/shims/font-google.d.ts +1 -1
  144. package/dist/shims/font-google.d.ts.map +1 -1
  145. package/dist/shims/font-google.generated.d.ts.map +1 -1
  146. package/dist/shims/font-google.generated.js +412 -206
  147. package/dist/shims/font-google.generated.js.map +1 -1
  148. package/dist/shims/font-google.js +1 -1
  149. package/dist/shims/font-google.js.map +1 -1
  150. package/dist/shims/font-local.d.ts.map +1 -1
  151. package/dist/shims/font-local.js +13 -3
  152. package/dist/shims/font-local.js.map +1 -1
  153. package/dist/shims/form.d.ts.map +1 -1
  154. package/dist/shims/form.js +105 -10
  155. package/dist/shims/form.js.map +1 -1
  156. package/dist/shims/head.d.ts.map +1 -1
  157. package/dist/shims/head.js +10 -8
  158. package/dist/shims/head.js.map +1 -1
  159. package/dist/shims/headers.d.ts +34 -8
  160. package/dist/shims/headers.d.ts.map +1 -1
  161. package/dist/shims/headers.js +268 -53
  162. package/dist/shims/headers.js.map +1 -1
  163. package/dist/shims/image.d.ts.map +1 -1
  164. package/dist/shims/image.js +35 -8
  165. package/dist/shims/image.js.map +1 -1
  166. package/dist/shims/internal/parse-cookie-header.d.ts +12 -0
  167. package/dist/shims/internal/parse-cookie-header.d.ts.map +1 -0
  168. package/dist/shims/internal/parse-cookie-header.js +32 -0
  169. package/dist/shims/internal/parse-cookie-header.js.map +1 -0
  170. package/dist/shims/legacy-image.d.ts.map +1 -1
  171. package/dist/shims/legacy-image.js +1 -1
  172. package/dist/shims/legacy-image.js.map +1 -1
  173. package/dist/shims/link.d.ts +2 -1
  174. package/dist/shims/link.d.ts.map +1 -1
  175. package/dist/shims/link.js +37 -17
  176. package/dist/shims/link.js.map +1 -1
  177. package/dist/shims/metadata.d.ts +12 -2
  178. package/dist/shims/metadata.d.ts.map +1 -1
  179. package/dist/shims/metadata.js +10 -8
  180. package/dist/shims/metadata.js.map +1 -1
  181. package/dist/shims/navigation-state.d.ts.map +1 -1
  182. package/dist/shims/navigation-state.js +3 -2
  183. package/dist/shims/navigation-state.js.map +1 -1
  184. package/dist/shims/navigation.d.ts +3 -7
  185. package/dist/shims/navigation.d.ts.map +1 -1
  186. package/dist/shims/navigation.js +46 -29
  187. package/dist/shims/navigation.js.map +1 -1
  188. package/dist/shims/readonly-url-search-params.d.ts +11 -0
  189. package/dist/shims/readonly-url-search-params.d.ts.map +1 -0
  190. package/dist/shims/readonly-url-search-params.js +24 -0
  191. package/dist/shims/readonly-url-search-params.js.map +1 -0
  192. package/dist/shims/request-context.d.ts +50 -0
  193. package/dist/shims/request-context.d.ts.map +1 -0
  194. package/dist/shims/request-context.js +59 -0
  195. package/dist/shims/request-context.js.map +1 -0
  196. package/dist/shims/router-state.d.ts.map +1 -1
  197. package/dist/shims/router-state.js +2 -1
  198. package/dist/shims/router-state.js.map +1 -1
  199. package/dist/shims/router.d.ts +4 -3
  200. package/dist/shims/router.d.ts.map +1 -1
  201. package/dist/shims/router.js +59 -53
  202. package/dist/shims/router.js.map +1 -1
  203. package/dist/shims/script.d.ts.map +1 -1
  204. package/dist/shims/script.js.map +1 -1
  205. package/dist/shims/server.d.ts +14 -1
  206. package/dist/shims/server.d.ts.map +1 -1
  207. package/dist/shims/server.js +107 -47
  208. package/dist/shims/server.js.map +1 -1
  209. package/dist/shims/url-utils.d.ts.map +1 -1
  210. package/dist/shims/url-utils.js +1 -3
  211. package/dist/shims/url-utils.js.map +1 -1
  212. package/dist/utils/base-path.d.ts +17 -0
  213. package/dist/utils/base-path.d.ts.map +1 -0
  214. package/dist/utils/base-path.js +25 -0
  215. package/dist/utils/base-path.js.map +1 -0
  216. package/dist/utils/manifest-paths.d.ts +4 -0
  217. package/dist/utils/manifest-paths.d.ts.map +1 -0
  218. package/dist/utils/manifest-paths.js +20 -0
  219. package/dist/utils/manifest-paths.js.map +1 -0
  220. package/dist/utils/project.d.ts.map +1 -1
  221. package/dist/utils/project.js +2 -4
  222. package/dist/utils/project.js.map +1 -1
  223. package/dist/utils/query.d.ts +9 -0
  224. package/dist/utils/query.d.ts.map +1 -1
  225. package/dist/utils/query.js +59 -7
  226. package/dist/utils/query.js.map +1 -1
  227. package/package.json +47 -33
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/shims/constants.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * next/constants shim\n *\n * Provides build/runtime phase constants used by next.config.js\n * and some third-party libraries.\n */\n\nexport const MODERN_BROWSERSLIST_TARGET = [\n \"chrome 111\",\n \"edge 111\",\n \"firefox 111\",\n \"safari 16.4\",\n];\n\nexport type ValueOf<T> = Required<T>[keyof T];\n\nexport const COMPILER_NAMES = {\n client: \"client\",\n server: \"server\",\n edgeServer: \"edge-server\",\n} as const;\n\nexport type CompilerNameValues = ValueOf<typeof COMPILER_NAMES>;\n\nexport const COMPILER_INDEXES: {\n [compilerKey in CompilerNameValues]: number;\n} = {\n [COMPILER_NAMES.client]: 0,\n [COMPILER_NAMES.server]: 1,\n [COMPILER_NAMES.edgeServer]: 2,\n} as const;\n\n// Re-export entry constants for backward compatibility\nexport const UNDERSCORE_NOT_FOUND_ROUTE = \"/_not-found\";\nexport const UNDERSCORE_NOT_FOUND_ROUTE_ENTRY = `${UNDERSCORE_NOT_FOUND_ROUTE}/page`;\nexport const UNDERSCORE_GLOBAL_ERROR_ROUTE = \"/_global-error\";\nexport const UNDERSCORE_GLOBAL_ERROR_ROUTE_ENTRY = `${UNDERSCORE_GLOBAL_ERROR_ROUTE}/page`;\n\nexport enum AdapterOutputType {\n /**\n * `PAGES` represents all the React pages that are under `pages/`.\n */\n PAGES = \"PAGES\",\n\n /**\n * `PAGES_API` represents all the API routes under `pages/api/`.\n */\n PAGES_API = \"PAGES_API\",\n /**\n * `APP_PAGE` represents all the React pages that are under `app/` with the\n * filename of `page.{j,t}s{,x}`.\n */\n APP_PAGE = \"APP_PAGE\",\n\n /**\n * `APP_ROUTE` represents all the API routes and metadata routes that are under `app/` with the\n * filename of `route.{j,t}s{,x}`.\n */\n APP_ROUTE = \"APP_ROUTE\",\n\n /**\n * `PRERENDER` represents an ISR enabled route that might\n * have a seeded cache entry or fallback generated during build\n */\n PRERENDER = \"PRERENDER\",\n\n /**\n * `STATIC_FILE` represents a static file (ie /_next/static)\n */\n STATIC_FILE = \"STATIC_FILE\",\n\n /**\n * `MIDDLEWARE` represents the middleware output if present\n */\n MIDDLEWARE = \"MIDDLEWARE\",\n}\n\nexport const PHASE_EXPORT = \"phase-export\";\nexport const PHASE_ANALYZE = \"phase-analyze\";\nexport const PHASE_PRODUCTION_BUILD = \"phase-production-build\";\nexport const PHASE_PRODUCTION_SERVER = \"phase-production-server\";\nexport const PHASE_DEVELOPMENT_SERVER = \"phase-development-server\";\nexport const PHASE_TEST = \"phase-test\";\nexport const PHASE_INFO = \"phase-info\";\n\nexport type PHASE_TYPE =\n | typeof PHASE_INFO\n | typeof PHASE_TEST\n | typeof PHASE_EXPORT\n | typeof PHASE_ANALYZE\n | typeof PHASE_PRODUCTION_BUILD\n | typeof PHASE_PRODUCTION_SERVER\n | typeof PHASE_DEVELOPMENT_SERVER;\n\nexport const PAGES_MANIFEST = \"pages-manifest.json\";\nexport const WEBPACK_STATS = \"webpack-stats.json\";\nexport const APP_PATHS_MANIFEST = \"app-paths-manifest.json\";\nexport const APP_PATH_ROUTES_MANIFEST = \"app-path-routes-manifest.json\";\nexport const BUILD_MANIFEST = \"build-manifest.json\";\nexport const FUNCTIONS_CONFIG_MANIFEST = \"functions-config-manifest.json\";\nexport const SUBRESOURCE_INTEGRITY_MANIFEST = \"subresource-integrity-manifest\";\nexport const NEXT_FONT_MANIFEST = \"next-font-manifest\";\nexport const EXPORT_MARKER = \"export-marker.json\";\nexport const EXPORT_DETAIL = \"export-detail.json\";\nexport const PRERENDER_MANIFEST = \"prerender-manifest.json\";\nexport const ROUTES_MANIFEST = \"routes-manifest.json\";\nexport const IMAGES_MANIFEST = \"images-manifest.json\";\nexport const SERVER_FILES_MANIFEST = \"required-server-files\";\nexport const DEV_CLIENT_PAGES_MANIFEST = \"_devPagesManifest.json\";\nexport const MIDDLEWARE_MANIFEST = \"middleware-manifest.json\";\nexport const TURBOPACK_CLIENT_MIDDLEWARE_MANIFEST =\n \"_clientMiddlewareManifest.json\";\nexport const TURBOPACK_CLIENT_BUILD_MANIFEST = \"client-build-manifest.json\";\nexport const DEV_CLIENT_MIDDLEWARE_MANIFEST = \"_devMiddlewareManifest.json\";\nexport const REACT_LOADABLE_MANIFEST = \"react-loadable-manifest.json\";\nexport const SERVER_DIRECTORY = \"server\";\nexport const CONFIG_FILES = [\n \"next.config.js\",\n \"next.config.mjs\",\n \"next.config.ts\",\n // process.features can be undefined on Edge runtime\n // TODO: Remove `as any` once we bump @types/node to v22.10.0+\n ...((process?.features as any)?.typescript ? [\"next.config.mts\"] : []),\n];\nexport const BUILD_ID_FILE = \"BUILD_ID\";\nexport const BLOCKED_PAGES = [\"/_document\", \"/_app\", \"/_error\"];\nexport const CLIENT_PUBLIC_FILES_PATH = \"public\";\nexport const CLIENT_STATIC_FILES_PATH = \"static\";\nexport const STRING_LITERAL_DROP_BUNDLE = \"__NEXT_DROP_CLIENT_FILE__\";\nexport const NEXT_BUILTIN_DOCUMENT = \"__NEXT_BUILTIN_DOCUMENT__\";\nexport const BARREL_OPTIMIZATION_PREFIX = \"__barrel_optimize__\";\n\n// server/[entry]/page_client-reference-manifest.js\nexport const CLIENT_REFERENCE_MANIFEST = \"client-reference-manifest\";\n// server/server-reference-manifest\nexport const SERVER_REFERENCE_MANIFEST = \"server-reference-manifest\";\n// server/middleware-build-manifest.js\nexport const MIDDLEWARE_BUILD_MANIFEST = \"middleware-build-manifest\";\n// server/middleware-react-loadable-manifest.js\nexport const MIDDLEWARE_REACT_LOADABLE_MANIFEST =\n \"middleware-react-loadable-manifest\";\n// server/interception-route-rewrite-manifest.js\nexport const INTERCEPTION_ROUTE_REWRITE_MANIFEST =\n \"interception-route-rewrite-manifest\";\n// server/dynamic-css-manifest.js\nexport const DYNAMIC_CSS_MANIFEST = \"dynamic-css-manifest\";\n\n// static/runtime/main.js\nexport const CLIENT_STATIC_FILES_RUNTIME_MAIN = `main`;\nexport const CLIENT_STATIC_FILES_RUNTIME_MAIN_APP = `${CLIENT_STATIC_FILES_RUNTIME_MAIN}-app`;\n// next internal client components chunk for layouts\nexport const APP_CLIENT_INTERNALS = \"app-pages-internals\";\n// static/runtime/react-refresh.js\nexport const CLIENT_STATIC_FILES_RUNTIME_REACT_REFRESH = `react-refresh`;\n// static/runtime/webpack.js\nexport const CLIENT_STATIC_FILES_RUNTIME_WEBPACK = `webpack`;\n// static/runtime/polyfills.js\nexport const CLIENT_STATIC_FILES_RUNTIME_POLYFILLS = \"polyfills\";\nexport const CLIENT_STATIC_FILES_RUNTIME_POLYFILLS_SYMBOL = Symbol(\n CLIENT_STATIC_FILES_RUNTIME_POLYFILLS,\n);\nexport const DEFAULT_RUNTIME_WEBPACK = \"webpack-runtime\";\nexport const EDGE_RUNTIME_WEBPACK = \"edge-runtime-webpack\";\nexport const STATIC_PROPS_ID = \"__N_SSG\";\nexport const SERVER_PROPS_ID = \"__N_SSP\";\nexport const DEFAULT_SERIF_FONT = {\n name: \"Times New Roman\",\n xAvgCharWidth: 821,\n azAvgWidth: 854.3953488372093,\n unitsPerEm: 2048,\n};\nexport const DEFAULT_SANS_SERIF_FONT = {\n name: \"Arial\",\n xAvgCharWidth: 904,\n azAvgWidth: 934.5116279069767,\n unitsPerEm: 2048,\n};\nexport const STATIC_STATUS_PAGES = [\"/500\"];\nexport const TRACE_OUTPUT_VERSION = 1;\n// in `MB`\nexport const TURBO_TRACE_DEFAULT_MEMORY_LIMIT = 6000;\n\nexport const RSC_MODULE_TYPES = {\n client: \"client\",\n server: \"server\",\n} as const;\n\n// comparing\n// https://nextjs.org/docs/api-reference/edge-runtime\n// with\n// https://nodejs.org/docs/latest/api/globals.html\nexport const EDGE_UNSUPPORTED_NODE_APIS = [\n \"clearImmediate\",\n \"setImmediate\",\n \"BroadcastChannel\",\n \"ByteLengthQueuingStrategy\",\n \"CompressionStream\",\n \"CountQueuingStrategy\",\n \"DecompressionStream\",\n \"DomException\",\n \"MessageChannel\",\n \"MessageEvent\",\n \"MessagePort\",\n \"ReadableByteStreamController\",\n \"ReadableStreamBYOBRequest\",\n \"ReadableStreamDefaultController\",\n \"TransformStreamDefaultController\",\n \"WritableStreamDefaultController\",\n];\n\nexport const SYSTEM_ENTRYPOINTS = new Set<string>([\n CLIENT_STATIC_FILES_RUNTIME_MAIN,\n CLIENT_STATIC_FILES_RUNTIME_REACT_REFRESH,\n CLIENT_STATIC_FILES_RUNTIME_MAIN_APP,\n]);\n"]}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/shims/constants.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * next/constants shim\n *\n * Provides build/runtime phase constants used by next.config.js\n * and some third-party libraries.\n */\n\nexport const MODERN_BROWSERSLIST_TARGET = [\"chrome 111\", \"edge 111\", \"firefox 111\", \"safari 16.4\"];\n\nexport type ValueOf<T> = Required<T>[keyof T];\n\nexport const COMPILER_NAMES = {\n client: \"client\",\n server: \"server\",\n edgeServer: \"edge-server\",\n} as const;\n\nexport type CompilerNameValues = ValueOf<typeof COMPILER_NAMES>;\n\nexport const COMPILER_INDEXES: {\n [compilerKey in CompilerNameValues]: number;\n} = {\n [COMPILER_NAMES.client]: 0,\n [COMPILER_NAMES.server]: 1,\n [COMPILER_NAMES.edgeServer]: 2,\n} as const;\n\n// Re-export entry constants for backward compatibility\nexport const UNDERSCORE_NOT_FOUND_ROUTE = \"/_not-found\";\nexport const UNDERSCORE_NOT_FOUND_ROUTE_ENTRY = `${UNDERSCORE_NOT_FOUND_ROUTE}/page`;\nexport const UNDERSCORE_GLOBAL_ERROR_ROUTE = \"/_global-error\";\nexport const UNDERSCORE_GLOBAL_ERROR_ROUTE_ENTRY = `${UNDERSCORE_GLOBAL_ERROR_ROUTE}/page`;\n\nexport enum AdapterOutputType {\n /**\n * `PAGES` represents all the React pages that are under `pages/`.\n */\n PAGES = \"PAGES\",\n\n /**\n * `PAGES_API` represents all the API routes under `pages/api/`.\n */\n PAGES_API = \"PAGES_API\",\n /**\n * `APP_PAGE` represents all the React pages that are under `app/` with the\n * filename of `page.{j,t}s{,x}`.\n */\n APP_PAGE = \"APP_PAGE\",\n\n /**\n * `APP_ROUTE` represents all the API routes and metadata routes that are under `app/` with the\n * filename of `route.{j,t}s{,x}`.\n */\n APP_ROUTE = \"APP_ROUTE\",\n\n /**\n * `PRERENDER` represents an ISR enabled route that might\n * have a seeded cache entry or fallback generated during build\n */\n PRERENDER = \"PRERENDER\",\n\n /**\n * `STATIC_FILE` represents a static file (ie /_next/static)\n */\n STATIC_FILE = \"STATIC_FILE\",\n\n /**\n * `MIDDLEWARE` represents the middleware output if present\n */\n MIDDLEWARE = \"MIDDLEWARE\",\n}\n\nexport const PHASE_EXPORT = \"phase-export\";\nexport const PHASE_ANALYZE = \"phase-analyze\";\nexport const PHASE_PRODUCTION_BUILD = \"phase-production-build\";\nexport const PHASE_PRODUCTION_SERVER = \"phase-production-server\";\nexport const PHASE_DEVELOPMENT_SERVER = \"phase-development-server\";\nexport const PHASE_TEST = \"phase-test\";\nexport const PHASE_INFO = \"phase-info\";\n\nexport type PHASE_TYPE =\n | typeof PHASE_INFO\n | typeof PHASE_TEST\n | typeof PHASE_EXPORT\n | typeof PHASE_ANALYZE\n | typeof PHASE_PRODUCTION_BUILD\n | typeof PHASE_PRODUCTION_SERVER\n | typeof PHASE_DEVELOPMENT_SERVER;\n\nexport const PAGES_MANIFEST = \"pages-manifest.json\";\nexport const WEBPACK_STATS = \"webpack-stats.json\";\nexport const APP_PATHS_MANIFEST = \"app-paths-manifest.json\";\nexport const APP_PATH_ROUTES_MANIFEST = \"app-path-routes-manifest.json\";\nexport const BUILD_MANIFEST = \"build-manifest.json\";\nexport const FUNCTIONS_CONFIG_MANIFEST = \"functions-config-manifest.json\";\nexport const SUBRESOURCE_INTEGRITY_MANIFEST = \"subresource-integrity-manifest\";\nexport const NEXT_FONT_MANIFEST = \"next-font-manifest\";\nexport const EXPORT_MARKER = \"export-marker.json\";\nexport const EXPORT_DETAIL = \"export-detail.json\";\nexport const PRERENDER_MANIFEST = \"prerender-manifest.json\";\nexport const ROUTES_MANIFEST = \"routes-manifest.json\";\nexport const IMAGES_MANIFEST = \"images-manifest.json\";\nexport const SERVER_FILES_MANIFEST = \"required-server-files\";\nexport const DEV_CLIENT_PAGES_MANIFEST = \"_devPagesManifest.json\";\nexport const MIDDLEWARE_MANIFEST = \"middleware-manifest.json\";\nexport const TURBOPACK_CLIENT_MIDDLEWARE_MANIFEST = \"_clientMiddlewareManifest.json\";\nexport const TURBOPACK_CLIENT_BUILD_MANIFEST = \"client-build-manifest.json\";\nexport const DEV_CLIENT_MIDDLEWARE_MANIFEST = \"_devMiddlewareManifest.json\";\nexport const REACT_LOADABLE_MANIFEST = \"react-loadable-manifest.json\";\nexport const SERVER_DIRECTORY = \"server\";\nexport const CONFIG_FILES = [\n \"next.config.js\",\n \"next.config.mjs\",\n \"next.config.ts\",\n // process.features can be undefined on Edge runtime\n // TODO: Remove `as any` once we bump @types/node to v22.10.0+\n ...((process?.features as any)?.typescript ? [\"next.config.mts\"] : []),\n];\nexport const BUILD_ID_FILE = \"BUILD_ID\";\nexport const BLOCKED_PAGES = [\"/_document\", \"/_app\", \"/_error\"];\nexport const CLIENT_PUBLIC_FILES_PATH = \"public\";\nexport const CLIENT_STATIC_FILES_PATH = \"static\";\nexport const STRING_LITERAL_DROP_BUNDLE = \"__NEXT_DROP_CLIENT_FILE__\";\nexport const NEXT_BUILTIN_DOCUMENT = \"__NEXT_BUILTIN_DOCUMENT__\";\nexport const BARREL_OPTIMIZATION_PREFIX = \"__barrel_optimize__\";\n\n// server/[entry]/page_client-reference-manifest.js\nexport const CLIENT_REFERENCE_MANIFEST = \"client-reference-manifest\";\n// server/server-reference-manifest\nexport const SERVER_REFERENCE_MANIFEST = \"server-reference-manifest\";\n// server/middleware-build-manifest.js\nexport const MIDDLEWARE_BUILD_MANIFEST = \"middleware-build-manifest\";\n// server/middleware-react-loadable-manifest.js\nexport const MIDDLEWARE_REACT_LOADABLE_MANIFEST = \"middleware-react-loadable-manifest\";\n// server/interception-route-rewrite-manifest.js\nexport const INTERCEPTION_ROUTE_REWRITE_MANIFEST = \"interception-route-rewrite-manifest\";\n// server/dynamic-css-manifest.js\nexport const DYNAMIC_CSS_MANIFEST = \"dynamic-css-manifest\";\n\n// static/runtime/main.js\nexport const CLIENT_STATIC_FILES_RUNTIME_MAIN = `main`;\nexport const CLIENT_STATIC_FILES_RUNTIME_MAIN_APP = `${CLIENT_STATIC_FILES_RUNTIME_MAIN}-app`;\n// next internal client components chunk for layouts\nexport const APP_CLIENT_INTERNALS = \"app-pages-internals\";\n// static/runtime/react-refresh.js\nexport const CLIENT_STATIC_FILES_RUNTIME_REACT_REFRESH = `react-refresh`;\n// static/runtime/webpack.js\nexport const CLIENT_STATIC_FILES_RUNTIME_WEBPACK = `webpack`;\n// static/runtime/polyfills.js\nexport const CLIENT_STATIC_FILES_RUNTIME_POLYFILLS = \"polyfills\";\nexport const CLIENT_STATIC_FILES_RUNTIME_POLYFILLS_SYMBOL = Symbol(\n CLIENT_STATIC_FILES_RUNTIME_POLYFILLS,\n);\nexport const DEFAULT_RUNTIME_WEBPACK = \"webpack-runtime\";\nexport const EDGE_RUNTIME_WEBPACK = \"edge-runtime-webpack\";\nexport const STATIC_PROPS_ID = \"__N_SSG\";\nexport const SERVER_PROPS_ID = \"__N_SSP\";\nexport const DEFAULT_SERIF_FONT = {\n name: \"Times New Roman\",\n xAvgCharWidth: 821,\n azAvgWidth: 854.3953488372093,\n unitsPerEm: 2048,\n};\nexport const DEFAULT_SANS_SERIF_FONT = {\n name: \"Arial\",\n xAvgCharWidth: 904,\n azAvgWidth: 934.5116279069767,\n unitsPerEm: 2048,\n};\nexport const STATIC_STATUS_PAGES = [\"/500\"];\nexport const TRACE_OUTPUT_VERSION = 1;\n// in `MB`\nexport const TURBO_TRACE_DEFAULT_MEMORY_LIMIT = 6000;\n\nexport const RSC_MODULE_TYPES = {\n client: \"client\",\n server: \"server\",\n} as const;\n\n// comparing\n// https://nextjs.org/docs/api-reference/edge-runtime\n// with\n// https://nodejs.org/docs/latest/api/globals.html\nexport const EDGE_UNSUPPORTED_NODE_APIS = [\n \"clearImmediate\",\n \"setImmediate\",\n \"BroadcastChannel\",\n \"ByteLengthQueuingStrategy\",\n \"CompressionStream\",\n \"CountQueuingStrategy\",\n \"DecompressionStream\",\n \"DomException\",\n \"MessageChannel\",\n \"MessageEvent\",\n \"MessagePort\",\n \"ReadableByteStreamController\",\n \"ReadableStreamBYOBRequest\",\n \"ReadableStreamDefaultController\",\n \"TransformStreamDefaultController\",\n \"WritableStreamDefaultController\",\n];\n\nexport const SYSTEM_ENTRYPOINTS = new Set<string>([\n CLIENT_STATIC_FILES_RUNTIME_MAIN,\n CLIENT_STATIC_FILES_RUNTIME_REACT_REFRESH,\n CLIENT_STATIC_FILES_RUNTIME_MAIN_APP,\n]);\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"dynamic.d.ts","sourceRoot":"","sources":["../../src/shims/dynamic.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;GAWG;AACH,OAAc,EAAkB,KAAK,aAAa,EAAuB,MAAM,OAAO,CAAC;AAEvF,UAAU,cAAc;IACtB,OAAO,CAAC,EAAE,aAAa,CAAC;QAAE,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAC5F,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED,KAAK,MAAM,CAAC,CAAC,IAAI,MAAM,OAAO,CAAC;IAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;CAAE,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;AAgDjF;;;;GAIG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAG/C;AAED,iBAAS,OAAO,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EACxC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EACjB,OAAO,CAAC,EAAE,cAAc,GACvB,aAAa,CAAC,CAAC,CAAC,CAkGlB;AAED,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"dynamic.d.ts","sourceRoot":"","sources":["../../src/shims/dynamic.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;GAWG;AACH,OAAc,EAAkB,KAAK,aAAa,EAAuB,MAAM,OAAO,CAAC;AAEvF,UAAU,cAAc;IACtB,OAAO,CAAC,EAAE,aAAa,CAAC;QAAE,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAC5F,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED,KAAK,MAAM,CAAC,CAAC,IAAI,MAAM,OAAO,CAAC;IAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;CAAE,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;AAqDjF;;;;GAIG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAG/C;AAED,iBAAS,OAAO,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EACxC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EACjB,OAAO,CAAC,EAAE,cAAc,GACvB,aAAa,CAAC,CAAC,CAAC,CA0FlB;AAED,eAAe,OAAO,CAAC"}
@@ -27,7 +27,7 @@ function getDynamicErrorBoundary() {
27
27
  return DynamicErrorBoundary;
28
28
  if (!React.Component)
29
29
  return null;
30
- DynamicErrorBoundary = class extends React.Component {
30
+ DynamicErrorBoundary = class extends (React.Component) {
31
31
  constructor(props) {
32
32
  super(props);
33
33
  this.state = { error: null };
@@ -1 +1 @@
1
- {"version":3,"file":"dynamic.js","sourceRoot":"","sources":["../../src/shims/dynamic.ts"],"names":[],"mappings":"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","sourcesContent":["\"use client\";\n/**\n * next/dynamic shim\n *\n * SSR-safe dynamic imports. On the server, uses React.lazy + Suspense so that\n * renderToReadableStream suspends until the dynamically-imported component is\n * available. On the client, also uses React.lazy for code splitting.\n *\n * Supports:\n * - dynamic(() => import('./Component'))\n * - dynamic(() => import('./Component'), { loading: () => <Spinner /> })\n * - dynamic(() => import('./Component'), { ssr: false })\n */\nimport React, { lazy, Suspense, type ComponentType, useState, useEffect } from \"react\";\n\ninterface DynamicOptions {\n loading?: ComponentType<{ error?: Error | null; isLoading?: boolean; pastDelay?: boolean }>;\n ssr?: boolean;\n}\n\ntype Loader<P> = () => Promise<{ default: ComponentType<P> } | ComponentType<P>>;\n\n/**\n * Lightweight error boundary that renders the loading component with the error\n * when a dynamic() loader rejects. Without this, loader failures would propagate\n * uncaught through React's rendering — this preserves the Next.js behavior where\n * the `loading` component can display errors.\n *\n * Lazily created because React.Component is not available in the RSC environment\n * (server components use a slimmed-down React that doesn't include class components).\n */\nlet DynamicErrorBoundary: any;\nfunction getDynamicErrorBoundary() {\n if (DynamicErrorBoundary) return DynamicErrorBoundary;\n if (!React.Component) return null;\n DynamicErrorBoundary = class extends React.Component<\n { fallback: ComponentType<{ error?: Error | null; isLoading?: boolean; pastDelay?: boolean }>; children: React.ReactNode },\n { error: Error | null }\n > {\n constructor(props: any) {\n super(props);\n this.state = { error: null };\n }\n static getDerivedStateFromError(error: unknown) {\n return { error: error instanceof Error ? error : new Error(String(error)) };\n }\n render() {\n if (this.state.error) {\n return React.createElement(this.props.fallback, {\n isLoading: false,\n pastDelay: true,\n error: this.state.error,\n });\n }\n return this.props.children;\n }\n };\n return DynamicErrorBoundary;\n}\n\n// Detect server vs client\nconst isServer = typeof window === \"undefined\";\n\n// Legacy preload queue — kept for backward compatibility with Pages Router\n// which calls flushPreloads() before rendering. The App Router uses React.lazy\n// + Suspense instead, so this queue is no longer populated.\nconst preloadQueue: Promise<void>[] = [];\n\n/**\n * Wait for all pending dynamic() preloads to resolve, then clear the queue.\n * Called by the Pages Router SSR handler before rendering.\n * No-op for the App Router path which uses React.lazy + Suspense.\n */\nexport function flushPreloads(): Promise<void[]> {\n const pending = preloadQueue.splice(0);\n return Promise.all(pending);\n}\n\nfunction dynamic<P extends object = object>(\n loader: Loader<P>,\n options?: DynamicOptions,\n): ComponentType<P> {\n const { loading: LoadingComponent, ssr = true } = options ?? {};\n\n // ssr: false — render nothing on the server, lazy-load on client\n if (!ssr) {\n if (isServer) {\n // On the server, just render the loading state or nothing\n const SSRFalse = (_props: P) => {\n return LoadingComponent\n ? React.createElement(LoadingComponent, { isLoading: true, pastDelay: true, error: null })\n : null;\n };\n SSRFalse.displayName = \"DynamicSSRFalse\";\n return SSRFalse;\n }\n\n // Client: use lazy with Suspense\n const LazyComponent = lazy(async () => {\n const mod = await loader();\n if (\"default\" in mod) return mod as { default: ComponentType<P> };\n return { default: mod as ComponentType<P> };\n });\n\n const ClientSSRFalse = (props: P) => {\n const [mounted, setMounted] = useState(false);\n useEffect(() => setMounted(true), []);\n\n if (!mounted) {\n return LoadingComponent\n ? React.createElement(LoadingComponent, { isLoading: true, pastDelay: true, error: null })\n : null;\n }\n\n const fallback = LoadingComponent\n ? React.createElement(LoadingComponent, { isLoading: true, pastDelay: true, error: null })\n : null;\n return React.createElement(\n Suspense,\n { fallback },\n React.createElement(LazyComponent, props),\n );\n };\n\n ClientSSRFalse.displayName = \"DynamicClientSSRFalse\";\n return ClientSSRFalse;\n }\n\n // SSR-enabled path\n if (isServer) {\n // Use React.lazy so that renderToReadableStream can suspend until the\n // dynamically-imported component is available. The previous eager-load\n // pattern relied on flushPreloads() being called before rendering, which\n // works for the Pages Router but not the App Router where client modules\n // are loaded lazily during RSC stream deserialization (issue #75).\n const LazyServer = lazy(async () => {\n const mod = await loader();\n if (\"default\" in mod) return mod as { default: ComponentType<P> };\n return { default: mod as ComponentType<P> };\n });\n\n const ServerDynamic = (props: P) => {\n const fallback = LoadingComponent\n ? React.createElement(LoadingComponent, { isLoading: true, pastDelay: true, error: null })\n : null;\n const lazyElement = React.createElement(LazyServer, props);\n // Wrap with error boundary so loader rejections render the loading\n // component with the error instead of propagating uncaught.\n const ErrorBoundary = LoadingComponent ? getDynamicErrorBoundary() : null;\n const content = ErrorBoundary\n ? React.createElement(ErrorBoundary, { fallback: LoadingComponent }, lazyElement)\n : lazyElement;\n return React.createElement(Suspense, { fallback }, content);\n };\n\n ServerDynamic.displayName = \"DynamicServer\";\n return ServerDynamic;\n }\n\n // Client path: standard React.lazy with Suspense\n const LazyComponent = lazy(async () => {\n const mod = await loader();\n if (\"default\" in mod) return mod as { default: ComponentType<P> };\n return { default: mod as ComponentType<P> };\n });\n\n const ClientDynamic = (props: P) => {\n const fallback = LoadingComponent\n ? React.createElement(LoadingComponent, { isLoading: true, pastDelay: true, error: null })\n : null;\n return React.createElement(\n Suspense,\n { fallback },\n React.createElement(LazyComponent, props),\n );\n };\n\n ClientDynamic.displayName = \"DynamicClient\";\n return ClientDynamic;\n}\n\nexport default dynamic;\n"]}
1
+ {"version":3,"file":"dynamic.js","sourceRoot":"","sources":["../../src/shims/dynamic.ts"],"names":[],"mappings":"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","sourcesContent":["\"use client\";\n/**\n * next/dynamic shim\n *\n * SSR-safe dynamic imports. On the server, uses React.lazy + Suspense so that\n * renderToReadableStream suspends until the dynamically-imported component is\n * available. On the client, also uses React.lazy for code splitting.\n *\n * Supports:\n * - dynamic(() => import('./Component'))\n * - dynamic(() => import('./Component'), { loading: () => <Spinner /> })\n * - dynamic(() => import('./Component'), { ssr: false })\n */\nimport React, { lazy, Suspense, type ComponentType, useState, useEffect } from \"react\";\n\ninterface DynamicOptions {\n loading?: ComponentType<{ error?: Error | null; isLoading?: boolean; pastDelay?: boolean }>;\n ssr?: boolean;\n}\n\ntype Loader<P> = () => Promise<{ default: ComponentType<P> } | ComponentType<P>>;\n\n/**\n * Lightweight error boundary that renders the loading component with the error\n * when a dynamic() loader rejects. Without this, loader failures would propagate\n * uncaught through React's rendering — this preserves the Next.js behavior where\n * the `loading` component can display errors.\n *\n * Lazily created because React.Component is not available in the RSC environment\n * (server components use a slimmed-down React that doesn't include class components).\n */\nlet DynamicErrorBoundary: any;\nfunction getDynamicErrorBoundary() {\n if (DynamicErrorBoundary) return DynamicErrorBoundary;\n if (!React.Component) return null;\n DynamicErrorBoundary = class extends (\n React.Component<\n {\n fallback: ComponentType<{ error?: Error | null; isLoading?: boolean; pastDelay?: boolean }>;\n children: React.ReactNode;\n },\n { error: Error | null }\n >\n ) {\n constructor(props: any) {\n super(props);\n this.state = { error: null };\n }\n static getDerivedStateFromError(error: unknown) {\n return { error: error instanceof Error ? error : new Error(String(error)) };\n }\n render() {\n if (this.state.error) {\n return React.createElement(this.props.fallback, {\n isLoading: false,\n pastDelay: true,\n error: this.state.error,\n });\n }\n return this.props.children;\n }\n };\n return DynamicErrorBoundary;\n}\n\n// Detect server vs client\nconst isServer = typeof window === \"undefined\";\n\n// Legacy preload queue — kept for backward compatibility with Pages Router\n// which calls flushPreloads() before rendering. The App Router uses React.lazy\n// + Suspense instead, so this queue is no longer populated.\nconst preloadQueue: Promise<void>[] = [];\n\n/**\n * Wait for all pending dynamic() preloads to resolve, then clear the queue.\n * Called by the Pages Router SSR handler before rendering.\n * No-op for the App Router path which uses React.lazy + Suspense.\n */\nexport function flushPreloads(): Promise<void[]> {\n const pending = preloadQueue.splice(0);\n return Promise.all(pending);\n}\n\nfunction dynamic<P extends object = object>(\n loader: Loader<P>,\n options?: DynamicOptions,\n): ComponentType<P> {\n const { loading: LoadingComponent, ssr = true } = options ?? {};\n\n // ssr: false — render nothing on the server, lazy-load on client\n if (!ssr) {\n if (isServer) {\n // On the server, just render the loading state or nothing\n const SSRFalse = (_props: P) => {\n return LoadingComponent\n ? React.createElement(LoadingComponent, { isLoading: true, pastDelay: true, error: null })\n : null;\n };\n SSRFalse.displayName = \"DynamicSSRFalse\";\n return SSRFalse;\n }\n\n // Client: use lazy with Suspense\n const LazyComponent = lazy(async () => {\n const mod = await loader();\n if (\"default\" in mod) return mod as { default: ComponentType<P> };\n return { default: mod as ComponentType<P> };\n });\n\n const ClientSSRFalse = (props: P) => {\n const [mounted, setMounted] = useState(false);\n useEffect(() => setMounted(true), []);\n\n if (!mounted) {\n return LoadingComponent\n ? React.createElement(LoadingComponent, { isLoading: true, pastDelay: true, error: null })\n : null;\n }\n\n const fallback = LoadingComponent\n ? React.createElement(LoadingComponent, { isLoading: true, pastDelay: true, error: null })\n : null;\n return React.createElement(Suspense, { fallback }, React.createElement(LazyComponent, props));\n };\n\n ClientSSRFalse.displayName = \"DynamicClientSSRFalse\";\n return ClientSSRFalse;\n }\n\n // SSR-enabled path\n if (isServer) {\n // Use React.lazy so that renderToReadableStream can suspend until the\n // dynamically-imported component is available. The previous eager-load\n // pattern relied on flushPreloads() being called before rendering, which\n // works for the Pages Router but not the App Router where client modules\n // are loaded lazily during RSC stream deserialization (issue #75).\n const LazyServer = lazy(async () => {\n const mod = await loader();\n if (\"default\" in mod) return mod as { default: ComponentType<P> };\n return { default: mod as ComponentType<P> };\n });\n\n const ServerDynamic = (props: P) => {\n const fallback = LoadingComponent\n ? React.createElement(LoadingComponent, { isLoading: true, pastDelay: true, error: null })\n : null;\n const lazyElement = React.createElement(LazyServer, props);\n // Wrap with error boundary so loader rejections render the loading\n // component with the error instead of propagating uncaught.\n const ErrorBoundary = LoadingComponent ? getDynamicErrorBoundary() : null;\n const content = ErrorBoundary\n ? React.createElement(ErrorBoundary, { fallback: LoadingComponent }, lazyElement)\n : lazyElement;\n return React.createElement(Suspense, { fallback }, content);\n };\n\n ServerDynamic.displayName = \"DynamicServer\";\n return ServerDynamic;\n }\n\n // Client path: standard React.lazy with Suspense\n const LazyComponent = lazy(async () => {\n const mod = await loader();\n if (\"default\" in mod) return mod as { default: ComponentType<P> };\n return { default: mod as ComponentType<P> };\n });\n\n const ClientDynamic = (props: P) => {\n const fallback = LoadingComponent\n ? React.createElement(LoadingComponent, { isLoading: true, pastDelay: true, error: null })\n : null;\n return React.createElement(Suspense, { fallback }, React.createElement(LazyComponent, props));\n };\n\n ClientDynamic.displayName = \"DynamicClient\";\n return ClientDynamic;\n}\n\nexport default dynamic;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"error-boundary.d.ts","sourceRoot":"","sources":["../../src/shims/error-boundary.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,IAAI,CAAA;KAAE,CAAC,CAAC;IACnE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,UAAU,kBAAkB;IAC1B,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB;AAED;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,KAAK,CAAC,SAAS,CAChD,kBAAkB,EAClB,kBAAkB,CACnB;gBACa,KAAK,EAAE,kBAAkB;IAKrC,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,KAAK,GAAG,kBAAkB;IAiBjE,KAAK,aAEH;IAEF,MAAM;CASP;AAMD,UAAU,qBAAqB;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AA8DD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,qBAAqB,2CAO7E"}
1
+ {"version":3,"file":"error-boundary.d.ts","sourceRoot":"","sources":["../../src/shims/error-boundary.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,IAAI,CAAA;KAAE,CAAC,CAAC;IACnE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,UAAU,kBAAkB;IAC1B,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB;AAED;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,KAAK,CAAC,SAAS,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;gBAC5E,KAAK,EAAE,kBAAkB;IAKrC,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,KAAK,GAAG,kBAAkB;IAiBjE,KAAK,aAEH;IAEF,MAAM;CAOP;AAMD,UAAU,qBAAqB;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AA2DD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,qBAAqB,2CAO7E"}
@@ -33,7 +33,7 @@ export class ErrorBoundary extends React.Component {
33
33
  render() {
34
34
  if (this.state.error) {
35
35
  const FallbackComponent = this.props.fallback;
36
- return (_jsx(FallbackComponent, { error: this.state.error, reset: this.reset }));
36
+ return _jsx(FallbackComponent, { error: this.state.error, reset: this.reset });
37
37
  }
38
38
  return this.props.children;
39
39
  }
@@ -62,8 +62,7 @@ class NotFoundBoundaryInner extends React.Component {
62
62
  static getDerivedStateFromError(error) {
63
63
  if (error && typeof error === "object" && "digest" in error) {
64
64
  const digest = String(error.digest);
65
- if (digest === "NEXT_NOT_FOUND" ||
66
- digest.startsWith("NEXT_HTTP_ERROR_FALLBACK;404")) {
65
+ if (digest === "NEXT_NOT_FOUND" || digest.startsWith("NEXT_HTTP_ERROR_FALLBACK;404")) {
67
66
  return { notFound: true };
68
67
  }
69
68
  }
@@ -1 +1 @@
1
- {"version":3,"file":"error-boundary.js","sourceRoot":"","sources":["../../src/shims/error-boundary.tsx"],"names":[],"mappings":"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","sourcesContent":["\"use client\";\n\nimport React from \"react\";\n// eslint-disable-next-line @typescript-eslint/no-require-imports -- next/navigation is shimmed\nimport { usePathname } from \"next/navigation\";\n\ninterface ErrorBoundaryProps {\n fallback: React.ComponentType<{ error: Error; reset: () => void }>;\n children: React.ReactNode;\n}\n\ninterface ErrorBoundaryState {\n error: Error | null;\n}\n\n/**\n * Generic ErrorBoundary used to wrap route segments with error.tsx.\n * This must be a client component since error boundaries use\n * componentDidCatch / getDerivedStateFromError.\n */\nexport class ErrorBoundary extends React.Component<\n ErrorBoundaryProps,\n ErrorBoundaryState\n> {\n constructor(props: ErrorBoundaryProps) {\n super(props);\n this.state = { error: null };\n }\n\n static getDerivedStateFromError(error: Error): ErrorBoundaryState {\n // notFound(), forbidden(), unauthorized(), and redirect() must propagate\n // past error boundaries. Re-throw them so they bubble up to the\n // framework's HTTP access fallback / redirect handler.\n if (error && typeof error === \"object\" && \"digest\" in error) {\n const digest = String((error as any).digest);\n if (\n digest === \"NEXT_NOT_FOUND\" || // legacy compat\n digest.startsWith(\"NEXT_HTTP_ERROR_FALLBACK;\") ||\n digest.startsWith(\"NEXT_REDIRECT;\")\n ) {\n throw error;\n }\n }\n return { error };\n }\n\n reset = () => {\n this.setState({ error: null });\n };\n\n render() {\n if (this.state.error) {\n const FallbackComponent = this.props.fallback;\n return (\n <FallbackComponent error={this.state.error} reset={this.reset} />\n );\n }\n return this.props.children;\n }\n}\n\n// ---------------------------------------------------------------------------\n// NotFoundBoundary — catches notFound() on the client and renders not-found.tsx\n// ---------------------------------------------------------------------------\n\ninterface NotFoundBoundaryProps {\n fallback: React.ReactNode;\n children: React.ReactNode;\n}\n\ninterface NotFoundBoundaryInnerProps extends NotFoundBoundaryProps {\n pathname: string;\n}\n\ninterface NotFoundBoundaryState {\n notFound: boolean;\n previousPathname: string;\n}\n\n/**\n * Inner class component that catches notFound() errors and renders the\n * not-found.tsx fallback. Resets when the pathname changes (client navigation)\n * so a previous notFound() doesn't permanently stick.\n *\n * The ErrorBoundary above re-throws notFound errors so they propagate up to this\n * boundary. This must be placed above the ErrorBoundary in the component tree.\n */\nclass NotFoundBoundaryInner extends React.Component<\n NotFoundBoundaryInnerProps,\n NotFoundBoundaryState\n> {\n constructor(props: NotFoundBoundaryInnerProps) {\n super(props);\n this.state = { notFound: false, previousPathname: props.pathname };\n }\n\n static getDerivedStateFromProps(\n props: NotFoundBoundaryInnerProps,\n state: NotFoundBoundaryState,\n ): NotFoundBoundaryState | null {\n // Reset the boundary when the route changes so a previous notFound()\n // doesn't permanently stick after client-side navigation.\n if (props.pathname !== state.previousPathname && state.notFound) {\n return { notFound: false, previousPathname: props.pathname };\n }\n return { notFound: state.notFound, previousPathname: props.pathname };\n }\n\n static getDerivedStateFromError(error: Error): Partial<NotFoundBoundaryState> {\n if (error && typeof error === \"object\" && \"digest\" in error) {\n const digest = String((error as any).digest);\n if (\n digest === \"NEXT_NOT_FOUND\" ||\n digest.startsWith(\"NEXT_HTTP_ERROR_FALLBACK;404\")\n ) {\n return { notFound: true };\n }\n }\n // Not a notFound error — re-throw so it reaches an ErrorBoundary or propagates\n throw error;\n }\n\n render() {\n if (this.state.notFound) {\n return this.props.fallback;\n }\n return this.props.children;\n }\n}\n\n/**\n * Wrapper that reads the current pathname and passes it to the inner class\n * component. This enables automatic reset on client-side navigation.\n */\nexport function NotFoundBoundary({ fallback, children }: NotFoundBoundaryProps) {\n const pathname = usePathname();\n return (\n <NotFoundBoundaryInner pathname={pathname} fallback={fallback}>\n {children}\n </NotFoundBoundaryInner>\n );\n}\n"]}
1
+ {"version":3,"file":"error-boundary.js","sourceRoot":"","sources":["../../src/shims/error-boundary.tsx"],"names":[],"mappings":"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","sourcesContent":["\"use client\";\n\nimport React from \"react\";\n// eslint-disable-next-line @typescript-eslint/no-require-imports -- next/navigation is shimmed\nimport { usePathname } from \"next/navigation\";\n\ninterface ErrorBoundaryProps {\n fallback: React.ComponentType<{ error: Error; reset: () => void }>;\n children: React.ReactNode;\n}\n\ninterface ErrorBoundaryState {\n error: Error | null;\n}\n\n/**\n * Generic ErrorBoundary used to wrap route segments with error.tsx.\n * This must be a client component since error boundaries use\n * componentDidCatch / getDerivedStateFromError.\n */\nexport class ErrorBoundary extends React.Component<ErrorBoundaryProps, ErrorBoundaryState> {\n constructor(props: ErrorBoundaryProps) {\n super(props);\n this.state = { error: null };\n }\n\n static getDerivedStateFromError(error: Error): ErrorBoundaryState {\n // notFound(), forbidden(), unauthorized(), and redirect() must propagate\n // past error boundaries. Re-throw them so they bubble up to the\n // framework's HTTP access fallback / redirect handler.\n if (error && typeof error === \"object\" && \"digest\" in error) {\n const digest = String((error as any).digest);\n if (\n digest === \"NEXT_NOT_FOUND\" || // legacy compat\n digest.startsWith(\"NEXT_HTTP_ERROR_FALLBACK;\") ||\n digest.startsWith(\"NEXT_REDIRECT;\")\n ) {\n throw error;\n }\n }\n return { error };\n }\n\n reset = () => {\n this.setState({ error: null });\n };\n\n render() {\n if (this.state.error) {\n const FallbackComponent = this.props.fallback;\n return <FallbackComponent error={this.state.error} reset={this.reset} />;\n }\n return this.props.children;\n }\n}\n\n// ---------------------------------------------------------------------------\n// NotFoundBoundary — catches notFound() on the client and renders not-found.tsx\n// ---------------------------------------------------------------------------\n\ninterface NotFoundBoundaryProps {\n fallback: React.ReactNode;\n children: React.ReactNode;\n}\n\ninterface NotFoundBoundaryInnerProps extends NotFoundBoundaryProps {\n pathname: string;\n}\n\ninterface NotFoundBoundaryState {\n notFound: boolean;\n previousPathname: string;\n}\n\n/**\n * Inner class component that catches notFound() errors and renders the\n * not-found.tsx fallback. Resets when the pathname changes (client navigation)\n * so a previous notFound() doesn't permanently stick.\n *\n * The ErrorBoundary above re-throws notFound errors so they propagate up to this\n * boundary. This must be placed above the ErrorBoundary in the component tree.\n */\nclass NotFoundBoundaryInner extends React.Component<\n NotFoundBoundaryInnerProps,\n NotFoundBoundaryState\n> {\n constructor(props: NotFoundBoundaryInnerProps) {\n super(props);\n this.state = { notFound: false, previousPathname: props.pathname };\n }\n\n static getDerivedStateFromProps(\n props: NotFoundBoundaryInnerProps,\n state: NotFoundBoundaryState,\n ): NotFoundBoundaryState | null {\n // Reset the boundary when the route changes so a previous notFound()\n // doesn't permanently stick after client-side navigation.\n if (props.pathname !== state.previousPathname && state.notFound) {\n return { notFound: false, previousPathname: props.pathname };\n }\n return { notFound: state.notFound, previousPathname: props.pathname };\n }\n\n static getDerivedStateFromError(error: Error): Partial<NotFoundBoundaryState> {\n if (error && typeof error === \"object\" && \"digest\" in error) {\n const digest = String((error as any).digest);\n if (digest === \"NEXT_NOT_FOUND\" || digest.startsWith(\"NEXT_HTTP_ERROR_FALLBACK;404\")) {\n return { notFound: true };\n }\n }\n // Not a notFound error — re-throw so it reaches an ErrorBoundary or propagates\n throw error;\n }\n\n render() {\n if (this.state.notFound) {\n return this.props.fallback;\n }\n return this.props.children;\n }\n}\n\n/**\n * Wrapper that reads the current pathname and passes it to the inner class\n * component. This enables automatic reset on client-side navigation.\n */\nexport function NotFoundBoundary({ fallback, children }: NotFoundBoundaryProps) {\n const pathname = usePathname();\n return (\n <NotFoundBoundaryInner pathname={pathname} fallback={fallback}>\n {children}\n </NotFoundBoundaryInner>\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/shims/error.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,UAAU,UAAU;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,iBAAS,cAAc,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,UAAU,GAAG,KAAK,CAAC,YAAY,CA2D7E;AAED,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/shims/error.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,UAAU,UAAU;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,iBAAS,cAAc,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,UAAU,GAAG,KAAK,CAAC,YAAY,CAyD7E;AAED,eAAe,cAAc,CAAC"}
@@ -7,9 +7,7 @@
7
7
  */
8
8
  import React from "react";
9
9
  function ErrorComponent({ statusCode, title }) {
10
- const defaultTitle = statusCode === 404
11
- ? "This page could not be found"
12
- : "Internal Server Error";
10
+ const defaultTitle = statusCode === 404 ? "This page could not be found" : "Internal Server Error";
13
11
  const displayTitle = title ?? defaultTitle;
14
12
  return React.createElement("div", {
15
13
  style: {
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/shims/error.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,SAAS,cAAc,CAAC,EAAE,UAAU,EAAE,KAAK,EAAc;IACvD,MAAM,YAAY,GAChB,UAAU,KAAK,GAAG;QAChB,CAAC,CAAC,8BAA8B;QAChC,CAAC,CAAC,uBAAuB,CAAC;IAE9B,MAAM,YAAY,GAAG,KAAK,IAAI,YAAY,CAAC;IAE3C,OAAO,KAAK,CAAC,aAAa,CACxB,KAAK,EACL;QACE,KAAK,EAAE;YACL,UAAU,EACR,4FAA4F;YAC9F,MAAM,EAAE,OAAO;YACf,SAAS,EAAE,QAAiB;YAC5B,OAAO,EAAE,MAAM;YACf,aAAa,EAAE,QAAiB;YAChC,UAAU,EAAE,QAAQ;YACpB,cAAc,EAAE,QAAQ;SACzB;KACF,EACD,KAAK,CAAC,aAAa,CACjB,KAAK,EACL,IAAI,EACJ,KAAK,CAAC,aAAa,CACjB,IAAI,EACJ;QACE,KAAK,EAAE;YACL,OAAO,EAAE,cAAc;YACvB,MAAM,EAAE,YAAY;YACpB,OAAO,EAAE,YAAY;YACrB,QAAQ,EAAE,EAAE;YACZ,UAAU,EAAE,GAAG;YACf,aAAa,EAAE,KAAK;YACpB,UAAU,EAAE,MAAM;YAClB,WAAW,EAAE,6BAA6B;SAC3C;KACF,EACD,UAAU,CACX,EACD,KAAK,CAAC,aAAa,CACjB,KAAK,EACL,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,EACtC,KAAK,CAAC,aAAa,CACjB,IAAI,EACJ;QACE,KAAK,EAAE;YACL,QAAQ,EAAE,EAAE;YACZ,UAAU,EAAE,GAAG;YACf,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE,CAAC;SACV;KACF,EACD,YAAY,GAAG,GAAG,CACnB,CACF,CACF,CACF,CAAC;AACJ,CAAC;AAED,eAAe,cAAc,CAAC","sourcesContent":["/**\n * next/error shim\n *\n * Provides the default Next.js error page component.\n * Used by apps that import `import Error from 'next/error'` for\n * custom error handling in getServerSideProps or API routes.\n */\nimport React from \"react\";\n\ninterface ErrorProps {\n statusCode: number;\n title?: string;\n withDarkMode?: boolean;\n}\n\nfunction ErrorComponent({ statusCode, title }: ErrorProps): React.ReactElement {\n const defaultTitle =\n statusCode === 404\n ? \"This page could not be found\"\n : \"Internal Server Error\";\n\n const displayTitle = title ?? defaultTitle;\n\n return React.createElement(\n \"div\",\n {\n style: {\n fontFamily:\n '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif',\n height: \"100vh\",\n textAlign: \"center\" as const,\n display: \"flex\",\n flexDirection: \"column\" as const,\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n },\n React.createElement(\n \"div\",\n null,\n React.createElement(\n \"h1\",\n {\n style: {\n display: \"inline-block\",\n margin: \"0 20px 0 0\",\n padding: \"0 23px 0 0\",\n fontSize: 24,\n fontWeight: 500,\n verticalAlign: \"top\",\n lineHeight: \"49px\",\n borderRight: \"1px solid rgba(0, 0, 0, .3)\",\n },\n },\n statusCode,\n ),\n React.createElement(\n \"div\",\n { style: { display: \"inline-block\" } },\n React.createElement(\n \"h2\",\n {\n style: {\n fontSize: 14,\n fontWeight: 400,\n lineHeight: \"49px\",\n margin: 0,\n },\n },\n displayTitle + \".\",\n ),\n ),\n ),\n );\n}\n\nexport default ErrorComponent;\n"]}
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/shims/error.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,SAAS,cAAc,CAAC,EAAE,UAAU,EAAE,KAAK,EAAc;IACvD,MAAM,YAAY,GAChB,UAAU,KAAK,GAAG,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,uBAAuB,CAAC;IAEhF,MAAM,YAAY,GAAG,KAAK,IAAI,YAAY,CAAC;IAE3C,OAAO,KAAK,CAAC,aAAa,CACxB,KAAK,EACL;QACE,KAAK,EAAE;YACL,UAAU,EACR,4FAA4F;YAC9F,MAAM,EAAE,OAAO;YACf,SAAS,EAAE,QAAiB;YAC5B,OAAO,EAAE,MAAM;YACf,aAAa,EAAE,QAAiB;YAChC,UAAU,EAAE,QAAQ;YACpB,cAAc,EAAE,QAAQ;SACzB;KACF,EACD,KAAK,CAAC,aAAa,CACjB,KAAK,EACL,IAAI,EACJ,KAAK,CAAC,aAAa,CACjB,IAAI,EACJ;QACE,KAAK,EAAE;YACL,OAAO,EAAE,cAAc;YACvB,MAAM,EAAE,YAAY;YACpB,OAAO,EAAE,YAAY;YACrB,QAAQ,EAAE,EAAE;YACZ,UAAU,EAAE,GAAG;YACf,aAAa,EAAE,KAAK;YACpB,UAAU,EAAE,MAAM;YAClB,WAAW,EAAE,6BAA6B;SAC3C;KACF,EACD,UAAU,CACX,EACD,KAAK,CAAC,aAAa,CACjB,KAAK,EACL,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,EACtC,KAAK,CAAC,aAAa,CACjB,IAAI,EACJ;QACE,KAAK,EAAE;YACL,QAAQ,EAAE,EAAE;YACZ,UAAU,EAAE,GAAG;YACf,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE,CAAC;SACV;KACF,EACD,YAAY,GAAG,GAAG,CACnB,CACF,CACF,CACF,CAAC;AACJ,CAAC;AAED,eAAe,cAAc,CAAC","sourcesContent":["/**\n * next/error shim\n *\n * Provides the default Next.js error page component.\n * Used by apps that import `import Error from 'next/error'` for\n * custom error handling in getServerSideProps or API routes.\n */\nimport React from \"react\";\n\ninterface ErrorProps {\n statusCode: number;\n title?: string;\n withDarkMode?: boolean;\n}\n\nfunction ErrorComponent({ statusCode, title }: ErrorProps): React.ReactElement {\n const defaultTitle =\n statusCode === 404 ? \"This page could not be found\" : \"Internal Server Error\";\n\n const displayTitle = title ?? defaultTitle;\n\n return React.createElement(\n \"div\",\n {\n style: {\n fontFamily:\n '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif',\n height: \"100vh\",\n textAlign: \"center\" as const,\n display: \"flex\",\n flexDirection: \"column\" as const,\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n },\n React.createElement(\n \"div\",\n null,\n React.createElement(\n \"h1\",\n {\n style: {\n display: \"inline-block\",\n margin: \"0 20px 0 0\",\n padding: \"0 23px 0 0\",\n fontSize: 24,\n fontWeight: 500,\n verticalAlign: \"top\",\n lineHeight: \"49px\",\n borderRight: \"1px solid rgba(0, 0, 0, .3)\",\n },\n },\n statusCode,\n ),\n React.createElement(\n \"div\",\n { style: { display: \"inline-block\" } },\n React.createElement(\n \"h2\",\n {\n style: {\n fontSize: 14,\n fontWeight: 400,\n lineHeight: \"49px\",\n margin: 0,\n },\n },\n displayTitle + \".\",\n ),\n ),\n ),\n );\n}\n\nexport default ErrorComponent;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"fetch-cache.d.ts","sourceRoot":"","sources":["../../src/shims/fetch-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AA0WH,UAAU,gBAAgB;IACxB,UAAU,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAGD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,WAAW;QACnB,IAAI,CAAC,EAAE,gBAAgB,CAAC;KACzB;CACF;AA0CD;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,EAAE,CAEhD;AAoOD;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,IAAI,MAAM,IAAI,CAO3C;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAG3E;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,UAAU,CAAC,KAAK,CAE1D"}
1
+ {"version":3,"file":"fetch-cache.d.ts","sourceRoot":"","sources":["../../src/shims/fetch-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AA0XH,UAAU,gBAAgB;IACxB,UAAU,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAGD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,WAAW;QACnB,IAAI,CAAC,EAAE,gBAAgB,CAAC;KACzB;CACF;AA4CD;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,EAAE,CAEhD;AA8PD;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,IAAI,MAAM,IAAI,CAO3C;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAG3E;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,UAAU,CAAC,KAAK,CAE1D"}
@@ -18,7 +18,8 @@
18
18
  * Or use the async helper:
19
19
  * await runWithFetchCache(async () => { ... render ... });
20
20
  */
21
- import { getCacheHandler, } from "./cache.js";
21
+ import { getCacheHandler } from "./cache.js";
22
+ import { getRequestExecutionContext } from "./request-context.js";
22
23
  import { AsyncLocalStorage } from "node:async_hooks";
23
24
  // ---------------------------------------------------------------------------
24
25
  // Cache key generation
@@ -51,14 +52,16 @@ function collectHeaders(input, init) {
51
52
  const merged = {};
52
53
  // Start with headers from Request object (if any)
53
54
  if (input instanceof Request && input.headers) {
54
- input.headers.forEach((v, k) => { merged[k] = v; });
55
+ input.headers.forEach((v, k) => {
56
+ merged[k] = v;
57
+ });
55
58
  }
56
59
  // Override with headers from init (init takes precedence per fetch spec)
57
60
  if (init?.headers) {
58
- const headers = init.headers instanceof Headers
59
- ? init.headers
60
- : new Headers(init.headers);
61
- headers.forEach((v, k) => { merged[k] = v; });
61
+ const headers = init.headers instanceof Headers ? init.headers : new Headers(init.headers);
62
+ headers.forEach((v, k) => {
63
+ merged[k] = v;
64
+ });
62
65
  }
63
66
  // Remove blocklisted headers
64
67
  for (const blocked of HEADER_BLOCKLIST) {
@@ -82,15 +85,19 @@ async function serializeFormData(formData, pushBodyChunk, getTotalBodyBytes) {
82
85
  pushBodyChunk(JSON.stringify([key, { kind: "string", value: val }]));
83
86
  continue;
84
87
  }
85
- if (val.size > MAX_CACHE_KEY_BODY_BYTES || getTotalBodyBytes() + val.size > MAX_CACHE_KEY_BODY_BYTES) {
88
+ if (val.size > MAX_CACHE_KEY_BODY_BYTES ||
89
+ getTotalBodyBytes() + val.size > MAX_CACHE_KEY_BODY_BYTES) {
86
90
  throw new BodyTooLargeForCacheKeyError();
87
91
  }
88
- pushBodyChunk(JSON.stringify([key, {
92
+ pushBodyChunk(JSON.stringify([
93
+ key,
94
+ {
89
95
  kind: "file",
90
96
  name: val.name,
91
97
  type: val.type,
92
98
  value: await val.text(),
93
- }]));
99
+ },
100
+ ]));
94
101
  }
95
102
  }
96
103
  function getParsedFormContentType(contentType) {
@@ -107,9 +114,7 @@ function stripMultipartBoundary(contentType) {
107
114
  .filter(Boolean)
108
115
  .filter((param) => !/^boundary\s*=/i.test(param));
109
116
  const normalizedType = type.trim().toLowerCase();
110
- return keptParams.length > 0
111
- ? `${normalizedType}; ${keptParams.join("; ")}`
112
- : normalizedType;
117
+ return keptParams.length > 0 ? `${normalizedType}; ${keptParams.join("; ")}` : normalizedType;
113
118
  }
114
119
  async function readRequestBodyChunksWithinLimit(request) {
115
120
  const contentLengthHeader = request.headers.get("content-length");
@@ -265,9 +270,10 @@ async function serializeBody(input, init) {
265
270
  });
266
271
  const formData = await boundedRequest.formData();
267
272
  await serializeFormData(formData, pushBodyChunk, getTotalBodyBytes);
268
- canonicalizedContentType = formContentType === "multipart/form-data" && contentType
269
- ? stripMultipartBoundary(contentType)
270
- : undefined;
273
+ canonicalizedContentType =
274
+ formContentType === "multipart/form-data" && contentType
275
+ ? stripMultipartBoundary(contentType)
276
+ : undefined;
271
277
  return { bodyChunks, canonicalizedContentType };
272
278
  }
273
279
  catch (err) {
@@ -343,11 +349,13 @@ async function buildFetchCacheKey(input, init) {
343
349
  // multi-environment module instances via Symbol.for().
344
350
  const _ORIG_FETCH_KEY = Symbol.for("vinext.fetchCache.originalFetch");
345
351
  const _gFetch = globalThis;
346
- const originalFetch = (_gFetch[_ORIG_FETCH_KEY] ??= globalThis.fetch);
352
+ const originalFetch = (_gFetch[_ORIG_FETCH_KEY] ??=
353
+ globalThis.fetch);
347
354
  const _ALS_KEY = Symbol.for("vinext.fetchCache.als");
348
355
  const _FALLBACK_KEY = Symbol.for("vinext.fetchCache.fallback");
349
356
  const _g = globalThis;
350
- const _als = (_g[_ALS_KEY] ??= new AsyncLocalStorage());
357
+ const _als = (_g[_ALS_KEY] ??=
358
+ new AsyncLocalStorage());
351
359
  const _fallbackState = (_g[_FALLBACK_KEY] ??= {
352
360
  currentRequestTags: [],
353
361
  });
@@ -395,7 +403,10 @@ function createPatchedFetch() {
395
403
  return originalFetch(input, init);
396
404
  }
397
405
  // Explicit no-store or no-cache — bypass cache entirely
398
- if (cacheDirective === "no-store" || cacheDirective === "no-cache" || nextOpts?.revalidate === false || nextOpts?.revalidate === 0) {
406
+ if (cacheDirective === "no-store" ||
407
+ cacheDirective === "no-cache" ||
408
+ nextOpts?.revalidate === false ||
409
+ nextOpts?.revalidate === 0) {
399
410
  // Strip the `next` property before passing to real fetch
400
411
  const cleanInit = stripNextFromInit(init);
401
412
  return originalFetch(input, cleanInit);
@@ -415,9 +426,10 @@ function createPatchedFetch() {
415
426
  let revalidateSeconds;
416
427
  if (cacheDirective === "force-cache") {
417
428
  // force-cache means cache indefinitely (we use a very large number)
418
- revalidateSeconds = nextOpts?.revalidate && typeof nextOpts.revalidate === "number"
419
- ? nextOpts.revalidate
420
- : 31536000; // 1 year
429
+ revalidateSeconds =
430
+ nextOpts?.revalidate && typeof nextOpts.revalidate === "number"
431
+ ? nextOpts.revalidate
432
+ : 31536000; // 1 year
421
433
  }
422
434
  else if (typeof nextOpts?.revalidate === "number" && nextOpts.revalidate > 0) {
423
435
  revalidateSeconds = nextOpts.revalidate;
@@ -441,7 +453,8 @@ function createPatchedFetch() {
441
453
  cacheKey = await buildFetchCacheKey(input, init);
442
454
  }
443
455
  catch (err) {
444
- if (err instanceof BodyTooLargeForCacheKeyError || err instanceof SkipCacheKeyGenerationError) {
456
+ if (err instanceof BodyTooLargeForCacheKeyError ||
457
+ err instanceof SkipCacheKeyGenerationError) {
445
458
  const cleanInit = stripNextFromInit(init);
446
459
  return originalFetch(input, cleanInit);
447
460
  }
@@ -473,18 +486,26 @@ function createPatchedFetch() {
473
486
  // However, if we have a stale entry, return it and trigger background refetch.
474
487
  if (cached?.value && cached.value.kind === "FETCH" && cached.cacheState === "stale") {
475
488
  const staleData = cached.value.data;
476
- // Background refetch
489
+ // Background refetch — register with waitUntil so Cloudflare Workers
490
+ // keeps the isolate alive until the refetch completes.
477
491
  const cleanInit = stripNextFromInit(init);
478
- originalFetch(input, cleanInit).then(async (freshResp) => {
492
+ const refetchPromise = originalFetch(input, cleanInit)
493
+ .then(async (freshResp) => {
479
494
  const freshBody = await freshResp.text();
480
495
  const freshHeaders = {};
481
- freshResp.headers.forEach((v, k) => { freshHeaders[k] = v; });
496
+ freshResp.headers.forEach((v, k) => {
497
+ freshHeaders[k] = v;
498
+ });
482
499
  const freshValue = {
483
500
  kind: "FETCH",
484
501
  data: {
485
502
  headers: freshHeaders,
486
503
  body: freshBody,
487
- url: typeof input === "string" ? input : input instanceof URL ? input.toString() : input.url,
504
+ url: typeof input === "string"
505
+ ? input
506
+ : input instanceof URL
507
+ ? input.toString()
508
+ : input.url,
488
509
  status: freshResp.status,
489
510
  },
490
511
  tags,
@@ -495,9 +516,11 @@ function createPatchedFetch() {
495
516
  tags,
496
517
  revalidate: revalidateSeconds,
497
518
  });
498
- }).catch((err) => {
519
+ })
520
+ .catch((err) => {
499
521
  console.error("[vinext] fetch cache background revalidation failed:", err);
500
522
  });
523
+ getRequestExecutionContext()?.waitUntil(refetchPromise);
501
524
  // Return stale data immediately
502
525
  return new Response(staleData.body, {
503
526
  status: staleData.status ?? 200,
@@ -518,7 +541,9 @@ function createPatchedFetch() {
518
541
  const cloned = response.clone();
519
542
  const body = await cloned.text();
520
543
  const headers = {};
521
- cloned.headers.forEach((v, k) => { headers[k] = v; });
544
+ cloned.headers.forEach((v, k) => {
545
+ headers[k] = v;
546
+ });
522
547
  const cacheValue = {
523
548
  kind: "FETCH",
524
549
  data: {
@@ -531,11 +556,13 @@ function createPatchedFetch() {
531
556
  revalidate: revalidateSeconds,
532
557
  };
533
558
  // Store in cache (fire-and-forget)
534
- handler.set(cacheKey, cacheValue, {
559
+ handler
560
+ .set(cacheKey, cacheValue, {
535
561
  fetchCache: true,
536
562
  tags,
537
563
  revalidate: revalidateSeconds,
538
- }).catch((err) => {
564
+ })
565
+ .catch((err) => {
539
566
  console.error("[vinext] fetch cache write error:", err);
540
567
  });
541
568
  }