@payloadcms/next 3.74.0-canary.6 → 3.74.0-internal-debug.1b84a48

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 (470) hide show
  1. package/dist/auth/login.d.ts +9 -12
  2. package/dist/auth/login.d.ts.map +1 -1
  3. package/dist/auth/login.js +52 -58
  4. package/dist/auth/login.js.map +1 -1
  5. package/dist/auth/logout.d.ts +2 -2
  6. package/dist/auth/logout.d.ts.map +1 -1
  7. package/dist/auth/logout.js +39 -44
  8. package/dist/auth/logout.js.map +1 -1
  9. package/dist/auth/refresh.d.ts +2 -1
  10. package/dist/auth/refresh.d.ts.map +1 -1
  11. package/dist/auth/refresh.js +45 -47
  12. package/dist/auth/refresh.js.map +1 -1
  13. package/dist/cjs/withPayload.cjs +65 -24
  14. package/dist/cjs/withPayload.cjs.map +2 -2
  15. package/dist/config.js +1 -0
  16. package/dist/config.js.map +1 -1
  17. package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js +9 -15
  18. package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js.map +1 -1
  19. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +40 -71
  20. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
  21. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +65 -59
  22. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  23. package/dist/elements/DocumentHeader/Tabs/Tab/index.scss +38 -0
  24. package/dist/elements/DocumentHeader/Tabs/index.js +80 -70
  25. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  26. package/dist/elements/DocumentHeader/Tabs/index.scss +54 -0
  27. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +16 -23
  28. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  29. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.scss +10 -0
  30. package/dist/elements/DocumentHeader/Tabs/tabs/index.js +61 -69
  31. package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
  32. package/dist/elements/DocumentHeader/index.js +48 -28
  33. package/dist/elements/DocumentHeader/index.js.map +1 -1
  34. package/dist/elements/DocumentHeader/index.scss +64 -0
  35. package/dist/elements/FormHeader/index.js +30 -16
  36. package/dist/elements/FormHeader/index.js.map +1 -1
  37. package/dist/elements/FormHeader/index.scss +8 -0
  38. package/dist/elements/Logo/index.js +19 -34
  39. package/dist/elements/Logo/index.js.map +1 -1
  40. package/dist/elements/Nav/NavHamburger/index.js +23 -44
  41. package/dist/elements/Nav/NavHamburger/index.js.map +1 -1
  42. package/dist/elements/Nav/NavWrapper/index.js +28 -54
  43. package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
  44. package/dist/elements/Nav/NavWrapper/index.scss +27 -0
  45. package/dist/elements/Nav/SettingsMenuButton/index.js +33 -39
  46. package/dist/elements/Nav/SettingsMenuButton/index.js.map +1 -1
  47. package/dist/elements/Nav/SettingsMenuButton/index.scss +11 -0
  48. package/dist/elements/Nav/getNavPrefs.js +27 -22
  49. package/dist/elements/Nav/getNavPrefs.js.map +1 -1
  50. package/dist/elements/Nav/index.client.js +97 -118
  51. package/dist/elements/Nav/index.client.js.map +1 -1
  52. package/dist/elements/Nav/index.js +148 -127
  53. package/dist/elements/Nav/index.js.map +1 -1
  54. package/dist/elements/Nav/index.scss +173 -0
  55. package/dist/esbuildEntry.d.ts +5 -0
  56. package/dist/esbuildEntry.d.ts.map +1 -0
  57. package/dist/esbuildEntry.js +6 -0
  58. package/dist/esbuildEntry.js.map +1 -0
  59. package/dist/exports/auth.js +1 -0
  60. package/dist/exports/auth.js.map +1 -1
  61. package/dist/exports/client.js +1 -1
  62. package/dist/exports/client.js.map +1 -1
  63. package/dist/exports/layouts.js +1 -0
  64. package/dist/exports/layouts.js.map +1 -1
  65. package/dist/exports/routes.js +1 -0
  66. package/dist/exports/routes.js.map +1 -1
  67. package/dist/exports/rsc.js +1 -0
  68. package/dist/exports/rsc.js.map +1 -1
  69. package/dist/exports/templates.js +1 -0
  70. package/dist/exports/templates.js.map +1 -1
  71. package/dist/exports/utilities.js +7 -12
  72. package/dist/exports/utilities.js.map +1 -1
  73. package/dist/exports/views.js +1 -0
  74. package/dist/exports/views.js.map +1 -1
  75. package/dist/index.js +1 -0
  76. package/dist/index.js.map +1 -1
  77. package/dist/layouts/Root/NestProviders.js +21 -20
  78. package/dist/layouts/Root/NestProviders.js.map +1 -1
  79. package/dist/layouts/Root/checkDependencies.js +49 -41
  80. package/dist/layouts/Root/checkDependencies.js.map +1 -1
  81. package/dist/layouts/Root/index.js +128 -103
  82. package/dist/layouts/Root/index.js.map +1 -1
  83. package/dist/prod/styles.css +5 -1
  84. package/dist/routes/graphql/handler.js +114 -122
  85. package/dist/routes/graphql/handler.js.map +1 -1
  86. package/dist/routes/graphql/index.js +1 -0
  87. package/dist/routes/graphql/index.js.map +1 -1
  88. package/dist/routes/graphql/playground.js +28 -27
  89. package/dist/routes/graphql/playground.js.map +1 -1
  90. package/dist/routes/index.js +1 -0
  91. package/dist/routes/index.js.map +1 -1
  92. package/dist/routes/rest/index.js +23 -22
  93. package/dist/routes/rest/index.js.map +1 -1
  94. package/dist/routes/rest/og/image.js +103 -79
  95. package/dist/routes/rest/og/image.js.map +1 -1
  96. package/dist/routes/rest/og/index.js +59 -54
  97. package/dist/routes/rest/og/index.js.map +1 -1
  98. package/dist/templates/Default/NavHamburger/index.js +12 -20
  99. package/dist/templates/Default/NavHamburger/index.js.map +1 -1
  100. package/dist/templates/Default/Wrapper/index.js +20 -44
  101. package/dist/templates/Default/Wrapper/index.js.map +1 -1
  102. package/dist/templates/Default/Wrapper/index.scss +58 -0
  103. package/dist/templates/Default/index.js +147 -116
  104. package/dist/templates/Default/index.js.map +1 -1
  105. package/dist/templates/Default/index.scss +79 -0
  106. package/dist/templates/Minimal/index.js +26 -17
  107. package/dist/templates/Minimal/index.js.map +1 -1
  108. package/dist/templates/Minimal/index.scss +30 -0
  109. package/dist/utilities/getExistingAuthToken.js +3 -2
  110. package/dist/utilities/getExistingAuthToken.js.map +1 -1
  111. package/dist/utilities/getNextRequestI18n.js +12 -13
  112. package/dist/utilities/getNextRequestI18n.js.map +1 -1
  113. package/dist/utilities/getPayloadHMR.js +5 -5
  114. package/dist/utilities/getPayloadHMR.js.map +1 -1
  115. package/dist/utilities/getPreferences.js +27 -22
  116. package/dist/utilities/getPreferences.js.map +1 -1
  117. package/dist/utilities/getRequestLocale.js +13 -14
  118. package/dist/utilities/getRequestLocale.js.map +1 -1
  119. package/dist/utilities/getRequestTheme.js +19 -19
  120. package/dist/utilities/getRequestTheme.js.map +1 -1
  121. package/dist/utilities/getRouteWithoutAdmin.js +3 -5
  122. package/dist/utilities/getRouteWithoutAdmin.js.map +1 -1
  123. package/dist/utilities/handleAuthRedirect.js +22 -36
  124. package/dist/utilities/handleAuthRedirect.js.map +1 -1
  125. package/dist/utilities/handleServerFunctions.d.ts.map +1 -1
  126. package/dist/utilities/handleServerFunctions.js +33 -41
  127. package/dist/utilities/handleServerFunctions.js.map +1 -1
  128. package/dist/utilities/initReq.d.ts +2 -13
  129. package/dist/utilities/initReq.d.ts.map +1 -1
  130. package/dist/utilities/initReq.js +78 -96
  131. package/dist/utilities/initReq.js.map +1 -1
  132. package/dist/utilities/isCustomAdminView.js +22 -26
  133. package/dist/utilities/isCustomAdminView.js.map +1 -1
  134. package/dist/utilities/isPublicAdminRoute.js +26 -20
  135. package/dist/utilities/isPublicAdminRoute.js.map +1 -1
  136. package/dist/utilities/meta.js +68 -63
  137. package/dist/utilities/meta.js.map +1 -1
  138. package/dist/utilities/selectiveCache.js +25 -26
  139. package/dist/utilities/selectiveCache.js.map +1 -1
  140. package/dist/utilities/setPayloadAuthCookie.js +19 -22
  141. package/dist/utilities/setPayloadAuthCookie.js.map +1 -1
  142. package/dist/utilities/slugify.js +24 -33
  143. package/dist/utilities/slugify.js.map +1 -1
  144. package/dist/utilities/timestamp.js +7 -6
  145. package/dist/utilities/timestamp.js.map +1 -1
  146. package/dist/views/API/LocaleSelector/index.js +17 -39
  147. package/dist/views/API/LocaleSelector/index.js.map +1 -1
  148. package/dist/views/API/RenderJSON/index.js +171 -126
  149. package/dist/views/API/RenderJSON/index.js.map +1 -1
  150. package/dist/views/API/RenderJSON/index.scss +129 -0
  151. package/dist/views/API/index.client.js +291 -199
  152. package/dist/views/API/index.client.js.map +1 -1
  153. package/dist/views/API/index.js +7 -2
  154. package/dist/views/API/index.js.map +1 -1
  155. package/dist/views/API/index.scss +119 -0
  156. package/dist/views/API/metadata.js +18 -23
  157. package/dist/views/API/metadata.js.map +1 -1
  158. package/dist/views/Account/ResetPreferences/index.js +78 -102
  159. package/dist/views/Account/ResetPreferences/index.js.map +1 -1
  160. package/dist/views/Account/Settings/LanguageSelector.js +18 -47
  161. package/dist/views/Account/Settings/LanguageSelector.js.map +1 -1
  162. package/dist/views/Account/Settings/index.js +60 -25
  163. package/dist/views/Account/Settings/index.js.map +1 -1
  164. package/dist/views/Account/Settings/index.scss +48 -0
  165. package/dist/views/Account/ToggleTheme/index.js +38 -55
  166. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  167. package/dist/views/Account/index.client.js +16 -32
  168. package/dist/views/Account/index.client.js.map +1 -1
  169. package/dist/views/Account/index.js +147 -158
  170. package/dist/views/Account/index.js.map +1 -1
  171. package/dist/views/Account/metadata.js +8 -12
  172. package/dist/views/Account/metadata.js.map +1 -1
  173. package/dist/views/BrowseByFolder/buildView.js +138 -157
  174. package/dist/views/BrowseByFolder/buildView.js.map +1 -1
  175. package/dist/views/BrowseByFolder/index.js +16 -16
  176. package/dist/views/BrowseByFolder/index.js.map +1 -1
  177. package/dist/views/BrowseByFolder/metadata.js +13 -15
  178. package/dist/views/BrowseByFolder/metadata.js.map +1 -1
  179. package/dist/views/CollectionFolders/buildView.js +122 -142
  180. package/dist/views/CollectionFolders/buildView.js.map +1 -1
  181. package/dist/views/CollectionFolders/index.js +16 -16
  182. package/dist/views/CollectionFolders/index.js.map +1 -1
  183. package/dist/views/CollectionFolders/metadata.js +18 -21
  184. package/dist/views/CollectionFolders/metadata.js.map +1 -1
  185. package/dist/views/CollectionFolders/renderFolderViewSlots.js +58 -61
  186. package/dist/views/CollectionFolders/renderFolderViewSlots.js.map +1 -1
  187. package/dist/views/CollectionTrash/index.js +17 -17
  188. package/dist/views/CollectionTrash/index.js.map +1 -1
  189. package/dist/views/CollectionTrash/metadata.js +18 -21
  190. package/dist/views/CollectionTrash/metadata.js.map +1 -1
  191. package/dist/views/CreateFirstUser/index.client.js +117 -103
  192. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  193. package/dist/views/CreateFirstUser/index.js +87 -81
  194. package/dist/views/CreateFirstUser/index.js.map +1 -1
  195. package/dist/views/CreateFirstUser/index.scss +21 -0
  196. package/dist/views/CreateFirstUser/metadata.js +8 -12
  197. package/dist/views/CreateFirstUser/metadata.js.map +1 -1
  198. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +147 -138
  199. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
  200. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +423 -405
  201. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  202. package/dist/views/Dashboard/Default/ModularDashboard/index.d.ts.map +1 -1
  203. package/dist/views/Dashboard/Default/ModularDashboard/index.js +75 -75
  204. package/dist/views/Dashboard/Default/ModularDashboard/index.js.map +1 -1
  205. package/dist/views/Dashboard/Default/ModularDashboard/index.scss +316 -0
  206. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +62 -89
  207. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  208. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.d.ts.map +1 -1
  209. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js +43 -47
  210. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js.map +1 -1
  211. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.d.ts.map +1 -1
  212. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +67 -65
  213. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
  214. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js +164 -147
  215. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js.map +1 -1
  216. package/dist/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.js +31 -30
  217. package/dist/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.js.map +1 -1
  218. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js +223 -229
  219. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js.map +1 -1
  220. package/dist/views/Dashboard/Default/index.js +59 -45
  221. package/dist/views/Dashboard/Default/index.js.map +1 -1
  222. package/dist/views/Dashboard/index.js +46 -42
  223. package/dist/views/Dashboard/index.js.map +1 -1
  224. package/dist/views/Dashboard/metadata.js +10 -14
  225. package/dist/views/Dashboard/metadata.js.map +1 -1
  226. package/dist/views/Document/getCustomDocumentViewByKey.js +3 -2
  227. package/dist/views/Document/getCustomDocumentViewByKey.js.map +1 -1
  228. package/dist/views/Document/getCustomViewByRoute.js +27 -30
  229. package/dist/views/Document/getCustomViewByRoute.js.map +1 -1
  230. package/dist/views/Document/getDocPreferences.js +40 -41
  231. package/dist/views/Document/getDocPreferences.js.map +1 -1
  232. package/dist/views/Document/getDocumentData.js +44 -55
  233. package/dist/views/Document/getDocumentData.js.map +1 -1
  234. package/dist/views/Document/getDocumentPermissions.js +77 -80
  235. package/dist/views/Document/getDocumentPermissions.js.map +1 -1
  236. package/dist/views/Document/getDocumentView.js +313 -283
  237. package/dist/views/Document/getDocumentView.js.map +1 -1
  238. package/dist/views/Document/getIsLocked.js +73 -73
  239. package/dist/views/Document/getIsLocked.js.map +1 -1
  240. package/dist/views/Document/getMetaBySegment.js +130 -136
  241. package/dist/views/Document/getMetaBySegment.js.map +1 -1
  242. package/dist/views/Document/getVersions.js +220 -213
  243. package/dist/views/Document/getVersions.js.map +1 -1
  244. package/dist/views/Document/handleServerFunction.d.ts.map +1 -1
  245. package/dist/views/Document/handleServerFunction.js +101 -130
  246. package/dist/views/Document/handleServerFunction.js.map +1 -1
  247. package/dist/views/Document/index.js +317 -355
  248. package/dist/views/Document/index.js.map +1 -1
  249. package/dist/views/Document/metadata.js +2 -1
  250. package/dist/views/Document/metadata.js.map +1 -1
  251. package/dist/views/Document/renderDocumentSlots.d.ts +3 -2
  252. package/dist/views/Document/renderDocumentSlots.d.ts.map +1 -1
  253. package/dist/views/Document/renderDocumentSlots.js +142 -141
  254. package/dist/views/Document/renderDocumentSlots.js.map +1 -1
  255. package/dist/views/Edit/index.js +10 -6
  256. package/dist/views/Edit/index.js.map +1 -1
  257. package/dist/views/Edit/metadata.js +36 -46
  258. package/dist/views/Edit/metadata.js.map +1 -1
  259. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +130 -164
  260. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  261. package/dist/views/ForgotPassword/index.js +79 -62
  262. package/dist/views/ForgotPassword/index.js.map +1 -1
  263. package/dist/views/ForgotPassword/metadata.js +8 -12
  264. package/dist/views/ForgotPassword/metadata.js.map +1 -1
  265. package/dist/views/List/createSerializableValue.js +12 -11
  266. package/dist/views/List/createSerializableValue.js.map +1 -1
  267. package/dist/views/List/enrichDocsWithVersionStatus.js +86 -86
  268. package/dist/views/List/enrichDocsWithVersionStatus.js.map +1 -1
  269. package/dist/views/List/extractRelationshipDisplayValue.js +15 -14
  270. package/dist/views/List/extractRelationshipDisplayValue.js.map +1 -1
  271. package/dist/views/List/extractValueOrRelationshipID.js +16 -15
  272. package/dist/views/List/extractValueOrRelationshipID.js.map +1 -1
  273. package/dist/views/List/handleGroupBy.js +133 -150
  274. package/dist/views/List/handleGroupBy.js.map +1 -1
  275. package/dist/views/List/handleServerFunction.d.ts.map +1 -1
  276. package/dist/views/List/handleServerFunction.js +97 -123
  277. package/dist/views/List/handleServerFunction.js.map +1 -1
  278. package/dist/views/List/index.d.ts +1 -0
  279. package/dist/views/List/index.d.ts.map +1 -1
  280. package/dist/views/List/index.js +303 -318
  281. package/dist/views/List/index.js.map +1 -1
  282. package/dist/views/List/metadata.js +17 -20
  283. package/dist/views/List/metadata.js.map +1 -1
  284. package/dist/views/List/renderListViewSlots.js +82 -75
  285. package/dist/views/List/renderListViewSlots.js.map +1 -1
  286. package/dist/views/List/resolveAllFilterOptions.js +43 -45
  287. package/dist/views/List/resolveAllFilterOptions.js.map +1 -1
  288. package/dist/views/List/transformColumnsToSelect.js +9 -8
  289. package/dist/views/List/transformColumnsToSelect.js.map +1 -1
  290. package/dist/views/Login/LoginField/index.js +57 -89
  291. package/dist/views/Login/LoginField/index.js.map +1 -1
  292. package/dist/views/Login/LoginForm/index.js +107 -160
  293. package/dist/views/Login/LoginForm/index.js.map +1 -1
  294. package/dist/views/Login/LoginForm/index.scss +10 -0
  295. package/dist/views/Login/index.js +82 -85
  296. package/dist/views/Login/index.js.map +1 -1
  297. package/dist/views/Login/index.scss +10 -0
  298. package/dist/views/Login/metadata.js +8 -12
  299. package/dist/views/Login/metadata.js.map +1 -1
  300. package/dist/views/Logout/LogoutClient.js +84 -120
  301. package/dist/views/Logout/LogoutClient.js.map +1 -1
  302. package/dist/views/Logout/index.js +29 -29
  303. package/dist/views/Logout/index.js.map +1 -1
  304. package/dist/views/Logout/index.scss +25 -0
  305. package/dist/views/Logout/metadata.js +7 -11
  306. package/dist/views/Logout/metadata.js.map +1 -1
  307. package/dist/views/NotFound/index.client.js +71 -82
  308. package/dist/views/NotFound/index.client.js.map +1 -1
  309. package/dist/views/NotFound/index.js +72 -73
  310. package/dist/views/NotFound/index.js.map +1 -1
  311. package/dist/views/NotFound/index.scss +57 -0
  312. package/dist/views/NotFound/metadata.js +7 -9
  313. package/dist/views/NotFound/metadata.js.map +1 -1
  314. package/dist/views/ResetPassword/ResetPasswordForm/index.js +97 -108
  315. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -1
  316. package/dist/views/ResetPassword/index.js +93 -73
  317. package/dist/views/ResetPassword/index.js.map +1 -1
  318. package/dist/views/ResetPassword/index.scss +11 -0
  319. package/dist/views/ResetPassword/metadata.js +8 -12
  320. package/dist/views/ResetPassword/metadata.js.map +1 -1
  321. package/dist/views/Root/attachViewActions.js +18 -23
  322. package/dist/views/Root/attachViewActions.js.map +1 -1
  323. package/dist/views/Root/generateCustomViewMetadata.js +19 -21
  324. package/dist/views/Root/generateCustomViewMetadata.js.map +1 -1
  325. package/dist/views/Root/getCustomViewByKey.js +12 -14
  326. package/dist/views/Root/getCustomViewByKey.js.map +1 -1
  327. package/dist/views/Root/getCustomViewByRoute.js +31 -42
  328. package/dist/views/Root/getCustomViewByRoute.js.map +1 -1
  329. package/dist/views/Root/getDocumentViewInfo.js +24 -23
  330. package/dist/views/Root/getDocumentViewInfo.js.map +1 -1
  331. package/dist/views/Root/getRouteData.js +333 -325
  332. package/dist/views/Root/getRouteData.js.map +1 -1
  333. package/dist/views/Root/index.js +248 -270
  334. package/dist/views/Root/index.js.map +1 -1
  335. package/dist/views/Root/isPathMatchingRoute.js +21 -26
  336. package/dist/views/Root/isPathMatchingRoute.js.map +1 -1
  337. package/dist/views/Root/metadata.js +176 -181
  338. package/dist/views/Root/metadata.js.map +1 -1
  339. package/dist/views/Unauthorized/index.js +54 -46
  340. package/dist/views/Unauthorized/index.js.map +1 -1
  341. package/dist/views/Unauthorized/index.scss +14 -0
  342. package/dist/views/Unauthorized/metadata.js +8 -12
  343. package/dist/views/Unauthorized/metadata.js.map +1 -1
  344. package/dist/views/Verify/index.client.js +25 -43
  345. package/dist/views/Verify/index.client.js.map +1 -1
  346. package/dist/views/Verify/index.js +69 -64
  347. package/dist/views/Verify/index.js.map +1 -1
  348. package/dist/views/Verify/index.scss +16 -0
  349. package/dist/views/Verify/metadata.js +8 -12
  350. package/dist/views/Verify/metadata.js.map +1 -1
  351. package/dist/views/Version/Default/SelectedLocalesContext.js +4 -4
  352. package/dist/views/Version/Default/SelectedLocalesContext.js.map +1 -1
  353. package/dist/views/Version/Default/SetStepNav.js +86 -127
  354. package/dist/views/Version/Default/SetStepNav.js.map +1 -1
  355. package/dist/views/Version/Default/index.js +380 -236
  356. package/dist/views/Version/Default/index.js.map +1 -1
  357. package/dist/views/Version/Default/index.scss +170 -0
  358. package/dist/views/Version/Default/types.js +2 -1
  359. package/dist/views/Version/Default/types.js.map +1 -1
  360. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js +102 -119
  361. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
  362. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.scss +81 -0
  363. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js +78 -73
  364. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -1
  365. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +363 -408
  366. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  367. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +40 -51
  368. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
  369. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +35 -67
  370. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -1
  371. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.scss +12 -0
  372. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +59 -56
  373. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
  374. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.scss +9 -0
  375. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +139 -117
  376. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  377. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.scss +59 -0
  378. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js +56 -61
  379. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js.map +1 -1
  380. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +223 -204
  381. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  382. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.scss +91 -0
  383. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js +17 -11
  384. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js.map +1 -1
  385. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +48 -73
  386. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  387. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.scss +4 -0
  388. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +132 -143
  389. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  390. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.scss +9 -0
  391. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +56 -81
  392. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  393. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.scss +4 -0
  394. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js +252 -211
  395. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js.map +1 -1
  396. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.scss +121 -0
  397. package/dist/views/Version/RenderFieldsToDiff/fields/index.js +23 -22
  398. package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
  399. package/dist/views/Version/RenderFieldsToDiff/index.js +12 -9
  400. package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
  401. package/dist/views/Version/RenderFieldsToDiff/index.scss +24 -0
  402. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js +213 -228
  403. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js.map +1 -1
  404. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js +1005 -826
  405. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js.map +1 -1
  406. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js +2 -1
  407. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js.map +1 -1
  408. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js +44 -43
  409. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js.map +1 -1
  410. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js +32 -36
  411. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js.map +1 -1
  412. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js +145 -129
  413. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js.map +1 -1
  414. package/dist/views/Version/Restore/index.js +117 -93
  415. package/dist/views/Version/Restore/index.js.map +1 -1
  416. package/dist/views/Version/Restore/index.scss +84 -0
  417. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js +33 -50
  418. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -1
  419. package/dist/views/Version/SelectComparison/VersionDrawer/index.js +170 -226
  420. package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
  421. package/dist/views/Version/SelectComparison/VersionDrawer/index.scss +18 -0
  422. package/dist/views/Version/SelectComparison/index.js +73 -50
  423. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  424. package/dist/views/Version/SelectComparison/index.scss +9 -0
  425. package/dist/views/Version/SelectComparison/types.js +2 -1
  426. package/dist/views/Version/SelectComparison/types.js.map +1 -1
  427. package/dist/views/Version/SelectLocales/index.js +34 -32
  428. package/dist/views/Version/SelectLocales/index.js.map +1 -1
  429. package/dist/views/Version/VersionPillLabel/VersionPillLabel.d.ts.map +1 -1
  430. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js +107 -96
  431. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js.map +1 -1
  432. package/dist/views/Version/VersionPillLabel/getVersionLabel.d.ts +3 -2
  433. package/dist/views/Version/VersionPillLabel/getVersionLabel.d.ts.map +1 -1
  434. package/dist/views/Version/VersionPillLabel/getVersionLabel.js +30 -39
  435. package/dist/views/Version/VersionPillLabel/getVersionLabel.js.map +1 -1
  436. package/dist/views/Version/VersionPillLabel/index.scss +26 -0
  437. package/dist/views/Version/fetchVersions.js +113 -138
  438. package/dist/views/Version/fetchVersions.js.map +1 -1
  439. package/dist/views/Version/index.d.ts.map +1 -1
  440. package/dist/views/Version/index.js +328 -323
  441. package/dist/views/Version/index.js.map +1 -1
  442. package/dist/views/Version/metadata.js +43 -50
  443. package/dist/views/Version/metadata.js.map +1 -1
  444. package/dist/views/Versions/buildColumns.js +95 -79
  445. package/dist/views/Versions/buildColumns.js.map +1 -1
  446. package/dist/views/Versions/cells/AutosaveCell/index.js +34 -38
  447. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  448. package/dist/views/Versions/cells/AutosaveCell/index.scss +9 -0
  449. package/dist/views/Versions/cells/CreatedAt/index.js +32 -53
  450. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  451. package/dist/views/Versions/cells/ID/index.js +10 -8
  452. package/dist/views/Versions/cells/ID/index.js.map +1 -1
  453. package/dist/views/Versions/index.client.js +106 -83
  454. package/dist/views/Versions/index.client.js.map +1 -1
  455. package/dist/views/Versions/index.js +164 -164
  456. package/dist/views/Versions/index.js.map +1 -1
  457. package/dist/views/Versions/index.scss +110 -0
  458. package/dist/views/Versions/metadata.js +37 -44
  459. package/dist/views/Versions/metadata.js.map +1 -1
  460. package/dist/views/Versions/types.js +2 -1
  461. package/dist/views/Versions/types.js.map +1 -1
  462. package/dist/withPayload/withPayload.js +232 -174
  463. package/dist/withPayload/withPayload.js.map +1 -1
  464. package/dist/withPayload/withPayload.spec.js +36 -35
  465. package/dist/withPayload/withPayload.spec.js.map +1 -1
  466. package/dist/withPayload/withPayload.utils.js +65 -73
  467. package/dist/withPayload/withPayload.utils.js.map +1 -1
  468. package/dist/withPayload/withPayloadLegacy.js +41 -40
  469. package/dist/withPayload/withPayloadLegacy.js.map +1 -1
  470. package/package.json +6 -6
