@payloadcms/next 3.0.0-beta.3 → 3.0.0-beta.30

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 (365) hide show
  1. package/dist/cjs/withPayload.cjs +2 -1
  2. package/dist/cjs/withPayload.cjs.map +1 -1
  3. package/dist/exports/routes.d.ts +1 -1
  4. package/dist/exports/routes.d.ts.map +1 -1
  5. package/dist/exports/routes.js +1 -1
  6. package/dist/exports/routes.js.map +1 -1
  7. package/dist/exports/utilities.d.ts +7 -1
  8. package/dist/exports/utilities.d.ts.map +1 -1
  9. package/dist/exports/utilities.js +7 -1
  10. package/dist/exports/utilities.js.map +1 -1
  11. package/dist/{next-fileupload → fetchAPI-multipart}/fileFactory.d.ts +2 -2
  12. package/dist/fetchAPI-multipart/fileFactory.d.ts.map +1 -0
  13. package/dist/fetchAPI-multipart/fileFactory.js.map +1 -0
  14. package/dist/{next-fileupload → fetchAPI-multipart}/handlers.d.ts +2 -2
  15. package/dist/fetchAPI-multipart/handlers.d.ts.map +1 -0
  16. package/dist/fetchAPI-multipart/handlers.js.map +1 -0
  17. package/dist/{next-fileupload → fetchAPI-multipart}/index.d.ts +8 -8
  18. package/dist/fetchAPI-multipart/index.d.ts.map +1 -0
  19. package/dist/{next-fileupload → fetchAPI-multipart}/index.js +1 -1
  20. package/dist/fetchAPI-multipart/index.js.map +1 -0
  21. package/dist/fetchAPI-multipart/isEligibleRequest.d.ts.map +1 -0
  22. package/dist/{next-fileupload → fetchAPI-multipart}/isEligibleRequest.js +1 -1
  23. package/dist/fetchAPI-multipart/isEligibleRequest.js.map +1 -0
  24. package/dist/fetchAPI-multipart/processMultipart.d.ts +8 -0
  25. package/dist/fetchAPI-multipart/processMultipart.d.ts.map +1 -0
  26. package/dist/{next-fileupload → fetchAPI-multipart}/processMultipart.js +29 -6
  27. package/dist/fetchAPI-multipart/processMultipart.js.map +1 -0
  28. package/dist/fetchAPI-multipart/processNested.d.ts.map +1 -0
  29. package/dist/{next-fileupload → fetchAPI-multipart}/processNested.js +2 -1
  30. package/dist/fetchAPI-multipart/processNested.js.map +1 -0
  31. package/dist/fetchAPI-multipart/uploadTimer.d.ts.map +1 -0
  32. package/dist/fetchAPI-multipart/uploadTimer.js.map +1 -0
  33. package/dist/{next-fileupload → fetchAPI-multipart}/utilities.d.ts +4 -4
  34. package/dist/fetchAPI-multipart/utilities.d.ts.map +1 -0
  35. package/dist/{next-fileupload → fetchAPI-multipart}/utilities.js +4 -4
  36. package/dist/fetchAPI-multipart/utilities.js.map +1 -0
  37. package/dist/fetchAPI-stream-file/index.d.ts.map +1 -0
  38. package/dist/fetchAPI-stream-file/index.js.map +1 -0
  39. package/dist/layouts/Root/index.d.ts.map +1 -1
  40. package/dist/layouts/Root/index.js +23 -1
  41. package/dist/layouts/Root/index.js.map +1 -1
  42. package/dist/prod/styles.css +1 -1
  43. package/dist/routes/graphql/handler.d.ts.map +1 -1
  44. package/dist/routes/graphql/handler.js +22 -10
  45. package/dist/routes/graphql/handler.js.map +1 -1
  46. package/dist/routes/index.d.ts +1 -1
  47. package/dist/routes/index.d.ts.map +1 -1
  48. package/dist/routes/index.js +1 -1
  49. package/dist/routes/index.js.map +1 -1
  50. package/dist/routes/rest/auth/access.d.ts.map +1 -1
  51. package/dist/routes/rest/auth/access.js +5 -0
  52. package/dist/routes/rest/auth/access.js.map +1 -1
  53. package/dist/routes/rest/auth/forgotPassword.d.ts.map +1 -1
  54. package/dist/routes/rest/auth/forgotPassword.js +7 -2
  55. package/dist/routes/rest/auth/forgotPassword.js.map +1 -1
  56. package/dist/routes/rest/auth/init.d.ts.map +1 -1
  57. package/dist/routes/rest/auth/init.js +6 -0
  58. package/dist/routes/rest/auth/init.js.map +1 -1
  59. package/dist/routes/rest/auth/login.d.ts.map +1 -1
  60. package/dist/routes/rest/auth/login.js +8 -5
  61. package/dist/routes/rest/auth/login.js.map +1 -1
  62. package/dist/routes/rest/auth/logout.d.ts.map +1 -1
  63. package/dist/routes/rest/auth/logout.js +12 -7
  64. package/dist/routes/rest/auth/logout.js.map +1 -1
  65. package/dist/routes/rest/auth/me.d.ts.map +1 -1
  66. package/dist/routes/rest/auth/me.js +5 -0
  67. package/dist/routes/rest/auth/me.js.map +1 -1
  68. package/dist/routes/rest/auth/refresh.d.ts.map +1 -1
  69. package/dist/routes/rest/auth/refresh.js +11 -7
  70. package/dist/routes/rest/auth/refresh.js.map +1 -1
  71. package/dist/routes/rest/auth/registerFirstUser.d.ts.map +1 -1
  72. package/dist/routes/rest/auth/registerFirstUser.js +8 -5
  73. package/dist/routes/rest/auth/registerFirstUser.js.map +1 -1
  74. package/dist/routes/rest/auth/resetPassword.d.ts.map +1 -1
  75. package/dist/routes/rest/auth/resetPassword.js +8 -5
  76. package/dist/routes/rest/auth/resetPassword.js.map +1 -1
  77. package/dist/routes/rest/auth/unlock.d.ts.map +1 -1
  78. package/dist/routes/rest/auth/unlock.js +7 -2
  79. package/dist/routes/rest/auth/unlock.js.map +1 -1
  80. package/dist/routes/rest/auth/verifyEmail.d.ts.map +1 -1
  81. package/dist/routes/rest/auth/verifyEmail.js +7 -2
  82. package/dist/routes/rest/auth/verifyEmail.js.map +1 -1
  83. package/dist/routes/rest/buildFormState.d.ts +3 -3
  84. package/dist/routes/rest/buildFormState.d.ts.map +1 -1
  85. package/dist/routes/rest/buildFormState.js +42 -7
  86. package/dist/routes/rest/buildFormState.js.map +1 -1
  87. package/dist/routes/rest/collections/count.d.ts +3 -0
  88. package/dist/routes/rest/collections/count.d.ts.map +1 -0
  89. package/dist/routes/rest/collections/count.js +15 -0
  90. package/dist/routes/rest/collections/count.js.map +1 -0
  91. package/dist/routes/rest/collections/create.d.ts.map +1 -1
  92. package/dist/routes/rest/collections/create.js +5 -0
  93. package/dist/routes/rest/collections/create.js.map +1 -1
  94. package/dist/routes/rest/collections/delete.d.ts.map +1 -1
  95. package/dist/routes/rest/collections/delete.js +7 -0
  96. package/dist/routes/rest/collections/delete.js.map +1 -1
  97. package/dist/routes/rest/collections/deleteByID.d.ts.map +1 -1
  98. package/dist/routes/rest/collections/deleteByID.js +14 -1
  99. package/dist/routes/rest/collections/deleteByID.js.map +1 -1
  100. package/dist/routes/rest/collections/docAccess.d.ts.map +1 -1
  101. package/dist/routes/rest/collections/docAccess.js +5 -0
  102. package/dist/routes/rest/collections/docAccess.js.map +1 -1
  103. package/dist/routes/rest/collections/duplicate.d.ts.map +1 -1
  104. package/dist/routes/rest/collections/duplicate.js +12 -1
  105. package/dist/routes/rest/collections/duplicate.js.map +1 -1
  106. package/dist/routes/rest/collections/find.d.ts.map +1 -1
  107. package/dist/routes/rest/collections/find.js +5 -0
  108. package/dist/routes/rest/collections/find.js.map +1 -1
  109. package/dist/routes/rest/collections/findByID.d.ts.map +1 -1
  110. package/dist/routes/rest/collections/findByID.js +12 -1
  111. package/dist/routes/rest/collections/findByID.js.map +1 -1
  112. package/dist/routes/rest/collections/findVersionByID.d.ts.map +1 -1
  113. package/dist/routes/rest/collections/findVersionByID.js +12 -1
  114. package/dist/routes/rest/collections/findVersionByID.js.map +1 -1
  115. package/dist/routes/rest/collections/findVersions.d.ts.map +1 -1
  116. package/dist/routes/rest/collections/findVersions.js +5 -0
  117. package/dist/routes/rest/collections/findVersions.js.map +1 -1
  118. package/dist/routes/rest/collections/preview.d.ts.map +1 -1
  119. package/dist/routes/rest/collections/preview.js +11 -2
  120. package/dist/routes/rest/collections/preview.js.map +1 -1
  121. package/dist/routes/rest/collections/restoreVersion.d.ts.map +1 -1
  122. package/dist/routes/rest/collections/restoreVersion.js +12 -1
  123. package/dist/routes/rest/collections/restoreVersion.js.map +1 -1
  124. package/dist/routes/rest/collections/update.d.ts.map +1 -1
  125. package/dist/routes/rest/collections/update.js +7 -0
  126. package/dist/routes/rest/collections/update.js.map +1 -1
  127. package/dist/routes/rest/collections/updateByID.d.ts.map +1 -1
  128. package/dist/routes/rest/collections/updateByID.js +12 -1
  129. package/dist/routes/rest/collections/updateByID.js.map +1 -1
  130. package/dist/routes/rest/files/checkFileAccess.d.ts +3 -3
  131. package/dist/routes/rest/files/checkFileAccess.d.ts.map +1 -1
  132. package/dist/routes/rest/files/checkFileAccess.js +1 -0
  133. package/dist/routes/rest/files/checkFileAccess.js.map +1 -1
  134. package/dist/routes/rest/files/getFile.d.ts +2 -2
  135. package/dist/routes/rest/files/getFile.d.ts.map +1 -1
  136. package/dist/routes/rest/files/getFile.js +19 -10
  137. package/dist/routes/rest/files/getFile.js.map +1 -1
  138. package/dist/routes/rest/files/getFileTypeFallback.d.ts +7 -0
  139. package/dist/routes/rest/files/getFileTypeFallback.d.ts.map +1 -0
  140. package/dist/routes/rest/files/getFileTypeFallback.js +21 -0
  141. package/dist/routes/rest/files/getFileTypeFallback.js.map +1 -0
  142. package/dist/routes/rest/globals/docAccess.d.ts.map +1 -1
  143. package/dist/routes/rest/globals/docAccess.js +5 -0
  144. package/dist/routes/rest/globals/docAccess.js.map +1 -1
  145. package/dist/routes/rest/globals/findOne.d.ts.map +1 -1
  146. package/dist/routes/rest/globals/findOne.js +5 -0
  147. package/dist/routes/rest/globals/findOne.js.map +1 -1
  148. package/dist/routes/rest/globals/findVersionByID.d.ts.map +1 -1
  149. package/dist/routes/rest/globals/findVersionByID.js +5 -0
  150. package/dist/routes/rest/globals/findVersionByID.js.map +1 -1
  151. package/dist/routes/rest/globals/findVersions.d.ts.map +1 -1
  152. package/dist/routes/rest/globals/findVersions.js +5 -0
  153. package/dist/routes/rest/globals/findVersions.js.map +1 -1
  154. package/dist/routes/rest/globals/preview.d.ts.map +1 -1
  155. package/dist/routes/rest/globals/preview.js +11 -2
  156. package/dist/routes/rest/globals/preview.js.map +1 -1
  157. package/dist/routes/rest/globals/restoreVersion.d.ts.map +1 -1
  158. package/dist/routes/rest/globals/restoreVersion.js +5 -0
  159. package/dist/routes/rest/globals/restoreVersion.js.map +1 -1
  160. package/dist/routes/rest/globals/update.d.ts.map +1 -1
  161. package/dist/routes/rest/globals/update.js +5 -0
  162. package/dist/routes/rest/globals/update.js.map +1 -1
  163. package/dist/routes/rest/index.d.ts +1 -0
  164. package/dist/routes/rest/index.d.ts.map +1 -1
  165. package/dist/routes/rest/index.js +324 -213
  166. package/dist/routes/rest/index.js.map +1 -1
  167. package/dist/routes/rest/routeError.d.ts +5 -4
  168. package/dist/routes/rest/routeError.d.ts.map +1 -1
  169. package/dist/routes/rest/routeError.js +25 -11
  170. package/dist/routes/rest/routeError.js.map +1 -1
  171. package/dist/routes/rest/types.d.ts +7 -7
  172. package/dist/routes/rest/types.d.ts.map +1 -1
  173. package/dist/routes/rest/types.js.map +1 -1
  174. package/dist/routes/rest/utilities/sanitizeCollectionID.d.ts +9 -0
  175. package/dist/routes/rest/utilities/sanitizeCollectionID.d.ts.map +1 -0
  176. package/dist/routes/rest/utilities/sanitizeCollectionID.js +13 -0
  177. package/dist/routes/rest/utilities/sanitizeCollectionID.js.map +1 -0
  178. package/dist/scss/app.scss +2 -3
  179. package/dist/scss/vars.scss +0 -7
  180. package/dist/utilities/addDataAndFileToRequest.d.ts +11 -0
  181. package/dist/utilities/addDataAndFileToRequest.d.ts.map +1 -0
  182. package/dist/utilities/addDataAndFileToRequest.js +74 -0
  183. package/dist/utilities/addDataAndFileToRequest.js.map +1 -0
  184. package/dist/utilities/addLocalesToRequest.d.ts +20 -0
  185. package/dist/utilities/addLocalesToRequest.d.ts.map +1 -0
  186. package/dist/utilities/addLocalesToRequest.js +44 -0
  187. package/dist/utilities/addLocalesToRequest.js.map +1 -0
  188. package/dist/utilities/buildFieldSchemaMap/index.d.ts +2 -2
  189. package/dist/utilities/buildFieldSchemaMap/index.d.ts.map +1 -1
  190. package/dist/utilities/buildFieldSchemaMap/index.js.map +1 -1
  191. package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts.map +1 -1
  192. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +3 -0
  193. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
  194. package/dist/utilities/createPayloadRequest.d.ts.map +1 -1
  195. package/dist/utilities/createPayloadRequest.js +15 -28
  196. package/dist/utilities/createPayloadRequest.js.map +1 -1
  197. package/dist/utilities/getDataAndFile.d.ts +2 -2
  198. package/dist/utilities/getDataAndFile.d.ts.map +1 -1
  199. package/dist/utilities/getDataAndFile.js +27 -43
  200. package/dist/utilities/getDataAndFile.js.map +1 -1
  201. package/dist/utilities/getPayloadHMR.d.ts +2 -1
  202. package/dist/utilities/getPayloadHMR.d.ts.map +1 -1
  203. package/dist/utilities/getPayloadHMR.js +22 -18
  204. package/dist/utilities/getPayloadHMR.js.map +1 -1
  205. package/dist/utilities/getRequestLanguage.d.ts +1 -1
  206. package/dist/utilities/getRequestLanguage.d.ts.map +1 -1
  207. package/dist/utilities/getRequestLanguage.js +3 -4
  208. package/dist/utilities/getRequestLanguage.js.map +1 -1
  209. package/dist/utilities/headersWithCors.d.ts +8 -0
  210. package/dist/utilities/headersWithCors.d.ts.map +1 -0
  211. package/dist/utilities/headersWithCors.js +17 -0
  212. package/dist/utilities/headersWithCors.js.map +1 -0
  213. package/dist/utilities/initPage/handleAdminPage.d.ts +13 -0
  214. package/dist/utilities/initPage/handleAdminPage.d.ts.map +1 -0
  215. package/dist/utilities/initPage/handleAdminPage.js +35 -0
  216. package/dist/utilities/initPage/handleAdminPage.js.map +1 -0
  217. package/dist/utilities/initPage/handleAuthRedirect.d.ts +9 -0
  218. package/dist/utilities/initPage/handleAuthRedirect.d.ts.map +1 -0
  219. package/dist/utilities/initPage/handleAuthRedirect.js +26 -0
  220. package/dist/utilities/initPage/handleAuthRedirect.js.map +1 -0
  221. package/dist/utilities/initPage/index.d.ts +4 -0
  222. package/dist/utilities/initPage/index.d.ts.map +1 -0
  223. package/dist/utilities/{initPage.js → initPage/index.js} +22 -31
  224. package/dist/utilities/initPage/index.js.map +1 -0
  225. package/dist/utilities/initPage/shared.d.ts +4 -0
  226. package/dist/utilities/initPage/shared.d.ts.map +1 -0
  227. package/dist/utilities/initPage/shared.js +17 -0
  228. package/dist/utilities/initPage/shared.js.map +1 -0
  229. package/dist/utilities/initPage/types.d.ts +24 -0
  230. package/dist/utilities/initPage/types.d.ts.map +1 -0
  231. package/dist/utilities/initPage/types.js +3 -0
  232. package/dist/utilities/initPage/types.js.map +1 -0
  233. package/dist/views/API/index.client.js +2 -2
  234. package/dist/views/API/index.client.js.map +1 -1
  235. package/dist/views/Account/index.d.ts.map +1 -1
  236. package/dist/views/Account/index.js +2 -1
  237. package/dist/views/Account/index.js.map +1 -1
  238. package/dist/views/CreateFirstUser/index.client.d.ts +3 -3
  239. package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
  240. package/dist/views/CreateFirstUser/index.client.js +48 -6
  241. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  242. package/dist/views/CreateFirstUser/index.d.ts.map +1 -1
  243. package/dist/views/CreateFirstUser/index.js +9 -20
  244. package/dist/views/CreateFirstUser/index.js.map +1 -1
  245. package/dist/views/CreateFirstUser/index.scss +2 -12
  246. package/dist/views/Document/index.d.ts.map +1 -1
  247. package/dist/views/Document/index.js +2 -1
  248. package/dist/views/Document/index.js.map +1 -1
  249. package/dist/views/Edit/Default/Auth/APIKey.d.ts +1 -0
  250. package/dist/views/Edit/Default/Auth/APIKey.d.ts.map +1 -1
  251. package/dist/views/Edit/Default/Auth/APIKey.js +13 -6
  252. package/dist/views/Edit/Default/Auth/APIKey.js.map +1 -1
  253. package/dist/views/Edit/Default/Auth/index.js +2 -1
  254. package/dist/views/Edit/Default/Auth/index.js.map +1 -1
  255. package/dist/views/Edit/Default/{SetStepNav → SetDocumentStepNav}/index.d.ts +1 -1
  256. package/dist/views/Edit/Default/SetDocumentStepNav/index.d.ts.map +1 -0
  257. package/dist/views/Edit/Default/{SetStepNav → SetDocumentStepNav}/index.js +12 -5
  258. package/dist/views/Edit/Default/SetDocumentStepNav/index.js.map +1 -0
  259. package/dist/views/Edit/Default/index.d.ts.map +1 -1
  260. package/dist/views/Edit/Default/index.js +6 -5
  261. package/dist/views/Edit/Default/index.js.map +1 -1
  262. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts +3 -0
  263. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -0
  264. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +58 -0
  265. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -0
  266. package/dist/views/ForgotPassword/index.d.ts.map +1 -1
  267. package/dist/views/ForgotPassword/index.js +3 -39
  268. package/dist/views/ForgotPassword/index.js.map +1 -1
  269. package/dist/views/List/index.js +2 -2
  270. package/dist/views/List/index.js.map +1 -1
  271. package/dist/views/LivePreview/Preview/index.d.ts.map +1 -1
  272. package/dist/views/LivePreview/Preview/index.js +23 -0
  273. package/dist/views/LivePreview/Preview/index.js.map +1 -1
  274. package/dist/views/LivePreview/Toolbar/Controls/index.d.ts.map +1 -1
  275. package/dist/views/LivePreview/Toolbar/Controls/index.js +6 -4
  276. package/dist/views/LivePreview/Toolbar/Controls/index.js.map +1 -1
  277. package/dist/views/LivePreview/index.client.js +2 -2
  278. package/dist/views/LivePreview/index.client.js.map +1 -1
  279. package/dist/views/Login/LoginForm/index.d.ts.map +1 -1
  280. package/dist/views/Login/LoginForm/index.js +32 -2
  281. package/dist/views/Login/LoginForm/index.js.map +1 -1
  282. package/dist/views/Login/index.d.ts.map +1 -1
  283. package/dist/views/Login/index.js +14 -7
  284. package/dist/views/Login/index.js.map +1 -1
  285. package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
  286. package/dist/views/Logout/LogoutClient.js +1 -2
  287. package/dist/views/Logout/LogoutClient.js.map +1 -1
  288. package/dist/views/NotFound/index.d.ts.map +1 -1
  289. package/dist/views/NotFound/index.js +5 -3
  290. package/dist/views/NotFound/index.js.map +1 -1
  291. package/dist/views/ResetPassword/index.client.d.ts +7 -0
  292. package/dist/views/ResetPassword/index.client.d.ts.map +1 -0
  293. package/dist/views/ResetPassword/index.client.js +83 -0
  294. package/dist/views/ResetPassword/index.client.js.map +1 -0
  295. package/dist/views/ResetPassword/index.d.ts.map +1 -1
  296. package/dist/views/ResetPassword/index.js +6 -31
  297. package/dist/views/ResetPassword/index.js.map +1 -1
  298. package/dist/views/ResetPassword/index.scss +2 -12
  299. package/dist/views/Root/getViewFromConfig.d.ts +1 -1
  300. package/dist/views/Root/getViewFromConfig.d.ts.map +1 -1
  301. package/dist/views/Root/getViewFromConfig.js.map +1 -1
  302. package/dist/views/Root/index.js +1 -1
  303. package/dist/views/Root/index.js.map +1 -1
  304. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts +0 -2
  305. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts.map +1 -1
  306. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  307. package/dist/views/Version/Restore/index.js +11 -8
  308. package/dist/views/Version/Restore/index.js.map +1 -1
  309. package/dist/views/Version/Restore/index.scss +4 -2
  310. package/dist/views/Versions/index.js +2 -2
  311. package/dist/views/Versions/index.js.map +1 -1
  312. package/dist/withPayload.d.ts.map +1 -1
  313. package/dist/withPayload.js +2 -1
  314. package/dist/withPayload.js.map +1 -1
  315. package/package.json +34 -33
  316. package/dist/next-fileupload/fileFactory.d.ts.map +0 -1
  317. package/dist/next-fileupload/fileFactory.js.map +0 -1
  318. package/dist/next-fileupload/handlers.d.ts.map +0 -1
  319. package/dist/next-fileupload/handlers.js.map +0 -1
  320. package/dist/next-fileupload/index.d.ts.map +0 -1
  321. package/dist/next-fileupload/index.js.map +0 -1
  322. package/dist/next-fileupload/isEligibleRequest.d.ts.map +0 -1
  323. package/dist/next-fileupload/isEligibleRequest.js.map +0 -1
  324. package/dist/next-fileupload/processMultipart.d.ts +0 -8
  325. package/dist/next-fileupload/processMultipart.d.ts.map +0 -1
  326. package/dist/next-fileupload/processMultipart.js.map +0 -1
  327. package/dist/next-fileupload/processNested.d.ts.map +0 -1
  328. package/dist/next-fileupload/processNested.js.map +0 -1
  329. package/dist/next-fileupload/uploadTimer.d.ts.map +0 -1
  330. package/dist/next-fileupload/uploadTimer.js.map +0 -1
  331. package/dist/next-fileupload/utilities.d.ts.map +0 -1
  332. package/dist/next-fileupload/utilities.js.map +0 -1
  333. package/dist/next-stream-file/index.d.ts.map +0 -1
  334. package/dist/next-stream-file/index.js.map +0 -1
  335. package/dist/prod/payload/SuisseIntl-Bold.woff +0 -0
  336. package/dist/prod/payload/SuisseIntl-Bold.woff2 +0 -0
  337. package/dist/prod/payload/SuisseIntl-Medium.woff +0 -0
  338. package/dist/prod/payload/SuisseIntl-Medium.woff2 +0 -0
  339. package/dist/prod/payload/SuisseIntl-SemiBold.woff +0 -0
  340. package/dist/prod/payload/SuisseIntl-SemiBold.woff2 +0 -0
  341. package/dist/prod/payload/SuisseIntl.woff +0 -0
  342. package/dist/prod/payload/SuisseIntl.woff2 +0 -0
  343. package/dist/prod/payload/merriweather-v30-latin-900.woff +0 -0
  344. package/dist/prod/payload/merriweather-v30-latin-900.woff2 +0 -0
  345. package/dist/prod/payload/merriweather-v30-latin-900italic.woff +0 -0
  346. package/dist/prod/payload/merriweather-v30-latin-900italic.woff2 +0 -0
  347. package/dist/prod/payload/merriweather-v30-latin-italic.woff +0 -0
  348. package/dist/prod/payload/merriweather-v30-latin-italic.woff2 +0 -0
  349. package/dist/prod/payload/merriweather-v30-latin-regular.woff +0 -0
  350. package/dist/prod/payload/merriweather-v30-latin-regular.woff2 +0 -0
  351. package/dist/scss/fonts.scss +0 -75
  352. package/dist/utilities/initPage.d.ts +0 -12
  353. package/dist/utilities/initPage.d.ts.map +0 -1
  354. package/dist/utilities/initPage.js.map +0 -1
  355. package/dist/views/Edit/Default/SetStepNav/index.d.ts.map +0 -1
  356. package/dist/views/Edit/Default/SetStepNav/index.js.map +0 -1
  357. package/src/index.js +0 -1
  358. /package/dist/{next-fileupload → fetchAPI-multipart}/fileFactory.js +0 -0
  359. /package/dist/{next-fileupload → fetchAPI-multipart}/handlers.js +0 -0
  360. /package/dist/{next-fileupload → fetchAPI-multipart}/isEligibleRequest.d.ts +0 -0
  361. /package/dist/{next-fileupload → fetchAPI-multipart}/processNested.d.ts +0 -0
  362. /package/dist/{next-fileupload → fetchAPI-multipart}/uploadTimer.d.ts +0 -0
  363. /package/dist/{next-fileupload → fetchAPI-multipart}/uploadTimer.js +0 -0
  364. /package/dist/{next-stream-file → fetchAPI-stream-file}/index.d.ts +0 -0
  365. /package/dist/{next-stream-file → fetchAPI-stream-file}/index.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/utilities/addLocalesToRequest.ts"],"sourcesContent":["import type {\n PayloadRequest,\n PayloadRequestData,\n PayloadRequestWithData,\n SanitizedConfig,\n} from 'payload/types'\n\n/**\n * Mutates the Request to contain 'locale' and 'fallbackLocale' based on data or searchParams\n */\ntype Args = {\n request: PayloadRequest & PayloadRequestData\n}\nexport function addLocalesToRequestFromData({ request }: Args): PayloadRequestWithData {\n const {\n data,\n payload: { config },\n } = request\n\n if (data) {\n let localeOnReq = request.locale\n let fallbackLocaleOnReq = request.fallbackLocale\n\n if (!localeOnReq && data?.locale && typeof data.locale === 'string') {\n localeOnReq = data.locale\n }\n\n if (\n !fallbackLocaleOnReq &&\n data?.['fallback-locale'] &&\n typeof data?.['fallback-locale'] === 'string'\n ) {\n fallbackLocaleOnReq = data['fallback-locale']\n }\n\n const { fallbackLocale, locale } = sanitizeLocales({\n fallbackLocale: fallbackLocaleOnReq,\n locale: localeOnReq,\n localization: config.localization,\n })\n\n const mutableRequest = request\n if (locale) mutableRequest.locale = locale\n if (fallbackLocale) mutableRequest.fallbackLocale = fallbackLocale\n return mutableRequest\n }\n\n return request\n}\n\ntype SanitizeLocalesArgs = {\n fallbackLocale: string\n locale: string\n localization: SanitizedConfig['localization']\n}\ntype SanitizeLocalesReturn = {\n fallbackLocale?: string\n locale?: string\n}\nexport const sanitizeLocales = ({\n fallbackLocale,\n locale,\n localization,\n}: SanitizeLocalesArgs): SanitizeLocalesReturn => {\n if (['none', 'null'].includes(fallbackLocale)) {\n fallbackLocale = 'null'\n } else if (localization && !localization.localeCodes.includes(fallbackLocale)) {\n fallbackLocale = localization.defaultLocale\n }\n\n if (locale === '*') {\n locale = 'all'\n } else if (localization && !localization.localeCodes.includes(locale)) {\n locale = localization.defaultLocale\n }\n\n return {\n fallbackLocale,\n locale,\n }\n}\n"],"names":["addLocalesToRequestFromData","request","data","payload","config","localeOnReq","locale","fallbackLocaleOnReq","fallbackLocale","sanitizeLocales","localization","mutableRequest","includes","localeCodes","defaultLocale"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAaA,OAAO,SAASA,4BAA4B,EAAEC,OAAO,EAAQ;IAC3D,MAAM,EACJC,IAAI,EACJC,SAAS,EAAEC,MAAM,EAAE,EACpB,GAAGH;IAEJ,IAAIC,MAAM;QACR,IAAIG,cAAcJ,QAAQK,MAAM;QAChC,IAAIC,sBAAsBN,QAAQO,cAAc;QAEhD,IAAI,CAACH,eAAeH,MAAMI,UAAU,OAAOJ,KAAKI,MAAM,KAAK,UAAU;YACnED,cAAcH,KAAKI,MAAM;QAC3B;QAEA,IACE,CAACC,uBACDL,MAAM,CAAC,kBAAkB,IACzB,OAAOA,MAAM,CAAC,kBAAkB,KAAK,UACrC;YACAK,sBAAsBL,IAAI,CAAC,kBAAkB;QAC/C;QAEA,MAAM,EAAEM,cAAc,EAAEF,MAAM,EAAE,GAAGG,gBAAgB;YACjDD,gBAAgBD;YAChBD,QAAQD;YACRK,cAAcN,OAAOM,YAAY;QACnC;QAEA,MAAMC,iBAAiBV;QACvB,IAAIK,QAAQK,eAAeL,MAAM,GAAGA;QACpC,IAAIE,gBAAgBG,eAAeH,cAAc,GAAGA;QACpD,OAAOG;IACT;IAEA,OAAOV;AACT;AAWA,OAAO,MAAMQ,kBAAkB,CAAC,EAC9BD,cAAc,EACdF,MAAM,EACNI,YAAY,EACQ;IACpB,IAAI;QAAC;QAAQ;KAAO,CAACE,QAAQ,CAACJ,iBAAiB;QAC7CA,iBAAiB;IACnB,OAAO,IAAIE,gBAAgB,CAACA,aAAaG,WAAW,CAACD,QAAQ,CAACJ,iBAAiB;QAC7EA,iBAAiBE,aAAaI,aAAa;IAC7C;IAEA,IAAIR,WAAW,KAAK;QAClBA,SAAS;IACX,OAAO,IAAII,gBAAgB,CAACA,aAAaG,WAAW,CAACD,QAAQ,CAACN,SAAS;QACrEA,SAASI,aAAaI,aAAa;IACrC;IAEA,OAAO;QACLN;QACAF;IACF;AACF,EAAC"}
