@payloadcms/next 4.0.0-internal.5b1e7cd → 4.0.0-internal.5f0cd13

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 (420) hide show
  1. package/dist/adapters/router.d.ts +5 -0
  2. package/dist/adapters/router.d.ts.map +1 -0
  3. package/dist/adapters/router.js +53 -0
  4. package/dist/adapters/router.js.map +1 -0
  5. package/dist/adapters/server.d.ts +7 -0
  6. package/dist/adapters/server.d.ts.map +1 -0
  7. package/dist/adapters/server.js +39 -0
  8. package/dist/adapters/server.js.map +1 -0
  9. package/dist/cjs/withPayload.cjs +13 -180
  10. package/dist/cjs/withPayload.cjs.map +4 -4
  11. package/dist/exports/utilities.d.ts +2 -67
  12. package/dist/exports/utilities.d.ts.map +1 -1
  13. package/dist/exports/utilities.js +1 -49
  14. package/dist/exports/utilities.js.map +1 -1
  15. package/dist/layouts/Root/index.d.ts +18 -1
  16. package/dist/layouts/Root/index.d.ts.map +1 -1
  17. package/dist/layouts/Root/index.js +30 -5
  18. package/dist/layouts/Root/index.js.map +1 -1
  19. package/dist/prod/styles.css +1 -1
  20. package/dist/routes/graphql/handler.d.ts.map +1 -1
  21. package/dist/routes/graphql/playground.d.ts.map +1 -1
  22. package/dist/routes/rest/index.d.ts.map +1 -1
  23. package/dist/utilities/getHierarchyAncestry.d.ts +24 -0
  24. package/dist/utilities/getHierarchyAncestry.d.ts.map +1 -0
  25. package/dist/utilities/getHierarchyAncestry.js +103 -0
  26. package/dist/utilities/getHierarchyAncestry.js.map +1 -0
  27. package/dist/utilities/getNextRequestI18n.d.ts.map +1 -1
  28. package/dist/utilities/getPayloadHMR.d.ts.map +1 -1
  29. package/dist/utilities/getRequestHighContrast.d.ts +10 -0
  30. package/dist/utilities/getRequestHighContrast.d.ts.map +1 -0
  31. package/dist/utilities/getRequestHighContrast.js +18 -0
  32. package/dist/utilities/getRequestHighContrast.js.map +1 -0
  33. package/dist/utilities/getRequestTheme.d.ts.map +1 -1
  34. package/dist/utilities/getRouteWithoutAdmin.d.ts.map +1 -1
  35. package/dist/utilities/handleAuthRedirect.d.ts.map +1 -1
  36. package/dist/utilities/handleServerFunctions.d.ts.map +1 -1
  37. package/dist/utilities/handleServerFunctions.js +2 -3
  38. package/dist/utilities/handleServerFunctions.js.map +1 -1
  39. package/dist/utilities/initReq.d.ts.map +1 -1
  40. package/dist/utilities/initReq.js +2 -0
  41. package/dist/utilities/initReq.js.map +1 -1
  42. package/dist/utilities/isCustomAdminView.d.ts.map +1 -1
  43. package/dist/utilities/isPublicAdminRoute.d.ts.map +1 -1
  44. package/dist/utilities/meta.d.ts.map +1 -1
  45. package/dist/utilities/timestamp.d.ts.map +1 -1
  46. package/dist/views/API/index.client.d.ts +1 -1
  47. package/dist/views/API/index.client.d.ts.map +1 -1
  48. package/dist/views/API/index.client.js +111 -78
  49. package/dist/views/API/index.client.js.map +1 -1
  50. package/dist/views/API/index.css +205 -0
  51. package/dist/views/Account/Settings/index.css +26 -0
  52. package/dist/views/Account/Settings/index.d.ts +1 -1
  53. package/dist/views/Account/Settings/index.d.ts.map +1 -1
  54. package/dist/views/Account/Settings/index.js +2 -1
  55. package/dist/views/Account/Settings/index.js.map +1 -1
  56. package/dist/views/Account/ToggleHighContrast/index.d.ts +3 -0
  57. package/dist/views/Account/ToggleHighContrast/index.d.ts.map +1 -0
  58. package/dist/views/Account/ToggleHighContrast/index.js +45 -0
  59. package/dist/views/Account/ToggleHighContrast/index.js.map +1 -0
  60. package/dist/views/Account/index.d.ts.map +1 -1
  61. package/dist/views/Account/index.js +2 -1
  62. package/dist/views/Account/index.js.map +1 -1
  63. package/dist/views/CollectionTrash/metadata.d.ts.map +1 -1
  64. package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
  65. package/dist/views/CreateFirstUser/index.client.js +32 -25
  66. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  67. package/dist/views/CreateFirstUser/index.css +69 -0
  68. package/dist/views/CreateFirstUser/index.d.ts +1 -1
  69. package/dist/views/CreateFirstUser/index.d.ts.map +1 -1
  70. package/dist/views/CreateFirstUser/index.js +9 -5
  71. package/dist/views/CreateFirstUser/index.js.map +1 -1
  72. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.d.ts.map +1 -1
  73. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +72 -45
  74. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
  75. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.d.ts.map +1 -1
  76. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.js +25 -22
  77. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.js.map +1 -1
  78. package/dist/views/Dashboard/Default/ModularDashboard/index.client.d.ts.map +1 -1
  79. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +2 -3
  80. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  81. package/dist/views/Dashboard/Default/ModularDashboard/index.css +299 -0
  82. package/dist/views/Dashboard/Default/ModularDashboard/index.d.ts +1 -1
  83. package/dist/views/Dashboard/Default/ModularDashboard/index.d.ts.map +1 -1
  84. package/dist/views/Dashboard/Default/ModularDashboard/index.js.map +1 -1
  85. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
  86. package/dist/views/Dashboard/Default/index.d.ts +0 -6
  87. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  88. package/dist/views/Dashboard/Default/index.js +3 -0
  89. package/dist/views/Dashboard/Default/index.js.map +1 -1
  90. package/dist/views/Dashboard/index.d.ts.map +1 -1
  91. package/dist/views/Dashboard/index.js +1 -0
  92. package/dist/views/Dashboard/index.js.map +1 -1
  93. package/dist/views/Document/getCustomDocumentViewByKey.d.ts.map +1 -1
  94. package/dist/views/Document/getCustomViewByRoute.d.ts.map +1 -1
  95. package/dist/views/Document/getDocPreferences.d.ts.map +1 -1
  96. package/dist/views/Document/getDocumentData.d.ts.map +1 -1
  97. package/dist/views/Document/getDocumentPermissions.d.ts.map +1 -1
  98. package/dist/views/Document/getDocumentView.d.ts.map +1 -1
  99. package/dist/views/Document/getDocumentView.js +3 -9
  100. package/dist/views/Document/getDocumentView.js.map +1 -1
  101. package/dist/views/Document/getIsLocked.d.ts.map +1 -1
  102. package/dist/views/Document/getVersions.d.ts.map +1 -1
  103. package/dist/views/Document/handleServerFunction.d.ts.map +1 -1
  104. package/dist/views/Document/handleServerFunction.js +1 -0
  105. package/dist/views/Document/handleServerFunction.js.map +1 -1
  106. package/dist/views/Document/index.d.ts.map +1 -1
  107. package/dist/views/Document/index.js +6 -2
  108. package/dist/views/Document/index.js.map +1 -1
  109. package/dist/views/Document/renderDocumentSlots.d.ts.map +1 -1
  110. package/dist/views/Document/renderDocumentSlots.js +17 -8
  111. package/dist/views/Document/renderDocumentSlots.js.map +1 -1
  112. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
  113. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +1 -2
  114. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  115. package/dist/views/ForgotPassword/index.d.ts.map +1 -1
  116. package/dist/views/ForgotPassword/index.js +1 -1
  117. package/dist/views/ForgotPassword/index.js.map +1 -1
  118. package/dist/views/Hierarchy/index.d.ts +18 -0
  119. package/dist/views/Hierarchy/index.d.ts.map +1 -0
  120. package/dist/views/Hierarchy/index.js +20 -0
  121. package/dist/views/Hierarchy/index.js.map +1 -0
  122. package/dist/views/List/createSerializableValue.d.ts.map +1 -1
  123. package/dist/views/List/extractRelationshipDisplayValue.d.ts.map +1 -1
  124. package/dist/views/List/extractValueOrRelationshipID.d.ts.map +1 -1
  125. package/dist/views/List/handleGroupBy.d.ts.map +1 -1
  126. package/dist/views/List/handleGroupBy.js +8 -0
  127. package/dist/views/List/handleGroupBy.js.map +1 -1
  128. package/dist/views/List/handleHierarchy.d.ts +18 -0
  129. package/dist/views/List/handleHierarchy.d.ts.map +1 -0
  130. package/dist/views/List/handleHierarchy.js +259 -0
  131. package/dist/views/List/handleHierarchy.js.map +1 -0
  132. package/dist/views/List/handleServerFunction.d.ts.map +1 -1
  133. package/dist/views/List/handleServerFunction.js +1 -0
  134. package/dist/views/List/handleServerFunction.js.map +1 -1
  135. package/dist/views/List/index.css +3 -0
  136. package/dist/views/List/index.d.ts +1 -0
  137. package/dist/views/List/index.d.ts.map +1 -1
  138. package/dist/views/List/index.js +113 -31
  139. package/dist/views/List/index.js.map +1 -1
  140. package/dist/views/List/metadata.d.ts.map +1 -1
  141. package/dist/views/List/renderListViewSlots.d.ts.map +1 -1
  142. package/dist/views/List/renderListViewSlots.js +2 -1
  143. package/dist/views/List/renderListViewSlots.js.map +1 -1
  144. package/dist/views/List/resolveAllFilterOptions.d.ts.map +1 -1
  145. package/dist/views/List/transformColumnsToSelect.d.ts.map +1 -1
  146. package/dist/views/Login/LoginForm/index.css +48 -0
  147. package/dist/views/Login/LoginForm/index.d.ts +1 -1
  148. package/dist/views/Login/LoginForm/index.d.ts.map +1 -1
  149. package/dist/views/Login/LoginForm/index.js +33 -26
  150. package/dist/views/Login/LoginForm/index.js.map +1 -1
  151. package/dist/views/Login/index.css +8 -0
  152. package/dist/views/Login/index.d.ts +1 -1
  153. package/dist/views/Login/index.d.ts.map +1 -1
  154. package/dist/views/Login/index.js +4 -1
  155. package/dist/views/Login/index.js.map +1 -1
  156. package/dist/views/NotFound/index.client.d.ts +2 -4
  157. package/dist/views/NotFound/index.client.d.ts.map +1 -1
  158. package/dist/views/NotFound/index.client.js +25 -42
  159. package/dist/views/NotFound/index.client.js.map +1 -1
  160. package/dist/views/NotFound/index.css +47 -0
  161. package/dist/views/NotFound/index.d.ts.map +1 -1
  162. package/dist/views/NotFound/index.js +3 -4
  163. package/dist/views/NotFound/index.js.map +1 -1
  164. package/dist/views/NotFound/metadata.d.ts.map +1 -1
  165. package/dist/views/ResetPassword/index.d.ts.map +1 -1
  166. package/dist/views/ResetPassword/index.js +1 -1
  167. package/dist/views/ResetPassword/index.js.map +1 -1
  168. package/dist/views/Root/generateCustomViewMetadata.d.ts.map +1 -1
  169. package/dist/views/Root/getCustomCollectionViewByRoute.d.ts.map +1 -1
  170. package/dist/views/Root/getCustomGlobalViewByRoute.d.ts +12 -0
  171. package/dist/views/Root/getCustomGlobalViewByRoute.d.ts.map +1 -0
  172. package/dist/views/Root/getCustomGlobalViewByRoute.js +46 -0
  173. package/dist/views/Root/getCustomGlobalViewByRoute.js.map +1 -0
  174. package/dist/views/Root/getCustomViewByKey.d.ts.map +1 -1
  175. package/dist/views/Root/getCustomViewByRoute.d.ts.map +1 -1
  176. package/dist/views/Root/getRouteData.d.ts +1 -4
  177. package/dist/views/Root/getRouteData.d.ts.map +1 -1
  178. package/dist/views/Root/getRouteData.js +83 -110
  179. package/dist/views/Root/getRouteData.js.map +1 -1
  180. package/dist/views/Root/index.d.ts.map +1 -1
  181. package/dist/views/Root/index.js +9 -18
  182. package/dist/views/Root/index.js.map +1 -1
  183. package/dist/views/Root/isPathMatchingRoute.d.ts.map +1 -1
  184. package/dist/views/Root/metadata.d.ts.map +1 -1
  185. package/dist/views/Root/metadata.js +1 -37
  186. package/dist/views/Root/metadata.js.map +1 -1
  187. package/dist/views/Unauthorized/index.css +44 -0
  188. package/dist/views/Unauthorized/index.d.ts +1 -1
  189. package/dist/views/Unauthorized/index.d.ts.map +1 -1
  190. package/dist/views/Unauthorized/index.js +12 -33
  191. package/dist/views/Unauthorized/index.js.map +1 -1
  192. package/dist/views/Verify/index.d.ts.map +1 -1
  193. package/dist/views/Verify/index.js +2 -1
  194. package/dist/views/Verify/index.js.map +1 -1
  195. package/dist/views/Version/Default/index.css +227 -0
  196. package/dist/views/Version/Default/index.d.ts +1 -1
  197. package/dist/views/Version/Default/index.d.ts.map +1 -1
  198. package/dist/views/Version/Default/index.js +13 -11
  199. package/dist/views/Version/Default/index.js.map +1 -1
  200. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.css +64 -0
  201. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.d.ts +2 -1
  202. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.d.ts.map +1 -1
  203. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js +54 -48
  204. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
  205. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.d.ts +1 -1
  206. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.d.ts.map +1 -1
  207. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -1
  208. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts.map +1 -1
  209. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +3 -3
  210. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  211. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.css +97 -0
  212. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.d.ts +4 -0
  213. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.d.ts.map +1 -0
  214. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js +91 -0
  215. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js.map +1 -0
  216. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.css +29 -0
  217. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.d.ts +1 -1
  218. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.d.ts.map +1 -1
  219. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +37 -32
  220. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -1
  221. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.css +5 -0
  222. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.d.ts +1 -1
  223. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.d.ts.map +1 -1
  224. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
  225. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.css +40 -0
  226. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts +1 -1
  227. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts.map +1 -1
  228. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +3 -6
  229. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  230. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.d.ts.map +1 -1
  231. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.css +213 -0
  232. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts +1 -1
  233. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts.map +1 -1
  234. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +47 -25
  235. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  236. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.css +4 -0
  237. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts +1 -1
  238. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts.map +1 -1
  239. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +28 -22
  240. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  241. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.css +6 -0
  242. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts +1 -1
  243. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts.map +1 -1
  244. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  245. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.css +4 -0
  246. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts +1 -1
  247. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts.map +1 -1
  248. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +23 -15
  249. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  250. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.css +188 -0
  251. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.d.ts +1 -1
  252. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.d.ts.map +1 -1
  253. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js +91 -51
  254. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js.map +1 -1
  255. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts.map +1 -1
  256. package/dist/views/Version/RenderFieldsToDiff/fields/index.js +2 -1
  257. package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
  258. package/dist/views/Version/RenderFieldsToDiff/index.css +24 -0
  259. package/dist/views/Version/RenderFieldsToDiff/index.d.ts.map +1 -1
  260. package/dist/views/Version/Restore/index.css +26 -0
  261. package/dist/views/Version/Restore/index.d.ts +1 -1
  262. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  263. package/dist/views/Version/Restore/index.js +4 -3
  264. package/dist/views/Version/Restore/index.js.map +1 -1
  265. package/dist/views/Version/SelectComparison/VersionDrawer/index.d.ts.map +1 -1
  266. package/dist/views/Version/SelectComparison/VersionDrawer/index.js +0 -1
  267. package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
  268. package/dist/views/Version/VersionPillLabel/VersionPillLabel.d.ts +1 -1
  269. package/dist/views/Version/VersionPillLabel/VersionPillLabel.d.ts.map +1 -1
  270. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js +15 -8
  271. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js.map +1 -1
  272. package/dist/views/Version/VersionPillLabel/index.css +31 -0
  273. package/dist/views/Version/fetchVersions.d.ts.map +1 -1
  274. package/dist/views/Versions/buildColumns.d.ts.map +1 -1
  275. package/dist/views/Versions/buildColumns.js +18 -18
  276. package/dist/views/Versions/buildColumns.js.map +1 -1
  277. package/dist/views/Versions/cells/AutosaveCell/index.css +7 -0
  278. package/dist/views/Versions/cells/AutosaveCell/index.d.ts +1 -1
  279. package/dist/views/Versions/cells/AutosaveCell/index.d.ts.map +1 -1
  280. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  281. package/dist/views/Versions/index.client.d.ts.map +1 -1
  282. package/dist/views/Versions/index.client.js +7 -23
  283. package/dist/views/Versions/index.client.js.map +1 -1
  284. package/dist/views/Versions/index.css +85 -0
  285. package/dist/views/Versions/index.d.ts +1 -1
  286. package/dist/views/Versions/index.d.ts.map +1 -1
  287. package/dist/views/Versions/index.js +1 -1
  288. package/dist/views/Versions/index.js.map +1 -1
  289. package/dist/withPayload/withPayload.d.ts.map +1 -1
  290. package/dist/withPayload/withPayload.js +9 -27
  291. package/dist/withPayload/withPayload.js.map +1 -1
  292. package/dist/withPayload/withPayload.utils.d.ts +0 -14
  293. package/dist/withPayload/withPayload.utils.d.ts.map +1 -1
  294. package/dist/withPayload/withPayload.utils.js +0 -73
  295. package/dist/withPayload/withPayload.utils.js.map +1 -1
  296. package/package.json +14 -29
  297. package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.d.ts +0 -5
  298. package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.d.ts.map +0 -1
  299. package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js +0 -19
  300. package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js.map +0 -1
  301. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.d.ts +0 -12
  302. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.d.ts.map +0 -1
  303. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +0 -81
  304. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +0 -1
  305. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts +0 -16
  306. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts.map +0 -1
  307. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +0 -66
  308. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +0 -1
  309. package/dist/elements/DocumentHeader/Tabs/index.d.ts +0 -10
  310. package/dist/elements/DocumentHeader/Tabs/index.d.ts.map +0 -1
  311. package/dist/elements/DocumentHeader/Tabs/index.js +0 -78
  312. package/dist/elements/DocumentHeader/Tabs/index.js.map +0 -1
  313. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.d.ts +0 -4
  314. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.d.ts.map +0 -1
  315. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +0 -29
  316. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +0 -1
  317. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts +0 -11
  318. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +0 -1
  319. package/dist/elements/DocumentHeader/Tabs/tabs/index.js +0 -72
  320. package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +0 -1
  321. package/dist/elements/DocumentHeader/index.d.ts +0 -15
  322. package/dist/elements/DocumentHeader/index.d.ts.map +0 -1
  323. package/dist/elements/DocumentHeader/index.js +0 -36
  324. package/dist/elements/DocumentHeader/index.js.map +0 -1
  325. package/dist/elements/FormHeader/index.d.ts +0 -9
  326. package/dist/elements/FormHeader/index.d.ts.map +0 -1
  327. package/dist/elements/FormHeader/index.js +0 -20
  328. package/dist/elements/FormHeader/index.js.map +0 -1
  329. package/dist/elements/Logo/index.d.ts +0 -4
  330. package/dist/elements/Logo/index.d.ts.map +0 -1
  331. package/dist/elements/Logo/index.js +0 -39
  332. package/dist/elements/Logo/index.js.map +0 -1
  333. package/dist/elements/Nav/NavHamburger/index.d.ts +0 -8
  334. package/dist/elements/Nav/NavHamburger/index.d.ts.map +0 -1
  335. package/dist/elements/Nav/NavHamburger/index.js +0 -51
  336. package/dist/elements/Nav/NavHamburger/index.js.map +0 -1
  337. package/dist/elements/Nav/NavWrapper/index.d.ts +0 -10
  338. package/dist/elements/Nav/NavWrapper/index.d.ts.map +0 -1
  339. package/dist/elements/Nav/NavWrapper/index.js +0 -61
  340. package/dist/elements/Nav/NavWrapper/index.js.map +0 -1
  341. package/dist/elements/Nav/SettingsMenuButton/index.d.ts +0 -7
  342. package/dist/elements/Nav/SettingsMenuButton/index.d.ts.map +0 -1
  343. package/dist/elements/Nav/SettingsMenuButton/index.js +0 -45
  344. package/dist/elements/Nav/SettingsMenuButton/index.js.map +0 -1
  345. package/dist/elements/Nav/getNavPrefs.d.ts +0 -3
  346. package/dist/elements/Nav/getNavPrefs.d.ts.map +0 -1
  347. package/dist/elements/Nav/getNavPrefs.js +0 -27
  348. package/dist/elements/Nav/getNavPrefs.js.map +0 -1
  349. package/dist/elements/Nav/index.client.d.ts +0 -11
  350. package/dist/elements/Nav/index.client.d.ts.map +0 -1
  351. package/dist/elements/Nav/index.client.js +0 -133
  352. package/dist/elements/Nav/index.client.js.map +0 -1
  353. package/dist/elements/Nav/index.d.ts +0 -8
  354. package/dist/elements/Nav/index.d.ts.map +0 -1
  355. package/dist/elements/Nav/index.js +0 -183
  356. package/dist/elements/Nav/index.js.map +0 -1
  357. package/dist/exports/client.d.ts +0 -5
  358. package/dist/exports/client.d.ts.map +0 -1
  359. package/dist/exports/client.js +0 -7
  360. package/dist/exports/client.js.map +0 -1
  361. package/dist/exports/rsc.d.ts +0 -5
  362. package/dist/exports/rsc.d.ts.map +0 -1
  363. package/dist/exports/rsc.js +0 -5
  364. package/dist/exports/rsc.js.map +0 -1
  365. package/dist/exports/templates.d.ts +0 -3
  366. package/dist/exports/templates.d.ts.map +0 -1
  367. package/dist/exports/templates.js +0 -3
  368. package/dist/exports/templates.js.map +0 -1
  369. package/dist/templates/Default/NavHamburger/index.d.ts +0 -3
  370. package/dist/templates/Default/NavHamburger/index.d.ts.map +0 -1
  371. package/dist/templates/Default/NavHamburger/index.js +0 -25
  372. package/dist/templates/Default/NavHamburger/index.js.map +0 -1
  373. package/dist/templates/Default/Wrapper/index.d.ts +0 -8
  374. package/dist/templates/Default/Wrapper/index.d.ts.map +0 -1
  375. package/dist/templates/Default/Wrapper/index.js +0 -49
  376. package/dist/templates/Default/Wrapper/index.js.map +0 -1
  377. package/dist/templates/Default/index.d.ts +0 -17
  378. package/dist/templates/Default/index.d.ts.map +0 -1
  379. package/dist/templates/Default/index.js +0 -129
  380. package/dist/templates/Default/index.js.map +0 -1
  381. package/dist/templates/Minimal/index.d.ts +0 -10
  382. package/dist/templates/Minimal/index.d.ts.map +0 -1
  383. package/dist/templates/Minimal/index.js +0 -21
  384. package/dist/templates/Minimal/index.js.map +0 -1
  385. package/dist/views/API/RenderJSON/index.d.ts +0 -12
  386. package/dist/views/API/RenderJSON/index.d.ts.map +0 -1
  387. package/dist/views/API/RenderJSON/index.js +0 -135
  388. package/dist/views/API/RenderJSON/index.js.map +0 -1
  389. package/dist/views/BrowseByFolder/buildView.d.ts +0 -13
  390. package/dist/views/BrowseByFolder/buildView.d.ts.map +0 -1
  391. package/dist/views/BrowseByFolder/buildView.js +0 -170
  392. package/dist/views/BrowseByFolder/buildView.js.map +0 -1
  393. package/dist/views/BrowseByFolder/index.d.ts +0 -4
  394. package/dist/views/BrowseByFolder/index.d.ts.map +0 -1
  395. package/dist/views/BrowseByFolder/index.js +0 -20
  396. package/dist/views/BrowseByFolder/index.js.map +0 -1
  397. package/dist/views/BrowseByFolder/metadata.d.ts +0 -4
  398. package/dist/views/BrowseByFolder/metadata.d.ts.map +0 -1
  399. package/dist/views/BrowseByFolder/metadata.js +0 -18
  400. package/dist/views/BrowseByFolder/metadata.js.map +0 -1
  401. package/dist/views/CollectionFolders/buildView.d.ts +0 -15
  402. package/dist/views/CollectionFolders/buildView.d.ts.map +0 -1
  403. package/dist/views/CollectionFolders/buildView.js +0 -156
  404. package/dist/views/CollectionFolders/buildView.js.map +0 -1
  405. package/dist/views/CollectionFolders/index.d.ts +0 -4
  406. package/dist/views/CollectionFolders/index.d.ts.map +0 -1
  407. package/dist/views/CollectionFolders/index.js +0 -20
  408. package/dist/views/CollectionFolders/index.js.map +0 -1
  409. package/dist/views/CollectionFolders/metadata.d.ts +0 -7
  410. package/dist/views/CollectionFolders/metadata.d.ts.map +0 -1
  411. package/dist/views/CollectionFolders/metadata.js +0 -25
  412. package/dist/views/CollectionFolders/metadata.js.map +0 -1
  413. package/dist/views/CollectionFolders/renderFolderViewSlots.d.ts +0 -11
  414. package/dist/views/CollectionFolders/renderFolderViewSlots.d.ts.map +0 -1
  415. package/dist/views/CollectionFolders/renderFolderViewSlots.js +0 -64
  416. package/dist/views/CollectionFolders/renderFolderViewSlots.js.map +0 -1
  417. package/dist/withPayload/withPayloadLegacy.d.ts +0 -2
  418. package/dist/withPayload/withPayloadLegacy.d.ts.map +0 -1
  419. package/dist/withPayload/withPayloadLegacy.js +0 -47
  420. package/dist/withPayload/withPayloadLegacy.js.map +0 -1
