@payloadcms/next 3.0.0-beta.77 → 3.0.0-beta.79

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 (261) hide show
  1. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts +3 -1
  2. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts.map +1 -1
  3. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +16 -3
  4. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  5. package/dist/elements/DocumentHeader/Tabs/getCustomViews.js +2 -2
  6. package/dist/elements/DocumentHeader/Tabs/getCustomViews.js.map +1 -1
  7. package/dist/elements/DocumentHeader/Tabs/getViewConfig.js +2 -2
  8. package/dist/elements/DocumentHeader/Tabs/getViewConfig.js.map +1 -1
  9. package/dist/elements/DocumentHeader/Tabs/index.d.ts +2 -2
  10. package/dist/elements/DocumentHeader/Tabs/index.d.ts.map +1 -1
  11. package/dist/elements/DocumentHeader/Tabs/index.js +27 -17
  12. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  13. package/dist/elements/DocumentHeader/Tabs/index.scss +0 -1
  14. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts +2 -0
  15. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +1 -1
  16. package/dist/elements/DocumentHeader/Tabs/tabs/index.js +15 -15
  17. package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
  18. package/dist/elements/DocumentHeader/index.d.ts +2 -2
  19. package/dist/elements/DocumentHeader/index.d.ts.map +1 -1
  20. package/dist/elements/DocumentHeader/index.js +2 -2
  21. package/dist/elements/DocumentHeader/index.js.map +1 -1
  22. package/dist/elements/DocumentHeader/index.scss +0 -2
  23. package/dist/elements/EmailAndUsername/index.d.ts.map +1 -1
  24. package/dist/elements/EmailAndUsername/index.js +31 -27
  25. package/dist/elements/EmailAndUsername/index.js.map +1 -1
  26. package/dist/elements/LeaveWithoutSaving/index.scss +1 -0
  27. package/dist/elements/Logo/index.d.ts.map +1 -1
  28. package/dist/elements/Logo/index.js +8 -5
  29. package/dist/elements/Logo/index.js.map +1 -1
  30. package/dist/elements/Nav/index.client.d.ts.map +1 -1
  31. package/dist/elements/Nav/index.client.js +4 -7
  32. package/dist/elements/Nav/index.client.js.map +1 -1
  33. package/dist/elements/Nav/index.d.ts.map +1 -1
  34. package/dist/elements/Nav/index.js +21 -27
  35. package/dist/elements/Nav/index.js.map +1 -1
  36. package/dist/elements/Nav/index.scss +17 -7
  37. package/dist/layouts/Root/index.d.ts +5 -4
  38. package/dist/layouts/Root/index.d.ts.map +1 -1
  39. package/dist/layouts/Root/index.js +11 -14
  40. package/dist/layouts/Root/index.js.map +1 -1
  41. package/dist/prod/styles.css +1 -1
  42. package/dist/routes/rest/buildFormState.js +4 -4
  43. package/dist/routes/rest/buildFormState.js.map +1 -1
  44. package/dist/routes/rest/og/image.d.ts +2 -1
  45. package/dist/routes/rest/og/image.d.ts.map +1 -1
  46. package/dist/routes/rest/og/image.js +6 -2
  47. package/dist/routes/rest/og/image.js.map +1 -1
  48. package/dist/routes/rest/og/index.d.ts.map +1 -1
  49. package/dist/routes/rest/og/index.js +7 -3
  50. package/dist/routes/rest/og/index.js.map +1 -1
  51. package/dist/scss/app.scss +5 -5
  52. package/dist/scss/type.scss +1 -0
  53. package/dist/templates/Default/index.d.ts.map +1 -1
  54. package/dist/templates/Default/index.js +16 -23
  55. package/dist/templates/Default/index.js.map +1 -1
  56. package/dist/utilities/getPayloadHMR.d.ts.map +1 -1
  57. package/dist/utilities/getPayloadHMR.js +13 -1
  58. package/dist/utilities/getPayloadHMR.js.map +1 -1
  59. package/dist/utilities/initPage/index.d.ts +1 -1
  60. package/dist/utilities/initPage/index.d.ts.map +1 -1
  61. package/dist/utilities/initPage/index.js +3 -2
  62. package/dist/utilities/initPage/index.js.map +1 -1
  63. package/dist/utilities/initPage/types.d.ts +2 -1
  64. package/dist/utilities/initPage/types.d.ts.map +1 -1
  65. package/dist/utilities/initPage/types.js.map +1 -1
  66. package/dist/views/API/LocaleSelector/index.d.ts +2 -2
  67. package/dist/views/API/LocaleSelector/index.d.ts.map +1 -1
  68. package/dist/views/API/LocaleSelector/index.js +7 -5
  69. package/dist/views/API/LocaleSelector/index.js.map +1 -1
  70. package/dist/views/API/index.client.d.ts.map +1 -1
  71. package/dist/views/API/index.client.js +39 -33
  72. package/dist/views/API/index.client.js.map +1 -1
  73. package/dist/views/API/index.d.ts +2 -2
  74. package/dist/views/API/index.d.ts.map +1 -1
  75. package/dist/views/API/index.js.map +1 -1
  76. package/dist/views/API/index.scss +1 -2
  77. package/dist/views/Account/ToggleTheme/index.d.ts.map +1 -1
  78. package/dist/views/Account/ToggleTheme/index.js +18 -16
  79. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  80. package/dist/views/Account/index.client.d.ts +3 -0
  81. package/dist/views/Account/index.client.d.ts.map +1 -0
  82. package/dist/views/Account/index.client.js +21 -0
  83. package/dist/views/Account/index.client.js.map +1 -0
  84. package/dist/views/Account/index.d.ts.map +1 -1
  85. package/dist/views/Account/index.js +38 -35
  86. package/dist/views/Account/index.js.map +1 -1
  87. package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
  88. package/dist/views/CreateFirstUser/index.client.js +10 -10
  89. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  90. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  91. package/dist/views/Dashboard/Default/index.js +21 -27
  92. package/dist/views/Dashboard/Default/index.js.map +1 -1
  93. package/dist/views/Dashboard/index.d.ts.map +1 -1
  94. package/dist/views/Dashboard/index.js +23 -26
  95. package/dist/views/Dashboard/index.js.map +1 -1
  96. package/dist/views/Document/getCustomViewByKey.d.ts.map +1 -1
  97. package/dist/views/Document/getCustomViewByKey.js +1 -2
  98. package/dist/views/Document/getCustomViewByKey.js.map +1 -1
  99. package/dist/views/Document/getCustomViewByRoute.js +2 -2
  100. package/dist/views/Document/getCustomViewByRoute.js.map +1 -1
  101. package/dist/views/Document/getViewsFromConfig.d.ts +9 -4
  102. package/dist/views/Document/getViewsFromConfig.d.ts.map +1 -1
  103. package/dist/views/Document/getViewsFromConfig.js +111 -49
  104. package/dist/views/Document/getViewsFromConfig.js.map +1 -1
  105. package/dist/views/Document/index.d.ts.map +1 -1
  106. package/dist/views/Document/index.js +31 -31
  107. package/dist/views/Document/index.js.map +1 -1
  108. package/dist/views/Edit/Default/Auth/APIKey.d.ts +2 -2
  109. package/dist/views/Edit/Default/Auth/APIKey.d.ts.map +1 -1
  110. package/dist/views/Edit/Default/Auth/APIKey.js +34 -7
  111. package/dist/views/Edit/Default/Auth/APIKey.js.map +1 -1
  112. package/dist/views/Edit/Default/Auth/index.d.ts.map +1 -1
  113. package/dist/views/Edit/Default/Auth/index.js +25 -14
  114. package/dist/views/Edit/Default/Auth/index.js.map +1 -1
  115. package/dist/views/Edit/Default/SetDocumentStepNav/index.d.ts.map +1 -1
  116. package/dist/views/Edit/Default/SetDocumentStepNav/index.js +1 -1
  117. package/dist/views/Edit/Default/SetDocumentStepNav/index.js.map +1 -1
  118. package/dist/views/Edit/Default/index.d.ts.map +1 -1
  119. package/dist/views/Edit/Default/index.js +15 -17
  120. package/dist/views/Edit/Default/index.js.map +1 -1
  121. package/dist/views/Edit/index.client.d.ts.map +1 -1
  122. package/dist/views/Edit/index.client.js +11 -6
  123. package/dist/views/Edit/index.client.js.map +1 -1
  124. package/dist/views/Edit/index.d.ts +2 -2
  125. package/dist/views/Edit/index.d.ts.map +1 -1
  126. package/dist/views/Edit/index.js.map +1 -1
  127. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
  128. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +11 -7
  129. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  130. package/dist/views/List/Default/index.d.ts.map +1 -1
  131. package/dist/views/List/Default/index.js +52 -43
  132. package/dist/views/List/Default/index.js.map +1 -1
  133. package/dist/views/List/Default/index.scss +5 -12
  134. package/dist/views/List/index.d.ts.map +1 -1
  135. package/dist/views/List/index.js +47 -40
  136. package/dist/views/List/index.js.map +1 -1
  137. package/dist/views/List/meta.js +1 -1
  138. package/dist/views/List/meta.js.map +1 -1
  139. package/dist/views/LivePreview/Context/context.d.ts +1 -1
  140. package/dist/views/LivePreview/Context/context.d.ts.map +1 -1
  141. package/dist/views/LivePreview/Context/context.js.map +1 -1
  142. package/dist/views/LivePreview/Context/index.d.ts +3 -3
  143. package/dist/views/LivePreview/Context/index.d.ts.map +1 -1
  144. package/dist/views/LivePreview/Context/index.js.map +1 -1
  145. package/dist/views/LivePreview/index.client.d.ts +3 -3
  146. package/dist/views/LivePreview/index.client.d.ts.map +1 -1
  147. package/dist/views/LivePreview/index.client.js +84 -93
  148. package/dist/views/LivePreview/index.client.js.map +1 -1
  149. package/dist/views/LivePreview/index.d.ts +2 -2
  150. package/dist/views/LivePreview/index.d.ts.map +1 -1
  151. package/dist/views/LivePreview/index.js.map +1 -1
  152. package/dist/views/LivePreview/usePopupWindow.d.ts +2 -1
  153. package/dist/views/LivePreview/usePopupWindow.d.ts.map +1 -1
  154. package/dist/views/LivePreview/usePopupWindow.js +1 -1
  155. package/dist/views/LivePreview/usePopupWindow.js.map +1 -1
  156. package/dist/views/Login/LoginField/index.d.ts +3 -3
  157. package/dist/views/Login/LoginField/index.d.ts.map +1 -1
  158. package/dist/views/Login/LoginField/index.js +15 -12
  159. package/dist/views/Login/LoginField/index.js.map +1 -1
  160. package/dist/views/Login/LoginForm/index.d.ts.map +1 -1
  161. package/dist/views/Login/LoginForm/index.js +6 -4
  162. package/dist/views/Login/LoginForm/index.js.map +1 -1
  163. package/dist/views/Login/index.d.ts.map +1 -1
  164. package/dist/views/Login/index.js +21 -27
  165. package/dist/views/Login/index.js.map +1 -1
  166. package/dist/views/NotFound/index.client.d.ts.map +1 -1
  167. package/dist/views/NotFound/index.client.js +1 -1
  168. package/dist/views/NotFound/index.client.js.map +1 -1
  169. package/dist/views/NotFound/index.d.ts +4 -3
  170. package/dist/views/NotFound/index.d.ts.map +1 -1
  171. package/dist/views/NotFound/index.js +2 -1
  172. package/dist/views/NotFound/index.js.map +1 -1
  173. package/dist/views/ResetPassword/index.client.d.ts +1 -1
  174. package/dist/views/ResetPassword/index.client.d.ts.map +1 -1
  175. package/dist/views/ResetPassword/index.client.js +9 -6
  176. package/dist/views/ResetPassword/index.client.js.map +1 -1
  177. package/dist/views/Root/getCustomViewByRoute.d.ts +3 -2
  178. package/dist/views/Root/getCustomViewByRoute.d.ts.map +1 -1
  179. package/dist/views/Root/getCustomViewByRoute.js +13 -10
  180. package/dist/views/Root/getCustomViewByRoute.js.map +1 -1
  181. package/dist/views/Root/getViewFromConfig.d.ts +10 -4
  182. package/dist/views/Root/getViewFromConfig.d.ts.map +1 -1
  183. package/dist/views/Root/getViewFromConfig.js +26 -9
  184. package/dist/views/Root/getViewFromConfig.js.map +1 -1
  185. package/dist/views/Root/index.d.ts +6 -5
  186. package/dist/views/Root/index.d.ts.map +1 -1
  187. package/dist/views/Root/index.js +14 -6
  188. package/dist/views/Root/index.js.map +1 -1
  189. package/dist/views/Unauthorized/index.d.ts +2 -2
  190. package/dist/views/Unauthorized/index.d.ts.map +1 -1
  191. package/dist/views/Unauthorized/index.js.map +1 -1
  192. package/dist/views/Version/Default/SetStepNav.d.ts +8 -8
  193. package/dist/views/Version/Default/SetStepNav.d.ts.map +1 -1
  194. package/dist/views/Version/Default/SetStepNav.js +7 -7
  195. package/dist/views/Version/Default/SetStepNav.js.map +1 -1
  196. package/dist/views/Version/Default/index.d.ts.map +1 -1
  197. package/dist/views/Version/Default/index.js +10 -15
  198. package/dist/views/Version/Default/index.js.map +1 -1
  199. package/dist/views/Version/Default/types.d.ts +7 -7
  200. package/dist/views/Version/Default/types.d.ts.map +1 -1
  201. package/dist/views/Version/Default/types.js.map +1 -1
  202. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts +2 -2
  203. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts.map +1 -1
  204. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +20 -20
  205. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  206. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.d.ts +2 -2
  207. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.d.ts.map +1 -1
  208. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.js +4 -4
  209. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.js.map +1 -1
  210. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts +3 -2
  211. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts.map +1 -1
  212. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +3 -3
  213. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  214. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts +3 -5
  215. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts.map +1 -1
  216. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +1 -1
  217. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  218. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts +3 -5
  219. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts.map +1 -1
  220. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +2 -2
  221. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  222. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts +3 -2
  223. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts.map +1 -1
  224. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +1 -1
  225. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  226. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts +21 -28
  227. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts.map +1 -1
  228. package/dist/views/Version/RenderFieldsToDiff/fields/index.js +1 -1
  229. package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
  230. package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts +15 -15
  231. package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts.map +1 -1
  232. package/dist/views/Version/RenderFieldsToDiff/fields/types.js.map +1 -1
  233. package/dist/views/Version/RenderFieldsToDiff/index.d.ts.map +1 -1
  234. package/dist/views/Version/RenderFieldsToDiff/index.js +12 -8
  235. package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
  236. package/dist/views/Version/RenderFieldsToDiff/types.d.ts +9 -9
  237. package/dist/views/Version/RenderFieldsToDiff/types.d.ts.map +1 -1
  238. package/dist/views/Version/RenderFieldsToDiff/types.js.map +1 -1
  239. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  240. package/dist/views/Version/Restore/index.js +1 -1
  241. package/dist/views/Version/Restore/index.js.map +1 -1
  242. package/dist/views/Version/SelectComparison/index.d.ts.map +1 -1
  243. package/dist/views/Version/SelectComparison/index.js +1 -1
  244. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  245. package/dist/views/Version/index.d.ts +2 -2
  246. package/dist/views/Version/index.d.ts.map +1 -1
  247. package/dist/views/Version/index.js.map +1 -1
  248. package/dist/views/Versions/buildColumns.d.ts.map +1 -1
  249. package/dist/views/Versions/buildColumns.js +40 -16
  250. package/dist/views/Versions/buildColumns.js.map +1 -1
  251. package/dist/views/Versions/cells/CreatedAt/index.d.ts.map +1 -1
  252. package/dist/views/Versions/cells/CreatedAt/index.js +1 -1
  253. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  254. package/dist/views/Versions/index.client.d.ts +4 -4
  255. package/dist/views/Versions/index.client.d.ts.map +1 -1
  256. package/dist/views/Versions/index.client.js +8 -6
  257. package/dist/views/Versions/index.client.js.map +1 -1
  258. package/dist/views/Versions/index.d.ts +2 -2
  259. package/dist/views/Versions/index.d.ts.map +1 -1
  260. package/dist/views/Versions/index.js.map +1 -1
  261. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/views/Version/RenderFieldsToDiff/types.ts"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { FieldMap, FieldPermissions, MappedField } from 'payload'\nimport type { DiffMethod } from 'react-diff-viewer-continued'\n\nimport type { DiffComponents } from './fields/types.js'\n\nexport type Props = {\n comparison: Record<string, any>\n diffComponents: DiffComponents\n fieldMap: FieldMap\n fieldPermissions: Record<string, FieldPermissions>\n i18n: I18nClient\n locales: string[]\n version: Record<string, any>\n}\n\nexport type FieldDiffProps = {\n diffMethod: DiffMethod\n field: MappedField\n isRichText: boolean\n} & Props\n"],"names":[],"mappings":"AAgBA,WAIS"}
