@payloadcms/next 3.0.0-canary.7660f90 → 3.0.0-canary.78bbed6

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 (452) hide show
  1. package/dist/cjs/withPayload.cjs +18 -11
  2. package/dist/cjs/withPayload.cjs.map +1 -1
  3. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.d.ts.map +1 -1
  4. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +5 -1
  5. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
  6. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts +3 -1
  7. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts.map +1 -1
  8. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +16 -3
  9. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  10. package/dist/elements/DocumentHeader/Tabs/Tab/index.scss +7 -5
  11. package/dist/elements/DocumentHeader/Tabs/getCustomViews.js +2 -2
  12. package/dist/elements/DocumentHeader/Tabs/getCustomViews.js.map +1 -1
  13. package/dist/elements/DocumentHeader/Tabs/getViewConfig.js +2 -2
  14. package/dist/elements/DocumentHeader/Tabs/getViewConfig.js.map +1 -1
  15. package/dist/elements/DocumentHeader/Tabs/index.d.ts +2 -2
  16. package/dist/elements/DocumentHeader/Tabs/index.d.ts.map +1 -1
  17. package/dist/elements/DocumentHeader/Tabs/index.js +27 -17
  18. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  19. package/dist/elements/DocumentHeader/Tabs/index.scss +0 -1
  20. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.d.ts.map +1 -1
  21. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +3 -5
  22. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  23. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts +4 -2
  24. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +1 -1
  25. package/dist/elements/DocumentHeader/Tabs/tabs/index.js +15 -15
  26. package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
  27. package/dist/elements/DocumentHeader/index.d.ts +2 -2
  28. package/dist/elements/DocumentHeader/index.d.ts.map +1 -1
  29. package/dist/elements/DocumentHeader/index.js +2 -2
  30. package/dist/elements/DocumentHeader/index.js.map +1 -1
  31. package/dist/elements/DocumentHeader/index.scss +5 -4
  32. package/dist/elements/EmailAndUsername/index.d.ts +14 -0
  33. package/dist/elements/EmailAndUsername/index.d.ts.map +1 -0
  34. package/dist/elements/EmailAndUsername/index.js +89 -0
  35. package/dist/elements/EmailAndUsername/index.js.map +1 -0
  36. package/dist/elements/LeaveWithoutSaving/index.d.ts.map +1 -1
  37. package/dist/elements/LeaveWithoutSaving/index.js +9 -0
  38. package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
  39. package/dist/elements/LeaveWithoutSaving/index.scss +1 -0
  40. package/dist/elements/LeaveWithoutSaving/usePreventLeave.d.ts +2 -1
  41. package/dist/elements/LeaveWithoutSaving/usePreventLeave.d.ts.map +1 -1
  42. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +3 -1
  43. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -1
  44. package/dist/elements/Logo/index.d.ts.map +1 -1
  45. package/dist/elements/Logo/index.js +8 -5
  46. package/dist/elements/Logo/index.js.map +1 -1
  47. package/dist/elements/Nav/NavWrapper/index.d.ts.map +1 -1
  48. package/dist/elements/Nav/NavWrapper/index.js +4 -2
  49. package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
  50. package/dist/elements/Nav/NavWrapper/index.scss +4 -1
  51. package/dist/elements/Nav/index.client.d.ts.map +1 -1
  52. package/dist/elements/Nav/index.client.js +20 -11
  53. package/dist/elements/Nav/index.client.js.map +1 -1
  54. package/dist/elements/Nav/index.d.ts.map +1 -1
  55. package/dist/elements/Nav/index.js +21 -27
  56. package/dist/elements/Nav/index.js.map +1 -1
  57. package/dist/elements/Nav/index.scss +21 -15
  58. package/dist/layouts/Root/index.d.ts +5 -4
  59. package/dist/layouts/Root/index.d.ts.map +1 -1
  60. package/dist/layouts/Root/index.js +54 -32
  61. package/dist/layouts/Root/index.js.map +1 -1
  62. package/dist/prod/styles.css +1 -1
  63. package/dist/routes/graphql/handler.d.ts.map +1 -1
  64. package/dist/routes/graphql/handler.js +1 -5
  65. package/dist/routes/graphql/handler.js.map +1 -1
  66. package/dist/routes/rest/auth/login.d.ts.map +1 -1
  67. package/dist/routes/rest/auth/login.js +1 -1
  68. package/dist/routes/rest/auth/login.js.map +1 -1
  69. package/dist/routes/rest/auth/unlock.d.ts.map +1 -1
  70. package/dist/routes/rest/auth/unlock.js +7 -3
  71. package/dist/routes/rest/auth/unlock.js.map +1 -1
  72. package/dist/routes/rest/buildFormState.js +4 -4
  73. package/dist/routes/rest/buildFormState.js.map +1 -1
  74. package/dist/routes/rest/collections/restoreVersion.d.ts.map +1 -1
  75. package/dist/routes/rest/collections/restoreVersion.js +2 -0
  76. package/dist/routes/rest/collections/restoreVersion.js.map +1 -1
  77. package/dist/routes/rest/globals/restoreVersion.d.ts.map +1 -1
  78. package/dist/routes/rest/globals/restoreVersion.js +2 -0
  79. package/dist/routes/rest/globals/restoreVersion.js.map +1 -1
  80. package/dist/routes/rest/index.d.ts.map +1 -1
  81. package/dist/routes/rest/index.js +30 -5
  82. package/dist/routes/rest/index.js.map +1 -1
  83. package/dist/routes/rest/og/image.d.ts +2 -1
  84. package/dist/routes/rest/og/image.d.ts.map +1 -1
  85. package/dist/routes/rest/og/image.js +6 -2
  86. package/dist/routes/rest/og/image.js.map +1 -1
  87. package/dist/routes/rest/og/index.d.ts.map +1 -1
  88. package/dist/routes/rest/og/index.js +7 -3
  89. package/dist/routes/rest/og/index.js.map +1 -1
  90. package/dist/routes/rest/routeError.d.ts.map +1 -1
  91. package/dist/routes/rest/routeError.js +3 -3
  92. package/dist/routes/rest/routeError.js.map +1 -1
  93. package/dist/scss/app.scss +10 -15
  94. package/dist/scss/colors.scss +76 -76
  95. package/dist/scss/toastify.scss +59 -0
  96. package/dist/scss/toasts.scss +73 -42
  97. package/dist/scss/type.scss +15 -23
  98. package/dist/scss/vars.scss +26 -47
  99. package/dist/templates/Default/Wrapper/index.d.ts.map +1 -1
  100. package/dist/templates/Default/Wrapper/index.js +4 -2
  101. package/dist/templates/Default/Wrapper/index.js.map +1 -1
  102. package/dist/templates/Default/Wrapper/index.scss +36 -4
  103. package/dist/templates/Default/index.d.ts +2 -2
  104. package/dist/templates/Default/index.d.ts.map +1 -1
  105. package/dist/templates/Default/index.js +16 -23
  106. package/dist/templates/Default/index.js.map +1 -1
  107. package/dist/utilities/createPayloadRequest.d.ts.map +1 -1
  108. package/dist/utilities/createPayloadRequest.js +11 -8
  109. package/dist/utilities/createPayloadRequest.js.map +1 -1
  110. package/dist/utilities/getNextRequestI18n.d.ts +3 -3
  111. package/dist/utilities/getNextRequestI18n.d.ts.map +1 -1
  112. package/dist/utilities/getNextRequestI18n.js +3 -1
  113. package/dist/utilities/getNextRequestI18n.js.map +1 -1
  114. package/dist/utilities/getPayloadHMR.d.ts +1 -1
  115. package/dist/utilities/getPayloadHMR.d.ts.map +1 -1
  116. package/dist/utilities/getPayloadHMR.js +26 -10
  117. package/dist/utilities/getPayloadHMR.js.map +1 -1
  118. package/dist/utilities/headersWithCors.d.ts.map +1 -1
  119. package/dist/utilities/headersWithCors.js +19 -3
  120. package/dist/utilities/headersWithCors.js.map +1 -1
  121. package/dist/utilities/initPage/handleAdminPage.d.ts +4 -0
  122. package/dist/utilities/initPage/handleAdminPage.d.ts.map +1 -1
  123. package/dist/utilities/initPage/handleAdminPage.js +17 -4
  124. package/dist/utilities/initPage/handleAdminPage.js.map +1 -1
  125. package/dist/utilities/initPage/handleAuthRedirect.d.ts.map +1 -1
  126. package/dist/utilities/initPage/handleAuthRedirect.js +16 -4
  127. package/dist/utilities/initPage/handleAuthRedirect.js.map +1 -1
  128. package/dist/utilities/initPage/index.d.ts +1 -1
  129. package/dist/utilities/initPage/index.d.ts.map +1 -1
  130. package/dist/utilities/initPage/index.js +4 -3
  131. package/dist/utilities/initPage/index.js.map +1 -1
  132. package/dist/utilities/initPage/shared.d.ts +14 -2
  133. package/dist/utilities/initPage/shared.d.ts.map +1 -1
  134. package/dist/utilities/initPage/shared.js +14 -4
  135. package/dist/utilities/initPage/shared.js.map +1 -1
  136. package/dist/utilities/initPage/types.d.ts +2 -1
  137. package/dist/utilities/initPage/types.d.ts.map +1 -1
  138. package/dist/utilities/initPage/types.js.map +1 -1
  139. package/dist/utilities/mergeHeaders.d.ts +1 -1
  140. package/dist/utilities/mergeHeaders.d.ts.map +1 -1
  141. package/dist/utilities/mergeHeaders.js +7 -33
  142. package/dist/utilities/mergeHeaders.js.map +1 -1
  143. package/dist/utilities/meta.d.ts +2 -2
  144. package/dist/utilities/meta.d.ts.map +1 -1
  145. package/dist/utilities/meta.js +7 -6
  146. package/dist/utilities/meta.js.map +1 -1
  147. package/dist/views/API/LocaleSelector/index.d.ts +2 -2
  148. package/dist/views/API/LocaleSelector/index.d.ts.map +1 -1
  149. package/dist/views/API/LocaleSelector/index.js +7 -5
  150. package/dist/views/API/LocaleSelector/index.js.map +1 -1
  151. package/dist/views/API/index.client.d.ts.map +1 -1
  152. package/dist/views/API/index.client.js +39 -33
  153. package/dist/views/API/index.client.js.map +1 -1
  154. package/dist/views/API/index.d.ts +2 -2
  155. package/dist/views/API/index.d.ts.map +1 -1
  156. package/dist/views/API/index.js.map +1 -1
  157. package/dist/views/API/index.scss +1 -2
  158. package/dist/views/API/meta.d.ts.map +1 -1
  159. package/dist/views/API/meta.js +10 -6
  160. package/dist/views/API/meta.js.map +1 -1
  161. package/dist/views/Account/Settings/index.d.ts +3 -3
  162. package/dist/views/Account/Settings/index.d.ts.map +1 -1
  163. package/dist/views/Account/Settings/index.js +1 -0
  164. package/dist/views/Account/Settings/index.js.map +1 -1
  165. package/dist/views/Account/ToggleTheme/index.d.ts.map +1 -1
  166. package/dist/views/Account/ToggleTheme/index.js +18 -16
  167. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  168. package/dist/views/Account/index.client.d.ts +3 -0
  169. package/dist/views/Account/index.client.d.ts.map +1 -0
  170. package/dist/views/Account/index.client.js +21 -0
  171. package/dist/views/Account/index.client.js.map +1 -0
  172. package/dist/views/Account/index.d.ts.map +1 -1
  173. package/dist/views/Account/index.js +38 -45
  174. package/dist/views/Account/index.js.map +1 -1
  175. package/dist/views/CreateFirstUser/index.client.d.ts +2 -1
  176. package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
  177. package/dist/views/CreateFirstUser/index.client.js +22 -20
  178. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  179. package/dist/views/CreateFirstUser/index.d.ts.map +1 -1
  180. package/dist/views/CreateFirstUser/index.js +11 -29
  181. package/dist/views/CreateFirstUser/index.js.map +1 -1
  182. package/dist/views/CreateFirstUser/index.scss +4 -0
  183. package/dist/views/Dashboard/Default/index.d.ts +2 -2
  184. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  185. package/dist/views/Dashboard/Default/index.js +33 -30
  186. package/dist/views/Dashboard/Default/index.js.map +1 -1
  187. package/dist/views/Dashboard/Default/index.scss +11 -7
  188. package/dist/views/Dashboard/index.d.ts.map +1 -1
  189. package/dist/views/Dashboard/index.js +26 -30
  190. package/dist/views/Dashboard/index.js.map +1 -1
  191. package/dist/views/Document/getCustomViewByKey.d.ts.map +1 -1
  192. package/dist/views/Document/getCustomViewByKey.js +1 -2
  193. package/dist/views/Document/getCustomViewByKey.js.map +1 -1
  194. package/dist/views/Document/getCustomViewByRoute.d.ts +4 -1
  195. package/dist/views/Document/getCustomViewByRoute.d.ts.map +1 -1
  196. package/dist/views/Document/getCustomViewByRoute.js +16 -6
  197. package/dist/views/Document/getCustomViewByRoute.js.map +1 -1
  198. package/dist/views/Document/getDocumentData.d.ts +1 -0
  199. package/dist/views/Document/getDocumentData.d.ts.map +1 -1
  200. package/dist/views/Document/getDocumentData.js +4 -3
  201. package/dist/views/Document/getDocumentData.js.map +1 -1
  202. package/dist/views/Document/getMetaBySegment.d.ts +4 -3
  203. package/dist/views/Document/getMetaBySegment.d.ts.map +1 -1
  204. package/dist/views/Document/getMetaBySegment.js +73 -28
  205. package/dist/views/Document/getMetaBySegment.js.map +1 -1
  206. package/dist/views/Document/getViewsFromConfig.d.ts +18 -7
  207. package/dist/views/Document/getViewsFromConfig.d.ts.map +1 -1
  208. package/dist/views/Document/getViewsFromConfig.js +294 -189
  209. package/dist/views/Document/getViewsFromConfig.js.map +1 -1
  210. package/dist/views/Document/index.d.ts.map +1 -1
  211. package/dist/views/Document/index.js +45 -55
  212. package/dist/views/Document/index.js.map +1 -1
  213. package/dist/views/Edit/Default/Auth/APIKey.d.ts +2 -2
  214. package/dist/views/Edit/Default/Auth/APIKey.d.ts.map +1 -1
  215. package/dist/views/Edit/Default/Auth/APIKey.js +36 -7
  216. package/dist/views/Edit/Default/Auth/APIKey.js.map +1 -1
  217. package/dist/views/Edit/Default/Auth/index.d.ts.map +1 -1
  218. package/dist/views/Edit/Default/Auth/index.js +95 -46
  219. package/dist/views/Edit/Default/Auth/index.js.map +1 -1
  220. package/dist/views/Edit/Default/Auth/index.scss +17 -2
  221. package/dist/views/Edit/Default/Auth/types.d.ts +4 -1
  222. package/dist/views/Edit/Default/Auth/types.d.ts.map +1 -1
  223. package/dist/views/Edit/Default/Auth/types.js.map +1 -1
  224. package/dist/views/Edit/Default/SetDocumentStepNav/index.d.ts.map +1 -1
  225. package/dist/views/Edit/Default/SetDocumentStepNav/index.js +15 -5
  226. package/dist/views/Edit/Default/SetDocumentStepNav/index.js.map +1 -1
  227. package/dist/views/Edit/Default/index.d.ts.map +1 -1
  228. package/dist/views/Edit/Default/index.js +49 -38
  229. package/dist/views/Edit/Default/index.js.map +1 -1
  230. package/dist/views/Edit/Default/index.scss +2 -2
  231. package/dist/views/Edit/index.client.d.ts.map +1 -1
  232. package/dist/views/Edit/index.client.js +11 -6
  233. package/dist/views/Edit/index.client.js.map +1 -1
  234. package/dist/views/Edit/index.d.ts +2 -2
  235. package/dist/views/Edit/index.d.ts.map +1 -1
  236. package/dist/views/Edit/index.js.map +1 -1
  237. package/dist/views/Edit/meta.d.ts.map +1 -1
  238. package/dist/views/Edit/meta.js +30 -19
  239. package/dist/views/Edit/meta.js.map +1 -1
  240. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
  241. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +11 -7
  242. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  243. package/dist/views/ForgotPassword/index.d.ts.map +1 -1
  244. package/dist/views/ForgotPassword/index.js +12 -4
  245. package/dist/views/ForgotPassword/index.js.map +1 -1
  246. package/dist/views/List/Default/index.d.ts.map +1 -1
  247. package/dist/views/List/Default/index.js +90 -67
  248. package/dist/views/List/Default/index.js.map +1 -1
  249. package/dist/views/List/Default/index.scss +9 -27
  250. package/dist/views/List/index.d.ts.map +1 -1
  251. package/dist/views/List/index.js +72 -46
  252. package/dist/views/List/index.js.map +1 -1
  253. package/dist/views/List/meta.d.ts +2 -2
  254. package/dist/views/List/meta.d.ts.map +1 -1
  255. package/dist/views/List/meta.js +1 -1
  256. package/dist/views/List/meta.js.map +1 -1
  257. package/dist/views/LivePreview/Context/context.d.ts +1 -1
  258. package/dist/views/LivePreview/Context/context.d.ts.map +1 -1
  259. package/dist/views/LivePreview/Context/context.js.map +1 -1
  260. package/dist/views/LivePreview/Context/index.d.ts +3 -3
  261. package/dist/views/LivePreview/Context/index.d.ts.map +1 -1
  262. package/dist/views/LivePreview/Context/index.js.map +1 -1
  263. package/dist/views/LivePreview/Preview/index.js +1 -1
  264. package/dist/views/LivePreview/Preview/index.js.map +1 -1
  265. package/dist/views/LivePreview/Toolbar/index.d.ts +2 -2
  266. package/dist/views/LivePreview/Toolbar/index.d.ts.map +1 -1
  267. package/dist/views/LivePreview/Toolbar/index.js.map +1 -1
  268. package/dist/views/LivePreview/index.client.d.ts +3 -3
  269. package/dist/views/LivePreview/index.client.d.ts.map +1 -1
  270. package/dist/views/LivePreview/index.client.js +84 -93
  271. package/dist/views/LivePreview/index.client.js.map +1 -1
  272. package/dist/views/LivePreview/index.d.ts +2 -2
  273. package/dist/views/LivePreview/index.d.ts.map +1 -1
  274. package/dist/views/LivePreview/index.js.map +1 -1
  275. package/dist/views/LivePreview/meta.d.ts.map +1 -1
  276. package/dist/views/LivePreview/meta.js +2 -1
  277. package/dist/views/LivePreview/meta.js.map +1 -1
  278. package/dist/views/LivePreview/usePopupWindow.d.ts +2 -1
  279. package/dist/views/LivePreview/usePopupWindow.d.ts.map +1 -1
  280. package/dist/views/LivePreview/usePopupWindow.js +1 -1
  281. package/dist/views/LivePreview/usePopupWindow.js.map +1 -1
  282. package/dist/views/Login/LoginField/index.d.ts +9 -0
  283. package/dist/views/Login/LoginField/index.d.ts.map +1 -0
  284. package/dist/views/Login/LoginField/index.js +49 -0
  285. package/dist/views/Login/LoginField/index.js.map +1 -0
  286. package/dist/views/Login/LoginForm/index.d.ts +3 -0
  287. package/dist/views/Login/LoginForm/index.d.ts.map +1 -1
  288. package/dist/views/Login/LoginForm/index.js +35 -74
  289. package/dist/views/Login/LoginForm/index.js.map +1 -1
  290. package/dist/views/Login/index.d.ts.map +1 -1
  291. package/dist/views/Login/index.js +28 -27
  292. package/dist/views/Login/index.js.map +1 -1
  293. package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
  294. package/dist/views/Logout/LogoutClient.js +7 -2
  295. package/dist/views/Logout/LogoutClient.js.map +1 -1
  296. package/dist/views/Logout/index.d.ts +2 -2
  297. package/dist/views/Logout/index.d.ts.map +1 -1
  298. package/dist/views/Logout/index.js +2 -2
  299. package/dist/views/Logout/index.js.map +1 -1
  300. package/dist/views/NotFound/index.client.d.ts.map +1 -1
  301. package/dist/views/NotFound/index.client.js +3 -2
  302. package/dist/views/NotFound/index.client.js.map +1 -1
  303. package/dist/views/NotFound/index.d.ts +4 -3
  304. package/dist/views/NotFound/index.d.ts.map +1 -1
  305. package/dist/views/NotFound/index.js +19 -23
  306. package/dist/views/NotFound/index.js.map +1 -1
  307. package/dist/views/NotFound/meta.d.ts +2 -2
  308. package/dist/views/NotFound/meta.d.ts.map +1 -1
  309. package/dist/views/NotFound/meta.js.map +1 -1
  310. package/dist/views/ResetPassword/index.client.d.ts +1 -1
  311. package/dist/views/ResetPassword/index.client.d.ts.map +1 -1
  312. package/dist/views/ResetPassword/index.client.js +23 -32
  313. package/dist/views/ResetPassword/index.client.js.map +1 -1
  314. package/dist/views/ResetPassword/index.d.ts.map +1 -1
  315. package/dist/views/ResetPassword/index.js +7 -3
  316. package/dist/views/ResetPassword/index.js.map +1 -1
  317. package/dist/views/Root/generateCustomViewMetadata.d.ts +11 -0
  318. package/dist/views/Root/generateCustomViewMetadata.d.ts.map +1 -0
  319. package/dist/views/Root/generateCustomViewMetadata.js +23 -0
  320. package/dist/views/Root/generateCustomViewMetadata.js.map +1 -0
  321. package/dist/views/Root/getCustomViewByRoute.d.ts +7 -2
  322. package/dist/views/Root/getCustomViewByRoute.d.ts.map +1 -1
  323. package/dist/views/Root/getCustomViewByRoute.js +29 -11
  324. package/dist/views/Root/getCustomViewByRoute.js.map +1 -1
  325. package/dist/views/Root/getViewFromConfig.d.ts +10 -4
  326. package/dist/views/Root/getViewFromConfig.d.ts.map +1 -1
  327. package/dist/views/Root/getViewFromConfig.js +37 -16
  328. package/dist/views/Root/getViewFromConfig.js.map +1 -1
  329. package/dist/views/Root/index.d.ts +8 -7
  330. package/dist/views/Root/index.d.ts.map +1 -1
  331. package/dist/views/Root/index.js +27 -13
  332. package/dist/views/Root/index.js.map +1 -1
  333. package/dist/views/Root/meta.d.ts.map +1 -1
  334. package/dist/views/Root/meta.js +19 -2
  335. package/dist/views/Root/meta.js.map +1 -1
  336. package/dist/views/Unauthorized/index.d.ts +2 -2
  337. package/dist/views/Unauthorized/index.d.ts.map +1 -1
  338. package/dist/views/Unauthorized/index.js +1 -0
  339. package/dist/views/Unauthorized/index.js.map +1 -1
  340. package/dist/views/Verify/index.d.ts.map +1 -1
  341. package/dist/views/Verify/index.js +9 -2
  342. package/dist/views/Verify/index.js.map +1 -1
  343. package/dist/views/Version/Default/SetStepNav.d.ts +8 -10
  344. package/dist/views/Version/Default/SetStepNav.d.ts.map +1 -1
  345. package/dist/views/Version/Default/SetStepNav.js +34 -19
  346. package/dist/views/Version/Default/SetStepNav.js.map +1 -1
  347. package/dist/views/Version/Default/index.d.ts.map +1 -1
  348. package/dist/views/Version/Default/index.js +25 -30
  349. package/dist/views/Version/Default/index.js.map +1 -1
  350. package/dist/views/Version/Default/types.d.ts +8 -8
  351. package/dist/views/Version/Default/types.d.ts.map +1 -1
  352. package/dist/views/Version/Default/types.js.map +1 -1
  353. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts +2 -2
  354. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts.map +1 -1
  355. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +20 -20
  356. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  357. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.d.ts +2 -2
  358. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.d.ts.map +1 -1
  359. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.js +4 -4
  360. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.js.map +1 -1
  361. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts +3 -2
  362. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts.map +1 -1
  363. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +44 -24
  364. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  365. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts +3 -6
  366. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts.map +1 -1
  367. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +1 -1
  368. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  369. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts +3 -5
  370. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts.map +1 -1
  371. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +2 -2
  372. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  373. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts +3 -2
  374. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts.map +1 -1
  375. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +1 -1
  376. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  377. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts +21 -28
  378. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts.map +1 -1
  379. package/dist/views/Version/RenderFieldsToDiff/fields/index.js +4 -3
  380. package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
  381. package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts +15 -16
  382. package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts.map +1 -1
  383. package/dist/views/Version/RenderFieldsToDiff/fields/types.js.map +1 -1
  384. package/dist/views/Version/RenderFieldsToDiff/index.d.ts.map +1 -1
  385. package/dist/views/Version/RenderFieldsToDiff/index.js +12 -8
  386. package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
  387. package/dist/views/Version/RenderFieldsToDiff/types.d.ts +11 -12
  388. package/dist/views/Version/RenderFieldsToDiff/types.d.ts.map +1 -1
  389. package/dist/views/Version/RenderFieldsToDiff/types.js.map +1 -1
  390. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  391. package/dist/views/Version/Restore/index.js +46 -13
  392. package/dist/views/Version/Restore/index.js.map +1 -1
  393. package/dist/views/Version/Restore/index.scss +31 -0
  394. package/dist/views/Version/Restore/types.d.ts +1 -0
  395. package/dist/views/Version/Restore/types.d.ts.map +1 -1
  396. package/dist/views/Version/Restore/types.js.map +1 -1
  397. package/dist/views/Version/SelectComparison/index.d.ts.map +1 -1
  398. package/dist/views/Version/SelectComparison/index.js +50 -29
  399. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  400. package/dist/views/Version/SelectComparison/index.scss +1 -1
  401. package/dist/views/Version/SelectComparison/types.d.ts +2 -1
  402. package/dist/views/Version/SelectComparison/types.d.ts.map +1 -1
  403. package/dist/views/Version/SelectComparison/types.js.map +1 -1
  404. package/dist/views/Version/index.d.ts +2 -2
  405. package/dist/views/Version/index.d.ts.map +1 -1
  406. package/dist/views/Version/index.js +52 -46
  407. package/dist/views/Version/index.js.map +1 -1
  408. package/dist/views/Version/meta.d.ts.map +1 -1
  409. package/dist/views/Version/meta.js +24 -19
  410. package/dist/views/Version/meta.js.map +1 -1
  411. package/dist/views/Versions/buildColumns.d.ts +3 -1
  412. package/dist/views/Versions/buildColumns.d.ts.map +1 -1
  413. package/dist/views/Versions/buildColumns.js +43 -16
  414. package/dist/views/Versions/buildColumns.js.map +1 -1
  415. package/dist/views/Versions/cells/AutosaveCell/index.d.ts +7 -1
  416. package/dist/views/Versions/cells/AutosaveCell/index.d.ts.map +1 -1
  417. package/dist/views/Versions/cells/AutosaveCell/index.js +31 -13
  418. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  419. package/dist/views/Versions/cells/CreatedAt/index.d.ts.map +1 -1
  420. package/dist/views/Versions/cells/CreatedAt/index.js +10 -4
  421. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  422. package/dist/views/Versions/getLatestVersion.d.ts +14 -0
  423. package/dist/views/Versions/getLatestVersion.d.ts.map +1 -0
  424. package/dist/views/Versions/getLatestVersion.js +34 -0
  425. package/dist/views/Versions/getLatestVersion.js.map +1 -0
  426. package/dist/views/Versions/index.client.d.ts +4 -4
  427. package/dist/views/Versions/index.client.d.ts.map +1 -1
  428. package/dist/views/Versions/index.client.js +11 -8
  429. package/dist/views/Versions/index.client.js.map +1 -1
  430. package/dist/views/Versions/index.d.ts +2 -2
  431. package/dist/views/Versions/index.d.ts.map +1 -1
  432. package/dist/views/Versions/index.js +42 -2
  433. package/dist/views/Versions/index.js.map +1 -1
  434. package/dist/views/Versions/meta.d.ts.map +1 -1
  435. package/dist/views/Versions/meta.js +24 -19
  436. package/dist/views/Versions/meta.js.map +1 -1
  437. package/dist/withPayload.d.ts.map +1 -1
  438. package/dist/withPayload.js +18 -11
  439. package/dist/withPayload.js.map +1 -1
  440. package/package.json +20 -26
  441. package/dist/prod/index.js +0 -62
  442. package/dist/prod/payload/payload-favicon-dark.png +0 -0
  443. package/dist/prod/payload/payload-favicon-light.png +0 -0
  444. package/dist/prod/payload/static-og-image.png +0 -0
  445. package/dist/views/Version/shared.d.ts +0 -9
  446. package/dist/views/Version/shared.d.ts.map +0 -1
  447. package/dist/views/Version/shared.js +0 -10
  448. package/dist/views/Version/shared.js.map +0 -1
  449. package/dist/webpackEntry.d.ts +0 -5
  450. package/dist/webpackEntry.d.ts.map +0 -1
  451. package/dist/webpackEntry.js +0 -6
  452. package/dist/webpackEntry.js.map +0 -1
