@netlify/plugin-nextjs 4.41.3 → 5.0.0-beta.1

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 (241) hide show
  1. package/README.md +61 -17
  2. package/dist/build/cache.js +15 -0
  3. package/dist/build/content/prerendered.js +16 -0
  4. package/dist/build/content/server.js +18 -0
  5. package/dist/build/content/static.js +20 -0
  6. package/dist/build/functions/edge.js +14 -0
  7. package/dist/build/functions/server.js +16 -0
  8. package/dist/build/plugin-context.js +17 -0
  9. package/dist/esm-chunks/chunk-4AJYXTWN.js +17 -0
  10. package/dist/esm-chunks/chunk-5N2CWXSJ.js +564 -0
  11. package/dist/esm-chunks/chunk-A22224GM.js +113 -0
  12. package/dist/esm-chunks/chunk-AVWFCGVE.js +5536 -0
  13. package/dist/esm-chunks/chunk-B6QMRLBH.js +255 -0
  14. package/dist/esm-chunks/chunk-G3GM7JNF.js +92 -0
  15. package/dist/esm-chunks/chunk-GGHAQM5D.js +28 -0
  16. package/dist/esm-chunks/chunk-NOX2JUQZ.js +89 -0
  17. package/dist/esm-chunks/chunk-R4NHZWGU.js +32 -0
  18. package/dist/esm-chunks/chunk-RSKIKBZH.js +44 -0
  19. package/dist/esm-chunks/chunk-UXLNY5XK.js +86 -0
  20. package/dist/esm-chunks/chunk-VP3PT3VV.js +119 -0
  21. package/dist/esm-chunks/chunk-YZXA5QBC.js +60 -0
  22. package/dist/esm-chunks/chunk-Z7ZMLVTM.js +78 -0
  23. package/dist/index.js +66 -0
  24. package/dist/run/config.js +18 -0
  25. package/dist/run/constants.js +15 -0
  26. package/dist/run/handlers/cache.cjs +852 -0
  27. package/dist/run/handlers/server.js +3297 -0
  28. package/dist/run/headers.js +19 -0
  29. package/dist/run/next.cjs +1058 -0
  30. package/dist/run/revalidate.js +13 -0
  31. package/dist/run/systemlog.js +15 -0
  32. package/edge-runtime/README.md +29 -0
  33. package/edge-runtime/lib/headers.ts +26 -0
  34. package/edge-runtime/lib/middleware.ts +60 -0
  35. package/edge-runtime/lib/next-request.ts +59 -0
  36. package/edge-runtime/lib/response.ts +145 -0
  37. package/{src/templates/edge-shared/next-utils.ts → edge-runtime/lib/routing.ts} +64 -20
  38. package/edge-runtime/lib/util.ts +26 -0
  39. package/edge-runtime/middleware.ts +53 -0
  40. package/edge-runtime/shim/index.js +11 -0
  41. package/{src/templates → edge-runtime}/vendor/deno.land/x/html_rewriter@v0.1.0-pre.17/index.ts +1 -1
  42. package/edge-runtime/vendor/import_map.json +13 -0
  43. package/edge-runtime/vendor.ts +18 -0
  44. package/manifest.yml +1 -1
  45. package/package.json +23 -60
  46. package/index.js +0 -1
  47. package/lib/constants.js +0 -56
  48. package/lib/helpers/analysis.js +0 -115
  49. package/lib/helpers/cache.js +0 -46
  50. package/lib/helpers/compiler.js +0 -119
  51. package/lib/helpers/config.js +0 -192
  52. package/lib/helpers/dev.js +0 -20
  53. package/lib/helpers/edge.js +0 -328
  54. package/lib/helpers/files.js +0 -335
  55. package/lib/helpers/flags.js +0 -46
  56. package/lib/helpers/functions.js +0 -437
  57. package/lib/helpers/functionsMetaData.js +0 -46
  58. package/lib/helpers/matchers.js +0 -41
  59. package/lib/helpers/middlewareWatcher.js +0 -12
  60. package/lib/helpers/pack.js +0 -41
  61. package/lib/helpers/redirects.js +0 -246
  62. package/lib/helpers/types.js +0 -2
  63. package/lib/helpers/utils.js +0 -226
  64. package/lib/helpers/verification.js +0 -182
  65. package/lib/index.js +0 -194
  66. package/lib/templates/blobStorage.js +0 -30
  67. package/lib/templates/getApiHandler.js +0 -120
  68. package/lib/templates/getHandler.js +0 -201
  69. package/lib/templates/getPageResolver.js +0 -54
  70. package/lib/templates/handlerUtils.js +0 -268
  71. package/lib/templates/ipx.js +0 -13
  72. package/lib/templates/requireHooks.js +0 -105
  73. package/lib/templates/server.js +0 -159
  74. package/lib/templates/vendor.js +0 -20
  75. package/src/templates/edge/bundle.js +0 -8
  76. package/src/templates/edge/function-runtime.ts +0 -24
  77. package/src/templates/edge/imageconfig.json +0 -3
  78. package/src/templates/edge/ipx.ts +0 -5
  79. package/src/templates/edge/middleware-runtime.ts +0 -62
  80. package/src/templates/edge/next-dev.js +0 -104
  81. package/src/templates/edge/rsc-data.ts +0 -5
  82. package/src/templates/edge/shims.js +0 -77
  83. package/src/templates/edge-shared/nextConfig.json +0 -3
  84. package/src/templates/edge-shared/prerender-manifest.json +0 -7
  85. package/src/templates/edge-shared/rsc-data.ts +0 -78
  86. package/src/templates/edge-shared/utils.test.ts +0 -114
  87. package/src/templates/edge-shared/utils.ts +0 -315
  88. package/src/templates/vendor/import_map.json +0 -13
  89. /package/{src/templates/edge → edge-runtime}/matchers.json +0 -0
  90. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.134.0/fmt/colors.ts +0 -0
  91. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.134.0/testing/_diff.ts +0 -0
  92. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.134.0/testing/asserts.ts +0 -0
  93. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/_util/asserts.ts +0 -0
  94. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/_util/os.ts +0 -0
  95. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/async/abortable.ts +0 -0
  96. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/async/deadline.ts +0 -0
  97. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/async/debounce.ts +0 -0
  98. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/async/deferred.ts +0 -0
  99. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/async/delay.ts +0 -0
  100. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/async/mod.ts +0 -0
  101. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/async/mux_async_iterator.ts +0 -0
  102. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/async/pool.ts +0 -0
  103. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/async/retry.ts +0 -0
  104. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/async/tee.ts +0 -0
  105. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/bytes/index_of_needle.ts +0 -0
  106. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/crypto/timing_safe_equal.ts +0 -0
  107. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/datetime/to_imf.ts +0 -0
  108. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/encoding/base64.ts +0 -0
  109. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/encoding/base64url.ts +0 -0
  110. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/flags/mod.ts +0 -0
  111. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/fmt/colors.ts +0 -0
  112. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/fmt/printf.ts +0 -0
  113. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/http/cookie.ts +0 -0
  114. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/_core.ts +0 -0
  115. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/_events.d.ts +0 -0
  116. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/_events.mjs +0 -0
  117. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/_global.d.ts +0 -0
  118. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/_next_tick.ts +0 -0
  119. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/_process/exiting.ts +0 -0
  120. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/_process/process.ts +0 -0
  121. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/_process/stdio.mjs +0 -0
  122. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/_process/streams.mjs +0 -0
  123. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/_stream.d.ts +0 -0
  124. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/_stream.mjs +0 -0
  125. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/_util/_util_callbackify.ts +0 -0
  126. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/_utils.ts +0 -0
  127. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/assert.ts +0 -0
  128. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/assertion_error.ts +0 -0
  129. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/async_hooks.ts +0 -0
  130. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/buffer.ts +0 -0
  131. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/events.ts +0 -0
  132. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/buffer.d.ts +0 -0
  133. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/buffer.mjs +0 -0
  134. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/crypto/_keys.ts +0 -0
  135. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/crypto/constants.ts +0 -0
  136. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/error_codes.ts +0 -0
  137. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/errors.ts +0 -0
  138. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/fixed_queue.ts +0 -0
  139. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/hide_stack_frames.ts +0 -0
  140. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/net.ts +0 -0
  141. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/normalize_encoding.mjs +0 -0
  142. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/options.ts +0 -0
  143. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/primordials.mjs +0 -0
  144. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/process/per_thread.mjs +0 -0
  145. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/readline/callbacks.mjs +0 -0
  146. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/readline/utils.mjs +0 -0
  147. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/streams/destroy.mjs +0 -0
  148. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/streams/end-of-stream.mjs +0 -0
  149. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/streams/utils.mjs +0 -0
  150. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/util/comparisons.ts +0 -0
  151. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/util/debuglog.ts +0 -0
  152. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/util/inspect.mjs +0 -0
  153. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/util/types.ts +0 -0
  154. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/util.mjs +0 -0
  155. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal/validators.mjs +0 -0
  156. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/_libuv_winerror.ts +0 -0
  157. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/_listen.ts +0 -0
  158. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/_node.ts +0 -0
  159. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/_timingSafeEqual.ts +0 -0
  160. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/_utils.ts +0 -0
  161. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/_winerror.ts +0 -0
  162. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/ares.ts +0 -0
  163. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/async_wrap.ts +0 -0
  164. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/buffer.ts +0 -0
  165. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/cares_wrap.ts +0 -0
  166. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/config.ts +0 -0
  167. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/connection_wrap.ts +0 -0
  168. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/constants.ts +0 -0
  169. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/contextify.ts +0 -0
  170. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/credentials.ts +0 -0
  171. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/crypto.ts +0 -0
  172. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/errors.ts +0 -0
  173. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/fs.ts +0 -0
  174. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/fs_dir.ts +0 -0
  175. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/fs_event_wrap.ts +0 -0
  176. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/handle_wrap.ts +0 -0
  177. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/heap_utils.ts +0 -0
  178. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/http_parser.ts +0 -0
  179. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/icu.ts +0 -0
  180. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/inspector.ts +0 -0
  181. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/js_stream.ts +0 -0
  182. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/messaging.ts +0 -0
  183. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/mod.ts +0 -0
  184. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/module_wrap.ts +0 -0
  185. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/native_module.ts +0 -0
  186. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/natives.ts +0 -0
  187. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/node_file.ts +0 -0
  188. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/node_options.ts +0 -0
  189. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/options.ts +0 -0
  190. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/os.ts +0 -0
  191. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/performance.ts +0 -0
  192. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/pipe_wrap.ts +0 -0
  193. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/process_methods.ts +0 -0
  194. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/report.ts +0 -0
  195. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/serdes.ts +0 -0
  196. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/signal_wrap.ts +0 -0
  197. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/spawn_sync.ts +0 -0
  198. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/stream_wrap.ts +0 -0
  199. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/string_decoder.ts +0 -0
  200. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/symbols.ts +0 -0
  201. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/task_queue.ts +0 -0
  202. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/tcp_wrap.ts +0 -0
  203. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/timers.ts +0 -0
  204. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/tls_wrap.ts +0 -0
  205. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/trace_events.ts +0 -0
  206. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/tty_wrap.ts +0 -0
  207. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/types.ts +0 -0
  208. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/udp_wrap.ts +0 -0
  209. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/url.ts +0 -0
  210. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/util.ts +0 -0
  211. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/uv.ts +0 -0
  212. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/v8.ts +0 -0
  213. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/worker.ts +0 -0
  214. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/internal_binding/zlib.ts +0 -0
  215. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/process.ts +0 -0
  216. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/stream.ts +0 -0
  217. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/string_decoder.ts +0 -0
  218. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/util/types.ts +0 -0
  219. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/node/util.ts +0 -0
  220. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/path/_constants.ts +0 -0
  221. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/path/_interface.ts +0 -0
  222. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/path/_util.ts +0 -0
  223. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/path/common.ts +0 -0
  224. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/path/glob.ts +0 -0
  225. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/path/mod.ts +0 -0
  226. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/path/posix.ts +0 -0
  227. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/path/separator.ts +0 -0
  228. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/path/win32.ts +0 -0
  229. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/streams/write_all.ts +0 -0
  230. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/testing/_diff.ts +0 -0
  231. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/testing/_format.ts +0 -0
  232. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/testing/asserts.ts +0 -0
  233. /package/{src/templates → edge-runtime}/vendor/deno.land/std@0.175.0/types.d.ts +0 -0
  234. /package/{src/templates → edge-runtime}/vendor/deno.land/x/html_rewriter@v0.1.0-pre.17/vendor/asyncify.js +0 -0
  235. /package/{src/templates → edge-runtime}/vendor/deno.land/x/html_rewriter@v0.1.0-pre.17/vendor/html_rewriter.d.ts +0 -0
  236. /package/{src/templates → edge-runtime}/vendor/deno.land/x/html_rewriter@v0.1.0-pre.17/vendor/html_rewriter.js +0 -0
  237. /package/{src/templates → edge-runtime}/vendor/deno.land/x/path_to_regexp@v6.2.1/index.ts +0 -0
  238. /package/{src/templates → edge-runtime}/vendor/esm.sh/v91/next@12.2.5/deno/dist/compiled/cookie.js +0 -0
  239. /package/{src/templates → edge-runtime}/vendor/esm.sh/v91/next@12.2.5/deno/dist/server/web/spec-extension/request.js +0 -0
  240. /package/{src/templates → edge-runtime}/vendor/esm.sh/v91/next@12.2.5/deno/dist/server/web/spec-extension/response.js +0 -0
  241. /package/{src/templates → edge-runtime}/vendor/raw.githubusercontent.com/worker-tools/resolvable-promise/master/index.ts +0 -0
