@payloadcms/next 3.68.0-internal-debug.e9b66ee → 3.68.0-internal.10bf491

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 (398) hide show
  1. package/dist/auth/login.js +58 -52
  2. package/dist/auth/login.js.map +1 -1
  3. package/dist/auth/logout.js +44 -39
  4. package/dist/auth/logout.js.map +1 -1
  5. package/dist/auth/refresh.js +47 -45
  6. package/dist/auth/refresh.js.map +1 -1
  7. package/dist/cjs/withPayload.cjs +41 -65
  8. package/dist/cjs/withPayload.cjs.map +1 -1
  9. package/dist/config.js +0 -1
  10. package/dist/config.js.map +1 -1
  11. package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js +15 -9
  12. package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js.map +1 -1
  13. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +72 -26
  14. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
  15. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +54 -36
  16. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  17. package/dist/elements/DocumentHeader/Tabs/index.js +64 -42
  18. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  19. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +24 -8
  20. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  21. package/dist/elements/DocumentHeader/Tabs/tabs/index.js +69 -61
  22. package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
  23. package/dist/elements/DocumentHeader/index.js +29 -11
  24. package/dist/elements/DocumentHeader/index.js.map +1 -1
  25. package/dist/elements/FormHeader/index.js +17 -10
  26. package/dist/elements/FormHeader/index.js.map +1 -1
  27. package/dist/elements/Logo/index.js +34 -19
  28. package/dist/elements/Logo/index.js.map +1 -1
  29. package/dist/elements/Nav/NavHamburger/index.js +45 -8
  30. package/dist/elements/Nav/NavHamburger/index.js.map +1 -1
  31. package/dist/elements/Nav/NavWrapper/index.js +55 -15
  32. package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
  33. package/dist/elements/Nav/SettingsMenuButton/index.js +40 -11
  34. package/dist/elements/Nav/SettingsMenuButton/index.js.map +1 -1
  35. package/dist/elements/Nav/getNavPrefs.js +22 -27
  36. package/dist/elements/Nav/getNavPrefs.js.map +1 -1
  37. package/dist/elements/Nav/index.client.js +111 -42
  38. package/dist/elements/Nav/index.client.js.map +1 -1
  39. package/dist/elements/Nav/index.js +121 -90
  40. package/dist/elements/Nav/index.js.map +1 -1
  41. package/dist/exports/auth.js +0 -1
  42. package/dist/exports/auth.js.map +1 -1
  43. package/dist/exports/client.js +1 -1
  44. package/dist/exports/client.js.map +1 -1
  45. package/dist/exports/layouts.js +0 -1
  46. package/dist/exports/layouts.js.map +1 -1
  47. package/dist/exports/routes.js +0 -1
  48. package/dist/exports/routes.js.map +1 -1
  49. package/dist/exports/rsc.js +0 -1
  50. package/dist/exports/rsc.js.map +1 -1
  51. package/dist/exports/templates.js +0 -1
  52. package/dist/exports/templates.js.map +1 -1
  53. package/dist/exports/utilities.js +12 -7
  54. package/dist/exports/utilities.js.map +1 -1
  55. package/dist/exports/views.js +0 -1
  56. package/dist/exports/views.js.map +1 -1
  57. package/dist/index.js +0 -1
  58. package/dist/index.js.map +1 -1
  59. package/dist/layouts/Root/NestProviders.js +21 -13
  60. package/dist/layouts/Root/NestProviders.js.map +1 -1
  61. package/dist/layouts/Root/checkDependencies.js +41 -49
  62. package/dist/layouts/Root/checkDependencies.js.map +1 -1
  63. package/dist/layouts/Root/index.js +104 -64
  64. package/dist/layouts/Root/index.js.map +1 -1
  65. package/dist/prod/styles.css +1 -5
  66. package/dist/routes/graphql/handler.js +122 -114
  67. package/dist/routes/graphql/handler.js.map +1 -1
  68. package/dist/routes/graphql/index.js +0 -1
  69. package/dist/routes/graphql/index.js.map +1 -1
  70. package/dist/routes/graphql/playground.js +23 -24
  71. package/dist/routes/graphql/playground.js.map +1 -1
  72. package/dist/routes/index.js +0 -1
  73. package/dist/routes/index.js.map +1 -1
  74. package/dist/routes/rest/index.js +19 -20
  75. package/dist/routes/rest/index.js.map +1 -1
  76. package/dist/routes/rest/og/image.js +72 -60
  77. package/dist/routes/rest/og/image.js.map +1 -1
  78. package/dist/routes/rest/og/index.js +55 -46
  79. package/dist/routes/rest/og/index.js.map +1 -1
  80. package/dist/templates/Default/NavHamburger/index.js +21 -4
  81. package/dist/templates/Default/NavHamburger/index.js.map +1 -1
  82. package/dist/templates/Default/Wrapper/index.js +45 -14
  83. package/dist/templates/Default/Wrapper/index.js.map +1 -1
  84. package/dist/templates/Default/index.js +133 -115
  85. package/dist/templates/Default/index.js.map +1 -1
  86. package/dist/templates/Minimal/index.js +18 -12
  87. package/dist/templates/Minimal/index.js.map +1 -1
  88. package/dist/utilities/getExistingAuthToken.js +2 -3
  89. package/dist/utilities/getExistingAuthToken.js.map +1 -1
  90. package/dist/utilities/getNextRequestI18n.js +13 -12
  91. package/dist/utilities/getNextRequestI18n.js.map +1 -1
  92. package/dist/utilities/getPayloadHMR.js +5 -5
  93. package/dist/utilities/getPayloadHMR.js.map +1 -1
  94. package/dist/utilities/getPreferences.js +22 -27
  95. package/dist/utilities/getPreferences.js.map +1 -1
  96. package/dist/utilities/getRequestLocale.js +14 -13
  97. package/dist/utilities/getRequestLocale.js.map +1 -1
  98. package/dist/utilities/getRequestTheme.js +19 -19
  99. package/dist/utilities/getRequestTheme.js.map +1 -1
  100. package/dist/utilities/getRouteWithoutAdmin.js +5 -3
  101. package/dist/utilities/getRouteWithoutAdmin.js.map +1 -1
  102. package/dist/utilities/getVisibleEntities.js +23 -12
  103. package/dist/utilities/getVisibleEntities.js.map +1 -1
  104. package/dist/utilities/handleAuthRedirect.js +36 -22
  105. package/dist/utilities/handleAuthRedirect.js.map +1 -1
  106. package/dist/utilities/handleServerFunctions.js +39 -32
  107. package/dist/utilities/handleServerFunctions.js.map +1 -1
  108. package/dist/utilities/initReq.js +96 -78
  109. package/dist/utilities/initReq.js.map +1 -1
  110. package/dist/utilities/isCustomAdminView.js +26 -22
  111. package/dist/utilities/isCustomAdminView.js.map +1 -1
  112. package/dist/utilities/isPublicAdminRoute.js +20 -26
  113. package/dist/utilities/isPublicAdminRoute.js.map +1 -1
  114. package/dist/utilities/meta.js +63 -68
  115. package/dist/utilities/meta.js.map +1 -1
  116. package/dist/utilities/selectiveCache.js +26 -25
  117. package/dist/utilities/selectiveCache.js.map +1 -1
  118. package/dist/utilities/setPayloadAuthCookie.js +22 -19
  119. package/dist/utilities/setPayloadAuthCookie.js.map +1 -1
  120. package/dist/utilities/slugify.js +33 -24
  121. package/dist/utilities/slugify.js.map +1 -1
  122. package/dist/utilities/timestamp.js +6 -7
  123. package/dist/utilities/timestamp.js.map +1 -1
  124. package/dist/views/API/LocaleSelector/index.js +39 -7
  125. package/dist/views/API/LocaleSelector/index.js.map +1 -1
  126. package/dist/views/API/RenderJSON/index.js +119 -67
  127. package/dist/views/API/RenderJSON/index.js.map +1 -1
  128. package/dist/views/API/index.client.js +184 -132
  129. package/dist/views/API/index.client.js.map +1 -1
  130. package/dist/views/API/index.js +3 -2
  131. package/dist/views/API/index.js.map +1 -1
  132. package/dist/views/API/metadata.js +23 -18
  133. package/dist/views/API/metadata.js.map +1 -1
  134. package/dist/views/Account/ResetPreferences/index.js +91 -47
  135. package/dist/views/Account/ResetPreferences/index.js.map +1 -1
  136. package/dist/views/Account/Settings/LanguageSelector.js +48 -7
  137. package/dist/views/Account/Settings/LanguageSelector.js.map +1 -1
  138. package/dist/views/Account/Settings/index.js +29 -17
  139. package/dist/views/Account/Settings/index.js.map +1 -1
  140. package/dist/views/Account/ToggleTheme/index.js +56 -28
  141. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  142. package/dist/views/Account/index.client.js +32 -16
  143. package/dist/views/Account/index.client.js.map +1 -1
  144. package/dist/views/Account/index.js +156 -87
  145. package/dist/views/Account/index.js.map +1 -1
  146. package/dist/views/Account/metadata.js +12 -8
  147. package/dist/views/Account/metadata.js.map +1 -1
  148. package/dist/views/BrowseByFolder/buildView.js +159 -130
  149. package/dist/views/BrowseByFolder/buildView.js.map +1 -1
  150. package/dist/views/BrowseByFolder/index.js +16 -16
  151. package/dist/views/BrowseByFolder/index.js.map +1 -1
  152. package/dist/views/BrowseByFolder/metadata.js +15 -13
  153. package/dist/views/BrowseByFolder/metadata.js.map +1 -1
  154. package/dist/views/CollectionFolders/buildView.js +144 -114
  155. package/dist/views/CollectionFolders/buildView.js.map +1 -1
  156. package/dist/views/CollectionFolders/index.js +16 -16
  157. package/dist/views/CollectionFolders/index.js.map +1 -1
  158. package/dist/views/CollectionFolders/metadata.js +21 -18
  159. package/dist/views/CollectionFolders/metadata.js.map +1 -1
  160. package/dist/views/CollectionFolders/renderFolderViewSlots.js +61 -58
  161. package/dist/views/CollectionFolders/renderFolderViewSlots.js.map +1 -1
  162. package/dist/views/CollectionTrash/index.js +17 -17
  163. package/dist/views/CollectionTrash/index.js.map +1 -1
  164. package/dist/views/CollectionTrash/metadata.js +21 -18
  165. package/dist/views/CollectionTrash/metadata.js.map +1 -1
  166. package/dist/views/CreateFirstUser/index.client.js +98 -56
  167. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  168. package/dist/views/CreateFirstUser/index.js +82 -57
  169. package/dist/views/CreateFirstUser/index.js.map +1 -1
  170. package/dist/views/CreateFirstUser/metadata.js +12 -8
  171. package/dist/views/CreateFirstUser/metadata.js.map +1 -1
  172. package/dist/views/Dashboard/Default/index.js +128 -77
  173. package/dist/views/Dashboard/Default/index.js.map +1 -1
  174. package/dist/views/Dashboard/index.js +90 -78
  175. package/dist/views/Dashboard/index.js.map +1 -1
  176. package/dist/views/Dashboard/metadata.js +14 -10
  177. package/dist/views/Dashboard/metadata.js.map +1 -1
  178. package/dist/views/Document/getCustomDocumentViewByKey.js +2 -3
  179. package/dist/views/Document/getCustomDocumentViewByKey.js.map +1 -1
  180. package/dist/views/Document/getCustomViewByRoute.js +30 -27
  181. package/dist/views/Document/getCustomViewByRoute.js.map +1 -1
  182. package/dist/views/Document/getDocPreferences.js +41 -40
  183. package/dist/views/Document/getDocPreferences.js.map +1 -1
  184. package/dist/views/Document/getDocumentData.js +55 -44
  185. package/dist/views/Document/getDocumentData.js.map +1 -1
  186. package/dist/views/Document/getDocumentPermissions.js +80 -77
  187. package/dist/views/Document/getDocumentPermissions.js.map +1 -1
  188. package/dist/views/Document/getDocumentView.js +283 -313
  189. package/dist/views/Document/getDocumentView.js.map +1 -1
  190. package/dist/views/Document/getIsLocked.js +66 -66
  191. package/dist/views/Document/getIsLocked.js.map +1 -1
  192. package/dist/views/Document/getMetaBySegment.js +136 -130
  193. package/dist/views/Document/getMetaBySegment.js.map +1 -1
  194. package/dist/views/Document/getVersions.js +194 -204
  195. package/dist/views/Document/getVersions.js.map +1 -1
  196. package/dist/views/Document/handleServerFunction.js +128 -103
  197. package/dist/views/Document/handleServerFunction.js.map +1 -1
  198. package/dist/views/Document/index.js +351 -250
  199. package/dist/views/Document/index.js.map +1 -1
  200. package/dist/views/Document/metadata.js +1 -2
  201. package/dist/views/Document/metadata.js.map +1 -1
  202. package/dist/views/Document/renderDocumentSlots.js +132 -121
  203. package/dist/views/Document/renderDocumentSlots.js.map +1 -1
  204. package/dist/views/Edit/index.js +7 -3
  205. package/dist/views/Edit/index.js.map +1 -1
  206. package/dist/views/Edit/metadata.js +46 -36
  207. package/dist/views/Edit/metadata.js.map +1 -1
  208. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +151 -70
  209. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  210. package/dist/views/ForgotPassword/index.js +61 -26
  211. package/dist/views/ForgotPassword/index.js.map +1 -1
  212. package/dist/views/ForgotPassword/metadata.js +12 -8
  213. package/dist/views/ForgotPassword/metadata.js.map +1 -1
  214. package/dist/views/List/createSerializableValue.js +11 -12
  215. package/dist/views/List/createSerializableValue.js.map +1 -1
  216. package/dist/views/List/enrichDocsWithVersionStatus.js +86 -86
  217. package/dist/views/List/enrichDocsWithVersionStatus.js.map +1 -1
  218. package/dist/views/List/extractRelationshipDisplayValue.js +14 -15
  219. package/dist/views/List/extractRelationshipDisplayValue.js.map +1 -1
  220. package/dist/views/List/extractValueOrRelationshipID.js +15 -16
  221. package/dist/views/List/extractValueOrRelationshipID.js.map +1 -1
  222. package/dist/views/List/handleGroupBy.js +150 -133
  223. package/dist/views/List/handleGroupBy.js.map +1 -1
  224. package/dist/views/List/handleServerFunction.js +119 -96
  225. package/dist/views/List/handleServerFunction.js.map +1 -1
  226. package/dist/views/List/index.js +324 -284
  227. package/dist/views/List/index.js.map +1 -1
  228. package/dist/views/List/metadata.js +20 -17
  229. package/dist/views/List/metadata.js.map +1 -1
  230. package/dist/views/List/renderListViewSlots.js +75 -70
  231. package/dist/views/List/renderListViewSlots.js.map +1 -1
  232. package/dist/views/List/resolveAllFilterOptions.js +45 -43
  233. package/dist/views/List/resolveAllFilterOptions.js.map +1 -1
  234. package/dist/views/List/transformColumnsToSelect.js +8 -9
  235. package/dist/views/List/transformColumnsToSelect.js.map +1 -1
  236. package/dist/views/Login/LoginField/index.js +90 -32
  237. package/dist/views/Login/LoginField/index.js.map +1 -1
  238. package/dist/views/Login/LoginForm/index.js +156 -55
  239. package/dist/views/Login/LoginForm/index.js.map +1 -1
  240. package/dist/views/Login/index.js +86 -50
  241. package/dist/views/Login/index.js.map +1 -1
  242. package/dist/views/Login/metadata.js +12 -8
  243. package/dist/views/Login/metadata.js.map +1 -1
  244. package/dist/views/Logout/LogoutClient.js +119 -54
  245. package/dist/views/Logout/LogoutClient.js.map +1 -1
  246. package/dist/views/Logout/index.js +30 -8
  247. package/dist/views/Logout/index.js.map +1 -1
  248. package/dist/views/Logout/metadata.js +11 -7
  249. package/dist/views/Logout/metadata.js.map +1 -1
  250. package/dist/views/NotFound/index.client.js +83 -32
  251. package/dist/views/NotFound/index.client.js.map +1 -1
  252. package/dist/views/NotFound/index.js +73 -44
  253. package/dist/views/NotFound/index.js.map +1 -1
  254. package/dist/views/NotFound/metadata.js +9 -7
  255. package/dist/views/NotFound/metadata.js.map +1 -1
  256. package/dist/views/ResetPassword/ResetPasswordForm/index.js +107 -49
  257. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -1
  258. package/dist/views/ResetPassword/index.js +72 -29
  259. package/dist/views/ResetPassword/index.js.map +1 -1
  260. package/dist/views/ResetPassword/metadata.js +12 -8
  261. package/dist/views/ResetPassword/metadata.js.map +1 -1
  262. package/dist/views/Root/attachViewActions.js +23 -18
  263. package/dist/views/Root/attachViewActions.js.map +1 -1
  264. package/dist/views/Root/generateCustomViewMetadata.js +21 -19
  265. package/dist/views/Root/generateCustomViewMetadata.js.map +1 -1
  266. package/dist/views/Root/getCustomViewByKey.js +14 -12
  267. package/dist/views/Root/getCustomViewByKey.js.map +1 -1
  268. package/dist/views/Root/getCustomViewByRoute.js +42 -31
  269. package/dist/views/Root/getCustomViewByRoute.js.map +1 -1
  270. package/dist/views/Root/getDocumentViewInfo.js +23 -24
  271. package/dist/views/Root/getDocumentViewInfo.js.map +1 -1
  272. package/dist/views/Root/getRouteData.js +325 -333
  273. package/dist/views/Root/getRouteData.js.map +1 -1
  274. package/dist/views/Root/index.js +265 -203
  275. package/dist/views/Root/index.js.map +1 -1
  276. package/dist/views/Root/isPathMatchingRoute.js +26 -21
  277. package/dist/views/Root/isPathMatchingRoute.js.map +1 -1
  278. package/dist/views/Root/metadata.js +181 -176
  279. package/dist/views/Root/metadata.js.map +1 -1
  280. package/dist/views/Unauthorized/index.js +45 -18
  281. package/dist/views/Unauthorized/index.js.map +1 -1
  282. package/dist/views/Unauthorized/metadata.js +12 -8
  283. package/dist/views/Unauthorized/metadata.js.map +1 -1
  284. package/dist/views/Verify/index.client.js +43 -25
  285. package/dist/views/Verify/index.client.js.map +1 -1
  286. package/dist/views/Verify/index.js +62 -31
  287. package/dist/views/Verify/index.js.map +1 -1
  288. package/dist/views/Verify/metadata.js +12 -8
  289. package/dist/views/Verify/metadata.js.map +1 -1
  290. package/dist/views/Version/Default/SelectedLocalesContext.js +4 -4
  291. package/dist/views/Version/Default/SelectedLocalesContext.js.map +1 -1
  292. package/dist/views/Version/Default/SetStepNav.js +127 -86
  293. package/dist/views/Version/Default/SetStepNav.js.map +1 -1
  294. package/dist/views/Version/Default/index.js +236 -174
  295. package/dist/views/Version/Default/index.js.map +1 -1
  296. package/dist/views/Version/Default/types.js +1 -2
  297. package/dist/views/Version/Default/types.js.map +1 -1
  298. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js +120 -54
  299. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
  300. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js +74 -37
  301. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -1
  302. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +408 -363
  303. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  304. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +52 -12
  305. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
  306. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +66 -21
  307. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -1
  308. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +57 -15
  309. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
  310. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +118 -55
  311. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  312. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js +41 -36
  313. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js.map +1 -1
  314. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +179 -65
  315. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  316. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js +12 -5
  317. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js.map +1 -1
  318. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +72 -34
  319. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  320. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +139 -57
  321. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  322. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +80 -42
  323. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  324. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js +211 -103
  325. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js.map +1 -1
  326. package/dist/views/Version/RenderFieldsToDiff/fields/index.js +22 -23
  327. package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
  328. package/dist/views/Version/RenderFieldsToDiff/index.js +9 -4
  329. package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
  330. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js +228 -213
  331. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js.map +1 -1
  332. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js +826 -1005
  333. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js.map +1 -1
  334. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js +1 -2
  335. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js.map +1 -1
  336. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js +43 -44
  337. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js.map +1 -1
  338. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.js +22 -25
  339. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.js.map +1 -1
  340. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js +36 -32
  341. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js.map +1 -1
  342. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js +129 -145
  343. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js.map +1 -1
  344. package/dist/views/Version/Restore/index.js +92 -77
  345. package/dist/views/Version/Restore/index.js.map +1 -1
  346. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js +50 -25
  347. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -1
  348. package/dist/views/Version/SelectComparison/VersionDrawer/index.js +227 -140
  349. package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
  350. package/dist/views/Version/SelectComparison/index.js +51 -44
  351. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  352. package/dist/views/Version/SelectComparison/types.js +1 -2
  353. package/dist/views/Version/SelectComparison/types.js.map +1 -1
  354. package/dist/views/Version/SelectLocales/index.js +30 -16
  355. package/dist/views/Version/SelectLocales/index.js.map +1 -1
  356. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js +95 -37
  357. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js.map +1 -1
  358. package/dist/views/Version/VersionPillLabel/getVersionLabel.js +27 -23
  359. package/dist/views/Version/VersionPillLabel/getVersionLabel.js.map +1 -1
  360. package/dist/views/Version/fetchVersions.js +138 -113
  361. package/dist/views/Version/fetchVersions.js.map +1 -1
  362. package/dist/views/Version/index.js +323 -283
  363. package/dist/views/Version/index.js.map +1 -1
  364. package/dist/views/Version/metadata.js +50 -43
  365. package/dist/views/Version/metadata.js.map +1 -1
  366. package/dist/views/Versions/buildColumns.js +80 -47
  367. package/dist/views/Versions/buildColumns.js.map +1 -1
  368. package/dist/views/Versions/cells/AutosaveCell/index.js +39 -8
  369. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  370. package/dist/views/Versions/cells/CreatedAt/index.js +54 -25
  371. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  372. package/dist/views/Versions/cells/ID/index.js +9 -4
  373. package/dist/views/Versions/cells/ID/index.js.map +1 -1
  374. package/dist/views/Versions/index.client.js +83 -28
  375. package/dist/views/Versions/index.client.js.map +1 -1
  376. package/dist/views/Versions/index.js +140 -94
  377. package/dist/views/Versions/index.js.map +1 -1
  378. package/dist/views/Versions/metadata.js +44 -37
  379. package/dist/views/Versions/metadata.js.map +1 -1
  380. package/dist/views/Versions/types.js +1 -2
  381. package/dist/views/Versions/types.js.map +1 -1
  382. package/dist/withPayload.d.ts +8 -2
  383. package/dist/withPayload.d.ts.map +1 -1
  384. package/dist/withPayload.js +145 -219
  385. package/dist/withPayload.js.map +1 -1
  386. package/dist/withPayload.utils.d.ts +58 -0
  387. package/dist/withPayload.utils.d.ts.map +1 -0
  388. package/dist/withPayload.utils.js +101 -0
  389. package/dist/withPayload.utils.js.map +1 -0
  390. package/dist/withPayloadLegacy.d.ts +6 -0
  391. package/dist/withPayloadLegacy.d.ts.map +1 -0
  392. package/dist/withPayloadLegacy.js +44 -0
  393. package/dist/withPayloadLegacy.js.map +1 -0
  394. package/package.json +15 -17
  395. package/dist/esbuildEntry.d.ts +0 -5
  396. package/dist/esbuildEntry.d.ts.map +0 -1
  397. package/dist/esbuildEntry.js +0 -6
  398. package/dist/esbuildEntry.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/views/Root/index.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { Metadata } from 'next'\nimport type {\n AdminViewClientProps,\n AdminViewServerPropsOnly,\n CollectionPreferences,\n ImportMap,\n SanitizedCollectionConfig,\n SanitizedConfig,\n SanitizedGlobalConfig,\n} from 'payload'\n\nimport { PageConfigProvider } from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { getClientConfig } from '@payloadcms/ui/utilities/getClientConfig'\nimport { notFound, redirect } from 'next/navigation.js'\nimport { applyLocaleFiltering, formatAdminURL } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React from 'react'\n\nimport { DefaultTemplate } from '../../templates/Default/index.js'\nimport { MinimalTemplate } from '../../templates/Minimal/index.js'\nimport { getPreferences } from '../../utilities/getPreferences.js'\nimport { getVisibleEntities } from '../../utilities/getVisibleEntities.js'\nimport { handleAuthRedirect } from '../../utilities/handleAuthRedirect.js'\nimport { initReq } from '../../utilities/initReq.js'\nimport { isCustomAdminView } from '../../utilities/isCustomAdminView.js'\nimport { isPublicAdminRoute } from '../../utilities/isPublicAdminRoute.js'\nimport { getCustomViewByRoute } from './getCustomViewByRoute.js'\nimport { getRouteData } from './getRouteData.js'\n\nexport type GenerateViewMetadata = (args: {\n config: SanitizedConfig\n i18n: I18nClient\n isEditing?: boolean\n params?: { [key: string]: string | string[] }\n}) => Promise<Metadata>\n\nexport const RootPage = async ({\n config: configPromise,\n importMap,\n params: paramsPromise,\n searchParams: searchParamsPromise,\n}: {\n readonly config: Promise<SanitizedConfig>\n readonly importMap: ImportMap\n readonly params: Promise<{\n segments: string[]\n }>\n readonly searchParams: Promise<{\n [key: string]: string | string[]\n }>\n}) => {\n const config = await configPromise\n\n const {\n admin: {\n routes: { createFirstUser: _createFirstUserRoute },\n user: userSlug,\n },\n routes: { admin: adminRoute },\n } = config\n\n const params = await paramsPromise\n\n const currentRoute = formatAdminURL({\n adminRoute,\n path: Array.isArray(params.segments) ? `/${params.segments.join('/')}` : null,\n })\n\n const segments = Array.isArray(params.segments) ? params.segments : []\n const isCollectionRoute = segments[0] === 'collections'\n const isGlobalRoute = segments[0] === 'globals'\n let collectionConfig: SanitizedCollectionConfig = undefined\n let globalConfig: SanitizedGlobalConfig = undefined\n\n const searchParams = await searchParamsPromise\n\n // Redirect `${adminRoute}/collections` to `${adminRoute}`\n if (isCollectionRoute) {\n if (segments.length === 1) {\n const { viewKey } = getCustomViewByRoute({\n config,\n currentRoute: '/collections',\n })\n\n // Only redirect if there's NO custom view configured for /collections\n if (!viewKey) {\n redirect(adminRoute)\n }\n }\n\n if (segments[1]) {\n collectionConfig = config.collections.find(({ slug }) => slug === segments[1])\n }\n }\n\n // Redirect `${adminRoute}/globals` to `${adminRoute}`\n if (isGlobalRoute) {\n if (segments.length === 1) {\n const { viewKey } = getCustomViewByRoute({\n config,\n currentRoute: '/globals',\n })\n\n // Only redirect if there's NO custom view configured for /globals\n if (!viewKey) {\n redirect(adminRoute)\n }\n }\n\n if (segments[1]) {\n globalConfig = config.globals.find(({ slug }) => slug === segments[1])\n }\n }\n\n if ((isCollectionRoute && !collectionConfig) || (isGlobalRoute && !globalConfig)) {\n return notFound()\n }\n\n const queryString = `${qs.stringify(searchParams ?? {}, { addQueryPrefix: true })}`\n const {\n cookies,\n locale,\n permissions,\n req,\n req: { payload },\n } = await initReq({\n configPromise: config,\n importMap,\n key: 'initPage',\n overrides: {\n fallbackLocale: false,\n req: {\n query: qs.parse(queryString, {\n depth: 10,\n ignoreQueryPrefix: true,\n }),\n },\n urlSuffix: `${currentRoute}${searchParams ? queryString : ''}`,\n },\n })\n\n if (\n !permissions.canAccessAdmin &&\n !isPublicAdminRoute({ adminRoute, config: payload.config, route: currentRoute }) &&\n !isCustomAdminView({ adminRoute, config: payload.config, route: currentRoute })\n ) {\n redirect(\n handleAuthRedirect({\n config: payload.config,\n route: currentRoute,\n searchParams,\n user: req.user,\n }),\n )\n }\n\n let collectionPreferences: CollectionPreferences = undefined\n\n if (collectionConfig && segments.length === 2) {\n if (config.folders && collectionConfig.folders && segments[1] !== config.folders.slug) {\n await getPreferences<CollectionPreferences>(\n `collection-${collectionConfig.slug}`,\n req.payload,\n req.user.id,\n config.admin.user,\n ).then((res) => {\n if (res && res.value) {\n collectionPreferences = res.value\n }\n })\n }\n }\n\n const {\n browseByFolderSlugs,\n DefaultView,\n documentSubViewType,\n routeParams,\n templateClassName,\n templateType,\n viewActions,\n viewType,\n } = getRouteData({\n adminRoute,\n collectionConfig,\n collectionPreferences,\n currentRoute,\n globalConfig,\n payload,\n searchParams,\n segments,\n })\n\n req.routeParams = routeParams\n\n const dbHasUser =\n req.user ||\n (await req.payload.db\n .findOne({\n collection: userSlug,\n req,\n })\n ?.then((doc) => !!doc))\n\n /**\n * This function is responsible for handling the case where the view is not found.\n * The current route did not match any default views or custom route views.\n */\n if (!DefaultView?.Component && !DefaultView?.payloadComponent) {\n if (req?.user) {\n notFound()\n }\n\n if (dbHasUser) {\n redirect(adminRoute)\n }\n }\n\n const createFirstUserRoute = formatAdminURL({ adminRoute, path: _createFirstUserRoute })\n\n const usersCollection = config.collections.find(({ slug }) => slug === userSlug)\n const disableLocalStrategy = usersCollection?.auth?.disableLocalStrategy\n\n if (disableLocalStrategy && currentRoute === createFirstUserRoute) {\n redirect(adminRoute)\n }\n\n if (!dbHasUser && currentRoute !== createFirstUserRoute && !disableLocalStrategy) {\n redirect(createFirstUserRoute)\n }\n\n if (dbHasUser && currentRoute === createFirstUserRoute) {\n redirect(adminRoute)\n }\n\n if (!DefaultView?.Component && !DefaultView?.payloadComponent && !dbHasUser) {\n redirect(adminRoute)\n }\n\n const clientConfig = getClientConfig({\n config,\n i18n: req.i18n,\n importMap,\n user: viewType === 'createFirstUser' ? true : req.user,\n })\n await applyLocaleFiltering({ clientConfig, config, req })\n\n // Ensure locale on req is still valid after filtering locales\n if (\n clientConfig.localization &&\n req.locale &&\n !clientConfig.localization.localeCodes.includes(req.locale)\n ) {\n redirect(\n `${currentRoute}${qs.stringify(\n {\n ...searchParams,\n locale: clientConfig.localization.localeCodes.includes(\n clientConfig.localization.defaultLocale,\n )\n ? clientConfig.localization.defaultLocale\n : clientConfig.localization.localeCodes[0],\n },\n { addQueryPrefix: true },\n )}`,\n )\n }\n\n const visibleEntities = getVisibleEntities({ req })\n\n const folderID = routeParams.folderID\n\n const RenderedView = RenderServerComponent({\n clientProps: {\n browseByFolderSlugs,\n clientConfig,\n documentSubViewType,\n viewType,\n } satisfies AdminViewClientProps,\n Component: DefaultView.payloadComponent,\n Fallback: DefaultView.Component,\n importMap,\n serverProps: {\n clientConfig,\n collectionConfig,\n docID: routeParams.id,\n folderID,\n globalConfig,\n i18n: req.i18n,\n importMap,\n initPageResult: {\n collectionConfig,\n cookies,\n docID: routeParams.id,\n globalConfig,\n languageOptions: Object.entries(req.payload.config.i18n.supportedLanguages || {}).reduce(\n (acc, [language, languageConfig]) => {\n if (Object.keys(req.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 locale,\n permissions,\n req,\n translations: req.i18n.translations,\n visibleEntities,\n },\n params,\n payload: req.payload,\n searchParams,\n viewActions,\n } satisfies AdminViewServerPropsOnly,\n })\n\n return (\n <PageConfigProvider config={clientConfig}>\n {!templateType && <React.Fragment>{RenderedView}</React.Fragment>}\n {templateType === 'minimal' && (\n <MinimalTemplate className={templateClassName}>{RenderedView}</MinimalTemplate>\n )}\n {templateType === 'default' && (\n <DefaultTemplate\n collectionSlug={collectionConfig?.slug}\n docID={routeParams.id}\n documentSubViewType={documentSubViewType}\n globalSlug={globalConfig?.slug}\n i18n={req.i18n}\n locale={locale}\n params={params}\n payload={req.payload}\n permissions={permissions}\n req={req}\n searchParams={searchParams}\n user={req.user}\n viewActions={viewActions}\n viewType={viewType}\n visibleEntities={{\n // The reason we are not passing in initPageResult.visibleEntities directly is due to a \"Cannot assign to read only property of object '#<Object>\" error introduced in React 19\n // which this caused as soon as initPageResult.visibleEntities is passed in\n collections: visibleEntities?.collections,\n globals: visibleEntities?.globals,\n }}\n >\n {RenderedView}\n </DefaultTemplate>\n )}\n </PageConfigProvider>\n )\n}\n"],"names":["PageConfigProvider","RenderServerComponent","getClientConfig","notFound","redirect","applyLocaleFiltering","formatAdminURL","qs","React","DefaultTemplate","MinimalTemplate","getPreferences","getVisibleEntities","handleAuthRedirect","initReq","isCustomAdminView","isPublicAdminRoute","getCustomViewByRoute","getRouteData","RootPage","config","configPromise","importMap","params","paramsPromise","searchParams","searchParamsPromise","admin","routes","createFirstUser","_createFirstUserRoute","user","userSlug","adminRoute","currentRoute","path","Array","isArray","segments","join","isCollectionRoute","isGlobalRoute","collectionConfig","undefined","globalConfig","length","viewKey","collections","find","slug","globals","queryString","stringify","addQueryPrefix","cookies","locale","permissions","req","payload","key","overrides","fallbackLocale","query","parse","depth","ignoreQueryPrefix","urlSuffix","canAccessAdmin","route","collectionPreferences","folders","id","then","res","value","browseByFolderSlugs","DefaultView","documentSubViewType","routeParams","templateClassName","templateType","viewActions","viewType","dbHasUser","db","findOne","collection","doc","Component","payloadComponent","createFirstUserRoute","usersCollection","disableLocalStrategy","auth","clientConfig","i18n","localization","localeCodes","includes","defaultLocale","visibleEntities","folderID","RenderedView","clientProps","Fallback","serverProps","docID","initPageResult","languageOptions","Object","entries","supportedLanguages","reduce","acc","language","languageConfig","keys","push","label","translations","general","thisLanguage","Fragment","className","collectionSlug","globalSlug"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["PageConfigProvider","RenderServerComponent","getClientConfig","notFound","redirect","applyLocaleFiltering","formatAdminURL","qs","React","DefaultTemplate","MinimalTemplate","getPreferences","getVisibleEntities","handleAuthRedirect","initReq","isCustomAdminView","isPublicAdminRoute","getCustomViewByRoute","getRouteData","RootPage","config","configPromise","importMap","params","paramsPromise","searchParams","searchParamsPromise","admin","routes","createFirstUser","_createFirstUserRoute","user","userSlug","adminRoute","currentRoute","path","Array","isArray","segments","join","isCollectionRoute","isGlobalRoute","collectionConfig","undefined","globalConfig","length","viewKey","collections","find","slug","globals","queryString","stringify","addQueryPrefix","cookies","locale","permissions","req","payload","key","overrides","fallbackLocale","query","parse","depth","ignoreQueryPrefix","urlSuffix","canAccessAdmin","route","collectionPreferences","folders","id","then","res","value","browseByFolderSlugs","DefaultView","documentSubViewType","routeParams","templateClassName","templateType","viewActions","viewType","dbHasUser","db","findOne","collection","doc","Component","payloadComponent","createFirstUserRoute","usersCollection","disableLocalStrategy","auth","clientConfig","i18n","localization","localeCodes","includes","defaultLocale","visibleEntities","folderID","RenderedView","clientProps","Fallback","serverProps","docID","initPageResult","languageOptions","Object","entries","supportedLanguages","reduce","acc","language","languageConfig","keys","push","label","translations","general","thisLanguage","_jsxs","_jsx","Fragment","className","collectionSlug","globalSlug"],"sources":["../../../src/views/Root/index.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { Metadata } from 'next'\nimport type {\n AdminViewClientProps,\n AdminViewServerPropsOnly,\n CollectionPreferences,\n ImportMap,\n SanitizedCollectionConfig,\n SanitizedConfig,\n SanitizedGlobalConfig,\n} from 'payload'\n\nimport { PageConfigProvider } from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { getClientConfig } from '@payloadcms/ui/utilities/getClientConfig'\nimport { notFound, redirect } from 'next/navigation.js'\nimport { applyLocaleFiltering, formatAdminURL } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React from 'react'\n\nimport { DefaultTemplate } from '../../templates/Default/index.js'\nimport { MinimalTemplate } from '../../templates/Minimal/index.js'\nimport { getPreferences } from '../../utilities/getPreferences.js'\nimport { getVisibleEntities } from '../../utilities/getVisibleEntities.js'\nimport { handleAuthRedirect } from '../../utilities/handleAuthRedirect.js'\nimport { initReq } from '../../utilities/initReq.js'\nimport { isCustomAdminView } from '../../utilities/isCustomAdminView.js'\nimport { isPublicAdminRoute } from '../../utilities/isPublicAdminRoute.js'\nimport { getCustomViewByRoute } from './getCustomViewByRoute.js'\nimport { getRouteData } from './getRouteData.js'\n\nexport type GenerateViewMetadata = (args: {\n config: SanitizedConfig\n i18n: I18nClient\n isEditing?: boolean\n params?: { [key: string]: string | string[] }\n}) => Promise<Metadata>\n\nexport const RootPage = async ({\n config: configPromise,\n importMap,\n params: paramsPromise,\n searchParams: searchParamsPromise,\n}: {\n readonly config: Promise<SanitizedConfig>\n readonly importMap: ImportMap\n readonly params: Promise<{\n segments: string[]\n }>\n readonly searchParams: Promise<{\n [key: string]: string | string[]\n }>\n}) => {\n const config = await configPromise\n\n const {\n admin: {\n routes: { createFirstUser: _createFirstUserRoute },\n user: userSlug,\n },\n routes: { admin: adminRoute },\n } = config\n\n const params = await paramsPromise\n\n const currentRoute = formatAdminURL({\n adminRoute,\n path: Array.isArray(params.segments) ? `/${params.segments.join('/')}` : null,\n })\n\n const segments = Array.isArray(params.segments) ? params.segments : []\n const isCollectionRoute = segments[0] === 'collections'\n const isGlobalRoute = segments[0] === 'globals'\n let collectionConfig: SanitizedCollectionConfig = undefined\n let globalConfig: SanitizedGlobalConfig = undefined\n\n const searchParams = await searchParamsPromise\n\n // Redirect `${adminRoute}/collections` to `${adminRoute}`\n if (isCollectionRoute) {\n if (segments.length === 1) {\n const { viewKey } = getCustomViewByRoute({\n config,\n currentRoute: '/collections',\n })\n\n // Only redirect if there's NO custom view configured for /collections\n if (!viewKey) {\n redirect(adminRoute)\n }\n }\n\n if (segments[1]) {\n collectionConfig = config.collections.find(({ slug }) => slug === segments[1])\n }\n }\n\n // Redirect `${adminRoute}/globals` to `${adminRoute}`\n if (isGlobalRoute) {\n if (segments.length === 1) {\n const { viewKey } = getCustomViewByRoute({\n config,\n currentRoute: '/globals',\n })\n\n // Only redirect if there's NO custom view configured for /globals\n if (!viewKey) {\n redirect(adminRoute)\n }\n }\n\n if (segments[1]) {\n globalConfig = config.globals.find(({ slug }) => slug === segments[1])\n }\n }\n\n if ((isCollectionRoute && !collectionConfig) || (isGlobalRoute && !globalConfig)) {\n return notFound()\n }\n\n const queryString = `${qs.stringify(searchParams ?? {}, { addQueryPrefix: true })}`\n const {\n cookies,\n locale,\n permissions,\n req,\n req: { payload },\n } = await initReq({\n configPromise: config,\n importMap,\n key: 'initPage',\n overrides: {\n fallbackLocale: false,\n req: {\n query: qs.parse(queryString, {\n depth: 10,\n ignoreQueryPrefix: true,\n }),\n },\n urlSuffix: `${currentRoute}${searchParams ? queryString : ''}`,\n },\n })\n\n if (\n !permissions.canAccessAdmin &&\n !isPublicAdminRoute({ adminRoute, config: payload.config, route: currentRoute }) &&\n !isCustomAdminView({ adminRoute, config: payload.config, route: currentRoute })\n ) {\n redirect(\n handleAuthRedirect({\n config: payload.config,\n route: currentRoute,\n searchParams,\n user: req.user,\n }),\n )\n }\n\n let collectionPreferences: CollectionPreferences = undefined\n\n if (collectionConfig && segments.length === 2) {\n if (config.folders && collectionConfig.folders && segments[1] !== config.folders.slug) {\n await getPreferences<CollectionPreferences>(\n `collection-${collectionConfig.slug}`,\n req.payload,\n req.user.id,\n config.admin.user,\n ).then((res) => {\n if (res && res.value) {\n collectionPreferences = res.value\n }\n })\n }\n }\n\n const {\n browseByFolderSlugs,\n DefaultView,\n documentSubViewType,\n routeParams,\n templateClassName,\n templateType,\n viewActions,\n viewType,\n } = getRouteData({\n adminRoute,\n collectionConfig,\n collectionPreferences,\n currentRoute,\n globalConfig,\n payload,\n searchParams,\n segments,\n })\n\n req.routeParams = routeParams\n\n const dbHasUser =\n req.user ||\n (await req.payload.db\n .findOne({\n collection: userSlug,\n req,\n })\n ?.then((doc) => !!doc))\n\n /**\n * This function is responsible for handling the case where the view is not found.\n * The current route did not match any default views or custom route views.\n */\n if (!DefaultView?.Component && !DefaultView?.payloadComponent) {\n if (req?.user) {\n notFound()\n }\n\n if (dbHasUser) {\n redirect(adminRoute)\n }\n }\n\n const createFirstUserRoute = formatAdminURL({ adminRoute, path: _createFirstUserRoute })\n\n const usersCollection = config.collections.find(({ slug }) => slug === userSlug)\n const disableLocalStrategy = usersCollection?.auth?.disableLocalStrategy\n\n if (disableLocalStrategy && currentRoute === createFirstUserRoute) {\n redirect(adminRoute)\n }\n\n if (!dbHasUser && currentRoute !== createFirstUserRoute && !disableLocalStrategy) {\n redirect(createFirstUserRoute)\n }\n\n if (dbHasUser && currentRoute === createFirstUserRoute) {\n redirect(adminRoute)\n }\n\n if (!DefaultView?.Component && !DefaultView?.payloadComponent && !dbHasUser) {\n redirect(adminRoute)\n }\n\n const clientConfig = getClientConfig({\n config,\n i18n: req.i18n,\n importMap,\n user: viewType === 'createFirstUser' ? true : req.user,\n })\n await applyLocaleFiltering({ clientConfig, config, req })\n\n // Ensure locale on req is still valid after filtering locales\n if (\n clientConfig.localization &&\n req.locale &&\n !clientConfig.localization.localeCodes.includes(req.locale)\n ) {\n redirect(\n `${currentRoute}${qs.stringify(\n {\n ...searchParams,\n locale: clientConfig.localization.localeCodes.includes(\n clientConfig.localization.defaultLocale,\n )\n ? clientConfig.localization.defaultLocale\n : clientConfig.localization.localeCodes[0],\n },\n { addQueryPrefix: true },\n )}`,\n )\n }\n\n const visibleEntities = getVisibleEntities({ req })\n\n const folderID = routeParams.folderID\n\n const RenderedView = RenderServerComponent({\n clientProps: {\n browseByFolderSlugs,\n clientConfig,\n documentSubViewType,\n viewType,\n } satisfies AdminViewClientProps,\n Component: DefaultView.payloadComponent,\n Fallback: DefaultView.Component,\n importMap,\n serverProps: {\n clientConfig,\n collectionConfig,\n docID: routeParams.id,\n folderID,\n globalConfig,\n i18n: req.i18n,\n importMap,\n initPageResult: {\n collectionConfig,\n cookies,\n docID: routeParams.id,\n globalConfig,\n languageOptions: Object.entries(req.payload.config.i18n.supportedLanguages || {}).reduce(\n (acc, [language, languageConfig]) => {\n if (Object.keys(req.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 locale,\n permissions,\n req,\n translations: req.i18n.translations,\n visibleEntities,\n },\n params,\n payload: req.payload,\n searchParams,\n viewActions,\n } satisfies AdminViewServerPropsOnly,\n })\n\n return (\n <PageConfigProvider config={clientConfig}>\n {!templateType && <React.Fragment>{RenderedView}</React.Fragment>}\n {templateType === 'minimal' && (\n <MinimalTemplate className={templateClassName}>{RenderedView}</MinimalTemplate>\n )}\n {templateType === 'default' && (\n <DefaultTemplate\n collectionSlug={collectionConfig?.slug}\n docID={routeParams.id}\n documentSubViewType={documentSubViewType}\n globalSlug={globalConfig?.slug}\n i18n={req.i18n}\n locale={locale}\n params={params}\n payload={req.payload}\n permissions={permissions}\n req={req}\n searchParams={searchParams}\n user={req.user}\n viewActions={viewActions}\n viewType={viewType}\n visibleEntities={{\n // The reason we are not passing in initPageResult.visibleEntities directly is due to a \"Cannot assign to read only property of object '#<Object>\" error introduced in React 19\n // which this caused as soon as initPageResult.visibleEntities is passed in\n collections: visibleEntities?.collections,\n globals: visibleEntities?.globals,\n }}\n >\n {RenderedView}\n </DefaultTemplate>\n )}\n </PageConfigProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,24 +1,29 @@
1
1
  import { pathToRegexp } from 'path-to-regexp';
2
- export const isPathMatchingRoute = ({ currentRoute, exact, path: viewPath, sensitive, strict })=>{
3
- // if no path is defined, we cannot match it so return false early
4
- if (!viewPath) {
5
- return false;
6
- }
7
- const keys = [];
8
- // run the view path through `pathToRegexp` to resolve any dynamic segments
9
- // i.e. `/admin/custom-view/:id` -> `/admin/custom-view/123`
10
- const regex = pathToRegexp(viewPath, keys, {
11
- sensitive,
12
- strict
13
- });
14
- const match = regex.exec(currentRoute);
15
- const viewRoute = match?.[0] || viewPath;
16
- if (exact) {
17
- return currentRoute === viewRoute;
18
- }
19
- if (!exact) {
20
- return viewRoute.startsWith(currentRoute);
21
- }
2
+ export const isPathMatchingRoute = ({
3
+ currentRoute,
4
+ exact,
5
+ path: viewPath,
6
+ sensitive,
7
+ strict
8
+ }) => {
9
+ // if no path is defined, we cannot match it so return false early
10
+ if (!viewPath) {
11
+ return false;
12
+ }
13
+ const keys = [];
14
+ // run the view path through `pathToRegexp` to resolve any dynamic segments
15
+ // i.e. `/admin/custom-view/:id` -> `/admin/custom-view/123`
16
+ const regex = pathToRegexp(viewPath, keys, {
17
+ sensitive,
18
+ strict
19
+ });
20
+ const match = regex.exec(currentRoute);
21
+ const viewRoute = match?.[0] || viewPath;
22
+ if (exact) {
23
+ return currentRoute === viewRoute;
24
+ }
25
+ if (!exact) {
26
+ return viewRoute.startsWith(currentRoute);
27
+ }
22
28
  };
23
-
24
29
  //# sourceMappingURL=isPathMatchingRoute.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/views/Root/isPathMatchingRoute.ts"],"sourcesContent":["import { pathToRegexp } from 'path-to-regexp'\n\nexport const isPathMatchingRoute = ({\n currentRoute,\n exact,\n path: viewPath,\n sensitive,\n strict,\n}: {\n currentRoute: string\n exact?: boolean\n path?: string\n sensitive?: boolean\n strict?: boolean\n}) => {\n // if no path is defined, we cannot match it so return false early\n if (!viewPath) {\n return false\n }\n\n const keys = []\n\n // run the view path through `pathToRegexp` to resolve any dynamic segments\n // i.e. `/admin/custom-view/:id` -> `/admin/custom-view/123`\n const regex = pathToRegexp(viewPath, keys, {\n sensitive,\n strict,\n })\n\n const match = regex.exec(currentRoute)\n const viewRoute = match?.[0] || viewPath\n\n if (exact) {\n return currentRoute === viewRoute\n }\n if (!exact) {\n return viewRoute.startsWith(currentRoute)\n }\n}\n"],"names":["pathToRegexp","isPathMatchingRoute","currentRoute","exact","path","viewPath","sensitive","strict","keys","regex","match","exec","viewRoute","startsWith"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAgB;AAE7C,OAAO,MAAMC,sBAAsB,CAAC,EAClCC,YAAY,EACZC,KAAK,EACLC,MAAMC,QAAQ,EACdC,SAAS,EACTC,MAAM,EAOP;IACC,kEAAkE;IAClE,IAAI,CAACF,UAAU;QACb,OAAO;IACT;IAEA,MAAMG,OAAO,EAAE;IAEf,2EAA2E;IAC3E,4DAA4D;IAC5D,MAAMC,QAAQT,aAAaK,UAAUG,MAAM;QACzCF;QACAC;IACF;IAEA,MAAMG,QAAQD,MAAME,IAAI,CAACT;IACzB,MAAMU,YAAYF,OAAO,CAAC,EAAE,IAAIL;IAEhC,IAAIF,OAAO;QACT,OAAOD,iBAAiBU;IAC1B;IACA,IAAI,CAACT,OAAO;QACV,OAAOS,UAAUC,UAAU,CAACX;IAC9B;AACF,EAAC"}
1
+ {"version":3,"file":"isPathMatchingRoute.js","names":["pathToRegexp","isPathMatchingRoute","currentRoute","exact","path","viewPath","sensitive","strict","keys","regex","match","exec","viewRoute","startsWith"],"sources":["../../../src/views/Root/isPathMatchingRoute.ts"],"sourcesContent":["import { pathToRegexp } from 'path-to-regexp'\n\nexport const isPathMatchingRoute = ({\n currentRoute,\n exact,\n path: viewPath,\n sensitive,\n strict,\n}: {\n currentRoute: string\n exact?: boolean\n path?: string\n sensitive?: boolean\n strict?: boolean\n}) => {\n // if no path is defined, we cannot match it so return false early\n if (!viewPath) {\n return false\n }\n\n const keys = []\n\n // run the view path through `pathToRegexp` to resolve any dynamic segments\n // i.e. `/admin/custom-view/:id` -> `/admin/custom-view/123`\n const regex = pathToRegexp(viewPath, keys, {\n sensitive,\n strict,\n })\n\n const match = regex.exec(currentRoute)\n const viewRoute = match?.[0] || viewPath\n\n if (exact) {\n return currentRoute === viewRoute\n }\n if (!exact) {\n return viewRoute.startsWith(currentRoute)\n }\n}\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ;AAE7B,OAAO,MAAMC,mBAAA,GAAsBA,CAAC;EAClCC,YAAY;EACZC,KAAK;EACLC,IAAA,EAAMC,QAAQ;EACdC,SAAS;EACTC;AAAM,CAOP;EACC;EACA,IAAI,CAACF,QAAA,EAAU;IACb,OAAO;EACT;EAEA,MAAMG,IAAA,GAAO,EAAE;EAEf;EACA;EACA,MAAMC,KAAA,GAAQT,YAAA,CAAaK,QAAA,EAAUG,IAAA,EAAM;IACzCF,SAAA;IACAC;EACF;EAEA,MAAMG,KAAA,GAAQD,KAAA,CAAME,IAAI,CAACT,YAAA;EACzB,MAAMU,SAAA,GAAYF,KAAA,GAAQ,EAAE,IAAIL,QAAA;EAEhC,IAAIF,KAAA,EAAO;IACT,OAAOD,YAAA,KAAiBU,SAAA;EAC1B;EACA,IAAI,CAACT,KAAA,EAAO;IACV,OAAOS,SAAA,CAAUC,UAAU,CAACX,YAAA;EAC9B;AACF","ignoreList":[]}
@@ -16,189 +16,194 @@ import { generateVerifyViewMetadata } from '../Verify/metadata.js';
16
16
  import { generateCustomViewMetadata } from './generateCustomViewMetadata.js';
17
17
  import { getCustomViewByRoute } from './getCustomViewByRoute.js';
18
18
  const oneSegmentMeta = {
19
- 'create-first-user': generateCreateFirstUserViewMetadata,
20
- folders: generateBrowseByFolderMetadata,
21
- forgot: generateForgotPasswordViewMetadata,
22
- login: generateLoginViewMetadata,
23
- logout: generateUnauthorizedViewMetadata,
24
- 'logout-inactivity': generateUnauthorizedViewMetadata,
25
- unauthorized: generateUnauthorizedViewMetadata
19
+ 'create-first-user': generateCreateFirstUserViewMetadata,
20
+ folders: generateBrowseByFolderMetadata,
21
+ forgot: generateForgotPasswordViewMetadata,
22
+ login: generateLoginViewMetadata,
23
+ logout: generateUnauthorizedViewMetadata,
24
+ 'logout-inactivity': generateUnauthorizedViewMetadata,
25
+ unauthorized: generateUnauthorizedViewMetadata
26
26
  };
27
- export const generatePageMetadata = async ({ config: configPromise, params: paramsPromise })=>{
28
- const config = await configPromise;
29
- const params = await paramsPromise;
30
- const folderCollectionSlugs = config.collections.reduce((acc, { slug, folders })=>{
31
- if (folders) {
32
- return [
33
- ...acc,
34
- slug
35
- ];
36
- }
37
- return acc;
38
- }, []);
39
- const segments = Array.isArray(params.segments) ? params.segments : [];
40
- const currentRoute = `/${segments.join('/')}`;
41
- const [segmentOne, segmentTwo, segmentThree] = segments;
42
- const isGlobal = segmentOne === 'globals';
43
- const isCollection = segmentOne === 'collections';
44
- const i18n = await getNextRequestI18n({
45
- config
46
- });
47
- let meta;
48
- // TODO: handle custom routes
49
- const collectionConfig = isCollection && segments.length > 1 && config?.collections?.find((collection)=>collection.slug === segmentTwo);
50
- const globalConfig = isGlobal && segments.length > 1 && config?.globals?.find((global)=>global.slug === segmentTwo);
51
- switch(segments.length){
52
- case 0:
53
- {
54
- meta = await generateDashboardViewMetadata({
55
- config,
56
- i18n
57
- });
58
- break;
59
- }
60
- case 1:
61
- {
62
- if (folderCollectionSlugs.length && `/${segmentOne}` === config.admin.routes.browseByFolder) {
63
- // --> /:folderCollectionSlug
64
- meta = await oneSegmentMeta.folders({
65
- config,
66
- i18n
67
- });
68
- } else if (segmentOne === 'account') {
69
- // --> /account
70
- meta = await generateAccountViewMetadata({
71
- config,
72
- i18n
73
- });
74
- break;
75
- } else if (oneSegmentMeta[segmentOne]) {
76
- // --> /create-first-user
77
- // --> /forgot
78
- // --> /login
79
- // --> /logout
80
- // --> /logout-inactivity
81
- // --> /unauthorized
82
- meta = await oneSegmentMeta[segmentOne]({
83
- config,
84
- i18n
85
- });
86
- break;
87
- }
88
- break;
89
- }
90
- case 2:
91
- {
92
- if (`/${segmentOne}` === config.admin.routes.reset) {
93
- // --> /reset/:token
94
- meta = await generateResetPasswordViewMetadata({
95
- config,
96
- i18n
97
- });
98
- } else if (folderCollectionSlugs.length && `/${segmentOne}` === config.admin.routes.browseByFolder) {
99
- // --> /browse-by-folder/:folderID
100
- meta = await generateBrowseByFolderMetadata({
101
- config,
102
- i18n
103
- });
104
- } else if (isCollection) {
105
- // --> /collections/:collectionSlug
106
- meta = await generateListViewMetadata({
107
- collectionConfig,
108
- config,
109
- i18n
110
- });
111
- } else if (isGlobal) {
112
- // --> /globals/:globalSlug
113
- meta = await generateDocumentViewMetadata({
114
- config,
115
- globalConfig,
116
- i18n,
117
- params
118
- });
119
- }
120
- break;
121
- }
122
- default:
123
- {
124
- if (segmentTwo === 'verify') {
125
- // --> /:collectionSlug/verify/:token
126
- meta = await generateVerifyViewMetadata({
127
- config,
128
- i18n
129
- });
130
- } else if (isCollection) {
131
- if (segmentThree === 'trash' && segments.length === 3 && collectionConfig) {
132
- // Collection Trash Views
133
- // --> /collections/:collectionSlug/trash
134
- meta = await generateCollectionTrashMetadata({
135
- collectionConfig,
136
- config,
137
- i18n,
138
- params
139
- });
140
- } else if (config.folders && segmentThree === config.folders.slug) {
141
- if (folderCollectionSlugs.includes(collectionConfig.slug)) {
142
- // Collection Folder Views
143
- // --> /collections/:collectionSlug/:folderCollectionSlug
144
- // --> /collections/:collectionSlug/:folderCollectionSlug/:id
145
- meta = await generateCollectionFolderMetadata({
146
- collectionConfig,
147
- config,
148
- i18n,
149
- params
150
- });
151
- }
152
- } else {
153
- // Collection Document Views
154
- // --> /collections/:collectionSlug/:id
155
- // --> /collections/:collectionSlug/:id/versions
156
- // --> /collections/:collectionSlug/:id/versions/:version
157
- // --> /collections/:collectionSlug/:id/api
158
- // --> /collections/:collectionSlug/trash/:id
159
- meta = await generateDocumentViewMetadata({
160
- collectionConfig,
161
- config,
162
- i18n,
163
- params
164
- });
165
- }
166
- } else if (isGlobal) {
167
- // Global Document Views
168
- // --> /globals/:globalSlug/versions
169
- // --> /globals/:globalSlug/versions/:version
170
- // --> /globals/:globalSlug/api
171
- meta = await generateDocumentViewMetadata({
172
- config,
173
- globalConfig,
174
- i18n,
175
- params
176
- });
177
- }
178
- break;
179
- }
27
+ export const generatePageMetadata = async ({
28
+ config: configPromise,
29
+ params: paramsPromise
30
+ }) => {
31
+ const config = await configPromise;
32
+ const params = await paramsPromise;
33
+ const folderCollectionSlugs = config.collections.reduce((acc, {
34
+ slug,
35
+ folders
36
+ }) => {
37
+ if (folders) {
38
+ return [...acc, slug];
180
39
  }
181
- if (!meta) {
182
- const { viewConfig, viewKey } = getCustomViewByRoute({
183
- config,
184
- currentRoute
40
+ return acc;
41
+ }, []);
42
+ const segments = Array.isArray(params.segments) ? params.segments : [];
43
+ const currentRoute = `/${segments.join('/')}`;
44
+ const [segmentOne, segmentTwo, segmentThree] = segments;
45
+ const isGlobal = segmentOne === 'globals';
46
+ const isCollection = segmentOne === 'collections';
47
+ const i18n = await getNextRequestI18n({
48
+ config
49
+ });
50
+ let meta;
51
+ // TODO: handle custom routes
52
+ const collectionConfig = isCollection && segments.length > 1 && config?.collections?.find(collection => collection.slug === segmentTwo);
53
+ const globalConfig = isGlobal && segments.length > 1 && config?.globals?.find(global => global.slug === segmentTwo);
54
+ switch (segments.length) {
55
+ case 0:
56
+ {
57
+ meta = await generateDashboardViewMetadata({
58
+ config,
59
+ i18n
185
60
  });
186
- if (viewKey) {
187
- // Custom Views
188
- // --> /:path
189
- meta = await generateCustomViewMetadata({
190
- config,
191
- i18n,
192
- viewConfig
61
+ break;
62
+ }
63
+ case 1:
64
+ {
65
+ if (folderCollectionSlugs.length && `/${segmentOne}` === config.admin.routes.browseByFolder) {
66
+ // --> /:folderCollectionSlug
67
+ meta = await oneSegmentMeta.folders({
68
+ config,
69
+ i18n
70
+ });
71
+ } else if (segmentOne === 'account') {
72
+ // --> /account
73
+ meta = await generateAccountViewMetadata({
74
+ config,
75
+ i18n
76
+ });
77
+ break;
78
+ } else if (oneSegmentMeta[segmentOne]) {
79
+ // --> /create-first-user
80
+ // --> /forgot
81
+ // --> /login
82
+ // --> /logout
83
+ // --> /logout-inactivity
84
+ // --> /unauthorized
85
+ meta = await oneSegmentMeta[segmentOne]({
86
+ config,
87
+ i18n
88
+ });
89
+ break;
90
+ }
91
+ break;
92
+ }
93
+ case 2:
94
+ {
95
+ if (`/${segmentOne}` === config.admin.routes.reset) {
96
+ // --> /reset/:token
97
+ meta = await generateResetPasswordViewMetadata({
98
+ config,
99
+ i18n
100
+ });
101
+ } else if (folderCollectionSlugs.length && `/${segmentOne}` === config.admin.routes.browseByFolder) {
102
+ // --> /browse-by-folder/:folderID
103
+ meta = await generateBrowseByFolderMetadata({
104
+ config,
105
+ i18n
106
+ });
107
+ } else if (isCollection) {
108
+ // --> /collections/:collectionSlug
109
+ meta = await generateListViewMetadata({
110
+ collectionConfig,
111
+ config,
112
+ i18n
113
+ });
114
+ } else if (isGlobal) {
115
+ // --> /globals/:globalSlug
116
+ meta = await generateDocumentViewMetadata({
117
+ config,
118
+ globalConfig,
119
+ i18n,
120
+ params
121
+ });
122
+ }
123
+ break;
124
+ }
125
+ default:
126
+ {
127
+ if (segmentTwo === 'verify') {
128
+ // --> /:collectionSlug/verify/:token
129
+ meta = await generateVerifyViewMetadata({
130
+ config,
131
+ i18n
132
+ });
133
+ } else if (isCollection) {
134
+ if (segmentThree === 'trash' && segments.length === 3 && collectionConfig) {
135
+ // Collection Trash Views
136
+ // --> /collections/:collectionSlug/trash
137
+ meta = await generateCollectionTrashMetadata({
138
+ collectionConfig,
139
+ config,
140
+ i18n,
141
+ params
193
142
  });
194
- } else {
195
- meta = await generateNotFoundViewMetadata({
143
+ } else if (config.folders && segmentThree === config.folders.slug) {
144
+ if (folderCollectionSlugs.includes(collectionConfig.slug)) {
145
+ // Collection Folder Views
146
+ // --> /collections/:collectionSlug/:folderCollectionSlug
147
+ // --> /collections/:collectionSlug/:folderCollectionSlug/:id
148
+ meta = await generateCollectionFolderMetadata({
149
+ collectionConfig,
196
150
  config,
197
- i18n
151
+ i18n,
152
+ params
153
+ });
154
+ }
155
+ } else {
156
+ // Collection Document Views
157
+ // --> /collections/:collectionSlug/:id
158
+ // --> /collections/:collectionSlug/:id/versions
159
+ // --> /collections/:collectionSlug/:id/versions/:version
160
+ // --> /collections/:collectionSlug/:id/api
161
+ // --> /collections/:collectionSlug/trash/:id
162
+ meta = await generateDocumentViewMetadata({
163
+ collectionConfig,
164
+ config,
165
+ i18n,
166
+ params
198
167
  });
168
+ }
169
+ } else if (isGlobal) {
170
+ // Global Document Views
171
+ // --> /globals/:globalSlug/versions
172
+ // --> /globals/:globalSlug/versions/:version
173
+ // --> /globals/:globalSlug/api
174
+ meta = await generateDocumentViewMetadata({
175
+ config,
176
+ globalConfig,
177
+ i18n,
178
+ params
179
+ });
199
180
  }
181
+ break;
182
+ }
183
+ }
184
+ if (!meta) {
185
+ const {
186
+ viewConfig,
187
+ viewKey
188
+ } = getCustomViewByRoute({
189
+ config,
190
+ currentRoute
191
+ });
192
+ if (viewKey) {
193
+ // Custom Views
194
+ // --> /:path
195
+ meta = await generateCustomViewMetadata({
196
+ config,
197
+ i18n,
198
+ viewConfig
199
+ });
200
+ } else {
201
+ meta = await generateNotFoundViewMetadata({
202
+ config,
203
+ i18n
204
+ });
200
205
  }
201
- return meta;
206
+ }
207
+ return meta;
202
208
  };
203
-
204
209
  //# sourceMappingURL=metadata.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/views/Root/metadata.ts"],"sourcesContent":["import type { Metadata } from 'next'\nimport type { SanitizedConfig } from 'payload'\n\nimport { getNextRequestI18n } from '../../utilities/getNextRequestI18n.js'\nimport { generateAccountViewMetadata } from '../Account/metadata.js'\nimport { generateBrowseByFolderMetadata } from '../BrowseByFolder/metadata.js'\nimport { generateCollectionFolderMetadata } from '../CollectionFolders/metadata.js'\nimport { generateCollectionTrashMetadata } from '../CollectionTrash/metadata.js'\nimport { generateCreateFirstUserViewMetadata } from '../CreateFirstUser/metadata.js'\nimport { generateDashboardViewMetadata } from '../Dashboard/metadata.js'\nimport { generateDocumentViewMetadata } from '../Document/metadata.js'\nimport { generateForgotPasswordViewMetadata } from '../ForgotPassword/metadata.js'\nimport { generateListViewMetadata } from '../List/metadata.js'\nimport { generateLoginViewMetadata } from '../Login/metadata.js'\nimport { generateNotFoundViewMetadata } from '../NotFound/metadata.js'\nimport { generateResetPasswordViewMetadata } from '../ResetPassword/metadata.js'\nimport { generateUnauthorizedViewMetadata } from '../Unauthorized/metadata.js'\nimport { generateVerifyViewMetadata } from '../Verify/metadata.js'\nimport { generateCustomViewMetadata } from './generateCustomViewMetadata.js'\nimport { getCustomViewByRoute } from './getCustomViewByRoute.js'\n\nconst oneSegmentMeta = {\n 'create-first-user': generateCreateFirstUserViewMetadata,\n folders: generateBrowseByFolderMetadata,\n forgot: generateForgotPasswordViewMetadata,\n login: generateLoginViewMetadata,\n logout: generateUnauthorizedViewMetadata,\n 'logout-inactivity': generateUnauthorizedViewMetadata,\n unauthorized: generateUnauthorizedViewMetadata,\n}\n\ntype Args = {\n config: Promise<SanitizedConfig>\n params: Promise<{\n [key: string]: string | string[]\n }>\n searchParams: Promise<{\n [key: string]: string | string[]\n }>\n}\n\nexport const generatePageMetadata = async ({\n config: configPromise,\n params: paramsPromise,\n}: Args) => {\n const config = await configPromise\n const params = await paramsPromise\n\n const folderCollectionSlugs = config.collections.reduce((acc, { slug, folders }) => {\n if (folders) {\n return [...acc, slug]\n }\n return acc\n }, [])\n const segments = Array.isArray(params.segments) ? params.segments : []\n\n const currentRoute = `/${segments.join('/')}`\n const [segmentOne, segmentTwo, segmentThree] = segments\n\n const isGlobal = segmentOne === 'globals'\n const isCollection = segmentOne === 'collections'\n\n const i18n = await getNextRequestI18n({\n config,\n })\n\n let meta: Metadata\n\n // TODO: handle custom routes\n\n const collectionConfig =\n isCollection &&\n segments.length > 1 &&\n config?.collections?.find((collection) => collection.slug === segmentTwo)\n\n const globalConfig =\n isGlobal && segments.length > 1 && config?.globals?.find((global) => global.slug === segmentTwo)\n\n switch (segments.length) {\n case 0: {\n meta = await generateDashboardViewMetadata({ config, i18n })\n break\n }\n case 1: {\n if (folderCollectionSlugs.length && `/${segmentOne}` === config.admin.routes.browseByFolder) {\n // --> /:folderCollectionSlug\n meta = await oneSegmentMeta.folders({ config, i18n })\n } else if (segmentOne === 'account') {\n // --> /account\n meta = await generateAccountViewMetadata({ config, i18n })\n break\n } else if (oneSegmentMeta[segmentOne]) {\n // --> /create-first-user\n // --> /forgot\n // --> /login\n // --> /logout\n // --> /logout-inactivity\n // --> /unauthorized\n meta = await oneSegmentMeta[segmentOne]({ config, i18n })\n break\n }\n break\n }\n case 2: {\n if (`/${segmentOne}` === config.admin.routes.reset) {\n // --> /reset/:token\n meta = await generateResetPasswordViewMetadata({ config, i18n })\n } else if (\n folderCollectionSlugs.length &&\n `/${segmentOne}` === config.admin.routes.browseByFolder\n ) {\n // --> /browse-by-folder/:folderID\n meta = await generateBrowseByFolderMetadata({ config, i18n })\n } else if (isCollection) {\n // --> /collections/:collectionSlug\n meta = await generateListViewMetadata({ collectionConfig, config, i18n })\n } else if (isGlobal) {\n // --> /globals/:globalSlug\n meta = await generateDocumentViewMetadata({\n config,\n globalConfig,\n i18n,\n params,\n })\n }\n break\n }\n default: {\n if (segmentTwo === 'verify') {\n // --> /:collectionSlug/verify/:token\n meta = await generateVerifyViewMetadata({ config, i18n })\n } else if (isCollection) {\n if (segmentThree === 'trash' && segments.length === 3 && collectionConfig) {\n // Collection Trash Views\n // --> /collections/:collectionSlug/trash\n meta = await generateCollectionTrashMetadata({\n collectionConfig,\n config,\n i18n,\n params,\n })\n } else if (config.folders && segmentThree === config.folders.slug) {\n if (folderCollectionSlugs.includes(collectionConfig.slug)) {\n // Collection Folder Views\n // --> /collections/:collectionSlug/:folderCollectionSlug\n // --> /collections/:collectionSlug/:folderCollectionSlug/:id\n meta = await generateCollectionFolderMetadata({\n collectionConfig,\n config,\n i18n,\n params,\n })\n }\n } else {\n // Collection Document Views\n // --> /collections/:collectionSlug/:id\n // --> /collections/:collectionSlug/:id/versions\n // --> /collections/:collectionSlug/:id/versions/:version\n // --> /collections/:collectionSlug/:id/api\n // --> /collections/:collectionSlug/trash/:id\n meta = await generateDocumentViewMetadata({ collectionConfig, config, i18n, params })\n }\n } else if (isGlobal) {\n // Global Document Views\n // --> /globals/:globalSlug/versions\n // --> /globals/:globalSlug/versions/:version\n // --> /globals/:globalSlug/api\n meta = await generateDocumentViewMetadata({\n config,\n globalConfig,\n i18n,\n params,\n })\n }\n break\n }\n }\n\n if (!meta) {\n const { viewConfig, viewKey } = getCustomViewByRoute({\n config,\n currentRoute,\n })\n\n if (viewKey) {\n // Custom Views\n // --> /:path\n meta = await generateCustomViewMetadata({\n config,\n i18n,\n viewConfig,\n })\n } else {\n meta = await generateNotFoundViewMetadata({ config, i18n })\n }\n }\n\n return meta\n}\n"],"names":["getNextRequestI18n","generateAccountViewMetadata","generateBrowseByFolderMetadata","generateCollectionFolderMetadata","generateCollectionTrashMetadata","generateCreateFirstUserViewMetadata","generateDashboardViewMetadata","generateDocumentViewMetadata","generateForgotPasswordViewMetadata","generateListViewMetadata","generateLoginViewMetadata","generateNotFoundViewMetadata","generateResetPasswordViewMetadata","generateUnauthorizedViewMetadata","generateVerifyViewMetadata","generateCustomViewMetadata","getCustomViewByRoute","oneSegmentMeta","folders","forgot","login","logout","unauthorized","generatePageMetadata","config","configPromise","params","paramsPromise","folderCollectionSlugs","collections","reduce","acc","slug","segments","Array","isArray","currentRoute","join","segmentOne","segmentTwo","segmentThree","isGlobal","isCollection","i18n","meta","collectionConfig","length","find","collection","globalConfig","globals","global","admin","routes","browseByFolder","reset","includes","viewConfig","viewKey"],"mappings":"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"}
1
+ {"version":3,"file":"metadata.js","names":["getNextRequestI18n","generateAccountViewMetadata","generateBrowseByFolderMetadata","generateCollectionFolderMetadata","generateCollectionTrashMetadata","generateCreateFirstUserViewMetadata","generateDashboardViewMetadata","generateDocumentViewMetadata","generateForgotPasswordViewMetadata","generateListViewMetadata","generateLoginViewMetadata","generateNotFoundViewMetadata","generateResetPasswordViewMetadata","generateUnauthorizedViewMetadata","generateVerifyViewMetadata","generateCustomViewMetadata","getCustomViewByRoute","oneSegmentMeta","folders","forgot","login","logout","unauthorized","generatePageMetadata","config","configPromise","params","paramsPromise","folderCollectionSlugs","collections","reduce","acc","slug","segments","Array","isArray","currentRoute","join","segmentOne","segmentTwo","segmentThree","isGlobal","isCollection","i18n","meta","collectionConfig","length","find","collection","globalConfig","globals","global","admin","routes","browseByFolder","reset","includes","viewConfig","viewKey"],"sources":["../../../src/views/Root/metadata.ts"],"sourcesContent":["import type { Metadata } from 'next'\nimport type { SanitizedConfig } from 'payload'\n\nimport { getNextRequestI18n } from '../../utilities/getNextRequestI18n.js'\nimport { generateAccountViewMetadata } from '../Account/metadata.js'\nimport { generateBrowseByFolderMetadata } from '../BrowseByFolder/metadata.js'\nimport { generateCollectionFolderMetadata } from '../CollectionFolders/metadata.js'\nimport { generateCollectionTrashMetadata } from '../CollectionTrash/metadata.js'\nimport { generateCreateFirstUserViewMetadata } from '../CreateFirstUser/metadata.js'\nimport { generateDashboardViewMetadata } from '../Dashboard/metadata.js'\nimport { generateDocumentViewMetadata } from '../Document/metadata.js'\nimport { generateForgotPasswordViewMetadata } from '../ForgotPassword/metadata.js'\nimport { generateListViewMetadata } from '../List/metadata.js'\nimport { generateLoginViewMetadata } from '../Login/metadata.js'\nimport { generateNotFoundViewMetadata } from '../NotFound/metadata.js'\nimport { generateResetPasswordViewMetadata } from '../ResetPassword/metadata.js'\nimport { generateUnauthorizedViewMetadata } from '../Unauthorized/metadata.js'\nimport { generateVerifyViewMetadata } from '../Verify/metadata.js'\nimport { generateCustomViewMetadata } from './generateCustomViewMetadata.js'\nimport { getCustomViewByRoute } from './getCustomViewByRoute.js'\n\nconst oneSegmentMeta = {\n 'create-first-user': generateCreateFirstUserViewMetadata,\n folders: generateBrowseByFolderMetadata,\n forgot: generateForgotPasswordViewMetadata,\n login: generateLoginViewMetadata,\n logout: generateUnauthorizedViewMetadata,\n 'logout-inactivity': generateUnauthorizedViewMetadata,\n unauthorized: generateUnauthorizedViewMetadata,\n}\n\ntype Args = {\n config: Promise<SanitizedConfig>\n params: Promise<{\n [key: string]: string | string[]\n }>\n searchParams: Promise<{\n [key: string]: string | string[]\n }>\n}\n\nexport const generatePageMetadata = async ({\n config: configPromise,\n params: paramsPromise,\n}: Args) => {\n const config = await configPromise\n const params = await paramsPromise\n\n const folderCollectionSlugs = config.collections.reduce((acc, { slug, folders }) => {\n if (folders) {\n return [...acc, slug]\n }\n return acc\n }, [])\n const segments = Array.isArray(params.segments) ? params.segments : []\n\n const currentRoute = `/${segments.join('/')}`\n const [segmentOne, segmentTwo, segmentThree] = segments\n\n const isGlobal = segmentOne === 'globals'\n const isCollection = segmentOne === 'collections'\n\n const i18n = await getNextRequestI18n({\n config,\n })\n\n let meta: Metadata\n\n // TODO: handle custom routes\n\n const collectionConfig =\n isCollection &&\n segments.length > 1 &&\n config?.collections?.find((collection) => collection.slug === segmentTwo)\n\n const globalConfig =\n isGlobal && segments.length > 1 && config?.globals?.find((global) => global.slug === segmentTwo)\n\n switch (segments.length) {\n case 0: {\n meta = await generateDashboardViewMetadata({ config, i18n })\n break\n }\n case 1: {\n if (folderCollectionSlugs.length && `/${segmentOne}` === config.admin.routes.browseByFolder) {\n // --> /:folderCollectionSlug\n meta = await oneSegmentMeta.folders({ config, i18n })\n } else if (segmentOne === 'account') {\n // --> /account\n meta = await generateAccountViewMetadata({ config, i18n })\n break\n } else if (oneSegmentMeta[segmentOne]) {\n // --> /create-first-user\n // --> /forgot\n // --> /login\n // --> /logout\n // --> /logout-inactivity\n // --> /unauthorized\n meta = await oneSegmentMeta[segmentOne]({ config, i18n })\n break\n }\n break\n }\n case 2: {\n if (`/${segmentOne}` === config.admin.routes.reset) {\n // --> /reset/:token\n meta = await generateResetPasswordViewMetadata({ config, i18n })\n } else if (\n folderCollectionSlugs.length &&\n `/${segmentOne}` === config.admin.routes.browseByFolder\n ) {\n // --> /browse-by-folder/:folderID\n meta = await generateBrowseByFolderMetadata({ config, i18n })\n } else if (isCollection) {\n // --> /collections/:collectionSlug\n meta = await generateListViewMetadata({ collectionConfig, config, i18n })\n } else if (isGlobal) {\n // --> /globals/:globalSlug\n meta = await generateDocumentViewMetadata({\n config,\n globalConfig,\n i18n,\n params,\n })\n }\n break\n }\n default: {\n if (segmentTwo === 'verify') {\n // --> /:collectionSlug/verify/:token\n meta = await generateVerifyViewMetadata({ config, i18n })\n } else if (isCollection) {\n if (segmentThree === 'trash' && segments.length === 3 && collectionConfig) {\n // Collection Trash Views\n // --> /collections/:collectionSlug/trash\n meta = await generateCollectionTrashMetadata({\n collectionConfig,\n config,\n i18n,\n params,\n })\n } else if (config.folders && segmentThree === config.folders.slug) {\n if (folderCollectionSlugs.includes(collectionConfig.slug)) {\n // Collection Folder Views\n // --> /collections/:collectionSlug/:folderCollectionSlug\n // --> /collections/:collectionSlug/:folderCollectionSlug/:id\n meta = await generateCollectionFolderMetadata({\n collectionConfig,\n config,\n i18n,\n params,\n })\n }\n } else {\n // Collection Document Views\n // --> /collections/:collectionSlug/:id\n // --> /collections/:collectionSlug/:id/versions\n // --> /collections/:collectionSlug/:id/versions/:version\n // --> /collections/:collectionSlug/:id/api\n // --> /collections/:collectionSlug/trash/:id\n meta = await generateDocumentViewMetadata({ collectionConfig, config, i18n, params })\n }\n } else if (isGlobal) {\n // Global Document Views\n // --> /globals/:globalSlug/versions\n // --> /globals/:globalSlug/versions/:version\n // --> /globals/:globalSlug/api\n meta = await generateDocumentViewMetadata({\n config,\n globalConfig,\n i18n,\n params,\n })\n }\n break\n }\n }\n\n if (!meta) {\n const { viewConfig, viewKey } = getCustomViewByRoute({\n config,\n currentRoute,\n })\n\n if (viewKey) {\n // Custom Views\n // --> /:path\n meta = await generateCustomViewMetadata({\n config,\n i18n,\n viewConfig,\n })\n } else {\n meta = await generateNotFoundViewMetadata({ config, i18n })\n }\n }\n\n return meta\n}\n"],"mappings":"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","ignoreList":[]}