@payloadcms/next 3.0.0-canary.291e44c → 3.0.0-canary.2d0dd26

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 (443) hide show
  1. package/dist/cjs/withPayload.cjs +166 -0
  2. package/dist/cjs/withPayload.cjs.map +1 -0
  3. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.d.ts.map +1 -1
  4. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +1 -0
  5. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
  6. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts +1 -1
  7. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts.map +1 -1
  8. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +13 -15
  9. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  10. package/dist/elements/DocumentHeader/Tabs/Tab/index.scss +70 -68
  11. package/dist/elements/DocumentHeader/Tabs/index.d.ts +2 -2
  12. package/dist/elements/DocumentHeader/Tabs/index.d.ts.map +1 -1
  13. package/dist/elements/DocumentHeader/Tabs/index.js +9 -14
  14. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  15. package/dist/elements/DocumentHeader/Tabs/index.scss +41 -39
  16. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.d.ts.map +1 -1
  17. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +13 -28
  18. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  19. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +1 -1
  20. package/dist/elements/DocumentHeader/Tabs/tabs/index.js +1 -1
  21. package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
  22. package/dist/elements/DocumentHeader/index.d.ts +2 -3
  23. package/dist/elements/DocumentHeader/index.d.ts.map +1 -1
  24. package/dist/elements/DocumentHeader/index.js +9 -12
  25. package/dist/elements/DocumentHeader/index.js.map +1 -1
  26. package/dist/elements/DocumentHeader/index.scss +44 -42
  27. package/dist/elements/FormHeader/index.scss +7 -5
  28. package/dist/elements/Logo/index.d.ts.map +1 -1
  29. package/dist/elements/Logo/index.js +5 -6
  30. package/dist/elements/Logo/index.js.map +1 -1
  31. package/dist/elements/Nav/NavWrapper/index.scss +20 -18
  32. package/dist/elements/Nav/getNavPrefs.d.ts +6 -0
  33. package/dist/elements/Nav/getNavPrefs.d.ts.map +1 -0
  34. package/dist/elements/Nav/getNavPrefs.js +26 -0
  35. package/dist/elements/Nav/getNavPrefs.js.map +1 -0
  36. package/dist/elements/Nav/index.client.d.ts +6 -1
  37. package/dist/elements/Nav/index.client.d.ts.map +1 -1
  38. package/dist/elements/Nav/index.client.js +44 -94
  39. package/dist/elements/Nav/index.client.js.map +1 -1
  40. package/dist/elements/Nav/index.d.ts.map +1 -1
  41. package/dist/elements/Nav/index.js +66 -23
  42. package/dist/elements/Nav/index.js.map +1 -1
  43. package/dist/elements/Nav/index.scss +127 -125
  44. package/dist/exports/layouts.d.ts +1 -0
  45. package/dist/exports/layouts.d.ts.map +1 -1
  46. package/dist/exports/layouts.js +1 -0
  47. package/dist/exports/layouts.js.map +1 -1
  48. package/dist/exports/routes.d.ts +1 -1
  49. package/dist/exports/routes.d.ts.map +1 -1
  50. package/dist/exports/routes.js +1 -1
  51. package/dist/exports/routes.js.map +1 -1
  52. package/dist/exports/utilities.d.ts +2 -1
  53. package/dist/exports/utilities.d.ts.map +1 -1
  54. package/dist/exports/utilities.js +3 -1
  55. package/dist/exports/utilities.js.map +1 -1
  56. package/dist/exports/views.d.ts +0 -2
  57. package/dist/exports/views.d.ts.map +1 -1
  58. package/dist/exports/views.js +0 -2
  59. package/dist/exports/views.js.map +1 -1
  60. package/dist/fetchAPI-multipart/isEligibleRequest.js +1 -1
  61. package/dist/fetchAPI-multipart/isEligibleRequest.js.map +1 -1
  62. package/dist/fetchAPI-multipart/processMultipart.d.ts.map +1 -1
  63. package/dist/fetchAPI-multipart/processMultipart.js +9 -11
  64. package/dist/fetchAPI-multipart/processMultipart.js.map +1 -1
  65. package/dist/layouts/Root/NestProviders.d.ts +11 -0
  66. package/dist/layouts/Root/NestProviders.d.ts.map +1 -0
  67. package/dist/layouts/Root/NestProviders.js +21 -0
  68. package/dist/layouts/Root/NestProviders.js.map +1 -0
  69. package/dist/layouts/Root/checkDependencies.d.ts +2 -0
  70. package/dist/layouts/Root/checkDependencies.d.ts.map +1 -0
  71. package/dist/layouts/Root/checkDependencies.js +49 -0
  72. package/dist/layouts/Root/checkDependencies.js.map +1 -0
  73. package/dist/layouts/Root/index.d.ts +4 -3
  74. package/dist/layouts/Root/index.d.ts.map +1 -1
  75. package/dist/layouts/Root/index.js +35 -96
  76. package/dist/layouts/Root/index.js.map +1 -1
  77. package/dist/prod/styles.css +1 -1
  78. package/dist/routes/rest/collections/create.d.ts.map +1 -1
  79. package/dist/routes/rest/collections/create.js +5 -1
  80. package/dist/routes/rest/collections/create.js.map +1 -1
  81. package/dist/routes/rest/collections/delete.d.ts.map +1 -1
  82. package/dist/routes/rest/collections/delete.js +8 -0
  83. package/dist/routes/rest/collections/delete.js.map +1 -1
  84. package/dist/routes/rest/collections/deleteByID.d.ts.map +1 -1
  85. package/dist/routes/rest/collections/deleteByID.js +7 -1
  86. package/dist/routes/rest/collections/deleteByID.js.map +1 -1
  87. package/dist/routes/rest/collections/duplicate.d.ts.map +1 -1
  88. package/dist/routes/rest/collections/duplicate.js +5 -1
  89. package/dist/routes/rest/collections/duplicate.js.map +1 -1
  90. package/dist/routes/rest/collections/find.d.ts.map +1 -1
  91. package/dist/routes/rest/collections/find.js +7 -1
  92. package/dist/routes/rest/collections/find.js.map +1 -1
  93. package/dist/routes/rest/collections/findByID.d.ts.map +1 -1
  94. package/dist/routes/rest/collections/findByID.js +5 -1
  95. package/dist/routes/rest/collections/findByID.js.map +1 -1
  96. package/dist/routes/rest/collections/findVersionByID.d.ts.map +1 -1
  97. package/dist/routes/rest/collections/findVersionByID.js +5 -1
  98. package/dist/routes/rest/collections/findVersionByID.js.map +1 -1
  99. package/dist/routes/rest/collections/findVersions.d.ts.map +1 -1
  100. package/dist/routes/rest/collections/findVersions.js +7 -1
  101. package/dist/routes/rest/collections/findVersions.js.map +1 -1
  102. package/dist/routes/rest/collections/restoreVersion.d.ts.map +1 -1
  103. package/dist/routes/rest/collections/restoreVersion.js +2 -0
  104. package/dist/routes/rest/collections/restoreVersion.js.map +1 -1
  105. package/dist/routes/rest/collections/update.d.ts.map +1 -1
  106. package/dist/routes/rest/collections/update.js +10 -0
  107. package/dist/routes/rest/collections/update.js.map +1 -1
  108. package/dist/routes/rest/collections/updateByID.d.ts.map +1 -1
  109. package/dist/routes/rest/collections/updateByID.js +7 -1
  110. package/dist/routes/rest/collections/updateByID.js.map +1 -1
  111. package/dist/routes/rest/globals/findOne.d.ts.map +1 -1
  112. package/dist/routes/rest/globals/findOne.js +5 -1
  113. package/dist/routes/rest/globals/findOne.js.map +1 -1
  114. package/dist/routes/rest/globals/findVersionByID.d.ts.map +1 -1
  115. package/dist/routes/rest/globals/findVersionByID.js +5 -1
  116. package/dist/routes/rest/globals/findVersionByID.js.map +1 -1
  117. package/dist/routes/rest/globals/findVersions.d.ts.map +1 -1
  118. package/dist/routes/rest/globals/findVersions.js +7 -1
  119. package/dist/routes/rest/globals/findVersions.js.map +1 -1
  120. package/dist/routes/rest/globals/restoreVersion.d.ts.map +1 -1
  121. package/dist/routes/rest/globals/restoreVersion.js +2 -0
  122. package/dist/routes/rest/globals/restoreVersion.js.map +1 -1
  123. package/dist/routes/rest/globals/update.d.ts.map +1 -1
  124. package/dist/routes/rest/globals/update.js +5 -1
  125. package/dist/routes/rest/globals/update.js.map +1 -1
  126. package/dist/routes/rest/index.d.ts +5 -0
  127. package/dist/routes/rest/index.d.ts.map +1 -1
  128. package/dist/routes/rest/index.js +73 -10
  129. package/dist/routes/rest/index.js.map +1 -1
  130. package/dist/routes/rest/og/image.d.ts +4 -2
  131. package/dist/routes/rest/og/image.d.ts.map +1 -1
  132. package/dist/routes/rest/og/image.js +7 -3
  133. package/dist/routes/rest/og/image.js.map +1 -1
  134. package/dist/routes/rest/og/index.d.ts.map +1 -1
  135. package/dist/routes/rest/og/index.js +7 -12
  136. package/dist/routes/rest/og/index.js.map +1 -1
  137. package/dist/routes/rest/routeError.d.ts.map +1 -1
  138. package/dist/routes/rest/routeError.js +10 -50
  139. package/dist/routes/rest/routeError.js.map +1 -1
  140. package/dist/routes/rest/utilities/sanitizeJoinParams.d.ts +1 -1
  141. package/dist/routes/rest/utilities/sanitizeJoinParams.d.ts.map +1 -1
  142. package/dist/routes/rest/utilities/sanitizeJoinParams.js +9 -5
  143. package/dist/routes/rest/utilities/sanitizeJoinParams.js.map +1 -1
  144. package/dist/routes/rest/utilities/sanitizePopulate.d.ts +3 -0
  145. package/dist/routes/rest/utilities/sanitizePopulate.d.ts.map +1 -0
  146. package/dist/routes/rest/utilities/sanitizePopulate.js +11 -0
  147. package/dist/routes/rest/utilities/sanitizePopulate.js.map +1 -0
  148. package/dist/routes/rest/utilities/sanitizeSelect.d.ts +6 -0
  149. package/dist/routes/rest/utilities/sanitizeSelect.d.ts.map +1 -0
  150. package/dist/routes/rest/utilities/sanitizeSelect.js +17 -0
  151. package/dist/routes/rest/utilities/sanitizeSelect.js.map +1 -0
  152. package/dist/templates/Default/Wrapper/index.scss +38 -36
  153. package/dist/templates/Default/index.d.ts +2 -1
  154. package/dist/templates/Default/index.d.ts.map +1 -1
  155. package/dist/templates/Default/index.js +97 -41
  156. package/dist/templates/Default/index.js.map +1 -1
  157. package/dist/templates/Default/index.scss +60 -58
  158. package/dist/templates/Minimal/index.scss +22 -20
  159. package/dist/utilities/addLocalesToRequest.d.ts.map +1 -1
  160. package/dist/utilities/addLocalesToRequest.js +18 -8
  161. package/dist/utilities/addLocalesToRequest.js.map +1 -1
  162. package/dist/utilities/createPayloadRequest.d.ts.map +1 -1
  163. package/dist/utilities/createPayloadRequest.js +15 -13
  164. package/dist/utilities/createPayloadRequest.js.map +1 -1
  165. package/dist/utilities/getClientConfig.d.ts +8 -0
  166. package/dist/utilities/getClientConfig.d.ts.map +1 -0
  167. package/dist/utilities/getClientConfig.js +16 -0
  168. package/dist/utilities/getClientConfig.js.map +1 -0
  169. package/dist/utilities/getPayloadHMR.d.ts +1 -2
  170. package/dist/utilities/getPayloadHMR.d.ts.map +1 -1
  171. package/dist/utilities/getPayloadHMR.js +4 -102
  172. package/dist/utilities/getPayloadHMR.js.map +1 -1
  173. package/dist/utilities/getRequestLocales.d.ts.map +1 -1
  174. package/dist/utilities/getRequestLocales.js +10 -6
  175. package/dist/utilities/getRequestLocales.js.map +1 -1
  176. package/dist/utilities/handleServerFunctions.d.ts +3 -0
  177. package/dist/utilities/handleServerFunctions.d.ts.map +1 -0
  178. package/dist/utilities/handleServerFunctions.js +35 -0
  179. package/dist/utilities/handleServerFunctions.js.map +1 -0
  180. package/dist/utilities/initPage/handleAdminPage.d.ts +5 -3
  181. package/dist/utilities/initPage/handleAdminPage.d.ts.map +1 -1
  182. package/dist/utilities/initPage/handleAdminPage.js +10 -1
  183. package/dist/utilities/initPage/handleAdminPage.js.map +1 -1
  184. package/dist/utilities/initPage/handleAuthRedirect.js +2 -2
  185. package/dist/utilities/initPage/handleAuthRedirect.js.map +1 -1
  186. package/dist/utilities/initPage/index.d.ts.map +1 -1
  187. package/dist/utilities/initPage/index.js +11 -5
  188. package/dist/utilities/initPage/index.js.map +1 -1
  189. package/dist/utilities/initPage/isCustomAdminView.d.ts +10 -0
  190. package/dist/utilities/initPage/isCustomAdminView.d.ts.map +1 -0
  191. package/dist/utilities/initPage/isCustomAdminView.js +31 -0
  192. package/dist/utilities/initPage/isCustomAdminView.js.map +1 -0
  193. package/dist/utilities/initPage/shared.d.ts.map +1 -1
  194. package/dist/utilities/initPage/shared.js +2 -1
  195. package/dist/utilities/initPage/shared.js.map +1 -1
  196. package/dist/utilities/initReq.d.ts +3 -3
  197. package/dist/utilities/initReq.d.ts.map +1 -1
  198. package/dist/utilities/initReq.js +5 -6
  199. package/dist/utilities/initReq.js.map +1 -1
  200. package/dist/views/API/LocaleSelector/index.js +2 -2
  201. package/dist/views/API/LocaleSelector/index.js.map +1 -1
  202. package/dist/views/API/RenderJSON/index.scss +68 -66
  203. package/dist/views/API/index.client.d.ts.map +1 -1
  204. package/dist/views/API/index.client.js +16 -16
  205. package/dist/views/API/index.client.js.map +1 -1
  206. package/dist/views/Account/Settings/index.js +0 -1
  207. package/dist/views/Account/Settings/index.js.map +1 -1
  208. package/dist/views/Account/ToggleTheme/index.d.ts.map +1 -1
  209. package/dist/views/Account/ToggleTheme/index.js +2 -0
  210. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  211. package/dist/views/Account/index.d.ts.map +1 -1
  212. package/dist/views/Account/index.js +82 -29
  213. package/dist/views/Account/index.js.map +1 -1
  214. package/dist/views/CreateFirstUser/index.client.d.ts +3 -1
  215. package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
  216. package/dist/views/CreateFirstUser/index.client.js +83 -108
  217. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  218. package/dist/views/CreateFirstUser/index.d.ts.map +1 -1
  219. package/dist/views/CreateFirstUser/index.js +36 -4
  220. package/dist/views/CreateFirstUser/index.js.map +1 -1
  221. package/dist/views/Dashboard/Default/index.d.ts +5 -3
  222. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  223. package/dist/views/Dashboard/Default/index.js +58 -47
  224. package/dist/views/Dashboard/Default/index.js.map +1 -1
  225. package/dist/views/Dashboard/index.d.ts.map +1 -1
  226. package/dist/views/Dashboard/index.js +55 -37
  227. package/dist/views/Dashboard/index.js.map +1 -1
  228. package/dist/views/Document/getDocPreferences.d.ts +11 -0
  229. package/dist/views/Document/getDocPreferences.d.ts.map +1 -0
  230. package/dist/views/Document/getDocPreferences.js +44 -0
  231. package/dist/views/Document/getDocPreferences.js.map +1 -0
  232. package/dist/views/Document/getDocumentData.d.ts +10 -11
  233. package/dist/views/Document/getDocumentData.d.ts.map +1 -1
  234. package/dist/views/Document/getDocumentData.js +35 -45
  235. package/dist/views/Document/getDocumentData.js.map +1 -1
  236. package/dist/views/Document/getDocumentPermissions.d.ts +2 -2
  237. package/dist/views/Document/getDocumentPermissions.d.ts.map +1 -1
  238. package/dist/views/Document/getDocumentPermissions.js +10 -7
  239. package/dist/views/Document/getDocumentPermissions.js.map +1 -1
  240. package/dist/views/Document/getIsLocked.d.ts +16 -0
  241. package/dist/views/Document/getIsLocked.d.ts.map +1 -0
  242. package/dist/views/Document/getIsLocked.js +55 -0
  243. package/dist/views/Document/getIsLocked.js.map +1 -0
  244. package/dist/views/Document/getVersions.d.ts +19 -0
  245. package/dist/views/Document/getVersions.d.ts.map +1 -0
  246. package/dist/views/Document/getVersions.js +181 -0
  247. package/dist/views/Document/getVersions.js.map +1 -0
  248. package/dist/views/Document/getViewsFromConfig.d.ts +3 -3
  249. package/dist/views/Document/getViewsFromConfig.d.ts.map +1 -1
  250. package/dist/views/Document/getViewsFromConfig.js +30 -25
  251. package/dist/views/Document/getViewsFromConfig.js.map +1 -1
  252. package/dist/views/Document/handleServerFunction.d.ts +25 -0
  253. package/dist/views/Document/handleServerFunction.d.ts.map +1 -0
  254. package/dist/views/Document/handleServerFunction.js +159 -0
  255. package/dist/views/Document/handleServerFunction.js.map +1 -0
  256. package/dist/views/Document/index.d.ts +5 -1
  257. package/dist/views/Document/index.d.ts.map +1 -1
  258. package/dist/views/Document/index.js +184 -73
  259. package/dist/views/Document/index.js.map +1 -1
  260. package/dist/views/Document/renderDocumentSlots.d.ts +12 -0
  261. package/dist/views/Document/renderDocumentSlots.d.ts.map +1 -0
  262. package/dist/views/Document/renderDocumentSlots.js +92 -0
  263. package/dist/views/Document/renderDocumentSlots.js.map +1 -0
  264. package/dist/views/Edit/index.d.ts +3 -2
  265. package/dist/views/Edit/index.d.ts.map +1 -1
  266. package/dist/views/Edit/index.js +7 -3
  267. package/dist/views/Edit/index.js.map +1 -1
  268. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
  269. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +5 -1
  270. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  271. package/dist/views/ForgotPassword/index.d.ts.map +1 -1
  272. package/dist/views/ForgotPassword/index.js +2 -0
  273. package/dist/views/ForgotPassword/index.js.map +1 -1
  274. package/dist/views/List/handleServerFunction.d.ts +27 -0
  275. package/dist/views/List/handleServerFunction.d.ts.map +1 -0
  276. package/dist/views/List/handleServerFunction.js +158 -0
  277. package/dist/views/List/handleServerFunction.js.map +1 -0
  278. package/dist/views/List/index.d.ts +12 -2
  279. package/dist/views/List/index.d.ts.map +1 -1
  280. package/dist/views/List/index.js +145 -85
  281. package/dist/views/List/index.js.map +1 -1
  282. package/dist/views/List/renderListViewSlots.d.ts +12 -0
  283. package/dist/views/List/renderListViewSlots.d.ts.map +1 -0
  284. package/dist/views/List/renderListViewSlots.js +56 -0
  285. package/dist/views/List/renderListViewSlots.js.map +1 -0
  286. package/dist/views/LivePreview/Context/sizeReducer.d.ts +1 -1
  287. package/dist/views/LivePreview/Context/sizeReducer.d.ts.map +1 -1
  288. package/dist/views/LivePreview/Context/sizeReducer.js +4 -4
  289. package/dist/views/LivePreview/Context/sizeReducer.js.map +1 -1
  290. package/dist/views/LivePreview/index.client.d.ts.map +1 -1
  291. package/dist/views/LivePreview/index.client.js +52 -42
  292. package/dist/views/LivePreview/index.client.js.map +1 -1
  293. package/dist/views/LivePreview/index.d.ts.map +1 -1
  294. package/dist/views/LivePreview/index.js +5 -36
  295. package/dist/views/LivePreview/index.js.map +1 -1
  296. package/dist/views/Login/LoginField/index.d.ts.map +1 -1
  297. package/dist/views/Login/LoginField/index.js +6 -1
  298. package/dist/views/Login/LoginField/index.js.map +1 -1
  299. package/dist/views/Login/LoginForm/index.d.ts.map +1 -1
  300. package/dist/views/Login/LoginForm/index.js +4 -2
  301. package/dist/views/Login/LoginForm/index.js.map +1 -1
  302. package/dist/views/Login/index.d.ts.map +1 -1
  303. package/dist/views/Login/index.js +26 -20
  304. package/dist/views/Login/index.js.map +1 -1
  305. package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
  306. package/dist/views/Logout/LogoutClient.js +79 -56
  307. package/dist/views/Logout/LogoutClient.js.map +1 -1
  308. package/dist/views/NotFound/index.d.ts.map +1 -1
  309. package/dist/views/NotFound/index.js +3 -0
  310. package/dist/views/NotFound/index.js.map +1 -1
  311. package/dist/views/ResetPassword/ResetPasswordForm/index.d.ts.map +1 -1
  312. package/dist/views/ResetPassword/ResetPasswordForm/index.js +13 -12
  313. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -1
  314. package/dist/views/ResetPassword/index.d.ts.map +1 -1
  315. package/dist/views/ResetPassword/index.js +2 -0
  316. package/dist/views/ResetPassword/index.js.map +1 -1
  317. package/dist/views/Root/getViewFromConfig.d.ts +3 -1
  318. package/dist/views/Root/getViewFromConfig.d.ts.map +1 -1
  319. package/dist/views/Root/getViewFromConfig.js +128 -7
  320. package/dist/views/Root/getViewFromConfig.js.map +1 -1
  321. package/dist/views/Root/index.d.ts.map +1 -1
  322. package/dist/views/Root/index.js +35 -15
  323. package/dist/views/Root/index.js.map +1 -1
  324. package/dist/views/Version/Default/index.d.ts.map +1 -1
  325. package/dist/views/Version/Default/index.js +3 -5
  326. package/dist/views/Version/Default/index.js.map +1 -1
  327. package/dist/views/Version/Default/types.d.ts +2 -2
  328. package/dist/views/Version/Default/types.d.ts.map +1 -1
  329. package/dist/views/Version/Default/types.js.map +1 -1
  330. package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts +4 -2
  331. package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts.map +1 -1
  332. package/dist/views/Version/RenderFieldsToDiff/fields/types.js.map +1 -1
  333. package/dist/views/Version/RenderFieldsToDiff/index.d.ts.map +1 -1
  334. package/dist/views/Version/RenderFieldsToDiff/index.js +3 -3
  335. package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
  336. package/dist/views/Version/RenderFieldsToDiff/types.d.ts +4 -2
  337. package/dist/views/Version/RenderFieldsToDiff/types.d.ts.map +1 -1
  338. package/dist/views/Version/RenderFieldsToDiff/types.js.map +1 -1
  339. package/dist/views/Version/Restore/index.js +1 -1
  340. package/dist/views/Version/Restore/index.js.map +1 -1
  341. package/dist/views/Version/index.d.ts.map +1 -1
  342. package/dist/views/Version/index.js.map +1 -1
  343. package/dist/views/Versions/buildColumns.d.ts +3 -2
  344. package/dist/views/Versions/buildColumns.d.ts.map +1 -1
  345. package/dist/views/Versions/buildColumns.js +33 -61
  346. package/dist/views/Versions/buildColumns.js.map +1 -1
  347. package/dist/views/Versions/cells/AutosaveCell/index.d.ts +7 -0
  348. package/dist/views/Versions/cells/AutosaveCell/index.d.ts.map +1 -1
  349. package/dist/views/Versions/cells/AutosaveCell/index.js +48 -37
  350. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  351. package/dist/views/Versions/cells/CreatedAt/index.d.ts +4 -0
  352. package/dist/views/Versions/cells/CreatedAt/index.d.ts.map +1 -1
  353. package/dist/views/Versions/cells/CreatedAt/index.js +43 -44
  354. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  355. package/dist/views/Versions/cells/ID/index.d.ts +3 -1
  356. package/dist/views/Versions/cells/ID/index.d.ts.map +1 -1
  357. package/dist/views/Versions/cells/ID/index.js +7 -19
  358. package/dist/views/Versions/cells/ID/index.js.map +1 -1
  359. package/dist/views/Versions/getLatestVersion.js +1 -1
  360. package/dist/views/Versions/getLatestVersion.js.map +1 -1
  361. package/dist/views/Versions/index.client.d.ts.map +1 -1
  362. package/dist/views/Versions/index.client.js +53 -51
  363. package/dist/views/Versions/index.client.js.map +1 -1
  364. package/dist/views/Versions/index.d.ts.map +1 -1
  365. package/dist/views/Versions/index.js +5 -6
  366. package/dist/views/Versions/index.js.map +1 -1
  367. package/dist/withPayload.d.ts.map +1 -1
  368. package/dist/withPayload.js +19 -1
  369. package/dist/withPayload.js.map +1 -1
  370. package/license.md +22 -0
  371. package/package.json +21 -14
  372. package/dist/cjs/withPayload.js +0 -111
  373. package/dist/cjs/withPayload.js.map +0 -1
  374. package/dist/elements/DocumentLocked/index.d.ts +0 -12
  375. package/dist/elements/DocumentLocked/index.d.ts.map +0 -1
  376. package/dist/elements/DocumentLocked/index.js +0 -142
  377. package/dist/elements/DocumentLocked/index.js.map +0 -1
  378. package/dist/elements/DocumentLocked/index.scss +0 -37
  379. package/dist/elements/DocumentTakeOver/index.d.ts +0 -8
  380. package/dist/elements/DocumentTakeOver/index.d.ts.map +0 -1
  381. package/dist/elements/DocumentTakeOver/index.js +0 -98
  382. package/dist/elements/DocumentTakeOver/index.js.map +0 -1
  383. package/dist/elements/DocumentTakeOver/index.scss +0 -37
  384. package/dist/elements/EmailAndUsername/index.d.ts +0 -14
  385. package/dist/elements/EmailAndUsername/index.d.ts.map +0 -1
  386. package/dist/elements/EmailAndUsername/index.js +0 -121
  387. package/dist/elements/EmailAndUsername/index.js.map +0 -1
  388. package/dist/elements/LeaveWithoutSaving/index.d.ts +0 -4
  389. package/dist/elements/LeaveWithoutSaving/index.d.ts.map +0 -1
  390. package/dist/elements/LeaveWithoutSaving/index.js +0 -162
  391. package/dist/elements/LeaveWithoutSaving/index.js.map +0 -1
  392. package/dist/elements/LeaveWithoutSaving/index.scss +0 -37
  393. package/dist/elements/LeaveWithoutSaving/usePreventLeave.d.ts +0 -9
  394. package/dist/elements/LeaveWithoutSaving/usePreventLeave.d.ts.map +0 -1
  395. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +0 -136
  396. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +0 -1
  397. package/dist/routes/rest/buildFormState.d.ts +0 -5
  398. package/dist/routes/rest/buildFormState.d.ts.map +0 -1
  399. package/dist/routes/rest/buildFormState.js +0 -46
  400. package/dist/routes/rest/buildFormState.js.map +0 -1
  401. package/dist/views/Edit/Default/Auth/APIKey.d.ts +0 -6
  402. package/dist/views/Edit/Default/Auth/APIKey.d.ts.map +0 -1
  403. package/dist/views/Edit/Default/Auth/APIKey.js +0 -131
  404. package/dist/views/Edit/Default/Auth/APIKey.js.map +0 -1
  405. package/dist/views/Edit/Default/Auth/index.d.ts +0 -5
  406. package/dist/views/Edit/Default/Auth/index.d.ts.map +0 -1
  407. package/dist/views/Edit/Default/Auth/index.js +0 -307
  408. package/dist/views/Edit/Default/Auth/index.js.map +0 -1
  409. package/dist/views/Edit/Default/Auth/index.scss +0 -78
  410. package/dist/views/Edit/Default/Auth/types.d.ts +0 -17
  411. package/dist/views/Edit/Default/Auth/types.d.ts.map +0 -1
  412. package/dist/views/Edit/Default/Auth/types.js +0 -2
  413. package/dist/views/Edit/Default/Auth/types.js.map +0 -1
  414. package/dist/views/Edit/Default/SetDocumentStepNav/index.d.ts +0 -11
  415. package/dist/views/Edit/Default/SetDocumentStepNav/index.d.ts.map +0 -1
  416. package/dist/views/Edit/Default/SetDocumentStepNav/index.js +0 -130
  417. package/dist/views/Edit/Default/SetDocumentStepNav/index.js.map +0 -1
  418. package/dist/views/Edit/Default/SetDocumentTitle/index.d.ts +0 -8
  419. package/dist/views/Edit/Default/SetDocumentTitle/index.d.ts.map +0 -1
  420. package/dist/views/Edit/Default/SetDocumentTitle/index.js +0 -81
  421. package/dist/views/Edit/Default/SetDocumentTitle/index.js.map +0 -1
  422. package/dist/views/Edit/Default/index.d.ts +0 -4
  423. package/dist/views/Edit/Default/index.d.ts.map +0 -1
  424. package/dist/views/Edit/Default/index.js +0 -342
  425. package/dist/views/Edit/Default/index.js.map +0 -1
  426. package/dist/views/Edit/Default/index.scss +0 -23
  427. package/dist/views/Edit/Default/types.d.ts +0 -6
  428. package/dist/views/Edit/Default/types.d.ts.map +0 -1
  429. package/dist/views/Edit/Default/types.js +0 -2
  430. package/dist/views/Edit/Default/types.js.map +0 -1
  431. package/dist/views/Edit/index.client.d.ts +0 -3
  432. package/dist/views/Edit/index.client.d.ts.map +0 -1
  433. package/dist/views/Edit/index.client.js +0 -54
  434. package/dist/views/Edit/index.client.js.map +0 -1
  435. package/dist/views/List/Default/index.d.ts +0 -4
  436. package/dist/views/List/Default/index.d.ts.map +0 -1
  437. package/dist/views/List/Default/index.js +0 -387
  438. package/dist/views/List/Default/index.js.map +0 -1
  439. package/dist/views/List/Default/index.scss +0 -179
  440. package/dist/views/List/Default/types.d.ts +0 -15
  441. package/dist/views/List/Default/types.d.ts.map +0 -1
  442. package/dist/views/List/Default/types.js +0 -2
  443. package/dist/views/List/Default/types.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"getPayloadHMR.d.ts","sourceRoot":"","sources":["../../src/utilities/getPayloadHMR.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAgBpE,eAAO,MAAM,MAAM,WACT,eAAe,WACd,OAAO,4BACU,OAAO,KAChC,OAAO,CAAC,IAAI,CA0Cd,CAAA;AAED,eAAO,MAAM,aAAa,YACf,IAAI,CAAC,WAAW,EAAE,QAAQ,GAAG,WAAW,CAAC,KACjD,OAAO,CAAC,OAAO,CAyEjB,CAAA"}