1
+ {"version":3,"sources":["../../../../src/views/Version/RenderFieldsToDiff/types.ts"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { ClientField, FieldPermissions } from 'payload'\nimport type { DiffMethod } from 'react-diff-viewer-continued'\n\nimport type { DiffComponents } from './fields/types.js'\n\nexport type Props = {\n readonly comparison: Record<string, any>\n readonly diffComponents: DiffComponents\n readonly fieldPermissions: Record<string, FieldPermissions>\n readonly fields: ClientField[]\n readonly i18n: I18nClient\n readonly locales: string[]\n readonly version: Record<string, any>\n}\n\nexport type FieldDiffProps = {\n diffMethod: DiffMethod\n field: ClientField\n isRichText: boolean\n} & Props\n"],"names":[],"mappings":"AAgBA,WAIS"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Restore/index.tsx"],"names":[],"mappings":"AAeA,OAAO,KAA0C,MAAM,OAAO,CAAA;AAG9D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAGvC,OAAO,cAAc,CAAA;AAKrB,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA8G5B,CAAA;AAED,eAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Restore/index.tsx"],"names":[],"mappings":"AAeA,OAAO,KAA0C,MAAM,OAAO,CAAA;AAG9D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAGvC,OAAO,cAAc,CAAA;AAKrB,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAgH5B,CAAA;AAED,eAAe,OAAO,CAAA"}
@@ -10,7 +10,7 @@ import { MinimalTemplate } from '../../../templates/Minimal/index.js';
10
10
  const baseClass = 'restore-version';
11
11
  const modalSlug = 'restore-version';
