@payloadcms/next 3.70.0 → 3.71.0-internal-debug.80dab4c

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 (448) hide show
  1. package/dist/auth/login.js +52 -58
  2. package/dist/auth/login.js.map +1 -1
  3. package/dist/auth/logout.js +39 -44
  4. package/dist/auth/logout.js.map +1 -1
  5. package/dist/auth/refresh.js +45 -47
  6. package/dist/auth/refresh.js.map +1 -1
  7. package/dist/cjs/withPayload.cjs +61 -23
  8. package/dist/cjs/withPayload.cjs.map +2 -2
  9. package/dist/config.js +1 -0
  10. package/dist/config.js.map +1 -1
  11. package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js +9 -15
  12. package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js.map +1 -1
  13. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +40 -71
  14. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
  15. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +65 -59
  16. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  17. package/dist/elements/DocumentHeader/Tabs/Tab/index.scss +38 -0
  18. package/dist/elements/DocumentHeader/Tabs/index.js +80 -70
  19. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  20. package/dist/elements/DocumentHeader/Tabs/index.scss +54 -0
  21. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +16 -23
  22. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  23. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.scss +9 -0
  24. package/dist/elements/DocumentHeader/Tabs/tabs/index.js +61 -69
  25. package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
  26. package/dist/elements/DocumentHeader/index.js +48 -28
  27. package/dist/elements/DocumentHeader/index.js.map +1 -1
  28. package/dist/elements/DocumentHeader/index.scss +64 -0
  29. package/dist/elements/FormHeader/index.js +30 -16
  30. package/dist/elements/FormHeader/index.js.map +1 -1
  31. package/dist/elements/FormHeader/index.scss +8 -0
  32. package/dist/elements/Logo/index.js +19 -34
  33. package/dist/elements/Logo/index.js.map +1 -1
  34. package/dist/elements/Nav/NavHamburger/index.js +23 -44
  35. package/dist/elements/Nav/NavHamburger/index.js.map +1 -1
  36. package/dist/elements/Nav/NavWrapper/index.js +28 -54
  37. package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
  38. package/dist/elements/Nav/NavWrapper/index.scss +27 -0
  39. package/dist/elements/Nav/SettingsMenuButton/index.js +33 -39
  40. package/dist/elements/Nav/SettingsMenuButton/index.js.map +1 -1
  41. package/dist/elements/Nav/SettingsMenuButton/index.scss +11 -0
  42. package/dist/elements/Nav/getNavPrefs.js +27 -22
  43. package/dist/elements/Nav/getNavPrefs.js.map +1 -1
  44. package/dist/elements/Nav/index.client.js +97 -118
  45. package/dist/elements/Nav/index.client.js.map +1 -1
  46. package/dist/elements/Nav/index.js +148 -127
  47. package/dist/elements/Nav/index.js.map +1 -1
  48. package/dist/elements/Nav/index.scss +173 -0
  49. package/dist/esbuildEntry.d.ts +5 -0
  50. package/dist/esbuildEntry.d.ts.map +1 -0
  51. package/dist/esbuildEntry.js +6 -0
  52. package/dist/esbuildEntry.js.map +1 -0
  53. package/dist/exports/auth.js +1 -0
  54. package/dist/exports/auth.js.map +1 -1
  55. package/dist/exports/client.js +1 -1
  56. package/dist/exports/client.js.map +1 -1
  57. package/dist/exports/layouts.js +1 -0
  58. package/dist/exports/layouts.js.map +1 -1
  59. package/dist/exports/routes.js +1 -0
  60. package/dist/exports/routes.js.map +1 -1
  61. package/dist/exports/rsc.js +1 -0
  62. package/dist/exports/rsc.js.map +1 -1
  63. package/dist/exports/templates.js +1 -0
  64. package/dist/exports/templates.js.map +1 -1
  65. package/dist/exports/utilities.js +7 -12
  66. package/dist/exports/utilities.js.map +1 -1
  67. package/dist/exports/views.js +1 -0
  68. package/dist/exports/views.js.map +1 -1
  69. package/dist/index.js +1 -0
  70. package/dist/index.js.map +1 -1
  71. package/dist/layouts/Root/NestProviders.js +21 -20
  72. package/dist/layouts/Root/NestProviders.js.map +1 -1
  73. package/dist/layouts/Root/checkDependencies.js +49 -41
  74. package/dist/layouts/Root/checkDependencies.js.map +1 -1
  75. package/dist/layouts/Root/index.js +128 -103
  76. package/dist/layouts/Root/index.js.map +1 -1
  77. package/dist/prod/styles.css +5 -1
  78. package/dist/routes/graphql/handler.js +114 -122
  79. package/dist/routes/graphql/handler.js.map +1 -1
  80. package/dist/routes/graphql/index.js +1 -0
  81. package/dist/routes/graphql/index.js.map +1 -1
  82. package/dist/routes/graphql/playground.js +28 -27
  83. package/dist/routes/graphql/playground.js.map +1 -1
  84. package/dist/routes/index.js +1 -0
  85. package/dist/routes/index.js.map +1 -1
  86. package/dist/routes/rest/index.js +23 -22
  87. package/dist/routes/rest/index.js.map +1 -1
  88. package/dist/routes/rest/og/image.js +103 -79
  89. package/dist/routes/rest/og/image.js.map +1 -1
  90. package/dist/routes/rest/og/index.js +59 -54
  91. package/dist/routes/rest/og/index.js.map +1 -1
  92. package/dist/templates/Default/NavHamburger/index.js +12 -20
  93. package/dist/templates/Default/NavHamburger/index.js.map +1 -1
  94. package/dist/templates/Default/Wrapper/index.js +20 -44
  95. package/dist/templates/Default/Wrapper/index.js.map +1 -1
  96. package/dist/templates/Default/Wrapper/index.scss +58 -0
  97. package/dist/templates/Default/index.js +147 -116
  98. package/dist/templates/Default/index.js.map +1 -1
  99. package/dist/templates/Default/index.scss +79 -0
  100. package/dist/templates/Minimal/index.js +26 -17
  101. package/dist/templates/Minimal/index.js.map +1 -1
  102. package/dist/templates/Minimal/index.scss +30 -0
  103. package/dist/utilities/getExistingAuthToken.js +3 -2
  104. package/dist/utilities/getExistingAuthToken.js.map +1 -1
  105. package/dist/utilities/getNextRequestI18n.js +12 -13
  106. package/dist/utilities/getNextRequestI18n.js.map +1 -1
  107. package/dist/utilities/getPayloadHMR.js +5 -5
  108. package/dist/utilities/getPayloadHMR.js.map +1 -1
  109. package/dist/utilities/getPreferences.js +27 -22
  110. package/dist/utilities/getPreferences.js.map +1 -1
  111. package/dist/utilities/getRequestLocale.js +13 -14
  112. package/dist/utilities/getRequestLocale.js.map +1 -1
  113. package/dist/utilities/getRequestTheme.js +19 -19
  114. package/dist/utilities/getRequestTheme.js.map +1 -1
  115. package/dist/utilities/getRouteWithoutAdmin.js +3 -5
  116. package/dist/utilities/getRouteWithoutAdmin.js.map +1 -1
  117. package/dist/utilities/handleAuthRedirect.js +22 -36
  118. package/dist/utilities/handleAuthRedirect.js.map +1 -1
  119. package/dist/utilities/handleServerFunctions.js +34 -41
  120. package/dist/utilities/handleServerFunctions.js.map +1 -1
  121. package/dist/utilities/initReq.js +78 -96
  122. package/dist/utilities/initReq.js.map +1 -1
  123. package/dist/utilities/isCustomAdminView.js +22 -26
  124. package/dist/utilities/isCustomAdminView.js.map +1 -1
  125. package/dist/utilities/isPublicAdminRoute.js +26 -20
  126. package/dist/utilities/isPublicAdminRoute.js.map +1 -1
  127. package/dist/utilities/meta.js +68 -63
  128. package/dist/utilities/meta.js.map +1 -1
  129. package/dist/utilities/selectiveCache.js +25 -26
  130. package/dist/utilities/selectiveCache.js.map +1 -1
  131. package/dist/utilities/setPayloadAuthCookie.js +19 -22
  132. package/dist/utilities/setPayloadAuthCookie.js.map +1 -1
  133. package/dist/utilities/slugify.js +24 -33
  134. package/dist/utilities/slugify.js.map +1 -1
  135. package/dist/utilities/timestamp.js +7 -6
  136. package/dist/utilities/timestamp.js.map +1 -1
  137. package/dist/views/API/LocaleSelector/index.js +17 -39
  138. package/dist/views/API/LocaleSelector/index.js.map +1 -1
  139. package/dist/views/API/RenderJSON/index.js +171 -126
  140. package/dist/views/API/RenderJSON/index.js.map +1 -1
  141. package/dist/views/API/RenderJSON/index.scss +129 -0
  142. package/dist/views/API/index.client.js +290 -197
  143. package/dist/views/API/index.client.js.map +1 -1
  144. package/dist/views/API/index.js +7 -2
  145. package/dist/views/API/index.js.map +1 -1
  146. package/dist/views/API/index.scss +119 -0
  147. package/dist/views/API/metadata.js +18 -23
  148. package/dist/views/API/metadata.js.map +1 -1
  149. package/dist/views/Account/ResetPreferences/index.js +78 -102
  150. package/dist/views/Account/ResetPreferences/index.js.map +1 -1
  151. package/dist/views/Account/Settings/LanguageSelector.js +18 -47
  152. package/dist/views/Account/Settings/LanguageSelector.js.map +1 -1
  153. package/dist/views/Account/Settings/index.js +60 -25
  154. package/dist/views/Account/Settings/index.js.map +1 -1
  155. package/dist/views/Account/Settings/index.scss +48 -0
  156. package/dist/views/Account/ToggleTheme/index.js +38 -55
  157. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  158. package/dist/views/Account/index.client.js +16 -32
  159. package/dist/views/Account/index.client.js.map +1 -1
  160. package/dist/views/Account/index.js +147 -158
  161. package/dist/views/Account/index.js.map +1 -1
  162. package/dist/views/Account/metadata.js +8 -12
  163. package/dist/views/Account/metadata.js.map +1 -1
  164. package/dist/views/BrowseByFolder/buildView.js +138 -157
  165. package/dist/views/BrowseByFolder/buildView.js.map +1 -1
  166. package/dist/views/BrowseByFolder/index.js +16 -16
  167. package/dist/views/BrowseByFolder/index.js.map +1 -1
  168. package/dist/views/BrowseByFolder/metadata.js +13 -15
  169. package/dist/views/BrowseByFolder/metadata.js.map +1 -1
  170. package/dist/views/CollectionFolders/buildView.js +122 -142
  171. package/dist/views/CollectionFolders/buildView.js.map +1 -1
  172. package/dist/views/CollectionFolders/index.js +16 -16
  173. package/dist/views/CollectionFolders/index.js.map +1 -1
  174. package/dist/views/CollectionFolders/metadata.js +18 -21
  175. package/dist/views/CollectionFolders/metadata.js.map +1 -1
  176. package/dist/views/CollectionFolders/renderFolderViewSlots.js +58 -61
  177. package/dist/views/CollectionFolders/renderFolderViewSlots.js.map +1 -1
  178. package/dist/views/CollectionTrash/index.js +17 -17
  179. package/dist/views/CollectionTrash/index.js.map +1 -1
  180. package/dist/views/CollectionTrash/metadata.js +18 -21
  181. package/dist/views/CollectionTrash/metadata.js.map +1 -1
  182. package/dist/views/CreateFirstUser/index.client.js +117 -103
  183. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  184. package/dist/views/CreateFirstUser/index.js +87 -81
  185. package/dist/views/CreateFirstUser/index.js.map +1 -1
  186. package/dist/views/CreateFirstUser/index.scss +21 -0
  187. package/dist/views/CreateFirstUser/metadata.js +8 -12
  188. package/dist/views/CreateFirstUser/metadata.js.map +1 -1
  189. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +147 -138
  190. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
  191. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +423 -405
  192. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  193. package/dist/views/Dashboard/Default/ModularDashboard/index.js +72 -75
  194. package/dist/views/Dashboard/Default/ModularDashboard/index.js.map +1 -1
  195. package/dist/views/Dashboard/Default/ModularDashboard/index.scss +316 -0
  196. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +62 -89
  197. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  198. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js +40 -47
  199. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js.map +1 -1
  200. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +64 -65
  201. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
  202. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js +164 -147
  203. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js.map +1 -1
  204. package/dist/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.js +31 -30
  205. package/dist/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.js.map +1 -1
  206. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js +223 -229
  207. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js.map +1 -1
  208. package/dist/views/Dashboard/Default/index.js +59 -45
  209. package/dist/views/Dashboard/Default/index.js.map +1 -1
  210. package/dist/views/Dashboard/index.js +46 -42
  211. package/dist/views/Dashboard/index.js.map +1 -1
  212. package/dist/views/Dashboard/metadata.js +10 -14
  213. package/dist/views/Dashboard/metadata.js.map +1 -1
  214. package/dist/views/Document/getCustomDocumentViewByKey.js +3 -2
  215. package/dist/views/Document/getCustomDocumentViewByKey.js.map +1 -1
  216. package/dist/views/Document/getCustomViewByRoute.js +27 -30
  217. package/dist/views/Document/getCustomViewByRoute.js.map +1 -1
  218. package/dist/views/Document/getDocPreferences.js +40 -41
  219. package/dist/views/Document/getDocPreferences.js.map +1 -1
  220. package/dist/views/Document/getDocumentData.js +44 -55
  221. package/dist/views/Document/getDocumentData.js.map +1 -1
  222. package/dist/views/Document/getDocumentPermissions.js +77 -80
  223. package/dist/views/Document/getDocumentPermissions.js.map +1 -1
  224. package/dist/views/Document/getDocumentView.js +313 -283
  225. package/dist/views/Document/getDocumentView.js.map +1 -1
  226. package/dist/views/Document/getIsLocked.js +66 -66
  227. package/dist/views/Document/getIsLocked.js.map +1 -1
  228. package/dist/views/Document/getMetaBySegment.js +130 -136
  229. package/dist/views/Document/getMetaBySegment.js.map +1 -1
  230. package/dist/views/Document/getVersions.js +205 -195
  231. package/dist/views/Document/getVersions.js.map +1 -1
  232. package/dist/views/Document/handleServerFunction.js +103 -128
  233. package/dist/views/Document/handleServerFunction.js.map +1 -1
  234. package/dist/views/Document/index.js +316 -355
  235. package/dist/views/Document/index.js.map +1 -1
  236. package/dist/views/Document/metadata.js +2 -1
  237. package/dist/views/Document/metadata.js.map +1 -1
  238. package/dist/views/Document/renderDocumentSlots.js +121 -132
  239. package/dist/views/Document/renderDocumentSlots.js.map +1 -1
  240. package/dist/views/Edit/index.js +10 -6
  241. package/dist/views/Edit/index.js.map +1 -1
  242. package/dist/views/Edit/metadata.js +36 -46
  243. package/dist/views/Edit/metadata.js.map +1 -1
  244. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +130 -164
  245. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  246. package/dist/views/ForgotPassword/index.js +79 -62
  247. package/dist/views/ForgotPassword/index.js.map +1 -1
  248. package/dist/views/ForgotPassword/metadata.js +8 -12
  249. package/dist/views/ForgotPassword/metadata.js.map +1 -1
  250. package/dist/views/List/createSerializableValue.js +12 -11
  251. package/dist/views/List/createSerializableValue.js.map +1 -1
  252. package/dist/views/List/enrichDocsWithVersionStatus.js +86 -86
  253. package/dist/views/List/enrichDocsWithVersionStatus.js.map +1 -1
  254. package/dist/views/List/extractRelationshipDisplayValue.js +15 -14
  255. package/dist/views/List/extractRelationshipDisplayValue.js.map +1 -1
  256. package/dist/views/List/extractValueOrRelationshipID.js +16 -15
  257. package/dist/views/List/extractValueOrRelationshipID.js.map +1 -1
  258. package/dist/views/List/handleGroupBy.js +133 -150
  259. package/dist/views/List/handleGroupBy.js.map +1 -1
  260. package/dist/views/List/handleServerFunction.js +98 -121
  261. package/dist/views/List/handleServerFunction.js.map +1 -1
  262. package/dist/views/List/index.js +305 -323
  263. package/dist/views/List/index.js.map +1 -1
  264. package/dist/views/List/metadata.js +17 -20
  265. package/dist/views/List/metadata.js.map +1 -1
  266. package/dist/views/List/renderListViewSlots.js +82 -75
  267. package/dist/views/List/renderListViewSlots.js.map +1 -1
  268. package/dist/views/List/resolveAllFilterOptions.js +43 -45
  269. package/dist/views/List/resolveAllFilterOptions.js.map +1 -1
  270. package/dist/views/List/transformColumnsToSelect.js +9 -8
  271. package/dist/views/List/transformColumnsToSelect.js.map +1 -1
  272. package/dist/views/Login/LoginField/index.js +57 -89
  273. package/dist/views/Login/LoginField/index.js.map +1 -1
  274. package/dist/views/Login/LoginForm/index.js +107 -160
  275. package/dist/views/Login/LoginForm/index.js.map +1 -1
  276. package/dist/views/Login/LoginForm/index.scss +10 -0
  277. package/dist/views/Login/index.js +82 -85
  278. package/dist/views/Login/index.js.map +1 -1
  279. package/dist/views/Login/index.scss +10 -0
  280. package/dist/views/Login/metadata.js +8 -12
  281. package/dist/views/Login/metadata.js.map +1 -1
  282. package/dist/views/Logout/LogoutClient.js +84 -120
  283. package/dist/views/Logout/LogoutClient.js.map +1 -1
  284. package/dist/views/Logout/index.js +29 -29
  285. package/dist/views/Logout/index.js.map +1 -1
  286. package/dist/views/Logout/index.scss +25 -0
  287. package/dist/views/Logout/metadata.js +7 -11
  288. package/dist/views/Logout/metadata.js.map +1 -1
  289. package/dist/views/NotFound/index.client.js +71 -82
  290. package/dist/views/NotFound/index.client.js.map +1 -1
  291. package/dist/views/NotFound/index.js +72 -73
  292. package/dist/views/NotFound/index.js.map +1 -1
  293. package/dist/views/NotFound/index.scss +57 -0
  294. package/dist/views/NotFound/metadata.js +7 -9
  295. package/dist/views/NotFound/metadata.js.map +1 -1
  296. package/dist/views/ResetPassword/ResetPasswordForm/index.js +97 -108
  297. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -1
  298. package/dist/views/ResetPassword/index.js +93 -73
  299. package/dist/views/ResetPassword/index.js.map +1 -1
  300. package/dist/views/ResetPassword/index.scss +11 -0
  301. package/dist/views/ResetPassword/metadata.js +8 -12
  302. package/dist/views/ResetPassword/metadata.js.map +1 -1
  303. package/dist/views/Root/attachViewActions.js +18 -23
  304. package/dist/views/Root/attachViewActions.js.map +1 -1
  305. package/dist/views/Root/generateCustomViewMetadata.js +19 -21
  306. package/dist/views/Root/generateCustomViewMetadata.js.map +1 -1
  307. package/dist/views/Root/getCustomViewByKey.js +12 -14
  308. package/dist/views/Root/getCustomViewByKey.js.map +1 -1
  309. package/dist/views/Root/getCustomViewByRoute.js +31 -42
  310. package/dist/views/Root/getCustomViewByRoute.js.map +1 -1
  311. package/dist/views/Root/getDocumentViewInfo.js +24 -23
  312. package/dist/views/Root/getDocumentViewInfo.js.map +1 -1
  313. package/dist/views/Root/getRouteData.js +333 -325
  314. package/dist/views/Root/getRouteData.js.map +1 -1
  315. package/dist/views/Root/index.js +248 -270
  316. package/dist/views/Root/index.js.map +1 -1
  317. package/dist/views/Root/isPathMatchingRoute.js +21 -26
  318. package/dist/views/Root/isPathMatchingRoute.js.map +1 -1
  319. package/dist/views/Root/metadata.js +176 -181
  320. package/dist/views/Root/metadata.js.map +1 -1
  321. package/dist/views/Unauthorized/index.js +54 -46
  322. package/dist/views/Unauthorized/index.js.map +1 -1
  323. package/dist/views/Unauthorized/index.scss +14 -0
  324. package/dist/views/Unauthorized/metadata.js +8 -12
  325. package/dist/views/Unauthorized/metadata.js.map +1 -1
  326. package/dist/views/Verify/index.client.js +25 -43
  327. package/dist/views/Verify/index.client.js.map +1 -1
  328. package/dist/views/Verify/index.js +69 -64
  329. package/dist/views/Verify/index.js.map +1 -1
  330. package/dist/views/Verify/index.scss +16 -0
  331. package/dist/views/Verify/metadata.js +8 -12
  332. package/dist/views/Verify/metadata.js.map +1 -1
  333. package/dist/views/Version/Default/SelectedLocalesContext.js +4 -4
  334. package/dist/views/Version/Default/SelectedLocalesContext.js.map +1 -1
  335. package/dist/views/Version/Default/SetStepNav.js +86 -127
  336. package/dist/views/Version/Default/SetStepNav.js.map +1 -1
  337. package/dist/views/Version/Default/index.js +380 -236
  338. package/dist/views/Version/Default/index.js.map +1 -1
  339. package/dist/views/Version/Default/index.scss +170 -0
  340. package/dist/views/Version/Default/types.js +2 -1
  341. package/dist/views/Version/Default/types.js.map +1 -1
  342. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js +102 -119
  343. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
  344. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.scss +81 -0
  345. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js +78 -73
  346. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -1
  347. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +363 -408
  348. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  349. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +40 -51
  350. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
  351. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +35 -67
  352. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -1
  353. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.scss +12 -0
  354. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +59 -56
  355. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
  356. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.scss +9 -0
  357. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +139 -117
  358. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  359. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.scss +59 -0
  360. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js +36 -41
  361. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js.map +1 -1
  362. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +192 -178
  363. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  364. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.scss +91 -0
  365. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js +17 -11
  366. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js.map +1 -1
  367. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +48 -73
  368. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  369. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.scss +4 -0
  370. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +132 -143
  371. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  372. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.scss +9 -0
  373. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +56 -81
  374. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  375. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.scss +4 -0
  376. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js +252 -210
  377. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js.map +1 -1
  378. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.scss +121 -0
  379. package/dist/views/Version/RenderFieldsToDiff/fields/index.js +23 -22
  380. package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
  381. package/dist/views/Version/RenderFieldsToDiff/index.js +12 -9
  382. package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
  383. package/dist/views/Version/RenderFieldsToDiff/index.scss +24 -0
  384. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js +213 -228
  385. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js.map +1 -1
  386. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js +1005 -826
  387. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js.map +1 -1
  388. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js +2 -1
  389. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js.map +1 -1
  390. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js +44 -43
  391. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js.map +1 -1
  392. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.js +25 -22
  393. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.js.map +1 -1
  394. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js +32 -36
  395. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js.map +1 -1
  396. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js +145 -129
  397. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js.map +1 -1
  398. package/dist/views/Version/Restore/index.js +117 -93
  399. package/dist/views/Version/Restore/index.js.map +1 -1
  400. package/dist/views/Version/Restore/index.scss +84 -0
  401. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js +33 -50
  402. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -1
  403. package/dist/views/Version/SelectComparison/VersionDrawer/index.js +170 -226
  404. package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
  405. package/dist/views/Version/SelectComparison/VersionDrawer/index.scss +18 -0
  406. package/dist/views/Version/SelectComparison/index.js +73 -50
  407. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  408. package/dist/views/Version/SelectComparison/index.scss +9 -0
  409. package/dist/views/Version/SelectComparison/types.js +2 -1
  410. package/dist/views/Version/SelectComparison/types.js.map +1 -1
  411. package/dist/views/Version/SelectLocales/index.js +34 -32
  412. package/dist/views/Version/SelectLocales/index.js.map +1 -1
  413. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js +104 -95
  414. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js.map +1 -1
  415. package/dist/views/Version/VersionPillLabel/getVersionLabel.js +23 -27
  416. package/dist/views/Version/VersionPillLabel/getVersionLabel.js.map +1 -1
  417. package/dist/views/Version/VersionPillLabel/index.scss +26 -0
  418. package/dist/views/Version/fetchVersions.js +113 -138
  419. package/dist/views/Version/fetchVersions.js.map +1 -1
  420. package/dist/views/Version/index.js +325 -323
  421. package/dist/views/Version/index.js.map +1 -1
  422. package/dist/views/Version/metadata.js +43 -50
  423. package/dist/views/Version/metadata.js.map +1 -1
  424. package/dist/views/Versions/buildColumns.js +95 -79
  425. package/dist/views/Versions/buildColumns.js.map +1 -1
  426. package/dist/views/Versions/cells/AutosaveCell/index.js +34 -38
  427. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  428. package/dist/views/Versions/cells/AutosaveCell/index.scss +9 -0
  429. package/dist/views/Versions/cells/CreatedAt/index.js +32 -53
  430. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  431. package/dist/views/Versions/cells/ID/index.js +10 -8
  432. package/dist/views/Versions/cells/ID/index.js.map +1 -1
  433. package/dist/views/Versions/index.client.js +106 -83
  434. package/dist/views/Versions/index.client.js.map +1 -1
  435. package/dist/views/Versions/index.js +143 -143
  436. package/dist/views/Versions/index.js.map +1 -1
  437. package/dist/views/Versions/index.scss +110 -0
  438. package/dist/views/Versions/metadata.js +37 -44
  439. package/dist/views/Versions/metadata.js.map +1 -1
  440. package/dist/views/Versions/types.js +2 -1
  441. package/dist/views/Versions/types.js.map +1 -1
  442. package/dist/withPayload/withPayload.js +198 -143
  443. package/dist/withPayload/withPayload.js.map +1 -1
  444. package/dist/withPayload/withPayload.utils.js +92 -95
  445. package/dist/withPayload/withPayload.utils.js.map +1 -1
  446. package/dist/withPayload/withPayloadLegacy.js +42 -40
  447. package/dist/withPayload/withPayloadLegacy.js.map +1 -1
  448. package/package.json +7 -7