@@ -1,15 +1,15 @@
1
- import { BasePayload } from 'payload';
1
+ import { BasePayload, generateImportMap } from 'payload';
2
2
  import WebSocket from 'ws';
3
3
  let cached = global._payload;
4
4
  if (!cached) {
5
- // eslint-disable-next-line no-multi-assign
6
5
  cached = global._payload = {
7
6
  payload: null,
8
7
  promise: null,
9
- reload: false
8
+ reload: false,
9
+ ws: null
10
10
  };
11
11
  }
12
- export const reload = async (config, payload)=>{
12
+ export const reload = async (config, payload, skipImportMapGeneration)=>{
13
13
  if (typeof payload.db.destroy === 'function') {
14
14
  await payload.db.destroy();
15
15
  }
@@ -36,6 +36,12 @@ export const reload = async (config, payload)=>{
36
36
  log: false
37
37
  });
38
38
  }
39
+ // Generate component map
40
+ if (skipImportMapGeneration !== true && config.admin?.importMap?.autoGenerate !== false) {
41
+ await generateImportMap(config, {
42
+ log: true
43
+ });
44
+ }
39
45
  await payload.db.init();
40
46
  if (payload.db.connect) {
41
47
  await payload.db.connect({
@@ -45,32 +51,39 @@ export const reload = async (config, payload)=>{
45
51
  };
46
52
  export const getPayloadHMR = async (options)=>{
47
53
  if (!options?.config) {
48
- throw new Error('Error: the payload config is required for getPayload to work.');
54
+ throw new Error('Error: the payload config is required for getPayloadHMR to work.');
49
55
  }
50
56
  if (cached.payload) {
51
- const config = await options.config // TODO: check if we can move this inside the cached.reload === true condition
52
- ;
53
57
  if (cached.reload === true) {
54
58
  let resolve;
59
+ // getPayloadHMR is called multiple times, in parallel. However, we only want to run `await reload` once. By immediately setting cached.reload to a promise,
60
+ // 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
61
+ // will reach `if (cached.reload instanceof Promise) {` which then waits for the first reload to finish.
55
62
  cached.reload = new Promise((res)=>resolve = res);
63
+ const config = await options.config;
56
64
  await reload(config, cached.payload);
57
65
  resolve();
58
66
  }
59
67
  if (cached.reload instanceof Promise) {
60
68
  await cached.reload;
61
69
  }
70
+ if (options?.importMap) {
71
+ cached.payload.importMap = options.importMap;
72
+ }
62
73
  return cached.payload;
63
74
  }
75
+ // eslint-disable-next-line @typescript-eslint/no-misused-promises
64
76
  if (!cached.promise) {
77
+ // no need to await options.config here, as it's already awaited in the BasePayload.init
65
78
  cached.promise = new BasePayload().init(options);
66
79
  }
67
80
  try {
68
81
  cached.payload = await cached.promise;
69
- if (process.env.NODE_ENV !== 'production' && process.env.NODE_ENV !== 'test' && process.env.DISABLE_PAYLOAD_HMR !== 'true') {
82
+ if (!cached.ws && process.env.NODE_ENV !== 'production' && process.env.NODE_ENV !== 'test' && process.env.DISABLE_PAYLOAD_HMR !== 'true') {
70
83
  try {
71
84
  const port = process.env.PORT || '3000';
72
- const ws = new WebSocket(`ws://localhost:${port}${process.env.NEXT_BASE_PATH ?? ''}/_next/webpack-hmr`);
73
- ws.onmessage = (event)=>{
85
+ cached.ws = new WebSocket(`ws://localhost:${port}${process.env.NEXT_BASE_PATH ?? ''}/_next/webpack-hmr`);
86
+ cached.ws.onmessage = (event)=>{
74
87
  if (typeof event.data === 'string') {
75
88
  const data = JSON.parse(event.data);
76
89
  if ('action' in data && data.action === 'serverComponentChanges') {
@@ -86,6 +99,9 @@ export const getPayloadHMR = async (options)=>{
86
99
  cached.promise = null;
87
100
  throw e;
88
101
  }
102
+ if (options?.importMap) {
103
+ cached.payload.importMap = options.importMap;
104
+ }
89
105
  return cached.payload;
90
106
  };
91
107
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/getPayloadHMR.ts"],"sourcesContent":["import type { GeneratedTypes, InitOptions, Payload, SanitizedConfig } from 'payload'\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 // 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 await payload.db.init()\n if (payload.db.connect) {\n await payload.db.connect({ hotReload: true })\n }\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().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(\n `ws://localhost:${port}${process.env.NEXT_BASE_PATH ?? ''}/_next/webpack-hmr`,\n )\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","typescript","autoGenerate","bin","args","log","init","connect","hotReload","getPayloadHMR","options","Error","resolve","Promise","res","process","env","NODE_ENV","DISABLE_PAYLOAD_HMR","port","PORT","ws","NEXT_BASE_PATH","onmessage","event","data","JSON","parse","action","_","e"],"mappings":"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"}
1
+ {"version":3,"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: Payload | null\n promise: Promise<Payload> | null\n reload: Promise<void> | boolean\n ws: WebSocket | null\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 (options: InitOptions): 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"],"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"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"headersWithCors.d.ts","sourceRoot":"","sources":["../../src/utilities/headersWithCors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAE7C,KAAK,QAAQ,GAAG;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;CAC7B,CAAA;AACD,eAAO,MAAM,eAAe,qBAAsB,QAAQ,KAAG,OAoB5D,CAAA"}
1
+ {"version":3,"file":"headersWithCors.d.ts","sourceRoot":"","sources":["../../src/utilities/headersWithCors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,cAAc,EAAE,MAAM,SAAS,CAAA;AAEzD,KAAK,QAAQ,GAAG;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;CAC7B,CAAA;AACD,eAAO,MAAM,eAAe,qBAAsB,QAAQ,KAAG,OAyC5D,CAAA"}
@@ -2,11 +2,27 @@ export const headersWithCors = ({ headers, req })=>{
2
2
  const cors = req?.payload.config.cors;
3
3
  const requestOrigin = req?.headers.get('Origin');
4
4
  if (cors) {
5
+ const defaultAllowedHeaders = [
6
+ 'Origin',
7
+ 'X-Requested-With',
8
+ 'Content-Type',
9
+ 'Accept',
10
+ 'Authorization',
11
+ 'Content-Encoding',
12
+ 'x-apollo-tracing'
13
+ ];
5
14
  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 === '*') {
15
+ if (typeof cors === 'object' && 'headers' in cors) {
16
+ headers.set('Access-Control-Allow-Headers', [
17
+ ...defaultAllowedHeaders,
18
+ ...cors.headers
19
+ ].filter(Boolean).join(', '));
20
+ } else {
21
+ headers.set('Access-Control-Allow-Headers', defaultAllowedHeaders.join(', '));
22
+ }
23
+ if (cors === '*' || typeof cors === 'object' && 'origins' in cors && cors.origins === '*') {
8
24
  headers.set('Access-Control-Allow-Origin', '*');
9
- } else if (Array.isArray(cors) && cors.indexOf(requestOrigin) > -1) {
25
+ } else if (Array.isArray(cors) && cors.indexOf(requestOrigin) > -1 || !Array.isArray(cors) && typeof cors === 'object' && 'origins' in cors && cors.origins.indexOf(requestOrigin) > -1) {
10
26
  headers.set('Access-Control-Allow-Credentials', 'true');
11
27
  headers.set('Access-Control-Allow-Origin', requestOrigin);
12
28
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/headersWithCors.ts"],"sourcesContent":["import type { PayloadRequest } from 'payload'\n\ntype CorsArgs = {\n headers: Headers\n req: Partial<PayloadRequest>\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"],"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"}
1
+ {"version":3,"sources":["../../src/utilities/headersWithCors.ts"],"sourcesContent":["import type { CORSConfig, PayloadRequest } from 'payload'\n\ntype CorsArgs = {\n headers: Headers\n req: Partial<PayloadRequest>\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 const defaultAllowedHeaders = [\n 'Origin',\n 'X-Requested-With',\n 'Content-Type',\n 'Accept',\n 'Authorization',\n 'Content-Encoding',\n 'x-apollo-tracing',\n ]\n\n headers.set('Access-Control-Allow-Methods', 'PUT, PATCH, POST, GET, DELETE, OPTIONS')\n\n if (typeof cors === 'object' && 'headers' in cors) {\n headers.set(\n 'Access-Control-Allow-Headers',\n [...defaultAllowedHeaders, ...cors.headers].filter(Boolean).join(', '),\n )\n } else {\n headers.set('Access-Control-Allow-Headers', defaultAllowedHeaders.join(', '))\n }\n\n if (cors === '*' || (typeof cors === 'object' && 'origins' in cors && cors.origins === '*')) {\n headers.set('Access-Control-Allow-Origin', '*')\n } else if (\n (Array.isArray(cors) && cors.indexOf(requestOrigin) > -1) ||\n (!Array.isArray(cors) &&\n typeof cors === 'object' &&\n 'origins' in cors &&\n cors.origins.indexOf(requestOrigin) > -1)\n ) {\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","defaultAllowedHeaders","set","filter","Boolean","join","origins","Array","isArray","indexOf"],"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;QACR,MAAMK,wBAAwB;YAC5B;YACA;YACA;YACA;YACA;YACA;YACA;SACD;QAEDP,QAAQQ,GAAG,CAAC,gCAAgC;QAE5C,IAAI,OAAON,SAAS,YAAY,aAAaA,MAAM;YACjDF,QAAQQ,GAAG,CACT,gCACA;mBAAID;mBAA0BL,KAAKF,OAAO;aAAC,CAACS,MAAM,CAACC,SAASC,IAAI,CAAC;QAErE,OAAO;YACLX,QAAQQ,GAAG,CAAC,gCAAgCD,sBAAsBI,IAAI,CAAC;QACzE;QAEA,IAAIT,SAAS,OAAQ,OAAOA,SAAS,YAAY,aAAaA,QAAQA,KAAKU,OAAO,KAAK,KAAM;YAC3FZ,QAAQQ,GAAG,CAAC,+BAA+B;QAC7C,OAAO,IACL,AAACK,MAAMC,OAAO,CAACZ,SAASA,KAAKa,OAAO,CAACV,iBAAiB,CAAC,KACtD,CAACQ,MAAMC,OAAO,CAACZ,SACd,OAAOA,SAAS,YAChB,aAAaA,QACbA,KAAKU,OAAO,CAACG,OAAO,CAACV,iBAAiB,CAAC,GACzC;YACAL,QAAQQ,GAAG,CAAC,oCAAoC;YAChDR,QAAQQ,GAAG,CAAC,+BAA+BH;QAC7C;IACF;IAEA,OAAOL;AACT,EAAC"}
@@ -8,5 +8,9 @@ export declare const handleAdminPage: ({ adminRoute, config, permissions, route,
8
8
  collectionConfig: SanitizedCollectionConfig;
9
9
  docID: string;
10
10
  globalConfig: SanitizedGlobalConfig;
11
+ } | {
12
+ collectionConfig?: undefined;
13
+ docID?: undefined;
14
+ globalConfig?: undefined;
11
15
  };
12
16
  //# 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,EACV,WAAW,EACX,yBAAyB,EACzB,eAAe,EACf,qBAAqB,EACtB,MAAM,SAAS,CAAA;AAMhB,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"}
1
+ {"version":3,"file":"handleAdminPage.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/handleAdminPage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,yBAAyB,EACzB,eAAe,EACf,qBAAqB,EACtB,MAAM,SAAS,CAAA;AAMhB,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;;;;;;;;CAwCA,CAAA"}
@@ -1,8 +1,16 @@
1
1
  import { notFound } from 'next/navigation.js';
2
- import { isAdminAuthRoute, isAdminRoute } from './shared.js';
2
+ import { getRouteWithoutAdmin, isAdminAuthRoute, isAdminRoute } from './shared.js';
3
3
  export const handleAdminPage = ({ adminRoute, config, permissions, route })=>{
4
- if (isAdminRoute(route, adminRoute)) {
5
- const routeSegments = route.replace(adminRoute, '').split('/').filter(Boolean);
4
+ if (isAdminRoute({
5
+ adminRoute,
6
+ config,
7
+ route
8
+ })) {
9
+ const routeWithoutAdmin = getRouteWithoutAdmin({
10
+ adminRoute,
11
+ route
12
+ });
13
+ const routeSegments = routeWithoutAdmin.split('/').filter(Boolean);
6
14
  const [entityType, entitySlug, createOrID] = routeSegments;
7
15
  const collectionSlug = entityType === 'collections' ? entitySlug : undefined;
8
16
  const globalSlug = entityType === 'globals' ? entitySlug : undefined;
@@ -21,7 +29,11 @@ export const handleAdminPage = ({ adminRoute, config, permissions, route })=>{
21
29
  notFound();
22
30
  }
23
31
  }
24
- if (!permissions.canAccessAdmin && !isAdminAuthRoute(config, route, adminRoute)) {
32
+ if (!permissions.canAccessAdmin && !isAdminAuthRoute({
33
+ adminRoute,
34
+ config,
35
+ route
36
+ })) {
25
37
  notFound();
26
38
  }
27
39
  return {
@@ -30,6 +42,7 @@ export const handleAdminPage = ({ adminRoute, config, permissions, route })=>{
30
42
  globalConfig
31
43
  };
32
44
  }
45
+ return {};
33
46
  };
34
47
 
35
48
  //# sourceMappingURL=handleAdminPage.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utilities/initPage/handleAdminPage.ts"],"sourcesContent":["import type {\n Permissions,\n SanitizedCollectionConfig,\n SanitizedConfig,\n SanitizedGlobalConfig,\n} from 'payload'\n\nimport { notFound } from 'next/navigation.js'\n\nimport { isAdminAuthRoute, isAdminRoute } from './shared.js'\n\nexport const handleAdminPage = ({\n adminRoute,\n config,\n permissions,\n route,\n}: {\n adminRoute: string\n config: SanitizedConfig\n permissions: Permissions\n route: string\n}) => {\n if (isAdminRoute(route, adminRoute)) {\n const routeSegments = route.replace(adminRoute, '').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 if (!collectionConfig) {\n notFound()\n }\n }\n\n if (globalSlug) {\n globalConfig = config.globals.find((global) => global.slug === globalSlug)\n\n if (!globalConfig) {\n notFound()\n }\n }\n\n if (!permissions.canAccessAdmin && !isAdminAuthRoute(config, route, adminRoute)) {\n notFound()\n }\n\n return {\n collectionConfig,\n docID,\n globalConfig,\n }\n }\n}\n"],"names":["notFound","isAdminAuthRoute","isAdminRoute","handleAdminPage","adminRoute","config","permissions","route","routeSegments","replace","split","filter","Boolean","entityType","entitySlug","createOrID","collectionSlug","undefined","globalSlug","docID","collectionConfig","globalConfig","collections","find","collection","slug","globals","global","canAccessAdmin"],"mappings":"AAOA,SAASA,QAAQ,QAAQ,qBAAoB;AAE7C,SAASC,gBAAgB,EAAEC,YAAY,QAAQ,cAAa;AAE5D,OAAO,MAAMC,kBAAkB,CAAC,EAC9BC,UAAU,EACVC,MAAM,EACNC,WAAW,EACXC,KAAK,EAMN;IACC,IAAIL,aAAaK,OAAOH,aAAa;QACnC,MAAMI,gBAAgBD,MAAME,OAAO,CAACL,YAAY,IAAIM,KAAK,CAAC,KAAKC,MAAM,CAACC;QACtE,MAAM,CAACC,YAAYC,YAAYC,WAAW,GAAGP;QAC7C,MAAMQ,iBAAiBH,eAAe,gBAAgBC,aAAaG;QACnE,MAAMC,aAAaL,eAAe,YAAYC,aAAaG;QAC3D,MAAME,QAAQH,kBAAkBD,eAAe,WAAWA,aAAaE;QAEvE,IAAIG;QACJ,IAAIC;QAEJ,IAAIL,gBAAgB;YAClBI,mBAAmBf,OAAOiB,WAAW,CAACC,IAAI,CAAC,CAACC,aAAeA,WAAWC,IAAI,KAAKT;YAE/E,IAAI,CAACI,kBAAkB;gBACrBpB;YACF;QACF;QAEA,IAAIkB,YAAY;YACdG,eAAehB,OAAOqB,OAAO,CAACH,IAAI,CAAC,CAACI,SAAWA,OAAOF,IAAI,KAAKP;YAE/D,IAAI,CAACG,cAAc;gBACjBrB;YACF;QACF;QAEA,IAAI,CAACM,YAAYsB,cAAc,IAAI,CAAC3B,iBAAiBI,QAAQE,OAAOH,aAAa;YAC/EJ;QACF;QAEA,OAAO;YACLoB;YACAD;YACAE;QACF;IACF;AACF,EAAC"}
1
+ {"version":3,"sources":["../../../src/utilities/initPage/handleAdminPage.ts"],"sourcesContent":["import type {\n Permissions,\n SanitizedCollectionConfig,\n SanitizedConfig,\n SanitizedGlobalConfig,\n} from 'payload'\n\nimport { notFound } from 'next/navigation.js'\n\nimport { getRouteWithoutAdmin, isAdminAuthRoute, isAdminRoute } from './shared.js'\n\nexport const handleAdminPage = ({\n adminRoute,\n config,\n permissions,\n route,\n}: {\n adminRoute: string\n config: SanitizedConfig\n permissions: Permissions\n route: string\n}) => {\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 if (!collectionConfig) {\n notFound()\n }\n }\n\n if (globalSlug) {\n globalConfig = config.globals.find((global) => global.slug === globalSlug)\n\n if (!globalConfig) {\n notFound()\n }\n }\n\n if (!permissions.canAccessAdmin && !isAdminAuthRoute({ adminRoute, config, route })) {\n notFound()\n }\n\n return {\n collectionConfig,\n docID,\n globalConfig,\n }\n }\n\n return {}\n}\n"],"names":["notFound","getRouteWithoutAdmin","isAdminAuthRoute","isAdminRoute","handleAdminPage","adminRoute","config","permissions","route","routeWithoutAdmin","routeSegments","split","filter","Boolean","entityType","entitySlug","createOrID","collectionSlug","undefined","globalSlug","docID","collectionConfig","globalConfig","collections","find","collection","slug","globals","global","canAccessAdmin"],"mappings":"AAOA,SAASA,QAAQ,QAAQ,qBAAoB;AAE7C,SAASC,oBAAoB,EAAEC,gBAAgB,EAAEC,YAAY,QAAQ,cAAa;AAElF,OAAO,MAAMC,kBAAkB,CAAC,EAC9BC,UAAU,EACVC,MAAM,EACNC,WAAW,EACXC,KAAK,EAMN;IACC,IAAIL,aAAa;QAAEE;QAAYC;QAAQE;IAAM,IAAI;QAC/C,MAAMC,oBAAoBR,qBAAqB;YAAEI;YAAYG;QAAM;QACnE,MAAME,gBAAgBD,kBAAkBE,KAAK,CAAC,KAAKC,MAAM,CAACC;QAC1D,MAAM,CAACC,YAAYC,YAAYC,WAAW,GAAGN;QAC7C,MAAMO,iBAAiBH,eAAe,gBAAgBC,aAAaG;QACnE,MAAMC,aAAaL,eAAe,YAAYC,aAAaG;QAC3D,MAAME,QAAQH,kBAAkBD,eAAe,WAAWA,aAAaE;QAEvE,IAAIG;QACJ,IAAIC;QAEJ,IAAIL,gBAAgB;YAClBI,mBAAmBf,OAAOiB,WAAW,CAACC,IAAI,CAAC,CAACC,aAAeA,WAAWC,IAAI,KAAKT;YAE/E,IAAI,CAACI,kBAAkB;gBACrBrB;YACF;QACF;QAEA,IAAImB,YAAY;YACdG,eAAehB,OAAOqB,OAAO,CAACH,IAAI,CAAC,CAACI,SAAWA,OAAOF,IAAI,KAAKP;YAE/D,IAAI,CAACG,cAAc;gBACjBtB;YACF;QACF;QAEA,IAAI,CAACO,YAAYsB,cAAc,IAAI,CAAC3B,iBAAiB;YAAEG;YAAYC;YAAQE;QAAM,IAAI;YACnFR;QACF;QAEA,OAAO;YACLqB;YACAD;YACAE;QACF;IACF;IAEA,OAAO,CAAC;AACV,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"handleAuthRedirect.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/handleAuthRedirect.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,kBAAkB,kEAK5B;IACD,MAAM,MAAA;IACN,2BAA2B,EAAE,OAAO,GAAG,MAAM,CAAA;IAC7C,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAA;CACnD,SAsCA,CAAA"}
1
+ {"version":3,"file":"handleAuthRedirect.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/handleAuthRedirect.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,kBAAkB,kEAK5B;IACD,MAAM,MAAA;IACN,2BAA2B,EAAE,OAAO,GAAG,MAAM,CAAA;IAC7C,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAA;CACnD,SAsCA,CAAA"}
@@ -1,16 +1,28 @@
1
+ import { formatAdminURL } from '@payloadcms/ui/shared';
1
2
  import { redirect } from 'next/navigation.js';
2
- import qs from 'qs';
3
+ import * as qs from 'qs-esm';
3
4
  import { isAdminAuthRoute, isAdminRoute } from './shared.js';
4
5
  export const handleAuthRedirect = ({ config, redirectUnauthenticatedUser, route, searchParams })=>{
5
6
  const { admin: { routes: { login: loginRouteFromConfig } }, routes: { admin: adminRoute } } = config;
6
- if (!isAdminAuthRoute(config, route, adminRoute)) {
7
+ if (!isAdminAuthRoute({
8
+ adminRoute,
9
+ config,
10
+ route
11
+ })) {
7
12
  if (searchParams && 'redirect' in searchParams) delete searchParams.redirect;
8
13
  const redirectRoute = encodeURIComponent(route + Object.keys(searchParams ?? {}).length ? `${qs.stringify(searchParams, {
9
14
  addQueryPrefix: true
10
15
  })}` : undefined);
11
- const adminLoginRoute = `${adminRoute}${loginRouteFromConfig}`;
16
+ const adminLoginRoute = formatAdminURL({
17
+ adminRoute,
18
+ path: loginRouteFromConfig
19
+ });
12
20
  const customLoginRoute = typeof redirectUnauthenticatedUser === 'string' ? redirectUnauthenticatedUser : undefined;
13
- const loginRoute = isAdminRoute(route, adminRoute) ? adminLoginRoute : customLoginRoute || loginRouteFromConfig;
21
+ const loginRoute = isAdminRoute({
22
+ adminRoute,
23
+ config,
24
+ route
25
+ }) ? adminLoginRoute : customLoginRoute || loginRouteFromConfig;
14
26
  const parsedLoginRouteSearchParams = qs.parse(loginRoute.split('?')[1] ?? '');
15
27
  const searchParamsWithRedirect = `${qs.stringify({
16
28
  ...parsedLoginRouteSearchParams,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utilities/initPage/handleAuthRedirect.ts"],"sourcesContent":["import { redirect } from 'next/navigation.js'\nimport qs from 'qs'\n\nimport { isAdminAuthRoute, isAdminRoute } from './shared.js'\n\nexport const handleAuthRedirect = ({\n config,\n redirectUnauthenticatedUser,\n route,\n searchParams,\n}: {\n config\n redirectUnauthenticatedUser: boolean | string\n route: string\n searchParams: { [key: string]: string | string[] }\n}) => {\n const {\n admin: {\n routes: { login: loginRouteFromConfig },\n },\n routes: { admin: adminRoute },\n } = config\n\n if (!isAdminAuthRoute(config, route, adminRoute)) {\n if (searchParams && 'redirect' in searchParams) delete searchParams.redirect\n\n const redirectRoute = encodeURIComponent(\n route + Object.keys(searchParams ?? {}).length\n ? `${qs.stringify(searchParams, { addQueryPrefix: true })}`\n : undefined,\n )\n\n const adminLoginRoute = `${adminRoute}${loginRouteFromConfig}`\n\n const customLoginRoute =\n typeof redirectUnauthenticatedUser === 'string' ? redirectUnauthenticatedUser : undefined\n\n const loginRoute = isAdminRoute(route, adminRoute)\n ? adminLoginRoute\n : customLoginRoute || loginRouteFromConfig\n\n const parsedLoginRouteSearchParams = qs.parse(loginRoute.split('?')[1] ?? '')\n\n const searchParamsWithRedirect = `${qs.stringify(\n {\n ...parsedLoginRouteSearchParams,\n ...(redirectRoute ? { redirect: redirectRoute } : {}),\n },\n { addQueryPrefix: true },\n )}`\n\n redirect(`${loginRoute.split('?')[0]}${searchParamsWithRedirect}`)\n }\n}\n"],"names":["redirect","qs","isAdminAuthRoute","isAdminRoute","handleAuthRedirect","config","redirectUnauthenticatedUser","route","searchParams","admin","routes","login","loginRouteFromConfig","adminRoute","redirectRoute","encodeURIComponent","Object","keys","length","stringify","addQueryPrefix","undefined","adminLoginRoute","customLoginRoute","loginRoute","parsedLoginRouteSearchParams","parse","split","searchParamsWithRedirect"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,qBAAoB;AAC7C,OAAOC,QAAQ,KAAI;AAEnB,SAASC,gBAAgB,EAAEC,YAAY,QAAQ,cAAa;AAE5D,OAAO,MAAMC,qBAAqB,CAAC,EACjCC,MAAM,EACNC,2BAA2B,EAC3BC,KAAK,EACLC,YAAY,EAMb;IACC,MAAM,EACJC,OAAO,EACLC,QAAQ,EAAEC,OAAOC,oBAAoB,EAAE,EACxC,EACDF,QAAQ,EAAED,OAAOI,UAAU,EAAE,EAC9B,GAAGR;IAEJ,IAAI,CAACH,iBAAiBG,QAAQE,OAAOM,aAAa;QAChD,IAAIL,gBAAgB,cAAcA,cAAc,OAAOA,aAAaR,QAAQ;QAE5E,MAAMc,gBAAgBC,mBACpBR,QAAQS,OAAOC,IAAI,CAACT,gBAAgB,CAAC,GAAGU,MAAM,GAC1C,CAAC,EAAEjB,GAAGkB,SAAS,CAACX,cAAc;YAAEY,gBAAgB;QAAK,GAAG,CAAC,GACzDC;QAGN,MAAMC,kBAAkB,CAAC,EAAET,WAAW,EAAED,qBAAqB,CAAC;QAE9D,MAAMW,mBACJ,OAAOjB,gCAAgC,WAAWA,8BAA8Be;QAElF,MAAMG,aAAarB,aAAaI,OAAOM,cACnCS,kBACAC,oBAAoBX;QAExB,MAAMa,+BAA+BxB,GAAGyB,KAAK,CAACF,WAAWG,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI;QAE1E,MAAMC,2BAA2B,CAAC,EAAE3B,GAAGkB,SAAS,CAC9C;YACE,GAAGM,4BAA4B;YAC/B,GAAIX,gBAAgB;gBAAEd,UAAUc;YAAc,IAAI,CAAC,CAAC;QACtD,GACA;YAAEM,gBAAgB;QAAK,GACvB,CAAC;QAEHpB,SAAS,CAAC,EAAEwB,WAAWG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAEC,yBAAyB,CAAC;IACnE;AACF,EAAC"}
1
+ {"version":3,"sources":["../../../src/utilities/initPage/handleAuthRedirect.ts"],"sourcesContent":["import { formatAdminURL } from '@payloadcms/ui/shared'\nimport { redirect } from 'next/navigation.js'\nimport * as qs from 'qs-esm'\n\nimport { isAdminAuthRoute, isAdminRoute } from './shared.js'\n\nexport const handleAuthRedirect = ({\n config,\n redirectUnauthenticatedUser,\n route,\n searchParams,\n}: {\n config\n redirectUnauthenticatedUser: boolean | string\n route: string\n searchParams: { [key: string]: string | string[] }\n}) => {\n const {\n admin: {\n routes: { login: loginRouteFromConfig },\n },\n routes: { admin: adminRoute },\n } = config\n\n if (!isAdminAuthRoute({ adminRoute, config, route })) {\n if (searchParams && 'redirect' in searchParams) delete searchParams.redirect\n\n const redirectRoute = encodeURIComponent(\n route + Object.keys(searchParams ?? {}).length\n ? `${qs.stringify(searchParams, { addQueryPrefix: true })}`\n : undefined,\n )\n\n const adminLoginRoute = formatAdminURL({ adminRoute, path: loginRouteFromConfig })\n\n const customLoginRoute =\n typeof redirectUnauthenticatedUser === 'string' ? redirectUnauthenticatedUser : undefined\n\n const loginRoute = isAdminRoute({ adminRoute, config, route })\n ? adminLoginRoute\n : customLoginRoute || loginRouteFromConfig\n\n const parsedLoginRouteSearchParams = qs.parse(loginRoute.split('?')[1] ?? '')\n\n const searchParamsWithRedirect = `${qs.stringify(\n {\n ...parsedLoginRouteSearchParams,\n ...(redirectRoute ? { redirect: redirectRoute } : {}),\n },\n { addQueryPrefix: true },\n )}`\n\n redirect(`${loginRoute.split('?')[0]}${searchParamsWithRedirect}`)\n }\n}\n"],"names":["formatAdminURL","redirect","qs","isAdminAuthRoute","isAdminRoute","handleAuthRedirect","config","redirectUnauthenticatedUser","route","searchParams","admin","routes","login","loginRouteFromConfig","adminRoute","redirectRoute","encodeURIComponent","Object","keys","length","stringify","addQueryPrefix","undefined","adminLoginRoute","path","customLoginRoute","loginRoute","parsedLoginRouteSearchParams","parse","split","searchParamsWithRedirect"],"mappings":"AAAA,SAASA,cAAc,QAAQ,wBAAuB;AACtD,SAASC,QAAQ,QAAQ,qBAAoB;AAC7C,YAAYC,QAAQ,SAAQ;AAE5B,SAASC,gBAAgB,EAAEC,YAAY,QAAQ,cAAa;AAE5D,OAAO,MAAMC,qBAAqB,CAAC,EACjCC,MAAM,EACNC,2BAA2B,EAC3BC,KAAK,EACLC,YAAY,EAMb;IACC,MAAM,EACJC,OAAO,EACLC,QAAQ,EAAEC,OAAOC,oBAAoB,EAAE,EACxC,EACDF,QAAQ,EAAED,OAAOI,UAAU,EAAE,EAC9B,GAAGR;IAEJ,IAAI,CAACH,iBAAiB;QAAEW;QAAYR;QAAQE;IAAM,IAAI;QACpD,IAAIC,gBAAgB,cAAcA,cAAc,OAAOA,aAAaR,QAAQ;QAE5E,MAAMc,gBAAgBC,mBACpBR,QAAQS,OAAOC,IAAI,CAACT,gBAAgB,CAAC,GAAGU,MAAM,GAC1C,CAAC,EAAEjB,GAAGkB,SAAS,CAACX,cAAc;YAAEY,gBAAgB;QAAK,GAAG,CAAC,GACzDC;QAGN,MAAMC,kBAAkBvB,eAAe;YAAEc;YAAYU,MAAMX;QAAqB;QAEhF,MAAMY,mBACJ,OAAOlB,gCAAgC,WAAWA,8BAA8Be;QAElF,MAAMI,aAAatB,aAAa;YAAEU;YAAYR;YAAQE;QAAM,KACxDe,kBACAE,oBAAoBZ;QAExB,MAAMc,+BAA+BzB,GAAG0B,KAAK,CAACF,WAAWG,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI;QAE1E,MAAMC,2BAA2B,CAAC,EAAE5B,GAAGkB,SAAS,CAC9C;YACE,GAAGO,4BAA4B;YAC/B,GAAIZ,gBAAgB;gBAAEd,UAAUc;YAAc,IAAI,CAAC,CAAC;QACtD,GACA;YAAEM,gBAAgB;QAAK,GACvB,CAAC;QAEHpB,SAAS,CAAC,EAAEyB,WAAWG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAEC,yBAAyB,CAAC;IACnE;AACF,EAAC"}
@@ -1,4 +1,4 @@
1
1
  import type { InitPageResult } from 'payload';
2
2
  import type { Args } from './types.js';
3
- export declare const initPage: ({ config: configPromise, redirectUnauthenticatedUser, route, searchParams, }: Args) => Promise<InitPageResult>;
3
+ export declare const initPage: ({ config: configPromise, importMap, redirectUnauthenticatedUser, route, searchParams, }: Args) => Promise<InitPageResult>;
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAA2C,MAAM,SAAS,CAAA;AAQtF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAOtC,eAAO,MAAM,QAAQ,iFAKlB,IAAI,KAAG,OAAO,CAAC,cAAc,CA0I/B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAA2C,MAAM,SAAS,CAAA;AAQtF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAOtC,eAAO,MAAM,QAAQ,4FAMlB,IAAI,KAAG,OAAO,CAAC,cAAc,CA0I/B,CAAA"}
@@ -2,15 +2,16 @@ import { initI18n } from '@payloadcms/translations';
2
2
  import { findLocaleFromCode } from '@payloadcms/ui/shared';
3
3
  import { headers as getHeaders } from 'next/headers.js';
4
4
  import { createLocalReq, isEntityHidden, parseCookies } from 'payload';
5
- import qs from 'qs';
5
+ import * as qs from 'qs-esm';
6
6
  import { getPayloadHMR } from '../getPayloadHMR.js';
7
7
  import { getRequestLanguage } from '../getRequestLanguage.js';
8
8
  import { handleAdminPage } from './handleAdminPage.js';
9
9
  import { handleAuthRedirect } from './handleAuthRedirect.js';
10
- export const initPage = async ({ config: configPromise, redirectUnauthenticatedUser = false, route, searchParams })=>{
10
+ export const initPage = async ({ config: configPromise, importMap, redirectUnauthenticatedUser = false, route, searchParams })=>{
11
11
  const headers = getHeaders();
12
12
  const payload = await getPayloadHMR({
13
- config: configPromise
13
+ config: configPromise,
14
+ importMap
14
15
  });
15
16
  const { collections, globals, i18n: i18nConfig, localization, routes: { admin: adminRoute } } = payload.config;
16
17
  const queryString = `${qs.stringify(searchParams ?? {}, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utilities/initPage/index.ts"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { InitPageResult, Locale, PayloadRequest, VisibleEntities } from 'payload'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { findLocaleFromCode } from '@payloadcms/ui/shared'\nimport { headers as getHeaders } from 'next/headers.js'\nimport { createLocalReq, isEntityHidden, parseCookies } from 'payload'\nimport qs from 'qs'\n\nimport type { Args } from './types.js'\n\nimport { getPayloadHMR } from '../getPayloadHMR.js'\nimport { getRequestLanguage } from '../getRequestLanguage.js'\nimport { handleAdminPage } from './handleAdminPage.js'\nimport { handleAuthRedirect } from './handleAuthRedirect.js'\n\nexport const initPage = async ({\n config: configPromise,\n redirectUnauthenticatedUser = false,\n route,\n searchParams,\n}: Args): Promise<InitPageResult> => {\n const headers = getHeaders()\n const payload = await getPayloadHMR({ config: configPromise })\n\n const {\n collections,\n globals,\n i18n: i18nConfig,\n localization,\n routes: { admin: adminRoute },\n } = payload.config\n\n const queryString = `${qs.stringify(searchParams ?? {}, { addQueryPrefix: true })}`\n const cookies = parseCookies(headers)\n const language = getRequestLanguage({ config: payload.config, cookies, headers })\n\n const i18n: I18nClient = await initI18n({\n config: i18nConfig,\n context: 'client',\n language,\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 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 { permissions, user } = await payload.auth({ headers, req })\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) locale = findLocaleFromCode(localization, defaultLocaleCode)\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 if (redirectUnauthenticatedUser && !user) {\n handleAuthRedirect({\n config: payload.config,\n redirectUnauthenticatedUser,\n route,\n searchParams,\n })\n }\n\n const { collectionConfig, docID, globalConfig } = handleAdminPage({\n adminRoute,\n config: payload.config,\n permissions,\n route,\n })\n\n return {\n collectionConfig,\n cookies,\n docID,\n globalConfig,\n languageOptions,\n locale,\n permissions,\n req,\n translations: i18n.translations,\n visibleEntities,\n }\n}\n"],"names":["initI18n","findLocaleFromCode","headers","getHeaders","createLocalReq","isEntityHidden","parseCookies","qs","getPayloadHMR","getRequestLanguage","handleAdminPage","handleAuthRedirect","initPage","config","configPromise","redirectUnauthenticatedUser","route","searchParams","payload","collections","globals","i18n","i18nConfig","localization","routes","admin","adminRoute","queryString","stringify","addQueryPrefix","cookies","language","context","languageOptions","Object","entries","supportedLanguages","reduce","acc","languageConfig","keys","includes","push","label","translations","general","thisLanguage","value","req","fallbackLocale","host","get","query","parse","depth","ignoreQueryPrefix","url","serverURL","permissions","user","auth","localeParam","locale","defaultLocaleCode","defaultLocale","localeCode","find","collection","limit","where","and","equals","id","key","then","res","docs","error","code","visibleEntities","map","slug","hidden","filter","Boolean","collectionConfig","docID","globalConfig"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/utilities/initPage/index.ts"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { InitPageResult, Locale, PayloadRequest, VisibleEntities } from 'payload'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { findLocaleFromCode } from '@payloadcms/ui/shared'\nimport { headers as getHeaders } from 'next/headers.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 { getRequestLanguage } from '../getRequestLanguage.js'\nimport { handleAdminPage } from './handleAdminPage.js'\nimport { handleAuthRedirect } from './handleAuthRedirect.js'\n\nexport const initPage = async ({\n config: configPromise,\n importMap,\n redirectUnauthenticatedUser = false,\n route,\n searchParams,\n}: Args): Promise<InitPageResult> => {\n const headers = getHeaders()\n const payload = await getPayloadHMR({ config: configPromise, importMap })\n\n const {\n collections,\n globals,\n i18n: i18nConfig,\n localization,\n routes: { admin: adminRoute },\n } = payload.config\n\n const queryString = `${qs.stringify(searchParams ?? {}, { addQueryPrefix: true })}`\n const cookies = parseCookies(headers)\n const language = getRequestLanguage({ config: payload.config, cookies, headers })\n\n const i18n: I18n = await initI18n({\n config: i18nConfig,\n context: 'client',\n language,\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 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 { permissions, user } = await payload.auth({ headers, req })\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) locale = findLocaleFromCode(localization, defaultLocaleCode)\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 if (redirectUnauthenticatedUser && !user) {\n handleAuthRedirect({\n config: payload.config,\n redirectUnauthenticatedUser,\n route,\n searchParams,\n })\n }\n\n const { collectionConfig, docID, globalConfig } = handleAdminPage({\n adminRoute,\n config: payload.config,\n permissions,\n route,\n })\n\n return {\n collectionConfig,\n cookies,\n docID,\n globalConfig,\n languageOptions,\n locale,\n permissions,\n req,\n translations: i18n.translations,\n visibleEntities,\n }\n}\n"],"names":["initI18n","findLocaleFromCode","headers","getHeaders","createLocalReq","isEntityHidden","parseCookies","qs","getPayloadHMR","getRequestLanguage","handleAdminPage","handleAuthRedirect","initPage","config","configPromise","importMap","redirectUnauthenticatedUser","route","searchParams","payload","collections","globals","i18n","i18nConfig","localization","routes","admin","adminRoute","queryString","stringify","addQueryPrefix","cookies","language","context","languageOptions","Object","entries","supportedLanguages","reduce","acc","languageConfig","keys","includes","push","label","translations","general","thisLanguage","value","req","fallbackLocale","host","get","query","parse","depth","ignoreQueryPrefix","url","serverURL","permissions","user","auth","localeParam","locale","defaultLocaleCode","defaultLocale","localeCode","find","collection","limit","where","and","equals","id","key","then","res","docs","error","code","visibleEntities","map","slug","hidden","filter","Boolean","collectionConfig","docID","globalConfig"],"mappings":"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"}
@@ -1,4 +1,16 @@
1
1
  import type { SanitizedConfig } from 'payload';
2
- export declare const isAdminRoute: (route: string, adminRoute: string) => boolean;
3
- export declare const isAdminAuthRoute: (config: SanitizedConfig, route: string, adminRoute: string) => boolean;
2
+ export declare const isAdminRoute: ({ adminRoute, config, route, }: {
3
+ adminRoute: string;
4
+ config: SanitizedConfig;
5
+ route: string;
6
+ }) => boolean;
7
+ export declare const isAdminAuthRoute: ({ adminRoute, config, route, }: {
8
+ adminRoute: string;
9
+ config: SanitizedConfig;
10
+ route: string;
11
+ }) => boolean;
12
+ export declare const getRouteWithoutAdmin: ({ adminRoute, route, }: {
13
+ adminRoute: string;
14
+ route: string;
15
+ }) => string;
4
16
  //# sourceMappingURL=shared.d.ts.map
@@ -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;AAa9C,eAAO,MAAM,YAAY,UAAW,MAAM,cAAc,MAAM,YAE7D,CAAA;AAED,eAAO,MAAM,gBAAgB,WAAY,eAAe,SAAS,MAAM,cAAc,MAAM,YAQ1F,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;AAa9C,eAAO,MAAM,YAAY,mCAItB;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,eAAe,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;CACd,KAAG,OAEH,CAAA;AAED,eAAO,MAAM,gBAAgB,mCAI1B;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,eAAe,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;CACd,KAAG,OAQH,CAAA;AAED,eAAO,MAAM,oBAAoB,2BAG9B;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;CACd,KAAG,MAEH,CAAA"}
@@ -8,12 +8,22 @@ const authRouteKeys = [
8
8
  'unauthorized',
9
9
  'reset'
10
10
  ];
11
- export const isAdminRoute = (route, adminRoute)=>{
12
- return route.startsWith(adminRoute);
11
+ export const isAdminRoute = ({ adminRoute, config, route })=>{
12
+ return route.startsWith(adminRoute) && !isAdminAuthRoute({
13
+ adminRoute,
14
+ config,
15
+ route
16
+ });
13
17
  };
14
- export const isAdminAuthRoute = (config, route, adminRoute)=>{
18
+ export const isAdminAuthRoute = ({ adminRoute, config, route })=>{
15
19
  const authRoutes = config.admin?.routes ? Object.entries(config.admin.routes).filter(([key])=>authRouteKeys.includes(key)).map(([_, value])=>value) : [];
16
- return authRoutes.some((r)=>route.replace(adminRoute, '').startsWith(r));
20
+ return authRoutes.some((r)=>getRouteWithoutAdmin({
21
+ adminRoute,
22
+ route
23
+ }).startsWith(r));
24
+ };
25
+ export const getRouteWithoutAdmin = ({ adminRoute, route })=>{
26
+ return adminRoute && adminRoute !== '/' ? route.replace(adminRoute, '') : route;
17
27
  };
18
28
 
19
29
  //# sourceMappingURL=shared.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utilities/initPage/shared.ts"],"sourcesContent":["import type { SanitizedConfig } from 'payload'\n\nconst authRouteKeys: (keyof SanitizedConfig['admin']['routes'])[] = [\n 'createFirstUser',\n 'forgot',\n 'login',\n 'logout',\n 'forgot',\n 'inactivity',\n 'unauthorized',\n 'reset',\n]\n\nexport const isAdminRoute = (route: string, adminRoute: string) => {\n return route.startsWith(adminRoute)\n}\n\nexport const isAdminAuthRoute = (config: SanitizedConfig, route: string, adminRoute: string) => {\n const authRoutes = config.admin?.routes\n ? Object.entries(config.admin.routes)\n .filter(([key]) => authRouteKeys.includes(key as keyof SanitizedConfig['admin']['routes']))\n .map(([_, value]) => value)\n : []\n\n return authRoutes.some((r) => route.replace(adminRoute, '').startsWith(r))\n}\n"],"names":["authRouteKeys","isAdminRoute","route","adminRoute","startsWith","isAdminAuthRoute","config","authRoutes","admin","routes","Object","entries","filter","key","includes","map","_","value","some","r","replace"],"mappings":"AAEA,MAAMA,gBAA8D;IAClE;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AAED,OAAO,MAAMC,eAAe,CAACC,OAAeC;IAC1C,OAAOD,MAAME,UAAU,CAACD;AAC1B,EAAC;AAED,OAAO,MAAME,mBAAmB,CAACC,QAAyBJ,OAAeC;IACvE,MAAMI,aAAaD,OAAOE,KAAK,EAAEC,SAC7BC,OAAOC,OAAO,CAACL,OAAOE,KAAK,CAACC,MAAM,EAC/BG,MAAM,CAAC,CAAC,CAACC,IAAI,GAAKb,cAAcc,QAAQ,CAACD,MACzCE,GAAG,CAAC,CAAC,CAACC,GAAGC,MAAM,GAAKA,SACvB,EAAE;IAEN,OAAOV,WAAWW,IAAI,CAAC,CAACC,IAAMjB,MAAMkB,OAAO,CAACjB,YAAY,IAAIC,UAAU,CAACe;AACzE,EAAC"}
1
+ {"version":3,"sources":["../../../src/utilities/initPage/shared.ts"],"sourcesContent":["import type { SanitizedConfig } from 'payload'\n\nconst authRouteKeys: (keyof SanitizedConfig['admin']['routes'])[] = [\n 'createFirstUser',\n 'forgot',\n 'login',\n 'logout',\n 'forgot',\n 'inactivity',\n 'unauthorized',\n 'reset',\n]\n\nexport const isAdminRoute = ({\n adminRoute,\n config,\n route,\n}: {\n adminRoute: string\n config: SanitizedConfig\n route: string\n}): boolean => {\n return route.startsWith(adminRoute) && !isAdminAuthRoute({ adminRoute, config, route })\n}\n\nexport const isAdminAuthRoute = ({\n adminRoute,\n config,\n route,\n}: {\n adminRoute: string\n config: SanitizedConfig\n route: string\n}): boolean => {\n const authRoutes = config.admin?.routes\n ? Object.entries(config.admin.routes)\n .filter(([key]) => authRouteKeys.includes(key as keyof SanitizedConfig['admin']['routes']))\n .map(([_, value]) => value)\n : []\n\n return authRoutes.some((r) => getRouteWithoutAdmin({ adminRoute, route }).startsWith(r))\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"],"names":["authRouteKeys","isAdminRoute","adminRoute","config","route","startsWith","isAdminAuthRoute","authRoutes","admin","routes","Object","entries","filter","key","includes","map","_","value","some","r","getRouteWithoutAdmin","replace"],"mappings":"AAEA,MAAMA,gBAA8D;IAClE;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AAED,OAAO,MAAMC,eAAe,CAAC,EAC3BC,UAAU,EACVC,MAAM,EACNC,KAAK,EAKN;IACC,OAAOA,MAAMC,UAAU,CAACH,eAAe,CAACI,iBAAiB;QAAEJ;QAAYC;QAAQC;IAAM;AACvF,EAAC;AAED,OAAO,MAAME,mBAAmB,CAAC,EAC/BJ,UAAU,EACVC,MAAM,EACNC,KAAK,EAKN;IACC,MAAMG,aAAaJ,OAAOK,KAAK,EAAEC,SAC7BC,OAAOC,OAAO,CAACR,OAAOK,KAAK,CAACC,MAAM,EAC/BG,MAAM,CAAC,CAAC,CAACC,IAAI,GAAKb,cAAcc,QAAQ,CAACD,MACzCE,GAAG,CAAC,CAAC,CAACC,GAAGC,MAAM,GAAKA,SACvB,EAAE;IAEN,OAAOV,WAAWW,IAAI,CAAC,CAACC,IAAMC,qBAAqB;YAAElB;YAAYE;QAAM,GAAGC,UAAU,CAACc;AACvF,EAAC;AAED,OAAO,MAAMC,uBAAuB,CAAC,EACnClB,UAAU,EACVE,KAAK,EAIN;IACC,OAAOF,cAAcA,eAAe,MAAME,MAAMiB,OAAO,CAACnB,YAAY,MAAME;AAC5E,EAAC"}
@@ -1,10 +1,11 @@
1
- import type { SanitizedConfig } from 'payload';
1
+ import type { ImportMap, SanitizedConfig } from 'payload';
2
2
  export type Args = {
3
3
  /**
4
4
  * Your sanitized Payload config.
5
5
  * If unresolved, this function will await the promise.
6
6
  */
7
7
  config: Promise<SanitizedConfig> | SanitizedConfig;
8
+ importMap: ImportMap;
8
9
  /**
9
10
  * If true, redirects unauthenticated users to the admin login page.
10
11
  * If a string is provided, the user will be redirected to that specific URL.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,MAAM,MAAM,IAAI,GAAG;IACjB;;;OAGG;IACH,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAA;IAClD;;;OAGG;IACH,2BAA2B,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IAC9C;;OAEG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;OAEG;IACH,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;KAAE,CAAA;CAC/D,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAEzD,MAAM,MAAM,IAAI,GAAG;IACjB;;;OAGG;IACH,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAA;IAClD,SAAS,EAAE,SAAS,CAAA;IACpB;;;OAGG;IACH,2BAA2B,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IAC9C;;OAEG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;OAEG;IACH,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;KAAE,CAAA;CAC/D,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utilities/initPage/types.ts"],"sourcesContent":["import type { SanitizedConfig } from 'payload'\n\nexport type Args = {\n /**\n * Your sanitized Payload config.\n * If unresolved, this function will await the promise.\n */\n config: Promise<SanitizedConfig> | SanitizedConfig\n /**\n * If true, redirects unauthenticated users to the admin login page.\n * If a string is provided, the user will be redirected to that specific URL.\n */\n redirectUnauthenticatedUser?: boolean | string\n /**\n * The current route, i.e. `/admin/collections/posts`.\n */\n route: string\n /**\n * The search parameters of the current route provided to all pages in Next.js.\n */\n searchParams: { [key: string]: string | string[] | undefined }\n}\n"],"names":[],"mappings":"AAEA,WAmBC"}
1
+ {"version":3,"sources":["../../../src/utilities/initPage/types.ts"],"sourcesContent":["import type { ImportMap, SanitizedConfig } from 'payload'\n\nexport type Args = {\n /**\n * Your sanitized Payload config.\n * If unresolved, this function will await the promise.\n */\n config: Promise<SanitizedConfig> | SanitizedConfig\n importMap: ImportMap\n /**\n * If true, redirects unauthenticated users to the admin login page.\n * If a string is provided, the user will be redirected to that specific URL.\n */\n redirectUnauthenticatedUser?: boolean | string\n /**\n * The current route, i.e. `/admin/collections/posts`.\n */\n route: string\n /**\n * The search parameters of the current route provided to all pages in Next.js.\n */\n searchParams: { [key: string]: string | string[] | undefined }\n}\n"],"names":[],"mappings":"AAEA,WAoBC"}
@@ -1,2 +1,2 @@
1
- export declare function mergeHeaders(sourceHeaders: Headers, destinationHeaders: Headers): void;
1
+ export declare const mergeHeaders: (sourceHeaders: Headers, destinationHeaders: Headers) => Headers;
2
2
  //# sourceMappingURL=mergeHeaders.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mergeHeaders.d.ts","sourceRoot":"","sources":["../../src/utilities/mergeHeaders.ts"],"names":[],"mappings":"AAEA,wBAAgB,YAAY,CAAC,aAAa,EAAE,OAAO,EAAE,kBAAkB,EAAE,OAAO,GAAG,IAAI,CA8BtF"}
1
+ {"version":3,"file":"mergeHeaders.d.ts","sourceRoot":"","sources":["../../src/utilities/mergeHeaders.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,kBAAmB,OAAO,sBAAsB,OAAO,KAAG,OAUlF,CAAA"}
@@ -1,37 +1,11 @@
1
- const headersToJoin = [
2
- 'set-cookie',
3
- 'warning',
4
- 'www-authenticate',
5
- 'proxy-authenticate',
6
- 'vary'
7
- ];
8
- export function mergeHeaders(sourceHeaders, destinationHeaders) {
9
- // Create a map to store combined headers
10
- const combinedHeaders = new Headers();
11
- // Add existing destination headers to the combined map
12
- destinationHeaders.forEach((value, key)=>{
13
- combinedHeaders.set(key, value);
14
- });
15
- // Add source headers to the combined map, joining specific headers
1
+ export const mergeHeaders = (sourceHeaders, destinationHeaders)=>{
2
+ // Create a new Headers object
3
+ const combinedHeaders = new Headers(destinationHeaders);
4
+ // Append sourceHeaders to combinedHeaders
16
5
  sourceHeaders.forEach((value, key)=>{
17
- const lowerKey = key.toLowerCase();
18
- if (headersToJoin.includes(lowerKey)) {
19
- if (combinedHeaders.has(key)) {
20
- combinedHeaders.set(key, `${combinedHeaders.get(key)}, ${value}`);
21
- } else {
22
- combinedHeaders.set(key, value);
23
- }
24
- } else {
25
- combinedHeaders.set(key, value);
26
- }
27
- });
28
- // Clear the destination headers and set the combined headers
29
- destinationHeaders.forEach((_, key)=>{
30
- destinationHeaders.delete(key);
31
- });
32
- combinedHeaders.forEach((value, key)=>{
33
- destinationHeaders.append(key, value);
6
+ combinedHeaders.append(key, value);
34
7
  });
35
- }
8
+ return combinedHeaders;
9
+ };
36
10
 
37
11
  //# sourceMappingURL=mergeHeaders.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/mergeHeaders.ts"],"sourcesContent":["const headersToJoin = ['set-cookie', 'warning', 'www-authenticate', 'proxy-authenticate', 'vary']\n\nexport function mergeHeaders(sourceHeaders: Headers, destinationHeaders: Headers): void {\n // Create a map to store combined headers\n const combinedHeaders = new Headers()\n\n // Add existing destination headers to the combined map\n destinationHeaders.forEach((value, key) => {\n combinedHeaders.set(key, value)\n })\n\n // Add source headers to the combined map, joining specific headers\n sourceHeaders.forEach((value, key) => {\n const lowerKey = key.toLowerCase()\n if (headersToJoin.includes(lowerKey)) {\n if (combinedHeaders.has(key)) {\n combinedHeaders.set(key, `${combinedHeaders.get(key)}, ${value}`)\n } else {\n combinedHeaders.set(key, value)\n }\n } else {\n combinedHeaders.set(key, value)\n }\n })\n\n // Clear the destination headers and set the combined headers\n destinationHeaders.forEach((_, key) => {\n destinationHeaders.delete(key)\n })\n combinedHeaders.forEach((value, key) => {\n destinationHeaders.append(key, value)\n })\n}\n"],"names":["headersToJoin","mergeHeaders","sourceHeaders","destinationHeaders","combinedHeaders","Headers","forEach","value","key","set","lowerKey","toLowerCase","includes","has","get","_","delete","append"],"mappings":"AAAA,MAAMA,gBAAgB;IAAC;IAAc;IAAW;IAAoB;IAAsB;CAAO;AAEjG,OAAO,SAASC,aAAaC,aAAsB,EAAEC,kBAA2B;IAC9E,yCAAyC;IACzC,MAAMC,kBAAkB,IAAIC;IAE5B,uDAAuD;IACvDF,mBAAmBG,OAAO,CAAC,CAACC,OAAOC;QACjCJ,gBAAgBK,GAAG,CAACD,KAAKD;IAC3B;IAEA,mEAAmE;IACnEL,cAAcI,OAAO,CAAC,CAACC,OAAOC;QAC5B,MAAME,WAAWF,IAAIG,WAAW;QAChC,IAAIX,cAAcY,QAAQ,CAACF,WAAW;YACpC,IAAIN,gBAAgBS,GAAG,CAACL,MAAM;gBAC5BJ,gBAAgBK,GAAG,CAACD,KAAK,CAAC,EAAEJ,gBAAgBU,GAAG,CAACN,KAAK,EAAE,EAAED,MAAM,CAAC;YAClE,OAAO;gBACLH,gBAAgBK,GAAG,CAACD,KAAKD;YAC3B;QACF,OAAO;YACLH,gBAAgBK,GAAG,CAACD,KAAKD;QAC3B;IACF;IAEA,6DAA6D;IAC7DJ,mBAAmBG,OAAO,CAAC,CAACS,GAAGP;QAC7BL,mBAAmBa,MAAM,CAACR;IAC5B;IACAJ,gBAAgBE,OAAO,CAAC,CAACC,OAAOC;QAC9BL,mBAAmBc,MAAM,CAACT,KAAKD;IACjC;AACF"}
1
+ {"version":3,"sources":["../../src/utilities/mergeHeaders.ts"],"sourcesContent":["export const mergeHeaders = (sourceHeaders: Headers, destinationHeaders: Headers): Headers => {\n // Create a new Headers object\n const combinedHeaders = new Headers(destinationHeaders)\n\n // Append sourceHeaders to combinedHeaders\n sourceHeaders.forEach((value, key) => {\n combinedHeaders.append(key, value)\n })\n\n return combinedHeaders\n}\n"],"names":["mergeHeaders","sourceHeaders","destinationHeaders","combinedHeaders","Headers","forEach","value","key","append"],"mappings":"AAAA,OAAO,MAAMA,eAAe,CAACC,eAAwBC;IACnD,8BAA8B;IAC9B,MAAMC,kBAAkB,IAAIC,QAAQF;IAEpC,0CAA0C;IAC1CD,cAAcI,OAAO,CAAC,CAACC,OAAOC;QAC5BJ,gBAAgBK,MAAM,CAACD,KAAKD;IAC9B;IAEA,OAAOH;AACT,EAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { MetaConfig } from 'payload';
2
- export declare const meta: (args: MetaConfig & {
2
+ export declare const meta: (args: {
3
3
  serverURL: string;
4
- }) => Promise<any>;
4
+ } & MetaConfig) => Promise<any>;
5
5
  //# sourceMappingURL=meta.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../src/utilities/meta.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAYzC,eAAO,MAAM,IAAI,SAAgB,UAAU,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,KAAG,OAAO,CAAC,GAAG,CAwFhF,CAAA"}
1
+ {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../src/utilities/meta.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAc,UAAU,EAAE,MAAM,SAAS,CAAA;AAYrD,eAAO,MAAM,IAAI,SAAgB;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,UAAU,KAAG,OAAO,CAAC,GAAG,CAwFhF,CAAA"}