@@ -0,0 +1,3 @@
1
+ .list-view__not-found-banner {
2
+ margin: var(--spacer-2-5) var(--gutter-h);
3
+ }
@@ -1,5 +1,6 @@
1
1
  import type { AdminViewServerProps, ListQuery, ListViewClientProps, ListViewServerPropsOnly, PayloadComponent } from 'payload';
2
2
  import React from 'react';
3
+ import './index.css';
3
4
  /**
4
5
  * @internal
5
6
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/List/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EAIpB,SAAS,EACT,mBAAmB,EACnB,uBAAuB,EAEvB,gBAAgB,EAGjB,MAAM,SAAS,CAAA;AAehB,OAAO,KAAmB,MAAM,OAAO,CAAA;AASvC;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B;;;OAGG;IACH,iBAAiB,CAAC,EACd,gBAAgB,GAChB,KAAK,CAAC,aAAa,CAAC,mBAAmB,GAAG,CAAC,mBAAmB,GAAG,uBAAuB,CAAC,CAAC,CAAA;IAC9F,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACrC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,GAAG,oBAAoB,CAAA;AAExB;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,SACnB,kBAAkB,KACvB,OAAO,CAAC;IACT,IAAI,EAAE,KAAK,CAAC,SAAS,CAAA;CACtB,CA+WA,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAYjD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/List/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EAKpB,SAAS,EACT,mBAAmB,EACnB,uBAAuB,EAEvB,gBAAgB,EAGjB,MAAM,SAAS,CAAA;AAsBhB,OAAO,KAAmB,MAAM,OAAO,CAAA;AASvC,OAAO,aAAa,CAAA;AAEpB;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B;;;OAGG;IACH,iBAAiB,CAAC,EACd,gBAAgB,GAChB,KAAK,CAAC,aAAa,CAAC,mBAAmB,GAAG,CAAC,mBAAmB,GAAG,uBAAuB,CAAC,CAAC,CAAA;IAC9F,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACrC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,GAAG,oBAAoB,CAAA;AAExB;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,GACzB,MAAM,kBAAkB,KACvB,OAAO,CAAC;IACT,IAAI,EAAE,KAAK,CAAC,SAAS,CAAA;CACtB,CA4eA,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAYjD,CAAA"}
@@ -1,13 +1,14 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { DefaultListView, HydrateAuthProvider, ListQueryProvider } from '@payloadcms/ui';
2
+ import { DefaultListView, HierarchyListView, HydrateAuthProvider, HydrateHierarchyProvider, ListQueryProvider } from '@payloadcms/ui';
3
3
  import { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent';
4
4
  import { getColumns, renderFilters, renderTable, upsertPreferences } from '@payloadcms/ui/rsc';
5
5
  import { notFound } from 'next/navigation.js';
6
- import { appendUploadSelectFields, combineWhereConstraints, formatAdminURL, isNumber, mergeListSearchAndWhere, transformColumnsToPreferences, transformColumnsToSearchParams } from 'payload/shared';
6
+ import { appendDateTimezoneSelectFields, appendUploadSelectFields, combineWhereConstraints, formatAdminURL, isNumber, mergeListSearchAndWhere, transformColumnsToPreferences, transformColumnsToSearchParams } from 'payload/shared';
7
7
  import React, { Fragment } from 'react';
8
8
  import { getDocumentPermissions } from '../Document/getDocumentPermissions.js';
9
9
  import { enrichDocsWithVersionStatus } from './enrichDocsWithVersionStatus.js';
10
10
  import { handleGroupBy } from './handleGroupBy.js';
11
+ import { handleHierarchy } from './handleHierarchy.js';
11
12
  import { renderListViewSlots } from './renderListViewSlots.js';
12
13
  import { resolveAllFilterOptions } from './resolveAllFilterOptions.js';
13
14
  import { transformColumnsToSelect } from './transformColumnsToSelect.js';
@@ -79,7 +80,7 @@ export const renderListView = async args => {
79
80
  }
80
81
  });
81
82
  let queryPreset;
82
- let queryPresetPermissions;
83
+ let queryPresetPermissions = permissions?.collections?.['payload-query-presets'];
83
84
  if (collectionPreferences?.preset) {
84
85
  try {
85
86
  queryPreset = await payload.findByID({
@@ -155,12 +156,40 @@ export const renderListView = async args => {
155
156
  i18n,
156
157
  permissions
157
158
  });
158
- const select = collectionConfig.admin.enableListViewSelectAPI ? transformColumnsToSelect(columns) : undefined;
159
+ /** Automatically force select active columns. */
160
+ const select = transformColumnsToSelect(columns);
159
161
  /** Force select image fields for list view thumbnails */