@@ -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","collections","read","Error","columnsFromQuery","columns","queryByGroup","JSON","parse","collectionPreferences","key","value","groupBy","limit","Number","undefined","preset","sort","page","admin","pagination","defaultLimit","defaultSort","routes","adminRoute","includes","baseFilterConstraint","baseFilter","baseListFilter","queryPreset","queryPresetPermissions","whereWithMergedSearch","search","where","and","deletedAt","exists","findByID","id","collection","depth","overrideAccess","find","c","data","then","docPermissions","err","logger","error","Table","columnState","docs","hasNextPage","hasPrevPage","nextPage","pagingCounter","prevPage","totalDocs","totalPages","clientCollectionConfig","select","enableListViewSelectAPI","fieldPermissions","fields","draft","fallbackLocale","includeLockStatus","orderableFieldName","orderable","useAsTitle","name","msg","renderedFilters","importMap","resolvedFilterOptions","staticDescription","description","t","newDocumentURL","path","hasCreatePermission","create","hasDeletePermission","delete","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\n if (!permissions?.collections?.[collectionSlug]?.read) {\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 query.preset = collectionPreferences?.preset\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 query.groupBy = collectionPreferences?.groupBy\n\n query.columns = transformColumnsToSearchParams(collectionPreferences?.columns || [])\n\n const {\n routes: { admin: adminRoute },\n } = config\n\n if (collectionConfig) {\n if (!visibleEntities.collections.includes(collectionSlug) && !overrideEntityVisibility) {\n throw new Error('not-found')\n }\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 queryPreset: QueryPreset | undefined\n let queryPresetPermissions: SanitizedCollectionPermission | undefined\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 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 = await getDocumentPermissions({\n id: queryPreset.id,\n collectionConfig: config.collections.find((c) => c.slug === 'payload-query-presets'),\n data: queryPreset,\n req,\n })?.then(({ docPermissions }) => docPermissions)\n }\n } catch (err) {\n req.payload.logger.error(`Error fetching query preset or preset permissions: ${err}`)\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: collectionPreferences?.columns,\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 const hasDeletePermission = permissions?.collections?.[collectionSlug]?.delete\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 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 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\n throw new Error('not-found')\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 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,"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\n if (!permissions?.collections?.[collectionSlug]?.read) {\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 query.preset = collectionPreferences?.preset\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 query.groupBy = collectionPreferences?.groupBy\n\n query.columns = transformColumnsToSearchParams(collectionPreferences?.columns || [])\n\n const {\n routes: { admin: adminRoute },\n } = config\n\n if (collectionConfig) {\n if (!visibleEntities.collections.includes(collectionSlug) && !overrideEntityVisibility) {\n throw new Error('not-found')\n }\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 queryPreset: QueryPreset | undefined\n let queryPresetPermissions: SanitizedCollectionPermission | undefined\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 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 = await getDocumentPermissions({\n id: queryPreset.id,\n collectionConfig: config.collections.find((c) => c.slug === 'payload-query-presets'),\n data: queryPreset,\n req,\n })?.then(({ docPermissions }) => docPermissions)\n }\n } catch (err) {\n req.payload.logger.error(`Error fetching query preset or preset permissions: ${err}`)\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: collectionPreferences?.columns,\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 const hasDeletePermission = permissions?.collections?.[collectionSlug]?.delete\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 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 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\n throw new Error('not-found')\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 if (error.message === 'not-found') {\n notFound()\n } else {\n console.error(error) // eslint-disable-line no-console\n }\n }\n}\n"],"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","collections","read","Error","columnsFromQuery","columns","queryByGroup","JSON","parse","collectionPreferences","key","value","groupBy","limit","Number","undefined","preset","sort","page","admin","pagination","defaultLimit","defaultSort","routes","adminRoute","includes","baseFilterConstraint","baseFilter","baseListFilter","queryPreset","queryPresetPermissions","whereWithMergedSearch","search","where","and","deletedAt","exists","findByID","id","collection","depth","overrideAccess","find","c","data","then","docPermissions","err","logger","error","Table","columnState","docs","hasNextPage","hasPrevPage","nextPage","pagingCounter","prevPage","totalDocs","totalPages","clientCollectionConfig","select","enableListViewSelectAPI","fieldPermissions","fields","draft","fallbackLocale","includeLockStatus","orderableFieldName","orderable","useAsTitle","name","msg","renderedFilters","importMap","resolvedFilterOptions","staticDescription","description","t","newDocumentURL","path","hasCreatePermission","create","hasDeletePermission","delete","notFoundDocId","serverProps","listPreferences","listSearchableFields","listViewSlots","clientProps","isInDrawer","Boolean","stringify","List","modifySearchParams","Component","components","views","list","Fallback","ListView","RenderedList","message","console"],"mappings":"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"}
@@ -1,24 +1,21 @@
1
1
  import { getTranslation } from '@payloadcms/translations';