@@ -3,190 +3,248 @@
3
3
  * imported directly in next.config.mjs files. Since next.config files run before the build process,
4
4
  * TypeScript compilation is not available. This ensures compatibility with all templates and
5
5
  * user projects regardless of their TypeScript setup.
6
- */import { getNextjsVersion, supportsTurbopackExternalizeTransitiveDependencies } from './withPayload.utils.js';
6
+ */ import { getNextjsVersion, supportsTurbopackExternalizeTransitiveDependencies } from './withPayload.utils.js';
7
7
  import { withPayloadLegacy } from './withPayloadLegacy.js';
8
8
  const poweredByHeader = {
9
- key: 'X-Powered-By',
10
- value: 'Next.js, Payload'
9
+ key: 'X-Powered-By',
10
+ value: 'Next.js, Payload'
11
11
  };
12
12
  /**
13
13
  * @param {import('next').NextConfig} nextConfig
14
14
  * @param {Object} [options] - Optional configuration options
15
15
  * @param {boolean} [options.devBundleServerPackages] - Whether to bundle server packages in development mode. @default false
16
- * */
17
- export const withPayload = (nextConfig = {}, options = {}) => {
18
- const nextjsVersion = getNextjsVersion();
19
- const supportsTurbopackBuild = supportsTurbopackExternalizeTransitiveDependencies(nextjsVersion);
20
- const env = nextConfig.env || {};
21
- if (nextConfig.experimental?.staleTimes?.dynamic) {
22
- console.warn('Payload detected a non-zero value for the `staleTimes.dynamic` option in your Next.js config. This will slow down page transitions and may cause stale data to load within the Admin panel. To clear this warning, remove the `staleTimes.dynamic` option from your Next.js config or set it to 0. In the future, Next.js may support scoping this option to specific routes.');
23
- env.NEXT_PUBLIC_ENABLE_ROUTER_CACHE_REFRESH = 'true';
24
- }
25
- const consoleWarn = console.warn;
26
- const sassWarningText = 'SassWarning: Future import deprecation is not yet active, so silencing it is unnecessary';
27
- console.warn = (...args) => {
28
- if (typeof args[1] === 'string' && args[1].includes(sassWarningText) || typeof args[0] === 'string' && args[0].includes(sassWarningText)) {
29
- // This warning is a lie - without silencing import deprecation warnings, sass will spam the console with deprecation warnings
30
- return;
16
+ * */ export const withPayload = (nextConfig = {}, options = {})=>{
17
+ const nextjsVersion = getNextjsVersion();
18
+ const supportsTurbopackBuild = supportsTurbopackExternalizeTransitiveDependencies(nextjsVersion);
19
+ const env = nextConfig.env || {};
20
+ if (nextConfig.experimental?.staleTimes?.dynamic) {
21
+ console.warn('Payload detected a non-zero value for the `staleTimes.dynamic` option in your Next.js config. This will slow down page transitions and may cause stale data to load within the Admin panel. To clear this warning, remove the `staleTimes.dynamic` option from your Next.js config or set it to 0. In the future, Next.js may support scoping this option to specific routes.');
22
+ env.NEXT_PUBLIC_ENABLE_ROUTER_CACHE_REFRESH = 'true';
31
23
  }
32
- consoleWarn(...args);
33
- };
34
- /** @type {import('next').NextConfig} */
35
- const baseConfig = {
36
- ...nextConfig,
37
- env,
38
- sassOptions: {
39
- ...(nextConfig.sassOptions || {}),
40
- /**
41
- * This prevents scss warning spam during pnpm dev that looks like this:
42
- * ⚠ ./test/admin/components/views/CustomMinimal/index.scss
43
- * Issue while running loader
44
- * SassWarning: Deprecation Warning on line 8, column 8 of file:///Users/alessio/Documents/GitHub/ payload/packages/ui/src/scss/styles.scss:8:8:
45
- * Sass @import rules are deprecated and will be removed in Dart Sass 3.0.0.
46
- *
47
- * More info and automated migrator: https://sass-lang.com/d/import
48
- *
49
- * 8 | @import 'queries';
50
- *
51
- *
52
- * packages/ui/src/scss/styles.scss 9:9 @import
53
- * test/admin/components/views/CustomMinimal/index.scss 1:9 root stylesheet
54
- *
55
- * @todo: update all outdated scss imports to use @use instead of @import. Then, we can remove this.
56
- */
57
- silenceDeprecations: [...(nextConfig.sassOptions?.silenceDeprecations || []), 'import']
58
- },
59
- outputFileTracingExcludes: {
60
- ...(nextConfig.outputFileTracingExcludes || {}),
61
- '**/*': [...(nextConfig.outputFileTracingExcludes?.['**/*'] || []), 'drizzle-kit', 'drizzle-kit/api']
62
- },
63
- outputFileTracingIncludes: {
64
- ...(nextConfig.outputFileTracingIncludes || {}),
65
- '**/*': [...(nextConfig.outputFileTracingIncludes?.['**/*'] || []), '@libsql/client']
66
- },
67
- turbopack: {
68
- ...(nextConfig.turbopack || {})
69
- },
70
- // We disable the poweredByHeader here because we add it manually in the headers function below
71
- ...(nextConfig.poweredByHeader !== false ? {
72
- poweredByHeader: false
73
- } : {}),
74
- headers: async () => {
75
- const headersFromConfig = 'headers' in nextConfig ? await nextConfig.headers() : [];
76
- return [...(headersFromConfig || []), {
77
- headers: [{
78
- key: 'Accept-CH',
79
- value: 'Sec-CH-Prefers-Color-Scheme'
80
- }, {
81
- key: 'Vary',
82
- value: 'Sec-CH-Prefers-Color-Scheme'
83
- }, {
84
- key: 'Critical-CH',
85
- value: 'Sec-CH-Prefers-Color-Scheme'
86
- }, ...(nextConfig.poweredByHeader !== false ? [poweredByHeader] : [])],
87
- source: '/:path*'
88
- }];
89
- },
90
- serverExternalPackages: [...(nextConfig.serverExternalPackages || []),
91
- // WHY: without externalizing graphql, a graphql version error will be thrown
92
- // during runtime ("Ensure that there is only one instance of \"graphql\" in the node_modules\ndirectory.")
93
- 'graphql', ...(process.env.NODE_ENV === 'development' && options.devBundleServerPackages !== true ?
94
- /**
95
- * Unless explicitly disabled by the user, by passing `devBundleServerPackages: true` to withPayload, we
96
- * do not bundle server-only packages during dev for two reasons:
97
- *
98
- * 1. Performance: Fewer files to compile means faster compilation speeds.
99
- * 2. Turbopack support: Webpack's externals are not supported by Turbopack.
100
- *
101
- * Regarding Turbopack support: Unlike webpack.externals, we cannot use serverExternalPackages to
102
- * externalized packages that are not resolvable from the project root. So including a package like
103
- * "drizzle-kit" in here would do nothing - Next.js will ignore the rule and still bundle the package -
104
- * because it detects that the package is not resolvable from the project root (= not directly installed
105
- * by the user in their own package.json).
106
- *
107
- * Instead, we can use serverExternalPackages for the entry-point packages that *are* installed directly
108
- * by the user (e.g. db-postgres, which then installs drizzle-kit as a dependency).
109
- *
110
- *
111
- *
112
- * We should only do this during development, not build, because externalizing these packages can hurt
113
- * the bundle size. Not only does it disable tree-shaking, it also risks installing duplicate copies of the
114
- * same package.
115
- *
116
- * Example:
117
- * - @payloadcms/richtext-lexical (in bundle) -> installs qs-esm (bundled because of importer)
118
- * - payload (not in bundle, external) -> installs qs-esm (external because of importer)
119
- * Result: we have two copies of qs-esm installed - one in the bundle, and one in node_modules.
120
- *
121
- * During development, these bundle size difference do not matter much, and development speed /
122
- * turbopack support are more important.
123
- */
124
- ['payload', '@payloadcms/db-mongodb', '@payloadcms/db-postgres', '@payloadcms/db-sqlite', '@payloadcms/db-vercel-postgres', '@payloadcms/db-d1-sqlite', '@payloadcms/drizzle', '@payloadcms/email-nodemailer', '@payloadcms/email-resend', '@payloadcms/graphql', '@payloadcms/payload-cloud', '@payloadcms/plugin-redirects'] : [])],
125
- webpack: (webpackConfig, webpackOptions) => {
126
- const incomingWebpackConfig = typeof nextConfig.webpack === 'function' ? nextConfig.webpack(webpackConfig, webpackOptions) : webpackConfig;
127
- return {
128
- ...incomingWebpackConfig,
129
- externals: [...(incomingWebpackConfig?.externals || []),
130
- /**
131
- * See the explanation in the serverExternalPackages section above.
132
- * We need to force Webpack to emit require() calls for these packages, even though they are not
133
- * resolvable from the project root. You would expect this to error during runtime, but Next.js seems to be able to require these just fine.
134
- *
135
- * This is the only way to get Webpack Build to work, without the bundle size caveats of externalizing the
136
- * entry point packages, as explained in the serverExternalPackages section above.
137
- */
138
- 'drizzle-kit', 'drizzle-kit/api', 'sharp', 'libsql', 'require-in-the-middle', 'json-schema-to-typescript'],
139
- plugins: [...(incomingWebpackConfig?.plugins || []),
140
- // Fix cloudflare:sockets error: https://github.com/vercel/next.js/discussions/50177
141
- new webpackOptions.webpack.IgnorePlugin({
142
- resourceRegExp: /^pg-native$|^cloudflare:sockets$/
143
- })],
144
- resolve: {
145
- ...(incomingWebpackConfig?.resolve || {}),
146
- alias: {
147
- ...(incomingWebpackConfig?.resolve?.alias || {})
148
- },
149
- fallback: {
150
- ...(incomingWebpackConfig?.resolve?.fallback || {}),
151
- /*
152
- * This fixes the following warning when running next build with webpack (tested on Next.js 16.0.3 with Payload 3.64.0):
153
- *
154
- * ⚠ Compiled with warnings in 8.7s
155
- *
156
- * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/deps.js
157
- * Module not found: Can't resolve 'aws4' in '/Users/alessio/Documents/temp/next16p/node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib'
158
- *
159
- * Import trace for requested module:
160
- * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/deps.js
161
- * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/client-side-encryption/client_encryption.js
162
- * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/index.js
163
- * ./node_modules/.pnpm/mongoose@8.15.1/node_modules/mongoose/lib/index.js
164
- * ./node_modules/.pnpm/mongoose@8.15.1/node_modules/mongoose/index.js
165
- * ./node_modules/.pnpm/@payloadcms+db-mongodb@3.64.0_payload@3.64.0_graphql@16.12.0_typescript@5.7.3_/node_modules/@payloadcms/db-mongodb/dist/index.js
166
- * ./src/payload.config.ts
167
- * ./src/app/my-route/route.ts
168
- *
169
- **/
170
- aws4: false
171
- }
24
+ const consoleWarn = console.warn;
25
+ const sassWarningText = 'SassWarning: Future import deprecation is not yet active, so silencing it is unnecessary';
26
+ console.warn = (...args)=>{
27
+ if (typeof args[1] === 'string' && args[1].includes(sassWarningText) || typeof args[0] === 'string' && args[0].includes(sassWarningText)) {
28
+ // This warning is a lie - without silencing import deprecation warnings, sass will spam the console with deprecation warnings
29
+ return;
30
+ }
31
+ consoleWarn(...args);
32
+ };
33
+ /** @type {import('next').NextConfig} */ const baseConfig = {
34
+ ...nextConfig,
35
+ env,
36
+ sassOptions: {
37
+ ...nextConfig.sassOptions || {},
38
+ /**
39
+ * This prevents scss warning spam during pnpm dev that looks like this:
40
+ * ⚠ ./test/admin/components/views/CustomMinimal/index.scss
41
+ * Issue while running loader
42
+ * SassWarning: Deprecation Warning on line 8, column 8 of file:///Users/alessio/Documents/GitHub/ payload/packages/ui/src/scss/styles.scss:8:8:
43
+ * Sass @import rules are deprecated and will be removed in Dart Sass 3.0.0.
44
+ *
45
+ * More info and automated migrator: https://sass-lang.com/d/import
46
+ *
47
+ * 8 | @import 'queries';
48
+ *
49
+ *
50
+ * packages/ui/src/scss/styles.scss 9:9 @import
51
+ * test/admin/components/views/CustomMinimal/index.scss 1:9 root stylesheet
52
+ *
53
+ * @todo: update all outdated scss imports to use @use instead of @import. Then, we can remove this.
54
+ */ silenceDeprecations: [
55
+ ...nextConfig.sassOptions?.silenceDeprecations || [],
56
+ 'import'
57
+ ]
58
+ },
59
+ outputFileTracingExcludes: {
60
+ ...nextConfig.outputFileTracingExcludes || {},
61
+ '**/*': [
62
+ ...nextConfig.outputFileTracingExcludes?.['**/*'] || [],
63
+ 'drizzle-kit',
64
+ 'drizzle-kit/api'
65
+ ]
66
+ },
67
+ outputFileTracingIncludes: {
68
+ ...nextConfig.outputFileTracingIncludes || {},
69
+ '**/*': [
70
+ ...nextConfig.outputFileTracingIncludes?.['**/*'] || [],
71
+ '@libsql/client'
72
+ ]
73
+ },
74
+ turbopack: {
75
+ ...nextConfig.turbopack || {}
76
+ },
77
+ // We disable the poweredByHeader here because we add it manually in the headers function below
78
+ ...nextConfig.poweredByHeader !== false ? {
79
+ poweredByHeader: false
80
+ } : {},
81
+ headers: async ()=>{
82
+ const headersFromConfig = 'headers' in nextConfig ? await nextConfig.headers() : [];
83
+ return [
84
+ ...headersFromConfig || [],
85
+ {
86
+ headers: [
87
+ {
88
+ key: 'Accept-CH',
89
+ value: 'Sec-CH-Prefers-Color-Scheme'
90
+ },
91
+ {
92
+ key: 'Vary',
93
+ value: 'Sec-CH-Prefers-Color-Scheme'
94
+ },
95
+ {
96
+ key: 'Critical-CH',
97
+ value: 'Sec-CH-Prefers-Color-Scheme'
98
+ },
99
+ ...nextConfig.poweredByHeader !== false ? [
100
+ poweredByHeader
101
+ ] : []
102
+ ],
103
+ source: '/:path*'
104
+ }
105
+ ];
106
+ },
107
+ serverExternalPackages: [
108
+ ...nextConfig.serverExternalPackages || [],
109
+ // WHY: without externalizing graphql, a graphql version error will be thrown
110
+ // during runtime ("Ensure that there is only one instance of \"graphql\" in the node_modules\ndirectory.")
111
+ 'graphql',
112
+ ...process.env.NODE_ENV === 'development' && options.devBundleServerPackages !== true ? /**
113
+ * Unless explicitly disabled by the user, by passing `devBundleServerPackages: true` to withPayload, we
114
+ * do not bundle server-only packages during dev for two reasons:
115
+ *
116
+ * 1. Performance: Fewer files to compile means faster compilation speeds.
117
+ * 2. Turbopack support: Webpack's externals are not supported by Turbopack.
118
+ *
119
+ * Regarding Turbopack support: Unlike webpack.externals, we cannot use serverExternalPackages to
120
+ * externalized packages that are not resolvable from the project root. So including a package like
121
+ * "drizzle-kit" in here would do nothing - Next.js will ignore the rule and still bundle the package -
122
+ * because it detects that the package is not resolvable from the project root (= not directly installed
123
+ * by the user in their own package.json).
124
+ *
125
+ * Instead, we can use serverExternalPackages for the entry-point packages that *are* installed directly
126
+ * by the user (e.g. db-postgres, which then installs drizzle-kit as a dependency).
127
+ *
128
+ *
129
+ *
130
+ * We should only do this during development, not build, because externalizing these packages can hurt
131
+ * the bundle size. Not only does it disable tree-shaking, it also risks installing duplicate copies of the
132
+ * same package.
133
+ *
134
+ * Example:
135
+ * - @payloadcms/richtext-lexical (in bundle) -> installs qs-esm (bundled because of importer)
136
+ * - payload (not in bundle, external) -> installs qs-esm (external because of importer)
137
+ * Result: we have two copies of qs-esm installed - one in the bundle, and one in node_modules.
138
+ *
139
+ * During development, these bundle size difference do not matter much, and development speed /
140
+ * turbopack support are more important.
141
+ */ [
142
+ 'payload',
143
+ '@payloadcms/db-mongodb',
144
+ '@payloadcms/db-postgres',
145
+ '@payloadcms/db-sqlite',
146
+ '@payloadcms/db-vercel-postgres',
147
+ '@payloadcms/db-d1-sqlite',
148
+ '@payloadcms/drizzle',
149
+ '@payloadcms/email-nodemailer',
150
+ '@payloadcms/email-resend',
151
+ '@payloadcms/graphql',
152
+ '@payloadcms/payload-cloud',
153
+ '@payloadcms/plugin-redirects'
154
+ ] : // TODO: Add the following packages, excluding their /client subpath exports, once Next.js supports it
155
+ // see: https://github.com/vercel/next.js/discussions/76991
156
+ //'@payloadcms/plugin-cloud-storage',
157
+ //'@payloadcms/plugin-sentry',
158
+ //'@payloadcms/plugin-stripe',
159
+ // @payloadcms/richtext-lexical
160
+ //'@payloadcms/storage-azure',
161
+ //'@payloadcms/storage-gcs',
162
+ //'@payloadcms/storage-s3',
163
+ //'@payloadcms/storage-uploadthing',
164
+ //'@payloadcms/storage-vercel-blob',
165
+ []
166
+ ],
167
+ webpack: (webpackConfig, webpackOptions)=>{
168
+ const incomingWebpackConfig = typeof nextConfig.webpack === 'function' ? nextConfig.webpack(webpackConfig, webpackOptions) : webpackConfig;
169
+ return {
170
+ ...incomingWebpackConfig,
171
+ externals: [
172
+ ...incomingWebpackConfig?.externals || [],
173
+ /**
174
+ * See the explanation in the serverExternalPackages section above.
175
+ * We need to force Webpack to emit require() calls for these packages, even though they are not
176
+ * resolvable from the project root. You would expect this to error during runtime, but Next.js seems to be able to require these just fine.
177
+ *
178
+ * This is the only way to get Webpack Build to work, without the bundle size caveats of externalizing the
179
+ * entry point packages, as explained in the serverExternalPackages section above.
180
+ */ 'drizzle-kit',
181
+ 'drizzle-kit/api',
182
+ 'sharp',
183
+ 'libsql',
184
+ 'require-in-the-middle',
185
+ 'json-schema-to-typescript'
186
+ ],
187
+ plugins: [
188
+ ...incomingWebpackConfig?.plugins || [],
189
+ // Fix cloudflare:sockets error: https://github.com/vercel/next.js/discussions/50177
190
+ new webpackOptions.webpack.IgnorePlugin({
191
+ resourceRegExp: /^pg-native$|^cloudflare:sockets$/
192
+ })
193
+ ],
194
+ resolve: {
195
+ ...incomingWebpackConfig?.resolve || {},
196
+ alias: {
197
+ ...incomingWebpackConfig?.resolve?.alias || {}
198
+ },
199
+ fallback: {
200
+ ...incomingWebpackConfig?.resolve?.fallback || {},
201
+ /*
202
+ * This fixes the following warning when running next build with webpack (tested on Next.js 16.0.3 with Payload 3.64.0):
203
+ *
204
+ * ⚠ Compiled with warnings in 8.7s
205
+ *
206
+ * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/deps.js
207
+ * Module not found: Can't resolve 'aws4' in '/Users/alessio/Documents/temp/next16p/node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib'
208
+ *
209
+ * Import trace for requested module:
210
+ * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/deps.js
211
+ * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/client-side-encryption/client_encryption.js
212
+ * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/index.js
213
+ * ./node_modules/.pnpm/mongoose@8.15.1/node_modules/mongoose/lib/index.js
214
+ * ./node_modules/.pnpm/mongoose@8.15.1/node_modules/mongoose/index.js
215
+ * ./node_modules/.pnpm/@payloadcms+db-mongodb@3.64.0_payload@3.64.0_graphql@16.12.0_typescript@5.7.3_/node_modules/@payloadcms/db-mongodb/dist/index.js
216
+ * ./src/payload.config.ts
217
+ * ./src/app/my-route/route.ts
218
+ *
219
+ **/ aws4: false
220
+ }
221
+ }
222
+ };
172
223
  }
173
- };
174
- }
175
- };
176
- if (nextConfig.basePath) {
177
- process.env.NEXT_BASE_PATH = nextConfig.basePath;
178
- baseConfig.env.NEXT_BASE_PATH = nextConfig.basePath;
179
- }
180
- if (!supportsTurbopackBuild) {
181
- return withPayloadLegacy(baseConfig);
182
- } else {
183
- return {
184
- ...baseConfig,
185
- serverExternalPackages: [...(baseConfig.serverExternalPackages || []), 'drizzle-kit', 'drizzle-kit/api', 'sharp', 'libsql', 'require-in-the-middle', 'json-schema-to-typescript',
186
- // Prevents turbopack build errors by the thread-stream package which is installed by pino
187
- 'pino']
188
224
  };
189
- }
225
+ if (nextConfig.basePath) {
226
+ process.env.NEXT_BASE_PATH = nextConfig.basePath;
227
+ baseConfig.env.NEXT_BASE_PATH = nextConfig.basePath;
228
+ }
229
+ if (!supportsTurbopackBuild) {
230
+ return withPayloadLegacy(baseConfig);
231
+ } else {
232
+ return {
233
+ ...baseConfig,
234
+ serverExternalPackages: [
235
+ ...baseConfig.serverExternalPackages || [],
236
+ 'drizzle-kit',
237
+ 'drizzle-kit/api',
238
+ 'sharp',
239
+ 'libsql',
240
+ 'require-in-the-middle',
241
+ 'json-schema-to-typescript',
242
+ // Prevents turbopack build errors by the thread-stream package which is installed by pino
243
+ 'pino'
244
+ ]
245
+ };
246
+ }
190
247
  };
191
248
  export default withPayload;
249
+
192
250
  //# sourceMappingURL=withPayload.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"withPayload.js","names":["getNextjsVersion","supportsTurbopackExternalizeTransitiveDependencies","withPayloadLegacy","poweredByHeader","key","value","withPayload","nextConfig","options","nextjsVersion","supportsTurbopackBuild","env","experimental","staleTimes","dynamic","console","warn","NEXT_PUBLIC_ENABLE_ROUTER_CACHE_REFRESH","consoleWarn","sassWarningText","args","includes","baseConfig","sassOptions","silenceDeprecations","outputFileTracingExcludes","outputFileTracingIncludes","turbopack","headers","headersFromConfig","source","serverExternalPackages","process","NODE_ENV","devBundleServerPackages","webpack","webpackConfig","webpackOptions","incomingWebpackConfig","externals","plugins","IgnorePlugin","resourceRegExp","resolve","alias","fallback","aws4","basePath","NEXT_BASE_PATH"],"sources":["../../src/withPayload/withPayload.js"],"sourcesContent":["/**\n * These files must remain as plain JavaScript (.js) rather than TypeScript (.ts) because they are\n * imported directly in next.config.mjs files. Since next.config files run before the build process,\n * TypeScript compilation is not available. This ensures compatibility with all templates and\n * user projects regardless of their TypeScript setup.\n */\nimport {\n getNextjsVersion,\n supportsTurbopackExternalizeTransitiveDependencies,\n} from './withPayload.utils.js'\nimport { withPayloadLegacy } from './withPayloadLegacy.js'\n\nconst poweredByHeader = {\n key: 'X-Powered-By',\n value: 'Next.js, Payload',\n}\n\n/**\n * @param {import('next').NextConfig} nextConfig\n * @param {Object} [options] - Optional configuration options\n * @param {boolean} [options.devBundleServerPackages] - Whether to bundle server packages in development mode. @default false\n * */\nexport const withPayload = (nextConfig = {}, options = {}) => {\n const nextjsVersion = getNextjsVersion()\n\n const supportsTurbopackBuild = supportsTurbopackExternalizeTransitiveDependencies(nextjsVersion)\n\n const env = nextConfig.env || {}\n\n if (nextConfig.experimental?.staleTimes?.dynamic) {\n console.warn(\n 'Payload detected a non-zero value for the `staleTimes.dynamic` option in your Next.js config. This will slow down page transitions and may cause stale data to load within the Admin panel. To clear this warning, remove the `staleTimes.dynamic` option from your Next.js config or set it to 0. In the future, Next.js may support scoping this option to specific routes.',\n )\n env.NEXT_PUBLIC_ENABLE_ROUTER_CACHE_REFRESH = 'true'\n }\n\n const consoleWarn = console.warn\n const sassWarningText =\n 'SassWarning: Future import deprecation is not yet active, so silencing it is unnecessary'\n console.warn = (...args) => {\n if (\n (typeof args[1] === 'string' && args[1].includes(sassWarningText)) ||\n (typeof args[0] === 'string' && args[0].includes(sassWarningText))\n ) {\n // This warning is a lie - without silencing import deprecation warnings, sass will spam the console with deprecation warnings\n return\n }\n\n consoleWarn(...args)\n }\n\n /** @type {import('next').NextConfig} */\n const baseConfig = {\n ...nextConfig,\n env,\n sassOptions: {\n ...(nextConfig.sassOptions || {}),\n /**\n * This prevents scss warning spam during pnpm dev that looks like this:\n * ⚠ ./test/admin/components/views/CustomMinimal/index.scss\n * Issue while running loader\n * SassWarning: Deprecation Warning on line 8, column 8 of file:///Users/alessio/Documents/GitHub/ payload/packages/ui/src/scss/styles.scss:8:8:\n * Sass @import rules are deprecated and will be removed in Dart Sass 3.0.0.\n *\n * More info and automated migrator: https://sass-lang.com/d/import\n *\n * 8 | @import 'queries';\n *\n *\n * packages/ui/src/scss/styles.scss 9:9 @import\n * test/admin/components/views/CustomMinimal/index.scss 1:9 root stylesheet\n *\n * @todo: update all outdated scss imports to use @use instead of @import. Then, we can remove this.\n */\n silenceDeprecations: [...(nextConfig.sassOptions?.silenceDeprecations || []), 'import'],\n },\n outputFileTracingExcludes: {\n ...(nextConfig.outputFileTracingExcludes || {}),\n '**/*': [\n ...(nextConfig.outputFileTracingExcludes?.['**/*'] || []),\n 'drizzle-kit',\n 'drizzle-kit/api',\n ],\n },\n outputFileTracingIncludes: {\n ...(nextConfig.outputFileTracingIncludes || {}),\n '**/*': [...(nextConfig.outputFileTracingIncludes?.['**/*'] || []), '@libsql/client'],\n },\n turbopack: {\n ...(nextConfig.turbopack || {}),\n },\n // We disable the poweredByHeader here because we add it manually in the headers function below\n ...(nextConfig.poweredByHeader !== false ? { poweredByHeader: false } : {}),\n headers: async () => {\n const headersFromConfig = 'headers' in nextConfig ? await nextConfig.headers() : []\n\n return [\n ...(headersFromConfig || []),\n {\n headers: [\n {\n key: 'Accept-CH',\n value: 'Sec-CH-Prefers-Color-Scheme',\n },\n {\n key: 'Vary',\n value: 'Sec-CH-Prefers-Color-Scheme',\n },\n {\n key: 'Critical-CH',\n value: 'Sec-CH-Prefers-Color-Scheme',\n },\n ...(nextConfig.poweredByHeader !== false ? [poweredByHeader] : []),\n ],\n source: '/:path*',\n },\n ]\n },\n serverExternalPackages: [\n ...(nextConfig.serverExternalPackages || []),\n // WHY: without externalizing graphql, a graphql version error will be thrown\n // during runtime (\"Ensure that there is only one instance of \\\"graphql\\\" in the node_modules\\ndirectory.\")\n 'graphql',\n ...(process.env.NODE_ENV === 'development' && options.devBundleServerPackages !== true\n ? /**\n * Unless explicitly disabled by the user, by passing `devBundleServerPackages: true` to withPayload, we\n * do not bundle server-only packages during dev for two reasons:\n *\n * 1. Performance: Fewer files to compile means faster compilation speeds.\n * 2. Turbopack support: Webpack's externals are not supported by Turbopack.\n *\n * Regarding Turbopack support: Unlike webpack.externals, we cannot use serverExternalPackages to\n * externalized packages that are not resolvable from the project root. So including a package like\n * \"drizzle-kit\" in here would do nothing - Next.js will ignore the rule and still bundle the package -\n * because it detects that the package is not resolvable from the project root (= not directly installed\n * by the user in their own package.json).\n *\n * Instead, we can use serverExternalPackages for the entry-point packages that *are* installed directly\n * by the user (e.g. db-postgres, which then installs drizzle-kit as a dependency).\n *\n *\n *\n * We should only do this during development, not build, because externalizing these packages can hurt\n * the bundle size. Not only does it disable tree-shaking, it also risks installing duplicate copies of the\n * same package.\n *\n * Example:\n * - @payloadcms/richtext-lexical (in bundle) -> installs qs-esm (bundled because of importer)\n * - payload (not in bundle, external) -> installs qs-esm (external because of importer)\n * Result: we have two copies of qs-esm installed - one in the bundle, and one in node_modules.\n *\n * During development, these bundle size difference do not matter much, and development speed /\n * turbopack support are more important.\n */\n [\n 'payload',\n '@payloadcms/db-mongodb',\n '@payloadcms/db-postgres',\n '@payloadcms/db-sqlite',\n '@payloadcms/db-vercel-postgres',\n '@payloadcms/db-d1-sqlite',\n '@payloadcms/drizzle',\n '@payloadcms/email-nodemailer',\n '@payloadcms/email-resend',\n '@payloadcms/graphql',\n '@payloadcms/payload-cloud',\n '@payloadcms/plugin-redirects',\n // TODO: Add the following packages, excluding their /client subpath exports, once Next.js supports it\n // see: https://github.com/vercel/next.js/discussions/76991\n //'@payloadcms/plugin-cloud-storage',\n //'@payloadcms/plugin-sentry',\n //'@payloadcms/plugin-stripe',\n // @payloadcms/richtext-lexical\n //'@payloadcms/storage-azure',\n //'@payloadcms/storage-gcs',\n //'@payloadcms/storage-s3',\n //'@payloadcms/storage-uploadthing',\n //'@payloadcms/storage-vercel-blob',\n ]\n : []),\n ],\n webpack: (webpackConfig, webpackOptions) => {\n const incomingWebpackConfig =\n typeof nextConfig.webpack === 'function'\n ? nextConfig.webpack(webpackConfig, webpackOptions)\n : webpackConfig\n\n return {\n ...incomingWebpackConfig,\n externals: [\n ...(incomingWebpackConfig?.externals || []),\n /**\n * See the explanation in the serverExternalPackages section above.\n * We need to force Webpack to emit require() calls for these packages, even though they are not\n * resolvable from the project root. You would expect this to error during runtime, but Next.js seems to be able to require these just fine.\n *\n * This is the only way to get Webpack Build to work, without the bundle size caveats of externalizing the\n * entry point packages, as explained in the serverExternalPackages section above.\n */\n 'drizzle-kit',\n 'drizzle-kit/api',\n 'sharp',\n 'libsql',\n 'require-in-the-middle',\n 'json-schema-to-typescript',\n ],\n plugins: [\n ...(incomingWebpackConfig?.plugins || []),\n // Fix cloudflare:sockets error: https://github.com/vercel/next.js/discussions/50177\n new webpackOptions.webpack.IgnorePlugin({\n resourceRegExp: /^pg-native$|^cloudflare:sockets$/,\n }),\n ],\n resolve: {\n ...(incomingWebpackConfig?.resolve || {}),\n alias: {\n ...(incomingWebpackConfig?.resolve?.alias || {}),\n },\n fallback: {\n ...(incomingWebpackConfig?.resolve?.fallback || {}),\n /*\n * This fixes the following warning when running next build with webpack (tested on Next.js 16.0.3 with Payload 3.64.0):\n *\n * ⚠ Compiled with warnings in 8.7s\n *\n * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/deps.js\n * Module not found: Can't resolve 'aws4' in '/Users/alessio/Documents/temp/next16p/node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib'\n *\n * Import trace for requested module:\n * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/deps.js\n * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/client-side-encryption/client_encryption.js\n * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/index.js\n * ./node_modules/.pnpm/mongoose@8.15.1/node_modules/mongoose/lib/index.js\n * ./node_modules/.pnpm/mongoose@8.15.1/node_modules/mongoose/index.js\n * ./node_modules/.pnpm/@payloadcms+db-mongodb@3.64.0_payload@3.64.0_graphql@16.12.0_typescript@5.7.3_/node_modules/@payloadcms/db-mongodb/dist/index.js\n * ./src/payload.config.ts\n * ./src/app/my-route/route.ts\n *\n **/\n aws4: false,\n },\n },\n }\n },\n }\n\n if (nextConfig.basePath) {\n process.env.NEXT_BASE_PATH = nextConfig.basePath\n baseConfig.env.NEXT_BASE_PATH = nextConfig.basePath\n }\n\n if (!supportsTurbopackBuild) {\n return withPayloadLegacy(baseConfig)\n } else {\n return {\n ...baseConfig,\n serverExternalPackages: [\n ...(baseConfig.serverExternalPackages || []),\n 'drizzle-kit',\n 'drizzle-kit/api',\n 'sharp',\n 'libsql',\n 'require-in-the-middle',\n 'json-schema-to-typescript',\n // Prevents turbopack build errors by the thread-stream package which is installed by pino\n 'pino',\n ],\n }\n }\n}\n\nexport default withPayload\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"sources":["../../src/withPayload/withPayload.js"],"sourcesContent":["/**\n * These files must remain as plain JavaScript (.js) rather than TypeScript (.ts) because they are\n * imported directly in next.config.mjs files. Since next.config files run before the build process,\n * TypeScript compilation is not available. This ensures compatibility with all templates and\n * user projects regardless of their TypeScript setup.\n */\nimport {\n getNextjsVersion,\n supportsTurbopackExternalizeTransitiveDependencies,\n} from './withPayload.utils.js'\nimport { withPayloadLegacy } from './withPayloadLegacy.js'\n\nconst poweredByHeader = {\n key: 'X-Powered-By',\n value: 'Next.js, Payload',\n}\n\n/**\n * @param {import('next').NextConfig} nextConfig\n * @param {Object} [options] - Optional configuration options\n * @param {boolean} [options.devBundleServerPackages] - Whether to bundle server packages in development mode. @default false\n * */\nexport const withPayload = (nextConfig = {}, options = {}) => {\n const nextjsVersion = getNextjsVersion()\n\n const supportsTurbopackBuild = supportsTurbopackExternalizeTransitiveDependencies(nextjsVersion)\n\n const env = nextConfig.env || {}\n\n if (nextConfig.experimental?.staleTimes?.dynamic) {\n console.warn(\n 'Payload detected a non-zero value for the `staleTimes.dynamic` option in your Next.js config. This will slow down page transitions and may cause stale data to load within the Admin panel. To clear this warning, remove the `staleTimes.dynamic` option from your Next.js config or set it to 0. In the future, Next.js may support scoping this option to specific routes.',\n )\n env.NEXT_PUBLIC_ENABLE_ROUTER_CACHE_REFRESH = 'true'\n }\n\n const consoleWarn = console.warn\n const sassWarningText =\n 'SassWarning: Future import deprecation is not yet active, so silencing it is unnecessary'\n console.warn = (...args) => {\n if (\n (typeof args[1] === 'string' && args[1].includes(sassWarningText)) ||\n (typeof args[0] === 'string' && args[0].includes(sassWarningText))\n ) {\n // This warning is a lie - without silencing import deprecation warnings, sass will spam the console with deprecation warnings\n return\n }\n\n consoleWarn(...args)\n }\n\n /** @type {import('next').NextConfig} */\n const baseConfig = {\n ...nextConfig,\n env,\n sassOptions: {\n ...(nextConfig.sassOptions || {}),\n /**\n * This prevents scss warning spam during pnpm dev that looks like this:\n * ⚠ ./test/admin/components/views/CustomMinimal/index.scss\n * Issue while running loader\n * SassWarning: Deprecation Warning on line 8, column 8 of file:///Users/alessio/Documents/GitHub/ payload/packages/ui/src/scss/styles.scss:8:8:\n * Sass @import rules are deprecated and will be removed in Dart Sass 3.0.0.\n *\n * More info and automated migrator: https://sass-lang.com/d/import\n *\n * 8 | @import 'queries';\n *\n *\n * packages/ui/src/scss/styles.scss 9:9 @import\n * test/admin/components/views/CustomMinimal/index.scss 1:9 root stylesheet\n *\n * @todo: update all outdated scss imports to use @use instead of @import. Then, we can remove this.\n */\n silenceDeprecations: [...(nextConfig.sassOptions?.silenceDeprecations || []), 'import'],\n },\n outputFileTracingExcludes: {\n ...(nextConfig.outputFileTracingExcludes || {}),\n '**/*': [\n ...(nextConfig.outputFileTracingExcludes?.['**/*'] || []),\n 'drizzle-kit',\n 'drizzle-kit/api',\n ],\n },\n outputFileTracingIncludes: {\n ...(nextConfig.outputFileTracingIncludes || {}),\n '**/*': [...(nextConfig.outputFileTracingIncludes?.['**/*'] || []), '@libsql/client'],\n },\n turbopack: {\n ...(nextConfig.turbopack || {}),\n },\n // We disable the poweredByHeader here because we add it manually in the headers function below\n ...(nextConfig.poweredByHeader !== false ? { poweredByHeader: false } : {}),\n headers: async () => {\n const headersFromConfig = 'headers' in nextConfig ? await nextConfig.headers() : []\n\n return [\n ...(headersFromConfig || []),\n {\n headers: [\n {\n key: 'Accept-CH',\n value: 'Sec-CH-Prefers-Color-Scheme',\n },\n {\n key: 'Vary',\n value: 'Sec-CH-Prefers-Color-Scheme',\n },\n {\n key: 'Critical-CH',\n value: 'Sec-CH-Prefers-Color-Scheme',\n },\n ...(nextConfig.poweredByHeader !== false ? [poweredByHeader] : []),\n ],\n source: '/:path*',\n },\n ]\n },\n serverExternalPackages: [\n ...(nextConfig.serverExternalPackages || []),\n // WHY: without externalizing graphql, a graphql version error will be thrown\n // during runtime (\"Ensure that there is only one instance of \\\"graphql\\\" in the node_modules\\ndirectory.\")\n 'graphql',\n ...(process.env.NODE_ENV === 'development' && options.devBundleServerPackages !== true\n ? /**\n * Unless explicitly disabled by the user, by passing `devBundleServerPackages: true` to withPayload, we\n * do not bundle server-only packages during dev for two reasons:\n *\n * 1. Performance: Fewer files to compile means faster compilation speeds.\n * 2. Turbopack support: Webpack's externals are not supported by Turbopack.\n *\n * Regarding Turbopack support: Unlike webpack.externals, we cannot use serverExternalPackages to\n * externalized packages that are not resolvable from the project root. So including a package like\n * \"drizzle-kit\" in here would do nothing - Next.js will ignore the rule and still bundle the package -\n * because it detects that the package is not resolvable from the project root (= not directly installed\n * by the user in their own package.json).\n *\n * Instead, we can use serverExternalPackages for the entry-point packages that *are* installed directly\n * by the user (e.g. db-postgres, which then installs drizzle-kit as a dependency).\n *\n *\n *\n * We should only do this during development, not build, because externalizing these packages can hurt\n * the bundle size. Not only does it disable tree-shaking, it also risks installing duplicate copies of the\n * same package.\n *\n * Example:\n * - @payloadcms/richtext-lexical (in bundle) -> installs qs-esm (bundled because of importer)\n * - payload (not in bundle, external) -> installs qs-esm (external because of importer)\n * Result: we have two copies of qs-esm installed - one in the bundle, and one in node_modules.\n *\n * During development, these bundle size difference do not matter much, and development speed /\n * turbopack support are more important.\n */\n [\n 'payload',\n '@payloadcms/db-mongodb',\n '@payloadcms/db-postgres',\n '@payloadcms/db-sqlite',\n '@payloadcms/db-vercel-postgres',\n '@payloadcms/db-d1-sqlite',\n '@payloadcms/drizzle',\n '@payloadcms/email-nodemailer',\n '@payloadcms/email-resend',\n '@payloadcms/graphql',\n '@payloadcms/payload-cloud',\n '@payloadcms/plugin-redirects',\n // TODO: Add the following packages, excluding their /client subpath exports, once Next.js supports it\n // see: https://github.com/vercel/next.js/discussions/76991\n //'@payloadcms/plugin-cloud-storage',\n //'@payloadcms/plugin-sentry',\n //'@payloadcms/plugin-stripe',\n // @payloadcms/richtext-lexical\n //'@payloadcms/storage-azure',\n //'@payloadcms/storage-gcs',\n //'@payloadcms/storage-s3',\n //'@payloadcms/storage-uploadthing',\n //'@payloadcms/storage-vercel-blob',\n ]\n : []),\n ],\n webpack: (webpackConfig, webpackOptions) => {\n const incomingWebpackConfig =\n typeof nextConfig.webpack === 'function'\n ? nextConfig.webpack(webpackConfig, webpackOptions)\n : webpackConfig\n\n return {\n ...incomingWebpackConfig,\n externals: [\n ...(incomingWebpackConfig?.externals || []),\n /**\n * See the explanation in the serverExternalPackages section above.\n * We need to force Webpack to emit require() calls for these packages, even though they are not\n * resolvable from the project root. You would expect this to error during runtime, but Next.js seems to be able to require these just fine.\n *\n * This is the only way to get Webpack Build to work, without the bundle size caveats of externalizing the\n * entry point packages, as explained in the serverExternalPackages section above.\n */\n 'drizzle-kit',\n 'drizzle-kit/api',\n 'sharp',\n 'libsql',\n 'require-in-the-middle',\n 'json-schema-to-typescript',\n ],\n plugins: [\n ...(incomingWebpackConfig?.plugins || []),\n // Fix cloudflare:sockets error: https://github.com/vercel/next.js/discussions/50177\n new webpackOptions.webpack.IgnorePlugin({\n resourceRegExp: /^pg-native$|^cloudflare:sockets$/,\n }),\n ],\n resolve: {\n ...(incomingWebpackConfig?.resolve || {}),\n alias: {\n ...(incomingWebpackConfig?.resolve?.alias || {}),\n },\n fallback: {\n ...(incomingWebpackConfig?.resolve?.fallback || {}),\n /*\n * This fixes the following warning when running next build with webpack (tested on Next.js 16.0.3 with Payload 3.64.0):\n *\n * ⚠ Compiled with warnings in 8.7s\n *\n * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/deps.js\n * Module not found: Can't resolve 'aws4' in '/Users/alessio/Documents/temp/next16p/node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib'\n *\n * Import trace for requested module:\n * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/deps.js\n * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/client-side-encryption/client_encryption.js\n * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/index.js\n * ./node_modules/.pnpm/mongoose@8.15.1/node_modules/mongoose/lib/index.js\n * ./node_modules/.pnpm/mongoose@8.15.1/node_modules/mongoose/index.js\n * ./node_modules/.pnpm/@payloadcms+db-mongodb@3.64.0_payload@3.64.0_graphql@16.12.0_typescript@5.7.3_/node_modules/@payloadcms/db-mongodb/dist/index.js\n * ./src/payload.config.ts\n * ./src/app/my-route/route.ts\n *\n **/\n aws4: false,\n },\n },\n }\n },\n }\n\n if (nextConfig.basePath) {\n process.env.NEXT_BASE_PATH = nextConfig.basePath\n baseConfig.env.NEXT_BASE_PATH = nextConfig.basePath\n }\n\n if (!supportsTurbopackBuild) {\n return withPayloadLegacy(baseConfig)\n } else {\n return {\n ...baseConfig,\n serverExternalPackages: [\n ...(baseConfig.serverExternalPackages || []),\n 'drizzle-kit',\n 'drizzle-kit/api',\n 'sharp',\n 'libsql',\n 'require-in-the-middle',\n 'json-schema-to-typescript',\n // Prevents turbopack build errors by the thread-stream package which is installed by pino\n 'pino',\n ],\n }\n }\n}\n\nexport default withPayload\n"],"names":["getNextjsVersion","supportsTurbopackExternalizeTransitiveDependencies","withPayloadLegacy","poweredByHeader","key","value","withPayload","nextConfig","options","nextjsVersion","supportsTurbopackBuild","env","experimental","staleTimes","dynamic","console","warn","NEXT_PUBLIC_ENABLE_ROUTER_CACHE_REFRESH","consoleWarn","sassWarningText","args","includes","baseConfig","sassOptions","silenceDeprecations","outputFileTracingExcludes","outputFileTracingIncludes","turbopack","headers","headersFromConfig","source","serverExternalPackages","process","NODE_ENV","devBundleServerPackages","webpack","webpackConfig","webpackOptions","incomingWebpackConfig","externals","plugins","IgnorePlugin","resourceRegExp","resolve","alias","fallback","aws4","basePath","NEXT_BASE_PATH"],"mappings":"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"}
@@ -1,40 +1,41 @@
1
1
  import { describe, expect, it } from 'vitest';
2
2
  import { withPayload } from './withPayload.js';
3
- describe('withPayload', () => {
4
- it('should set process.env.NEXT_BASE_PATH when nextConfig.basePath is provided', () => {
5
- const originalBasePath = process.env.NEXT_BASE_PATH;
6
- delete process.env.NEXT_BASE_PATH;
7
- try {
8
- const mockNextConfig = {
9
- basePath: '/test/basepath'
10
- };
11
- withPayload(mockNextConfig);
12
- // Verify it set the env var so formatAdminURL can read it
13
- expect(process.env.NEXT_BASE_PATH).toBe('/test/basepath');
14
- } finally {
15
- // Restore original value
16
- if (originalBasePath === undefined) {
3
+ describe('withPayload', ()=>{
4
+ it('should set process.env.NEXT_BASE_PATH when nextConfig.basePath is provided', ()=>{
5
+ const originalBasePath = process.env.NEXT_BASE_PATH;
17
6
  delete process.env.NEXT_BASE_PATH;
18
- } else {
19
- process.env.NEXT_BASE_PATH = originalBasePath;
20
- }
21
- }
22
- });
23
- it('should not modify process.env.NEXT_BASE_PATH when basePath is not provided', () => {
24
- const originalBasePath = process.env.NEXT_BASE_PATH;
25
- try {
26
- const mockNextConfig = {};
27
- withPayload(mockNextConfig);
28
- // Verify it didn't set the env var
29
- expect(process.env.NEXT_BASE_PATH).toBe(originalBasePath);
30
- } finally {
31
- // Restore original value
32
- if (originalBasePath === undefined) {
33
- delete process.env.NEXT_BASE_PATH;
34
- } else {
35
- process.env.NEXT_BASE_PATH = originalBasePath;
36
- }
37
- }
38
- });
7
+ try {
8
+ const mockNextConfig = {
9
+ basePath: '/test/basepath'
10
+ };
11
+ withPayload(mockNextConfig);
12
+ // Verify it set the env var so formatAdminURL can read it
13
+ expect(process.env.NEXT_BASE_PATH).toBe('/test/basepath');
14
+ } finally{
15
+ // Restore original value
16
+ if (originalBasePath === undefined) {
17
+ delete process.env.NEXT_BASE_PATH;
18
+ } else {
19
+ process.env.NEXT_BASE_PATH = originalBasePath;
20
+ }
21
+ }
22
+ });
23
+ it('should not modify process.env.NEXT_BASE_PATH when basePath is not provided', ()=>{
24
+ const originalBasePath = process.env.NEXT_BASE_PATH;
25
+ try {
26
+ const mockNextConfig = {};
27
+ withPayload(mockNextConfig);
28
+ // Verify it didn't set the env var
29
+ expect(process.env.NEXT_BASE_PATH).toBe(originalBasePath);
30
+ } finally{
31
+ // Restore original value
32
+ if (originalBasePath === undefined) {
33
+ delete process.env.NEXT_BASE_PATH;
34
+ } else {
35
+ process.env.NEXT_BASE_PATH = originalBasePath;
36
+ }
37
+ }
38
+ });
39
39
  });
40
+
40
41
  //# sourceMappingURL=withPayload.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"withPayload.spec.js","names":["describe","expect","it","withPayload","originalBasePath","process","env","NEXT_BASE_PATH","mockNextConfig","basePath","toBe","undefined"],"sources":["../../src/withPayload/withPayload.spec.ts"],"sourcesContent":["import { describe, expect, it } from 'vitest'\n\nimport { withPayload } from './withPayload.js'\n\ndescribe('withPayload', () => {\n it('should set process.env.NEXT_BASE_PATH when nextConfig.basePath is provided', () => {\n const originalBasePath = process.env.NEXT_BASE_PATH\n delete process.env.NEXT_BASE_PATH\n\n try {\n const mockNextConfig = {\n basePath: '/test/basepath',\n }\n\n withPayload(mockNextConfig)\n\n // Verify it set the env var so formatAdminURL can read it\n expect(process.env.NEXT_BASE_PATH).toBe('/test/basepath')\n } finally {\n // Restore original value\n if (originalBasePath === undefined) {\n delete process.env.NEXT_BASE_PATH\n } else {\n process.env.NEXT_BASE_PATH = originalBasePath\n }\n }\n })\n\n it('should not modify process.env.NEXT_BASE_PATH when basePath is not provided', () => {\n const originalBasePath = process.env.NEXT_BASE_PATH\n\n try {\n const mockNextConfig = {}\n\n withPayload(mockNextConfig)\n\n // Verify it didn't set the env var\n expect(process.env.NEXT_BASE_PATH).toBe(originalBasePath)\n } finally {\n // Restore original value\n if (originalBasePath === undefined) {\n delete process.env.NEXT_BASE_PATH\n } else {\n process.env.NEXT_BASE_PATH = originalBasePath\n }\n }\n })\n})\n"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ;AAErC,SAASC,WAAW,QAAQ;AAE5BH,QAAA,CAAS,eAAe;EACtBE,EAAA,CAAG,8EAA8E;IAC/E,MAAME,gBAAA,GAAmBC,OAAA,CAAQC,GAAG,CAACC,cAAc;IACnD,OAAOF,OAAA,CAAQC,GAAG,CAACC,cAAc;IAEjC,IAAI;MACF,MAAMC,cAAA,GAAiB;QACrBC,QAAA,EAAU;MACZ;MAEAN,WAAA,CAAYK,cAAA;MAEZ;MACAP,MAAA,CAAOI,OAAA,CAAQC,GAAG,CAACC,cAAc,EAAEG,IAAI,CAAC;IAC1C,UAAU;MACR;MACA,IAAIN,gBAAA,KAAqBO,SAAA,EAAW;QAClC,OAAON,OAAA,CAAQC,GAAG,CAACC,cAAc;MACnC,OAAO;QACLF,OAAA,CAAQC,GAAG,CAACC,cAAc,GAAGH,gBAAA;MAC/B;IACF;EACF;EAEAF,EAAA,CAAG,8EAA8E;IAC/E,MAAME,gBAAA,GAAmBC,OAAA,CAAQC,GAAG,CAACC,cAAc;IAEnD,IAAI;MACF,MAAMC,cAAA,GAAiB,CAAC;MAExBL,WAAA,CAAYK,cAAA;MAEZ;MACAP,MAAA,CAAOI,OAAA,CAAQC,GAAG,CAACC,cAAc,EAAEG,IAAI,CAACN,gBAAA;IAC1C,UAAU;MACR;MACA,IAAIA,gBAAA,KAAqBO,SAAA,EAAW;QAClC,OAAON,OAAA,CAAQC,GAAG,CAACC,cAAc;MACnC,OAAO;QACLF,OAAA,CAAQC,GAAG,CAACC,cAAc,GAAGH,gBAAA;MAC/B;IACF;EACF;AACF","ignoreList":[]}
1
+ {"version":3,"sources":["../../src/withPayload/withPayload.spec.ts"],"sourcesContent":["import { describe, expect, it } from 'vitest'\n\nimport { withPayload } from './withPayload.js'\n\ndescribe('withPayload', () => {\n it('should set process.env.NEXT_BASE_PATH when nextConfig.basePath is provided', () => {\n const originalBasePath = process.env.NEXT_BASE_PATH\n delete process.env.NEXT_BASE_PATH\n\n try {\n const mockNextConfig = {\n basePath: '/test/basepath',\n }\n\n withPayload(mockNextConfig)\n\n // Verify it set the env var so formatAdminURL can read it\n expect(process.env.NEXT_BASE_PATH).toBe('/test/basepath')\n } finally {\n // Restore original value\n if (originalBasePath === undefined) {\n delete process.env.NEXT_BASE_PATH\n } else {\n process.env.NEXT_BASE_PATH = originalBasePath\n }\n }\n })\n\n it('should not modify process.env.NEXT_BASE_PATH when basePath is not provided', () => {\n const originalBasePath = process.env.NEXT_BASE_PATH\n\n try {\n const mockNextConfig = {}\n\n withPayload(mockNextConfig)\n\n // Verify it didn't set the env var\n expect(process.env.NEXT_BASE_PATH).toBe(originalBasePath)\n } finally {\n // Restore original value\n if (originalBasePath === undefined) {\n delete process.env.NEXT_BASE_PATH\n } else {\n process.env.NEXT_BASE_PATH = originalBasePath\n }\n }\n })\n})\n"],"names":["describe","expect","it","withPayload","originalBasePath","process","env","NEXT_BASE_PATH","mockNextConfig","basePath","toBe","undefined"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ,SAAQ;AAE7C,SAASC,WAAW,QAAQ,mBAAkB;AAE9CH,SAAS,eAAe;IACtBE,GAAG,8EAA8E;QAC/E,MAAME,mBAAmBC,QAAQC,GAAG,CAACC,cAAc;QACnD,OAAOF,QAAQC,GAAG,CAACC,cAAc;QAEjC,IAAI;YACF,MAAMC,iBAAiB;gBACrBC,UAAU;YACZ;YAEAN,YAAYK;YAEZ,0DAA0D;YAC1DP,OAAOI,QAAQC,GAAG,CAACC,cAAc,EAAEG,IAAI,CAAC;QAC1C,SAAU;YACR,yBAAyB;YACzB,IAAIN,qBAAqBO,WAAW;gBAClC,OAAON,QAAQC,GAAG,CAACC,cAAc;YACnC,OAAO;gBACLF,QAAQC,GAAG,CAACC,cAAc,GAAGH;YAC/B;QACF;IACF;IAEAF,GAAG,8EAA8E;QAC/E,MAAME,mBAAmBC,QAAQC,GAAG,CAACC,cAAc;QAEnD,IAAI;YACF,MAAMC,iBAAiB,CAAC;YAExBL,YAAYK;YAEZ,mCAAmC;YACnCP,OAAOI,QAAQC,GAAG,CAACC,cAAc,EAAEG,IAAI,CAACN;QAC1C,SAAU;YACR,yBAAyB;YACzB,IAAIA,qBAAqBO,WAAW;gBAClC,OAAON,QAAQC,GAAG,CAACC,cAAc;YACnC,OAAO;gBACLF,QAAQC,GAAG,CAACC,cAAc,GAAGH;YAC/B;QACF;IACF;AACF"}