1
+ {"version":3,"file":"getPayloadHMR.d.ts","sourceRoot":"","sources":["../../src/utilities/getPayloadHMR.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAInD,eAAO,MAAM,aAAa,YACf,IAAI,CAAC,WAAW,EAAE,QAAQ,GAAG,WAAW,CAAC,KACjD,OAAO,CAAC,OAAO,CAQjB,CAAA"}
@@ -1,105 +1,7 @@
1
- import { BasePayload, generateImportMap } from 'payload';
2
- import WebSocket from 'ws';
3
- let cached = global._payload;
4
- if (!cached) {
5
- cached = global._payload = {
6
- payload: null,
7
- promise: null,
8
- reload: false,
9
- ws: null
10
- };
11
- }
12
- export const reload = async (config, payload, skipImportMapGeneration) => {
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
- // Generate types
29
- if (config.typescript.autoGenerate !== false) {
30
- // We cannot run it directly here, as generate-types imports json-schema-to-typescript, which breaks on turbopack.
31
- // see: https://github.com/vercel/next.js/issues/66723
32
- void payload.bin({
33
- args: ['generate:types'],
34
- log: false
35
- });
36
- }
37
- // Generate component map
38
- if (skipImportMapGeneration !== true && config.admin?.importMap?.autoGenerate !== false) {
39
- await generateImportMap(config, {
40
- log: true
41
- });
42
- }
43
- await payload.db.init();
44
- if (payload.db.connect) {
45
- await payload.db.connect({
46
- hotReload: true
47
- });
48
- }
49
- };
1
+ import { getPayload } from 'payload';
50
2
  export const getPayloadHMR = async options => {
51
- if (!options?.config) {
52
- throw new Error('Error: the payload config is required for getPayloadHMR to work.');
53
- }
54
- if (cached.payload) {
55
- if (cached.reload === true) {
56
- let resolve;
57
- // getPayloadHMR is called multiple times, in parallel. However, we only want to run `await reload` once. By immediately setting cached.reload to a promise,
58
- // we can ensure that all subsequent calls will wait for the first reload to finish. So if we set it here, the 2nd call of getPayloadHMR
59
- // will reach `if (cached.reload instanceof Promise) {` which then waits for the first reload to finish.
60
- cached.reload = new Promise(res => resolve = res);
61
- const config = await options.config;
62
- await reload(config, cached.payload);
63
- resolve();
64
- }
65
- if (cached.reload instanceof Promise) {
66
- await cached.reload;
67
- }
68
- if (options?.importMap) {
69
- cached.payload.importMap = options.importMap;
70
- }
71
- return cached.payload;
72
- }
73
- // eslint-disable-next-line @typescript-eslint/no-misused-promises
74
- if (!cached.promise) {
75
- // no need to await options.config here, as it's already awaited in the BasePayload.init
76
- cached.promise = new BasePayload().init(options);
77
- }
78
- try {
79
- cached.payload = await cached.promise;
80
- if (!cached.ws && process.env.NODE_ENV !== 'production' && process.env.NODE_ENV !== 'test' && process.env.DISABLE_PAYLOAD_HMR !== 'true') {
81
- try {
82
- const port = process.env.PORT || '3000';
83
- cached.ws = new WebSocket(`ws://localhost:${port}${process.env.NEXT_BASE_PATH ?? ''}/_next/webpack-hmr`);
84
- cached.ws.onmessage = event => {
85
- if (typeof event.data === 'string') {
86
- const data = JSON.parse(event.data);
87
- if ('action' in data && data.action === 'serverComponentChanges') {
88
- cached.reload = true;
89
- }
90
- }
91
- };
92
- } catch (_) {
93
- // swallow e
94
- }
95
- }
96
- } catch (e) {
97
- cached.promise = null;
98
- throw e;
99
- }
100
- if (options?.importMap) {
101
- cached.payload.importMap = options.importMap;
102
- }
103
- return cached.payload;
3
+ const result = await getPayload(options);
4
+ result.logger.error("Deprecation warning: getPayloadHMR is no longer preferred. You can now use `import { getPayload } from 'payload' in all contexts.");
5
+ return result;
104
6
  };
105
7
  //# sourceMappingURL=getPayloadHMR.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getPayloadHMR.js","names":["BasePayload","generateImportMap","WebSocket","cached","global","_payload","payload","promise","reload","ws","config","skipImportMapGeneration","db","destroy","collections","reduce","collection","slug","customIDType","globals","typescript","autoGenerate","bin","args","log","admin","importMap","init","connect","hotReload","getPayloadHMR","options","Error","resolve","Promise","res","process","env","NODE_ENV","DISABLE_PAYLOAD_HMR","port","PORT","NEXT_BASE_PATH","onmessage","event","data","JSON","parse","action","_","e"],"sources":["../../src/utilities/getPayloadHMR.ts"],"sourcesContent":["import type { InitOptions, Payload, SanitizedConfig } from 'payload'\n\nimport { BasePayload, generateImportMap } from 'payload'\nimport WebSocket from 'ws'\n\nlet cached: {\n payload: null | Payload\n promise: null | Promise<Payload>\n reload: boolean | Promise<void>\n ws: null | WebSocket\n} = global._payload\n\nif (!cached) {\n cached = global._payload = { payload: null, promise: null, reload: false, ws: null }\n}\n\nexport const reload = async (\n config: SanitizedConfig,\n payload: Payload,\n skipImportMapGeneration?: boolean,\n): 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 // Generate types\n if (config.typescript.autoGenerate !== false) {\n // We cannot run it directly here, as generate-types imports json-schema-to-typescript, which breaks on turbopack.\n // see: https://github.com/vercel/next.js/issues/66723\n void payload.bin({\n args: ['generate:types'],\n log: false,\n })\n }\n\n // Generate component map\n if (skipImportMapGeneration !== true && config.admin?.importMap?.autoGenerate !== false) {\n await generateImportMap(config, {\n log: true,\n })\n }\n\n await payload.db.init()\n if (payload.db.connect) {\n await payload.db.connect({ hotReload: true })\n }\n}\n\nexport const getPayloadHMR = async (\n options: Pick<InitOptions, 'config' | 'importMap'>,\n): Promise<Payload> => {\n if (!options?.config) {\n throw new Error('Error: the payload config is required for getPayloadHMR to work.')\n }\n\n if (cached.payload) {\n if (cached.reload === true) {\n let resolve: () => void\n\n // getPayloadHMR is called multiple times, in parallel. However, we only want to run `await reload` once. By immediately setting cached.reload to a promise,\n // we can ensure that all subsequent calls will wait for the first reload to finish. So if we set it here, the 2nd call of getPayloadHMR\n // will reach `if (cached.reload instanceof Promise) {` which then waits for the first reload to finish.\n cached.reload = new Promise((res) => (resolve = res))\n const config = await options.config\n await reload(config, cached.payload)\n\n resolve()\n }\n\n if (cached.reload instanceof Promise) {\n await cached.reload\n }\n\n if (options?.importMap) {\n cached.payload.importMap = options.importMap\n }\n return cached.payload\n }\n\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n if (!cached.promise) {\n // no need to await options.config here, as it's already awaited in the BasePayload.init\n cached.promise = new BasePayload().init(options)\n }\n\n try {\n cached.payload = await cached.promise\n\n if (\n !cached.ws &&\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 cached.ws = new WebSocket(\n `ws://localhost:${port}${process.env.NEXT_BASE_PATH ?? ''}/_next/webpack-hmr`,\n )\n\n cached.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 if (options?.importMap) {\n cached.payload.importMap = options.importMap\n }\n\n return cached.payload\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"getPayloadHMR.js","names":["getPayload","getPayloadHMR","options","result","logger","error"],"sources":["../../src/utilities/getPayloadHMR.ts"],"sourcesContent":["import type { InitOptions, Payload } from 'payload'\n\nimport { getPayload } from 'payload'\n\nexport const getPayloadHMR = async (\n options: Pick<InitOptions, 'config' | 'importMap'>,\n): Promise<Payload> => {\n const result = await getPayload(options)\n\n result.logger.error(\n \"Deprecation warning: getPayloadHMR is no longer preferred. You can now use `import { getPayload } from 'payload' in all contexts.\",\n )\n\n return result\n}\n"],"mappings":"AAEA,SAASA,UAAU,QAAQ;AAE3B,OAAO,MAAMC,aAAA,GAAgB,MAC3BC,OAAA;EAEA,MAAMC,MAAA,GAAS,MAAMH,UAAA,CAAWE,OAAA;EAEhCC,MAAA,CAAOC,MAAM,CAACC,KAAK,CACjB;EAGF,OAAOF,MAAA;AACT","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"getRequestLocales.d.ts","sourceRoot":"","sources":["../../src/utilities/getRequestLocales.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,KAAK,qBAAqB,GAAG;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC1B,YAAY,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,CAAA;IAC/D,YAAY,CAAC,EAAE,eAAe,CAAA;CAC/B,CAAA;AACD,wBAAgB,iBAAiB,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,EAAE,qBAAqB,GAAG;IAC9F,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;CACf,CA6BA"}
1
+ {"version":3,"file":"getRequestLocales.d.ts","sourceRoot":"","sources":["../../src/utilities/getRequestLocales.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAItC,KAAK,qBAAqB,GAAG;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC1B,YAAY,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,CAAA;IAC/D,YAAY,CAAC,EAAE,eAAe,CAAA;CAC/B,CAAA;AACD,wBAAgB,iBAAiB,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,EAAE,qBAAqB,GAAG;IAC9F,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;CACf,CAgCA"}
@@ -1,10 +1,11 @@
1
+ import { sanitizeFallbackLocale } from 'payload';
1
2
  export function getRequestLocales({
2
3
  data,
3
4
  localization,
4
5
  searchParams
5
6
  }) {
6
7
  let locale = searchParams.get('locale');
7
- let fallbackLocale = searchParams.get('fallback-locale');
8
+ let fallbackLocale = searchParams.get('fallback-locale') || searchParams.get('fallbackLocale');
8
9
  if (data) {
9
10
  if (data?.locale) {
10
11
  locale = data.locale;
@@ -12,12 +13,15 @@ export function getRequestLocales({
12
13
  if (data?.['fallback-locale']) {
13
14
  fallbackLocale = data['fallback-locale'];
14
15
  }
16
+ if (data?.['fallbackLocale']) {
17
+ fallbackLocale = data['fallbackLocale'];
18
+ }
15
19
  }
16
- if (fallbackLocale === 'none') {
17
- fallbackLocale = 'null';
18
- } else if (!localization.localeCodes.includes(fallbackLocale)) {
19
- fallbackLocale = localization.defaultLocale;
20
- }
20
+ fallbackLocale = sanitizeFallbackLocale({
21
+ fallbackLocale,
22
+ locale,
23
+ localization
24
+ });
21
25
  if (locale === '*') {
22
26
  locale = 'all';
23
27
  } else if (!localization.localeCodes.includes(locale)) {
@@ -1 +1 @@
1
- {"version":3,"file":"getRequestLocales.js","names":["getRequestLocales","data","localization","searchParams","locale","get","fallbackLocale","localeCodes","includes","defaultLocale"],"sources":["../../src/utilities/getRequestLocales.ts"],"sourcesContent":["import type { Payload } from 'payload'\n\ntype GetRequestLocalesArgs = {\n data?: Record<string, any>\n localization: Exclude<Payload['config']['localization'], false>\n searchParams?: URLSearchParams\n}\nexport function getRequestLocales({ data, localization, searchParams }: GetRequestLocalesArgs): {\n fallbackLocale: string\n locale: string\n} {\n let locale = searchParams.get('locale')\n let fallbackLocale = searchParams.get('fallback-locale')\n\n if (data) {\n if (data?.locale) {\n locale = data.locale\n }\n if (data?.['fallback-locale']) {\n fallbackLocale = data['fallback-locale']\n }\n }\n\n if (fallbackLocale === 'none') {\n fallbackLocale = 'null'\n } else if (!localization.localeCodes.includes(fallbackLocale)) {\n fallbackLocale = localization.defaultLocale\n }\n\n if (locale === '*') {\n locale = 'all'\n } else if (!localization.localeCodes.includes(locale)) {\n locale = localization.defaultLocale\n }\n\n return {\n fallbackLocale,\n locale,\n }\n}\n"],"mappings":"AAOA,OAAO,SAASA,kBAAkB;EAAEC,IAAI;EAAEC,YAAY;EAAEC;AAAY,CAAyB;EAI3F,IAAIC,MAAA,GAASD,YAAA,CAAaE,GAAG,CAAC;EAC9B,IAAIC,cAAA,GAAiBH,YAAA,CAAaE,GAAG,CAAC;EAEtC,IAAIJ,IAAA,EAAM;IACR,IAAIA,IAAA,EAAMG,MAAA,EAAQ;MAChBA,MAAA,GAASH,IAAA,CAAKG,MAAM;IACtB;IACA,IAAIH,IAAA,GAAO,kBAAkB,EAAE;MAC7BK,cAAA,GAAiBL,IAAI,CAAC,kBAAkB;IAC1C;EACF;EAEA,IAAIK,cAAA,KAAmB,QAAQ;IAC7BA,cAAA,GAAiB;EACnB,OAAO,IAAI,CAACJ,YAAA,CAAaK,WAAW,CAACC,QAAQ,CAACF,cAAA,GAAiB;IAC7DA,cAAA,GAAiBJ,YAAA,CAAaO,aAAa;EAC7C;EAEA,IAAIL,MAAA,KAAW,KAAK;IAClBA,MAAA,GAAS;EACX,OAAO,IAAI,CAACF,YAAA,CAAaK,WAAW,CAACC,QAAQ,CAACJ,MAAA,GAAS;IACrDA,MAAA,GAASF,YAAA,CAAaO,aAAa;EACrC;EAEA,OAAO;IACLH,cAAA;IACAF;EACF;AACF","ignoreList":[]}
1
+ {"version":3,"file":"getRequestLocales.js","names":["sanitizeFallbackLocale","getRequestLocales","data","localization","searchParams","locale","get","fallbackLocale","localeCodes","includes","defaultLocale"],"sources":["../../src/utilities/getRequestLocales.ts"],"sourcesContent":["import type { Payload } from 'payload'\n\nimport { sanitizeFallbackLocale } from 'payload'\n\ntype GetRequestLocalesArgs = {\n data?: Record<string, any>\n localization: Exclude<Payload['config']['localization'], false>\n searchParams?: URLSearchParams\n}\nexport function getRequestLocales({ data, localization, searchParams }: GetRequestLocalesArgs): {\n fallbackLocale: string\n locale: string\n} {\n let locale = searchParams.get('locale')\n let fallbackLocale = searchParams.get('fallback-locale') || searchParams.get('fallbackLocale')\n\n if (data) {\n if (data?.locale) {\n locale = data.locale\n }\n if (data?.['fallback-locale']) {\n fallbackLocale = data['fallback-locale']\n }\n if (data?.['fallbackLocale']) {\n fallbackLocale = data['fallbackLocale']\n }\n }\n\n fallbackLocale = sanitizeFallbackLocale({\n fallbackLocale,\n locale,\n localization,\n })\n\n if (locale === '*') {\n locale = 'all'\n } else if (!localization.localeCodes.includes(locale)) {\n locale = localization.defaultLocale\n }\n\n return {\n fallbackLocale,\n locale,\n }\n}\n"],"mappings":"AAEA,SAASA,sBAAsB,QAAQ;AAOvC,OAAO,SAASC,kBAAkB;EAAEC,IAAI;EAAEC,YAAY;EAAEC;AAAY,CAAyB;EAI3F,IAAIC,MAAA,GAASD,YAAA,CAAaE,GAAG,CAAC;EAC9B,IAAIC,cAAA,GAAiBH,YAAA,CAAaE,GAAG,CAAC,sBAAsBF,YAAA,CAAaE,GAAG,CAAC;EAE7E,IAAIJ,IAAA,EAAM;IACR,IAAIA,IAAA,EAAMG,MAAA,EAAQ;MAChBA,MAAA,GAASH,IAAA,CAAKG,MAAM;IACtB;IACA,IAAIH,IAAA,GAAO,kBAAkB,EAAE;MAC7BK,cAAA,GAAiBL,IAAI,CAAC,kBAAkB;IAC1C;IACA,IAAIA,IAAA,GAAO,iBAAiB,EAAE;MAC5BK,cAAA,GAAiBL,IAAI,CAAC,iBAAiB;IACzC;EACF;EAEAK,cAAA,GAAiBP,sBAAA,CAAuB;IACtCO,cAAA;IACAF,MAAA;IACAF;EACF;EAEA,IAAIE,MAAA,KAAW,KAAK;IAClBA,MAAA,GAAS;EACX,OAAO,IAAI,CAACF,YAAA,CAAaK,WAAW,CAACC,QAAQ,CAACJ,MAAA,GAAS;IACrDA,MAAA,GAASF,YAAA,CAAaO,aAAa;EACrC;EAEA,OAAO;IACLH,cAAA;IACAF;EACF;AACF","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ import type { ServerFunctionHandler } from 'payload';
2
+ export declare const handleServerFunctions: ServerFunctionHandler;
3
+ //# sourceMappingURL=handleServerFunctions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleServerFunctions.d.ts","sourceRoot":"","sources":["../../src/utilities/handleServerFunctions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkB,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAUpE,eAAO,MAAM,qBAAqB,EAAE,qBA0BnC,CAAA"}
@@ -0,0 +1,35 @@
1
+ import { buildFormStateHandler } from '@payloadcms/ui/utilities/buildFormState';
2
+ import { buildTableStateHandler } from '@payloadcms/ui/utilities/buildTableState';
3
+ import { renderDocumentHandler } from '../views/Document/handleServerFunction.js';
4
+ import { renderDocumentSlotsHandler } from '../views/Document/renderDocumentSlots.js';
5
+ import { renderListHandler } from '../views/List/handleServerFunction.js';
6
+ import { initReq } from './initReq.js';
7
+ export const handleServerFunctions = async args => {
8
+ const {
9
+ name: fnKey,
10
+ args: fnArgs,
11
+ config: configPromise,
12
+ importMap
13
+ } = args;
14
+ const {
15
+ req
16
+ } = await initReq(configPromise);
17
+ const augmentedArgs = {
18
+ ...fnArgs,
19
+ importMap,
20
+ req
21
+ };
22
+ const serverFunctions = {
23
+ 'form-state': buildFormStateHandler,
24
+ 'render-document': renderDocumentHandler,
25
+ 'render-document-slots': renderDocumentSlotsHandler,
26
+ 'render-list': renderListHandler,
27
+ 'table-state': buildTableStateHandler
28
+ };
29
+ const fn = serverFunctions[fnKey];
30
+ if (!fn) {
31
+ throw new Error(`Unknown Server Function: ${fnKey}`);
32
+ }
33
+ return fn(augmentedArgs);
34
+ };
35
+ //# sourceMappingURL=handleServerFunctions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleServerFunctions.js","names":["buildFormStateHandler","buildTableStateHandler","renderDocumentHandler","renderDocumentSlotsHandler","renderListHandler","initReq","handleServerFunctions","args","name","fnKey","fnArgs","config","configPromise","importMap","req","augmentedArgs","serverFunctions","fn","Error"],"sources":["../../src/utilities/handleServerFunctions.ts"],"sourcesContent":["import type { ServerFunction, ServerFunctionHandler } from 'payload'\n\nimport { buildFormStateHandler } from '@payloadcms/ui/utilities/buildFormState'\nimport { buildTableStateHandler } from '@payloadcms/ui/utilities/buildTableState'\n\nimport { renderDocumentHandler } from '../views/Document/handleServerFunction.js'\nimport { renderDocumentSlotsHandler } from '../views/Document/renderDocumentSlots.js'\nimport { renderListHandler } from '../views/List/handleServerFunction.js'\nimport { initReq } from './initReq.js'\n\nexport const handleServerFunctions: ServerFunctionHandler = async (args) => {\n const { name: fnKey, args: fnArgs, config: configPromise, importMap } = args\n\n const { req } = await initReq(configPromise)\n\n const augmentedArgs: Parameters<ServerFunction>[0] = {\n ...fnArgs,\n importMap,\n req,\n }\n\n const serverFunctions = {\n 'form-state': buildFormStateHandler as any as ServerFunction,\n 'render-document': renderDocumentHandler as any as ServerFunction,\n 'render-document-slots': renderDocumentSlotsHandler as any as ServerFunction,\n 'render-list': renderListHandler as any as ServerFunction,\n 'table-state': buildTableStateHandler as any as ServerFunction,\n }\n\n const fn = serverFunctions[fnKey]\n\n if (!fn) {\n throw new Error(`Unknown Server Function: ${fnKey}`)\n }\n\n return fn(augmentedArgs)\n}\n"],"mappings":"AAEA,SAASA,qBAAqB,QAAQ;AACtC,SAASC,sBAAsB,QAAQ;AAEvC,SAASC,qBAAqB,QAAQ;AACtC,SAASC,0BAA0B,QAAQ;AAC3C,SAASC,iBAAiB,QAAQ;AAClC,SAASC,OAAO,QAAQ;AAExB,OAAO,MAAMC,qBAAA,GAA+C,MAAOC,IAAA;EACjE,MAAM;IAAEC,IAAA,EAAMC,KAAK;IAAEF,IAAA,EAAMG,MAAM;IAAEC,MAAA,EAAQC,aAAa;IAAEC;EAAS,CAAE,GAAGN,IAAA;EAExE,MAAM;IAAEO;EAAG,CAAE,GAAG,MAAMT,OAAA,CAAQO,aAAA;EAE9B,MAAMG,aAAA,GAA+C;IACnD,GAAGL,MAAM;IACTG,SAAA;IACAC;EACF;EAEA,MAAME,eAAA,GAAkB;IACtB,cAAchB,qBAAA;IACd,mBAAmBE,qBAAA;IACnB,yBAAyBC,0BAAA;IACzB,eAAeC,iBAAA;IACf,eAAeH;EACjB;EAEA,MAAMgB,EAAA,GAAKD,eAAe,CAACP,KAAA,CAAM;EAEjC,IAAI,CAACQ,EAAA,EAAI;IACP,MAAM,IAAIC,KAAA,CAAM,4BAA4BT,KAAA,EAAO;EACrD;EAEA,OAAOQ,EAAA,CAAGF,aAAA;AACZ","ignoreList":[]}
@@ -1,16 +1,18 @@
1
- import type { SanitizedCollectionConfig, SanitizedConfig, SanitizedGlobalConfig } from 'payload';
1
+ import type { Payload, SanitizedCollectionConfig, SanitizedConfig, SanitizedGlobalConfig } from 'payload';
2
2
  type Args = {
3
3
  adminRoute: string;
4
4
  config: SanitizedConfig;
5
+ defaultIDType: Payload['db']['defaultIDType'];
6
+ payload?: Payload;
5
7
  route: string;
6
8
  };
7
9
  type RouteInfo = {
8
10
  collectionConfig?: SanitizedCollectionConfig;
9
11
  collectionSlug?: string;
10
- docID?: string;
12
+ docID?: number | string;
11
13
  globalConfig?: SanitizedGlobalConfig;
12
14
  globalSlug?: string;
13
15
  };
14
- export declare function getRouteInfo({ adminRoute, config, route }: Args): RouteInfo;
16
+ export declare function getRouteInfo({ adminRoute, config, defaultIDType, payload, route, }: Args): RouteInfo;
15
17
  export {};
16
18
  //# sourceMappingURL=handleAdminPage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"handleAdminPage.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/handleAdminPage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAIhG,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,eAAe,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AACD,KAAK,SAAS,GAAG;IACf,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,qBAAqB,CAAA;IACpC,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,wBAAgB,YAAY,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,IAAI,GAAG,SAAS,CA8B3E"}
1
+ {"version":3,"file":"handleAdminPage.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/handleAdminPage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,yBAAyB,EACzB,eAAe,EACf,qBAAqB,EACtB,MAAM,SAAS,CAAA;AAMhB,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,eAAe,CAAA;IACvB,aAAa,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,CAAA;IAC7C,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,KAAK,SAAS,GAAG;IACf,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,YAAY,CAAC,EAAE,qBAAqB,CAAA;IACpC,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,wBAAgB,YAAY,CAAC,EAC3B,UAAU,EACV,MAAM,EACN,aAAa,EACb,OAAO,EACP,KAAK,GACN,EAAE,IAAI,GAAG,SAAS,CA4ClB"}
@@ -2,6 +2,8 @@ import { getRouteWithoutAdmin, isAdminRoute } from './shared.js';
2
2
  export function getRouteInfo({
3
3
  adminRoute,
4
4
  config,
5
+ defaultIDType,
6
+ payload,
5
7
  route
6
8
  }) {
7
9
  if (isAdminRoute({
@@ -17,15 +19,22 @@ export function getRouteInfo({
17
19
  const [entityType, entitySlug, createOrID] = routeSegments;
18
20
  const collectionSlug = entityType === 'collections' ? entitySlug : undefined;
19
21
  const globalSlug = entityType === 'globals' ? entitySlug : undefined;
20
- const docID = collectionSlug && createOrID !== 'create' ? createOrID : undefined;
21
22
  let collectionConfig;
22
23
  let globalConfig;
24
+ let idType = defaultIDType;
23
25
  if (collectionSlug) {
24
26
  collectionConfig = config.collections.find(collection => collection.slug === collectionSlug);
25
27
  }
26
28
  if (globalSlug) {
27
29
  globalConfig = config.globals.find(global => global.slug === globalSlug);
28
30
  }
31
+ // If the collection has an ID field, we need to determine the type of the ID field
32
+ if (collectionConfig && payload) {
33
+ if (payload.collections?.[collectionSlug]) {
34
+ idType = payload.collections?.[collectionSlug].customIDType;
35
+ }
36
+ }
37
+ const docID = collectionSlug && createOrID !== 'create' ? idType === 'number' ? Number(createOrID) : createOrID : undefined;
29
38
  return {
30
39
  collectionConfig,
31
40
  collectionSlug,
@@ -1 +1 @@
1
- {"version":3,"file":"handleAdminPage.js","names":["getRouteWithoutAdmin","isAdminRoute","getRouteInfo","adminRoute","config","route","routeWithoutAdmin","routeSegments","split","filter","Boolean","entityType","entitySlug","createOrID","collectionSlug","undefined","globalSlug","docID","collectionConfig","globalConfig","collections","find","collection","slug","globals","global"],"sources":["../../../src/utilities/initPage/handleAdminPage.ts"],"sourcesContent":["import type { SanitizedCollectionConfig, SanitizedConfig, SanitizedGlobalConfig } from 'payload'\n\nimport { getRouteWithoutAdmin, isAdminRoute } from './shared.js'\n\ntype Args = {\n adminRoute: string\n config: SanitizedConfig\n route: string\n}\ntype RouteInfo = {\n collectionConfig?: SanitizedCollectionConfig\n collectionSlug?: string\n docID?: string\n globalConfig?: SanitizedGlobalConfig\n globalSlug?: string\n}\n\nexport function getRouteInfo({ adminRoute, config, route }: Args): RouteInfo {\n if (isAdminRoute({ adminRoute, config, route })) {\n const routeWithoutAdmin = getRouteWithoutAdmin({ adminRoute, route })\n const routeSegments = routeWithoutAdmin.split('/').filter(Boolean)\n const [entityType, entitySlug, createOrID] = routeSegments\n const collectionSlug = entityType === 'collections' ? entitySlug : undefined\n const globalSlug = entityType === 'globals' ? entitySlug : undefined\n const docID = collectionSlug && createOrID !== 'create' ? createOrID : undefined\n\n let collectionConfig: SanitizedCollectionConfig | undefined\n let globalConfig: SanitizedGlobalConfig | undefined\n\n if (collectionSlug) {\n collectionConfig = config.collections.find((collection) => collection.slug === collectionSlug)\n }\n\n if (globalSlug) {\n globalConfig = config.globals.find((global) => global.slug === globalSlug)\n }\n\n return {\n collectionConfig,\n collectionSlug,\n docID,\n globalConfig,\n globalSlug,\n }\n }\n\n return {}\n}\n"],"mappings":"AAEA,SAASA,oBAAoB,EAAEC,YAAY,QAAQ;AAenD,OAAO,SAASC,aAAa;EAAEC,UAAU;EAAEC,MAAM;EAAEC;AAAK,CAAQ;EAC9D,IAAIJ,YAAA,CAAa;IAAEE,UAAA;IAAYC,MAAA;IAAQC;EAAM,IAAI;IAC/C,MAAMC,iBAAA,GAAoBN,oBAAA,CAAqB;MAAEG,UAAA;MAAYE;IAAM;IACnE,MAAME,aAAA,GAAgBD,iBAAA,CAAkBE,KAAK,CAAC,KAAKC,MAAM,CAACC,OAAA;IAC1D,MAAM,CAACC,UAAA,EAAYC,UAAA,EAAYC,UAAA,CAAW,GAAGN,aAAA;IAC7C,MAAMO,cAAA,GAAiBH,UAAA,KAAe,gBAAgBC,UAAA,GAAaG,SAAA;IACnE,MAAMC,UAAA,GAAaL,UAAA,KAAe,YAAYC,UAAA,GAAaG,SAAA;IAC3D,MAAME,KAAA,GAAQH,cAAA,IAAkBD,UAAA,KAAe,WAAWA,UAAA,GAAaE,SAAA;IAEvE,IAAIG,gBAAA;IACJ,IAAIC,YAAA;IAEJ,IAAIL,cAAA,EAAgB;MAClBI,gBAAA,GAAmBd,MAAA,CAAOgB,WAAW,CAACC,IAAI,CAAEC,UAAA,IAAeA,UAAA,CAAWC,IAAI,KAAKT,cAAA;IACjF;IAEA,IAAIE,UAAA,EAAY;MACdG,YAAA,GAAef,MAAA,CAAOoB,OAAO,CAACH,IAAI,CAAEI,MAAA,IAAWA,MAAA,CAAOF,IAAI,KAAKP,UAAA;IACjE;IAEA,OAAO;MACLE,gBAAA;MACAJ,cAAA;MACAG,KAAA;MACAE,YAAA;MACAH;IACF;EACF;EAEA,OAAO,CAAC;AACV","ignoreList":[]}
1
+ {"version":3,"file":"handleAdminPage.js","names":["getRouteWithoutAdmin","isAdminRoute","getRouteInfo","adminRoute","config","defaultIDType","payload","route","routeWithoutAdmin","routeSegments","split","filter","Boolean","entityType","entitySlug","createOrID","collectionSlug","undefined","globalSlug","collectionConfig","globalConfig","idType","collections","find","collection","slug","globals","global","customIDType","docID","Number"],"sources":["../../../src/utilities/initPage/handleAdminPage.ts"],"sourcesContent":["import type {\n Payload,\n SanitizedCollectionConfig,\n SanitizedConfig,\n SanitizedGlobalConfig,\n} from 'payload'\n\nimport { fieldAffectsData } from 'payload/shared'\n\nimport { getRouteWithoutAdmin, isAdminRoute } from './shared.js'\n\ntype Args = {\n adminRoute: string\n config: SanitizedConfig\n defaultIDType: Payload['db']['defaultIDType']\n payload?: Payload\n route: string\n}\n\ntype RouteInfo = {\n collectionConfig?: SanitizedCollectionConfig\n collectionSlug?: string\n docID?: number | string\n globalConfig?: SanitizedGlobalConfig\n globalSlug?: string\n}\n\nexport function getRouteInfo({\n adminRoute,\n config,\n defaultIDType,\n payload,\n route,\n}: Args): RouteInfo {\n if (isAdminRoute({ adminRoute, config, route })) {\n const routeWithoutAdmin = getRouteWithoutAdmin({ adminRoute, route })\n const routeSegments = routeWithoutAdmin.split('/').filter(Boolean)\n const [entityType, entitySlug, createOrID] = routeSegments\n const collectionSlug = entityType === 'collections' ? entitySlug : undefined\n const globalSlug = entityType === 'globals' ? entitySlug : undefined\n\n let collectionConfig: SanitizedCollectionConfig | undefined\n let globalConfig: SanitizedGlobalConfig | undefined\n let idType = defaultIDType\n\n if (collectionSlug) {\n collectionConfig = config.collections.find((collection) => collection.slug === collectionSlug)\n }\n\n if (globalSlug) {\n globalConfig = config.globals.find((global) => global.slug === globalSlug)\n }\n\n // If the collection has an ID field, we need to determine the type of the ID field\n if (collectionConfig && payload) {\n if (payload.collections?.[collectionSlug]) {\n idType = payload.collections?.[collectionSlug].customIDType\n }\n }\n\n const docID =\n collectionSlug && createOrID !== 'create'\n ? idType === 'number'\n ? Number(createOrID)\n : createOrID\n : undefined\n\n return {\n collectionConfig,\n collectionSlug,\n docID,\n globalConfig,\n globalSlug,\n }\n }\n\n return {}\n}\n"],"mappings":"AASA,SAASA,oBAAoB,EAAEC,YAAY,QAAQ;AAkBnD,OAAO,SAASC,aAAa;EAC3BC,UAAU;EACVC,MAAM;EACNC,aAAa;EACbC,OAAO;EACPC;AAAK,CACA;EACL,IAAIN,YAAA,CAAa;IAAEE,UAAA;IAAYC,MAAA;IAAQG;EAAM,IAAI;IAC/C,MAAMC,iBAAA,GAAoBR,oBAAA,CAAqB;MAAEG,UAAA;MAAYI;IAAM;IACnE,MAAME,aAAA,GAAgBD,iBAAA,CAAkBE,KAAK,CAAC,KAAKC,MAAM,CAACC,OAAA;IAC1D,MAAM,CAACC,UAAA,EAAYC,UAAA,EAAYC,UAAA,CAAW,GAAGN,aAAA;IAC7C,MAAMO,cAAA,GAAiBH,UAAA,KAAe,gBAAgBC,UAAA,GAAaG,SAAA;IACnE,MAAMC,UAAA,GAAaL,UAAA,KAAe,YAAYC,UAAA,GAAaG,SAAA;IAE3D,IAAIE,gBAAA;IACJ,IAAIC,YAAA;IACJ,IAAIC,MAAA,GAAShB,aAAA;IAEb,IAAIW,cAAA,EAAgB;MAClBG,gBAAA,GAAmBf,MAAA,CAAOkB,WAAW,CAACC,IAAI,CAAEC,UAAA,IAAeA,UAAA,CAAWC,IAAI,KAAKT,cAAA;IACjF;IAEA,IAAIE,UAAA,EAAY;MACdE,YAAA,GAAehB,MAAA,CAAOsB,OAAO,CAACH,IAAI,CAAEI,MAAA,IAAWA,MAAA,CAAOF,IAAI,KAAKP,UAAA;IACjE;IAEA;IACA,IAAIC,gBAAA,IAAoBb,OAAA,EAAS;MAC/B,IAAIA,OAAA,CAAQgB,WAAW,GAAGN,cAAA,CAAe,EAAE;QACzCK,MAAA,GAASf,OAAA,CAAQgB,WAAW,GAAGN,cAAA,CAAe,CAACY,YAAA;MACjD;IACF;IAEA,MAAMC,KAAA,GACJb,cAAA,IAAkBD,UAAA,KAAe,WAC7BM,MAAA,KAAW,WACTS,MAAA,CAAOf,UAAA,IACPA,UAAA,GACFE,SAAA;IAEN,OAAO;MACLE,gBAAA;MACAH,cAAA;MACAa,KAAA;MACAT,YAAA;MACAF;IACF;EACF;EAEA,OAAO,CAAC;AACV","ignoreList":[]}
@@ -20,9 +20,9 @@ export const handleAuthRedirect = ({
20
20
  if (searchParams && 'redirect' in searchParams) {
21
21
  delete searchParams.redirect;
22
22
  }
23
- const redirectRoute = encodeURIComponent(route + Object.keys(searchParams ?? {}).length ? `${qs.stringify(searchParams, {
23
+ const redirectRoute = (route !== adminRoute ? route : '') + (Object.keys(searchParams ?? {}).length > 0 ? `${qs.stringify(searchParams, {
24
24
  addQueryPrefix: true
25
- })}` : undefined);
25
+ })}` : '');
26
26
  const redirectTo = formatAdminURL({
27
27
  adminRoute,
28
28
  path: user ? unauthorizedRoute : loginRouteFromConfig
@@ -1 +1 @@
1
- {"version":3,"file":"handleAuthRedirect.js","names":["formatAdminURL","qs","handleAuthRedirect","config","route","searchParams","user","admin","routes","login","loginRouteFromConfig","unauthorized","unauthorizedRoute","adminRoute","redirect","redirectRoute","encodeURIComponent","Object","keys","length","stringify","addQueryPrefix","undefined","redirectTo","path","parsedLoginRouteSearchParams","parse","split","searchParamsWithRedirect"],"sources":["../../../src/utilities/initPage/handleAuthRedirect.ts"],"sourcesContent":["import type { User } from 'payload'\n\nimport { formatAdminURL } from '@payloadcms/ui/shared'\nimport * as qs from 'qs-esm'\n\ntype Args = {\n config\n route: string\n searchParams: { [key: string]: string | string[] }\n user?: User\n}\nexport const handleAuthRedirect = ({ config, route, searchParams, user }: Args): string => {\n const {\n admin: {\n routes: { login: loginRouteFromConfig, unauthorized: unauthorizedRoute },\n },\n routes: { admin: adminRoute },\n } = config\n\n if (searchParams && 'redirect' in searchParams) {\n delete searchParams.redirect\n }\n\n const redirectRoute = encodeURIComponent(\n route + Object.keys(searchParams ?? {}).length\n ? `${qs.stringify(searchParams, { addQueryPrefix: true })}`\n : undefined,\n )\n\n const redirectTo = formatAdminURL({\n adminRoute,\n path: user ? unauthorizedRoute : loginRouteFromConfig,\n })\n\n const parsedLoginRouteSearchParams = qs.parse(redirectTo.split('?')[1] ?? '')\n\n const searchParamsWithRedirect = `${qs.stringify(\n {\n ...parsedLoginRouteSearchParams,\n ...(redirectRoute ? { redirect: redirectRoute } : {}),\n },\n { addQueryPrefix: true },\n )}`\n\n return `${redirectTo.split('?')[0]}${searchParamsWithRedirect}`\n}\n"],"mappings":"AAEA,SAASA,cAAc,QAAQ;AAC/B,YAAYC,EAAA,MAAQ;AAQpB,OAAO,MAAMC,kBAAA,GAAqBA,CAAC;EAAEC,MAAM;EAAEC,KAAK;EAAEC,YAAY;EAAEC;AAAI,CAAQ;EAC5E,MAAM;IACJC,KAAA,EAAO;MACLC,MAAA,EAAQ;QAAEC,KAAA,EAAOC,oBAAoB;QAAEC,YAAA,EAAcC;MAAiB;IAAE,CACzE;IACDJ,MAAA,EAAQ;MAAED,KAAA,EAAOM;IAAU;EAAE,CAC9B,GAAGV,MAAA;EAEJ,IAAIE,YAAA,IAAgB,cAAcA,YAAA,EAAc;IAC9C,OAAOA,YAAA,CAAaS,QAAQ;EAC9B;EAEA,MAAMC,aAAA,GAAgBC,kBAAA,CACpBZ,KAAA,GAAQa,MAAA,CAAOC,IAAI,CAACb,YAAA,IAAgB,CAAC,GAAGc,MAAM,GAC1C,GAAGlB,EAAA,CAAGmB,SAAS,CAACf,YAAA,EAAc;IAAEgB,cAAA,EAAgB;EAAK,IAAI,GACzDC,SAAA;EAGN,MAAMC,UAAA,GAAavB,cAAA,CAAe;IAChCa,UAAA;IACAW,IAAA,EAAMlB,IAAA,GAAOM,iBAAA,GAAoBF;EACnC;EAEA,MAAMe,4BAAA,GAA+BxB,EAAA,CAAGyB,KAAK,CAACH,UAAA,CAAWI,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI;EAE1E,MAAMC,wBAAA,GAA2B,GAAG3B,EAAA,CAAGmB,SAAS,CAC9C;IACE,GAAGK,4BAA4B;IAC/B,IAAIV,aAAA,GAAgB;MAAED,QAAA,EAAUC;IAAc,IAAI,CAAC,CAAC;EACtD,GACA;IAAEM,cAAA,EAAgB;EAAK,IACtB;EAEH,OAAO,GAAGE,UAAA,CAAWI,KAAK,CAAC,IAAI,CAAC,EAAE,GAAGC,wBAAA,EAA0B;AACjE","ignoreList":[]}
1
+ {"version":3,"file":"handleAuthRedirect.js","names":["formatAdminURL","qs","handleAuthRedirect","config","route","searchParams","user","admin","routes","login","loginRouteFromConfig","unauthorized","unauthorizedRoute","adminRoute","redirect","redirectRoute","Object","keys","length","stringify","addQueryPrefix","redirectTo","path","parsedLoginRouteSearchParams","parse","split","searchParamsWithRedirect"],"sources":["../../../src/utilities/initPage/handleAuthRedirect.ts"],"sourcesContent":["import type { User } from 'payload'\n\nimport { formatAdminURL } from '@payloadcms/ui/shared'\nimport * as qs from 'qs-esm'\n\ntype Args = {\n config\n route: string\n searchParams: { [key: string]: string | string[] }\n user?: User\n}\nexport const handleAuthRedirect = ({ config, route, searchParams, user }: Args): string => {\n const {\n admin: {\n routes: { login: loginRouteFromConfig, unauthorized: unauthorizedRoute },\n },\n routes: { admin: adminRoute },\n } = config\n\n if (searchParams && 'redirect' in searchParams) {\n delete searchParams.redirect\n }\n\n const redirectRoute =\n (route !== adminRoute ? route : '') +\n (Object.keys(searchParams ?? {}).length > 0\n ? `${qs.stringify(searchParams, { addQueryPrefix: true })}`\n : '')\n\n const redirectTo = formatAdminURL({\n adminRoute,\n path: user ? unauthorizedRoute : loginRouteFromConfig,\n })\n\n const parsedLoginRouteSearchParams = qs.parse(redirectTo.split('?')[1] ?? '')\n\n const searchParamsWithRedirect = `${qs.stringify(\n {\n ...parsedLoginRouteSearchParams,\n ...(redirectRoute ? { redirect: redirectRoute } : {}),\n },\n { addQueryPrefix: true },\n )}`\n\n return `${redirectTo.split('?')[0]}${searchParamsWithRedirect}`\n}\n"],"mappings":"AAEA,SAASA,cAAc,QAAQ;AAC/B,YAAYC,EAAA,MAAQ;AAQpB,OAAO,MAAMC,kBAAA,GAAqBA,CAAC;EAAEC,MAAM;EAAEC,KAAK;EAAEC,YAAY;EAAEC;AAAI,CAAQ;EAC5E,MAAM;IACJC,KAAA,EAAO;MACLC,MAAA,EAAQ;QAAEC,KAAA,EAAOC,oBAAoB;QAAEC,YAAA,EAAcC;MAAiB;IAAE,CACzE;IACDJ,MAAA,EAAQ;MAAED,KAAA,EAAOM;IAAU;EAAE,CAC9B,GAAGV,MAAA;EAEJ,IAAIE,YAAA,IAAgB,cAAcA,YAAA,EAAc;IAC9C,OAAOA,YAAA,CAAaS,QAAQ;EAC9B;EAEA,MAAMC,aAAA,GACJ,CAACX,KAAA,KAAUS,UAAA,GAAaT,KAAA,GAAQ,EAAC,KAChCY,MAAA,CAAOC,IAAI,CAACZ,YAAA,IAAgB,CAAC,GAAGa,MAAM,GAAG,IACtC,GAAGjB,EAAA,CAAGkB,SAAS,CAACd,YAAA,EAAc;IAAEe,cAAA,EAAgB;EAAK,IAAI,GACzD,EAAC;EAEP,MAAMC,UAAA,GAAarB,cAAA,CAAe;IAChCa,UAAA;IACAS,IAAA,EAAMhB,IAAA,GAAOM,iBAAA,GAAoBF;EACnC;EAEA,MAAMa,4BAAA,GAA+BtB,EAAA,CAAGuB,KAAK,CAACH,UAAA,CAAWI,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI;EAE1E,MAAMC,wBAAA,GAA2B,GAAGzB,EAAA,CAAGkB,SAAS,CAC9C;IACE,GAAGI,4BAA4B;IAC/B,IAAIR,aAAA,GAAgB;MAAED,QAAA,EAAUC;IAAc,IAAI,CAAC,CAAC;EACtD,GACA;IAAEK,cAAA,EAAgB;EAAK,IACtB;EAEH,OAAO,GAAGC,UAAA,CAAWI,KAAK,CAAC,IAAI,CAAC,EAAE,GAAGC,wBAAA,EAA0B;AACjE","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAA2C,MAAM,SAAS,CAAA;AAQtF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAQtC,eAAO,MAAM,QAAQ,+DAKlB,IAAI,KAAG,OAAO,CAAC,cAAc,CAmJ/B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAA2B,MAAM,SAAS,CAAA;AAQtE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAQtC,eAAO,MAAM,QAAQ,+DAKlB,IAAI,KAAG,OAAO,CAAC,cAAc,CAsJ/B,CAAA"}
@@ -1,12 +1,12 @@
1
1
  import { findLocaleFromCode } from '@payloadcms/ui/shared';
2
2
  import { headers as getHeaders } from 'next/headers.js';
3
3
  import { notFound } from 'next/navigation.js';
4
- import { createLocalReq, isEntityHidden, parseCookies } from 'payload';
4
+ import { createLocalReq, getPayload, isEntityHidden, parseCookies } from 'payload';
5
5
  import * as qs from 'qs-esm';
6
- import { getPayloadHMR } from '../getPayloadHMR.js';
7
6
  import { initReq } from '../initReq.js';
8
7
  import { getRouteInfo } from './handleAdminPage.js';
9
8
  import { handleAuthRedirect } from './handleAuthRedirect.js';
9
+ import { isCustomAdminView } from './isCustomAdminView.js';
10
10
  import { isPublicAdminRoute } from './shared.js';
11
11
  export const initPage = async ({
12
12
  config: configPromise,
@@ -15,7 +15,7 @@ export const initPage = async ({
15
15
  searchParams
16
16
  }) => {
17
17
  const headers = await getHeaders();
18
- const payload = await getPayloadHMR({
18
+ const payload = await getPayload({
19
19
  config: configPromise,
20
20
  importMap
21
21
  });
@@ -41,11 +41,11 @@ export const initPage = async ({
41
41
  // We just need to -overwrite- the url and query of the req
42
42
  // we get above. Clone the req? We'll look into that eventually.
43
43
  const req = await createLocalReq({
44
- fallbackLocale: null,
44
+ fallbackLocale: false,
45
45
  req: {
46
46
  headers,
47
47
  host: headers.get('host'),
48
- i18n,
48
+ i18n: i18n,
49
49
  query: qs.parse(queryString, {
50
50
  depth: 10,
51
51
  ignoreQueryPrefix: true
@@ -124,6 +124,10 @@ export const initPage = async ({
124
124
  adminRoute,
125
125
  config: payload.config,
126
126
  route
127
+ }) && !isCustomAdminView({
128
+ adminRoute,
129
+ config: payload.config,
130
+ route
127
131
  })) {
128
132
  redirectTo = handleAuthRedirect({
129
133
  config: payload.config,
@@ -141,6 +145,8 @@ export const initPage = async ({
141
145
  } = getRouteInfo({
142
146
  adminRoute,
143
147
  config: payload.config,
148
+ defaultIDType: payload.db.defaultIDType,
149
+ payload,
144
150
  route
145
151
  });
146
152
  if (collectionSlug && !collectionConfig || globalSlug && !globalConfig) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["findLocaleFromCode","headers","getHeaders","notFound","createLocalReq","isEntityHidden","parseCookies","qs","getPayloadHMR","initReq","getRouteInfo","handleAuthRedirect","isPublicAdminRoute","initPage","config","configPromise","importMap","route","searchParams","payload","queryString","stringify","addQueryPrefix","collections","globals","localization","routes","admin","adminRoute","cookies","i18n","permissions","user","req","fallbackLocale","host","get","query","parse","depth","ignoreQueryPrefix","url","serverURL","languageOptions","Object","entries","supportedLanguages","reduce","acc","language","languageConfig","keys","includes","push","label","translations","general","thisLanguage","value","localeParam","locale","defaultLocaleCode","defaultLocale","localeCode","find","collection","limit","where","and","equals","id","key","then","res","docs","error","code","visibleEntities","map","slug","hidden","filter","Boolean","redirectTo","canAccessAdmin","collectionConfig","collectionSlug","docID","globalConfig","globalSlug"],"sources":["../../../src/utilities/initPage/index.ts"],"sourcesContent":["import type { InitPageResult, Locale, PayloadRequest, VisibleEntities } from 'payload'\n\nimport { findLocaleFromCode } from '@payloadcms/ui/shared'\nimport { headers as getHeaders } from 'next/headers.js'\nimport { notFound } from 'next/navigation.js'\nimport { createLocalReq, isEntityHidden, parseCookies } from 'payload'\nimport * as qs from 'qs-esm'\n\nimport type { Args } from './types.js'\n\nimport { getPayloadHMR } from '../getPayloadHMR.js'\nimport { initReq } from '../initReq.js'\nimport { getRouteInfo } from './handleAdminPage.js'\nimport { handleAuthRedirect } from './handleAuthRedirect.js'\nimport { isPublicAdminRoute } from './shared.js'\n\nexport const initPage = async ({\n config: configPromise,\n importMap,\n route,\n searchParams,\n}: Args): Promise<InitPageResult> => {\n const headers = await getHeaders()\n const payload = await getPayloadHMR({ config: configPromise, importMap })\n const queryString = `${qs.stringify(searchParams ?? {}, { addQueryPrefix: true })}`\n\n const {\n collections,\n globals,\n localization,\n routes: { admin: adminRoute },\n } = payload.config\n\n const cookies = parseCookies(headers)\n\n const { i18n, permissions, user } = await initReq(payload.config)\n\n // Ideally, we should not need to recreate the req, because\n // we can get it from the above initReq.\n\n // We just need to -overwrite- the url and query of the req\n // we get above. Clone the req? We'll look into that eventually.\n const req = await createLocalReq(\n {\n fallbackLocale: null,\n req: {\n headers,\n host: headers.get('host'),\n i18n,\n query: qs.parse(queryString, {\n depth: 10,\n ignoreQueryPrefix: true,\n }),\n url: `${payload.config.serverURL}${route}${searchParams ? queryString : ''}`,\n } as PayloadRequest,\n },\n payload,\n )\n\n const languageOptions = Object.entries(payload.config.i18n.supportedLanguages || {}).reduce(\n (acc, [language, languageConfig]) => {\n if (Object.keys(payload.config.i18n.supportedLanguages).includes(language)) {\n acc.push({\n label: languageConfig.translations.general.thisLanguage,\n value: language,\n })\n }\n\n return acc\n },\n [],\n )\n\n req.user = user\n\n const localeParam = searchParams?.locale as string\n let locale: Locale\n\n if (localization) {\n const defaultLocaleCode = localization.defaultLocale ? localization.defaultLocale : 'en'\n let localeCode: string = localeParam\n\n if (!localeCode) {\n try {\n localeCode = await payload\n .find({\n collection: 'payload-preferences',\n depth: 0,\n limit: 1,\n user,\n where: {\n and: [\n {\n 'user.relationTo': {\n equals: payload.config.admin.user,\n },\n },\n {\n 'user.value': {\n equals: user.id,\n },\n },\n {\n key: {\n equals: 'locale',\n },\n },\n ],\n },\n })\n ?.then((res) => res.docs?.[0]?.value as string)\n } catch (error) {} // eslint-disable-line no-empty\n }\n\n locale = findLocaleFromCode(localization, localeCode)\n\n if (!locale) {\n locale = findLocaleFromCode(localization, defaultLocaleCode)\n }\n req.locale = locale.code\n }\n\n const visibleEntities: VisibleEntities = {\n collections: collections\n .map(({ slug, admin: { hidden } }) => (!isEntityHidden({ hidden, user }) ? slug : null))\n .filter(Boolean),\n globals: globals\n .map(({ slug, admin: { hidden } }) => (!isEntityHidden({ hidden, user }) ? slug : null))\n .filter(Boolean),\n }\n\n let redirectTo = null\n\n if (\n !permissions.canAccessAdmin &&\n !isPublicAdminRoute({ adminRoute, config: payload.config, route })\n ) {\n redirectTo = handleAuthRedirect({\n config: payload.config,\n route,\n searchParams,\n user,\n })\n }\n\n const { collectionConfig, collectionSlug, docID, globalConfig, globalSlug } = getRouteInfo({\n adminRoute,\n config: payload.config,\n route,\n })\n\n if ((collectionSlug && !collectionConfig) || (globalSlug && !globalConfig)) {\n return notFound()\n }\n\n return {\n collectionConfig,\n cookies,\n docID,\n globalConfig,\n languageOptions,\n locale,\n permissions,\n redirectTo,\n req,\n translations: i18n.translations,\n visibleEntities,\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["findLocaleFromCode","headers","getHeaders","notFound","createLocalReq","getPayload","isEntityHidden","parseCookies","qs","initReq","getRouteInfo","handleAuthRedirect","isCustomAdminView","isPublicAdminRoute","initPage","config","configPromise","importMap","route","searchParams","payload","queryString","stringify","addQueryPrefix","collections","globals","localization","routes","admin","adminRoute","cookies","i18n","permissions","user","req","fallbackLocale","host","get","query","parse","depth","ignoreQueryPrefix","url","serverURL","languageOptions","Object","entries","supportedLanguages","reduce","acc","language","languageConfig","keys","includes","push","label","translations","general","thisLanguage","value","localeParam","locale","defaultLocaleCode","defaultLocale","localeCode","find","collection","limit","where","and","equals","id","key","then","res","docs","error","code","visibleEntities","map","slug","hidden","filter","Boolean","redirectTo","canAccessAdmin","collectionConfig","collectionSlug","docID","globalConfig","globalSlug","defaultIDType","db"],"sources":["../../../src/utilities/initPage/index.ts"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { InitPageResult, Locale, VisibleEntities } from 'payload'\n\nimport { findLocaleFromCode } from '@payloadcms/ui/shared'\nimport { headers as getHeaders } from 'next/headers.js'\nimport { notFound } from 'next/navigation.js'\nimport { createLocalReq, getPayload, isEntityHidden, parseCookies } from 'payload'\nimport * as qs from 'qs-esm'\n\nimport type { Args } from './types.js'\n\nimport { initReq } from '../initReq.js'\nimport { getRouteInfo } from './handleAdminPage.js'\nimport { handleAuthRedirect } from './handleAuthRedirect.js'\nimport { isCustomAdminView } from './isCustomAdminView.js'\nimport { isPublicAdminRoute } from './shared.js'\n\nexport const initPage = async ({\n config: configPromise,\n importMap,\n route,\n searchParams,\n}: Args): Promise<InitPageResult> => {\n const headers = await getHeaders()\n const payload = await getPayload({ config: configPromise, importMap })\n const queryString = `${qs.stringify(searchParams ?? {}, { addQueryPrefix: true })}`\n\n const {\n collections,\n globals,\n localization,\n routes: { admin: adminRoute },\n } = payload.config\n\n const cookies = parseCookies(headers)\n\n const { i18n, permissions, user } = await initReq(payload.config)\n\n // Ideally, we should not need to recreate the req, because\n // we can get it from the above initReq.\n\n // We just need to -overwrite- the url and query of the req\n // we get above. Clone the req? We'll look into that eventually.\n const req = await createLocalReq(\n {\n fallbackLocale: false,\n req: {\n headers,\n host: headers.get('host'),\n i18n: i18n as I18n,\n query: qs.parse(queryString, {\n depth: 10,\n ignoreQueryPrefix: true,\n }),\n url: `${payload.config.serverURL}${route}${searchParams ? queryString : ''}`,\n },\n },\n payload,\n )\n\n const languageOptions = Object.entries(payload.config.i18n.supportedLanguages || {}).reduce(\n (acc, [language, languageConfig]) => {\n if (Object.keys(payload.config.i18n.supportedLanguages).includes(language)) {\n acc.push({\n label: languageConfig.translations.general.thisLanguage,\n value: language,\n })\n }\n\n return acc\n },\n [],\n )\n\n req.user = user\n\n const localeParam = searchParams?.locale as string\n let locale: Locale\n\n if (localization) {\n const defaultLocaleCode = localization.defaultLocale ? localization.defaultLocale : 'en'\n let localeCode: string = localeParam\n\n if (!localeCode) {\n try {\n localeCode = await payload\n .find({\n collection: 'payload-preferences',\n depth: 0,\n limit: 1,\n user,\n where: {\n and: [\n {\n 'user.relationTo': {\n equals: payload.config.admin.user,\n },\n },\n {\n 'user.value': {\n equals: user.id,\n },\n },\n {\n key: {\n equals: 'locale',\n },\n },\n ],\n },\n })\n ?.then((res) => res.docs?.[0]?.value as string)\n } catch (error) {} // eslint-disable-line no-empty\n }\n\n locale = findLocaleFromCode(localization, localeCode)\n\n if (!locale) {\n locale = findLocaleFromCode(localization, defaultLocaleCode)\n }\n req.locale = locale.code\n }\n\n const visibleEntities: VisibleEntities = {\n collections: collections\n .map(({ slug, admin: { hidden } }) => (!isEntityHidden({ hidden, user }) ? slug : null))\n .filter(Boolean),\n globals: globals\n .map(({ slug, admin: { hidden } }) => (!isEntityHidden({ hidden, user }) ? slug : null))\n .filter(Boolean),\n }\n\n let redirectTo = null\n\n if (\n !permissions.canAccessAdmin &&\n !isPublicAdminRoute({ adminRoute, config: payload.config, route }) &&\n !isCustomAdminView({ adminRoute, config: payload.config, route })\n ) {\n redirectTo = handleAuthRedirect({\n config: payload.config,\n route,\n searchParams,\n user,\n })\n }\n\n const { collectionConfig, collectionSlug, docID, globalConfig, globalSlug } = getRouteInfo({\n adminRoute,\n config: payload.config,\n defaultIDType: payload.db.defaultIDType,\n payload,\n route,\n })\n\n if ((collectionSlug && !collectionConfig) || (globalSlug && !globalConfig)) {\n return notFound()\n }\n\n return {\n collectionConfig,\n cookies,\n docID,\n globalConfig,\n languageOptions,\n locale,\n permissions,\n redirectTo,\n req,\n translations: i18n.translations,\n visibleEntities,\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ import type { SanitizedConfig } from 'payload';
2
+ /**
3
+ * Returns an array of views marked with 'public: true' in the config
4
+ */
5
+ export declare const isCustomAdminView: ({ adminRoute, config, route, }: {
6
+ adminRoute: string;
7
+ config: SanitizedConfig;
8
+ route: string;
9
+ }) => boolean;
10
+ //# sourceMappingURL=isCustomAdminView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isCustomAdminView.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/isCustomAdminView.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAmC,eAAe,EAAE,MAAM,SAAS,CAAA;AAI/E;;GAEG;AACH,eAAO,MAAM,iBAAiB,mCAI3B;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,eAAe,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;CACd,KAAG,OAmBH,CAAA"}
@@ -0,0 +1,31 @@
1
+ import { getRouteWithoutAdmin } from './shared.js';
2
+ /**
3
+ * Returns an array of views marked with 'public: true' in the config
4
+ */
5
+ export const isCustomAdminView = ({
6
+ adminRoute,
7
+ config,
8
+ route
9
+ }) => {
10
+ if (config.admin?.components?.views) {
11
+ const isPublicAdminRoute = Object.entries(config.admin.components.views).some(([_, view]) => {
12
+ const routeWithoutAdmin = getRouteWithoutAdmin({
13
+ adminRoute,
14
+ route
15
+ });
16
+ if (view.exact) {
17
+ if (routeWithoutAdmin === view.path) {
18
+ return true;
19
+ }
20
+ } else {
21
+ if (routeWithoutAdmin.startsWith(view.path)) {
22
+ return true;
23
+ }
24
+ }
25
+ return false;
26
+ });
27
+ return isPublicAdminRoute;
28
+ }
29
+ return false;
30
+ };
31
+ //# sourceMappingURL=isCustomAdminView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isCustomAdminView.js","names":["getRouteWithoutAdmin","isCustomAdminView","adminRoute","config","route","admin","components","views","isPublicAdminRoute","Object","entries","some","_","view","routeWithoutAdmin","exact","path","startsWith"],"sources":["../../../src/utilities/initPage/isCustomAdminView.ts"],"sourcesContent":["import type { AdminViewConfig, PayloadRequest, SanitizedConfig } from 'payload'\n\nimport { getRouteWithoutAdmin } from './shared.js'\n\n/**\n * Returns an array of views marked with 'public: true' in the config\n */\nexport const isCustomAdminView = ({\n adminRoute,\n config,\n route,\n}: {\n adminRoute: string\n config: SanitizedConfig\n route: string\n}): boolean => {\n if (config.admin?.components?.views) {\n const isPublicAdminRoute = Object.entries(config.admin.components.views).some(([_, view]) => {\n const routeWithoutAdmin = getRouteWithoutAdmin({ adminRoute, route })\n\n if (view.exact) {\n if (routeWithoutAdmin === view.path) {\n return true\n }\n } else {\n if (routeWithoutAdmin.startsWith(view.path)) {\n return true\n }\n }\n return false\n })\n return isPublicAdminRoute\n }\n return false\n}\n"],"mappings":"AAEA,SAASA,oBAAoB,QAAQ;AAErC;;;AAGA,OAAO,MAAMC,iBAAA,GAAoBA,CAAC;EAChCC,UAAU;EACVC,MAAM;EACNC;AAAK,CAKN;EACC,IAAID,MAAA,CAAOE,KAAK,EAAEC,UAAA,EAAYC,KAAA,EAAO;IACnC,MAAMC,kBAAA,GAAqBC,MAAA,CAAOC,OAAO,CAACP,MAAA,CAAOE,KAAK,CAACC,UAAU,CAACC,KAAK,EAAEI,IAAI,CAAC,CAAC,CAACC,CAAA,EAAGC,IAAA,CAAK;MACtF,MAAMC,iBAAA,GAAoBd,oBAAA,CAAqB;QAAEE,UAAA;QAAYE;MAAM;MAEnE,IAAIS,IAAA,CAAKE,KAAK,EAAE;QACd,IAAID,iBAAA,KAAsBD,IAAA,CAAKG,IAAI,EAAE;UACnC,OAAO;QACT;MACF,OAAO;QACL,IAAIF,iBAAA,CAAkBG,UAAU,CAACJ,IAAA,CAAKG,IAAI,GAAG;UAC3C,OAAO;QACT;MACF;MACA,OAAO;IACT;IACA,OAAOR,kBAAA;EACT;EACA,OAAO;AACT","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAiB9C,eAAO,MAAM,YAAY,2BAGtB;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,eAAe,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;CACd,KAAG,OAEH,CAAA;AAED,eAAO,MAAM,kBAAkB,mCAI5B;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,eAAe,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;CACd,KAAG,OAYH,CAAA;AAED,eAAO,MAAM,oBAAoB,2BAG9B;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;CACd,KAAG,MAEH,CAAA"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAiB9C,eAAO,MAAM,YAAY,2BAGtB;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,eAAe,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;CACd,KAAG,OAEH,CAAA;AAED,eAAO,MAAM,kBAAkB,mCAI5B;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,eAAe,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;CACd,KAAG,OAeH,CAAA;AAED,eAAO,MAAM,oBAAoB,2BAG9B;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;CACd,KAAG,MAEH,CAAA"}
@@ -11,7 +11,7 @@ export const isPublicAdminRoute = ({
11
11
  config,
12
12
  route
13
13
  }) => {
14
- return publicAdminRoutes.some(routeSegment => {
14
+ const isPublicAdminRoute = publicAdminRoutes.some(routeSegment => {
15
15
  const segment = config.admin?.routes?.[routeSegment] || routeSegment;
16
16
  const routeWithoutAdmin = getRouteWithoutAdmin({
17
17
  adminRoute,
@@ -25,6 +25,7 @@ export const isPublicAdminRoute = ({
25
25
  return false;
26
26
  }
27
27
  });
28
+ return isPublicAdminRoute;
28
29
  };
29
30
  export const getRouteWithoutAdmin = ({
30
31
  adminRoute,
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","names":["publicAdminRoutes","isAdminRoute","adminRoute","route","startsWith","isPublicAdminRoute","config","some","routeSegment","segment","admin","routes","routeWithoutAdmin","getRouteWithoutAdmin","includes","replace"],"sources":["../../../src/utilities/initPage/shared.ts"],"sourcesContent":["import type { SanitizedConfig } from 'payload'\n\n// Routes that require admin authentication\nconst publicAdminRoutes: (keyof Pick<\n SanitizedConfig['admin']['routes'],\n 'createFirstUser' | 'forgot' | 'inactivity' | 'login' | 'logout' | 'reset' | 'unauthorized'\n>)[] = [\n 'createFirstUser',\n 'forgot',\n 'login',\n 'logout',\n 'forgot',\n 'inactivity',\n 'unauthorized',\n 'reset',\n]\n\nexport const isAdminRoute = ({\n adminRoute,\n route,\n}: {\n adminRoute: string\n config: SanitizedConfig\n route: string\n}): boolean => {\n return route.startsWith(adminRoute)\n}\n\nexport const isPublicAdminRoute = ({\n adminRoute,\n config,\n route,\n}: {\n adminRoute: string\n config: SanitizedConfig\n route: string\n}): boolean => {\n return publicAdminRoutes.some((routeSegment) => {\n const segment = config.admin?.routes?.[routeSegment] || routeSegment\n const routeWithoutAdmin = getRouteWithoutAdmin({ adminRoute, route })\n if (routeWithoutAdmin.startsWith(segment)) {\n return true\n } else if (routeWithoutAdmin.includes('/verify/')) {\n return true\n } else {\n return false\n }\n })\n}\n\nexport const getRouteWithoutAdmin = ({\n adminRoute,\n route,\n}: {\n adminRoute: string\n route: string\n}): string => {\n return adminRoute && adminRoute !== '/' ? route.replace(adminRoute, '') : route\n}\n"],"mappings":"AAEA;AACA,MAAMA,iBAAA,GAGC,CACL,mBACA,UACA,SACA,UACA,UACA,cACA,gBACA,QACD;AAED,OAAO,MAAMC,YAAA,GAAeA,CAAC;EAC3BC,UAAU;EACVC;AAAK,CAKN;EACC,OAAOA,KAAA,CAAMC,UAAU,CAACF,UAAA;AAC1B;AAEA,OAAO,MAAMG,kBAAA,GAAqBA,CAAC;EACjCH,UAAU;EACVI,MAAM;EACNH;AAAK,CAKN;EACC,OAAOH,iBAAA,CAAkBO,IAAI,CAAEC,YAAA;IAC7B,MAAMC,OAAA,GAAUH,MAAA,CAAOI,KAAK,EAAEC,MAAA,GAASH,YAAA,CAAa,IAAIA,YAAA;IACxD,MAAMI,iBAAA,GAAoBC,oBAAA,CAAqB;MAAEX,UAAA;MAAYC;IAAM;IACnE,IAAIS,iBAAA,CAAkBR,UAAU,CAACK,OAAA,GAAU;MACzC,OAAO;IACT,OAAO,IAAIG,iBAAA,CAAkBE,QAAQ,CAAC,aAAa;MACjD,OAAO;IACT,OAAO;MACL,OAAO;IACT;EACF;AACF;AAEA,OAAO,MAAMD,oBAAA,GAAuBA,CAAC;EACnCX,UAAU;EACVC;AAAK,CAIN;EACC,OAAOD,UAAA,IAAcA,UAAA,KAAe,MAAMC,KAAA,CAAMY,OAAO,CAACb,UAAA,EAAY,MAAMC,KAAA;AAC5E","ignoreList":[]}
1
+ {"version":3,"file":"shared.js","names":["publicAdminRoutes","isAdminRoute","adminRoute","route","startsWith","isPublicAdminRoute","config","some","routeSegment","segment","admin","routes","routeWithoutAdmin","getRouteWithoutAdmin","includes","replace"],"sources":["../../../src/utilities/initPage/shared.ts"],"sourcesContent":["import type { SanitizedConfig } from 'payload'\n\n// Routes that require admin authentication\nconst publicAdminRoutes: (keyof Pick<\n SanitizedConfig['admin']['routes'],\n 'createFirstUser' | 'forgot' | 'inactivity' | 'login' | 'logout' | 'reset' | 'unauthorized'\n>)[] = [\n 'createFirstUser',\n 'forgot',\n 'login',\n 'logout',\n 'forgot',\n 'inactivity',\n 'unauthorized',\n 'reset',\n]\n\nexport const isAdminRoute = ({\n adminRoute,\n route,\n}: {\n adminRoute: string\n config: SanitizedConfig\n route: string\n}): boolean => {\n return route.startsWith(adminRoute)\n}\n\nexport const isPublicAdminRoute = ({\n adminRoute,\n config,\n route,\n}: {\n adminRoute: string\n config: SanitizedConfig\n route: string\n}): boolean => {\n const isPublicAdminRoute = publicAdminRoutes.some((routeSegment) => {\n const segment = config.admin?.routes?.[routeSegment] || routeSegment\n const routeWithoutAdmin = getRouteWithoutAdmin({ adminRoute, route })\n\n if (routeWithoutAdmin.startsWith(segment)) {\n return true\n } else if (routeWithoutAdmin.includes('/verify/')) {\n return true\n } else {\n return false\n }\n })\n\n return isPublicAdminRoute\n}\n\nexport const getRouteWithoutAdmin = ({\n adminRoute,\n route,\n}: {\n adminRoute: string\n route: string\n}): string => {\n return adminRoute && adminRoute !== '/' ? route.replace(adminRoute, '') : route\n}\n"],"mappings":"AAEA;AACA,MAAMA,iBAAA,GAGC,CACL,mBACA,UACA,SACA,UACA,UACA,cACA,gBACA,QACD;AAED,OAAO,MAAMC,YAAA,GAAeA,CAAC;EAC3BC,UAAU;EACVC;AAAK,CAKN;EACC,OAAOA,KAAA,CAAMC,UAAU,CAACF,UAAA;AAC1B;AAEA,OAAO,MAAMG,kBAAA,GAAqBA,CAAC;EACjCH,UAAU;EACVI,MAAM;EACNH;AAAK,CAKN;EACC,MAAME,kBAAA,GAAqBL,iBAAA,CAAkBO,IAAI,CAAEC,YAAA;IACjD,MAAMC,OAAA,GAAUH,MAAA,CAAOI,KAAK,EAAEC,MAAA,GAASH,YAAA,CAAa,IAAIA,YAAA;IACxD,MAAMI,iBAAA,GAAoBC,oBAAA,CAAqB;MAAEX,UAAA;MAAYC;IAAM;IAEnE,IAAIS,iBAAA,CAAkBR,UAAU,CAACK,OAAA,GAAU;MACzC,OAAO;IACT,OAAO,IAAIG,iBAAA,CAAkBE,QAAQ,CAAC,aAAa;MACjD,OAAO;IACT,OAAO;MACL,OAAO;IACT;EACF;EAEA,OAAOT,kBAAA;AACT;AAEA,OAAO,MAAMQ,oBAAA,GAAuBA,CAAC;EACnCX,UAAU;EACVC;AAAK,CAIN;EACC,OAAOD,UAAA,IAAcA,UAAA,KAAe,MAAMC,KAAA,CAAMY,OAAO,CAACb,UAAA,EAAY,MAAMC,KAAA;AAC5E","ignoreList":[]}
@@ -1,11 +1,11 @@
1
1
  import type { I18nClient } from '@payloadcms/translations';
2
- import type { PayloadRequest, Permissions, SanitizedConfig, User } from 'payload';
2
+ import type { PayloadRequest, SanitizedConfig, SanitizedPermissions, User } from 'payload';
3
3
  type Result = {
4
4
  i18n: I18nClient;
5
- permissions: Permissions;
5
+ permissions: SanitizedPermissions;
6
6
  req: PayloadRequest;
7
7
  user: User;
8
8
  };
9
- export declare const initReq: (config: SanitizedConfig) => Promise<Result>;
9
+ export declare const initReq: (configPromise: Promise<SanitizedConfig> | SanitizedConfig) => Promise<Result>;
10
10
  export {};
11
11
  //# sourceMappingURL=initReq.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"initReq.d.ts","sourceRoot":"","sources":["../../src/utilities/initReq.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAUjF,KAAK,MAAM,GAAG;IACZ,IAAI,EAAE,UAAU,CAAA;IAChB,WAAW,EAAE,WAAW,CAAA;IACxB,GAAG,EAAE,cAAc,CAAA;IACnB,IAAI,EAAE,IAAI,CAAA;CACX,CAAA;AAED,eAAO,MAAM,OAAO,WAAiC,eAAe,KAAG,OAAO,CAAC,MAAM,CAuCnF,CAAA"}
1
+ {"version":3,"file":"initReq.d.ts","sourceRoot":"","sources":["../../src/utilities/initReq.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,oBAAoB,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAS1F,KAAK,MAAM,GAAG;IACZ,IAAI,EAAE,UAAU,CAAA;IAChB,WAAW,EAAE,oBAAoB,CAAA;IACjC,GAAG,EAAE,cAAc,CAAA;IACnB,IAAI,EAAE,IAAI,CAAA;CACX,CAAA;AAED,eAAO,MAAM,OAAO,kBACH,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,KACxD,OAAO,CAAC,MAAM,CAuCf,CAAA"}