160
162
  appendUploadSelectFields({
161
163
  collectionConfig,
162
164
  select
163
165
  });
166
+ /** Force select `_tz` siblings for any timezone-enabled date fields in select */
167
+ appendDateTimezoneSelectFields({
168
+ fields: collectionConfig.flattenedFields,
169
+ select
170
+ });
171
+ /** Force select `_order` for orderable collections — OrderableTable needs it to compute reorder targets */
172
+ if (collectionConfig.orderable === true) {
173
+ select._order = true;
174
+ }
175
+ /** Force select `_status` for drafts-enabled collections — needed by `enrichDocsWithVersionStatus` and `formatDocURL` */
176
+ if (collectionConfig.versions?.drafts) {
177
+ select._status = true;
178
+ }
179
+ // Check for hierarchy parent param
180
+ const isHierarchyCollection = Boolean(collectionConfig.hierarchy);
181
+ const hierarchyParentFieldName = typeof collectionConfig.hierarchy === 'object' ? collectionConfig.hierarchy.parentFieldName ?? 'parent' : 'parent';
182
+ let hierarchyParentId = null;
183
+ if (isHierarchyCollection) {
184
+ const parentParam = searchParams?.[hierarchyParentFieldName];
185
+ if (parentParam === 'null' || parentParam === undefined) {
186
+ hierarchyParentId = null;
187
+ } else if (typeof parentParam === 'string') {
188
+ hierarchyParentId = payload.db.defaultIDType === 'number' && isNumber(parentParam) ? Number(parentParam) : parentParam;
189
+ }
190
+ }
191
+ // Hierarchy data for client-side rendering
192
+ let hierarchyData;
164
193
  try {
165
194
  if (collectionConfig.admin.groupBy && query.groupBy) {
166
195
  ({
@@ -246,6 +275,40 @@ export const renderListView = async args => {
246
275
  throw err;
247
276
  }
248
277
  }
278
+ // Fetch hierarchy data only for hierarchy view
279
+ let HierarchyIcon;
280
+ let HierarchySmallIcon;
281
+ const isHierarchyView = viewType === 'hierarchy';
282
+ if (isHierarchyCollection && isHierarchyView) {
283
+ // Extract typeFilter from searchParams (comma-separated list of collection slugs)
284
+ const typeFilterParam = searchParams?.typeFilter;
285
+ const typeFilter = typeof typeFilterParam === 'string' && typeFilterParam.length > 0 ? typeFilterParam.split(',') : undefined;
286
+ hierarchyData = await handleHierarchy({
287
+ baseFilter: baseFilterConstraint,
288
+ collectionConfig,
289
+ collectionSlug,
290
+ parentId: hierarchyParentId,
291
+ permissions,
292
+ req,
293
+ search: typeof query?.search === 'string' ? query.search : undefined,
294
+ typeFilter,
295
+ user
296
+ });
297
+ data = hierarchyData.childrenData;
298
+ // Resolve hierarchy icon from collection config
299
+ const hierarchyConfig = typeof collectionConfig.hierarchy === 'object' ? collectionConfig.hierarchy : undefined;
300
+ HierarchyIcon = RenderServerComponent({
301
+ Component: hierarchyConfig?.admin?.components?.Icon,
302
+ importMap: payload.importMap,
303
+ key: `hierarchy-icon-${collectionSlug}`
304
+ });
305
+ const smallIconComponent = hierarchyConfig?.admin?.components?.SmallIcon;
306
+ HierarchySmallIcon = smallIconComponent === hierarchyConfig?.admin?.components?.Icon ? HierarchyIcon : RenderServerComponent({
307
+ Component: smallIconComponent,
308
+ importMap: payload.importMap,
309
+ key: `hierarchy-small-icon-${collectionSlug}`
310
+ });
311
+ }
249
312
  const renderedFilters = renderFilters(collectionConfig.fields, req.payload.importMap);
250
313
  const resolvedFilterOptions = await resolveAllFilterOptions({
251
314
  fields: collectionConfig.fields,
@@ -282,6 +345,7 @@ export const renderListView = async args => {
282
345
  payload,
283
346
  permissions,
284
347
  searchParams,
348
+ server: req.server,
285
349
  user
286
350
  };
287
351
  const listViewSlots = renderListViewSlots({
@@ -302,42 +366,60 @@ export const renderListView = async args => {
302
366
  // Needed to prevent: Only plain objects can be passed to Client Components from Server Components. Objects with toJSON methods are not supported. Convert it manually to a simple value before passing it to props.
303
367
  // Is there a way to avoid this? The `where` object is already seemingly plain, but is not bc it originates from the params.
304
368
  query.where = query?.where ? JSON.parse(JSON.stringify(query?.where || {})) : undefined;
369
+ const RenderedListViewComponent = RenderServerComponent({
370
+ clientProps: {
371
+ ...listViewSlots,
372
+ baseFilter: baseFilterConstraint,
373
+ collectionSlug,
374
+ columnState,
375
+ disableBulkDelete,
376
+ disableBulkEdit: collectionConfig.disableBulkEdit ?? disableBulkEdit,
377
+ disableQueryPresets,
378
+ enableRowSelections,
379
+ hasCreatePermission,
380
+ hasDeletePermission,
381
+ hasTrashPermission,
382
+ hierarchyData,
383
+ HierarchyIcon,
384
+ HierarchySmallIcon,
385
+ listPreferences: collectionPreferences,
386
+ newDocumentURL,
387
+ queryPreset,
388
+ queryPresetPermissions,
389
+ renderedFilters,
390
+ resolvedFilterOptions,
391
+ Table,
392
+ viewType
393
+ },
394
+ Component: ComponentOverride ?? collectionConfig?.admin?.components?.views?.list?.Component,
395
+ Fallback: viewType === 'hierarchy' ? HierarchyListView : DefaultListView,
396
+ importMap: payload.importMap,
397
+ key: `list-view-${collectionSlug}-${viewType}`,
398
+ serverProps
399
+ });
305
400
  return {
306
401
  List: /*#__PURE__*/_jsxs(Fragment, {
307
402
  children: [/*#__PURE__*/_jsx(HydrateAuthProvider, {
308
403
  permissions: permissions
309
- }), /*#__PURE__*/_jsx(ListQueryProvider, {
404
+ }), isHierarchyView ? /*#__PURE__*/_jsxs(Fragment, {
405
+ children: [/*#__PURE__*/_jsx(HydrateHierarchyProvider, {
406
+ allowedCollections: hierarchyData?.allowedCollections,
407
+ baseFilter: baseFilterConstraint,
408
+ collectionSlug: collectionSlug,
409
+ expandedNodes: hierarchyData?.breadcrumbs?.slice(0, -1).map(b => b.id),
410
+ parent: hierarchyData?.parent,
411
+ parentFieldName: typeof collectionConfig.hierarchy === 'object' ? collectionConfig.hierarchy?.parentFieldName : undefined,
412
+ tableData: data,
413
+ treeLimit: typeof collectionConfig.hierarchy === 'object' ? collectionConfig.hierarchy?.admin?.treeLimit : undefined,
414
+ typeFieldName: typeof collectionConfig.hierarchy === 'object' && collectionConfig.hierarchy?.collectionSpecific && typeof collectionConfig.hierarchy.collectionSpecific === 'object' ? collectionConfig.hierarchy.collectionSpecific.fieldName : undefined
415
+ }), RenderedListViewComponent]
416
+ }) : /*#__PURE__*/_jsx(ListQueryProvider, {
310
417
  collectionSlug: collectionSlug,
311
418
  data: data,
312
419
  modifySearchParams: !isInDrawer,
313
420
  orderableFieldName: collectionConfig.orderable === true ? '_order' : undefined,
314
421
  query: query,
315
- children: RenderServerComponent({
316
- clientProps: {
317
- ...listViewSlots,
318
- collectionSlug,
319
- columnState,
320
- disableBulkDelete,
321
- disableBulkEdit: collectionConfig.disableBulkEdit ?? disableBulkEdit,
322
- disableQueryPresets,
323
- enableRowSelections,
324
- hasCreatePermission,
325
- hasDeletePermission,
326
- hasTrashPermission,
327
- listPreferences: collectionPreferences,
328
- newDocumentURL,
329
- queryPreset,
330
- queryPresetPermissions,
331
- renderedFilters,
332
- resolvedFilterOptions,
333
- Table,
334
- viewType
335
- },
336
- Component: ComponentOverride ?? collectionConfig?.admin?.components?.views?.list?.Component,
337
- Fallback: DefaultListView,
338
- importMap: payload.importMap,
339
- serverProps
340
- })
422
+ children: RenderedListViewComponent
341
423
  })]
342
424
  })
343
425
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["DefaultListView","HydrateAuthProvider","ListQueryProvider","RenderServerComponent","getColumns","renderFilters","renderTable","upsertPreferences","notFound","appendUploadSelectFields","combineWhereConstraints","formatAdminURL","isNumber","mergeListSearchAndWhere","transformColumnsToPreferences","transformColumnsToSearchParams","React","Fragment","getDocumentPermissions","enrichDocsWithVersionStatus","handleGroupBy","renderListViewSlots","resolveAllFilterOptions","transformColumnsToSelect","renderListView","args","clientConfig","ComponentOverride","customCellProps","disableBulkDelete","disableBulkEdit","disableQueryPresets","drawerSlug","enableRowSelections","initPageResult","overrideEntityVisibility","params","query","queryFromArgs","searchParams","trash","viewType","collectionConfig","slug","collectionSlug","locale","fullLocale","permissions","req","i18n","payload","config","queryFromReq","user","visibleEntities","routes","admin","adminRoute","collections","read","includes","Error","columnsFromQuery","columns","queryByGroup","JSON","parse","collectionPreferences","key","value","groupBy","limit","Number","undefined","preset","sort","queryPreset","queryPresetPermissions","findByID","id","collection","depth","overrideAccess","data","docPermissions","err","logger","error","where","columnPreference","page","pagination","defaultLimit","defaultSort","baseFilterConstraint","baseFilter","baseListFilter","whereWithMergedSearch","search","and","deletedAt","exists","Table","columnState","docs","hasNextPage","hasPrevPage","nextPage","pagingCounter","prevPage","totalDocs","totalPages","clientCollectionConfig","find","c","select","enableListViewSelectAPI","fieldPermissions","fields","draft","fallbackLocale","includeLockStatus","orderableFieldName","orderable","useAsTitle","name","msg","renderedFilters","importMap","resolvedFilterOptions","staticDescription","description","t","newDocumentURL","path","hasCreatePermission","create","hasDeletePermission","hasTrashPermission","notFoundDocId","serverProps","listPreferences","listSearchableFields","listViewSlots","clientProps","isInDrawer","Boolean","stringify","List","_jsxs","_jsx","modifySearchParams","Component","components","views","list","Fallback","ListView","RenderedList","message","console"],"sources":["../../../src/views/List/index.tsx"],"sourcesContent":["import type {\n AdminViewServerProps,\n CollectionPreferences,\n Column,\n ColumnPreference,\n ListQuery,\n ListViewClientProps,\n ListViewServerPropsOnly,\n PaginatedDocs,\n PayloadComponent,\n QueryPreset,\n SanitizedCollectionPermission,\n} from 'payload'\n\nimport { DefaultListView, HydrateAuthProvider, ListQueryProvider } from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { getColumns, renderFilters, renderTable, upsertPreferences } from '@payloadcms/ui/rsc'\nimport { notFound } from 'next/navigation.js'\nimport {\n appendUploadSelectFields,\n combineWhereConstraints,\n formatAdminURL,\n isNumber,\n mergeListSearchAndWhere,\n transformColumnsToPreferences,\n transformColumnsToSearchParams,\n} from 'payload/shared'\nimport React, { Fragment } from 'react'\n\nimport { getDocumentPermissions } from '../Document/getDocumentPermissions.js'\nimport { enrichDocsWithVersionStatus } from './enrichDocsWithVersionStatus.js'\nimport { handleGroupBy } from './handleGroupBy.js'\nimport { renderListViewSlots } from './renderListViewSlots.js'\nimport { resolveAllFilterOptions } from './resolveAllFilterOptions.js'\nimport { transformColumnsToSelect } from './transformColumnsToSelect.js'\n\n/**\n * @internal\n */\nexport type RenderListViewArgs = {\n /**\n * Allows providing your own list view component. This will override the default list view component and\n * the collection's configured list view component (if any).\n */\n ComponentOverride?:\n | PayloadComponent\n | React.ComponentType<ListViewClientProps | (ListViewClientProps & ListViewServerPropsOnly)>\n customCellProps?: Record<string, any>\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n disableQueryPresets?: boolean\n drawerSlug?: string\n enableRowSelections: boolean\n overrideEntityVisibility?: boolean\n /**\n * If not ListQuery is provided, `req.query` will be used.\n */\n query?: ListQuery\n redirectAfterDelete?: boolean\n redirectAfterDuplicate?: boolean\n /**\n * @experimental This prop is subject to change in future releases.\n */\n trash?: boolean\n} & AdminViewServerProps\n\n/**\n * This function is responsible for rendering\n * the list view on the server for both:\n * - default list view\n * - list view within drawers\n *\n * @internal\n */\nexport const renderListView = async (\n args: RenderListViewArgs,\n): Promise<{\n List: React.ReactNode\n}> => {\n const {\n clientConfig,\n ComponentOverride,\n customCellProps,\n disableBulkDelete,\n disableBulkEdit,\n disableQueryPresets,\n drawerSlug,\n enableRowSelections,\n initPageResult,\n overrideEntityVisibility,\n params,\n query: queryFromArgs,\n searchParams,\n trash,\n viewType,\n } = args\n\n const {\n collectionConfig,\n collectionConfig: { slug: collectionSlug },\n locale: fullLocale,\n permissions,\n req,\n req: {\n i18n,\n payload,\n payload: { config },\n query: queryFromReq,\n user,\n },\n visibleEntities,\n } = initPageResult\n const {\n routes: { admin: adminRoute },\n } = config\n\n if (\n !collectionConfig ||\n !permissions?.collections?.[collectionSlug]?.read ||\n (!visibleEntities.collections.includes(collectionSlug) && !overrideEntityVisibility)\n ) {\n throw new Error('not-found')\n }\n\n const query: ListQuery = queryFromArgs || queryFromReq\n\n const columnsFromQuery: ColumnPreference[] = transformColumnsToPreferences(query?.columns)\n\n query.queryByGroup =\n query?.queryByGroup && typeof query.queryByGroup === 'string'\n ? JSON.parse(query.queryByGroup)\n : query?.queryByGroup\n\n const collectionPreferences = await upsertPreferences<CollectionPreferences>({\n key: `collection-${collectionSlug}`,\n req,\n value: {\n columns: columnsFromQuery,\n groupBy: query?.groupBy,\n limit: isNumber(query?.limit) ? Number(query.limit) : undefined,\n preset: query?.preset,\n sort: query?.sort as string,\n },\n })\n\n let queryPreset: QueryPreset | undefined\n let queryPresetPermissions: SanitizedCollectionPermission | undefined\n\n if (collectionPreferences?.preset) {\n try {\n queryPreset = (await payload.findByID({\n id: collectionPreferences?.preset,\n collection: 'payload-query-presets',\n depth: 0,\n overrideAccess: false,\n user,\n })) as QueryPreset\n\n if (queryPreset) {\n queryPresetPermissions = (\n await getDocumentPermissions({\n id: queryPreset.id,\n collectionConfig: req.payload.collections['payload-query-presets'].config,\n data: queryPreset,\n req,\n })\n )?.docPermissions\n }\n } catch (err) {\n req.payload.logger.error(`Error fetching query preset or preset permissions: ${err}`)\n }\n }\n\n query.preset = queryPreset?.id\n if (queryPreset?.where && !query.where) {\n query.where = queryPreset.where\n }\n query.groupBy = query.groupBy ?? queryPreset?.groupBy ?? collectionPreferences?.groupBy\n\n const columnPreference = query.columns\n ? transformColumnsToPreferences(query.columns)\n : (queryPreset?.columns ?? collectionPreferences?.columns)\n query.columns = transformColumnsToSearchParams(columnPreference)\n\n query.page = isNumber(query?.page) ? Number(query.page) : 0\n\n query.limit = collectionPreferences?.limit || collectionConfig.admin.pagination.defaultLimit\n\n query.sort =\n collectionPreferences?.sort ||\n (typeof collectionConfig.defaultSort === 'string' ? collectionConfig.defaultSort : undefined)\n\n const baseFilterConstraint = await (\n collectionConfig.admin?.baseFilter ?? collectionConfig.admin?.baseListFilter\n )?.({\n limit: query.limit,\n page: query.page,\n req,\n sort: query.sort,\n })\n\n let whereWithMergedSearch = mergeListSearchAndWhere({\n collectionConfig,\n search: typeof query?.search === 'string' ? query.search : undefined,\n where: combineWhereConstraints([query?.where, baseFilterConstraint]),\n })\n\n if (trash === true) {\n whereWithMergedSearch = {\n and: [\n whereWithMergedSearch,\n {\n deletedAt: {\n exists: true,\n },\n },\n ],\n }\n }\n\n let Table: React.ReactNode | React.ReactNode[] = null\n let columnState: Column[] = []\n let data: PaginatedDocs = {\n // no results default\n docs: [],\n hasNextPage: false,\n hasPrevPage: false,\n limit: query.limit,\n nextPage: null,\n page: 1,\n pagingCounter: 0,\n prevPage: null,\n totalDocs: 0,\n totalPages: 0,\n }\n\n const clientCollectionConfig = clientConfig.collections.find((c) => c.slug === collectionSlug)\n\n const columns = getColumns({\n clientConfig,\n collectionConfig: clientCollectionConfig,\n collectionSlug,\n columns: columnPreference,\n i18n,\n permissions,\n })\n\n const select = collectionConfig.admin.enableListViewSelectAPI\n ? transformColumnsToSelect(columns)\n : undefined\n\n /** Force select image fields for list view thumbnails */\n appendUploadSelectFields({\n collectionConfig,\n select,\n })\n\n try {\n if (collectionConfig.admin.groupBy && query.groupBy) {\n ;({ columnState, data, Table } = await handleGroupBy({\n clientCollectionConfig,\n clientConfig,\n collectionConfig,\n collectionSlug,\n columns,\n customCellProps,\n drawerSlug,\n enableRowSelections,\n fieldPermissions: permissions?.collections?.[collectionSlug]?.fields,\n query,\n req,\n select,\n trash,\n user,\n viewType,\n where: whereWithMergedSearch,\n }))\n\n // Enrich documents with correct display status for drafts\n data = await enrichDocsWithVersionStatus({\n collectionConfig,\n data,\n req,\n })\n } else {\n data = await req.payload.find({\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n includeLockStatus: true,\n limit: query?.limit ? Number(query.limit) : undefined,\n locale: req.locale,\n overrideAccess: false,\n page: query?.page ? Number(query.page) : undefined,\n req,\n select,\n sort: query?.sort,\n trash,\n user,\n where: whereWithMergedSearch,\n })\n\n // Enrich documents with correct display status for drafts\n data = await enrichDocsWithVersionStatus({\n collectionConfig,\n data,\n req,\n })\n ;({ columnState, Table } = renderTable({\n clientCollectionConfig,\n collectionConfig,\n columns,\n customCellProps,\n data,\n drawerSlug,\n enableRowSelections,\n fieldPermissions: permissions?.collections?.[collectionSlug]?.fields,\n i18n: req.i18n,\n orderableFieldName: collectionConfig.orderable === true ? '_order' : undefined,\n payload: req.payload,\n query,\n req,\n useAsTitle: collectionConfig.admin.useAsTitle,\n viewType,\n }))\n }\n } catch (err) {\n if (err.name !== 'QueryError') {\n // QueryErrors are expected when a user filters by a field they do not have access to\n req.payload.logger.error({\n err,\n msg: `There was an error fetching the list view data for collection ${collectionSlug}`,\n })\n throw err\n }\n }\n\n const renderedFilters = renderFilters(collectionConfig.fields, req.payload.importMap)\n\n const resolvedFilterOptions = await resolveAllFilterOptions({\n fields: collectionConfig.fields,\n req,\n })\n\n const staticDescription =\n typeof collectionConfig.admin.description === 'function'\n ? collectionConfig.admin.description({ t: i18n.t })\n : collectionConfig.admin.description\n\n const newDocumentURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/create`,\n })\n\n const hasCreatePermission = permissions?.collections?.[collectionSlug]?.create\n\n const { hasDeletePermission, hasTrashPermission } = await getDocumentPermissions({\n collectionConfig,\n // Empty object serves as base for computing differentiated trash/delete permissions\n data: {},\n req,\n })\n\n // Check if there's a notFound query parameter (document ID that wasn't found)\n const notFoundDocId = typeof searchParams?.notFound === 'string' ? searchParams.notFound : null\n\n const serverProps: ListViewServerPropsOnly = {\n collectionConfig,\n data,\n i18n,\n limit: query.limit,\n listPreferences: collectionPreferences,\n listSearchableFields: collectionConfig.admin.listSearchableFields,\n locale: fullLocale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }\n\n const listViewSlots = renderListViewSlots({\n clientProps: {\n collectionSlug,\n hasCreatePermission,\n hasDeletePermission,\n hasTrashPermission,\n newDocumentURL,\n },\n collectionConfig,\n description: staticDescription,\n notFoundDocId,\n payload,\n serverProps,\n })\n\n const isInDrawer = Boolean(drawerSlug)\n\n // Needed to prevent: Only plain objects can be passed to Client Components from Server Components. Objects with toJSON methods are not supported. Convert it manually to a simple value before passing it to props.\n // Is there a way to avoid this? The `where` object is already seemingly plain, but is not bc it originates from the params.\n query.where = query?.where ? JSON.parse(JSON.stringify(query?.where || {})) : undefined\n\n return {\n List: (\n <Fragment>\n <HydrateAuthProvider permissions={permissions} />\n <ListQueryProvider\n collectionSlug={collectionSlug}\n data={data}\n modifySearchParams={!isInDrawer}\n orderableFieldName={collectionConfig.orderable === true ? '_order' : undefined}\n query={query}\n >\n {RenderServerComponent({\n clientProps: {\n ...listViewSlots,\n collectionSlug,\n columnState,\n disableBulkDelete,\n disableBulkEdit: collectionConfig.disableBulkEdit ?? disableBulkEdit,\n disableQueryPresets,\n enableRowSelections,\n hasCreatePermission,\n hasDeletePermission,\n hasTrashPermission,\n listPreferences: collectionPreferences,\n newDocumentURL,\n queryPreset,\n queryPresetPermissions,\n renderedFilters,\n resolvedFilterOptions,\n Table,\n viewType,\n } satisfies ListViewClientProps,\n Component:\n ComponentOverride ?? collectionConfig?.admin?.components?.views?.list?.Component,\n Fallback: DefaultListView,\n importMap: payload.importMap,\n serverProps,\n })}\n </ListQueryProvider>\n </Fragment>\n ),\n }\n}\n\nexport const ListView: React.FC<RenderListViewArgs> = async (args) => {\n try {\n const { List: RenderedList } = await renderListView({ ...args, enableRowSelections: true })\n return RenderedList\n } catch (error) {\n // Pass through Next.js errors\n if (error.message === 'not-found') {\n notFound()\n } else {\n console.error(error) // eslint-disable-line no-console\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["DefaultListView","HierarchyListView","HydrateAuthProvider","HydrateHierarchyProvider","ListQueryProvider","RenderServerComponent","getColumns","renderFilters","renderTable","upsertPreferences","notFound","appendDateTimezoneSelectFields","appendUploadSelectFields","combineWhereConstraints","formatAdminURL","isNumber","mergeListSearchAndWhere","transformColumnsToPreferences","transformColumnsToSearchParams","React","Fragment","getDocumentPermissions","enrichDocsWithVersionStatus","handleGroupBy","handleHierarchy","renderListViewSlots","resolveAllFilterOptions","transformColumnsToSelect","renderListView","args","clientConfig","ComponentOverride","customCellProps","disableBulkDelete","disableBulkEdit","disableQueryPresets","drawerSlug","enableRowSelections","initPageResult","overrideEntityVisibility","params","query","queryFromArgs","searchParams","trash","viewType","collectionConfig","slug","collectionSlug","locale","fullLocale","permissions","req","i18n","payload","config","queryFromReq","user","visibleEntities","routes","admin","adminRoute","collections","read","includes","Error","columnsFromQuery","columns","queryByGroup","JSON","parse","collectionPreferences","key","value","groupBy","limit","Number","undefined","preset","sort","queryPreset","queryPresetPermissions","findByID","id","collection","depth","overrideAccess","data","docPermissions","err","logger","error","where","columnPreference","page","pagination","defaultLimit","defaultSort","baseFilterConstraint","baseFilter","baseListFilter","whereWithMergedSearch","search","and","deletedAt","exists","Table","columnState","docs","hasNextPage","hasPrevPage","nextPage","pagingCounter","prevPage","totalDocs","totalPages","clientCollectionConfig","find","c","select","fields","flattenedFields","orderable","_order","versions","drafts","_status","isHierarchyCollection","Boolean","hierarchy","hierarchyParentFieldName","parentFieldName","hierarchyParentId","parentParam","db","defaultIDType","hierarchyData","fieldPermissions","draft","fallbackLocale","includeLockStatus","orderableFieldName","useAsTitle","name","msg","HierarchyIcon","HierarchySmallIcon","isHierarchyView","typeFilterParam","typeFilter","length","split","parentId","childrenData","hierarchyConfig","Component","components","Icon","importMap","smallIconComponent","SmallIcon","renderedFilters","resolvedFilterOptions","staticDescription","description","t","newDocumentURL","path","hasCreatePermission","create","hasDeletePermission","hasTrashPermission","notFoundDocId","serverProps","listPreferences","listSearchableFields","server","listViewSlots","clientProps","isInDrawer","stringify","RenderedListViewComponent","views","list","Fallback","List","_jsxs","_jsx","allowedCollections","expandedNodes","breadcrumbs","slice","map","b","parent","tableData","treeLimit","typeFieldName","collectionSpecific","fieldName","modifySearchParams","ListView","RenderedList","message","console"],"sources":["../../../src/views/List/index.tsx"],"sourcesContent":["import type {\n AdminViewServerProps,\n CollectionPreferences,\n Column,\n ColumnPreference,\n HierarchyViewData,\n ListQuery,\n ListViewClientProps,\n ListViewServerPropsOnly,\n PaginatedDocs,\n PayloadComponent,\n QueryPreset,\n SanitizedCollectionPermission,\n} from 'payload'\n\nimport {\n DefaultListView,\n HierarchyListView,\n HydrateAuthProvider,\n HydrateHierarchyProvider,\n ListQueryProvider,\n} from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { getColumns, renderFilters, renderTable, upsertPreferences } from '@payloadcms/ui/rsc'\nimport { notFound } from 'next/navigation.js'\nimport {\n appendDateTimezoneSelectFields,\n appendUploadSelectFields,\n combineWhereConstraints,\n formatAdminURL,\n isNumber,\n mergeListSearchAndWhere,\n transformColumnsToPreferences,\n transformColumnsToSearchParams,\n} from 'payload/shared'\nimport React, { Fragment } from 'react'\n\nimport { getDocumentPermissions } from '../Document/getDocumentPermissions.js'\nimport { enrichDocsWithVersionStatus } from './enrichDocsWithVersionStatus.js'\nimport { handleGroupBy } from './handleGroupBy.js'\nimport { handleHierarchy } from './handleHierarchy.js'\nimport { renderListViewSlots } from './renderListViewSlots.js'\nimport { resolveAllFilterOptions } from './resolveAllFilterOptions.js'\nimport { transformColumnsToSelect } from './transformColumnsToSelect.js'\nimport './index.css'\n\n/**\n * @internal\n */\nexport type RenderListViewArgs = {\n /**\n * Allows providing your own list view component. This will override the default list view component and\n * the collection's configured list view component (if any).\n */\n ComponentOverride?:\n | PayloadComponent\n | React.ComponentType<ListViewClientProps | (ListViewClientProps & ListViewServerPropsOnly)>\n customCellProps?: Record<string, any>\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n disableQueryPresets?: boolean\n drawerSlug?: string\n enableRowSelections: boolean\n overrideEntityVisibility?: boolean\n /**\n * If not ListQuery is provided, `req.query` will be used.\n */\n query?: ListQuery\n redirectAfterDelete?: boolean\n redirectAfterDuplicate?: boolean\n /**\n * @experimental This prop is subject to change in future releases.\n */\n trash?: boolean\n} & AdminViewServerProps\n\n/**\n * This function is responsible for rendering\n * the list view on the server for both:\n * - default list view\n * - list view within drawers\n *\n * @internal\n */\nexport const renderListView = async (\n args: RenderListViewArgs,\n): Promise<{\n List: React.ReactNode\n}> => {\n const {\n clientConfig,\n ComponentOverride,\n customCellProps,\n disableBulkDelete,\n disableBulkEdit,\n disableQueryPresets,\n drawerSlug,\n enableRowSelections,\n initPageResult,\n overrideEntityVisibility,\n params,\n query: queryFromArgs,\n searchParams,\n trash,\n viewType,\n } = args\n\n const {\n collectionConfig,\n collectionConfig: { slug: collectionSlug },\n locale: fullLocale,\n permissions,\n req,\n req: {\n i18n,\n payload,\n payload: { config },\n query: queryFromReq,\n user,\n },\n visibleEntities,\n } = initPageResult\n const {\n routes: { admin: adminRoute },\n } = config\n\n if (\n !collectionConfig ||\n !permissions?.collections?.[collectionSlug]?.read ||\n (!visibleEntities.collections.includes(collectionSlug) && !overrideEntityVisibility)\n ) {\n throw new Error('not-found')\n }\n\n const query: ListQuery = queryFromArgs || queryFromReq\n\n const columnsFromQuery: ColumnPreference[] = transformColumnsToPreferences(query?.columns)\n\n query.queryByGroup =\n query?.queryByGroup && typeof query.queryByGroup === 'string'\n ? JSON.parse(query.queryByGroup)\n : query?.queryByGroup\n\n const collectionPreferences = await upsertPreferences<CollectionPreferences>({\n key: `collection-${collectionSlug}`,\n req,\n value: {\n columns: columnsFromQuery,\n groupBy: query?.groupBy,\n limit: isNumber(query?.limit) ? Number(query.limit) : undefined,\n preset: query?.preset,\n sort: query?.sort as string,\n },\n })\n\n let queryPreset: QueryPreset | undefined\n let queryPresetPermissions: SanitizedCollectionPermission | undefined =\n permissions?.collections?.['payload-query-presets']\n\n if (collectionPreferences?.preset) {\n try {\n queryPreset = (await payload.findByID({\n id: collectionPreferences?.preset,\n collection: 'payload-query-presets',\n depth: 0,\n overrideAccess: false,\n user,\n })) as QueryPreset\n\n if (queryPreset) {\n queryPresetPermissions = (\n await getDocumentPermissions({\n id: queryPreset.id,\n collectionConfig: req.payload.collections['payload-query-presets'].config,\n data: queryPreset,\n req,\n })\n )?.docPermissions\n }\n } catch (err) {\n req.payload.logger.error(`Error fetching query preset or preset permissions: ${err}`)\n }\n }\n\n query.preset = queryPreset?.id\n if (queryPreset?.where && !query.where) {\n query.where = queryPreset.where\n }\n query.groupBy = query.groupBy ?? queryPreset?.groupBy ?? collectionPreferences?.groupBy\n\n const columnPreference = query.columns\n ? transformColumnsToPreferences(query.columns)\n : (queryPreset?.columns ?? collectionPreferences?.columns)\n query.columns = transformColumnsToSearchParams(columnPreference)\n\n query.page = isNumber(query?.page) ? Number(query.page) : 0\n\n query.limit = collectionPreferences?.limit || collectionConfig.admin.pagination.defaultLimit\n\n query.sort =\n collectionPreferences?.sort ||\n (typeof collectionConfig.defaultSort === 'string' ? collectionConfig.defaultSort : undefined)\n\n const baseFilterConstraint = await (\n collectionConfig.admin?.baseFilter ?? collectionConfig.admin?.baseListFilter\n )?.({\n limit: query.limit,\n page: query.page,\n req,\n sort: query.sort,\n })\n\n let whereWithMergedSearch = mergeListSearchAndWhere({\n collectionConfig,\n search: typeof query?.search === 'string' ? query.search : undefined,\n where: combineWhereConstraints([query?.where, baseFilterConstraint]),\n })\n\n if (trash === true) {\n whereWithMergedSearch = {\n and: [\n whereWithMergedSearch,\n {\n deletedAt: {\n exists: true,\n },\n },\n ],\n }\n }\n\n let Table: React.ReactNode | React.ReactNode[] = null\n let columnState: Column[] = []\n let data: PaginatedDocs = {\n // no results default\n docs: [],\n hasNextPage: false,\n hasPrevPage: false,\n limit: query.limit,\n nextPage: null,\n page: 1,\n pagingCounter: 0,\n prevPage: null,\n totalDocs: 0,\n totalPages: 0,\n }\n\n const clientCollectionConfig = clientConfig.collections.find((c) => c.slug === collectionSlug)\n\n const columns = getColumns({\n clientConfig,\n collectionConfig: clientCollectionConfig,\n collectionSlug,\n columns: columnPreference,\n i18n,\n permissions,\n })\n\n /** Automatically force select active columns. */\n const select = transformColumnsToSelect(columns)\n\n /** Force select image fields for list view thumbnails */\n appendUploadSelectFields({\n collectionConfig,\n select,\n })\n\n /** Force select `_tz` siblings for any timezone-enabled date fields in select */\n appendDateTimezoneSelectFields({\n fields: collectionConfig.flattenedFields,\n select,\n })\n\n /** Force select `_order` for orderable collections — OrderableTable needs it to compute reorder targets */\n if (collectionConfig.orderable === true) {\n select._order = true\n }\n\n /** Force select `_status` for drafts-enabled collections — needed by `enrichDocsWithVersionStatus` and `formatDocURL` */\n if (collectionConfig.versions?.drafts) {\n select._status = true\n }\n\n // Check for hierarchy parent param\n const isHierarchyCollection = Boolean(collectionConfig.hierarchy)\n const hierarchyParentFieldName =\n typeof collectionConfig.hierarchy === 'object'\n ? (collectionConfig.hierarchy.parentFieldName ?? 'parent')\n : 'parent'\n let hierarchyParentId: null | number | string = null\n\n if (isHierarchyCollection) {\n const parentParam = searchParams?.[hierarchyParentFieldName]\n if (parentParam === 'null' || parentParam === undefined) {\n hierarchyParentId = null\n } else if (typeof parentParam === 'string') {\n hierarchyParentId =\n payload.db.defaultIDType === 'number' && isNumber(parentParam)\n ? Number(parentParam)\n : parentParam\n }\n }\n\n // Hierarchy data for client-side rendering\n let hierarchyData: HierarchyViewData | undefined\n\n try {\n if (collectionConfig.admin.groupBy && query.groupBy) {\n ;({ columnState, data, Table } = await handleGroupBy({\n clientCollectionConfig,\n clientConfig,\n collectionConfig,\n collectionSlug,\n columns,\n customCellProps,\n drawerSlug,\n enableRowSelections,\n fieldPermissions: permissions?.collections?.[collectionSlug]?.fields,\n query,\n req,\n select,\n trash,\n user,\n viewType,\n where: whereWithMergedSearch,\n }))\n\n // Enrich documents with correct display status for drafts\n data = await enrichDocsWithVersionStatus({\n collectionConfig,\n data,\n req,\n })\n } else {\n data = await req.payload.find({\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n includeLockStatus: true,\n limit: query?.limit ? Number(query.limit) : undefined,\n locale: req.locale,\n overrideAccess: false,\n page: query?.page ? Number(query.page) : undefined,\n req,\n select,\n sort: query?.sort,\n trash,\n user,\n where: whereWithMergedSearch,\n })\n\n // Enrich documents with correct display status for drafts\n data = await enrichDocsWithVersionStatus({\n collectionConfig,\n data,\n req,\n })\n ;({ columnState, Table } = renderTable({\n clientCollectionConfig,\n collectionConfig,\n columns,\n customCellProps,\n data,\n drawerSlug,\n enableRowSelections,\n fieldPermissions: permissions?.collections?.[collectionSlug]?.fields,\n i18n: req.i18n,\n orderableFieldName: collectionConfig.orderable === true ? '_order' : undefined,\n payload: req.payload,\n query,\n req,\n useAsTitle: collectionConfig.admin.useAsTitle,\n viewType,\n }))\n }\n } catch (err) {\n if (err.name !== 'QueryError') {\n // QueryErrors are expected when a user filters by a field they do not have access to\n req.payload.logger.error({\n err,\n msg: `There was an error fetching the list view data for collection ${collectionSlug}`,\n })\n throw err\n }\n }\n\n // Fetch hierarchy data only for hierarchy view\n let HierarchyIcon: React.ReactNode | undefined\n let HierarchySmallIcon: React.ReactNode | undefined\n const isHierarchyView = viewType === 'hierarchy'\n\n if (isHierarchyCollection && isHierarchyView) {\n // Extract typeFilter from searchParams (comma-separated list of collection slugs)\n const typeFilterParam = searchParams?.typeFilter\n const typeFilter =\n typeof typeFilterParam === 'string' && typeFilterParam.length > 0\n ? typeFilterParam.split(',')\n : undefined\n\n hierarchyData = await handleHierarchy({\n baseFilter: baseFilterConstraint,\n collectionConfig,\n collectionSlug,\n parentId: hierarchyParentId,\n permissions,\n req,\n search: typeof query?.search === 'string' ? query.search : undefined,\n typeFilter,\n user,\n })\n\n data = hierarchyData.childrenData\n\n // Resolve hierarchy icon from collection config\n const hierarchyConfig =\n typeof collectionConfig.hierarchy === 'object' ? collectionConfig.hierarchy : undefined\n\n HierarchyIcon = RenderServerComponent({\n Component: hierarchyConfig?.admin?.components?.Icon,\n importMap: payload.importMap,\n key: `hierarchy-icon-${collectionSlug}`,\n })\n\n const smallIconComponent = hierarchyConfig?.admin?.components?.SmallIcon\n HierarchySmallIcon =\n smallIconComponent === hierarchyConfig?.admin?.components?.Icon\n ? HierarchyIcon\n : RenderServerComponent({\n Component: smallIconComponent,\n importMap: payload.importMap,\n key: `hierarchy-small-icon-${collectionSlug}`,\n })\n }\n\n const renderedFilters = renderFilters(collectionConfig.fields, req.payload.importMap)\n\n const resolvedFilterOptions = await resolveAllFilterOptions({\n fields: collectionConfig.fields,\n req,\n })\n\n const staticDescription =\n typeof collectionConfig.admin.description === 'function'\n ? collectionConfig.admin.description({ t: i18n.t })\n : collectionConfig.admin.description\n\n const newDocumentURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/create`,\n })\n\n const hasCreatePermission = permissions?.collections?.[collectionSlug]?.create\n\n const { hasDeletePermission, hasTrashPermission } = await getDocumentPermissions({\n collectionConfig,\n // Empty object serves as base for computing differentiated trash/delete permissions\n data: {},\n req,\n })\n\n // Check if there's a notFound query parameter (document ID that wasn't found)\n const notFoundDocId = typeof searchParams?.notFound === 'string' ? searchParams.notFound : null\n\n const serverProps: ListViewServerPropsOnly = {\n collectionConfig,\n data,\n i18n,\n limit: query.limit,\n listPreferences: collectionPreferences,\n listSearchableFields: collectionConfig.admin.listSearchableFields,\n locale: fullLocale,\n params,\n payload,\n permissions,\n searchParams,\n server: req.server,\n user,\n }\n\n const listViewSlots = renderListViewSlots({\n clientProps: {\n collectionSlug,\n hasCreatePermission,\n hasDeletePermission,\n hasTrashPermission,\n newDocumentURL,\n },\n collectionConfig,\n description: staticDescription,\n notFoundDocId,\n payload,\n serverProps,\n })\n\n const isInDrawer = Boolean(drawerSlug)\n\n // Needed to prevent: Only plain objects can be passed to Client Components from Server Components. Objects with toJSON methods are not supported. Convert it manually to a simple value before passing it to props.\n // Is there a way to avoid this? The `where` object is already seemingly plain, but is not bc it originates from the params.\n query.where = query?.where ? JSON.parse(JSON.stringify(query?.where || {})) : undefined\n\n const RenderedListViewComponent = RenderServerComponent({\n clientProps: {\n ...listViewSlots,\n baseFilter: baseFilterConstraint,\n collectionSlug,\n columnState,\n disableBulkDelete,\n disableBulkEdit: collectionConfig.disableBulkEdit ?? disableBulkEdit,\n disableQueryPresets,\n enableRowSelections,\n hasCreatePermission,\n hasDeletePermission,\n hasTrashPermission,\n hierarchyData,\n HierarchyIcon,\n HierarchySmallIcon,\n listPreferences: collectionPreferences,\n newDocumentURL,\n queryPreset,\n queryPresetPermissions,\n renderedFilters,\n resolvedFilterOptions,\n Table,\n viewType,\n } satisfies ListViewClientProps,\n Component: ComponentOverride ?? collectionConfig?.admin?.components?.views?.list?.Component,\n Fallback: viewType === 'hierarchy' ? HierarchyListView : DefaultListView,\n importMap: payload.importMap,\n key: `list-view-${collectionSlug}-${viewType}`,\n serverProps,\n })\n\n return {\n List: (\n <Fragment>\n <HydrateAuthProvider permissions={permissions} />\n {isHierarchyView ? (\n <Fragment>\n <HydrateHierarchyProvider\n allowedCollections={hierarchyData?.allowedCollections}\n baseFilter={baseFilterConstraint}\n collectionSlug={collectionSlug}\n expandedNodes={hierarchyData?.breadcrumbs?.slice(0, -1).map((b) => b.id)}\n parent={hierarchyData?.parent}\n parentFieldName={\n typeof collectionConfig.hierarchy === 'object'\n ? collectionConfig.hierarchy?.parentFieldName\n : undefined\n }\n tableData={data}\n treeLimit={\n typeof collectionConfig.hierarchy === 'object'\n ? collectionConfig.hierarchy?.admin?.treeLimit\n : undefined\n }\n typeFieldName={\n typeof collectionConfig.hierarchy === 'object' &&\n collectionConfig.hierarchy?.collectionSpecific &&\n typeof collectionConfig.hierarchy.collectionSpecific === 'object'\n ? collectionConfig.hierarchy.collectionSpecific.fieldName\n : undefined\n }\n />\n {RenderedListViewComponent}\n </Fragment>\n ) : (\n <ListQueryProvider\n collectionSlug={collectionSlug}\n data={data}\n modifySearchParams={!isInDrawer}\n orderableFieldName={collectionConfig.orderable === true ? '_order' : undefined}\n query={query}\n >\n {RenderedListViewComponent}\n </ListQueryProvider>\n )}\n </Fragment>\n ),\n }\n}\n\nexport const ListView: React.FC<RenderListViewArgs> = async (args) => {\n try {\n const { List: RenderedList } = await renderListView({ ...args, enableRowSelections: true })\n return RenderedList\n } catch (error) {\n // Pass through Next.js errors\n if (error.message === 'not-found') {\n notFound()\n } else {\n console.error(error) // eslint-disable-line no-console\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../../src/views/List/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AACpC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAIxD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAI5D,eAAO,MAAM,wBAAwB,SAC7B;IACJ,gBAAgB,EAAE,yBAAyB,CAAA;CAC5C,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,KACtC,OAAO,CAAC,QAAQ,CAmBlB,CAAA"}
1
+ {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../../src/views/List/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AACpC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAIxD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAI5D,eAAO,MAAM,wBAAwB,GACnC,MAAM;IACJ,gBAAgB,EAAE,yBAAyB,CAAA;CAC5C,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,KACtC,OAAO,CAAC,QAAQ,CAmBlB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"renderListViewSlots.d.ts","sourceRoot":"","sources":["../../../src/views/List/renderListViewSlots.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAQV,uBAAuB,EACvB,aAAa,EACb,6BAA6B,EAC7B,OAAO,EACP,yBAAyB,EACzB,iBAAiB,EAGlB,MAAM,SAAS,CAAA;AAMhB,KAAK,IAAI,GAAG;IACV,WAAW,EAAE,6BAA6B,CAAA;IAC1C,gBAAgB,EAAE,yBAAyB,CAAA;IAC3C,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B,aAAa,CAAC,EAAE,IAAI,GAAG,MAAM,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,uBAAuB,CAAA;CACrC,CAAA;AAED,eAAO,MAAM,mBAAmB,yFAO7B,IAAI,KAAG,aAmFT,CAAA"}
1
+ {"version":3,"file":"renderListViewSlots.d.ts","sourceRoot":"","sources":["../../../src/views/List/renderListViewSlots.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAQV,uBAAuB,EACvB,aAAa,EACb,6BAA6B,EAC7B,OAAO,EACP,yBAAyB,EACzB,iBAAiB,EAGlB,MAAM,SAAS,CAAA;AAMhB,KAAK,IAAI,GAAG;IACV,WAAW,EAAE,6BAA6B,CAAA;IAC1C,gBAAgB,EAAE,yBAAyB,CAAA;IAC3C,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B,aAAa,CAAC,EAAE,IAAI,GAAG,MAAM,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,uBAAuB,CAAA;CACrC,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,sFAOjC,IAAI,KAAG,aAmFT,CAAA"}
@@ -53,7 +53,8 @@ export const renderListViewSlots = ({
53
53
  }) : null;
54
54
  // Create banner for document not found
55
55
  const notFoundBanner = notFoundDocId ? /*#__PURE__*/_jsx(Banner, {
56
- type: "error",
56
+ className: "list-view__not-found-banner",
57
+ type: "danger",
57
58
  children: serverProps.i18n.t('error:documentNotFound', {
58
59
  id: notFoundDocId
59
60
  })
@@ -1 +1 @@
1
- {"version":3,"file":"renderListViewSlots.js","names":["Banner","RenderServerComponent","React","renderListViewSlots","clientProps","collectionConfig","description","notFoundDocId","payload","serverProps","result","admin","components","afterList","AfterList","Component","importMap","listMenuItems","Array","isArray","afterListTable","AfterListTable","beforeList","BeforeList","existingBeforeListTable","beforeListTable","notFoundBanner","_jsx","type","i18n","t","id","BeforeListTable","_jsxs","Fragment","Description","collectionSlug","slug"],"sources":["../../../src/views/List/renderListViewSlots.tsx"],"sourcesContent":["import type {\n AfterListClientProps,\n AfterListTableClientProps,\n AfterListTableServerPropsOnly,\n BeforeListClientProps,\n BeforeListServerPropsOnly,\n BeforeListTableClientProps,\n BeforeListTableServerPropsOnly,\n ListViewServerPropsOnly,\n ListViewSlots,\n ListViewSlotSharedClientProps,\n Payload,\n SanitizedCollectionConfig,\n StaticDescription,\n ViewDescriptionClientProps,\n ViewDescriptionServerPropsOnly,\n} from 'payload'\n\nimport { Banner } from '@payloadcms/ui/elements/Banner'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport React from 'react'\n\ntype Args = {\n clientProps: ListViewSlotSharedClientProps\n collectionConfig: SanitizedCollectionConfig\n description?: StaticDescription\n notFoundDocId?: null | string\n payload: Payload\n serverProps: ListViewServerPropsOnly\n}\n\nexport const renderListViewSlots = ({\n clientProps,\n collectionConfig,\n description,\n notFoundDocId,\n payload,\n serverProps,\n}: Args): ListViewSlots => {\n const result: ListViewSlots = {} as ListViewSlots\n\n if (collectionConfig.admin.components?.afterList) {\n result.AfterList = RenderServerComponent({\n clientProps: clientProps satisfies AfterListClientProps,\n Component: collectionConfig.admin.components.afterList,\n importMap: payload.importMap,\n serverProps: serverProps satisfies AfterListTableServerPropsOnly,\n })\n }\n\n const listMenuItems = collectionConfig.admin.components?.listMenuItems\n\n if (Array.isArray(listMenuItems)) {\n result.listMenuItems = [\n RenderServerComponent({\n clientProps,\n Component: listMenuItems,\n importMap: payload.importMap,\n serverProps,\n }),\n ]\n }\n\n if (collectionConfig.admin.components?.afterListTable) {\n result.AfterListTable = RenderServerComponent({\n clientProps: clientProps satisfies AfterListTableClientProps,\n Component: collectionConfig.admin.components.afterListTable,\n importMap: payload.importMap,\n serverProps: serverProps satisfies AfterListTableServerPropsOnly,\n })\n }\n\n if (collectionConfig.admin.components?.beforeList) {\n result.BeforeList = RenderServerComponent({\n clientProps: clientProps satisfies BeforeListClientProps,\n Component: collectionConfig.admin.components.beforeList,\n importMap: payload.importMap,\n serverProps: serverProps satisfies BeforeListServerPropsOnly,\n })\n }\n\n // Handle beforeListTable with optional banner\n const existingBeforeListTable = collectionConfig.admin.components?.beforeListTable\n ? RenderServerComponent({\n clientProps: clientProps satisfies BeforeListTableClientProps,\n Component: collectionConfig.admin.components.beforeListTable,\n importMap: payload.importMap,\n serverProps: serverProps satisfies BeforeListTableServerPropsOnly,\n })\n : null\n\n // Create banner for document not found\n const notFoundBanner = notFoundDocId ? (\n <Banner type=\"error\">\n {serverProps.i18n.t('error:documentNotFound', { id: notFoundDocId })}\n </Banner>\n ) : null\n\n // Combine banner and existing component\n if (notFoundBanner || existingBeforeListTable) {\n result.BeforeListTable = (\n <React.Fragment>\n {notFoundBanner}\n {existingBeforeListTable}\n </React.Fragment>\n )\n }\n\n if (collectionConfig.admin.components?.Description) {\n result.Description = RenderServerComponent({\n clientProps: {\n collectionSlug: collectionConfig.slug,\n description,\n } satisfies ViewDescriptionClientProps,\n Component: collectionConfig.admin.components.Description,\n importMap: payload.importMap,\n serverProps: serverProps satisfies ViewDescriptionServerPropsOnly,\n })\n }\n\n return result\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"renderListViewSlots.js","names":["Banner","RenderServerComponent","React","renderListViewSlots","clientProps","collectionConfig","description","notFoundDocId","payload","serverProps","result","admin","components","afterList","AfterList","Component","importMap","listMenuItems","Array","isArray","afterListTable","AfterListTable","beforeList","BeforeList","existingBeforeListTable","beforeListTable","notFoundBanner","_jsx","className","type","i18n","t","id","BeforeListTable","_jsxs","Fragment","Description","collectionSlug","slug"],"sources":["../../../src/views/List/renderListViewSlots.tsx"],"sourcesContent":["import type {\n AfterListClientProps,\n AfterListTableClientProps,\n AfterListTableServerPropsOnly,\n BeforeListClientProps,\n BeforeListServerPropsOnly,\n BeforeListTableClientProps,\n BeforeListTableServerPropsOnly,\n ListViewServerPropsOnly,\n ListViewSlots,\n ListViewSlotSharedClientProps,\n Payload,\n SanitizedCollectionConfig,\n StaticDescription,\n ViewDescriptionClientProps,\n ViewDescriptionServerPropsOnly,\n} from 'payload'\n\nimport { Banner } from '@payloadcms/ui/elements/Banner'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport React from 'react'\n\ntype Args = {\n clientProps: ListViewSlotSharedClientProps\n collectionConfig: SanitizedCollectionConfig\n description?: StaticDescription\n notFoundDocId?: null | string\n payload: Payload\n serverProps: ListViewServerPropsOnly\n}\n\nexport const renderListViewSlots = ({\n clientProps,\n collectionConfig,\n description,\n notFoundDocId,\n payload,\n serverProps,\n}: Args): ListViewSlots => {\n const result: ListViewSlots = {} as ListViewSlots\n\n if (collectionConfig.admin.components?.afterList) {\n result.AfterList = RenderServerComponent({\n clientProps: clientProps satisfies AfterListClientProps,\n Component: collectionConfig.admin.components.afterList,\n importMap: payload.importMap,\n serverProps: serverProps satisfies AfterListTableServerPropsOnly,\n })\n }\n\n const listMenuItems = collectionConfig.admin.components?.listMenuItems\n\n if (Array.isArray(listMenuItems)) {\n result.listMenuItems = [\n RenderServerComponent({\n clientProps,\n Component: listMenuItems,\n importMap: payload.importMap,\n serverProps,\n }),\n ]\n }\n\n if (collectionConfig.admin.components?.afterListTable) {\n result.AfterListTable = RenderServerComponent({\n clientProps: clientProps satisfies AfterListTableClientProps,\n Component: collectionConfig.admin.components.afterListTable,\n importMap: payload.importMap,\n serverProps: serverProps satisfies AfterListTableServerPropsOnly,\n })\n }\n\n if (collectionConfig.admin.components?.beforeList) {\n result.BeforeList = RenderServerComponent({\n clientProps: clientProps satisfies BeforeListClientProps,\n Component: collectionConfig.admin.components.beforeList,\n importMap: payload.importMap,\n serverProps: serverProps satisfies BeforeListServerPropsOnly,\n })\n }\n\n // Handle beforeListTable with optional banner\n const existingBeforeListTable = collectionConfig.admin.components?.beforeListTable\n ? RenderServerComponent({\n clientProps: clientProps satisfies BeforeListTableClientProps,\n Component: collectionConfig.admin.components.beforeListTable,\n importMap: payload.importMap,\n serverProps: serverProps satisfies BeforeListTableServerPropsOnly,\n })\n : null\n\n // Create banner for document not found\n const notFoundBanner = notFoundDocId ? (\n <Banner className=\"list-view__not-found-banner\" type=\"danger\">\n {serverProps.i18n.t('error:documentNotFound', { id: notFoundDocId })}\n </Banner>\n ) : null\n\n // Combine banner and existing component\n if (notFoundBanner || existingBeforeListTable) {\n result.BeforeListTable = (\n <React.Fragment>\n {notFoundBanner}\n {existingBeforeListTable}\n </React.Fragment>\n )\n }\n\n if (collectionConfig.admin.components?.Description) {\n result.Description = RenderServerComponent({\n clientProps: {\n collectionSlug: collectionConfig.slug,\n description,\n } satisfies ViewDescriptionClientProps,\n Component: collectionConfig.admin.components.Description,\n importMap: payload.importMap,\n serverProps: serverProps satisfies ViewDescriptionServerPropsOnly,\n })\n }\n\n return result\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"resolveAllFilterOptions.d.ts","sourceRoot":"","sources":["../../../src/views/List/resolveAllFilterOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAU3E,eAAO,MAAM,uBAAuB,yCAKjC;IACD,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,GAAG,EAAE,cAAc,CAAA;IACnB,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAA;CAC5C,KAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAgE7C,CAAA"}
1
+ {"version":3,"file":"resolveAllFilterOptions.d.ts","sourceRoot":"","sources":["../../../src/views/List/resolveAllFilterOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAU3E,eAAO,MAAM,uBAAuB,GAAU,sCAK3C;IACD,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,GAAG,EAAE,cAAc,CAAA;IACnB,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAA;CAC5C,KAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAgE7C,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"transformColumnsToSelect.d.ts","sourceRoot":"","sources":["../../../src/views/List/transformColumnsToSelect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAI3D,eAAO,MAAM,wBAAwB,YAAa,gBAAgB,EAAE,KAAG,UAStE,CAAA"}
1
+ {"version":3,"file":"transformColumnsToSelect.d.ts","sourceRoot":"","sources":["../../../src/views/List/transformColumnsToSelect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAI3D,eAAO,MAAM,wBAAwB,GAAI,SAAS,gBAAgB,EAAE,KAAG,UAStE,CAAA"}
@@ -0,0 +1,48 @@
1
+ @layer payload-default {
2
+ .login__form {
3
+ display: flex;
4
+ flex-direction: column;
5
+ gap: var(--spacer-5);
6
+ width: 100%;
7
+ }
8
+
9
+ .login__form__inputWrap {
10
+ display: flex;
11
+ flex-direction: column;
12
+ gap: var(--spacer-3);
13
+ }
14
+
15
+ .login__form__actions {
16
+ display: flex;
17
+ flex-direction: column;
18
+ gap: var(--spacer-2);
19
+ align-items: center;
20
+ width: 100%;
21
+ }
22
+
23
+ .login__form__actions .form-submit {
24
+ width: 100%;
25
+ }
26
+
27
+ .login__form__actions .form-submit .btn {
28
+ width: 100%;
29
+ justify-content: center;
30
+ }
31
+
32
+ .login__form__forgotPassword {
33
+ display: flex;
34
+ gap: var(--spacer-1);
35
+ align-items: center;
36
+ justify-content: center;
37
+ color: var(--color-text-brand);
38
+ width: 100%;
39
+ }
40
+
41
+ .login__form__forgotPassword a {
42
+ display: flex;
43
+ gap: var(--spacer-1);
44
+ align-items: center;
45
+ padding: var(--spacer-1) 0;
46
+ color: var(--color-text-brand);
47
+ }
48
+ }
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import './index.scss';
2
+ import './index.css';
3
3
  export declare const LoginForm: React.FC<{
4
4
  prefillEmail?: string;
5
5
  prefillPassword?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Login/LoginForm/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAqBzB,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;KAAE,CAAA;CAC/D,CA6FA,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Login/LoginForm/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAqBzB,OAAO,aAAa,CAAA;AAEpB,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;KAAE,CAAA;CAC/D,CAkGA,CAAA"}
@@ -4,11 +4,11 @@ import { c as _c } from "react/compiler-runtime";
4
4
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
5
  import React from 'react';
6
6
  const baseClass = 'login__form';
7
- import { Form, FormSubmit, Link, PasswordField, useAuth, useConfig, useTranslation } from '@payloadcms/ui';
7
+ import { Button, Form, FormSubmit, PasswordField, useAuth, useConfig, useTranslation } from '@payloadcms/ui';
8
8
  import { formatAdminURL, getLoginOptions, getSafeRedirect } from 'payload/shared';
9
9
  import { LoginField } from '../LoginField/index.js';
10
10
  export const LoginForm = t0 => {
11
- const $ = _c(23);
11
+ const $ = _c(24);
12
12
  const {
13
13
  prefillEmail,
14
14
  prefillPassword,
@@ -21,7 +21,8 @@ export const LoginForm = t0 => {
21
21
  } = useConfig();
22
22
  const {
23
23
  admin: t1,
24
- routes: t2
24
+ routes: t2,
25
+ serverURL
25
26
  } = config;
26
27
  const {
27
28
  routes: t3,
@@ -84,7 +85,7 @@ export const LoginForm = t0 => {
84
85
  const t6 = prefillPassword ?? undefined;
85
86
  const t7 = prefillPassword ?? undefined;
86
87
  let t8;
87
- if ($[7] !== adminRoute || $[8] !== apiRoute || $[9] !== forgotRoute || $[10] !== loginType || $[11] !== loginWithUsername || $[12] !== prefillEmail || $[13] !== prefillUsername || $[14] !== searchParams?.redirect || $[15] !== setUser || $[16] !== t || $[17] !== t6 || $[18] !== t7 || $[19] !== userSlug) {
88
+ if ($[7] !== adminRoute || $[8] !== apiRoute || $[9] !== forgotRoute || $[10] !== loginType || $[11] !== loginWithUsername || $[12] !== prefillEmail || $[13] !== prefillUsername || $[14] !== searchParams?.redirect || $[15] !== serverURL || $[16] !== setUser || $[17] !== t || $[18] !== t6 || $[19] !== t7 || $[20] !== userSlug) {
88
89
  const initialState = {
89
90
  password: {
90
91
  initialValue: t6,
@@ -106,20 +107,21 @@ export const LoginForm = t0 => {
106
107
  };
107
108
  }
108
109
  let t9;
109
- if ($[21] !== setUser) {
110
+ if ($[22] !== setUser) {
110
111
  t9 = data => {
111
112
  setUser(data);
112
113
  };
113
- $[21] = setUser;
114
- $[22] = t9;
114
+ $[22] = setUser;
115
+ $[23] = t9;
115
116
  } else {
116
- t9 = $[22];
117
+ t9 = $[23];
117
118
  }
118
119
  const handleLogin = t9;
119
120
  t8 = _jsxs(Form, {
120
121
  action: formatAdminURL({
121
122
  apiRoute,
122
- path: `/${userSlug}/login`
123
+ path: `/${userSlug}/login`,
124
+ serverURL
123
125
  }),
124
126
  className: baseClass,
125
127
  disableSuccessStatus: true,
@@ -143,16 +145,20 @@ export const LoginForm = t0 => {
143
145
  },
144
146
  path: "password"
145
147
  })]
146
- }), _jsx(Link, {
147
- href: formatAdminURL({
148
- adminRoute,
149
- path: forgotRoute
150
- }),
151
- prefetch: false,
152
- children: t("authentication:forgotPasswordQuestion")
153
- }), _jsx(FormSubmit, {
154
- size: "large",
155
- children: t("authentication:login")
148
+ }), _jsxs("div", {
149
+ className: `${baseClass}__actions`,
150
+ children: [_jsx(FormSubmit, {
151
+ children: t("authentication:login")
152
+ }), _jsx(Button, {
153
+ buttonStyle: "ghost",
154
+ className: `${baseClass}__forgotPassword`,
155
+ el: "link",
156
+ url: formatAdminURL({
157
+ adminRoute,
158
+ path: forgotRoute
159
+ }),
160
+ children: t("authentication:forgotPasswordQuestion")
161
+ })]
156
162
  })]
157
163
  });
158
164
  $[7] = adminRoute;
@@ -163,14 +169,15 @@ export const LoginForm = t0 => {
163
169
  $[12] = prefillEmail;
164
170
  $[13] = prefillUsername;
165
171
  $[14] = searchParams?.redirect;
166
- $[15] = setUser;
167
- $[16] = t;
168
- $[17] = t6;
169
- $[18] = t7;
170
- $[19] = userSlug;
171
- $[20] = t8;
172
+ $[15] = serverURL;
173
+ $[16] = setUser;
174
+ $[17] = t;
175
+ $[18] = t6;
176
+ $[19] = t7;
177
+ $[20] = userSlug;
178
+ $[21] = t8;
172
179
  } else {
173
- t8 = $[20];
180
+ t8 = $[21];
174
181
  }
175
182
  return t8;
176
183
  };