@@ -1,4 +1,4 @@
1
- import type { PayloadRequest } from 'payload/types';
1
+ import type { PayloadRequestWithData } from 'payload/types';
2
2
  import type { FieldSchemaMap } from './types.js';
3
- export declare const buildFieldSchemaMap: ({ i18n, payload: { config }, }: PayloadRequest) => FieldSchemaMap;
3
+ export declare const buildFieldSchemaMap: ({ i18n, payload: { config }, }: PayloadRequestWithData) => FieldSchemaMap;
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utilities/buildFieldSchemaMap/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAEnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAIhD,eAAO,MAAM,mBAAmB,mCAG7B,cAAc,mBA4BhB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utilities/buildFieldSchemaMap/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAE3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAIhD,eAAO,MAAM,mBAAmB,mCAG7B,sBAAsB,mBA4BxB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utilities/buildFieldSchemaMap/index.ts"],"sourcesContent":["import type { PayloadRequest } from 'payload/types'\n\nimport type { FieldSchemaMap } from './types.js'\n\nimport { traverseFields } from './traverseFields.js'\n\nexport const buildFieldSchemaMap = ({\n i18n,\n payload: { config },\n}: PayloadRequest): FieldSchemaMap => {\n const result: FieldSchemaMap = new Map()\n\n const validRelationships = config.collections.map((c) => c.slug) || []\n\n config.collections.forEach((collection) => {\n traverseFields({\n config,\n fields: collection.fields,\n i18n,\n schemaMap: result,\n schemaPath: collection.slug,\n validRelationships,\n })\n })\n\n config.globals.forEach((global) => {\n traverseFields({\n config,\n fields: global.fields,\n i18n,\n schemaMap: result,\n schemaPath: global.slug,\n validRelationships,\n })\n })\n\n return result\n}\n"],"names":["traverseFields","buildFieldSchemaMap","i18n","payload","config","result","Map","validRelationships","collections","map","c","slug","forEach","collection","fields","schemaMap","schemaPath","globals","global"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAIA,SAASA,cAAc,QAAQ,sBAAqB;AAEpD,OAAO,MAAMC,sBAAsB,CAAC,EAClCC,IAAI,EACJC,SAAS,EAAEC,MAAM,EAAE,EACJ;IACf,MAAMC,SAAyB,IAAIC;IAEnC,MAAMC,qBAAqBH,OAAOI,WAAW,CAACC,GAAG,CAAC,CAACC,IAAMA,EAAEC,IAAI,KAAK,EAAE;IAEtEP,OAAOI,WAAW,CAACI,OAAO,CAAC,CAACC;QAC1Bb,eAAe;YACbI;YACAU,QAAQD,WAAWC,MAAM;YACzBZ;YACAa,WAAWV;YACXW,YAAYH,WAAWF,IAAI;YAC3BJ;QACF;IACF;IAEAH,OAAOa,OAAO,CAACL,OAAO,CAAC,CAACM;QACtBlB,eAAe;YACbI;YACAU,QAAQI,OAAOJ,MAAM;YACrBZ;YACAa,WAAWV;YACXW,YAAYE,OAAOP,IAAI;YACvBJ;QACF;IACF;IAEA,OAAOF;AACT,EAAC"}
1
+ {"version":3,"sources":["../../../src/utilities/buildFieldSchemaMap/index.ts"],"sourcesContent":["import type { PayloadRequestWithData } from 'payload/types'\n\nimport type { FieldSchemaMap } from './types.js'\n\nimport { traverseFields } from './traverseFields.js'\n\nexport const buildFieldSchemaMap = ({\n i18n,\n payload: { config },\n}: PayloadRequestWithData): FieldSchemaMap => {\n const result: FieldSchemaMap = new Map()\n\n const validRelationships = config.collections.map((c) => c.slug) || []\n\n config.collections.forEach((collection) => {\n traverseFields({\n config,\n fields: collection.fields,\n i18n,\n schemaMap: result,\n schemaPath: collection.slug,\n validRelationships,\n })\n })\n\n config.globals.forEach((global) => {\n traverseFields({\n config,\n fields: global.fields,\n i18n,\n schemaMap: result,\n schemaPath: global.slug,\n validRelationships,\n })\n })\n\n return result\n}\n"],"names":["traverseFields","buildFieldSchemaMap","i18n","payload","config","result","Map","validRelationships","collections","map","c","slug","forEach","collection","fields","schemaMap","schemaPath","globals","global"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAIA,SAASA,cAAc,QAAQ,sBAAqB;AAEpD,OAAO,MAAMC,sBAAsB,CAAC,EAClCC,IAAI,EACJC,SAAS,EAAEC,MAAM,EAAE,EACI;IACvB,MAAMC,SAAyB,IAAIC;IAEnC,MAAMC,qBAAqBH,OAAOI,WAAW,CAACC,GAAG,CAAC,CAACC,IAAMA,EAAEC,IAAI,KAAK,EAAE;IAEtEP,OAAOI,WAAW,CAACI,OAAO,CAAC,CAACC;QAC1Bb,eAAe;YACbI;YACAU,QAAQD,WAAWC,MAAM;YACzBZ;YACAa,WAAWV;YACXW,YAAYH,WAAWF,IAAI;YAC3BJ;QACF;IACF;IAEAH,OAAOa,OAAO,CAACL,OAAO,CAAC,CAACM;QACtBlB,eAAe;YACbI;YACAU,QAAQI,OAAOJ,MAAM;YACrBZ;YACAa,WAAWV;YACXW,YAAYE,OAAOP,IAAI;YACvBJ;QACF;IACF;IAEA,OAAOF;AACT,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../../../src/utilities/buildFieldSchemaMap/traverseFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAI3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAEhD,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,eAAe,CAAA;IACvB,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,IAAI,EAAE,IAAI,CAAA;IACV,SAAS,EAAE,cAAc,CAAA;IACzB,UAAU,EAAE,MAAM,CAAA;IAClB,kBAAkB,EAAE,MAAM,EAAE,CAAA;CAC7B,CAAA;AAED,eAAO,MAAM,cAAc,yEAOxB,IAAI,SA8EN,CAAA"}
1
+ {"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../../../src/utilities/buildFieldSchemaMap/traverseFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAI3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAEhD,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,eAAe,CAAA;IACvB,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,IAAI,EAAE,IAAI,CAAA;IACV,SAAS,EAAE,cAAc,CAAA;IACzB,UAAU,EAAE,MAAM,CAAA;IAClB,kBAAkB,EAAE,MAAM,EAAE,CAAA;CAC7B,CAAA;AAED,eAAO,MAAM,cAAc,yEAOxB,IAAI,SAkFN,CAAA"}
@@ -40,6 +40,9 @@ export const traverseFields = ({ config, fields, i18n, schemaMap, schemaPath, va
40
40
  });
41
41
  break;
42
42
  case 'richText':
43
+ if (typeof field.editor === 'function') {
44
+ throw new Error('Attempted to access unsanitized rich text editor.');
45
+ }
43
46
  if (typeof field.editor.generateSchemaMap === 'function') {
44
47
  field.editor.generateSchemaMap({
45
48
  config,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utilities/buildFieldSchemaMap/traverseFields.ts"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { Field, SanitizedConfig } from 'payload/types'\n\nimport { tabHasName } from 'payload/types'\n\nimport type { FieldSchemaMap } from './types.js'\n\ntype Args = {\n config: SanitizedConfig\n fields: Field[]\n i18n: I18n\n schemaMap: FieldSchemaMap\n schemaPath: string\n validRelationships: string[]\n}\n\nexport const traverseFields = ({\n config,\n fields,\n i18n,\n schemaMap,\n schemaPath,\n validRelationships,\n}: Args) => {\n fields.map((field) => {\n switch (field.type) {\n case 'group':\n case 'array':\n schemaMap.set(`${schemaPath}.${field.name}`, field.fields)\n\n traverseFields({\n config,\n fields: field.fields,\n i18n,\n schemaMap,\n schemaPath: `${schemaPath}.${field.name}`,\n validRelationships,\n })\n break\n\n case 'collapsible':\n case 'row':\n traverseFields({\n config,\n fields: field.fields,\n i18n,\n schemaMap,\n schemaPath,\n validRelationships,\n })\n break\n\n case 'blocks':\n field.blocks.map((block) => {\n const blockSchemaPath = `${schemaPath}.${field.name}.${block.slug}`\n\n schemaMap.set(blockSchemaPath, block.fields)\n\n traverseFields({\n config,\n fields: block.fields,\n i18n,\n schemaMap,\n schemaPath: blockSchemaPath,\n validRelationships,\n })\n })\n break\n\n case 'richText':\n if (typeof field.editor.generateSchemaMap === 'function') {\n field.editor.generateSchemaMap({\n config,\n i18n,\n schemaMap,\n schemaPath: `${schemaPath}.${field.name}`,\n })\n }\n\n break\n\n case 'tabs':\n field.tabs.map((tab) => {\n const tabSchemaPath = tabHasName(tab) ? `${schemaPath}.${tab.name}` : schemaPath\n\n if (tabHasName(tab)) {\n schemaMap.set(tabSchemaPath, tab.fields)\n }\n\n traverseFields({\n config,\n fields: tab.fields,\n i18n,\n schemaMap,\n schemaPath: tabSchemaPath,\n validRelationships,\n })\n })\n break\n }\n })\n}\n"],"names":["tabHasName","traverseFields","config","fields","i18n","schemaMap","schemaPath","validRelationships","map","field","type","set","name","blocks","block","blockSchemaPath","slug","editor","generateSchemaMap","tabs","tab","tabSchemaPath"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAGA,SAASA,UAAU,QAAQ,gBAAe;AAa1C,OAAO,MAAMC,iBAAiB,CAAC,EAC7BC,MAAM,EACNC,MAAM,EACNC,IAAI,EACJC,SAAS,EACTC,UAAU,EACVC,kBAAkB,EACb;IACLJ,OAAOK,GAAG,CAAC,CAACC;QACV,OAAQA,MAAMC,IAAI;YAChB,KAAK;YACL,KAAK;gBACHL,UAAUM,GAAG,CAAC,CAAC,EAAEL,WAAW,CAAC,EAAEG,MAAMG,IAAI,CAAC,CAAC,EAAEH,MAAMN,MAAM;gBAEzDF,eAAe;oBACbC;oBACAC,QAAQM,MAAMN,MAAM;oBACpBC;oBACAC;oBACAC,YAAY,CAAC,EAAEA,WAAW,CAAC,EAAEG,MAAMG,IAAI,CAAC,CAAC;oBACzCL;gBACF;gBACA;YAEF,KAAK;YACL,KAAK;gBACHN,eAAe;oBACbC;oBACAC,QAAQM,MAAMN,MAAM;oBACpBC;oBACAC;oBACAC;oBACAC;gBACF;gBACA;YAEF,KAAK;gBACHE,MAAMI,MAAM,CAACL,GAAG,CAAC,CAACM;oBAChB,MAAMC,kBAAkB,CAAC,EAAET,WAAW,CAAC,EAAEG,MAAMG,IAAI,CAAC,CAAC,EAAEE,MAAME,IAAI,CAAC,CAAC;oBAEnEX,UAAUM,GAAG,CAACI,iBAAiBD,MAAMX,MAAM;oBAE3CF,eAAe;wBACbC;wBACAC,QAAQW,MAAMX,MAAM;wBACpBC;wBACAC;wBACAC,YAAYS;wBACZR;oBACF;gBACF;gBACA;YAEF,KAAK;gBACH,IAAI,OAAOE,MAAMQ,MAAM,CAACC,iBAAiB,KAAK,YAAY;oBACxDT,MAAMQ,MAAM,CAACC,iBAAiB,CAAC;wBAC7BhB;wBACAE;wBACAC;wBACAC,YAAY,CAAC,EAAEA,WAAW,CAAC,EAAEG,MAAMG,IAAI,CAAC,CAAC;oBAC3C;gBACF;gBAEA;YAEF,KAAK;gBACHH,MAAMU,IAAI,CAACX,GAAG,CAAC,CAACY;oBACd,MAAMC,gBAAgBrB,WAAWoB,OAAO,CAAC,EAAEd,WAAW,CAAC,EAAEc,IAAIR,IAAI,CAAC,CAAC,GAAGN;oBAEtE,IAAIN,WAAWoB,MAAM;wBACnBf,UAAUM,GAAG,CAACU,eAAeD,IAAIjB,MAAM;oBACzC;oBAEAF,eAAe;wBACbC;wBACAC,QAAQiB,IAAIjB,MAAM;wBAClBC;wBACAC;wBACAC,YAAYe;wBACZd;oBACF;gBACF;gBACA;QACJ;IACF;AACF,EAAC"}
1
+ {"version":3,"sources":["../../../src/utilities/buildFieldSchemaMap/traverseFields.ts"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { Field, SanitizedConfig } from 'payload/types'\n\nimport { tabHasName } from 'payload/types'\n\nimport type { FieldSchemaMap } from './types.js'\n\ntype Args = {\n config: SanitizedConfig\n fields: Field[]\n i18n: I18n\n schemaMap: FieldSchemaMap\n schemaPath: string\n validRelationships: string[]\n}\n\nexport const traverseFields = ({\n config,\n fields,\n i18n,\n schemaMap,\n schemaPath,\n validRelationships,\n}: Args) => {\n fields.map((field) => {\n switch (field.type) {\n case 'group':\n case 'array':\n schemaMap.set(`${schemaPath}.${field.name}`, field.fields)\n\n traverseFields({\n config,\n fields: field.fields,\n i18n,\n schemaMap,\n schemaPath: `${schemaPath}.${field.name}`,\n validRelationships,\n })\n break\n\n case 'collapsible':\n case 'row':\n traverseFields({\n config,\n fields: field.fields,\n i18n,\n schemaMap,\n schemaPath,\n validRelationships,\n })\n break\n\n case 'blocks':\n field.blocks.map((block) => {\n const blockSchemaPath = `${schemaPath}.${field.name}.${block.slug}`\n\n schemaMap.set(blockSchemaPath, block.fields)\n\n traverseFields({\n config,\n fields: block.fields,\n i18n,\n schemaMap,\n schemaPath: blockSchemaPath,\n validRelationships,\n })\n })\n break\n\n case 'richText':\n if (typeof field.editor === 'function') {\n throw new Error('Attempted to access unsanitized rich text editor.')\n }\n\n if (typeof field.editor.generateSchemaMap === 'function') {\n field.editor.generateSchemaMap({\n config,\n i18n,\n schemaMap,\n schemaPath: `${schemaPath}.${field.name}`,\n })\n }\n\n break\n\n case 'tabs':\n field.tabs.map((tab) => {\n const tabSchemaPath = tabHasName(tab) ? `${schemaPath}.${tab.name}` : schemaPath\n\n if (tabHasName(tab)) {\n schemaMap.set(tabSchemaPath, tab.fields)\n }\n\n traverseFields({\n config,\n fields: tab.fields,\n i18n,\n schemaMap,\n schemaPath: tabSchemaPath,\n validRelationships,\n })\n })\n break\n }\n })\n}\n"],"names":["tabHasName","traverseFields","config","fields","i18n","schemaMap","schemaPath","validRelationships","map","field","type","set","name","blocks","block","blockSchemaPath","slug","editor","Error","generateSchemaMap","tabs","tab","tabSchemaPath"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAGA,SAASA,UAAU,QAAQ,gBAAe;AAa1C,OAAO,MAAMC,iBAAiB,CAAC,EAC7BC,MAAM,EACNC,MAAM,EACNC,IAAI,EACJC,SAAS,EACTC,UAAU,EACVC,kBAAkB,EACb;IACLJ,OAAOK,GAAG,CAAC,CAACC;QACV,OAAQA,MAAMC,IAAI;YAChB,KAAK;YACL,KAAK;gBACHL,UAAUM,GAAG,CAAC,CAAC,EAAEL,WAAW,CAAC,EAAEG,MAAMG,IAAI,CAAC,CAAC,EAAEH,MAAMN,MAAM;gBAEzDF,eAAe;oBACbC;oBACAC,QAAQM,MAAMN,MAAM;oBACpBC;oBACAC;oBACAC,YAAY,CAAC,EAAEA,WAAW,CAAC,EAAEG,MAAMG,IAAI,CAAC,CAAC;oBACzCL;gBACF;gBACA;YAEF,KAAK;YACL,KAAK;gBACHN,eAAe;oBACbC;oBACAC,QAAQM,MAAMN,MAAM;oBACpBC;oBACAC;oBACAC;oBACAC;gBACF;gBACA;YAEF,KAAK;gBACHE,MAAMI,MAAM,CAACL,GAAG,CAAC,CAACM;oBAChB,MAAMC,kBAAkB,CAAC,EAAET,WAAW,CAAC,EAAEG,MAAMG,IAAI,CAAC,CAAC,EAAEE,MAAME,IAAI,CAAC,CAAC;oBAEnEX,UAAUM,GAAG,CAACI,iBAAiBD,MAAMX,MAAM;oBAE3CF,eAAe;wBACbC;wBACAC,QAAQW,MAAMX,MAAM;wBACpBC;wBACAC;wBACAC,YAAYS;wBACZR;oBACF;gBACF;gBACA;YAEF,KAAK;gBACH,IAAI,OAAOE,MAAMQ,MAAM,KAAK,YAAY;oBACtC,MAAM,IAAIC,MAAM;gBAClB;gBAEA,IAAI,OAAOT,MAAMQ,MAAM,CAACE,iBAAiB,KAAK,YAAY;oBACxDV,MAAMQ,MAAM,CAACE,iBAAiB,CAAC;wBAC7BjB;wBACAE;wBACAC;wBACAC,YAAY,CAAC,EAAEA,WAAW,CAAC,EAAEG,MAAMG,IAAI,CAAC,CAAC;oBAC3C;gBACF;gBAEA;YAEF,KAAK;gBACHH,MAAMW,IAAI,CAACZ,GAAG,CAAC,CAACa;oBACd,MAAMC,gBAAgBtB,WAAWqB,OAAO,CAAC,EAAEf,WAAW,CAAC,EAAEe,IAAIT,IAAI,CAAC,CAAC,GAAGN;oBAEtE,IAAIN,WAAWqB,MAAM;wBACnBhB,UAAUM,GAAG,CAACW,eAAeD,IAAIlB,MAAM;oBACzC;oBAEAF,eAAe;wBACbC;wBACAC,QAAQkB,IAAIlB,MAAM;wBAClBC;wBACAC;wBACAC,YAAYgB;wBACZf;oBACF;gBACF;gBACA;QACJ;IACF;AACF,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"createPayloadRequest.d.ts","sourceRoot":"","sources":["../../src/utilities/createPayloadRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,cAAc,EACd,eAAe,EAChB,MAAM,eAAe,CAAA;AActB,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAA;IAClD,MAAM,CAAC,EAAE;QACP,UAAU,EAAE,MAAM,CAAA;KACnB,CAAA;IACD,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,oBAAoB,gDAI9B,IAAI,KAAG,QAAQ,cAAc,CA8F/B,CAAA"}
1
+ {"version":3,"file":"createPayloadRequest.d.ts","sourceRoot":"","sources":["../../src/utilities/createPayloadRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkC,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAapG,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAA;IAClD,MAAM,CAAC,EAAE;QACP,UAAU,EAAE,MAAM,CAAA;KACnB,CAAA;IACD,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,oBAAoB,gDAI9B,IAAI,KAAG,QAAQ,cAAc,CA+E/B,CAAA"}
@@ -4,39 +4,18 @@ import { parseCookies } from 'payload/auth';
4
4
  import { getDataLoader } from 'payload/utilities';
5
5
  import qs from 'qs';
6
6
  import { URL } from 'url';
7
- import { getDataAndFile } from './getDataAndFile.js';
7
+ import { sanitizeLocales } from './addLocalesToRequest.js';
8
8
  import { getPayloadHMR } from './getPayloadHMR.js';
9
9
  import { getRequestLanguage } from './getRequestLanguage.js';
10
- import { getRequestLocales } from './getRequestLocales.js';
11
10
  export const createPayloadRequest = async ({ config: configPromise, params, request })=>{
12
11
  const cookies = parseCookies(request.headers);
13
12
  const payload = await getPayloadHMR({
14
13
  config: configPromise
15
14
  });
16
- const { collections, config } = payload;
17
- let collection = undefined;
18
- if (params?.collection && collections?.[params.collection]) {
19
- collection = collections[params.collection];
20
- }
15
+ const { config } = payload;
21
16
  const urlProperties = new URL(request.url);
22
17
  const { pathname, searchParams } = urlProperties;
23
18
  const isGraphQL = !config.graphQL.disable && pathname === `${config.routes.api}${config.routes.graphQL}`;
24
- const { data, file } = await getDataAndFile({
25
- collection,
26
- config,
27
- request
28
- });
29
- let requestFallbackLocale;
30
- let requestLocale;
31
- if (config.localization) {
32
- const locales = getRequestLocales({
33
- data,
34
- localization: config.localization,
35
- searchParams
36
- });
37
- requestLocale = locales.locale;
38
- requestFallbackLocale = locales.fallbackLocale;
39
- }
40
19
  const language = getRequestLanguage({
41
20
  config,
42
21
  cookies,
@@ -47,16 +26,25 @@ export const createPayloadRequest = async ({ config: configPromise, params, requ
47
26
  context: 'api',
48
27
  language
49
28
  });
29
+ let locale;
30
+ let fallbackLocale;
31
+ if (config.localization) {
32
+ const locales = sanitizeLocales({
33
+ fallbackLocale: searchParams.get('fallback-locale'),
34
+ locale: searchParams.get('locale'),
35
+ localization: payload.config.localization
36
+ });
37
+ locale = locales.locale;
38
+ fallbackLocale = locales.fallbackLocale;
39
+ }
50
40
  const customRequest = {
51
41
  context: {},
52
- data,
53
- fallbackLocale: requestFallbackLocale,
54
- file,
42
+ fallbackLocale,
55
43
  hash: urlProperties.hash,
56
44
  host: urlProperties.host,
57
45
  href: urlProperties.href,
58
46
  i18n,
59
- locale: requestLocale,
47
+ locale,
60
48
  origin: urlProperties.origin,
61
49
  pathname: urlProperties.pathname,
62
50
  payload,
@@ -78,7 +66,6 @@ export const createPayloadRequest = async ({ config: configPromise, params, requ
78
66
  user: null
79
67
  };
80
68
  const req = Object.assign(request, customRequest);
81
- if (data) req.json = ()=>Promise.resolve(data);
82
69
  req.payloadDataLoader = getDataLoader(req);
83
70
  req.user = await executeAuthStrategies({
84
71
  cookies,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/createPayloadRequest.ts"],"sourcesContent":["import type {\n Collection,\n CustomPayloadRequest,\n PayloadRequest,\n SanitizedConfig,\n} from 'payload/types'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { executeAuthStrategies } from 'payload/auth'\nimport { parseCookies } from 'payload/auth'\nimport { getDataLoader } from 'payload/utilities'\nimport qs from 'qs'\nimport { URL } from 'url'\n\nimport { getDataAndFile } from './getDataAndFile.js'\nimport { getPayloadHMR } from './getPayloadHMR.js'\nimport { getRequestLanguage } from './getRequestLanguage.js'\nimport { getRequestLocales } from './getRequestLocales.js'\n\ntype Args = {\n config: Promise<SanitizedConfig> | SanitizedConfig\n params?: {\n collection: string\n }\n request: Request\n}\n\nexport const createPayloadRequest = async ({\n config: configPromise,\n params,\n request,\n}: Args): Promise<PayloadRequest> => {\n const cookies = parseCookies(request.headers)\n const payload = await getPayloadHMR({ config: configPromise })\n\n const { collections, config } = payload\n\n let collection: Collection = undefined\n if (params?.collection && collections?.[params.collection]) {\n collection = collections[params.collection]\n }\n\n const urlProperties = new URL(request.url)\n const { pathname, searchParams } = urlProperties\n\n const isGraphQL =\n !config.graphQL.disable && pathname === `${config.routes.api}${config.routes.graphQL}`\n\n const { data, file } = await getDataAndFile({\n collection,\n config,\n request,\n })\n\n let requestFallbackLocale\n let requestLocale\n\n if (config.localization) {\n const locales = getRequestLocales({\n data,\n localization: config.localization,\n searchParams,\n })\n requestLocale = locales.locale\n requestFallbackLocale = locales.fallbackLocale\n }\n\n const language = getRequestLanguage({\n config,\n cookies,\n headers: request.headers,\n })\n\n const i18n = await initI18n({\n config: config.i18n,\n context: 'api',\n language,\n })\n\n const customRequest: CustomPayloadRequest = {\n context: {},\n data,\n fallbackLocale: requestFallbackLocale,\n file,\n hash: urlProperties.hash,\n host: urlProperties.host,\n href: urlProperties.href,\n i18n,\n locale: requestLocale,\n origin: urlProperties.origin,\n pathname: urlProperties.pathname,\n payload,\n payloadAPI: isGraphQL ? 'GraphQL' : 'REST',\n payloadDataLoader: undefined,\n payloadUploadSizes: {},\n port: urlProperties.port,\n protocol: urlProperties.protocol,\n query: urlProperties.search\n ? qs.parse(urlProperties.search, {\n arrayLimit: 1000,\n depth: 10,\n ignoreQueryPrefix: true,\n })\n : {},\n routeParams: params || {},\n search: urlProperties.search,\n searchParams: urlProperties.searchParams,\n t: i18n.t,\n transactionID: undefined,\n user: null,\n }\n\n const req: PayloadRequest = Object.assign(request, customRequest)\n\n if (data) req.json = () => Promise.resolve(data)\n req.payloadDataLoader = getDataLoader(req)\n\n req.user = await executeAuthStrategies({\n cookies,\n headers: req.headers,\n isGraphQL,\n payload,\n })\n\n return req\n}\n"],"names":["initI18n","executeAuthStrategies","parseCookies","getDataLoader","qs","URL","getDataAndFile","getPayloadHMR","getRequestLanguage","getRequestLocales","createPayloadRequest","config","configPromise","params","request","cookies","headers","payload","collections","collection","undefined","urlProperties","url","pathname","searchParams","isGraphQL","graphQL","disable","routes","api","data","file","requestFallbackLocale","requestLocale","localization","locales","locale","fallbackLocale","language","i18n","context","customRequest","hash","host","href","origin","payloadAPI","payloadDataLoader","payloadUploadSizes","port","protocol","query","search","parse","arrayLimit","depth","ignoreQueryPrefix","routeParams","t","transactionID","user","req","Object","assign","json","Promise","resolve"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAOA,SAASA,QAAQ,QAAQ,2BAA0B;AACnD,SAASC,qBAAqB,QAAQ,eAAc;AACpD,SAASC,YAAY,QAAQ,eAAc;AAC3C,SAASC,aAAa,QAAQ,oBAAmB;AACjD,OAAOC,QAAQ,KAAI;AACnB,SAASC,GAAG,QAAQ,MAAK;AAEzB,SAASC,cAAc,QAAQ,sBAAqB;AACpD,SAASC,aAAa,QAAQ,qBAAoB;AAClD,SAASC,kBAAkB,QAAQ,0BAAyB;AAC5D,SAASC,iBAAiB,QAAQ,yBAAwB;AAU1D,OAAO,MAAMC,uBAAuB,OAAO,EACzCC,QAAQC,aAAa,EACrBC,MAAM,EACNC,OAAO,EACF;IACL,MAAMC,UAAUb,aAAaY,QAAQE,OAAO;IAC5C,MAAMC,UAAU,MAAMV,cAAc;QAAEI,QAAQC;IAAc;IAE5D,MAAM,EAAEM,WAAW,EAAEP,MAAM,EAAE,GAAGM;IAEhC,IAAIE,aAAyBC;IAC7B,IAAIP,QAAQM,cAAcD,aAAa,CAACL,OAAOM,UAAU,CAAC,EAAE;QAC1DA,aAAaD,WAAW,CAACL,OAAOM,UAAU,CAAC;IAC7C;IAEA,MAAME,gBAAgB,IAAIhB,IAAIS,QAAQQ,GAAG;IACzC,MAAM,EAAEC,QAAQ,EAAEC,YAAY,EAAE,GAAGH;IAEnC,MAAMI,YACJ,CAACd,OAAOe,OAAO,CAACC,OAAO,IAAIJ,aAAa,CAAC,EAAEZ,OAAOiB,MAAM,CAACC,GAAG,CAAC,EAAElB,OAAOiB,MAAM,CAACF,OAAO,CAAC,CAAC;IAExF,MAAM,EAAEI,IAAI,EAAEC,IAAI,EAAE,GAAG,MAAMzB,eAAe;QAC1Ca;QACAR;QACAG;IACF;IAEA,IAAIkB;IACJ,IAAIC;IAEJ,IAAItB,OAAOuB,YAAY,EAAE;QACvB,MAAMC,UAAU1B,kBAAkB;YAChCqB;YACAI,cAAcvB,OAAOuB,YAAY;YACjCV;QACF;QACAS,gBAAgBE,QAAQC,MAAM;QAC9BJ,wBAAwBG,QAAQE,cAAc;IAChD;IAEA,MAAMC,WAAW9B,mBAAmB;QAClCG;QACAI;QACAC,SAASF,QAAQE,OAAO;IAC1B;IAEA,MAAMuB,OAAO,MAAMvC,SAAS;QAC1BW,QAAQA,OAAO4B,IAAI;QACnBC,SAAS;QACTF;IACF;IAEA,MAAMG,gBAAsC;QAC1CD,SAAS,CAAC;QACVV;QACAO,gBAAgBL;QAChBD;QACAW,MAAMrB,cAAcqB,IAAI;QACxBC,MAAMtB,cAAcsB,IAAI;QACxBC,MAAMvB,cAAcuB,IAAI;QACxBL;QACAH,QAAQH;QACRY,QAAQxB,cAAcwB,MAAM;QAC5BtB,UAAUF,cAAcE,QAAQ;QAChCN;QACA6B,YAAYrB,YAAY,YAAY;QACpCsB,mBAAmB3B;QACnB4B,oBAAoB,CAAC;QACrBC,MAAM5B,cAAc4B,IAAI;QACxBC,UAAU7B,cAAc6B,QAAQ;QAChCC,OAAO9B,cAAc+B,MAAM,GACvBhD,GAAGiD,KAAK,CAAChC,cAAc+B,MAAM,EAAE;YAC7BE,YAAY;YACZC,OAAO;YACPC,mBAAmB;QACrB,KACA,CAAC;QACLC,aAAa5C,UAAU,CAAC;QACxBuC,QAAQ/B,cAAc+B,MAAM;QAC5B5B,cAAcH,cAAcG,YAAY;QACxCkC,GAAGnB,KAAKmB,CAAC;QACTC,eAAevC;QACfwC,MAAM;IACR;IAEA,MAAMC,MAAsBC,OAAOC,MAAM,CAACjD,SAAS2B;IAEnD,IAAIX,MAAM+B,IAAIG,IAAI,GAAG,IAAMC,QAAQC,OAAO,CAACpC;IAC3C+B,IAAId,iBAAiB,GAAG5C,cAAc0D;IAEtCA,IAAID,IAAI,GAAG,MAAM3D,sBAAsB;QACrCc;QACAC,SAAS6C,IAAI7C,OAAO;QACpBS;QACAR;IACF;IAEA,OAAO4C;AACT,EAAC"}
1
+ {"version":3,"sources":["../../src/utilities/createPayloadRequest.ts"],"sourcesContent":["import type { CustomPayloadRequestProperties, PayloadRequest, SanitizedConfig } from 'payload/types'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { executeAuthStrategies } from 'payload/auth'\nimport { parseCookies } from 'payload/auth'\nimport { getDataLoader } from 'payload/utilities'\nimport qs from 'qs'\nimport { URL } from 'url'\n\nimport { sanitizeLocales } from './addLocalesToRequest.js'\nimport { getPayloadHMR } from './getPayloadHMR.js'\nimport { getRequestLanguage } from './getRequestLanguage.js'\n\ntype Args = {\n config: Promise<SanitizedConfig> | SanitizedConfig\n params?: {\n collection: string\n }\n request: Request\n}\n\nexport const createPayloadRequest = async ({\n config: configPromise,\n params,\n request,\n}: Args): Promise<PayloadRequest> => {\n const cookies = parseCookies(request.headers)\n const payload = await getPayloadHMR({ config: configPromise })\n\n const { config } = payload\n\n const urlProperties = new URL(request.url)\n const { pathname, searchParams } = urlProperties\n\n const isGraphQL =\n !config.graphQL.disable && pathname === `${config.routes.api}${config.routes.graphQL}`\n\n const language = getRequestLanguage({\n config,\n cookies,\n headers: request.headers,\n })\n\n const i18n = await initI18n({\n config: config.i18n,\n context: 'api',\n language,\n })\n\n let locale\n let fallbackLocale\n if (config.localization) {\n const locales = sanitizeLocales({\n fallbackLocale: searchParams.get('fallback-locale'),\n locale: searchParams.get('locale'),\n localization: payload.config.localization,\n })\n locale = locales.locale\n fallbackLocale = locales.fallbackLocale\n }\n\n const customRequest: CustomPayloadRequestProperties = {\n context: {},\n fallbackLocale,\n hash: urlProperties.hash,\n host: urlProperties.host,\n href: urlProperties.href,\n i18n,\n locale,\n origin: urlProperties.origin,\n pathname: urlProperties.pathname,\n payload,\n payloadAPI: isGraphQL ? 'GraphQL' : 'REST',\n payloadDataLoader: undefined,\n payloadUploadSizes: {},\n port: urlProperties.port,\n protocol: urlProperties.protocol,\n query: urlProperties.search\n ? qs.parse(urlProperties.search, {\n arrayLimit: 1000,\n depth: 10,\n ignoreQueryPrefix: true,\n })\n : {},\n routeParams: params || {},\n search: urlProperties.search,\n searchParams: urlProperties.searchParams,\n t: i18n.t,\n transactionID: undefined,\n user: null,\n }\n\n const req: PayloadRequest = Object.assign(request, customRequest)\n\n req.payloadDataLoader = getDataLoader(req)\n\n req.user = await executeAuthStrategies({\n cookies,\n headers: req.headers,\n isGraphQL,\n payload,\n })\n\n return req\n}\n"],"names":["initI18n","executeAuthStrategies","parseCookies","getDataLoader","qs","URL","sanitizeLocales","getPayloadHMR","getRequestLanguage","createPayloadRequest","config","configPromise","params","request","cookies","headers","payload","urlProperties","url","pathname","searchParams","isGraphQL","graphQL","disable","routes","api","language","i18n","context","locale","fallbackLocale","localization","locales","get","customRequest","hash","host","href","origin","payloadAPI","payloadDataLoader","undefined","payloadUploadSizes","port","protocol","query","search","parse","arrayLimit","depth","ignoreQueryPrefix","routeParams","t","transactionID","user","req","Object","assign"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,QAAQ,QAAQ,2BAA0B;AACnD,SAASC,qBAAqB,QAAQ,eAAc;AACpD,SAASC,YAAY,QAAQ,eAAc;AAC3C,SAASC,aAAa,QAAQ,oBAAmB;AACjD,OAAOC,QAAQ,KAAI;AACnB,SAASC,GAAG,QAAQ,MAAK;AAEzB,SAASC,eAAe,QAAQ,2BAA0B;AAC1D,SAASC,aAAa,QAAQ,qBAAoB;AAClD,SAASC,kBAAkB,QAAQ,0BAAyB;AAU5D,OAAO,MAAMC,uBAAuB,OAAO,EACzCC,QAAQC,aAAa,EACrBC,MAAM,EACNC,OAAO,EACF;IACL,MAAMC,UAAUZ,aAAaW,QAAQE,OAAO;IAC5C,MAAMC,UAAU,MAAMT,cAAc;QAAEG,QAAQC;IAAc;IAE5D,MAAM,EAAED,MAAM,EAAE,GAAGM;IAEnB,MAAMC,gBAAgB,IAAIZ,IAAIQ,QAAQK,GAAG;IACzC,MAAM,EAAEC,QAAQ,EAAEC,YAAY,EAAE,GAAGH;IAEnC,MAAMI,YACJ,CAACX,OAAOY,OAAO,CAACC,OAAO,IAAIJ,aAAa,CAAC,EAAET,OAAOc,MAAM,CAACC,GAAG,CAAC,EAAEf,OAAOc,MAAM,CAACF,OAAO,CAAC,CAAC;IAExF,MAAMI,WAAWlB,mBAAmB;QAClCE;QACAI;QACAC,SAASF,QAAQE,OAAO;IAC1B;IAEA,MAAMY,OAAO,MAAM3B,SAAS;QAC1BU,QAAQA,OAAOiB,IAAI;QACnBC,SAAS;QACTF;IACF;IAEA,IAAIG;IACJ,IAAIC;IACJ,IAAIpB,OAAOqB,YAAY,EAAE;QACvB,MAAMC,UAAU1B,gBAAgB;YAC9BwB,gBAAgBV,aAAaa,GAAG,CAAC;YACjCJ,QAAQT,aAAaa,GAAG,CAAC;YACzBF,cAAcf,QAAQN,MAAM,CAACqB,YAAY;QAC3C;QACAF,SAASG,QAAQH,MAAM;QACvBC,iBAAiBE,QAAQF,cAAc;IACzC;IAEA,MAAMI,gBAAgD;QACpDN,SAAS,CAAC;QACVE;QACAK,MAAMlB,cAAckB,IAAI;QACxBC,MAAMnB,cAAcmB,IAAI;QACxBC,MAAMpB,cAAcoB,IAAI;QACxBV;QACAE;QACAS,QAAQrB,cAAcqB,MAAM;QAC5BnB,UAAUF,cAAcE,QAAQ;QAChCH;QACAuB,YAAYlB,YAAY,YAAY;QACpCmB,mBAAmBC;QACnBC,oBAAoB,CAAC;QACrBC,MAAM1B,cAAc0B,IAAI;QACxBC,UAAU3B,cAAc2B,QAAQ;QAChCC,OAAO5B,cAAc6B,MAAM,GACvB1C,GAAG2C,KAAK,CAAC9B,cAAc6B,MAAM,EAAE;YAC7BE,YAAY;YACZC,OAAO;YACPC,mBAAmB;QACrB,KACA,CAAC;QACLC,aAAavC,UAAU,CAAC;QACxBkC,QAAQ7B,cAAc6B,MAAM;QAC5B1B,cAAcH,cAAcG,YAAY;QACxCgC,GAAGzB,KAAKyB,CAAC;QACTC,eAAeZ;QACfa,MAAM;IACR;IAEA,MAAMC,MAAsBC,OAAOC,MAAM,CAAC5C,SAASqB;IAEnDqB,IAAIf,iBAAiB,GAAGrC,cAAcoD;IAEtCA,IAAID,IAAI,GAAG,MAAMrD,sBAAsB;QACrCa;QACAC,SAASwC,IAAIxC,OAAO;QACpBM;QACAL;IACF;IAEA,OAAOuC;AACT,EAAC"}
@@ -1,11 +1,11 @@
1
- import type { Collection, CustomPayloadRequest, SanitizedConfig } from 'payload/types';
1
+ import type { Collection, PayloadRequestWithData, SanitizedConfig } from 'payload/types';
2
2
  type GetDataAndFile = (args: {
3
3
  collection: Collection;
4
4
  config: SanitizedConfig;
5
5
  request: Request;
6
6
  }) => Promise<{
7
7
  data: Record<string, any>;
8
- file: CustomPayloadRequest['file'];
8
+ file: PayloadRequestWithData['file'];
9
9
  }>;
10
10
  export declare const getDataAndFile: GetDataAndFile;
11
11
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"getDataAndFile.d.ts","sourceRoot":"","sources":["../../src/utilities/getDataAndFile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAItF,KAAK,cAAc,GAAG,CAAC,IAAI,EAAE;IAC3B,UAAU,EAAE,UAAU,CAAA;IACtB,MAAM,EAAE,eAAe,CAAA;IACvB,OAAO,EAAE,OAAO,CAAA;CACjB,KAAK,OAAO,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACzB,IAAI,EAAE,oBAAoB,CAAC,MAAM,CAAC,CAAA;CACnC,CAAC,CAAA;AACF,eAAO,MAAM,cAAc,EAAE,cAmE5B,CAAA"}
1
+ {"version":3,"file":"getDataAndFile.d.ts","sourceRoot":"","sources":["../../src/utilities/getDataAndFile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAMxF,KAAK,cAAc,GAAG,CAAC,IAAI,EAAE;IAC3B,UAAU,EAAE,UAAU,CAAA;IACtB,MAAM,EAAE,eAAe,CAAA;IACvB,OAAO,EAAE,OAAO,CAAA;CACjB,KAAK,OAAO,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACzB,IAAI,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAA;CACrC,CAAC,CAAA;AACF,eAAO,MAAM,cAAc,EAAE,cAwD5B,CAAA"}
@@ -1,56 +1,40 @@
1
- import { nextFileUpload } from '../next-fileupload/index.js';
2
- export const getDataAndFile = async ({ collection, config, request })=>{
1
+ import { fetchAPIFileUpload } from '../fetchAPI-multipart/index.js';
2
+ export const getDataAndFile = async ({ collection, config, request: incomingRequest })=>{
3
3
  let data = undefined;
4
4
  let file = undefined;
5
5
  if ([
6
6
  'PATCH',
7
7
  'POST',
8
8
  'PUT'
9
- ].includes(request.method.toUpperCase()) && request.body) {
9
+ ].includes(incomingRequest.method.toUpperCase()) && incomingRequest.body) {
10
+ const request = new Request(incomingRequest);
10
11
  const [contentType] = (request.headers.get('Content-Type') || '').split(';');
11
12
  if (contentType === 'application/json') {
12
- data = await request.json();
13
- } else if (contentType === 'multipart/form-data') {
14
- // possible upload request
15
- if (collection?.config?.upload) {
16
- // load file in memory
17
- if (!config.upload?.useTempFiles) {
18
- const formData = await request.formData();
19
- const formFile = formData.get('file');
20
- if (formFile instanceof Blob) {
21
- const bytes = await formFile.arrayBuffer();
22
- const buffer = Buffer.from(bytes);
23
- file = {
24
- name: formFile.name,
25
- data: buffer,
26
- mimetype: formFile.type,
27
- size: formFile.size
28
- };
29
- }
30
- const payloadData = formData.get('_payload');
31
- if (typeof payloadData === 'string') {
32
- data = JSON.parse(payloadData);
33
- }
34
- } else {
35
- // store temp file on disk
36
- const { error, fields, files } = await nextFileUpload({
37
- options: config.upload,
38
- request
39
- });
40
- if (error) {
41
- throw new Error(error.message);
42
- }
43
- if (files?.file) file = files.file;
44
- if (fields?._payload && typeof fields._payload === 'string') {
45
- data = JSON.parse(fields._payload);
46
- }
13
+ const bodyByteSize = parseInt(request.headers.get('Content-Length') || '0', 10);
14
+ const upperByteLimit = typeof config.upload?.limits?.fieldSize === 'number' ? config.upload.limits.fields : undefined;
15
+ if (bodyByteSize <= upperByteLimit || upperByteLimit === undefined) {
16
+ try {
17
+ data = await request.json();
18
+ } catch (error) {
19
+ data = {};
47
20
  }
48
21
  } else {
49
- // non upload request
50
- const formData = await request.formData();
51
- const payloadData = formData.get('_payload');
52
- if (typeof payloadData === 'string') {
53
- data = JSON.parse(payloadData);
22
+ throw new Error('Request body size exceeds the limit');
23
+ }
24
+ } else {
25
+ if (request.headers.has('Content-Length') && request.headers.get('Content-Length') !== '0') {
26
+ const { error, fields, files } = await fetchAPIFileUpload({
27
+ options: config.upload,
28
+ request
29
+ });
30
+ if (error) {
31
+ throw new Error(error.message);
32
+ }
33
+ if (collection?.config?.upload && files?.file) {
34
+ file = files.file;
35
+ }
36
+ if (fields?._payload && typeof fields._payload === 'string') {
37
+ data = JSON.parse(fields._payload);
54
38
  }
55
39
  }
56
40
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/getDataAndFile.ts"],"sourcesContent":["import type { Collection, CustomPayloadRequest, SanitizedConfig } from 'payload/types'\n\nimport { nextFileUpload } from '../next-fileupload/index.js'\n\ntype GetDataAndFile = (args: {\n collection: Collection\n config: SanitizedConfig\n request: Request\n}) => Promise<{\n data: Record<string, any>\n file: CustomPayloadRequest['file']\n}>\nexport const getDataAndFile: GetDataAndFile = async ({ collection, config, request }) => {\n let data: Record<string, any> = undefined\n let file: CustomPayloadRequest['file'] = undefined\n\n if (['PATCH', 'POST', 'PUT'].includes(request.method.toUpperCase()) && request.body) {\n const [contentType] = (request.headers.get('Content-Type') || '').split(';')\n\n if (contentType === 'application/json') {\n data = await request.json()\n } else if (contentType === 'multipart/form-data') {\n // possible upload request\n if (collection?.config?.upload) {\n // load file in memory\n if (!config.upload?.useTempFiles) {\n const formData = await request.formData()\n const formFile = formData.get('file')\n\n if (formFile instanceof Blob) {\n const bytes = await formFile.arrayBuffer()\n const buffer = Buffer.from(bytes)\n\n file = {\n name: formFile.name,\n data: buffer,\n mimetype: formFile.type,\n size: formFile.size,\n }\n }\n\n const payloadData = formData.get('_payload')\n\n if (typeof payloadData === 'string') {\n data = JSON.parse(payloadData)\n }\n } else {\n // store temp file on disk\n const { error, fields, files } = await nextFileUpload({\n options: config.upload as any,\n request,\n })\n\n if (error) {\n throw new Error(error.message)\n }\n\n if (files?.file) file = files.file\n\n if (fields?._payload && typeof fields._payload === 'string') {\n data = JSON.parse(fields._payload)\n }\n }\n } else {\n // non upload request\n const formData = await request.formData()\n const payloadData = formData.get('_payload')\n\n if (typeof payloadData === 'string') {\n data = JSON.parse(payloadData)\n }\n }\n }\n }\n\n return {\n data,\n file,\n }\n}\n"],"names":["nextFileUpload","getDataAndFile","collection","config","request","data","undefined","file","includes","method","toUpperCase","body","contentType","headers","get","split","json","upload","useTempFiles","formData","formFile","Blob","bytes","arrayBuffer","buffer","Buffer","from","name","mimetype","type","size","payloadData","JSON","parse","error","fields","files","options","Error","message","_payload"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,cAAc,QAAQ,8BAA6B;AAU5D,OAAO,MAAMC,iBAAiC,OAAO,EAAEC,UAAU,EAAEC,MAAM,EAAEC,OAAO,EAAE;IAClF,IAAIC,OAA4BC;IAChC,IAAIC,OAAqCD;IAEzC,IAAI;QAAC;QAAS;QAAQ;KAAM,CAACE,QAAQ,CAACJ,QAAQK,MAAM,CAACC,WAAW,OAAON,QAAQO,IAAI,EAAE;QACnF,MAAM,CAACC,YAAY,GAAG,AAACR,CAAAA,QAAQS,OAAO,CAACC,GAAG,CAAC,mBAAmB,EAAC,EAAGC,KAAK,CAAC;QAExE,IAAIH,gBAAgB,oBAAoB;YACtCP,OAAO,MAAMD,QAAQY,IAAI;QAC3B,OAAO,IAAIJ,gBAAgB,uBAAuB;YAChD,0BAA0B;YAC1B,IAAIV,YAAYC,QAAQc,QAAQ;gBAC9B,sBAAsB;gBACtB,IAAI,CAACd,OAAOc,MAAM,EAAEC,cAAc;oBAChC,MAAMC,WAAW,MAAMf,QAAQe,QAAQ;oBACvC,MAAMC,WAAWD,SAASL,GAAG,CAAC;oBAE9B,IAAIM,oBAAoBC,MAAM;wBAC5B,MAAMC,QAAQ,MAAMF,SAASG,WAAW;wBACxC,MAAMC,SAASC,OAAOC,IAAI,CAACJ;wBAE3Bf,OAAO;4BACLoB,MAAMP,SAASO,IAAI;4BACnBtB,MAAMmB;4BACNI,UAAUR,SAASS,IAAI;4BACvBC,MAAMV,SAASU,IAAI;wBACrB;oBACF;oBAEA,MAAMC,cAAcZ,SAASL,GAAG,CAAC;oBAEjC,IAAI,OAAOiB,gBAAgB,UAAU;wBACnC1B,OAAO2B,KAAKC,KAAK,CAACF;oBACpB;gBACF,OAAO;oBACL,0BAA0B;oBAC1B,MAAM,EAAEG,KAAK,EAAEC,MAAM,EAAEC,KAAK,EAAE,GAAG,MAAMpC,eAAe;wBACpDqC,SAASlC,OAAOc,MAAM;wBACtBb;oBACF;oBAEA,IAAI8B,OAAO;wBACT,MAAM,IAAII,MAAMJ,MAAMK,OAAO;oBAC/B;oBAEA,IAAIH,OAAO7B,MAAMA,OAAO6B,MAAM7B,IAAI;oBAElC,IAAI4B,QAAQK,YAAY,OAAOL,OAAOK,QAAQ,KAAK,UAAU;wBAC3DnC,OAAO2B,KAAKC,KAAK,CAACE,OAAOK,QAAQ;oBACnC;gBACF;YACF,OAAO;gBACL,qBAAqB;gBACrB,MAAMrB,WAAW,MAAMf,QAAQe,QAAQ;gBACvC,MAAMY,cAAcZ,SAASL,GAAG,CAAC;gBAEjC,IAAI,OAAOiB,gBAAgB,UAAU;oBACnC1B,OAAO2B,KAAKC,KAAK,CAACF;gBACpB;YACF;QACF;IACF;IAEA,OAAO;QACL1B;QACAE;IACF;AACF,EAAC"}
1
+ {"version":3,"sources":["../../src/utilities/getDataAndFile.ts"],"sourcesContent":["import type { Collection, PayloadRequestWithData, SanitizedConfig } from 'payload/types'\n\nimport type { FetchAPIFileUploadOptions } from '../fetchAPI-multipart/index.js'\n\nimport { fetchAPIFileUpload } from '../fetchAPI-multipart/index.js'\n\ntype GetDataAndFile = (args: {\n collection: Collection\n config: SanitizedConfig\n request: Request\n}) => Promise<{\n data: Record<string, any>\n file: PayloadRequestWithData['file']\n}>\nexport const getDataAndFile: GetDataAndFile = async ({\n collection,\n config,\n request: incomingRequest,\n}) => {\n let data: Record<string, any> = undefined\n let file: PayloadRequestWithData['file'] = undefined\n\n if (\n ['PATCH', 'POST', 'PUT'].includes(incomingRequest.method.toUpperCase()) &&\n incomingRequest.body\n ) {\n const request = new Request(incomingRequest)\n const [contentType] = (request.headers.get('Content-Type') || '').split(';')\n\n if (contentType === 'application/json') {\n const bodyByteSize = parseInt(request.headers.get('Content-Length') || '0', 10)\n const upperByteLimit =\n typeof config.upload?.limits?.fieldSize === 'number'\n ? config.upload.limits.fields\n : undefined\n if (bodyByteSize <= upperByteLimit || upperByteLimit === undefined) {\n try {\n data = await request.json()\n } catch (error) {\n data = {}\n }\n } else {\n throw new Error('Request body size exceeds the limit')\n }\n } else {\n if (request.headers.has('Content-Length') && request.headers.get('Content-Length') !== '0') {\n const { error, fields, files } = await fetchAPIFileUpload({\n options: config.upload as FetchAPIFileUploadOptions,\n request,\n })\n\n if (error) {\n throw new Error(error.message)\n }\n\n if (collection?.config?.upload && files?.file) {\n file = files.file\n }\n\n if (fields?._payload && typeof fields._payload === 'string') {\n data = JSON.parse(fields._payload)\n }\n }\n }\n }\n\n return {\n data,\n file,\n }\n}\n"],"names":["fetchAPIFileUpload","getDataAndFile","collection","config","request","incomingRequest","data","undefined","file","includes","method","toUpperCase","body","Request","contentType","headers","get","split","bodyByteSize","parseInt","upperByteLimit","upload","limits","fieldSize","fields","json","error","Error","has","files","options","message","_payload","JSON","parse"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAIA,SAASA,kBAAkB,QAAQ,iCAAgC;AAUnE,OAAO,MAAMC,iBAAiC,OAAO,EACnDC,UAAU,EACVC,MAAM,EACNC,SAASC,eAAe,EACzB;IACC,IAAIC,OAA4BC;IAChC,IAAIC,OAAuCD;IAE3C,IACE;QAAC;QAAS;QAAQ;KAAM,CAACE,QAAQ,CAACJ,gBAAgBK,MAAM,CAACC,WAAW,OACpEN,gBAAgBO,IAAI,EACpB;QACA,MAAMR,UAAU,IAAIS,QAAQR;QAC5B,MAAM,CAACS,YAAY,GAAG,AAACV,CAAAA,QAAQW,OAAO,CAACC,GAAG,CAAC,mBAAmB,EAAC,EAAGC,KAAK,CAAC;QAExE,IAAIH,gBAAgB,oBAAoB;YACtC,MAAMI,eAAeC,SAASf,QAAQW,OAAO,CAACC,GAAG,CAAC,qBAAqB,KAAK;YAC5E,MAAMI,iBACJ,OAAOjB,OAAOkB,MAAM,EAAEC,QAAQC,cAAc,WACxCpB,OAAOkB,MAAM,CAACC,MAAM,CAACE,MAAM,GAC3BjB;YACN,IAAIW,gBAAgBE,kBAAkBA,mBAAmBb,WAAW;gBAClE,IAAI;oBACFD,OAAO,MAAMF,QAAQqB,IAAI;gBAC3B,EAAE,OAAOC,OAAO;oBACdpB,OAAO,CAAC;gBACV;YACF,OAAO;gBACL,MAAM,IAAIqB,MAAM;YAClB;QACF,OAAO;YACL,IAAIvB,QAAQW,OAAO,CAACa,GAAG,CAAC,qBAAqBxB,QAAQW,OAAO,CAACC,GAAG,CAAC,sBAAsB,KAAK;gBAC1F,MAAM,EAAEU,KAAK,EAAEF,MAAM,EAAEK,KAAK,EAAE,GAAG,MAAM7B,mBAAmB;oBACxD8B,SAAS3B,OAAOkB,MAAM;oBACtBjB;gBACF;gBAEA,IAAIsB,OAAO;oBACT,MAAM,IAAIC,MAAMD,MAAMK,OAAO;gBAC/B;gBAEA,IAAI7B,YAAYC,QAAQkB,UAAUQ,OAAOrB,MAAM;oBAC7CA,OAAOqB,MAAMrB,IAAI;gBACnB;gBAEA,IAAIgB,QAAQQ,YAAY,OAAOR,OAAOQ,QAAQ,KAAK,UAAU;oBAC3D1B,OAAO2B,KAAKC,KAAK,CAACV,OAAOQ,QAAQ;gBACnC;YACF;QACF;IACF;IAEA,OAAO;QACL1B;QACAE;IACF;AACF,EAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { Payload } from 'payload';
2
- import type { InitOptions } from 'payload/config';
2
+ import type { InitOptions, SanitizedConfig } from 'payload/config';
3
+ export declare const reload: (config: SanitizedConfig, payload: Payload) => Promise<void>;
3
4
  export declare const getPayloadHMR: (options: InitOptions) => Promise<Payload>;
4
5
  //# sourceMappingURL=getPayloadHMR.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getPayloadHMR.d.ts","sourceRoot":"","sources":["../../src/utilities/getPayloadHMR.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkB,OAAO,EAAE,MAAM,SAAS,CAAA;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAgBjD,eAAO,MAAM,aAAa,YAAmB,WAAW,KAAG,QAAQ,OAAO,CA6EzE,CAAA"}
1
+ {"version":3,"file":"getPayloadHMR.d.ts","sourceRoot":"","sources":["../../src/utilities/getPayloadHMR.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkB,OAAO,EAAE,MAAM,SAAS,CAAA;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAgBlE,eAAO,MAAM,MAAM,WAAkB,eAAe,uBAAqB,QAAQ,IAAI,CAuBpF,CAAA;AAED,eAAO,MAAM,aAAa,YAAmB,WAAW,KAAG,QAAQ,OAAO,CA4DzE,CAAA"}
@@ -9,6 +9,27 @@ if (!cached) {
9
9
  reload: false
10
10
  };
11
11
  }
12
+ export const reload = async (config, payload)=>{
13
+ if (typeof payload.db.destroy === 'function') {
14
+ await payload.db.destroy();
15
+ }
16
+ payload.config = config;
17
+ payload.collections = config.collections.reduce((collections, collection)=>{
18
+ collections[collection.slug] = {
19
+ config: collection,
20
+ customIDType: payload.collections[collection.slug]?.customIDType
21
+ };
22
+ return collections;
23
+ }, {});
24
+ payload.globals = {
25
+ config: config.globals
26
+ };
27
+ // TODO: support HMR for other props in the future (see payload/src/index init()) hat may change on Payload singleton
28
+ await payload.db.init();
29
+ await payload.db.connect({
30
+ hotReload: true
31
+ });
32
+ };
12
33
  export const getPayloadHMR = async (options)=>{
13
34
  if (!options?.config) {
14
35
  throw new Error('Error: the payload config is required for getPayload to work.');
@@ -19,24 +40,7 @@ export const getPayloadHMR = async (options)=>{
19
40
  if (cached.reload === true) {
20
41
  let resolve;
21
42
  cached.reload = new Promise((res)=>resolve = res);
22
- if (typeof cached.payload.db.destroy === 'function') {
23
- await cached.payload.db.destroy();
24
- }
25
- cached.payload.config = config;
26
- cached.payload.collections = config.collections.reduce((collections, collection)=>{
27
- collections[collection.slug] = {
28
- config: collection
29
- };
30
- return collections;
31
- }, {});
32
- cached.payload.globals = {
33
- config: config.globals
34
- };
35
- // TODO: support HMR for other props in the future (see payload/src/index init()) hat may change on Payload singleton
36
- await cached.payload.db.init();
37
- await cached.payload.db.connect({
38
- hotReload: true
39
- });
43
+ await reload(config, cached.payload);
40
44
  resolve();
41
45
  }
42
46
  if (cached.reload instanceof Promise) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/getPayloadHMR.ts"],"sourcesContent":["import type { GeneratedTypes, Payload } from 'payload'\nimport type { InitOptions } from 'payload/config'\n\nimport { BasePayload } from 'payload'\nimport WebSocket from 'ws'\n\nlet cached: {\n payload: Payload | null\n promise: Promise<Payload> | null\n reload: Promise<boolean> | boolean\n} = global._payload\n\nif (!cached) {\n // eslint-disable-next-line no-multi-assign\n cached = global._payload = { payload: null, promise: null, reload: false }\n}\n\nexport const getPayloadHMR = async (options: InitOptions): Promise<Payload> => {\n if (!options?.config) {\n throw new Error('Error: the payload config is required for getPayload to work.')\n }\n\n if (cached.payload) {\n const config = await options.config // TODO: check if we can move this inside the cached.reload === true condition\n\n if (cached.reload === true) {\n let resolve\n\n cached.reload = new Promise((res) => (resolve = res))\n\n if (typeof cached.payload.db.destroy === 'function') {\n await cached.payload.db.destroy()\n }\n\n cached.payload.config = config\n\n cached.payload.collections = config.collections.reduce((collections, collection) => {\n collections[collection.slug] = { config: collection }\n return collections\n }, {})\n\n cached.payload.globals = {\n config: config.globals,\n }\n\n // TODO: support HMR for other props in the future (see payload/src/index init()) hat may change on Payload singleton\n\n await cached.payload.db.init()\n await cached.payload.db.connect({ hotReload: true })\n resolve()\n }\n\n if (cached.reload instanceof Promise) {\n await cached.reload\n }\n\n return cached.payload\n }\n\n if (!cached.promise) {\n cached.promise = new BasePayload<GeneratedTypes>().init(options)\n }\n\n try {\n cached.payload = await cached.promise\n\n if (\n process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test' &&\n process.env.DISABLE_PAYLOAD_HMR !== 'true'\n ) {\n try {\n const port = process.env.PORT || '3000'\n const ws = new WebSocket(`ws://localhost:${port}/_next/webpack-hmr`)\n\n ws.onmessage = (event) => {\n if (typeof event.data === 'string') {\n const data = JSON.parse(event.data)\n\n if ('action' in data && data.action === 'serverComponentChanges') {\n cached.reload = true\n }\n }\n }\n } catch (_) {\n // swallow e\n }\n }\n } catch (e) {\n cached.promise = null\n throw e\n }\n\n return cached.payload\n}\n"],"names":["BasePayload","WebSocket","cached","global","_payload","payload","promise","reload","getPayloadHMR","options","config","Error","resolve","Promise","res","db","destroy","collections","reduce","collection","slug","globals","init","connect","hotReload","process","env","NODE_ENV","DISABLE_PAYLOAD_HMR","port","PORT","ws","onmessage","event","data","JSON","parse","action","_","e"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAGA,SAASA,WAAW,QAAQ,UAAS;AACrC,OAAOC,eAAe,KAAI;AAE1B,IAAIC,SAIAC,OAAOC,QAAQ;AAEnB,IAAI,CAACF,QAAQ;IACX,2CAA2C;IAC3CA,SAASC,OAAOC,QAAQ,GAAG;QAAEC,SAAS;QAAMC,SAAS;QAAMC,QAAQ;IAAM;AAC3E;AAEA,OAAO,MAAMC,gBAAgB,OAAOC;IAClC,IAAI,CAACA,SAASC,QAAQ;QACpB,MAAM,IAAIC,MAAM;IAClB;IAEA,IAAIT,OAAOG,OAAO,EAAE;QAClB,MAAMK,SAAS,MAAMD,QAAQC,MAAM,CAAC,8EAA8E;;QAElH,IAAIR,OAAOK,MAAM,KAAK,MAAM;YAC1B,IAAIK;YAEJV,OAAOK,MAAM,GAAG,IAAIM,QAAQ,CAACC,MAASF,UAAUE;YAEhD,IAAI,OAAOZ,OAAOG,OAAO,CAACU,EAAE,CAACC,OAAO,KAAK,YAAY;gBACnD,MAAMd,OAAOG,OAAO,CAACU,EAAE,CAACC,OAAO;YACjC;YAEAd,OAAOG,OAAO,CAACK,MAAM,GAAGA;YAExBR,OAAOG,OAAO,CAACY,WAAW,GAAGP,OAAOO,WAAW,CAACC,MAAM,CAAC,CAACD,aAAaE;gBACnEF,WAAW,CAACE,WAAWC,IAAI,CAAC,GAAG;oBAAEV,QAAQS;gBAAW;gBACpD,OAAOF;YACT,GAAG,CAAC;YAEJf,OAAOG,OAAO,CAACgB,OAAO,GAAG;gBACvBX,QAAQA,OAAOW,OAAO;YACxB;YAEA,qHAAqH;YAErH,MAAMnB,OAAOG,OAAO,CAACU,EAAE,CAACO,IAAI;YAC5B,MAAMpB,OAAOG,OAAO,CAACU,EAAE,CAACQ,OAAO,CAAC;gBAAEC,WAAW;YAAK;YAClDZ;QACF;QAEA,IAAIV,OAAOK,MAAM,YAAYM,SAAS;YACpC,MAAMX,OAAOK,MAAM;QACrB;QAEA,OAAOL,OAAOG,OAAO;IACvB;IAEA,IAAI,CAACH,OAAOI,OAAO,EAAE;QACnBJ,OAAOI,OAAO,GAAG,IAAIN,cAA8BsB,IAAI,CAACb;IAC1D;IAEA,IAAI;QACFP,OAAOG,OAAO,GAAG,MAAMH,OAAOI,OAAO;QAErC,IACEmB,QAAQC,GAAG,CAACC,QAAQ,KAAK,gBACzBF,QAAQC,GAAG,CAACC,QAAQ,KAAK,UACzBF,QAAQC,GAAG,CAACE,mBAAmB,KAAK,QACpC;YACA,IAAI;gBACF,MAAMC,OAAOJ,QAAQC,GAAG,CAACI,IAAI,IAAI;gBACjC,MAAMC,KAAK,IAAI9B,UAAU,CAAC,eAAe,EAAE4B,KAAK,kBAAkB,CAAC;gBAEnEE,GAAGC,SAAS,GAAG,CAACC;oBACd,IAAI,OAAOA,MAAMC,IAAI,KAAK,UAAU;wBAClC,MAAMA,OAAOC,KAAKC,KAAK,CAACH,MAAMC,IAAI;wBAElC,IAAI,YAAYA,QAAQA,KAAKG,MAAM,KAAK,0BAA0B;4BAChEnC,OAAOK,MAAM,GAAG;wBAClB;oBACF;gBACF;YACF,EAAE,OAAO+B,GAAG;YACV,YAAY;YACd;QACF;IACF,EAAE,OAAOC,GAAG;QACVrC,OAAOI,OAAO,GAAG;QACjB,MAAMiC;IACR;IAEA,OAAOrC,OAAOG,OAAO;AACvB,EAAC"}
1
+ {"version":3,"sources":["../../src/utilities/getPayloadHMR.ts"],"sourcesContent":["import type { GeneratedTypes, Payload } from 'payload'\nimport type { InitOptions, SanitizedConfig } from 'payload/config'\n\nimport { BasePayload } from 'payload'\nimport WebSocket from 'ws'\n\nlet cached: {\n payload: Payload | null\n promise: Promise<Payload> | null\n reload: Promise<boolean> | boolean\n} = global._payload\n\nif (!cached) {\n // eslint-disable-next-line no-multi-assign\n cached = global._payload = { payload: null, promise: null, reload: false }\n}\n\nexport const reload = async (config: SanitizedConfig, payload: Payload): Promise<void> => {\n if (typeof payload.db.destroy === 'function') {\n await payload.db.destroy()\n }\n\n payload.config = config\n\n payload.collections = config.collections.reduce((collections, collection) => {\n collections[collection.slug] = {\n config: collection,\n customIDType: payload.collections[collection.slug]?.customIDType,\n }\n return collections\n }, {})\n\n payload.globals = {\n config: config.globals,\n }\n\n // TODO: support HMR for other props in the future (see payload/src/index init()) hat may change on Payload singleton\n\n await payload.db.init()\n await payload.db.connect({ hotReload: true })\n}\n\nexport const getPayloadHMR = async (options: InitOptions): Promise<Payload> => {\n if (!options?.config) {\n throw new Error('Error: the payload config is required for getPayload to work.')\n }\n\n if (cached.payload) {\n const config = await options.config // TODO: check if we can move this inside the cached.reload === true condition\n\n if (cached.reload === true) {\n let resolve\n\n cached.reload = new Promise((res) => (resolve = res))\n\n await reload(config, cached.payload)\n\n resolve()\n }\n\n if (cached.reload instanceof Promise) {\n await cached.reload\n }\n\n return cached.payload\n }\n\n if (!cached.promise) {\n cached.promise = new BasePayload<GeneratedTypes>().init(options)\n }\n\n try {\n cached.payload = await cached.promise\n\n if (\n process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test' &&\n process.env.DISABLE_PAYLOAD_HMR !== 'true'\n ) {\n try {\n const port = process.env.PORT || '3000'\n const ws = new WebSocket(`ws://localhost:${port}/_next/webpack-hmr`)\n\n ws.onmessage = (event) => {\n if (typeof event.data === 'string') {\n const data = JSON.parse(event.data)\n\n if ('action' in data && data.action === 'serverComponentChanges') {\n cached.reload = true\n }\n }\n }\n } catch (_) {\n // swallow e\n }\n }\n } catch (e) {\n cached.promise = null\n throw e\n }\n\n return cached.payload\n}\n"],"names":["BasePayload","WebSocket","cached","global","_payload","payload","promise","reload","config","db","destroy","collections","reduce","collection","slug","customIDType","globals","init","connect","hotReload","getPayloadHMR","options","Error","resolve","Promise","res","process","env","NODE_ENV","DISABLE_PAYLOAD_HMR","port","PORT","ws","onmessage","event","data","JSON","parse","action","_","e"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAGA,SAASA,WAAW,QAAQ,UAAS;AACrC,OAAOC,eAAe,KAAI;AAE1B,IAAIC,SAIAC,OAAOC,QAAQ;AAEnB,IAAI,CAACF,QAAQ;IACX,2CAA2C;IAC3CA,SAASC,OAAOC,QAAQ,GAAG;QAAEC,SAAS;QAAMC,SAAS;QAAMC,QAAQ;IAAM;AAC3E;AAEA,OAAO,MAAMA,SAAS,OAAOC,QAAyBH;IACpD,IAAI,OAAOA,QAAQI,EAAE,CAACC,OAAO,KAAK,YAAY;QAC5C,MAAML,QAAQI,EAAE,CAACC,OAAO;IAC1B;IAEAL,QAAQG,MAAM,GAAGA;IAEjBH,QAAQM,WAAW,GAAGH,OAAOG,WAAW,CAACC,MAAM,CAAC,CAACD,aAAaE;QAC5DF,WAAW,CAACE,WAAWC,IAAI,CAAC,GAAG;YAC7BN,QAAQK;YACRE,cAAcV,QAAQM,WAAW,CAACE,WAAWC,IAAI,CAAC,EAAEC;QACtD;QACA,OAAOJ;IACT,GAAG,CAAC;IAEJN,QAAQW,OAAO,GAAG;QAChBR,QAAQA,OAAOQ,OAAO;IACxB;IAEA,qHAAqH;IAErH,MAAMX,QAAQI,EAAE,CAACQ,IAAI;IACrB,MAAMZ,QAAQI,EAAE,CAACS,OAAO,CAAC;QAAEC,WAAW;IAAK;AAC7C,EAAC;AAED,OAAO,MAAMC,gBAAgB,OAAOC;IAClC,IAAI,CAACA,SAASb,QAAQ;QACpB,MAAM,IAAIc,MAAM;IAClB;IAEA,IAAIpB,OAAOG,OAAO,EAAE;QAClB,MAAMG,SAAS,MAAMa,QAAQb,MAAM,CAAC,8EAA8E;;QAElH,IAAIN,OAAOK,MAAM,KAAK,MAAM;YAC1B,IAAIgB;YAEJrB,OAAOK,MAAM,GAAG,IAAIiB,QAAQ,CAACC,MAASF,UAAUE;YAEhD,MAAMlB,OAAOC,QAAQN,OAAOG,OAAO;YAEnCkB;QACF;QAEA,IAAIrB,OAAOK,MAAM,YAAYiB,SAAS;YACpC,MAAMtB,OAAOK,MAAM;QACrB;QAEA,OAAOL,OAAOG,OAAO;IACvB;IAEA,IAAI,CAACH,OAAOI,OAAO,EAAE;QACnBJ,OAAOI,OAAO,GAAG,IAAIN,cAA8BiB,IAAI,CAACI;IAC1D;IAEA,IAAI;QACFnB,OAAOG,OAAO,GAAG,MAAMH,OAAOI,OAAO;QAErC,IACEoB,QAAQC,GAAG,CAACC,QAAQ,KAAK,gBACzBF,QAAQC,GAAG,CAACC,QAAQ,KAAK,UACzBF,QAAQC,GAAG,CAACE,mBAAmB,KAAK,QACpC;YACA,IAAI;gBACF,MAAMC,OAAOJ,QAAQC,GAAG,CAACI,IAAI,IAAI;gBACjC,MAAMC,KAAK,IAAI/B,UAAU,CAAC,eAAe,EAAE6B,KAAK,kBAAkB,CAAC;gBAEnEE,GAAGC,SAAS,GAAG,CAACC;oBACd,IAAI,OAAOA,MAAMC,IAAI,KAAK,UAAU;wBAClC,MAAMA,OAAOC,KAAKC,KAAK,CAACH,MAAMC,IAAI;wBAElC,IAAI,YAAYA,QAAQA,KAAKG,MAAM,KAAK,0BAA0B;4BAChEpC,OAAOK,MAAM,GAAG;wBAClB;oBACF;gBACF;YACF,EAAE,OAAOgC,GAAG;YACV,YAAY;YACd;QACF;IACF,EAAE,OAAOC,GAAG;QACVtC,OAAOI,OAAO,GAAG;QACjB,MAAMkC;IACR;IAEA,OAAOtC,OAAOG,OAAO;AACvB,EAAC"}
@@ -7,6 +7,6 @@ type GetRequestLanguageArgs = {
7
7
  defaultLanguage?: AcceptedLanguages;
8
8
  headers: Request['headers'];
9
9
  };
10
- export declare const getRequestLanguage: ({ config, cookies, defaultLanguage, headers, }: GetRequestLanguageArgs) => AcceptedLanguages;
10
+ export declare const getRequestLanguage: ({ config, cookies, headers, }: GetRequestLanguageArgs) => AcceptedLanguages;
11
11
  export {};
12
12
  //# sourceMappingURL=getRequestLanguage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getRequestLanguage.d.ts","sourceRoot":"","sources":["../../src/utilities/getRequestLanguage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iEAAiE,CAAA;AAC7G,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAIrD,KAAK,sBAAsB,GAAG;IAC5B,MAAM,EAAE,eAAe,CAAA;IACvB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,sBAAsB,CAAA;IACrD,eAAe,CAAC,EAAE,iBAAiB,CAAA;IACnC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;CAC5B,CAAA;AAED,eAAO,MAAM,kBAAkB,mDAK5B,sBAAsB,KAAG,iBAmB3B,CAAA"}
1
+ {"version":3,"file":"getRequestLanguage.d.ts","sourceRoot":"","sources":["../../src/utilities/getRequestLanguage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iEAAiE,CAAA;AAC7G,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAIrD,KAAK,sBAAsB,GAAG;IAC5B,MAAM,EAAE,eAAe,CAAA;IACvB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,sBAAsB,CAAA;IACrD,eAAe,CAAC,EAAE,iBAAiB,CAAA;IACnC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;CAC5B,CAAA;AAED,eAAO,MAAM,kBAAkB,kCAI5B,sBAAsB,KAAG,iBAmB3B,CAAA"}
@@ -1,17 +1,16 @@
1
1
  import { extractHeaderLanguage } from '@payloadcms/translations';
2
- export const getRequestLanguage = ({ config, cookies, defaultLanguage = 'en', headers })=>{
2
+ export const getRequestLanguage = ({ config, cookies, headers })=>{
3
+ const supportedLanguageKeys = Object.keys(config.i18n.supportedLanguages);
3
4
  const langCookie = cookies.get(`${config.cookiePrefix || 'payload'}-lng`);
4
5
  const languageFromCookie = typeof langCookie === 'string' ? langCookie : langCookie?.value;
5
6
  const languageFromHeader = headers.get('Accept-Language') ? extractHeaderLanguage(headers.get('Accept-Language')) : undefined;
6
- const fallbackLang = config?.i18n?.fallbackLanguage || defaultLanguage;
7
- const supportedLanguageKeys = Object.keys(config?.i18n?.supportedLanguages || {});
8
7
  if (languageFromCookie && supportedLanguageKeys.includes(languageFromCookie)) {
9
8
  return languageFromCookie;
10
9
  }
11
10
  if (languageFromHeader && supportedLanguageKeys.includes(languageFromHeader)) {
12
11
  return languageFromHeader;
13
12
  }
14
- return supportedLanguageKeys.includes(fallbackLang) ? fallbackLang : 'en';
13
+ return config.i18n.fallbackLanguage;
15
14
  };
16
15
 
17
16
  //# sourceMappingURL=getRequestLanguage.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/getRequestLanguage.ts"],"sourcesContent":["import type { AcceptedLanguages } from '@payloadcms/translations'\nimport type { ReadonlyRequestCookies } from 'next/dist/server/web/spec-extension/adapters/request-cookies.js'\nimport type { SanitizedConfig } from 'payload/config'\n\nimport { extractHeaderLanguage } from '@payloadcms/translations'\n\ntype GetRequestLanguageArgs = {\n config: SanitizedConfig\n cookies: Map<string, string> | ReadonlyRequestCookies\n defaultLanguage?: AcceptedLanguages\n headers: Request['headers']\n}\n\nexport const getRequestLanguage = ({\n config,\n cookies,\n defaultLanguage = 'en',\n headers,\n}: GetRequestLanguageArgs): AcceptedLanguages => {\n const langCookie = cookies.get(`${config.cookiePrefix || 'payload'}-lng`)\n const languageFromCookie = typeof langCookie === 'string' ? langCookie : langCookie?.value\n const languageFromHeader = headers.get('Accept-Language')\n ? extractHeaderLanguage(headers.get('Accept-Language'))\n : undefined\n const fallbackLang = config?.i18n?.fallbackLanguage || defaultLanguage\n\n const supportedLanguageKeys = Object.keys(config?.i18n?.supportedLanguages || {})\n\n if (languageFromCookie && supportedLanguageKeys.includes(languageFromCookie)) {\n return languageFromCookie as AcceptedLanguages\n }\n\n if (languageFromHeader && supportedLanguageKeys.includes(languageFromHeader)) {\n return languageFromHeader\n }\n\n return supportedLanguageKeys.includes(fallbackLang) ? (fallbackLang as AcceptedLanguages) : 'en'\n}\n"],"names":["extractHeaderLanguage","getRequestLanguage","config","cookies","defaultLanguage","headers","langCookie","get","cookiePrefix","languageFromCookie","value","languageFromHeader","undefined","fallbackLang","i18n","fallbackLanguage","supportedLanguageKeys","Object","keys","supportedLanguages","includes"],"rangeMappings":";;;;;;;;;;;;;;","mappings":"AAIA,SAASA,qBAAqB,QAAQ,2BAA0B;AAShE,OAAO,MAAMC,qBAAqB,CAAC,EACjCC,MAAM,EACNC,OAAO,EACPC,kBAAkB,IAAI,EACtBC,OAAO,EACgB;IACvB,MAAMC,aAAaH,QAAQI,GAAG,CAAC,CAAC,EAAEL,OAAOM,YAAY,IAAI,UAAU,IAAI,CAAC;IACxE,MAAMC,qBAAqB,OAAOH,eAAe,WAAWA,aAAaA,YAAYI;IACrF,MAAMC,qBAAqBN,QAAQE,GAAG,CAAC,qBACnCP,sBAAsBK,QAAQE,GAAG,CAAC,sBAClCK;IACJ,MAAMC,eAAeX,QAAQY,MAAMC,oBAAoBX;IAEvD,MAAMY,wBAAwBC,OAAOC,IAAI,CAAChB,QAAQY,MAAMK,sBAAsB,CAAC;IAE/E,IAAIV,sBAAsBO,sBAAsBI,QAAQ,CAACX,qBAAqB;QAC5E,OAAOA;IACT;IAEA,IAAIE,sBAAsBK,sBAAsBI,QAAQ,CAACT,qBAAqB;QAC5E,OAAOA;IACT;IAEA,OAAOK,sBAAsBI,QAAQ,CAACP,gBAAiBA,eAAqC;AAC9F,EAAC"}
1
+ {"version":3,"sources":["../../src/utilities/getRequestLanguage.ts"],"sourcesContent":["import type { AcceptedLanguages } from '@payloadcms/translations'\nimport type { ReadonlyRequestCookies } from 'next/dist/server/web/spec-extension/adapters/request-cookies.js'\nimport type { SanitizedConfig } from 'payload/config'\n\nimport { extractHeaderLanguage } from '@payloadcms/translations'\n\ntype GetRequestLanguageArgs = {\n config: SanitizedConfig\n cookies: Map<string, string> | ReadonlyRequestCookies\n defaultLanguage?: AcceptedLanguages\n headers: Request['headers']\n}\n\nexport const getRequestLanguage = ({\n config,\n cookies,\n headers,\n}: GetRequestLanguageArgs): AcceptedLanguages => {\n const supportedLanguageKeys = <AcceptedLanguages[]>Object.keys(config.i18n.supportedLanguages)\n const langCookie = cookies.get(`${config.cookiePrefix || 'payload'}-lng`)\n const languageFromCookie: AcceptedLanguages = (\n typeof langCookie === 'string' ? langCookie : langCookie?.value\n ) as AcceptedLanguages\n const languageFromHeader = headers.get('Accept-Language')\n ? extractHeaderLanguage(headers.get('Accept-Language'))\n : undefined\n\n if (languageFromCookie && supportedLanguageKeys.includes(languageFromCookie)) {\n return languageFromCookie\n }\n\n if (languageFromHeader && supportedLanguageKeys.includes(languageFromHeader)) {\n return languageFromHeader\n }\n\n return config.i18n.fallbackLanguage\n}\n"],"names":["extractHeaderLanguage","getRequestLanguage","config","cookies","headers","supportedLanguageKeys","Object","keys","i18n","supportedLanguages","langCookie","get","cookiePrefix","languageFromCookie","value","languageFromHeader","undefined","includes","fallbackLanguage"],"rangeMappings":";;;;;;;;;;;;;","mappings":"AAIA,SAASA,qBAAqB,QAAQ,2BAA0B;AAShE,OAAO,MAAMC,qBAAqB,CAAC,EACjCC,MAAM,EACNC,OAAO,EACPC,OAAO,EACgB;IACvB,MAAMC,wBAA6CC,OAAOC,IAAI,CAACL,OAAOM,IAAI,CAACC,kBAAkB;IAC7F,MAAMC,aAAaP,QAAQQ,GAAG,CAAC,CAAC,EAAET,OAAOU,YAAY,IAAI,UAAU,IAAI,CAAC;IACxE,MAAMC,qBACJ,OAAOH,eAAe,WAAWA,aAAaA,YAAYI;IAE5D,MAAMC,qBAAqBX,QAAQO,GAAG,CAAC,qBACnCX,sBAAsBI,QAAQO,GAAG,CAAC,sBAClCK;IAEJ,IAAIH,sBAAsBR,sBAAsBY,QAAQ,CAACJ,qBAAqB;QAC5E,OAAOA;IACT;IAEA,IAAIE,sBAAsBV,sBAAsBY,QAAQ,CAACF,qBAAqB;QAC5E,OAAOA;IACT;IAEA,OAAOb,OAAOM,IAAI,CAACU,gBAAgB;AACrC,EAAC"}
@@ -0,0 +1,8 @@
1
+ import type { PayloadRequestWithData } from 'payload/types';
2
+ type CorsArgs = {
3
+ headers: Headers;
4
+ req: Partial<PayloadRequestWithData>;
5
+ };
6
+ export declare const headersWithCors: ({ headers, req }: CorsArgs) => Headers;
7
+ export {};
8
+ //# sourceMappingURL=headersWithCors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"headersWithCors.d.ts","sourceRoot":"","sources":["../../src/utilities/headersWithCors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAE3D,KAAK,QAAQ,GAAG;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAA;CACrC,CAAA;AACD,eAAO,MAAM,eAAe,qBAAsB,QAAQ,KAAG,OAoB5D,CAAA"}
@@ -0,0 +1,17 @@
1
+ export const headersWithCors = ({ headers, req })=>{
2
+ const cors = req?.payload.config.cors;
3
+ const requestOrigin = req?.headers.get('Origin');
4
+ if (cors) {
5
+ headers.set('Access-Control-Allow-Methods', 'PUT, PATCH, POST, GET, DELETE, OPTIONS');
6
+ headers.set('Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept, Authorization, Content-Encoding, x-apollo-tracing');
7
+ if (cors === '*') {
8
+ headers.set('Access-Control-Allow-Origin', '*');
9
+ } else if (Array.isArray(cors) && cors.indexOf(requestOrigin) > -1) {
10
+ headers.set('Access-Control-Allow-Credentials', 'true');
11
+ headers.set('Access-Control-Allow-Origin', requestOrigin);
12
+ }
13
+ }
14
+ return headers;
15
+ };
16
+
17
+ //# sourceMappingURL=headersWithCors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/utilities/headersWithCors.ts"],"sourcesContent":["import type { PayloadRequestWithData } from 'payload/types'\n\ntype CorsArgs = {\n headers: Headers\n req: Partial<PayloadRequestWithData>\n}\nexport const headersWithCors = ({ headers, req }: CorsArgs): Headers => {\n const cors = req?.payload.config.cors\n const requestOrigin = req?.headers.get('Origin')\n\n if (cors) {\n headers.set('Access-Control-Allow-Methods', 'PUT, PATCH, POST, GET, DELETE, OPTIONS')\n headers.set(\n 'Access-Control-Allow-Headers',\n 'Origin, X-Requested-With, Content-Type, Accept, Authorization, Content-Encoding, x-apollo-tracing',\n )\n\n if (cors === '*') {\n headers.set('Access-Control-Allow-Origin', '*')\n } else if (Array.isArray(cors) && cors.indexOf(requestOrigin) > -1) {\n headers.set('Access-Control-Allow-Credentials', 'true')\n headers.set('Access-Control-Allow-Origin', requestOrigin)\n }\n }\n\n return headers\n}\n"],"names":["headersWithCors","headers","req","cors","payload","config","requestOrigin","get","set","Array","isArray","indexOf"],"rangeMappings":";;;;;;;;;;;;;;","mappings":"AAMA,OAAO,MAAMA,kBAAkB,CAAC,EAAEC,OAAO,EAAEC,GAAG,EAAY;IACxD,MAAMC,OAAOD,KAAKE,QAAQC,OAAOF;IACjC,MAAMG,gBAAgBJ,KAAKD,QAAQM,IAAI;IAEvC,IAAIJ,MAAM;QACRF,QAAQO,GAAG,CAAC,gCAAgC;QAC5CP,QAAQO,GAAG,CACT,gCACA;QAGF,IAAIL,SAAS,KAAK;YAChBF,QAAQO,GAAG,CAAC,+BAA+B;QAC7C,OAAO,IAAIC,MAAMC,OAAO,CAACP,SAASA,KAAKQ,OAAO,CAACL,iBAAiB,CAAC,GAAG;YAClEL,QAAQO,GAAG,CAAC,oCAAoC;YAChDP,QAAQO,GAAG,CAAC,+BAA+BF;QAC7C;IACF;IAEA,OAAOL;AACT,EAAC"}
@@ -0,0 +1,13 @@
1
+ import type { Permissions } from 'payload/auth';
2
+ import type { SanitizedCollectionConfig, SanitizedConfig, SanitizedGlobalConfig } from 'payload/types';
3
+ export declare const handleAdminPage: ({ adminRoute, config, permissions, route, }: {
4
+ adminRoute: string;
5
+ config: SanitizedConfig;
6
+ permissions: Permissions;
7
+ route: string;
8
+ }) => {
9
+ collectionConfig: SanitizedCollectionConfig;
10
+ docID: string;
11
+ globalConfig: SanitizedGlobalConfig;
12
+ };
13
+ //# sourceMappingURL=handleAdminPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleAdminPage.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/handleAdminPage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,KAAK,EACV,yBAAyB,EACzB,eAAe,EACf,qBAAqB,EACtB,MAAM,eAAe,CAAA;AAMtB,eAAO,MAAM,eAAe,gDAKzB;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,eAAe,CAAA;IACvB,WAAW,EAAE,WAAW,CAAA;IACxB,KAAK,EAAE,MAAM,CAAA;CACd;;;;CAqCA,CAAA"}
@@ -0,0 +1,35 @@
1
+ import { notFound } from 'next/navigation.js';
2
+ import { isAdminAuthRoute, isAdminRoute } from './shared.js';
3
+ export const handleAdminPage = ({ adminRoute, config, permissions, route })=>{
4
+ if (isAdminRoute(route, adminRoute)) {
5
+ const routeSegments = route.replace(adminRoute, '').split('/').filter(Boolean);
6
+ const [entityType, entitySlug, createOrID] = routeSegments;
7
+ const collectionSlug = entityType === 'collections' ? entitySlug : undefined;
8
+ const globalSlug = entityType === 'globals' ? entitySlug : undefined;
9
+ const docID = collectionSlug && createOrID !== 'create' ? createOrID : undefined;
10
+ let collectionConfig;
11
+ let globalConfig;
12
+ if (collectionSlug) {
13
+ collectionConfig = config.collections.find((collection)=>collection.slug === collectionSlug);
14
+ if (!collectionConfig) {
15
+ notFound();
16
+ }
17
+ }
18
+ if (globalSlug) {
19
+ globalConfig = config.globals.find((global)=>global.slug === globalSlug);
20
+ if (!globalConfig) {
21
+ notFound();
22
+ }
23
+ }
24
+ if (!permissions.canAccessAdmin && !isAdminAuthRoute(route, adminRoute)) {
25
+ notFound();
26
+ }
27
+ return {
28
+ collectionConfig,
29
+ docID,
30
+ globalConfig
31
+ };
32
+ }
33
+ };
34
+
35
+ //# sourceMappingURL=handleAdminPage.js.map