@@ -0,0 +1,255 @@
1
+
2
+ const require = await (async () => {
3
+ const { createRequire } = await import("node:module");
4
+ return createRequire(import.meta.url);
5
+ })();
6
+
7
+ import {
8
+ __commonJS,
9
+ __require,
10
+ __toESM
11
+ } from "./chunk-RSKIKBZH.js";
12
+
13
+ // node_modules/is-promise/index.js
14
+ var require_is_promise = __commonJS({
15
+ "node_modules/is-promise/index.js"(exports, module) {
16
+ module.exports = isPromise;
17
+ module.exports.default = isPromise;
18
+ function isPromise(obj) {
19
+ return !!obj && (typeof obj === "object" || typeof obj === "function") && typeof obj.then === "function";
20
+ }
21
+ }
22
+ });
23
+
24
+ // node_modules/@netlify/functions/dist/lib/consts.js
25
+ var require_consts = __commonJS({
26
+ "node_modules/@netlify/functions/dist/lib/consts.js"(exports) {
27
+ "use strict";
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.METADATA_VERSION = exports.HTTP_STATUS_OK = exports.HTTP_STATUS_METHOD_NOT_ALLOWED = exports.BUILDER_FUNCTIONS_FLAG = void 0;
30
+ var BUILDER_FUNCTIONS_FLAG = true;
31
+ exports.BUILDER_FUNCTIONS_FLAG = BUILDER_FUNCTIONS_FLAG;
32
+ var HTTP_STATUS_METHOD_NOT_ALLOWED = 405;
33
+ exports.HTTP_STATUS_METHOD_NOT_ALLOWED = HTTP_STATUS_METHOD_NOT_ALLOWED;
34
+ var HTTP_STATUS_OK = 200;
35
+ exports.HTTP_STATUS_OK = HTTP_STATUS_OK;
36
+ var METADATA_VERSION = 1;
37
+ exports.METADATA_VERSION = METADATA_VERSION;
38
+ }
39
+ });
40
+
41
+ // node_modules/@netlify/functions/dist/lib/builder.js
42
+ var require_builder = __commonJS({
43
+ "node_modules/@netlify/functions/dist/lib/builder.js"(exports) {
44
+ "use strict";
45
+ var __importDefault = exports && exports.__importDefault || function(mod) {
46
+ return mod && mod.__esModule ? mod : { "default": mod };
47
+ };
48
+ Object.defineProperty(exports, "__esModule", { value: true });
49
+ exports.builder = void 0;
50
+ var is_promise_1 = __importDefault(require_is_promise());
51
+ var consts_js_1 = require_consts();
52
+ var augmentResponse = (response) => {
53
+ if (!response) {
54
+ return response;
55
+ }
56
+ const metadata = { version: consts_js_1.METADATA_VERSION, builder_function: consts_js_1.BUILDER_FUNCTIONS_FLAG, ttl: response.ttl || 0 };
57
+ return {
58
+ ...response,
59
+ metadata
60
+ };
61
+ };
62
+ var wrapHandler = (handler) => (
63
+ // eslint-disable-next-line promise/prefer-await-to-callbacks
64
+ (event, context, callback) => {
65
+ if (event.httpMethod !== "GET" && event.httpMethod !== "HEAD") {
66
+ return Promise.resolve({
67
+ body: "Method Not Allowed",
68
+ statusCode: consts_js_1.HTTP_STATUS_METHOD_NOT_ALLOWED
69
+ });
70
+ }
71
+ const modifiedEvent = {
72
+ ...event,
73
+ multiValueQueryStringParameters: {},
74
+ queryStringParameters: {}
75
+ };
76
+ const wrappedCallback = (error, response) => (
77
+ // eslint-disable-next-line promise/prefer-await-to-callbacks
78
+ callback ? callback(error, augmentResponse(response)) : null
79
+ );
80
+ const execution = handler(modifiedEvent, context, wrappedCallback);
81
+ if ((0, is_promise_1.default)(execution)) {
82
+ return execution.then(augmentResponse);
83
+ }
84
+ return execution;
85
+ }
86
+ );
87
+ exports.builder = wrapHandler;
88
+ }
89
+ });
90
+
91
+ // node_modules/@netlify/functions/dist/lib/purge_cache.js
92
+ var require_purge_cache = __commonJS({
93
+ "node_modules/@netlify/functions/dist/lib/purge_cache.js"(exports) {
94
+ "use strict";
95
+ Object.defineProperty(exports, "__esModule", { value: true });
96
+ exports.purgeCache = void 0;
97
+ var process_1 = __require("process");
98
+ var purgeCache2 = async (options = {}) => {
99
+ if (globalThis.fetch === void 0) {
100
+ throw new Error("`fetch` is not available. Please ensure you're using Node.js version 18.0.0 or above. Refer to https://ntl.fyi/functions-runtime for more information.");
101
+ }
102
+ const payload = {
103
+ cache_tags: options.tags,
104
+ deploy_alias: options.deployAlias
105
+ };
106
+ const token = process_1.env.NETLIFY_PURGE_API_TOKEN || options.token;
107
+ if ("siteSlug" in options) {
108
+ payload.site_slug = options.siteSlug;
109
+ } else if ("domain" in options) {
110
+ payload.domain = options.domain;
111
+ } else {
112
+ const siteID = options.siteID || process_1.env.SITE_ID;
113
+ if (!siteID) {
114
+ throw new Error("The Netlify site ID was not found in the execution environment. Please supply it manually using the `siteID` property.");
115
+ }
116
+ payload.site_id = siteID;
117
+ }
118
+ if (!token) {
119
+ throw new Error("The cache purge API token was not found in the execution environment. Please supply it manually using the `token` property.");
120
+ }
121
+ const apiURL = options.apiURL || "https://api.netlify.com";
122
+ const response = await fetch(`${apiURL}/api/v1/purge`, {
123
+ method: "POST",
124
+ headers: {
125
+ "Content-Type": "application/json; charset=utf8",
126
+ Authorization: `Bearer ${token}`
127
+ },
128
+ body: JSON.stringify(payload)
129
+ });
130
+ if (!response.ok) {
131
+ throw new Error(`Cache purge API call returned an unexpected status code: ${response.status}`);
132
+ }
133
+ };
134
+ exports.purgeCache = purgeCache2;
135
+ }
136
+ });
137
+
138
+ // node_modules/@netlify/functions/dist/lib/schedule.js
139
+ var require_schedule = __commonJS({
140
+ "node_modules/@netlify/functions/dist/lib/schedule.js"(exports) {
141
+ "use strict";
142
+ Object.defineProperty(exports, "__esModule", { value: true });
143
+ exports.schedule = void 0;
144
+ var schedule = (cron, handler) => handler;
145
+ exports.schedule = schedule;
146
+ }
147
+ });
148
+
149
+ // node_modules/@netlify/functions/dist/lib/stream.js
150
+ var require_stream = __commonJS({
151
+ "node_modules/@netlify/functions/dist/lib/stream.js"(exports) {
152
+ "use strict";
153
+ Object.defineProperty(exports, "__esModule", { value: true });
154
+ exports.stream = void 0;
155
+ var node_stream_1 = __require("node:stream");
156
+ var node_util_1 = __require("node:util");
157
+ var pipeline = (0, node_util_1.promisify)(node_stream_1.pipeline);
158
+ var stream = (handler) => awslambda.streamifyResponse(async (event, responseStream, context) => {
159
+ const { body, ...httpResponseMetadata } = await handler(event, context);
160
+ const responseBody = awslambda.HttpResponseStream.from(responseStream, httpResponseMetadata);
161
+ if (typeof body === "undefined") {
162
+ responseBody.end();
163
+ } else if (typeof body === "string") {
164
+ responseBody.write(body);
165
+ responseBody.end();
166
+ } else {
167
+ await pipeline(body, responseBody);
168
+ }
169
+ });
170
+ exports.stream = stream;
171
+ }
172
+ });
173
+
174
+ // node_modules/@netlify/functions/dist/function/index.js
175
+ var require_function = __commonJS({
176
+ "node_modules/@netlify/functions/dist/function/index.js"(exports) {
177
+ "use strict";
178
+ Object.defineProperty(exports, "__esModule", { value: true });
179
+ }
180
+ });
181
+
182
+ // node_modules/@netlify/functions/dist/main.js
183
+ var require_main = __commonJS({
184
+ "node_modules/@netlify/functions/dist/main.js"(exports) {
185
+ "use strict";
186
+ var __createBinding = exports && exports.__createBinding || (Object.create ? function(o, m, k, k2) {
187
+ if (k2 === void 0)
188
+ k2 = k;
189
+ var desc = Object.getOwnPropertyDescriptor(m, k);
190
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
191
+ desc = { enumerable: true, get: function() {
192
+ return m[k];
193
+ } };
194
+ }
195
+ Object.defineProperty(o, k2, desc);
196
+ } : function(o, m, k, k2) {
197
+ if (k2 === void 0)
198
+ k2 = k;
199
+ o[k2] = m[k];
200
+ });
201
+ var __exportStar = exports && exports.__exportStar || function(m, exports2) {
202
+ for (var p in m)
203
+ if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports2, p))
204
+ __createBinding(exports2, m, p);
205
+ };
206
+ Object.defineProperty(exports, "__esModule", { value: true });
207
+ exports.stream = exports.schedule = exports.purgeCache = exports.builder = void 0;
208
+ var builder_js_1 = require_builder();
209
+ Object.defineProperty(exports, "builder", { enumerable: true, get: function() {
210
+ return builder_js_1.builder;
211
+ } });
212
+ var purge_cache_js_1 = require_purge_cache();
213
+ Object.defineProperty(exports, "purgeCache", { enumerable: true, get: function() {
214
+ return purge_cache_js_1.purgeCache;
215
+ } });
216
+ var schedule_js_1 = require_schedule();
217
+ Object.defineProperty(exports, "schedule", { enumerable: true, get: function() {
218
+ return schedule_js_1.schedule;
219
+ } });
220
+ var stream_js_1 = require_stream();
221
+ Object.defineProperty(exports, "stream", { enumerable: true, get: function() {
222
+ return stream_js_1.stream;
223
+ } });
224
+ __exportStar(require_function(), exports);
225
+ }
226
+ });
227
+
228
+ // src/run/revalidate.ts
229
+ var import_functions = __toESM(require_main(), 1);
230
+ var nextResponseProxy = (res) => {
231
+ return new Proxy(res, {
232
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
233
+ get(target, key) {
234
+ const originalValue = target[key];
235
+ if (key === "revalidate") {
236
+ return async function newRevalidate(...args) {
237
+ try {
238
+ console.debug("Purging cache for:", [args[0]]);
239
+ await (0, import_functions.purgeCache)({ tags: [`_N_T_${args[0]}`] });
240
+ } catch {
241
+ throw new Error(
242
+ `An internal error occurred while trying to purge cache for ${args[0]}}`
243
+ );
244
+ }
245
+ return originalValue?.apply(target, args);
246
+ };
247
+ }
248
+ return originalValue;
249
+ }
250
+ });
251
+ };
252
+
253
+ export {
254
+ nextResponseProxy
255
+ };
@@ -0,0 +1,92 @@
1
+
2
+ const require = await (async () => {
3
+ const { createRequire } = await import("node:module");
4
+ return createRequire(import.meta.url);
5
+ })();
6
+
7
+ import {
8
+ require_out
9
+ } from "./chunk-AVWFCGVE.js";
10
+ import {
11
+ __toESM
12
+ } from "./chunk-RSKIKBZH.js";
13
+
14
+ // src/build/content/prerendered.ts
15
+ var import_fast_glob = __toESM(require_out(), 1);
16
+ import { existsSync } from "node:fs";
17
+ import { readFile } from "node:fs/promises";
18
+ import { join } from "node:path";
19
+ var routeToFilePath = (path) => path.replace(/^\//, "") || "index";
20
+ var buildPagesCacheValue = async (path) => ({
21
+ kind: "PAGE",
22
+ html: await readFile(`${path}.html`, "utf-8"),
23
+ pageData: JSON.parse(await readFile(`${path}.json`, "utf-8"))
24
+ });
25
+ var buildAppCacheValue = async (path) => ({
26
+ kind: "PAGE",
27
+ html: await readFile(`${path}.html`, "utf-8"),
28
+ pageData: await readFile(`${path}.rsc`, "utf-8"),
29
+ ...JSON.parse(await readFile(`${path}.meta`, "utf-8"))
30
+ });
31
+ var buildRouteCacheValue = async (path) => ({
32
+ kind: "ROUTE",
33
+ body: await readFile(`${path}.body`, "utf-8"),
34
+ ...JSON.parse(await readFile(`${path}.meta`, "utf-8"))
35
+ });
36
+ var buildFetchCacheValue = async (path) => ({
37
+ kind: "FETCH",
38
+ ...JSON.parse(await readFile(path, "utf-8"))
39
+ });
40
+ var copyPrerenderedContent = async (ctx) => {
41
+ try {
42
+ const manifest = await ctx.getPrerenderManifest();
43
+ await Promise.all(
44
+ Object.entries(manifest.routes).map(async ([route, meta]) => {
45
+ const key = routeToFilePath(route);
46
+ let value;
47
+ switch (true) {
48
+ case meta.dataRoute?.endsWith(".json"):
49
+ value = await buildPagesCacheValue(join(ctx.publishDir, "server/pages", key));
50
+ break;
51
+ case meta.dataRoute?.endsWith(".rsc"):
52
+ value = await buildAppCacheValue(join(ctx.publishDir, "server/app", key));
53
+ break;
54
+ case meta.dataRoute === null:
55
+ value = await buildRouteCacheValue(join(ctx.publishDir, "server/app", key));
56
+ break;
57
+ default:
58
+ throw new Error(`Unrecognized content: ${route}`);
59
+ }
60
+ await ctx.writeCacheEntry(key, value);
61
+ })
62
+ );
63
+ if (existsSync(join(ctx.publishDir, `server/app/_not-found.html`))) {
64
+ const key = "404";
65
+ const value = await buildAppCacheValue(join(ctx.publishDir, "server/app/_not-found"));
66
+ await ctx.writeCacheEntry(key, value);
67
+ }
68
+ } catch (error) {
69
+ ctx.failBuild("Failed assembling prerendered content for upload", error);
70
+ }
71
+ };
72
+ var copyFetchContent = async (ctx) => {
73
+ try {
74
+ const paths = await (0, import_fast_glob.default)(["!(*.*)"], {
75
+ cwd: join(ctx.publishDir, "cache/fetch-cache"),
76
+ extglob: true
77
+ });
78
+ await Promise.all(
79
+ paths.map(async (key) => {
80
+ const value = await buildFetchCacheValue(join(ctx.publishDir, "cache/fetch-cache", key));
81
+ await ctx.writeCacheEntry(key, value);
82
+ })
83
+ );
84
+ } catch (error) {
85
+ ctx.failBuild("Failed assembling fetch content for upload", error);
86
+ }
87
+ };
88
+
89
+ export {
90
+ copyPrerenderedContent,
91
+ copyFetchContent
92
+ };
@@ -0,0 +1,28 @@
1
+
2
+ const require = await (async () => {
3
+ const { createRequire } = await import("node:module");
4
+ return createRequire(import.meta.url);
5
+ })();
6
+
7
+
8
+ // src/build/cache.ts
9
+ import { join } from "node:path";
10
+ var saveBuildCache = async (ctx) => {
11
+ if (await ctx.utils.cache.save(join(ctx.publishDir, "cache"))) {
12
+ console.log("Next.js cache saved.");
13
+ } else {
14
+ console.log("No Next.js cache to save.");
15
+ }
16
+ };
17
+ var restoreBuildCache = async (ctx) => {
18
+ if (await ctx.utils.cache.restore(join(ctx.publishDir, "cache"))) {
19
+ console.log("Next.js cache restored.");
20
+ } else {
21
+ console.log("No Next.js cache to restore.");
22
+ }
23
+ };
24
+
25
+ export {
26
+ saveBuildCache,
27
+ restoreBuildCache
28
+ };
@@ -0,0 +1,89 @@
1
+
2
+ const require = await (async () => {
3
+ const { createRequire } = await import("node:module");
4
+ return createRequire(import.meta.url);
5
+ })();
6
+
7
+ import {
8
+ copyNextDependencies,
9
+ copyNextServerCode,
10
+ writeTagsManifest
11
+ } from "./chunk-A22224GM.js";
12
+ import {
13
+ require_out
14
+ } from "./chunk-AVWFCGVE.js";
15
+ import {
16
+ SERVER_HANDLER_NAME
17
+ } from "./chunk-VP3PT3VV.js";
18
+ import {
19
+ __toESM
20
+ } from "./chunk-RSKIKBZH.js";
21
+
22
+ // src/build/functions/server.ts
23
+ var import_fast_glob = __toESM(require_out(), 1);
24
+ import { cp, mkdir, rm, writeFile } from "fs/promises";
25
+ import { join } from "node:path";
26
+ var copyHandlerDependencies = async (ctx) => {
27
+ const fileList = await (0, import_fast_glob.glob)("dist/**/*", { cwd: ctx.pluginDir });
28
+ await Promise.all(
29
+ [...fileList].map(
30
+ (path) => cp(join(ctx.pluginDir, path), join(ctx.serverHandlerDir, path), { recursive: true })
31
+ )
32
+ );
33
+ };
34
+ var writeHandlerManifest = async (ctx) => {
35
+ await writeFile(
36
+ join(ctx.serverHandlerDir, `${SERVER_HANDLER_NAME}.json`),
37
+ JSON.stringify({
38
+ config: {
39
+ name: "Next.js Server Handler",
40
+ generator: `${ctx.pluginName}@${ctx.pluginVersion}`,
41
+ nodeBundler: "none",
42
+ includedFiles: [
43
+ `${SERVER_HANDLER_NAME}*`,
44
+ "package.json",
45
+ "dist/**",
46
+ ".next/**",
47
+ ".netlify/**",
48
+ "node_modules/**"
49
+ ],
50
+ includedFilesBasePath: ctx.serverHandlerDir
51
+ },
52
+ version: 1
53
+ }),
54
+ "utf-8"
55
+ );
56
+ };
57
+ var writePackageMetadata = async (ctx) => {
58
+ await writeFile(join(ctx.serverHandlerDir, "package.json"), JSON.stringify({ type: "module" }));
59
+ };
60
+ var writeHandlerFile = async (ctx) => {
61
+ await writeFile(
62
+ join(ctx.serverHandlerDir, `${SERVER_HANDLER_NAME}.js`),
63
+ `
64
+ import handler from './dist/run/handlers/server.js';
65
+ export default handler;
66
+ export const config = {
67
+ path: '/*',
68
+ preferStatic: true
69
+ };
70
+ `
71
+ );
72
+ };
73
+ var createServerHandler = async (ctx) => {
74
+ await rm(ctx.serverFunctionsDir, { recursive: true, force: true });
75
+ await mkdir(join(ctx.serverHandlerDir, ".netlify"), { recursive: true });
76
+ await Promise.all([
77
+ copyNextServerCode(ctx),
78
+ copyNextDependencies(ctx),
79
+ writeTagsManifest(ctx),
80
+ copyHandlerDependencies(ctx),
81
+ writeHandlerManifest(ctx),
82
+ writePackageMetadata(ctx),
83
+ writeHandlerFile(ctx)
84
+ ]);
85
+ };
86
+
87
+ export {
88
+ createServerHandler
89
+ };
@@ -0,0 +1,32 @@
1
+
2
+ const require = await (async () => {
3
+ const { createRequire } = await import("node:module");
4
+ return createRequire(import.meta.url);
5
+ })();
6
+
7
+ import {
8
+ PLUGIN_DIR
9
+ } from "./chunk-4AJYXTWN.js";
10
+
11
+ // src/run/config.ts
12
+ import { readFile } from "node:fs/promises";
13
+ import { resolve } from "node:path";
14
+ var getRunConfig = async () => {
15
+ return JSON.parse(await readFile(resolve(".next/required-server-files.json"), "utf-8")).config;
16
+ };
17
+ var setRunConfig = (config) => {
18
+ config.experimental = {
19
+ ...config.experimental,
20
+ incrementalCacheHandlerPath: `${PLUGIN_DIR}/dist/run/handlers/cache.cjs`
21
+ };
22
+ process.env.__NEXT_PRIVATE_STANDALONE_CONFIG = JSON.stringify(config);
23
+ };
24
+ var getTagsManifest = async () => {
25
+ return JSON.parse(await readFile(resolve(".netlify/tags-manifest.json"), "utf-8"));
26
+ };
27
+
28
+ export {
29
+ getRunConfig,
30
+ setRunConfig,
31
+ getTagsManifest
32
+ };
@@ -0,0 +1,44 @@
1
+
2
+ const require = await (async () => {
3
+ const { createRequire } = await import("node:module");
4
+ return createRequire(import.meta.url);
5
+ })();
6
+
7
+ var __create = Object.create;
8
+ var __defProp = Object.defineProperty;
9
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
10
+ var __getOwnPropNames = Object.getOwnPropertyNames;
11
+ var __getProtoOf = Object.getPrototypeOf;
12
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
13
+ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
14
+ get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
15
+ }) : x)(function(x) {
16
+ if (typeof require !== "undefined")
17
+ return require.apply(this, arguments);
18
+ throw Error('Dynamic require of "' + x + '" is not supported');
19
+ });
20
+ var __commonJS = (cb, mod) => function __require2() {
21
+ return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
22
+ };
23
+ var __copyProps = (to, from, except, desc) => {
24
+ if (from && typeof from === "object" || typeof from === "function") {
25
+ for (let key of __getOwnPropNames(from))
26
+ if (!__hasOwnProp.call(to, key) && key !== except)
27
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
28
+ }
29
+ return to;
30
+ };
31
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
32
+ // If the importer is in node compatibility mode or this is not an ESM
33
+ // file that has been converted to a CommonJS file using a Babel-
34
+ // compatible transform (i.e. "__esModule" has not been set), then set
35
+ // "default" to the CommonJS "module.exports" for node compatibility.
36
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
37
+ mod
38
+ ));
39
+
40
+ export {
41
+ __require,
42
+ __commonJS,
43
+ __toESM
44
+ };
@@ -0,0 +1,86 @@
1
+
2
+ const require = await (async () => {
3
+ const { createRequire } = await import("node:module");
4
+ return createRequire(import.meta.url);
5
+ })();
6
+
7
+ import {
8
+ EDGE_HANDLER_NAME
9
+ } from "./chunk-VP3PT3VV.js";
10
+
11
+ // src/build/functions/edge.ts
12
+ import { cp, mkdir, readFile, rm, writeFile } from "node:fs/promises";
13
+ import { dirname, join } from "node:path";
14
+ var writeEdgeManifest = async (ctx, manifest) => {
15
+ await mkdir(ctx.edgeFunctionsDir, { recursive: true });
16
+ await writeFile(join(ctx.edgeFunctionsDir, "manifest.json"), JSON.stringify(manifest, null, 2));
17
+ };
18
+ var writeHandlerFile = async (ctx, { matchers, name }) => {
19
+ const handlerName = getHandlerName({ name });
20
+ const handlerDirectory = join(ctx.edgeFunctionsDir, handlerName);
21
+ const handlerRuntimeDirectory = join(handlerDirectory, "edge-runtime");
22
+ await cp(join(ctx.pluginDir, "edge-runtime"), handlerRuntimeDirectory, {
23
+ recursive: true
24
+ });
25
+ await writeFile(join(handlerRuntimeDirectory, "matchers.json"), JSON.stringify(matchers));
26
+ await writeFile(
27
+ join(handlerDirectory, `${handlerName}.js`),
28
+ `
29
+ import {handleMiddleware} from './edge-runtime/middleware.ts';
30
+ import handler from './server/${name}.js';
31
+ export default (req, context) => handleMiddleware(req, context, handler);
32
+ `
33
+ );
34
+ };
35
+ var copyHandlerDependencies = async (ctx, { name, files }) => {
36
+ const edgeRuntimePath = join(ctx.pluginDir, "edge-runtime");
37
+ const srcDir = ctx.resolve(".next/standalone/.next");
38
+ const shimPath = join(edgeRuntimePath, "shim/index.js");
39
+ const shim = await readFile(shimPath, "utf8");
40
+ const imports = `import './edge-runtime-webpack.js';`;
41
+ const exports = `export default _ENTRIES["middleware_${name}"].default;`;
42
+ await Promise.all(
43
+ files.map(async (file) => {
44
+ const destDir = join(ctx.edgeFunctionsDir, getHandlerName({ name }));
45
+ if (file === `server/${name}.js`) {
46
+ const entrypoint = await readFile(join(srcDir, file), "utf8");
47
+ const parts = [shim, imports, entrypoint, exports];
48
+ await mkdir(dirname(join(destDir, file)), { recursive: true });
49
+ await writeFile(join(destDir, file), parts.join("\n;"));
50
+ return;
51
+ }
52
+ await cp(join(srcDir, file), join(destDir, file));
53
+ })
54
+ );
55
+ };
56
+ var createEdgeHandler = async (ctx, definition) => {
57
+ await copyHandlerDependencies(ctx, definition);
58
+ await writeHandlerFile(ctx, definition);
59
+ };
60
+ var getHandlerName = ({ name }) => `${EDGE_HANDLER_NAME}-${name.replace(/\W/g, "-")}`;
61
+ var buildHandlerDefinition = (ctx, { name, matchers, page }) => ({
62
+ function: getHandlerName({ name }),
63
+ name: name === "middleware" ? "Next.js Middleware Handler" : `Next.js Edge Handler: ${page}`,
64
+ pattern: matchers[0].regexp,
65
+ cache: name === "middleware" ? void 0 : "manual",
66
+ generator: `${ctx.pluginName}@${ctx.pluginVersion}`
67
+ });
68
+ var createEdgeHandlers = async (ctx) => {
69
+ await rm(ctx.edgeFunctionsDir, { recursive: true, force: true });
70
+ const nextManifest = await ctx.getMiddlewareManifest();
71
+ const nextDefinitions = [
72
+ ...Object.values(nextManifest.middleware)
73
+ // ...Object.values(nextManifest.functions)
74
+ ];
75
+ await Promise.all(nextDefinitions.map((def) => createEdgeHandler(ctx, def)));
76
+ const netlifyDefinitions = nextDefinitions.map((def) => buildHandlerDefinition(ctx, def));
77
+ const netlifyManifest = {
78
+ version: 1,
79
+ functions: netlifyDefinitions
80
+ };
81
+ await writeEdgeManifest(ctx, netlifyManifest);
82
+ };
83
+
84
+ export {
85
+ createEdgeHandlers
86
+ };