2
2
  import { generateMetadata } from '../../utilities/meta.js';
3
- export const generateListViewMetadata = async args => {
4
- const {
5
- collectionConfig,
6
- config,
7
- i18n
8
- } = args;
9
- let title = '';
10
- const description = '';
11
- const keywords = '';
12
- if (collectionConfig) {
13
- title = getTranslation(collectionConfig.labels.plural, i18n);
14
- }
15
- return generateMetadata({
16
- ...(config.admin.meta || {}),
17
- description,
18
- keywords,
19
- serverURL: config.serverURL,
20
- title,
21
- ...(collectionConfig?.admin?.meta || {})
22
- });
3
+ export const generateListViewMetadata = async (args)=>{
4
+ const { collectionConfig, config, i18n } = args;
5
+ let title = '';
6
+ const description = '';
7
+ const keywords = '';
8
+ if (collectionConfig) {
9
+ title = getTranslation(collectionConfig.labels.plural, i18n);
10
+ }
11
+ return generateMetadata({
12
+ ...config.admin.meta || {},
13
+ description,
14
+ keywords,
15
+ serverURL: config.serverURL,
16
+ title,
17
+ ...collectionConfig?.admin?.meta || {}
18
+ });
23
19
  };
20
+
24
21
  //# sourceMappingURL=metadata.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"metadata.js","names":["getTranslation","generateMetadata","generateListViewMetadata","args","collectionConfig","config","i18n","title","description","keywords","labels","plural","admin","meta","serverURL"],"sources":["../../../src/views/List/metadata.ts"],"sourcesContent":["import type { Metadata } from 'next'\nimport type { SanitizedCollectionConfig } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\n\nimport type { GenerateViewMetadata } from '../Root/index.js'\n\nimport { generateMetadata } from '../../utilities/meta.js'\n\nexport const generateListViewMetadata = async (\n args: {\n collectionConfig: SanitizedCollectionConfig\n } & Parameters<GenerateViewMetadata>[0],\n): Promise<Metadata> => {\n const { collectionConfig, config, i18n } = args\n\n let title: string = ''\n const description: string = ''\n const keywords: string = ''\n\n if (collectionConfig) {\n title = getTranslation(collectionConfig.labels.plural, i18n)\n }\n\n return generateMetadata({\n ...(config.admin.meta || {}),\n description,\n keywords,\n serverURL: config.serverURL,\n title,\n ...(collectionConfig?.admin?.meta || {}),\n })\n}\n"],"mappings":"AAGA,SAASA,cAAc,QAAQ;AAI/B,SAASC,gBAAgB,QAAQ;AAEjC,OAAO,MAAMC,wBAAA,GAA2B,MACtCC,IAAA;EAIA,MAAM;IAAEC,gBAAgB;IAAEC,MAAM;IAAEC;EAAI,CAAE,GAAGH,IAAA;EAE3C,IAAII,KAAA,GAAgB;EACpB,MAAMC,WAAA,GAAsB;EAC5B,MAAMC,QAAA,GAAmB;EAEzB,IAAIL,gBAAA,EAAkB;IACpBG,KAAA,GAAQP,cAAA,CAAeI,gBAAA,CAAiBM,MAAM,CAACC,MAAM,EAAEL,IAAA;EACzD;EAEA,OAAOL,gBAAA,CAAiB;IACtB,IAAII,MAAA,CAAOO,KAAK,CAACC,IAAI,IAAI,CAAC,CAAC;IAC3BL,WAAA;IACAC,QAAA;IACAK,SAAA,EAAWT,MAAA,CAAOS,SAAS;IAC3BP,KAAA;IACA,IAAIH,gBAAA,EAAkBQ,KAAA,EAAOC,IAAA,IAAQ,CAAC,CAAC;EACzC;AACF","ignoreList":[]}
1
+ {"version":3,"sources":["../../../src/views/List/metadata.ts"],"sourcesContent":["import type { Metadata } from 'next'\nimport type { SanitizedCollectionConfig } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\n\nimport type { GenerateViewMetadata } from '../Root/index.js'\n\nimport { generateMetadata } from '../../utilities/meta.js'\n\nexport const generateListViewMetadata = async (\n args: {\n collectionConfig: SanitizedCollectionConfig\n } & Parameters<GenerateViewMetadata>[0],\n): Promise<Metadata> => {\n const { collectionConfig, config, i18n } = args\n\n let title: string = ''\n const description: string = ''\n const keywords: string = ''\n\n if (collectionConfig) {\n title = getTranslation(collectionConfig.labels.plural, i18n)\n }\n\n return generateMetadata({\n ...(config.admin.meta || {}),\n description,\n keywords,\n serverURL: config.serverURL,\n title,\n ...(collectionConfig?.admin?.meta || {}),\n })\n}\n"],"names":["getTranslation","generateMetadata","generateListViewMetadata","args","collectionConfig","config","i18n","title","description","keywords","labels","plural","admin","meta","serverURL"],"mappings":"AAGA,SAASA,cAAc,QAAQ,2BAA0B;AAIzD,SAASC,gBAAgB,QAAQ,0BAAyB;AAE1D,OAAO,MAAMC,2BAA2B,OACtCC;IAIA,MAAM,EAAEC,gBAAgB,EAAEC,MAAM,EAAEC,IAAI,EAAE,GAAGH;IAE3C,IAAII,QAAgB;IACpB,MAAMC,cAAsB;IAC5B,MAAMC,WAAmB;IAEzB,IAAIL,kBAAkB;QACpBG,QAAQP,eAAeI,iBAAiBM,MAAM,CAACC,MAAM,EAAEL;IACzD;IAEA,OAAOL,iBAAiB;QACtB,GAAII,OAAOO,KAAK,CAACC,IAAI,IAAI,CAAC,CAAC;QAC3BL;QACAC;QACAK,WAAWT,OAAOS,SAAS;QAC3BP;QACA,GAAIH,kBAAkBQ,OAAOC,QAAQ,CAAC,CAAC;IACzC;AACF,EAAC"}
@@ -1,80 +1,87 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
2
2
  import { Banner } from '@payloadcms/ui/elements/Banner';
3
3
  import { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent';
4
4
  import React from 'react';
5
- export const renderListViewSlots = ({
6
- clientProps,
7
- collectionConfig,
8
- description,
9
- notFoundDocId,
10
- payload,
11
- serverProps
12
- }) => {
13
- const result = {};
14
- if (collectionConfig.admin.components?.afterList) {
15
- result.AfterList = RenderServerComponent({
16
- clientProps: clientProps,
17
- Component: collectionConfig.admin.components.afterList,
18
- importMap: payload.importMap,
19
- serverProps: serverProps
20
- });
21
- }
22
- const listMenuItems = collectionConfig.admin.components?.listMenuItems;
23
- if (Array.isArray(listMenuItems)) {
24
- result.listMenuItems = [RenderServerComponent({
25
- clientProps,
26
- Component: listMenuItems,
27
- importMap: payload.importMap,
28
- serverProps
29
- })];
30
- }
31
- if (collectionConfig.admin.components?.afterListTable) {
32
- result.AfterListTable = RenderServerComponent({
33
- clientProps: clientProps,
34
- Component: collectionConfig.admin.components.afterListTable,
35
- importMap: payload.importMap,
36
- serverProps: serverProps
37
- });
38
- }
39
- if (collectionConfig.admin.components?.beforeList) {
40
- result.BeforeList = RenderServerComponent({
41
- clientProps: clientProps,
42
- Component: collectionConfig.admin.components.beforeList,
43
- importMap: payload.importMap,
44
- serverProps: serverProps
45
- });
46
- }
47
- // Handle beforeListTable with optional banner
48
- const existingBeforeListTable = collectionConfig.admin.components?.beforeListTable ? RenderServerComponent({
49
- clientProps: clientProps,
50
- Component: collectionConfig.admin.components.beforeListTable,
51
- importMap: payload.importMap,
52
- serverProps: serverProps
53
- }) : null;
54
- // Create banner for document not found
55
- const notFoundBanner = notFoundDocId ? /*#__PURE__*/_jsx(Banner, {
56
- type: "error",
57
- children: serverProps.i18n.t('error:documentNotFound', {
58
- id: notFoundDocId
59
- })
60
- }) : null;
61
- // Combine banner and existing component
62
- if (notFoundBanner || existingBeforeListTable) {
63
- result.BeforeListTable = /*#__PURE__*/_jsxs(React.Fragment, {
64
- children: [notFoundBanner, existingBeforeListTable]
65
- });
66
- }
67
- if (collectionConfig.admin.components?.Description) {
68
- result.Description = RenderServerComponent({
69
- clientProps: {
70
- collectionSlug: collectionConfig.slug,
71
- description
72
- },
73
- Component: collectionConfig.admin.components.Description,
74
- importMap: payload.importMap,
75
- serverProps: serverProps
76
- });
77
- }
78
- return result;
5
+ export const renderListViewSlots = ({ clientProps, collectionConfig, description, notFoundDocId, payload, serverProps })=>{
6
+ const result = {};
7
+ if (collectionConfig.admin.components?.afterList) {
8
+ result.AfterList = RenderServerComponent({
9
+ clientProps: clientProps,
10
+ Component: collectionConfig.admin.components.afterList,
11
+ importMap: payload.importMap,
12
+ serverProps: serverProps
13
+ });
14
+ }
15
+ const listMenuItems = collectionConfig.admin.components?.listMenuItems;
16
+ if (Array.isArray(listMenuItems)) {
17
+ result.listMenuItems = [
18
+ RenderServerComponent({
19
+ clientProps,
20
+ Component: listMenuItems,
21
+ importMap: payload.importMap,
22
+ serverProps
23
+ })
24
+ ];
25
+ }
26
+ if (collectionConfig.admin.components?.afterListTable) {
27
+ result.AfterListTable = RenderServerComponent({
28
+ clientProps: clientProps,
29
+ Component: collectionConfig.admin.components.afterListTable,
30
+ importMap: payload.importMap,
31
+ serverProps: serverProps
32
+ });
33
+ }
34
+ if (collectionConfig.admin.components?.beforeList) {
35
+ result.BeforeList = RenderServerComponent({
36
+ clientProps: clientProps,
37
+ Component: collectionConfig.admin.components.beforeList,
38
+ importMap: payload.importMap,
39
+ serverProps: serverProps
40
+ });
41
+ }
42
+ // Handle beforeListTable with optional banner
43
+ const existingBeforeListTable = collectionConfig.admin.components?.beforeListTable ? RenderServerComponent({
44
+ clientProps: clientProps,
45
+ Component: collectionConfig.admin.components.beforeListTable,
46
+ importMap: payload.importMap,
47
+ serverProps: serverProps
48
+ }) : null;
49
+ // Create banner for document not found
50
+ const notFoundBanner = notFoundDocId ? /*#__PURE__*/ _jsxDEV(Banner, {
51
+ type: "error",
52
+ children: serverProps.i18n.t('error:documentNotFound', {
53
+ id: notFoundDocId
54
+ })
55
+ }, void 0, false, {
56
+ fileName: "src/views/List/renderListViewSlots.tsx",
57
+ lineNumber: 94,
58
+ columnNumber: 5
59
+ }, this) : null;
60
+ // Combine banner and existing component
61
+ if (notFoundBanner || existingBeforeListTable) {
62
+ result.BeforeListTable = /*#__PURE__*/ _jsxDEV(React.Fragment, {
63
+ children: [
64
+ notFoundBanner,
65
+ existingBeforeListTable
66
+ ]
67
+ }, void 0, true, {
68
+ fileName: "src/views/List/renderListViewSlots.tsx",
69
+ lineNumber: 102,
70
+ columnNumber: 7
71
+ }, this);
72
+ }
73
+ if (collectionConfig.admin.components?.Description) {
74
+ result.Description = RenderServerComponent({
75
+ clientProps: {
76
+ collectionSlug: collectionConfig.slug,
77
+ description
78
+ },
79
+ Component: collectionConfig.admin.components.Description,
80
+ importMap: payload.importMap,
81
+ serverProps: serverProps
82
+ });
83
+ }
84
+ return result;
79
85
  };
86
+
80
87
  //# sourceMappingURL=renderListViewSlots.js.map
@@ -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":";AAkBA,SAASA,MAAM,QAAQ;AACvB,SAASC,qBAAqB,QAAQ;AACtC,OAAOC,KAAA,MAAW;AAWlB,OAAO,MAAMC,mBAAA,GAAsBA,CAAC;EAClCC,WAAW;EACXC,gBAAgB;EAChBC,WAAW;EACXC,aAAa;EACbC,OAAO;EACPC;AAAW,CACN;EACL,MAAMC,MAAA,GAAwB,CAAC;EAE/B,IAAIL,gBAAA,CAAiBM,KAAK,CAACC,UAAU,EAAEC,SAAA,EAAW;IAChDH,MAAA,CAAOI,SAAS,GAAGb,qBAAA,CAAsB;MACvCG,WAAA,EAAaA,WAAA;MACbW,SAAA,EAAWV,gBAAA,CAAiBM,KAAK,CAACC,UAAU,CAACC,SAAS;MACtDG,SAAA,EAAWR,OAAA,CAAQQ,SAAS;MAC5BP,WAAA,EAAaA;IACf;EACF;EAEA,MAAMQ,aAAA,GAAgBZ,gBAAA,CAAiBM,KAAK,CAACC,UAAU,EAAEK,aAAA;EAEzD,IAAIC,KAAA,CAAMC,OAAO,CAACF,aAAA,GAAgB;IAChCP,MAAA,CAAOO,aAAa,GAAG,CACrBhB,qBAAA,CAAsB;MACpBG,WAAA;MACAW,SAAA,EAAWE,aAAA;MACXD,SAAA,EAAWR,OAAA,CAAQQ,SAAS;MAC5BP;IACF,GACD;EACH;EAEA,IAAIJ,gBAAA,CAAiBM,KAAK,CAACC,UAAU,EAAEQ,cAAA,EAAgB;IACrDV,MAAA,CAAOW,cAAc,GAAGpB,qBAAA,CAAsB;MAC5CG,WAAA,EAAaA,WAAA;MACbW,SAAA,EAAWV,gBAAA,CAAiBM,KAAK,CAACC,UAAU,CAACQ,cAAc;MAC3DJ,SAAA,EAAWR,OAAA,CAAQQ,SAAS;MAC5BP,WAAA,EAAaA;IACf;EACF;EAEA,IAAIJ,gBAAA,CAAiBM,KAAK,CAACC,UAAU,EAAEU,UAAA,EAAY;IACjDZ,MAAA,CAAOa,UAAU,GAAGtB,qBAAA,CAAsB;MACxCG,WAAA,EAAaA,WAAA;MACbW,SAAA,EAAWV,gBAAA,CAAiBM,KAAK,CAACC,UAAU,CAACU,UAAU;MACvDN,SAAA,EAAWR,OAAA,CAAQQ,SAAS;MAC5BP,WAAA,EAAaA;IACf;EACF;EAEA;EACA,MAAMe,uBAAA,GAA0BnB,gBAAA,CAAiBM,KAAK,CAACC,UAAU,EAAEa,eAAA,GAC/DxB,qBAAA,CAAsB;IACpBG,WAAA,EAAaA,WAAA;IACbW,SAAA,EAAWV,gBAAA,CAAiBM,KAAK,CAACC,UAAU,CAACa,eAAe;IAC5DT,SAAA,EAAWR,OAAA,CAAQQ,SAAS;IAC5BP,WAAA,EAAaA;EACf,KACA;EAEJ;EACA,MAAMiB,cAAA,GAAiBnB,aAAA,gBACrBoB,IAAA,CAAC3B,MAAA;IAAO4B,IAAA,EAAK;cACVnB,WAAA,CAAYoB,IAAI,CAACC,CAAC,CAAC,0BAA0B;MAAEC,EAAA,EAAIxB;IAAc;OAElE;EAEJ;EACA,IAAImB,cAAA,IAAkBF,uBAAA,EAAyB;IAC7Cd,MAAA,CAAOsB,eAAe,gBACpBC,KAAA,CAAC/B,KAAA,CAAMgC,QAAQ;iBACZR,cAAA,EACAF,uBAAA;;EAGP;EAEA,IAAInB,gBAAA,CAAiBM,KAAK,CAACC,UAAU,EAAEuB,WAAA,EAAa;IAClDzB,MAAA,CAAOyB,WAAW,GAAGlC,qBAAA,CAAsB;MACzCG,WAAA,EAAa;QACXgC,cAAA,EAAgB/B,gBAAA,CAAiBgC,IAAI;QACrC/B;MACF;MACAS,SAAA,EAAWV,gBAAA,CAAiBM,KAAK,CAACC,UAAU,CAACuB,WAAW;MACxDnB,SAAA,EAAWR,OAAA,CAAQQ,SAAS;MAC5BP,WAAA,EAAaA;IACf;EACF;EAEA,OAAOC,MAAA;AACT","ignoreList":[]}
1
+ {"version":3,"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"],"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","type","i18n","t","id","BeforeListTable","Fragment","Description","collectionSlug","slug"],"mappings":";AAkBA,SAASA,MAAM,QAAQ,iCAAgC;AACvD,SAASC,qBAAqB,QAAQ,gDAA+C;AACrF,OAAOC,WAAW,QAAO;AAWzB,OAAO,MAAMC,sBAAsB,CAAC,EAClCC,WAAW,EACXC,gBAAgB,EAChBC,WAAW,EACXC,aAAa,EACbC,OAAO,EACPC,WAAW,EACN;IACL,MAAMC,SAAwB,CAAC;IAE/B,IAAIL,iBAAiBM,KAAK,CAACC,UAAU,EAAEC,WAAW;QAChDH,OAAOI,SAAS,GAAGb,sBAAsB;YACvCG,aAAaA;YACbW,WAAWV,iBAAiBM,KAAK,CAACC,UAAU,CAACC,SAAS;YACtDG,WAAWR,QAAQQ,SAAS;YAC5BP,aAAaA;QACf;IACF;IAEA,MAAMQ,gBAAgBZ,iBAAiBM,KAAK,CAACC,UAAU,EAAEK;IAEzD,IAAIC,MAAMC,OAAO,CAACF,gBAAgB;QAChCP,OAAOO,aAAa,GAAG;YACrBhB,sBAAsB;gBACpBG;gBACAW,WAAWE;gBACXD,WAAWR,QAAQQ,SAAS;gBAC5BP;YACF;SACD;IACH;IAEA,IAAIJ,iBAAiBM,KAAK,CAACC,UAAU,EAAEQ,gBAAgB;QACrDV,OAAOW,cAAc,GAAGpB,sBAAsB;YAC5CG,aAAaA;YACbW,WAAWV,iBAAiBM,KAAK,CAACC,UAAU,CAACQ,cAAc;YAC3DJ,WAAWR,QAAQQ,SAAS;YAC5BP,aAAaA;QACf;IACF;IAEA,IAAIJ,iBAAiBM,KAAK,CAACC,UAAU,EAAEU,YAAY;QACjDZ,OAAOa,UAAU,GAAGtB,sBAAsB;YACxCG,aAAaA;YACbW,WAAWV,iBAAiBM,KAAK,CAACC,UAAU,CAACU,UAAU;YACvDN,WAAWR,QAAQQ,SAAS;YAC5BP,aAAaA;QACf;IACF;IAEA,8CAA8C;IAC9C,MAAMe,0BAA0BnB,iBAAiBM,KAAK,CAACC,UAAU,EAAEa,kBAC/DxB,sBAAsB;QACpBG,aAAaA;QACbW,WAAWV,iBAAiBM,KAAK,CAACC,UAAU,CAACa,eAAe;QAC5DT,WAAWR,QAAQQ,SAAS;QAC5BP,aAAaA;IACf,KACA;IAEJ,uCAAuC;IACvC,MAAMiB,iBAAiBnB,8BACrB,QAACP;QAAO2B,MAAK;kBACVlB,YAAYmB,IAAI,CAACC,CAAC,CAAC,0BAA0B;YAAEC,IAAIvB;QAAc;;;;;eAElE;IAEJ,wCAAwC;IACxC,IAAImB,kBAAkBF,yBAAyB;QAC7Cd,OAAOqB,eAAe,iBACpB,QAAC7B,MAAM8B,QAAQ;;gBACZN;gBACAF;;;;;;;IAGP;IAEA,IAAInB,iBAAiBM,KAAK,CAACC,UAAU,EAAEqB,aAAa;QAClDvB,OAAOuB,WAAW,GAAGhC,sBAAsB;YACzCG,aAAa;gBACX8B,gBAAgB7B,iBAAiB8B,IAAI;gBACrC7B;YACF;YACAS,WAAWV,iBAAiBM,KAAK,CAACC,UAAU,CAACqB,WAAW;YACxDjB,WAAWR,QAAQQ,SAAS;YAC5BP,aAAaA;QACf;IACF;IAEA,OAAOC;AACT,EAAC"}
@@ -1,49 +1,47 @@
1
1
  import { resolveFilterOptions } from '@payloadcms/ui/rsc';
2
2
  import { fieldAffectsData, fieldHasSubFields, fieldIsHiddenOrDisabled, tabHasName } from 'payload/shared';
3
- export const resolveAllFilterOptions = async ({
4
- fields,
5
- pathPrefix,
6
- req,
7
- result
8
- }) => {
9
- const resolvedFilterOptions = !result ? new Map() : result;
10
- await Promise.all(fields.map(async field => {
11
- if (fieldIsHiddenOrDisabled(field)) {
12
- return;
13
- }
14
- const fieldPath = fieldAffectsData(field) ? pathPrefix ? `${pathPrefix}.${field.name}` : field.name : pathPrefix;
15
- if ((field.type === 'relationship' || field.type === 'upload') && 'filterOptions' in field && field.filterOptions) {
16
- const options = await resolveFilterOptions(field.filterOptions, {
17
- id: undefined,
18
- blockData: undefined,
19
- data: {},
20
- relationTo: field.relationTo,
21
- req,
22
- siblingData: {},
23
- user: req.user
24
- });
25
- resolvedFilterOptions.set(fieldPath, options);
26
- }
27
- if (fieldHasSubFields(field)) {
28
- await resolveAllFilterOptions({
29
- fields: field.fields,
30
- pathPrefix: fieldPath,
31
- req,
32
- result: resolvedFilterOptions
33
- });
34
- }
35
- if (field.type === 'tabs') {
36
- await Promise.all(field.tabs.map(async tab => {
37
- const tabPath = tabHasName(tab) ? fieldPath ? `${fieldPath}.${tab.name}` : tab.name : fieldPath;
38
- await resolveAllFilterOptions({
39
- fields: tab.fields,
40
- pathPrefix: tabPath,
41
- req,
42
- result: resolvedFilterOptions
43
- });
44
- }));
45
- }
46
- }));
47
- return resolvedFilterOptions;
3
+ export const resolveAllFilterOptions = async ({ fields, pathPrefix, req, result })=>{
4
+ const resolvedFilterOptions = !result ? new Map() : result;
5
+ await Promise.all(fields.map(async (field)=>{
6
+ if (fieldIsHiddenOrDisabled(field)) {
7
+ return;
8
+ }
9
+ const fieldPath = fieldAffectsData(field) ? pathPrefix ? `${pathPrefix}.${field.name}` : field.name : pathPrefix;
10
+ if ((field.type === 'relationship' || field.type === 'upload') && 'filterOptions' in field && field.filterOptions) {
11
+ const options = await resolveFilterOptions(field.filterOptions, {
12
+ id: undefined,
13
+ blockData: undefined,
14
+ data: {},
15
+ // use empty object to prevent breaking queries when accessing properties of `data`
16
+ relationTo: field.relationTo,
17
+ req,
18
+ siblingData: {},
19
+ // use empty object to prevent breaking queries when accessing properties of `siblingData`
20
+ user: req.user
21
+ });
22
+ resolvedFilterOptions.set(fieldPath, options);
23
+ }
24
+ if (fieldHasSubFields(field)) {
25
+ await resolveAllFilterOptions({
26
+ fields: field.fields,
27
+ pathPrefix: fieldPath,
28
+ req,
29
+ result: resolvedFilterOptions
30
+ });
31
+ }
32
+ if (field.type === 'tabs') {
33
+ await Promise.all(field.tabs.map(async (tab)=>{
34
+ const tabPath = tabHasName(tab) ? fieldPath ? `${fieldPath}.${tab.name}` : tab.name : fieldPath;
35
+ await resolveAllFilterOptions({
36
+ fields: tab.fields,
37
+ pathPrefix: tabPath,
38
+ req,
39
+ result: resolvedFilterOptions
40
+ });
41
+ }));
42
+ }
43
+ }));
44
+ return resolvedFilterOptions;
48
45
  };
46
+
49
47
  //# sourceMappingURL=resolveAllFilterOptions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolveAllFilterOptions.js","names":["resolveFilterOptions","fieldAffectsData","fieldHasSubFields","fieldIsHiddenOrDisabled","tabHasName","resolveAllFilterOptions","fields","pathPrefix","req","result","resolvedFilterOptions","Map","Promise","all","map","field","fieldPath","name","type","filterOptions","options","id","undefined","blockData","data","relationTo","siblingData","user","set","tabs","tab","tabPath"],"sources":["../../../src/views/List/resolveAllFilterOptions.ts"],"sourcesContent":["import type { Field, PayloadRequest, ResolvedFilterOptions } from 'payload'\n\nimport { resolveFilterOptions } from '@payloadcms/ui/rsc'\nimport {\n fieldAffectsData,\n fieldHasSubFields,\n fieldIsHiddenOrDisabled,\n tabHasName,\n} from 'payload/shared'\n\nexport const resolveAllFilterOptions = async ({\n fields,\n pathPrefix,\n req,\n result,\n}: {\n fields: Field[]\n pathPrefix?: string\n req: PayloadRequest\n result?: Map<string, ResolvedFilterOptions>\n}): Promise<Map<string, ResolvedFilterOptions>> => {\n const resolvedFilterOptions = !result ? new Map<string, ResolvedFilterOptions>() : result\n\n await Promise.all(\n fields.map(async (field) => {\n if (fieldIsHiddenOrDisabled(field)) {\n return\n }\n\n const fieldPath = fieldAffectsData(field)\n ? pathPrefix\n ? `${pathPrefix}.${field.name}`\n : field.name\n : pathPrefix\n\n if (\n (field.type === 'relationship' || field.type === 'upload') &&\n 'filterOptions' in field &&\n field.filterOptions\n ) {\n const options = await resolveFilterOptions(field.filterOptions, {\n id: undefined,\n blockData: undefined,\n data: {}, // use empty object to prevent breaking queries when accessing properties of `data`\n relationTo: field.relationTo,\n req,\n siblingData: {}, // use empty object to prevent breaking queries when accessing properties of `siblingData`\n user: req.user,\n })\n\n resolvedFilterOptions.set(fieldPath, options)\n }\n\n if (fieldHasSubFields(field)) {\n await resolveAllFilterOptions({\n fields: field.fields,\n pathPrefix: fieldPath,\n req,\n result: resolvedFilterOptions,\n })\n }\n\n if (field.type === 'tabs') {\n await Promise.all(\n field.tabs.map(async (tab) => {\n const tabPath = tabHasName(tab)\n ? fieldPath\n ? `${fieldPath}.${tab.name}`\n : tab.name\n : fieldPath\n\n await resolveAllFilterOptions({\n fields: tab.fields,\n pathPrefix: tabPath,\n req,\n result: resolvedFilterOptions,\n })\n }),\n )\n }\n }),\n )\n\n return resolvedFilterOptions\n}\n"],"mappings":"AAEA,SAASA,oBAAoB,QAAQ;AACrC,SACEC,gBAAgB,EAChBC,iBAAiB,EACjBC,uBAAuB,EACvBC,UAAU,QACL;AAEP,OAAO,MAAMC,uBAAA,GAA0B,MAAAA,CAAO;EAC5CC,MAAM;EACNC,UAAU;EACVC,GAAG;EACHC;AAAM,CAMP;EACC,MAAMC,qBAAA,GAAwB,CAACD,MAAA,GAAS,IAAIE,GAAA,KAAuCF,MAAA;EAEnF,MAAMG,OAAA,CAAQC,GAAG,CACfP,MAAA,CAAOQ,GAAG,CAAC,MAAOC,KAAA;IAChB,IAAIZ,uBAAA,CAAwBY,KAAA,GAAQ;MAClC;IACF;IAEA,MAAMC,SAAA,GAAYf,gBAAA,CAAiBc,KAAA,IAC/BR,UAAA,GACE,GAAGA,UAAA,IAAcQ,KAAA,CAAME,IAAI,EAAE,GAC7BF,KAAA,CAAME,IAAI,GACZV,UAAA;IAEJ,IACE,CAACQ,KAAA,CAAMG,IAAI,KAAK,kBAAkBH,KAAA,CAAMG,IAAI,KAAK,QAAO,KACxD,mBAAmBH,KAAA,IACnBA,KAAA,CAAMI,aAAa,EACnB;MACA,MAAMC,OAAA,GAAU,MAAMpB,oBAAA,CAAqBe,KAAA,CAAMI,aAAa,EAAE;QAC9DE,EAAA,EAAIC,SAAA;QACJC,SAAA,EAAWD,SAAA;QACXE,IAAA,EAAM,CAAC;QACPC,UAAA,EAAYV,KAAA,CAAMU,UAAU;QAC5BjB,GAAA;QACAkB,WAAA,EAAa,CAAC;QACdC,IAAA,EAAMnB,GAAA,CAAImB;MACZ;MAEAjB,qBAAA,CAAsBkB,GAAG,CAACZ,SAAA,EAAWI,OAAA;IACvC;IAEA,IAAIlB,iBAAA,CAAkBa,KAAA,GAAQ;MAC5B,MAAMV,uBAAA,CAAwB;QAC5BC,MAAA,EAAQS,KAAA,CAAMT,MAAM;QACpBC,UAAA,EAAYS,SAAA;QACZR,GAAA;QACAC,MAAA,EAAQC;MACV;IACF;IAEA,IAAIK,KAAA,CAAMG,IAAI,KAAK,QAAQ;MACzB,MAAMN,OAAA,CAAQC,GAAG,CACfE,KAAA,CAAMc,IAAI,CAACf,GAAG,CAAC,MAAOgB,GAAA;QACpB,MAAMC,OAAA,GAAU3B,UAAA,CAAW0B,GAAA,IACvBd,SAAA,GACE,GAAGA,SAAA,IAAac,GAAA,CAAIb,IAAI,EAAE,GAC1Ba,GAAA,CAAIb,IAAI,GACVD,SAAA;QAEJ,MAAMX,uBAAA,CAAwB;UAC5BC,MAAA,EAAQwB,GAAA,CAAIxB,MAAM;UAClBC,UAAA,EAAYwB,OAAA;UACZvB,GAAA;UACAC,MAAA,EAAQC;QACV;MACF;IAEJ;EACF;EAGF,OAAOA,qBAAA;AACT","ignoreList":[]}
1
+ {"version":3,"sources":["../../../src/views/List/resolveAllFilterOptions.ts"],"sourcesContent":["import type { Field, PayloadRequest, ResolvedFilterOptions } from 'payload'\n\nimport { resolveFilterOptions } from '@payloadcms/ui/rsc'\nimport {\n fieldAffectsData,\n fieldHasSubFields,\n fieldIsHiddenOrDisabled,\n tabHasName,\n} from 'payload/shared'\n\nexport const resolveAllFilterOptions = async ({\n fields,\n pathPrefix,\n req,\n result,\n}: {\n fields: Field[]\n pathPrefix?: string\n req: PayloadRequest\n result?: Map<string, ResolvedFilterOptions>\n}): Promise<Map<string, ResolvedFilterOptions>> => {\n const resolvedFilterOptions = !result ? new Map<string, ResolvedFilterOptions>() : result\n\n await Promise.all(\n fields.map(async (field) => {\n if (fieldIsHiddenOrDisabled(field)) {\n return\n }\n\n const fieldPath = fieldAffectsData(field)\n ? pathPrefix\n ? `${pathPrefix}.${field.name}`\n : field.name\n : pathPrefix\n\n if (\n (field.type === 'relationship' || field.type === 'upload') &&\n 'filterOptions' in field &&\n field.filterOptions\n ) {\n const options = await resolveFilterOptions(field.filterOptions, {\n id: undefined,\n blockData: undefined,\n data: {}, // use empty object to prevent breaking queries when accessing properties of `data`\n relationTo: field.relationTo,\n req,\n siblingData: {}, // use empty object to prevent breaking queries when accessing properties of `siblingData`\n user: req.user,\n })\n\n resolvedFilterOptions.set(fieldPath, options)\n }\n\n if (fieldHasSubFields(field)) {\n await resolveAllFilterOptions({\n fields: field.fields,\n pathPrefix: fieldPath,\n req,\n result: resolvedFilterOptions,\n })\n }\n\n if (field.type === 'tabs') {\n await Promise.all(\n field.tabs.map(async (tab) => {\n const tabPath = tabHasName(tab)\n ? fieldPath\n ? `${fieldPath}.${tab.name}`\n : tab.name\n : fieldPath\n\n await resolveAllFilterOptions({\n fields: tab.fields,\n pathPrefix: tabPath,\n req,\n result: resolvedFilterOptions,\n })\n }),\n )\n }\n }),\n )\n\n return resolvedFilterOptions\n}\n"],"names":["resolveFilterOptions","fieldAffectsData","fieldHasSubFields","fieldIsHiddenOrDisabled","tabHasName","resolveAllFilterOptions","fields","pathPrefix","req","result","resolvedFilterOptions","Map","Promise","all","map","field","fieldPath","name","type","filterOptions","options","id","undefined","blockData","data","relationTo","siblingData","user","set","tabs","tab","tabPath"],"mappings":"AAEA,SAASA,oBAAoB,QAAQ,qBAAoB;AACzD,SACEC,gBAAgB,EAChBC,iBAAiB,EACjBC,uBAAuB,EACvBC,UAAU,QACL,iBAAgB;AAEvB,OAAO,MAAMC,0BAA0B,OAAO,EAC5CC,MAAM,EACNC,UAAU,EACVC,GAAG,EACHC,MAAM,EAMP;IACC,MAAMC,wBAAwB,CAACD,SAAS,IAAIE,QAAuCF;IAEnF,MAAMG,QAAQC,GAAG,CACfP,OAAOQ,GAAG,CAAC,OAAOC;QAChB,IAAIZ,wBAAwBY,QAAQ;YAClC;QACF;QAEA,MAAMC,YAAYf,iBAAiBc,SAC/BR,aACE,GAAGA,WAAW,CAAC,EAAEQ,MAAME,IAAI,EAAE,GAC7BF,MAAME,IAAI,GACZV;QAEJ,IACE,AAACQ,CAAAA,MAAMG,IAAI,KAAK,kBAAkBH,MAAMG,IAAI,KAAK,QAAO,KACxD,mBAAmBH,SACnBA,MAAMI,aAAa,EACnB;YACA,MAAMC,UAAU,MAAMpB,qBAAqBe,MAAMI,aAAa,EAAE;gBAC9DE,IAAIC;gBACJC,WAAWD;gBACXE,MAAM,CAAC;gBAAG,mFAAmF;gBAC7FC,YAAYV,MAAMU,UAAU;gBAC5BjB;gBACAkB,aAAa,CAAC;gBAAG,0FAA0F;gBAC3GC,MAAMnB,IAAImB,IAAI;YAChB;YAEAjB,sBAAsBkB,GAAG,CAACZ,WAAWI;QACvC;QAEA,IAAIlB,kBAAkBa,QAAQ;YAC5B,MAAMV,wBAAwB;gBAC5BC,QAAQS,MAAMT,MAAM;gBACpBC,YAAYS;gBACZR;gBACAC,QAAQC;YACV;QACF;QAEA,IAAIK,MAAMG,IAAI,KAAK,QAAQ;YACzB,MAAMN,QAAQC,GAAG,CACfE,MAAMc,IAAI,CAACf,GAAG,CAAC,OAAOgB;gBACpB,MAAMC,UAAU3B,WAAW0B,OACvBd,YACE,GAAGA,UAAU,CAAC,EAAEc,IAAIb,IAAI,EAAE,GAC1Ba,IAAIb,IAAI,GACVD;gBAEJ,MAAMX,wBAAwB;oBAC5BC,QAAQwB,IAAIxB,MAAM;oBAClBC,YAAYwB;oBACZvB;oBACAC,QAAQC;gBACV;YACF;QAEJ;IACF;IAGF,OAAOA;AACT,EAAC"}
@@ -1,11 +1,12 @@
1
1
  import { unflatten } from 'payload/shared';
2
- export const transformColumnsToSelect = columns => {
3
- const columnsSelect = columns.reduce((acc, column) => {
4
- if (column.active) {
5
- acc[column.accessor] = true;
6
- }
7
- return acc;
8
- }, {});
9
- return unflatten(columnsSelect);
2
+ export const transformColumnsToSelect = (columns)=>{
3
+ const columnsSelect = columns.reduce((acc, column)=>{
4
+ if (column.active) {
5
+ acc[column.accessor] = true;
6
+ }
7
+ return acc;
8
+ }, {});
9
+ return unflatten(columnsSelect);
10
10
  };
11
+
11
12
  //# sourceMappingURL=transformColumnsToSelect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transformColumnsToSelect.js","names":["unflatten","transformColumnsToSelect","columns","columnsSelect","reduce","acc","column","active","accessor"],"sources":["../../../src/views/List/transformColumnsToSelect.ts"],"sourcesContent":["import type { ColumnPreference, SelectType } from 'payload'\n\nimport { unflatten } from 'payload/shared'\n\nexport const transformColumnsToSelect = (columns: ColumnPreference[]): SelectType => {\n const columnsSelect = columns.reduce((acc, column) => {\n if (column.active) {\n acc[column.accessor] = true\n }\n return acc\n }, {} as SelectType)\n\n return unflatten(columnsSelect)\n}\n"],"mappings":"AAEA,SAASA,SAAS,QAAQ;AAE1B,OAAO,MAAMC,wBAAA,GAA4BC,OAAA;EACvC,MAAMC,aAAA,GAAgBD,OAAA,CAAQE,MAAM,CAAC,CAACC,GAAA,EAAKC,MAAA;IACzC,IAAIA,MAAA,CAAOC,MAAM,EAAE;MACjBF,GAAG,CAACC,MAAA,CAAOE,QAAQ,CAAC,GAAG;IACzB;IACA,OAAOH,GAAA;EACT,GAAG,CAAC;EAEJ,OAAOL,SAAA,CAAUG,aAAA;AACnB","ignoreList":[]}
1
+ {"version":3,"sources":["../../../src/views/List/transformColumnsToSelect.ts"],"sourcesContent":["import type { ColumnPreference, SelectType } from 'payload'\n\nimport { unflatten } from 'payload/shared'\n\nexport const transformColumnsToSelect = (columns: ColumnPreference[]): SelectType => {\n const columnsSelect = columns.reduce((acc, column) => {\n if (column.active) {\n acc[column.accessor] = true\n }\n return acc\n }, {} as SelectType)\n\n return unflatten(columnsSelect)\n}\n"],"names":["unflatten","transformColumnsToSelect","columns","columnsSelect","reduce","acc","column","active","accessor"],"mappings":"AAEA,SAASA,SAAS,QAAQ,iBAAgB;AAE1C,OAAO,MAAMC,2BAA2B,CAACC;IACvC,MAAMC,gBAAgBD,QAAQE,MAAM,CAAC,CAACC,KAAKC;QACzC,IAAIA,OAAOC,MAAM,EAAE;YACjBF,GAAG,CAACC,OAAOE,QAAQ,CAAC,GAAG;QACzB;QACA,OAAOH;IACT,GAAG,CAAC;IAEJ,OAAOL,UAAUG;AACnB,EAAC"}