12
12
  const Restore = ({ className, collectionSlug, globalSlug, label, originalDocID, status, versionDate, versionID })=>{
13
- const { routes: { admin: adminRoute, api: apiRoute }, serverURL } = useConfig();
13
+ const { config: { routes: { admin: adminRoute, api: apiRoute }, serverURL } } = useConfig();
14
14
  const { toggleModal } = useModal();
15
15
  const [processing, setProcessing] = useState(false);
16
16
  const router = useRouter();
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/views/Version/Restore/index.tsx"],"sourcesContent":["'use client'\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n Button,\n ChevronIcon,\n Modal,\n Pill,\n Popup,\n PopupList,\n useConfig,\n useModal,\n useTranslation,\n} from '@payloadcms/ui'\nimport { formatAdminURL, requests } from '@payloadcms/ui/shared'\nimport { useRouter } from 'next/navigation.js'\nimport React, { Fragment, useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { Props } from './types.js'\n\nimport { MinimalTemplate } from '../../../templates/Minimal/index.js'\nimport './index.scss'\n\nconst baseClass = 'restore-version'\nconst modalSlug = 'restore-version'\n\nconst Restore: React.FC<Props> = ({\n className,\n collectionSlug,\n globalSlug,\n label,\n originalDocID,\n status,\n versionDate,\n versionID,\n}) => {\n const {\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n } = useConfig()\n\n const { toggleModal } = useModal()\n const [processing, setProcessing] = useState(false)\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const [draft, setDraft] = useState(false)\n\n const restoreMessage = t('version:aboutToRestoreGlobal', {\n label: getTranslation(label, i18n),\n versionDate,\n })\n\n let fetchURL = `${serverURL}${apiRoute}`\n let redirectURL: string\n const canRestoreAsDraft = status !== 'draft'\n\n if (collectionSlug) {\n fetchURL = `${fetchURL}/${collectionSlug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${originalDocID}`,\n })\n }\n\n if (globalSlug) {\n fetchURL = `${fetchURL}/globals/${globalSlug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/globals/${globalSlug}`,\n })\n }\n\n const handleRestore = useCallback(async () => {\n setProcessing(true)\n\n const res = await requests.post(fetchURL, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (res.status === 200) {\n const json = await res.json()\n toast.success(json.message)\n router.push(redirectURL)\n } else {\n toast.error(t('version:problemRestoringVersion'))\n }\n }, [fetchURL, redirectURL, t, i18n, router])\n return (\n <Fragment>\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n <Pill\n className={[canRestoreAsDraft && `${baseClass}__button`].filter(Boolean).join(' ')}\n onClick={() => toggleModal(modalSlug)}\n >\n {t('version:restoreThisVersion')}\n </Pill>\n {canRestoreAsDraft && (\n <Popup\n button={\n <Pill className={`${baseClass}__chevron`}>\n <ChevronIcon />\n </Pill>\n }\n caret={false}\n render={() => (\n <PopupList.ButtonGroup>\n <PopupList.Button onClick={() => [setDraft(true), toggleModal(modalSlug)]}>\n {t('version:restoreAsDraft')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )}\n size=\"large\"\n verticalAlign=\"bottom\"\n />\n )}\n </div>\n <Modal className={`${baseClass}__modal`} slug={modalSlug}>\n <MinimalTemplate className={`${baseClass}__modal-template`}>\n <h1>{t('version:confirmVersionRestoration')}</h1>\n <p>{restoreMessage}</p>\n <Button\n buttonStyle=\"secondary\"\n onClick={processing ? undefined : () => toggleModal(modalSlug)}\n type=\"button\"\n >\n {t('general:cancel')}\n </Button>\n <Button onClick={processing ? undefined : () => void handleRestore()}>\n {processing ? t('version:restoring') : t('general:confirm')}\n </Button>\n </MinimalTemplate>\n </Modal>\n </Fragment>\n )\n}\n\nexport default Restore\n"],"names":["getTranslation","Button","ChevronIcon","Modal","Pill","Popup","PopupList","useConfig","useModal","useTranslation","formatAdminURL","requests","useRouter","React","Fragment","useCallback","useState","toast","MinimalTemplate","baseClass","modalSlug","Restore","className","collectionSlug","globalSlug","label","originalDocID","status","versionDate","versionID","routes","admin","adminRoute","api","apiRoute","serverURL","toggleModal","processing","setProcessing","router","i18n","t","draft","setDraft","restoreMessage","fetchURL","redirectURL","canRestoreAsDraft","path","handleRestore","res","post","headers","language","json","success","message","push","error","div","filter","Boolean","join","onClick","button","caret","render","ButtonGroup","size","verticalAlign","slug","h1","p","buttonStyle","undefined","type"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/views/Version/Restore/index.tsx"],"sourcesContent":["'use client'\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n Button,\n ChevronIcon,\n Modal,\n Pill,\n Popup,\n PopupList,\n useConfig,\n useModal,\n useTranslation,\n} from '@payloadcms/ui'\nimport { formatAdminURL, requests } from '@payloadcms/ui/shared'\nimport { useRouter } from 'next/navigation.js'\nimport React, { Fragment, useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { Props } from './types.js'\n\nimport { MinimalTemplate } from '../../../templates/Minimal/index.js'\nimport './index.scss'\n\nconst baseClass = 'restore-version'\nconst modalSlug = 'restore-version'\n\nconst Restore: React.FC<Props> = ({\n className,\n collectionSlug,\n globalSlug,\n label,\n originalDocID,\n status,\n versionDate,\n versionID,\n}) => {\n const {\n config: {\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n } = useConfig()\n\n const { toggleModal } = useModal()\n const [processing, setProcessing] = useState(false)\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const [draft, setDraft] = useState(false)\n\n const restoreMessage = t('version:aboutToRestoreGlobal', {\n label: getTranslation(label, i18n),\n versionDate,\n })\n\n let fetchURL = `${serverURL}${apiRoute}`\n let redirectURL: string\n const canRestoreAsDraft = status !== 'draft'\n\n if (collectionSlug) {\n fetchURL = `${fetchURL}/${collectionSlug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${originalDocID}`,\n })\n }\n\n if (globalSlug) {\n fetchURL = `${fetchURL}/globals/${globalSlug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/globals/${globalSlug}`,\n })\n }\n\n const handleRestore = useCallback(async () => {\n setProcessing(true)\n\n const res = await requests.post(fetchURL, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (res.status === 200) {\n const json = await res.json()\n toast.success(json.message)\n router.push(redirectURL)\n } else {\n toast.error(t('version:problemRestoringVersion'))\n }\n }, [fetchURL, redirectURL, t, i18n, router])\n return (\n <Fragment>\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n <Pill\n className={[canRestoreAsDraft && `${baseClass}__button`].filter(Boolean).join(' ')}\n onClick={() => toggleModal(modalSlug)}\n >\n {t('version:restoreThisVersion')}\n </Pill>\n {canRestoreAsDraft && (\n <Popup\n button={\n <Pill className={`${baseClass}__chevron`}>\n <ChevronIcon />\n </Pill>\n }\n caret={false}\n render={() => (\n <PopupList.ButtonGroup>\n <PopupList.Button onClick={() => [setDraft(true), toggleModal(modalSlug)]}>\n {t('version:restoreAsDraft')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )}\n size=\"large\"\n verticalAlign=\"bottom\"\n />\n )}\n </div>\n <Modal className={`${baseClass}__modal`} slug={modalSlug}>\n <MinimalTemplate className={`${baseClass}__modal-template`}>\n <h1>{t('version:confirmVersionRestoration')}</h1>\n <p>{restoreMessage}</p>\n <Button\n buttonStyle=\"secondary\"\n onClick={processing ? undefined : () => toggleModal(modalSlug)}\n type=\"button\"\n >\n {t('general:cancel')}\n </Button>\n <Button onClick={processing ? undefined : () => void handleRestore()}>\n {processing ? t('version:restoring') : t('general:confirm')}\n </Button>\n </MinimalTemplate>\n </Modal>\n </Fragment>\n )\n}\n\nexport default Restore\n"],"names":["getTranslation","Button","ChevronIcon","Modal","Pill","Popup","PopupList","useConfig","useModal","useTranslation","formatAdminURL","requests","useRouter","React","Fragment","useCallback","useState","toast","MinimalTemplate","baseClass","modalSlug","Restore","className","collectionSlug","globalSlug","label","originalDocID","status","versionDate","versionID","config","routes","admin","adminRoute","api","apiRoute","serverURL","toggleModal","processing","setProcessing","router","i18n","t","draft","setDraft","restoreMessage","fetchURL","redirectURL","canRestoreAsDraft","path","handleRestore","res","post","headers","language","json","success","message","push","error","div","filter","Boolean","join","onClick","button","caret","render","ButtonGroup","size","verticalAlign","slug","h1","p","buttonStyle","undefined","type"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/SelectComparison/index.tsx"],"names":[],"mappings":"AAOA,OAAO,KAA2C,MAAM,OAAO,CAAA;AAE/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAGvC,OAAO,cAAc,CAAA;AAQrB,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAuJ5C,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/SelectComparison/index.tsx"],"names":[],"mappings":"AAOA,OAAO,KAA2C,MAAM,OAAO,CAAA;AAE/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAGvC,OAAO,cAAc,CAAA;AAQrB,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAyJ5C,CAAA"}
@@ -10,7 +10,7 @@ const maxResultsPerRequest = 10;
10
10
  const baseOptions = [];
11
11
  export const SelectComparison = (props)=>{
12
12
  const { baseURL, latestDraftVersion, latestPublishedVersion, onChange, parentID, value, versionID } = props;
13
- const { admin: { dateFormat } } = useConfig();
13
+ const { config: { admin: { dateFormat } } } = useConfig();
14
14
  const [options, setOptions] = useState(baseOptions);
15
15
  const [lastLoadedPage, setLastLoadedPage] = useState(1);
16
16
  const [errorLoading, setErrorLoading] = useState('');
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/views/Version/SelectComparison/index.tsx"],"sourcesContent":["'use client'\n\nimport type { PaginatedDocs, Where } from 'payload'\n\nimport { ReactSelect, fieldBaseClass, useConfig, useTranslation } from '@payloadcms/ui'\nimport { formatDate } from '@payloadcms/ui/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport type { Props } from './types.js'\n\nimport { renderPill } from '../../Versions/cells/AutosaveCell/index.js'\nimport './index.scss'\n\nconst baseClass = 'compare-version'\n\nconst maxResultsPerRequest = 10\n\nconst baseOptions = []\n\nexport const SelectComparison: React.FC<Props> = (props) => {\n const {\n baseURL,\n latestDraftVersion,\n latestPublishedVersion,\n onChange,\n parentID,\n value,\n versionID,\n } = props\n\n const {\n admin: { dateFormat },\n } = useConfig()\n\n const [options, setOptions] = useState<\n {\n label: React.ReactNode | string\n value: string\n }[]\n >(baseOptions)\n const [lastLoadedPage, setLastLoadedPage] = useState(1)\n const [errorLoading, setErrorLoading] = useState('')\n const { i18n, t } = useTranslation()\n const loadedAllOptionsRef = React.useRef(false)\n\n const getResults = useCallback(\n async ({ lastLoadedPage: lastLoadedPageArg }) => {\n if (loadedAllOptionsRef.current) return\n const query: {\n [key: string]: unknown\n where: Where\n } = {\n depth: 0,\n limit: maxResultsPerRequest,\n page: lastLoadedPageArg,\n where: {\n and: [\n {\n id: {\n not_equals: versionID,\n },\n },\n ],\n },\n }\n\n if (parentID) {\n query.where.and.push({\n parent: {\n equals: parentID,\n },\n })\n }\n\n const search = qs.stringify(query)\n\n const response = await fetch(`${baseURL}?${search}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (response.ok) {\n const data: PaginatedDocs = await response.json()\n\n if (data.docs.length > 0) {\n const versionInfo = {\n draft: {\n currentLabel: t('version:currentDraft'),\n latestVersion: latestDraftVersion,\n pillStyle: undefined,\n previousLabel: t('version:draft'),\n },\n published: {\n currentLabel: t('version:currentPublishedVersion'),\n latestVersion: latestPublishedVersion,\n pillStyle: 'success',\n previousLabel: t('version:previouslyPublished'),\n },\n }\n\n const additionalOptions = data.docs.map((doc) => {\n const status = doc.version._status\n const { currentLabel, latestVersion, pillStyle, previousLabel } =\n versionInfo[status] || {}\n\n return {\n label: (\n <div>\n {formatDate({ date: doc.updatedAt, i18n, pattern: dateFormat })}\n &nbsp;&nbsp;\n {renderPill(doc, latestVersion, currentLabel, previousLabel, pillStyle)}\n </div>\n ),\n value: doc.id,\n }\n })\n\n setOptions((existingOptions) => [...existingOptions, ...additionalOptions])\n\n if (!data.hasNextPage) {\n loadedAllOptionsRef.current = true\n }\n setLastLoadedPage(data.page)\n }\n } else {\n setErrorLoading(t('error:unspecific'))\n }\n },\n [dateFormat, baseURL, parentID, versionID, t, i18n, latestDraftVersion, latestPublishedVersion],\n )\n\n useEffect(() => {\n void getResults({ lastLoadedPage: 1 })\n }, [getResults])\n\n const filteredOptions = options.filter(\n (option, index, self) => self.findIndex((t) => t.value === option.value) === index,\n )\n\n useEffect(() => {\n if (filteredOptions.length > 0 && !value) {\n onChange(filteredOptions[0])\n }\n }, [filteredOptions, value, onChange])\n\n return (\n <div\n className={[fieldBaseClass, baseClass, errorLoading && 'error-loading']\n .filter(Boolean)\n .join(' ')}\n >\n <div className={`${baseClass}__label`}>{t('version:compareVersion')}</div>\n {!errorLoading && (\n <ReactSelect\n isClearable={false}\n isSearchable={false}\n onChange={onChange}\n onMenuScrollToBottom={() => {\n void getResults({ lastLoadedPage: lastLoadedPage + 1 })\n }}\n options={filteredOptions}\n placeholder={t('version:selectVersionToCompare')}\n value={value}\n />\n )}\n {errorLoading && <div className={`${baseClass}__error-loading`}>{errorLoading}</div>}\n </div>\n )\n}\n"],"names":["ReactSelect","fieldBaseClass","useConfig","useTranslation","formatDate","qs","React","useCallback","useEffect","useState","renderPill","baseClass","maxResultsPerRequest","baseOptions","SelectComparison","props","baseURL","latestDraftVersion","latestPublishedVersion","onChange","parentID","value","versionID","admin","dateFormat","options","setOptions","lastLoadedPage","setLastLoadedPage","errorLoading","setErrorLoading","i18n","t","loadedAllOptionsRef","useRef","getResults","lastLoadedPageArg","current","query","depth","limit","page","where","and","id","not_equals","push","parent","equals","search","stringify","response","fetch","credentials","headers","language","ok","data","json","docs","length","versionInfo","draft","currentLabel","latestVersion","pillStyle","undefined","previousLabel","published","additionalOptions","map","doc","status","version","_status","label","div","date","updatedAt","pattern","existingOptions","hasNextPage","filteredOptions","filter","option","index","self","findIndex","className","Boolean","join","isClearable","isSearchable","onMenuScrollToBottom","placeholder"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/views/Version/SelectComparison/index.tsx"],"sourcesContent":["'use client'\n\nimport type { PaginatedDocs, Where } from 'payload'\n\nimport { ReactSelect, fieldBaseClass, useConfig, useTranslation } from '@payloadcms/ui'\nimport { formatDate } from '@payloadcms/ui/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport type { Props } from './types.js'\n\nimport { renderPill } from '../../Versions/cells/AutosaveCell/index.js'\nimport './index.scss'\n\nconst baseClass = 'compare-version'\n\nconst maxResultsPerRequest = 10\n\nconst baseOptions = []\n\nexport const SelectComparison: React.FC<Props> = (props) => {\n const {\n baseURL,\n latestDraftVersion,\n latestPublishedVersion,\n onChange,\n parentID,\n value,\n versionID,\n } = props\n\n const {\n config: {\n admin: { dateFormat },\n },\n } = useConfig()\n\n const [options, setOptions] = useState<\n {\n label: React.ReactNode | string\n value: string\n }[]\n >(baseOptions)\n const [lastLoadedPage, setLastLoadedPage] = useState(1)\n const [errorLoading, setErrorLoading] = useState('')\n const { i18n, t } = useTranslation()\n const loadedAllOptionsRef = React.useRef(false)\n\n const getResults = useCallback(\n async ({ lastLoadedPage: lastLoadedPageArg }) => {\n if (loadedAllOptionsRef.current) return\n const query: {\n [key: string]: unknown\n where: Where\n } = {\n depth: 0,\n limit: maxResultsPerRequest,\n page: lastLoadedPageArg,\n where: {\n and: [\n {\n id: {\n not_equals: versionID,\n },\n },\n ],\n },\n }\n\n if (parentID) {\n query.where.and.push({\n parent: {\n equals: parentID,\n },\n })\n }\n\n const search = qs.stringify(query)\n\n const response = await fetch(`${baseURL}?${search}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (response.ok) {\n const data: PaginatedDocs = await response.json()\n\n if (data.docs.length > 0) {\n const versionInfo = {\n draft: {\n currentLabel: t('version:currentDraft'),\n latestVersion: latestDraftVersion,\n pillStyle: undefined,\n previousLabel: t('version:draft'),\n },\n published: {\n currentLabel: t('version:currentPublishedVersion'),\n latestVersion: latestPublishedVersion,\n pillStyle: 'success',\n previousLabel: t('version:previouslyPublished'),\n },\n }\n\n const additionalOptions = data.docs.map((doc) => {\n const status = doc.version._status\n const { currentLabel, latestVersion, pillStyle, previousLabel } =\n versionInfo[status] || {}\n\n return {\n label: (\n <div>\n {formatDate({ date: doc.updatedAt, i18n, pattern: dateFormat })}\n &nbsp;&nbsp;\n {renderPill(doc, latestVersion, currentLabel, previousLabel, pillStyle)}\n </div>\n ),\n value: doc.id,\n }\n })\n\n setOptions((existingOptions) => [...existingOptions, ...additionalOptions])\n\n if (!data.hasNextPage) {\n loadedAllOptionsRef.current = true\n }\n setLastLoadedPage(data.page)\n }\n } else {\n setErrorLoading(t('error:unspecific'))\n }\n },\n [dateFormat, baseURL, parentID, versionID, t, i18n, latestDraftVersion, latestPublishedVersion],\n )\n\n useEffect(() => {\n void getResults({ lastLoadedPage: 1 })\n }, [getResults])\n\n const filteredOptions = options.filter(\n (option, index, self) => self.findIndex((t) => t.value === option.value) === index,\n )\n\n useEffect(() => {\n if (filteredOptions.length > 0 && !value) {\n onChange(filteredOptions[0])\n }\n }, [filteredOptions, value, onChange])\n\n return (\n <div\n className={[fieldBaseClass, baseClass, errorLoading && 'error-loading']\n .filter(Boolean)\n .join(' ')}\n >\n <div className={`${baseClass}__label`}>{t('version:compareVersion')}</div>\n {!errorLoading && (\n <ReactSelect\n isClearable={false}\n isSearchable={false}\n onChange={onChange}\n onMenuScrollToBottom={() => {\n void getResults({ lastLoadedPage: lastLoadedPage + 1 })\n }}\n options={filteredOptions}\n placeholder={t('version:selectVersionToCompare')}\n value={value}\n />\n )}\n {errorLoading && <div className={`${baseClass}__error-loading`}>{errorLoading}</div>}\n </div>\n )\n}\n"],"names":["ReactSelect","fieldBaseClass","useConfig","useTranslation","formatDate","qs","React","useCallback","useEffect","useState","renderPill","baseClass","maxResultsPerRequest","baseOptions","SelectComparison","props","baseURL","latestDraftVersion","latestPublishedVersion","onChange","parentID","value","versionID","config","admin","dateFormat","options","setOptions","lastLoadedPage","setLastLoadedPage","errorLoading","setErrorLoading","i18n","t","loadedAllOptionsRef","useRef","getResults","lastLoadedPageArg","current","query","depth","limit","page","where","and","id","not_equals","push","parent","equals","search","stringify","response","fetch","credentials","headers","language","ok","data","json","docs","length","versionInfo","draft","currentLabel","latestVersion","pillStyle","undefined","previousLabel","published","additionalOptions","map","doc","status","version","_status","label","div","date","updatedAt","pattern","existingOptions","hasNextPage","filteredOptions","filter","option","index","self","findIndex","className","Boolean","join","isClearable","isSearchable","onMenuScrollToBottom","placeholder"],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- import { type EditViewComponent } from 'payload';
2
- export declare const VersionView: EditViewComponent;
1
+ import type { EditViewComponent, PayloadServerReactComponent } from 'payload';
2
+ export declare const VersionView: PayloadServerReactComponent<EditViewComponent>;
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Version/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,iBAAiB,EAIvB,MAAM,SAAS,CAAA;AAMhB,eAAO,MAAM,WAAW,EAAE,iBA2IzB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Version/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,iBAAiB,EAGjB,2BAA2B,EAC5B,MAAM,SAAS,CAAA;AAShB,eAAO,MAAM,WAAW,EAAE,2BAA2B,CAAC,iBAAiB,CA2ItE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/views/Version/index.tsx"],"sourcesContent":["import { notFound } from 'next/navigation.js'\nimport {\n type CollectionPermission,\n type Document,\n type EditViewComponent,\n type GlobalPermission,\n type OptionObject,\n deepCopyObjectSimple,\n} from 'payload'\nimport React from 'react'\n\nimport { getLatestVersion } from '../Versions/getLatestVersion.js'\nimport { DefaultVersionView } from './Default/index.js'\n\nexport const VersionView: EditViewComponent = async (props) => {\n const { initPageResult, routeSegments } = props\n\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n permissions,\n req,\n req: { payload, payload: { config } = {}, user } = {},\n } = initPageResult\n\n const versionID = routeSegments[routeSegments.length - 1]\n\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n\n const { localization } = config\n\n let docPermissions: CollectionPermission | GlobalPermission\n let slug: string\n\n let doc: Document\n let latestPublishedVersion = null\n let latestDraftVersion = null\n\n if (collectionSlug) {\n // /collections/:slug/:id/versions/:versionID\n slug = collectionSlug\n docPermissions = permissions.collections[collectionSlug]\n\n try {\n doc = await payload.findVersionByID({\n id: versionID,\n collection: slug,\n depth: 1,\n locale: '*',\n overrideAccess: false,\n req,\n user,\n })\n\n if (collectionConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug,\n type: 'collection',\n payload,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug,\n type: 'collection',\n payload,\n status: 'published',\n })\n }\n } catch (error) {\n return notFound()\n }\n }\n\n if (globalSlug) {\n // /globals/:slug/versions/:versionID\n slug = globalSlug\n docPermissions = permissions.globals[globalSlug]\n\n try {\n doc = await payload.findGlobalVersionByID({\n id: versionID,\n slug,\n depth: 1,\n locale: '*',\n overrideAccess: false,\n req,\n user,\n })\n\n if (globalConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug,\n type: 'global',\n payload,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug,\n type: 'global',\n payload,\n status: 'published',\n })\n }\n } catch (error) {\n return notFound()\n }\n }\n\n const publishedNewerThanDraft = latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n\n if (publishedNewerThanDraft) {\n latestDraftVersion = {\n id: '',\n updatedAt: '',\n }\n }\n\n const localeOptions: OptionObject[] =\n localization &&\n localization.locales.map(({ code, label }) => ({\n label,\n value: code,\n }))\n\n const latestVersion =\n latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n ? latestPublishedVersion\n : latestDraftVersion\n\n if (!doc) {\n return notFound()\n }\n\n return (\n <DefaultVersionView\n doc={doc}\n /**\n * After bumping the Next.js canary to 104, and React to 19.0.0-rc-06d0b89e-20240801\" we have to deepCopy the permissions object (https://github.com/payloadcms/payload/pull/7541).\n * If both HydrateClientUser and RenderCustomComponent receive the same permissions object (same object reference), we get a\n * \"TypeError: Cannot read properties of undefined (reading '$$typeof')\" error\n *\n * // TODO: Revisit this in the future and figure out why this is happening. Might be a React/Next.js bug. We don't know why it happens, and a future React/Next version might unbreak this (keep an eye on this and remove deepCopyObjectSimple if that's the case)\n */\n docPermissions={deepCopyObjectSimple(docPermissions)}\n initialComparisonDoc={latestVersion}\n latestDraftVersion={latestDraftVersion?.id}\n latestPublishedVersion={latestPublishedVersion?.id}\n localeOptions={localeOptions}\n versionID={versionID}\n />\n )\n}\n"],"names":["notFound","deepCopyObjectSimple","React","getLatestVersion","DefaultVersionView","VersionView","props","initPageResult","routeSegments","collectionConfig","docID","id","globalConfig","permissions","req","payload","config","user","versionID","length","collectionSlug","slug","globalSlug","localization","docPermissions","doc","latestPublishedVersion","latestDraftVersion","collections","findVersionByID","collection","depth","locale","overrideAccess","versions","drafts","type","status","error","globals","findGlobalVersionByID","publishedNewerThanDraft","updatedAt","localeOptions","locales","map","code","label","value","latestVersion","initialComparisonDoc"],"mappings":";AAAA,SAASA,QAAQ,QAAQ,qBAAoB;AAC7C,SAMEC,oBAAoB,QACf,UAAS;AAChB,OAAOC,WAAW,QAAO;AAEzB,SAASC,gBAAgB,QAAQ,kCAAiC;AAClE,SAASC,kBAAkB,QAAQ,qBAAoB;AAEvD,OAAO,MAAMC,cAAiC,OAAOC;IACnD,MAAM,EAAEC,cAAc,EAAEC,aAAa,EAAE,GAAGF;IAE1C,MAAM,EACJG,gBAAgB,EAChBC,OAAOC,EAAE,EACTC,YAAY,EACZC,WAAW,EACXC,GAAG,EACHA,KAAK,EAAEC,OAAO,EAAEA,SAAS,EAAEC,MAAM,EAAE,GAAG,CAAC,CAAC,EAAEC,IAAI,EAAE,GAAG,CAAC,CAAC,EACtD,GAAGV;IAEJ,MAAMW,YAAYV,aAAa,CAACA,cAAcW,MAAM,GAAG,EAAE;IAEzD,MAAMC,iBAAiBX,kBAAkBY;IACzC,MAAMC,aAAaV,cAAcS;IAEjC,MAAM,EAAEE,YAAY,EAAE,GAAGP;IAEzB,IAAIQ;IACJ,IAAIH;IAEJ,IAAII;IACJ,IAAIC,yBAAyB;IAC7B,IAAIC,qBAAqB;IAEzB,IAAIP,gBAAgB;QAClB,6CAA6C;QAC7CC,OAAOD;QACPI,iBAAiBX,YAAYe,WAAW,CAACR,eAAe;QAExD,IAAI;YACFK,MAAM,MAAMV,QAAQc,eAAe,CAAC;gBAClClB,IAAIO;gBACJY,YAAYT;gBACZU,OAAO;gBACPC,QAAQ;gBACRC,gBAAgB;gBAChBnB;gBACAG;YACF;YAEA,IAAIR,kBAAkByB,UAAUC,QAAQ;gBACtCR,qBAAqB,MAAMxB,iBAAiB;oBAC1CkB;oBACAe,MAAM;oBACNrB;oBACAsB,QAAQ;gBACV;gBACAX,yBAAyB,MAAMvB,iBAAiB;oBAC9CkB;oBACAe,MAAM;oBACNrB;oBACAsB,QAAQ;gBACV;YACF;QACF,EAAE,OAAOC,OAAO;YACd,OAAOtC;QACT;IACF;IAEA,IAAIsB,YAAY;QACd,qCAAqC;QACrCD,OAAOC;QACPE,iBAAiBX,YAAY0B,OAAO,CAACjB,WAAW;QAEhD,IAAI;YACFG,MAAM,MAAMV,QAAQyB,qBAAqB,CAAC;gBACxC7B,IAAIO;gBACJG;gBACAU,OAAO;gBACPC,QAAQ;gBACRC,gBAAgB;gBAChBnB;gBACAG;YACF;YAEA,IAAIL,cAAcsB,UAAUC,QAAQ;gBAClCR,qBAAqB,MAAMxB,iBAAiB;oBAC1CkB;oBACAe,MAAM;oBACNrB;oBACAsB,QAAQ;gBACV;gBACAX,yBAAyB,MAAMvB,iBAAiB;oBAC9CkB;oBACAe,MAAM;oBACNrB;oBACAsB,QAAQ;gBACV;YACF;QACF,EAAE,OAAOC,OAAO;YACd,OAAOtC;QACT;IACF;IAEA,MAAMyC,0BAA0Bf,wBAAwBgB,YAAYf,oBAAoBe;IAExF,IAAID,yBAAyB;QAC3Bd,qBAAqB;YACnBhB,IAAI;YACJ+B,WAAW;QACb;IACF;IAEA,MAAMC,gBACJpB,gBACAA,aAAaqB,OAAO,CAACC,GAAG,CAAC,CAAC,EAAEC,IAAI,EAAEC,KAAK,EAAE,GAAM,CAAA;YAC7CA;YACAC,OAAOF;QACT,CAAA;IAEF,MAAMG,gBACJvB,wBAAwBgB,YAAYf,oBAAoBe,YACpDhB,yBACAC;IAEN,IAAI,CAACF,KAAK;QACR,OAAOzB;IACT;IAEA,qBACE,KAACI;QACCqB,KAAKA;QACL;;;;;;OAMC,GACDD,gBAAgBvB,qBAAqBuB;QACrC0B,sBAAsBD;QACtBtB,oBAAoBA,oBAAoBhB;QACxCe,wBAAwBA,wBAAwBf;QAChDgC,eAAeA;QACfzB,WAAWA;;AAGjB,EAAC"}
1
+ {"version":3,"sources":["../../../src/views/Version/index.tsx"],"sourcesContent":["import type {\n CollectionPermission,\n Document,\n EditViewComponent,\n GlobalPermission,\n OptionObject,\n PayloadServerReactComponent,\n} from 'payload'\n\nimport { notFound } from 'next/navigation.js'\nimport { deepCopyObjectSimple } from 'payload'\nimport React from 'react'\n\nimport { getLatestVersion } from '../Versions/getLatestVersion.js'\nimport { DefaultVersionView } from './Default/index.js'\n\nexport const VersionView: PayloadServerReactComponent<EditViewComponent> = async (props) => {\n const { initPageResult, routeSegments } = props\n\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n permissions,\n req,\n req: { payload, payload: { config } = {}, user } = {},\n } = initPageResult\n\n const versionID = routeSegments[routeSegments.length - 1]\n\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n\n const { localization } = config\n\n let docPermissions: CollectionPermission | GlobalPermission\n let slug: string\n\n let doc: Document\n let latestPublishedVersion = null\n let latestDraftVersion = null\n\n if (collectionSlug) {\n // /collections/:slug/:id/versions/:versionID\n slug = collectionSlug\n docPermissions = permissions.collections[collectionSlug]\n\n try {\n doc = await payload.findVersionByID({\n id: versionID,\n collection: slug,\n depth: 1,\n locale: '*',\n overrideAccess: false,\n req,\n user,\n })\n\n if (collectionConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug,\n type: 'collection',\n payload,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug,\n type: 'collection',\n payload,\n status: 'published',\n })\n }\n } catch (error) {\n return notFound()\n }\n }\n\n if (globalSlug) {\n // /globals/:slug/versions/:versionID\n slug = globalSlug\n docPermissions = permissions.globals[globalSlug]\n\n try {\n doc = await payload.findGlobalVersionByID({\n id: versionID,\n slug,\n depth: 1,\n locale: '*',\n overrideAccess: false,\n req,\n user,\n })\n\n if (globalConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug,\n type: 'global',\n payload,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug,\n type: 'global',\n payload,\n status: 'published',\n })\n }\n } catch (error) {\n return notFound()\n }\n }\n\n const publishedNewerThanDraft = latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n\n if (publishedNewerThanDraft) {\n latestDraftVersion = {\n id: '',\n updatedAt: '',\n }\n }\n\n const localeOptions: OptionObject[] =\n localization &&\n localization.locales.map(({ code, label }) => ({\n label,\n value: code,\n }))\n\n const latestVersion =\n latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n ? latestPublishedVersion\n : latestDraftVersion\n\n if (!doc) {\n return notFound()\n }\n\n return (\n <DefaultVersionView\n doc={doc}\n /**\n * After bumping the Next.js canary to 104, and React to 19.0.0-rc-06d0b89e-20240801\" we have to deepCopy the permissions object (https://github.com/payloadcms/payload/pull/7541).\n * If both HydrateClientUser and RenderCustomComponent receive the same permissions object (same object reference), we get a\n * \"TypeError: Cannot read properties of undefined (reading '$$typeof')\" error\n *\n * // TODO: Revisit this in the future and figure out why this is happening. Might be a React/Next.js bug. We don't know why it happens, and a future React/Next version might unbreak this (keep an eye on this and remove deepCopyObjectSimple if that's the case)\n */\n docPermissions={deepCopyObjectSimple(docPermissions)}\n initialComparisonDoc={latestVersion}\n latestDraftVersion={latestDraftVersion?.id}\n latestPublishedVersion={latestPublishedVersion?.id}\n localeOptions={localeOptions}\n versionID={versionID}\n />\n )\n}\n"],"names":["notFound","deepCopyObjectSimple","React","getLatestVersion","DefaultVersionView","VersionView","props","initPageResult","routeSegments","collectionConfig","docID","id","globalConfig","permissions","req","payload","config","user","versionID","length","collectionSlug","slug","globalSlug","localization","docPermissions","doc","latestPublishedVersion","latestDraftVersion","collections","findVersionByID","collection","depth","locale","overrideAccess","versions","drafts","type","status","error","globals","findGlobalVersionByID","publishedNewerThanDraft","updatedAt","localeOptions","locales","map","code","label","value","latestVersion","initialComparisonDoc"],"mappings":";AASA,SAASA,QAAQ,QAAQ,qBAAoB;AAC7C,SAASC,oBAAoB,QAAQ,UAAS;AAC9C,OAAOC,WAAW,QAAO;AAEzB,SAASC,gBAAgB,QAAQ,kCAAiC;AAClE,SAASC,kBAAkB,QAAQ,qBAAoB;AAEvD,OAAO,MAAMC,cAA8D,OAAOC;IAChF,MAAM,EAAEC,cAAc,EAAEC,aAAa,EAAE,GAAGF;IAE1C,MAAM,EACJG,gBAAgB,EAChBC,OAAOC,EAAE,EACTC,YAAY,EACZC,WAAW,EACXC,GAAG,EACHA,KAAK,EAAEC,OAAO,EAAEA,SAAS,EAAEC,MAAM,EAAE,GAAG,CAAC,CAAC,EAAEC,IAAI,EAAE,GAAG,CAAC,CAAC,EACtD,GAAGV;IAEJ,MAAMW,YAAYV,aAAa,CAACA,cAAcW,MAAM,GAAG,EAAE;IAEzD,MAAMC,iBAAiBX,kBAAkBY;IACzC,MAAMC,aAAaV,cAAcS;IAEjC,MAAM,EAAEE,YAAY,EAAE,GAAGP;IAEzB,IAAIQ;IACJ,IAAIH;IAEJ,IAAII;IACJ,IAAIC,yBAAyB;IAC7B,IAAIC,qBAAqB;IAEzB,IAAIP,gBAAgB;QAClB,6CAA6C;QAC7CC,OAAOD;QACPI,iBAAiBX,YAAYe,WAAW,CAACR,eAAe;QAExD,IAAI;YACFK,MAAM,MAAMV,QAAQc,eAAe,CAAC;gBAClClB,IAAIO;gBACJY,YAAYT;gBACZU,OAAO;gBACPC,QAAQ;gBACRC,gBAAgB;gBAChBnB;gBACAG;YACF;YAEA,IAAIR,kBAAkByB,UAAUC,QAAQ;gBACtCR,qBAAqB,MAAMxB,iBAAiB;oBAC1CkB;oBACAe,MAAM;oBACNrB;oBACAsB,QAAQ;gBACV;gBACAX,yBAAyB,MAAMvB,iBAAiB;oBAC9CkB;oBACAe,MAAM;oBACNrB;oBACAsB,QAAQ;gBACV;YACF;QACF,EAAE,OAAOC,OAAO;YACd,OAAOtC;QACT;IACF;IAEA,IAAIsB,YAAY;QACd,qCAAqC;QACrCD,OAAOC;QACPE,iBAAiBX,YAAY0B,OAAO,CAACjB,WAAW;QAEhD,IAAI;YACFG,MAAM,MAAMV,QAAQyB,qBAAqB,CAAC;gBACxC7B,IAAIO;gBACJG;gBACAU,OAAO;gBACPC,QAAQ;gBACRC,gBAAgB;gBAChBnB;gBACAG;YACF;YAEA,IAAIL,cAAcsB,UAAUC,QAAQ;gBAClCR,qBAAqB,MAAMxB,iBAAiB;oBAC1CkB;oBACAe,MAAM;oBACNrB;oBACAsB,QAAQ;gBACV;gBACAX,yBAAyB,MAAMvB,iBAAiB;oBAC9CkB;oBACAe,MAAM;oBACNrB;oBACAsB,QAAQ;gBACV;YACF;QACF,EAAE,OAAOC,OAAO;YACd,OAAOtC;QACT;IACF;IAEA,MAAMyC,0BAA0Bf,wBAAwBgB,YAAYf,oBAAoBe;IAExF,IAAID,yBAAyB;QAC3Bd,qBAAqB;YACnBhB,IAAI;YACJ+B,WAAW;QACb;IACF;IAEA,MAAMC,gBACJpB,gBACAA,aAAaqB,OAAO,CAACC,GAAG,CAAC,CAAC,EAAEC,IAAI,EAAEC,KAAK,EAAE,GAAM,CAAA;YAC7CA;YACAC,OAAOF;QACT,CAAA;IAEF,MAAMG,gBACJvB,wBAAwBgB,YAAYf,oBAAoBe,YACpDhB,yBACAC;IAEN,IAAI,CAACF,KAAK;QACR,OAAOzB;IACT;IAEA,qBACE,KAACI;QACCqB,KAAKA;QACL;;;;;;OAMC,GACDD,gBAAgBvB,qBAAqBuB;QACrC0B,sBAAsBD;QACtBtB,oBAAoBA,oBAAoBhB;QACxCe,wBAAwBA,wBAAwBf;QAChDgC,eAAeA;QACfzB,WAAWA;;AAGjB,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"buildColumns.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/buildColumns.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,KAAK,EAAE,yBAAyB,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAEhG,OAAO,EAAE,KAAK,MAAM,EAAc,MAAM,gBAAgB,CAAA;AAOxD,eAAO,MAAM,mBAAmB,wGAO7B;IACD,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C,MAAM,EAAE,eAAe,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,YAAY,CAAC,EAAE,qBAAqB,CAAA;IACpC,IAAI,EAAE,IAAI,CAAA;IACV,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAA;CAChC,KAAG,MAAM,EAyDT,CAAA"}
1
+ {"version":3,"file":"buildColumns.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/buildColumns.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,KAAK,EAAE,yBAAyB,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAEhG,OAAO,EAAE,KAAK,MAAM,EAAc,MAAM,gBAAgB,CAAA;AAOxD,eAAO,MAAM,mBAAmB,wGAO7B;IACD,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C,MAAM,EAAE,eAAe,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,YAAY,CAAC,EAAE,qBAAqB,CAAA;IACpC,IAAI,EAAE,IAAI,CAAA;IACV,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAA;CAChC,KAAG,MAAM,EAkFT,CAAA"}
@@ -8,17 +8,25 @@ export const buildVersionColumns = ({ collectionConfig, docID, globalConfig, i18
8
8
  const entityConfig = collectionConfig || globalConfig;
9
9
  const columns = [
10
10
  {
11
- name: '',
12
- type: 'date',
13
11
  Label: '',
14
12
  accessor: 'updatedAt',
15
13
  active: true,
14
+ cellProps: {
15
+ field: {
16
+ name: '',
17
+ type: 'date'
18
+ }
19
+ },
16
20
  components: {
17
- Cell: /*#__PURE__*/ _jsx(CreatedAtCell, {
18
- collectionSlug: collectionConfig?.slug,
19
- docID: docID,
20
- globalSlug: globalConfig?.slug
21
- }),
21
+ Cell: {
22
+ type: 'client',
23
+ Component: null,
24
+ RenderedComponent: /*#__PURE__*/ _jsx(CreatedAtCell, {
25
+ collectionSlug: collectionConfig?.slug,
26
+ docID: docID,
27
+ globalSlug: globalConfig?.slug
28
+ })
29
+ },
22
30
  Heading: /*#__PURE__*/ _jsx(SortColumn, {
23
31
  Label: t('general:updatedAt'),
24
32
  name: "updatedAt"
@@ -26,13 +34,21 @@ export const buildVersionColumns = ({ collectionConfig, docID, globalConfig, i18
26
34
  }
27
35
  },
28
36
  {
29
- name: '',
30
- type: 'text',
31
37
  Label: '',
32
38
  accessor: 'id',
33
39
  active: true,
40
+ cellProps: {
41
+ field: {
42
+ name: '',
43
+ type: 'text'
44
+ }
45
+ },
34
46
  components: {
35
- Cell: /*#__PURE__*/ _jsx(IDCell, {}),
47
+ Cell: {
48
+ type: 'client',
49
+ Component: null,
50
+ RenderedComponent: /*#__PURE__*/ _jsx(IDCell, {})
51
+ },
36
52
  Heading: /*#__PURE__*/ _jsx(SortColumn, {
37
53
  Label: t('version:versionID'),
38
54
  disable: true,
@@ -43,16 +59,24 @@ export const buildVersionColumns = ({ collectionConfig, docID, globalConfig, i18
43
59
  ];
44
60
  if (entityConfig?.versions?.drafts || entityConfig?.versions?.drafts && entityConfig.versions.drafts?.autosave) {
45
61
  columns.push({
46
- name: '',
47
- type: 'checkbox',
48
62
  Label: '',
49
63
  accessor: '_status',
50
64
  active: true,
65
+ cellProps: {
66
+ field: {
67
+ name: '',
68
+ type: 'checkbox'
69
+ }
70
+ },
51
71
  components: {
52
- Cell: /*#__PURE__*/ _jsx(AutosaveCell, {
53
- latestDraftVersion: latestDraftVersion,
54
- latestPublishedVersion: latestPublishedVersion
55
- }),
72
+ Cell: {
73
+ type: 'client',
74
+ Component: null,
75
+ RenderedComponent: /*#__PURE__*/ _jsx(AutosaveCell, {
76
+ latestDraftVersion: latestDraftVersion,
77
+ latestPublishedVersion: latestPublishedVersion
78
+ })
79
+ },
56
80
  Heading: /*#__PURE__*/ _jsx(SortColumn, {
57
81
  Label: t('version:status'),
58
82
  disable: true,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/views/Versions/buildColumns.tsx"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { SanitizedCollectionConfig, SanitizedConfig, SanitizedGlobalConfig } from 'payload'\n\nimport { type Column, SortColumn } from '@payloadcms/ui'\nimport React from 'react'\n\nimport { AutosaveCell } from './cells/AutosaveCell/index.js'\nimport { CreatedAtCell } from './cells/CreatedAt/index.js'\nimport { IDCell } from './cells/ID/index.js'\n\nexport const buildVersionColumns = ({\n collectionConfig,\n docID,\n globalConfig,\n i18n: { t },\n latestDraftVersion,\n latestPublishedVersion,\n}: {\n collectionConfig?: SanitizedCollectionConfig\n config: SanitizedConfig\n docID?: number | string\n globalConfig?: SanitizedGlobalConfig\n i18n: I18n\n latestDraftVersion?: string\n latestPublishedVersion?: string\n}): Column[] => {\n const entityConfig = collectionConfig || globalConfig\n\n const columns: Column[] = [\n {\n name: '',\n type: 'date',\n Label: '',\n accessor: 'updatedAt',\n active: true,\n components: {\n Cell: (\n <CreatedAtCell\n collectionSlug={collectionConfig?.slug}\n docID={docID}\n globalSlug={globalConfig?.slug}\n />\n ),\n Heading: <SortColumn Label={t('general:updatedAt')} name=\"updatedAt\" />,\n },\n },\n {\n name: '',\n type: 'text',\n Label: '',\n accessor: 'id',\n active: true,\n components: {\n Cell: <IDCell />,\n Heading: <SortColumn Label={t('version:versionID')} disable name=\"id\" />,\n },\n },\n ]\n\n if (\n entityConfig?.versions?.drafts ||\n (entityConfig?.versions?.drafts && entityConfig.versions.drafts?.autosave)\n ) {\n columns.push({\n name: '',\n type: 'checkbox',\n Label: '',\n accessor: '_status',\n active: true,\n components: {\n Cell: (\n <AutosaveCell\n latestDraftVersion={latestDraftVersion}\n latestPublishedVersion={latestPublishedVersion}\n />\n ),\n Heading: <SortColumn Label={t('version:status')} disable name=\"status\" />,\n },\n })\n }\n\n return columns\n}\n"],"names":["SortColumn","React","AutosaveCell","CreatedAtCell","IDCell","buildVersionColumns","collectionConfig","docID","globalConfig","i18n","t","latestDraftVersion","latestPublishedVersion","entityConfig","columns","name","type","Label","accessor","active","components","Cell","collectionSlug","slug","globalSlug","Heading","disable","versions","drafts","autosave","push"],"mappings":";AAGA,SAAsBA,UAAU,QAAQ,iBAAgB;AACxD,OAAOC,WAAW,QAAO;AAEzB,SAASC,YAAY,QAAQ,gCAA+B;AAC5D,SAASC,aAAa,QAAQ,6BAA4B;AAC1D,SAASC,MAAM,QAAQ,sBAAqB;AAE5C,OAAO,MAAMC,sBAAsB,CAAC,EAClCC,gBAAgB,EAChBC,KAAK,EACLC,YAAY,EACZC,MAAM,EAAEC,CAAC,EAAE,EACXC,kBAAkB,EAClBC,sBAAsB,EASvB;IACC,MAAMC,eAAeP,oBAAoBE;IAEzC,MAAMM,UAAoB;QACxB;YACEC,MAAM;YACNC,MAAM;YACNC,OAAO;YACPC,UAAU;YACVC,QAAQ;YACRC,YAAY;gBACVC,oBACE,KAAClB;oBACCmB,gBAAgBhB,kBAAkBiB;oBAClChB,OAAOA;oBACPiB,YAAYhB,cAAce;;gBAG9BE,uBAAS,KAACzB;oBAAWiB,OAAOP,EAAE;oBAAsBK,MAAK;;YAC3D;QACF;QACA;YACEA,MAAM;YACNC,MAAM;YACNC,OAAO;YACPC,UAAU;YACVC,QAAQ;YACRC,YAAY;gBACVC,oBAAM,KAACjB;gBACPqB,uBAAS,KAACzB;oBAAWiB,OAAOP,EAAE;oBAAsBgB,OAAO;oBAACX,MAAK;;YACnE;QACF;KACD;IAED,IACEF,cAAcc,UAAUC,UACvBf,cAAcc,UAAUC,UAAUf,aAAac,QAAQ,CAACC,MAAM,EAAEC,UACjE;QACAf,QAAQgB,IAAI,CAAC;YACXf,MAAM;YACNC,MAAM;YACNC,OAAO;YACPC,UAAU;YACVC,QAAQ;YACRC,YAAY;gBACVC,oBACE,KAACnB;oBACCS,oBAAoBA;oBACpBC,wBAAwBA;;gBAG5Ba,uBAAS,KAACzB;oBAAWiB,OAAOP,EAAE;oBAAmBgB,OAAO;oBAACX,MAAK;;YAChE;QACF;IACF;IAEA,OAAOD;AACT,EAAC"}
1
+ {"version":3,"sources":["../../../src/views/Versions/buildColumns.tsx"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { SanitizedCollectionConfig, SanitizedConfig, SanitizedGlobalConfig } from 'payload'\n\nimport { type Column, SortColumn } from '@payloadcms/ui'\nimport React from 'react'\n\nimport { AutosaveCell } from './cells/AutosaveCell/index.js'\nimport { CreatedAtCell } from './cells/CreatedAt/index.js'\nimport { IDCell } from './cells/ID/index.js'\n\nexport const buildVersionColumns = ({\n collectionConfig,\n docID,\n globalConfig,\n i18n: { t },\n latestDraftVersion,\n latestPublishedVersion,\n}: {\n collectionConfig?: SanitizedCollectionConfig\n config: SanitizedConfig\n docID?: number | string\n globalConfig?: SanitizedGlobalConfig\n i18n: I18n\n latestDraftVersion?: string\n latestPublishedVersion?: string\n}): Column[] => {\n const entityConfig = collectionConfig || globalConfig\n\n const columns: Column[] = [\n {\n Label: '',\n accessor: 'updatedAt',\n active: true,\n cellProps: {\n field: {\n name: '',\n type: 'date',\n },\n },\n components: {\n Cell: {\n type: 'client',\n Component: null,\n RenderedComponent: (\n <CreatedAtCell\n collectionSlug={collectionConfig?.slug}\n docID={docID}\n globalSlug={globalConfig?.slug}\n />\n ),\n },\n Heading: <SortColumn Label={t('general:updatedAt')} name=\"updatedAt\" />,\n },\n },\n {\n Label: '',\n accessor: 'id',\n active: true,\n cellProps: {\n field: {\n name: '',\n type: 'text',\n },\n },\n components: {\n Cell: {\n type: 'client',\n Component: null,\n RenderedComponent: <IDCell />,\n },\n Heading: <SortColumn Label={t('version:versionID')} disable name=\"id\" />,\n },\n },\n ]\n\n if (\n entityConfig?.versions?.drafts ||\n (entityConfig?.versions?.drafts && entityConfig.versions.drafts?.autosave)\n ) {\n columns.push({\n Label: '',\n accessor: '_status',\n active: true,\n cellProps: {\n field: {\n name: '',\n type: 'checkbox',\n },\n },\n components: {\n Cell: {\n type: 'client',\n Component: null,\n RenderedComponent: (\n <AutosaveCell\n latestDraftVersion={latestDraftVersion}\n latestPublishedVersion={latestPublishedVersion}\n />\n ),\n },\n\n Heading: <SortColumn Label={t('version:status')} disable name=\"status\" />,\n },\n })\n }\n\n return columns\n}\n"],"names":["SortColumn","React","AutosaveCell","CreatedAtCell","IDCell","buildVersionColumns","collectionConfig","docID","globalConfig","i18n","t","latestDraftVersion","latestPublishedVersion","entityConfig","columns","Label","accessor","active","cellProps","field","name","type","components","Cell","Component","RenderedComponent","collectionSlug","slug","globalSlug","Heading","disable","versions","drafts","autosave","push"],"mappings":";AAGA,SAAsBA,UAAU,QAAQ,iBAAgB;AACxD,OAAOC,WAAW,QAAO;AAEzB,SAASC,YAAY,QAAQ,gCAA+B;AAC5D,SAASC,aAAa,QAAQ,6BAA4B;AAC1D,SAASC,MAAM,QAAQ,sBAAqB;AAE5C,OAAO,MAAMC,sBAAsB,CAAC,EAClCC,gBAAgB,EAChBC,KAAK,EACLC,YAAY,EACZC,MAAM,EAAEC,CAAC,EAAE,EACXC,kBAAkB,EAClBC,sBAAsB,EASvB;IACC,MAAMC,eAAeP,oBAAoBE;IAEzC,MAAMM,UAAoB;QACxB;YACEC,OAAO;YACPC,UAAU;YACVC,QAAQ;YACRC,WAAW;gBACTC,OAAO;oBACLC,MAAM;oBACNC,MAAM;gBACR;YACF;YACAC,YAAY;gBACVC,MAAM;oBACJF,MAAM;oBACNG,WAAW;oBACXC,iCACE,KAACtB;wBACCuB,gBAAgBpB,kBAAkBqB;wBAClCpB,OAAOA;wBACPqB,YAAYpB,cAAcmB;;gBAGhC;gBACAE,uBAAS,KAAC7B;oBAAWe,OAAOL,EAAE;oBAAsBU,MAAK;;YAC3D;QACF;QACA;YACEL,OAAO;YACPC,UAAU;YACVC,QAAQ;YACRC,WAAW;gBACTC,OAAO;oBACLC,MAAM;oBACNC,MAAM;gBACR;YACF;YACAC,YAAY;gBACVC,MAAM;oBACJF,MAAM;oBACNG,WAAW;oBACXC,iCAAmB,KAACrB;gBACtB;gBACAyB,uBAAS,KAAC7B;oBAAWe,OAAOL,EAAE;oBAAsBoB,OAAO;oBAACV,MAAK;;YACnE;QACF;KACD;IAED,IACEP,cAAckB,UAAUC,UACvBnB,cAAckB,UAAUC,UAAUnB,aAAakB,QAAQ,CAACC,MAAM,EAAEC,UACjE;QACAnB,QAAQoB,IAAI,CAAC;YACXnB,OAAO;YACPC,UAAU;YACVC,QAAQ;YACRC,WAAW;gBACTC,OAAO;oBACLC,MAAM;oBACNC,MAAM;gBACR;YACF;YACAC,YAAY;gBACVC,MAAM;oBACJF,MAAM;oBACNG,WAAW;oBACXC,iCACE,KAACvB;wBACCS,oBAAoBA;wBACpBC,wBAAwBA;;gBAG9B;gBAEAiB,uBAAS,KAAC7B;oBAAWe,OAAOL,EAAE;oBAAmBoB,OAAO;oBAACV,MAAK;;YAChE;QACF;IACF;IAEA,OAAON;AACT,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/views/Versions/cells/CreatedAt/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,KAAK,kBAAkB,GAAG;IACxB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAoCtD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/views/Versions/cells/CreatedAt/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,KAAK,kBAAkB,GAAG;IACxB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAsCtD,CAAA"}
@@ -6,7 +6,7 @@ import LinkImport from 'next/link.js';
6
6
  import React from 'react';
7
7
  const Link = LinkImport.default || LinkImport;
8
8
  export const CreatedAtCell = ({ collectionSlug, docID, globalSlug })=>{
9
- const { admin: { dateFormat }, routes: { admin: adminRoute } } = useConfig();
9
+ const { config: { admin: { dateFormat }, routes: { admin: adminRoute } } } = useConfig();
10
10
  const { i18n } = useTranslation();
11
11
  const { cellData, rowData } = useTableCell();
12
12
  const versionID = rowData.id;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/views/Versions/cells/CreatedAt/index.tsx"],"sourcesContent":["'use client'\nimport { useConfig, useTableCell, useTranslation } from '@payloadcms/ui'\nimport { formatAdminURL, formatDate } from '@payloadcms/ui/shared'\nimport LinkImport from 'next/link.js'\nimport React from 'react'\n\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\ntype CreatedAtCellProps = {\n collectionSlug?: string\n docID?: number | string\n globalSlug?: string\n}\n\nexport const CreatedAtCell: React.FC<CreatedAtCellProps> = ({\n collectionSlug,\n docID,\n globalSlug,\n}) => {\n const {\n admin: { dateFormat },\n routes: { admin: adminRoute },\n } = useConfig()\n\n const { i18n } = useTranslation()\n\n const { cellData, rowData } = useTableCell()\n\n const versionID = rowData.id\n\n let to: string\n\n if (collectionSlug)\n to = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${docID}/versions/${versionID}`,\n })\n\n if (globalSlug)\n to = formatAdminURL({\n adminRoute,\n path: `/globals/${globalSlug}/versions/${versionID}`,\n })\n\n return (\n <Link href={to}>\n {cellData &&\n formatDate({ date: cellData as Date | number | string, i18n, pattern: dateFormat })}\n </Link>\n )\n}\n"],"names":["useConfig","useTableCell","useTranslation","formatAdminURL","formatDate","LinkImport","React","Link","default","CreatedAtCell","collectionSlug","docID","globalSlug","admin","dateFormat","routes","adminRoute","i18n","cellData","rowData","versionID","id","to","path","href","date","pattern"],"mappings":"AAAA;;AACA,SAASA,SAAS,EAAEC,YAAY,EAAEC,cAAc,QAAQ,iBAAgB;AACxE,SAASC,cAAc,EAAEC,UAAU,QAAQ,wBAAuB;AAClE,OAAOC,gBAAgB,eAAc;AACrC,OAAOC,WAAW,QAAO;AAEzB,MAAMC,OAAQF,WAAWG,OAAO,IAAIH;AAQpC,OAAO,MAAMI,gBAA8C,CAAC,EAC1DC,cAAc,EACdC,KAAK,EACLC,UAAU,EACX;IACC,MAAM,EACJC,OAAO,EAAEC,UAAU,EAAE,EACrBC,QAAQ,EAAEF,OAAOG,UAAU,EAAE,EAC9B,GAAGhB;IAEJ,MAAM,EAAEiB,IAAI,EAAE,GAAGf;IAEjB,MAAM,EAAEgB,QAAQ,EAAEC,OAAO,EAAE,GAAGlB;IAE9B,MAAMmB,YAAYD,QAAQE,EAAE;IAE5B,IAAIC;IAEJ,IAAIZ,gBACFY,KAAKnB,eAAe;QAClBa;QACAO,MAAM,CAAC,aAAa,EAAEb,eAAe,CAAC,EAAEC,MAAM,UAAU,EAAES,UAAU,CAAC;IACvE;IAEF,IAAIR,YACFU,KAAKnB,eAAe;QAClBa;QACAO,MAAM,CAAC,SAAS,EAAEX,WAAW,UAAU,EAAEQ,UAAU,CAAC;IACtD;IAEF,qBACE,KAACb;QAAKiB,MAAMF;kBACTJ,YACCd,WAAW;YAAEqB,MAAMP;YAAoCD;YAAMS,SAASZ;QAAW;;AAGzF,EAAC"}
1
+ {"version":3,"sources":["../../../../../src/views/Versions/cells/CreatedAt/index.tsx"],"sourcesContent":["'use client'\nimport { useConfig, useTableCell, useTranslation } from '@payloadcms/ui'\nimport { formatAdminURL, formatDate } from '@payloadcms/ui/shared'\nimport LinkImport from 'next/link.js'\nimport React from 'react'\n\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\ntype CreatedAtCellProps = {\n collectionSlug?: string\n docID?: number | string\n globalSlug?: string\n}\n\nexport const CreatedAtCell: React.FC<CreatedAtCellProps> = ({\n collectionSlug,\n docID,\n globalSlug,\n}) => {\n const {\n config: {\n admin: { dateFormat },\n routes: { admin: adminRoute },\n },\n } = useConfig()\n\n const { i18n } = useTranslation()\n\n const { cellData, rowData } = useTableCell()\n\n const versionID = rowData.id\n\n let to: string\n\n if (collectionSlug)\n to = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${docID}/versions/${versionID}`,\n })\n\n if (globalSlug)\n to = formatAdminURL({\n adminRoute,\n path: `/globals/${globalSlug}/versions/${versionID}`,\n })\n\n return (\n <Link href={to}>\n {cellData &&\n formatDate({ date: cellData as Date | number | string, i18n, pattern: dateFormat })}\n </Link>\n )\n}\n"],"names":["useConfig","useTableCell","useTranslation","formatAdminURL","formatDate","LinkImport","React","Link","default","CreatedAtCell","collectionSlug","docID","globalSlug","config","admin","dateFormat","routes","adminRoute","i18n","cellData","rowData","versionID","id","to","path","href","date","pattern"],"mappings":"AAAA;;AACA,SAASA,SAAS,EAAEC,YAAY,EAAEC,cAAc,QAAQ,iBAAgB;AACxE,SAASC,cAAc,EAAEC,UAAU,QAAQ,wBAAuB;AAClE,OAAOC,gBAAgB,eAAc;AACrC,OAAOC,WAAW,QAAO;AAEzB,MAAMC,OAAQF,WAAWG,OAAO,IAAIH;AAQpC,OAAO,MAAMI,gBAA8C,CAAC,EAC1DC,cAAc,EACdC,KAAK,EACLC,UAAU,EACX;IACC,MAAM,EACJC,QAAQ,EACNC,OAAO,EAAEC,UAAU,EAAE,EACrBC,QAAQ,EAAEF,OAAOG,UAAU,EAAE,EAC9B,EACF,GAAGjB;IAEJ,MAAM,EAAEkB,IAAI,EAAE,GAAGhB;IAEjB,MAAM,EAAEiB,QAAQ,EAAEC,OAAO,EAAE,GAAGnB;IAE9B,MAAMoB,YAAYD,QAAQE,EAAE;IAE5B,IAAIC;IAEJ,IAAIb,gBACFa,KAAKpB,eAAe;QAClBc;QACAO,MAAM,CAAC,aAAa,EAAEd,eAAe,CAAC,EAAEC,MAAM,UAAU,EAAEU,UAAU,CAAC;IACvE;IAEF,IAAIT,YACFW,KAAKpB,eAAe;QAClBc;QACAO,MAAM,CAAC,SAAS,EAAEZ,WAAW,UAAU,EAAES,UAAU,CAAC;IACtD;IAEF,qBACE,KAACd;QAAKkB,MAAMF;kBACTJ,YACCf,WAAW;YAAEsB,MAAMP;YAAoCD;YAAMS,SAASZ;QAAW;;AAGzF,EAAC"}
@@ -2,9 +2,9 @@ import type { SanitizedCollectionConfig } from 'payload';
2
2
  import { type Column } from '@payloadcms/ui';
3
3
  import React from 'react';
4
4
  export declare const VersionsViewClient: React.FC<{
5
- baseClass: string;
6
- columns: Column[];
7
- fetchURL: string;
8
- paginationLimits?: SanitizedCollectionConfig['admin']['pagination']['limits'];
5
+ readonly baseClass: string;
6
+ readonly columns: Column[];
7
+ readonly fetchURL: string;
8
+ readonly paginationLimits?: SanitizedCollectionConfig['admin']['pagination']['limits'];
9
9
  }>;
10
10
  //# sourceMappingURL=index.client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/index.client.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAExD,OAAO,EACL,KAAK,MAAM,EAUZ,MAAM,gBAAgB,CAAA;AAEvB,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC;IACxC,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,CAAC,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAA;CAC9E,CAgEA,CAAA"}
1
+ {"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/index.client.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAA8C,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAEpG,OAAO,EACL,KAAK,MAAM,EAUZ,MAAM,gBAAgB,CAAA;AAEvB,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC;IACxC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,CAAA;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAA;CACvF,CAuEA,CAAA"}
@@ -1,15 +1,17 @@
1
1
  'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import { LoadingOverlayToggle, Pagination, PerPage, SetViewActions, Table, useComponentMap, useDocumentInfo, useListQuery, useTranslation } from '@payloadcms/ui';
3
+ import { LoadingOverlayToggle, Pagination, PerPage, SetViewActions, Table, useConfig, useDocumentInfo, useListQuery, useTranslation } from '@payloadcms/ui';
4
4
  import { useSearchParams } from 'next/navigation.js';
5
5
  import React from 'react';
6
6
  export const VersionsViewClient = (props)=>{
7
7
  const { baseClass, columns, paginationLimits } = props;
8
- const { getComponentMap } = useComponentMap();
9
8
  const { collectionSlug, globalSlug } = useDocumentInfo();
10
9
  const { data, handlePageChange, handlePerPageChange } = useListQuery();
11
- const componentMap = getComponentMap({
12
- collectionSlug,
10
+ const { getEntityConfig } = useConfig();
11
+ const collectionConfig = getEntityConfig({
12
+ collectionSlug
13
+ });
14
+ const globalConfig = getEntityConfig({
13
15
  globalSlug
14
16
  });
15
17
  const searchParams = useSearchParams();
@@ -19,7 +21,7 @@ export const VersionsViewClient = (props)=>{
19
21
  return /*#__PURE__*/ _jsxs(React.Fragment, {
20
22
  children: [
21
23
  /*#__PURE__*/ _jsx(SetViewActions, {
22
- actions: componentMap?.actionsMap?.Edit?.Versions
24
+ actions: (collectionConfig || globalConfig)?.admin?.components?.views?.edit?.versions?.actions
23
25
  }),
24
26
  /*#__PURE__*/ _jsx(LoadingOverlayToggle, {
25
27
  name: "versions",
@@ -34,7 +36,7 @@ export const VersionsViewClient = (props)=>{
34
36
  /*#__PURE__*/ _jsx(Table, {
35
37
  columns: columns,
36
38
  data: data?.docs,
37
- fieldMap: componentMap?.fieldMap
39
+ fields: (collectionConfig || globalConfig)?.fields
38
40
  }),
39
41
  /*#__PURE__*/ _jsxs("div", {
40
42
  className: `${baseClass}__page-controls`,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/views/Versions/index.client.tsx"],"sourcesContent":["'use client'\nimport type { SanitizedCollectionConfig } from 'payload'\n\nimport {\n type Column,\n LoadingOverlayToggle,\n Pagination,\n PerPage,\n SetViewActions,\n Table,\n useComponentMap,\n useDocumentInfo,\n useListQuery,\n useTranslation,\n} from '@payloadcms/ui'\nimport { useSearchParams } from 'next/navigation.js'\nimport React from 'react'\n\nexport const VersionsViewClient: React.FC<{\n baseClass: string\n columns: Column[]\n fetchURL: string\n paginationLimits?: SanitizedCollectionConfig['admin']['pagination']['limits']\n}> = (props) => {\n const { baseClass, columns, paginationLimits } = props\n\n const { getComponentMap } = useComponentMap()\n const { collectionSlug, globalSlug } = useDocumentInfo()\n const { data, handlePageChange, handlePerPageChange } = useListQuery()\n\n const componentMap = getComponentMap({\n collectionSlug,\n globalSlug,\n })\n\n const searchParams = useSearchParams()\n const limit = searchParams.get('limit')\n\n const { i18n } = useTranslation()\n\n const versionCount = data?.totalDocs || 0\n\n return (\n <React.Fragment>\n <SetViewActions actions={componentMap?.actionsMap?.Edit?.Versions} />\n <LoadingOverlayToggle name=\"versions\" show={!data} />\n {versionCount === 0 && (\n <div className={`${baseClass}__no-versions`}>\n {i18n.t('version:noFurtherVersionsFound')}\n </div>\n )}\n {versionCount > 0 && (\n <React.Fragment>\n <Table columns={columns} data={data?.docs} fieldMap={componentMap?.fieldMap} />\n <div className={`${baseClass}__page-controls`}>\n <Pagination\n hasNextPage={data.hasNextPage}\n hasPrevPage={data.hasPrevPage}\n limit={data.limit}\n nextPage={data.nextPage}\n numberOfNeighbors={1}\n onChange={() => handlePageChange}\n page={data.page}\n prevPage={data.prevPage}\n totalPages={data.totalPages}\n />\n {data?.totalDocs > 0 && (\n <React.Fragment>\n <div className={`${baseClass}__page-info`}>\n {data.page * data.limit - (data.limit - 1)}-\n {data.totalPages > 1 && data.totalPages !== data.page\n ? data.limit * data.page\n : data.totalDocs}{' '}\n {i18n.t('general:of')} {data.totalDocs}\n </div>\n <PerPage\n handleChange={() => handlePerPageChange}\n limit={limit ? Number(limit) : 10}\n limits={paginationLimits}\n />\n </React.Fragment>\n )}\n </div>\n </React.Fragment>\n )}\n </React.Fragment>\n )\n}\n"],"names":["LoadingOverlayToggle","Pagination","PerPage","SetViewActions","Table","useComponentMap","useDocumentInfo","useListQuery","useTranslation","useSearchParams","React","VersionsViewClient","props","baseClass","columns","paginationLimits","getComponentMap","collectionSlug","globalSlug","data","handlePageChange","handlePerPageChange","componentMap","searchParams","limit","get","i18n","versionCount","totalDocs","Fragment","actions","actionsMap","Edit","Versions","name","show","div","className","t","docs","fieldMap","hasNextPage","hasPrevPage","nextPage","numberOfNeighbors","onChange","page","prevPage","totalPages","handleChange","Number","limits"],"mappings":"AAAA;;AAGA,SAEEA,oBAAoB,EACpBC,UAAU,EACVC,OAAO,EACPC,cAAc,EACdC,KAAK,EACLC,eAAe,EACfC,eAAe,EACfC,YAAY,EACZC,cAAc,QACT,iBAAgB;AACvB,SAASC,eAAe,QAAQ,qBAAoB;AACpD,OAAOC,WAAW,QAAO;AAEzB,OAAO,MAAMC,qBAKR,CAACC;IACJ,MAAM,EAAEC,SAAS,EAAEC,OAAO,EAAEC,gBAAgB,EAAE,GAAGH;IAEjD,MAAM,EAAEI,eAAe,EAAE,GAAGX;IAC5B,MAAM,EAAEY,cAAc,EAAEC,UAAU,EAAE,GAAGZ;IACvC,MAAM,EAAEa,IAAI,EAAEC,gBAAgB,EAAEC,mBAAmB,EAAE,GAAGd;IAExD,MAAMe,eAAeN,gBAAgB;QACnCC;QACAC;IACF;IAEA,MAAMK,eAAed;IACrB,MAAMe,QAAQD,aAAaE,GAAG,CAAC;IAE/B,MAAM,EAAEC,IAAI,EAAE,GAAGlB;IAEjB,MAAMmB,eAAeR,MAAMS,aAAa;IAExC,qBACE,MAAClB,MAAMmB,QAAQ;;0BACb,KAAC1B;gBAAe2B,SAASR,cAAcS,YAAYC,MAAMC;;0BACzD,KAACjC;gBAAqBkC,MAAK;gBAAWC,MAAM,CAAChB;;YAC5CQ,iBAAiB,mBAChB,KAACS;gBAAIC,WAAW,CAAC,EAAExB,UAAU,aAAa,CAAC;0BACxCa,KAAKY,CAAC,CAAC;;YAGXX,eAAe,mBACd,MAACjB,MAAMmB,QAAQ;;kCACb,KAACzB;wBAAMU,SAASA;wBAASK,MAAMA,MAAMoB;wBAAMC,UAAUlB,cAAckB;;kCACnE,MAACJ;wBAAIC,WAAW,CAAC,EAAExB,UAAU,eAAe,CAAC;;0CAC3C,KAACZ;gCACCwC,aAAatB,KAAKsB,WAAW;gCAC7BC,aAAavB,KAAKuB,WAAW;gCAC7BlB,OAAOL,KAAKK,KAAK;gCACjBmB,UAAUxB,KAAKwB,QAAQ;gCACvBC,mBAAmB;gCACnBC,UAAU,IAAMzB;gCAChB0B,MAAM3B,KAAK2B,IAAI;gCACfC,UAAU5B,KAAK4B,QAAQ;gCACvBC,YAAY7B,KAAK6B,UAAU;;4BAE5B7B,MAAMS,YAAY,mBACjB,MAAClB,MAAMmB,QAAQ;;kDACb,MAACO;wCAAIC,WAAW,CAAC,EAAExB,UAAU,WAAW,CAAC;;4CACtCM,KAAK2B,IAAI,GAAG3B,KAAKK,KAAK,GAAIL,CAAAA,KAAKK,KAAK,GAAG,CAAA;4CAAG;4CAC1CL,KAAK6B,UAAU,GAAG,KAAK7B,KAAK6B,UAAU,KAAK7B,KAAK2B,IAAI,GACjD3B,KAAKK,KAAK,GAAGL,KAAK2B,IAAI,GACtB3B,KAAKS,SAAS;4CAAE;4CACnBF,KAAKY,CAAC,CAAC;4CAAc;4CAAEnB,KAAKS,SAAS;;;kDAExC,KAAC1B;wCACC+C,cAAc,IAAM5B;wCACpBG,OAAOA,QAAQ0B,OAAO1B,SAAS;wCAC/B2B,QAAQpC;;;;;;;;;;AAS1B,EAAC"}
1
+ {"version":3,"sources":["../../../src/views/Versions/index.client.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, ClientGlobalConfig, SanitizedCollectionConfig } from 'payload'\n\nimport {\n type Column,\n LoadingOverlayToggle,\n Pagination,\n PerPage,\n SetViewActions,\n Table,\n useConfig,\n useDocumentInfo,\n useListQuery,\n useTranslation,\n} from '@payloadcms/ui'\nimport { useSearchParams } from 'next/navigation.js'\nimport React from 'react'\n\nexport const VersionsViewClient: React.FC<{\n readonly baseClass: string\n readonly columns: Column[]\n readonly fetchURL: string\n readonly paginationLimits?: SanitizedCollectionConfig['admin']['pagination']['limits']\n}> = (props) => {\n const { baseClass, columns, paginationLimits } = props\n\n const { collectionSlug, globalSlug } = useDocumentInfo()\n const { data, handlePageChange, handlePerPageChange } = useListQuery()\n\n const { getEntityConfig } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug }) as ClientCollectionConfig\n const globalConfig = getEntityConfig({ globalSlug }) as ClientGlobalConfig\n\n const searchParams = useSearchParams()\n const limit = searchParams.get('limit')\n\n const { i18n } = useTranslation()\n\n const versionCount = data?.totalDocs || 0\n\n return (\n <React.Fragment>\n <SetViewActions\n actions={\n (collectionConfig || globalConfig)?.admin?.components?.views?.edit?.versions?.actions\n }\n />\n <LoadingOverlayToggle name=\"versions\" show={!data} />\n {versionCount === 0 && (\n <div className={`${baseClass}__no-versions`}>\n {i18n.t('version:noFurtherVersionsFound')}\n </div>\n )}\n {versionCount > 0 && (\n <React.Fragment>\n <Table\n columns={columns}\n data={data?.docs}\n fields={(collectionConfig || globalConfig)?.fields}\n />\n <div className={`${baseClass}__page-controls`}>\n <Pagination\n hasNextPage={data.hasNextPage}\n hasPrevPage={data.hasPrevPage}\n limit={data.limit}\n nextPage={data.nextPage}\n numberOfNeighbors={1}\n onChange={() => handlePageChange}\n page={data.page}\n prevPage={data.prevPage}\n totalPages={data.totalPages}\n />\n {data?.totalDocs > 0 && (\n <React.Fragment>\n <div className={`${baseClass}__page-info`}>\n {data.page * data.limit - (data.limit - 1)}-\n {data.totalPages > 1 && data.totalPages !== data.page\n ? data.limit * data.page\n : data.totalDocs}{' '}\n {i18n.t('general:of')} {data.totalDocs}\n </div>\n <PerPage\n handleChange={() => handlePerPageChange}\n limit={limit ? Number(limit) : 10}\n limits={paginationLimits}\n />\n </React.Fragment>\n )}\n </div>\n </React.Fragment>\n )}\n </React.Fragment>\n )\n}\n"],"names":["LoadingOverlayToggle","Pagination","PerPage","SetViewActions","Table","useConfig","useDocumentInfo","useListQuery","useTranslation","useSearchParams","React","VersionsViewClient","props","baseClass","columns","paginationLimits","collectionSlug","globalSlug","data","handlePageChange","handlePerPageChange","getEntityConfig","collectionConfig","globalConfig","searchParams","limit","get","i18n","versionCount","totalDocs","Fragment","actions","admin","components","views","edit","versions","name","show","div","className","t","docs","fields","hasNextPage","hasPrevPage","nextPage","numberOfNeighbors","onChange","page","prevPage","totalPages","handleChange","Number","limits"],"mappings":"AAAA;;AAGA,SAEEA,oBAAoB,EACpBC,UAAU,EACVC,OAAO,EACPC,cAAc,EACdC,KAAK,EACLC,SAAS,EACTC,eAAe,EACfC,YAAY,EACZC,cAAc,QACT,iBAAgB;AACvB,SAASC,eAAe,QAAQ,qBAAoB;AACpD,OAAOC,WAAW,QAAO;AAEzB,OAAO,MAAMC,qBAKR,CAACC;IACJ,MAAM,EAAEC,SAAS,EAAEC,OAAO,EAAEC,gBAAgB,EAAE,GAAGH;IAEjD,MAAM,EAAEI,cAAc,EAAEC,UAAU,EAAE,GAAGX;IACvC,MAAM,EAAEY,IAAI,EAAEC,gBAAgB,EAAEC,mBAAmB,EAAE,GAAGb;IAExD,MAAM,EAAEc,eAAe,EAAE,GAAGhB;IAE5B,MAAMiB,mBAAmBD,gBAAgB;QAAEL;IAAe;IAC1D,MAAMO,eAAeF,gBAAgB;QAAEJ;IAAW;IAElD,MAAMO,eAAef;IACrB,MAAMgB,QAAQD,aAAaE,GAAG,CAAC;IAE/B,MAAM,EAAEC,IAAI,EAAE,GAAGnB;IAEjB,MAAMoB,eAAeV,MAAMW,aAAa;IAExC,qBACE,MAACnB,MAAMoB,QAAQ;;0BACb,KAAC3B;gBACC4B,SACGT,CAAAA,oBAAoBC,YAAW,GAAIS,OAAOC,YAAYC,OAAOC,MAAMC,UAAUL;;0BAGlF,KAAC/B;gBAAqBqC,MAAK;gBAAWC,MAAM,CAACpB;;YAC5CU,iBAAiB,mBAChB,KAACW;gBAAIC,WAAW,CAAC,EAAE3B,UAAU,aAAa,CAAC;0BACxCc,KAAKc,CAAC,CAAC;;YAGXb,eAAe,mBACd,MAAClB,MAAMoB,QAAQ;;kCACb,KAAC1B;wBACCU,SAASA;wBACTI,MAAMA,MAAMwB;wBACZC,QAASrB,CAAAA,oBAAoBC,YAAW,GAAIoB;;kCAE9C,MAACJ;wBAAIC,WAAW,CAAC,EAAE3B,UAAU,eAAe,CAAC;;0CAC3C,KAACZ;gCACC2C,aAAa1B,KAAK0B,WAAW;gCAC7BC,aAAa3B,KAAK2B,WAAW;gCAC7BpB,OAAOP,KAAKO,KAAK;gCACjBqB,UAAU5B,KAAK4B,QAAQ;gCACvBC,mBAAmB;gCACnBC,UAAU,IAAM7B;gCAChB8B,MAAM/B,KAAK+B,IAAI;gCACfC,UAAUhC,KAAKgC,QAAQ;gCACvBC,YAAYjC,KAAKiC,UAAU;;4BAE5BjC,MAAMW,YAAY,mBACjB,MAACnB,MAAMoB,QAAQ;;kDACb,MAACS;wCAAIC,WAAW,CAAC,EAAE3B,UAAU,WAAW,CAAC;;4CACtCK,KAAK+B,IAAI,GAAG/B,KAAKO,KAAK,GAAIP,CAAAA,KAAKO,KAAK,GAAG,CAAA;4CAAG;4CAC1CP,KAAKiC,UAAU,GAAG,KAAKjC,KAAKiC,UAAU,KAAKjC,KAAK+B,IAAI,GACjD/B,KAAKO,KAAK,GAAGP,KAAK+B,IAAI,GACtB/B,KAAKW,SAAS;4CAAE;4CACnBF,KAAKc,CAAC,CAAC;4CAAc;4CAAEvB,KAAKW,SAAS;;;kDAExC,KAAC3B;wCACCkD,cAAc,IAAMhC;wCACpBK,OAAOA,QAAQ4B,OAAO5B,SAAS;wCAC/B6B,QAAQvC;;;;;;;;;;AAS1B,EAAC"}
@@ -1,5 +1,5 @@
1
- import type { EditViewComponent } from 'payload';
1
+ import type { EditViewComponent, PayloadServerReactComponent } from 'payload';
2
2
  import './index.scss';
3
3
  export declare const baseClass = "versions";
4
- export declare const VersionsView: EditViewComponent;
4
+ export declare const VersionsView: PayloadServerReactComponent<EditViewComponent>;
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAiB,MAAM,SAAS,CAAA;AAW/D,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,SAAS,aAAa,CAAA;AAEnC,eAAO,MAAM,YAAY,EAAE,iBA6J1B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAiB,2BAA2B,EAAE,MAAM,SAAS,CAAA;AAW5F,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,SAAS,aAAa,CAAA;AAEnC,eAAO,MAAM,YAAY,EAAE,2BAA2B,CAAC,iBAAiB,CA6JvE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/views/Versions/index.tsx"],"sourcesContent":["import type { EditViewComponent, PaginatedDocs } from 'payload'\n\nimport { Gutter, ListQueryProvider } from '@payloadcms/ui'\nimport { notFound } from 'next/navigation.js'\nimport { isNumber } from 'payload/shared'\nimport React from 'react'\n\nimport { SetDocumentStepNav } from '../Edit/Default/SetDocumentStepNav/index.js'\nimport { buildVersionColumns } from './buildColumns.js'\nimport { getLatestVersion } from './getLatestVersion.js'\nimport { VersionsViewClient } from './index.client.js'\nimport './index.scss'\n\nexport const baseClass = 'versions'\n\nexport const VersionsView: EditViewComponent = async (props) => {\n const { initPageResult, searchParams } = props\n\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n req,\n req: {\n i18n,\n payload,\n payload: { config },\n user,\n },\n } = initPageResult\n\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n const { limit, page, sort } = searchParams\n\n const {\n routes: { api: apiRoute },\n serverURL,\n } = config\n\n let versionsData: PaginatedDocs\n let limitToUse = isNumber(limit) ? Number(limit) : undefined\n let latestPublishedVersion = null\n let latestDraftVersion = null\n\n if (collectionSlug) {\n limitToUse = limitToUse || collectionConfig.admin.pagination.defaultLimit\n try {\n versionsData = await payload.findVersions({\n collection: collectionSlug,\n depth: 0,\n limit: limitToUse,\n overrideAccess: false,\n page: page ? parseInt(page.toString(), 10) : undefined,\n req,\n sort: sort as string,\n user,\n where: {\n parent: {\n equals: id,\n },\n },\n })\n if (collectionConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug: collectionSlug,\n type: 'collection',\n payload,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug: collectionSlug,\n type: 'collection',\n payload,\n status: 'published',\n })\n }\n } catch (error) {\n console.error(error) // eslint-disable-line no-console\n }\n }\n\n if (globalSlug) {\n limitToUse = limitToUse || 10\n try {\n versionsData = await payload.findGlobalVersions({\n slug: globalSlug,\n depth: 0,\n limit: limitToUse,\n overrideAccess: false,\n page: page ? parseInt(page as string, 10) : undefined,\n req,\n sort: sort as string,\n user,\n })\n\n if (globalConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug: globalSlug,\n type: 'global',\n payload,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug: globalSlug,\n type: 'global',\n payload,\n status: 'published',\n })\n }\n } catch (error) {\n console.error(error) // eslint-disable-line no-console\n }\n\n if (!versionsData) {\n return notFound()\n }\n }\n const fetchURL = collectionSlug\n ? `${serverURL}${apiRoute}/${collectionSlug}/versions`\n : globalSlug\n ? `${serverURL}${apiRoute}/globals/${globalSlug}/versions`\n : ''\n\n const publishedNewerThanDraft = latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n\n if (publishedNewerThanDraft) {\n latestDraftVersion = {\n id: '',\n updatedAt: '',\n }\n }\n\n const columns = buildVersionColumns({\n collectionConfig,\n config,\n docID: id,\n globalConfig,\n i18n,\n latestDraftVersion: latestDraftVersion?.id,\n latestPublishedVersion: latestPublishedVersion?.id,\n })\n\n return (\n <React.Fragment>\n <SetDocumentStepNav\n collectionSlug={collectionConfig?.slug}\n globalSlug={globalConfig?.slug}\n id={id}\n pluralLabel={collectionConfig?.labels?.plural || globalConfig?.label}\n useAsTitle={collectionConfig?.admin?.useAsTitle || globalConfig?.slug}\n view={i18n.t('version:versions')}\n />\n <main className={baseClass}>\n <Gutter className={`${baseClass}__wrap`}>\n <ListQueryProvider\n data={versionsData}\n defaultLimit={limitToUse}\n defaultSort={sort as string}\n modifySearchParams\n >\n <VersionsViewClient\n baseClass={baseClass}\n columns={columns}\n fetchURL={fetchURL}\n paginationLimits={collectionConfig?.admin?.pagination?.limits}\n />\n </ListQueryProvider>\n </Gutter>\n </main>\n </React.Fragment>\n )\n}\n"],"names":["Gutter","ListQueryProvider","notFound","isNumber","React","SetDocumentStepNav","buildVersionColumns","getLatestVersion","VersionsViewClient","baseClass","VersionsView","props","initPageResult","searchParams","collectionConfig","docID","id","globalConfig","req","i18n","payload","config","user","collectionSlug","slug","globalSlug","limit","page","sort","routes","api","apiRoute","serverURL","versionsData","limitToUse","Number","undefined","latestPublishedVersion","latestDraftVersion","admin","pagination","defaultLimit","findVersions","collection","depth","overrideAccess","parseInt","toString","where","parent","equals","versions","drafts","type","status","error","console","findGlobalVersions","fetchURL","publishedNewerThanDraft","updatedAt","columns","Fragment","pluralLabel","labels","plural","label","useAsTitle","view","t","main","className","data","defaultSort","modifySearchParams","paginationLimits","limits"],"mappings":";AAEA,SAASA,MAAM,EAAEC,iBAAiB,QAAQ,iBAAgB;AAC1D,SAASC,QAAQ,QAAQ,qBAAoB;AAC7C,SAASC,QAAQ,QAAQ,iBAAgB;AACzC,OAAOC,WAAW,QAAO;AAEzB,SAASC,kBAAkB,QAAQ,8CAA6C;AAChF,SAASC,mBAAmB,QAAQ,oBAAmB;AACvD,SAASC,gBAAgB,QAAQ,wBAAuB;AACxD,SAASC,kBAAkB,QAAQ,oBAAmB;AAGtD,OAAO,MAAMC,YAAY,WAAU;AAEnC,OAAO,MAAMC,eAAkC,OAAOC;IACpD,MAAM,EAAEC,cAAc,EAAEC,YAAY,EAAE,GAAGF;IAEzC,MAAM,EACJG,gBAAgB,EAChBC,OAAOC,EAAE,EACTC,YAAY,EACZC,GAAG,EACHA,KAAK,EACHC,IAAI,EACJC,OAAO,EACPA,SAAS,EAAEC,MAAM,EAAE,EACnBC,IAAI,EACL,EACF,GAAGV;IAEJ,MAAMW,iBAAiBT,kBAAkBU;IACzC,MAAMC,aAAaR,cAAcO;IACjC,MAAM,EAAEE,KAAK,EAAEC,IAAI,EAAEC,IAAI,EAAE,GAAGf;IAE9B,MAAM,EACJgB,QAAQ,EAAEC,KAAKC,QAAQ,EAAE,EACzBC,SAAS,EACV,GAAGX;IAEJ,IAAIY;IACJ,IAAIC,aAAa/B,SAASuB,SAASS,OAAOT,SAASU;IACnD,IAAIC,yBAAyB;IAC7B,IAAIC,qBAAqB;IAEzB,IAAIf,gBAAgB;QAClBW,aAAaA,cAAcpB,iBAAiByB,KAAK,CAACC,UAAU,CAACC,YAAY;QACzE,IAAI;YACFR,eAAe,MAAMb,QAAQsB,YAAY,CAAC;gBACxCC,YAAYpB;gBACZqB,OAAO;gBACPlB,OAAOQ;gBACPW,gBAAgB;gBAChBlB,MAAMA,OAAOmB,SAASnB,KAAKoB,QAAQ,IAAI,MAAMX;gBAC7ClB;gBACAU,MAAMA;gBACNN;gBACA0B,OAAO;oBACLC,QAAQ;wBACNC,QAAQlC;oBACV;gBACF;YACF;YACA,IAAIF,kBAAkBqC,UAAUC,QAAQ;gBACtCd,qBAAqB,MAAM/B,iBAAiB;oBAC1CiB,MAAMD;oBACN8B,MAAM;oBACNjC;oBACAkC,QAAQ;gBACV;gBACAjB,yBAAyB,MAAM9B,iBAAiB;oBAC9CiB,MAAMD;oBACN8B,MAAM;oBACNjC;oBACAkC,QAAQ;gBACV;YACF;QACF,EAAE,OAAOC,OAAO;YACdC,QAAQD,KAAK,CAACA,OAAO,iCAAiC;;QACxD;IACF;IAEA,IAAI9B,YAAY;QACdS,aAAaA,cAAc;QAC3B,IAAI;YACFD,eAAe,MAAMb,QAAQqC,kBAAkB,CAAC;gBAC9CjC,MAAMC;gBACNmB,OAAO;gBACPlB,OAAOQ;gBACPW,gBAAgB;gBAChBlB,MAAMA,OAAOmB,SAASnB,MAAgB,MAAMS;gBAC5ClB;gBACAU,MAAMA;gBACNN;YACF;YAEA,IAAIL,cAAckC,UAAUC,QAAQ;gBAClCd,qBAAqB,MAAM/B,iBAAiB;oBAC1CiB,MAAMC;oBACN4B,MAAM;oBACNjC;oBACAkC,QAAQ;gBACV;gBACAjB,yBAAyB,MAAM9B,iBAAiB;oBAC9CiB,MAAMC;oBACN4B,MAAM;oBACNjC;oBACAkC,QAAQ;gBACV;YACF;QACF,EAAE,OAAOC,OAAO;YACdC,QAAQD,KAAK,CAACA,OAAO,iCAAiC;;QACxD;QAEA,IAAI,CAACtB,cAAc;YACjB,OAAO/B;QACT;IACF;IACA,MAAMwD,WAAWnC,iBACb,CAAC,EAAES,UAAU,EAAED,SAAS,CAAC,EAAER,eAAe,SAAS,CAAC,GACpDE,aACE,CAAC,EAAEO,UAAU,EAAED,SAAS,SAAS,EAAEN,WAAW,SAAS,CAAC,GACxD;IAEN,MAAMkC,0BAA0BtB,wBAAwBuB,YAAYtB,oBAAoBsB;IAExF,IAAID,yBAAyB;QAC3BrB,qBAAqB;YACnBtB,IAAI;YACJ4C,WAAW;QACb;IACF;IAEA,MAAMC,UAAUvD,oBAAoB;QAClCQ;QACAO;QACAN,OAAOC;QACPC;QACAE;QACAmB,oBAAoBA,oBAAoBtB;QACxCqB,wBAAwBA,wBAAwBrB;IAClD;IAEA,qBACE,MAACZ,MAAM0D,QAAQ;;0BACb,KAACzD;gBACCkB,gBAAgBT,kBAAkBU;gBAClCC,YAAYR,cAAcO;gBAC1BR,IAAIA;gBACJ+C,aAAajD,kBAAkBkD,QAAQC,UAAUhD,cAAciD;gBAC/DC,YAAYrD,kBAAkByB,OAAO4B,cAAclD,cAAcO;gBACjE4C,MAAMjD,KAAKkD,CAAC,CAAC;;0BAEf,KAACC;gBAAKC,WAAW9D;0BACf,cAAA,KAACT;oBAAOuE,WAAW,CAAC,EAAE9D,UAAU,MAAM,CAAC;8BACrC,cAAA,KAACR;wBACCuE,MAAMvC;wBACNQ,cAAcP;wBACduC,aAAa7C;wBACb8C,kBAAkB;kCAElB,cAAA,KAAClE;4BACCC,WAAWA;4BACXoD,SAASA;4BACTH,UAAUA;4BACViB,kBAAkB7D,kBAAkByB,OAAOC,YAAYoC;;;;;;;AAOrE,EAAC"}
1
+ {"version":3,"sources":["../../../src/views/Versions/index.tsx"],"sourcesContent":["import type { EditViewComponent, PaginatedDocs, PayloadServerReactComponent } from 'payload'\n\nimport { Gutter, ListQueryProvider } from '@payloadcms/ui'\nimport { notFound } from 'next/navigation.js'\nimport { isNumber } from 'payload/shared'\nimport React from 'react'\n\nimport { SetDocumentStepNav } from '../Edit/Default/SetDocumentStepNav/index.js'\nimport { buildVersionColumns } from './buildColumns.js'\nimport { getLatestVersion } from './getLatestVersion.js'\nimport { VersionsViewClient } from './index.client.js'\nimport './index.scss'\n\nexport const baseClass = 'versions'\n\nexport const VersionsView: PayloadServerReactComponent<EditViewComponent> = async (props) => {\n const { initPageResult, searchParams } = props\n\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n req,\n req: {\n i18n,\n payload,\n payload: { config },\n user,\n },\n } = initPageResult\n\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n const { limit, page, sort } = searchParams\n\n const {\n routes: { api: apiRoute },\n serverURL,\n } = config\n\n let versionsData: PaginatedDocs\n let limitToUse = isNumber(limit) ? Number(limit) : undefined\n let latestPublishedVersion = null\n let latestDraftVersion = null\n\n if (collectionSlug) {\n limitToUse = limitToUse || collectionConfig.admin.pagination.defaultLimit\n try {\n versionsData = await payload.findVersions({\n collection: collectionSlug,\n depth: 0,\n limit: limitToUse,\n overrideAccess: false,\n page: page ? parseInt(page.toString(), 10) : undefined,\n req,\n sort: sort as string,\n user,\n where: {\n parent: {\n equals: id,\n },\n },\n })\n if (collectionConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug: collectionSlug,\n type: 'collection',\n payload,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug: collectionSlug,\n type: 'collection',\n payload,\n status: 'published',\n })\n }\n } catch (error) {\n console.error(error) // eslint-disable-line no-console\n }\n }\n\n if (globalSlug) {\n limitToUse = limitToUse || 10\n try {\n versionsData = await payload.findGlobalVersions({\n slug: globalSlug,\n depth: 0,\n limit: limitToUse,\n overrideAccess: false,\n page: page ? parseInt(page as string, 10) : undefined,\n req,\n sort: sort as string,\n user,\n })\n\n if (globalConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug: globalSlug,\n type: 'global',\n payload,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug: globalSlug,\n type: 'global',\n payload,\n status: 'published',\n })\n }\n } catch (error) {\n console.error(error) // eslint-disable-line no-console\n }\n\n if (!versionsData) {\n return notFound()\n }\n }\n const fetchURL = collectionSlug\n ? `${serverURL}${apiRoute}/${collectionSlug}/versions`\n : globalSlug\n ? `${serverURL}${apiRoute}/globals/${globalSlug}/versions`\n : ''\n\n const publishedNewerThanDraft = latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n\n if (publishedNewerThanDraft) {\n latestDraftVersion = {\n id: '',\n updatedAt: '',\n }\n }\n\n const columns = buildVersionColumns({\n collectionConfig,\n config,\n docID: id,\n globalConfig,\n i18n,\n latestDraftVersion: latestDraftVersion?.id,\n latestPublishedVersion: latestPublishedVersion?.id,\n })\n\n return (\n <React.Fragment>\n <SetDocumentStepNav\n collectionSlug={collectionConfig?.slug}\n globalSlug={globalConfig?.slug}\n id={id}\n pluralLabel={collectionConfig?.labels?.plural || globalConfig?.label}\n useAsTitle={collectionConfig?.admin?.useAsTitle || globalConfig?.slug}\n view={i18n.t('version:versions')}\n />\n <main className={baseClass}>\n <Gutter className={`${baseClass}__wrap`}>\n <ListQueryProvider\n data={versionsData}\n defaultLimit={limitToUse}\n defaultSort={sort as string}\n modifySearchParams\n >\n <VersionsViewClient\n baseClass={baseClass}\n columns={columns}\n fetchURL={fetchURL}\n paginationLimits={collectionConfig?.admin?.pagination?.limits}\n />\n </ListQueryProvider>\n </Gutter>\n </main>\n </React.Fragment>\n )\n}\n"],"names":["Gutter","ListQueryProvider","notFound","isNumber","React","SetDocumentStepNav","buildVersionColumns","getLatestVersion","VersionsViewClient","baseClass","VersionsView","props","initPageResult","searchParams","collectionConfig","docID","id","globalConfig","req","i18n","payload","config","user","collectionSlug","slug","globalSlug","limit","page","sort","routes","api","apiRoute","serverURL","versionsData","limitToUse","Number","undefined","latestPublishedVersion","latestDraftVersion","admin","pagination","defaultLimit","findVersions","collection","depth","overrideAccess","parseInt","toString","where","parent","equals","versions","drafts","type","status","error","console","findGlobalVersions","fetchURL","publishedNewerThanDraft","updatedAt","columns","Fragment","pluralLabel","labels","plural","label","useAsTitle","view","t","main","className","data","defaultSort","modifySearchParams","paginationLimits","limits"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payloadcms/next",
3
- "version": "3.0.0-beta.77",
3
+ "version": "3.0.0-beta.79",
4
4
  "homepage": "https://payloadcms.com",
5
5
  "repository": {
6
6
  "type": "git",
@@ -63,9 +63,9 @@
63
63
  "sonner": "^1.5.0",
64
64
  "uuid": "10.0.0",
65
65
  "ws": "^8.16.0",
66
- "@payloadcms/graphql": "3.0.0-beta.77",
67
- "@payloadcms/ui": "3.0.0-beta.77",
68
- "@payloadcms/translations": "3.0.0-beta.77"
66
+ "@payloadcms/ui": "3.0.0-beta.79",
67
+ "@payloadcms/translations": "3.0.0-beta.79",
68
+ "@payloadcms/graphql": "3.0.0-beta.79"
69
69
  },
70
70
  "devDependencies": {
71
71
  "@next/eslint-plugin-next": "^14.1.0",
@@ -76,14 +76,14 @@
76
76
  "@types/ws": "^8.5.10",
77
77
  "esbuild": "0.23.0",
78
78
  "esbuild-sass-plugin": "3.3.1",
79
- "swc-plugin-transform-remove-imports": "1.14.0",
79
+ "swc-plugin-transform-remove-imports": "1.15.0",
80
80
  "@payloadcms/eslint-config": "3.0.0-beta.59",
81
- "payload": "3.0.0-beta.77"
81
+ "payload": "3.0.0-beta.79"
82
82
  },
83
83
  "peerDependencies": {
84
84
  "graphql": "^16.8.1",
85
85
  "next": "^15.0.0-canary.104",
86
- "payload": "3.0.0-beta.77"
86
+ "payload": "3.0.0-beta.79"
87
87
  },
88
88
  "engines": {
89
89
  "node": "^18.20.2 || >=20.9.0"