@payloadcms/ui 4.0.0-canary.1 → 4.0.0-canary.3

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 (290) hide show
  1. package/dist/css/colors.css +3 -0
  2. package/dist/css/design-tokens.css +5 -0
  3. package/dist/css/elevations.css +4 -0
  4. package/dist/css/radius.css +1 -3
  5. package/dist/css/theme.css +4 -0
  6. package/dist/css/utilities.css +5 -0
  7. package/dist/elements/APIKeyInput/index.css +92 -0
  8. package/dist/elements/APIKeyInput/index.d.ts +14 -0
  9. package/dist/elements/APIKeyInput/index.d.ts.map +1 -0
  10. package/dist/elements/APIKeyInput/index.js +86 -0
  11. package/dist/elements/APIKeyInput/index.js.map +1 -0
  12. package/dist/elements/AppHeader/index.d.ts +3 -2
  13. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  14. package/dist/elements/AppHeader/index.js +2 -2
  15. package/dist/elements/AppHeader/index.js.map +1 -1
  16. package/dist/elements/BulkUpload/ActionsBar/index.css +10 -4
  17. package/dist/elements/BulkUpload/ActionsBar/index.d.ts.map +1 -1
  18. package/dist/elements/BulkUpload/ActionsBar/index.js +43 -40
  19. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  20. package/dist/elements/BulkUpload/AddFilesView/index.js +1 -1
  21. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  22. package/dist/elements/BulkUpload/AddingFilesView/index.css +25 -0
  23. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts +1 -1
  24. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts.map +1 -1
  25. package/dist/elements/BulkUpload/AddingFilesView/index.js +1 -1
  26. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  27. package/dist/elements/BulkUpload/EditForm/index.css +9 -0
  28. package/dist/elements/BulkUpload/EditForm/index.d.ts +1 -1
  29. package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -1
  30. package/dist/elements/BulkUpload/EditForm/index.js +1 -1
  31. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  32. package/dist/elements/BulkUpload/EditMany/DrawerContent.d.ts +1 -1
  33. package/dist/elements/BulkUpload/EditMany/DrawerContent.d.ts.map +1 -1
  34. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +59 -55
  35. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  36. package/dist/elements/BulkUpload/EditMany/index.css +71 -0
  37. package/dist/elements/BulkUpload/EditMany/index.d.ts +1 -1
  38. package/dist/elements/BulkUpload/EditMany/index.d.ts.map +1 -1
  39. package/dist/elements/BulkUpload/EditMany/index.js +1 -1
  40. package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
  41. package/dist/elements/BulkUpload/FileSidebar/index.css +54 -75
  42. package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -1
  43. package/dist/elements/BulkUpload/FileSidebar/index.js +60 -50
  44. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  45. package/dist/elements/ColumnSelector/index.js +1 -1
  46. package/dist/elements/ColumnSelector/index.js.map +1 -1
  47. package/dist/elements/DocumentControls/index.css +7 -1
  48. package/dist/elements/DocumentFields/index.css +1 -1
  49. package/dist/elements/Drawer/index.d.ts +25 -0
  50. package/dist/elements/Drawer/index.d.ts.map +1 -1
  51. package/dist/elements/Drawer/index.js +134 -62
  52. package/dist/elements/Drawer/index.js.map +1 -1
  53. package/dist/elements/FileDetails/DraggableFileDetails/index.css +32 -0
  54. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts +1 -1
  55. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts.map +1 -1
  56. package/dist/elements/FileDetails/DraggableFileDetails/index.js +19 -18
  57. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  58. package/dist/elements/Hierarchy/Field/SelectedHierarchies.css +36 -0
  59. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts +1 -1
  60. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts.map +1 -1
  61. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js +1 -1
  62. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js.map +1 -1
  63. package/dist/elements/Hierarchy/Field/index.client.d.ts +1 -1
  64. package/dist/elements/Hierarchy/Field/index.client.d.ts.map +1 -1
  65. package/dist/elements/Hierarchy/Field/index.client.js +5 -2
  66. package/dist/elements/Hierarchy/Field/index.client.js.map +1 -1
  67. package/dist/elements/Hierarchy/Field/index.css +37 -0
  68. package/dist/elements/Hierarchy/MoveMany/index.d.ts +0 -1
  69. package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -1
  70. package/dist/elements/Hierarchy/MoveMany/index.js +0 -1
  71. package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -1
  72. package/dist/elements/Hierarchy/Tree/LoadMore/index.css +27 -0
  73. package/dist/elements/Hierarchy/Tree/LoadMore/index.d.ts +1 -1
  74. package/dist/elements/Hierarchy/Tree/LoadMore/index.d.ts.map +1 -1
  75. package/dist/elements/Hierarchy/Tree/LoadMore/index.js +1 -1
  76. package/dist/elements/Hierarchy/Tree/LoadMore/index.js.map +1 -1
  77. package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts.map +1 -1
  78. package/dist/elements/Hierarchy/Tree/TreeFocusContext.js +36 -16
  79. package/dist/elements/Hierarchy/Tree/TreeFocusContext.js.map +1 -1
  80. package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts.map +1 -1
  81. package/dist/elements/Hierarchy/Tree/TreeNode/index.js +20 -15
  82. package/dist/elements/Hierarchy/Tree/TreeNode/index.js.map +1 -1
  83. package/dist/elements/LoadMoreRow/index.css +34 -0
  84. package/dist/elements/LoadMoreRow/index.d.ts +1 -1
  85. package/dist/elements/LoadMoreRow/index.d.ts.map +1 -1
  86. package/dist/elements/LoadMoreRow/index.js +4 -8
  87. package/dist/elements/LoadMoreRow/index.js.map +1 -1
  88. package/dist/elements/Popup/PopupButtonList/index.css +5 -0
  89. package/dist/elements/Popup/PopupGroupLabel/index.css +19 -4
  90. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.d.ts +13 -0
  91. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.d.ts.map +1 -0
  92. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.js +41 -0
  93. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.js.map +1 -0
  94. package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts +1 -0
  95. package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts.map +1 -1
  96. package/dist/elements/PublishButton/ScheduleDrawer/index.js +9 -31
  97. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  98. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  99. package/dist/elements/PublishButton/index.js +4 -5
  100. package/dist/elements/PublishButton/index.js.map +1 -1
  101. package/dist/elements/PublishMany/DrawerContent.d.ts +2 -1
  102. package/dist/elements/PublishMany/DrawerContent.d.ts.map +1 -1
  103. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  104. package/dist/elements/PublishMany/index.d.ts +2 -6
  105. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  106. package/dist/elements/PublishMany/index.js +0 -38
  107. package/dist/elements/PublishMany/index.js.map +1 -1
  108. package/dist/elements/ReactSelect/MultiValue/index.css +1 -1
  109. package/dist/elements/ReactSelect/getCaptureMenuScroll.d.ts +5 -0
  110. package/dist/elements/ReactSelect/getCaptureMenuScroll.d.ts.map +1 -0
  111. package/dist/elements/ReactSelect/getCaptureMenuScroll.js +10 -0
  112. package/dist/elements/ReactSelect/getCaptureMenuScroll.js.map +1 -0
  113. package/dist/elements/ReactSelect/getMenuListStyles.d.ts +6 -0
  114. package/dist/elements/ReactSelect/getMenuListStyles.d.ts.map +1 -0
  115. package/dist/elements/ReactSelect/getMenuListStyles.js +7 -0
  116. package/dist/elements/ReactSelect/getMenuListStyles.js.map +1 -0
  117. package/dist/elements/ReactSelect/index.css +0 -1
  118. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  119. package/dist/elements/ReactSelect/index.js +168 -140
  120. package/dist/elements/ReactSelect/index.js.map +1 -1
  121. package/dist/elements/ReactSelect/types.d.ts +1 -0
  122. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  123. package/dist/elements/ReactSelect/types.js.map +1 -1
  124. package/dist/elements/SchedulePublishButton/index.d.ts.map +1 -1
  125. package/dist/elements/SchedulePublishButton/index.js +6 -1
  126. package/dist/elements/SchedulePublishButton/index.js.map +1 -1
  127. package/dist/elements/SelectMany/index.js +1 -1
  128. package/dist/elements/SelectMany/index.js.map +1 -1
  129. package/dist/elements/Table/index.css +7 -5
  130. package/dist/elements/Tabs/index.css +100 -0
  131. package/dist/elements/Tabs/index.d.ts +32 -0
  132. package/dist/elements/Tabs/index.d.ts.map +1 -0
  133. package/dist/elements/Tabs/index.js +62 -0
  134. package/dist/elements/Tabs/index.js.map +1 -0
  135. package/dist/elements/TimezonePicker/index.css +0 -15
  136. package/dist/elements/Toasts/fieldErrors.d.ts +1 -0
  137. package/dist/elements/Toasts/fieldErrors.d.ts.map +1 -1
  138. package/dist/elements/Toasts/fieldErrors.js +25 -9
  139. package/dist/elements/Toasts/fieldErrors.js.map +1 -1
  140. package/dist/elements/Toasts/index.css +5 -0
  141. package/dist/elements/UnpublishButton/index.d.ts.map +1 -1
  142. package/dist/elements/UnpublishButton/index.js +5 -13
  143. package/dist/elements/UnpublishButton/index.js.map +1 -1
  144. package/dist/elements/UnpublishMany/DrawerContent.d.ts +2 -1
  145. package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +1 -1
  146. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  147. package/dist/elements/UnpublishMany/index.d.ts +2 -4
  148. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  149. package/dist/elements/UnpublishMany/index.js +0 -38
  150. package/dist/elements/UnpublishMany/index.js.map +1 -1
  151. package/dist/elements/UserMenu/LanguageMenu/index.js +1 -1
  152. package/dist/elements/UserMenu/LanguageMenu/index.js.map +1 -1
  153. package/dist/elements/UserMenu/SettingsMenu/index.d.ts +6 -2
  154. package/dist/elements/UserMenu/SettingsMenu/index.d.ts.map +1 -1
  155. package/dist/elements/UserMenu/SettingsMenu/index.js +15 -10
  156. package/dist/elements/UserMenu/SettingsMenu/index.js.map +1 -1
  157. package/dist/elements/UserMenu/ThemeMenu/index.js +1 -1
  158. package/dist/elements/UserMenu/ThemeMenu/index.js.map +1 -1
  159. package/dist/elements/UserMenu/index.d.ts +2 -1
  160. package/dist/elements/UserMenu/index.d.ts.map +1 -1
  161. package/dist/elements/UserMenu/index.js +8 -5
  162. package/dist/elements/UserMenu/index.js.map +1 -1
  163. package/dist/exports/client/index.d.ts +7 -0
  164. package/dist/exports/client/index.d.ts.map +1 -1
  165. package/dist/exports/client/index.js +26 -26
  166. package/dist/exports/client/index.js.map +4 -4
  167. package/dist/fields/RadioGroup/index.css +6 -0
  168. package/dist/fields/Tabs/Tab/index.d.ts +0 -1
  169. package/dist/fields/Tabs/Tab/index.d.ts.map +1 -1
  170. package/dist/fields/Tabs/Tab/index.js +12 -23
  171. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  172. package/dist/fields/Tabs/index.d.ts.map +1 -1
  173. package/dist/fields/Tabs/index.js +37 -37
  174. package/dist/fields/Tabs/index.js.map +1 -1
  175. package/dist/fields/Upload/HasMany/index.css +4 -0
  176. package/dist/forms/RenderFields/RenderField.d.ts +1 -1
  177. package/dist/icons/Check/index.css +1 -2
  178. package/dist/icons/Check/index.js +1 -1
  179. package/dist/icons/Check/index.js.map +1 -1
  180. package/dist/icons/Gear/index.d.ts.map +1 -1
  181. package/dist/icons/Gear/index.js +8 -1
  182. package/dist/icons/Gear/index.js.map +1 -1
  183. package/dist/icons/{Write → Key}/index.css +1 -1
  184. package/dist/icons/Key/index.d.ts +7 -0
  185. package/dist/icons/Key/index.d.ts.map +1 -0
  186. package/dist/icons/Key/index.js +24 -0
  187. package/dist/icons/Key/index.js.map +1 -0
  188. package/dist/icons/Schedule/index.d.ts.map +1 -1
  189. package/dist/icons/Schedule/index.js +38 -39
  190. package/dist/icons/Schedule/index.js.map +1 -1
  191. package/dist/icons/Warning/index.css +1 -7
  192. package/dist/icons/Warning/index.d.ts +1 -1
  193. package/dist/icons/Warning/index.d.ts.map +1 -1
  194. package/dist/icons/Warning/index.js +11 -16
  195. package/dist/icons/Warning/index.js.map +1 -1
  196. package/dist/icons/WarningTriangle/index.css +5 -0
  197. package/dist/icons/WarningTriangle/index.d.ts +6 -0
  198. package/dist/icons/WarningTriangle/index.d.ts.map +1 -0
  199. package/dist/icons/WarningTriangle/index.js +21 -0
  200. package/dist/icons/WarningTriangle/index.js.map +1 -0
  201. package/dist/icons/Write/index.d.ts +0 -1
  202. package/dist/icons/Write/index.d.ts.map +1 -1
  203. package/dist/icons/Write/index.js +1 -2
  204. package/dist/icons/Write/index.js.map +1 -1
  205. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  206. package/dist/providers/DocumentInfo/index.js +4 -0
  207. package/dist/providers/DocumentInfo/index.js.map +1 -1
  208. package/dist/providers/DocumentInfo/types.d.ts +4 -0
  209. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  210. package/dist/providers/DocumentInfo/types.js.map +1 -1
  211. package/dist/providers/Root/index.d.ts.map +1 -1
  212. package/dist/providers/Root/index.js +27 -24
  213. package/dist/providers/Root/index.js.map +1 -1
  214. package/dist/providers/TableColumns/RenderDefaultCell/index.css +1 -0
  215. package/dist/providers/ToastContainer/index.css +208 -0
  216. package/dist/providers/ToastContainer/index.d.ts +1 -0
  217. package/dist/providers/ToastContainer/index.d.ts.map +1 -1
  218. package/dist/providers/ToastContainer/index.js +19 -6
  219. package/dist/providers/ToastContainer/index.js.map +1 -1
  220. package/dist/scss/app.scss +1 -2
  221. package/dist/styles.css +1 -1
  222. package/dist/templates/Default/index.d.ts.map +1 -1
  223. package/dist/templates/Default/index.js +51 -9
  224. package/dist/templates/Default/index.js.map +1 -1
  225. package/dist/utilities/getHasScheduledPublish.d.ts +12 -0
  226. package/dist/utilities/getHasScheduledPublish.d.ts.map +1 -0
  227. package/dist/utilities/getHasScheduledPublish.js +38 -0
  228. package/dist/utilities/getHasScheduledPublish.js.map +1 -0
  229. package/dist/utilities/getVersions.d.ts.map +1 -1
  230. package/dist/utilities/getVersions.js +1 -21
  231. package/dist/utilities/getVersions.js.map +1 -1
  232. package/dist/views/Document/index.d.ts.map +1 -1
  233. package/dist/views/Document/index.js +10 -1
  234. package/dist/views/Document/index.js.map +1 -1
  235. package/dist/views/Edit/Auth/APIKey.d.ts.map +1 -1
  236. package/dist/views/Edit/Auth/APIKey.js +10 -32
  237. package/dist/views/Edit/Auth/APIKey.js.map +1 -1
  238. package/dist/views/Edit/Auth/index.css +0 -67
  239. package/dist/views/HierarchyList/DocumentListSelection/index.js +4 -4
  240. package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
  241. package/dist/views/List/ListSelection/index.js +4 -4
  242. package/dist/views/List/ListSelection/index.js.map +1 -1
  243. package/dist/views/List/handleGroupBy.d.ts.map +1 -1
  244. package/dist/views/List/handleGroupBy.js +9 -0
  245. package/dist/views/List/handleGroupBy.js.map +1 -1
  246. package/dist/views/List/index.client.d.ts.map +1 -1
  247. package/dist/views/List/index.client.js +3 -2
  248. package/dist/views/List/index.client.js.map +1 -1
  249. package/dist/views/List/index.css +1 -1
  250. package/dist/views/List/index.d.ts.map +1 -1
  251. package/dist/views/List/index.js +2 -1
  252. package/dist/views/List/index.js.map +1 -1
  253. package/dist/views/List/renderListViewSlots.d.ts.map +1 -1
  254. package/dist/views/List/renderListViewSlots.js +11 -0
  255. package/dist/views/List/renderListViewSlots.js.map +1 -1
  256. package/dist/views/Logout/LogoutClient.js +1 -1
  257. package/dist/views/Logout/LogoutClient.js.map +1 -1
  258. package/dist/views/Version/SelectComparison/VersionDrawer/index.css +5 -0
  259. package/dist/views/Version/SelectComparison/VersionDrawer/index.d.ts +1 -1
  260. package/dist/views/Version/SelectComparison/VersionDrawer/index.d.ts.map +1 -1
  261. package/dist/views/Version/SelectComparison/VersionDrawer/index.js +1 -2
  262. package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
  263. package/dist/views/Version/SelectComparison/index.css +5 -0
  264. package/dist/views/Version/SelectComparison/index.d.ts +1 -1
  265. package/dist/views/Version/SelectComparison/index.d.ts.map +1 -1
  266. package/dist/views/Version/SelectComparison/index.js +1 -1
  267. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  268. package/dist/views/Versions/index.css +2 -2
  269. package/dist/views/Versions/index.d.ts +1 -1
  270. package/dist/views/Versions/index.d.ts.map +1 -1
  271. package/dist/views/Versions/index.js +3 -26
  272. package/dist/views/Versions/index.js.map +1 -1
  273. package/package.json +5 -5
  274. package/dist/elements/BulkUpload/AddingFilesView/index.scss +0 -25
  275. package/dist/elements/BulkUpload/EditForm/index.scss +0 -11
  276. package/dist/elements/BulkUpload/EditMany/index.scss +0 -171
  277. package/dist/elements/FileDetails/DraggableFileDetails/index.scss +0 -35
  278. package/dist/elements/Hierarchy/Field/SelectedHierarchies.scss +0 -78
  279. package/dist/elements/Hierarchy/Field/index.scss +0 -41
  280. package/dist/elements/Hierarchy/MoveMany/index.scss +0 -7
  281. package/dist/elements/Hierarchy/Tree/LoadMore/index.scss +0 -26
  282. package/dist/elements/Hierarchy/Tree/TreeConnector.d.ts +0 -7
  283. package/dist/elements/Hierarchy/Tree/TreeConnector.d.ts.map +0 -1
  284. package/dist/elements/Hierarchy/Tree/TreeConnector.js +0 -23
  285. package/dist/elements/Hierarchy/Tree/TreeConnector.js.map +0 -1
  286. package/dist/elements/LoadMoreRow/index.scss +0 -45
  287. package/dist/fields/Tabs/Tab/index.css +0 -82
  288. package/dist/scss/toasts.scss +0 -146
  289. package/dist/views/Version/SelectComparison/VersionDrawer/index.scss +0 -18
  290. package/dist/views/Version/SelectComparison/index.scss +0 -9
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["appendDateTimezoneSelectFields","appendUploadSelectFields","combineWhereConstraints","formatAdminURL","isNumber","mergeListSearchAndWhere","transformColumnsToPreferences","transformColumnsToSearchParams","React","Fragment","RenderServerComponent","DefaultListView","HierarchyListView","HydrateAuthProvider","HydrateHierarchyProvider","ListQueryProvider","getColumns","getDocumentPermissions","renderFilters","renderTable","upsertPreferences","enrichDocsWithVersionStatus","handleGroupBy","handleHierarchy","renderListViewSlots","resolveAllFilterOptions","transformColumnsToSelect","renderListView","args","clientConfig","ComponentOverride","customCellProps","disableBulkDelete","disableBulkEdit","disableQueryPresets","drawerSlug","enableRowSelections","initPageResult","overrideEntityVisibility","params","query","queryFromArgs","searchParams","trash","viewType","collectionConfig","slug","collectionSlug","locale","fullLocale","permissions","req","i18n","payload","config","queryFromReq","user","visibleEntities","routes","admin","adminRoute","collections","read","includes","Error","columnsFromQuery","columns","queryByGroup","JSON","parse","collectionPreferences","key","value","groupBy","limit","Number","undefined","preset","sort","queryPreset","queryPresetPermissions","findByID","id","collection","depth","overrideAccess","data","docPermissions","err","logger","error","where","columnPreference","page","pagination","defaultLimit","defaultSort","baseFilterConstraint","baseFilter","baseListFilter","whereWithMergedSearch","search","and","deletedAt","exists","Table","columnState","docs","hasNextPage","hasPrevPage","nextPage","pagingCounter","prevPage","totalDocs","totalPages","clientCollectionConfig","find","c","select","fields","flattenedFields","orderable","_order","versions","drafts","_status","isHierarchyCollection","Boolean","hierarchy","hierarchyParentFieldName","parentFieldName","hierarchyParentId","parentParam","db","defaultIDType","hierarchyData","fieldPermissions","draft","fallbackLocale","includeLockStatus","orderableFieldName","useAsTitle","name","msg","HierarchyIcon","isHierarchyView","typeFilterParam","typeFilter","length","split","parentId","childrenData","hierarchyConfig","Component","components","Icon","importMap","renderedFilters","resolvedFilterOptions","staticDescription","description","t","newDocumentURL","path","hasCreatePermission","create","hasDeletePermission","hasTrashPermission","notFoundDocId","notFound","serverProps","listPreferences","listSearchableFields","server","listViewSlots","clientProps","isInDrawer","stringify","RenderedListViewComponent","views","list","Fallback","List","_jsxs","_jsx","allowedCollections","expandedNodes","breadcrumbs","slice","map","b","parent","tableData","treeLimit","typeFieldName","collectionSpecific","fieldName","modifySearchParams","ListView","RenderedList","message","console"],"sources":["../../../src/views/List/index.tsx"],"sourcesContent":["import type {\n AdminViewServerProps,\n CollectionPreferences,\n Column,\n ColumnPreference,\n HierarchyViewData,\n ListQuery,\n ListViewClientProps,\n ListViewServerPropsOnly,\n PaginatedDocs,\n PayloadComponent,\n QueryPreset,\n SanitizedCollectionPermission,\n} from 'payload'\n\nimport {\n appendDateTimezoneSelectFields,\n appendUploadSelectFields,\n combineWhereConstraints,\n formatAdminURL,\n isNumber,\n mergeListSearchAndWhere,\n transformColumnsToPreferences,\n transformColumnsToSearchParams,\n} from 'payload/shared'\nimport React, { Fragment } from 'react'\n\nimport { RenderServerComponent } from '../../elements/RenderServerComponent/index.js'\n/* eslint-disable payload/no-imports-from-exports-dir -- Server component must reference exports/client bundle for proper client boundary in prod builds */\nimport {\n DefaultListView,\n HierarchyListView,\n HydrateAuthProvider,\n HydrateHierarchyProvider,\n ListQueryProvider,\n} from '../../exports/client/index.js'\n/* eslint-enable payload/no-imports-from-exports-dir */\nimport { getColumns } from '../../utilities/getColumns.js'\nimport { getDocumentPermissions } from '../../utilities/getDocumentPermissions.js'\nimport { renderFilters, renderTable } from '../../utilities/renderTable.js'\nimport { upsertPreferences } from '../../utilities/upsertPreferences.js'\nimport { enrichDocsWithVersionStatus } from './enrichDocsWithVersionStatus.js'\nimport { handleGroupBy } from './handleGroupBy.js'\nimport { handleHierarchy } from './handleHierarchy.js'\nimport { renderListViewSlots } from './renderListViewSlots.js'\nimport { resolveAllFilterOptions } from './resolveAllFilterOptions.js'\nimport { transformColumnsToSelect } from './transformColumnsToSelect.js'\nimport './index.css'\n\n/**\n * @internal\n */\nexport type RenderListViewArgs = {\n /**\n * Allows providing your own list view component. This will override the default list view component and\n * the collection's configured list view component (if any).\n */\n ComponentOverride?:\n | PayloadComponent\n | React.ComponentType<ListViewClientProps | (ListViewClientProps & ListViewServerPropsOnly)>\n customCellProps?: Record<string, any>\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n disableQueryPresets?: boolean\n drawerSlug?: string\n enableRowSelections: boolean\n overrideEntityVisibility?: boolean\n /**\n * If not ListQuery is provided, `req.query` will be used.\n */\n query?: ListQuery\n redirectAfterDelete?: boolean\n redirectAfterDuplicate?: boolean\n /**\n * @experimental This prop is subject to change in future releases.\n */\n trash?: boolean\n} & AdminViewServerProps\n\n/**\n * This function is responsible for rendering\n * the list view on the server for both:\n * - default list view\n * - list view within drawers\n *\n * @internal\n */\nexport const renderListView = async (\n args: RenderListViewArgs,\n): Promise<{\n List: React.ReactNode\n}> => {\n const {\n clientConfig,\n ComponentOverride,\n customCellProps,\n disableBulkDelete,\n disableBulkEdit,\n disableQueryPresets,\n drawerSlug,\n enableRowSelections,\n initPageResult,\n overrideEntityVisibility,\n params,\n query: queryFromArgs,\n searchParams,\n trash,\n viewType,\n } = args\n\n const {\n collectionConfig,\n collectionConfig: { slug: collectionSlug },\n locale: fullLocale,\n permissions,\n req,\n req: {\n i18n,\n payload,\n payload: { config },\n query: queryFromReq,\n user,\n },\n visibleEntities,\n } = initPageResult\n const {\n routes: { admin: adminRoute },\n } = config\n\n if (\n !collectionConfig ||\n !permissions?.collections?.[collectionSlug]?.read ||\n (!visibleEntities.collections.includes(collectionSlug) && !overrideEntityVisibility)\n ) {\n throw new Error('not-found')\n }\n\n const query: ListQuery = queryFromArgs || queryFromReq\n\n const columnsFromQuery: ColumnPreference[] = transformColumnsToPreferences(query?.columns)\n\n query.queryByGroup =\n query?.queryByGroup && typeof query.queryByGroup === 'string'\n ? JSON.parse(query.queryByGroup)\n : query?.queryByGroup\n\n const collectionPreferences = await upsertPreferences<CollectionPreferences>({\n key: `collection-${collectionSlug}`,\n req,\n value: {\n columns: columnsFromQuery,\n groupBy: query?.groupBy,\n limit: isNumber(query?.limit) ? Number(query.limit) : undefined,\n preset: query?.preset,\n sort: query?.sort as string,\n },\n })\n\n let queryPreset: QueryPreset | undefined\n let queryPresetPermissions: SanitizedCollectionPermission | undefined =\n permissions?.collections?.['payload-query-presets']\n\n if (collectionPreferences?.preset) {\n try {\n queryPreset = (await payload.findByID({\n id: collectionPreferences?.preset,\n collection: 'payload-query-presets',\n depth: 0,\n overrideAccess: false,\n user,\n })) as QueryPreset\n\n if (queryPreset) {\n queryPresetPermissions = (\n await getDocumentPermissions({\n id: queryPreset.id,\n collectionConfig: req.payload.collections['payload-query-presets'].config,\n data: queryPreset,\n req,\n })\n )?.docPermissions\n }\n } catch (err) {\n req.payload.logger.error(`Error fetching query preset or preset permissions: ${err}`)\n }\n }\n\n query.preset = queryPreset?.id\n if (queryPreset?.where && !query.where) {\n query.where = queryPreset.where\n }\n query.groupBy = query.groupBy ?? queryPreset?.groupBy ?? collectionPreferences?.groupBy\n\n const columnPreference = query.columns\n ? transformColumnsToPreferences(query.columns)\n : (queryPreset?.columns ?? collectionPreferences?.columns)\n query.columns = transformColumnsToSearchParams(columnPreference)\n\n query.page = isNumber(query?.page) ? Number(query.page) : 0\n\n query.limit = collectionPreferences?.limit || collectionConfig.admin.pagination.defaultLimit\n\n query.sort =\n collectionPreferences?.sort ||\n (typeof collectionConfig.defaultSort === 'string' ? collectionConfig.defaultSort : undefined)\n\n const baseFilterConstraint = await (\n collectionConfig.admin?.baseFilter ?? collectionConfig.admin?.baseListFilter\n )?.({\n limit: query.limit,\n page: query.page,\n req,\n sort: query.sort,\n })\n\n let whereWithMergedSearch = mergeListSearchAndWhere({\n collectionConfig,\n search: typeof query?.search === 'string' ? query.search : undefined,\n where: combineWhereConstraints([query?.where, baseFilterConstraint]),\n })\n\n if (trash === true) {\n whereWithMergedSearch = {\n and: [\n whereWithMergedSearch,\n {\n deletedAt: {\n exists: true,\n },\n },\n ],\n }\n }\n\n let Table: React.ReactNode | React.ReactNode[] = null\n let columnState: Column[] = []\n let data: PaginatedDocs = {\n // no results default\n docs: [],\n hasNextPage: false,\n hasPrevPage: false,\n limit: query.limit,\n nextPage: null,\n page: 1,\n pagingCounter: 0,\n prevPage: null,\n totalDocs: 0,\n totalPages: 0,\n }\n\n const clientCollectionConfig = clientConfig.collections.find((c) => c.slug === collectionSlug)\n\n const columns = getColumns({\n clientConfig,\n collectionConfig: clientCollectionConfig,\n collectionSlug,\n columns: columnPreference,\n i18n,\n permissions,\n })\n\n /** Automatically force select active columns. */\n const select = transformColumnsToSelect(columns)\n\n /** Force select image fields for list view thumbnails */\n appendUploadSelectFields({\n collectionConfig,\n select,\n })\n\n /** Force select `_tz` siblings for any timezone-enabled date fields in select */\n appendDateTimezoneSelectFields({\n fields: collectionConfig.flattenedFields,\n select,\n })\n\n /** Force select `_order` for orderable collections — OrderableTable needs it to compute reorder targets */\n if (collectionConfig.orderable === true) {\n select._order = true\n }\n\n /** Force select `_status` for drafts-enabled collections — needed by `enrichDocsWithVersionStatus` and `formatDocURL` */\n if (collectionConfig.versions?.drafts) {\n select._status = true\n }\n\n // Check for hierarchy parent param\n const isHierarchyCollection = Boolean(collectionConfig.hierarchy)\n const hierarchyParentFieldName =\n typeof collectionConfig.hierarchy === 'object'\n ? (collectionConfig.hierarchy.parentFieldName ?? 'parent')\n : 'parent'\n let hierarchyParentId: null | number | string = null\n\n if (isHierarchyCollection) {\n const parentParam = searchParams?.[hierarchyParentFieldName]\n if (parentParam === 'null' || parentParam === undefined) {\n hierarchyParentId = null\n } else if (typeof parentParam === 'string') {\n hierarchyParentId =\n payload.db.defaultIDType === 'number' && isNumber(parentParam)\n ? Number(parentParam)\n : parentParam\n }\n }\n\n // Hierarchy data for client-side rendering\n let hierarchyData: HierarchyViewData | undefined\n\n try {\n if (query.groupBy) {\n ;({ columnState, data, Table } = await handleGroupBy({\n clientCollectionConfig,\n clientConfig,\n collectionConfig,\n collectionSlug,\n columns,\n customCellProps,\n drawerSlug,\n enableRowSelections,\n fieldPermissions: permissions?.collections?.[collectionSlug]?.fields,\n query,\n req,\n select,\n trash,\n user,\n viewType,\n where: whereWithMergedSearch,\n }))\n\n // Enrich documents with correct display status for drafts\n data = await enrichDocsWithVersionStatus({\n collectionConfig,\n data,\n req,\n })\n } else {\n data = await req.payload.find({\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n includeLockStatus: true,\n limit: query?.limit ? Number(query.limit) : undefined,\n locale: req.locale,\n overrideAccess: false,\n page: query?.page ? Number(query.page) : undefined,\n req,\n select,\n sort: query?.sort,\n trash,\n user,\n where: whereWithMergedSearch,\n })\n\n // Enrich documents with correct display status for drafts\n data = await enrichDocsWithVersionStatus({\n collectionConfig,\n data,\n req,\n })\n ;({ columnState, Table } = renderTable({\n clientCollectionConfig,\n collectionConfig,\n columns,\n customCellProps,\n data,\n drawerSlug,\n enableRowSelections,\n fieldPermissions: permissions?.collections?.[collectionSlug]?.fields,\n i18n: req.i18n,\n orderableFieldName: collectionConfig.orderable === true ? '_order' : undefined,\n payload: req.payload,\n query,\n req,\n useAsTitle: collectionConfig.admin.useAsTitle,\n viewType,\n }))\n }\n } catch (err) {\n if (err.name !== 'QueryError') {\n // QueryErrors are expected when a user filters by a field they do not have access to\n req.payload.logger.error({\n err,\n msg: `There was an error fetching the list view data for collection ${collectionSlug}`,\n })\n throw err\n }\n }\n\n // Fetch hierarchy data only for hierarchy view\n let HierarchyIcon: React.ReactNode | undefined\n const isHierarchyView = viewType === 'hierarchy'\n\n if (isHierarchyCollection && isHierarchyView) {\n // Extract typeFilter from searchParams (comma-separated list of collection slugs)\n const typeFilterParam = searchParams?.typeFilter\n const typeFilter =\n typeof typeFilterParam === 'string' && typeFilterParam.length > 0\n ? typeFilterParam.split(',')\n : undefined\n\n hierarchyData = await handleHierarchy({\n baseFilter: baseFilterConstraint,\n collectionConfig,\n collectionSlug,\n parentId: hierarchyParentId,\n permissions,\n req,\n search: typeof query?.search === 'string' ? query.search : undefined,\n typeFilter,\n user,\n })\n\n data = hierarchyData.childrenData\n\n // Resolve hierarchy icon from collection config\n const hierarchyConfig =\n typeof collectionConfig.hierarchy === 'object' ? collectionConfig.hierarchy : undefined\n\n HierarchyIcon = RenderServerComponent({\n Component: hierarchyConfig?.admin?.components?.Icon,\n importMap: payload.importMap,\n key: `hierarchy-icon-${collectionSlug}`,\n })\n }\n\n const renderedFilters = renderFilters(collectionConfig.fields, req.payload.importMap)\n\n const resolvedFilterOptions = await resolveAllFilterOptions({\n fields: collectionConfig.fields,\n req,\n })\n\n const staticDescription =\n typeof collectionConfig.admin.description === 'function'\n ? collectionConfig.admin.description({ t: i18n.t })\n : collectionConfig.admin.description\n\n const newDocumentURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/create`,\n })\n\n const hasCreatePermission = permissions?.collections?.[collectionSlug]?.create\n\n const { hasDeletePermission, hasTrashPermission } = await getDocumentPermissions({\n collectionConfig,\n // Empty object serves as base for computing differentiated trash/delete permissions\n data: {},\n req,\n })\n\n // Check if there's a notFound query parameter (document ID that wasn't found)\n const notFoundDocId = typeof searchParams?.notFound === 'string' ? searchParams.notFound : null\n\n const serverProps: ListViewServerPropsOnly = {\n collectionConfig,\n data,\n i18n,\n limit: query.limit,\n listPreferences: collectionPreferences,\n listSearchableFields: collectionConfig.admin.listSearchableFields,\n locale: fullLocale,\n params,\n payload,\n permissions,\n searchParams,\n server: req.server,\n user,\n }\n\n const listViewSlots = renderListViewSlots({\n clientProps: {\n collectionSlug,\n hasCreatePermission,\n hasDeletePermission,\n hasTrashPermission,\n newDocumentURL,\n },\n collectionConfig,\n description: staticDescription,\n notFoundDocId,\n payload,\n serverProps,\n })\n\n const isInDrawer = Boolean(drawerSlug)\n\n // Needed to prevent: Only plain objects can be passed to Client Components from Server Components. Objects with toJSON methods are not supported. Convert it manually to a simple value before passing it to props.\n // Is there a way to avoid this? The `where` object is already seemingly plain, but is not bc it originates from the params.\n query.where = query?.where ? JSON.parse(JSON.stringify(query?.where || {})) : undefined\n\n const RenderedListViewComponent = RenderServerComponent({\n clientProps: {\n ...listViewSlots,\n baseFilter: baseFilterConstraint,\n collectionSlug,\n columnState,\n disableBulkDelete: collectionConfig.disableBulkDelete ?? disableBulkDelete,\n disableBulkEdit: collectionConfig.disableBulkEdit ?? disableBulkEdit,\n disableQueryPresets,\n enableRowSelections,\n hasCreatePermission,\n hasDeletePermission,\n hasTrashPermission,\n hierarchyData,\n HierarchyIcon,\n listPreferences: collectionPreferences,\n newDocumentURL,\n queryPreset,\n queryPresetPermissions,\n renderedFilters,\n resolvedFilterOptions,\n Table,\n viewType,\n } satisfies ListViewClientProps,\n Component: ComponentOverride ?? collectionConfig?.admin?.components?.views?.list?.Component,\n Fallback: viewType === 'hierarchy' ? HierarchyListView : DefaultListView,\n importMap: payload.importMap,\n key: `list-view-${collectionSlug}-${viewType}`,\n serverProps,\n })\n\n return {\n List: (\n <Fragment>\n <HydrateAuthProvider permissions={permissions} />\n {isHierarchyView ? (\n <Fragment>\n <HydrateHierarchyProvider\n allowedCollections={hierarchyData?.allowedCollections}\n baseFilter={baseFilterConstraint}\n collectionSlug={collectionSlug}\n expandedNodes={hierarchyData?.breadcrumbs?.slice(0, -1).map((b) => b.id)}\n parent={hierarchyData?.parent}\n parentFieldName={\n typeof collectionConfig.hierarchy === 'object'\n ? collectionConfig.hierarchy?.parentFieldName\n : undefined\n }\n tableData={data}\n treeLimit={\n typeof collectionConfig.hierarchy === 'object'\n ? collectionConfig.hierarchy?.admin?.treeLimit\n : undefined\n }\n typeFieldName={\n typeof collectionConfig.hierarchy === 'object' &&\n collectionConfig.hierarchy?.collectionSpecific &&\n typeof collectionConfig.hierarchy.collectionSpecific === 'object'\n ? collectionConfig.hierarchy.collectionSpecific.fieldName\n : undefined\n }\n />\n {RenderedListViewComponent}\n </Fragment>\n ) : (\n <ListQueryProvider\n collectionSlug={collectionSlug}\n data={data}\n modifySearchParams={!isInDrawer}\n orderableFieldName={collectionConfig.orderable === true ? '_order' : undefined}\n query={query}\n >\n {RenderedListViewComponent}\n </ListQueryProvider>\n )}\n </Fragment>\n ),\n }\n}\n\nexport const ListView: React.FC<RenderListViewArgs> = async (args) => {\n try {\n const { List: RenderedList } = await renderListView({ ...args, enableRowSelections: true })\n return RenderedList\n } catch (error) {\n if (error.message === 'not-found') {\n args.initPageResult.req.server.notFound()\n } else {\n console.error(error) // eslint-disable-line no-console\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["appendDateTimezoneSelectFields","appendUploadSelectFields","combineWhereConstraints","formatAdminURL","isNumber","mergeListSearchAndWhere","transformColumnsToPreferences","transformColumnsToSearchParams","React","Fragment","RenderServerComponent","DefaultListView","HierarchyListView","HydrateAuthProvider","HydrateHierarchyProvider","ListQueryProvider","getColumns","getDocumentPermissions","renderFilters","renderTable","upsertPreferences","enrichDocsWithVersionStatus","handleGroupBy","handleHierarchy","renderListViewSlots","resolveAllFilterOptions","transformColumnsToSelect","renderListView","args","clientConfig","ComponentOverride","customCellProps","disableBulkDelete","disableBulkEdit","disableQueryPresets","drawerSlug","enableRowSelections","initPageResult","overrideEntityVisibility","params","query","queryFromArgs","searchParams","trash","viewType","collectionConfig","slug","collectionSlug","locale","fullLocale","permissions","req","i18n","payload","config","queryFromReq","user","visibleEntities","routes","admin","adminRoute","collections","read","includes","Error","columnsFromQuery","columns","queryByGroup","JSON","parse","collectionPreferences","key","value","groupBy","limit","Number","undefined","preset","sort","queryPreset","queryPresetPermissions","findByID","id","collection","depth","overrideAccess","data","docPermissions","err","logger","error","where","columnPreference","page","pagination","defaultLimit","defaultSort","baseFilterConstraint","baseFilter","baseListFilter","whereWithMergedSearch","search","and","deletedAt","exists","Table","columnState","docs","hasNextPage","hasPrevPage","nextPage","pagingCounter","prevPage","totalDocs","totalPages","clientCollectionConfig","find","c","select","fields","flattenedFields","orderable","_order","versions","drafts","_status","isHierarchyCollection","Boolean","hierarchy","hierarchyParentFieldName","parentFieldName","hierarchyParentId","parentParam","db","defaultIDType","hierarchyData","fieldPermissions","draft","fallbackLocale","includeLockStatus","orderableFieldName","useAsTitle","name","msg","HierarchyIcon","isHierarchyView","typeFilterParam","typeFilter","length","split","parentId","childrenData","hierarchyConfig","Component","components","Icon","importMap","renderedFilters","resolvedFilterOptions","staticDescription","description","t","newDocumentURL","path","hasCreatePermission","create","hasDeletePermission","hasTrashPermission","notFoundDocId","notFound","serverProps","listPreferences","listSearchableFields","server","listViewSlots","clientProps","isInDrawer","stringify","RenderedListViewComponent","views","list","Fallback","List","_jsxs","_jsx","allowedCollections","expandedNodes","breadcrumbs","slice","map","b","parent","tableData","treeLimit","typeFieldName","collectionSpecific","fieldName","modifySearchParams","ListView","RenderedList","message","console"],"sources":["../../../src/views/List/index.tsx"],"sourcesContent":["import type {\n AdminViewServerProps,\n CollectionPreferences,\n Column,\n ColumnPreference,\n HierarchyViewData,\n ListQuery,\n ListViewClientProps,\n ListViewServerPropsOnly,\n PaginatedDocs,\n PayloadComponent,\n QueryPreset,\n SanitizedCollectionPermission,\n} from 'payload'\n\nimport {\n appendDateTimezoneSelectFields,\n appendUploadSelectFields,\n combineWhereConstraints,\n formatAdminURL,\n isNumber,\n mergeListSearchAndWhere,\n transformColumnsToPreferences,\n transformColumnsToSearchParams,\n} from 'payload/shared'\nimport React, { Fragment } from 'react'\n\nimport { RenderServerComponent } from '../../elements/RenderServerComponent/index.js'\n/* eslint-disable payload/no-imports-from-exports-dir -- Server component must reference exports/client bundle for proper client boundary in prod builds */\nimport {\n DefaultListView,\n HierarchyListView,\n HydrateAuthProvider,\n HydrateHierarchyProvider,\n ListQueryProvider,\n} from '../../exports/client/index.js'\n/* eslint-enable payload/no-imports-from-exports-dir */\nimport { getColumns } from '../../utilities/getColumns.js'\nimport { getDocumentPermissions } from '../../utilities/getDocumentPermissions.js'\nimport { renderFilters, renderTable } from '../../utilities/renderTable.js'\nimport { upsertPreferences } from '../../utilities/upsertPreferences.js'\nimport { enrichDocsWithVersionStatus } from './enrichDocsWithVersionStatus.js'\nimport { handleGroupBy } from './handleGroupBy.js'\nimport { handleHierarchy } from './handleHierarchy.js'\nimport { renderListViewSlots } from './renderListViewSlots.js'\nimport { resolveAllFilterOptions } from './resolveAllFilterOptions.js'\nimport { transformColumnsToSelect } from './transformColumnsToSelect.js'\nimport './index.css'\n\n/**\n * @internal\n */\nexport type RenderListViewArgs = {\n /**\n * Allows providing your own list view component. This will override the default list view component and\n * the collection's configured list view component (if any).\n */\n ComponentOverride?:\n | PayloadComponent\n | React.ComponentType<ListViewClientProps | (ListViewClientProps & ListViewServerPropsOnly)>\n customCellProps?: Record<string, any>\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n disableQueryPresets?: boolean\n drawerSlug?: string\n enableRowSelections: boolean\n overrideEntityVisibility?: boolean\n /**\n * If not ListQuery is provided, `req.query` will be used.\n */\n query?: ListQuery\n redirectAfterDelete?: boolean\n redirectAfterDuplicate?: boolean\n /**\n * @experimental This prop is subject to change in future releases.\n */\n trash?: boolean\n} & AdminViewServerProps\n\n/**\n * This function is responsible for rendering\n * the list view on the server for both:\n * - default list view\n * - list view within drawers\n *\n * @internal\n */\nexport const renderListView = async (\n args: RenderListViewArgs,\n): Promise<{\n List: React.ReactNode\n}> => {\n const {\n clientConfig,\n ComponentOverride,\n customCellProps,\n disableBulkDelete,\n disableBulkEdit,\n disableQueryPresets,\n drawerSlug,\n enableRowSelections,\n initPageResult,\n overrideEntityVisibility,\n params,\n query: queryFromArgs,\n searchParams,\n trash,\n viewType,\n } = args\n\n const {\n collectionConfig,\n collectionConfig: { slug: collectionSlug },\n locale: fullLocale,\n permissions,\n req,\n req: {\n i18n,\n payload,\n payload: { config },\n query: queryFromReq,\n user,\n },\n visibleEntities,\n } = initPageResult\n const {\n routes: { admin: adminRoute },\n } = config\n\n if (\n !collectionConfig ||\n !permissions?.collections?.[collectionSlug]?.read ||\n (!visibleEntities.collections.includes(collectionSlug) && !overrideEntityVisibility)\n ) {\n throw new Error('not-found')\n }\n\n const query: ListQuery = queryFromArgs || queryFromReq\n\n const columnsFromQuery: ColumnPreference[] = transformColumnsToPreferences(query?.columns)\n\n query.queryByGroup =\n query?.queryByGroup && typeof query.queryByGroup === 'string'\n ? JSON.parse(query.queryByGroup)\n : query?.queryByGroup\n\n const collectionPreferences = await upsertPreferences<CollectionPreferences>({\n key: `collection-${collectionSlug}`,\n req,\n value: {\n columns: columnsFromQuery,\n groupBy: query?.groupBy,\n limit: isNumber(query?.limit) ? Number(query.limit) : undefined,\n preset: query?.preset,\n sort: query?.sort as string,\n },\n })\n\n let queryPreset: QueryPreset | undefined\n let queryPresetPermissions: SanitizedCollectionPermission | undefined =\n permissions?.collections?.['payload-query-presets']\n\n if (collectionPreferences?.preset) {\n try {\n queryPreset = (await payload.findByID({\n id: collectionPreferences?.preset,\n collection: 'payload-query-presets',\n depth: 0,\n overrideAccess: false,\n user,\n })) as QueryPreset\n\n if (queryPreset) {\n queryPresetPermissions = (\n await getDocumentPermissions({\n id: queryPreset.id,\n collectionConfig: req.payload.collections['payload-query-presets'].config,\n data: queryPreset,\n req,\n })\n )?.docPermissions\n }\n } catch (err) {\n req.payload.logger.error(`Error fetching query preset or preset permissions: ${err}`)\n }\n }\n\n query.preset = queryPreset?.id\n if (queryPreset?.where && !query.where) {\n query.where = queryPreset.where\n }\n query.groupBy = query.groupBy ?? queryPreset?.groupBy ?? collectionPreferences?.groupBy\n\n const columnPreference = query.columns\n ? transformColumnsToPreferences(query.columns)\n : (queryPreset?.columns ?? collectionPreferences?.columns)\n query.columns = transformColumnsToSearchParams(columnPreference)\n\n query.page = isNumber(query?.page) ? Number(query.page) : 0\n\n query.limit = collectionPreferences?.limit || collectionConfig.admin.pagination.defaultLimit\n\n query.sort =\n collectionPreferences?.sort ||\n (typeof collectionConfig.defaultSort === 'string' ? collectionConfig.defaultSort : undefined)\n\n const baseFilterConstraint = await (\n collectionConfig.admin?.baseFilter ?? collectionConfig.admin?.baseListFilter\n )?.({\n limit: query.limit,\n page: query.page,\n req,\n sort: query.sort,\n })\n\n let whereWithMergedSearch = mergeListSearchAndWhere({\n collectionConfig,\n search: typeof query?.search === 'string' ? query.search : undefined,\n where: combineWhereConstraints([query?.where, baseFilterConstraint]),\n })\n\n if (trash === true) {\n whereWithMergedSearch = {\n and: [\n whereWithMergedSearch,\n {\n deletedAt: {\n exists: true,\n },\n },\n ],\n }\n }\n\n let Table: React.ReactNode | React.ReactNode[] = null\n let columnState: Column[] = []\n let data: PaginatedDocs = {\n // no results default\n docs: [],\n hasNextPage: false,\n hasPrevPage: false,\n limit: query.limit,\n nextPage: null,\n page: 1,\n pagingCounter: 0,\n prevPage: null,\n totalDocs: 0,\n totalPages: 0,\n }\n\n const clientCollectionConfig = clientConfig.collections.find((c) => c.slug === collectionSlug)\n\n const columns = getColumns({\n clientConfig,\n collectionConfig: clientCollectionConfig,\n collectionSlug,\n columns: columnPreference,\n i18n,\n permissions,\n })\n\n /** Automatically force select active columns. */\n const select = transformColumnsToSelect(columns)\n\n /** Force select image fields for list view thumbnails */\n appendUploadSelectFields({\n collectionConfig,\n select,\n })\n\n /** Force select `_tz` siblings for any timezone-enabled date fields in select */\n appendDateTimezoneSelectFields({\n fields: collectionConfig.flattenedFields,\n select,\n })\n\n /** Force select `_order` for orderable collections — OrderableTable needs it to compute reorder targets */\n if (collectionConfig.orderable === true) {\n select._order = true\n }\n\n /** Force select `_status` for drafts-enabled collections — needed by `enrichDocsWithVersionStatus` and `formatDocURL` */\n if (collectionConfig.versions?.drafts) {\n select._status = true\n }\n\n // Check for hierarchy parent param\n const isHierarchyCollection = Boolean(collectionConfig.hierarchy)\n const hierarchyParentFieldName =\n typeof collectionConfig.hierarchy === 'object'\n ? (collectionConfig.hierarchy.parentFieldName ?? 'parent')\n : 'parent'\n let hierarchyParentId: null | number | string = null\n\n if (isHierarchyCollection) {\n const parentParam = searchParams?.[hierarchyParentFieldName]\n if (parentParam === 'null' || parentParam === undefined) {\n hierarchyParentId = null\n } else if (typeof parentParam === 'string') {\n hierarchyParentId =\n payload.db.defaultIDType === 'number' && isNumber(parentParam)\n ? Number(parentParam)\n : parentParam\n }\n }\n\n // Hierarchy data for client-side rendering\n let hierarchyData: HierarchyViewData | undefined\n\n try {\n if (query.groupBy) {\n ;({ columnState, data, Table } = await handleGroupBy({\n clientCollectionConfig,\n clientConfig,\n collectionConfig,\n collectionSlug,\n columns,\n customCellProps,\n drawerSlug,\n enableRowSelections,\n fieldPermissions: permissions?.collections?.[collectionSlug]?.fields,\n query,\n req,\n select,\n trash,\n user,\n viewType,\n where: whereWithMergedSearch,\n }))\n\n // Enrich documents with correct display status for drafts\n data = await enrichDocsWithVersionStatus({\n collectionConfig,\n data,\n req,\n })\n } else {\n data = await req.payload.find({\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n includeLockStatus: true,\n limit: query?.limit ? Number(query.limit) : undefined,\n locale: req.locale,\n overrideAccess: false,\n page: query?.page ? Number(query.page) : undefined,\n req,\n select,\n sort: query?.sort,\n trash,\n user,\n where: whereWithMergedSearch,\n })\n\n // Enrich documents with correct display status for drafts\n data = await enrichDocsWithVersionStatus({\n collectionConfig,\n data,\n req,\n })\n ;({ columnState, Table } = renderTable({\n clientCollectionConfig,\n collectionConfig,\n columns,\n customCellProps,\n data,\n drawerSlug,\n enableRowSelections,\n fieldPermissions: permissions?.collections?.[collectionSlug]?.fields,\n i18n: req.i18n,\n orderableFieldName: collectionConfig.orderable === true ? '_order' : undefined,\n payload: req.payload,\n query,\n req,\n useAsTitle: collectionConfig.admin.useAsTitle,\n viewType,\n }))\n }\n } catch (err) {\n if (err.name !== 'QueryError') {\n // QueryErrors are expected when a user filters by a field they do not have access to\n req.payload.logger.error({\n err,\n msg: `There was an error fetching the list view data for collection ${collectionSlug}`,\n })\n throw err\n }\n }\n\n // Fetch hierarchy data only for hierarchy view\n let HierarchyIcon: React.ReactNode | undefined\n const isHierarchyView = viewType === 'hierarchy'\n\n if (isHierarchyCollection && isHierarchyView) {\n // Extract typeFilter from searchParams (comma-separated list of collection slugs)\n const typeFilterParam = searchParams?.typeFilter\n const typeFilter =\n typeof typeFilterParam === 'string' && typeFilterParam.length > 0\n ? typeFilterParam.split(',')\n : undefined\n\n hierarchyData = await handleHierarchy({\n baseFilter: baseFilterConstraint,\n collectionConfig,\n collectionSlug,\n parentId: hierarchyParentId,\n permissions,\n req,\n search: typeof query?.search === 'string' ? query.search : undefined,\n typeFilter,\n user,\n })\n\n data = hierarchyData.childrenData\n\n // Resolve hierarchy icon from collection config\n const hierarchyConfig =\n typeof collectionConfig.hierarchy === 'object' ? collectionConfig.hierarchy : undefined\n\n HierarchyIcon = RenderServerComponent({\n Component: hierarchyConfig?.admin?.components?.Icon,\n importMap: payload.importMap,\n key: `hierarchy-icon-${collectionSlug}`,\n })\n }\n\n const renderedFilters = renderFilters(collectionConfig.fields, req.payload.importMap)\n\n const resolvedFilterOptions = await resolveAllFilterOptions({\n fields: collectionConfig.fields,\n req,\n })\n\n const staticDescription =\n typeof collectionConfig.admin.description === 'function'\n ? collectionConfig.admin.description({ t: i18n.t })\n : collectionConfig.admin.description\n\n const newDocumentURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/create`,\n })\n\n const hasCreatePermission = permissions?.collections?.[collectionSlug]?.create\n\n const { hasDeletePermission, hasTrashPermission } = await getDocumentPermissions({\n collectionConfig,\n // Empty object serves as base for computing differentiated trash/delete permissions\n data: {},\n req,\n })\n\n // Check if there's a notFound query parameter (document ID that wasn't found)\n const notFoundDocId = typeof searchParams?.notFound === 'string' ? searchParams.notFound : null\n\n const serverProps: ListViewServerPropsOnly = {\n collectionConfig,\n data,\n i18n,\n limit: query.limit,\n listPreferences: collectionPreferences,\n listSearchableFields: collectionConfig.admin.listSearchableFields,\n locale: fullLocale,\n params,\n payload,\n permissions,\n searchParams,\n server: req.server,\n user,\n }\n\n const listViewSlots = renderListViewSlots({\n clientProps: {\n collectionSlug,\n hasCreatePermission,\n hasDeletePermission,\n hasTrashPermission,\n newDocumentURL,\n viewType,\n },\n collectionConfig,\n description: staticDescription,\n notFoundDocId,\n payload,\n serverProps,\n })\n\n const isInDrawer = Boolean(drawerSlug)\n\n // Needed to prevent: Only plain objects can be passed to Client Components from Server Components. Objects with toJSON methods are not supported. Convert it manually to a simple value before passing it to props.\n // Is there a way to avoid this? The `where` object is already seemingly plain, but is not bc it originates from the params.\n query.where = query?.where ? JSON.parse(JSON.stringify(query?.where || {})) : undefined\n\n const RenderedListViewComponent = RenderServerComponent({\n clientProps: {\n ...listViewSlots,\n baseFilter: baseFilterConstraint,\n collectionSlug,\n columnState,\n disableBulkDelete: collectionConfig.disableBulkDelete ?? disableBulkDelete,\n disableBulkEdit: collectionConfig.disableBulkEdit ?? disableBulkEdit,\n disableQueryPresets,\n enableRowSelections,\n hasCreatePermission,\n hasDeletePermission,\n hasTrashPermission,\n hierarchyData,\n HierarchyIcon,\n listPreferences: collectionPreferences,\n newDocumentURL,\n queryPreset,\n queryPresetPermissions,\n renderedFilters,\n resolvedFilterOptions,\n Table,\n viewType,\n } satisfies ListViewClientProps,\n Component: ComponentOverride ?? collectionConfig?.admin?.components?.views?.list?.Component,\n Fallback: viewType === 'hierarchy' ? HierarchyListView : DefaultListView,\n importMap: payload.importMap,\n key: `list-view-${collectionSlug}-${viewType}`,\n serverProps,\n })\n\n return {\n List: (\n <Fragment>\n <HydrateAuthProvider permissions={permissions} />\n {isHierarchyView ? (\n <Fragment>\n <HydrateHierarchyProvider\n allowedCollections={hierarchyData?.allowedCollections}\n baseFilter={baseFilterConstraint}\n collectionSlug={collectionSlug}\n expandedNodes={hierarchyData?.breadcrumbs?.slice(0, -1).map((b) => b.id)}\n parent={hierarchyData?.parent}\n parentFieldName={\n typeof collectionConfig.hierarchy === 'object'\n ? collectionConfig.hierarchy?.parentFieldName\n : undefined\n }\n tableData={data}\n treeLimit={\n typeof collectionConfig.hierarchy === 'object'\n ? collectionConfig.hierarchy?.admin?.treeLimit\n : undefined\n }\n typeFieldName={\n typeof collectionConfig.hierarchy === 'object' &&\n collectionConfig.hierarchy?.collectionSpecific &&\n typeof collectionConfig.hierarchy.collectionSpecific === 'object'\n ? collectionConfig.hierarchy.collectionSpecific.fieldName\n : undefined\n }\n />\n {RenderedListViewComponent}\n </Fragment>\n ) : (\n <ListQueryProvider\n collectionSlug={collectionSlug}\n data={data}\n modifySearchParams={!isInDrawer}\n orderableFieldName={collectionConfig.orderable === true ? '_order' : undefined}\n query={query}\n >\n {RenderedListViewComponent}\n </ListQueryProvider>\n )}\n </Fragment>\n ),\n }\n}\n\nexport const ListView: React.FC<RenderListViewArgs> = async (args) => {\n try {\n const { List: RenderedList } = await renderListView({ ...args, enableRowSelections: true })\n return RenderedList\n } catch (error) {\n if (error.message === 'not-found') {\n args.initPageResult.req.server.notFound()\n } else {\n console.error(error) // eslint-disable-line no-console\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"renderListViewSlots.d.ts","sourceRoot":"","sources":["../../../src/views/List/renderListViewSlots.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAQV,uBAAuB,EACvB,aAAa,EACb,6BAA6B,EAC7B,OAAO,EACP,yBAAyB,EACzB,iBAAiB,EAGlB,MAAM,SAAS,CAAA;AAOhB,KAAK,IAAI,GAAG;IACV,WAAW,EAAE,6BAA6B,CAAA;IAC1C,gBAAgB,EAAE,yBAAyB,CAAA;IAC3C,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B,aAAa,CAAC,EAAE,IAAI,GAAG,MAAM,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,uBAAuB,CAAA;CACrC,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,sFAOjC,IAAI,KAAG,aAmFT,CAAA"}
1
+ {"version":3,"file":"renderListViewSlots.d.ts","sourceRoot":"","sources":["../../../src/views/List/renderListViewSlots.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAQV,uBAAuB,EACvB,aAAa,EACb,6BAA6B,EAG7B,OAAO,EACP,yBAAyB,EACzB,iBAAiB,EAGlB,MAAM,SAAS,CAAA;AAOhB,KAAK,IAAI,GAAG;IACV,WAAW,EAAE,6BAA6B,CAAA;IAC1C,gBAAgB,EAAE,yBAAyB,CAAA;IAC3C,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B,aAAa,CAAC,EAAE,IAAI,GAAG,MAAM,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,uBAAuB,CAAA;CACrC,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,sFAOjC,IAAI,KAAG,aAiGT,CAAA"}
@@ -76,6 +76,17 @@ export const renderListViewSlots = ({
76
76
  serverProps: serverProps
77
77
  });
78
78
  }
79
+ if (collectionConfig.admin.components?.views?.list?.NoResults) {
80
+ result.NoResults = /*#__PURE__*/_jsx(React.Fragment, {
81
+ children: RenderServerComponent({
82
+ clientProps: clientProps,
83
+ Component: collectionConfig.admin.components.views.list.NoResults,
84
+ importMap: payload.importMap,
85
+ key: 'list-view-no-results',
86
+ serverProps: serverProps
87
+ })
88
+ }, "list-view-no-results");
89
+ }
79
90
  return result;
80
91
  };
81
92
  //# sourceMappingURL=renderListViewSlots.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"renderListViewSlots.js","names":["React","Banner","RenderServerComponent","renderListViewSlots","clientProps","collectionConfig","description","notFoundDocId","payload","serverProps","result","admin","components","afterList","AfterList","Component","importMap","listMenuItems","Array","isArray","afterListTable","AfterListTable","beforeList","BeforeList","existingBeforeListTable","beforeListTable","notFoundBanner","_jsx","className","type","i18n","t","id","BeforeListTable","_jsxs","Fragment","Description","collectionSlug","slug"],"sources":["../../../src/views/List/renderListViewSlots.tsx"],"sourcesContent":["import type {\n AfterListClientProps,\n AfterListTableClientProps,\n AfterListTableServerPropsOnly,\n BeforeListClientProps,\n BeforeListServerPropsOnly,\n BeforeListTableClientProps,\n BeforeListTableServerPropsOnly,\n ListViewServerPropsOnly,\n ListViewSlots,\n ListViewSlotSharedClientProps,\n Payload,\n SanitizedCollectionConfig,\n StaticDescription,\n ViewDescriptionClientProps,\n ViewDescriptionServerPropsOnly,\n} from 'payload'\n\nimport React from 'react'\n\nimport { Banner } from '../../elements/Banner/index.js'\nimport { RenderServerComponent } from '../../elements/RenderServerComponent/index.js'\n\ntype Args = {\n clientProps: ListViewSlotSharedClientProps\n collectionConfig: SanitizedCollectionConfig\n description?: StaticDescription\n notFoundDocId?: null | string\n payload: Payload\n serverProps: ListViewServerPropsOnly\n}\n\nexport const renderListViewSlots = ({\n clientProps,\n collectionConfig,\n description,\n notFoundDocId,\n payload,\n serverProps,\n}: Args): ListViewSlots => {\n const result: ListViewSlots = {} as ListViewSlots\n\n if (collectionConfig.admin.components?.afterList) {\n result.AfterList = RenderServerComponent({\n clientProps: clientProps satisfies AfterListClientProps,\n Component: collectionConfig.admin.components.afterList,\n importMap: payload.importMap,\n serverProps: serverProps satisfies AfterListTableServerPropsOnly,\n })\n }\n\n const listMenuItems = collectionConfig.admin.components?.listMenuItems\n\n if (Array.isArray(listMenuItems)) {\n result.listMenuItems = [\n RenderServerComponent({\n clientProps,\n Component: listMenuItems,\n importMap: payload.importMap,\n serverProps,\n }),\n ]\n }\n\n if (collectionConfig.admin.components?.afterListTable) {\n result.AfterListTable = RenderServerComponent({\n clientProps: clientProps satisfies AfterListTableClientProps,\n Component: collectionConfig.admin.components.afterListTable,\n importMap: payload.importMap,\n serverProps: serverProps satisfies AfterListTableServerPropsOnly,\n })\n }\n\n if (collectionConfig.admin.components?.beforeList) {\n result.BeforeList = RenderServerComponent({\n clientProps: clientProps satisfies BeforeListClientProps,\n Component: collectionConfig.admin.components.beforeList,\n importMap: payload.importMap,\n serverProps: serverProps satisfies BeforeListServerPropsOnly,\n })\n }\n\n // Handle beforeListTable with optional banner\n const existingBeforeListTable = collectionConfig.admin.components?.beforeListTable\n ? RenderServerComponent({\n clientProps: clientProps satisfies BeforeListTableClientProps,\n Component: collectionConfig.admin.components.beforeListTable,\n importMap: payload.importMap,\n serverProps: serverProps satisfies BeforeListTableServerPropsOnly,\n })\n : null\n\n // Create banner for document not found\n const notFoundBanner = notFoundDocId ? (\n <Banner className=\"list-view__not-found-banner\" type=\"danger\">\n {serverProps.i18n.t('error:documentNotFound', { id: notFoundDocId })}\n </Banner>\n ) : null\n\n // Combine banner and existing component\n if (notFoundBanner || existingBeforeListTable) {\n result.BeforeListTable = (\n <React.Fragment>\n {notFoundBanner}\n {existingBeforeListTable}\n </React.Fragment>\n )\n }\n\n if (collectionConfig.admin.components?.Description) {\n result.Description = RenderServerComponent({\n clientProps: {\n collectionSlug: collectionConfig.slug,\n description,\n } satisfies ViewDescriptionClientProps,\n Component: collectionConfig.admin.components.Description,\n importMap: payload.importMap,\n serverProps: serverProps satisfies ViewDescriptionServerPropsOnly,\n })\n }\n\n return result\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"renderListViewSlots.js","names":["React","Banner","RenderServerComponent","renderListViewSlots","clientProps","collectionConfig","description","notFoundDocId","payload","serverProps","result","admin","components","afterList","AfterList","Component","importMap","listMenuItems","Array","isArray","afterListTable","AfterListTable","beforeList","BeforeList","existingBeforeListTable","beforeListTable","notFoundBanner","_jsx","className","type","i18n","t","id","BeforeListTable","_jsxs","Fragment","Description","collectionSlug","slug","views","list","NoResults","key"],"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 NoResultsClientProps,\n NoResultsServerPropsOnly,\n Payload,\n SanitizedCollectionConfig,\n StaticDescription,\n ViewDescriptionClientProps,\n ViewDescriptionServerPropsOnly,\n} from 'payload'\n\nimport React from 'react'\n\nimport { Banner } from '../../elements/Banner/index.js'\nimport { RenderServerComponent } from '../../elements/RenderServerComponent/index.js'\n\ntype Args = {\n clientProps: ListViewSlotSharedClientProps\n collectionConfig: SanitizedCollectionConfig\n description?: StaticDescription\n notFoundDocId?: null | string\n payload: Payload\n serverProps: ListViewServerPropsOnly\n}\n\nexport const renderListViewSlots = ({\n clientProps,\n collectionConfig,\n description,\n notFoundDocId,\n payload,\n serverProps,\n}: Args): ListViewSlots => {\n const result: ListViewSlots = {} as ListViewSlots\n\n if (collectionConfig.admin.components?.afterList) {\n result.AfterList = RenderServerComponent({\n clientProps: clientProps satisfies AfterListClientProps,\n Component: collectionConfig.admin.components.afterList,\n importMap: payload.importMap,\n serverProps: serverProps satisfies AfterListTableServerPropsOnly,\n })\n }\n\n const listMenuItems = collectionConfig.admin.components?.listMenuItems\n\n if (Array.isArray(listMenuItems)) {\n result.listMenuItems = [\n RenderServerComponent({\n clientProps,\n Component: listMenuItems,\n importMap: payload.importMap,\n serverProps,\n }),\n ]\n }\n\n if (collectionConfig.admin.components?.afterListTable) {\n result.AfterListTable = RenderServerComponent({\n clientProps: clientProps satisfies AfterListTableClientProps,\n Component: collectionConfig.admin.components.afterListTable,\n importMap: payload.importMap,\n serverProps: serverProps satisfies AfterListTableServerPropsOnly,\n })\n }\n\n if (collectionConfig.admin.components?.beforeList) {\n result.BeforeList = RenderServerComponent({\n clientProps: clientProps satisfies BeforeListClientProps,\n Component: collectionConfig.admin.components.beforeList,\n importMap: payload.importMap,\n serverProps: serverProps satisfies BeforeListServerPropsOnly,\n })\n }\n\n // Handle beforeListTable with optional banner\n const existingBeforeListTable = collectionConfig.admin.components?.beforeListTable\n ? RenderServerComponent({\n clientProps: clientProps satisfies BeforeListTableClientProps,\n Component: collectionConfig.admin.components.beforeListTable,\n importMap: payload.importMap,\n serverProps: serverProps satisfies BeforeListTableServerPropsOnly,\n })\n : null\n\n // Create banner for document not found\n const notFoundBanner = notFoundDocId ? (\n <Banner className=\"list-view__not-found-banner\" type=\"danger\">\n {serverProps.i18n.t('error:documentNotFound', { id: notFoundDocId })}\n </Banner>\n ) : null\n\n // Combine banner and existing component\n if (notFoundBanner || existingBeforeListTable) {\n result.BeforeListTable = (\n <React.Fragment>\n {notFoundBanner}\n {existingBeforeListTable}\n </React.Fragment>\n )\n }\n\n if (collectionConfig.admin.components?.Description) {\n result.Description = RenderServerComponent({\n clientProps: {\n collectionSlug: collectionConfig.slug,\n description,\n } satisfies ViewDescriptionClientProps,\n Component: collectionConfig.admin.components.Description,\n importMap: payload.importMap,\n serverProps: serverProps satisfies ViewDescriptionServerPropsOnly,\n })\n }\n\n if (collectionConfig.admin.components?.views?.list?.NoResults) {\n result.NoResults = (\n <React.Fragment key=\"list-view-no-results\">\n {RenderServerComponent({\n clientProps: clientProps satisfies NoResultsClientProps,\n Component: collectionConfig.admin.components.views.list.NoResults,\n importMap: payload.importMap,\n key: 'list-view-no-results',\n serverProps: serverProps satisfies NoResultsServerPropsOnly,\n })}\n </React.Fragment>\n )\n }\n\n return result\n}\n"],"mappings":"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","ignoreList":[]}
@@ -64,7 +64,7 @@ export const LogoutClient = props => {
64
64
  if (!navigatingToLoginRef.current) {
65
65
  navigatingToLoginRef.current = true;
66
66
  await logOut();
67
- toast.success(t("authentication:loggedOutSuccessfully"));
67
+ toast(t("authentication:loggedOutSuccessfully"));
68
68
  startRouteTransition(() => router.push(loginRoute));
69
69
  return;
70
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"LogoutClient.js","names":["c","_c","formatAdminURL","React","useEffect","toast","Button","LoadingOverlay","useAuth","useRouter","useRouteTransition","useTranslation","baseClass","LogoutClient","props","$","adminRoute","inactivity","redirect","logOut","user","startRouteTransition","id","isLoggedIn","Boolean","navigatingToLoginRef","useRef","t0","path","length","encodeURIComponent","loginRoute","useState","t","router","t1","current","success","push","handleLogOut","t2","t3","t4","_jsxs","className","children","_jsx","buttonStyle","el","size","url","animationDuration","loadingText"],"sources":["../../../src/views/Logout/LogoutClient.tsx"],"sourcesContent":["'use client'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { useEffect } from 'react'\nimport { toast } from 'sonner'\n\nimport { Button } from '../../elements/Button/index.js'\nimport { LoadingOverlay } from '../../elements/Loading/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useRouter } from '../../providers/RouterAdapter/index.js'\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.css'\n\nconst baseClass = 'logout'\n\n/**\n * This component should **just** be the inactivity route and do nothing with logging the user out.\n *\n * It currently handles too much, the auth provider should just log the user out and then\n * we could remove the useEffect in this file. So instead of the logout button\n * being an anchor link, it should be a button that calls `logOut` in the provider.\n *\n * This view is still useful if cookies attempt to refresh and fail, i.e. the user\n * is logged out due to inactivity.\n */\nexport const LogoutClient: React.FC<{\n adminRoute: string\n inactivity?: boolean\n redirect: string\n}> = (props) => {\n const { adminRoute, inactivity, redirect } = props\n\n const { logOut, user } = useAuth()\n\n const { startRouteTransition } = useRouteTransition()\n\n const isLoggedIn = React.useMemo(() => {\n return Boolean(user?.id)\n }, [user?.id])\n\n const navigatingToLoginRef = React.useRef(false)\n\n const [loginRoute] = React.useState(() =>\n formatAdminURL({\n adminRoute,\n path: `/login${\n inactivity && redirect && redirect.length > 0\n ? `?redirect=${encodeURIComponent(redirect)}`\n : ''\n }`,\n }),\n )\n\n const { t } = useTranslation()\n const router = useRouter()\n\n const handleLogOut = React.useCallback(async () => {\n if (!navigatingToLoginRef.current) {\n navigatingToLoginRef.current = true\n await logOut()\n toast.success(t('authentication:loggedOutSuccessfully'))\n startRouteTransition(() => router.push(loginRoute))\n return\n }\n }, [logOut, loginRoute, router, startRouteTransition, t])\n\n useEffect(() => {\n if (isLoggedIn && !inactivity) {\n void handleLogOut()\n } else if (!inactivity && !navigatingToLoginRef.current) {\n navigatingToLoginRef.current = true\n startRouteTransition(() => router.push(loginRoute))\n }\n }, [handleLogOut, isLoggedIn, loginRoute, router, startRouteTransition, inactivity])\n\n if (!isLoggedIn && inactivity) {\n return (\n <div className={`${baseClass}__wrap`}>\n <h2>{t('authentication:loggedOutInactivity')}</h2>\n <Button buttonStyle=\"primary\" el=\"link\" size=\"medium\" url={loginRoute}>\n {t('authentication:logBackIn')}\n </Button>\n </div>\n )\n }\n\n return <LoadingOverlay animationDuration={'0ms'} loadingText={t('authentication:loggingOut')} />\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"LogoutClient.js","names":["c","_c","formatAdminURL","React","useEffect","toast","Button","LoadingOverlay","useAuth","useRouter","useRouteTransition","useTranslation","baseClass","LogoutClient","props","$","adminRoute","inactivity","redirect","logOut","user","startRouteTransition","id","isLoggedIn","Boolean","navigatingToLoginRef","useRef","t0","path","length","encodeURIComponent","loginRoute","useState","t","router","t1","current","push","handleLogOut","t2","t3","t4","_jsxs","className","children","_jsx","buttonStyle","el","size","url","animationDuration","loadingText"],"sources":["../../../src/views/Logout/LogoutClient.tsx"],"sourcesContent":["'use client'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { useEffect } from 'react'\nimport { toast } from 'sonner'\n\nimport { Button } from '../../elements/Button/index.js'\nimport { LoadingOverlay } from '../../elements/Loading/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useRouter } from '../../providers/RouterAdapter/index.js'\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.css'\n\nconst baseClass = 'logout'\n\n/**\n * This component should **just** be the inactivity route and do nothing with logging the user out.\n *\n * It currently handles too much, the auth provider should just log the user out and then\n * we could remove the useEffect in this file. So instead of the logout button\n * being an anchor link, it should be a button that calls `logOut` in the provider.\n *\n * This view is still useful if cookies attempt to refresh and fail, i.e. the user\n * is logged out due to inactivity.\n */\nexport const LogoutClient: React.FC<{\n adminRoute: string\n inactivity?: boolean\n redirect: string\n}> = (props) => {\n const { adminRoute, inactivity, redirect } = props\n\n const { logOut, user } = useAuth()\n\n const { startRouteTransition } = useRouteTransition()\n\n const isLoggedIn = React.useMemo(() => {\n return Boolean(user?.id)\n }, [user?.id])\n\n const navigatingToLoginRef = React.useRef(false)\n\n const [loginRoute] = React.useState(() =>\n formatAdminURL({\n adminRoute,\n path: `/login${\n inactivity && redirect && redirect.length > 0\n ? `?redirect=${encodeURIComponent(redirect)}`\n : ''\n }`,\n }),\n )\n\n const { t } = useTranslation()\n const router = useRouter()\n\n const handleLogOut = React.useCallback(async () => {\n if (!navigatingToLoginRef.current) {\n navigatingToLoginRef.current = true\n await logOut()\n toast(t('authentication:loggedOutSuccessfully'))\n startRouteTransition(() => router.push(loginRoute))\n return\n }\n }, [logOut, loginRoute, router, startRouteTransition, t])\n\n useEffect(() => {\n if (isLoggedIn && !inactivity) {\n void handleLogOut()\n } else if (!inactivity && !navigatingToLoginRef.current) {\n navigatingToLoginRef.current = true\n startRouteTransition(() => router.push(loginRoute))\n }\n }, [handleLogOut, isLoggedIn, loginRoute, router, startRouteTransition, inactivity])\n\n if (!isLoggedIn && inactivity) {\n return (\n <div className={`${baseClass}__wrap`}>\n <h2>{t('authentication:loggedOutInactivity')}</h2>\n <Button buttonStyle=\"primary\" el=\"link\" size=\"medium\" url={loginRoute}>\n {t('authentication:logBackIn')}\n </Button>\n </div>\n )\n }\n\n return <LoadingOverlay animationDuration={'0ms'} loadingText={t('authentication:loggingOut')} />\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ @layer payload-default {
2
+ .version-drawer .table {
3
+ width: 100%;
4
+ }
5
+ }
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import './index.scss';
2
+ import './index.css';
3
3
  export declare const baseClass = "version-drawer";
4
4
  export declare const formatVersionDrawerSlug: ({ depth, uuid, }: {
5
5
  depth: number;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/views/Version/SelectComparison/VersionDrawer/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAmE,MAAM,OAAO,CAAA;AAWvF,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,SAAS,mBAAmB,CAAA;AACzC,eAAO,MAAM,uBAAuB,GAAI,kBAGrC;IACD,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACb,WAAsC,CAAA;AAEvC,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC;IAC1C,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAkFA,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAcA,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,wCAI9B;IACD,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;;;;;;;;CAkDA,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/views/Version/SelectComparison/VersionDrawer/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAmE,MAAM,OAAO,CAAA;AAWvF,OAAO,aAAa,CAAA;AAEpB,eAAO,MAAM,SAAS,mBAAmB,CAAA;AACzC,eAAO,MAAM,uBAAuB,GAAI,kBAGrC;IACD,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACb,WAAsC,CAAA;AAEvC,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC;IAC1C,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAiFA,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAcA,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,wCAI9B;IACD,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;;;;;;;;CAkDA,CAAA"}
@@ -12,7 +12,7 @@ import { useEditDepth } from '../../../../providers/EditDepth/index.js';
12
12
  import { useSearchParams } from '../../../../providers/RouterAdapter/index.js';
13
13
  import { useServerFunctions } from '../../../../providers/ServerFunctions/index.js';
14
14
  import { useTranslation } from '../../../../providers/Translation/index.js';
15
- import './index.scss';
15
+ import './index.css';
16
16
  export const baseClass = 'version-drawer';
17
17
  export const formatVersionDrawerSlug = ({
18
18
  depth,
@@ -59,7 +59,6 @@ export const VersionDrawerContent = props => {
59
59
  redirectAfterDuplicate: false,
60
60
  searchParams: Object.fromEntries(searchParams.entries()),
61
61
  versions: {
62
- disableGutter: true,
63
62
  useVersionDrawerCreatedAtCell: true
64
63
  }
65
64
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","useCallback","useEffect","useId","useMemo","useRef","useState","toast","Drawer","LoadingOverlay","useModal","useDocumentInfo","useEditDepth","useSearchParams","useServerFunctions","useTranslation","baseClass","formatVersionDrawerSlug","depth","uuid","VersionDrawerContent","props","collectionSlug","docID","drawerSlug","globalSlug","isTrashed","closeModal","searchParams","prevSearchParams","renderDocument","DocumentView","setDocumentView","undefined","isLoading","setIsLoading","hasRenderedDocument","t","getDocumentView","fetchDocumentView","isGlobal","Boolean","entitySlug","result","paramsOverride","segments","String","filter","redirectAfterDelete","redirectAfterDuplicate","Object","fromEntries","entries","versions","disableGutter","useVersionDrawerCreatedAtCell","Document","error","message","current","_jsx","VersionDrawer","$","t0","className","slug","title","children","useVersionDrawer","drawerDepth","modalState","openModal","toggleModal","isOpen","setIsOpen","t1","t2","t3","t4","toggleDrawer","t5","closeDrawer","t6","openDrawer","t7","MemoizedDrawer","t8","isDrawerOpen"],"sources":["../../../../../src/views/Version/SelectComparison/VersionDrawer/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useCallback, useEffect, useId, useMemo, useRef, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { Drawer } from '../../../../elements/Drawer/index.js'\nimport { LoadingOverlay } from '../../../../elements/Loading/index.js'\nimport { useModal } from '../../../../elements/Modal/index.js'\nimport { useDocumentInfo } from '../../../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../../../providers/EditDepth/index.js'\nimport { useSearchParams } from '../../../../providers/RouterAdapter/index.js'\nimport { useServerFunctions } from '../../../../providers/ServerFunctions/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport './index.scss'\n\nexport const baseClass = 'version-drawer'\nexport const formatVersionDrawerSlug = ({\n depth,\n uuid,\n}: {\n depth: number\n uuid: string // supply when creating a new document and no id is available\n}) => `version-drawer_${depth}_${uuid}`\n\nexport const VersionDrawerContent: React.FC<{\n collectionSlug?: string\n docID?: number | string\n drawerSlug: string\n globalSlug?: string\n}> = (props) => {\n const { collectionSlug, docID, drawerSlug, globalSlug } = props\n const { isTrashed } = useDocumentInfo()\n const { closeModal } = useModal()\n const searchParams = useSearchParams()\n const prevSearchParams = useRef(searchParams)\n\n const { renderDocument } = useServerFunctions()\n\n const [DocumentView, setDocumentView] = useState<React.ReactNode>(undefined)\n const [isLoading, setIsLoading] = useState(true)\n const hasRenderedDocument = useRef(false)\n const { t } = useTranslation()\n\n const getDocumentView = useCallback(\n (docID?: number | string) => {\n const fetchDocumentView = async () => {\n setIsLoading(true)\n\n try {\n const isGlobal = Boolean(globalSlug)\n const entitySlug = collectionSlug ?? globalSlug\n\n const result = await renderDocument({\n collectionSlug: entitySlug,\n docID,\n drawerSlug,\n paramsOverride: {\n segments: [\n isGlobal ? 'globals' : 'collections',\n entitySlug,\n ...(isTrashed ? ['trash'] : []),\n isGlobal ? undefined : String(docID),\n 'versions',\n ].filter(Boolean),\n },\n redirectAfterDelete: false,\n redirectAfterDuplicate: false,\n searchParams: Object.fromEntries(searchParams.entries()),\n versions: {\n disableGutter: true,\n useVersionDrawerCreatedAtCell: true,\n },\n })\n\n if (result?.Document) {\n setDocumentView(result.Document)\n setIsLoading(false)\n }\n } catch (error) {\n toast.error(error?.message || t('error:unspecific'))\n closeModal(drawerSlug)\n }\n }\n\n void fetchDocumentView()\n },\n [\n closeModal,\n collectionSlug,\n drawerSlug,\n globalSlug,\n isTrashed,\n renderDocument,\n searchParams,\n t,\n ],\n )\n\n useEffect(() => {\n if (!hasRenderedDocument.current || prevSearchParams.current !== searchParams) {\n prevSearchParams.current = searchParams\n getDocumentView(docID)\n hasRenderedDocument.current = true\n }\n }, [docID, getDocumentView, searchParams])\n\n if (isLoading) {\n return <LoadingOverlay />\n }\n\n return DocumentView\n}\n\nexport const VersionDrawer: React.FC<{\n collectionSlug?: string\n docID?: number | string\n drawerSlug: string\n globalSlug?: string\n}> = (props) => {\n const { collectionSlug, docID, drawerSlug, globalSlug } = props\n const { t } = useTranslation()\n\n return (\n <Drawer className={baseClass} slug={drawerSlug} title={t('version:selectVersionToCompare')}>\n <VersionDrawerContent\n collectionSlug={collectionSlug}\n docID={docID}\n drawerSlug={drawerSlug}\n globalSlug={globalSlug}\n />\n </Drawer>\n )\n}\n\nexport const useVersionDrawer = ({\n collectionSlug,\n docID,\n globalSlug,\n}: {\n collectionSlug?: string\n docID?: number | string\n globalSlug?: string\n}) => {\n const drawerDepth = useEditDepth()\n const uuid = useId()\n const { closeModal, modalState, openModal, toggleModal } = useModal()\n const [isOpen, setIsOpen] = useState(false)\n\n const drawerSlug = formatVersionDrawerSlug({\n depth: drawerDepth,\n uuid,\n })\n\n useEffect(() => {\n setIsOpen(Boolean(modalState[drawerSlug]?.isOpen))\n }, [modalState, drawerSlug])\n\n const toggleDrawer = useCallback(() => {\n toggleModal(drawerSlug)\n }, [toggleModal, drawerSlug])\n\n const closeDrawer = useCallback(() => {\n closeModal(drawerSlug)\n }, [drawerSlug, closeModal])\n\n const openDrawer = useCallback(() => {\n openModal(drawerSlug)\n }, [drawerSlug, openModal])\n\n const MemoizedDrawer = useMemo(() => {\n return () => (\n <VersionDrawer\n collectionSlug={collectionSlug}\n docID={docID}\n drawerSlug={drawerSlug}\n globalSlug={globalSlug}\n />\n )\n }, [collectionSlug, docID, drawerSlug, globalSlug])\n\n return useMemo(\n () => ({\n closeDrawer,\n Drawer: MemoizedDrawer,\n drawerDepth,\n drawerSlug,\n isDrawerOpen: isOpen,\n openDrawer,\n toggleDrawer,\n }),\n [MemoizedDrawer, closeDrawer, drawerDepth, drawerSlug, isOpen, openDrawer, toggleDrawer],\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","useCallback","useEffect","useId","useMemo","useRef","useState","toast","Drawer","LoadingOverlay","useModal","useDocumentInfo","useEditDepth","useSearchParams","useServerFunctions","useTranslation","baseClass","formatVersionDrawerSlug","depth","uuid","VersionDrawerContent","props","collectionSlug","docID","drawerSlug","globalSlug","isTrashed","closeModal","searchParams","prevSearchParams","renderDocument","DocumentView","setDocumentView","undefined","isLoading","setIsLoading","hasRenderedDocument","t","getDocumentView","fetchDocumentView","isGlobal","Boolean","entitySlug","result","paramsOverride","segments","String","filter","redirectAfterDelete","redirectAfterDuplicate","Object","fromEntries","entries","versions","useVersionDrawerCreatedAtCell","Document","error","message","current","_jsx","VersionDrawer","$","t0","className","slug","title","children","useVersionDrawer","drawerDepth","modalState","openModal","toggleModal","isOpen","setIsOpen","t1","t2","t3","t4","toggleDrawer","t5","closeDrawer","t6","openDrawer","t7","MemoizedDrawer","t8","isDrawerOpen"],"sources":["../../../../../src/views/Version/SelectComparison/VersionDrawer/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useCallback, useEffect, useId, useMemo, useRef, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { Drawer } from '../../../../elements/Drawer/index.js'\nimport { LoadingOverlay } from '../../../../elements/Loading/index.js'\nimport { useModal } from '../../../../elements/Modal/index.js'\nimport { useDocumentInfo } from '../../../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../../../providers/EditDepth/index.js'\nimport { useSearchParams } from '../../../../providers/RouterAdapter/index.js'\nimport { useServerFunctions } from '../../../../providers/ServerFunctions/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport './index.css'\n\nexport const baseClass = 'version-drawer'\nexport const formatVersionDrawerSlug = ({\n depth,\n uuid,\n}: {\n depth: number\n uuid: string // supply when creating a new document and no id is available\n}) => `version-drawer_${depth}_${uuid}`\n\nexport const VersionDrawerContent: React.FC<{\n collectionSlug?: string\n docID?: number | string\n drawerSlug: string\n globalSlug?: string\n}> = (props) => {\n const { collectionSlug, docID, drawerSlug, globalSlug } = props\n const { isTrashed } = useDocumentInfo()\n const { closeModal } = useModal()\n const searchParams = useSearchParams()\n const prevSearchParams = useRef(searchParams)\n\n const { renderDocument } = useServerFunctions()\n\n const [DocumentView, setDocumentView] = useState<React.ReactNode>(undefined)\n const [isLoading, setIsLoading] = useState(true)\n const hasRenderedDocument = useRef(false)\n const { t } = useTranslation()\n\n const getDocumentView = useCallback(\n (docID?: number | string) => {\n const fetchDocumentView = async () => {\n setIsLoading(true)\n\n try {\n const isGlobal = Boolean(globalSlug)\n const entitySlug = collectionSlug ?? globalSlug\n\n const result = await renderDocument({\n collectionSlug: entitySlug,\n docID,\n drawerSlug,\n paramsOverride: {\n segments: [\n isGlobal ? 'globals' : 'collections',\n entitySlug,\n ...(isTrashed ? ['trash'] : []),\n isGlobal ? undefined : String(docID),\n 'versions',\n ].filter(Boolean),\n },\n redirectAfterDelete: false,\n redirectAfterDuplicate: false,\n searchParams: Object.fromEntries(searchParams.entries()),\n versions: {\n useVersionDrawerCreatedAtCell: true,\n },\n })\n\n if (result?.Document) {\n setDocumentView(result.Document)\n setIsLoading(false)\n }\n } catch (error) {\n toast.error(error?.message || t('error:unspecific'))\n closeModal(drawerSlug)\n }\n }\n\n void fetchDocumentView()\n },\n [\n closeModal,\n collectionSlug,\n drawerSlug,\n globalSlug,\n isTrashed,\n renderDocument,\n searchParams,\n t,\n ],\n )\n\n useEffect(() => {\n if (!hasRenderedDocument.current || prevSearchParams.current !== searchParams) {\n prevSearchParams.current = searchParams\n getDocumentView(docID)\n hasRenderedDocument.current = true\n }\n }, [docID, getDocumentView, searchParams])\n\n if (isLoading) {\n return <LoadingOverlay />\n }\n\n return DocumentView\n}\n\nexport const VersionDrawer: React.FC<{\n collectionSlug?: string\n docID?: number | string\n drawerSlug: string\n globalSlug?: string\n}> = (props) => {\n const { collectionSlug, docID, drawerSlug, globalSlug } = props\n const { t } = useTranslation()\n\n return (\n <Drawer className={baseClass} slug={drawerSlug} title={t('version:selectVersionToCompare')}>\n <VersionDrawerContent\n collectionSlug={collectionSlug}\n docID={docID}\n drawerSlug={drawerSlug}\n globalSlug={globalSlug}\n />\n </Drawer>\n )\n}\n\nexport const useVersionDrawer = ({\n collectionSlug,\n docID,\n globalSlug,\n}: {\n collectionSlug?: string\n docID?: number | string\n globalSlug?: string\n}) => {\n const drawerDepth = useEditDepth()\n const uuid = useId()\n const { closeModal, modalState, openModal, toggleModal } = useModal()\n const [isOpen, setIsOpen] = useState(false)\n\n const drawerSlug = formatVersionDrawerSlug({\n depth: drawerDepth,\n uuid,\n })\n\n useEffect(() => {\n setIsOpen(Boolean(modalState[drawerSlug]?.isOpen))\n }, [modalState, drawerSlug])\n\n const toggleDrawer = useCallback(() => {\n toggleModal(drawerSlug)\n }, [toggleModal, drawerSlug])\n\n const closeDrawer = useCallback(() => {\n closeModal(drawerSlug)\n }, [drawerSlug, closeModal])\n\n const openDrawer = useCallback(() => {\n openModal(drawerSlug)\n }, [drawerSlug, openModal])\n\n const MemoizedDrawer = useMemo(() => {\n return () => (\n <VersionDrawer\n collectionSlug={collectionSlug}\n docID={docID}\n drawerSlug={drawerSlug}\n globalSlug={globalSlug}\n />\n )\n }, [collectionSlug, docID, drawerSlug, globalSlug])\n\n return useMemo(\n () => ({\n closeDrawer,\n Drawer: MemoizedDrawer,\n drawerDepth,\n drawerSlug,\n isDrawerOpen: isOpen,\n openDrawer,\n toggleDrawer,\n }),\n [MemoizedDrawer, closeDrawer, drawerDepth, drawerSlug, isOpen, openDrawer, toggleDrawer],\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ @layer payload-default {
2
+ .compare-version-moreVersions {
3
+ color: var(--color-text-secondary);
4
+ }
5
+ }
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
2
  import type { Props } from './types.js';
3
- import './index.scss';
3
+ import './index.css';
4
4
  export declare const SelectComparison: React.FC<Props>;
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/SelectComparison/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAqC,MAAM,OAAO,CAAA;AAGzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAKvC,OAAO,cAAc,CAAA;AAKrB,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAoD3C,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/SelectComparison/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAqC,MAAM,OAAO,CAAA;AAGzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAKvC,OAAO,aAAa,CAAA;AAKpB,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAoD3C,CAAA"}
@@ -5,7 +5,7 @@ import React, { memo, useCallback, useMemo } from 'react';
5
5
  import { ReactSelect } from '../../../elements/ReactSelect/index.js';
6
6
  import { fieldBaseClass } from '../../../fields/shared/index.js';
7
7
  import { useTranslation } from '../../../providers/Translation/index.js';
8
- import './index.scss';
8
+ import './index.css';
9
9
  import { useVersionDrawer } from './VersionDrawer/index.js';
10
10
  const baseClass = 'compare-version';
11
11
  export const SelectComparison = /*#__PURE__*/memo(props => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","memo","useCallback","useMemo","ReactSelect","fieldBaseClass","useTranslation","useVersionDrawer","baseClass","SelectComparison","props","collectionSlug","docID","globalSlug","onChange","onChangeFromProps","versionFromID","versionFromOptions","t","Drawer","openDrawer","options","label","_jsx","className","value","currentOption","find","option","val","_jsxs","filter","Boolean","join","isClearable","isSearchable","placeholder"],"sources":["../../../../src/views/Version/SelectComparison/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { memo, useCallback, useMemo } from 'react'\n\nimport type { CompareOption } from '../Default/types.js'\nimport type { Props } from './types.js'\n\nimport { ReactSelect } from '../../../elements/ReactSelect/index.js'\nimport { fieldBaseClass } from '../../../fields/shared/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport './index.scss'\nimport { useVersionDrawer } from './VersionDrawer/index.js'\n\nconst baseClass = 'compare-version'\n\nexport const SelectComparison: React.FC<Props> = memo((props) => {\n const {\n collectionSlug,\n docID,\n globalSlug,\n onChange: onChangeFromProps,\n versionFromID,\n versionFromOptions,\n } = props\n const { t } = useTranslation()\n\n const { Drawer, openDrawer } = useVersionDrawer({ collectionSlug, docID, globalSlug })\n\n const options = useMemo(() => {\n return [\n ...versionFromOptions,\n {\n label: <span className={`${baseClass}-moreVersions`}>{t('version:moreVersions')}</span>,\n value: 'more',\n },\n ]\n }, [t, versionFromOptions])\n\n const currentOption = useMemo(\n () => versionFromOptions.find((option) => option.value === versionFromID),\n [versionFromOptions, versionFromID],\n )\n\n const onChange = useCallback(\n (val: CompareOption) => {\n if (val.value === 'more') {\n openDrawer()\n return\n }\n onChangeFromProps(val)\n },\n [onChangeFromProps, openDrawer],\n )\n\n return (\n <div className={[fieldBaseClass, baseClass].filter(Boolean).join(' ')}>\n <ReactSelect\n isClearable={false}\n isSearchable={false}\n onChange={onChange}\n options={options}\n placeholder={t('version:selectVersionToCompare')}\n value={currentOption}\n />\n <Drawer />\n </div>\n )\n})\n"],"mappings":"AAAA;;;AAEA,OAAOA,KAAA,IAASC,IAAI,EAAEC,WAAW,EAAEC,OAAO,QAAQ;AAKlD,SAASC,WAAW,QAAQ;AAC5B,SAASC,cAAc,QAAQ;AAC/B,SAASC,cAAc,QAAQ;AAC/B,OAAO;AACP,SAASC,gBAAgB,QAAQ;AAEjC,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,gBAAA,gBAAoCR,IAAA,CAAMS,KAAA;EACrD,MAAM;IACJC,cAAc;IACdC,KAAK;IACLC,UAAU;IACVC,QAAA,EAAUC,iBAAiB;IAC3BC,aAAa;IACbC;EAAkB,CACnB,GAAGP,KAAA;EACJ,MAAM;IAAEQ;EAAC,CAAE,GAAGZ,cAAA;EAEd,MAAM;IAAEa,MAAM;IAAEC;EAAU,CAAE,GAAGb,gBAAA,CAAiB;IAAEI,cAAA;IAAgBC,KAAA;IAAOC;EAAW;EAEpF,MAAMQ,OAAA,GAAUlB,OAAA,CAAQ;IACtB,OAAO,C,GACFc,kBAAA,EACH;MACEK,KAAA,eAAOC,IAAA,CAAC;QAAKC,SAAA,EAAW,GAAGhB,SAAA,eAAwB;kBAAGU,CAAA,CAAE;;MACxDO,KAAA,EAAO;IACT,EACD;EACH,GAAG,CAACP,CAAA,EAAGD,kBAAA,CAAmB;EAE1B,MAAMS,aAAA,GAAgBvB,OAAA,CACpB,MAAMc,kBAAA,CAAmBU,IAAI,CAAEC,MAAA,IAAWA,MAAA,CAAOH,KAAK,KAAKT,aAAA,GAC3D,CAACC,kBAAA,EAAoBD,aAAA,CAAc;EAGrC,MAAMF,QAAA,GAAWZ,WAAA,CACd2B,GAAA;IACC,IAAIA,GAAA,CAAIJ,KAAK,KAAK,QAAQ;MACxBL,UAAA;MACA;IACF;IACAL,iBAAA,CAAkBc,GAAA;EACpB,GACA,CAACd,iBAAA,EAAmBK,UAAA,CAAW;EAGjC,oBACEU,KAAA,CAAC;IAAIN,SAAA,EAAW,CAACnB,cAAA,EAAgBG,SAAA,CAAU,CAACuB,MAAM,CAACC,OAAA,EAASC,IAAI,CAAC;4BAC/DV,IAAA,CAACnB,WAAA;MACC8B,WAAA,EAAa;MACbC,YAAA,EAAc;MACdrB,QAAA,EAAUA,QAAA;MACVO,OAAA,EAASA,OAAA;MACTe,WAAA,EAAalB,CAAA,CAAE;MACfO,KAAA,EAAOC;qBAETH,IAAA,CAACJ,MAAA;;AAGP","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","memo","useCallback","useMemo","ReactSelect","fieldBaseClass","useTranslation","useVersionDrawer","baseClass","SelectComparison","props","collectionSlug","docID","globalSlug","onChange","onChangeFromProps","versionFromID","versionFromOptions","t","Drawer","openDrawer","options","label","_jsx","className","value","currentOption","find","option","val","_jsxs","filter","Boolean","join","isClearable","isSearchable","placeholder"],"sources":["../../../../src/views/Version/SelectComparison/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { memo, useCallback, useMemo } from 'react'\n\nimport type { CompareOption } from '../Default/types.js'\nimport type { Props } from './types.js'\n\nimport { ReactSelect } from '../../../elements/ReactSelect/index.js'\nimport { fieldBaseClass } from '../../../fields/shared/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport './index.css'\nimport { useVersionDrawer } from './VersionDrawer/index.js'\n\nconst baseClass = 'compare-version'\n\nexport const SelectComparison: React.FC<Props> = memo((props) => {\n const {\n collectionSlug,\n docID,\n globalSlug,\n onChange: onChangeFromProps,\n versionFromID,\n versionFromOptions,\n } = props\n const { t } = useTranslation()\n\n const { Drawer, openDrawer } = useVersionDrawer({ collectionSlug, docID, globalSlug })\n\n const options = useMemo(() => {\n return [\n ...versionFromOptions,\n {\n label: <span className={`${baseClass}-moreVersions`}>{t('version:moreVersions')}</span>,\n value: 'more',\n },\n ]\n }, [t, versionFromOptions])\n\n const currentOption = useMemo(\n () => versionFromOptions.find((option) => option.value === versionFromID),\n [versionFromOptions, versionFromID],\n )\n\n const onChange = useCallback(\n (val: CompareOption) => {\n if (val.value === 'more') {\n openDrawer()\n return\n }\n onChangeFromProps(val)\n },\n [onChangeFromProps, openDrawer],\n )\n\n return (\n <div className={[fieldBaseClass, baseClass].filter(Boolean).join(' ')}>\n <ReactSelect\n isClearable={false}\n isSearchable={false}\n onChange={onChange}\n options={options}\n placeholder={t('version:selectVersionToCompare')}\n value={currentOption}\n />\n <Drawer />\n </div>\n )\n})\n"],"mappings":"AAAA;;;AAEA,OAAOA,KAAA,IAASC,IAAI,EAAEC,WAAW,EAAEC,OAAO,QAAQ;AAKlD,SAASC,WAAW,QAAQ;AAC5B,SAASC,cAAc,QAAQ;AAC/B,SAASC,cAAc,QAAQ;AAC/B,OAAO;AACP,SAASC,gBAAgB,QAAQ;AAEjC,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,gBAAA,gBAAoCR,IAAA,CAAMS,KAAA;EACrD,MAAM;IACJC,cAAc;IACdC,KAAK;IACLC,UAAU;IACVC,QAAA,EAAUC,iBAAiB;IAC3BC,aAAa;IACbC;EAAkB,CACnB,GAAGP,KAAA;EACJ,MAAM;IAAEQ;EAAC,CAAE,GAAGZ,cAAA;EAEd,MAAM;IAAEa,MAAM;IAAEC;EAAU,CAAE,GAAGb,gBAAA,CAAiB;IAAEI,cAAA;IAAgBC,KAAA;IAAOC;EAAW;EAEpF,MAAMQ,OAAA,GAAUlB,OAAA,CAAQ;IACtB,OAAO,C,GACFc,kBAAA,EACH;MACEK,KAAA,eAAOC,IAAA,CAAC;QAAKC,SAAA,EAAW,GAAGhB,SAAA,eAAwB;kBAAGU,CAAA,CAAE;;MACxDO,KAAA,EAAO;IACT,EACD;EACH,GAAG,CAACP,CAAA,EAAGD,kBAAA,CAAmB;EAE1B,MAAMS,aAAA,GAAgBvB,OAAA,CACpB,MAAMc,kBAAA,CAAmBU,IAAI,CAAEC,MAAA,IAAWA,MAAA,CAAOH,KAAK,KAAKT,aAAA,GAC3D,CAACC,kBAAA,EAAoBD,aAAA,CAAc;EAGrC,MAAMF,QAAA,GAAWZ,WAAA,CACd2B,GAAA;IACC,IAAIA,GAAA,CAAIJ,KAAK,KAAK,QAAQ;MACxBL,UAAA;MACA;IACF;IACAL,iBAAA,CAAkBc,GAAA;EACpB,GACA,CAACd,iBAAA,EAAmBK,UAAA,CAAW;EAGjC,oBACEU,KAAA,CAAC;IAAIN,SAAA,EAAW,CAACnB,cAAA,EAAgBG,SAAA,CAAU,CAACuB,MAAM,CAACC,OAAA,EAASC,IAAI,CAAC;4BAC/DV,IAAA,CAACnB,WAAA;MACC8B,WAAA,EAAa;MACbC,YAAA,EAAc;MACdrB,QAAA,EAAUA,QAAA;MACVO,OAAA,EAASA,OAAA;MACTe,WAAA,EAAalB,CAAA,CAAE;MACfO,KAAA,EAAOC;qBAETH,IAAA,CAACJ,MAAA;;AAGP","ignoreList":[]}
@@ -49,12 +49,12 @@
49
49
  padding: 0;
50
50
  }
51
51
 
52
- .versions .table td.cell--linked > a {
52
+ .versions .table td.cell--linked > :is(a, button) {
53
53
  padding-inline-start: var(--gutter-h);
54
54
  width: 100%;
55
55
  }
56
56
 
57
- .versions .table td.cell--linked > a {
57
+ .versions .table td.cell--linked > :is(a, button) {
58
58
  font-weight: var(--text-body-medium-strong-font-weight);
59
59
  text-decoration-line: underline;
60
60
  text-decoration-style: solid;
@@ -1,4 +1,4 @@
1
- import { type DocumentViewServerProps } from 'payload';
1
+ import type { DocumentViewServerProps } from 'payload';
2
2
  import React from 'react';
3
3
  import './index.css';
4
4
  export declare function VersionsView(props: DocumentViewServerProps): Promise<React.JSX.Element>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,uBAAuB,EAAkC,MAAM,SAAS,CAAA;AAEtF,OAAO,KAAK,MAAM,OAAO,CAAA;AAYzB,OAAO,aAAa,CAAA;AAIpB,wBAAsB,YAAY,CAAC,KAAK,EAAE,uBAAuB,8BA8LhE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAiB,MAAM,SAAS,CAAA;AAGrE,OAAO,KAAK,MAAM,OAAO,CAAA;AAYzB,OAAO,aAAa,CAAA;AAIpB,wBAAsB,YAAY,CAAC,KAAK,EAAE,uBAAuB,8BA6JhE"}
@@ -33,7 +33,6 @@ export async function VersionsView(props) {
33
33
  },
34
34
  versions: {
35
35
  CreatedAtCellOverride,
36
- disableGutter = false,
37
36
  useVersionDrawerCreatedAtCell = false
38
37
  } = {}
39
38
  } = props;
@@ -42,21 +41,10 @@ export async function VersionsView(props) {
42
41
  const globalSlug = globalConfig?.slug;
43
42
  const isTrashed = segments[2] === 'trash';
44
43
  const {
45
- localization,
46
44
  routes: {
47
45
  api: apiRoute
48
46
  }
49
47
  } = config;
50
- const whereQuery = {
51
- and: []
52
- };
53
- if (localization && draftsEnabled) {
54
- whereQuery.and.push({
55
- snapshot: {
56
- not_equals: true
57
- }
58
- });
59
- }
60
48
  const defaultLimit = collectionSlug ? collectionConfig?.admin?.pagination?.defaultLimit : 10;
61
49
  const limitToUse = isNumber(limit) ? Number(limit) : defaultLimit;
62
50
  const versionsData = await fetchVersions({
@@ -70,8 +58,7 @@ export async function VersionsView(props) {
70
58
  parentID: id,
71
59
  req,
72
60
  sort: sort,
73
- user,
74
- where: whereQuery
61
+ user
75
62
  });
76
63
  if (!versionsData) {
77
64
  return req.server.notFound();
@@ -93,12 +80,7 @@ export async function VersionsView(props) {
93
80
  }
94
81
  },
95
82
  status: 'published',
96
- user,
97
- where: localization ? {
98
- snapshot: {
99
- not_equals: true
100
- }
101
- } : undefined
83
+ user
102
84
  }) : Promise.resolve(null), draftsEnabled ? fetchLatestVersion({
103
85
  collectionSlug,
104
86
  depth: 0,
@@ -116,12 +98,7 @@ export async function VersionsView(props) {
116
98
  }
117
99
  },
118
100
  status: 'draft',
119
- user,
120
- where: localization ? {
121
- snapshot: {
122
- not_equals: true
123
- }
124
- } : undefined
101
+ user
125
102
  }) : Promise.resolve(null)]);
126
103
  const fetchURL = formatAdminURL({
127
104
  apiRoute,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["formatAdminURL","hasDraftsEnabled","isNumber","React","ListQueryProvider","SetDocumentStepNav","VersionDrawerCreatedAtCell","VersionsViewClient","buildVersionColumns","fetchLatestVersion","fetchVersions","baseClass","VersionsView","props","hasPublishedDoc","initPageResult","collectionConfig","docID","id","globalConfig","req","i18n","payload","config","t","user","routeSegments","segments","searchParams","limit","page","sort","versions","CreatedAtCellOverride","disableGutter","useVersionDrawerCreatedAtCell","draftsEnabled","collectionSlug","slug","globalSlug","isTrashed","localization","routes","api","apiRoute","whereQuery","and","push","snapshot","not_equals","defaultLimit","admin","pagination","limitToUse","Number","versionsData","depth","locale","overrideAccess","parseInt","toString","undefined","parentID","where","server","notFound","currentlyPublishedVersion","latestDraftVersion","Promise","all","select","updatedAt","version","_status","status","resolve","fetchURL","path","resolvedCreatedAtCellOverride","columns","docs","pluralLabel","labels","plural","label","_jsxs","Fragment","_jsx","useAsTitle","view","className","data","modifySearchParams","orderableFieldName","orderable","query","paginationLimits","limits"],"sources":["../../../src/views/Versions/index.tsx"],"sourcesContent":["import { type DocumentViewServerProps, type PaginatedDocs, type Where } from 'payload'\nimport { formatAdminURL, hasDraftsEnabled, isNumber } from 'payload/shared'\nimport React from 'react'\n\n/* eslint-disable payload/no-imports-from-exports-dir -- Server component must reference exports/client bundle for proper client boundary in prod builds */\nimport {\n ListQueryProvider,\n SetDocumentStepNav,\n VersionDrawerCreatedAtCell,\n VersionsViewClient,\n} from '../../exports/client/index.js'\n/* eslint-enable payload/no-imports-from-exports-dir */\nimport { buildVersionColumns } from './buildColumns.js'\nimport { fetchLatestVersion, fetchVersions } from './fetchVersions.js'\nimport './index.css'\n\nconst baseClass = 'versions'\n\nexport async function VersionsView(props: DocumentViewServerProps) {\n const {\n hasPublishedDoc,\n initPageResult: {\n collectionConfig,\n docID: id,\n globalConfig,\n req,\n req: {\n i18n,\n payload: { config },\n t,\n user,\n },\n },\n routeSegments: segments,\n searchParams: { limit, page, sort },\n versions: {\n CreatedAtCellOverride,\n disableGutter = false,\n useVersionDrawerCreatedAtCell = false,\n } = {},\n } = props\n\n const draftsEnabled = hasDraftsEnabled(collectionConfig || globalConfig)\n\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n\n const isTrashed = segments[2] === 'trash'\n\n const {\n localization,\n routes: { api: apiRoute },\n } = config\n\n const whereQuery: {\n and: Array<{ parent?: { equals: number | string }; snapshot?: { not_equals: boolean } }>\n } & Where = {\n and: [],\n }\n if (localization && draftsEnabled) {\n whereQuery.and.push({\n snapshot: {\n not_equals: true,\n },\n })\n }\n\n const defaultLimit = collectionSlug ? collectionConfig?.admin?.pagination?.defaultLimit : 10\n\n const limitToUse = isNumber(limit) ? Number(limit) : defaultLimit\n\n const versionsData: PaginatedDocs = await fetchVersions({\n collectionSlug,\n depth: 0,\n globalSlug,\n limit: limitToUse,\n locale: req.locale,\n overrideAccess: false,\n page: page ? parseInt(page.toString(), 10) : undefined,\n parentID: id,\n req,\n sort: sort as string,\n user,\n where: whereQuery,\n })\n\n if (!versionsData) {\n return req.server.notFound()\n }\n\n const [currentlyPublishedVersion, latestDraftVersion] = await Promise.all([\n hasPublishedDoc\n ? fetchLatestVersion({\n collectionSlug,\n depth: 0,\n globalSlug,\n locale: req.locale,\n overrideAccess: false,\n parentID: id,\n req,\n select: {\n id: true,\n updatedAt: true,\n version: {\n _status: true,\n updatedAt: true,\n },\n },\n status: 'published',\n user,\n where: localization\n ? {\n snapshot: {\n not_equals: true,\n },\n }\n : undefined,\n })\n : Promise.resolve(null),\n draftsEnabled\n ? fetchLatestVersion({\n collectionSlug,\n depth: 0,\n globalSlug,\n locale: req.locale,\n overrideAccess: false,\n parentID: id,\n req,\n select: {\n id: true,\n updatedAt: true,\n version: {\n _status: true,\n updatedAt: true,\n },\n },\n status: 'draft',\n user,\n where: localization\n ? {\n snapshot: {\n not_equals: true,\n },\n }\n : undefined,\n })\n : Promise.resolve(null),\n ])\n\n const fetchURL = formatAdminURL({\n apiRoute,\n path: collectionSlug ? `/${collectionSlug}/versions` : `/${globalSlug}/versions`,\n })\n\n const resolvedCreatedAtCellOverride =\n CreatedAtCellOverride ??\n (useVersionDrawerCreatedAtCell ? VersionDrawerCreatedAtCell : undefined)\n\n const columns = buildVersionColumns({\n collectionConfig,\n CreatedAtCellOverride: resolvedCreatedAtCellOverride,\n currentlyPublishedVersion,\n docID: id,\n docs: versionsData?.docs,\n globalConfig,\n i18n,\n isTrashed,\n latestDraftVersion,\n })\n\n const pluralLabel =\n typeof collectionConfig?.labels?.plural === 'function'\n ? collectionConfig.labels.plural({ i18n, t })\n : (collectionConfig?.labels?.plural ?? globalConfig?.label)\n\n return (\n <React.Fragment>\n <SetDocumentStepNav\n collectionSlug={collectionSlug}\n globalSlug={globalSlug}\n id={id}\n isTrashed={isTrashed}\n pluralLabel={pluralLabel}\n useAsTitle={collectionConfig?.admin?.useAsTitle || globalSlug}\n view={i18n.t('version:versions')}\n />\n <main className={baseClass}>\n <div className={`${baseClass}__wrap`}>\n <ListQueryProvider\n data={versionsData}\n modifySearchParams\n orderableFieldName={collectionConfig?.orderable === true ? '_order' : undefined}\n query={{\n limit: limitToUse,\n sort: sort as string,\n }}\n >\n <VersionsViewClient\n baseClass={baseClass}\n columns={columns}\n fetchURL={fetchURL}\n paginationLimits={collectionConfig?.admin?.pagination?.limits}\n />\n </ListQueryProvider>\n </div>\n </main>\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["formatAdminURL","hasDraftsEnabled","isNumber","React","ListQueryProvider","SetDocumentStepNav","VersionDrawerCreatedAtCell","VersionsViewClient","buildVersionColumns","fetchLatestVersion","fetchVersions","baseClass","VersionsView","props","hasPublishedDoc","initPageResult","collectionConfig","docID","id","globalConfig","req","i18n","payload","config","t","user","routeSegments","segments","searchParams","limit","page","sort","versions","CreatedAtCellOverride","useVersionDrawerCreatedAtCell","draftsEnabled","collectionSlug","slug","globalSlug","isTrashed","routes","api","apiRoute","defaultLimit","admin","pagination","limitToUse","Number","versionsData","depth","locale","overrideAccess","parseInt","toString","undefined","parentID","server","notFound","currentlyPublishedVersion","latestDraftVersion","Promise","all","select","updatedAt","version","_status","status","resolve","fetchURL","path","resolvedCreatedAtCellOverride","columns","docs","pluralLabel","labels","plural","label","_jsxs","Fragment","_jsx","useAsTitle","view","className","data","modifySearchParams","orderableFieldName","orderable","query","paginationLimits","limits"],"sources":["../../../src/views/Versions/index.tsx"],"sourcesContent":["import type { DocumentViewServerProps, PaginatedDocs } from 'payload'\n\nimport { formatAdminURL, hasDraftsEnabled, isNumber } from 'payload/shared'\nimport React from 'react'\n\n/* eslint-disable payload/no-imports-from-exports-dir -- Server component must reference exports/client bundle for proper client boundary in prod builds */\nimport {\n ListQueryProvider,\n SetDocumentStepNav,\n VersionDrawerCreatedAtCell,\n VersionsViewClient,\n} from '../../exports/client/index.js'\n/* eslint-enable payload/no-imports-from-exports-dir */\nimport { buildVersionColumns } from './buildColumns.js'\nimport { fetchLatestVersion, fetchVersions } from './fetchVersions.js'\nimport './index.css'\n\nconst baseClass = 'versions'\n\nexport async function VersionsView(props: DocumentViewServerProps) {\n const {\n hasPublishedDoc,\n initPageResult: {\n collectionConfig,\n docID: id,\n globalConfig,\n req,\n req: {\n i18n,\n payload: { config },\n t,\n user,\n },\n },\n routeSegments: segments,\n searchParams: { limit, page, sort },\n versions: { CreatedAtCellOverride, useVersionDrawerCreatedAtCell = false } = {},\n } = props\n\n const draftsEnabled = hasDraftsEnabled(collectionConfig || globalConfig)\n\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n\n const isTrashed = segments[2] === 'trash'\n\n const {\n routes: { api: apiRoute },\n } = config\n\n const defaultLimit = collectionSlug ? collectionConfig?.admin?.pagination?.defaultLimit : 10\n\n const limitToUse = isNumber(limit) ? Number(limit) : defaultLimit\n\n const versionsData: PaginatedDocs = await fetchVersions({\n collectionSlug,\n depth: 0,\n globalSlug,\n limit: limitToUse,\n locale: req.locale,\n overrideAccess: false,\n page: page ? parseInt(page.toString(), 10) : undefined,\n parentID: id,\n req,\n sort: sort as string,\n user,\n })\n\n if (!versionsData) {\n return req.server.notFound()\n }\n\n const [currentlyPublishedVersion, latestDraftVersion] = await Promise.all([\n hasPublishedDoc\n ? fetchLatestVersion({\n collectionSlug,\n depth: 0,\n globalSlug,\n locale: req.locale,\n overrideAccess: false,\n parentID: id,\n req,\n select: {\n id: true,\n updatedAt: true,\n version: {\n _status: true,\n updatedAt: true,\n },\n },\n status: 'published',\n user,\n })\n : Promise.resolve(null),\n draftsEnabled\n ? fetchLatestVersion({\n collectionSlug,\n depth: 0,\n globalSlug,\n locale: req.locale,\n overrideAccess: false,\n parentID: id,\n req,\n select: {\n id: true,\n updatedAt: true,\n version: {\n _status: true,\n updatedAt: true,\n },\n },\n status: 'draft',\n user,\n })\n : Promise.resolve(null),\n ])\n\n const fetchURL = formatAdminURL({\n apiRoute,\n path: collectionSlug ? `/${collectionSlug}/versions` : `/${globalSlug}/versions`,\n })\n\n const resolvedCreatedAtCellOverride =\n CreatedAtCellOverride ??\n (useVersionDrawerCreatedAtCell ? VersionDrawerCreatedAtCell : undefined)\n\n const columns = buildVersionColumns({\n collectionConfig,\n CreatedAtCellOverride: resolvedCreatedAtCellOverride,\n currentlyPublishedVersion,\n docID: id,\n docs: versionsData?.docs,\n globalConfig,\n i18n,\n isTrashed,\n latestDraftVersion,\n })\n\n const pluralLabel =\n typeof collectionConfig?.labels?.plural === 'function'\n ? collectionConfig.labels.plural({ i18n, t })\n : (collectionConfig?.labels?.plural ?? globalConfig?.label)\n\n return (\n <React.Fragment>\n <SetDocumentStepNav\n collectionSlug={collectionSlug}\n globalSlug={globalSlug}\n id={id}\n isTrashed={isTrashed}\n pluralLabel={pluralLabel}\n useAsTitle={collectionConfig?.admin?.useAsTitle || globalSlug}\n view={i18n.t('version:versions')}\n />\n <main className={baseClass}>\n <div className={`${baseClass}__wrap`}>\n <ListQueryProvider\n data={versionsData}\n modifySearchParams\n orderableFieldName={collectionConfig?.orderable === true ? '_order' : undefined}\n query={{\n limit: limitToUse,\n sort: sort as string,\n }}\n >\n <VersionsViewClient\n baseClass={baseClass}\n columns={columns}\n fetchURL={fetchURL}\n paginationLimits={collectionConfig?.admin?.pagination?.limits}\n />\n </ListQueryProvider>\n </div>\n </main>\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}